曾基业,肖德琴,林探宇(华南农业大学数学与信息学院,广州510642)
农业图像感兴趣区域可调压缩处理系统设计与实现
曾基业,肖德琴,林探宇
(华南农业大学数学与信息学院,广州510642)
摘要:
关键词:
感兴趣压缩;SVM;JPEG图像压缩;远程传输
数字图像处理技术在20世纪60年代初期作为一门新的学科逐步发展起来。数字图像处理技术是计算机的一种相关技术,它是为了达到某种预想目的而对图像进行运算和处理的一种过程。在发展图像处理技术的早期,图像处理的主要目的是在人的视觉效果和图像质量上进行改善[1]。我国是一个农业大国,图像处理在农产品检测、农作物病虫草害诊断识别、精准喷药和果实采摘等方面都有着广泛的应用,取得了丰硕的研究成果,对农业各领域的现代化进程起到了十分重要的促进作用。但是自然农作物的田间环境复杂,网络传输能力有限,网络传输速度难以满足要求;为此,对高效率的农业图像感兴趣区域压缩传输技术的要求大大提高。
在感兴趣图像压缩上,一种灵活的方法便是在ROI采用高图像质量的近无损压缩,而在RONI采用高压缩率的有损压缩。例如,在无线医疗应用中,服务器端向客户端传输图像数据时,利用这种方法在有限的传输带宽上提供更加灵活的图像传输机制,有助于提升客户端浏览医学图像的体验,在无线医疗应用中具有很好的应用前景,其研究的难点在于ROI的分割[2-4]。而在农业图像上,支持向量机SVM(Support Vector Machine)的学习模型能够提供一种对ROI区域进行分割的算法,而对于传统的分割算法而言,SVM的效果以及速率都大大提高。随着机器学习领域的愈发成熟,支持向量机作为一种新的分类方法已经用于图像分割,它能较好地利用彩色图像的统计特征,且可避开求最佳门限值困难的问题[5]。对于田间色彩分明的农作物而言,SVM很好地解决了农业图像的ROI分割问题。
结合SVM的ROI分割问题,为实现课题组前期农业现场图像系统的高效传输的需求[6-7],同时又为满足不同用户对农业图像清晰度、大小、质量等的要求,本文设计实现了可调压缩比的农业图像感兴趣区域压缩传输处理系统。下面将首先介绍系统的总体设计方案,然后介绍系统各模块的详细设计与实现,最后对系统性能进行了测试与分析。
系统使用Visual Studio 2010在Windows平台下开发。使用普通的摄像头作为图像采集设备,利用C++封装好协议的Socket编程进行图像数据的传输。系统分为服务器端和客户端,由客户端向连接服务器发起请求从而建立单向连接。系统总体设计图如图1所示。
图1 系统总体设计图
系统分为服务器端和客户端,启动服务器和客户端后,自动进行连接。服务器和客户端选好相同的传输端口后(默认是4000端口),由客户端手动输入服务器的IP,根据输入的IP匹配不同的服务器。在客户端上,首先是目标的选取,选择需要处理的图像路径,再选择不同的算法处理图像并预览,最后将整个图像通过网络传输,发送到服务器上。服务器上有缓冲和存储两种模式,选择缓冲模式时,能够接收客户端发送的图像并进行预览,但不会进行存储;选择存储模式时,能够接收客户端发送的图像并进行预览,同时存储在服务器硬盘上。
基于农业图像感兴趣区域压缩处理系统分为四个主要模块:图像分割模块、图像压缩模块、网络发送/接收模块、图像存储模块;接下来将会对每个模块的具体设计与实现进行详细的叙述。各主要模块之间的结合关系如图2所示。
2.1农业图像感兴趣分割模块
在计算机视觉领域,图像分割(Segmentation)是指把数字图像分割为几个图像像素集。图像分割的目的是简化或更改图像的表示方式,从而使得图像更容易理解和分析[8]。图像分割通常用于定位图像中的S标对象和边界、线、曲线等。更准确地说,图像分割是将图像的每个像素加上标签的一个过程,这一过程使得具有相同的标签的像素具备了一些共同的视觉特性。图像分割是图像中的子域设置成集合,然后利用这些集合来全面的覆盖整个图像[9]。子区域中每个像素在对应特性的度量或者计算下都具有相似特征,这个特征的表现形式很多,例如色彩、亮度、纹理等等,并且结果图像中的相邻地区的特性是非常不同的[10]。
系统分割模块主要应用支持向量机(SVM)的方法,结合传统的图像处理中的一些特征表述方法,对农业图像ROI进行分割识别。SVM算法的优点在于,在农业图像上农作物的果实与其背景的颜色差值比较大,通过对色彩特征的提取,训练出特定的农作物模型,从而达到想要的分割效果。
图2 系统主要模块图
分割算法步骤如下:
(1)样本采集:在图像样本中,分别选取目标部分图像和背景部分图像,选取的标准是:具有颜色、轮廓等差异的代表性的部分,得到目标部分及背景部分的特征图像;
(2)模型生成:将(1)得到的两种图像进行像素点的均值变换,并加入用1和-1进行区分,以(1,B,G,R)的向量形式代表目标,(-1,B,G,R)的向量形式代表背景,最后得到一个包含这两种类型的大数据模型;
(3)模型优化:将(2)得到的模型进行SVM分类器的训练,得到线性核函数K(x,y)=x·y优化后的最优模型;
(4)分割图像:将需要分割的目标图像与(3)得到的最优模型进行比较,图像与模型比较通过SVM_CUT()函数实现,最终得到目标部分的图像,即ROI图像。
分割后的区域效果,主要是取决于步骤(1)中两类图像的采集;而分割速率也取决与步骤(1),不同的是,速率与两类图像的数量成正比。综上所述,SVM算法的优点就是分割效果好,但分割效果由样本采集是否具有代表性来决定,具有一定的主观因素。
2.2可调图像压缩模块
JPEG提出的JPEG标准是为连续色调图像的压缩提供的公共标准。连续色调图像并不局限于单色调(黑白)图像,该标准可适用于各种多媒体存储和通信应用所使用的灰度图像、摄影图像及静止视频压缩文件[11]。图像压缩编码方法从压缩编码算法原理上可以分为无损压缩编码、有损压缩编码、混合编码方法。而本文中,对背景部分(RONI)采取高压缩比的有损压缩DCT变换编码,同时为了保存前景部分(ROI)的信息完整,对该区域进行可调压缩比的DCT变换编码压缩。DCT变换常常被认为是图像/视频变换编码的最佳变换之一。DCT变换是一种空间变换,它的最大特点是对于一般的图像都能够将像素块的能量集中于少数低频DCT系数上,这样就可能只编码和传输少数系数而不严重影响图像质量[12]。
基于DCT的JPEG压缩主要分为以下几个步骤:
(1)颜色转换:为了减少色度通道包含大量的冗余信息,需要对背景区域图像进行色彩空间变换,从RGB 到YCbCr的色彩空间变换:
Y=0.29000R+0.587000G+0.114000B
Cb=-0.165736R-0.331264G+0.500002B
Cr=0.50000R-0.418688G-0.081312B
其中,Y表示亮度分量,Cb和Cr表示蓝红色度分量。
(2)DCT变换:DCT(Discrete Cosine Transform)是将图像信号在频率域上进行变换,分离出高频和低频信息的处理过程。然后再对图像的高频部分(即图像细节)进行压缩,以达到压缩图像数据的目的。首先将图像划分为多个8×8的矩阵。然后对每一个矩阵作DCT变换。变换后得到一个频率系数矩阵,其中的频率系数都是浮点数。
(3)量化:JPEG是一种利用了量化的图像有损压缩。JPEG的编码过程对原始的图像数据作离散余弦变换,然后对离散结果进行量化并作熵编码[13]。由于在后面编码过程中使用的码本都是整数,因此需要对变换后的频率系数进行量化,将之转换为整数。由于进行数据量化后,矩阵中的数据都是近似值,和原始图像数据之间有了差异,这一差异是造成图像压缩后失真的主要原因。
(4)熵编码:JPEG标准规定了两种熵编码方式,Huffman编码方式和算术编码方式。我们采用平均压缩比最高的哈夫曼编码,对出现概率大的字符分配字符长度较短的二进制编码,对出现概率小的字符分配字符长度较长的二进制编码,从而使得字符的平均编码长度最短,得到较好的压缩效果。Huffman编码的原理请参考数据结构中的Huffman树或者最优二叉树。
在整个JPEG压缩的流程中,需要对其内部函数进行修改,例如:对量值quality进行优化,满足不同用户需求进行可调压缩比的压缩算法等。
2.3网络发送/接收模块
在本系统中的网络传输部分分为网络发送模块和网络接收模块。网络发送模块负责将客户端处理后的图像转换成字节流的形式,利用封装好TCP/IP协议的网络Socket编程进行局域网的传送。网络接收模块负责接收从网络中发送过来的数据包,并调用相关函数,将接收到的数据送到图像数据缓冲区,进行解码后在客户端的图像显示模块界面进行接收预览,最后根据用户的选择来决定是否将该区域的图像存储在服务器的硬件上。网络发送接收模块的原理如图3所示。
整个传输的具体过程如下:
程序初始化,开启服务器,服务器端进入监听状态,等待连接。客户端开启,通过输入的IP地址和端口号来建立连接。客户端和服务器匹配成功建立连接后,客户端数据包Socket通过输入的IP地址和端口号进行图像数据的传输。由于发送的是图像数据,需要通过流的转换,将图像数据转换成数据流的形式进行传输。服务器等待接收网络中传输过来的数据并进行预览和存储等操作。直接关闭客户端或者服务器进行连接的断开。服务器接收到数据流后,在服务器端将数据流转换成图像数据进行显示或者存储。至此,整个会话流程结束。
图3 网络发送接收模块
2.4图像存储模块
跟大多数传输接收系统一样,存储模块作为必不可少的环节,该系统软件也是需要这个功能的。基于MFC编写的系统好处之一就是,可以直接利用MFC中的file.Write()函数,将接收到的图像进行存储。在网络传输系统中,将处理好的农业图像进行字节流的转换,得到转换后的字节流数据后再进行网络传输。服务器接收到客户端传输的字节流数据,通过write()函数,将字节流的buffer数据进行转换,得到最终的JPEG格式的图像。根据strFilePath变量中保存存储路径的字符串数据,将JPEG格式的图像存储在服务器相应的路径下。
2.5农业图像感兴趣区域压缩处理系统的实现
基于前面四个模块的设计与实现,最终通过Microsoft Visual Studio 2010编程软件,利用C++中的MFC模型,对系统的服务器端和客户端进行设计与编写,将所有功能通过用户交互界面进行展示。最终设计出如下界面。
将2.1-2.4设计的所有模块嵌入到该软件系统中。如图4所示,SVM+JPEG选项是该系统的最终目标功能,实现了农业图像的感兴趣区域分割可调压缩处理功能。并且,提供了JPEG压缩、SVM分割供用户查看阶段性的压缩和分割效果;同时,提供传统的grabCut算法选项,与SVM算法进行对比。
图4 软件客户端
图5 软件服务器
GrabCut算法是依据"GrabCut"-Interactive Foreground Extraction using Iterated Graph Cuts这篇文章来实现的。该算法利用了图像中的纹理(颜色)信息和边界(反差)信息,只要少量的用户交互操作即可得到比较好的分割结果。其函数单独运行时间大约20秒。
3.1实验测试与数据记录
为了验证本系统算法的实用性和高效性,以农业图像中的番茄为样本,对其压缩、分割以及两种算法结合的实验数据进行分析。番茄原图如图6所示,其大小为112KB。对图6进行SVM算法的分割,效果如图7和图8所示,RONI大小为96KB,ROI大小为72KB。对图7即RONI进行高压缩比JPEG的有损压缩,效果如图9所示,其大小为16KB。对ROI进行低压缩比的近无损压缩处理,保留了ROI区域信息的完整性,效果如图10所示,大小为24KB。最后,将压缩后的背景和前景进行结合并再次进行低压缩比压缩,得到最终完整的图像,如图11所示,大小为24KB。
为了体现本系统SVM核心算法的主要优点,与grabCut分割算法进行了比较。压缩算法均采用JPEG,然后将所有流程一次性完成,最终得到SVM_JPEG和grabCut_JPEG所需要的时间。图12为SVM_JPEG算法流程所需时间,1961ms;经过大量测试,平均运行时间大概为2000ms,即2s。图13为grabCut_JPEG算法流程所需时间,26749ms;经过大量测试,平均运行时间大概为26000,即26s,即融入系统中还比单独运行多了6秒之多。同时,切割效果也有明显的差别,用grabCut分割算法切割后,效果如图14所示。与图8完美的分割效果相比,效果差强人意。为了体现JPEG对ROI进行可调压缩比算法的优势,与固定压缩比的JPEG压缩算法比较。采用固定压缩比的JPEG算法如图15所示,大小为92KB。采用高低压缩比相结合的可调压缩比JPEG算法如上述图11所示,大小为24KB。相比之下,可调压缩比JPEG算法压缩目标图像之后的图像大小所占容量更小,也足以说明该压缩算法的优势之一。
图6 未经过处理的原图
图7 SVM分割背景算法(RONI)
图8 SVM分割前景算法(ROI)
图9 JPEG压缩背景算法
图10 JPEG压缩前景算法
图11 SVM_JPEG算法结果
3.2数据比较与结果分析
(1)图7 RONI图像大小92KB压缩到图9的16KB,压缩比为5.75:1,其高压缩比的JPEG算法能够满足高压缩比的要求了;实现起来也比其他压缩算法相对快速简单,因此对RONI使用高压缩比JPEG算法是相对较佳的做法;
图12 SVM_JPEG算法运行时间
图13 grabCut_JPEG算法运行时间
(2)图8 ROI图像大小72KB压缩到图10的20KB,压缩比为3.6:1,对比图8和图10,ROI采用可调压缩比的近无损压缩保留了感兴趣区域图像数据的完整性,同时也保留了该区域的清晰度;
(3)对比图11和图15的实验结果可知,与固定压缩比的JPEG算法比较,可调压缩比的压缩算法在保留感兴趣区域信息完整的同时,其图像大小也降低了近5倍;
(4)对比图12和图13的实验结果可知,与现有的grabCut分割算法比较,SVM机器学习算法展示了它的优势。从大量的测试结果看,grabCut平均用26秒处理的图像,SVM平均只用了2秒而已,可见SVM算法具有较快的运行效率;
(5)对比图8和图14的实验结果可知,SVM算法能够完美地切割出感兴趣区域,而grabCut算法尚存在一定的瑕疵;
(6)原图图6进行SVM分割JPEG压缩处理后,从112KB变成图11的24KB。压缩比为4.7:1,从总体上看,实现了保留原图像感兴趣区域信息完成的同时,将图像大小压缩到了原来的1/5。在田间作业传输量以及传输速率有限的情况下,能够有效地减少传输量以及提高传输速率。
图14 grabCut分割算法
图15 固定压缩比JPEG算法
本文对SVM算法进行了研究并实现,达到了比较完美的感兴趣区域(ROI)识别与分割效果。对JPEG压缩算法进行研究并实现,达到了对农业图像背景区域(RONI)的有损压缩功能,并取得了3.6:1-5.75:1之间的可调压缩比。整个流程在实现完美分割效果的同时,既克服了网络带宽的瓶颈,节省网络资源,还降低了压缩传输成本,减少节点耗能。实验结果表明,本文设计的系统所使用的SVM_JPEG算法,平均能够在2秒内实现所有处理,提高了传输过程中的传输速率。同时,该系统用C++语言进行编写,对下一步课题组后期农业现场图像系统移植到嵌入式系统上提供了很大方便。因此,本方案在低成本农业图像采集传输方面具有较好的实用价值。
参考文献:
[1]刘直芳,王运琼,朱敏.数字图像处理与分析[M].北京:清华大学出版社,2006.
[2]BRINDHA B,RAGHURAMAN G.Region Based Lossless Compression for Digital Images in Telemedicine Application[C].IIEEE.Communications and Signal Processing(ICCSP),2013 International Conference on Communicationand Signal Processing,April 3-5,2013.Melmaruvathur,India:IEEE Press,2013:537-540.
[3]SHAN Y,TSAI K,WU J.A New Seeded Region Growing Algorithm for Large Object Segmentation[C].IEEE.Biomedical Engineering and Informatics(BMEI),2011 4th International Conference on Biomedical Engineering and Informatics.Shanghai,China:IEEE Press,2011:47-51.
[4]魏津瑜,施鹤南,苏思沁.基于改进算法的自动种子区域生长图像分割[J].中南大学学报:自然科学版,2013,44(z2):308-312.
[5]薛志东,隋卫平,李利军.一种SVM与区域生长相结合的图像分割方法[J].计算机应用,2007,02:463-465.
[6]Xiao Deqin,Huang Shunbin,Yin Jianjun,Feng Jianzhao,High Resolution Vision Sensor Transmission Control Scheme Based on 3G and Wi-Fi,Transactions of the Chinese Society of Agricultural Engineering,2015(4):167-172.
[7]肖德琴,黄顺彬,殷建军.一种嵌入式应用高分辨率农业图像采集节点设计.农业机械学报,2014.02:276-281.
[8]Shinn-Ying Ho,Kual-Zheng Lee.Design and-Analysis of an Efficient Evolutionary Image Segmentation Algorithm[J].The Journal of VLSI Signal Processing,2003,35(1):29-42.
[9]徐国雄,王海娜,胡进贤.一种基于混合方法的彩色图像分割算法——结合分水岭算法、种子区域生长和区域合并的混合方法[J].计算机科学与应用,2013,03(02):134-138.
[10]BJ.Devereux,G.S.Amable,C.Costa Posada.An Efficient Image Segmentation Algorithm for Landscape Analysis[J].International Journal of Applied Earth Observations and Geoinformation,2004,6(1):47-61.
[11]罗倩玲.JPEG编码技术与矢量量化编码方法比较[J].电子测量技术,2005(4):35-37.
[12]张巧芳,李光耀,丁美林,等.基于单幅图像的三维浏览图生成算法[J].计算机技术与发展,2010,20(1):22-24.
[13]赵珊,赵倩.基于DCT系数的JPEG图像检索算法[J].计算机工程,2010,36(19):190-192.
林探宇(1994-),男,广东梅州人,本科,研究方向为网络工程
With the rapid development of science and technology,image processing technology becomes increasingly more mature.Currently,there are lots of researches on the compression of medical images and remote sensing image based on region of interest,but similar researches on agriculture image segmentation and compression are relatively few.Presents a system on scalable compressing region of interest of agricultural images.Segments the agriculture images into region of interest(ROI)and non-ROI(RONI),uses the support vector machine SVM model;then,applies JPEG image compression algorithm on the ROI with a scalable compression ratio and RONI with a high scalable compression ratio,and combines these two regions into an integral agricultural image;transmits the agricultural image with a C/S model,realizes the remote transmission of images.In our experiments,realizes the compression of ROI with a scalable compression ratio ranging from 4.7:1 to 5.75:1,and this technology allows the whole process to be finished within 2 seconds,which improves the transmission rate and thus has a broad application prospect.
Keywords:
the Compression of Region of Interest;SVM;JPEG Image Compression Algorithm;the Remote Transmission
Design and Implementation of a Software System on Compressing Region of
Interest of Agricultural Images
ZENG Ji-ye,XIAO De-qin,LIN Tan-yu
(College of Mathematics and Informatics,South China Agricultural University,Guangzhou 510642)
Abstract:
随着科技水平的快速发展,图像处理技术也愈加成熟。目前,在基于感兴趣区域的图像压缩对医学图像、遥感图像方面进行较多的研究,但是在农业图像方面的感兴趣分割以及压缩算法研究较少。设计一个压缩比可调的农业图像感兴趣区域压缩处理系统,首先采用支持向量机SVM的模型,对农业图像进行感兴趣区域(ROI)与非感兴趣区域(RONI)的分割处理;再对感兴趣区域采用可调压缩比的JPEG图像压缩算法进行压缩处理,对非感兴趣区域采用高压缩比的JPEG图像压缩算法进行压缩处理,然后将两个区域进行结合,形成完整的农业图像。最后,将处理后的农业图像进行客户端/服务器模式(C/S模式)传输,实现远程传输图像的功能。实验展示,实现4.7:1至5.75:1之间的感兴趣区域(ROI)可调压缩比功能,并能在2秒内实现所有处理,提高传输过程中的传输速率,具有一定应用前景。
基金项目:
国家级大学生创新项目(No.201410564287)、国家级星火计划项目(No.2013GA780002、No.2015GA780002)
文章编号:1007-1423(2016)15-0044-07
DOI:10.3969/j.issn.1007-1423.2016.15.012
作者简介:
曾基业(1992-),男,广东惠州人,本科,研究方向为网络工程
通讯作者:肖德琴(1970-),女,重庆人,博士,教授,研究方向为计算机网络、无线传感器网络、网络安全
收稿日期:2016-01-19修稿日期:2016-05-15