卡索practicos

热成像FPGA FLIR加速发展

挑战

加快实施先进的热成像过滤器和算法在FPGA硬件

解决方案

使用MATLAB开发、模拟和评估算法,并使用HDL编码器实现fpga上最好的算法

结果

  • 时间从概念到field-testable原型降低60%
  • 增强了几个小时,而不是几周
  • 代码重用从零增加到30%

“用MATLAB和高密度脂蛋白编码器我们更适应市场的需求。我们现在接受改变,因为我们可以把一个新的想法real-time-capable硬件原型在短短几周。工程有更多的快乐,所以我们增加工作满意度以及客户满意。”

尼古拉斯•Hogasten FLIR系统
原始图像(上)和图像在应用过滤器开发高密度脂蛋白编码器(底部)。

红外热成像摄像机广泛应用于商业应用程序,包括安全、消防、燃气泄漏检测和测试和测量。fpga在相机内过滤和处理信号由传感器和探测器。通常,将信号处理新概念转变成算法运行在实时生产相机是一个漫长的过程,因为硬件工程师必须算法开发的算法工程师转化为高密度脂蛋白,在没有深入了解的算法是如何工作的。

在FLIR系统,工程师在MATLAB开发和先进的模拟算法®然后迅速与高密度脂蛋白编码器fpga实现它们。“过去,我们很少会模拟展示给我们的客户,因为它可能需要很长时间对我们的思想,让它变成一个产品,”尼古拉斯说Hogasten,经理在FLIR图像处理技术。“最近,我们发现一个关键客户一些新热成像的模拟滤波器,我们曾经开发了最复杂的过滤器。客户欣喜若狂的时候,几个月后,我们向他们展示第一个相机处理这个新的滤波器,使用HDL编码器生成,相机就像MATLAB模拟执行的。”

挑战

FLIR的早期发展过程中困难源于脱节算法工程师开发新思想和算法和硬件工程师算法的fpga实现。降噪算法工程师将评估新技术或动态范围压缩然后手书面规范硬件工程师,他可能没有完全了解的算法。

“通常,FPGA实现不会执行像我们的模拟,我们从来不知道如果有问题或算法,实现“Hogasten说。“也,因为硬件工程师没有算法的深入了解,他们不知道什么是安全的假设做出优化。如果我们之后做了一个小的增强算法,大部分的HDL可能不得不重写。”

解决方案

FLIR建立了一个新的工作流开发fpga热成像算法使用MATLAB和高密度脂蛋白编码器。

算法工程师使用MATLAB的图像处理工具箱探索新算法基于形态学操作和多维图像过滤。

这些工程师选择实现的算法和识别算法组件映射到目标FPGA硬件。在这个分区,团队替换高级功能与MATLAB的图像处理工具箱支持代码生成的代码。万博1manbetx图像处理工具箱算法提供一个绝佳的参考,宽松FLIR的定制MATLAB代码的验证。

使bit-true模拟和分析,工程师们使用集成floating-point-to-fixed-point工作流在HDL编码自动转换浮点MATLAB算法定点MATLAB代码合并算法和数据类型使用定点设计师

在FL万博1manbetxIR支持其他测试环境使用,团队使用MATLAB编码器从生成的定点生成C代码和mex files MATLAB代码。

接下来,该团队从MATLAB算法生成synthesizable HDL代码使用HDL编码器。HDL代码然后在FPGA实现和测试,结果对定点MATLAB算法的结果进行了验证。

在一个相关的项目中,工程师们使用MATLAB编译器和图像采集的工具箱来构建一个应用程序,这个应用程序从相机和帧的吸引力,获得图像的过程他们使用各种算法,并显示结果。这个应用程序允许其他FLIR工程师评估算法的输入,即使他们没有安装MATLAB。

结果

  • 时间从概念到field-testable原型降低60%。“用MATLAB和高密度脂蛋白编码器,我们消除了一步翻译最初的算法的高密度脂蛋白,“Hogasten说。“现在算法开发人员可以自行产生FPGA原型,原型时间减少到60%。”

  • 增强了几个小时,而不是几周。“最近,我问我们的工程师做一个重要算法之一改变核心过滤,“Hogasten报告。“三小时后,他改变了在MATLAB和重新部署使用HDL编码算法的FPGA。以前,这种改变需要六个星期。”

  • 代码重用从零增加到30%。“我们现在有一个公共存储库的算法,简单的组件,以及MATLAB已经验证了HDL代码生成的代码,“Hogasten说。“以前,我们几乎没有代码重用,但是今天我们重用30%的MATLAB代码为其他项目产生高密度脂蛋白”。