CN108274476B - 一种人形机器人抓取球体的方法 - Google Patents

一种人形机器人抓取球体的方法 Download PDF

Info

Publication number
CN108274476B
CN108274476B CN201810171326.9A CN201810171326A CN108274476B CN 108274476 B CN108274476 B CN 108274476B CN 201810171326 A CN201810171326 A CN 201810171326A CN 108274476 B CN108274476 B CN 108274476B
Authority
CN
China
Prior art keywords
sphere
target object
function
image
robot
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810171326.9A
Other languages
English (en)
Other versions
CN108274476A (zh
Inventor
庄礼鸿
李奕锦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huaqiao University
Original Assignee
Huaqiao University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huaqiao University filed Critical Huaqiao University
Priority to CN201810171326.9A priority Critical patent/CN108274476B/zh
Publication of CN108274476A publication Critical patent/CN108274476A/zh
Application granted granted Critical
Publication of CN108274476B publication Critical patent/CN108274476B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for

Abstract

本发明提供一种人形机器人抓取球体的方法,包括:安装在NAO机器人上的摄像头发送捕获的目标物体图像信息到处理器;所述处理器通过与所述NAO机器人平台相连接的OpenCV视觉库函数对接收到的目标物体图像信息进行色彩空间转换和外部轮廓特征提取,与已建立的物体特征数据库进行比对识别出目标物体的形状为球体;所述处理器计算出NAO机器人距离球体的水平距离;所述处理器根据所述水平距离,计算出NAO机器人行走路线,控制所述NAO机器人基于所述行走路线抓取球体目标物。

Description

一种人形机器人抓取球体的方法
技术领域
本发明涉及智能机器人技术领域,特别涉及一种人形机器人抓取球体的方法。
背景技术
自20世纪60年代以来,世界开始了各种类人机器人的研究,投入了大量的成果,开发了一系列类人机器人,现在国内外有很多学者进入这个领域;随着更多的学者和机构在人形机器人技术的研究和投入,利用高科技不断提高机器人的性能,同时成本也成为不容忽视的课题;因此,小型人形机器人已经成为很多研究人员和业务关注点;小型人形机器人,是指大型人形机器在体积,功能等方面缩小了简化的人形机器人;与大型人形机器人相比,小型人形机器人可以更容易地进入人们的日常生活中,他的娱乐,教学,服务等方面应用范围广泛,成本相对较低,机器人系统简单完善,已经成为其独特的优势。
现在在人形机器人领域,Aldebaran Robotics公司开发了一种小型人形机器人NAO是世界知名的作品;这种机器人的结构设计形状和运动受到广泛的认可,使用知名的低功耗x86平台处理器;主要特点包括语音合成,定位捕捉,目标定位,避障等等,还可以移动NAO小型人形机器人联合教学功能,运行python程序,机器人行为进行更深入的编程;他有一个非常成熟和完善的配套编程平台,由于其优秀的二次开发能力成为学术教育领域的领导者。
目前,虽然NAO包含了一些用于检测和识别不同物体形状的算法,但在实际应用时,NAO自身的算法使用起来不够灵活或不能满足实际需求;此外,对形状识别后,现有算法存在对物体的定位不精确的问题。
发明内容
本发明目的在于克服现有技术的不足,提出一种人形机器人抓取球体的方法,通过将OpenCV视觉库函数与人形机器人平台相结合,实现NAO机器人对目标球体的识别,并采用改进的单目比例缩放算法对球体进行定位,计算出NAO机器人距离球体的水平距离,进而根据所述水平距离,计算出NAO机器人行走路线,控制所述NAO机器人基于所述行走路线抓取球体目标物。
本发明解决其技术问题所采用的技术方案是:
一种人形机器人抓取球体的方法,包括:
安装在NAO机器人上的摄像头发送捕获的目标物体图像信息到处理器;
所述处理器通过与所述NAO机器人平台相连接的OpenCV视觉库函数对接收到的目标物体图像信息进行色彩空间转换和外部轮廓特征提取,与已建立的物体特征数据库进行比对识别出目标物体的形状为球体;
所述处理器计算出NAO机器人距离球体的水平距离;
所述处理器根据所述水平距离,计算出NAO机器人行走路线,控制所述NAO机器人基于所述行走路线抓取球体目标物。
优选的,所述计算出NAO机器人距离球体的水平距离,包括:
判断球体是否在平面I横向中心线上;所述平面I为过球体中心且与摄像头镜头光轴互成90°的平面;
如果球体在平面I横向中心上时,推导出摄像头距球的距离如下:
Figure GDA0002550683510000021
其中,R表示球体的半径;ω表示图像的水平宽度;r为图像上球体的半径;β表示NAO机器人摄像头水平视角,为固定值47.8°;
如果球体不在平面I横向中心线上时,推导出摄像头距球的距离如下:
Figure GDA0002550683510000022
其中,x表示球体中心在图像上的水平坐标;
由此计算出NAO机器人距离球体的水平距离,如下:
Figure GDA0002550683510000023
其中,h表示NAO机器人处于初始状态时摄像头距地面的高度。
优选的,所述控制所述NAO机器人基于所述行走路线抓取球体目标物,包括:
控制所述NAO机器人运动至所述球体的位置;
获得所述NAO机器人手臂的抓取轨迹;
在所述球体的位置,根据所述抓取轨迹抓取所述球体。
优选的,所述处理器通过与所述NAO机器人平台相连接的OpenCV视觉库函数对接收到的目标物体图像信息进行色彩空间转换,包括:
通过cvLoadImage或imread函数将目标物体图像加载至内存并提取图像像素点的RGB值;
通过cvCvtColor函数对所述目标物体图像进行HSV处理。
优选的,所述处理器通过与所述NAO机器人平台相连接的OpenCV视觉库函数对接收到的目标物体图像信息进行外部轮廓特征提取,包括:
通过cvLoadImage或imread函数将目标物体图像加载至内存;
通过cvCvtColor函数对所述目标物体图像进行灰度化处理;使用bitwise_not进行反色处理;
通过cvThreshold函数对所述目标物体图像进行二值化处理;
通过函数getStructuringElement制作操作内核;然后再通过erode函数与dilate函数进行腐蚀与膨胀处理;
通过Canny函数检测图像边缘;
通过findContours提取目标轮廓,得到一个连通区域的轮廓点的集合;再通过drawContours函数画出轮廓并将其直观的展现出来。
优选的,与已建立的物体特征数据库进行比对获得目标物体形状,具体为在OpenCV视觉库中通过LIBSVM模式的SVM算法或轮廓比对算法实现目标物体形状的识别。
优选的,通过LIBSVM模式的SVM算法实现目标物体形状的识别,包括:
设计一个svm训练机并配置训练机参数,训练机参数配置完成时设置svm训练机路径;
定义样本测试与分类方法,分别训练正负样本,用经过处理的一维矩阵图片比对样本矩阵,通过数据比拟相似度,来确定读取图像更接近哪一个样本,进而识别目标物体形状;其中,样本来自物体特征数据库。
优选的,通过轮廓比对算法实现目标物体形状的识别,包括:
通过cvApproxPoly函数对轮廓进行多边形逼近处理;
通过cvFindDominantPoints函数实现轮廓上的关键点的查找提取;
通过cvContourPerimeter或cvArcLength函数获取轮廓的周长;通过cvContourArea函数获取轮廓的面积;
基于轮廓的Hu矩匹配法,通过cvMatchShapes函数实现2个轮廓的匹配,进而物体识别形状。
与现有技术相比,本发明具有如下有益效果:
本发明一种人形机器人抓取球体的方法,通过将OpenCV视觉库函数与人形机器人平台相结合,实现NAO机器人对目标球体的识别,并采用改进的单目比例缩放算法对球体进行定位,计算出NAO机器人距离球体的水平距离,进而根据所述水平距离,计算出NAO机器人行走路线,控制所述NAO机器人基于所述行走路线抓取球体目标物。
以下结合附图及实施例对本发明作进一步详细说明,但本发明一种人形机器人抓取球体的方法不局限于实施例。
附图说明
图1是本发明的方法流程图;
图2是本发明的目标物体图像特征提取代码图;
图3是本发明的svm训练机参数配置代码图;
图4是本发明的路径设置代码图;
图5是本发明的NAO机器人与球体位置示意图;
图6是本发明的球体在I横向中心线上的示意图;
图7是本发明的球体不在I横向中心线上的示意图。
具体实施方式
参见图1所示,本发明一种人形机器人抓取球体的方法,包括:
步骤101,安装在NAO机器人上的摄像头发送捕获的目标物体图像信息到处理器;
步骤102,所述处理器通过与所述NAO机器人平台相连接的OpenCV视觉库函数对接收到的目标物体图像信息进行色彩空间转换和外部轮廓特征提取,与已建立的物体特征数据库进行比对识别出目标物体的形状为球体;
步骤103,所述处理器计算出NAO机器人距离球体的水平距离;
步骤104,所述处理器根据所述水平距离,计算出NAO机器人行走路线,控制所述NAO机器人基于所述行走路线抓取球体目标物。
Nao机器人应用程序是建立在大量先进的复杂技术之上,如语音识别、物体识别、地图构建等并利用有限的资源、在有限的环境中运行的一种应用程序。用户可在Windows、Mac或Linux系统下开发代码,并通过C++、Python、Urbi、.Net等多种语言进行调用以实现nao机器人之间与人与机器人之间的互动,通过NAOqi,不同模块(如运动、音频、视频等)之间可协调沟通,还可实现齐次规划,并与ALMemory模块共享信息。基于机器人视觉交流,实现机器人的视觉互动则需要Opencv来完成实现。OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它轻量级而且高效——由一系列C函数和少量C++类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。其主要应用体现在人机互动,物体识别,图像分割,人脸识别,动作识别,运动跟踪,运动分析,机器视觉结构分析等诸多方面。机器人视觉交流则是通过视觉获取目标物体的形状及色彩。
本实施例中,Nao机器人摄像头完成对目标物体及其主体颜色的辨识,通过建立起所识别物体的特征数据库以及色彩空间,包括:(1)建立起合适的颜色空间,减少不同颜色以及不同环境(光照)下的互相干扰;(2)正确获取目标物体的外部轮廓以及特征。
1.1色彩空间的选取
色彩空间的用法是以某种标准下一般可以接受的方式对颜色进行描述。常用的色彩空间有RGB,CMY,HSV,HSI等。本文采用的色彩空间为RGB与HSV。
RGB(红色,绿色,蓝色)可以说R,G,B作为三维坐标系,其中每个坐标点表示一种颜色。HSV颜色空间,H是指颜色,通常使用一个有角度的圆来指代。S是指饱和度,圆的中心值为0,颜色非常浅,沿圆的半径增加颜色越来越深。V是指颜色的亮度,在底部的锥体值是指黑色,在顶部是白色。实际上,RGB颜色易被强光,低光,阴影等环境条件影响。相较下,HSV空间在面对这些变化的光线更加稳定,可以体现色彩的本质。
1.2转换色彩空间
OpenCV中有超过150种进行颜色空间转换的方法。但经常使用这两个:BGR$Gray与BGR$HSV。本实施例用到的函数是:cv2.cvtColor(input_image,flag),其中flag就是转换形式。对于BGR$Gray的转换,要使用的flag就是cv2.COLOR_BGR2GRAY。同样对于BGR$HSV的转换,使用的flag就是cv2.COLOR_BGR2HSV。
2、目标物体的识别辨识
本实施例中,需要对摄像头抓取的目标物体图像进行特征提取,参见图2所示,包括:
(1)通过cvLoadImage或imread函数将目标物体图像加载至内存。
OpenCV在应用cvLoadImage函数将图像文件加载至内存后,可以调用cvShowImage函数来显示图片(cvNamedWindow函数可以改变显示图像的大小)。当不再需要加载到内存中的图像文件时,调用cvRealeaseImage函数以释放分配给该图像的内存(以矩阵的形式)。读取图片时,可以选择不同的读入效果和方式(主要是通过函数来实现与完成的),例如:函数CV_LOAD_IMAGE_GRAYSCALE将图像读取为灰度图,CV_LOAD_IMAGE_COLOR函数读取为彩图。一般采用读入灰色值较多,因为灰色图像会占用比彩色图像更少的的内存空间。
在读取图片时,imread函数读取图片可以获得与cvLoadImage同样的显示效果。cvLoadImage与imread的区别是:imread返回的是一个Mat数据对象而cvLoadImage返回的是指针,返回数据对象的特点是在生存周期结束时无用手动释放。
(2)通过cvCvtColor函数对所述目标物体图像进行灰度化处理;使用bitwise_not进行反色处理。
图像的灰度化是将彩色图像转换成为灰色图。众所周知,R(red)、G(green)、B(blue)是色彩的三原色,而opencv图像像素也遵循三原色模型,当RGB三值相等时,彩色表为灰色,R=G=B的值叫灰度值,灰度范围为0-255。
OpenCV中采用函数cvCvtColor,将第二个参数设置为COLOR_BGR2GRAY来完成彩色图像的灰度化;将第二个参数设置为COLOR_BGR2HSV来完成彩色图像到HSV空间的转换。
反色实现原理:求得图片的像素值S,再去运行像素的减法255-S来求得反色,并存入路径;灰度图像一般只会有一个通道即gay2[a,b]=(255-gay[a,b]);而彩色图片则拥有三种通道,即255-gay[a,b][0],255-gay[a,b][1],255-gay[a,b][2],反色处理函数为bitwise_not。
(3)通过cvThreshold函数对所述目标物体图像进行二值化处理;
在图像特征获取(如后续会用到的轮廓边缘检测)时,必须先对图像进行二值化处理。图像的二值化即是将彩色图片转换为灰白效果的图片,要想达到这种效果可以将图像像素点设置为255(0亦可)。图像的二值化使图像中数据量大为减少,使得目标轮廓更为明显的呈现出来。
OpenCV中对图像进行二值化处理会调用二值化关键函数cvThreshold()。
(4)通过函数getStructuringElement制作操作内核;然后再通过erode函数与dilate函数进行腐蚀与膨胀处理。
二值图像的腐蚀和膨胀讲就是拿一个一般为3*3的二值图与另目标二值图像进行像素点的比较,根据比对得到结果对图像进行更深层次的处理。膨胀算法:用一个一般为3X3或者稍大一些的小二值图与另外一张二值图像的像素点做“与”运算,如果结果都0,则最后的结构图像的像素为0,else为1。在膨胀化后二值图像通常会向外扩大一圈。膨胀操作会使物体的边界向外扩张,这种膨胀操作会使物体图像内部的一些小洞被补满。如果此时再对其进行腐蚀操作的话,外部边界会变回原来的样子,但是那些图像中的内部空洞会永远消失。腐蚀算法:同样使用了3X3或者稍大的(11*11)的二值图像的像素点与目标二值图像的每一个像素做“与”运算,当运算结果为1时,结构图像的该像素为1,else为0结果。如果结果为零,二值图像则会大幅减少与缩减。腐蚀操作通常被用来去掉物体的边缘点,图像中通常会将细小物体像素点被认为是边缘点,因此会整个被删去。此时再运行膨胀算法时,留下来的大物体会变回原来的大小,而那些被认作被删除的边缘点则会消失。
开运算就是上述先腐蚀再膨胀的过程,可以消除图像上细小的噪声,并平滑物体的边界同理,闭运算是先膨胀后腐蚀的过程,可以填充物体内细小的空洞,并平滑物体边界。
本实施例中,由于噪声的干扰和影响极为严重,图像在阈值化后所得到边界不平滑的现象,通常物体区域会存在部分噪声孔,或者背景区域上散落的一些小的噪声物体。多次的开和闭运算可以有效地改善噪声的干扰,如果需要,会进行多次腐蚀之后再加上相同次数的膨胀。
本实施例中可以先使用函数getStructuringElement来制作操作内核,然后再进行erode函数腐蚀与dilate膨胀。
(5)通过Canny函数检测图像边缘。
(6)通过findContours提取目标轮廓,得到一个连通区域的轮廓点的集合;再通过drawContours函数画出轮廓并将其直观的展现出来。
本实施例中,首先依据颜色与纹理等特征提取出目标的前景图,然后再对前景图进行深度提取查找出特征目标。OpenCV里提取目标轮廓需要调用的函数是findContours,函数会输入一个结果二值化处理过的图像,结果处理得出一个连通区域的轮廓点的集合:vector<vector<Point>>。最终再通过drawContours函数画出轮廓并将其直观的展现出来。
进一步的,使用opencv视觉图像辨别算法实现目标物体形状识别。
在完成视频图像的获取与图像形态处理与特征抓取后,主要考虑的问题是如何通过特征辨别(比对等算法)来对图片信息有效的归类,统筹与识别,并完成目标物体形状识别。
本实施例用到的方法包括SVM算法和轮廓比法。
a、SVM算法
SVM向量机其实一种分类算法,它可以将两种不同的类划分开来,还可以用于模式识别与回归分析。SVM分类机可以将特征空间进行分割并可以实现间隔最大化,将问题转化为一个凸二次规划问题的求解。
本实施例中基于svm算法采用了LIBSVM模式,包括:
按照LIBSVM软件包所要求的格式准备数据集;对数据进行简单的缩放操作;考虑选用RBF核函数;采用交叉验证选择最佳参数C与g;采用最佳参数C与g对整个训练集进行训练获取支持向量机模型;利用获取的模型进行测试与预测。
后面识别机器人形状实验中,将物体特征图片放入指定文件夹,形成了物体特征的图片库,以方便之后svm训练来识别图像形状。
svm训练机原理包括:
参见图3所示,首先设计一个svm训练机并配置训练机参数,并设定svm训练器路径;
开始训练正负样本,应用相应的opencv图像处理的矩阵思想,将图像样本文件(样本库)训练成为一组一维数组,分类并加以不同数字定义(0和1),同时机器人读入图像亦采用类似方法变换与处理。参见图4所示,注意定义好测试、加载和训练路径;
定义样本测试与分类方法,分别训练正负样本,用经过处理的图片一维矩阵求比对样本矩阵,通过数据比拟相似度,来确定读取图像更为接近哪一个样本,进而判断目标物体形状。
b、轮廓比对法
本实施例中用到的轮廓的特性包括:
b1轮廓的多边形逼近
轮廓的多边形逼近指的是:函数定义一个多边形来重新描绘图像中轮廓,从而大量削减了图像轮廓中的顶点数目。其实我们可以将多边形轮廓看作一种模糊化的轮廓,只是不再那么精细与特征明显,可以使用方法cvApproxPoly。
b2轮廓的关键点
轮廓的关键点是:关键点即指轮廓中突出顶点,一般会将它定义到一个轮廓关键点集合中,并使用cvFindDominantPoints函数来实现轮廓上的关键点的查找提取。
b3轮廓的周长和面积
轮廓的周长可以用cvContourPerimeter或者cvArcLength函数来获取。轮廓的面积可以用cvContourArea函数来获取。
本实施例中,使用轮廓Hu矩匹配法得到了相应的匹配效果。轮廓的Hu矩对包括缩放、旋转和镜像映射在内的变化具有不变性。cvMatchShapes函数可以很方便的实现对2个轮廓间的匹配。
参见图5至图7所示,通过如下方法计算出NAO机器人距离球体的水平距离,包括:
判断球体是否在平面I横向中心线上;所述平面I为过球体中心且与摄像头镜头光轴互成90°的平面;
参见图6所示,如果球体在平面I横向中心上时,可知,
Figure GDA0002550683510000091
Figure GDA0002550683510000092
由此推导出摄像头距球的距离如下:
Figure GDA0002550683510000093
其中,R表示球体的半径;ω表示图像的水平宽度;r为图像上球体的半径;β表示NAO机器人摄像头水平视角,为固定值47.8°;
参见图7所示,如果球体不在平面I横向中心线上时,可知:
Figure GDA0002550683510000094
Figure GDA0002550683510000095
Figure GDA0002550683510000096
由此推导出摄像头距球的距离如下:
Figure GDA0002550683510000097
其中,x表示球体中心在图像上的水平坐标;
可此计算出NAO机器人距离球体的水平距离,如下:
Figure GDA0002550683510000098
其中,h表示NAO机器人处于初始状态时摄像头距地面的高度。
进一步的,所述处理器根据所述水平距离,计算出NAO机器人行走路线,控制所述NAO机器人基于所述行走路线抓取球体目标物的方法,包括:
所述处理器根据所述水平距离,计算出NAO机器人行走路线,控制所述NAO机器人运动至所述球体的位置;获得所述NAO机器人手臂的抓取轨迹;在所述球体的位置,根据所述抓取轨迹抓取所述球体。
以上所述,仅是本发明较佳实施例而已,并非对本发明的技术范围作任何限制,故凡是依据本发明的技术实质对以上实施例所作的任何细微修改、等同变化与修饰,均仍属于本发明技术方案的范围内。

Claims (5)

1.一种人形机器人抓取球体的方法,其特征在于,包括:
安装在NAO机器人上的摄像头发送捕获的目标物体图像信息到处理器;
所述处理器通过与所述NAO机器人平台相连接的OpenCV视觉库函数对接收到的目标物体图像信息进行色彩空间转换和外部轮廓特征提取,与已建立的物体特征数据库进行比对识别出目标物体的形状为球体;
所述处理器计算出NAO机器人距离球体的水平距离;
所述处理器根据所述水平距离,计算出NAO机器人行走路线,控制所述NAO机器人基于所述行走路线抓取球体目标物;
所述计算出NAO机器人距离球体的水平距离,包括:
判断球体是否在平面I横向中心线上;所述平面I为过球体中心且与摄像头镜头光轴互成90°的平面;
如果球体在平面I横向中心上时,推导出摄像头距球的距离,如:
Figure FDA0002550683500000011
其中,R表示球体的半径;ω表示图像的水平宽度;r为图像上球体的半径;β表示NAO机器人摄像头水平视角,为固定值47.8°;
如果球体不在平面I横向中心线上时,推导出摄像头距球的距离,如:
Figure FDA0002550683500000012
其中,x表示球体中心在图像上的水平坐标;
由此计算出NAO机器人距离球体的水平距离,如:
Figure FDA0002550683500000013
其中,h表示NAO机器人处于初始状态时摄像头距地面的高度;
与已建立的物体特征数据库进行比对识别出目标物体的形状为球体,具体为在OpenCV视觉库中通过LIBSVM模式的SVM算法或轮廓比对算法实现目标物体形状的识别;
通过LIBSVM模式的SVM算法实现目标物体形状的识别,包括:
设计一个svm训练机并配置训练机参数,训练机参数配置完成时设置svm训练机路径;
定义样本测试与分类方法,分别训练正负样本,用经过处理的一维矩阵图片比对样本矩阵,通过数据比拟相似度,来确定读取图像更接近哪一个样本,进而识别目标物体形状;其中,样本来自物体特征数据库。
2.根据权利要求1所述的人形机器人抓取球体的方法,其特征在于,所述控制所述NAO机器人基于所述行走路线抓取球体目标物,包括:
控制所述NAO机器人运动至所述球体的位置;
获得所述NAO机器人手臂的抓取轨迹;
在所述球体的位置,根据所述抓取轨迹抓取所述球体。
3.根据权利要求1所述的人形机器人抓取球体的方法,其特征在于,所述处理器通过与所述NAO机器人平台相连接的OpenCV视觉库函数对接收到的目标物体图像信息进行色彩空间转换,包括:
通过cvLoadImage或imread函数将目标物体图像加载至内存并提取图像像素点的RGB值;
通过cvCvtColor函数对所述目标物体图像进行HSV处理。
4.根据权利要求1所述的人形机器人抓取球体的方法,其特征在于,所述处理器通过与所述NAO机器人平台相连接的OpenCV视觉库函数对接收到的目标物体图像信息进行外部轮廓特征提取,包括:
通过cvLoadImage或imread函数将目标物体图像加载至内存;
通过cvCvtColor函数对所述目标物体图像进行灰度化处理;使用bitwise_not进行反色处理;
通过cvThreshold函数对所述目标物体图像进行二值化处理;
通过函数getStructuringElement制作操作内核;然后再通过erode函数与dilate函数进行腐蚀与膨胀处理;
通过Canny函数检测图像边缘;
通过findContours提取目标轮廓,得到一个连通区域的轮廓点的集合;再通过drawContours函数画出轮廓并将其直观的展现出来。
5.根据权利要求1所述的人形机器人抓取球体的方法,其特征在于,通过轮廓比对算法实现目标物体形状的识别,包括:
通过cvApproxPoly函数对轮廓进行多边形逼近处理;
通过cvFindDominantPoints函数实现轮廓上的关键点的查找提取;
通过cvContourPerimeter或cvArcLength函数获取轮廓的周长;通过cvContourArea函数获取轮廓的面积;
基于轮廓的Hu矩匹配法,通过cvMatchShapes函数实现2个轮廓的匹配,进而物体识别形状。
CN201810171326.9A 2018-03-01 2018-03-01 一种人形机器人抓取球体的方法 Active CN108274476B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810171326.9A CN108274476B (zh) 2018-03-01 2018-03-01 一种人形机器人抓取球体的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810171326.9A CN108274476B (zh) 2018-03-01 2018-03-01 一种人形机器人抓取球体的方法

Publications (2)

Publication Number Publication Date
CN108274476A CN108274476A (zh) 2018-07-13
CN108274476B true CN108274476B (zh) 2020-09-04

Family

ID=62808892

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810171326.9A Active CN108274476B (zh) 2018-03-01 2018-03-01 一种人形机器人抓取球体的方法

Country Status (1)

Country Link
CN (1) CN108274476B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109318227B (zh) * 2018-09-21 2021-03-26 厦门理工学院 一种基于人形机器人的掷骰子方法及人形机器人
CN110480631A (zh) * 2019-07-19 2019-11-22 五邑大学 一种应用于搬运机器人的目标搬运方法及其搬运机器人
CN111105394B (zh) * 2019-11-27 2023-06-30 北京华捷艾米科技有限公司 一种检测发光小球特征信息的方法及装置
CN112587235A (zh) * 2020-12-07 2021-04-02 南京凌华微电子科技有限公司 一种双目导航仪超线程优化方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103914149A (zh) * 2014-04-01 2014-07-09 复旦大学 一种面向互动电视的手势交互方法和系统
CN107194395A (zh) * 2017-05-02 2017-09-22 华中科技大学 一种基于颜色识别和轮廓提取的物体动态定位方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103914149A (zh) * 2014-04-01 2014-07-09 复旦大学 一种面向互动电视的手势交互方法和系统
CN107194395A (zh) * 2017-05-02 2017-09-22 华中科技大学 一种基于颜色识别和轮廓提取的物体动态定位方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于单目立体视觉的NAO机器人的目标定位与抓取;李鹤喜等;《五邑大学学报(自然科学版)》;20170531;第31卷(第2期);第20-26页 *

Also Published As

Publication number Publication date
CN108274476A (zh) 2018-07-13

Similar Documents

Publication Publication Date Title
CN108416268B (zh) 一种基于双机器人视觉沟通的动作识别方法
CN111328396B (zh) 用于图像中的对象的姿态估计和模型检索
CN108304873B (zh) 基于高分辨率光学卫星遥感影像的目标检测方法及其系统
CN109344701B (zh) 一种基于Kinect的动态手势识别方法
CN107507167B (zh) 一种基于点云平面轮廓匹配的货物托盘检测方法及系统
CN108274476B (zh) 一种人形机器人抓取球体的方法
Premebida et al. Pedestrian detection combining RGB and dense LIDAR data
CN113658132B (zh) 基于计算机视觉的结构件焊缝检测方法
Finman et al. Toward lifelong object segmentation from change detection in dense rgb-d maps
CN102799901B (zh) 一种多角度人脸检测方法
US8447114B2 (en) Method and apparatus for calculating pixel features of image data
US9639748B2 (en) Method for detecting persons using 1D depths and 2D texture
Sevak et al. Survey on semantic image segmentation techniques
US10410354B1 (en) Method and apparatus for multi-model primitive fitting based on deep geometric boundary and instance aware segmentation
CN109684959B (zh) 基于肤色检测和深度学习的视频手势的识别方法及装置
KR20090131626A (ko) 영상 데이터내의 특정 클래스의 오브젝트를 세그멘테이션하기 위한 시스템 및 방법
Zelener et al. Cnn-based object segmentation in urban lidar with missing points
Xiang et al. Moving object detection and shadow removing under changing illumination condition
WO2021114776A1 (en) Object detection method, object detection device, terminal device, and medium
Blondel et al. Human detection in uncluttered environments: From ground to UAV view
JP2017102622A (ja) 画像処理装置、画像処理方法及びプログラム
Yogeswaran et al. 3d surface analysis for automated detection of deformations on automotive body panels
CN111695373A (zh) 斑马线的定位方法、系统、介质及设备
CN112215861A (zh) 一种足球检测方法、装置、计算机可读存储介质及机器人
Barodi et al. An enhanced artificial intelligence-based approach applied to vehicular traffic signs detection and road safety enhancement

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant