我的电脑上安装了 Python 3.3 和 2.7
对于 Python 3.3,我安装了许多库,如 numpy、scipy 等
由于我也想用opencv,目前只支持python 2.7,所以我在python 2.7下安装了opencv。
嘿,问题来了,如果我想在同一个脚本中导入 numpy 和 cv 怎么办?
您必须安装所有要与 OpenCV for Python 2.7 一起使用的库。这不是什么大问题,您可以在一行中使用 pip 来完成,或者选择许多预构建的科学 Python 包之一。
“嘿,问题来了,如果我想在同一个脚本中导入 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