深度学习

AI视觉系统

利用图像采集卡和FPGA优化算力

实时处理海量数据是AI视觉应用面临的核心挑战。面对不断提升的相机分辨率和日益复杂的神经网络,构建高效的计算架构变得至关重要。具备集成式、灵活预处理功能的可编程图像采集卡可以专门解决现代AI视觉系统中的计算负载问题,从而在日常生产中提升性能、系统稳定性和可扩展性。

  • 阅读时间:约 28 分钟

关于优化AI视觉系统计算性能的关键要点

  • 性能最大化:在图像采集卡/FPGA上进行预处理,可降低延迟,即使在高分辨率和多相机配置下也能保持稳定的帧速率。

  • 减轻CPU和GPU的负载:将常规任务转移到图像采集卡上处理,可为复杂的AI算法释放宝贵资源。

  • 长期成本节约:减少对高端硬件的需求、降低维护难度以及提升可扩展性,使总运营成本降低多达80%。

  • 高能效:FPGA的功耗远低于传统的CPU/GPU方案,因此运行时的散热和能耗要求也更低。

  • 经过验证的集成方案:开放式API、灵活的软件工具以及丰富的应用案例,能够快速、可靠地集成到现有系统中。

通过理想的计算负载分配方式实现卓越性能

工业级AI视觉系统必须实时处理高的数据率和复杂的AI算法。随着相机分辨率的提高,数据量不断增长,对带宽的要求也相应提高;而更高的带宽又能支持处理和传输更大数据量。与此同时,全面检测和即时反馈可能会使传统的CPU或GPU架构达到性能和延迟的极限,在多相机配置或部署深度学习模型时尤其具有挑战性。

Basler通过在FPGA上使用VisualApplets进行图像预处理,从而降低CPU负载。
启用Basler图像预处理前后的CPU占用率:借助VisualApplets在可编程图像采集卡的FPGA上实现专用图像处理,让CPU占用率显著降低,从而为机器控制腾出更多处理能力。

对于仅作为图像采集设备的经典图像采集卡而言,这些要求已使其达到性能极限——并非因为其无法完成核心采集任务,而是由于它会将全部处理负载转移到CPU和GPU。

一旦数据率、图像复杂度或并行数据流的数量超过一定水平,系统就会不堪重负。基于CPU的处理方式已无法满足需求,往往容易产生处理速度瓶颈,系统性能也会变得不稳定。

这两个问题都可以通过在图像采集卡上直接进行预处理来解决。

视觉方案:利用可编程图像采集卡和FPGA进行硬件级预处理

基于FPGA技术、集成预处理功能的可编程图像采集卡能够直接在硬件层面上处理高算力的预处理步骤。诸如色彩空间转换、HDR、失真校正、缺陷像素校正、阴影校正或查找表(LUT)等典型任务均可在低延迟条件下并行执行。这显著减轻了CPU的负担,使GPU能够专注于实际的推理和复杂的图像分析。

这可以实现以下效果:

  • 显著降低延迟,并获得稳定且可重复的结果

  • 即使数据率和相机数量不断增加,仍能保持可扩展性

  • 借助FPGA和VisualApplets实现可满足未来需求的架构

实际操作中:

性能的关键在于对计算负载的巧妙分配:

  • 在图像采集卡和FPGA上进行的硬件级预处理

  • CPU上的控制与特殊情况

  • GPU上的AI推理

GPU在处理多样且异构的图像数据方面表现尤为出色——这不仅源于数据量的庞大,更在于其内在的复杂性和多样性。只有通过这种优化后的任务分配,才能为现代AI视觉系统设计出强大且可满足未来需求的架构,从而可靠地在生产环境中满足严苛的实时要求和高质量标准。

数据缩减系统
探索
利用数据缩减系统进行高效的图像预处理

现代视觉应用会产生海量数据,通过图像预处理中的数据清洗和数据缩减,可高效地将数据量降至可管理的水平。

详细了解我们的数据缩减系统
图像采集卡通过在硬件层面上直接采集和预处理图像数据,有效减轻了CPU的负担。FPGA则通过可单独编程的逻辑对该系统进行补充。它能够实现并行且量身定制的数据处理,从而高效地加速神经网络运行,最终提升整体性能,降低延迟,并在生产环境中获得稳定且可重复的结果。
视觉系统顾问 – 产品系统性能

可量化的优势:使用图像采集卡和FPGA进行优化

