kcheng1021 / GaussianPro

[ICML2024] Official code for GaussianPro: 3D Gaussian Splatting with Progressive Propagation
https://kcheng1021.github.io/gaussianpro.github.io/
MIT License
630 stars 41 forks source link

ImportError: gaussianpro.cpython-37m-x86_64-linux-gnu.so: undefined symbol: _ZN2cv5errorEiRKSsPKcS3_i #63

Open hahahaha5606 opened 1 month ago

hahahaha5606 commented 1 month ago

I'm having this issue when running import gaussianpro with cuda11.3, does anyone know what the reason is? here is the output

(gspro) u2023111360@n1:~/jupyterlab/test_GaussianPro$ python train.py -s datasets/segment -m output/temp/waymo/2 --save_path output/temp/waymo                 --eval --flatten_loss --position_lr_init 0.000016 --scaling_lr 0.001 --percent_dense 0.0005 --port 1021 --dataset waymo                 --sky_seg --normal_loss --depth_loss --propagation_interval 30 --depth_error_min_threshold 0.8 --depth_error_max_threshold 1.0                 --propagated_iteration_begin 1000 --propagated_iteration_after 12000 --patch_size 20 --lambda_l1_normal 0.001 --lambda_cos_normal 0.001
Traceback (most recent call last):
  File "train.py", line 17, in <module>
    from gaussian_renderer import render, network_gui
  File "/home/u2023111360/jupyterlab/test_GaussianPro/gaussian_renderer/__init__.py", line 15, in <module>
    from scene.gaussian_model import GaussianModel
  File "/home/u2023111360/jupyterlab/test_GaussianPro/scene/__init__.py", line 16, in <module>
    from scene.dataset_readers import sceneLoadTypeCallbacks
  File "/home/u2023111360/jupyterlab/test_GaussianPro/scene/dataset_readers.py", line 18, in <module>
    from utils.graphics_utils import getWorld2View2, focal2fov, fov2focal
  File "/home/u2023111360/jupyterlab/test_GaussianPro/utils/graphics_utils.py", line 18, in <module>
    from gaussianpro import propagate
ImportError: /home/u2023111360/.conda/envs/gspro/lib/python3.7/site-packages/gaussianpro.cpython-37m-x86_64-linux-gnu.so: undefined symbol: _ZN2cv5errorEiRKSsPKcS3_i
hahahaha5606 commented 1 month ago

Besides, here is information about gspro environment

