Fast Texture transfer from Hi-Res Vertex Color Mesh to Low-Res Textured Mesh

Completed Posted 5 years ago Paid on delivery
Completed Paid on delivery

Goal is to create a fast algorithm to transfer Vertex Colors from a Hi-Res Mesh to Low-Res Textured Mesh using OpenGL rasterization. Target speed is 1 second for the transfer. Deadline is 10th of May.

Language : C/C++, OpenGL, optional: GLSL

Given:

-Hi-Res OBJ Mesh file with Vertex Colors

-Lo-Res OBJ Mesh file with UV Coordinates

Wanted:

Texture of the Lo-Res Mesh.

Algorithm to implement:

The algorithm needs to rasterize the vertex colored triangles of the Hi-Res Mesh to the UV map of the Lo-Res mesh.

For that, it needs to create a list for each triangle of the Lo-Res mesh. The list will contain the triangles of the Hi-Res mesh lying in the bounding region of the Lo-res meshs triangle.

Meshlab already contains such a method, but it is far too slow.

[login to view URL]

Method used to create the Lo-Res mesh, including Source Code:

[login to view URL]

Experience needed: C++, OpenGL, Mesh processing

Update: Target is a Windows Standalone Command Line Application

Sample Data

PLY/OBJ
https://drive.google.com/file/d/1iihemGnjJWO_TCcbsjk2NLrMGWOW1wte/view?usp=sharing
HiRes OBJ
https://drive.google.com/file/d/1Q3Nk5hF_Nbe1oLenEPusQdxg1oZOKoZu/view?usp=sharing

Details:

We will use a high spec machine with fast gpu and also fast cpu with up to 10 cores. Complexity of the hires mesh is about 3M faces, of the lores mesh 14-50k faces.

Speed Details:

We have a limit of 12s for our geometry pipeline, and there are other steps too, so 3-4s would also be ok for the processing excluding loading and storing data.

Algorithm Details:

The code should be written in c++ - you may also start from the code for mesh reduction
https://github.com/sp4cerat/Fast-Quadric-Mesh-Simplification

The major task will be to generate the list of hi-res triangles for each lo-res triangle. The 2 million hi-res triangles need to be put in about 30k bins (the lo res mesh triangles). That can be done in parallel and using an accelleration structure such as a 3d grid. Rasterization will be almost instant by opengl to a framebuffer object using a vertex buffer.

Code/Copyright

The created application should be a command line application for windows, where we get the source code and copyright at the end.


OpenCL might be used as well to speed up the process.

C Programming C++ Programming OpenGL Software Architecture Windows Desktop

Project ID: #16645793

About the project

7 proposals Remote project Active 5 years ago

Awarded to:

drpegg

20 years experience in video game pipelines and modeling tools, have a number of questions about your target 1sec, I would like to discuss before creating milestones.

$750 USD in 10 days
(1 Review)
3.2

7 freelancers are bidding on average $579 for this job

freelancerLatino

Hello, I am expert with computer graphics, with master and PhD. So, basically, we are going to create a texture to be mapped into low res mesh? from the hi-res mesh?. During the rasterization, what do you want to use? More

$750 USD in 10 days
(145 Reviews)
7.4
ItsAwais

C / C++ / C# developer - Linux Developer Currently working as a freelancer C / C++ application developer, with additional experience in mobile and web application development. My main area of interest is low level More

$555 USD in 10 days
(10 Reviews)
4.4
yanny1125

Hello, Thanks for your post. I've read carefully your project description. And I understood your work. I'm clear. No problem, I can do it. I already have experience of recognizing mahjong. If you want to see my re More

$250 USD in 10 days
(1 Review)
0.8