掌桥专利:专业的专利平台
掌桥专利
首页

用于机器人油漆修复的学习框架

文献发布时间:2023-06-19 10:27:30


用于机器人油漆修复的学习框架

技术领域

本申请涉及用于学习和执行油漆应用(例如,底漆砂磨、清漆涂层缺陷去除、清漆涂层抛光等)的自动化缺陷特定修复的框架。所公开的技术使用用于检查、分类和策略优化的最先进的机器学习方法来使领域特定的过程专门知识的生成和利用自动化。

背景技术

清漆涂层修复是汽车原始装备制造(OEM)部门中要自动化的最后操作中的一项操作。期望用于使该过程以及适于使用磨料和/或机器人检查和修复的其他油漆应用(例如,底漆砂磨、清漆涂层缺陷去除、清漆涂层抛光等)自动化的技术。另外,该问题在售后部门还未得到解决。

使油漆缺陷的检测和修复自动化的早期工作包括美国专利公布2003/0139836中描述的系统,该专利公布公开了使用电子成像来检测和修复车身上的油漆缺陷。该系统参考车辆成像数据与车辆CAD数据,以形成每个油漆缺陷的三维油漆缺陷坐标。油漆缺陷数据和油漆缺陷坐标用于开发用于使用多个自动化机器人进行自动化修复的修复对策,该自动化机器人执行多种任务,包括砂磨和抛光油漆缺陷。修复对策包括路径和处理参数、工具以及机器人选择。力反馈传感器可用于控制修复过程。附加任务可包括生成机器人路径和工具参数、执行质量数据记录和错误报告。然而,没有提供修复过程的细节。另外,该系统不应用图案匹配或机器学习技术来帮助识别缺陷或确定用于校正缺陷的最佳过程。

美国专利公布2017/0277979公开了在车辆检查系统中使用图案分类器来从图像中识别缺陷,该图像是通过将光照射在固定位置处的镜面上并且使用固定相机测量反射光而生成的。通过使用图像构建车辆模型和颜色的图像训练集来训练图案分类器以改善缺陷检测结果。训练集中的图像由人或机器检查以识别哪些图像和哪些像素具有缺陷。然而,没有公开用于校正所识别的缺陷的自动化技术。

美国专利9811057公开了使用机器学习通过观察状态变量来预测电机的寿命,该状态变量包括检测电机的操作状态的传感器的输出数据和与电机中存在或不存在故障相关的数据。学习单元根据训练数据集学习与电机的预测寿命相关联的条件,该训练数据集基于状态变量和所测量的电机的实际寿命的组合而创建。

申请人可能不应用机器学习技术来以自动化方式识别和修复油漆缺陷。另外,现有技术系统不考虑客户用来检查和校正油漆缺陷的自动化过程中的变化。期望用于使此类过程自动化的改进技术。

发明内容

现在描述各种示例以便以简化形式引入概念的选择,这些概念在下面的具体实施方式中进一步描述。发明内容并非旨在识别受权利要求书保护的主题的主要特征或本质特征,也不旨在用于限制受权利要求书保护的主题的范围。

本文所述的系统和方法解决了机器人研磨处理问题,即基于每个部件几何形状和检查/反馈连同学习新过程和/或适应客户的过程偏差的能力来提供领域和问题特定的最佳过程。本文所述的系统和方法用作传统应用工程技术的数字化,其方式是通过提供成本有效的最佳解决方案来坚持彻底改变磨料被消耗的方式,该最佳解决方案以保护客户和磨料制造商的领域特定的知识的方式针对客户的应用和磨料制造商的特定磨料产品进行定制。虽然描述了提供机器人油漆修复,该机器人油漆修复包括底漆、油漆和清漆涂层的修复,但应当理解,本文所述的技术适用于除油漆修复之外的其他工业应用。

如本文所述的提供机器人油漆修复的计算机实现的方法的样本实施方案包括以下步骤:接收基底中的每个所识别的缺陷的坐标连同每个缺陷的特性,将基底中的所识别的缺陷的坐标连同机器人控制器模块控制机器人操纵器以使机器人操纵器的端部执行器紧密接近基底上的所识别的缺陷所需的任何附加数据一起传送到机器人控制器模块,将缺陷的特性和机器人操纵器的至少端部执行器的当前状态提供给策略服务器,从策略服务器接收基于先前学习的控制策略的修复动作,以及通过将指令传送到机器人控制器模块和端部执行器来执行修复动作以实现修复动作。在样本实施方案中,修复动作包括用于砂磨工具的RPM的设定点、用于顺应力凸缘的控制输入、机器人操纵器的轨迹和总处理时间中的至少一者。修复动作可包括在所识别缺陷的位置处砂磨基底以及在所识别缺陷的位置处抛光或磨光基底。

在样本实施方案中,机器人操纵器的轨迹作为与正在修复的缺陷的原点的时变位置偏移而被传送到机器人操纵器。处理装置还接收每个缺陷的特性,该特性包括来自端部执行器传感器的本地收集的原位检查数据。在这样的情况下,该方法包括以下另外的步骤:向机器学习单元提供原位数据,以用于使用条纹图案投影、偏折法和用相机进行的漫反射或正常白光的强度测量中的至少一者来创建学习更新。在样本实施方案中,重复从向策略服务器提供缺陷的特性和端部执行器的当前状态到提供原位检查数据的步骤的步骤,直到令人满意地修复所识别的缺陷。

在其他实施方案中,处理装置进一步接收与由修复动作产生的修复的质量相关的质量数据,并且将缺陷的特性和质量数据提供给策略服务器以供记录。缺陷的特性还可包括未处理的原始图像。

在另外的其他实施方案中,处理装置实现机器学习模块,该机器学习模块运行学习更新以基于特定的识别缺陷和对所执行的修复的后续评估来改善来自策略服务器的未来修复动作。处理装置还可使用在修复动作的执行期间和/或之后收集的传感器反馈将修复识别为良好或不良,并且实现强化学习以开发针对所识别的缺陷的修复动作。通过将所识别的缺陷的原始图像映射到修复动作,基于修复动作的质量而分配回报,以及识别使回报最大化的策略,来实现强化学习。在另选实施方案中,该方法还可包括使用物理模拟的缺陷找到所学习的控制策略。所学习的控制策略还可使用磨料利用数据来实现基于剩余磨料寿命的决策。

强化学习还可被实现为基于马尔可夫决策过程(MDP)的强化学习任务。MDP可为有限MDP,其具有至少使用初始状态、砂磨状态、抛光状态和完成状态在MDP转换图中实现的任务,其中初始状态被增强以将所识别的缺陷包括在其原始、未改变的状态中,砂磨状态和抛光状态分别发生在砂磨动作和抛光动作之后,并且完成状态标记修复过程的结束。在任选的配置中,砂磨状态和抛光状态包括来自端部执行器传感器的本地收集的原位检查数据。

