2020年8月11日 机器视觉与计算机视觉技术

在图像处理中应用深度学习技术

工业应用中FPGA 上的神经元网络(CNN)

深度学习应用凭借其在识别应用中超高的预测准确率,在图像处理领域获得了极大关注,这势必将提升现有图像处理系统的性能并开创新的应用领域。

利用卷积神经网络(Convolutional Neural Network, CNN) 等深层神经网络的解决方案,可以逐渐取代基于算法说明的传统图像处理工作。尽管图像预处理、后期处理和信号处理仍采用现有方法进行,但在图像分类应用中(缺陷、对象以及特征分类),深度学习变得愈加重要。

利用深度学习处理某些任务更简单,效果更好,甚至某些任务只能用深度学习方法来解决。深度学习正在逐渐威胁传统图像处理方法的地位——特别是处理任务中包含有复杂变量时(如反射面、光照不佳的环境、光照变化或移动的对象)。

深度学习具有平移不变性的优点,这部分使用传统处理方式需要大量的投入。但如果需要对图像中的对象或错误进行定位、标定、代码读取或后期处理,则传统算法更具有优势。

图1:传统图像处理及深度学习的适用范围对比。
传统图像处理深度学习
典型应用典型应用
l  尺寸测量l  代码读取l  有/无检测l  机器人引导l  印刷检测l  汽车l  电子l  表面检测(裂纹、划痕)l  食品、植物、木材检测l  塑料、注塑成型l  织物检测l  医疗成像l  农业 
典型特征典型特征
l  对目标有严格要求l  方向固定l  客户提供容差范围内的正式规格l  可靠性100%l  目标可变l  方向可变l  客户提供模糊的规格,提供Good和Bad零件的样本l  可靠性99%

深度学习包括神经网络的训练和学习、网络的实现和推断运算、网络的CNN 算法在图像上的执行与分类结果的输出。用于训练的数据越多,分类的预测精度就会越高。由于数据量庞大,训练神经网络时通常选用GPU。

图2:训练数据越多,预测精度越高。

速度与精度

基于各种不同技术的处理器,是否都能满足工业图像处理中的特殊需求呢?CNN应用必须执行快速(推断)同时满足极低的时延。在满足处理速度的同时,还要满足高带宽、低发热、实时性以及供货周期长这些需求,仅仅使用传统CPU 或GPU 是难以实现的,它们通常可以为非工业领域的图像处理任务提供更合适的解决方案,在这些领域的识别任务尽管同样复杂,但相对较低的数据吞吐性能即可满足需求。各个平台之间区别很大,仅从技术指标方面就能看出,它们无法应用于高要求的任务。尽管GPU 的推断耗时比CPU 或特殊芯片短得多(如TPU -TensorFlow Processing Units、TensorFlow 处理单元以及Intel Movidius处理器),但是其数据吞吐量这项指标只能达到大约每秒50MB这样一个较低的水平。

在通常的图像处理应用中,只需要对少数几个特性进行分类,因此选择小型或中型网络通常就足以应对,AlexNet、SqueezeNet 或MobileNet 都是这类网络的典型代表。这几种网络类型在机器视觉领域,预测精度、网络大小和计算速度以及带宽这几方面有着良好的平衡。这里可以很明显地看到,通过选择合适的网络,可以在牺牲小部分检测精度的同时,获得数据吞吐量方面的极大提高,同时也为优化资源和提高分类质量提供了可能性。

图3:《对用于实际应用的深层神经网络模式的分析》,Alfredo Canziani、Adam Paszke、Eugenio Culurciello (2017)

推断应用中的FPGA 和SoC

在很多图像处理任务的需求中,特别是机器视觉领域,FPGA可以作为独立处理单元或与ARM 处理器一起构成SoC。FPGA 具有高度并行处理能力、稳定的图像采集能力以及相对于CPU 和GPU更高的运算性能、图像帧率和带宽。基于FPGA的CNN应用可完成高带宽的分类工作,这尤其适用于高速在线检测。

