您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 基于FPGA的全景视频图像拼接的设计与实现-电子设计工程
电子设计工程ElectronicDesignEngineering第26卷Vol.26第2期No.22018年1月Jan.2018收稿日期:2017-03-02稿件编号:201703030作者简介:李勇(1982—),男,甘肃宁县人,硕士,高级技师,讲师。研究方向:通信、网络工程。近年来视频处理技术日新月异,以全景式、沉浸式用户体验为对象的视频技术开发已成为研究热点。FPGA器件以高性能、高可靠性、高运行速度、低设计周期、低成本和设计灵活等已成为视频图像处理的优先选项。目前实时全景摄像机已充分融入网络传输、云计算和大数据等新兴技术,发展迅猛。本次设计以FPGA为平台,采用SIFT算法,对系统采取优化设计,提出一种拼接全景视频图像的改进方法,旨在探索弥补在拼接中的实时性低的不足。设计中借助ARM平台来辅助进行算法换算及图像信号的压缩和网络传输,将图像拼接参数送达FPGA最小系统处理最终呈现出实时全景图像。文中重点探究FPGA平台中的全景图像的拼接模块部分。1视频图像拼接算法尺度不变特征转换(ScaleInvariantfeaturetransform,SIFT)算法是由DavidG.Lowe创立的,它有以下几个基本步骤:1.1构建图像尺度空间SIFT算法中对图像的尺度构建是通过高斯算子的差分算子DOG算子实现的,G(x,y,σ)为高斯算子,D(x,y,σ)为差分算子。σ是尺度因子,它的较大值表示视频图像的整体轮廓特点,它的较小值显示图像的局部细微特点。G(x,y,σ)=12πσ2e-x2+y22δ2(1)基于FPGA的全景视频图像拼接的设计与实现李勇,王磊,钱罕林(新疆轻工职业技术学院信息与软件分院,新疆乌鲁木齐830021)摘要:针对多端全景摄像机在视频图像拼接过程中的耗时长的问题,探索采用一种设计方法,通过从算法和系统优化设计入手,采用简化的SIFT算法,并且将FPGA平台与此算法计算分离,转而由ARM来承担图像配准参数的计算,由FPGA平台依据参数结果进行全景视频图像的拼接。本文涉及了应用FPGA系统设计实现对具体参数的接收、计算和对视频图像的缩放、平移以及最终的仿真调试等。实验表明:全景视频图像经过这种方法拼接后能实时显示在屏幕上且效果良好。关键词:FPGA;全景视频;图像拼接;SIFT算法中图分类号:TN911.73文献标识码:A文章编号:1674-6236(2018)02-0080-04ThedesignandimplementationforthesplicingofthepanoramicvideoimagesbasedonFPGALIYong,WANGLei,QIANHan⁃lin(DepartmentofInformationandSoftware,InstituteofXinjiangIndustryTechnicalCollege,Urumqi830021,China)Abstract:Toovercomethetime-consumingproblemencounteredinmulti-camerapanoramicimagingsystem,startingfromalgorithmandsystemoptimization,usingthesimplifiedSIFTalgorithm,separatingtheFPGAplatformandthecalculation,theimageregistrationparametersarecalculatedbyARM,accordingtotheresultoftheparameter,theFPGAsystemisusedtorealizethepanoramicvideomosaic.Thedesignisinvolvedinthevideoimagescaling,translationandreceptionoftheparameters,thecalculationmoduledesignandsystemsimulationdebugging,etc.Theexperimentalresultsshowthatthepanoramicvideoimagescanbedisplayedonthescreeninrealtimeandtheeffectisgood.Keywords:FPGA;panoramicvideo;imagesplicing;algorithmofSIFT--80D(x,y,σ)=(G(x,y,kσ)-G(x,y,σ))∗Q(x,y)(2)1.2检测尺度空间关键点由上一步可以逐渐构建高斯金字塔M组每组N层,在除第1层和第N层以外的各层像素点的邻域最值点位极值点,也叫关键点。在关键点确定以后,需要除去低对比度点。对比度由||D(Xˉ)表示,由极值点X的尺度空间函数D(X)的泰勒展开求导,导数为0得Xˉ,一般情况下出去的第对比度点是||D(Xˉ)≤0.03的极值点D(X)=D+∂DT∂XX+12XT∂2D∂X2X(3)Xˉ=-∂2D-1∂X2∂D∂X(4)D(Xˉ)=D+12∂DT∂XXˉ(5)1.3确定关键点的方向因旋转图像的不变性原则,关键点的确立需要贯以方向性描述。通常为保证画面配准精确度的需要,关键点的方向应用直方图法计算。统计区域为关键点的邻域圆,半径为1.5σ。将该圆区域均匀划分为36个扇圆,邻域点对关键点方向的参与度与二者距离成高斯递减,同时以超过直方图内80%的方向统计值作为其辅方向。1.4为已确定的各关键点生成特征点描述子关键点同向坐标下,切离出16×16邻域子区域,每部分再均分为8个扇圆,根据直方图估量不同区域对象的权重。再由直方图计算统计各邻域子区域与关键点的距离得出128维向量。通过完成对所有关键点的128维向量生成,最后由相似度检测函数得出图像相似度,以实现图像配准。2全景视频图像拼接模块的设计及FPGA实现如图1所示为FPGA最小系统内主要功能整体模块设计框图。FPGA最小系统主要接受图像配准参数信号和视频码流,同时根据此参数将多路视频信号进行拼接处理形成拼接后视频码流。系统内的拼接功能模块主要依据配准参数估量图像的裁剪、缩放和移位等状态参数;DDR2SDRAM模块为进行32bits数据的存取工作;视频拼接模块主要进行图像平移和缩放,由输出显示模块来显示输出,同时涉及后端视频信号的压缩和网络通信传输。图1FPGA内部各主要功能关系模块框图2.1图像配准参数接收模块设计图像配准参数接收模块先变换收到的串行信号为并行信号,得到宽12bit的配准信号,在配准信号前置有宽4bit的配准标记。由不同的配准标志解析得到如通道垂直和水平平移及缩放参数,如图2RTL级框图所示,spi_transmit_start信号起作用时为配准参数实际工作阶段,来完成以上处理,并从receive_finish端回复发送处理完成。2.2图像配准参数计算模块设计图像配准参数计算模块主要用来处理得出图像平移及裁剪参数,而缩放参数是借助ARM系统实现的,以上都是以SIFT算法为依据的。通道1-5针对参照基,由绝对位移的最高位判定相对于通道0的移动,将最大或最小绝对位移的通道的上沿作为图像通道0-5整体的上沿。由RTL级框图,CH0_vertical_move-CH5_vertical_move表示输出通道0-5宽12bit的相对水平位移参数信号,CH0_horizontal-CH5_horizontal则表示输出通道0-5宽12bit的相对垂直位移参数信号。在图像拼接时为了保证实时性,需对图像冗余部分进行裁,CH0_top-CH5_top为垂直裁剪的起点。2.3图像缩放模块设计模块使用双线性差值算法属于逆向映射法,DDR2SDRAM存放原始图像,异步FIFO完成缓存用来存放待处理的数据。设计出2组RAM,每组含8×1024bit的RAM一个和8×512RAMbit的两个,前者寄存亮度值Y,后者寄存色差值Cb和Cr。图像缩放采取先垂直再水平的方式设计,采用状态机实现对RAM的读写,新像素值通过图像内插法采集垂直和水平状态缩放机传输出的像素值对应权值计算。如图3的RTL级框图data_weight为像素点对应的权值。2.4图像平移模块设计模块由传输时序对像素阵列进行填充实现平李勇,等基于FPGA的全景视频图像拼接的设计与实现--81《电子设计工程》2018年第2期移,如图3的RTL框图所示,参考信号传输时序和平移参数,视频图像产生同步信号(帧)vs、同步信号(行)hs和有效信号de。CH0width-CH5width为裁剪后通道0~5的图像宽度。在各通道读请求信号CH0_rdreq-CH5_rdreq发出邀请两周期后在CH0_ycber-CH5_ycber输入有效数据,处理后由ycber端输出并送入下一模块。3视频拼接模块功能仿真视频拼接模块功能仿真包含有对参数接收模图2图像拼接模块子模块RTL级顶层框图图3模块功能仿真波形图--82块、参数计算模块、缩放和平移模块以及与ARM的接口模块等的仿真。Spi_transmit_start信号起作用后,参数接收模块开始工作。receive_finish信号呈1时此接收工作完成。接下来,图像拼接计算模块依据此参数结果快速计算平移和裁剪参数。视频图像缩放模块在缩放时在像素点和权重值输入的3个时钟以后得出新的像素。根据拼接参数完成0~5路图像的平移。CH0_rdreg-CH5_rdreg六路读申请信号时序与平移参数的准确协作保证了视频图像的平滑输出,然后送入ARM系统。图4实时全景视频拼接在板调试结果如图4所示为在板调试结果画面,全景视频图像经由QuartusIIEDA综合的sof文件被载入FPGA芯片实现在板调试后显示图像整体拼接效果达到预期。4结束语本次设计成功实现了一种FPGA与ARM的协同配合的方法,基于SIFT算法,由ARM计算图像配准参数,再由FPGA根据参数完成缩放、平移等拼接处理,快速有效地实现了对全景视频图像的拼接。因为多端全景摄像机的结构固定,其产生的系列图像相对稳固,基于此特点而对画面拼接前的配准过程进行了简化,以精简算法和转变工作方式为突破进行了一种新的尝试,有一定的应用研究价值和借鉴意义。参考文献:[1]贡镇.基于FPGA的实时视频图像采集与显示系统的设计与实现[J].现代电子技术,2013,36(13):46-48.[2]陈全兵.基于FPGA的高清实时全景视频拼接的研究与设计[D].成都:电子科技大学,2015.[3]冯雁军,周清海,孙伟昶,等.FPGA平台的实时全景视频系统设计[J].电子产品世界,2013(2):72-74.[4]张雄辉,郑力新,周凯汀.基于区域划分的快速图像插值算法[J].微型机与应用,2013:38-40.[5]陈全兵,习友宝.基于双线性内插算法的多路视频的缩放设计[J].电视技术,2015,39(1):43-46.[6]DonaldG.Bailey.DigitalforembeddedimageprocessingonFPGA[M].原魁,何文浩,肖晗.北京:电子工业出版社,2013.[7]Meyer-baeseU.Digitalsignalprocessingwithfieldprogrammablegatearrays,thirdedition[M].刘凌,译.北京:清华大学出版社,2012.[8]RichardE.Woods,StevenL.Eddins.DigitalImageProcessingUsingMATLAB[M].北京:电子工业出版社,2012.[9]何宾,陶丹,彭勃.高实时性F-SIFT图像拼接算法[J].红外与激光工程,2013,42(2):440-444.[10]崔得龙,弓云峰,左敬龙.基于改进SIFT的图像拼接算法[J].电子设计工程,2013,21(2):34-37.[11]党建武,宗岩,王阳萍.基于SIFT特征检测的图像拼接优化算法研究[J].计算机应用研究,2012,29(1):329-332
本文标题:基于FPGA的全景视频图像拼接的设计与实现-电子设计工程
链接地址:https://www.777doc.com/doc-4664693 .html