在其他实施方案中,在MDP转换图中实现的任务包括动作,该动作包括完成、tendDisc、砂磨和抛光中的至少一者,其中完成动作立即将过程转到完成状态,tendDisc动作向机器人操纵器发信号以润湿、清洁或更换端部执行器的磨料盘,并且砂磨动作和抛光动作使用包括以下中的至少一者的参数来实现:端部执行器的砂磨工具的RPM、施加的压力、停留/处理时间以及机器人操纵器的修复轨迹。砂磨动作和抛光动作可以是连续参数的连续参数函数。在MDP转换图中实现的任务还可以包括单个tendDisc动作,之后是单个砂磨动作,之后是单个抛光动作。

该方法由机器人油漆修复系统实现。在样本实施方案中,机器人修复系统包括:机器人操纵器,该机器人操纵器控制端部执行器,该端部执行器包括用于对基底进行砂磨和抛光中的至少一者的砂磨元件和抛光元件中的至少一者;机器人控制器模块,该机器人控制器模块控制机器人操纵器的移动和操作;策略服务器,该策略服务器保持将所识别的缺陷与一个或多个修复动作关联的一个或多个当前学习的策略,并且基于状态和观察查询提供控制输出;以及控制单元。控制单元具有一个或多个处理器,该一个或多个处理器处理指令以实现以下步骤:接收基底中的每个所识别的缺陷的坐标连同每个缺陷的特性,将基底中的所识别的缺陷的坐标连同机器人控制器模块控制机器人操纵器以使端部执行器紧密接近基底上的所识别的缺陷所需的任何附加数据一起传送到机器人控制器模块,从策略服务器接收基于缺陷特性和先前学习的控制策略的修复动作,将缺陷的特性和机器人操纵器的至少端部执行器的当前状态提供给策略服务器,以及通过将指令传送到机器人控制器模块和端部执行器来执行修复动作以实现修复动作。控制单元还包括用于实现如本文所述的方法的其他步骤的指令。

前述示例中的任一个示例可与其他前述示例中的任一个或多个示例组合以在本公开的范围内创建新的实施方案。

附图说明

在未必按比例绘制的附图中,类似的数字可描述不同视图中的类似部件。附图通常以举例的方式示出,但不受限于本文档中讨论的各种实施方案。

图1示出了用于OEM和售后应用的机器人油漆修复。

图2示意性地示出了分解的机器人油漆修复堆栈的部件。

图3示出了根据样本实施方案的包括学习部件和基于云的过程规划和优化的机器人油漆修复。

图4示出了样本实施方案中用于机器人油漆修复的样本实施方案的样本处理流程。

图5示出了样本实施方案中适用于强化学习的砂磨和抛光过程的马尔可夫决策过程(MDP)转换图。

图6示出了另外的样本实施方案中适用于强化学习的砂磨和抛光过程的简化MDP转换图。

图7示出了高密度缺陷学习基底,其中通过在清漆涂层下面引入特定大小的合成污垢而引起的缺陷在顶篷光反射的边界处最为可见。

图8示出了样本抛光图案。

图9示出了抛光图案的高效嵌套的示例。

图10示出了由制造商提供的Micro-Epsilon反射控制油漆缺陷图像。

图11示出八个图像,四个具有偏折的垂直条纹图案,并且四个具有偏折的水平条纹图案,它们各自偏移π/2的倍数。

图12示出了使用四个偏折的条纹图案上的像素的反正切计算出的水平曲率图和垂直曲率图,其中随后进行相位解缠。

图13是组合了水平结果和垂直结果两者的复合(平方和的平方根)局部曲率图,该水平结果和垂直结果被可视化为强度图和网状栅格两者。

图14示出了样本近暗场反射图像。

图15示出了可被编程到适用于实现样本实施方案中所述的系统的一个或多个实施方案的专用计算机中的通用计算机。

具体实施方式

首先应当理解,尽管下面提供了一个或多个实施方案的示例性具体实施,但是可以使用任何数量的技术来实现相对于图1-图15描述的所公开的系统和/或方法,无论是当前已知的还是现有的。本公开绝不应限于下文所示的示例性具体实施、附图和技术,包括本文所示和所述的示例性设计和具体实施,而是可在所附权利要求书的范围连同其等同物的完整范围内进行修改。

在一个实施方案中,本文所述的函数或算法可在软件中实施。软件可由计算机可执行指令组成,该计算机可执行指令存储在计算机可读介质或计算机可读存储装置上,该计算机可读存储装置诸如一个或多个非暂态存储器或其他类型的基于硬件的存储装置,本地的或联网的。另外,此类函数对应于模块,这些模块可以是软件、硬件、固件或它们的任何组合。多种函数可根据需要在一个或多个模块中执行,并且所述的实施方案仅是示例。软件可在数字信号处理器、ASIC、微处理器或在计算机系统上运行的其他类型的处理器上执行,从而将这种计算机系统转化为特定编程的机器,该计算机系统诸如个人计算机、服务器或其他计算机系统。

本发明描述了用于使用自动化磨料处理和后续抛光来使修复油漆应用的缺陷的过程自动化的系统和方法。该系统和方法包括机器人(智能)工具和/或部件处理、感测技术、随机过程策略、以及任选学习部件的新颖组合,该随机过程策略基于当前部件/系统状态和所提供的反馈导致期望的系统行为,该任选学习部件能够优化所提供的过程策略,由于客户的上游过程变化而连续调整策略,并且/或者从零开始以很少到没有人为干预来学习该过程策略。

计算能力的最新进展使得以生产速度进行清漆涂层检查的过程成为可行的。具体地讲,立体偏折法最近已被证明能够利用空间信息以适当的分辨率提供油漆和清漆涂层缺陷,以允许随后的自动化斑点修复。使用常规检查方法,样本实施方案中的自动化清漆涂层斑点修复系统100可能看起来像图1的用于汽车OEM应用的示意图。在图1中,相应的框表示系统的各种硬件部件,包括机器人控制器102、机器人操纵器104和机器人油漆修复堆栈106(包括顺应力控制单元108、工具110和磨料制品/化合物112)。数据流由背景箭头114描绘,该背景箭头开始于提供包括基底中的所识别的缺陷的检查数据的检查前数据模块116,并且结束于用于处理在缺陷修复过程期间从基底120产生的数据的检查后缺陷数据模块118。

在样本实施方案中,基底120可为车身本身,并且饰面在整个制造过程中可为汽车的任何状态。通常,感兴趣的汽车或面板已被刷上油漆,涂覆有清漆涂层,而且已看到某种形式的固化(例如,烘烤)并被检查缺陷。在操作中,将缺陷位置和特性从检查前数据模块116馈送到机器人控制器102,该机器人控制器控制机器人操纵器104,在该机器人操纵器上程序将端部执行器(堆栈)106引导到所识别的缺陷以执行一些预先确定的修复程序(确定性)策略。在一些罕见情况下,策略可能能够根据所提供的缺陷特性进行调整。

