机器人视觉系统及其处理方法与流程

文档序号:19481034发布日期:2019-12-21 03:20阅读:920来源:国知局

本发明涉及一机器人技术,尤其涉及一种机器人视觉系统及其处理方法。



背景技术:

随着科技的发展,机器人视觉技术得到了很大的发展,并且相应的视觉识别算法也逐渐成熟。然而,机器人视觉系统的采样率低、图像数据量大、算法复杂度高、运行周期长等问题阻碍了机器人视觉的推广应用。随着云技术的不断成熟,出现了云机器人的概念。云机器人就是云计算与机器人学的结合,就像其它网络终端一样,机器人本身不需要存储所有资料信息,或具备超强的计算能力,只是在需要的时候可以连接相关服务器并获得所需信息。这种方式是解决上述瓶颈问题的重要途径。传统的机器人视觉系统存在以下不足:

(1)传统机器人本体携带大量的计算和存储等设备,这样就导致机器人的功能与机器人自身的轻量化、低成本相矛盾;

(2)传统机器人视觉识别平台采用高性能计算机的单机训练模式,导致系统代码不能复用且很难解决异构机器人的代码使用问题;

(3)传统的并行计算大多依托于高性能计算机集群,高性能计算机更新换代速度太快造成成本较高并且服务器节点数量相对固定,不够灵活;传统私有图像识别平台缺乏相关网络安全防护,极易造成黑客、病毒等干扰,而且平台服务器硬件维护和管理,浪费大量的人力及物力资源。

(4)目前,机器人没有统一的体系结构,其功能构件的模块化与标准化缺乏相应的标准体系与接口规范,在研发中存在大量低水平的简单重复工作,不能实现各种功能构件之间的可重用与置换,因此没有形成专业化的配套与产业链分工,不能实现工业化级别的生产,致使制造成本高昂,制约了其产业的形成和发展。

以上不足导致了机器人的图像识别效率低、周期长且数据结构、协议不统一等问题阻碍了视觉在机器人方向的应用推广。



技术实现要素:

本发明的目的是提供一种机器人视觉系统,通过将主机和至少一个从机经云服务器相通讯,可将机器人自身的高性能计算、大存储模块全部卸载,所有的运算模块、存储模块、算法模块全部依靠远程云平台执行,降低了机器人的成本且使机器人更加轻量化。

为实现上述目的,本发明提供了一种机器人视觉系统,包括图像采集机构和图像处理机构,所述图像处理机构包括主机处理模块和至少一个经与服务器与所述主机处理模块相通讯的从机处理模块;

所述主机处理模块包括:

图像接收单元,用于实时接收图像采集机构传送来的编码后的视频帧图像;

存储文件信息检测单元,用于实时检测各从机处理模块的存储文件信息;

文件存储任务分配单元,用于根据从机处理模块的存储文件信息,向各从机处理模块分配相应的文件存储任务,将编码后的视频帧图像存储至相应的从机处理模块内;

图像识别任务分配单元,用于向各从机处理模块分配图像识别任务;所述从机处理模块包括图像识别任务接收单元,用于接收图像识别任务;且所述从机处理模块内配置有封装若干个图像识别算法的图像识别引擎;

算法调取单元,用于调取图像识别引擎内相应的图像识别算法来执行图像识别任务;

识别结果传送单元,用于将识别结果传送至主机处理模块。

优选的,所述图像采集机构包括光学组件和ccd图像传感器,所述光学组件依次经所述ccd图像传感器、ad转换模块将采集的图像信息发送至所述图像处理机构。

优选的,所述存储文件信息检测单元包括:

从机故障检测部分,用于接收各个从机处理模块发送的心跳信号,若主机处理模块接收到心跳信号时,则判断从机处理模块正常工作;否则,判断从机处理模块发生故障;

文件存储信息接收部分,用于接收正常工作的从机处理模块发送来的块状态信号以及从机处理模块的文件存储信息。

优选的,所述从机处理模块还包括识别结果汇总单元,用于获取其他从机处理模块内的识别结果并进行汇总。

优选的,所述图像处理机构还包括ps端,所述ps端与可编程逻辑pl端通过axi总线相通讯。

优选的,所述ps端设有相应外设接口,所述外设接口包括sd卡接口、以太网接口、usb接口和can通讯接口。

优选的,所述图像处理机构为镶嵌有arm硬核的fpga处理器。

一种机器人视觉系统的处理方法,包括以下步骤:

s1、主机处理模块实时检测各个从机处理模块的存储文件信息;

s2、图像采集

外界光线通过光学组件形成ccd图像传感器的感光面上的入射光,其感光区域通过光电二极管将光信号转换为电荷信号,通过驱动信号从ccd图像传感器的输出端串行输出模拟量信号到ad转换模块实现采样转换为数字信号并编码;

s3、主机处理模块实时接收图像采集机构传送来的编码后的视频帧图像;

s4、图像分配

根据从机处理模块的存储文件信息,主机处理模块向各个从机处理模块分配相应的文件存储任务,将编码后的视频帧图像存储至相应的从机处理模块内;

s5、主机处理模块向各个从机处理模块分配图像识别任务;

s6、从机处理模块接收图像识别任务并调取图像识别引擎内相应的图像识别算法来执行图像识别任务;

s7、将识别结果由主机反馈至主机处理模块。

优选的,步骤s2具体包括以下步骤:

s21、各个从机处理模块发送心跳信号至主机处理模块,若主机处理模块接收到心跳信号时,则判断从机处理模块正常工作,进入下一步;否则,判断从机处理模块发生故障,结束;

s22、正常工作的从机处理模块向主机处理模块发送块状态信号,从机处理模块将自己的文件存储信息以块状态的形式发送给主机处理模块。

优选的,步骤s6具体包括以下步骤:

s61、图像预处理

对视频帧图像中的待识别部分进行切割,将切割后的视频帧图像分别进行灰度化和大小归一化处理,得到预处理图像;

s62、参数训练

将预处理图像转换成一个特征向量集,根据特征向量集生成特征空间;其中,每一个图像对应特征空间中的一个点;

s63、输入检测识别

将待识别图像投影到特征空间,并通过待识别图像的投影点在特征空间的位置以及投影线的长度来进行判定和识别图像。

本发明有益效果如下:

1、降低了机器人本体的成本,更能推动服务机器人到家庭的应用。本发明采用远程人脑的思想,将机器人自身的高性能计算、大存储模块全部卸载,所有的运算模块、存储模块、算法模块全部依靠远程云平台执行,降低了机器人的成本且使机器人更加轻量化。

2、将arm的强大计算功能和fpga的拓展功能进行结合,具有很强的拓展性,能够提供多种接口满足不同场合需要,并且具有较强的图像预处理功能,并且通过以太网接口接受远程控制并远程传输对运动目标的检测和跟踪结果。

3、提高了平台性能扩展灵活性,传统机器人自带的存储、计算模块不能随意的进行扩展,对于机器人用户来说随意修改机器人的硬件配置难度较大。而本发明提出采用分布式服务器集群作为机器人的智能决策终端,采用低廉的服务器集群,通过增加数据节点的方式来提高云计算的运算能力,大大降低了服务器集群的成本并可以按需来定制服务器节点。

4、采用一种并行的运算模型,采取将任务粒分配到多个服务器的计算节点上运行,大大提高了任务执行速度,满足了机器人高实时性的要求。

5、消除了机器人程序异构性。采用面向服务的封装模式,将图像处理任务进行封装,消除了传统异构机器人调用程序时由协议、数据结构、接口等原因造成的无法调用等问题。

6、采用ffmpeg编码器以及h264编码方法对视频进行编解码并采用rtp协议进行码流传输,提高了图像传输速率,降低了系统的整体运行周期。

7、由于本平台采用第三方运营商服务器,运营商负责提供自定义云资源网络拓扑结构的能力,解决ip规划、负载均衡、vpc互通、专线接入和安全防护相关问题,降低了机器人用户及机器人研发的后台维护成本。

下面通过实施例,对本发明的技术方案做进一步的详细描述。

具体实施方式

以下将对本发明作进一步的描述,需要说明的是,本实施例以本技术方案为前提,给出了详细的实施方式和具体的操作过程,但本发明的保护范围并不限于本实施例。

本发明的结构,包括图像采集机构和图像处理机构,所述图像处理机构包括主机处理模块和至少一个经与服务器与所述主机处理模块相通讯的从机处理模块;

所述主机处理模块包括:

图像接收单元,用于实时接收图像采集机构传送来的编码后的视频帧图像;

存储文件信息检测单元,用于实时检测各从机处理模块的存储文件信息;

文件存储任务分配单元,用于根据从机处理模块的存储文件信息,向各从机处理模块分配相应的文件存储任务,将编码后的视频帧图像存储至相应的从机处理模块内;

