opencv中的有关函数cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)可以直接完成灰度化操作。
import cv2
import numpy as np
fn = "baboon.jpg"
if __name__ == '__main__':
print 'loading %s ...' % fn
img = cv2.imread(fn)
sp = img.shape
print sp
sz1 = sp[0]
sz2 = sp[1]
print 'width: %d \nheight: %d' %(sz2,sz1)
cv2.namedWindow('img')
cv2.imshow('img',img)
myimg2 = img.copy()
cv2.namedWindow('myimg2')
cv2.imshow('myimg2',myimg2)
#transform into gray level photo
myimg1 = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
cv2.namedWindow('myimg1')
cv2.imshow('myimg1',myimg1)
cv2.waitKey()
cv2.destroyAllWindows()