对于油漆修复应用,机器人油漆修复堆栈106包括磨料工具110以及磨料制品和化合物112连同任何辅助装备,诸如(顺应)力控制单元108。如本文所用,机器人油漆修复堆栈106与术语端部执行器或多或少地同义;然而,在本文档中,术语“堆栈”是在机器人油漆修复的上下文中的端部执行器。另外,虽然描述了提供机器人油漆修复,该机器人油漆修复包括底漆、油漆和清漆涂层的修复,但应当理解,本文所述的技术适用于除油漆修复之外的其他工业应用。

图2示意性地示出了分解的机器人油漆修复堆栈106的部件。如图所示,机器人油漆修复堆栈106包括机械臂200、力控制传感器和装置108、磨削/抛光工具110、硬件集成装置202、磨料垫和化合物112、设计磨料过程204以及数据和服务206。这些元件可以一起工作以识别缺陷位置,并且使用用于所识别的缺陷的确定性策略来实现预先确定的修复程序。

因此,图1和图2基于新近可用的检查方法(即,偏折法)实现了使清漆涂层修复自动化的相当简单的方法。下文所述的系统和方法的实施方案与图1和图2的系统和方法的区别之处在于,利用来自检查、工作单元或工具的附加数据以基于每个缺陷实时修改用于修复的机器人程序(即,策略)。在这方面,程序基于观察进行调整以执行最佳(或接近最佳)修复对策(策略),该修复对策在确定性的凭经验得出的配方(技术服务/应用工程)与基于性能不断改善的随机策略(即,强化学习)之间的范围上。另外,可以应用其他形式的学习,诸如分类(监督学习)或聚类(无监督学习),以帮助对感测数据等执行降维。这些方法一起包括将相对于下文的样本实施方案描述的学习模块。

图3示出了包括学习部件和基于云的过程规划和优化的机器人油漆修复系统的样本实施方案。在图3的实施方案中,机器人油漆修复堆栈300已从上文讨论的机器人油漆修复堆栈106增强,以进一步包括附加传感器302、智能工具303、辅助控制单元304、以及云计算系统306,该云计算系统包括数据库307,该数据库是本地的或保持在云计算系统306中,并且负责执行和保持油漆修复堆栈300的控制策略,该控制策略包括由机器学习单元308推荐并由策略服务器309保持的那些策略和程序。数据库307和策略服务器309可以在云中或在本地现场服务器或边缘计算机中。

辅助控制模块304代替先前驻留在机器人控制器102中的确定性代码,并且提供立即的实时信号和处理以用于执行机器人操纵器104和智能工具303。就这一点而言,机器人操纵器104现在在由辅助控制器304驱动的系统300中起反作用。云计算系统306的数据库307用作长期数据储存库,该长期数据储存库存储与所识别的缺陷相关的对包括状态变量、测量和所得性能的处理的观察,以生成由策略服务器309实现的策略。最后,机器学习模块308负责基于观察(状态/传感器数据)和后续回报(修复的质量)连续改善修复策略。在线学习是通过强化学习的形式来完成的,诸如时间差分(TD)学习、深度Q学习、信任区域策略优化等。

在图3的实施方案中,机器人操纵器104能够充分定位端部执行器(堆栈)工具305以实现本文所述的缺陷检查和修复。对于本文相对于样本实施方案所述的问题领域(底漆/油漆/清漆涂层修复),缺陷通常位于基底120(金属片、塑料、碳纤维等的多个成形件的组件)的汽车车身外表面上,该表面通常表现出2D歧管结构(即,其为局部“平坦的”或“平滑的”)。虽然理论上可使用较低自由度系统,但已发现工业标准六自由度串行机器人操纵器是该过程的最佳适配。一些示例包括发那科公司(Fanuc)的M-20系列、ABB公司(ABB)的IRB1600、或库卡公司(Kuka)的KR 60系列。例如,Kuka KR 60HA具有6个轴和自由度,支持60kg有效载荷,并且具有2.033m的可及范围。在下文对堆栈305的描述中更详细地涵盖了过程特定的工具(即,端部执行器)。

机器人控制器模块102是用于所选择的机器人操纵器104的机器人OEM提供的控制器。机器人控制器模块102负责将运动命令直接发送到机器人操纵器104并监测任何单元相关的安全问题。在实践中,机器人控制器模块102通常包括与一个或多个安全可编程逻辑控制器(PLC)结合以用于单元监测的机器人控制器。在样本实施方案中,机器人控制器模块102被设置为从辅助控制单元304获取输入,该辅助控制单元提供缺陷特定的信息和/或命令。根据期望的具体实施,这经由程序下载或预先确定的函数的参数执行离线发生,或者经由位置/速度偏移流实时发生。离线方法的示例将是由机器人控制器模块102运行的用本地机器人语言(例如,RAPID、KRL、Karel、Inform等)的预处理机器人程序。另一方面,示例性串流接口将通过机器人OEM提供的传感器接口包,诸如发那科公司的动态路径修改包或库卡公司的机器人传感器接口。在该实时实施方案中,辅助控制器304(下文进一步详细描述)将基于正在修复的缺陷向机器人控制器模块102发送在线实时位置偏移。

在样本实施方案中,具有用于位置校正的在线实时串流的KUKA.RobotSensorInterface选项包的Kuka KR C4控制器可与Kuka KR 60HA机器人操纵器104一起用作机器人控制器102。

在图3的实施方案中,检查前数据模块116和检查后数据模块118为每个待处理的汽车或部件提供全车身检查数据。此处所需的传感器302的类型取决于目前问题的特性(即,底漆或清漆涂层修复)。具体地讲,基底120的表面的镜面反射驱动传感器302的选择。对于高度镜面(反射)表面,通常选择反射方法,其中前沿技术之一是校准的立体偏折法。对于非反射场景(即,底漆修复),投影方法是优选的。这两种方法在其基本数学原理上类似,并且主要不同之处在于其表面照明方法(即,偏折/反射与投影)。除了投影方法之外,对于非镜面场景或混合场景,使用漫反射或非结构化光与常规单色或RGB成像也是有益的。

在汽车车身的清漆涂层修复和足够镜面反射的样本实施方案中,将Micro-Epsilon反射控制成像系统用于检查前模块116和检查后模块118两者,从而实现连续的现场学习和策略改善以及过程漂移补偿。

辅助控制器304用作专用油漆修复端部执行器305、机器人操纵器104和云计算系统306和/或本地现场服务器或边缘计算机之间的中央通信集线器。辅助控制器304接收用于目前修复的所有缺陷检查数据(来自检查前数据和/或任何机器人安装的硬件,诸如端部执行器传感器302),并且将所得策略传输到机器人控制器模块102和端部执行器堆栈305,如图3所示。如上所述,根据特定具体实施,该传输可以是在线的或离线的。辅助控制器304还负责控制任何专有的端部执行器硬件305,诸如顺应力控制单元108、空气/伺服工具、水/化合物分配器、传感器302等。

