Raspbian buster |树莓派4B 安装OpenCV 3

前言

刚到手树莓派4B,悲催地发现只能用Raspbian buster系统。之前没有使用过这个系统而且和熟知的ubuntu有点差别,踩了不少坑,直接把最终结果过程写下来,省的别人也踩坑。
声明一下我没有使用python安装,是直接源码编译安装,个人习惯用C++
如果要是想用python而且想用opencv4 传送门在下面↓
在树莓派上安装opencv4

1.安装依赖

必要的编译工具

sudo apt-get install build-essential cmake pkg-config
sudo apt-get install libgtk2.0-dev libgtk-3-dev

图像、视频I/O依赖和运算库

sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
sudo apt-get install libjpeg-dev libtiff5-dev libjasper-dev libpng12-dev
sudo apt-get install libxvidcore-dev libx264-dev
sudo apt-get install libatlas-base-dev gfortran

2.源码准备

https://opencv.org/releases/
上OpenCV官网上,选择中意的版本source给下载下来(推荐用迅雷下载,最近国其他工具都不好使)
下载好zip包放到根目录下,然后解压,进入并创建build文件夹:

$ sudo apt-get update
$ sudo apt-get upgrade
$ unzip opencv.zip
$ mkdir build
$ cd build

3.编译

没用contrib库就按照我这个编译就行,
最主要的是cmake中药有-latomic这个标,否则对于树莓派会失败

$ cmake -D CMAKE_BUILD_TYPE=RELEASE \ 
    	-D CMAKE_INSTALL_PREFIX=/usr/local \  
	-D INSTALL_PYTHON_EXAMPLES=ON \  
	-DCMAKE_SHARED_LINKER_FLAGS='-latomic'
	-D BUILD_EXAMPLES=ON ..
$ make	
$ sudo make install 
$ sudo ldconfig

4.测试

测试方法一

pkg-config --modversion opencv

应该会输出OpenCV的版本号

测试方法二

cmake生成摄像头调用的c++小程序仅供参考

camera.cpp

#include
#include
using namespace cv;

int main(int argc,char ** argv)
{
 VideoCapture cap(0);
 if(!cap.isOpened())
  	return -1;
 Mat frame;
 while(true)
 	{
  	cap >> frame;
  	imshow("raw",frame);  
  	waitKey(1);
	 }
 return 0;
}

CMakeLists.txt

cmake_minimum_required(VERSION 3.8)
project(test)
set(CMAKE_CXX_STANDARD 11)
find_package(OpenCV 3.4.0 REQUIRED)
add_executable(camera camera.cpp)
target_link_libraries(camera ${OpenCV_LIBS})

运行程序

$ mkdir build
$ cd build
$ cmake ..
$ make 
$ ./camera

你可能感兴趣的:(计算机视觉,Linux系统)