Python之cv2
1.读取图片
import cv2 img = cv2.imread('./test.jpg')
读取出来的图片是numpy.ndarray格式,值是0~255, img的形状是 (图片高度,图片宽度,图片通道数),打印值出来发现通道的顺序是BGR,而不是RGB。
2.改变图片大小
import cv2 width = 100 height = 200 img = cv2.imread('./test.jpg') img = cv2.resize(img,(width, height),interpolation=cv2.INTER_AREA) cv2.imshow('', img) cv2.waitKey(0) cv2.destroyAllWindows()
这个进行大小变换时,需要把指定的图片宽度放在前面,图片高度放在后面,和img的形状大小顺序不一致。
3.灰度转换
import cv2 img = cv2.imread('./test.jpg') img_gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
转换后形状为 (图片高度,图片宽度)
其他一些转换:
import cv2 img = cv2.imread('./test.jpg') img_gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) img_bgr = cv2.cvtColor(img_gray, cv2.COLOR_GRAY2BGR) img_bgr2 = cv2.cvtColor(img, cv2.COLOR_RGB2BGR) img_rgb = cv2.cvtColor(img_gray, cv2.COLOR_GRAY2RGB)
4.保存图片
import cv2 width = 100 height = 200 img = cv2.imread('./test.jpg') img = cv2.resize(img,(width, height),interpolation=cv2.INTER_AREA) cv2.imwrite('test_changed.png', img)
如何自己实现cv2? 参考:http://www.cnblogs.com/huangshiyu13/p/8475559.html
黄世宇/Shiyu Huang's Personal Page:https://huangshiyu13.github.io/