用opencv压缩图像
时间: 2023-05-28 14:05:35 浏览: 89
在使用OpenCV压缩图像之前,我们需要先安装OpenCV库并导入相关模块。以下是一个简单的Python程序,演示如何使用OpenCV压缩图像:
```python
import cv2
# 读取图像
img = cv2.imread('test.jpg')
# 显示原始图像
cv2.imshow('Original', img)
# 压缩图像
compressed_img = cv2.imencode('.jpg', img, [cv2.IMWRITE_JPEG_QUALITY, 50])[1]
# 解压缩图像
decompressed_img = cv2.imdecode(compressed_img, cv2.IMREAD_COLOR)
# 显示解压缩后的图像
cv2.imshow('Decompressed', decompressed_img)
# 等待按键
cv2.waitKey(0)
# 关闭窗口
cv2.destroyAllWindows()
```
在上面的代码中,我们首先读取一张图像并显示它。然后,我们使用`cv2.imencode()`函数将图像压缩成JPEG格式,并指定压缩质量为50。注意,`cv2.imencode()`函数返回一个元组,其中第一个元素是一个布尔值,表示是否成功将图像编码为指定格式,第二个元素是一个字节数组,即压缩后的图像。
接下来,我们使用`cv2.imdecode()`函数将压缩后的图像解码成OpenCV可识别的格式,并将其显示出来。最后,我们等待按键,然后关闭窗口。
需要注意的是,压缩质量越低,压缩后的图像文件越小,但图像质量也会越低。因此,在实际应用中,我们需要根据实际需求选择合适的压缩质量。
阅读全文