1.读取图片
import cv2img = cv2.imread('./test.jpg')
读取出来的图片是numpy.ndarray格式,值是0~255, img的形状是 (图片高度,图片宽度,图片通道数),打印值出来发现通道的顺序是BGR,而不是RGB。
2.改变图片大小
import cv2width = 100height = 200img = 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 cv2img = cv2.imread('./test.jpg')img_gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
转换后形状为 (图片高度,图片宽度)
其他一些转换:
import cv2img = 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 cv2width = 100height = 200img = cv2.imread('./test.jpg')img = cv2.resize(img,(width, height),interpolation=cv2.INTER_AREA)cv2.imwrite('test_changed.png', img)
如何自己实现cv2? 参考: