python和opencv配置时,import cv出错,提示没有cv模块,肿么办

Python025

python和opencv配置时,import cv出错,提示没有cv模块,肿么办,第1张

怀疑你是在linux下做的。有时候安装会出错。有几个目录一个是dist-packages一个是site-packages,如果你发现只有一目录里有cv,或者是xxx.egg那么很可能你需要复制到另一个目录里。

需要重新编译opencv

的,最后getCudaEnabledDeviceCount()这个函数返回值大于零才行

//

first.cpp

:

定义控制台应用程序的入口点。

//

#include

"stdafx.h"

#include

#include

"opencv2/opencv.hpp"

#include

"opencv2/gpu/gpu.hpp"

#pragma

co..

以下说明在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模块,官网下载地址为:http://www.scipy.org/scipylib/download.html

进入SourceForge下载,地址为:https://sourceforge.net/projects/numpy/

直接点击Download即可下载,下载成功之后上传到Linux服务器,安装过程很简单,解压后直接安装即可(之前要确保python-devel已经安装)

unzip numpy-1.11.1.zip

cd numpy-1.11.1/

python setup.py install

另外numpy还可以去python官网下载:https://pypi.python.org/pypi/numpy

安装成功之后接下来进一步安装OpenCV,官方网站为:http://opencv.org/进入后点击DOWNLOADS来到下载界面:http://opencv.org/downloads.html,这里下载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文件

生成的文件有可能比原文件大也有可能小,具体根据图像来决定,现在查看一下图片内容,和之前是一样的