1.配置更新树莓派系统
sudo raspi-config // 进入后打开摄像头、SSH
sudo apt-get update
sudo apt-get upgrade
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源码
git clone https://github.com/opencv/opencv.git
这种方式太慢,可以通过到该链接下载,若是有迅雷会员,在迅雷下会快很多
7.安装opencv
//创建一个文件夹,将opencv3.2.0.zip放到该文件夹
mkdir opencv
cd opencv
//解压
unzip opencv3.2.0.zip
cd opencv3.2.0
//创建release
mkdir release
cd release
// cmake读入所有源文件之后,自动生成makefile
cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local ..
// 编译
sudo make
// 安装
sudo make install
//更新动态链接库
sudo ldconfig
8.解决无法打开摄像头硬件问题
sudo nano /etc/modules
// 进入编辑界面后,在末尾添加输入
snd-bcm2835
bcm2835-v4l2
9.测试用例Python代码
import cv2
cap = cv2.VideoCapture(0) # 打开摄像头
print("VideoCapture is opened?", cap.isOpened())
while(True):
ret, frame = cap.read() # 读取摄像头图像
center = (frame.shape[1]//2, frame.shape[0]//2) # 图像中心点位置
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) # 转灰度
cv2.circle(gray, center=center, radius=100, color=(0,0,255)) # 画圆
cv2.imshow("frame", gray) # 显示图片
if cv2.waitKey(1) & 0xFF == ord('q'):
break
cap.release() # 释放摄像头