CN116673962B - 一种基于Faster R-CNN和GRCNN的机械臂智能抓取方法及系统 - Google Patents
一种基于Faster R-CNN和GRCNN的机械臂智能抓取方法及系统 Download PDFInfo
- Publication number
- CN116673962B CN116673962B CN202310848848.9A CN202310848848A CN116673962B CN 116673962 B CN116673962 B CN 116673962B CN 202310848848 A CN202310848848 A CN 202310848848A CN 116673962 B CN116673962 B CN 116673962B
- Authority
- CN
- China
- Prior art keywords
- grabbing
- mechanical arm
- image
- target object
- grcnn
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 39
- 238000001514 detection method Methods 0.000 claims abstract description 33
- 238000012545 processing Methods 0.000 claims description 22
- 239000011159 matrix material Substances 0.000 claims description 9
- 238000007781 pre-processing Methods 0.000 claims description 9
- 230000009466 transformation Effects 0.000 claims description 9
- 241001292396 Cirrhitidae Species 0.000 claims description 8
- 230000009916 joint effect Effects 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 6
- 238000012937 correction Methods 0.000 claims description 6
- 230000008569 process Effects 0.000 claims description 6
- 238000002360 preparation method Methods 0.000 claims description 5
- 238000000605 extraction Methods 0.000 claims description 4
- 239000013598 vector Substances 0.000 claims description 4
- 101100234408 Danio rerio kif7 gene Proteins 0.000 claims description 3
- 101100221620 Drosophila melanogaster cos gene Proteins 0.000 claims description 3
- 101100398237 Xenopus tropicalis kif11 gene Proteins 0.000 claims description 3
- 238000005520 cutting process Methods 0.000 claims description 3
- 230000002194 synthesizing effect Effects 0.000 claims description 3
- 230000008447 perception Effects 0.000 abstract description 6
- 230000002452 interceptive effect Effects 0.000 abstract description 4
- 238000013527 convolutional neural network Methods 0.000 description 29
- 238000013507 mapping Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000005457 optimization Methods 0.000 description 6
- 230000003993 interaction Effects 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 239000003086 colorant Substances 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 208000027418 Wounds and injury Diseases 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 208000014674 injury Diseases 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000003466 welding Methods 0.000 description 1
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
- B25J9/161—Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Automation & Control Theory (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
Abstract
本发明属于机器人智能控制技术领域,具体涉及一种基于Faster R‑CNN和GRCNN的机械臂智能抓取方法及系统;方法包括Faster R‑CNN网络模型检测物体类别和位置,再将检测到的目标物体对应像素的深度图像部分提取出来后,经过处理输入到GRCNN网络模型中,GRCNN网络模型输出置信度最高的像素点作为抓取点,这组置信度最高的抓取点经过相机坐标系和机器人坐标系的转换后,得到机器人坐标系下的抓取位姿表示模型。最后这组抓取位姿表示模型被送入到机械臂的控制器中,控制器控制机械臂执行抓取任务;本发明实现机械臂与外界环境的交互感知,适用于大量未知物体的抓取检测。机械臂具有自主识别和智能决策能力,提升抓取检测的成功率,整个的抓取方案具有任务泛化性。
Description
技术领域
本发明属于机器人智能控制技术领域,具体涉及一种基于Faster R-CNN和GRCNN的机械臂智能抓取方法及系统。
背景技术
机械臂是人工智能、自动化和控制学等多个领域交叉应用的产物,在各个领域都有广泛应用。例如,在快递分拣领域用于分拣任务,在工业领域用于零件的装配、加工和焊接,在服务领域用于咖啡的制作与售卖。然而,在这些结构化场景中,机械臂通常通过示教器或离线方式完成特定任务,前期需要进行大量调试和示教工作,并没有考虑复杂的轨迹规划。这种机械臂只能重复执行对固定位置的特定物体的搬运或抓取,无法适应其他目标物体,因此缺乏自主智能决策能力。一旦目标物体在非结构化环境中位置或外形发生变化,或者抓取场景发生迁移,整个抓取任务往往以失败告终。
早期研究者采用了物体形状分析及传统机器学习方法来处理特征,获取抓取位姿。然而,人工提取特征仅适用于描述形状规则简单的物体,对于外观复杂的物体无法生成抓取位姿。此外,人工提取特征存在主观性,所认为可抓取的点未必机械臂能够成功抓取。随着深度学习的发展,基于神经网络的反向传播和学习深层语义特征、自学习、自组织、自适应性等优势已超越传统算法。因此,神经网络常用于目标检测和位姿估计,从而获得最终的抓取位姿。然而,该方法受限于已知物体类别或模型,难以对数据库中没有的物体进行成功抓取。虽然深度学习技术已经发展多年,但在机器人抓取领域的探索仍处于初级阶段,这一过程面临诸多问题,例如不同形状、不同颜色、摆放位置和遮挡对抓取造成困难。此外,准确映射物体位姿到机械手抓取位姿也是一个难题,机械臂视觉抓取检测面临抓取位姿模型适应性差、泛化能力弱等问题。因此,实现机械臂对任意摆放的各类未知物体进行抓取仍是一个亟需研究的难题。
发明内容
本发明的目的就在于提供一种基于Faster R-CNN和GRCNN的机械臂智能抓取方法及系统,以解决背景技术中提出的现有机械臂只能定点抓取特定固定的物体、无法与环境感知交互、智能化水平低以及抓取成功率低等问题。
本发明通过以下技术方案来实现上述目的:
一种基于Faster R-CNN和GRCNN的机械臂智能抓取方法,应用于执行抓取的机械臂、以及固定在机械臂末端的深度相机,方法包括如下步骤:
S1:基于Halcon标定法确定机械臂末端夹爪与固定在机械臂末端的深度相机间的位置关系,在生成两者间的旋转矩阵后,初始化机械臂的抓取位姿。
S2:通过深度相机采集对应所述初始抓取位姿下的抓取场景中目标物体的彩色图像和深度图像,基于预先构建的Faster R-CNN网络模型对所述彩色图像进行目标检测,以识别出目标物体的类别、以及在彩色图像中的位置,在对位置进行修正后将目标物体在所述深度图像中对应像素部分进行提取,以生成包含目标物体的待处理图像;
S3:在对待处理图像按设定格式进行预处理后输入到RCNN网络模型中并进行处理,输出目标物体在深度图像空间中的最优抓取位姿,经过变换处理得到机械臂坐标系下的最优抓取位姿,机械臂控制器对其坐标系下的最优抓取位姿采用逆运动学解算与运动轨迹规划生成机械臂关节动作,机械臂执行该关节动作进行抓取。
作为本发明的进一步优化方案,预先构建的Faster R-CNN网络模型包括:
卷积层,用于提取图像特征并得到公共特征图;
RPN网络,用于接收所述公共特征图并进行处理,以输出多个感兴趣区域ROI;
ROI pooling层,用于接收所述ROI和所述公共特征图,并将两者进行综合后得到固定大小的区域特征图;
全连接层,用于接收所述区域特征图并进行处理,以输出对应ROI中物体所述类别和物体在图像中的精确位置。
作为本发明的进一步优化方案,步骤S2中,采用预先构建Faster R-CNN网络模型进行目标检测的流程包括:
S2.1:将所述彩色图像输入到所述卷积层提取得到公共特征层,并生成若干网格和先验框,利用所述RPN网络获取对应所述先验框的建议框,利用所述建议框在所述公共特征层进行特征提取,提取出不同特征层对应所述彩色图像上的不同位置,并传入到ROIpooling层中;
S2.2:ROI pooling层将不同特征层尺寸调整成相同大小的区域特征图,并判断建议框中彩色图像特征层中目标物体的类别和位置,在全连接层中对建议框中目标物体位置进行修正后输出目标物体的精确位置。
作为本发明的进一步优化方案,步骤S2.2中,对建议框中目标物体位置进行修正后输出目标物体的精确位置包括:
采用全连接层中softmax函数计算彩色图像每个区域建议框中目标物体的具体隶属类别,并输出相应的概率向量,同时采用边界框回归预测每个区域建议框的位置偏移量,再通过回归修正获得更加精确的目标物体位置;
回归修正公式为:
tx=(x-xa)/wa ty=(y-ya)/ha
tw=log(w/wa) th=log(h/ha);
其中,[xa,ya,wa,ha]是建议框的中心点坐标和宽高,[tx,ty,tw,th]为边界框预测的偏移量,[x,y,w,h]为修正后的建议框坐标。
作为本发明的进一步优化方案,步骤S3中,将所述待处理图像按设定格式进行预处理具体包括:
对选取的深度图像进行剪裁、调整大小以及归一化得到240*240的像素来适应网络的输入格式,经过opencv进行深度值的补全后送入到GRCNN网络模型中,GRCNN网络模型逐像素生成抓取矩形框。
作为本发明的进一步优化方案,步骤S3中,输出目标物体在深度图像空间中的最优抓取位姿之前还包括抓取位姿的确定规则:
若深度图像中高度为h,宽度为w,通道数为n,其深度图像空间上的抓取位姿定义为:
Gi=(x,y,Θi,Wi,Q),
其中,(x,y)为图像中像素坐标系定义的抓取点;Θi是深度相机绕参考坐标系的旋转度,也即抓取角度,Θi∈[-π/2,π/2];Wi是图像中像素坐标系定义的抓取宽度;Q是图像中对应像素抓取点(x,y)的置信度,即抓取成功率;
当Q∈[0,1],其中越接近0的数值表示抓取的成功率越低,接近1的数值表示抓取的成功率越高。
作为本发明的进一步优化方案,所述GRCNN网络模型输出的最优抓取位姿包括:
(1)对应每个像素点(x,y)的抓取置信度Q;
(2)对应每个像素点(x,y)的抓取角度Θ,角度并不是通过回归的方式直接输出的,而是先转化为sin2Θ和cos2Θ,然后通过公式:
Θ=1/2arctan(sin2Θ/cos2Θ)
得到最后的抓取角度Θ;
(3)对应每个像素点(x,y)的抓取宽度Wi,抓取宽度以深度图像上的像素为单位;
(4)从GRCNN网络模型输出的置信度图Q中,选出置信度最高的一个像素抓取点(x,y),再从抓取宽度图Wi和抓取角度图Θi选出对应抓取点(x,y)的抓取宽度Wi和抓取角度组成一组最优的抓取配置Gi=(x,y,Θi,Wi,Q)。
一种基于Faster R-CNN和GRCNN的机械臂智能抓取系统,所述系统用于实施上述任一项所述机械臂智能抓取方法,系统包括:
机械臂准备与调试模块,用于在机械臂与系统连接后,基于Halcon标定法确定机械臂末端夹爪与固定在机械臂末端的深度相机间的位置关系,生成两者间的旋转矩阵后,然后初始化机械臂的抓取位姿。
物体抓取检测模块,用于控制深度相机采集对应所述初始抓取位姿下的抓取场景中目标物体的彩色图像和深度图像,基于预先构建的Faster R-CNN网络模型对所述彩色图像进行目标检测,以识别出目标物体的类别、以及在彩色图像中的位置,在对位置进行修正后将目标物体在所述深度图像中对应像素部分进行提取,以生成包含目标物体的待处理图像;
抓取执行与运行规划模块,用于在对待处理图像按设定格式进行预处理,再输入到GRCNN网络模型中进行处理,输出目标物体在深度图像空间中的最优抓取位姿,经过变换处理得到机械臂坐标系下的最优抓取位姿,机械臂控制器对其坐标系下的最优抓取位姿采用逆运动学解算与运动轨迹规划生成机械臂关节动作,机械臂执行该关节动作进行抓取。
本发明的有益效果在于:
1)使用Halcon标定法确定了机械臂末端夹爪与深度相机之间的位置关系,高精度的标定减少了误差,提高了最后整体的抓取成功率。
2)本发明能够实现多物体堆叠场景下的各类物体抓取,解决了固定场景下仅限抓取特定的物体的难题,提高了在非结构化场景下抓取的泛化能力和抓取精度,对于不同形状、不同颜色、不同材质的物体,机械臂均有一定的抓取能力。
3)提出的Faster RCNN网络模型关注物体的实例信息,高精度识别目标物体在图像中的位置及物体类别,具体良好的鲁棒性和泛化性,检测精度高,进一步提高了抓取检测的准确率。
4)机械臂具有自主识别和自主决策能力,具有与周围环境的交互感知能力,能够在复杂场景下实施抓取任务,提高了智能化水平。
5)设计了直观、易于操作的机械臂智能抓取软件系统,不仅仅局限于在ROS系统终端中使用命令行进行操作的方式,便于大范围推广应用。
附图说明
图1是本发明中抓取方法执行的流程示意图;
图2是本发明中Faster R-CNN网络模型的结构示意图;
图3是本发明中GRCNN网络模型的执行流程图;
图4是本发明中机械臂抓取控制流程图;
图5是本发明中机械臂抓取场景图;
图6是本发明中机械臂的手眼标定结果图;
图7是本发明中夹爪与深度相机间的旋转矩阵;
图8是本发明中Faster R-CNN网络模型的检测框识别定位物体类别示意图;
图9是本发明中机械臂实际抓取位姿示意图;
图10是本发明中机械臂智能抓取软件系统的登录界面;
图11是本发明中机械臂智能抓取软件系统中机械臂准备与调试界面;
图12是本发明中机械臂智能抓取软件系统中物体抓取检测识别界面;
图13是本发明中机械臂智能抓取软件系统中抓取执行与运动规划界面。
具体实施方式
下面结合附图对本发明作进一步详细描述,有必要在此指出的是,以下具体实施方式只用于对本发明进行进一步的说明,不能理解为对本发明保护范围的限制,该领域的技术人员可以根据上述发明内容对本发明作出一些非本质的改进和调整。
实施例1
如图1-4所示,本实施方式提出一种基于Faster R-CNN和GRCNN的机械臂智能抓取方法,应用于执行抓取的机械臂、以及固定在机械臂末端的深度相机,方法包括如下步骤:
S1:基于Halcon标定法确定机械臂末端夹爪与固定在机械臂末端的深度相机间的位置关系,在生成两者间的旋转矩阵,初始化机械臂的抓取位姿。
S2:通过深度相机采集对应所述初始抓取位姿下的抓取场景中目标物体的彩色图像和深度图像,基于预先构建的Faster R-CNN网络模型对彩色图像进行目标检测,以识别出目标物体的类别、以及在彩色图像中的位置,在对位置进行修正后将目标物体在深度图像中对应像素部分进行提取,以生成包含目标物体的待处理图像;
S3:在对待处理图像按设定格式进行预处理后输入到RCNN网络模型中并进行处理,输出目标物体在深度图像空间中的最优抓取位姿,经过变换处理得到机械臂坐标系下的最优抓取位姿,机械臂控制器对其坐标系下的最优抓取位姿采用逆运动学解算与运动轨迹规划生成机械臂关节动作,机械臂执行该关节动作进行抓取。
步骤S1中,手眼标定以确定机械臂和深度相机间的位置关系:
采集目标物体的深度相机被固定在机械臂末端,跟随机械臂共同运动。整个标定方法采用Halcon方法,首先获取以.descr文件的标定板描述文件和以.ps文件的标定板图形文件,将.ps文件使用PS软件打开后进行打印用于标定的采集,.ps文件是标定板图形。打开Calibration助手,完成好相关配置后,分别在不同的位置和角度采集标定的图片,标定的图片需要覆盖整个深度相机的视野,每次采集一张图片时,需要同时记录机械臂的xyz和rpy值。每次在不同的位置和角度采集图片,等到警告消除,就标志着标定采集的完成。将采集好的所有图片和每张图片下对应的位姿信息(xyz、rpy值)输入到写好的标定程序中,运行程序最终得到机械臂末端夹爪和深度相机间的旋转矩阵。此旋转矩阵最后在机械臂执行抓取的时候通过ROS以tf坐标的形式发布出去。
设定好机械臂的初始抓取位置和姿态,通过深度相机采集抓取场景下目标物体的彩色图像和深度图像,将彩色图像送入到Faster R-CNN网络模型进行物体的目标检测。
进一步的,预先构建的Faster R-CNN网络模型包括:
卷积层,用于提取图像特征并得到公共特征图;
RPN网络,用于接收公共特征图并进行处理,以输出多个感兴趣区域ROI;
ROI pooling层,用于接收ROI和公共特征图,并将两者进行综合后得到固定大小的区域特征图;
全连接层,用于接收区域特征图并进行处理,以输出对应ROI中物体类别和物体在图像中的精确位置。
进一步的,步骤S2中,采用预先构建Faster R-CNN网络模型进行目标检测的流程包括:
S2.1:将彩色图像输入到卷积层提取得到公共特征层,并生成若干网格和先验框,利用RPN网络获取对应先验框的建议框,利用建议框在公共特征层进行特征提取,提取出不同特征层对应彩色图像上的不同位置,并传入到ROI pooling层中;
S2.2:ROI pooling层将不同特征层尺寸调整成相同大小的区域特征图,并判断建议框中彩色图像特征层中目标物体的类别和位置,在全连接层中对建议框中目标物体位置进行修正后输出目标物体的精确位置。
上述对目标物体的检测流程的进一步细化步骤为:
深度相机捕获到的图像输入到主干特征提取网络得到公共特征层,图像相当于被分成若干个网格,每个网格存在着若干个先验框,利用区域建议网络(RPN)获得这些先验框的调整参数和这些先验框内是否包含物体,此时便获得了建议框。利用这些建议框在公共特征层上继续进行特征提取,截取到的不同特征层能够反映在原图像上的不同位置,截取到的内容会传入到ROI pooling层中,为了满足对不同大小图像的检测,ROI pooling层会将截取到的不同大小的特征层区域尺寸调整成一样大小,然后利用全连接层判断截取到的图像中是否包含目标,并对建议框进行调整,建议框调整后的结果就是整体的预测结果。全连接层与softmax函数计算每个区域建议框具体属于哪个类别,输出cls_prob概率向量;同时再次利用bounding box regression获得每个区域建议框的位置偏移量bbox_pred,用于回归获得更加精确的目标检测框。
Faster R-CNN网络模型主要将预测结果分别两步,一步是粗略的筛选,另一步是精细的调整。
进一步的,步骤S2.2中,对建议框中目标物体位置进行修正后输出目标物体的精确位置包括:
采用全连接层中softmax函数计算彩色图像每个区域建议框中目标物体的具体隶属类别,并输出相应的概率向量,同时采用边界框回归预测每个区域建议框的位置偏移量,再通过回归修正获得更加精确的目标物体位置;
回归修正公式为:
tx=(x-xa)/wa ty=(y-ya)/ha
tw=log(w/wa) th=log(h/ha);
其中,[xa,ya,wa,ha]是建议框的中心点坐标和宽高,[tx,ty,tw,th]为边界框预测的偏移量,[x,y,w,h]为修正后的建议框坐标。
[px,py,pw,ph]表示原始建议框的坐标;
[dx,dy,dw,dh]表示RPN网络预测的坐标偏移;
[gx,gy,gw,gh]表示修正后的建议框坐标。
进一步的,结合图2,步骤S3中,将待处理图像按设定格式进行预处理具体包括:
对选取的深度图像进行剪裁、调整大小以及归一化得到240*240的像素来适应网络的输入格式,经过opencv进行深度值的补全后送入到GRCNN网络模型中,GRCNN网络模型逐像素生成抓取矩形框。
进一步的,步骤S3中,输出目标物体在深度图像空间中的最优抓取位姿之前还包括抓取位姿的确定规则:
若深度图像中高度为h,宽度为w,通道数为n,其深度图像空间上的抓取位姿定义为:
Gi=(x,y,Θi,Wi,Q),
其中,(x,y)为图像中像素坐标系定义的抓取点;Θi是深度相机绕参考坐标系的旋转度,也即抓取角度,Θi∈[-π/2,π/2];Wi是图像中像素坐标系定义的抓取宽度;Q是图像中对应像素抓取点(x,y)的置信度,即抓取成功率;
当Q∈[0,1],其中越接近0的数值表示抓取的成功率越低,接近1的数值表示抓取的成功率越高。
GRCNN网络输出图像空间下的抓取位姿流程步骤为:
将预处理好的深度图像输入到GRCNN网络模型中,网络模型逐像素生成抓取矩形框。输入的图像经过预处理后经过三层卷积层,经过卷积层提取特征,提取到的特征被送到5个残余层。再将图像通过这些卷积层和残差层之后,图像的大小被减小到56×56像素。最后,通过使用卷积转置运算对图像进行上采样,使得输出获得与输入相同的图像大小。
进一步的,GRCNN网络模型输出的最优抓取位姿包括:
(1)对应每个像素点(x,y)的抓取置信度Q;
(2)对应每个像素点(x,y)的抓取角度Θ,角度并不是通过回归的方式直接输出的,而是先转化为sin2Θ和cos2Θ,然后通过公式:
Θ=1/2arctan(sin2Θ/cos2Θ)
得到最后的抓取角度Θ;
(3)对应每个像素点(x,y)的抓取宽度Wi,抓取宽度以深度图像上的像素为单位;
(4)从GRCNN网络模型输出的置信度图Q中,选出置信度最高的一个像素抓取点(x,y),再从抓取宽度图Wi和抓取角度图Θi选出对应抓取点(x,y)的抓取宽度Wi和抓取角度组成一组最优的抓取配置Gi=(x,y,Θi,Wi,Q)。
为了在机器人上执行在图像空间中获得的最优抓取,应用以下变换来将图像坐标转换为机器人坐标系。
Gr=Trc(Tci(Gi));
其中,Tci使用相机的固有参数将图像空间转换成相机的3D空间的变换,Trc是相机姿态校准值,将相机坐标系转换成机器人坐标系。(经过变换处理得到机械臂坐标系下的最优抓取位姿)
定义机器人坐标系下的抓取位姿Gr=(x,y,z,Θr,Wr,Q);
其中,(x,y,z)是机械臂末端夹爪的中心位置;Θr是末端夹爪围绕z轴的旋转;Wr是末端夹爪张开的宽度;Q是抓取置信度,即抓取成功率。
将得到的机器人坐标系下的最优抓取位姿Gr=(x,y,z,Θr,Wr,Q)发送给机械臂的控制器,机械臂经过逆运动学解算出各个关节的角度后进行抓取的路径规划,控制器控制机械臂执行目标物体的抓取。
本实施例中提出Faster R-CNN+GRCNN网络解决了物体在堆叠场景中的抓取检测和物体抓取位姿的问题,Faster R-CNN网络模型检测物体类别和位置,Faster R-CNN网络模型将检测到的目标物体对应像素的深度图像部分提取出来后,经过处理输入到GRCNN网络模型中,GRCNN网络模型输出置信度最高的像素点作为抓取点,这组置信度最高的抓取点经过相机坐标系和机器人坐标系的转换后,得到机器人坐标系下的抓取位姿表示模型。最后这组抓取位姿表示模型被送入到机械臂的控制器中,控制器控制机械臂执行抓取任务。
本发明实现机械臂与外界环境的交互感知,适用于多物体的抓取检测。机械臂具有自主识别和智能决策能力,提升抓取检测的成功率,整个的抓取方案具有任务泛化性。
下面结合实际机械臂实际抓取处理例程对上述方法进一步进行说明;
为了验证抓取方法中提出的基于Faster R-CNN+GRCNN网络模型的有效性和先进性,在所设计的七轴机械臂上进行了真实的抓取测试,所设计的算法均基于Ubuntu18.04系统下的melodic版本的ROS上开发,抓取检测算法采用python语言编写,其他的算法采用C++编程实现。整个的抓取系统的每个模块被封装为不同的ROS节点,不同节点之间通过ROS中的通信机制来完成数据的传递。
整个的抓取场景图如图5所示,目标物体杂乱地堆叠在工作台上,工作台固定在地面上,机械臂的控制器集成在机械臂的底部,机械臂以垂直工作台的姿态对目标物体进行自动检测抓取。
首先,进行深度相机与机械臂末端夹爪之间的标定,确定深度相机与夹爪之间的位置关系。如下图6为手眼标定的结果,如图7为机械臂末端夹爪与深度相机间的旋转矩阵。
然后,通过固定在机械臂末端的深度相机采集目标物体的信息,经过补全深度值后送入到训练好的Faster R-CNN网络模型进行抓取检测。如图8,定位并识别物体类别。
定位到抓取物体后经过GRCNN网络模型处理,在深度图像上输出最后的抓取位姿表示,抓取位姿包括抓取置信度特征图、抓取宽度特征图以及抓取角度特征图。
其中,抓取置信度特征图中,输出的值为0-1,值越高代表的抓取成功率越高,然后选择置信度最高的像素点作为抓取点,再从抓取宽度和抓取角选出对应的抓取点作为最优的一组抓取配置。在图9实际抓取位姿表示图中,矩形框内圆点为抓取点,矩形框的长边为抓取宽度,抓取角为与图像水平轴的夹角。
最后,由于现有的机械臂智能抓取系统缺少简单直观的可调式界面,故本申请还包括机械臂智能抓取软件系统,在系统的不同界面可分布实现不同的功能,并将结果可视化,提高了人机交互能力。
一种基于Faster R-CNN和GRCNN的机械臂智能抓取系统,系统用于实施上述任一项机械臂智能抓取方法,系统包括:
机械臂准备与调试模块,用于在机械臂与系统连接后,基于Halcon标定法确定机械臂末端夹爪与固定在机械臂末端的深度相机间的位置关系,生成两者间的旋转矩后,然后初始化机械臂的抓取位姿。
物体抓取检测模块,用于控制深度相机采集对应初始抓取位姿下的抓取场景中目标物体的彩色图像和深度图像,基于预先构建的Faster R-CNN网络模型对彩色图像进行目标检测,以识别出目标物体的类别、以及在彩色图像中的位置,在对位置进行修正后将目标物体在深度图像中对应像素部分进行提取,以生成包含目标物体的待处理图像;
抓取执行与运行规划模块,用于在对待处理图像按设定格式进行预处理,再输入到GRCNN网络模型中进行处理,输出目标物体在深度图像空间中的最优抓取位姿,经过变换处理得到机械臂坐标系下的最优抓取位姿,机械臂控制器对其坐标系下的最优抓取位姿采用逆运动学解算与运动轨迹规划生成机械臂关节动作,机械臂执行该关节动作进行抓取。
在本实施例中,还包括对上述提出的基于Faster R-CNN和GRCNN的机械臂智能抓取系统进一步的调试界面,在系统的不同界面可分布实现不同的功能,并将结果可视化,提高了人机交互能力;具体包括如下:
如图10所示,当在登录界面输入正确的账号与密码时,就可以进入机械臂智能抓取软件系统。同时在登录页面的右下角,系统能同步当前的日期与时间。
如图11所示,进入系统后,机械臂准备与调试模块主要有三部分组成,第一部分是机械臂连接单元,当选择好对应的串口和波特率时,机械臂正常连接。第二部分是机械臂位置调整单元,当连接好机械臂后,便可以对机械臂进行复位操作;当机械臂运作不正常时,系统也内置了急停功能,避免因不正常操作或机械臂本身的故障而造成的人为伤害;除此之外,也可以进行自定义调整,当点击“自定义调整”按钮时,右侧便可以通过滑动条或者以文本框输入的形式对机械臂关节角度进行调整。第三部分是相机连接单元,打开相机后分别选择相应的模式来采集彩色图像或深度图像信息,并实时显示在界面上。
如图12所示,相机采集到目标物体的彩色图像和深度图像,并输出目标物体的类别和目标物体的三维位置。
如图13所示,在生成抓取位姿后,机械臂开始进行运动规划,并将结果在右下侧的终端中同步显示,在成功生成抓取位姿和运动规划后,机械臂便可以开始执行抓取,最后在终端中显示抓取结果。
本发明面向现有的抓取检测技术,考虑到只能定点抓取特定固定的物体、无法与环境感知交互、智能化水平低、抓取成功率低等问题,提出了一种基于Faster R-CNN+GRCNN的抓取检测网络。Faster R-CNN+GRCNN网络解决了物体在堆叠场景中的抓取检测和物体抓取位姿的问题,Faster R-CNN网络检测物体类别和位置,Faster R-CNN网络将检测到的目标物体对应像素的深度图像部分提取出来后,经过处理输入到GRCNN网络,GRCNN网络输出置信度最高的像素点作为抓取点,这组置信度最高的抓取点经过相机坐标系和机器人坐标系的转换后,得到机器人坐标系下的抓取位姿表示模型。最后这组抓取位姿表示模型被送入到机械臂的控制器中,控制器控制机械臂执行抓取任务。
本发明实现机械臂与外界环境的交互感知,适用于大量未知物体的抓取检测。机械臂具有自主识别和智能决策能力,提升抓取检测的成功率,整个的抓取方案具有任务泛化性。
以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (4)
1.一种基于Faster R-CNN和GRCNN的机械臂智能抓取方法,应用于执行抓取的机械臂、以及固定在机械臂末端的深度相机,其特征在于,方法包括如下步骤:
S1:基于Halcon标定法确定机械臂末端夹爪与固定在机械臂末端的深度相机间的位置关系,在生成两者间的旋转矩阵后,初始化机械臂的抓取位姿;
S2:通过深度相机采集对应所述初始化机械臂的抓取位姿下的抓取场景中目标物体的彩色图像和深度图像,基于预先构建的Faster R-CNN网络模型对所述彩色图像进行目标检测,以识别出目标物体的类别、以及在彩色图像中的位置,在对位置进行修正后将目标物体在所述深度图像中对应像素部分进行提取,以生成包含目标物体的待处理图像;
S3:在对待处理图像按设定格式进行预处理后输入到GRCNN网络模型中并进行处理,输出目标物体在深度图像空间中的最优抓取位姿,经过变换处理得到机械臂坐标系下的最优抓取位姿,机械臂控制器对其坐标系下的最优抓取位姿采用逆运动学解算与运动轨迹规划生成机械臂关节动作,机械臂执行该关节动作进行抓取;
预先构建的Faster R-CNN网络模型包括:
卷积层,用于提取图像特征并得到公共特征图;
RPN网络,用于接收所述公共特征图并进行处理,以输出多个感兴趣区域ROI;
ROIpooling层,用于接收所述ROI和所述公共特征图,并将两者进行综合后得到固定大小的区域特征图;
全连接层,用于接收所述区域特征图并进行处理,以输出对应ROI中物体所述类别和物体在图像中的精确位置;
步骤S2中,采用预先构建Faster R-CNN网络模型进行目标检测的流程包括:
S2.1:将所述彩色图像输入到所述卷积层提取得到公共特征层,并生成若干网格和先验框,利用所述RPN网络获取对应所述先验框的建议框,利用所述建议框在所述公共特征层进行特征提取,提取出不同特征层对应所述彩色图像上的不同位置,并传入到ROIpooling层中;
S2.2:ROIpooling层将不同特征层尺寸调整成相同大小的区域特征图,并判断建议框中彩色图像特征层中目标物体的类别和位置,在全连接层中对建议框中目标物体位置进行修正后输出目标物体的精确位置;
步骤S3中,输出目标物体在深度图像空间中的最优抓取位姿之前还包括抓取位姿的确定规则:
若深度图像中高度为h,宽度为w,通道数为n,其深度图像空间上的抓取位姿定义为:
Gi=(x,y,Θi,Wi,Q),
其中,(x,y)为图像中像素坐标系定义的抓取点;Θi是深度相机绕参考坐标系的旋转度,也即抓取角度,Θi∈[-π/2,π/2];Wi是图像中像素坐标系定义的抓取宽度;Q是图像中对应像素抓取点(x,y)的置信度,即抓取成功率;
当Q∈[0,1],其中越接近0的数值表示抓取的成功率越低,接近1的数值表示抓取的成功率越高;
所述GRCNN网络模型输出的最优抓取位姿包括:
(1)对应每个像素点(x,y)的抓取置信度Q;
(2)对应每个像素点(x,y)的抓取角度Θ,角度并不是通过回归的方式直接输出的,而是先转化为sin2Θ和cos2Θ,然后通过公式:
Θ=1/2arctan(sin2Θ/cos2Θ)
得到最后的抓取角度Θ;
(3)对应每个像素点(x,y)的抓取宽度Wi,抓取宽度以深度图像上的像素为单位;
(4)从GRCNN网络模型输出的置信度图Q中,选出置信度最高的一个像素抓取点(x,y),再从抓取宽度图Wi和抓取角度图Θi选出对应抓取点(x,y)的抓取宽度Wi和抓取角度组成一组最优的抓取配置Gi=(x,y,Θi,Wi,Q)。
2.根据权利要求1所述的一种基于FasterR-CNN和GRCNN的机械臂智能抓取方法,其特征在于:步骤S2.2中,对建议框中目标物体位置进行修正后输出目标物体的精确位置包括:
采用全连接层中softmax函数计算彩色图像每个区域建议框中目标物体的具体隶属类别,并输出相应的概率向量,同时采用边界框回归预测每个区域建议框的位置偏移量,再通过回归修正获得更加精确的目标物体位置;
回归修正公式为:
tx=(x-xa)/wa ty=(y-ya)/ha
tw=log(w/wa)th=log(h/ha);
其中,[xa,ya,wa,ha]是建议框的中心点坐标和宽高,[tx,ty,tw,th]为边界框预测的偏移量,[x,y,w,h]为修正后的建议框坐标。
3.根据权利要求1所述的一种基于Faster R-CNN和GRCNN的机械臂智能抓取方法,其特征在于:步骤S3中,将所述待处理图像按设定格式进行预处理具体包括:
对选取的深度图像进行剪裁、调整大小以及归一化得到240*240的像素来适应网络的输入格式,经过opencv进行深度值的补全后送入到GRCNN网络模型中,GRCNN网络模型逐像素生成抓取矩形框。
4.一种基于FasterR-CNN和GRCNN的机械臂智能抓取系统,其特征在于,所述系统用于实施上述权利要求1-3任一项所述机械臂智能抓取方法,系统包括:
机械臂准备与调试模块,用于在机械臂与系统连接后,基于Halcon标定法确定机械臂末端夹爪与深度相机间的位置关系,在生成旋转矩阵后,初始化机械臂的抓取位姿;
物体抓取检测模块,用于控制深度相机采集对应所述初始化机械臂的抓取位姿下的抓取场景中目标物体的彩色图像和深度图像,基于预先构建的Faster R-CNN网络模型对所述彩色图像进行目标检测,以识别出目标物体的类别、以及在彩色图像中的位置,在对位置进行修正后将目标物体在所述深度图像中对应像素部分进行提取,以生成包含目标物体的待处理图像;
抓取执行与运行规划模块,用于在对待处理图像按设定格式进行预处理,再输入到GRCNN网络模型中进行处理,输出目标物体在深度图像空间中的最优抓取位姿,经过变换处理得到机械臂坐标系下的最优抓取位姿,机械臂控制器对其坐标系下的最优抓取位姿采用逆运动学解算与运动轨迹规划生成机械臂关节动作,机械臂执行该关节动作进行抓取。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310848848.9A CN116673962B (zh) | 2023-07-12 | 2023-07-12 | 一种基于Faster R-CNN和GRCNN的机械臂智能抓取方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310848848.9A CN116673962B (zh) | 2023-07-12 | 2023-07-12 | 一种基于Faster R-CNN和GRCNN的机械臂智能抓取方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116673962A CN116673962A (zh) | 2023-09-01 |
CN116673962B true CN116673962B (zh) | 2024-03-19 |
Family
ID=87785650
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310848848.9A Active CN116673962B (zh) | 2023-07-12 | 2023-07-12 | 一种基于Faster R-CNN和GRCNN的机械臂智能抓取方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116673962B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117021122B (zh) * | 2023-10-09 | 2024-01-26 | 知行机器人科技(苏州)有限公司 | 一种抓取机器人控制方法及系统 |
CN117549307B (zh) * | 2023-12-15 | 2024-04-16 | 安徽大学 | 一种非结构化环境下的机器人视觉抓取方法及系统 |
CN118143970B (zh) * | 2024-03-29 | 2024-08-23 | 安徽大学 | 一种机器人视觉检测方法及基于视觉检测方法的抓取系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111913435A (zh) * | 2020-07-30 | 2020-11-10 | 浙江科技学院 | 一种基于堆积沙漏网络的单/多目标关键点定位方法 |
CN114750164A (zh) * | 2022-05-25 | 2022-07-15 | 清华大学深圳国际研究生院 | 一种透明物体的抓取方法、系统及计算机可读存储介质 |
CN115861780A (zh) * | 2022-12-21 | 2023-03-28 | 苏州科技大学 | 一种基于yolo-ggcnn的机械臂检测抓取方法 |
CN115972198A (zh) * | 2022-12-05 | 2023-04-18 | 无锡宇辉信息技术有限公司 | 一种非完全信息条件下的机械臂视觉抓取方法与装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111783772A (zh) * | 2020-06-12 | 2020-10-16 | 青岛理工大学 | 一种基于RP-ResNet网络的抓取检测方法 |
-
2023
- 2023-07-12 CN CN202310848848.9A patent/CN116673962B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111913435A (zh) * | 2020-07-30 | 2020-11-10 | 浙江科技学院 | 一种基于堆积沙漏网络的单/多目标关键点定位方法 |
CN114750164A (zh) * | 2022-05-25 | 2022-07-15 | 清华大学深圳国际研究生院 | 一种透明物体的抓取方法、系统及计算机可读存储介质 |
CN115972198A (zh) * | 2022-12-05 | 2023-04-18 | 无锡宇辉信息技术有限公司 | 一种非完全信息条件下的机械臂视觉抓取方法与装置 |
CN115861780A (zh) * | 2022-12-21 | 2023-03-28 | 苏州科技大学 | 一种基于yolo-ggcnn的机械臂检测抓取方法 |
Also Published As
Publication number | Publication date |
---|---|
CN116673962A (zh) | 2023-09-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116673962B (zh) | 一种基于Faster R-CNN和GRCNN的机械臂智能抓取方法及系统 | |
CN113524194B (zh) | 基于多模特征深度学习的机器人视觉抓取系统的目标抓取方法 | |
CN109977813B (zh) | 一种基于深度学习框架的巡检机器人目标定位方法 | |
WO2022188379A1 (zh) | 服务于电力机器人的人工智能系统及方法 | |
CN111496770B (zh) | 基于3d视觉与深度学习的智能搬运机械臂系统及使用方法 | |
CN111695562B (zh) | 一种基于卷积神经网络的机器人自主抓取方法 | |
CN111080693A (zh) | 一种基于YOLOv3的机器人自主分类抓取方法 | |
CN111923053A (zh) | 基于深度视觉的工业机器人物件抓取示教系统及方法 | |
CN110378325B (zh) | 一种机器人抓取过程中的目标位姿识别方法 | |
CN115816460B (zh) | 一种基于深度学习目标检测与图像分割的机械手抓取方法 | |
CN115861780B (zh) | 一种基于yolo-ggcnn的机械臂检测抓取方法 | |
CN109159113A (zh) | 一种基于视觉推理的机器人作业方法 | |
JP2019057250A (ja) | ワーク情報処理装置およびワークの認識方法 | |
CN114463244A (zh) | 一种视觉机器人抓取系统及其控制方法 | |
KR20230061612A (ko) | 머신 러닝을 이용한 물체의 피킹 자동화 시스템 및 그 제어 방법 | |
CN113369761A (zh) | 一种基于视觉引导机器人焊缝定位的方法及系统 | |
CN116529760A (zh) | 抓取控制方法、装置、电子设备和存储介质 | |
CN116984269A (zh) | 一种基于图像识别的煤矸石抓取方法及系统 | |
CN116985134A (zh) | 一种基于机器人图像处理的伺服控制方法与系统 | |
CN109079777B (zh) | 一种机械臂手眼协调作业系统 | |
CN113681552B (zh) | 一种基于级联神经网络的机器人混杂物体五维抓取方法 | |
CN114193446A (zh) | 一种基于形态学图像处理的闭环抓取检测方法 | |
Gao et al. | An automatic assembling system for sealing rings based on machine vision | |
CN114187312A (zh) | 目标物的抓取方法、装置、系统、存储介质及设备 | |
CN113808206B (zh) | 一种基于视觉追踪机器人的排版系统及方法 |
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 |