树莓派安装oepncv3.43
Posted almn
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了树莓派安装oepncv3.43相关的知识,希望对你有一定的参考价值。
第一部分:安装
1. 配置并更新树莓派系统
sudo raspi-config // 进入后打开摄像头、SSH sudo apt-get update sudo apt-get upgrade sudo rpi-update
2. 安装OpenCV的相关工具
sudo apt-get install build-essential cmake git pkg-config
3. 安装OpenCV的图像工具包
sudo apt-get install libjpeg8-dev sudo apt-get install libtiff5-dev sudo apt-get install libjasper-dev sudo apt-get install libpng12-dev
4. 安装视频I/O包
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
5.安装gtk2.0和优化函数包
sudo apt-get install libgtk2.0-dev
sudo apt-get install libatlas-base-dev gfortran
6. 下载OpenCV源码
可以在 [ OpenCV ] 查看所有版本源码
git clone https://github.com/opencv/opencv3.4.3
7. 安装OpenCV
// 根据下载的版本而定 cd opencv3.4.03 // 创建release文件夹 mkdir build // 进入release目录下 cd build // cmake读入所有源文件之后,自动生成makefile cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local .. // 编译 sudo make -j4 //若是编译出错,请使用sudo make // 安装 sudo make install //更新动态链接库 sudo ldconfig
第二部分:环境设置
根据第一部分安装完成以后,可以正常使用,无论是使用python2,还是python。
很简单的方式:
1 import cv2 3 cv2.__version__
可是若是进行C++编译时,就会出现问题!
坑还是比较多,这里初学者不建议使用Cmake,编写CMakeLists.txt进行编译。
首先,需要使用管理员权限用vim打开bash
sudo vim ~/.bashrc
然后,添加环境变量
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig export PKG_CONFIG_PATH
wq保存文件后,source文件(执行脚本)
source ~/.bashrc
最后配置lib环境变量
用vim打开/etc/ld.so.conf文件,添加以下行:
/usr/local/lib
可以使用:
pkg-config --cflags --libs opencv
第三部分:测试
建立test.cpp文件
#include <stdio.h> #include <opencv2/opencv.hpp> using namespace cv; int main(int argc, char** argv) { Mat image; image= imread("Lean.jpg", 1); namedWindow("DisplayImage",CV_WINDOW_AUTOSIZE); imshow("DisplayImage",image); waitKey(0); return 0; }
利用g++进行编译test.cpp文件
g++ $(pkg-config --cflags --libs opencv) test.cpp -o Test
应该可以编译出Test文件,可以成功运行!
当然了,也有人使用Geany编译oepncv,这个网上的资料很少的!
需要设置编译的Project properties中的build:
需要设置为:
Compile: g++ -Wall $(pkg-config --cflags opencv) -c "%f" Build: g++ -Wall $(pkg-config --libs opencv) -o "%e" "%f"
然后: build->execute
以上是关于树莓派安装oepncv3.43的主要内容,如果未能解决你的问题,请参考以下文章