jhb86253817 / PIPNet

Efficient facial landmark detector
MIT License
412 stars 82 forks source link

when running "sh make.sh" in windows I get this error #15

Closed EnriqueFdez03 closed 2 years ago

EnriqueFdez03 commented 2 years ago

error D8021 error: command 'C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.30.30705\bin\HostX86\x64\cl.exe' failed with exit code 2

Is FaceBoxesV2 compatible with windows or am I doing something wrong?.

Thanks in advance.

EnriqueFdez03 commented 2 years ago

I repared this error by changing "extra_compile_args=["-Wno-cpp", "-Wno-unused-function"]" to "extra_compile_args={'gcc': ['/Qstd=c99']}". However, other errors came.

All seems to work nice in ubuntu.

jhb86253817 commented 2 years ago

Indeed. The code was only tested under Ubuntu. For Windows, you may replace the NMS module with a pytorch implementation, which does not require compilation.

EnriqueFdez03 commented 2 years ago

Thanks, you replied too fast. I just found a way to get this working on windows here: https://github.com/rbgirshick/py-faster-rcnn/issues/36?ref=https://githubhelp.com

All I have done is:

I hope somebody can help this.

Also I found some deprecations in functions.py in lines 185 and 190. I repaired them using torch.div and rounding_mode='floor' instead of //.

Have a nice day.

jhb86253817 commented 2 years ago

Nice. Good to know. Your information would be helpful to others. Thank you.

DanBigioi commented 2 years ago

Thanks, you replied too fast. I just found a way to get this working on windows here: https://github.com/rbgirshick/py-faster-rcnn/issues/36?ref=https://githubhelp.com

All I have done is:

  • In build.py I uncommented the line 46 and commented the line 47.
  • Before calling to make.sh I changed the line 25 of cpu_nms.pyx to: cdef np.ndarray[np.int_t, ndim=1] order = scores.argsort()[::-1].astype('int32')

I hope somebody can help this.

Also I found some deprecations in functions.py in lines 185 and 190. I repaired them using torch.div and rounding_mode='floor' instead of //.

Have a nice day.

Thank you so much, was running into this same issue myself.