# packages in environment at /home/u2023111360/.conda/envs/gspro:
#
# Name                    Version                   Build  Channel
_libgcc_mutex             0.1                 conda_forge    conda-forge
_openmp_mutex             4.5                  2_kmp_llvm    conda-forge
absl-py                   2.1.0                    pypi_0    pypi
alsa-lib                  1.2.3.2              h166bdaf_0    conda-forge
blas                      1.0                         mkl    defaults
brotli-python             1.0.9            py37hd23a5d3_7    conda-forge
bzip2                     1.0.8                h4bc722e_7    conda-forge
ca-certificates           2024.7.4             hbcca054_0    conda-forge
cachetools                5.4.0                    pypi_0    pypi
cairo                     1.16.0            h6cf1ce9_1008    conda-forge
certifi                   2024.7.4           pyhd8ed1ab_0    conda-forge
charset-normalizer        3.3.2              pyhd8ed1ab_0    conda-forge
colorama                  0.4.6              pyhd8ed1ab_0    conda-forge
cudatoolkit               11.3.1              hb98b00a_13    conda-forge
cycler                    0.11.0                   pypi_0    pypi
dbus                      1.13.6               h48d8840_2    conda-forge
diff-gaussian-rasterization 0.0.0                    pypi_0    pypi
expat                     2.6.2                h59595ed_0    conda-forge
ffmpeg                    4.3                  hf484d3e_0    pytorch
filelock                  3.12.2                   pypi_0    pypi
fontconfig                2.14.2               h14ed4e7_0    conda-forge
fonttools                 4.38.0                   pypi_0    pypi
freetype                  2.12.1               h267a509_2    conda-forge
fsspec                    2023.1.0                 pypi_0    pypi
gaussianpro               0.0.0                    pypi_0    pypi
gettext                   0.22.5               h59595ed_2    conda-forge
gettext-tools             0.22.5               h59595ed_2    conda-forge
glib                      2.68.4               h9c3ff4c_0    conda-forge
glib-tools                2.68.4               h9c3ff4c_0    conda-forge
gmp                       6.3.0                hac33072_2    conda-forge
gnutls                    3.6.13               h85f3911_1    conda-forge
google-auth               2.32.0                   pypi_0    pypi
google-auth-oauthlib      0.4.6                    pypi_0    pypi
graphite2                 1.3.13            h59595ed_1003    conda-forge
gridencoder               0.0.0                    pypi_0    pypi
grpcio                    1.62.2                   pypi_0    pypi
gst-plugins-base          1.18.5               hf529b03_0    conda-forge
gstreamer                 1.18.5               h76c114f_0    conda-forge
harfbuzz                  2.9.1                h83ec7ef_1    conda-forge
hdf5                      1.10.6          nompi_h3c11f04_101    conda-forge
huggingface-hub           0.16.4                   pypi_0    pypi
icu                       68.2                 h9c3ff4c_0    conda-forge
idna                      3.7                pyhd8ed1ab_0    conda-forge
imageio                   2.31.2                   pypi_0    pypi
importlib-metadata        6.7.0                    pypi_0    pypi
jasper                    1.900.1           h07fcdf6_1006    conda-forge
jpeg                      9e                   h0b41bf4_3    conda-forge
keyutils                  1.6.1                h166bdaf_0    conda-forge
kiwisolver                1.4.5                    pypi_0    pypi
krb5                      1.19.3               h3790be6_0    conda-forge
lame                      3.100             h166bdaf_1003    conda-forge
lcms2                     2.14                 h6ed2654_0    conda-forge
ld_impl_linux-64          2.40                 hf3520f5_7    conda-forge
lerc                      4.0.0                h27087fc_0    conda-forge
libasprintf               0.22.5               h661eb56_2    conda-forge
libasprintf-devel         0.22.5               h661eb56_2    conda-forge
libblas                   3.9.0            12_linux64_mkl    conda-forge
libcblas                  3.9.0            12_linux64_mkl    conda-forge
libclang                  11.1.0          default_ha53f305_1    conda-forge
libdeflate                1.14                 h166bdaf_0    conda-forge
libedit                   3.1.20191231         he28a2e2_2    conda-forge
libevent                  2.1.10               h9b69904_4    conda-forge
libexpat                  2.6.2                h59595ed_0    conda-forge
libffi                    3.3                  h58526e2_2    conda-forge
libgcc-ng                 14.1.0               h77fa898_0    conda-forge
libgettextpo              0.22.5               h59595ed_2    conda-forge
libgettextpo-devel        0.22.5               h59595ed_2    conda-forge
libgfortran-ng            7.5.0               h14aa051_20    conda-forge
libgfortran4              7.5.0               h14aa051_20    conda-forge
libglib                   2.68.4               h3e27bee_0    conda-forge
libiconv                  1.17                 hd590300_2    conda-forge
liblapack                 3.9.0            12_linux64_mkl    conda-forge
liblapacke                3.9.0            12_linux64_mkl    conda-forge
libllvm11                 11.1.0               he0ac6c6_5    conda-forge
libogg                    1.3.5                h4ab18f5_0    conda-forge
libopencv                 4.4.0                    py37_2    conda-forge
libopus                   1.3.1                h7f98852_1    conda-forge
libpng                    1.6.43               h2797004_0    conda-forge
libpq                     13.8                 hd77ab85_0    conda-forge
libsqlite                 3.46.0               hde9e2c9_0    conda-forge
libstdcxx-ng              14.1.0               hc0a3c3a_0    conda-forge
libtiff                   4.4.0                h82bc61c_5    conda-forge
libuuid                   2.38.1               h0b41bf4_0    conda-forge
libvorbis                 1.3.7                h9c3ff4c_0    conda-forge
libwebp-base              1.4.0                hd590300_0    conda-forge
libxcb                    1.13              h7f98852_1004    conda-forge
libxkbcommon              1.0.3                he3ba5ed_0    conda-forge
libxml2                   2.9.12               h72842e0_0    conda-forge
libzlib                   1.2.13               h4ab18f5_6    conda-forge
llvm-openmp               18.1.7               ha31de31_0    conda-forge
markdown                  3.4.4                    pypi_0    pypi
markupsafe                2.1.5                    pypi_0    pypi
matplotlib                3.5.3                    pypi_0    pypi
mkl                       2021.4.0           h8d4b97c_729    conda-forge
mkl-service               2.4.0            py37h402132d_0    conda-forge
mkl_fft                   1.3.1            py37h3e078e5_1    conda-forge
mkl_random                1.2.2            py37h219a48f_0    conda-forge
mysql-common              8.0.32               h14678bc_0    conda-forge
mysql-libs                8.0.32               h54cf53e_0    conda-forge
ncurses                   6.5                  h59595ed_0    conda-forge
nettle                    3.6                  he412f7d_0    conda-forge
networkx                  2.6.3                    pypi_0    pypi
nspr                      4.35                 h27087fc_0    conda-forge
nss                       3.100                hca3bf56_0    conda-forge
numpy                     1.21.5           py37h6c91a56_3    defaults
numpy-base                1.21.5           py37ha15fc14_3    defaults
oauthlib                  3.2.2                    pypi_0    pypi
opencv                    4.4.0                    py37_2    conda-forge
opencv-python             4.10.0.84                pypi_0    pypi
openh264                  2.1.1                h780b84a_0    conda-forge
openjpeg                  2.5.0                h7d73246_1    conda-forge
openssl                   1.1.1w               hd590300_0    conda-forge
packaging                 24.0                     pypi_0    pypi
pcre                      8.45                 h9c3ff4c_0    conda-forge
pillow                    9.5.0                    pypi_0    pypi
pip                       22.3.1             pyhd8ed1ab_0    conda-forge
pixman                    0.43.2               h59595ed_0    conda-forge
plyfile                   0.8.1              pyhd8ed1ab_0    conda-forge
protobuf                  3.20.3                   pypi_0    pypi
pthread-stubs             0.4               h36c2ea0_1001    conda-forge
py-opencv                 4.4.0            py37h43977f1_2    conda-forge
pyasn1                    0.5.1                    pypi_0    pypi
pyasn1-modules            0.3.0                    pypi_0    pypi
pyparsing                 3.1.2                    pypi_0    pypi
pysocks                   1.7.1            py37h89c1867_5    conda-forge
python                    3.7.13               haa1d7c7_1    defaults
python-dateutil           2.9.0.post0              pypi_0    pypi
python_abi                3.7                     2_cp37m    conda-forge
pytorch                   1.12.1          py3.7_cuda11.3_cudnn8.3.2_0    pytorch
pytorch-mutex             1.0                        cuda    pytorch
pywavelets                1.3.0                    pypi_0    pypi
pyyaml                    6.0.1                    pypi_0    pypi
qt                        5.12.9               hda022c4_4    conda-forge
readline                  8.2                  h8228510_1    conda-forge
requests                  2.32.2             pyhd8ed1ab_0    conda-forge
requests-oauthlib         2.0.0                    pypi_0    pypi
rsa                       4.9                      pypi_0    pypi
safetensors               0.4.3                    pypi_0    pypi
scikit-image              0.19.3                   pypi_0    pypi
scipy                     1.7.3                    pypi_0    pypi
setuptools                69.0.3             pyhd8ed1ab_0    conda-forge
shencoder                 0.0.0                    pypi_0    pypi
simple-knn                0.0.0                    pypi_0    pypi
six                       1.16.0             pyh6c4a22f_0    conda-forge
sqlite                    3.46.0               h6d4b2fc_0    conda-forge
tbb                       2021.7.0             h924138e_0    conda-forge
tensorboard               2.11.2                   pypi_0    pypi
tensorboard-data-server   0.6.1                    pypi_0    pypi
tensorboard-plugin-wit    1.8.1                    pypi_0    pypi
tifffile                  2021.11.2                pypi_0    pypi
timm                      0.9.12                   pypi_0    pypi
tk                        8.6.13          noxft_h4845f30_101    conda-forge
torchaudio                0.12.1               py37_cu113    pytorch
torchvision               0.13.1               py37_cu113    pytorch
tqdm                      4.66.5             pyhd8ed1ab_0    conda-forge
typing_extensions         4.7.1              pyha770c72_0    conda-forge
urllib3                   2.2.1              pyhd8ed1ab_0    conda-forge
werkzeug                  2.2.3                    pypi_0    pypi
wheel                     0.42.0             pyhd8ed1ab_0    conda-forge
xorg-kbproto              1.0.7             h7f98852_1002    conda-forge
xorg-libice               1.1.1                hd590300_0    conda-forge
xorg-libsm                1.2.4                h7391055_0    conda-forge
xorg-libx11               1.8.4                h0b41bf4_0    conda-forge
xorg-libxau               1.0.11               hd590300_0    conda-forge
xorg-libxdmcp             1.1.3                h7f98852_0    conda-forge
xorg-libxext              1.3.4                h0b41bf4_2    conda-forge
xorg-libxrender           0.9.10            h7f98852_1003    conda-forge
xorg-renderproto          0.11.1            h7f98852_1002    conda-forge
xorg-xextproto            7.3.0             h0b41bf4_1003    conda-forge
xorg-xproto               7.0.31            h7f98852_1007    conda-forge
xz                        5.2.6                h166bdaf_0    conda-forge
zipp                      3.15.0                   pypi_0    pypi
zlib                      1.2.13               h4ab18f5_6    conda-forge
zstd                      1.5.6                ha6fb4c9_0    conda-forge
lingbo-yu commented 1 month ago

