声纳图像动态范围扩展与FPGA实现

网络与存储   作者:董琎琎 窦法旺 夏伟杰 崔海英 时间:2015-05-14来源:电子产品世界

编者按:本文针对成像声纳扩展图像动态范围和增强图像细节的需求,提出了一种基于开方运算的动态范围扩展方法。基于课题组研制的多波束成像声纳原理样机的研制,分析了数据动态范围压缩导致图像细节丢失的原因及其对成像质量的影响,采用JPL快速平方根近似算法改善了开方运算FPGA实现过程的资源占用和系统延时。最后,对改进设计方案进行了实验验证,通过多波束成像声纳系统的消声水池实验证明了本文动态范围扩展方法的有效性和可行性,系统成像质量改善明显,达到优化设计的预期目标。

  为了更清晰地反映图像显示动态范围对成像质量的影响,这里选取了一幅细节更为丰富的风景画面作为分析对象,按照声纳样机中的截取方法对图像进行处理,结果如图4所示,可以很明显地看到,在现在的截取方法下,无论如何选择截取位,都无法得到很好的成像效果,图4B中截取位为“6”,从湖中的倒影可以看到,画面的更多细节被保留了下来,但是由于大灰度值信号被截断,导致了数叶部分细节的模糊,而图4C中截取位为“8”,大灰度值的信号变化被体现出来,树叶的细节被体现,但是小灰度值的湖中倒影却丢失了。

  16位的波束值如何映射到8位的灰度值成为解决画面动态范围的关键问题,本文采用对波束值进行开方运算的方法来充分利用8位灰度信号的“表达”能力,如图5所示,可以看到采用开方运算的映射方法可以更连贯地表示波束值的变化,而且表示的分辨率更高,采用截取方法时得到的8位灰度数据仅能表示出169个不同的灰度值。

  采用开方方法时可以表示完整的256个灰度值,能够最大程度地保留画面的细节。开方运算映射方法的实验效果图如图6所示,可以看到开方运算后得到的8位灰度数据能够无失真地重现图像。

2 开方运算的FPGA实现

  平方根运算是科学计算和工程应用中的基本运算,广泛应用于图像处理以及信号处理等许多领域。大多数EDA软件都提供了开方运算的IP核来方便开发者,但普遍需要占用较大的系统资源,如ISE中的CORDIC IP核在本文的Virtex-6芯片中进行16位的开方运算时需要占用461对LUT-FF,而且需要10个时钟的延时。目前研究的开方算法主要有Newton-Raphson[7] ,SRT-Redundant方法[8-9]和Non-Redundant[10-11]方法等。本文拟采用JPL快速平方根近似算法[12]替代精确的IP核运算,以改善资源占用和系统延时。

  对的JPL近似规定为:

 (1)

  其中,

        (2)

  根据上式可知,计算A时不需要计算、,仅需根据I、Q的值进行近似逼近就可得到A。仿真得到I、Q在0-255范围内的误差(百分比)如图 6所示,可以看到算法的平均估计误差为0.7146%,在I与Q的大小非常接近的时候误差会增大,但是仍然能够满足系统的设计需要,而且I=Q的情况在实际运算中并不常见。

  图8所示为开方运算模块的ModelSim仿真波形图,可以看到开方运算共耗费4个时钟,第五个时钟有效时可以得到运算结果。图中的仿真数据中,I依次为:38、47、251、60、9、200、106,Q依次为:69、168、26、80、102、70、106,精确计算结果应该是79、174、252、100、102、212、150,图 7中计算结果为79、174、254、100、102、210、146,平均估计误差与上面的仿真结果吻合。

1 2 3

关键词: 成像声纳 动态范围 平方根 FPGA 波束成像 201505

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版