树莓派安装OpenCV3完整过程的实现


Posted in Python onOctober 10, 2019

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/opencv.git

7. 安装OpenCV

// 根据下载的版本而定
cd opencv-3.2.0 
// 创建release文件夹
mkdir release
// 进入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

树莓派安装OpenCV3完整过程的实现

9. 测试用例Python代码

# -*- coding: utf-8 -*-
__author__ = "kyoRan"

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()   # 释放摄像头
cv2.destroyAllWindows() # 关闭所有窗口

测试结果如下

树莓派安装OpenCV3完整过程的实现

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中的迭代器与生成器高级用法解析
Jun 28 Python
Python实现PS滤镜的万花筒效果示例
Jan 23 Python
Python绘制的二项分布概率图示例
Aug 22 Python
Python面向对象之接口、抽象类与多态详解
Aug 27 Python
Python从文件中读取数据的方法讲解
Feb 14 Python
Scrapy框架爬取Boss直聘网Python职位信息的源码
Feb 22 Python
简单了解Python matplotlib线的属性
Jun 29 Python
OpenCV中VideoCapture类的使用详解
Feb 14 Python
Python3 xml.etree.ElementTree支持的XPath语法详解
Mar 06 Python
Python 创建守护进程的示例
Sep 29 Python
python 如何使用find和find_all爬虫、找文本的实现
Oct 16 Python
Python实现对word文档添加密码去除密码的示例代码
Dec 29 Python
树莓派极简安装OpenCv的方法步骤
Oct 10 #Python
python 利用jinja2模板生成html代码实例
Oct 10 #Python
pandas将多个dataframe以多个sheet的形式保存到一个excel文件中
Oct 10 #Python
利用pandas合并多个excel的方法示例
Oct 10 #Python
python匿名函数的使用方法解析
Oct 10 #Python
Python切图九宫格的实现方法
Oct 10 #Python
python 3.7.4 安装 opencv的教程
Oct 10 #Python
You might like
PHP与SQL注入攻击防范小技巧
2011/09/16 PHP
从零开始学YII2框架(二)通过 Composer 安装扩展插件
2014/08/20 PHP
php调整服务器时间的方法
2015/04/03 PHP
PHP附件下载中文名称乱码的解决方法
2015/12/17 PHP
TP3.2.3框架使用CKeditor编辑器在页面中上传图片的方法分析
2019/12/31 PHP
jquery实现checkbox全选全不选的简单实例
2013/12/31 Javascript
jquery通过visible来判断标签是否显示或隐藏
2014/05/08 Javascript
node.js中的fs.close方法使用说明
2014/12/17 Javascript
JavaScript操作XML/HTML比较常用的对象属性集锦
2015/10/30 Javascript
js正则取值的结果数组调试方法
2018/10/10 Javascript
vue动态添加路由addRoutes之不能将动态路由存入缓存的解决
2019/02/19 Javascript
Node.js Stream ondata触发时机与顺序的探索
2019/03/08 Javascript
小程序获取当前位置加搜索附近热门小区及商区的方法
2019/04/08 Javascript
前端Vue项目详解--初始化及导航栏
2019/06/24 Javascript
Layui数据表格 前后端json数据接收的方法
2019/09/19 Javascript
Angular之jwt令牌身份验证的实现
2020/02/14 Javascript
Vue的自定义组件不能使用click方法的解决
2020/07/28 Javascript
Python3基础之基本运算符概述
2014/08/13 Python
Python的GUI框架PySide的安装配置教程
2016/02/16 Python
使用 Python 实现简单的 switch/case 语句的方法
2018/09/17 Python
python实现杨氏矩阵查找
2019/03/02 Python
使用Python的turtle模块画国旗
2019/09/24 Python
Django中提示消息messages的设置方式
2019/11/15 Python
基于python纯函数实现井字棋游戏
2020/05/27 Python
Python 实现图片转字符画的示例(静态图片,gif皆可)
2020/11/05 Python
华为智利官方商店:Huawei Chile
2020/05/09 全球购物
初中物理教学反思
2014/01/14 职场文书
银行纠风工作实施方案
2014/06/08 职场文书
施工安全汇报材料
2014/08/17 职场文书
八荣八耻演讲稿
2014/09/15 职场文书
贪污受贿检讨书范文
2014/11/19 职场文书
护理专业自荐信范文
2015/03/06 职场文书
色戒观后感
2015/06/12 职场文书
CocosCreator入门教程之网络通信
2021/04/16 Javascript
详解Python生成器和基于生成器的协程
2021/06/03 Python
Java 中的 Lambda List 转 Map 的多种方法详解
2022/07/07 Java/Android