upyterLab写一个测量一张jpg格式的彩色图像的压缩率的代码
时间: 2024-02-22 19:58:01 浏览: 124
好的,以下是测量一张JPG格式彩色图像压缩率的代码:
```python
import os
import numpy as np
import cv2
# 读入彩色图像
img = cv2.imread('image.jpg')
# 获取图像的尺寸信息
h, w, _ = img.shape
# 获取图像的数据大小(单位:字节)
size = os.path.getsize('image.jpg')
# 计算图像的压缩率(压缩后的大小 / 原始大小)
ratio = size / (h * w * 3)
# 输出结果
print('image.jpg 的压缩率为:', ratio)
```
需要注意的是,上述代码中计算压缩率仅仅是计算了压缩后的文件大小与原始图像数据大小的比值,并没有进行实际的压缩操作。如果需要进行压缩,可以使用OpenCV提供的imwrite函数,如下所示:
```python
# 压缩图像并保存
cv2.imwrite('compressed_image.jpg', img, [cv2.IMWRITE_JPEG_QUALITY, 50])
```
在上述代码中,[cv2.IMWRITE_JPEG_QUALITY, 50]表示使用JPEG格式进行压缩,并设置压缩质量为50。可以根据实际需求调整压缩质量参数。
阅读全文