一、cmake opencv编译
参考:Linux 使用cmake构建OpenCV项目_sandalphon4869的博客-CSDN博客
参考:Linux 下编译安装OpenCV,Cmake的安装_wzy的博客-CSDN博客
1.1 opencv编译
- 安装cmake:sudo apt-get install cmake? 注意这个不是gui的版本
测试cmake是否安装成功:cmake --version cmake version 2.8.10.2
- 安装cmake-gui:sudo apt? install cmake-qt-gui
命令行终端$:cmake-gui开启cmake界面
- 下载Opencv和opencv-contrib
opencv-4.5.5下载地址:Tags · opencv/opencv · GitHub opencv4.5.5-contrib下载地址:Tags · opencv/opencv_contrib · GitHub ? - 先安装 libgtk2.0-dev 和 pkg-config,,否则后期编译运行程序会出现类似如下的问题:
OpenCV Error: Unspecified error (The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Carbon support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script) in cvNamedWindow, file /usr/local/opencv/OpenCV-2.0.0/src/highgui/window.cpp, line 100? terminate called after throwing an instance of 'cv::Exception' 通过网络获取安装: # apt-get install libgtk2.0-dev
# apt-get install pkg-config - cmake-gui打开界面
参考网址:3.1 (win10 + vs2019) cmake编译 (opencv4.1.0 + opencv_contrib4.1.0)_一点先森-CSDN博客要加入contrib地方: ?
伸手自取:Linux系统编译opencv4.0.1、opencv4.0.1 contrib及匹配测试代码_祝鹏辉-CSDN博客 Centros系统的,不适合我,哎。
?1.2 build multi-tracker工程
?使用如下命令进行build:由于开启了YOLO,需要CUDA_TOOLKIT
git clone https://github.com/Smorodov/Multitarget-tracker.git
cd Multitarget-tracker
mkdir build
cd build
cmake . .. -DUSE_OCV_BGFG=ON -DUSE_OCV_KCF=ON -DUSE_OCV_UKF=ON -DBUILD_YOLO_LIB=ON -DBUILD_YOLO_TENSORRT=ON -DBUILD_ASYNC_DETECTOR=ON -DBUILD_CARS_COUNTING=ON
make -j
- 用cmake打开这个txt文件,就可以这里添加opencv的相关路径
? ? - 遇到另一个问题:打开cmake.txt就看得到下面的红色图,勾选一些选项,加入opencv的路径,还需要几个路径:CUDA路径;CUDNN路径
? ① nvidia-smi命令行,看是否安装cudar如何看linux系统中有没有安装cuda,Linux系统CUDA10.2+CUDNN安装教程_RC-1136的博客-CSDN博客e ② cuda安装:sudo apt install nvidia-cuda-toolkit nvcc -V
③安装CUDNN Ubuntu 20.04 CUDA10.1&cuDNN安装方法全新整理-阿里云开发者社区
- ?下载地址:cuDNN Archive | NVIDIA Developer
我自己注册了账号,终于下下来了。(注册账号的方法:科学上网+浏览器,最主要的原因是哪个验证码弹不出来,验证码方式为(图片识别,就是买火车票似的哪些是卡车),科学上网+不屏蔽图片验证码识别,基本就能注册成功,邮箱验证+重新登录(还来一遍验证码)) P.S. 实在自己注册不行的,淘宝上有专门帮你下cuDNN的商家,收费不详。 - ?另外, 如果是linux 版本, 在阿里镜像上下很快。 附上链接
阿里云开源镜像站资源目录? 这个超级棒的? 然而我没找到cuda10.1的cudnn版本,宣告失败?(版本不一定全面,可先碰碰运气) - ?cuda10.1-cuda11.1所有版本链接:百度网盘 请输入提取码 提取码:rw1o 又碰运气
这个又全是windows的,哎(版本不一定全面,可先碰碰运气) - ?
无需注册登录NVIDIA官网下载CUDNN_justablackacat的博客-CSDN博客_cudnn下载
避开注册的方法:没什么用 迅雷下的太慢了,然后挂掉了,下载失败 ? - ?最终:使用网盘下载的 百度网盘 请输入提取码? 提取码:u6j0
有linux cuda10.1的cudnn文件。但是三个deb文件不全,缺了dev.deb,缺了samples.deb,还需要另外下载。改天把所有文件传齐全了,分享一个百度云链接(待填坑4) - ④ 安装:我是在sudo apt install nvidia-cuda-toolkit? 安装的cuda,安装在/usr/cuda中,没有在local文件夹中
-
sudo cp cuda/include/cudnn.h /usr/local/cuda/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn* 我的去掉Local/cuda/路径,就是: sudo cp cuda/include/cudnn.h /usr/include
sudo cp cuda/lib64/libcudnn* /usr/lib64
sudo chmod a+r /usr/include/cudnn.h /usr/lib64/libcudnn* ⑤? 安装pkg 三个
-
cmake通过了 -
最终还没有运行和debug起来的原因:
- Linux下C++的IDE不熟悉,没有win10的vs2015等简单(傻瓜化)。
- 通过请教他人,得知Linux下的Eclipse和QT(待填坑1),均可实现方便的debug,不知道是否有win10的visual studio方便。
- 有尝试Linux下的vscode运行C++工程(待填坑2)(非单个cpp)
问题如下:①json的设置,task.jason以及debug的json,并不太方便。②编译都没通过,学习成本和入门门槛有点高。Linux下C++开发似乎并不太容易。还需要进一步探索。
1.3 win10上的cmake通过结果如下,与Linux下cmake的使用方式一致
参考1.0.3节:多目标跟踪——阶段性进展_hello world-CSDN博客_多目标跟踪
win10下的编译器为:"visual studio 16 2019",Linux下C++的编译器还没试过,下次再续?(待填坑3)
|