在样本实施方案中,辅助控制器304包括运行实时/低延迟Linux内核的嵌入式(工业硬化)过程PC。通过UDP协议完成与机器人控制器模块102的通信(经由KUKA.RobotSensorInterface)。与各种端部执行器部件305的通信可为UDP、TCP、USB(其上串行)、数字输入/输出等的混合。

堆栈(端部执行器工具)305可包括样本实施方案中的目标所需的任何过程特定的工具。相对于包括材料移除(砂磨、底漆修复、清漆涂层修复、抛光等)的实施方案,需要某种形式的压力/力控制和/或顺应性。一般来讲,机器人操纵器104本身太过刚性而不能充分地施加用于清漆涂层修复的正确处理力,因此通常需要或期望某种形式的主动顺应性。除了工具303和磨料系统112之外,传感器302也是期望的,因为原位检查允许在处理时间进行局部高保真度测量连同在处理中获得反馈的能力,这对于仅使用检查前和检查后的方法是不可实现的。例如,处理中反馈有助于成功的学习算法。

对于机器人油漆修复(以及更广义地,机器人砂磨)的应用,用作传感器302的期望传感器包括(但不限于)以下各项:

1.使用加速度计或麦克风检测振动并且使用RPM工具,关节受力(即,力、扭矩、加速度和/或速度),包括加速度和/或速度的线性(端部执行器)受力(即,力和/或扭矩)以及力/压力工具检测动力学的本体感受传感器。

2.包括成像传感器、温度传感器和/或湿度传感器的外感受传感器。成像传感器可以是包括RGB传感器、单色传感器、红外传感器、雾度传感器、反射率传感器和/或漫射率传感器的视觉传感器,或者可以是包括RGB-D(结构化光、飞行时间和/或立体摄影测量)、立体偏折法、轮廓测量法和/或显微镜法的地形传感器。外感受传感器还可包括用于弹性体成像(即,GelSight)的触觉传感器。

3.也可使用温度传感器,包括热电偶和/或IR热成像。

4.也可使用湿度传感器。

在用于砂磨、底漆修复、清漆涂层修复和抛光应用的样本具体实施中,磨料/化合物112可包括3M Trizact Finesse-it磨料系统,该磨料系统与3M气动随机轨道式砂磨机一起用作工具303。在这样的样本具体实施中,顺应力控制单元可包括FerRobotics ACF,并且传感器302可包括Pico投影仪、5英寸4K LCD微型显示器、以太网相机和/或GelSight单元。下文提供了传感器302的另外示例。

高水平的手动清漆涂层修复过程在行业中是众所周知和被接受的。这是两步过程:研磨/砂磨和抛光/磨光。从自动化的角度来看,以下输入和输出在不同的实施方案中可能是相关的(具有来自3M Finesse-it系统的示例):

在样本修复场景中,可实现包括此类输入和输出的处理流程,如图4所示。如图4所示,处理流程400包括在402处从检查前数据模块116向辅助控制器304提供检查前数据。检查前数据包含每个所识别的缺陷的全局、车身中心坐标连同缺陷本身的(任选的)几何数据/轮廓和/或分类。在404处,将所识别的缺陷的全局坐标连同任何外部轴(诸如传送带位置)一起传送到机器人控制器模块102,使得机器人操纵器104可使端部执行器连续地紧密接近所识别的缺陷。如果提供了任选的局部缺陷信息和/或分类,则这可用于选择要处理或跳过的缺陷。然后,在406处,辅助控制器模块304结合机器人控制器模块102移动机器人操纵器104并由传感器302触发端部执行器感测,以使用局部未校准的偏折法信息来获取原位局部缺陷检查数据。

在408处,将检查前数据、原位检查数据和系统的当前状态(例如,加载的磨料/化合物、磨料寿命、当前工具等)转移到云计算系统306中的策略服务器309,该策略服务器获取所有检查数据和当前系统状态并使用先前学习的控制策略返回修复动作。然后在410处由辅助控制器通过与机器人控制器模块102和端部执行器堆栈305同时通信来执行来自所学习的策略的返回砂磨动作(两部分修复的步骤一)。该示例中的动作包括用于工具RPM的设定点、压力(到顺应力凸缘中的控制输入)、机器人轨迹和总处理时间。在样本实施方案中,使用KUKA.RobotSensorInterface包接口将机器人轨迹作为与缺陷原点的时变位置偏移来传送。使用传感器302收集原位数据以确保修复的质量。保存原位数据,以便稍后使用条纹图案投影或传统成像来进行学习更新,该传统成像使用单色/RGB相机以及漫反射或非结构化白光以捕获来自新磨损区域的漫反射。

除了驱动所选择的修复策略之外,任何原位成像数据还可用于在引导机器人时定位/伺服去除缺陷,从而消除制造系统中的任何错误。一般来讲,全局检查前数据(如果收集的话)在制造过程中明显地在上游获取,并且到部件到达油漆修复工位时,定位误差可容易地达到英寸的数量级。

如果在414处确定修复不令人满意,则可重复步骤406-412,直到修复被认为是令人满意的,但是在最佳修复策略执行的情况下不需要此类迭代。

还可重复步骤406-414以用于从云计算系统306中的策略服务器309返回的磨光命令(两部分修复的步骤二)。

最后,在416处,由检查后数据模块118收集关于最终修复质量的检查后数据,并且将检查后数据发送到辅助控制器304以进行处理。将所有数据(检查前、原位和检查后)发送到云计算系统306中的策略服务器309,以用于记录和学习更新。该过程随后在418处结束。

策略服务器309在本文中已被描述为位于云计算系统306中。然而,应当理解,策略服务器309可根据期望的具体实施和/或安全性需求而位于制造车间的机器人油漆修复堆栈300的其余部分的本地。在操作中,策略服务器保持一个或多个当前学习的策略,并且基于状态和观察查询提供控制输出。通过适当的学习算法(如下所述)获得策略。策略服务器309的输出的特定性质取决于由辅助控制器304所使用的通信模式(即,在线或离线)。在离线方法中,策略服务器309的输出对应于过程参数,诸如停留时间、压力、速度等。另一方面,在线方法能够输出直接控制机器人的关节(致动器)处的受力的策略。在该场景中,延迟是问题并且通常需要本地(非基于云的)策略服务器309。

在策略服务器309的基于云的样本配置中,策略服务器309接收检查前数据和系统状态作为输入,并且输出处理时间、处理压力、处理速度(RPM)、轨道图案(工具轨迹)等。策略服务器任选地还可接收原位检查数据。