same issue

lingbo-yu commented 1 month ago

@kcheng1021 hi, I have the same problem. I installed opencv with conda install -c conda-forge opencv , and I found opencv has linked to gaussianpro

(gaussianpro) root@maxieye-desk:/home/ubuntu/3DGS_ws/GaussianPro# ldd /root/miniconda3/envs/gaussianpro/lib/python3.7/site-packages/gaussianpro.cpython-37m-x86_64-linux-gnu.so linux-vdso.so.1 (0x00007ffc3abbe000) libc10.so => /root/miniconda3/envs/gaussianpro/lib/python3.7/site-packages/torch/lib/libc10.so (0x00007fa6d957d000) libtorch.so => /root/miniconda3/envs/gaussianpro/lib/python3.7/site-packages/torch/lib/libtorch.so (0x00007fa6d9578000) libtorch_cpu.so => /root/miniconda3/envs/gaussianpro/lib/python3.7/site-packages/torch/lib/libtorch_cpu.so (0x00007fa6bf507000) libtorch_python.so => /root/miniconda3/envs/gaussianpro/lib/python3.7/site-packages/torch/lib/libtorch_python.so (0x00007fa6be556000) libcudart.so.11.0 => /usr/local/cuda/targets/x86_64-linux/lib/libcudart.so.11.0 (0x00007fa6be29c000) libc10_cuda.so => /root/miniconda3/envs/gaussianpro/lib/python3.7/site-packages/torch/lib/libc10_cuda.so (0x00007fa6be19c000) libtorch_cuda_cu.so => /root/miniconda3/envs/gaussianpro/lib/python3.7/site-packages/torch/lib/libtorch_cuda_cu.so (0x00007fa696753000) libtorch_cuda_cpp.so => /root/miniconda3/envs/gaussianpro/lib/python3.7/site-packages/torch/lib/libtorch_cuda_cpp.so (0x00007fa6894b5000) libopencv_gapi.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_gapi.so.4.2 (0x00007fa688bd2000) libopencv_stitching.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_stitching.so.4.2 (0x00007fa688b1c000) libopencv_aruco.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_aruco.so.4.2 (0x00007fa688aa5000) libopencv_bgsegm.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_bgsegm.so.4.2 (0x00007fa688a7b000) libopencv_bioinspired.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_bioinspired.so.4.2 (0x00007fa688a43000) libopencv_ccalib.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_ccalib.so.4.2 (0x00007fa6889db000) libopencv_cvv.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_cvv.so.4.2 (0x00007fa688844000) libopencv_dnn_objdetect.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_dnn_objdetect.so.4.2 (0x00007fa688839000) libopencv_dnn_superres.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_dnn_superres.so.4.2 (0x00007fa688827000) libopencv_dpm.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_dpm.so.4.2 (0x00007fa688804000) libopencv_highgui.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_highgui.so.4.2 (0x00007fa6887bb000) libopencv_face.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_face.so.4.2 (0x00007fa68871a000) libopencv_freetype.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_freetype.so.4.2 (0x00007fa68813a000) libopencv_fuzzy.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_fuzzy.so.4.2 (0x00007fa68811e000) libopencv_hdf.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_hdf.so.4.2 (0x00007fa68810f000) libopencv_hfs.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_hfs.so.4.2 (0x00007fa687b20000) libopencv_img_hash.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_img_hash.so.4.2 (0x00007fa68752c000) libopencv_line_descriptor.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_line_descriptor.so.4.2 (0x00007fa6874fe000) libopencv_quality.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_quality.so.4.2 (0x00007fa686f0c000) libopencv_reg.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_reg.so.4.2 (0x00007fa68690d000) libopencv_rgbd.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_rgbd.so.4.2 (0x00007fa6867db000) libopencv_saliency.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_saliency.so.4.2 (0x00007fa6867a5000) libopencv_stereo.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_stereo.so.4.2 (0x00007fa68676f000) libopencv_structured_light.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_structured_light.so.4.2 (0x00007fa68674f000) libopencv_phase_unwrapping.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_phase_unwrapping.so.4.2 (0x00007fa686742000) libopencv_superres.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_superres.so.4.2 (0x00007fa68671d000) libopencv_optflow.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_optflow.so.4.2 (0x00007fa68669b000) libopencv_surface_matching.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_surface_matching.so.4.2 (0x00007fa68663e000) libopencv_tracking.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_tracking.so.4.2 (0x00007fa6863d9000) libopencv_datasets.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_datasets.so.4.2 (0x00007fa68632e000) libopencv_text.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_text.so.4.2 (0x00007fa6862c0000) libopencv_dnn.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_dnn.so.4.2 (0x00007fa6857d4000) libopencv_plot.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_plot.so.4.2 (0x00007fa6851f1000) libopencv_videostab.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_videostab.so.4.2 (0x00007fa685192000) libopencv_videoio.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_videoio.so.4.2 (0x00007fa68511b000) libopencv_xfeatures2d.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_xfeatures2d.so.4.2 (0x00007fa684e61000) libopencv_shape.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_shape.so.4.2 (0x00007fa684e29000) libopencv_ml.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_ml.so.4.2 (0x00007fa684d58000) libopencv_ximgproc.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_ximgproc.so.4.2 (0x00007fa684aca000) libopencv_video.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_video.so.4.2 (0x00007fa684a66000) libopencv_xobjdetect.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_xobjdetect.so.4.2 (0x00007fa684a4a000) libopencv_objdetect.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_objdetect.so.4.2 (0x00007fa6849e2000) libopencv_calib3d.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_calib3d.so.4.2 (0x00007fa6847dd000) libopencv_imgcodecs.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_imgcodecs.so.4.2 (0x00007fa683fde000) libopencv_features2d.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_features2d.so.4.2 (0x00007fa68393a000) libopencv_flann.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_flann.so.4.2 (0x00007fa6838d2000) libopencv_xphoto.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_xphoto.so.4.2 (0x00007fa683883000) libopencv_photo.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_photo.so.4.2 (0x00007fa6831cd000) libopencv_imgproc.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_imgproc.so.4.2 (0x00007fa681ae5000) libopencv_core.so.4.2 => /root/miniconda3/envs/gaussianpro/lib/libopencv_core.so.4.2 (0x00007fa680a17000)

