ubuntu下安装opencv库+Python2.7环境安装及开发摄像头拍照应用
好久没有更新了,今天更一篇最近遇到的问题,及解决办法,后面博客得继续写起来
安装
#使用Python下的lib库直接进行安装
apt-get install python-opencv
测试
#使用如下代码进行测试,以下代码是拍照,在按q之后,保存图片并退出。
import cv2
cap = cv2.VideoCapture(0)
while(1):
# get a frame
ret, frame = cap.read()
# show a frame
cv2.imshow("capture", frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
cv2.imwrite("./test.jpeg", frame)
break
cap.release()
cv2.destroyAllWindows()
至此代表安装基本没有问题,可以进行下一步开发
开发
通过在上述的测试代码添加配置摄像头的参数
#设置摄像头的像素
cap.set(cv2.cv.CV_CAP_PROP_FRAME_WIDTH,3264)
cap.set(cv2.cv.CV_CAP_PROP_FRAME_HEIGHT,2448)
#设置摄像头的帧率
cap.set(cv2.cv.CV_CAP_PROP_FPS,5)
本以为万事大吉可以收工了,一运行发现了个巨大的问题
错误如下提示
libv4l2: error converting / decoding frame data: v4l-convert: error
destination buffer too small (16777216 < 23970816)
VIDIOC_DQBUF: Bad address
看提示是因为自己想用到高清的,可是libv412库不支持,导致buffer不够大,产生的错误,通过libv4l2: error converting / decoding frame data: v4l-convert: error destination buffer too small 解决问题,下面说一下解决步骤
- 找到libv4l2的源码github
- 更改源码路径下的lib/libv4l2/libv4l2-priv.h文件中的如下代码
//The change was
#define V4L2_FRAME_BUF_SIZE (4096 * 4096)
//to
#define V4L2_FRAME_BUF_SIZE (2 * 4096 * 4096)
- 首先卸载系统之前的这个库文件
sudo apt-get remove libv4l-dev
- 编译安装刚改更改过的库
#源码目录下先进行configure,这个中间貌似由于没有安装autoconf之类的东西,也报过错,出现错误后大家Google一下就能找到答案,都是些容易解决的问题
autoreconf -vfi
make
make install
这样库文件就重新安装了,测试一下,高清的摄像头也可以用了。
同时开多个摄像头
本以为万事大吉了,万万没想到又出幺蛾子了,同时打开三个摄像头的时候又报错了如下:
libv4l2: error turning on stream: No space left on device
一下就嗨皮了,查了一下貌似说是usb带宽不够用了,经过找资料找到下面的解决办法
sudo rmmod uvcvideo
#下面这个128可以更改最好改大点,如果用的是高清摄像头
sudo modprobe uvcvideo quirks=128
如果更改有效,可以用下面的方法进行配置,这样就不用每次都改了
sudo vi /etc/modprobe.d/uvcvideo.conf
options uvcvideo quirks=128
ok终于可以顺利运行了,上面的应用大家就可以根据自己的需要随便改了。
ubuntu下安装opencv库+Python2.7环境安装及开发摄像头拍照应用的更多相关文章
- 如何生成能在没有安装opencv库及vs2010环境的电脑上运行的exe文件
项目基本算法已经完成,甲方需要一个可以运行的demo.目前,程序能在自己的电脑上正常运行.移植到其他win7系统上,运行失败. 寻找各种解决办法,baidu找到两个办法: 1.使用静态链接的方法,这种 ...
- Ubuntu 17.04版本下,opencv进行源码编译安装
本文主要针对Ubuntu 17.04版本下,opencv进行源码编译安装.开发环境主要针对python 对 openCV库的调用. 安装 gcc cmake 编译环境 sudo apt-get ins ...
- Win7下Python2.7环境安装paramiko模块
Win7下Python2.7环境安装paramiko模块,经过安装并测试成功,整理文档如下: 1.下载安装Windows版本的Python2.7,我默认装在C:\Python27 我的python已经 ...
- 【视频开发】【计算机视觉】doppia编译之三:编译安装opencv库
这里我介绍2种方法 (1)利用别人写好的脚本编译,相对来说省力一点 上Github下载别人写好的脚本文件,网址 https://github.com/jayrambhia/Install-OpenC ...
- Ubuntu杂记——Ubuntu下Eclipse搭建Maven、SVN环境
正在实习的公司项目是使用Maven+SVN管理的,所以转到Ubuntu下也要靠自己搭环境,自己动手,丰衣足食.步骤有点简略,但还是能理解的. 一.安装JDK7 打开终端(Ctrl+Alt+T),输入 ...
- 在Ubuntu下编译Assimp库
在Ubuntu下编译Assimp库 怎样在Ubuntu下编译Assimp库?这是我曾经编译成功后做的笔记,供參考. 1.去以下的站点去下载Assimp库: http://assimp.sourcefo ...
- ubuntu 下搭建apache+python的运行环境
ubuntu下怎么搭建apache+python运行环境,可以参考http://www.01happy.com/ubuntu-apache-mod-python/ ,这里只是简单的记录下步骤,本文主要 ...
- Ubuntu下搭建Hyperledger Fabric v1.0环境
多次尝试才正常启动了Fabric,如遇到各种莫名错误,请参考如下一步步严格安装,特别用户权限需要注意. 一.安装Ubuntu16 虚拟机或双系统,虚拟机有VirtualBox或者VMware,Ub ...
- Python如何安装OpenCV库
转载:https://blog.csdn.net/weixin_35684521/article/details/81953047 OpenCV的概念可百度,在此不再赘述.https://baike. ...
随机推荐
- C#开发移动应用系列(3.使用照相机扫描二维码+各种基础知识)
前言 上篇文章地址: C#开发移动应用系列(1.环境搭建) C#开发移动应用系列(2.使用WebView搭建WebApp应用) 今天我们来讲一下如何使用Camera来调用照相机扫描二维码. (Tips ...
- java 动态代理的实现
http://www.cnblogs.com/jqyp/archive/2010/08/20/1805041.html
- Tomcat中部署web应用 ---- Dubbo服务消费者Web应用war包的部署
样例视频:http://www.roncoo.com/course/view/f614343765bc4aac8597c6d8b38f06fd IP: 192.168.2.61 部署容器:apache ...
- Python对数据库的增删改查
#!/usr/bin/env python import MySQLdb DATABASE_NAME = 'hero' class HeroDB: # init class and ...
- JavaScript深入浅出补充——(一)数据类型,表达式和运算符
项目基本做完,在进行下一阶段学习之前先看视频学习回顾一下JavaScript 一.数据类型 JavaScript中有五种原始类型和一种对象类型 JavaScript弱类型语言中隐式转换 num-0 字 ...
- 最全的CSS浏览器兼容问题(转至http://68design.net/Web-Guide/HTMLCSS/37154-1.html)
最全的CSS浏览器兼容问题 CSS对浏览器的兼容性有时让人很头疼,或许当你了解当中的技巧跟原理,就会觉得也不是难事,从网上收集了IE7,6与Fireofx的兼容性处理方法并整理了一下.对于web2 ...
- Java - 在WebService中使用Client调用三方的RestAPI
背景 近期,由于项目的要求需要在自己的webservice中调用远程的WebAPI(Restful format).自己的webservice程序是用Java编码写的,所以需要在其中实现一个Clien ...
- 一键将Web应用发布到云-Azure Web App
我们现在越来越多的传统应用,逐步向云端迁移,原先私有云的部署模式,逐步向云端PaaS IaaS转变.例如: 我们在云端Azure中申请VM虚拟机,将我们的Web应用部署到VM的IIS中,同时做云服务的 ...
- VB6之GIF分解
原文链接:http://hi.baidu.com/coo_boi/item/1264a64172fe8dec1f19bc08 还是找了个C++的翻译下,原文链接:http://www.360doc.c ...
- Chrome浏览器扩展开发系列之三:Google Chrome浏览器扩展的架构
1) 不可视的background页面 Google Chrome扩展往往包含一个不可见的background页面,Google Chrome扩展的主要业务逻辑都位于此.有两种类型的backgroun ...