仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1389|回复: 9
打印 上一主题 下一主题

[CentOS(社区)] 带来一篇CentOS+OpenCV2.3.1+ffmpeg0.8+Codeblocks

[复制链接]
逍遥一派 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-14 20:31:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
欢迎大家来到仓酷云论坛!因为项目必要,要把之前的事情移植到CentOS上。因为之前没有真正动手利用过Linux的体系,以是此次算是练手了。1情况安排
1.1装置VMWare9
1.2新建假造机,装置CentOS6.4-x86_64
假造机设置依据盘算机硬件和需求举行设置,收集设置成bridge。假如装置过程当中呈现VT-x毛病,必要在BIOS中开启VT-x,AMD平台未测。
1.3装置OpenCV2.3.1
参考
blog.csdn.net/xiaohouzuoxin/article/details/9831263
必要独自下载的默许放在/home/xx/Downloads
1.3.1安排yum源
在mirror.163.com中取得CentOS的repo文件,掩盖当地的文件
/etc/yum.repo.d/CentOS-Base.repo
1.3.2筹办情况
su
yuminstallgcc-c++
yuminstallgtk+-devel.i686
yuminstallgimp-devel.i686
yuminstallgimp-devel-tools.i686
yuminstallgimp-help-browser.i686
yuminstallzlib-devel.i686
yuminstalllibtiff-devel.i686
yuminstalllibjpeg-devel.i686
yuminstalllibpng-devel.i686
yuminstallgstreamer-devel.i686
yuminstalllibavc1394-devel.i686
yuminstalllibraw1394-devel.i686
yuminstalllibdc1394-devel.i686
yuminstalljasper-devel.i686
yuminstalljasper-utils.i686
yuminstallcmake
yuminstallswig
yuminstallpython
yum–yinstalllibtool
yuminstallnasm.i686
*.i686换成*.x86_64,假如呈现yum的软件包没有,用yumsearch软件包名搜刮一下,在yuminstall找到的软件包名

1.3.3ffmpeg
参考
blog.csdn.net/xygl2009/article/details/12998497
在官网找ffmpeg-0.8不乱版,下载后解压,OpeninTerminal
./configure–enable-shared–enable-gpl–enable-swscale–disable-yasm
make
makeinstall
一切的库装置在/usr/local/lib下,一切的头文件装置在/usr/local/include下
测试ffplay,可是会报错。找到config.mak文件并翻开,找到CONFIG_FFPLAY=yes,往失落后面的!,再make。提醒短少SDL。装置SDL
yuminstallSDL
再装置短少的几个库SDL_mixer-2.0.0,SDL_image-2.0.0和SDL_rtf-0.1.0。可是make时会堕落,定位的毛病是SDL的版本号太旧,下载最新的SDL2-2.0.3并装置,成绩办理。
make
makeinstall

1.3.4pkg-config
参考blog.csdn.net/firefoxbug/article/details/7554409
pkg-config经由过程各个库文件中的.pc文件辨认已装置的库文件的信息。这些.pc文件是由各库的装置步伐本人天生的。经由过程PKG_CONFIG_PATH来设置pkg-config举行更新。

1.3.5cmake
yuminstallcmake

1.3.6OpenCV2.3.1
解压后OpeninTerminal,
mkdirrelease
cdrelease
cmake../
堕落,定位在CMakeLists.txt中的第44行。复杂的作法是正文失落这一行。再次
cmake../
天生列表中ffmpeg相干的都是no。实行
exportPKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
再次实行
cmake../
天生列表中ffmpeg相干项都是yes
make
makeinstall

一切的库装置在/usr/local/lib下,一切的头文件装置在/usr/local/include下。测试OpenCV和ffmpeg之前还需将路径更新
vi/etc/ld.so.conf
最初到场一行/usr/local/lib
ldconfig

1.4CodeBlocks-12.11
参考
www.ienter.org/html/2013/07/117.html
下载codeblocks-12.11,装置。还必要装置wxGTK和xterm

2例程调试
参考
http://www.07net01.com/program/123599.html
http://digitus.itk.ppke.hu/~losda/anyagok/OpenCV/CodeBlocks_OpenCV.pdf

