1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
| import cv2 #需要打开图片的路径,可以是绝对路径或者相对路径,路径中不能出现中文 #读取的彩色图片,是按照 GBR 的形式,数据格式在 0~255 #根据提示不止RGB,opencv中有多种色彩空间,包括 RGB、HSI、HSL、HSV、HSB、YCrCb、CIE XYZ、CIE Lab8种 ''' 使用函数cv2.imread(filepath,flags)读入一副图片 filepath:要读入图片的完整路径 flags:读入图片的标志 cv2.IMREAD_COLOR:默认参数,读入一副彩色图片,忽略alpha通道 cv2.IMREAD_GRAYSCALE:读入灰度图片 cv2.IMREAD_UNCHANGED:顾名思义,读入完整图片,包括alpha通道 ''' imag=cv2.imread('2021xihulunjian.png') ''' 用法: cv2.cvtColor(src, code[, dst[, dstCn]]) 参数: src:它是要更改其色彩空间的图像。 code:它是色彩空间转换代码。 dst:它是与src图像大小和深度相同的输出图像。它是一个可选参数。 dstCn:它是目标图像中的频道数。如果参数为0,则通道数自动从src和代码得出。它是一个可选参数。 ''' src=cv2.cvtColor(imag,cv2.COLOR_BGR2YCrCb) Y,Cr,Cb=cv2.split(src) ''' 使用函数cv2.imwrite(file,img,num)保存一个图像。 第一个参数是要保存的文件名,第二个参数是要保存的图像。 可选的第三个参数,它针对特定的格式:对于JPEG,其表示的是图像的质量, 用0 - 100的整数表示,默认95;对于png ,第三个参数表示的是压缩级别,默认为3 ''' cv2.imwrite('./Y.png',(Y%2)*255) cv2.imwrite('./Cr.png',(Cr%2)*255) cv2.imwrite('./Cb.png',(Cb%2)*255)
|