hahahaha5606 commented 1 month ago

which nvcc do you use? cuda 11.3 or cuda 11.7? @lingbo-yu

lingbo-yu commented 1 month ago

@hahahaha5606 thanks for your reply. I tried both 11.3 and 11.7, but it outputs the same error. I also tried build the gaussianpro lib in docker and local environment. I try to modify the setup.py with this:

opencv_cflags = subprocess.getoutput('pkg-config --cflags opencv4').split()
opencv_ldflags = subprocess.getoutput('pkg-config --libs opencv4').split()

print(opencv_cflags+['-03'])

setup(
    name='gaussianpro',
    ext_modules=[
        CUDAExtension('gaussianpro',
            include_dirs=['/usr/local/cuda-11.7/include', '.'],
            # library_dirs=['/opt/conda/lib'],  
            # libraries=['opencv_core', 'opencv_imgproc', 'opencv_highgui', 'opencv_imgcodecs'],  
            sources=[
                'PatchMatch.cpp', 
                'Propagation.cu',
                'pro.cpp'
            ],
            extra_compile_args={
                'cxx': ['-O3'] + opencv_cflags,
                'nvcc': opencv_cflags + ['-O3',
                    '-gencode=arch=compute_86,code=sm_86',
                ]
            },
            extra_link_args=opencv_ldflags),
    ],
    cmdclass={ 'build_ext' : BuildExtension }
)

