×

双DSP平台的实时跟踪系统设计方案分析

消耗积分:1 | 格式:rar | 大小:0.3 MB | 2017-10-23

分享资料个

  实时跟踪系统中目标的捕获和跟踪是图像处理、计算机视觉和模式识别等领域的重要课题,在军事、工业、医学和交通等方面有着广泛的应用前景。传统的图像处理系统是一般是针对8位的数字图像,大多数的跟踪器采用TI公司所推出的优秀的高速数字信号处理芯片C6x系列DSP,TI公司提供了很多针对处理256灰度级图像的图像处理支持库,用户可以方便的调用里面的API函数,并通过CCS自带的调试工具进行简单快捷的调试,缩短程序的开发周期。由于信息技术的不断发展,人们越来越注重跟踪的精度和可靠性,高分辨率高精度的相机越来越受到人们的青睐,而对于大数据量的实时处理问题也伴随产生。
  本文针对分辨率为1024×1024的12位数字相机提供了一个实时跟踪系统平台,该平台的建立对后续算法的研究奠定了坚实的基础,由于目标本身的特点本文以重心法为例进行分析。
  1. TMS320C6203简介
  TMS320C6203芯片是TMS320C62x系列定点DSP中的一员。定点DSP在硬件结构上比浮点器件简单,具有价格低和速度快的特点,因而应用的最多。C62系列DSP的主要特点是在体系结构上采用了由TI公司研发的VelociTi甚长字(VLIW)结构。每个指令字包含多个字段(指令),字段之间相互独立,各自控制一个功能单元,因此可以单周期发送多条指令,实现很高的指令级并行效率。C6000的VLIW采用了类RISC指令集,使用大的统一的寄存器堆,结构规整,具有潜在的易编程性和良好的编译性能,在科学应用领域可以发挥良好的作用。300MHz时钟的C6203峰值性能可以达到2400MIPS(百万条指令/秒)。C6203有8个独立的功能单元,其中6个加法器,两个16位乘法器可以得到32位的结果,可以每周期执行8条32bit指令,专用存取结构,32个32bit通用寄存器,支持40bit ALU运算,支持位操作。由于多功能单元的并行操作,使DSPs在相同的时间内能够完成更多的操作,因而提高了程序的执行速度。除多功能单元外,流水技术是提高DSPs程序执行效率的另一个主要手段。
  DSPs采用了程序总线和数据总线分离的哈佛总线结构,可以同时取指和取操作数,片内提供256位的程序总线、2套32位数据总线和1套32位的DMA专用总线。灵活的总线结构大大缓解了数据瓶颈对系统性能的限制。
  C6203芯片片内提供多种功能强大的集成外设,包括3个多通道缓冲串口,两个通用计数器,一个32bit扩展总线,32bit高性能外部存储器接口(EMIF)提供了与SDRAM、SBSRAM和SRAM等同步、异步存储器的直接接口。
  随着DSPs应用的日益广泛深入和市场竞争的日趋激烈,TI公司推出了世界上第一个效率可达70%~80%的汇编语言级C编译器,它产生的代码的平均效率是其他DSPs编译器的3倍,另外,C6000独有的汇编优化器可以使开发者采用线性汇编语言得到近似标准汇编的性能,因而降低了开发难度。CCS的出现,提供了更加丰富和强有力的调试手段来提高程序调试的效率和精度,使应用程序的开发变成一件轻松而有趣的工作。
  2. 电视跟踪系统硬件结构
  本文实验所用到的高精度相机为DALSA公司生产的1M30相机,1024×1024协议,全局CCD结构,帧频为30fps,40MHz数据吞吐率,12位数字化,高灵敏度低暗电流,异步图像获取,外部触发结构,单12V“24V供电,多触发控制。
  3. 投影法及在捕获、跟踪系统中的应用
  投影法是一种简单而且容易实现的方法,设图像Image上的元素为的大小为m×n,则水平方向的投影与垂直方向的投影分别为:
  DSP1捕获系统设计如下:
  由于DMA传递数据的最大限度为0xffff,可将1024×1024大小的图像通过DMA分8次倒入DSP中,DSP1没有接到捕获命令的时候可以进行图像拉伸或目标位置预测等算法,协助和检验DSP2的跟踪;当DSP1接到自动捕获命令后进入捕获状态,分块累计直方图计算阈值,将图像二值化,然后通过投影法求取水平方向投影和垂直方向的投影,整场计算完毕累计投影值,找到水平方向投影最大值与垂直方向投影最大值的交界处,将该位置通过FIFO送给DSP2用于以后的跟踪。
  DSP2跟踪系统设计如下:
  当DSP2接到跟踪命令后进入跟踪状态,跟踪命令或由DSP1给出,或由鼠标通过串口通信强制跟踪,本文以初值256×256画跟踪窗,通过DMA传递数据将窗口内的图像转到片内寄存器进行处理。由于目标与邻近的背景之间一般有着很高的对比度,可以在跟踪窗内对物体进行识别。累计跟踪窗内的直方图,计算窗口内阈值将图像二值化计算目标重心位置,并通过投影法找到目标各个方向的边界,估算目标大小调整跟踪窗的尺寸。若跟踪窗内没有发现目标则向DSP1发出捕获命令。
  4.试验结果与展望
  经试验,基于双DSP平台的实时电视跟踪系统实时和准确性满足要求,能够及时送出脱靶量,延迟小,工作稳定,并且跟踪窗能够自动调节,有很好的跟踪效果。此平台满足自然背景下的目标识别和跟踪要求,但由于只使用了定点DSP必然有其算法的局限性,可再加入一片浮点DSP TMS320C6701设计多DSP平台,即可满足算法多方面的要求,如即将准备移植的运动目标姿态测量算法,可以在实时跟踪的基础上,实时给出目标旋转的角度和缩放大小。
  本文的创新点是:建立双DSP平台处理高精度高分辨率图像,两个DSP协调工作,由于图像较大,不能整场存入片内进行处理,因而利用分段累计投影法达到实时捕获和跟踪的目的。
 

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !

