linux 安装opencv

https://docs.opencv.org/

下载opencv

安装g++,cmake,make,wget ,unzip,libgtk2.0-dev,libcanberra-gtk-module,

apt-get install pkg-config

然后和官网的一样

wget -O opencv.zip https://github.com/opencv/opencv/archive/master.zip

unzip opencv.zip

mv opencv-master opencv

mkdir -p build && cd build

进入build文件夹

cmake ../opencv

make -j4

sudo make install

就完成了:

By default OpenCV will be installed to the /usr/local directory, all files will be copied to following locations:

  • /usr/local/bin - executable files
  • /usr/local/lib - libraries (.so)
  • /usr/local/cmake/opencv4 - cmake package
  • /usr/local/include/opencv4 - headers
  • /usr/local/share/opencv4 - other files (e.g. trained cascades in XML format)

Since /usr/local is owned by the root user, the installation should be performed with elevated privileges (sudo):

安装好之后需要配置一下

在文件夹:  /usr/local/lib  里面新建一个pkg-config 文件夹,在里面新建一个opencv.pc文件

sudo madir /usr/local/lib/pkg-config

sudo touch /usr/local/lib/pkg-config/opencv.pc

sudo vim /usr/local/lib/pkg-config/opencv.pc

写入以下内容:

prefix=/usr/local
exec_prefix=${prefix}
includedir=${prefix}/include
libdir=${exec_prefix}/lib

Name: opencv
Description: The opencv library
Version:4.5.3
Cflags: -I${includedir}/opencv4
Libs: -L${libdir} -lopencv_shape -lopencv_stitching -lopencv_objdetect -lopencv_superres -lopencv_videostab -lopencv_calib3d -lopencv_features2d -lopencv_highgui -lopencv_videoio -lopencv_imgcodecs -lopencv_video -lopencv_photo -lopencv_ml -lopencv_imgproc -lopencv_flann  -lopencv_core

其中路径和版本是根据自己安装位置填写

然后添加环境变量:

sudo vim ~/.bashrc

在最后追加:

export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkg-config

 至此配置完成

新建一个cpp文件

#include
#include
#include
#include
#include
using namespace cv;
using namespace std;
int main()
{   
	Mat sss;
	sss=imread("/home/jarvis/Desktop/work/picture/beach.jpg");
	imshow("Test",sss);
	waitKey(0);
	cin>>a;
	cout<

使用命令

g++ `pkg-config opencv --cflags` hello.cpp  -o hello `pkg-config opencv --libs`

注意里面的是反引号` `表示bash命令,也就是Tab键上面与~符号同一个键。

也可用cmake编译,先写一个CMakeLists.txt

cmake_minimum_required(VERSION 2.8)
project(hello)
find_package(OpenCV REQUIRED)
include_directories(${OpenCV_INCLUDE_DIRS})
add_executable(hello hello.cpp)
target_link_libraries(hello ${OpenCV_LIBS})

还可以用make编译,先写一个Makefile文件

TARGET=hello
all:$(TARGET)
CXX:g++
INCLUDE = .
CFLAGS=`pkg-config opencv --cflags` `pkg-config opencv --libs`
hello: hello.cpp
        $(CXX)  $^  -o $@ $(CFLAGS)

你可能感兴趣的:(知识,opencv,linux)