but it output the same error.

lingbo-yu commented 1 month ago

@hahahaha5606 @kcheng1021   I try to build the c++ library with cmake which I found opencv_core is linked to the lib, but it also output the same link error. image I found this error is cause by cv::error() which is a function in opencv. but I can not find the function call in this project.

hahahaha5606 commented 1 month ago

@lingbo-yu Hi, I have solved the problem with cuda 11.7. And I list my setup.py and environment as following, maybe you can get some help from it :

from setuptools import setup
from torch.utils.cpp_extension import BuildExtension, CUDAExtension

import os.path as osp
ROOT = osp.dirname(osp.abspath(__file__))

setup(
    name='gaussianpro',
    ext_modules=[
        CUDAExtension('gaussianpro',
            #include_dirs=['/data/kcheng/anaconda3/envs/procuda/include/opencv4', '/usr/local/cuda-11.7/include', '.'],
            include_dirs=['/home/u2023111360/.conda/envs/gaussianpro/include/opencv4', '/usr/local/cuda-11.7/include', '.'],
            library_dirs=['/home/u2023111360/.conda/envs/gaussianpro/lib'],  
            #library_dirs=['/data/kcheng/anaconda3/envs/procuda/lib'], 
            libraries=['opencv_core', 'opencv_imgproc', 'opencv_highgui', 'opencv_imgcodecs'],  
            sources=[
                'PatchMatch.cpp', 
                'Propagation.cu',
                'pro.cpp'
            ],
            extra_compile_args={
                'cxx': ['-O3'],
                'nvcc': ['-O3',
                    '-gencode=arch=compute_86,code=sm_86',
                ]
            }),
    ],
    cmdclass={ 'build_ext' : BuildExtension }
)