投资于经过优化的图像采集卡和FPGA,不仅能带来可量化的性能提升,还能在系统生命周期内切实节省成本。这是硬件需求降低、能耗减少以及可扩展性增强所来带的益处。

传统计算架构与数据压缩计算架构的成本比较
机器视觉系统的成本比较:在投资成本和总运营成本方面,基于FPGA的图像预处理技术都更具成本效益。
图像预处理功能和图像处理系统
探索

机器视觉中图像预处理的详细解析

图像预处理旨在根据特定应用需求优化图像数据、提升成像质量、减轻主机PC负担并简化机器视觉系统。下面请详细了解图像预处理的方法及其典型应用领域。

关于图像预处理的知识文章

CPU和GPU - 任务与优势

总结:

  • CPU:功能多样、灵活,拥有少量高性能核心,适用于典型的计算任务,并在处理复杂的单项运行任务时表现出色。

  • GPU:并行处理能力强,拥有大量简单核心,专用于海量数据处理,适合图像处理、图形渲染和AI任务。

在AI视觉系统中,这两个组件都根据各自的优势被精准地应用于效益最大化的领域:CPU用于处理复杂的控制和管理任务,GPU则用于并行、数据密集型的计算

基于FPGA和AI的图像处理工作流程
集成了FPGA预处理和AI的图像处理工作流程

智能图像采集卡:硬件加速与系统集成

通过降低CPU和GPU负载实现更快的处理速度:采用集成FPGA技术的现代图像采集卡可在硬件层面上直接处理预处理步骤。这表示传输到CPU和GPU的图像数据已经过优化,从而降低了系统负载,即使在高帧速率和多相机应用场景下也能稳定处理。

技术优势

由于预处理直接在图像采集卡中进行,图像数据在传输至CPU时已经过优化和压缩。诸如阴影校正及其他算法等高算力标准任务均通过硬件实现,从而能够快速调整亮度、对比度或色彩值,且不会产生额外延迟,使GPU能够专注于AI推理和复杂的图像分析任务。

系统集成

为实现与现有生产环境的无缝集成,记录详尽的开放API和强大的开发工具至关重要,这使得硬件加速的优势能够顺利融入各类图像处理方案中。高效部署的图像采集卡还能确保数据传输稳定、同步精确(特别是在多相机系统中),以及即使在高帧速率下也保证性能可靠。

结论:

配备FPGA加速功能的智能图像采集卡是构建稳定、可扩展且高性能AI视觉系统的关键因素。它能够将硬件层面的预处理与软件层面的AI推理明确分离,确保系统效率最大化。

高效数据传输所需的接口与带宽

接口的选择(例如CoaXPress、Camera Link、GigE Vision)对AI视觉系统的速度、数据完整性和延迟有着显著影响。然而,关键不仅在于标称带宽,更在于图像采集卡实际利用这些资源的效率如何。

主要技术因素

  • 高效的硬件设计:只有经过优化设计的图像采集卡才能充分发挥接口的最大数据率。内部信号处理、缓冲区架构以及向主计算机传输数据的速度共同决定了该接口是否会造成瓶颈。

  • 直接数据路径和缓冲区管理:高质量的图像采集卡依赖于设计周密的内存和数据管理(例如DMA),以实现无损且低延迟的图像数据传输。这方面的缺陷会导致性能瓶颈、数据拥塞,甚至数据丢失,尤其在高帧速率情况下问题更为严重。

  • 同步与时序:精确的触发和时序管理至关重要,特别是在多相机系统中,否则会导致图像偏移、数据包丢失或延迟不一致。

  • 对不同相机类型的适应性:现代图像采集卡必须能够可靠地处理各种相机类型、格式和时序要求,同时确保数据传输稳定、一致。这既简化了集成过程,又提高了系统稳定性。

硬件/软件优化不佳的风险

  • 由于缓冲区管理或传输路径出现故障而导致的图像数据丢失或损坏

  • 逻辑效率低下或可编程性差的驱动程序会导致延迟增加和帧速率降低,在实时应用中这尤其是一个关键问题

  • 不稳定性和兼容性问题,例如与PCIe卡、操作系统或AI加速器之间的兼容性问题

  • 系统扩展后(增加相机数量、提高分辨率、提升帧速率)的可扩展性较差

结论:

系统的性能不仅取决于接口本身,还取决于图像采集卡的质量和软件集成水平。只有当硬件、缓冲、同步和驱动程序能够无缝协作时,整个系统才能稳定、可靠且高效地运行。与此同时,即使数据量不断增长,系统仍能保持可扩展性。

