JPEG压缩在机场跑道胶痕检测中的应用

2015-01-27 08:10刘晓琳岳子皓何乃超李雪涛
自动化与仪表 2015年6期
关键词:分量编码传输

刘晓琳,黄 兴,岳子皓,何乃超,李雪涛

(中国民航大学 航空自动化学院,天津 300300)

随着国民经济的快速发展,我国航空运输市场不断发展。机场航班次数的增多所带来的飞机频繁起降使得机场跑道附着的胶质层日益增厚,导致摩擦因数不断降低,从而影响飞机的起降安全。现有的胶痕检测系统是将摄像头所采集到的胶痕图像数据传送给识别装置,实现机场跑道胶痕的自动识别,不再依赖人眼检测胶痕。但这种直接传输原始图像数据的方法需要传输的数据量大、耗时久,大大降低了系统的工作效率。为了解决该问题,对现有的胶痕检测系统进行改进,采用JPEG图像压缩编码技术,降低数据传输量,并利用Wifi传输技术和神经网络识别技术进行机场跑道胶痕图像的传输和识别。通过仿真试验及实物测试验证JPEG压缩编码技术在系统中的可行性。

1 系统构成及工作原理

该系统以STM32单片机为硬件平台和以VS2012为软件开发环境,实现飞机跑道胶痕的自动识别。系统构成如图1所示。

图1 系统构成Fig.1 System components

整个系统包括图像数据压缩、图像数据传输和图像数据识别3个子系统。在系统工作时,首先,PC机通过WiFi传输模块向STM32单片机发送采集胶痕图像的指令。然后,在图像数据压缩子系统中,OV7670摄像头采集到胶痕图像后,STM32对胶痕图像进行JPEG压缩编码处理,并同时完成胶痕图像在TFTLCD液晶屏上的显示。接着,在图像数据传输子系统中,WiFi传输模块通过RS232总线获取压缩后的胶痕图像数据,并同时将图像数据传送至无线网络。最后,在图像数据识别子系统中,PC机连接无线网络,获取压缩后的胶痕图像数据,通过在VS2012环境下实现的神经网络识别技术,对胶痕等级进行评定,并将评定结果传送至报警模块。

2 基于DCT的JPEG图像压缩编码

JPEG压缩编码是基于离散余弦变换DCT(discrete cosine transfotm)实现的,具有变换前后信号熵及能量不变、求解精度高、抗噪声能力好、压缩比大、恢复效果好等优点[1]。由于DCT变换是针对于YCbCr图像数据的,故首先将OV7670摄像头采集到的大小为320×240的RGB565图像数据转换到YCbCr色彩空间。然后,将YCbCr数据分为一个个8×8的数据单元矩阵。接着,对每个8×8数据单元矩阵进行DCT变换、量化和编码,实现胶痕图像压缩[2],得到压缩后JPG格式的胶痕图像。压缩流程如图2所示。

图2 胶痕图像的压缩流程Fig.2 Rubber marks image compression process

2.1 DCT变换

完成跑道胶痕图像数据的像素空间转换和分块后,为了使像素数据能够被DCT变换接收,要对所有的像素数据进行DC电平偏移,即把所有的像素值减去128,使图像的数字信息值保持在-128~127之间。然后,将每个数据单元的数值代入二维离散余弦变换公式中进行DCT变换,得到8×8的DCT频率系数矩阵。二维离散余弦变换公式为

式中:x和y为图像数据矩阵内某个数值的坐标位置; f(x,y)为图像数据矩阵内坐标为(x,y)的像素值;u和v为DCT变换后矩阵内某个DCT系数的坐标位置;F(u,v)为 DCT 变换后矩阵内坐标为(u,v)的DCT系数值。

完成DCT变换以后,每个8×8的数据单元对应转换成为8×8的DCT频率系数矩阵。这些系数包含了图像的频率信息,左上角为低频分量,右下角为高频分量。每个频率系数矩阵中的第一个数据为DCT频率系数的DC系数(直流分量),剩下的63个数据为AC系数(交流分量)。对某一8×8矩阵进行DCT变换后,能够得到变换前矩阵和变换后的DCT频率系数矩阵如图3所示。

图3 DCT变换前后对比Fig.3 Before and after comparison of DCT

由图3分析可知,DCT变换后左上角的低频分量明显大于右下角的高频分量,表明了图像的信息都集中在了低频分量处。

2.2 量化

获得胶痕图像的DCT频率系数矩阵后,要对每个DCT系数矩阵进行量化。所谓量化,就是让每个频率系数矩阵对应除以一个量化表,并将结果四舍五入取整。因为经DCT变换后图像的信息主要集中在左上角的低频分量处[3],故在对图像进行压缩重构时,适当的忽略高频分量,能够在保证图像质量的情况下减少数据量。量化的目的就是在保留图像低频分量的同时,让更多的高频分量变为0,提高图像的压缩比。由于人眼对低频分量敏感,而对高频分量不敏感[4],故在量化表中左上角的值要小于右下角,其中的每个量化值是通过大量的心理视觉实验得出的最佳量化值。用于亮度的量化表如图4(a)所示。对图3(b)所示的DCT变换后的矩阵进行量化得到量化后矩阵如图4(b)所示。

图4 亮度量化表及量化后矩阵Fig.4 Luma quantization table and quantized matrix

由图4分析可知,量化后的矩阵只有左上角的一小部分不为0,右下角高频分量处全部为0,能够通过编码大量地减少数据的传输量。

2.3 编码

完成了DCT频率系数的量化后,要对每个频率系数矩阵进行编码。在编码前,首先要对每个频率系数矩阵进行Z形扫描重新排序。Z形扫描的顺序如图5所示。

