测试结果
不改变图片幅面的情况下,cv2 jpg压缩算法:
- 默认quality是95
- =50时,相应的图片尺寸是95的1/3 可用。
- =25时,图片尺寸是1/4,仍可用。
2024/07/31 16:31 85,305 out_10.jpg
2024/07/31 16:31 85,305 out_10.jpg
2024/07/31 16:31 89,277 out_11.jpg
2024/07/31 16:31 93,074 out_12.jpg
2024/07/31 16:31 97,043 out_13.jpg
2024/07/31 16:31 100,559 out_14.jpg
2024/07/31 16:31 104,193 out_15.jpg
2024/07/31 16:31 107,669 out_16.jpg
2024/07/31 16:31 111,051 out_17.jpg
2024/07/31 16:31 114,441 out_18.jpg
2024/07/31 16:31 117,190 out_19.jpg
2024/07/31 16:31 120,107 out_20.jpg
2024/07/31 16:31 123,384 out_21.jpg
2024/07/31 16:31 126,286 out_22.jpg
2024/07/31 16:31 129,137 out_23.jpg
2024/07/31 16:31 131,953 out_24.jpg
2024/07/31 16:31 134,552 out_25.jpg
2024/07/31 16:31 137,383 out_26.jpg
2024/07/31 16:31 140,045 out_27.jpg
2024/07/31 16:31 142,935 out_28.jpg
2024/07/31 16:31 145,021 out_29.jpg
2024/07/31 16:31 147,592 out_30.jpg
2024/07/31 16:31 149,873 out_31.jpg
2024/07/31 16:31 152,265 out_32.jpg
2024/07/31 16:31 155,054 out_33.jpg
2024/07/31 16:31 156,673 out_34.jpg
2024/07/31 16:31 159,708 out_35.jpg
2024/07/31 16:31 162,213 out_36.jpg
2024/07/31 16:31 163,641 out_37.jpg
2024/07/31 16:31 166,621 out_38.jpg
2024/07/31 16:31 168,715 out_39.jpg
2024/07/31 16:31 169,844 out_40.jpg
2024/07/31 16:31 173,059 out_41.jpg
2024/07/31 16:31 174,774 out_42.jpg
2024/07/31 16:31 176,440 out_43.jpg
2024/07/31 16:31 179,288 out_44.jpg
2024/07/31 16:31 180,898 out_45.jpg
2024/07/31 16:31 183,595 out_46.jpg
2024/07/31 16:31 184,754 out_47.jpg
2024/07/31 16:31 187,023 out_48.jpg
2024/07/31 16:31 190,037 out_49.jpg
2024/07/31 16:31 190,683 out_50.jpg
2024/07/31 16:31 191,343 out_51.jpg
2024/07/31 16:31 194,728 out_52.jpg
2024/07/31 16:31 197,343 out_53.jpg
2024/07/31 16:31 198,698 out_54.jpg
2024/07/31 16:31 200,682 out_55.jpg
2024/07/31 16:31 203,065 out_56.jpg
2024/07/31 16:31 205,944 out_57.jpg
2024/07/31 16:31 208,898 out_58.jpg
2024/07/31 16:31 210,569 out_59.jpg
2024/07/31 16:31 212,643 out_60.jpg
2024/07/31 16:31 216,169 out_61.jpg
2024/07/31 16:31 218,227 out_62.jpg
2024/07/31 16:31 221,688 out_63.jpg
2024/07/31 16:31 223,692 out_64.jpg
2024/07/31 16:31 227,671 out_65.jpg
2024/07/31 16:31 230,446 out_66.jpg
2024/07/31 16:31 233,466 out_67.jpg
2024/07/31 16:31 238,036 out_68.jpg
2024/07/31 16:31 241,665 out_69.jpg
2024/07/31 16:31 246,273 out_70.jpg
2024/07/31 16:31 250,437 out_71.jpg
2024/07/31 16:31 253,441 out_72.jpg
2024/07/31 16:31 259,019 out_73.jpg
2024/07/31 16:31 265,796 out_74.jpg
2024/07/31 16:31 267,332 out_75.jpg
2024/07/31 16:31 272,575 out_76.jpg
2024/07/31 16:31 280,895 out_77.jpg
2024/07/31 16:31 288,142 out_78.jpg
2024/07/31 16:31 292,695 out_79.jpg
2024/07/31 16:31 300,143 out_80.jpg
2024/07/31 16:31 309,243 out_81.jpg
2024/07/31 16:31 316,683 out_82.jpg
2024/07/31 16:31 328,453 out_83.jpg
2024/07/31 16:31 337,422 out_84.jpg
2024/07/31 16:31 346,179 out_85.jpg
2024/07/31 16:31 360,968 out_86.jpg
2024/07/31 16:31 370,691 out_87.jpg
2024/07/31 16:31 389,485 out_88.jpg
2024/07/31 16:31 402,303 out_89.jpg
2024/07/31 16:31 426,525 out_90.jpg
2024/07/31 16:31 445,526 out_91.jpg
2024/07/31 16:31 465,191 out_92.jpg
2024/07/31 16:31 503,215 out_93.jpg
2024/07/31 16:31 547,677 out_94.jpg
2024/07/31 16:31 601,283 out_95_default.jpg
2024/07/30 14:55 1,995,557 vlcsnap-2024-07-30-14h55m30s559.png 原始图片
附录A 测试用Python程序
import cv2
import numpy as np
def png2jpg(srcImg, tgtImgHeader, quality):
# 读取图像
cv2Image = cv2.imread(srcImg)
# 指定 JPEG 压缩质量(0 到 100),例如 90 为较高质量
encode_param = [int(cv2.IMWRITE_JPEG_QUALITY), quality]
# 将图像编码为字节流
success, img_encoded = cv2.imencode('.jpg', cv2Image, encode_param)
if success:
# 将编码后的图像转换为字节流
img_bytes = img_encoded.tobytes()
# 将字节流写入到文件
with open(f'{tgtImgHeader}_{quality}.jpg', 'wb') as f:
f.write(img_bytes)
print(f"图像成功编码为字节流!quality={quality}")
else:
print("图像编码失败!")
for q in np.arange(10,95+1,1):
print('default quality = 95')
png2jpg('vlcsnap-2024-07-30-14h55m30s559.png', 'out', q)