为什么压缩图片和压缩

article/2025/9/1 14:44:08

为什么要压缩图片?

表示图像需要大量的数据,但图像数据是高度相关的,或者说存在冗余(Redundancy)信息,去掉这些冗余信息后可以有效压缩图像,同时又不会损害图像的有效信息。

视网膜上有两种感光细胞,能够感知亮度变化的视杆细胞,以及能够感知颜色的视锥细胞,由于视杆细胞在数量上远大于视锥细胞,所以我们更容易感知到明暗细节。


数字图像的冗余表现为以下几种形式:空间冗余、时间冗余、视觉冗余、信息熵冗余、结构冗余和知识冗余。

(1)空间冗余:图像内部相邻像素之间存在较强的相关性所造成的冗余。

(2)时间冗余:视频图像序列中的不同帧之间的相关性所造成的冗余。

(3)视觉冗余:是指人眼不能感知或不敏感的那部分图像信息。

(4)信息熵冗余:也称编码冗余,如果图像中平均每个像素使用的比特数大于该图像的信息熵,则图像中存在冗余,这种冗余称为信息熵冗余。

(5)结构冗余:是指图像中存在很强的纹理结构或自相似性。

(6)知识冗余:是指有些图像还包含与某些先验知识有关的信息。

压缩分类

无损压缩:第一类压缩过程是可逆的,也就是说,从压缩后的图象能够完全恢复出原来的图象,信息没有任何丢失

有损压缩:第二类压缩过程是不可逆的,无法完全恢复出原图象,信息有一定的丢失

压缩图片的应用

图象压缩一般通过改变图象的表示方式来达到,因此压缩和编码是分不开的。图象压缩的主要应用是图象信息的传输和存储,可广泛地应用于广播电视、电视会议、计算机通讯、传真、多媒体系统、医学图象、卫星图象等领域。

编码的种类

    压缩编码的方法有很多,主要分成以下四大类:(1)象素编码;

                                                                                (2)预测编码;

                                                                                (3)变换编码;

                                                                                (4)其它方法。

             

1:所谓象素编码是指,编码时对每个象素单独处理,不考虑象素之间的相关性。

2:所谓预测编码是指,去除相邻象素之间的相关性和冗余性,只对新的信息进行编码。举个简单的例子,因为象素的灰度是连续的,所以在一片区域中,相邻象素之间灰度值的差别可能很小。如果我们只记录第一个象素的灰度,其它象素的灰度都用它与前一个象素灰度之差来表示,就能起到压缩的目的。如248,2,1,0,1,3,实际上这6个象素的灰度是248,250,251,251,252,255。表示250需要8个比特,而表示2只需要两个比特,这样就实现了压缩。

3:所谓变换编码是指,将给定的图象变换到另一个数据域(如频域)上,使得大量的信息能用较少的数据来表示,从而达到压缩的目的。

JPEG压缩算法

JPEG算法的第一步:图像被分割成大小为8X8的小块,

第二步:颜色转换RGB为YCbCr

所谓“颜色空间”,是指表达颜色的数学模型,比如我们常见的“RGB”模型,就是把颜色分解成红绿蓝三种分量,这样一张图片就可以分解成三张灰度图,数学表达上,每一个8X8的图案,可以表达成三个8X8的矩阵,其中的数值的范围一般在[0,255]之间。

不同的颜色模型各有不同的应用场景,例如RGB模型适合于像显示器这样的自发光图案,而在JPEG压缩算法中,需要把图案转换成为YCbCr模型,这里的Y表示亮度(Luminance),Cb和Cr分别表示绿色和红色的“色差值”。

人们发现红绿蓝三种颜色所贡献的亮度是不同的,绿色的“亮度”最大,蓝色最暗,设红色所贡献的亮度的份额为KR,蓝色贡献的份额为KB,

最终可以得到RGB转换为YCbCr的数学公式为

PEG把图像转换为YCbCr之后,就可以针对数据得重要程度的不同做不同的处理。

第三步:DCT(离散余弦变换)

利用数学函数,将矩阵

第四步:量化

离散余弦变换,图像数据虽然已经面目全非,但仍然是处于“可逆”的状态。

JPEG压缩的最后一步:对数据进行哈弗曼编码

JPEG压缩过程总结

整个JPEG压缩图片的过程:

  • 将整张图片分为若干8*8的矩阵
  • 对每个8*8矩阵进行DCT变换
  • 对DCT后的矩阵进行量子化
  • 重新进行ZIGZAG排序
  • 将DC分量和AC分量分别进行DPCM和RLE编码
  • 将整体信息进行Huffman编码

http://chatgpt.dhexx.cn/article/WxAP8AoV.shtml

相关文章

2款免费的图片压缩工具

今天写这篇文章的目的,主要是为大家介绍2款免费的图片压缩工具,在工作和学习中这也是一项必备的技能。比如当你遇到比较大的图片需要发送的时候,或者对图片的大小有强制要求的时候,这些小工具就派上了用场。 网上也有一些付费的压…

如何批量压缩图片体积大小kb?

工作中,我们在使用图片素材时,图片kb体积过大怎么办? 通常我们会直接在电脑上将图片调整成我们想要的尺寸大小,可以利用的工具有photoshop或者截图的方法,这对于有些小伙伴来说不是很难的事情,今天我就不做…

图片批量压缩方法及步骤

图片批量压缩方法及步骤!平常我们会将手机拍摄的照片传输到电脑里保存,时间久了后电脑中会有大量的图片,这些图片大都是1M-2M的体积大小,这些图片会占用大量的电脑磁盘空间,可能会导致电脑变得很卡等现象。但是又不忍心…

银河麒麟批量压缩图片的方法

