elerac / strand_integration Goto Github PK
View Code? Open in Web Editor NEW[PG2023] Refinement of Hair Geometry by Strand Integration
Home Page: https://elerac.github.io/strand_integration_page/
[PG2023] Refinement of Hair Geometry by Strand Integration
Home Page: https://elerac.github.io/strand_integration_page/
Hi
Thanks for your impressive work, in particular, implementing the LMVS which is beneficial for the community.
Unfortunately, when I tried to run the code, I found some issues that may caused by nanobind in src/strandtools.cp
Could you help me?
Thanks for your assistance!
Below are my env:
OS: Ubuntu 20.04
python: 3.8
GCC/G++: 9.4.0
The log is shown here:
loading initial cache file build/cp38-cp38-manylinux_2_31_x86_64/CMakeInit.txt
-- Found OpenCV: /usr (found version "4.2.0")
-- Found OpenMP_CXX: -fopenmp (found version "4.5")
-- Found OpenMP: TRUE (found version "4.5")
-- Configuring done (0.2s)
-- Generating done (0.0s)
-- Build files have been written to: /home/bearprin/strand_integration/cpp_ext/build/cp38-cp38-manylinux_2_31_x86_64
*** Building project with Ninja...
[1/13] Building CXX object CMakeFiles/nanobind-static.dir/tmp/pip-build-env-r7ll9zu8/overlay/lib/python3.8/site-packages/nanobind/src/nb_static_property.cpp.o
[2/13] Building CXX object CMakeFiles/nanobind-static.dir/tmp/pip-build-env-r7ll9zu8/overlay/lib/python3.8/site-packages/nanobind/src/implicit.cpp.o
[3/13] Building CXX object CMakeFiles/nanobind-static.dir/tmp/pip-build-env-r7ll9zu8/overlay/lib/python3.8/site-packages/nanobind/src/trampoline.cpp.o
[4/13] Building CXX object CMakeFiles/nanobind-static.dir/tmp/pip-build-env-r7ll9zu8/overlay/lib/python3.8/site-packages/nanobind/src/nb_enum.cpp.o
[5/13] Building CXX object CMakeFiles/nanobind-static.dir/tmp/pip-build-env-r7ll9zu8/overlay/lib/python3.8/site-packages/nanobind/src/nb_internals.cpp.o
[6/13] Building CXX object CMakeFiles/nanobind-static.dir/tmp/pip-build-env-r7ll9zu8/overlay/lib/python3.8/site-packages/nanobind/src/error.cpp.o
[7/13] Building CXX object CMakeFiles/nanobind-static.dir/tmp/pip-build-env-r7ll9zu8/overlay/lib/python3.8/site-packages/nanobind/src/nb_ndarray.cpp.o
[8/13] Building CXX object CMakeFiles/nanobind-static.dir/tmp/pip-build-env-r7ll9zu8/overlay/lib/python3.8/site-packages/nanobind/src/common.cpp.o
[9/13] Building CXX object CMakeFiles/nanobind-static.dir/tmp/pip-build-env-r7ll9zu8/overlay/lib/python3.8/site-packages/nanobind/src/nb_func.cpp.o
[10/13] Building CXX object CMakeFiles/nanobind-static.dir/tmp/pip-build-env-r7ll9zu8/overlay/lib/python3.8/site-packages/nanobind/src/nb_type.cpp.o
[11/13] Linking CXX static library libnanobind-static.a
[12/13] Building CXX object CMakeFiles/_strandtools_impl.dir/src/strandtools.cpp.o
FAILED: CMakeFiles/_strandtools_impl.dir/src/strandtools.cpp.o
/usr/bin/c++ -D_strandtools_impl_EXPORTS -I/home/bearprin/strand_integration/cpp_ext/src/include -I/home/bearprin/miniconda3/envs/py38-pt-1.13/include/python3.8 -I/tmp/pip-build-env-r7ll9zu8/overlay/lib/python3.8/site-packages/nanobind/include -isystem /usr/include/opencv4 -O3 -DNDEBUG -std=gnu++17 -fPIC -fvisibility=hidden -fno-stack-protector -Os -ffunction-sections -fdata-sections -fopenmp -MD -MT CMakeFiles/_strandtools_impl.dir/src/strandtools.cpp.o -MF CMakeFiles/strandtools_impl.dir/src/strandtools.cpp.o.d -o CMakeFiles/strandtools_impl.dir/src/strandtools.cpp.o -c /home/bearprin/strand_integration/cpp_ext/src/strandtools.cpp
In file included from /tmp/pip-build-env-r7ll9zu8/overlay/lib/python3.8/site-packages/nanobind/include/nanobind/nanobind.h:52,
from /home/bearprin/strand_integration/cpp_ext/src/strandtools.cpp:2:
/tmp/pip-build-env-r7ll9zu8/overlay/lib/python3.8/site-packages/nanobind/include/nanobind/nb_class.h: In instantiation of ‘class nanobind::class<std::shared_ptr >’:
/home/bearprin/strand_integration/cpp_ext/src/strandtools.cpp:180:71: required from here
/tmp/pip-build-env-r7ll9zu8/overlay/lib/python3.8/site-packages/nanobind/include/nanobind/nb_class.h:364:17: error: static assertion failed: You attempted to bind a type that is already intercepted by a type caster. Having both at the same time is not allowed. Are you perhaps binding an STL type, while at the same time including a matching type caster from <nanobind/stl/*>? Or did you perhaps forget to declare NB_MAKE_OPAQUE(..) to specifically disable the type caster catch-all for a specific type? Please review the documentation to learn about the difference between bindings and type casters.
364 | detail::is_base_caster_v<detail::make_caster>,
| ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/tmp/pip-build-env-r7ll9zu8/overlay/lib/python3.8/site-packages/nanobind/include/nanobind/nb_class.h: In instantiation of ‘class nanobind::class<std::vector<std::shared_ptr > >’:
/home/bearprin/strand_integration/cpp_ext/src/strandtools.cpp:182:84: required from here
/tmp/pip-build-env-r7ll9zu8/overlay/lib/python3.8/site-packages/nanobind/include/nanobind/nb_class.h:364:17: error: static assertion failed: You attempted to bind a type that is already intercepted by a type caster. Having both at the same time is not allowed. Are you perhaps binding an STL type, while at the same time including a matching type caster from <nanobind/stl/*>? Or did you perhaps forget to declare NB_MAKE_OPAQUE(..) to specifically disable the type caster catch-all for a specific type? Please review the documentation to learn about the difference between bindings and type casters.
ninja: build stopped: subcommand failed.
*** CMake build failed
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for strandtools
Failed to build strandtools
ERROR: Could not build wheels for strandtools, which is required to install pyproject.toml-based projects
THANKS for your creative Code for multi-view hair reconstruction. But I'd like to know How can I preprocess the RGB image to such the "orientation2d.exr"/"intensity.exr"/"confidence.exr". If convenient, please provide standard code for preprocessing data😉 because trying to align data is annoying😭.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.