FPGA支持直接在图像采集卡或在嵌入式视觉设备上处理图像数据——从采集到输出以及外围设备控制——且无任何CPU占用,这个特点让FPGA特别适用于高强度运算的应用,如CNN。因此未配备GPU 的小型PC 也能使用,从而可降低整体系统成本。在工业环境温度下,FPGA的能效比GPU高十倍,是嵌入式设备的理想之选,这显著扩大了深度学习在工业4.0 以及无人机和自动驾驶领域的应用。

GPU拥有更高的计算精度和更高的预测精度,但这些是以更短的供货周期、更高的功耗以及更低的数据吞吐量为代价的。在一个示范性的对比中,基于FPGA的解决方案的数据处理性能是使用GPU的类似解决方案的7.3倍左右。

图4:FPGA 的性能大约是GPU 性能的7.3倍。

优化FPGA 资源

在深度学习领域,存在各种不用降低分类质量就能节省资源的方法。其中之一是通过图像缩放来降低数据吞吐量,或者改变数据位深:我们的项目经验表明,数据的位深对后来的预测精度影响甚微。将数据位深32位浮点数降为8位定点数或整数,可以让FPGA将节省下来的资源用于更大的网络架构,或实现更高的数据吞吐量,从而实现处理速度的提升,这对例如焊缝检测或机器人技术这类应用非常有意义。通过类似的预处理降低数据量,让更适合FPGA的小型网络的使用成为可能,这样的网络通常足以处理缺陷特征较少的简单分类任务。

32 位浮点GPU 虽然拥有更高的计算精度,但这一点对深度学习的推断而言无关紧要,在FPGA中使用8位定点运算的网络,能为大多数深度学习应用提供足够精确的预测精度,误差几乎可以忽略不计。如果需要特别高的计算精度,可以采取一种资源折中策略,在更大的FPGA 上使用16位定点运算。

现在已经有了能完美满足工业生产的高速处理需求的解决方案,通常使用高性能图像采集卡或者嵌入式视觉设备,例如使用大型FPGA和高分辨率传感器的智能相机。利用多种多样的FPGA 资源,可以处理更复杂的架构以及应用。有了更高的数据带宽,能够在FPGA上对整幅图像进行处理,或进行额外的图像预处理以及后期处理,例如对GigE Vision相机的最大数据输出带宽的深度学习运算也完全能够满足。

结语

与传统图像处理相比,深度学习应用需要在训练方面投入较多时间,但是相较其带来的可靠性和处理速度,这些投入是值得的。图像采集卡和(嵌入式)视觉设备上所使用的FPGA技术,令神经网络应用于工业级应用成为可能,这需要强大的实时处理能力、低延迟(实时在线检测)、高数据吞吐量、高带宽和低功耗低发热(嵌入式视觉应用),以及高分辨率。FPGA 及图像采集卡较长的供货周期保障了投资安全性,同时由于系统可快速的整合且整体系统成本较低,用户可以节省长期支出。

文/Silicon Software,Martin Cassel

Banner
Related Posts

红外相机热成像在缺陷检查中的应用

2019年6月1日

2019年6月1日

制造商正在使用红外摄像机来辅助预防性维护,并发现与热相关的装配过程中的缺陷。

改善机器视觉系统的十大方法

2018年8月9日

2018年8月9日

机器视觉是一个新兴领域,如果设置正确,可以减少过程效率低下。任何使用机器视觉作为机器人引导或检查的设施都应重视这一领域,以寻求可能的改进。

机器视觉模式匹配的基础:光源、相机、算法

2019年10月11日

2019年10月11日

机器视觉系统还需要能够发现和识别模式。任何机器视觉任务的第一步都是模式匹配,即根据形状属性(如边缘)的预期排列,在视场中定位目标。这个过程是如何工作的?

机器视觉从发展到成熟,最新技术又有些什么?