机器学习单元308是与策略服务器309串联运行并运行学习更新以在请求时改善策略的模块。机器学习程序包括学习用于缺陷修复的良好策略,其中策略只是情形(缺陷观察)与行为(机器人动作/修复对策)之间的映射。理想的是,机器学习系统308提供超人性能,因此不能假设存在缺陷和修复对策的显著较大标记数据集。因为现有知识可能不完整,所以系统不使用监督学习技术作为整体解决方案。然而,系统确实具有使用在处理期间收集的传感器反馈将修复识别为良好或不良(或其间的任何地方)的能力,并且还具有使用强化学习来解决缺陷和修复对策的较大标记数据集的缺乏的能力。

强化学习是旨在通过经验改善性能的一类问题和解决方案。一般来讲,强化学习系统具有四个主要元素:策略、回报函数、值函数和系统的任选模型。该策略主要是当其将系统的感知状态映射到动作时有兴趣查找的内容。在本文所述的样本场景中,这是缺陷图像与机器人修复动作之间的映射。可以对图像进行预处理和/或提取特征,但这些不是必需的。回报函数将问题的目标定义为状态(或状态-动作对)之间的映射以及捕获情形期望性的单个数值回报。该系统的目标是识别使回报最大化的策略。值函数是对从用于制定策略的当前状态可实现的未来回报的预测。任选的模型是可用于规划目的的环境的近似值。

一般来讲,大多数强化学习任务(包括用于样本实施方案中的那些强化学习任务),满足马尔可夫特性并且构成马尔可夫决策过程(MDP)。在高水平下,使用机器学习的砂磨和抛光过程的缺陷修复问题可由图5所示的MDP转换图500表示为有限MDP。在图5的MDP转换图500中,使用S={初始(502)、砂磨(504)、抛光(506)、完成(508)}的四个状态来表示任务。初始状态502为其原始、未改变状态下的缺陷。砂磨状态504和抛光状态506分别在砂磨动作和抛光动作之后发生,并且完成状态508标记修复的结束(以及学习阶段的结束)。另一方面,动作由集合A={完成(510)、tendDisc()(512)、砂磨()(514)、抛光剂()(516)}表示。如图所示,完成动作510立即将系统转到(终止)完成状态508。来自初始状态502的完成动作510类似于“不修复”场景,并且使系统能够在缺陷不可修复和/或修复将使系统处于比其原始状态更差的状态的情况下选择不进行修复。tendDisc()512动作向机器人操纵器104发出信号,以获得用于端部执行器堆栈305的新磨料盘112,将水施加到当前盘112,或者执行当前盘112的清洁操作以移除加载的材料。一般来讲,磨料寿命大于单次修复。然而,磨料盘112随时间推移的性能不是恒定的。具有该动作允许系统(最佳地)决定何时需要或期望新磨料盘112。另外,最佳策略将考虑盘的学习的磨料寿命补偿并相应地选择修复动作(例如,当垫磨损/负载时,可能需要更多的力等)。最后两个动作,砂磨()514和抛光()516是处理函数并且一般是参数的。参数包括处理信息,诸如工具RPM、施加的压力、停留/处理时间、修复轨迹等。根据所识别缺陷的性质和要采取的修复动作,多个不同的参数化是可能的。

虽然该问题已表达为有限MDP,但应当理解,每种状态和动作都存在于连续域内。例如,高水平的砂磨状态504表示砂磨发生后的缺陷,但状态本身包括砂磨之后的缺陷的成像数据,该成像数据固有地为高维和连续的。另外,砂磨动作514和抛光动作516分别是参数函数,其中参数本身是连续的。

如图6所示的另选简化MDP转换图600是可能的,其中完全修复由单个砂磨动作514、之后是单个抛光动作516组成。MDP转换图600减少了任何给定状态下的动作数量,并且因此减小了目前问题的维度。虽然MDP转换图600构成简化,但是问题可更一般地以完全连续的方式来表达,其中状态被扩展成包括机器人的关节位置/速度,并且动作被扩展成由位置、速度或受力命令组成。在该场景中,机器人操纵器104没有被给予有限状态转换形式的修复过程的经验领域知识,而是必须学习实现期望过程的实时控制动作。然而,该问题公式化需要显著更多的经验来收敛到有用的策略,并且对于目前工业任务可能不必要地为普遍的。

在使用中,系统继续拍摄图像并在过程中提供传感器反馈,该传感器反馈用于在运行中调节系统参数。

机器学习系统的样本实施方案也可在所示的自动化机器人清漆涂层缺陷修复系统上实现。描述了两种可能的算法具体实施:图5和图6所示的MDP转换图中的每一者有一种可能的算法具体实施。对于两个示例,使用相同的硬件设置,包括机器人操纵器104和机器人控制器102,它们使用Kuka KR10 R900 sixx与KR C4 compact控制器来实现;工具303,其包括结合FerRobotics ACF/111/01XSHD主动接触凸缘的机器人安装的定制随机轨道式砂磨机(ROS);磨料/抛光盘,其包括3M Finesse-it系统(例如,具有3M抛光和对应的支撑垫/附件的3M Trizact磨料盘);以及传感器302,其包括5"4K LED显示器、1080P Pico投影仪和5MP彩色CCD摄像机,用于以镜面(偏折法)和漫射(条纹投影)两种模态成像。

利用上述设置,使用图5的较大n步MDP转换图应用上述系统和方法。在这种情况下,深度确定性策略梯度(DDPG)与分级经验回放(HER)和稀疏回报(经由预先训练的分类器)一起使用。

上述系统和方法也使用图6的简化的较小2步MDP转换来应用,假定利用成像的砂磨和抛光的处理步骤紧接在每个步骤之前。在这种情况下,再次使用深度确定性策略梯度(DDPG),但替代地使用基于图像的成形回报(类似于感知回报函数的工作),其基于修复区域与“良好”周围区域相比的相似性度量。该方法基于这样的观察,即完全修复与周围未修复的良好区域没有区别。

上述系统和方法也使用图6的简化的较小2步MDP转换来应用,假定利用成像的砂磨和抛光的处理步骤紧接在每个步骤之前。在这种情况下,连续的参数动作与离散化参数一起用作输入,从而使得能够使用深度Q学习(DQN)。这种情况可使用稀疏回报或成形回报中的任一者。

任何强化学习问题中的重要问题是为学习算法生成足够的经验以收敛到期望的最佳策略。在工业处理应用中,生成足够的经验是显著的问题,并且通常成本过高和/或耗时。所有强化学习的一种通用方法是利用足够好的计算机(数字)模拟来生成经验。然而,对于工业任务和一般的处理,构建准确的计算机模拟的任务可能与找到最佳策略的问题一样困难或者甚至更难。也就是说,找到产生低成本、数据丰富的真实世界经验的有效和更熟练的方式常常是重要的。在这方面,生成足以反映感兴趣的实际制造过程的物理模拟。

相对于目前的领域,机器人油漆修复,由于该过程本质上固有地为“破坏性”的以及因此不可逆的(即,施加到油漆缺陷的任何处理将改变缺陷的状态),该问题甚至更困难。下文概述了用于数据收集程序和缺陷部件创建两者的实施方案。

