linuxopencv(linuxopencv安装)
本篇文章给大家谈谈linuxopencv,以及linuxopencv安装对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、linux opencv imread失败
- 2、如何做到linux下opencv程序的静态编译
- 3、linuxopencv生成的静态或动态库怎样在调用的时候不用安装openvcv环境
- 4、linux怎么切换opencv版本
- 5、如何将opencv库移植到linux中
- 6、Linux下怎么配置python和opencv
linux opencv imread失败
opencv中的imread函数用法为:
Mat imread(const string filename, intflags=1 );
其中第一个参数是载入图片名,第二个参数是int类型的flags,为载入标识,它指定一个加载图像的颜色类型。可以看到它自带缺省值1.在higui_c.h中发现这个枚举颤扮的定义是这样的:
enum
{
/* 8bit, color or not */
CV_LOAD_IMAGE_UNCHANGED =-1,
/* 8bit, gray */
CV_LOAD_IMAGE_GRAYSCALE =0,
/* ?, color */
CV_LOAD_IMAGE_COLOR =1,
/* any depth, ? */
CV_LOAD_IMAGE_ANYDEPTH =2,
/* ?, any color */
CV_LOAD_IMAGE_ANYCOLOR =4
};
其中:
flags 0返回一个败铅3通道的彩色图像。
flags =0返回灰度图像。
flags 0返回包含Alpha通道的加载的图像。
你用函数的时候没有设置第二个参数茄枯灶,就会默认值为1。尽管你读入的是灰度图,还是自动转化成三通道图像。可以将第二个参数置为0得到灰度图像
如何做到linux下opencv程序的静态编译
运行了楼上给的命令之后,结果是这晌宽样的:
# g++ `pkg-config opencv --libs --cflags opencv` facedect.cpp -o facedect -static
/tmp/cc8XhRf6.o: In function `find_face(_IplImage*)':
facedect.cpp:(.text+0x51): undefined reference to `cvCreateImage'
facedect.cpp:(.text+0xc0): undefined reference to `cvCreateImage'则谨姿
facedect.cpp:(.text+0xdd): undefined reference to `cvCvtColor'
facedect.cpp:(.text+0xf7): undefined reference to `cvResize'孙绝
facedect.cpp:(.text+0x109): undefined reference to `cvEqualizeHist'
[img]linuxopencv生成的静态或动态库怎样在调用的时候不用安装openvcv环境
使用cmake编译opencv静态链接库(静态库),配置环境变量(动态库和静态库一样),复制dll文件。
将这三个dll分别复制到C:\Windows\System32和C:\Windows\SysWOW64目录下。
配置包含目录升悄运:视图-其它窗口-属性管理器。运李配置库目录然吵梁后配置附加依赖项。
linux怎么切换opencv版本
1.注意事项:安装目录!
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local/opencv3.1.0 ..1
CMAKE_INSTALL_PREFIX之后穗神的路径就是opencv的安装目猜知亏录了。之前的opencv2.4.13安装到了根目录,即/usr/local/里,所以之后的opencv3.1.0安装到了/usr/local/opencv3.1.0/中这里,两个版本opencv目录一定要分开,不能安装到同一个路径下,否则会出现问题!
2.切换方式
切换方式其实比较简单,把环境变量的路径改一下就可以了。
a)
sudo gedit /etc/ld.so.conf.d/opencv.conf1
把opencv的lib路径添加进去:
opencv3.1.0:
/usr/local/opencv-3.1.0/lib1
opencv2.4.13:
/usr/local/lib1
b)
sudo ldconfig1
c)
sudo gedit /etc/profile1
在最后加入PATH路径:
opencv3.1.0:
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/opencv-3.1.0/lib/pkgconfig
export PKG_CONFIG_PATH12
opencv2.4.13:
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH12
d)
sudo gedit /etc/bash.bashrc 1
在最后添加PATH路径:
opencv3.1.0:
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/opencv-3.1.0/lib/pkgconfig1
opencv2.4.13:
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig1
3.查看opencv版本:
pkg-config --modversion opencv
pkg-config --cflags opencv
pkg-config --libs opencv123
实际使用中发现还是在寻找opencv2.4.13.
如果编译使用的是cmake,打开CMakeLists.txt,添加:
set(OPENCV_DIR “/home/ubuntu/opencv-3.1.0/build”)
如果上述方法还没有作用,那么就猛乎只好卸载不需要的opencv版本了:
cd opencv-2.4.13/release
sudo make uninstall
cd ..
sudo rm -r release
sudo rm -r /usr/local/include/opencv2 /usr/local/include/opencv /usr/include/opencv /usr/include/opencv2 /usr/local/share/opencv /usr/local/sh
关于更多Linux的学习,请查阅书籍《linux就该这么学》。
如何将opencv库移植到linux中
编译环境fedora9.0
xvid版本:xvidcore-1.3.2.tar.gz
x264版本:x264-snapshot-20110612-2245.tar.bz2
yasm版本:yasm-0.7.2.tar.gz
ffmpeg版本:ffmpeg-0.5.3.tar.bz2
OpenCV版本:opencv-2.0.0
上面这些文件可以到处进行下载!
首先安装x86平台下opencv,网上很答雀多都只有arm上opencv的移植,但对于开发阶段,都是余高在pc机的Linux环境下开发测试的,所以这里清毁早先介绍一下x86平台下opencv的移植。
Linux下怎么配置python和opencv
以下说明在Linux下Python和OpenCV结合安装的过程,Python要使用OpenCV模块,则必须导入OpenCV提供的包,所以要提供Python支持,首先在安装OpenCV前安装必要的组件,一般列表如下:
1、gcc g++一般系统自带
2、cmake 编译OpenCV时使用,需要手动安装
3、pkg-config命令,一般系统自带,如果缺少,使用 yum -y install pkg-config 安装
4、Python 2.x,系统自带
5、NumPy 一个用于大型矩阵处理的库,这个必须!如果不安装则后面OpenCV安装后也编译不出来Python的模块,其他库可以后来安装
最后一步是安装OpenCV
在保证前4项没问题的情况下,开始安装NumPy模块,官网下载地址为:
进入SourceForge下载,地址为:
直接点击Download即可下载,下载成功之后上传到Linux服务器,安装过程很简单,解压后直接安装即可(之前要确保python-devel已经安装)
unzip numpy-1.11.1.zip
cd numpy-1.11.1/
python setup.py install
另外numpy还可以去python官网下载:
安装成功之后接下来进一步安装OpenCV,官方网站为:进入后点击DOWNLOADS来到下载界面:,这里下载2.4.13的版本
下载完之后上传到Linux,执行接下来的安装:
unzip opencv-2.4.13.zip
cd opencv-2.4.13/
cmake -D WITH_GTK_2_X=ON -D CMAKE_INSTALL_PREFIX=/usr/local .
make # make -j4表示开4个线程来进行编译
make install
安装过程时间可能会有点长10~30分钟左右,编译完成之后OpenCV就安装到了指定的/usr/local下面的一些目录中,库文件就安装到了/usr/local/lib下,Python的模块安装位置是:/usr/local/lib/python2.7/site-packages,执行 ls /usr/local/lib/python2.7/site-packages/ 可以看到两个文件,一个是cv2.so一个是cv.py
这两个文件在刚才opencv-2.4.13编译的目录下面lib/下也存在着两个python模块文件,但是不幸的是现在并不能直接使用,原因是我们操作系统python依赖包的位置是/usr/lib/python2.7下,所以刚才如果编译到/usr下是直接可以用的,不过这个也不重要,只要我们将这两个文件复制到正确的目录中此下,那么就能正常使用OpenCV的功能了,执行: cp /usr/local/lib/python2.7/site-packages/cv* /usr/lib/python2.7/site-packages/ 复制过去之后进入python交互式界面执行 import cv2 没有报错则安装衡培备成功
可以写一个测试的小案例,在服务器上有一张图咐毁片是test.jpg现在简单的使用cv2模块解析成图像矩阵,然后再写入磁盘文件中,代码如下:
#!/usr/bin/python
# -*- coding:utf-8 -*-
import cv2
image = cv2.imread("test.jpg")
print image
cv2.imwrite("test1.jpg",image)
这里将原有的test.jpg生成test1.jpg,
执行 python cvtest.py 执行完后会发现输出好多矩阵变量,并且生成了test1.jpg文件
生成的文件有可能比原文件大也有可能小,具体根据图像来决定,现在查看一下图片内容,和之前是一样的
关于linuxopencv和linuxopencv安装的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。