<nobr id="ptphf"><del id="ptphf"><delect id="ptphf"></delect></del></nobr>
    <listing id="ptphf"></listing>

    <p id="ptphf"></p>
    <b id="ptphf"><del id="ptphf"></del></b>

      <pre id="ptphf"><menuitem id="ptphf"><meter id="ptphf"></meter></menuitem></pre>
      <del id="ptphf"><cite id="ptphf"></cite></del>
      <form id="ptphf"></form>
      <p id="ptphf"><var id="ptphf"><progress id="ptphf"></progress></var></p>

      <form id="ptphf"></form>
      <noframes id="ptphf"><noframes id="ptphf"><ins id="ptphf"><mark id="ptphf"></mark></ins><form id="ptphf"><b id="ptphf"><dfn id="ptphf"></dfn></b></form>
        <ruby id="ptphf"><menuitem id="ptphf"></menuitem></ruby>

        电子发烧友网>嵌入式技术> > 正文

        基于DSP和FPGA组合的嵌入式图像处理平台的实时多目标识别算法

        2021年10月29日 08:52 ? 次阅读

        基于嵌入式图像处理平台的实时多目标识别算法

        人工智能技术与咨询?

        本文来自《科学技术与工程》,作者?王旭辉等

        摘 要?提出了一种适用于空间观测任务的实时多目标识别算法,它基于DSPFPGA组合的图像处理硬件平台,运用散点聚类、轨迹跟踪、特征提取技术快速识别目标。对算法的功能需求、数据流向、运算流程和处理结果,进行了详细阐述。实践结果表明,该识别算法具有很强的实用性。

        关键词?多目标 运动轨迹 实时滤波 嵌入式平台

        1 功能需求

        空间观测对象复杂多变,且真、伪两种目标在尺寸、亮度、形态方面既有区别又十分相似,观测的背景也起伏多变。算法针对的工况如下:零散目标数量多(K级),但个体像素少(<100 pix);真目标形态有变化但不规则,与伪目标形态经常一致;真目标在亮度方面忽明忽暗有起伏,而伪目标单体灰度起伏小,但群体表现则灰度有高有低;但两者速度和方向有差异。

        由于图像处理需进行全幅传输、存储和计算,时间消耗大,而用户对算法实时性要求高,因此必须充分利用图像传输时间,并避免耗时过多的运算,借鉴国外空间宽视场相机[1]的图像处理方案,对图像流做一次数据量降级处理,从M级降低到K级,且边传输边流水线式处理;避免了集中处理造成的时间延迟,降低了错误信息汇报的风险。

        2 整体架构

        硬件平台由DSP处理器+FPGA及其外围器件组成的高速运算电路共同实现[2],它为软件编程、各类数据流控制及复杂对象的识别算法提供基础保证。多目标识别算法在物理空间运行上分成两部分:图像预处理算法(FPGA)和轨迹识别算法(DSP),与嵌入式图像处理硬件构成一个完整的图像处理系统共同完成空间观测任务,识别算法主要负责对空间监测图像的分析和判读,重点是滤除背景,对潜在目标进行分类、识别后、剔除伪目标,存储、记录真实目标并将其报告给相关系统。其识别的过程可分为五个步骤:帧内空间滤波、帧内阈值分割、帧内散点聚类、帧间轨迹编排和帧间目标判定。

        软件结构如图1所示。

        图1 多目标识别算法的软件结构和分配布局示意图

        3 算法步骤

        3.1 图像预处理

        该算法依托FPGA实现,对每帧原始图像进行流水线式“高通滤波”和“阈值分割”,处理后的次级图像存到外部“FIFO”中。图像预处理的依据源于“空间图像是低频背景与高频奇异点的综合结果”[3],因此部分借鉴彭嘉雄先生的高通滤波器模板,对图像做类似卷积计算,记矩阵h,维数5×5,处理公式如下

        ?

        式中f(i,j)为输入图像,G(i,j)为卷积后的结果,threshold即阈值,阈值的选取有两种方式:一种是人工干预,从DSP端通信口输入;另一种是自适应调整,以图像均值为基础,综合工程经验的“可识别信噪比”倍率。

        3.2 聚类

        预处理后的次级图像,由DSP处理器从FIFO中取走做进一步处理——“聚类”,即根据次级图像提供的零散点位置、灰度信息,经过连通和聚合,初步收集单帧内的目标综合特征,为下一步多帧多目标识别奠定基础。该聚类算法中“段表”的意义是记录水平维信息,而“邻接表”的意义则反映竖直维信息;经过两次循环遍历,可以对V型、Ф型和λ型等主流形态目标进行稳定的形心跟踪,且具有执行速度块、节省存储空间等优点,算法流程如图2所示。

        3.3 轨迹编排

        聚类后获得的潜目标信息存储在SDRAM中,由于伪目标和真目标在几何特征上的差异尚不足以判断目标真伪,还需要根据多帧积累后的运动轨迹和速度差异,去“伪”存“真”。这一过程也由DSP实现。“轨迹编排”完成“轨迹矩阵初始化”、“轨迹新建”、“轨迹更新”和“轨迹删除”四项主要功能。进入目标搜索模式后的首帧先进行“轨迹矩阵初始化”:初始化的内容分两步先完成矩阵内全部变量清零,然后根据最新单帧潜目标信息组(及前面聚类成果)里的数据构建初始轨迹矩阵;从第二帧开始,即当“初始轨迹矩阵”成型后,逐帧根据潜目标和已分类目标的特征,或更新、或新建、或删除轨迹,不断更新轨迹矩阵中的轨迹条数、轨迹长度、轨迹生命值等变量。改动轨迹管理矩阵的条件见表1。

        表1 轨迹新建、更新及删除条件

        ?

        图2 散点聚类功能的处理流程图

        其中轨迹管理器采用的是结构体和数组的结合,单条轨迹长度限定为固定值,在充满轨迹长度数组极限前,轨迹点数不断递增;充满轨迹长度数组后用最新点替代最旧点,本文采用这种封闭式的数据结构,是出于可靠性的考虑,避免使用开放式指针及链表可能带来的“溢出泄漏”风险。针对空间目标特性的不连续情况,将轨迹的生命值区分为“活跃态”、“休眠态”和“终结态”;这三种状态分别对应的判定条件为:不断更新,间歇更新和永不更新。图像中出现的噪点因其出现的偶然和随机性,仅存在于“休眠态”,数帧之后因不再更新,最终会转入“终结态”;而新出现的潜目标,在经历连续更新“额定门限帧数”后,由“休眠态”转入“活跃态”。由于本任务帧频较高及视场张角较大的特点,帧与帧时间间隔内目标移动的范围较小,可以用“相邻原则”来更新标号。完整的“轨迹编排”流程如图3所示。

        3.4 统计分析

        图3 轨迹编排功能的处理流程图

        对“轨迹管理器”中处于“活跃态”的轨迹按“轨迹条数”进行两次遍历,分别统计速度和方向,进而更新置信度,然后根据置信度最值确认真实目标(这里选取速度和方向做特征量的原因是真、伪目标在灰度特征上的差异不显著)。在实际工程使用中,为降低虚警率,置信度在不满足“轨迹长度累计总量门限”时,暂不对外告警;在置信度配置方面,由于系统安装平台的晃动对“方向”有贡献,因此在置信度设置时,速度的权重高于方向。具体流程如图4所示。

        4 测试结果

        图4 轨迹统计功能的处理流程图

        对该算法的验证在地面模拟时,以光学模拟为主,背景主要包含两种光源的起伏,并随机添加针状噪声,真、伪目标源在9 000帧里面累计数量按100颗仿真,单帧内最多按32颗计算。伪目标的空间分布和亮度幅值以亮星星表为依据。图5列出的是对9 000帧中的某一帧图像做预处理后的效果,初步验证了FPGA中图像预处理算法对背景的剔除功能。

        对轨迹识别算法的考核是假设真目标做水平方向往复运动,伪目标做垂直方向运动,在仿真时,为模拟真实情况,对安装平台做正弦方式晃动。图6列出了轨迹管理矩阵中9 000帧的全部历史记录。其中蓝色的为真目标轨迹,结果表明轨迹算法能对运动有差异的真伪目标做出正确判断,保持在测试过程中,近99.4%的时间内稳定汇报真实目标信息。

        5 结论

        提供的算法充分考虑了工程实际情况和多目标实时识别的特点,结合嵌入式硬件处理平台已经参与并完成对地面模拟目标和空间真实目标的验证,为空间观测领域的图像处理和识别提供了一种具有实用价值的嵌入式开发系统。

        图5 图像预处理后的效果

        图6 多目标识别过程中的轨迹图(尺寸5×5;目标数量100;累计9 000帧;含平台抖动)

        【转载声明】转载目的在于传递更多信息。如涉及作品版权和其它问题,请在30日内与本号联系,我们将在第一时间删除!

        下载发烧友APP

        打造属于您的人脉电子圈

        关注电子发烧友微信

        有趣有料的资讯及技术干货

        关注发烧友课堂

        锁定最新课程活动及技术直播

        电子发烧友观察

        一线报道 · 深度观察 · 最新资讯
        收藏 人收藏
        分享:

        评论

        相关推荐

        stm32mp1 Cortex M4开发篇7:窗...

        写在前面:本文章为《ARMCortex-M4裸机开发篇》系列中的一篇,,全系列总计14篇。笔者使用的....
        发表于 2021-10-29 17:09? 5次阅读
        stm32mp1 Cortex M4开发篇7:窗...

        开源!ZYNQ IgH EtherCAT主站方案...

        前言创龙科技已基于IMX8、ZYNQ、AM5728、AM5708、AM437x、AM335x、T3/....
        发表于 2021-10-29 17:06? 3次阅读
        开源!ZYNQ IgH EtherCAT主站方案...

        嵌入式核心板在麻醉系统中的应用

        在当今复杂的外科手术过程中,麻醉机是现代医院进行手术全身麻醉的重要工具。其主要功能是为患者进行吸入麻....
        发表于 2021-10-29 16:44? 18次阅读
        嵌入式核心板在麻醉系统中的应用

        虹科应邀参加第三届ST工业峰会

        虹科应邀参加第三届ST工业峰会,并进行相关主题的演讲活动。现虹科诚挚邀请您一起参与这场技术盛会。 届....
        发表于 2021-10-29 16:29? 54次阅读
        虹科应邀参加第三届ST工业峰会

        RISC-V MCU开发实战(四) :步进电机

        软件平台: MounRiver Studio(MRS),硬件平台: CH32V103开发板、ULN2003步进电机驱动板、28BYJ-48步进电...
        发表于 2021-10-29 13:41? 101次阅读
        RISC-V MCU开发实战(四) :步进电机

        开源!ZYNQ IgH EtherCAT主站方案分享

        前 言:创龙科技已基于IMX8、ZYNQ、AM5728、AM5708、AM437x、AM335x、T3/A40i等平台提供了开源Ethe...
        发表于 2021-10-29 11:17? 0次阅读
        开源!ZYNQ IgH EtherCAT主站方案分享

        FPGA中高斯滤波算法的实现

        1.高斯滤波算法的实现 前面讲的均值/中值滤波,对于滤波窗口内每个像素的权重都是一样的。但是噪声在图....
        发表于 2021-10-29 10:59? 172次阅读
        FPGA中高斯滤波算法的实现

        AD9910利用FPGA控制

          现打算利用FPGA控制AD9910。FPGA刚开始入门,求一个Verilog控制代码代码实现单音模式输出即可。...
        发表于 2021-10-29 10:43? 0次阅读
        AD9910利用FPGA控制

        净利润预增266% MCU占电表市场六成

        电子发烧友网报道(文/莫婷婷)今年8月,复旦微电发布上市后首份财报显示,公司2021年上半年财报营业....
        发表于 2021-10-29 10:11? 142次阅读
        净利润预增266% MCU占电表市场六成

        mcu芯片是指什么芯片

        Mcu是一个专业术语,一般不是行业内人士的话可能不知道这个是干嘛的。其实mcu就是单片机,它的英文是Microcontrolle...
        发表于 2021-10-29 09:41? 0次阅读
        mcu芯片是指什么芯片

        强者恒强!市场稳固的Binder 圆形连接器巨头

        电子发烧友网报道(文/李宁远)圆形连接器也可以称为圆形航空插头或圆形航插,是基本结构为圆柱形、具有圆....
        发表于 2021-10-29 09:37? 243次阅读
        强者恒强!市场稳固的Binder 圆形连接器巨头

        嵌入式开发中如何自己制造智能照明系统

        项目背景 显而易见,智能照明的需求在日渐增长,到2025年,全球智能照明的市场规模将达到370亿美元....
        发表于 2021-10-29 09:34? 224次阅读
        嵌入式开发中如何自己制造智能照明系统

        .nodemcu使用mqtt协议

        文章目录前言nodemcu引脚介绍前言已经通过3篇博客,搭好了后端和前端的物联网,网络相关的东西了。最后一篇讲经济便宜...
        发表于 2021-10-29 08:53? 0次阅读
        .nodemcu使用mqtt协议

        MCU需求描述与功能分析

        一、需求描述MCU需要接收来自CPLD的升级固件数据CPLD对MCU只进行发送数据,不接收MCU的数据CPLD...
        发表于 2021-10-29 08:48? 0次阅读
        MCU需求描述与功能分析

        MCU的串口外设

        1.MCU有串口外设的话,在加上电平转换芯片,如MAX232、SP3485就是RS232和RS485接口了。2.RS485采用差分...
        发表于 2021-10-29 08:40? 0次阅读
        MCU的串口外设

        LM317线性稳压电源的资料大合集,不看肯定后悔

        LM317总结Iadj一般为50uA输入至少要比输出高2V,否则不能调压。...
        发表于 2021-10-29 07:55? 0次阅读
        LM317线性稳压电源的资料大合集,不看肯定后悔

        如何为FPGA选择合适的电源管理方案呢

        如何为FPGA选择合适的电源管理方案0  背景    当项目中FPGA选型已确定,开始设计电路原理...
        发表于 2021-10-29 06:36? 0次阅读
        如何为FPGA选择合适的电源管理方案呢
        色在视频亚洲欧美-欧美色是免费视频-欧美精品视频 <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <文本链> <文本链> <文本链> <文本链> <文本链> <文本链>