某种形式的模拟(数字或物理)通常是期望的,以便为所应用的学习算法生成足够量的经验。下面在油漆修复的上下文中概述了几种可能的方法。

首先应注意,绝大部分油漆修复发生在表现出2D歧管结构的车身区域上(即,它们在单次修复的上下文中是局部平坦的)。汽车车身的高曲率区域(例如,在装饰物、门把手等周围)是例外,但是一般来讲,来自平坦表面的所学习的策略可应用于具有一些机器人轨迹修改的弯曲表面。考虑到这一点,方便的(从成本和处理的角度来看)标准化是对于大多数数据收集和经验生成使用平坦的刷上油漆的基底。

平坦的刷上油漆的矩形测试面板可商购获得于具有多种可用的不同厚度、大小、油漆、清漆涂层、面漆下涂层等的多种不同基底上。面板可购自这样的商业来源或使用与待学习的过程相同或类似的方法和装备来制备。

理想的是,始终不会在制造部件上引入油漆缺陷,并且因此制造过程被设计成生产可能的最佳部件。实际上,确实存在缺陷;然而,从强化学习的角度来看,任何生产部件或模拟测试/学习基底上的缺陷密度都相对较低。每个制造过程在质量方面都不同,但每千平方英寸油漆具有大约小于一个缺陷并不罕见。因此,找到足够量的缺陷以生成学习算法的经验可能变得非常昂贵。

为了解决该问题,已开发出生成缺陷足够密集的基底的方法。对于任何方便的标准大小的平坦基底,产生缺陷密度为大约每平方英寸大于一个的有缺陷的油漆和/或清漆涂层。确切的密度是可调节的,但是特定的密度导致学习基底的任何任意栅格离散化将包含至少一个缺陷的概率很高。

通过利用(合成)污染物、硅氧烷、油漆/清漆涂层喷涂速率/图案、溶剂等的组合,可以模仿大多数感兴趣的天然存在的缺陷,诸如尖头(污染物)、凹坑、鱼眼、液滴、表膜不匀等。图7示出了在清漆涂层下面引入特定大小的合成污垢的结果。图7示出了高密度缺陷学习基底,其中缺陷在顶篷光反射的边界处最为可见。为了制备该学习基底,从可商购获得的刷上油漆并且涂覆有清漆涂层的测试面板开始。将面板整体砂磨(在随机轨道式工具上使用3M Trizact 6英寸盘),然后在重新施加清漆涂层和最终固化之前用合成污垢进行处理。

附加方法涉及使用足够薄的面板并且以受控方式(例如,利用弹簧加载的冲头)冲压背面以在顶部上产生凸起的缺陷。虽然方便,但此类缺陷并不总是像天然存在和在OEM环境中的那些缺陷一样模仿精确的修复行为。

以下为用于收集缺陷修复数据的示例性程序。不管缺陷的类型、数量和/或存在与否,系统都在多个离散的预先确定的位置处对基底执行缺陷修复(参见例如下文的离散化和讨论)。除了学习/优化算法差异之外,单个基底的基本处理结构如下:

从图5和图6的MDP中获取指定状态砂磨和完成,并且由指定的学习/优化算法提供由动作获取的任何参数。

如所概述的,首先对基底进行成像,并且随后呈现给机器人以进行砂磨。基底经由压紧机构(例如,磁体、真空、夹具等)固定。在预定义栅格的每单元基础上,算法首先经由tendDisc()动作执行盘保养。这导致磨料盘的清洁、润湿和/或改变的某种组合。然后基于当前经由策略服务器提供的策略的成像数据(缺陷特性)来采取砂磨()动作。

在每个栅格位置被砂磨之后,然后在抛光之前再次对面板进行成像。同样,在每单元基础上,机器人用施加到每个栅格单元的指定抛光来抛光基底的预先确定栅格位置中的每个栅格位置。在抛光之后,再次对面板进行成像。

在如上所述处理整个面板之后,在修复过程之前、期间和之后,经由成像数据的缺陷特性可用于栅格单元中的每个栅格单元。另外,结合特性成像数据为每个单元存储所执行的策略。在已处理规定数量的基底之后,对单元中的每个单元运行强化学习更新。

上述内容可基于速度和成本要求在自动化范围上实现。简单的具体实施可对于砂磨动作和抛光动作中的每一者使用单独的机器人,并且可使用台式成像设置,其中操作人员负责在单元之间移动基底以及在需要时更换盘。完全自动化的设置可以包括用于端部执行器的工具更换,并且因此可用单个机器人来实现。另外,传送机可用于基底处理,或者成像可经由安装在单元上的相机或成像端部执行器在机器人单元内发生。

利用具有高密度缺陷的刷上油漆的基底和自动化的基于栅格的策略执行的上述方法,期望使栅格离散化尽可能紧密以使每个基底的使用部分最大化。作出规定以使得在基底处理程序期间没有修复干扰其相邻单元。一种方法是选择最紧密的单元离散化,使得任何特定的修复动作完全存在于单个单元内。这种原始方法虽然可行,但可能导致对基底的利用不佳。

使用3M Finesse-it系统作为示例,概述了用于有效基底处理的样本离散化。在该系统中,磨料盘显著小于磨光垫(例如,直径为1英寸-1/4英寸的砂磨垫与直径为3英寸-1/2英寸的磨光垫)。另外,随机轨道式工具上的抛距分别为1/4英寸和1/2英寸。假定具有至少半直径的圆形轨迹重叠,则用于砂磨和抛光的最小修复影响区域分别是直径为2英寸-1/4英寸和6英寸的圆圈。此处可以看出,所需的磨光区域大得多,并且因此通过极大地限制修复单元嵌套密度而显著造成基底浪费。

为了克服该限制,可以设计出在相邻单元之间共用抛光的修改的面板处理程序。相邻批次的单元可被独立地磨光,然后使用由各个单元的抛光轨迹的串接形成的抛光轨迹一起抛光。

作为示例,使用3M-Finesse-it建议的“L”形抛光轨迹,其中缺陷位于“L”的左下顶点处,并且抛光垫以交替的上下运动和左右运动移动。利用该图案,可以通过旋转和平移来将四个“L”放置在一起以形成正方形。因此,可独立地砂磨一起形成正方形的四个单元,然后使用正方形抛光轨迹对其进行抛光。该方法极大地提高了可实现的单元密度,并且允许在12英寸×18英寸的基底上有最多24个修复单元。图8示出了由透明圆圈800描绘的样本抛光图案。缺陷位置被描绘为点802。具有虚线轮廓的圆圈表示修复区域804。每次抛光机停止时,“L”图案806(左)和正方形图案808(右)由带有数字的箭头810表示。图9示出了在18英寸×24英寸面板基底902上具有前述Finesse-it附件尺寸的抛光图案900的高效嵌套的示例。每组四次砂磨修复共用图8(右)中的单个正方形抛光路径。

