一、读取图片,对图片读取,裁剪等
#如果想要批量处理,可以利用os.listdir()遍历文件夹,
1、读取图片
cv2.imread()imread(img_path,flag) 读取图片,返回图片对象img_path: 图片的路径,即使路径错误也不会报错,但打印返回的图片对象为Noneflag:cv2.IMREAD_COLOR,读取彩色图片,图片透明性会被忽略,为默认参数,也可以传入1cv2.IMREAD_GRAYSCALE,按灰度模式读取图像,也可以传入0cv2.IMREAD_UNCHANGED,读取图像,包括其alpha通道,也可以传入-1例:import cv2img = cv2.imread('1.jpg') #img = cv2.imread('1.jpg',cv2.IMREAD_GRAYSCALE)
2、显示图片
cv2.imshow()imshow(window_name,img):显示图片,窗口自适应图片大小window_name: 指定窗口的名字img:显示的图片对象可以指定多个窗口名称,显示多个图片例:cv2.imshow('image',img)cv2.waitKey(0) #等待输入任何按键,#当用户输入任何一个按键后即调用destroyAllWindows()关闭所有图像窗口cv2.destroyAllWindows() # 摧毁窗口
3、写入保存图片
cv2.imwrite()imwrite(img_path_name,img,name)img_path_name:保存的文件名img:文件对象num:可选的第三个参数,它针对特定的格式:对于JPEG,其表示的是图像的质量,用0 - 100的整数表示,默认95;对于png ,第三个参数表示的是压缩级别。默认为3.例:cv2.imwrite(r"D:\picture\111.jpg",img)cv2.imwrite('111.png',img, [int( cv2.IMWRITE_JPEG_QUALITY), 95])cv2.imwrite('111.png',img, [int(cv2.IMWRITE_PNG_COMPRESSION), 9])#cv2.IMWRITE_JPEG_QUALITY类型为 long ,必须转换成 int#cv2.IMWRITE_PNG_COMPRESSION, 从0到9 压缩级别越高图像越小
参考:(一)OpenCV-Python学习—基础知识
模块cv2的用法