'+ '

'+ '

'+ ''+ '
'+ ''+ ''+ '
'+ ''+ '' ); $.get('/article/vipdownload/aid/'+webid,function(data){ if(data.code ==5){ $(pop_this).attr('href',"/login/index.html"); return false } if(data.code == 2){ //跳转到VIP升级页面 window.location.href="//m.obk20.com/vip/index?aid=" + webid return false } //是会员 if (data.code > 0) { $('body').append(htmlSetNormalDownload); var getWidth=$("#poplayer").width(); $("#poplayer").css("margin-left","-"+getWidth/2+"px"); $('#tips').html(data.msg) $('.download_confirm').click(function(){ $('#dialog').remove(); }) } else { var down_url = $('#vipdownload').attr('data-url'); isBindAnalysisForm(pop_this, down_url, 1) } }); }); //是否开通VIP $.get('/article/vipdownload/aid/'+webid,function(data){ if(data.code == 2 || data.code ==5){ //跳转到VIP升级页面 $('#vipdownload>span').text("开通VIP 免费下载") return false }else{ // 待续费 if(data.code == 3) { vipExpiredInfo.ifVipExpired = true vipExpiredInfo.vipExpiredDate = data.data.endoftime } $('#vipdownload .icon-vip-tips').remove() $('#vipdownload>span').text("VIP免积分下载") } }); }).on("click",".download_cancel",function(){ $('#dialog').remove(); }) var setWeixinShare={};//定义默认的微信分享信息,页面如果要自定义分享,直接更改此变量即可 if(window.navigator.userAgent.toLowerCase().match(/MicroMessenger/i) == 'micromessenger'){ var d={ title:'双DSP平台的实时跟踪系统设计方案分析',//标题 desc:$('[name=description]').attr("content"), //描述 imgUrl:'https://'+location.host+'/static/images/ele-logo.png',// 分享图标,默认是logo link:'',//链接 type:'',// 分享类型,music、video或link,不填默认为link dataUrl:'',//如果type是music或video,则要提供数据链接,默认为空 success:'', // 用户确认分享后执行的回调函数 cancel:''// 用户取消分享后执行的回调函数 } setWeixinShare=$.extend(d,setWeixinShare); $.ajax({ url:"//www.obk20.com/app/wechat/index.php?s=Home/ShareConfig/index", data:"share_url="+encodeURIComponent(location.href)+"&format=jsonp&domain=m", type:'get', dataType:'jsonp', success:function(res){ if(res.status!="successed"){ return false; } $.getScript('https://res.wx.qq.com/open/js/jweixin-1.0.0.js',function(result,status){ if(status!="success"){ return false; } var getWxCfg=res.data; wx.config({ //debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。 appId:getWxCfg.appId, // 必填,公众号的唯一标识 timestamp:getWxCfg.timestamp, // 必填,生成签名的时间戳 nonceStr:getWxCfg.nonceStr, // 必填,生成签名的随机串 signature:getWxCfg.signature,// 必填,签名,见附录1 jsApiList:['onMenuShareTimeline','onMenuShareAppMessage','onMenuShareQQ','onMenuShareWeibo','onMenuShareQZone'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2 }); wx.ready(function(){ //获取“分享到朋友圈”按钮点击状态及自定义分享内容接口 wx.onMenuShareTimeline({ title: setWeixinShare.title, // 分享标题 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享给朋友”按钮点击状态及自定义分享内容接口 wx.onMenuShareAppMessage({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 type: setWeixinShare.type, // 分享类型,music、video或link,不填默认为link dataUrl: setWeixinShare.dataUrl, // 如果type是music或video,则要提供数据链接,默认为空 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到QQ”按钮点击状态及自定义分享内容接口 wx.onMenuShareQQ({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到腾讯微博”按钮点击状态及自定义分享内容接口 wx.onMenuShareWeibo({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到QQ空间”按钮点击状态及自定义分享内容接口 wx.onMenuShareQZone({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); }); }); } }); } function openX_ad(posterid, htmlid, width, height) { if ($(htmlid).length > 0) { var randomnumber = Math.random(); var now_url = encodeURIComponent(window.location.href); var ga = document.createElement('iframe'); ga.src = 'https://www1.elecfans.com/www/delivery/myafr.php?target=_blank&cb=' + randomnumber + '&zoneid=' + posterid+'&prefer='+now_url; ga.width = width; ga.height = height; ga.frameBorder = 0; ga.scrolling = 'no'; var s = $(htmlid).append(ga); } } openX_ad(828, '#berry-300', 300, 250);