2018年8月9日

2018年8月9日

这是机器视觉行业的一个演变时期。嵌入式视觉与深度学习和人工智能相结合, 将在生命科学、自驾游、安全和农业等传统制造业以外的市场继续蓬勃发展。

用于食品标签的光学字符识别(OCR)视觉系统

2019年4月24日

2019年4月24日

在食品制造工厂,系统需要从传送器中剔除带有错误打印数据代码的包装食品。虽然以前的系统运行还算正常,但它已经陈旧,原始软件开发的升级换代也无法得到支持。

涂布纺织品皮革表面缺陷检测解决方案

2019年7月2日

2019年7月2日

本文详细地介绍了基于自适应视觉算法的表面缺陷检测的应用原理及实际案例。同时以涂布、纺织品和皮革等类似行业的实际案例验证了该原理的可行性和实用性。介绍了能应用于涂布、印刷、涂布、塑料、橡胶、薄膜及皮革等缺陷检测的通用解决方案。

机器视觉中的彩色成像以及要考虑的因素

2019年5月22日

2019年5月22日

特定机器视觉彩色摄像机是否适合您的应用取决于多种因素。在为您的应用开发最合适的彩色机器视觉系统时,需要考虑所有这些因素。下面是开发彩色机器视觉系统时需要考虑的一些相机问题:

机器视觉成为防治农作物减产的新式武器

2019年5月15日

2019年5月15日

农作物的损失对农民来说是毁灭性的。随着生态波动性的增加,这也是生活中的事实。

深度学习在机器视觉中的应用与发展

2019年5月7日

2019年5月7日

在短短几年内,深度学习软件已经比任何传统算法可以更好地对图像进行分类处理,而且可能很快就可以超越人工检查。

深度学习在产品缺陷检测中面临的考验

2019年12月13日

2019年12月13日

人工智能(AI)的发展促使数很多公司投资于深度学习软件,对于视觉行业来说是个好兆头,因为需要在技术上实现飞跃。但是,对于采购或投资相关产品的的用户而言,重要的是要了解如何正确地评估深度学习软件可用性 ,以及它们如何工作的。

中科院自动化所王欣刚:机器视觉将取代人类视觉

2019年6月21日

2019年6月21日

智能制造已成为全球制造业升级发展的重要方向,未来工厂里将采用越来越来越多的自动化技术,包括机器人、人工智能、虚拟现实等先进技术,其中,机器视觉将在智能工厂中将发挥关键作用。对于生产商来说,如何将这些技术运用到当前的生产线,将是实现工厂价值提升和未来发展的关键。

机器视觉技术发展的五大趋势

2019年6月21日

2019年6月21日

在过去的一年里,人工智能(AI)、大数据、3D成像和机器人过程自动化等领域在取得了空前的发展。在即将到来的2019年,机器视觉技术应用还将蓬勃发展,新机器视觉认为五大发展趋势将引领行业应用。

3D视觉检测的未来:光度立体技术

2019年6月12日

2019年6月12日

利用3D表面定向,特别是它对反射光的影响,工业应用的光度立体产生对比度图像,突出了局部3D表面变化。

机器视觉如何改变金融服务

2019年9月9日

2019年9月9日

事实证明,在金融领域应用机器视觉不仅对企业有利,而且对一般消费者也有利。尽管这在5年前似乎遥不可及,但金融机构一直在使用先进技术开展业务。这些技术能够改进客户体验并减轻员工的工作负担。

机器视觉技术在农业应用研究进展

2019年3月31日

2019年3月31日

随着计算机软硬件、图像采集处理装置、图像处理技术的迅猛发展,机器视觉技术在农业的应用领域不断扩展。目前,美国、日本、德国等发达国家已经开始将机器视觉系统应用到农业生产的各个阶段,以解决人口老龄化加剧、劳动力缺失等问题引起的挑战。

Comments
发表评论

电子邮件地址不会被公开。 必填项已用*标注