系统集成、兼容性与软件生态系统

要高效利用图像采集卡,必须将其与现有的硬件和软件环境完全集成。要在具体的图像处理方案中有针对性地集成硬件加速功能,记录详尽的开放API以及功能强大的开发工具是不可或缺的,这样一来,无论是在Windows、Linux还是专用嵌入式系统环境中都能高效地适配、更新和扩展。

经典图像采集卡还是可编程图像采集卡?

对于AI视觉系统而言,选择经典款还是可编程图像采集卡,这直接取决于具体应用、数据率以及预处理的复杂程度:

  • 经典款图像采集卡 — 指不具备可自由编程逻辑或仅具备基本硬件功能的采集卡,适用于仅需将原始数据快速、可靠地传输至CPU/GPU,且无需特殊预处理、同步或自定义触发逻辑的场景。对于简单稳定、没有严格实时要求的设置,经典款图像采集卡已经可以满足需求。

  • 在数据密集型、时间敏感型的AI在线应用以及复杂的生产环境中,带有FPGA的可编程图像采集卡几乎不可或缺。它直接在硬件上进行复杂的预处理任务,从而减轻CPU和GPU的负担,并能够灵活适应新的需求。特别是在多相机系统、分辨率不断提升或延迟要求严格的情况下,FPGA方案在性能和可扩展性方面均具有显著优势。

结论:

对于要求严苛且可扩展的AI视觉系统而言,确保长期灵活性和性能的关键在于开放的软件界面,还有以FPGA为核心的可编程图像采集卡。我们很乐意根据您的需求提供图像采集卡选型和编程建议。

详细了解图像采集卡和FPGA编程

FPGA详解:为AI视觉量身定制的性能

FPGA是一种可自由编程的逻辑器件,能够直接在图像采集卡上对图像数据进行大规模的并行预处理。

典型的预处理任务

  • 边缘检测、锐化或中值滤波

  • 用于对比度和色彩调整的查找表(LUT)

  • 实时校正方法,例如缺陷像素校正、阴影校正、HDR、blob检测、失真校正、JPEG、基于对焦的深度估算或结构光

  • 集成的触发或分析功能

简化开发:从HLS到VisualApplets

得益于高级综合(HLS)工具,如今许多FPGA设计都可以使用C/C++等高级语言进行开发,从而缩短开发周期。然而,要获得出色效果,这些方法仍然需要深入的硬件专业知识。

VisualApplets Software

借助VisualApplets,我们的技术更进一步:这是一款无代码工具,用户无需专业的FPGA知识,即可通过图形化方式配置复杂的FPGA功能。您只需通过可视化方式定义图像处理流程,VisualApplets便会自动生成优化的硬件逻辑。其独特之处在于:借助基于图像的模拟(而非繁琐的位分析),您可以即刻查看结果是否符合要求。这不仅能节省时间、降低复杂度,还让基于FPGA的加速图像处理技术变得触手可及。

AI视觉系统的技术优势

  • 以低延迟并行处理海量图像数据

  • 通过可重新编程特性,能够灵活适应新的算法和要求

  • 高效地转移CPU和GPU负载,在内联推理、多相机或高速应用中效果尤为显著

  • 通过量化或专门优化的卷积层等硬件适配手段,有针对性地优化AI模型性能,实现在FPGA上的精确部署。

  • 在分类、目标检测和复杂预处理管线等典型AI应用中的性能提升显著,并大幅降低延迟

结论:

特别是在基于AI的生产环境中,若要实现高功率密度、低延迟以及满足未来需求的适应性,FPGA是首选平台。尽管初期成本较高,但其具备高能效、卓越系统性能以及个性化的适应能力,往往能带来可持续的成本和竞争优势。

图像采集卡与FPGA之间的协同作用

图像采集卡和FPGA相互补充:图像采集卡负责采集和传输图像数据,而FPGA则直接在硬件上处理需要高算力的预处理步骤,既减轻了CPU和GPU负载,又能降低延迟,并实现高效且可扩展的数据处理。

该架构的优势:

  • 在图像采集处就能减少数据量和传输时间

  • 针对时间敏感型AI和分析任务,经过硬件优化的处理管线更具确定性

  • 更低的延迟和系统负载

  • 即使系统需求不断增长(更多相机、更高分辨率),系统仍能保持稳定性和可扩展性

实际操作中:

