CN112614182B - 基于深度学习的识别加工位置的方法、存储设备、移动终端 - Google Patents
基于深度学习的识别加工位置的方法、存储设备、移动终端 Download PDFInfo
- Publication number
- CN112614182B CN112614182B CN202011523104.2A CN202011523104A CN112614182B CN 112614182 B CN112614182 B CN 112614182B CN 202011523104 A CN202011523104 A CN 202011523104A CN 112614182 B CN112614182 B CN 112614182B
- Authority
- CN
- China
- Prior art keywords
- target
- coordinate
- coordinates
- robot
- subgraph
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J11/00—Manipulators not otherwise provided for
- B25J11/005—Manipulators for mechanical processing tasks
- B25J11/0055—Cutting
-
- 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/1628—Programme controls characterised by the control loop
- B25J9/163—Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
-
- 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/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
- B25J9/1697—Vision controlled systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
- G06F18/23213—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20021—Dividing image into blocks, subimages or windows
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Mechanical Engineering (AREA)
- Robotics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Image Analysis (AREA)
- Manipulator (AREA)
Abstract
本发明公开了一种基于深度学习的识别加工位置的方法,该方法包括以下步骤:S1、制作数据集并搭建训练网络;S2、控制移动相机移动到目标加工位置区域的对应拍摄位置;S3、通过控制指令或者外接线触发所述移动相机进行拍摄;S4、通过移动相机SDK抽取拍摄照片的图像帧,并将抽取的图像帧输入到卷积神经网络进行目标加工位置的检测;S5、对所述目标照片进行切割,获得含有目标的子图;S6、根据目标实际大小对所述子图进行resize,使其在像素坐标系下的坐标等于机器人下的坐标。本发明利用深度学习技术,使用卷积算法深度提取目标纹理特征,提高了识别精度和准确度。
Description
技术领域
本发明涉及图像识别定位领域,具体涉及一种基于深度学习的识别加工位置的方法、存储设备及移动终端。
背景技术
视觉定位技术在工业制造中起到重要作用,应用非常广泛,现代工业发展如火如荼,各种视觉需求接踵而至,传统的视觉识别定位技术已无法满足大多数加工场景,例如,对于一个复杂的工件来说,由于工件外形不统一、工件不同位置的反光程度不一致、工件大小会发生变化、工件颜色与底色相近、工件上有灰尘或铸铁块等干扰因素,传统算法仅使用轮廓匹配、灰度筛选、颜色识别、sift特征匹配技术已经无法做到稳定识别与定位。
为了弥补传统视觉算法不能稳定识别定位复杂工件的问题,需要对现有的识别定位算法进行进一步地改进。
发明内容
为了解决上述技术问题,本发明的提供一种识别稳定且精准的基于深度学习的识别加工位置的方法。
为实现上述目的,本发明采取的技术方案如下:一种基于深度学习的识别加工位置的方法,适用于在计算中执行,该方法包括以下步骤:
S1、制作数据集并搭建训练网络;
S2、控制移动相机移动到目标加工位置区域的对应拍摄位置;
S3、通过控制指令或者外接线触发所述移动相机进行拍摄;
S4、通过移动相机SDK抽取拍摄照片的图像帧,并将抽取的图像帧输入到卷积神经网络进行目标加工位置的检测,若在拍摄照片中识别到目标加工位置则所述卷积神经网络输出该目标照片;
S5、对所述目标照片进行切割,获得含有目标的子图;
S6、根据目标实际大小对所述子图进行resize,使其在像素坐标系下的坐标等于机器人下的坐标。
优选地,该方法还包括以下步骤:
S7、重复步骤S1-S4拍摄获取多张目标照片,建立目标照片模板库;
S8、利用特征匹配算法匹配resize的子图和模板库中的所有目标图片,得到所有匹配的特征点;
S9、利用聚类算法聚类出内点,内点为更加精确匹配的特征点;
S10、计算出所有内点的最小x坐标、最大x坐标、最小y坐标、最大y坐标,根据这些坐标计算出内点的外接矩形,计算出外接矩形中心点的像素坐标,记x_min、y_min为外接矩形左上角坐标,x_max、y_max为外接矩形右下角坐标,可确定所述外接矩形中心点坐标为((x_min+x_max)/2,(y_min+y_max)/2),得到矩形的中心点的像素坐标;
S12、测量和校准相机参数,消除相机的畸变系数;
S13、测量和校准像素坐标到机器人坐标的转换矩阵;
S14、将像素坐标转化为机器人坐标;
S15、将机器人坐标发送到机器人控制器,驱动机器人运行到坐标位置进行切割。
一种存储设备,该存储设备中存储有多条指令,所述指令适用于由处理器加载并执行如权利要求1和2所述的任一一种操作。
一种移动终端,包括用于执行各指令的处理器和用于存储多条指令的存储设备,所述指令适于由所述处理器加载并执行如权利要求1和2所述的任一一种操作。
本发明有益的技术效果:
1.本发明利用深度学习技术,使用卷积算法深度提取目标纹理特征,提高了识别精度和准确度。
2.本发明首先使用深度学习技术在图像中寻找并剪裁出目标,然后在小范围内使用特征匹配算法匹配目标特征点,达到了稳定识别的效果。
附图说明
图1为本发明的整体结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例对本发明进行进一步详细说明,但本发明要求保护的范围并不局限于下述具体实施例。
如图1所示,一种基于深度学习的识别加工位置的方法,适用于在计算中执行,该方法包括以下步骤:
S1、制作数据集并搭建训练网络;
其中,制作数据集用于训练网络,使网络具有识别能力,训练集中的材料是通过工业相机对所有的定位目标进行大量拍摄后形成的数据库。
S2、控制移动相机移动到目标加工位置区域的对应拍摄位置;
该步骤的目的是用于对目标加工位置区域进行拍摄。
S3、通过控制指令或者外接线触发所述移动相机进行拍摄;
S4、通过移动相机SDK(SDK是软件开发工具包,一般都是一些软件工程师为特定的软件包、软件框架、硬件平台、操作***等建立应用软件时的开发工具的集合)抽取拍摄照片的图像帧,并将抽取的图像帧输入到卷积神经网络((Convolutional Neural Networks,CNN)是一类包含卷积计算且具有深度结构的前馈神经网络(Feedforward NeuralNetworks),是深度学习(deep learning)的代表算法之一))进行目标加工位置的检测,若在拍摄照片中识别到目标加工位置则所述卷积神经网络输出该目标照片,获得检测识别的结果。
S5、对所述目标照片进行切割,获得含有目标的子图,这里的含有目标目标的子图是指定位目标图片的比例占整个图片的比例大于90%以上的图片,即几乎整个图片只含有目标,没有其他的干扰背景。切割成子图的作用是避免背景对识别造成干扰,将子图传递给特征匹配算法计算,以保证识别成功率和稳定性。
S6、根据目标实际大小对所述子图进行resize(resize是一种图像处理函数,用于改变计算机图像的大小),使目标位置在像素坐标系下的坐标可转化为机器人下的坐标。切割后的子图仅包含目标本身,丢失了目标在像素坐标系下的位置信息,此处将子图进行resize,即将子图之外的像素点赋值为(255,255,255),作用在于排除了背景干扰,同时保留了位置信息,以供以下S13步骤的转换矩阵计算出机器人下的坐标。
优选地,该方法还包括以下步骤:
S7、重复步骤S2-S4拍摄获取多张目标照片,建立目标照片模板库,即建立数据集;
S8、利用特征匹配算法匹配resize的子图和模板库中的所有目标图片,得到所有匹配的特征点。特征点的含义是:每一个特征点都代表了图像的局部特征,其对旋转、尺度缩放、亮度变化保持不变性,对视角变化、仿射变换、噪声也保持一定程度的稳定性,所有特征点代表图像的整体特征。
该步骤主要用于识别出resize后的子图目标中的所有特征点。
这里的特征匹配算法采用surf算法,Surf算法的基本路程也可以分为四大部分:尺度空间建立、特征点定位、特征点方向确定,特征点描述;SURF算法中,也是在特征点周围取一个4*4的矩形区域块,但是所取得矩形区域方向是沿着特征点的主方向。每个子区域统计25个像素的水平方向和垂直方向的haar小波特征,这里的水平和垂直方向都是相对主方向而言的。该haar小波特征为水平方向值之后、垂直方向值之后、水平方向绝对值之后以及垂直方向绝对值之和4个方向。
S9、利用聚类算法聚类出内点,内点为更加精确匹配的特征点,用于进一步筛选出目标的主要、密集特征。
这里的聚类算法采用K-means算法,K-means算法,也称为K-平均或者K-均值,一般作为掌握聚类算法的第一个算法,这里的K为常数,需事先设定,通俗地说该算法是将没有标注的M个样本通过迭代的方式聚集成K个簇。在对样本进行聚集的过程往往是以样本之间的距离作为指标来划分。
S10、计算出所有内点的最小x坐标、最大x坐标、最小y坐标、最大y坐标,这里计算得出内点最小坐标的方法是:遍历所有特征点,使用排序算法即可得到。
根据这些坐标计算出内点的外接矩形,计算出外接矩形中心点的像素坐标,记x_min、y_min为外接矩形左上角坐标,x_max、y_max为外接矩形右下角坐标,外接矩形中心点坐标为((x_min+x_max)/2,(y_min+y_max)/2),从而得到矩形的中心点的像素坐标;
S12、测量和校准相机参数,消除相机的畸变系数。
这一步骤也是将像素坐标转换为机器人坐标的前提,所有光学相机和镜头都存在畸变的问题,畸变属于成像的几何失真,它是由于焦平面上不同区域对影像的放大率不同而形成的画面扭曲变形现象,相机和镜头只有消除了相机的畸变系数之后,转换出来的机器人坐标才会准确,否则,在一些高要求的定位项目中,精度是无法达到使用要求的。
S13、测量和校准像素坐标到机器人坐标的转换矩阵,用于得到将像素坐标转换为机器人坐标的转换关系。
其中,转换矩阵即像素坐标到机器人坐标的转换关系。
S14、将像素坐标转化为机器人坐标。
具体地,将将像素坐标与转换矩阵相乘即可得到机器人坐标。
S15、将机器人坐标发送到机器人控制器,使机器人根据发送的坐标来定位并驱动机器人运行到坐标位置进行切割。
切割完成后,整个过程结束。
一种存储设备,该存储设备中存储有多条指令,所述指令适用于由处理器加载并执行如权利要求1和2所述的任一一种操作。
一种移动终端,包括用于执行各指令的处理器和用于存储多条指令的存储设备,所述指令适于由所述处理器加载并执行如权利要求1和2所述的任一一种操作。
本发明算法具有以下优点:
1、本发明算法模拟人脑的工作机制,搭建人工神经网络,图像特征由神经网络提取,而非人工通过打光的方式来为算法提供特征,其提取特征的能力更强、抗干扰能力更强、识别能力更强。
2、通用性好,本算法具有学习能力,对光源、镜头等设备的依赖度低,只要经过训练,那么可以稳定识别大多数工件;而传统算法不具有学习能力,如果更换识别目标,那么通常需要更换配套的光源、相机和镜头等设备,然后通过各种方式的打光以及算法调参来寻求最优的识别效果。
3、易使用,首次使用传统算法都需要经过大量的调参,而本算法不需要。
根据上述说明书的揭示和教导,本发明所属领域的技术人员还可以对上述实施方式进行变更和修改。因此,本发明并不局限于上面揭示和描述的具体实施方式,对发明的一些修改和变更也应当落入本发明的权利要求的保护范围内。此外,尽管本说明书中使用了一些特定的术语,但这些术语只是为了方便说明,并不对发明构成任何限制。
Claims (3)
1.一种基于深度学习的识别加工位置的方法,适用于在计算中执行,其特征在于,该方法包括以下步骤:
S1、制作数据集并搭建训练网络;
S2、控制移动相机移动到目标加工位置区域的对应拍摄位置;
S3、通过控制指令或者外接线触发所述移动相机进行拍摄;
S4、通过移动相机SDK抽取拍摄照片的图像帧,并将抽取的图像帧输入到卷积神经网络进行目标加工位置的检测,若在拍摄照片中识别到目标加工位置则所述卷积神经网络输出该目标照片;
S5、对所述目标照片进行切割,获得含有目标的子图;
S6、根据目标实际大小对所述子图进行resize,使其在像素坐标系下的坐标等于机器人下的坐标;
该方法还包括以下步骤:
S7、重复步骤S2-S4拍摄获取多张目标照片,建立目标照片模板库;
S8、利用特征匹配算法匹配resize的子图和模板库中的所有目标照片,得到所有匹配的特征点;所述特征匹配算法为surf算法,在特征点周围取一个n*n的矩形区域块,其中,n≥4,且n为正整数,所述矩形区域块的方向与特征点的主方向相同,每个矩形区域块统计25个像素的水平方向和垂直方向的haar小波特征;
S9、利用聚类算法聚类出内点,内点为更加精确匹配的特征点;
S10、计算出所有内点的最小x坐标、最大x坐标、最小y坐标、最大y坐标,根据这些坐标计算出内点的外接矩形,计算出外接矩形中心点的像素坐标,记x_min、y_min为外接矩形左上角坐标,x_max、y_max为外接矩形右下角坐标,可确定所述外接矩形中心点坐标为((x_min+x_max)/2,(y_min+y_max)/2),得到矩形的中心点的像素坐标;
S11、测量和校准相机参数,消除相机的畸变系数;
S12、测量和校准像素坐标到机器人坐标的转换矩阵;
S13、将像素坐标转化为机器人坐标;
S14、将机器人坐标发送到机器人控制器,驱动机器人运行到坐标位置进行切割。
2.一种存储设备,该存储设备中存储有多条指令,其特征在于,所述指令适用于由处理器加载并执行如权利要求1所述的方法。
3.一种移动终端,包括用于执行各指令的处理器和用于存储多条指令的存储设备,其特征在于,所述指令适于由所述处理器加载并执行如权利要求1所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011523104.2A CN112614182B (zh) | 2020-12-21 | 2020-12-21 | 基于深度学习的识别加工位置的方法、存储设备、移动终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011523104.2A CN112614182B (zh) | 2020-12-21 | 2020-12-21 | 基于深度学习的识别加工位置的方法、存储设备、移动终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112614182A CN112614182A (zh) | 2021-04-06 |
CN112614182B true CN112614182B (zh) | 2023-04-28 |
Family
ID=75243894
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011523104.2A Active CN112614182B (zh) | 2020-12-21 | 2020-12-21 | 基于深度学习的识别加工位置的方法、存储设备、移动终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112614182B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110580723A (zh) * | 2019-07-05 | 2019-12-17 | 成都智明达电子股份有限公司 | 一种利用深度学习和计算机视觉进行精准定位的方法 |
CN110827353A (zh) * | 2019-10-18 | 2020-02-21 | 天津大学 | 一种基于单目摄像头辅助的机器人定位方法 |
CN111080693A (zh) * | 2019-11-22 | 2020-04-28 | 天津大学 | 一种基于YOLOv3的机器人自主分类抓取方法 |
-
2020
- 2020-12-21 CN CN202011523104.2A patent/CN112614182B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110580723A (zh) * | 2019-07-05 | 2019-12-17 | 成都智明达电子股份有限公司 | 一种利用深度学习和计算机视觉进行精准定位的方法 |
CN110827353A (zh) * | 2019-10-18 | 2020-02-21 | 天津大学 | 一种基于单目摄像头辅助的机器人定位方法 |
CN111080693A (zh) * | 2019-11-22 | 2020-04-28 | 天津大学 | 一种基于YOLOv3的机器人自主分类抓取方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112614182A (zh) | 2021-04-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111161446B (zh) | 一种巡检机器人的图像采集方法 | |
CN109903331B (zh) | 一种基于rgb-d相机的卷积神经网络目标检测方法 | |
CN111553949B (zh) | 基于单帧rgb-d图像深度学习对不规则工件的定位抓取方法 | |
CN111476841B (zh) | 一种基于点云和图像的识别定位方法及*** | |
CN111721259B (zh) | 基于双目视觉的水下机器人回收定位方法 | |
CN108470356B (zh) | 一种基于双目视觉的目标对象快速测距方法 | |
CN111144349B (zh) | 一种室内视觉重定位方法及*** | |
CN111784655B (zh) | 一种水下机器人回收定位方法 | |
CN111598172B (zh) | 基于异构深度网络融合的动态目标抓取姿态快速检测方法 | |
CN112560704B (zh) | 一种多特征融合的视觉识别方法及*** | |
CN112164117A (zh) | 一种基于Kinect相机的V-SLAM位姿估算方法 | |
CN113554757A (zh) | 基于数字孪生的工件轨迹三维重构方法及*** | |
CN114693760A (zh) | 图像校正方法、装置及***、电子设备 | |
CN113822810A (zh) | 一种基于机器视觉的三维空间中工件的定位方法 | |
CN111681271B (zh) | 一种多通道多光谱相机配准方法、***及介质 | |
CN117496401A (zh) | 一种用于视频测量影像序列椭圆形目标点全自动识别与跟踪方法 | |
CN112819935A (zh) | 基于双目立体视觉实现工件三维重建的方法 | |
CN109410272B (zh) | 一种变压器螺母识别与定位装置及方法 | |
CN112614182B (zh) | 基于深度学习的识别加工位置的方法、存储设备、移动终端 | |
CN109318235B (zh) | 一种机器人视觉伺服***的快速聚焦方法 | |
CN116594351A (zh) | 一种基于机器视觉的数控加工单元*** | |
CN114998390B (zh) | 一种面向嵌入式智能摄像机的视觉分析***与方法 | |
CN114842335B (zh) | 用于建筑机器人的开槽目标识别方法及*** | |
CN116188763A (zh) | 一种基于YOLOv5的纸箱识别定位及放置角度的测量方法 | |
CN113689365B (zh) | 一种基于Azure Kinect的目标跟踪定位方法 |
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 |