默许路径/home/xx/Codes/test/test_opencv
翻开Code::blocks
新建工程,范例为Consoleapplication,利用言语C++,工程名test_opencv,一起next就行了。
在sources中双击main.cpp
输出代码
#include<stdio.h>
#include<opencv2/imgproc/imgproc.hpp>
#include<opencv2/highgui/highgui.hpp>
#include<opencv2/core/core.hpp>

usingnamespacecv;
usingnamespacestd;

intmain(intargc,char**argv)
{
if(argc==2)
{
Matimg;
img=imread(argv[1]);
imshow(“test”,img);
waitKey(0);
return0;
}
return-1;
}
设置工程的情况变量等
右键左手边的test_opencv,选择Buildoptions,选择对话框左手边的test_opencv,然后选择Linkersettings,在Linklibraries中到场利用到的lib
/usr/local/lib/libopencv_highgui.so.2.3.1
/usr/local/lib/libopencv_imgproc.so.2.3.1
/usr/local/lib/libopencv_core.so.2.3.1
选择Searchdirectories,在Compiler中到场include的地位
/usr/local/include/opencv2
/usr/local/include
在Linker中到场lib的地位
/usr/local/lib
最初点击断定,举行编译,天生的文件在../bin/Release内里
在Terminal中进进该路径,实行
./test_opencvxx.xx
显现图片申明OpenCV可以一般利用了。上面测试视频播放功效
#include<stdio.h>
#include<opencv2/imgproc/imgproc.hpp>
#include<opencv2/highgui/highgui.hpp>
#include<opencv2/core/core.hpp>
#include<opencv2/video/video.hpp>

usingnamespacecv;
usingnamespacestd;

intmain(intargc,char**argv)
{
Matimg;
VideoCapturepCap;

if(!pCap.isOpened())
return-1;

while(1)
{
pCap>>img;
imshow(“test”,img);
if(waitKey(10)==27)
break;
}
return-1;
}
在Linkersettings,Linklibraries中到场
/usr/local/lib/libopencv_video.so.2.3.1
编译
在Terminal中进进该路径,实行
./test_opencvxx.xx
播放视频,按ESC加入。
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的好朋友们!
再现理想 该用户已被删除
沙发
发表于 2015-1-16 19:24:20 | 只看该作者

带来一篇CentOS+OpenCV2.3.1+ffmpeg0.8+Codeblocks

最好先搜寻一下论坛是否有您需要的文章。这样可以获得事半功倍的效果。
飘灵儿 该用户已被删除
板凳
发表于 2015-1-20 20:33:17 来自手机 | 只看该作者
和私有操作系统不同,各个Linux的发行版本的技术支持时间都较短,这对于Linux初学者是往往不够的。
再见西城 该用户已被删除
地板
发表于 2015-1-29 23:53:20 | 只看该作者
编程学习及开发,Linux是免费,开源的操作系统,并且可开发工具相当多,如果您支持自由软件,一定要同广大热爱自由软件人士一同为其不懈努力。
灵魂腐蚀 该用户已被删除
5#
发表于 2015-2-6 07:45:28 | 只看该作者
Linux高手更具有鼓励新手的文化精神。如何在Linux社区获得帮助,需要说明的是你要有周全的思考,准备好你的问题,不要草率的发问。
第二个灵魂 该用户已被删除
6#
发表于 2015-2-15 21:29:43 | 只看该作者
如果你有庞大而复杂的测试条件,尽量把它剪裁得越小越好。可能你会遇到这种情况,对于一个问题会出现不同内容回答,这时你需要通过实践来验证。
莫相离 该用户已被删除
7#
发表于 2015-3-4 15:29:28 | 只看该作者
通过一条缓慢的调制解调器线路,它也能操纵几千公里以外的远程系统。
透明 该用户已被删除
8#
发表于 2015-3-11 20:27:34 | 只看该作者
在系统检测不到与Linux兼容的显卡,那么此次安装就可能不支持图形化界面安装,而只能用文本模式安装等等。
若相依 该用户已被删除
9#
发表于 2015-3-19 14:50:09 | 只看该作者
尽量不要提问纯属是扯蛋.学习Linux特别是自己一个人初学入手的时候没人教很困难.当然如果可以的话平时多去买些Linux书...对学习Linux很有帮助.
小魔女 该用户已被删除
10#
发表于 2015-3-29 09:50:06 | 只看该作者
我感觉linux的学习,学习编程~!~!就去学习C语言编程!!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-4-29 21:33

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表