一文带你掌握图像存储基础知识
图像在计算机中有两种存储方式:位图(Bitmap)存储和矢量(Vector)存储。
一、图像显示因素
不管是位图还是矢量图,最终都要显示到屏幕上。图像在屏幕上的显示效果取决于以下几个因素。
1.像素
像素是图像的最小单位。像素概念和几何里的“点”非常相似,都是不可分割的最小单位。只不过,像素是方形的,点是圆的。像素有3个基本特征:
- 形状:方形。
- 颜色:单一颜色。
- 位置:像素的具体位置,用一对坐标(x、y)表示。
将一个个颜色不一的小方格像码地砖一样码在一起,就变成了图像。
2.图像的位分辨率
指像素能表示多少种颜色,用二进制位数表示。常见的有8位、16位、24位、32位和48位色彩,如24位色彩能组合出一千六百多万( 2 24 = 16777216 2^{24} = 16777216 224=16777216)种色彩等级,比人眼能分辨的色彩多得多。位分辨率又称位深或颜色深度。
3.屏幕分辨率
指屏幕上显示的像素的个数,如1024×768的分辨率指屏幕上水平方向有1024个像素点,垂直方向上有768个像素点。
常见的屏幕分辨率比例如下:
- 4:3,最早的标准,一度统治江湖许多年,如今辉煌不在。如1024×768。
- 16:10,常见宽屏比例,如宽屏笔记本电脑的分辨率为1440×900。
- 16:9,高清电视用的比例,像720p(1920×1080)、1080p(1280×720)都是这个比例。
4.像素点距(pixel pitch)
指显示屏相邻两个像素点之间的距离。
屏幕分辨率只是指定屏幕上有多少个点,但显然屏幕的大小也与显示效果有关。同样是1920×1080的分辨率,屏幕越小,密度越大,显示效果越好。
决定密度的指标就是像素点距,点距越小,密度越大,图像越细腻。
二、位图存储
位图图像又称点阵图像、位映射图像,它是由一系列像素点组成的图像。
可以把一幅位图看成一个二维数组,数组的每个元素就是一个像素,元素的值对应像素的颜色,数组的下标对应像素的位置坐标。
1.特性
(1)适用于复杂图像
位图无非是各种颜色的点,有多少种颜色都无所谓。所以,处理像照片这样的复杂图像,采用位图图像最合适。
(2)品质与图像分辨率有关
位图图像的品质与图像分辨率有关。图像分辨率就是一张图水平、垂直方向上有多少个像素点,也就是你右键点开图像属性看到的分辨率。图像分辨率越大,图像品质越高,但需要占用的存储空间也越大。
(3)占用存储空间大
位图保存所有像素点的颜色信息,故需要占用大量的存储空间,处理位图也比较费时。一张简单的位图有几千字节到几十万字节,而复杂的位图可能要占用几十兆字节甚至更大的存储空间。
2.位图压缩
位图存储空间大的问题有两个解决的办法:一是采用更大的存储器;二是压缩图像。
图像压缩有两种:
- 有损压缩:通过丢弃图像中的一些冗余信息或次要信息,来达到压缩的目的。这种压缩方式会损失一部分图像质量,但文件大小会大大减小。常见的有损压缩格式有JPEG、WebP等。
- 无损压缩:通过重新排列图像中的数据,或者利用图像中的重复数据来达到压缩的目的。这种压缩方式不会损失图像质量,但文件大小减小的程度有限。常见的无损压缩格式有PNG、BMP、GIF等。
3.位图格式
因为图像的压缩方法不一,就产生了各种图像格式:
(1)BMP:采用位映射存储格式,基本不压缩,显示效果最好,但是会占用较大存储空间。
(2)JPG/JPEG:由Joint Photographic Experts Group(联合图像专家组)开发的一种常见的图像文件格式,应用非常广泛。它采用离散余弦变换(DCT)和量化技术来去除图像中的冗余信息,还采用霍夫曼编码或算术编码来进行熵编码,进一步减小文件体积。特点如下:
- 采用有损压缩,压缩后会丢失一部分不引人注目的数据。
- 压缩率高,存储文件较小。
- 当对图像多次编辑和保存后,图像质量会逐渐下降。
- 不适合放大观看和制成印刷品。
- 不支持透明度。
(3)PNG:即Portable Network Graphics(便携式网络图形),它采用DEFLATE算法来进行压缩。DEFLATE算法结合了LZ77压缩算法和哈夫曼编码的优点,可以高效地压缩图像数据。特点如下:
- 无损压缩,故更加适合保存将来要编辑的图像。
- 支持透明度,可制作出背景透明的图像。
一般来说,PNG文件体积会比JPEG稍大一些。与JPEG相比,PNG适用于保存文本、线条或类似的边缘清晰且有大块相同颜色区域的图像。JPG/JPEG则适用于低对比、图像颜色过渡平滑、噪声多且结构不规则的情况。对于要编辑的图像,适合用PNG格式;对于将要发布的图像可以保存成JPEG,用JPEG编码一次不会造成明显的图像有损。
(4)GIF:即Graphic Interchange Format(图像互换格式),互联网上应用最广的图像文件格式之一。它采用LZW压缩算法来去除图像中的冗余信息。特点如下:
- 无损压缩。
- 压缩比高,采用LZW压缩算法,可将图像压缩到较小的体积。
- 支持动画。
- 画质差。GIF最多只能支持256种颜色,这也是其占用空间小的一个主要原因。
- 便于网络传输。因为文件比较小,传输速度快,所以十分便于网络传输。因而在互联网早期,非常流行。
(4)TIFF:即Tagged Image File Format(标记图像文件格式),一种灵活的图像格式,由Aldus Developer’s Desk和Microsoft Windows Marketing Group公司联合开发,被广泛用于印刷和出版领域。特点如下:
- 支持无损压缩。
- 高质量图像。支持多种色彩位深度,如8位、16位、24位、32位甚至48位,能够存储丰富的颜色信息和细节。它还支持多种色彩模式,包括RGB、CMYK等,使得TIFF格式成为高质量图像存储的理想选择。
(5)WebP:Google推出的一种图像格式,结合了JPEG和PNG的优点,广泛应用于网页中的图像存储。特点如下: - 它采用有损压缩,但压缩效果比JPEG要好很多。其压缩率通常比JPEG高25%-34%,这意味着在相同的图像质量下,WebP文件的大小更小。
- 支持透明度。
- 支持动画效果。
- 兼容性不高。相对较新的格式,不像JPEG被广泛支持。
总结:
BMP:优点——无损压缩,图质最好;缺点——文件太大,不利于网络传输。
JPG:优点——文件小,利于网络传输;缺点——画质损失,不支持透明度。
PNG:优点——无损压缩,支持透明度;缺点——画质中等,大小中等。
GIF:优点——支持动画;缺点——最多256色,画质差。
TIFF:优点——图像质量高;缺点——压缩率不高。
WebP:优点——结合了JPEG和PNG的优点;缺点——兼容性不高。
三、矢量存储
矢量图形不是由一个个带颜色的点组成的,而是将整个画图过程描述出来。这种画图描述是通过数学方程来实现的,主要是对图形的边缘和内部填充进行描述,比如画了个圆,填成红色。
矢量图形由一系列矢量对象(也就是各种图形,如直线、圆、弧等)组成,它玩的是数学,以一组指令的形式存在。这些指令描述各种图形的属性,简单的如直线的起点、终点、颜色,圆的圆心、半径、内部填充颜色等;复杂的如曲面、光照、材质等效果。图形中的每一个对象都是一个独立的实体,都独立地定义了各自的色彩、形状、轮廓、尺寸以及位置等属性。
矢量图形是画出来的,位图是拍出来的,因此工程制图、绘制动画等画出来的都是矢量图形。
1.特性
(1)图像品质与分辨率无关
矢量图形只有数学方程,存储的不是一个个点,因此与分辨率无关,图形更为细致、真实。它可以任意改变图形的尺寸而不会导致失真和降低图形的质量。这是矢量图形的最大优点。
(2)自动适应各种显示设备
因为改变图形的尺寸不影响质量,所以矢量图形可以自动适应输出设备的最大分辨率。比如打印时,打印机把矢量图形的数学方程变成打印机的像素,无论打印的图形有多大,看上去都十分均匀清晰。
(3)占用存储空间小
矢量图形占的存储空间比位图要小得多,因为它不必存储一个个具体的点。比如要存一个圆,它只需存圆心的位置、半径、线条颜色。即便你画一个地球那么大的圆,它占用的存储空间也没啥变化。
(4)占用存储空间与图像大小无关
在矢量图形中,文件大小取决于图形中所包含对象的数量和复杂程度,而与输出图形的大小几乎没有关系,这一点与位图图像正好相反。
(5)图形元素相互无影响
在矢量图形中可以只编辑其中某个对象而不影响图形中的其他对象。矢量图形中的对象可以互相覆盖而不会互相影响。
2.矢量图格式
常见存储格式:
(1)ai:Adobe Illustrator软件用的格式。该格式占用硬盘空间小,打开速度快,同时方便进行格式转换。
(2)cdr:CorelDraw软件用的格式。
(3)eps:用PostScript语言描述的一种ASCII图形文件格式,全称为Encapsulated PostScript,是跨平台的标准格式。该格式主要用于印刷或打印输出。
(4)svg:基于XML(Extensible Markup Language),由World Wide Web Consortium(W3C)联盟开发的一种开放标准的矢量图形语言。可以直接用代码来描绘图像。生成的文件很小,下载很快,十分适合用于设计高分辨率的Web图形页面。
(5)dwg与dxf:工程制图软件AutoCAD用的格式,其中.dwg格式是AutoCAD创建的图形文件格式,而.dxf格式以ASCII方式储存图形。
(6)wmf与emf:wmf是Microsoft Windows中常见的图元文件格式,具有文件短小、图案造型化的特点,但图形往往较粗糙,且只能在Microsoft Office中调用编辑。emf是由Microsoft公司开发的Windows 32位扩展图元文件格式,旨在弥补wmf文件格式的不足,使图元文件更加易于使用。