python OpenCV 读取图片显示和复制 (二)
来源:互联网 发布:宝宝起名取名软件 编辑:程序博客网 时间:2024/05/16 07:32
读取和显示图像
#读取和显示图像def showimg(imagePath): img = cv2.imread(imagePath) #读取本地图片,目前OpevCV支持bmp、jpg、png、tiff cv2.namedWindow("Image") #创建一个窗口用来显示图片 cv2.imshow("Image", img) #显示图片 cv2.waitKey (0) #等待输入,这里主要让图片持续显示。 cv2.destroyAllWindows() #释放窗口if __name__ == '__main__': imagePath = 'mini.jpg' showimg(imagePath)
创建图像
新的OpenCV 中没有CreateImage 接口,即没有cv2.CreateImage 这个函数。如果要创建图像,需要使用Numpy的函数。
所以图像使用Numpy数组的属性来表示图像的尺寸和通道信息。如果输出img.shape 得到(500,375,3),3 -- 表示这是个RGB图像。
emptyImage = np.zeros(img.shape,np.uint8) #根据图像的大小来创建一个图像对象
复制图像
emptyImage2 = img.copy()
emptyImage3=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) #emptyImage3[...]=0emptyImage3[...]=0是将其转成空白的黑色图像。
保存图像
cv2.imwrite("D:\test.jpg",img)
第一个参数是保存文件名和路径,第二个是图像矩阵。imwrite() 有个可选的第三个参数
cv2.imwrite("D:\test.jpg",img,[int(cv2.IMWRITE_JPEG_QUALITY),5])
5 -- 是第三个参数,它针对特定的格式:对于JPEG,其表示的是图像的质量,用0 - 100的整数表示,默认95
注意: cv2.IMWRITE_JPEG_QUALITY类型为 long ,必须转换成 int.,对于png ,第三个参数表示的是压缩级别。
cv2.IMWRITE_PNG_COMPRESSION, 从0到9 压缩级别越高图像越小。默认为3.
cv2.imwrite("./cat.png", img, [int(cv2.IMWRITE_PNG_COMPRESSION), 0]) cv2.imwrite("./cat2.png", img, [int(cv2.IMWRITE_PNG_COMPRESSION), 9])
测试完整代码
import cv2 import numpy as np img = cv2.imread("./cat.jpg") emptyImage = np.zeros(img.shape, np.uint8) emptyImage2 = img.copy() emptyImage3=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) #emptyImage3[...]=0 cv2.imshow("EmptyImage", emptyImage) cv2.imshow("Image", img) cv2.imshow("EmptyImage2", emptyImage2) cv2.imshow("EmptyImage3", emptyImage3) cv2.imwrite("./cat2.jpg", img, [int(cv2.IMWRITE_JPEG_QUALITY), 5]) cv2.imwrite("./cat3.jpg", img, [int(cv2.IMWRITE_JPEG_QUALITY), 100]) cv2.imwrite("./cat.png", img, [int(cv2.IMWRITE_PNG_COMPRESSION), 0]) cv2.imwrite("./cat2.png", img, [int(cv2.IMWRITE_PNG_COMPRESSION), 9]) cv2.waitKey (0) cv2.destroyAllWindows()
参考和转载地址:
http://blog.csdn.net/sunny2038/article/details/9057415
0 0
- python OpenCV 读取图片显示和复制 (二)
- OpenCV读取和显示图片
- Opencv-Python :图片读取、保存、显示
- OpenCV Mat读取和显示图片
- opencv读取、显示图片
- Java开发Opencv之(二)读取与显示图片
- OpenCV读取图片并显示和保存图片
- 使用Opencv的python接口简单读取并显示图片
- OpenCV读取序列图片(二)
- opencv 读取图片(C/C++/python)
- opencv学习笔记(1)——读取路径显示图片和保存jpg图片
- learn opencv-使用OpenCV(C ++ / Python)读取,写入和显示视频
- opencv读取图片,灰化显示
- Opencv读取与显示图片
- opencv读取、显示、保存图片
- opencv学习心得二----读取图片
- 【第一篇:C++与opencv】图片的读取和显示
- OpenCV读取和显示图片及相关函数分析
- I/O多路复用之select总结
- Linux下which、whereis、locate、find 命令查找文件
- C++下的泛型编程设计模式
- 使用 jsoup 对 HTML 文档进行解析和操作
- LeetCode | Divide Two Integers
- python OpenCV 读取图片显示和复制 (二)
- 【STM32F030探索套件】序列之三 Systick
- OutOfMemoryError 应该catch吗?
- 网页设计:第一眼的魅力
- Ubuntu安装jdk
- 一个最小物联网系统设计方案及源码——Android客户端
- C# webBrowser 自动表单提交问题
- ADM CPU安装mac os x系统
- Ajax工作原理