2013-07-31 71 views
0

我的Python 3.3和2.7安装在我的电脑上的OpenCV的Python 3.3

对于Python 3.3,我安装了很多图书馆就像numpy的,SciPy的等

因为我也想用OpenCV的,只支持Python 2.7到目前为止,我在Python 2.7下安装了opencv。

嘿,问题来了,如果我想在同一个脚本中导入numpy以及cv怎么办?

+0

代码发生了什么事时,你试过吗?你试过了吗? –

回答

1

您必须安装所有您想与OpenCV for Python 2.7一起使用的库。这不是什么大问题,你可以用一行中的pip来完成,或者选择许多预先建立的科学Python软件包中的一个。

+0

python 3.3的支持已经完成了吗?没有找到任何关于... – tim

0

“嘿,问题来了,如果我想在同一个脚本中导入numpy和cv,该怎么办?”

就python 2.7而言,numpy和cv可以在同一个脚本中导入。实际上,opencv接受numpy数组。请参考下面

import os 
import numpy as np 
import cv2 


def processImage(dirName, imgName): 
    imgFilepath = os.path.join(dirName, imgName) 
    img = cv2.imread(imgFilepath) 
    print imgName, img.size 
    #convert img to a numpy array 
    numpyImg = np.asarray(img) 
    #use as inout to cv2 call 
    #this converts a color imageto a grayscale image 
    grayscaleImg = cv2.cvtColor(numpyImg, cv2.COLOR_BGR2GRAY) 
    (fname, ext) = os.path.splitext(imgName) 
    outImgName = fname + '_gray' + ext 
    #write grayscalimage 
    cv2.imwrite(os.path.join(dirName, outImgName), grayscaleImg) 
    pass 

def main(): 
    #aphid1_small.jpg is a rgb image 
    imgName = "aphid1_small.jpg" 
    dirName = "data" 
    processImage(dirName, imgName) 

if __name__ == "__main__": 
    main() 
    pass