图像识别任务分配单元,用于向各从机处理模块分配图像识别任务;所述从机处理模块包括图像识别任务接收单元,用于接收图像识别任务;且所述从机处理模块内配置有封装若干个图像识别算法的图像识别引擎;

算法调取单元,用于调取图像识别引擎内相应的图像识别算法来执行图像识别任务;

识别结果传送单元,用于将识别结果传送至主机处理模块。

优选的,所述图像采集机构包括光学组件和ccd图像传感器,所述光学组件依次经所述ccd图像传感器、ad转换模块将采集的图像信息发送至所述图像处理机构。

优选的,所述存储文件信息检测单元包括:

从机故障检测部分,用于接收各个从机处理模块发送的心跳信号,若主机处理模块接收到心跳信号时,则判断从机处理模块正常工作;否则,判断从机处理模块发生故障;

文件存储信息接收部分,用于接收正常工作的从机处理模块发送来的块状态信号以及从机处理模块的文件存储信息。

优选的,所述从机处理模块还包括识别结果汇总单元,用于获取其他从机处理模块内的识别结果并进行汇总。

优选的,所述图像处理机构还包括ps端,所述ps端与可编程逻辑pl端通过axi总线相通讯。

优选的,所述ps端设有相应外设接口,所述外设接口包括sd卡接口、以太网接口、usb接口和can通讯接口。

优选的,所述图像处理机构为镶嵌有arm硬核的fpga处理器。

一种机器人视觉系统的处理方法,包括以下步骤:

s1、主机处理模块实时检测各个从机处理模块的存储文件信息;

s2、图像采集

外界光线通过光学组件形成ccd图像传感器的感光面上的入射光,其感光区域通过光电二极管将光信号转换为电荷信号,通过驱动信号从ccd图像传感器的输出端串行输出模拟量信号到ad转换模块实现采样转换为数字信号并经图像编码传输模块编码;

步骤s2具体包括以下步骤:

s21、各个从机处理模块发送心跳信号至主机处理模块,若主机处理模块接收到心跳信号时,则判断从机处理模块正常工作,进入下一步;否则,判断从机处理模块发生故障,结束;

s22、正常工作的从机处理模块向主机处理模块发送块状态信号,从机处理模块将自己的文件存储信息以块状态的形式发送给主机处理模块。

s3、主机处理模块实时接收图像采集机构传送来的编码后的视频帧图像;图像采集机构采用实时传输协议rtp来传送编码后的视频帧图像,采用rtp协议进行码流传输,提高了图像传输速率,降低了系统的整体运行周期。且实时传输协议rtp的底层采用udp协议传输,udp的传输时延低于tcp,能与视频和音频很好匹配,能够满足对实时视频传输的要求。

s4、图像分配

根据从机处理模块的存储文件信息,主机处理模块向各个从机处理模块分配相应的文件存储任务,将编码后的视频帧图像存储至相应的从机处理模块内;

s5、主机处理模块向各个从机处理模块分配图像识别任务;

s6、从机处理模块接收图像识别任务并调取图像识别引擎内相应的图像识别算法来执行图像识别任务;

步骤s6具体包括以下步骤:

s61、图像预处理

对视频帧图像中的待识别部分进行切割,将切割后的视频帧图像分别进行灰度化和大小归一化处理,得到预处理图像;

s62、参数训练

将预处理图像转换成一个特征向量集,根据特征向量集生成特征空间;其中,每一个图像对应特征空间中的一个点;

s63、输入检测识别

将待识别图像投影到特征空间,并通过待识别图像的投影点在特征空间的位置以及投影线的长度来进行判定和识别图像。

s7、将识别结果由主机反馈至主机处理模块,且将识别结果送至主机处理模块之前,还包括将识别结果在任一从机处理模块中进行汇总。。

因此,本发明采用上述结构的机器人视觉系统,通过将主机和至少一个从机经云服务器相通讯,可将机器人自身的高性能计算、大存储模块全部卸载,所有的运算模块、存储模块、算法模块全部依靠远程云平台执行,降低了机器人的成本且使机器人更加轻量化。

最后应说明的是:以上实施例仅用以说明本发明的技术方案而非对其进行限制,尽管参照较佳实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对本发明的技术方案进行修改或者等同替换,而这些修改或者等同替换亦不能使修改后的技术方案脱离本发明技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1