图像处理方法、机器人及计算机可读存储介质
文献发布时间:2023-06-19 10:57:17
技术领域
本申请涉及机器人领域,特别是涉及一种图像处理方法、机器人及计算机可读存储介质。
背景技术
随着机器人技术的飞速发展,工业机器人已广泛应用于各个领域的工业现场,服务机器人也正走向我们生活的方方面面。
国际机器人联合会统计数据显示,2019年中国服务机器人市场规模约22亿美元,约占全球25%的市场份额。服务机器人应用场景复杂多样、具体细分种类繁多。其可应用在零售、物流、医疗、教育、安防等众多行业和场景,实现引导接待、物流配送、清扫、陪伴教学、安防巡检等多样化、复合型功能。根据应用场景和功能可将其分为家用服务机器人、医疗服务机器人以及公共服务机器人等。
然而各种服务类机器人多数都存在功能单一,适应性不强的问题。
发明内容
本申请提供一种图像处理方法、机器人及计算机可读存储介质,以解决相关技术中机器人功能单一的问题。
为解决上述技术问题,本申请提供一种图像处理方法。该方法应用于机器人,方法包括:响应于识别出当前环境中包括人体,采集包含人体的第一视频图像;传输第一视频图像到服务器,以使得服务器根据第一视频图像识别人体的人体姿态并分析人体姿态;接收服务器返回的人体姿态的分析结果,基于分析结果执行相应的操作。
为解决上述技术问题,本申请提供一种机器人。该装置包括处理器、通信电路和摄像装置,处理器耦接通信电路和摄像装置,在工作时执行指令,以配合通信电路和摄像装置实现上述的图像处理方法。
为解决上述技术问题,本申请提供一种计算机可读存储介质。计算机可读存储介质存储有计算机程序,计算机程序能够被处理器执行以实现上述的图像处理方法。
本申请通过在确定当前环境中包括人体后,将包括人体的第一视频图像上传到服务器,由服务器根据第一视频图像识别分析人体的人体姿态,并将人体姿态的分析结果返回到机器人,机器人根据分析结果执行相应的操作。由服务器执行运算量较大的人体姿态的识别分析,能够改善由于机器人硬件条件不足导致不能处理复杂任务或处理数据效率低,致使机器人功能单一的问题,从而拓展机器人的功能。
附图说明
图1是本申请提供的图像处理系统一实施例的结构示意图;
图2是本申请提供的图像处理方法第一实施例的流程示意图;
图3是本申请提供的图像处理方法第二实施例的流程示意图;
图4是本申请提供的机器人一实施例的结构示意图;
图5是本申请提供的计算机可读存储介质一实施例的结构示意图。
具体实施方式
为使本领域的技术人员更好地理解本发明的技术方案,下面结合附图和具体实施方式对本申请所提供的图像处理方法、机器人及计算机可读存储介质做进一步详细描述。
请参阅图1,图1是本申请提供的图像处理系统一实施例的结构示意图。本实施例的图像处理系统10包括机器人11和服务器12。机器人11和服务器12之间建立有通信连接。
机器人11可以是服务器机器人。服务器12可以是手提电脑、台式电脑、平板或云端服务器等。
机器人11可以包括摄像装置111、处理器(图未示)和通信电路(图未示)。处理器耦接摄像装置111和通信电路。摄像装置111例如是单目摄像机、双目摄像机或深度相机等,用于采集视频图像。通信电路用于建立与服务器12的通信连接,实现机器人11和服务器12之间的数据交互。处理器可以用于处理摄像装置采集到的视频图像,或处理通信电路接收到来自于服务器12的数据。
可选地,机器人11还可以包括驱动装置(图未示),驱动装置用于实现机器人11的运动,以使机器人11能够在环境中移动以查找、跟随人体。
机器人11例如在环境中自主移动,实时识别环境中是否存在人体。机器人11可以利用处理器识别环境的图像判断当前环境是否存在人体,也可以通过环境中的声音、信号等判断当前环境是否存在人体。
机器人11的处理器识别到环境中存在人体时,则控制摄像装置111采集包含人体的第一视频图像,并利用通信电路将第一视频图像传输到服务器12。
可选地,在机器人11还包括距离传感器(图未示)。距离传感器例如是激光雷达、红外线传感器、超声波传感器等。利用距离传感器,能够确定人体相对机器人的方向和距离,从而对人体进行定位。对人体定位后,一方面可以调整机器人自身与人体的距离和角度,或调整摄像装置111的位置、角度和焦距,以采集更完整、清晰的人体图像;另一方面,对人体进行跟随,以保证人体动作出现异常时,能够及时为人体提供帮助。
服务器12接收到第一视频图像后,识别第一视频图像内人体的人体姿态。进一步地,服务器12分析人体姿态,得到人体姿态的分析结果。例如,服务器12根据人体姿态分析人体的身体稳定性,得到身体稳定性结果。
服务器12将人体姿态的分析结果传输到机器人11。机器人11的处理器根据分析结果控制机器人11执行与分析结果对应的操作。例如,当身体稳定性结果为稳定时,机器人11可以对人体进行跟随;当身体稳定性结果为不稳定时,机器人11可以执行例如抱扶、支撑等救援动作。
基于上述的图像处理系统10,实现以下图像处理方法的实施例。
请参阅图2,图2是本申请提供的图像处理方法第一实施例的流程示意图。本实施例的执行主体为机器人,本方法包括如下步骤:
S110:响应于识别出当前环境中包括人体,采集包含人体的第一视频图像。
机器人识别出当前环境中包括人体后,利用设置于机器人上的摄像装置采集包含人体的第一视频图像。
其中,当前环境是指机器人在当前时刻、当前位置能够探测感知的区域。人体可以是所有人体,也可以是特定人体,例如老人、小孩或携带有目标信息的人体等。
可选地,在采集第一视频图像时,机器人还可以调整自身与人体的距离、角度、摄像装置的位置、角度或焦距等,以使采集的第一视频图像中的人体更加完整、清晰和易于识别。
具体而言,在机器人识别出当前环境中包括人体后,可用利用自身携带的距离传感器确定人体相对于机器人的距离和相对方向,以对人体进行定位。进而,机器人根据人体的定位调整自身与人体的距离、角度、摄像装置的位置、角度或焦距等。机器人还可以进一步根据人体的距离和相对方向规划路径,以跟随人体,从而保证能够持续采集第一视频图像,以及在人体的行动出现异常时及时提供援助。
机器人可以是通过识别当前环境中包括有目标信息来确定当前环境中包括人体的。
目标信息例如是目标人脸信息。目标人脸信息可以是所有人的脸部信息,也可以是与机器人预先存储的人脸信息一致的人脸信息。通过识别目标人脸信息确定当前环境中包括人体,具体而言,机器人在采集第一视频图像之前,持续在采集第二视频图像,并利用人脸识别算法对第二视频图像进行识别。若第二视频图像中存在目标人脸信息,确定当前环境中包括人体。人脸识别算法可以是几何特征法、局部特征分析法、特征脸法、线性判别分析法或神经网络法等。目标人脸信息识别相对简单,所需数据量较小,因此可以由机器人处理第二视频图像中的目标人脸信息,机器人处理可以提高目标人脸信息的识别效率。当然,机器人也可以将第二视频图像上传到服务器,由服务器识别其中的目标人脸信息,从而能够进一步降低机器人的硬件要求。
目标信息还例如是目标特征信息,目标特征信息包括形状特征和颜色特征中的至少一种。形状特征例如是圆形、三角形或矩形等,颜色特征例如是红色、蓝色或绿色。目标特征信息可以是通过可穿戴装备携带于人体上的,如此在人体背向机器人时,机器人也能够通过人体的背影图像进行人体识别,此外,人体携带目标特征信息能够提高人体识别的准确率和效率。提取第二视频图像中的特征信息,并将特征信息与目标特征信息进行比对,若特征信息中包括目标特征信息,则可以确定当前环境中包括人体。形状特征的提取方法可以是角点特征提取法、傅里叶描述子、小波变换、独立分量分析、形状不变矩或霍夫圆变换等。将图片从RGB颜色空间转换到HSV颜色空间,从而实现对特定颜色的对象的识别。
目标信息还可以是目标语音信息。机器人识别环境中语音中的目标语音信息,例如语音指令或声纹等,从而确定当前环境中存在人体。
识别当前环境中包括人体的方法还可以是检测到移动设备与机器人建立了无线连接,无线连接例如是WIFI连接、蓝牙连接或NFC(Near Field Communication,近场通信)连接等。移动设备例如是携带于人体身上的手机、智能手表等。
S120:传输第一视频图像到服务器,以使得服务器根据第一视频图像识别人体的人体姿态并分析人体姿态。
识别和分析人体姿态所需的硬件条件比较高,机器人处理能力有限,因此可将第一视频图像传输到服务器,由服务器完成对第一视频图像中人体的人体姿态的识别和分析,从而拓展机器人的功能。
机器人和服务器之间可以通过TCP/IP通信协议进行数据传输。
服务器中存储有训练好的用于识别人体姿态的神经网络模型。该神经网络模型可是利用COCO数据集或者MPII数据集对初始的神经网络模型进行训练得到的,神经网络模型经过训练各项参数已经得到优化,基于训练好的神经网络模型能够准确识别出图像中人体的关节(人体姿态)。
服务器接收到第一视频图像后,暂时缓存第一视频图像,并将第一视频图像输入训练好的神经网络模型,得到神经网络模型输出的人体姿态。
服务器识别第一视频图像中的人体姿态具体可分为两个步骤,首先识别定位第一视频图像中的人体,然后估计第一视频图像中人体的人体姿态。人体姿态估计是通过将图像中的人体关键点正确联系起来,从而估计人体姿态。人体关键点通常对应人体上有一定自由度的关节,比如颈、肩、肘、腕、腰、膝和踝等。通过对人体关键点在三维空间相对位置的计算,来估计人体姿态。进一步,增加时间序列,例如一组连续的图像对应的时间,观察一段时间范围内人体关键点的位置变化,可以更加准确的检测姿态,估计目标未来时刻姿态,以及做更抽象的人体行为分析,例如判断人体是否即将摔倒等。
具体地,神经网络模型可以包括目标检测网络模型和人体姿态估计模型。服务器将第一视频图像输入目标检测网络模型,并利用目标检测网络模型检测人体在第一视频图像中的坐标位置,得到人体图像。服务器将人体图像输入到人体姿态估计模型,人体姿态估计模型识别人体图像中的人体的关键点,并将人体关键点正确联系起来,从而估计人体姿态。人体关键点通常对应人体上有一定自由度的关节,比如颈、肩、肘、腕、腰、膝和踝等。人体姿态估计模型通过对人体关键点在三维空间相对位置的计算,来估计人体姿态。
进一步,服务器分析人体姿态,输出人体姿态的分析结果。具体而言,增加时间序列,观察一段时间范围内人体关键点的位置变化,即一组连续的图像中人体姿态变化,可以更加准确的检测姿态,估计目标未来时刻姿态,以及做更抽象的人体行为分析,例如判断人体的身体稳定性等。身体稳定性例如稳定和不稳定。稳定例如包括正常行走、站立等,不稳定例如包括摔倒或即将摔倒等。
服务器得到分析结果后,将分析结果发送到机器人。进一步地,服务器将缓存的第一视频图像和处理第一视频图像数据过程中产生的数据删除,以释放内存,便于下一次识别分析人体姿态。
S130:接收服务器返回的人体姿态的分析结果,基于分析结果执行相应的操作。
机器人预先存储有分析结果与机器人行为操作的关联映射关系。机器人基于分析结果执行对应的操作。
人体姿态的分析结果可以是身体稳定性结果。若身体稳定性结果为稳定,机器人可继续追踪人体;若身体稳定性结果为不稳定,则发出警告和/或执行救援动作。救援动作例如是对人体进行抱扶、支撑等。
本实施例中,通过在确定当前环境中包括人体后,将包括人体的第一视频图像上传到服务器,由服务器根据第一视频图像识别分析人体的人体姿态,并将人体姿态的分析结果返回到机器人,机器人根据分析结果执行相应的操作。由服务器执行运算量较大的人体姿态的识别分析,能够改善由于机器人硬件条件不足导致不能处理复杂任务或处理数据效率低,致使机器人功能单一的问题,从而拓展机器人的功能和应用场景。并且,能够降低对机器人的硬件要求,降低机器人成本。
请参阅图3,图3是本申请提供的图像处理方法第二实施例的流程示意图。本实施例的执行主体为服务器,本方法包括如下步骤:
S210:接收机器人发送的包括人体的第一视频图像,第一视频图像是机器人响应于当前环境中存在人体采集的。
S220:将第一视频图像输入训练好的神经网络模型,得到神经网络模型输出的人体姿态。
S230:分析人体姿态,输出人体姿态的分析结果。
S240:传输分析结果到机器人,以使得机器人根据分析结果执行相应的操作。
上述的S210~S240的步骤与图像处理方法第一实施例S120中服务器执行的内容相同,故在此不再赘述。
上述图像处理方法的第一实施例由机器人实现,因而本申请还提出煤矿巷道监控装置,请参阅图4,图4是本申请提供的机器人一实施例的结构示意图。本实施例机器人400可以包括相互连接的处理器401、摄像装置402和通信电路403。其中,摄像装置402用于采集第一视频图像,通信电路403用于与服务器建立通信连接以将第一视频图像传输到服务器,以及接收服务器返回的人体姿态的分析结果。处理器401用于响应于识别出当前环境中包括人体,控制摄像装置402采集包含人体的第一视频图像;控制通信电路403传输第一视频图像到服务器,以使得服务器根据第一视频图像识别人体的人体姿态并分析人体姿态;基于人体姿态的分析结果控制机器人执行相应的操作。
其中,处理器401可以是一种集成电路芯片,具有信号的处理能力。处理器401还可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
对于上述实施例的方法,其可以计算机程序的形式存在,因而本申请提出一种计算机可读存储介质,请参阅图5,图5是本申请提供的计算机可读存储介质一实施例的结构示意图。本实施例计算机可读存储介质500中存储有计算机程序501,其可被执行以实现上述实施例中的方法。
本实施例计算机可读存储介质500可以是U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等可以存储程序指令的介质,或者也可以为存储有该程序指令的服务器,该服务器可将存储的程序指令发送给其他设备运行,或者也可以自运行该存储的程序指令。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本申请的实施方式,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
- 图像处理方法、机器人及计算机可读存储介质
- 图像拾取装置、图像处理装置、图像处理方法和非暂时性计算机可读存储介质