Z 型扫描后,8×8 的频率系数矩阵变为1×64的一维数列。第1个数为原来的DC系数,后63个数为AC系数。

对DC系数进行编码时,首先,对其进行差分脉冲编码调制[5]DPCM(differential pulse code modulation),即将每个数据单元的DC系数与前一个数据单元的DC系数做差值,对差值进行编码。然后,在表1中找到差值对应的霍夫曼码,将霍夫曼码值与差值相连完成DC系数的编码。

图5 Z形扫描的顺序图Fig.5 Z-scan sequence diagram

表1 DC差值的霍夫曼编码表Tab.1 Z-scan sequence diagram

对AC系数进行编码时,首先,对AC系数进行游程编码 RLE (run-length encoding), 获得形如RRRR/SSSS(RRRR为一个非零的AC系数前,连续零值的个数,SSSS为这个非零AC系数的二进制比特数)的中介形式。然后,在表2中找到中介形式对应的霍夫曼码值,并将该霍夫曼码值与AC系数相连完成AC系数的熵编码。

表2 中介形式与霍夫曼编码值对照表Tab.2 Intermediary form and Huffman encoding value table

在AC系数编码过程中,由于RRRR为4位二进制数的形式,所以在一个中介形式中最多能够表示15个0,当连续为0的AC系数个数超过了15时,用15/0表示16个连续的0,用0/0表示其后的所有AC系数都是0。对AC系数编码完成后即完成了胶痕图像的JPEG压缩编码,获得JPG格式的胶痕图像。

3 仿真试验与实物测试

为了验证DCT变换后图像信息集中在低频分量处,在Matlab中进行DCT仿真试验。为了验证JPEG压缩编码技术在胶痕检测系统中的可行性,在实物系统中实物测试。

3.1 DCT仿真试验

DCT变换前后的图像为灰度图,每个点的灰度值能够用0~255来表示,当变换前后像素点的差值在15以内时,认为该点像素没有变化。在Matlab 2012a环境下对图像数据进行DCT变换,并对保留不同DCT系数的图像数据进行逆DCT变换,还原图像数据。用还原后未发生变化的像素点总数除以图像的总像素点数,得到的百分比作为二者的相似度。对大量图像进行以上仿真测试,得到保留不同DCT系数时变换前后的图像相似度变化趋势如图6所示。

图6 保留不同DCT系数时变换前后的图像相似度变化趋势Fig.6 Similarity before and after image transformation trends while retaining different DCT coefficients

由图6分析可知,当只保留1个DCT系数时,还原后图像与原始图像的相似度最低的也在65%以上;当DCT系数保留至21个时,相似度已经基本上达到90%以上;当DCT系数保留系数至32个时大部分的相似度都已达到97%以上。验证了图像进行DCT变换后,图像信息主要集中在低频分量处的结论。

3.2 实物测试

在以STM32为控制核心的压缩子系统中完成胶痕图像的压缩,并将图像数据通过RS232总线传送至Wifi传输模块。Wifi传输模块作为中继,将压缩后的胶痕图像数据传输至PC机,在PC机上完成胶痕图像的识别。通过图像数据的获取及保存,获得如图7所示的发送前未压缩的图像,及PC机接收到压缩数据后还原的图像。

胶痕图像在压缩前的大小约为450 K,压缩后的大小约为50 K;在传输距离为30 m时,未压缩的胶痕图像传输时间约为20 s,压缩的胶痕图像传输时间约为7 s;对未压缩与压缩后的胶痕图像进行识别,得到如图8所示的结果。

图7 JPEG压缩编码验证结果Fig.7 JPEG compression coding validation results

图8 识别结果对比Fig.8 Recognition results contrast

由实物平台上的验证结果分析可知,对图像数据进行JPEG压缩编码后,获得的图像与原始图像包含的信息量基本一致,而且有效提高了图像传输速率。验证了JPEG压缩编码技术在本系统中的可行性和有效性。

4 结语

为了提高机场跑道系统的工作效率,保证飞机起降的安全性,设计开发了一套以STM32单片机为硬件平台和以VS2012为软件开发环境的机场跑道胶痕图像检测系统。采用基于DCT的JPEG图像压缩编码技术进行图像数据的压缩,在减少数据传输量的同时保证了数据传输的信息量,提高了系统工作效率。仿真试验和实物测试结果表明,JPEG压缩编码技术在此系统中的应用能够有效提高胶痕图像传输速率。

[1]Suzuki T,Aso H.M-channel fast hartley transform based integer DCT for lossy-to-lossless image coding[J].IEEE Transactions on Image Processing,2013,22(10):3974-3981.

[2]卞国春,胡曦熀.基于DCT压缩的JPEG图像快速检索[J].计算机应用,2005,25(7):1623-1625.

[3]武瑛.DCT变换在图像压缩中的应用[J].计算机与现代化,2013(4):103-106.

[4]姚军财.基于颜色色差的彩色图像压缩技术研究[J].液晶与显示,2012,27(3):391-395.

[5]彭益智,霍家道,徐伟.一种基于TMS320C6678的JPEG编码算法并行实现方法[J].指挥控制与仿真,2012,34(1):119-122.

猜你喜欢
分量编码传输
生活中的编码
牵引8K超高清传输时代 FIBBR Pure38K
《全元诗》未编码疑难字考辨十五则
子带编码在图像压缩编码中的应用
一斤生漆的“分量”——“漆农”刘照元的平常生活
一物千斤
基于同轴传输的网络传输设备及应用
Genome and healthcare
关于无线电力传输的探究
论《哈姆雷特》中良心的分量