适用系统:银河麒麟V10(SP1),CPU:Kirin990,架构:aarch64。 软件商店下载“简单图像压缩转换软件”。桌面左下角点开菜单搜索“Simple Image Reducer”,右键添加到桌面快捷方式。打开Simple Image Reducer。…

python压缩图片和视频

引言 在真实项目中,往往要进行图片的传输和视频的传输,但因为用户上传的图片和视频所占用的大小问题而导致占用服务器的空间多,并且用户访问这些图片的时候因为图片或视频太大而长时间加载,所以要对用户上传的视频和图片进行压缩…

7款最好用的图片无损,视频无损压缩软件

第一:QVE视频压缩软件 下载地址:http://www.qvevideo.com/compress 非常实用的视频,图片两用压缩软件,能够将各种视频压缩成mp4,flv等格式, 缩减视频体积,释放磁盘空间,节省网络带宽,压缩后能够保持视频高清晰度,压缩率高达90%以上。 1,首先打开软件,切换到【图片压缩】…

苹果手机解压缩软件_照片压缩软件哪款好用?推荐5款好用的图片压缩软件

在我们办公的时候,总会遇到各种各样的问题,就比如PDF与文档之间的转换,图片的压缩,文档加密的方法等等,这些都是上班族经常需要处理的问题,特别是图片压缩,很多人都想知道照片压缩软件哪款好&am…

分享一个好用的图片压缩软件

为了性能优化需要,一般需要优化网站上的图片,减少大小。但问题来了,很多压缩软件是有损压缩,压缩后图片质量惨不忍睹。 下面我分享一下刚刚了解到的图片压缩软件,名字叫智图。 官网地址是: http://zhitu.is…

无损对图片进行压缩软件Caesium使用方法及下载

无损对图片进行压缩,除了用PS外,还有一款小白也可以用的软件Caesium。 使用方法如下: 1、打开文件夹,双击Caesium.exe 2、弹出的界面如下 3、点击左上角红色方框打开文件5837014_0_0.jpg,压缩选项的品质任意修改&…

开源免费的图片压缩软件,从50M到50K,极力安利

我相信大家在生活中肯定每日都离不开图片的处理了,比如:考试报名、图片传送、网页图片上传的过程中,都或多或少遇到过“您上传的图片太大”的问题 每次遇到这种情况是真的有点心塞,所以今天特别给大家带来一款人人必备的实用、超好…

如何压缩图片200k以下?

“图片过大无法上传”,“因您上传的图片大小超过限制”这样的提示大家都有遇到过吧?这就是告诉我们现在的图片需要压缩一下才能继续使用了,否则我们就无法使用当前照片了。 那有很多平台,特别是上传一些证件照的时候,要…

怎么压缩图片200k以下?

怎么压缩图片200k以下?有很多小伙伴好奇,为什么别人能将图片压缩到200k以下,而自己却做不到呢!原因很简单,那是因为他们都用好用的压缩软件来压缩。今天小编也为大家分享一个轻松将图片压缩到200k以下的方法给你。 我们…

「精品」无损批量压缩图片工具 - Caesium Image Compressor

每天分享一点小知识,积少成多。今天分享的是一款图片无损压缩工具!最近在做网站的备案,上次的图片要求不能大于9M,无奈只能压缩图片了,今天对比了几款图片压缩工具,最终得出Caesium Image Compressor款工具…

Mac好用的图片压缩软件——JPG Compress 2 for Mac

不仅是低头码字的作者,摄影师、设计师、画家,以及其他想分享图片内容的人,遇到图片过大无法上传、 加载太慢的情况,该怎么办呢?很简单,给你的图片减减肥这个问题就迎刃而解了。 那么mac图片压缩软件有哪些呢?今天就给大家带来了一些MAC图片压缩神器,来帮您的图片瘦身减…

图片压缩软件有哪些?分享三个好用的图片压缩软件

图片压缩软件有哪些是比较好用的呢?现如今图片拍出来越来越清晰,它的内容自然也就更大,遇到上传图片时,往往都会因为图片内存过大而上传不了,因此我们想要了解一些好用的图片压缩软件,今天给大家分享三种压…

8个免费图片/照片压缩工具帮您降低存储空间

继续查看一些最好的图像压缩工具,以提升用户体验和存储空间以及网站使用支持。 无数图像压缩工具的存在指向一个单一的结论——图像优化至关重要,不应被忽视。 简而言之,图像优化可以对页面加载速度产生奇迹,改善各方面优化。 …

什么软件可以压缩图片大小?这几个软件值得收藏

不知道小伙伴们平时有没有遇到这种情况,在发布图片动态的时候,平台会提示说该图片体积过大,无法上传的情况。通常遇到这种情况,我们如果还想继续发布这张图片,就要对图片进行压缩了。那免费压缩图片的软件哪个好呢&…

LKM:Linux Kernel Map(图解Linux内核)

https://makelinux.github.io/kernel/map/ 《Anatomy of the Linux kernel- linux内核剖析》 《Linux Kernel Map之协议栈概述(1)》

Linux:从min宏开始入手LKM

目录 引言第一版的“疯狂”之处__LINE__的弊端最新版本\_\_PASTE和\_\_\_PASTE 自定义LKM问题锦集/usr/src/下为空无法进入到对应目录,原因比较简单:/bin/sh: 1: flex: not foundConfiguration file ".config" not found!The present kernel c…

MKLink 命令的使用

之前提到帮助一位网友清理C盘的时候,发现他的 iTunes 备份文件夹非常大,于是用 mklink 命令把 iTunes 备份文件夹转移到了 D 盘。 于是我觉得 mklink 这个命令值得好好研究一下,所以我把我研究验证的在 Windows 10 下的 mklink 命令的使用教…