介绍:
Darknet:开源的网络框架
YOLO:实时的目标检测系统,网络包括24个卷积层,2个全连接层。其中,卷积层用来提取图像特征,全连接层用来预测图像位置和类别概率值。
一. 安装OpenCV
我安装的版本是opencv3.1.0 官网链接:https://opencv.org/news.html ,下载.zip压缩包,下载完成以后解压到home目录下
1.安装依赖项
sudo apt-get install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install checkinstall yasm libtiff5-dev libjpeg-dev libjasper-dev libdc1394-22-dev libxine2-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev libv4l-dev python-dev python-numpy libtbb-dev libqt4-dev libgtk2.0-dev libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev x264 v4l-utils libeigen3-dev
2.安装opencv
cd opencv
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local …
cmake完成以后在build目录下开始make:
make -j8
注:-j8表示八核运算,根据电脑配置自行选择。
make完成以后输入:
sudo make install
注:编译完成后要将opencv的安装路径添加到系统环境中,否则编译darknet的时候会提示找不到opencv库,添加方法参考下面第五步。
make过程可能有报错:
注:make失败的话可以用make clean命令消除
-
消除nvcc warnning
在终端输入命令:cmake -DBLAS=Open -DCUDA_NVCC_FLAGS=–Wno-deprecated-gpu-targets
这是因为opecv3.0与cuda8.0不兼容导致的。解决办法:直接进入 home/wang/opencv/modules/cudalegacy/src文件夹,修改graphcuts.cpp文件内容,如图:
其中,#if !defined (HAVE_CUDA) || defined (CUDA_DISABLER)||(CUDART_VERSION>=8000) 是我们修改的。
修改以后重新make