基于opencv在摄像头ubuntu根据视频获取

基于opencv在摄像头ubuntu根据视频获取

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。



基于opencv在摄像头ubuntu根据视频获取

1  工具 原料

    平台 :UBUNTU12.04

    安装库  Opencv-2.3    

   

2  安装编译执行步骤

   安装编译opencv-2.3  參考http://blog.csdn.net/xiabodan/article/details/23547847

  提前下载OPENCV源代码包

  官方:http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/

 我的:http://download.csdn.net/detail/xiabodan/7176253

             

2

sudo apt-get update

sudo apt-get upgrade

sudo apt-get install build-essential libgtk2.0-dev libjpeg-dev libtiff4-dev libjasper-dev libopenexr-dev cmake python-dev python-numpy python-tk libtbb-dev libeigen2-dev yasm libfaac-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev libx264-dev libqt4-dev libqt4-opengl-dev sphinx-common texlive-latex-extra libv4l-dev libdc1394-22-dev libavcodec-dev libavformat-dev libswscale-dev

             解压源代码包

3 tar -xvf OpenCV-2.4.1.tar.bz2
4

cd OpenCV-2.4.1

1

mkdir build

cmake配置MAKEFILE

2 cd build
3 cmake -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON -D WITH_QT=ON -D WITH_OPENGL=ON ..

        然后进行make

1 make
2 sudo make install

        配置opencv

    

1 sudo gedit /etc/ld.so.conf.d/opencv.conf

        Add the following line at the end of the file(it may be an empty file, that is ok) and then save it: 在opencv.conf中加入下面路径

1 /usr/local/lib

           sudo ldconfig

1

sudo gedit /etc/bash.bashrc

        Add these two lines at the end of the file and save it: 在bash.bashrc中加入下面环境变量

1 PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
2 export PKG_CONFIG_PATH

        sudo   reboot 重新启动电脑

注意:一定要提前安装V4L等等库,不然编译能过,执行的时候没有画面。

   

3  測试代码

编译

g++ cameraCaptrue.cpp  -o  cameraCap `pkg-config --libs --cflags opencv`

生成文件cameraCap

执行  採集成功

./cameraCap

cameraCaptrue.cpp

#include<stdio.h>
#include<math.h>
#include "highgui.h"
#include <cv.h>
#include <opencv2/opencv.hpp>
#include <opencv2/highgui/highgui.hpp>

//#include <cvaux.h>
//#include <highgui\highgui_c.h>
//#include <core\types_c.h>
//#include <photo\photo_c.h>
//#include <imgproc\imgproc_c.h>
//#include <photo\photo

using namespace cv;


int main( int argc, char** argv )
{
	printf("I am start \n");
	VideoCapture cap(0); // open the default camera
	if(!cap.isOpened())  // check if we succeeded
		return -1;

	printf("%f, %f\n",cap.get(CV_CAP_PROP_FRAME_WIDTH),cap.get(CV_CAP_PROP_FRAME_HEIGHT));
	cap.set(CV_CAP_PROP_FRAME_WIDTH, 320);
	cap.set(CV_CAP_PROP_FRAME_HEIGHT, 240);
	cap.set(CV_CAP_PROP_FPS, 15);
	printf("%f, %f\n",cap.get(CV_CAP_PROP_FRAME_WIDTH),cap.get(CV_CAP_PROP_FRAME_HEIGHT));
	Mat src_gray;
	cvNamedWindow( "video", CV_WINDOW_AUTOSIZE );

	while(1)
	{
		Mat frame;
		cvWaitKey(10);
		cap >> frame;
		imshow("video", frame);
	}


	return 0;
}

基于opencv在摄像头ubuntu根据视频获取

接下来移植到zedboard上去

參考:

     http://www.cnblogs.com/liu-jun/archive/2013/12/24/3489675.html

     http://xuxd32.blog.163.com/blog/static/48121933201192394550140/

ZedBoard-OpenCV打开摄像头失败解决方式及过程:

     http://www.openhw.org/wicoboy/blog/13-04/293302_71692.html

      超级天群博客

     http://www.cnblogs.com/surpassal/

           
     OpenCV移植到ARM 全过程 :点击打开链接

      【OpenHW12參赛手记】Zedboard-Linux-digilent3.6内核版本号不支持USB摄像头问题的解决方式  :http://www.eefocus.com/jefby1990/blog/13-03/292301_988aa.html点击打开链接





版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/117799.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • centos7搭建hadoop集群之rsync和xsync[通俗易懂]

    centos7搭建hadoop集群之rsync和xsync[通俗易懂]文章记录于各个服务器(或者虚拟机等)已经配置了ssh免密登录,可执行下面操作,未配置ssh免密登录,可参考:https://blog.csdn.net/yhblog/article/details/84029535此文章是基于centos7minimal版本的,纯净系统,所以还需要安装rsync工具(确保所有节点都必须安装rsync)否则报错:安装成功:启动rsync服务sys…

    2022年6月2日
    34
  • c语言findwindowex函数用法,VB中findwindowex函数的用法?

    c语言findwindowex函数用法,VB中findwindowex函数的用法?FindWindowEx函数函数功能:在窗口列表中寻找与指定条件相符的第一个子窗口。该函数获得一个窗口的句柄,该窗口的类名和窗口名与给定的字符串相匹配。这个函数查找子窗口,从排在给定的子窗口后面的下一个子窗口开始。在查找时不区分大小写。参数:(1)hwndParent:要查找的子窗口所在的父窗口的句柄(如果设置了hwndParent,则表示从这个hwndParent指向的父窗口中搜索子窗口)。如…

    2022年5月31日
    36
  • 基于LSTM的股票预测模型_python实现_超详细

    基于LSTM的股票预测模型_python实现_超详细文章目录一、背景二、主要技术介绍1、RNN模型2、LSTM模型3、控制门工作原理四、代码实现五、案例分析六、参数设置七、结论一、背景近年来,股票预测还处于一个很热门的阶段,因为股票市场的波动十分巨大,随时可能因为一些新的政策或者其他原因,进行大幅度的波动,导致自然人股民很难对股票进行投资盈利。因此本文想利用现有的模型与算法,对股票价格进行预测,从而使自然人股民可以自己对股票进行预测。理论上,………

    2025年10月19日
    4
  • 按位异或的深入理解[通俗易懂]

    按位异或的深入理解[通俗易懂]异或运算:首先异或表示当两个数的二进制表示,进行异或运算时,当前位的两个二进制表示不同则为1相同则为0.该方法被广泛推广用来统计一个数的1的位数!参与运算的两个值,如果两个相应bit位相同,则结果为0,否则为1。即:  0^0=0,   1^0=1,   0^1=1,   1^1=0按位异或的3个特点:(1)0^0=0,0^1=1 0

    2022年6月6日
    47
  • idea修改java版本_软件项目版本管理

    idea修改java版本_软件项目版本管理Maven构建HibernateDemo时运行报错,版本问题。Hibernate5要用jdk1.8。下载了jdk1.8安装好。不用配置环境变量。File>>ProjectStructure找到你的jdk位置然后再选择Project,修改对应项目的jdk版本。

    2025年12月5日
    3
  • SQL2005关于quotename的用法(转)[通俗易懂]

    SQL2005关于quotename的用法(转)[通俗易懂]首先,sqlserver里的标识符有一定的规则,比如 你createtableabc123(…)那么中间含有空格,它不是符合规则的。你会写做createtable[abc123](….)即以[]来定界标识符。quotename将字串成为有效的标识符。它有什么用呢?我举个例子:你有个表名字叫做aa[]bb当

    2022年7月25日
    13

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号