一般来讲,缺陷特性可被视为以下各项的任何组合:

工程化特征(大小、类型等)

原始图像数据(强度值的矩阵/张量)

修复前、修复中(原位)或修复后收集

当前方法使用一般以人为中心的工程化特征。即,它们基于当前手动过程的历史专业知识而存在。此类特征包括“有意义的”量度,诸如缺陷的类型、缺陷的大小、缺陷的严重性等。在实践中,每个制造商具有其自身的一组特征和相应的分类,这些特征和分类随时间推移以油漆修复过程的操作程序的形式演变。另外,许多较新的自动化检查提供伴随着其自身的分类和特征。例如,图10示出了由Micro-Epsilon反射控制装置1002提供的一系列油漆缺陷图像1000。这些分类传统上是基于人类处理经验/专业知识来凭经验设计的,但是其他方法已经成功地使用了较新的机器学习技术,诸如监督学习和无监督学习。

虽然看起来有吸引力,但机器人过程不一定受益于此类以人为中心的特征、分类和/或描述符。通过使用强化学习技术连同深度神经网络,系统被给予经由卷积核在内部学习其自身的表示的自由,该卷积核在过程领域(即,机器人油漆修复)的上下文中最佳地捕获缺陷特性。

发明人已发现使用未处理的、未校准的和/或原始的成像数据代替前述传统的工程化特征描述符的益处。未校准的偏折法数据在样本实施方案中使用。该方法极大地减轻了系统的复杂性,因为校准、对准和处理可能是实现这样的视觉处理的最困难部分。另外,使用未校准的和/或原始的成像极大地减小了保持负担,并且允许可以采取原位处理成像和数据的较小(安装机器人的)系统。这可极大地改善系统的学习速率以及改善总体能力、性能、反馈、分析选项等。

图11-图13示出了可如何使用未校准的偏折法图像来计算缺陷的局部曲率图。图11示出八个图像,四个具有偏折的垂直条纹图案1100,并且四个具有偏折的水平条纹图案1102,每个图像都是在图案源偏移π/2的倍数处拍摄的。图12示出了使用四个偏折的条纹图案上的像素的反正切计算出的水平曲率图和垂直曲率图。顶部1200是反正切(模2π)的结果,中间1202是解缠的相移的结果,并且底部1204是使用一阶有限像素级差值近似的局部曲率的结果。图13是组合了水平结果和垂直结果两者的复合(平方和的平方根)局部曲率图,该水平结果和垂直结果被可视化为强度图1300和网状栅格1302两者。

使用偏折法计算表面的高度图的更常见的动作需要对所测量的相移进行积分,并且因此对校准和噪声非常敏感。局部曲率改为使用导数,因此不太敏感。另外,如果仅关注显著小的区域(即,单个缺陷修复),则可作出以下假设:低曲率特征不相关(即,2D歧管),并且因此可利用相对曲率作为缺陷大小和强度的指示符。

在上述示例中,局部曲率是手动提取的,但仅为了示出这样的信息存在于原始成像数据内并且是有用的。在实践中,强化学习算法将发现类似的(可能更相关的)特征和映射。

上述示例的另一个感兴趣的用途是构造回报函数和缺陷分类。局部曲率图提供简单的阈值方法,其中如果最大局部曲率超过某个阈值,则区域被标记为有缺陷的。

实用性还可存在于使用近暗场反射光以及用非结构化白光和RGB/单色相机进行的常规成像的更简单方法中。前者对镜面(处理前/处理后)和哑光/漫射(处理中)原位起作用,并且后者原位起作用。图14示出了样本近暗场反射图像1400。在该方法中,像素强度可被解释(利用关于表面均匀度的一些假设)为表面梯度(即,斜率)的近似值。因此,此类图像具有提供表面/缺陷信息的能力,而没有像偏折方法那样的相位解缠的计算负担。

以强化学习能够推断其自身的特征表示的相同方式,强化学习还能够学习使用对磨料未来性能的影响。换句话讲,磨料在其整个寿命中表现不同。通过在MDP状态增强中对盘的使用进行编码,策略可以基于磨料的预测状态来选择动作。一些可能的编码仅包括修复的次数,或力、时间等的更复杂的函数。另一种方法是经由来端部执行器的原位数据收集结合指示性能的测量诸如振动/热量/等,或者甚至将传感器放置在磨料制品(或抛光垫)本身内。在该方法中,允许强化学习算法直接识别和利用在过程中观察和预测性能之间的映射。

图15示出了可被编程到适用于实现本文所公开的系统的一个或多个实施方案的专用计算机中的典型通用计算机。上述机器人控制器模块102、辅助控制模块304、机器学习单元308和云计算系统306可在专用处理装置上或任何通用处理部件上实现,诸如具有足够的处理能力、存储器资源和通信吞吐能力以处理置于其上的必要工作负荷的计算机。这样的通用处理部件1500包括与存储器装置通信的处理器1502(其可被称为中央处理器单元或CPU),该存储器装置包括二级存储装置1504、只读存储器(ROM)1506、随机存取存储器(RAM)1508、输入/输出(I/O)装置1510和网络连接性装置1512。处理器1502可被实现为一个或多个CPU芯片,或者可为一个或多个专用集成电路(ASIC)的一部分。

二级存储装置1504通常由一个或多个磁盘驱动器或磁带驱动器构成,并且用于数据的非易失性存储,并且如果RAM 1508不够大以保持所有工作数据,则用作溢出数据存储装置。二级存储装置1504可用于存储程序,当此类程序被选择用于执行时,其被加载到RAM1508中。ROM 1506用于存储指令以及可能在程序执行期间读取的数据。ROM 1506是非易失性存储器装置,其通常相对于二级存储装置1504的较大存储器容量具有较小存储器容量。RAM 1508用于存储易失性数据并且可能用于存储指令。对ROM 1506和RAM 1508两者的访问通常快于对二级存储装置1504的访问。

本文所述的装置可被配置为包括存储计算机可读指令的计算机可读非暂态介质以及联接到存储器的一个或多个处理器,并且在执行计算机可读指令时,将处理部件1500配置为执行上文参考图1至图6所述的方法步骤和操作。计算机可读非暂态介质包括所有类型的计算机可读介质,包括磁存储介质、光学存储介质、闪存介质和固态存储介质。

应当进一步理解,包括如上文参考本公开的任一个或所有步骤所述的促进处理和操作的一个或多个计算机可执行指令的软件可安装在符合本公开的消费者和/或生产者领域内的一个或多个服务器和/或一个或多个路由器和/或一个或多个装置中并且与其一起销售。替代地,软件可被获得并加载到符合本公开的消费者和/或生产者领域内的一个或多个服务器和/或一个或多个路由器和/或一个或多个装置中,包括通过物理介质或分发系统(包括例如从软件创建者所拥有的服务器或从软件创建者不拥有但使用的服务器)获得软件。例如,软件可存储在服务器上以用于通过互联网分发。