# packages in environment at /home/u2023111360/.conda/envs/gaussianpro:
#
# Name                    Version                   Build  Channel
_libgcc_mutex             0.1                 conda_forge    conda-forge
_openmp_mutex             4.5                  2_kmp_llvm    conda-forge
addict                    2.4.0                    pypi_0    pypi
alsa-lib                  1.2.12               h4ab18f5_0    conda-forge
aom                       3.9.1                hac33072_0    conda-forge
asttokens                 2.4.1                    pypi_0    pypi
attrs                     23.2.0                   pypi_0    pypi
blas                      1.0                    openblas    https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
blinker                   1.8.2                    pypi_0    pypi
bzip2                     1.0.8                h5eee18b_6    https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
c-ares                    1.32.3               h4bc722e_0    conda-forge
ca-certificates           2024.7.2             h06a4308_0    https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
cairo                     1.18.0               hebfffa5_3    conda-forge
certifi                   2024.7.4                 pypi_0    pypi
charset-normalizer        3.3.2                    pypi_0    pypi
click                     8.1.7                    pypi_0    pypi
comm                      0.2.2                    pypi_0    pypi
configargparse            1.7                      pypi_0    pypi
contourpy                 1.2.1                    pypi_0    pypi
cycler                    0.12.1                   pypi_0    pypi
dash                      2.17.1                   pypi_0    pypi
dash-core-components      2.0.0                    pypi_0    pypi
dash-html-components      2.0.0                    pypi_0    pypi
dash-table                5.0.0                    pypi_0    pypi
dav1d                     1.2.1                hd590300_0    conda-forge
dbus                      1.13.6               h5008d03_3    conda-forge
decorator                 5.1.1                    pypi_0    pypi
diff-gaussian-rasterization 0.0.0                    pypi_0    pypi
double-conversion         3.3.0                h59595ed_0    conda-forge
exceptiongroup            1.2.2                    pypi_0    pypi
executing                 2.0.1                    pypi_0    pypi
expat                     2.6.2                h59595ed_0    conda-forge
fastjsonschema            2.20.0                   pypi_0    pypi
ffmpeg                    6.1.1           gpl_h9be9148_116    conda-forge
flask                     3.0.3                    pypi_0    pypi
font-ttf-dejavu-sans-mono 2.37                 hab24e00_0    conda-forge
font-ttf-inconsolata      3.000                h77eed37_0    conda-forge
font-ttf-source-code-pro  2.038                h77eed37_0    conda-forge
font-ttf-ubuntu           0.83                 h77eed37_2    conda-forge
fontconfig                2.14.2               h14ed4e7_0    conda-forge
fonts-conda-ecosystem     1                             0    conda-forge
fonts-conda-forge         1                             0    conda-forge
fonttools                 4.53.1                   pypi_0    pypi
freeglut                  3.2.2                ha6d2627_3    conda-forge
freetype                  2.12.1               h267a509_2    conda-forge
fribidi                   1.0.10               h36c2ea0_0    conda-forge
gaussianpro               0.0.0                    pypi_0    pypi
gettext                   0.22.5               h59595ed_2    conda-forge
gettext-tools             0.22.5               h59595ed_2    conda-forge
gmp                       6.3.0                hac33072_2    conda-forge
gnutls                    3.7.9                hb077bed_0    conda-forge
graphite2                 1.3.13            h59595ed_1003    conda-forge
harfbuzz                  9.0.0                hda332d3_1    conda-forge
hdf5                      1.14.3          nompi_hdf9ad27_105    conda-forge
icu                       75.1                 he02047a_0    conda-forge
idna                      3.7                      pypi_0    pypi
imageio                   2.34.2                   pypi_0    pypi
imath                     3.1.11               hfc55251_0    conda-forge
importlib-metadata        8.2.0                    pypi_0    pypi
ipython                   8.26.0                   pypi_0    pypi
ipywidgets                8.1.3                    pypi_0    pypi
itsdangerous              2.2.0                    pypi_0    pypi
jasper                    4.2.4                h536e39c_0    conda-forge
jedi                      0.19.1                   pypi_0    pypi
jinja2                    3.1.4                    pypi_0    pypi
joblib                    1.4.2                    pypi_0    pypi
jsonschema                4.23.0                   pypi_0    pypi
jsonschema-specifications 2023.12.1                pypi_0    pypi
jupyter-core              5.7.2                    pypi_0    pypi
jupyterlab-widgets        3.0.11                   pypi_0    pypi
keyutils                  1.6.1                h166bdaf_0    conda-forge
kiwisolver                1.4.5                    pypi_0    pypi
krb5                      1.21.3               h659f571_0    conda-forge
lame                      3.100             h166bdaf_1003    conda-forge
lazy-loader               0.4                      pypi_0    pypi
ld_impl_linux-64          2.38                 h1181459_1    https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
lerc                      4.0.0                h27087fc_0    conda-forge
libabseil                 20240116.2      cxx17_he02047a_1    conda-forge
libaec                    1.1.3                h59595ed_0    conda-forge
libasprintf               0.22.5               h661eb56_2    conda-forge
libasprintf-devel         0.22.5               h661eb56_2    conda-forge
libass                    0.17.1               h39113c1_2    conda-forge
libblas                   3.9.0           23_linux64_openblas    conda-forge
libcblas                  3.9.0           23_linux64_openblas    conda-forge
libclang-cpp18.1          18.1.8          default_hf981a13_1    conda-forge
libclang13                18.1.8          default_h9def88c_1    conda-forge
libcups                   2.3.3                h4637d8d_4    conda-forge
libcurl                   8.9.0                hdb1bdb2_0    conda-forge
libdeflate                1.20                 hd590300_0    conda-forge
libdrm                    2.4.122              h4ab18f5_0    conda-forge
libedit                   3.1.20191231         he28a2e2_2    conda-forge
libev                     4.33                 hd590300_2    conda-forge
libexpat                  2.6.2                h59595ed_0    conda-forge
libffi                    3.4.4                h6a678d5_1    https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
libgcc-ng                 14.1.0               h77fa898_0    conda-forge
libgettextpo              0.22.5               h59595ed_2    conda-forge
libgettextpo-devel        0.22.5               h59595ed_2    conda-forge
libgfortran-ng            14.1.0               h69a702a_0    conda-forge
libgfortran5              14.1.0               hc5f4f2c_0    conda-forge
libglib                   2.80.3               h8a4344b_1    conda-forge
libglu                    9.0.0             ha6d2627_1004    conda-forge
libhwloc                  2.11.1          default_hecaa2ac_1000    conda-forge
libiconv                  1.17                 hd590300_2    conda-forge
libidn2                   2.3.7                hd590300_0    conda-forge
libjpeg-turbo             3.0.0                hd590300_1    conda-forge
liblapack                 3.9.0           23_linux64_openblas    conda-forge
liblapacke                3.9.0           23_linux64_openblas    conda-forge
libllvm18                 18.1.8               h8b73ec9_1    conda-forge
libnghttp2                1.58.0               h47da74e_1    conda-forge
libnsl                    2.0.1                hd590300_0    conda-forge
libopenblas               0.3.27          pthreads_hac2b453_1    conda-forge
libopencv                 4.10.0          qt6_py310h2504438_602    conda-forge
libopenvino               2024.2.0             h2da1b83_1    conda-forge
libopenvino-auto-batch-plugin 2024.2.0             hb045406_1    conda-forge
libopenvino-auto-plugin   2024.2.0             hb045406_1    conda-forge
libopenvino-hetero-plugin 2024.2.0             h5c03a75_1    conda-forge
libopenvino-intel-cpu-plugin 2024.2.0             h2da1b83_1    conda-forge
libopenvino-intel-gpu-plugin 2024.2.0             h2da1b83_1    conda-forge
libopenvino-intel-npu-plugin 2024.2.0             he02047a_1    conda-forge
libopenvino-ir-frontend   2024.2.0             h5c03a75_1    conda-forge
libopenvino-onnx-frontend 2024.2.0             h07e8aee_1    conda-forge
libopenvino-paddle-frontend 2024.2.0             h07e8aee_1    conda-forge
libopenvino-pytorch-frontend 2024.2.0             he02047a_1    conda-forge
libopenvino-tensorflow-frontend 2024.2.0             h39126c6_1    conda-forge
libopenvino-tensorflow-lite-frontend 2024.2.0             he02047a_1    conda-forge
libopus                   1.3.1                h7f98852_1    conda-forge
libpciaccess              0.18                 hd590300_0    conda-forge
libpng                    1.6.43               h2797004_0    conda-forge
libpq                     16.3                 ha72fbe1_0    conda-forge
libprotobuf               4.25.3               h08a7969_0    conda-forge
libsqlite                 3.46.0               hde9e2c9_0    conda-forge
libssh2                   1.11.0               h0841786_0    conda-forge
libstdcxx-ng              14.1.0               hc0a3c3a_0    conda-forge
libtasn1                  4.19.0               h166bdaf_0    conda-forge
libtiff                   4.6.0                h1dd3fc0_3    conda-forge
libunistring              0.9.10               h7f98852_0    conda-forge
libuuid                   2.38.1               h0b41bf4_0    conda-forge
libva                     2.22.0               hb711507_0    conda-forge
libvpx                    1.14.1               hac33072_0    conda-forge
libwebp-base              1.4.0                hd590300_0    conda-forge
libxcb                    1.16                 hd590300_0    conda-forge
libxcrypt                 4.4.36               hd590300_1    conda-forge
libxkbcommon              1.7.0                h2c5496b_1    conda-forge
libxml2                   2.12.7               he7c6b58_4    conda-forge
libzlib                   1.3.1                h4ab18f5_1    conda-forge
llvm-openmp               18.1.8               hf5423f3_0    conda-forge
markupsafe                2.1.5                    pypi_0    pypi
matplotlib                3.9.1                    pypi_0    pypi
matplotlib-inline         0.1.7                    pypi_0    pypi
mysql-common              8.3.0                h70512c7_5    conda-forge
mysql-libs                8.3.0                ha479ceb_5    conda-forge
nbformat                  5.10.4                   pypi_0    pypi
ncurses                   6.5                  h59595ed_0    conda-forge
nest-asyncio              1.6.0                    pypi_0    pypi
nettle                    3.9.1                h7ab15ed_0    conda-forge
networkx                  3.3                      pypi_0    pypi
numpy                     1.26.4          py310heeff2f4_0    https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
numpy-base                1.26.4          py310h8a23956_0    https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
ocl-icd                   2.3.2                hd590300_1    conda-forge
open3d                    0.18.0                   pypi_0    pypi
opencv                    4.10.0          qt6_py310h681cb09_602    conda-forge
openexr                   3.2.2                haf962dd_1    conda-forge
openh264                  2.4.1                h59595ed_0    conda-forge
openssl                   3.3.1                h4bc722e_2    conda-forge
p11-kit                   0.24.1               hc5aa10d_0    conda-forge
packaging                 24.1                     pypi_0    pypi
pandas                    2.2.2                    pypi_0    pypi
parso                     0.8.4                    pypi_0    pypi
pcre2                     10.44                h0f59acf_0    conda-forge
pexpect                   4.9.0                    pypi_0    pypi
pillow                    10.4.0                   pypi_0    pypi
pip                       24.0            py310h06a4308_0    https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
pixman                    0.43.2               h59595ed_0    conda-forge
platformdirs              4.2.2                    pypi_0    pypi
plotly                    5.23.0                   pypi_0    pypi
plyfile                   1.0.3                    pypi_0    pypi
prompt-toolkit            3.0.47                   pypi_0    pypi
pthread-stubs             0.4               h36c2ea0_1001    conda-forge
ptyprocess                0.7.0                    pypi_0    pypi
pugixml                   1.14                 h59595ed_0    conda-forge
pure-eval                 0.2.3                    pypi_0    pypi
py-opencv                 4.10.0          qt6_py310h3d6a5e7_602    conda-forge
pygments                  2.18.0                   pypi_0    pypi
pyparsing                 3.1.2                    pypi_0    pypi
pyquaternion              0.9.9                    pypi_0    pypi
python                    3.10.14         hd12c33a_0_cpython    conda-forge
python-dateutil           2.9.0.post0              pypi_0    pypi
python_abi                3.10                    4_cp310    conda-forge
pytz                      2024.1                   pypi_0    pypi
pyyaml                    6.0.1                    pypi_0    pypi
qt6-main                  6.7.2                hb12f9c5_4    conda-forge
readline                  8.2                  h5eee18b_0    https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
referencing               0.35.1                   pypi_0    pypi
requests                  2.32.3                   pypi_0    pypi
retrying                  1.3.4                    pypi_0    pypi
rpds-py                   0.19.1                   pypi_0    pypi
scikit-image              0.24.0                   pypi_0    pypi
scikit-learn              1.5.1                    pypi_0    pypi
scipy                     1.14.0                   pypi_0    pypi
setuptools                69.5.1          py310h06a4308_0    https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
simple-knn                0.0.0                    pypi_0    pypi
six                       1.16.0                   pypi_0    pypi
snappy                    1.2.1                ha2e4443_0    conda-forge
stack-data                0.6.3                    pypi_0    pypi
svt-av1                   2.1.2                hac33072_0    conda-forge
tbb                       2021.12.0            h434a139_3    conda-forge
tenacity                  8.5.0                    pypi_0    pypi
threadpoolctl             3.5.0                    pypi_0    pypi
tifffile                  2024.7.24                pypi_0    pypi
tk                        8.6.13          noxft_h4845f30_101    conda-forge
torch                     1.13.1+cu117             pypi_0    pypi
torchaudio                0.13.1+cu117             pypi_0    pypi
torchvision               0.14.1+cu117             pypi_0    pypi
tqdm                      4.66.4                   pypi_0    pypi
traitlets                 5.14.3                   pypi_0    pypi
typing-extensions         4.12.2                   pypi_0    pypi
tzdata                    2024.1                   pypi_0    pypi
urllib3                   2.2.2                    pypi_0    pypi
wayland                   1.23.0               h5291e77_0    conda-forge
wayland-protocols         1.36                 hd8ed1ab_0    conda-forge
wcwidth                   0.2.13                   pypi_0    pypi
werkzeug                  3.0.3                    pypi_0    pypi
wheel                     0.43.0          py310h06a4308_0    https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
widgetsnbextension        4.0.11                   pypi_0    pypi
x264                      1!164.3095           h166bdaf_2    conda-forge
x265                      3.5                  h924138e_3    conda-forge
xcb-util                  0.4.1                hb711507_2    conda-forge
xcb-util-cursor           0.1.4                h4ab18f5_2    conda-forge
xcb-util-image            0.4.0                hb711507_2    conda-forge
xcb-util-keysyms          0.4.1                hb711507_0    conda-forge
xcb-util-renderutil       0.3.10               hb711507_0    conda-forge
xcb-util-wm               0.4.2                hb711507_0    conda-forge
xkeyboard-config          2.42                 h4ab18f5_0    conda-forge
xorg-fixesproto           5.0               h7f98852_1002    conda-forge
xorg-inputproto           2.3.2             h7f98852_1002    conda-forge
xorg-kbproto              1.0.7             h7f98852_1002    conda-forge
xorg-libice               1.1.1                hd590300_0    conda-forge
xorg-libsm                1.2.4                h7391055_0    conda-forge
xorg-libx11               1.8.9                hb711507_1    conda-forge
xorg-libxau               1.0.11               hd590300_0    conda-forge
xorg-libxdmcp             1.1.3                h7f98852_0    conda-forge
xorg-libxext              1.3.4                h0b41bf4_2    conda-forge
xorg-libxfixes            5.0.3             h7f98852_1004    conda-forge
xorg-libxi                1.7.10               h4bc722e_1    conda-forge
xorg-libxrender           0.9.11               hd590300_0    conda-forge
xorg-renderproto          0.11.1            h7f98852_1002    conda-forge
xorg-xextproto            7.3.0             h0b41bf4_1003    conda-forge
xorg-xproto               7.0.31            h7f98852_1007    conda-forge
xz                        5.4.6                h5eee18b_1    https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
zipp                      3.19.2                   pypi_0    pypi
zlib                      1.3.1                h4ab18f5_1    conda-forge
zstd                      1.5.6                ha6fb4c9_0    conda-forge