OpenCV环境配置与验证
实验目的
在对应环境下完成环境配置,才可进⾏对应的环境开发任务。
推荐配置环境:
⽅式⼀: 库+命令⾏编程
CMake + g++ + OpenCV库
⽅式⼆: 库+IDE
Windows:Visual studio + OpenCV
Mac: Xcode + OpenCV
Linux 或上述平台: Qt Creator + OpenCV
实验前期准备:
硬件环境:物理机⼀台(Windows,Mac,Linux系统均可)
软件环境:浏览器或终端软件
实验步骤(以Ubuntu20.10桌面版为例)
第一步:下载安装依赖
1 # 安装编译依赖⼯具
2 sudo apt-get install build-essential
3 # 安装基本辅助⼯具及库
4 sudo apt-get install cmake git pkg-config libgtk2.0-dev libavcodec-dev libavformat-dev libswscale-dev qt5-default
5 # 安装相关关联库
6 sudo apt-get install python-dev python-opencv python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
第二步:安装OpenCV库
方法一:直接安装
sudo apt-get install libopencv-dev
方法二:下载库包
找到对应的版本的Source文件,下载到本地,并解压
GitHub公开库地址或 Gitee的镜像地址(国内推荐)下载源码
git clone https://gitee.com/mirrors/opencv.git
克隆或解压后得到opencv文件夹
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE -D
CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -D
BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -D
INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D
BUILD_EXAMPLES=ON -D WITH_QT=ON -D WITH_OPENGL=ON ..
# 这⼀步花费的时间⽐较长
make -j4
sudo make install
sudo sh -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'
sudo ldconfig
!!!Tips:其他环境请自行查询教程实现,包括python
结果及验证
1、命令行验证
//编写如下cpp源⽂件
#include <opencv2/opencv.hpp>
using namespace cv;
int main(int argc, char* argv[]) {
Mat image; //此改为⾃⼰的图⽚路径(相对路径或绝对路径皆可)
image = imread("image_name.jpg");
imshow("TestName", image);
waitKey(0);
return 0;
}
使用g++编译(Ubuntu Desktop环境下)
g++ -I/usr/local/include/opencv4/ main.cpp -o demo -lopencv_core -lopencv_imgproc -lopencv_imgcodecs -lopencv_highgui
使用cmake(cMakeList.txt文件内容如下)
# cmake 的最低版本要求
cmake_minimum_required(VERSION 3.1)
# 设置项⽬的名称
project(demo)
# 寻找OpenCV的必须组件
find_package(OpenCV REQUIRED)
# 添加可执⾏⽂件前者为⽬标⽂件名称 后者为源⽂件名称
add_executable(demo main.cpp)
# 链接库
target_link_libraries(demo ${OpenCV_LIBS})
执行操作
cmake .
make
./demo
2、Qt Creator IDE
pro文件
TEMPLATE = app
CONFIG += console c++11
CONFIG -= app_bundle
CONFIG -= qt
SOURCES += \
main.cpp
# 包含路径
INCLUDEPATH += /usr/local/include \
/usr/local/include/opencv4 \
/usr/local/include/opencv4/opencv2
# 库路径
LIBS += /usr/local/lib/libopencv_highgui.so \
/usr/local/lib/libopencv_core.so \
/usr/local/lib/libopencv_imgproc.so \
/usr/local/lib/libopencv_imgcodecs.so
cpp文件
#include <opencv2/opencv.hpp>
using namespace cv;
int main(int argc, char *argv[]) {
Mat img = imread("bg.png");
imshow("背景图⽚", img);
waitKey(0);
return 0;
}