另外,本领域的技术人员应当理解,本公开并不将其应用局限于以下描述中提出的或附图中示出的部件的构造和布置的细节。本文中的实施方案能够具有其他实施方案,并且能够以各种方式实践或进行。另外,应当理解,本文中使用的措辞和术语是用于说明目的而不应视为限制性的。本文中“包括”、“包含”或“具有”以及其变型的使用意指涵盖其后所列举的项目及其等同形式以及附加的项目。除非另外限制,否则术语“连接”、“联接”和“安装”及其在本文中的变型形式按广义使用,并且涵盖直接和间接的连接、联接和安装。此外,术语“连接”和“联接”及其变型形式不限于物理或机械连接或联接。此外,诸如上、下、底部和顶部之类的术语是相对的,并且用于帮助说明,而不是限制性的。

根据本发明的图示实施方案采用的示例性装置、系统和方法的部件可至少部分地在数字电子电路、模拟电子电路中,或在计算机硬件、固件、软件中,或在它们的组合中实现。这些部件可被实现为例如计算机程序产品,诸如计算机程序、程序代码或计算机指令,它们有形地体现在信息载体中或机器可读存储装置中以供数据处理设备(诸如可编程处理器、计算机或多个计算机)执行或控制数据处理设备的操作。

计算机程序可以以任何形式的编程语言(包括编译性或解释性语言)编写,并且其可以以任何形式被部署,包括作为独立程序或者作为模块、部件、子例程、或适用于计算环境中的其他单元。计算机程序可被部署为在一个计算机上执行,或在位于一个站点处或分布在多个站点上并通过通信网络互连的多个计算机上执行。另外,用于实现本发明的函数程序、代码和代码段可由本发明所属领域的程序员容易地解释为在本发明的范围内。与本发明的示例性实施方案相关联的方法步骤可由执行计算机程序、代码或指令以执行函数的一个或多个可编程处理器来执行(例如,通过对输入数据进行操作和/或生成输出)。例如,方法步骤也可通过专用逻辑电路(例如,FPGA(现场可编程门阵列)或ASIC(专用集成电路))来执行,并且本发明的设备可被实现为专用逻辑电路。

可用被设计成执行本文描述的功能的通用处理器、数字信号处理器(DSP)、ASIC、FPGA或其他可编程逻辑装置、离散门或晶体管逻辑器件、离散硬件部件、或它们的任何组合来实现或执行结合本文公开的实施方案描述的各种示例性逻辑块、模块和电路。通用处理器可以是微处理器,但在替代形式中,处理器可以是任何常规处理器、控制器、微控制器或状态机。处理器还可被实现为计算装置的组合,例如,DSP和微处理器的组合、多个微处理器、结合DSP核的一个或多个微处理器、或任何其他这样的配置。

适用于执行计算机程序的处理器包括(以举例的方式)通用和专用微处理器、以及任何类型的数字计算机中的任何一个或多个处理器。一般来讲,处理器将接收来自只读存储器或随机存取存储器或者这两者的指令和数据。计算机的基本元件为用于执行指令的处理器和用于存储指令和数据的一个或多个存储器装置。一般来讲,计算机还将包括用于存储数据的一个或多个大容量存储装置(例如,磁盘、磁光盘或光盘),或者将可操作地联接以从大容量存储装置接收数据、或将数据传输至大容量存储装置、或上述两者。适于体现计算机程序指令和数据的信息载体包括所有形式的非易失性存储器,包括例如半导体存储器装置,例如电可编程只读存储器或ROM(EPROM)、电可擦除可编程ROM(EEPROM)、闪存存储器装置和数据存储盘(例如,磁盘、内部硬盘或可移动盘、磁光盘、以及CD-ROM和DVD-ROM盘)。处理器和存储器可由专用逻辑电路进行补充或者可结合到专用逻辑电路中。

本领域的技术人员应当理解,可使用各种不同工艺和技术中的任一者来表示信息和信号。例如,可在整个以上描述中引用的数据、指令、命令、信息、信号、位、符号和芯片可由电压、电流、电磁波、磁场或粒子、光场或粒子、或它们的任何组合来表示。

本领域的技术人员还应当理解,结合本文公开的实施方案描述的各种示例性逻辑块、模块、电路和算法步骤可被实现为电子硬件、计算机软件、或两者的组合。为了清楚地示出硬件和软件的该可互换性,各种示例性组件、块、模块、电路和步骤在以上已经大体依据它们的功能进行了描述。这种功能被具体实施为硬件还是软件取决于特定应用和施加于整体系统的设计限制。技术人员可针对每个特定应用以不同方式实现所描述的功能,但不应将此类实现决策解释为造成脱离本发明的范围。软件模块可驻留在随机存取存储器(RAM)、闪存存储器、ROM、EPROM、EEPROM、寄存器、硬盘、可移动盘、CD-ROM、或本领域已知的任何其他形式的存储介质中。示例性存储介质联接到处理器,使得处理器可从存储介质读取信息并且将信息写入存储介质。在替代形式中,存储介质可以与处理器成一整体。换句话讲,处理器和存储介质可驻留在集成电路中或被实现为离散部件。

如本文所用,“机器可读介质”意指能够暂时或永久地存储指令和数据的装置,并且可包括但不限于随机存取存储器(RAM)、只读存储器(ROM)、缓冲存储器、闪存存储器、光学介质、磁介质、高速缓存存储器、其他类型的存储装置(例如,可擦除可编程只读存储器(EEPROM))、和/或它们的任何合适的组合。术语“机器可读介质”应视为包括能够存储处理器指令的单个介质或多个介质(例如,集中式或分布式数据库,或相关联的高速缓存和服务器)。术语“机器可读介质”还应视为包括任何介质或多个介质的组合,其能够存储供一个或多个处理器执行的指令,使得指令在由一个或多个处理器执行时使一个或多个处理器执行本文所述的方法中的任一种或多种方法。因此,“机器可读介质”是指单个存储设备或装置,以及包括多个存储设备或装置的“基于云的”存储系统或存储网络。就此类信号是暂态的而言,如本文所用的术语“机器可读介质”排除信号本身。

上述描述和附图仅旨在作为示例,并非旨在以任何方式限制示例性实施方案,除非在所附权利要求书中提出。需注意,上文已描述的各种示例性实施方案的各种元件的各种技术方面可以以许多其他方式组合,所有这些方式都被认为在本公开的范围内。

因此,虽然为了说明目的而公开了示例性实施方案,但本领域的技术人员将理解,各种修改、添加和替换是可能的。因此,本公开不限于上述实施方案,而是可在所附权利要求书的范围连同其等同物的完整范围内进行修改。

相关技术
  • 用于机器人油漆修复的学习框架
  • 使用深度学习用于有人值守的机器人的面部识别框架
技术分类

06120112549465