树莓派安装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脚本实现代码行数统计代码分享
Mar 10 Python
python实现登陆知乎获得个人收藏并保存为word文件
Mar 16 Python
Python中字典创建、遍历、添加等实用操作技巧合集
Jun 02 Python
基于python list对象中嵌套元组使用sort时的排序方法
Apr 18 Python
Tensorflow中的placeholder和feed_dict的使用
Jul 09 Python
python实现的接收邮件功能示例【基于网易POP3服务器】
Sep 11 Python
python GUI库图形界面开发之PyQt5控件数据拖曳Drag与Drop详细使用方法与实例
Feb 27 Python
简单了解Java Netty Reactor三种线程模型
Apr 26 Python
Selenium自动化测试工具使用方法汇总
Jun 12 Python
Python 实现一个计时器
Jul 28 Python
python装饰器实现对异常代码出现进行自动监控的实现方法
Sep 15 Python
Python torch.flatten()函数案例详解
Aug 30 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 实现的将图片转换为TXT
2015/10/21 PHP
Prototype源码浅析 String部分(三)之HTML字符串处理
2012/01/15 Javascript
javascript 进阶篇2 CSS XML学习
2012/03/14 Javascript
jQuery 滑动方法slideDown向下滑动元素
2014/01/16 Javascript
javascript中slice(),splice(),split(),substring(),substr()使用方法
2015/03/13 Javascript
jQuery实现产品对比功能附源码下载
2016/08/09 Javascript
微信小程序 页面传参实例详解
2016/11/16 Javascript
js实现适合新闻类图片的轮播效果
2017/02/05 Javascript
Vue.Js中的$watch()方法总结
2017/03/23 Javascript
关于vue.js发布后路径引用的问题解决
2017/08/15 Javascript
Vue实现自定义下拉菜单功能
2018/07/16 Javascript
微信小程序仿知乎实现评论留言功能
2018/11/28 Javascript
layui添加动态菜单与选项卡
2019/07/26 Javascript
查找Vue中下标的操作(some和findindex)
2020/08/12 Javascript
[02:06]DOTA2肉山黑名单魔法终结者 敌法师中文配音鉴赏
2013/06/17 DOTA
[02:32]DOTA2英雄基础教程 祸乱之源
2013/12/23 DOTA
[54:33]2018DOTA2亚洲邀请赛小组赛 A组加赛 Liquid vs Optic
2018/04/03 DOTA
pycharm 使用心得(五)断点调试
2014/06/06 Python
Python实现批量下载图片的方法
2015/07/08 Python
python构建自定义回调函数详解
2017/06/20 Python
Python实现桶排序与快速排序算法结合应用示例
2017/11/22 Python
用Python将结果保存为xlsx的方法
2019/01/28 Python
python Popen 获取输出,等待运行完成示例
2019/12/30 Python
Django 自定义404 500等错误页面的实现
2020/03/08 Python
HTML5 本地存储之如果没有数据库究竟会怎样
2013/04/25 HTML / CSS
Under Armour安德玛法国官网:美国高端运动科技品牌
2018/06/29 全球购物
Ever New加拿大官网:彰显女性美
2018/10/05 全球购物
地质灾害防治方案
2014/05/14 职场文书
学校做一个有道德的人活动方案
2014/08/23 职场文书
开展批评与自我批评心得体会
2014/10/17 职场文书
2014年维修电工工作总结
2014/11/20 职场文书
食堂采购员岗位职责
2015/04/03 职场文书
亲戚关系证明
2015/06/24 职场文书
中职班主任培训心得体会
2016/01/07 职场文书
2016年企业先进员工事迹材料
2016/02/25 职场文书
终止合同协议书范本
2016/03/22 职场文书