ubuntu20.0.4 多opencv情况安装OpenCV4.5.5
·
下载安装 OpenCV4.5.5
在已有 opencv3.4.15 和 opencv4.2(ROS自带) 情况下安装 opencv4.5.5
1.下载 opencv4.5.5 及 opencv_contrib4.5.5,并将opencv_contrib4.5.5 放在 opencv4.5.5 下

cd /opt
git clone https://github.com/opencv/opencv.git -b 4.5.5 opencv4.5.5
git clone https://github.com/opencv/opencv_contrib.git -b 4.5.5 opencv_contrib
2.编译
cd opencv-4.5.5
rm -rf build
mkdir build
cd build
sudo cmake -D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_PREFIX=/usr/local/opencv-4.5.5 \
-D OPENCV_EXTRA_MODULES_PATH=../opencv_contrib/modules \
-D BUILD_EXAMPLES=ON \
-D BUILD_opencv_python3=ON \
-D BUILD_TESTS=OFF \
-D BUILD_PERF_TESTS=OFF \
-D WITH_TBB=ON \
-D WITH_OPENGL=ON \
-D WITH_V4L=ON \
-D WITH_QT=OFF \
..
# 编译安装
make -j"$(nproc)"
sudo make install
sudo ldconfig
4.OpenCV 4.5.5安装路径为
/usr/local/opencv-4.5.5/
5.CMakeLists.txt中配置OpenCV 4.5.5
# 强制使用你安装的 OpenCV 路径
set(OpenCV_DIR "/usr/local/opencv-4.5.5/lib/cmake/opencv4")
# 查找 OpenCV
find_package(OpenCV REQUIRED)
# 打印确认 OpenCV 路径和库
message(STATUS "OpenCV include path: ${OpenCV_INCLUDE_DIRS}")
message(STATUS "OpenCV libraries: ${OpenCV_LIBS}")
# 包含头文件
include_directories(${OpenCV_INCLUDE_DIRS})
# 链接 OpenCV 库
target_link_libraries(xfeat_slam ${OpenCV_LIBS})
6.配置 pkg-config 支持
由于编译过程没有自动生成 .pc 文件,需手动创建:
创建并编辑 .pc 文件
sudo mkdir -p /usr/local/opencv-4.5.5/lib/pkgconfig
sudo nano /usr/local/opencv-4.5.5/lib/pkgconfig/opencv4.pc
粘贴以下内容:
prefix=/usr/local/opencv-4.5.5
exec_prefix=${prefix}
includedir=${prefix}/include
libdir=${prefix}/lib
Name: OpenCV
Description: Open Source Computer Vision Library
Version: 4.5.5
Libs: -L${libdir} -lopencv_core -lopencv_imgproc -lopencv_highgui -lopencv_imgcodecs -lopencv_videoio -lopencv_features2d -lopencv_calib3d -lopencv_dnn -lopencv_ml -lopencv_video -lopencv_objdetect -lopencv_stitching -lopencv_gapi
Cflags: -I${includedir}
设置环境变量(推荐写入 .bashrc)
echo 'export PKG_CONFIG_PATH=/usr/local/opencv-4.5.5/lib/pkgconfig:$PKG_CONFIG_PATH' >> ~/.bashrc
source ~/.bashrc
7.测试安装是否成功
使用 pkg-config 验证版本
pkg-config --modversion opencv4
# 应输出:4.5.5
存在的问题
ippicv_2020_lnx_intel64_20191018_general.tgz下载不了
1.下载ippicv_2020_lnx_intel64_20191018_general.tgz
2.放置位置
/opt/ippicv_2020_lnx_intel64_general_20191018_general.tgz
3.修改ippicv.cmake
set(THE_ROOT "${OpenCV_BINARY_DIR}/3rdparty/ippicv")
ocv_download(FILENAME ${OPENCV_ICV_NAME}
HASH ${OPENCV_ICV_HASH}
URL
"${OPENCV_IPPICV_URL}"
"$ENV{OPENCV_IPPICV_URL}"
"https://raw.githubusercontent.com/opencv/opencv_3rdparty/${IPPICV_COMMIT}/ippicv/"
DESTINATION_DIR "${THE_ROOT}"
ID IPPICV
STATUS res
UNPACK RELATIVE_URL)
改为
ocv_download(FILENAME ${OPENCV_ICV_NAME}
HASH ${OPENCV_ICV_HASH}
URL
"${OPENCV_IPPICV_URL}"
"$ENV{OPENCV_IPPICV_URL}"
"file:///opt/opencv4.5.5/3rdparty/"
# "https://raw.githubusercontent.com/opencv/opencv_3rdparty/${IPPICV_COMMIT}/ippicv/" # ori
# "ippicv_2020_lnx_intel64_20191018_general.tgz:///opt/opencv4.5.5/3rdparty/ippicv_2020_lnx_intel64_20191018_general"
DESTINATION_DIR "${THE_ROOT}"
ID IPPICV
STATUS res
UNPACK RELATIVE_URL)
参考
ubuntu20.0.4安装opencv4.2.0和opencv_contrib-4.2.0并支持CUDA,Geforce RTX 3060显卡,算力8.6
更多推荐


所有评论(0)