NaughtyZZ / 3D_face_dense_registration

Towards Fine-Grained Optimal 3D Face Dense Registration: An Iterative Dividing and Diffusing Method (IJCV2023)
https://github.com/NaughtyZZ/3D_face_dense_registration/tree/main
52 stars 4 forks source link

About run *.exe #6

Closed qaz8788817 closed 8 months ago

qaz8788817 commented 8 months ago

Hi, now my computer can use VS2019 to compile and execute the tutorial file in libigl, the simple Eigan3 program (for testing), and the simple MKL program (for testing), respectively. But I still can't use the *.exe directly. Does it need to be executed in any special way? Or do I need to add certain paths to the system environment variables?

Thanks for your help.

NaughtyZZ commented 8 months ago

The exe is compiled with VS 2015 environments. You can recompile an .exe file with your VS 2019 and then you can run it on your computer.

qaz8788817 commented 8 months ago

The exe is compiled with VS 2015 environments. You can recompile an .exe file with your VS 2019 and then you can run it on your computer.

Thank you. I will try to compile it!!

qaz8788817 commented 8 months ago

Hi, Could you tell me which option you choose to build? image I've tried "No", and it cannot build because mkl_pardiso.h can't open. When I choose Parallel, it can build successfully but can't run. It's the error of picture when I double click the *.exe: image and I type the command in the powershell but nothing happen.

And when I choose Sequential, it is same above but the error message is: image The last one Cluster cannot build successfully because it can't open impi.lib file.

Did I miss some important information or action?

Thanks for your help!!!!

NaughtyZZ commented 8 months ago

Mine is sequencial. The problem shows that some dynamic libraries of MKL are missing.

qaz8788817 commented 8 months ago

I download mkl_sequential.2.dll from website DLLme and put it in "C:\Windows\System32\". And there is another error: image Here is the error code: image

Thanks for your help.

NaughtyZZ commented 8 months ago

I suggest you should locate the code line of the error first.

qaz8788817 commented 8 months ago

I suggest you should locate the code line of the error first.

Emm.. I found something weird. I think maybe it's another problem. Iwill ask intel community if there is any solution. image

When I build the project, it always show me no error but some warning: image Does this matter?

And I use "Line-by-line execute" (shortcut key is F11) to try to find the error code line. It stop here and I don't know how to fix it. image In the main function, it stop here: image

Thank you. Hope that it doesn't inconvenience you too much.

NaughtyZZ commented 8 months ago

You may try to delete these lines and it will not affect the whole program. image

qaz8788817 commented 8 months ago

Hi, I take your suggestion to delete these lines. image And it can successfully load template.ply now. But it will break and show this line: image Here is the error code: image And the main function: image

I've searched Internet and they said this error code means "input inconsistent". Which input parameter do you think will cause this problem?

Thanks.

NaughtyZZ commented 8 months ago

I am not sure. You may check the input variable and referring to the original manual of PARDISO function. This line actually works as a simple sparse matrix factorization.

qaz8788817 commented 8 months ago

I am not sure. You may check the input variable and referring to the original manual of PARDISO function. This line actually works as a simple sparse matrix factorization.

Emm...I have this problem on my local computer, but not on the VM. It's weird. I think it's the version issue. My local computer is VS2022 but VM is VS2019. But I can run the .exe in my VM. I have a question for the input files. The TU-models I downloaded from FaceScape are all ends with .obj. So I have to change them into .ply. Do I need to set some special attribute when I use meshlab to export them as .ply files? Because I got something wrong. I exported a test file from meshlab, and I put it into inputfile to run register. Here is the process output: image And 1_neutral.ply can't open. This is the setting when I use meshlab to export 1_neutral.obj as 1_neutral.ply. image

Thank you.

NaughtyZZ commented 8 months ago

I suggest that you can select all except for the TexCoord and binary encoding. There are many open libraries that can read general .obj or .ply files, e.g. libigl, openmesh, supporting batch data processing in this way. You can also refer to my code for reading .ply and alter them for reading .obj file.

NaughtyZZ commented 8 months ago

Here is my code for converting obj files to ply files. objFileReader.zip

qaz8788817 commented 8 months ago

Thank you for providing such helpful guidance that helped me successfully run the program. Your assistance has been awesome!