CN110956660B - 定位方法、机器人以及计算机存储介质 - Google Patents
定位方法、机器人以及计算机存储介质 Download PDFInfo
- Publication number
- CN110956660B CN110956660B CN201811125578.4A CN201811125578A CN110956660B CN 110956660 B CN110956660 B CN 110956660B CN 201811125578 A CN201811125578 A CN 201811125578A CN 110956660 B CN110956660 B CN 110956660B
- Authority
- CN
- China
- Prior art keywords
- robot
- data
- marking
- coordinate data
- points
- 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 56
- 239000003550 marker Substances 0.000 claims description 35
- 238000004590 computer program Methods 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 abstract description 9
- 230000003287 optical effect Effects 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000013507 mapping Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/20—Instruments for performing navigational calculations
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0234—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using optical markers or beacons
-
- 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
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0246—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
- G05D1/0253—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means extracting relative motion information from a plurality of images taken successively, e.g. visual odometry, optical flow
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0276—Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Aviation & Aerospace Engineering (AREA)
- Electromagnetism (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Manipulator (AREA)
- Length Measuring Devices By Optical Means (AREA)
- Control Of Position Or Direction (AREA)
- Image Analysis (AREA)
Abstract
本申请提供了一种定位方法、机器人以及计算机存储介质。该定位方法应用于机器人,机器人包括相机,该定位方法包括:拍摄预设区域的照片,其中预设区域包括标记图案区域;识别标记图案区域的至少两个标记点,得到标记点的第一坐标数据;根据相机的参数和标记点的第一坐标数据计算得到机器人在世界坐标下的第二坐标数据;根据标记点的第一坐标数据和机器人在世界坐标下的第二坐标数据计算得到机器人在世界坐标下的角度数据。通过上述定位方法,微型机器人能够快速进行单目视觉定位,减少定位计算量。
Description
技术领域
本申请涉及机器人技术领域,特别是涉及一种定位方法、机器人以及计算机存储介质。
背景技术
随着传感器技术、网络技术以及图像技术的发展,基于视觉的定位技术已成为一门快速发展的新型学科,在机器人导航、航空航天飞行器的定位与抓取、虚拟现实等技术中得到了越来越广泛的应用。
定位技术包括单目定位技术、双目定位技术和多目定位技术。其中,单目定位技术由于系统简单,成本较低被普遍运用在微型机器人的定位当中。
但是,由于微型机器人的体型较小,定位技术所需要的计算量对微型机器人的处理器造成很大的负担。
发明内容
本申请提供了一种定位方法、机器人以及计算机存储介质,主要解决的技术问题是如何减小单目视觉定位的计算量。
为解决上述技术问题,本申请提供了一种定位方法,定位方法应用于机器人,机器人包括相机,该定位方法包括:
拍摄预设区域的照片,其中,预设区域包括标记图案区域;
识别标记图案区域的至少两个标记点,得到标记点的第一坐标数据;
根据相机的参数和标记点的第一坐标数据计算得到机器人在世界坐标下的第二坐标数据;
根据标记点的第一坐标数据和机器人在世界坐标下的第二坐标数据计算得到机器人在世界坐标下的角度数据。
为解决上述技术问题,本申请还提供了一种机器人,该机器人包括相机、存储器和分别与相机、存储器连接的处理器;
相机用于拍摄预设区域的照片,其中,预设区域包括标记图案区域;
处理器用于识别标记图案区域的至少两个标记点,得到标记点的第一坐标数据;处理器还用于根据相机的参数和标记点的第一坐标数据计算得到机器人在世界坐标系下的第二坐标数据;处理器进一步根据标记点的第一坐标数据和机器人在世界坐标下的第二坐标数据计算得到机器人在世界坐标下的角度数据;
存储器用于存储处理器的数据。
为解决上述技术问题,本申请还提供了一种计算机存储介质,该计算机存储介质用于存储计算机程序,计算机程序能够被执行以实现上述定位方法的步骤。
与现有技术相比,本申请的有益效果是:该定位方法包括:拍摄预设区域的照片,其中,预设区域包括标记图案区域;识别标记图案区域的至少两个标记点,得到标记点的第一坐标数据,通过识别拍摄的标记图案即可获取标记点的像素数据和物理数据,节省了通过像素数据获取物理数据的计算量;根据相机的参数和标记点的第一坐标数据计算得到机器人在世界坐标下的第二坐标数据;根据标记点的第一坐标数据和机器人在世界坐标下的第二坐标数据计算得到机器人在世界坐标下的角度数据,根据机器人在世界坐标下的角度数据即可获取机器人的位姿。通过上述显示方法,微型机器人能够快速进行单目视觉定位,减少定位计算量。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。其中:
图1是本申请定位方法第一实施例的流程示意图;
图2是图1中机器人的结构示意图;
图3是本申请定位方法第二实施例的流程示意图;
图4是图3中标记图像区域一实施例的示意图;
图5是图3中标记图像区域另一实施例的示意图;
图6是本申请定位方法第三实施例的流程示意图;
图7是本申请机器人一实施例的结构示意图;
图8是本申请计算机存储介质一实施例的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参见图1和图2,图1是本申请定位方法第一实施例的流程示意图,图2是图1中机器人的结构示意图。
本实施例的定位方法应用于机器人200,如图2所示,机器人200至少包括相机21。在微型机器人200中,相机21的位置和角度近似于微型机器人200整体的位置和角度。微型机器人200通过本实施例的定位方法可以获得微型机器人200相对于世界坐标系的位姿。
如图1所示,该定位方法包括:
S11:拍摄预设区域的照片,其中,预设区域包括标记图案区域。
其中,机器人200被放置在标记工具上(图中未示出),标记工具为包括棋盘格的标记板或标记纸。标记工具中包括有标记图案区域,具体地,机器人200被放置在标记图案区域内。
机器人200放置在标记图案区域的中心,或者标记图案区域内的任一位置。设置在机器人200中的相机21拍摄照片,其中,相机21获取包括标记图案区域的不同角度和不同距离的照片,照片中至少显示出部分标记图案。
S12:识别标记图案区域的至少两个标记点,得到标记点的第一坐标数据。
其中,机器人200识别照片中标记图案区域的至少两个标记点,得到识别标记点的第一坐标数据,其中标记点的第一坐标数据至少包括标记点在世界坐标系下的坐标数据。
S13:根据相机的参数和标记点的第一坐标数据计算得到机器人在世界坐标下的第二坐标数据。
其中,相机21的参数包括相机21自身的技术参数和拍摄时相机21设置的参数,例如焦距、放大倍数和分辨率等等。机器人200根据相机21的参数(内参和外参)和步骤S12获取的标记点第一坐标数据可以利用光学原理和坐标变换等方式计算得到机器人200在世界坐标下的第二坐标数据。其中,内参包括相机21自身的技术参数和拍摄时相机21设置的参数,外参为相机21光心与机器人坐标的位置关系。
S14:根据标记点的第一坐标数据和机器人在世界坐标下的第二坐标数据计算得到机器人在世界坐标下的角度数据。
其中,机器人200根据标记点在世界坐标下的第一坐标数据和机器人200在世界坐标下的第二坐标数据计算得到机器人200在世界坐标下的角度数据。机器人200将在世界坐标下的角度数据换算为机器人200的位姿数据,其中,相机21的位置和角度近似于微型机器人200整体的位置和角度。机器人200的位姿数据可以通过机器人200自身的显示屏(图中未示出)显示,也可以通过无线传输的方式传输到云端服务器或计算机进行存储和处理。
具体地,机器人200根据标记点在世界坐标下的第一坐标数据和机器人200在世界坐标下的第二坐标数据,可以使用三角函数和余弦定理计算得到机器人200在世界坐标系下的角度。
在本实施例的定位方法中,机器人200通过拍摄的照片至少获取标记点在世界坐标下的第一坐标数据;然后根据标记点在世界坐标下的第一坐标数据获取机器人200在世界坐标下的第二坐标数据;最后根据第一坐标数据和第二坐标数据获得机器人200的角度数据和位姿数据。通过上述定位方法,机器人200在进行单目视觉定位时,可以通过识别标记点的坐标数据的方式减少坐标换算时的计算量。
本申请还提供了另一种定位方法,具体请参见图3和图4,图3是本申请定位方法第二实施例的流程示意图,图4是图3中标记图像区域的示意图。本实施例的定位方法同样应用于机器人200,机器人200的具体结构请参见图2,在此不再赘述。
如图3所示,本实施例的定位方法包括以下步骤:
S31:标定相机的参数。
其中,相机21的参数至少包括放大倍数、分辨率和焦距等等。
S32:相机按相对于机器人底部固定的预设角度拍摄预设区域的照片,其中,预设角度小于90°。
其中,相机21按相对于机器人200底部固定的预设角度拍摄预设区域的照片,预设角度小于90°。本实施例中,预设角度的大小取决于标记工具的标记图像区域大小和机器人200的放置位置。具体地,相机21按照预设角度能够拍摄标记图像各个角度和各个位置的照片。
S33:识别标记图案区域的至少两个标记点,得到标记点的第一像素坐标数据。
其中,机器人200通过拍摄的照片识别标记图案区域的至少两个标记点,得到标记点在照片上的第一像素坐标数据,第一像素坐标为标记点在像素坐标系下的二维坐标。
S34:根据相机的参数和第一像素坐标数据得到标记点与相机的第一距离数据。
其中,机器人200根据相机21的参数和标记点的第一像素坐标换算成相对于标记点在机器人坐标下的坐标,从而得到标记点到机器人200的距离。
具体地,以相机21光心的坐标为原点,根据相机21的参数,每个标记点的第一像素坐标均可转化为相对于光心的物理坐标(标记点在机器人坐标下的物理坐标),光心和标记点的物理坐标可以连成一条直线。根据标记点对应位置的高度(比如水平面或某个已知高度),计算得到直线与该平面的交底,即标记点对应的相对于相机21光心物理坐标。然后根据相机21光心与机器人200的位置关系,把标记点的第一像素坐标换算成机器人坐标系下的坐标。
具体地,例如标记点的第一像素坐标为(u,v),机器人200先将第一像素坐标(u,v)换算为第一图像坐标(x,y),其中,图像坐标系以CCD图像平面的中心为坐标原点,X轴和Y轴分别平行于图像平面的两条垂直边,用(x,y)表示其坐标值。第一像素坐标(u,v)和第一图像坐标(x,y)的换算关系如下:
其中,(u0,v0)是图像坐标系原点在像素坐标系中的坐标,dx和dy分别是每个像素在图像平面x和y方向上的物理尺寸。
机器人200将标记点的第一图像坐标(x,y)换算为标记点在机器人坐标系下的坐标(XC,YC,ZC)换算关系如下:
其中,f是相机21的焦距。
机器人200计算标记点在机器人坐标系下的坐标(XC,YC,ZC)与机器人坐标系原点(0,0,0)的距离,即可得到标记点与相机21的第一距离数据。
其中,在本实施例中,相机21的位置和角度近似于微型机器人200整体的位置和角度,标记点对应的相对于相机21光心物理坐标近似于在机器人坐标系下的物理坐标。在其他实施例中,相机21的位置和角度不能近似于机器人200整体的位置和角度,标记点对应的相对于相机21光心物理坐标通过简单的三维坐标系换算即可获得标记点在机器人坐标系下的物理坐标,在此不再赘述。
S35:识别标记图案区域的至少两个标记点之间的编码图案,以得到编码图案对应的编码数据。
其中,机器人200识别照片中标记图案区域的至少两个标记点之间的编码图案,以得到编码图案对应的编码数据。
具体地,编码图案包括至少两个编码块,相邻标记点之间的编码块的颜色、数量和/或排列顺序不同,则其对应的编码数据也不同。
如图4所示,标记图案区域400的内轮廓中,设置有棋盘41,机器人200被放置在棋盘41的中心交点或任意一个交点上。标记图案区域400的外轮廓中,设置有多个标记点42,每两个标记点42之间设置有n个编码块,其中,n个编码块中包括n1个第一编码块43和n2个第二编码块44。
第一编码块43和第二编码块44的形状相同时,通过颜色区分,例如,第一编码块43为黑色编码块,第二编码块44为白色编码块;第一编码块43和第二编码块44的颜色相同时,通过形状区域,例如,第一编码块43为长方形,第二编码块44为三角形。
按二进制计算编码块的排列顺序,第一编码块43和第二编码块44可以看为n位二进制编码,例如第一编码块43为“1”,第二编码块44为“0”,n个编码点最多可以组成2n种编码。编码时,根据需要的标记图案区域400总长度和两个标记点42之间的合适距离,选择合适的n值。
在其他实施例中,标记图案区域400可以只包含一个编码,也可以包含连续的多个编码。标记图案不仅限于在标记图案区域400边缘,也可以在标记图案区域400内部。标记图案不仅限于首尾相连,也可以互相交叉,具体请参阅图5。标记图案在部署时可以平行于水平面,也可以垂直于水平面,在此不再赘述。
S36:从预存的记录中查找得到编码数据对应的与编码图案相邻的标记点在世界坐标下的第一物理坐标数据。
其中,根据步骤S35中获取的编码数据,机器人200从预存的记录中查找得到对应的与编码图案相邻的标记点在世界坐标下的第一物理坐标数据。预存的记录包括编码数据与相邻标记点的物理坐标之间的映射关系,当然也可以包括标记点像素数据、编码图案、编码数据和物理坐标数据等的映射关系。
机器人200获取全部标记点的第一物理坐标数据,或者获取照片中左右两端和上下两端的四个标记点的第一物理坐标数据。
S37:根据第一距离数据和标记点在世界坐标下的第一物理坐标数据通过三边定位法计算得到机器人在世界坐标下的第二坐标数据。
其中,机器人200在步骤S34和步骤S36中获取第一距离数据和标记点在世界坐标下的第一物理坐标数据,然后根据三边定位法计算得到机器人在世界坐标下的的第二坐标数据,第二坐标数据为物理数据。
具体地,在本实施例中获取了三个标记点的第一物理坐标数据,且三个标记点均在同一水平面上,z坐标的数值相同。例如,三个标记点A点、B点和C点坐标分别为A(x1,y1,z1)、B(x2,y2,z2)和C(x3,y3,z3)。分别以A点、B点和C点为圆心,以各个圆心到待测标签D的距离最近参考标签的距离为半径作圆,所得三个圆的交点为D(x,y,z)。圆A的半径为d1,圆B的半径为d2,圆C的半径为d3。交点D(x,y,z)可以由下列公式计算得到:
其中,圆A、圆B和圆C之间的关系有3种:三个圆两两相交,并且三个圆有公共区域;三个圆两两相交,但没有公共区域;三个圆不相交。
当三个圆有公共区域时,则公共区域必然有三个交点,以三个交点作三角形,则待测标签的坐标D即是三角形内心坐标。
当三个圆两两相交且无公共区域时,必然有两个不相交公共区域。取两圆相交区域的两个交点的连线的中点,然后以这三个中点作三角形,其内心即是待测标签内心坐标D。
当三个圆不相交时舍弃,采用下一组三个标记点;若三组标记点均无法找到相交情况,即用三个标记点的位置作三角形,其内心即是待测标签的位置D。
在其他实施例中,机器人200获取了两个标记点,根据三边定位法两个圆的交点可能有两个,计算的待测标签D的位置结果有两个。可以根据地图的先验信息,即交点在标记图像区域内(在标记图像区域上)的点有效,交点在标记图像区域外的点无效,舍弃其中一个位置坐标。
S38:根据标记点在世界坐标下的第一物理坐标数据和机器人在世界坐标下的第二坐标数据计算得到机器人在世界坐标下的角度数据。
其中,步骤S38的技术特征与上述步骤S14技术特征基本相同,在此不再赘述。
在上述实施例的定位方法基础上,本实施例中机器人200根据相机参数和第一像素坐标数据得到标记点与相机的第一距离数据;然后识别标记点之间的编码图案,并得到编码数据,通过编码数据提取标记点在世界坐标下的第一物理坐标数据;根据第一距离数据和标记点在世界坐标下的第一物理坐标数据通过三边定位法计算得到机器人在世界坐标下的第二坐标数据。通过上述定位方法,机器人200在进行单目视觉定位时,可以通过识别标记点的坐标数据的方式减少坐标换算时的计算量。
本申请还提供了又一种定位方法,具体请参见图6,图6是本申请定位方法第三实施例的流程示意图。本实施例的定位方法同样应用于机器人200,机器人200的具体结构请参见图2,在此不再赘述。
如图所示,在上述实施例三的基础上,步骤S33之后进一步包括:
S331:根据至少两个标记点的第一像素坐标数据计算得到标记点之间的第二距离数据。
其中,机器人200根据识别到的相邻标记点的第一像素坐标数据计算得到标记点之间的第二距离数据,即实际的空间距离。
具体地,当识别到的标记点在同一条直线上,机器人200只获取左右两端的标记点数据;当识别到的标记点不在同一条直线上,机器人200获取三个标记点数据,包括左右两端的标记点数据和与左右两端标记点距离最远的标记点数据,从而提高机器人200位置的计算准确性。
S332:判断第二距离数据是否满足预设的距离条件。
其中,判断第二距离数据,即两个标记点的实际空间距离是否在预设的距离范围内,若是则进入步骤S334,若否则进入步骤S333。预设的距离为获取标记点的一个标准,当机器人200获取的标记点的实际空间距离在预设的距离范围外时,通过这些标记点计算的标记点与相机的第一距离数据的准确度低。因此,机器人200需要获取实际空间距离在预设的距离范围内的两个或多个标记点,以此提高计算的准确性。
S333:若否,则重新识别标记点。
其中,若否,则机器人200舍弃这两个标记点,重新识别其他标记点,并通过步骤S331和步骤S332重新进行判断,直至获取的两个标记点的空间距离能够满足预设的距离条件。
S334:若是,则执行根据相机的参数和第一像素坐标数据得到标记点与相机的第一距离数据的步骤。
在实施例二的定位方法基础上,本实施例对获取的标记点进行条件判断,保证标记点的实际空间距离在预设的距离范围内,提供机器人位置计算的准确度。
本申请还提供了一种机器人,具体请参见图7,图7是本申请机器人一实施例的结构示意图。
机器人600为上述定位方法实施例中所揭示的机器人,机器人600至少包括相机61、存储器62和处理器63。其中,处理器63分别与相机61和存储器62连接。
相机61用于拍摄预设区域的照片,其中,预设区域包括标记图案区域;
处理器63用于识别标记图案区域的至少两个标记点,得到标记点的第一坐标数据;处理器63还用于根据相机的参数和标记点的第一坐标数据计算得到机器人在世界坐标下的第二坐标数据;处理器63进一步用于根据标记点的第一坐标数据和机器人在世界坐标下的第二坐标数据计算得到机器人在世界坐标下的角度数据;
存储器62用于存储处理器63和相机61的数据,包括相机参数、照片数据、标记点的第一坐标数据、机器人600在世界坐标下的第二坐标数据和机器人600在世界坐标下的角度数据等等。
在本实施例中,处理器63还可以称为CPU(Central Processing Unit,中央处理单元)。处理器63可能是一种集成电路芯片,具有信号的处理能力。处理器63还可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器63也可以是任何常规的处理器等。
本申请还提供了一种计算机存储介质,如图8所示,计算机存储介质700用于存储计算机程序71,计算机程序能够被执行以实现上述实施例中定位方法的步骤。
本申请定位方法实施例中所涉及到的方法,在实现时以软件功能单元的形式存在并作为独立的产品销售或使用时,可以存储在装置700中,例如一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施方式所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本申请的实施方式,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (7)
1.一种定位方法,其特征在于,所述定位方法应用于机器人,所述机器人包括相机;所述定位方法包括:
拍摄预设区域的照片,其中,所述预设区域包括标记图案区域;
识别所述标记图案区域的至少两个标记点,得到所述标记点的第一坐标数据;
根据所述相机的参数和所述标记点的第一坐标数据计算得到所述机器人在世界坐标下的第二坐标数据;
根据所述标记点的第一坐标数据和所述机器人在世界坐标下的第二坐标数据计算得到所述机器人在世界坐标下的角度数据;
所述第一坐标数据包括第一像素坐标数据和所述标记点在世界坐标下的第一物理坐标数据;
所述根据所述相机的参数和所述标记点的第一坐标数据计算得到所述机器人在世界坐标下的第二坐标数据,进一步包括:
根据所述相机的参数和所述第一像素坐标数据得到所述标记点与所述相机的第一距离数据;
根据所述第一距离数据和所述标记点在世界坐标下的第一物理坐标数据计算得到所述机器人在世界坐标下的第二坐标数据;
根据所述标记点的第一坐标数据和所述机器人在世界坐标下的第二坐标数据计算得到所述机器人在世界坐标下的角度数据,进一步包括:
根据所述标记点在世界坐标下的第一物理坐标数据和所述机器人在世界坐标下的第二坐标数据计算得到所述机器人在世界坐标下的角度数据;
所述标记图案区域包括标记点和编码图案;
所述识别所述标记图案区域的至少两个标记点,得到所述标记点的第一坐标数据,进一步包括:
识别所述标记图案区域的至少两个标记点,得到所述标记点的第一像素坐标数据;
识别所述标记图案区域的至少两个标记点之间的编码图案,以得到所述编码图案对应的编码数据;
从预存的记录中查找得到所述编码数据对应的与所述编码图案相邻的所述标记点在世界坐标下的第一物理坐标数据;
所述识别所述标记图案区域的至少两个标记点之间的编码图案,以得到所述编码图案对应的编码数据,进一步包括:
识别所述标记图案区域的至少两个标记点之间的编码块的颜色、数量和/或排列顺序,以得到所述编码图案对应的编码数据;
其中,所述编码图案至少包括两个编码块;
其中,机器人放置在标记工具和标记图案区域,所述标记工具为具有棋盘格的标记板或者标记纸;
其中,所述标记图案区域的内轮廓中,设置有棋盘,所述机器人被放置在所述棋盘的中心交点或任意一个交点上,所述标记图案区域的外轮廓中,设置至少三个标记点,每两个标记点之间设置有编码块,所述编码块中包括至少一个第一编码块和至少两个第二编码块,并且所述第二编码块的数量大于所述第一编码块的数量。
2.根据权利要求1所述的定位方法,其特征在于,拍摄预设区域的照片之前,还包括:
标定所述相机的参数,其中,所述相机的参数至少包括焦距、分辨率和放大倍数。
3.根据权利要求2所述的定位方法,其特征在于,拍摄预设区域的照片,进一步包括:
所述相机按相对于所述机器人底部固定的预设角度拍摄预设区域的照片,其中,所述预设角度小于90°。
4.根据权利要求1所述的定位方法,其特征在于,识别所述标记图案区域的至少两个标记点,得到所述标记点的第一像素坐标数据之后,还包括:
根据至少两个所述标记点的第一像素坐标数据计算得到所述标记点之间的第二距离数据;
判断第二距离数据是否满足预设的距离条件;
若否,则重新识别所述标记点;
若是,则执行所述根据所述相机的参数和所述第一像素坐标数据得到所述标记点与所述相机的第一距离数据的步骤。
5.根据权利要求4所述的定位方法,其特征在于,根据所述第一距离数据和所述标记点在世界坐标下的第一物理坐标数据计算得到所述机器人在世界坐标下的第二坐标数据,进一步包括:
根据所述第一距离数据和所述标记点在世界坐标下的第一物理坐标数据通过三边定位法计算得到所述机器人在世界坐标下的第二坐标数据。
6.一种机器人,其特征在于,所述机器人包括相机、存储器和分别与所述相机、所述存储器连接的处理器;
所述相机用于拍摄预设区域的照片,其中,所述预设区域包括标记图案区域;
所述处理器用于识别所述标记图案区域的至少两个标记点,得到所述标记点的第一坐标数据;所述处理器还用于根据所述相机的参数和所述标记点的第一坐标数据计算得到所述机器人在世界坐标下的第二坐标数据;所述处理器进一步用于根据所述标记点的第一坐标数据和所述机器人在世界坐标下的第二坐标数据计算得到所述机器人在世界坐标下的角度数据;
其中,所述第一坐标数据包括第一像素坐标数据和所述标记点在世界坐标下的第一物理坐标数据;
所述处理器还用于根据所述相机的参数和所述第一像素坐标数据得到所述标记点与所述相机的第一距离数据;根据所述第一距离数据和所述标记点在世界坐标下的第一物理坐标数据计算得到所述机器人在世界坐标下的第二坐标数据;根据所述标记点的第一坐标数据和所述机器人在世界坐标下的第二坐标数据计算得到所述机器人在世界坐标下的角度数据,进一步包括:根据所述标记点在世界坐标下的第一物理坐标数据和所述机器人在世界坐标下的第二坐标数据计算得到所述机器人在世界坐标下的角度数据;
所述处理器还用于识别所述标记图案区域的至少两个标记点,得到所述标记点的第一像素坐标数据;识别所述标记图案区域的至少两个标记点之间的编码图案,以得到所述编码图案对应的编码数据;从预存的记录中查找得到所述编码数据对应的与所述编码图案相邻的所述标记点在世界坐标下的第一物理坐标数据,其中,所述标记图案区域包括标记点和编码图案;
所述处理器还用于识别所述标记图案区域的至少两个标记点之间的编码块的颜色、数量和/或排列顺序,以得到所述编码图案对应的编码数据;
其中,所述编码图案至少包括两个编码块;
其中,机器人放置在标记工具和标记图案区域,所述标记工具为具有棋盘格的标记板或标记纸;
其中,所述标记图案区域的内轮廓中,设置有棋盘,所述机器人被放置在所述棋盘的中心交点或任意一个交点上,所述标记图案区域的外轮廓中,设置至少三个标记点,每两个标记点之间设置有编码块,所述编码块中包括至少一个第一编码块和至少两个第二编码块,并且所述第二编码块的数量大于所述第一编码块的数量;
所述存储器用于存储所述处理器的数据。
7.一种计算机存储介质,其特征在于,所述计算机存储介质用于存储计算机程序,所述计算机程序能够被执行以实现权利要求1~5中任一项所述定位方法的步骤。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811125578.4A CN110956660B (zh) | 2018-09-26 | 2018-09-26 | 定位方法、机器人以及计算机存储介质 |
US16/396,690 US11204249B2 (en) | 2018-09-26 | 2019-04-28 | Positioning method and robot with the same |
JP2019099027A JP6573419B1 (ja) | 2018-09-26 | 2019-05-28 | 位置決め方法、ロボット及びコンピューター記憶媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811125578.4A CN110956660B (zh) | 2018-09-26 | 2018-09-26 | 定位方法、机器人以及计算机存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110956660A CN110956660A (zh) | 2020-04-03 |
CN110956660B true CN110956660B (zh) | 2023-10-10 |
Family
ID=67909557
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811125578.4A Active CN110956660B (zh) | 2018-09-26 | 2018-09-26 | 定位方法、机器人以及计算机存储介质 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11204249B2 (zh) |
JP (1) | JP6573419B1 (zh) |
CN (1) | CN110956660B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110969159B (zh) * | 2019-11-08 | 2023-08-08 | 北京字节跳动网络技术有限公司 | 图像识别方法、装置及电子设备 |
CN112179357B (zh) * | 2020-09-25 | 2022-04-01 | 中国人民解放军国防科技大学 | 基于单目相机的平面运动目标视觉导航方法及系统 |
CN112833883B (zh) * | 2020-12-31 | 2023-03-10 | 杭州普锐视科技有限公司 | 一种基于多相机的室内移动机器人定位方法 |
CN112767487B (zh) * | 2021-01-27 | 2024-04-05 | 京东科技信息技术有限公司 | 机器人的定位方法、装置以及系统 |
CN112907644B (zh) * | 2021-02-03 | 2023-02-03 | 中国人民解放军战略支援部队信息工程大学 | 一种面向机器地图的视觉定位方法 |
CN112991296A (zh) * | 2021-03-12 | 2021-06-18 | 深圳中科飞测科技股份有限公司 | 定位方法、检测系统及计算机可读存储介质 |
CN113208731B (zh) * | 2021-04-23 | 2023-02-10 | 上海大学 | 基于双目视觉系统的手术穿刺机器人手眼标定方法 |
CN113837999A (zh) * | 2021-08-20 | 2021-12-24 | 北京工业大学 | 一种金属自动化加工设备中光学标定点设计方法 |
CN113808195B (zh) * | 2021-08-26 | 2024-04-12 | 领翌技术(横琴)有限公司 | 视觉定位方法、装置及存储介质 |
CN114252012B (zh) * | 2021-12-22 | 2024-01-16 | 上海原能细胞生物低温设备有限公司 | 一种冻存盒孔位的获取方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008014940A (ja) * | 2006-06-08 | 2008-01-24 | Fast:Kk | 平面状被撮像物のカメラ計測のためのカメラキャリブレーション方法、および応用計測装置 |
JP2009181340A (ja) * | 2008-01-30 | 2009-08-13 | Fuji Xerox Co Ltd | 位置検出装置及びプログラム |
CN104680528A (zh) * | 2015-02-11 | 2015-06-03 | 广州霞光技研有限公司 | 一种基于双目立体视觉的排爆机器人空间定位方法 |
CN105066884A (zh) * | 2015-09-09 | 2015-11-18 | 大族激光科技产业集团股份有限公司 | 一种机器人末端定位偏差校正方法及系统 |
CN205909828U (zh) * | 2016-08-06 | 2017-01-25 | 中科院合肥技术创新工程院 | 一种用于室内移动机器人定位的红外路标 |
CN106780623A (zh) * | 2016-12-14 | 2017-05-31 | 厦门理工学院 | 一种机器人视觉系统快速标定方法 |
WO2018046617A1 (en) * | 2016-09-07 | 2018-03-15 | Starship Technologies Oü | Method and system for calibrating multiple cameras |
CN108198216A (zh) * | 2017-12-12 | 2018-06-22 | 深圳市神州云海智能科技有限公司 | 一种机器人及其基于标识物的位姿估计方法和装置 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3626400B2 (ja) * | 2000-08-31 | 2005-03-09 | 株式会社東芝 | ターゲットマーカを用いた対象物の位置計測方法及びロボットシステム |
JP4282216B2 (ja) * | 2000-09-19 | 2009-06-17 | オリンパス株式会社 | 3次元位置姿勢センシング装置 |
US7135992B2 (en) * | 2002-12-17 | 2006-11-14 | Evolution Robotics, Inc. | Systems and methods for using multiple hypotheses in a visual simultaneous localization and mapping system |
US20040158346A1 (en) * | 2002-12-28 | 2004-08-12 | Dupuis Tina L. | System and method of generating instructional information from graphic images and fonts for use in producing a craft project |
KR100506533B1 (ko) * | 2003-01-11 | 2005-08-05 | 삼성전자주식회사 | 이동로봇 및 그에 따른 자율주행 시스템 및 방법 |
JP4300199B2 (ja) * | 2005-06-13 | 2009-07-22 | 株式会社東芝 | 移動ロボット、移動ロボットの位置姿勢算出方法、移動ロボットの自律走行システム |
JP2007319938A (ja) * | 2006-05-30 | 2007-12-13 | Toyota Motor Corp | ロボット装置及び物体の三次元形状の取得方法 |
JP5403861B2 (ja) * | 2006-11-06 | 2014-01-29 | キヤノン株式会社 | 情報処理装置、情報処理方法 |
KR100926760B1 (ko) * | 2007-12-17 | 2009-11-16 | 삼성전자주식회사 | 이동 로봇의 위치 인식 및 지도 작성 방법 |
TWI384407B (zh) * | 2008-02-29 | 2013-02-01 | Ind Tech Res Inst | 利用盲文編碼圖案之區域識別系統 |
KR101538775B1 (ko) * | 2008-09-12 | 2015-07-30 | 삼성전자 주식회사 | 전방 영상을 이용한 위치 인식 장치 및 방법 |
WO2010041254A2 (en) * | 2008-10-06 | 2010-04-15 | Mantisvision Ltd. | Method and system for providing three-dimensional and range inter-planar estimation |
US9250073B2 (en) * | 2011-09-02 | 2016-02-02 | Trimble Navigation Limited | Method and system for position rail trolley using RFID devices |
US9420275B2 (en) * | 2012-11-01 | 2016-08-16 | Hexagon Technology Center Gmbh | Visual positioning system that utilizes images of a working environment to determine position |
US11061338B2 (en) * | 2014-04-17 | 2021-07-13 | Nikon Corporation | High-resolution position encoder with image sensor and encoded target pattern |
WO2016024555A1 (ja) * | 2014-08-12 | 2016-02-18 | 国立研究開発法人産業技術総合研究所 | マーカとマーカを用いた姿勢推定方法 |
US10415966B2 (en) * | 2015-04-09 | 2019-09-17 | Nec Corporation | Map generating device, map generating method, and program recording medium |
CN105245765A (zh) * | 2015-07-20 | 2016-01-13 | 联想(北京)有限公司 | 图像传感阵列及其排布方法、图像采集部件、电子设备 |
-
2018
- 2018-09-26 CN CN201811125578.4A patent/CN110956660B/zh active Active
-
2019
- 2019-04-28 US US16/396,690 patent/US11204249B2/en active Active
- 2019-05-28 JP JP2019099027A patent/JP6573419B1/ja active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008014940A (ja) * | 2006-06-08 | 2008-01-24 | Fast:Kk | 平面状被撮像物のカメラ計測のためのカメラキャリブレーション方法、および応用計測装置 |
JP2009181340A (ja) * | 2008-01-30 | 2009-08-13 | Fuji Xerox Co Ltd | 位置検出装置及びプログラム |
CN104680528A (zh) * | 2015-02-11 | 2015-06-03 | 广州霞光技研有限公司 | 一种基于双目立体视觉的排爆机器人空间定位方法 |
CN105066884A (zh) * | 2015-09-09 | 2015-11-18 | 大族激光科技产业集团股份有限公司 | 一种机器人末端定位偏差校正方法及系统 |
CN205909828U (zh) * | 2016-08-06 | 2017-01-25 | 中科院合肥技术创新工程院 | 一种用于室内移动机器人定位的红外路标 |
WO2018046617A1 (en) * | 2016-09-07 | 2018-03-15 | Starship Technologies Oü | Method and system for calibrating multiple cameras |
CN106780623A (zh) * | 2016-12-14 | 2017-05-31 | 厦门理工学院 | 一种机器人视觉系统快速标定方法 |
CN108198216A (zh) * | 2017-12-12 | 2018-06-22 | 深圳市神州云海智能科技有限公司 | 一种机器人及其基于标识物的位姿估计方法和装置 |
Non-Patent Citations (2)
Title |
---|
Hongbo Zhao,Sentang Wu.A Method to Estimate Relative Position and Attitude of Cooperative UAVs Based on Monocular Vision.2018 IEEE CSAA Guidance,Navigation and Control Conference.全文. * |
基于人工路标的鲁棒的室内机器人定位方法;朱齐丹,等;计算机应用;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110956660A (zh) | 2020-04-03 |
JP6573419B1 (ja) | 2019-09-11 |
US20200096343A1 (en) | 2020-03-26 |
US11204249B2 (en) | 2021-12-21 |
JP2020053008A (ja) | 2020-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110956660B (zh) | 定位方法、机器人以及计算机存储介质 | |
CN109035320B (zh) | 基于单目视觉的深度提取方法 | |
CN110276808B (zh) | 一种单相机结合二维码测量玻璃板不平度的方法 | |
CN106651752B (zh) | 三维点云数据配准方法及拼接方法 | |
KR101666959B1 (ko) | 카메라로부터 획득한 영상에 대한 자동보정기능을 구비한 영상처리장치 및 그 방법 | |
CN108627092A (zh) | 一种包裹体积的测量方法、系统、储存介质及移动终端 | |
CN110068270A (zh) | 一种基于多线结构光图像识别的单目视觉箱体体积测量方法 | |
CN110044374B (zh) | 一种基于图像特征的单目视觉测量里程的方法及里程计 | |
CN112132907B (zh) | 一种相机标定方法、装置、电子设备及存储介质 | |
JP2011129082A (ja) | 3次元物体認識装置及び3次元物体認識方法 | |
CN107084680A (zh) | 一种基于机器单目视觉的目标深度测量方法 | |
CN109559349A (zh) | 一种用于标定的方法和装置 | |
US20110235898A1 (en) | Matching process in three-dimensional registration and computer-readable storage medium storing a program thereof | |
CN112270719B (zh) | 相机标定方法、装置及系统 | |
CN109255818B (zh) | 一种新型标靶及其亚像素级角点的提取方法 | |
CN111862180A (zh) | 一种相机组位姿获取方法、装置、存储介质及电子设备 | |
CN110807807A (zh) | 一种单目视觉的目标定位的图案、方法、装置及设备 | |
CN113505626A (zh) | 一种快速三维指纹采集方法与系统 | |
CN112907746A (zh) | 电子地图的生成方法、装置、电子设备及存储介质 | |
CN111383264A (zh) | 一种定位方法、装置、终端及计算机存储介质 | |
CN112446926A (zh) | 一种激光雷达与多目鱼眼相机的相对位置标定方法及装置 | |
KR101673144B1 (ko) | 부분 선형화 기반의 3차원 영상 정합 방법 | |
JP6198104B2 (ja) | 3次元物体認識装置及び3次元物体認識方法 | |
CN113506347B (zh) | 一种基于单幅照片的相机内参处理方法及系统 | |
CN111179347B (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 |