树莓派——opencv打开树莓派摄像头调试记录
目录
一、安装包:(注意换要源,不要用系统默认源)
问题1:磁盘空间不足——把根目录扩展到整个SD卡
解决:把根目录扩展到整个SD卡
二、下载
1、先创建opencv目录:
2、下载
问题:fatal: unable to access 'https://github.com/opencv/opencv.git/': gnutls_handshake() failed: The TLS connection was non-properly terminated.
解决:权限不够,加sudo
3、编译
问题3:
也是权限问题:加sudo!
问题4:make 报错:
三、主目录创建picroscope文件夹
1、py文件
2、输入以下命令,检查 OpenCV 是否有效以及是否可以在 Python 中使用。
四、启动摄像头
1、用以下命令启用树莓派上的摄像头接口:
2、再次通过 SSH 进入树莓派。
3、运行命令,下载摄像头和简易服务器的 python 的界面。
4、运行以下命令,测试摄像头是否正常工作。
一、安装包:(注意换要源,不要用系统默认源)
sudo apt-get install build-essential
sudo apt-get install cmake git libgtk2.0-dev vim pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python-dev python-numpy python-pip libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
问题1:磁盘空间不足——把根目录扩展到整个SD卡
报错:fatal: could not create work tree dir 'opencv': No space left on device
mkdir: cannot create directory ‘opencv’: No space left on device
等等......
解决:把根目录扩展到整个SD卡
命令行输入:
sudo raspi-config
选择Advanced Options(光标移动,Tab键选择,空格键确认)
选择Expand Filesystem
设置完成后退出重启树莓派。
如果没有出现重启选项,在命令行输入:
sudo reboot
扩展完成:从3.1G——>15G
二、下载
1、先创建opencv目录:
sudo mkdir opencv
2、下载
git clone https://github.com/opencv/opencv.git
问题:fatal: unable to access 'https://github.com/opencv/opencv.git/': gnutls_handshake() failed: The TLS connection was non-properly terminated.
解决:权限不够,加sudo
sudo git clone https://github.com/opencv/opencv.git
3、编译
①cd opencv/
②mkdir build (创建不成功就加sudo)
③cd build/
④cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D INSTALL_PYTHON_EXAMPLES=ON ..
问题3:
-- Configuring incomplete, errors occurred!
CMake Error: Cannot open file for write: /home/pi/opencv/build/CMakeCache.txt.tmp
CMake Error: : System Error: Permission denied
CMake Error: Unable to open cache file for save. /home/pi/opencv/build/CMakeCache.txt
CMake Error: : System Error: Permission denied
指令:cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D INSTALL_PYTHON_EXAMPLES=ON ..
也是权限问题:加sudo!
⑤make (此过程非常漫长!!可能需要7、8个小时)
问题4:make 报错:
Scanning dependencies of target opencv_highgui_plugins
CMake Error: Cannot open file for write: /home/pi/opencv/build/CMakeFiles/opencv_highgui_plugins.dir/depend.make.tmp
CMake Error: : System Error: Permission denied......
加sudo !!!
sudo make install
cd
三、主目录创建picroscope文件夹
1、py文件
mkdir picroscope
cd picroscope
sudo vi LiveStream.py //复制以下内容
from flask import Flask, Response
from picamera.array import PiRGBArray
from picamera import PiCamera
import cv2
import time
import ioclass Camera(object):def __init__(self):self.cam = PiCamera()self.cam.resolution = (640, 480)self.rawCapture = PiRGBArray(self.cam, size=(640,480))def get_frame(self):for frame in self.cam.capture_continuous(self.rawCapture, format="bgr", use_video_port=True):image = frame.arraycv2.imwrite('blah.jpg',image)self.rawCapture.truncate(0)return open('blah.jpg', 'rb').read()app = Flask(__name__)def gen(camera):while True:frame = camera.get_frame()yield (b'--frame\r\n'b'Content-Type: image/jpeg\r\n\r\n' + frame + b'\r\n')@app.route('/')
def video_feed():return Response(gen(Camera()),mimetype='multipart/x-mixed-replace; boundary=frame')if __name__ == '__main__':app.run(host='0.0.0.0', debug=True) #ssh登录,0.0.0.0换成自己的树莓派ip地址
2、输入以下命令,检查 OpenCV 是否有效以及是否可以在 Python 中使用。
cd picroscope/
python
import cv2
如果显示错误,请使用网络进行问题排查。如果其他方法都行不通,请发帖提问。
如果没有问题,OpenCV 可以正常使用。你可以输入以下命令来关闭 Python CLI。
exit()
输入以下命令关闭树莓派。
sudo shutdown now
四、启动摄像头
1、用以下命令启用树莓派上的摄像头接口:
sudo raspi-config
选择“Interfacing Options”
选择“Camera”
当系统询问是否启用相机时,选择“是”
当要求重启树莓派时,选择“是”
2、再次通过 SSH 进入树莓派。
3、运行命令,下载摄像头和简易服务器的 python 的界面。
sudo pip install picamera
sudo pip install Flask
4、运行以下命令,测试摄像头是否正常工作。
cd picroscope
python LiveStream.py
第一步:打开浏览器并在 URL 栏中输入:[HOSTNAME] .local:5000(ip地址:5000)
第二步:你应该可以看到摄像头在直播。
树莓派——opencv打开树莓派摄像头调试记录相关推荐
- Python使用opencv打开笔记本摄像头时遇到的问题及解决办法
Python使用opencv打开笔记本摄像头时遇到的问题及解决办法 最近在学习python,想用opencv做个人脸检测,打开笔记本摄像头时遇到了问题.摄像头总是闪一下就关闭,并提示一行警告([ WA ...
- 使用Opencv打开手机摄像头
使用opencv打开手机摄像头,这里指的是电脑端写的opencv软件读取手机摄像头图像. 其主要原理是在手机端打开一个端口,打开.读取手机摄像头,然后通过ip-端口号实现远程摄像头图像读取,其实就是让 ...
- Linux命令模式下打开摄像头,Linux下利用Opencv打开笔记本摄像头问题
新建test文件夹,文件夹存在test.cpp和CMakeLists.txttest.cpp#include #include #include #include #include #include ...
- linux打开笔记本摄像头驱动程序,Linux下利用Opencv打开笔记本摄像头问题
新建test文件夹,文件夹存在test.cpp和CMakeLists.txttest.cpp#include @H_404_8@ #include #include #include #include ...
- msm8909的摄像头调试记录
MSM8909摄像头调试记录 前言 最近因为项目需要,客户需要用到摄像头的功能,与硬件沟通确认选型OV8858的摄像头资源,本人也是第一回进行摄像头相关驱动移植于调试,其间也遇到很多的坑,为了方便 ...
- opencv笔记(二)之opencv打开笔记本摄像头
一.前言 楼主最近在使用opencv采集摄像头信息,一开始都不知道怎么去打开笔记本的摄像头的,于是有空做一个记录分享 至于win下怎么配置opencv可以参考楼主文章Opencv笔记(一)之vs201 ...
- opencv 打开网络摄像头
闲着没事从同学那里找到了个openwrt ,突然间想起来OPENCV可以很轻松的打开自带的摄像头,刚开始学习OPENCV 打开过若干次笔记本的摄像头,OPENCV能否打开网络摄像头呢?在百度上搜资 ...
- 通过Opencv打开指定摄像头的方法
我们使用Opencv打开摄像头,一般是使用VideoCapture的open接口. CV_WRAP virtual bool open(int index); open接口要传入一个标识符,如果只有1 ...
- jetson nano opencv 打开 CSI摄像头_怎样使用OpenCV打开电脑摄像头或者外接USB摄像头...
我们如何使用OpenCV打开摄像头并获取从摄像头得到的视频流数据呢?下面,我们会使用VS2019和OpenCV实现该功能. 先上代码: #include#include using namespace ...
最新文章
- C语言与C++不得不说的那点事
- spring 托管bean_在非托管对象中使用Spring托管Bean
- 2、编写单元测试用例,对用户注册功能的DAO层进行测试。(注意:测试用例应考虑成功和失败的情况)...
- Scikit-Learn 常用函数
- 一个菜鸟从高一到大二的作品整理
- 二维ising模型概率c语言_盘点近几年在二维材料中发现的铁磁性
- Linux内存管理:ARM64体系结构与编程之cache(1)
- 中电海康建车联网透明路 探索新型智慧城市商机
- 一位读者关于买房的困惑
- SBUS协议数据演示
- TestStand 语言配置文件说明
- C语言文件读写常用函数
- 如何压缩ppt幻灯片
- 什么是一级域名?一级域名和二级域名的区别是什么?
- 高效windows快捷键
- 树莓派4B接电视HDMI分辨率不正确、无声音的处理办法
- 美化你的Xfce桌面
- python 超级秒表
- 2015年3月TIOBE编程语言排行榜单
- JS实现文档下载兼容谷歌、火狐、IE