写一个在jupyter notebooks上测量彩色图像压缩率的代码
时间: 2024-02-17 22:00:37 浏览: 75
好的,以下是一个简单的在 Jupyter Notebook 上测量彩色图像压缩率的代码。这个代码使用了 Python 的 Pillow 库进行图像的读取和压缩,以及 NumPy 库进行数组计算。
```python
from PIL import Image
import numpy as np
import io
# 读取原始图像
img = Image.open('test.jpg')
# 将图像转换为 NumPy 数组
img_arr = np.array(img)
# 压缩图像
# 这里使用 JPEG 压缩,压缩质量为 70%
compressed_img = io.BytesIO()
img.save(compressed_img, format='JPEG', quality=70)
# 计算压缩率
original_size = img_arr.nbytes
compressed_size = compressed_img.tell()
compression_ratio = compressed_size / original_size
# 输出压缩率
print(f"Compression ratio: {compression_ratio:.2f}")
```
在这个示例中,我们首先使用 Pillow 库读取了一张名为 `test.jpg` 的彩色图像。然后,我们将图像转换为 NumPy 数组,使用 JPEG 压缩算法对图像进行了压缩,并计算了压缩率。最后,我们输出了压缩率的结果。
请注意,这个示例中压缩质量设置为 70%,这个值可以根据需要进行调整。另外,如果要测量多张图像的压缩率,可以将这个代码放入循环中,对每张图像进行压缩和压缩率计算。
阅读全文