① ubuntu怎么设置opencv需要设置连接器中的库
我在网上查找安装方法时有两种方式,第一种方案在第三步测试的时候没有成功,不知道问题出在哪里,换用了第二种方式。如果直接用第二种方式安装不成功,可以试试进行第一种方式的第2步。
安装环境是Ubuntu 10.04,内核版本2.6.32.22。OpenCV版本为2.4.3。
第一种方式,参考org.cn/index.php/Debian%E4%B8%8B%E5%AE%89%E8%A3%85
1.更新下载更新软件包列表信息
$ apt-get update
2.查询OpenCV相关软件包
查询获得的内容和OpenCV软件包版本有关
复制代码
$ apt-cache search opencv
libcv-dev - development files for libcv
libcv4 - computer vision library
libcvaux-dev - development files for libcvaux
libcvaux4 - computer vision extension library
libhighgui-dev - development files for libhighgui
libhighgui4 - computer vision GUI library
opencv-doc - OpenCV documentation and examples
python-opencv - Python bindings for the computer vision library
harpia - Image Processing/Computer Vision Automatic Prgm. Tool
复制代码
3.测试
进入软件目录/sample/cpp,执行以下命令
g++ `pkg-config opencv --libs --cflags opencv` drawing.cpp -o drawing
成功编译并能执行表示安装成功。
第二种方式,OpenCV 2.4.3同样适用,参考自http://www.linuxidc.com/Linux/2012-12/75641.htm
1.安装必要的依赖包
这一步我略去了,因为原文中提到的ffmepg1我并不需要安装,并且我是从第一种方式转过来的,就没有安装这些包,不过还是列在下面:
sudo apt-get install build-essential libgtk2.0-dev l www.hbbz08.com ibjpeg62-dev libtiff4-dev libjasper-dev libopenexr-dev cmake python-dev python-numpy libtbb-dev libeigen2-dev yasm libfaac-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev
2.安装OpenCV
(1)下载OpenCV 2.4.3 http://sourceforge.net/projects/opencvlibrary/
(2) tar -xvf OpenCV-2.4.3.tar.bz2
(3)将其复制到 “ home/你的计算机名/”下;
(4)cd OpenCV-2.4.3
(5)mkdir release
(6)cd release
(7)
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_TBB=ON -D WITH_V4L=OFF -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON ..
如果没有cmake,apt-get install就行
(8) make
(9)sudo make install
3.添加库的路径
(1)sudo gedit /etc/ld.so.conf.d/opencv.conf
文件可能需要创建,添加下面内容并保存
/usr/local/lib
(2)sudo ldconfig
(3) sudo gedit /etc/environment
添加下面内容
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
这时,再回到OpenCV-2.4.3/sample/cpp下时,用第一种方式的测试方法,drawing.cpp文件就能正确编译,而且也可以通过生成的文件看到效果了。
2013.1.6更新:QT调用openCV库(ixunjishu/qianrushipeixun/959.html)
QT的安装过程就略去了,注意需要QT设计器和QTcreator,前者我是下源码编译的,后者用软件中心装的。
配置QT, sudo gedit /usr/share/qt4/mkspecs/default/qmake.conf
在文件内添加了下面两句:
QMAKE_INCDIR = /usr/include/opencv
QMAKE_LIBS = -lcvaux -lcv -lcxcore -lhighgui -lml
实例程序,创建一个QT4 Console Application,代码如下:
复制代码
#include <cv.h>
#include <highgui.h>
int main()
{
IplImage *img = 0;
img = cvLoadImage("Lena.bmp",-1);//Lena.bmp在所建工程的目录下
cvNamedWindow("lena", 1);
cvShowImage("lena", img);
cvWaitKey(0);
return 0;
}
复制代码
关键的一步,在工程的.pro文件添加下面的内容:
复制代码
INCLUDEPATH += /usr/include/opencv
LIBS += /usr/lib/libcv.so \
/usr/lib/libcvaux.so \
/usr/lib/libcxcore.so \
/usr/lib/libhighgui.so \
/usr/lib/libml.so
复制代码
这时就能编译运行了。
② linux下面的opencv怎么添加新模块
一、必须要安装好cmake,这里可以通过指令直接链接到linux下的一个库里面有cmake版本
1.安装cmake的安装包
sudo apt-get install cmake
2.安装cmake相关的依赖库
sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev
libavformat-dev libjpeg.dev libtiff4.dev
③ OpenCV中机器学习模块的用法
其基本步骤如下:
1.主机代码执行;
2.传输数据到GPU;
3.确定grid,block大小;
4.调用内核函数,GPU运行程序;
5.传输结果到CPU;
6.继续主机代码执行。
注意的问题:cu,cpp文件的组织。
内核函数和其wrapper函数置于cu文件中。
在cpp文件声明wrapper函数,并调用wrapper函数。
wrapper函数的声明定义需加extern "C"。
OpenCV中GPU模块的使用。
④ 如何编译 opencv动态链接库
在一个项目中需要用到OpenCV,刚开始使用了OpenCV的动态链接库,这样,在移动可执行程序时还必须将OpenCV动态支持库一起搬移,很是麻烦。所以,最终选择OpenCV静态链接库,这样程序移植运行就方便了很多。
需要编译成静态库以便于应用程序链接。
网上有的教程中写的在VC++2010下安装OpenCV2.1时用到了TBB库,而我在编译链接自己的程序后需要用到TBB.dll。本人设计的目的就是要做一个独立的界面程序,不需要携带其他第三方库。经过一段时间的努力最终找到了编译OpenCV2.1静态库的方法。
需要的工具环境及文件:
-------------------------------------------------------------------------------------------------------------
1、Windows XP
2、VC++2010(VS2010)
3、为编译OpenCV源码包(我下载的有:OpenCV2.1.0,OpenCV2.3.0及OpenCV2.4.4)
4、CMake2.8.9
说明:OpenCV各版本官方下载地址:opencv.org/
cmake-2.8.9下载地址:ishare.iask.sina.com.cn/download/explain.php?fileid=35025936
--------------------------------------------------------------------------------------------------------------
以OpenCV2.1.0编译静态库为例
CMake配置
-------------------------------------------------------------------------------------------------------------
打开CMake并设置:
Where is the rource code :OpenCV源代码所在的文件夹
Where to build the binaries:CMake配置好得到的文件放在位置(我的:E:\OpenCV2.1.0-prj)
然后点击configure,选择"Visual Studio 10"。然后确定。
等待configure完成,会出现很多红色的选项,因为主要是生成OpenCV的库,所以只需保留某些选项:
去掉BUILD_NEW_PYTHON_SUPPORT,BUILD_SHARED_LIBS, BUILD_TESTS
勾选OPENCV_BUILD_3RDPARTY_LIBS, WITH_TBB,WITH_JASPER, WITH_JPEG,
WITH_PNG, WITH_TIFF选项,
然后再点击configure,如下图:
提示TBB_INCLUDE_DIR找不到,因为我们不需要TBB库,所以忽略,再一次点击configure。
等待配置完成,最后点击generate,完成后关闭CMake。
-------------------------------------------------------------------------------------------------------------
VC++2010编译静态库
-------------------------------------------------------------------------------------------------------------
进入E:\OpenCV2.1.0-prj目录,使用VC++2010打开.sln文件,打开项目管理器
这时候会看到
解决方案中有很多小项目存在。
注:这时我们右键任意点击一个子项目(如cv),选择属性,可以在配置属性下的常规项目中看到,配置类型为
静态库(lib)。
按住ctrl键,选中除过ALL_BUILD, INSTALL, ZERO_CHECK,
uninstall四个项目的其他所有项目,在菜单中选择项目->属性,打开配置属性->c/c++->代码生成选项,在右侧窗口中的运行时库中选择多线程调试(/MTd),然后确认。
说明:这里有四个选项(/MT, /MTd, /MD,
/MDd),前两个一组,为静态链接运行时库,运行时不需要运行时库的支持,代码直接插入到程序中去;后两个一组,为动态链接运行时库,运行时需要msvcr90.dll或msvcp90.dll支持。
我们先编译Debug版的OpenCV静态库,在解决方案"opencv"(22个项目)上单击右键,选择重新生成解决方案,此时便开始编译OpenCV库了,等编译结束会提示完成16个,失败4个:
这四个项目生成的是exe程序,不需要管他们。到这步我们已经生成了Debug版本的静态库!
然后我们用相同的方式生成Release版的库,在之前的基础上只需要将选项选择多线程/MT,再进行编译。编译时警告很多,直接忽略!
注意:/MT即是Release版本,/MTD即是Debug版本。
最终我们需要的静态库就存在:E:\OpenCV2.1.0-prj/lib 和 E:\OpenCV2.1.0-prj/3rdparty/lib
两个目录,我们编译好的库就在这两个文件夹下。分别
将E:\OpenCV2.1.0-prj/3rdparty/lib中Debug
下面的所有文件Copy到E:\OpenCV2.1.0-prj/lib中的Debug 文件中。
将E:\OpenCV2.1.0-prj/3rdparty/lib中Release下面的所有文件Copy到E:\OpenCV2.1.0-prj/lib中的Release文件中。
⑤ opencv和opencv4android的区别
方法/步骤选图,两张图的重叠区域不能太小,我个人认为最少不少于15%,这样才能保证有足够的角点匹配。角点检测。这一步OpenCV提供了很多种方法,譬如Harris角点检测,而监测出的角点用CvSeq存储,这是一个双向链表。角点提纯。在提纯的时候,需要使用RANSAC提纯。OpenCV自带了一个函数,FindHomography,不但可以提纯,还可以计算出3x3的转换矩阵。这个转换矩阵十分重要。角点匹配。经过提纯后的角点,则需要匹配。图像变换。这一步我曾经尝试过很多法,最后选择了FindHomography输出的变换矩阵,这是一个透视变换矩阵。经过这个透视变换后的图像,可以直接拿来做拼接。图象拼接。完成上面步骤之后,其实这一步很容易。球面变换。这一步需要对坐标系进行转换,从平面坐标到球面坐标。
⑥ 求OpenCV的傻瓜教程
OPENCV教程网络网盘免费资源在线学习
链接: https://pan..com/s/1Ecei7hikkS8HHIGTGXtlkQ
OPENCV教程 附赠:Opencv书籍 《OpenCV3编程入门》书本配套源代码 08
人工智能之OpenCV人脸识别案例实战视频教程 07
OpenCV3.3深度神经网络(DNN)模块-应用视频教程 06
OpenCV视频分析与对象跟踪实战教程 05
OpenCV图像分割实战视频教程 04
OpenCV级联分类器训练与使用实战教程课程 03
OpenCV图像处理-小案例实战 02
OpenCV特征提取与检测实战视频课程 01
OpenCV图像处理视频课程 OpenCVjc-jcp.rar OpenCV3编程入门电子书及配套源码.zip
课程配套源代码.zip
课程配套PPT.zip
⑦ opencv中的Dnn模块怎么用Java调用
1.检查环境变量设定。
比如:所编辑的Dll在目录“D:/cppProjects/nativecode/release”内,将这个路径复制添加到电脑的环境变量中的path变量内即可。
2.检查项目属性设定。
右击项目名|选择属性properties|在左边列表内选择“Java Build Path”|在右边选项卡用选择“source”|点开项目名前的“+”号,选择“Native library location”,“Edit”选择上面“D:/cppProjects/nativecode/release”路径。(当然如果将dll拷贝到workspace下也可以用相对路径。也可右击“src”设定其properties内Native Library项。)