hi
i have manifod g2 (DJI pc) with:
jetson tx2 Nvidia
jetpack 3.2
cuda 9-0
i try to use dnn with cuda.
(with:
self.net.setPreferableBackend(cv2.dnn.DNN_BACKEND_CUDA)
self.net.setPreferableTarget(cv2.dnn.DNN_TARGET_CUDA)
i try to compile opencv 4.5.1 with opencv_contrib with those flags:
-D CMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX} \
-D WITH_CUDA=ON \
-D OPENCV_DNN_CUDA=ON \
-D CUDNN_VERSION='9.0'\
-D CUDA_ARCH_BIN=${ARCH_BIN} \
-D CUDA_ARCH_PTX="" \
-D ENABLE_FAST_MATH=ON \
-D CUDA_FAST_MATH=ON \
-D WITH_CUBLAS=ON \
-D WITH_LIBV4L=ON \
-D WITH_CUDNN=ON \
-D WITH_GSTREAMER=ON \
-D WITH_GSTREAMER_0_10=OFF \
-D WITH_QT=ON \
-D WITH_OPENGL=ON \
-D OPENCV_EXTRA_MODULES_PATH=/home/nvidia/opencv_contrib/modules \
-D BUILD_opencv_legacy=OFF \
In the building i get weird warring:
/usr/bin/ld: skipping incompatible /usr/local/cuda/lib64/libcudnn.so when searching for -lcudnn
and i get:
CMakeFiles/Makefile2:5082: recipe for target 'modules/dnn/CMakeFiles/opencv_dnn.dir/all' failed
make[1]: *** [modules/dnn/CMakeFiles/opencv_dnn.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
please someone can help me :)
tnkx
gadi.didi85:
-D CUDNN_VERSION='9.0'
Find correct CUDNN version.
Hi Sir,
OK. Got it. Thank you for your information.
best regards,
Lilian.lin
hi, i try to check the version:
#define CUDNN_MAJOR 7
#define CUDNN_MINOR 1
#define CUDNN_PATCHLEVEL 5
--
#define CUDNN_VERSION (CUDNN_MAJOR * 1000 + CUDNN_MINOR * 100 + CUDNN_PATCHLEVEL)
#include "driver_types.h"
so my version is “7.15”
i try again with:
cmake -DOPENCV_EXTRA_MODULES_PATH=../opencv_contrib-master/modules -DWITH_CUDA=ON -DCUDA_ARCH_BIN=6.2 -DCUDA_ARCH_PTX="" -DENABLE_FAST_MATH=ON -DCUDA_FAST_MATH=ON -DWITH_CUBLAS=ON -DWITH_LIBV4L=ON -DWITH_GSTREAMER=ON -DWITH_GSTREAMER_0_10=OFF -DWITH_QT=ON -DWITH_OPENGL=ON -DOPENCV_DNN_CUDA=ON -DWITH_CUDNN=ON -DCUDNN_VERSION='7.15' ../opencv-master
but i get the same issue …
…
[ 23%] Linking CXX shared library …/…/lib/libopencv_cudawarping.so
/usr/bin/ld: skipping incompatible /usr/local/cuda/lib64/libcudnn.so when searching for -lcudnn
/usr/bin/ld: skipping incompatible /usr/local/cuda/lib64/libcudnn.so when searching for -lcudnn
/usr/bin/ld: skipping incompatible /usr/local/cuda/lib64/libcudnn.so when searching for -lcudnn
/usr/bin/ld: skipping incompatible /usr/local/cuda/lib64/libcudnn.so when searching for -lcudnn
[ 23%] Built target opencv_cudawarping
Makefile:160: recipe for target ‘all’ failed
make: *** [all] Error 2
cmake -DOPENCV_EXTRA_MODULES_PATH=…/opencv_contrib-master/modules -DWITH_CUDA=ON -DCUDA_ARCH_BIN=6.2 -DCUDA_ARCH_PTX=“” -DENABLE_FAST_MATH=ON -DCUDA_FAST_MATH=ON -DWITH_CUBLAS=ON -DWITH_LIBV4L=ON -DWITH_GSTREAMER=ON -DWITH_GSTREAMER_0_10=OFF -DWITH_QT=ON -DWITH_OPENGL=ON -DOPENCV_DNN_CUDA=ON -DWITH_CUDNN=ON -DCUDNN_VERSION=‘7.1’ …/opencv-master
i tried and i get this:
…
– Other third-party libraries:
– Lapack: YES (/usr/lib/liblapack.so /usr/lib/libcblas.so /usr/lib/libatlas.so)
– Eigen: YES (ver 3.3.7)
– Custom HAL: YES (carotene (ver 0.0.1))
– Protobuf: build (3.5.1)
–
– NVIDIA CUDA: YES (ver 9.0, CUFFT CUBLAS FAST_MATH)
– NVIDIA GPU arch: 62
– NVIDIA PTX archs:
–
– cuDNN: NO
–
– OpenCL: YES (no extra features)
– Include path: /root/opencv-master/3rdparty/include/opencl/1.2
– Link libraries: Dynamic load
–
– Python 2:
– Interpreter: /usr/bin/python2.7 (ver 2.7.12)
– Libraries: /usr/lib/aarch64-linux-gnu/libpython2.7.so (ver 2.7.12)
– numpy: /usr/lib/python2.7/dist-packages/numpy/core/include (ver 1.11.0)
– install path: lib/python2.7/dist-packages/cv2/python-2.7
–
– Python 3:
– Interpreter: /usr/bin/python3 (ver 3.8.9)
– Libraries: /usr/lib/aarch64-linux-gnu/libpython3.8.so (ver 3.8.9)
– numpy: /usr/local/lib/python3.8/dist-packages/numpy/core/include (ver 1.19.3)
– install path: lib/python3.8/dist-packages/cv2/python-3.8
–
– Python (for build): /usr/bin/python2.7
–
– Java:
– ant: NO
– JNI: NO
– Java wrappers: NO
– Java tests: NO
–
– Install to: /usr/local
– -----------------------------------------------------------------
–
– Configuring incomplete, errors occurred!
See also “/root/build/CMakeFiles/CMakeOutput.log”.
See also “/root/build/CMakeFiles/CMakeError.log”.
No recognition: cuDNN: NO …