数据处理大家庭的小伙伴免费领批量图片压缩工具让你的训练速度炼丹速度直接起飞一天完成一月实验量购买相关资料后畅享一对一答疑畅享超多免费持续更新且可大幅度提升文章档次的纯干货工具批量图片压缩工具详细原理说明1. 整体原理概述本工具基于Python的Pillow库实现通过对图片进行有损或无损压缩在保持视觉质量基本不变的前提下显著减小图片文件大小。其核心原理是通过调整图片的编码参数和质量设置在文件大小和图像质量之间找到最佳平衡点。压缩原理公式图片压缩的基本原理可以用以下公式表示文件大小减少量 原始文件大小 - 压缩后文件大小压缩率 (1 - 压缩后文件大小 / 原始文件大小) × 100%节省空间百分比 (原始文件大小 - 压缩后文件大小) / 原始文件大小 × 100%2. 技术原理详解2.1 图片格式与压缩算法不同图片格式采用不同的压缩算法图片格式压缩类型算法原理适用场景JPEG有损压缩离散余弦变换(DCT)量化霍夫曼编码照片、复杂图像PNG无损压缩DEFLATE算法预测滤波图标、图形、透明图像WebP有损/无损VP8视频帧内编码网页图像BMP无压缩原始像素数据存储临时处理2.2 JPEG压缩原理JPEG压缩过程可以用以下流程图表示原始图像 → 颜色空间转换 → 分块DCT变换 → 量化 → 熵编码 → 压缩图像 ↓ ↓ ↓ ↓ ↓ ↓ RGB转 将图像分成 离散余弦 量化表减 霍夫曼编码 生成最终 YCbCr 8×8像素块 变换减少 少高频 进一步压缩 JPEG文件 空间相关性 信息权重关键公式颜色空间转换RGB转YCbCrY 0.299R 0.587G 0.114B Cb -0.1687R - 0.3313G 0.5B 128 Cr 0.5R - 0.4187G - 0.0813B 128离散余弦变换DCTF(u,v) ¼ C(u)C(v) ΣΣ f(x,y) cos[(2x1)uπ/16] cos[(2y1)vπ/16] 其中 C(u) 1/√2 (u0) 或 1 (u0)量化Q(u,v) round(F(u,v) / Q_table(u,v))2.3 PNG压缩原理PNG压缩过程原始图像 → 滤波预处理 → DEFLATE压缩 → 压缩图像 ↓ ↓ ↓ ↓ 像素数据 使用预测 LZ77算法 生成最终 滤波器减少 霍夫曼编码 PNG文件 数据冗余PNG使用5种预测滤波器None: 无预测Sub: 使用左边像素预测Up: 使用上边像素预测Average: 使用左边和上边像素平均值预测Paeth: 使用左边、上边和左上角像素预测3. 代码实现原理3.1 程序流程图开始 ↓ 读取配置参数 ↓ 验证输入文件夹存在 ↓ 创建输出文件夹 ↓ 遍历输入文件夹中所有图片文件 ↓ 对每个图片文件: ├─ 打开图片 ├─ 检测图片格式和模式 ├─ 根据格式应用不同压缩策略 ├─ 保存压缩后图片 ├─ 计算压缩率 └─ 记录统计信息 ↓ 输出总体压缩报告 ↓ 结束3.2 核心算法实现质量参数映射公式对于PNG格式我们将质量参数(0-100)映射到压缩级别(0-9)压缩级别 9 - floor(质量 × 9 / 100)其中质量 100 → 压缩级别 0 (无压缩)质量 0 → 压缩级别 9 (最大压缩)3.3 此压缩代码工具的获取所有购买改进或一对一等任何资料的小伙伴通过改进资料中预留的联系方式私信我即可免费获取4. 操作说明4.1 环境准备安装Python 3.6或更高版本安装必需的库pip install Pillow4.2 配置修改在代码中找到以下配置部分修改为您的实际路径和需求# 输入图片文件夹路径INPUT_FOLDERD:/Photos# 输出图片文件夹路径OUTPUT_FOLDERD:/Photos/Compressed# 压缩质量 (1-100)数值越小压缩率越高QUALITY804.3 运行程序python Image compression.py4.4 质量参数建议质量设置压缩效果适用场景预期压缩率90-100几乎无损打印、专业摄影5-15%75-90高质量网页展示、文档15-40%60-75中等质量社交媒体、缩略图40-60%40-60一般质量快速加载的网页图片60-80%1-40低质量极速加载需求80-95%4.5 输出信息解读程序运行时会显示以下信息处理进度[当前序号/总数量] 处理中: 文件名单个文件结果原始大小和压缩后大小单个文件压缩率总体统计处理图片总数成功压缩数量跳过/失败数量总原始大小和压缩后大小总体压缩率和节省空间5. 注意事项备份原始图片首次使用时建议先在小批量图片上测试确认效果后再处理重要图片透明图片处理PNG透明图片会保持透明通道但其他格式的透明图片可能被转换为RGB文件大小异常如果压缩后文件反而变大程序会自动跳过并保留原文件格式兼容性支持常见图片格式但某些特殊格式可能需要额外处理写在最后学术因方向、个人实验和写作能力以及具体创新内容的不同而无法做到一通百通关注UPAi学术叫叫兽在所有B站资料中留下联系方式以便在科研之余为家人们答疑解惑本up主获得过国奖发表多篇SCI擅长目标检测领域拥有多项竞赛经历拥有软件著作权核心期刊等经历。因为经历过所以更懂小白的痛苦因为经历过所以更具有指向性的指导祝所有科研工作者都能够在自己的领域上更上一层楼以下为给大家庭小伙伴们免费更新过的绘图代码均配有详细教程超小白也可一键操作! 后续更多提升文章档次的资料的更新请大家庭的小伙伴关注UPAi学术叫叫兽