这种紧密的交互是实时应用的基础,例如在线质量控制、机器人技术或基于AI的检测系统。它确保了无缝、低延迟的数据管线,以及稳定且可重复的系统性能,即使在高帧速率和复杂检测任务等严苛的生产条件下也能胜任。

实际应用与使用实例

电子制造中的在线质量控制

在自动化印刷电路板(PCB)检测中,高分辨率相机能够与Basler图像采集卡相结合。FPGA可直接在图像采集卡上处理关键任务:

Basler视觉系统广泛应用于各种工业领域,例如电子和半导体检测领域,以优化流程和生产序列。
  • 缺陷像素校正、色彩空间转换、多ROI选择 - 直接在硬件层面实现

  • 实时错误检测 - 即使是细微的焊接缺陷、元件缺失或短路也能检测出来

  • 转移CPU负载 - 让它仅承担指令单元的角色

  • 用于AI分类的GPU

结果:
即使在高吞吐量和产品型号不断变化的情况下,也能实现高检测速度和低延迟。

电池芯制造中的质量控制

电池电极涂覆过程中,必须以最高80米/分钟的生产速度,对大面积材料表面进行高精度检测。Basler线阵相机负责采集涂层图像,而图像采集卡和FPGA逻辑则在数据采集过程中对图像数据进行预处理,从而能够可靠地检测缺陷,同时避免将全部数据量转移到下游图像处理系统,进而减轻系统负担。

电极涂覆示例:仅约2%的图像区域与分析相关,需要进行更详细的分析和后续处理。

图像采集卡上的硬件处理管线:

  • 确定ROI与预处理 - 仅选择存在异常的相关区域

  • 减少数据量 - 仅对这些相关的图像区域作进一步处理

  • 处理效果具有确定性 - 在高速生产条件下保持稳定的循环时间

基于GPU的AI辅助缺陷分析:

  • 缺陷分类 - 检测聚结、裂纹、污染物或空洞等缺陷

  • 精确测量 - 确定感兴趣区域(ROI)内缺陷的大小和范围

  • 合格判定 - 有针对性地评估缺陷并减少次品

结果:
在高速生产条件下实现可靠的质量控制,同时显著减少数据量,精准检测缺陷,并尽量降低材料浪费。

食品加工中的目视检查

食品行业的高速生产线上会使用配备FPGA的图像采集卡来实时分析大量产品图像。

基于软件的铝罐检测

检测任务:

  • 异物检测 - 可靠地识别污染物

  • 形状和颜色检测 - 确保产品的一致性

  • 表面分析 - 检测缺陷和偏差

图像采集卡上的FPGA预处理:

  • 多ROI、HDR调整 - 在多变条件下实现出色成像质量

  • 智能数据精简 - 仅将相关的图像区域和特征传递给AI推理

  • 数据加载量小 - 大幅减轻CPU和GPU负载

结果:
在高传送带速度下实现无缝质量控制,且不会造成吞吐量瓶颈。

适用于您视觉系统的图像采集卡硬件、软件及服务

关于优化AI视觉系统计算性能的常见问题

典型的迹象包括图像处理中的瓶颈(高延迟、多相机情况下帧速率下降)、CPU/GPU占用率过高、实时反馈存在问题,或者难以扩展至更高分辨率和采用更多相机。

缺陷像素校正、色彩空间转换、LUT应用、阴影校正、多ROI、HDR处理以及触发/同步功能尤其能从中受益。换言之,所有适合并行化处理且需要高数据率的步骤都能受益。

只要拥有开放的API和完善的文档,集成通常都很简单。关键在于现有的软件架构是否采用模块化设计并支持对数据流和触发逻辑进行调整。

常见的挑战包括多相机系统中的时序问题、缓冲区管理不善、相机格式不受支持,或者FPGA编程专业知识不足。因此,建议与图像采集卡制造商密切配合,并进行彻底的测试。

具体的指标可以提供有说服力的证据:对比优化前后的图像处理速率、延迟和能耗,节省的服务器/GPU数量,减少的停机时间和维护成本,以及系统在应对新需求时的可扩展性。

对于基于FPGA的图像采集卡上的自定义图像处理任务,我们建议您使用VisualApplets自行开发应用。您可以通过图形化方式创建各个预处理步骤,并直接在图像采集卡上实现。无论是全案定制,还是指导您完成独立开发过程,我们都很乐意协助您实现需求。如需了解详情及入门指南,请访问VisualApplets

您需要获得什么支持?

我们很乐意提供产品选择建议,并助您为应用找到合适的解决方案。