KR101038702B1 - Method for detecting position of robot - Google Patents

Method for detecting position of robot Download PDF

Info

Publication number
KR101038702B1
KR101038702B1 KR1020080104574A KR20080104574A KR101038702B1 KR 101038702 B1 KR101038702 B1 KR 101038702B1 KR 1020080104574 A KR1020080104574 A KR 1020080104574A KR 20080104574 A KR20080104574 A KR 20080104574A KR 101038702 B1 KR101038702 B1 KR 101038702B1
Authority
KR
South Korea
Prior art keywords
feature point
robot
database
camera
information
Prior art date
Application number
KR1020080104574A
Other languages
Korean (ko)
Other versions
KR20100045585A (en
Inventor
윤준영
전세웅
김영욱
이종배
Original Assignee
전자부품연구원
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 전자부품연구원 filed Critical 전자부품연구원
Priority to KR1020080104574A priority Critical patent/KR101038702B1/en
Publication of KR20100045585A publication Critical patent/KR20100045585A/en
Application granted granted Critical
Publication of KR101038702B1 publication Critical patent/KR101038702B1/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/088Controls for manipulators by means of sensing devices, e.g. viewing or touching devices with position, velocity or acceleration sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • B25J19/021Optical sensing devices
    • B25J19/023Optical sensing devices including video camera means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1658Programme controls characterised by programming, planning systems for manipulators characterised by programming language
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme 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

Abstract

본 발명은 로봇이 이동하는 도중에 장애물 등과의 충돌 등으로 인하여 로봇의 위치를 잃어버리는 키드냅핑(kidnapping)이 발생할 경우에 로봇의 위치를 간단하고 정확하게 검출할 수 있는 로봇의 위치 검출방법에 관한 것으로서 제어부가 로봇을 이동시키면서 카메라가 촬영하는 현재 영상을 입력하여 특징점을 추출하고, 추출한 특징점과 카메라가 이전에 촬영한 영상에서 추출한 특징점을 비교하여 매칭되는 특징점의 존재 유무를 판단하며, 판단 결과 매칭되는 특징점이 존재할 경우에 매칭되지 않은 특징점을 모두 추출하여 제 1 데이터베이스에 저장하고, 전체 특징점을 추출하여 카메라가 특징점을 촬영한 각도를 제 2 데이터베이스에 저장하며, 판단 결과 매칭되는 특징점이 존재하지 않을 경우에 키드냅핑이 발생한 것으로서 제어부는 현재 영상에서 추출한 특징점을 선택하고, 선택한 특징점의 정보와 매칭되는 특징점의 정보를 제 2 데이터베이스에서 검색하며, 검색한 매칭되는 특징점 정보의 각도와 카메라가 해당 특징점을 촬영한 거리를 이용하여 로봇의 현재위치를 계산한다.The present invention relates to a method for detecting a position of a robot that can detect the position of the robot simply and accurately when kidnapping occurs in which the position of the robot is lost due to a collision with an obstacle or the like while the robot is moving. Inputs the current image captured by the camera while moving the robot, extracts the feature point, compares the extracted feature point with the feature point extracted from the image previously captured by the camera, and determines whether there is a matched feature point. In this case, all unmatched feature points are extracted and stored in the first database, the entire feature points are extracted, and the angle at which the camera photographs the feature points is stored in the second database. Kid snapping has occurred and the controller The extracted feature point is selected, the information of the feature point matching the information of the selected feature point is searched in the second database, and the current position of the robot is calculated using the angle of the searched matched feature information and the distance at which the camera captures the feature point. do.

로봇, 위치검출, 키드냅핑, 장애물 충돌, 특징점, SIFT, SLAM. 카메라 Robot, Position Detection, Kid Snapping, Obstacle Collision, Feature Point, SIFT, SLAM. camera

Description

로봇의 위치 검출방법{Method for detecting position of robot}Method for detecting position of robot}

본 발명은 로봇의 위치 검출방법에 관한 것이다.The present invention relates to a method for detecting the position of a robot.

보다 상세하게는 SIFT(Scale Invariant Feature Transform) 알고리즘으로 특징점(feature)을 추출하고, 추출한 특징점을 이용하여 위치를 인식하는 동시 위치인식 및 지도형성(SLAM ; Simultaneous Localization And Mapping) 알고리즘을 탑재한 로봇이 이동하는 도중에 장애물 등과의 충돌 등으로 튕겨져 액츄에이터의 구동과는 상관없는 위치로 이동하면서 현재위치를 잃어버리게 되는 키드냅핑(kidnapping)이 발생하였을 경우에 간단히 로봇의 위치를 정확하게 검출하는 로봇의 위치 검출방법에 관한 것이다.More specifically, a robot equipped with a Simultaneous Localization And Mapping (SLAM) algorithm that extracts a feature point using a scale invariant feature transform (SIFT) algorithm and recognizes a location using the extracted feature point A robot position detection method that simply detects the position of the robot in the event of a kidnapping that is thrown by a collision with an obstacle or the like while moving, and loses its current position while moving to a position irrelevant to the driving of the actuator. It is about.

이동하는 로봇이 주변 환경에 대한 아무런 정보도 없이 자신의 위치를 인식하고 환경에 대한 정보를 생성하기 위해서는 위치인식(localization)과 매핑과정이 동시에 유기적으로 수행되어야 한다. 이를 로봇의 동시 위치인식 및 지도형성(SLAM, Simultaneous Localization And Mapping)이라고 한다.In order for a moving robot to recognize its location and generate information about the environment without any information about the surrounding environment, localization and mapping processes must be performed at the same time. This is called Simultaneous Localization And Mapping (SLAM).

로봇이 이동하는 도중에 장애물과의 충돌 등이 발생하고, 이로 인하여 로봇이 튕겨져 액츄에이터의 구동과는 관계없는 임의의 위치로 이동하였을 경우에 로봇의 위치를 정확히 알 수 없게 된다.When the robot moves, collisions with obstacles, etc. occur, and thus the robot's position cannot be accurately known when the robot is bounced and moved to an arbitrary position irrelevant to the driving of the actuator.

그러므로 키드냅핑이 발생하였을 경우에 로봇의 위치를 검출할 수 있는 방법이 요구되고 있다.Therefore, there is a demand for a method capable of detecting the position of the robot in the case where kidnapping occurs.

본 발명이 해결하고자 하는 과제는 로봇이 이동하는 도중에 장애물 등과의 충돌로 튕겨져 액츄에이터의 구동과는 관계없는 위치로 이동하였을 경우에 로봇의 현재위치를 간단히 검출할 수 있는 로봇의 위치 검출방법을 제공한다.The problem to be solved by the present invention is to provide a method for detecting the position of the robot that can easily detect the current position of the robot when the robot is moved to a position irrelevant to the driving of the actuator due to collision with obstacles and the like during the movement. .

본 발명이 이루고자 하는 기술적 과제들은 상기에서 언급한 기술적 과제들로 제한되지 않고, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 명확하게 이해될 수 있을 것이다.Technical problems to be achieved by the present invention are not limited to the above-mentioned technical problems, and other technical problems not mentioned above may be clearly understood by those skilled in the art to which the present invention pertains. There will be.

본 발명의 로봇의 위치 검출방법에 따르면, 제어부가 로봇을 이동시키면서 카메라의 촬영 영상을 입력하는 단계와, 상기 카메라가 촬영한 현재 영상에서 특징점을 추출하고, 추출한 특징점과 상기 카메라가 이전에 촬영한 영상에서 추출한 특 징점을 비교하여 매칭되는 특징점의 존재 유무를 판단하는 단계와, 상기 판단 결과 매칭되는 특징점이 존재할 경우에 매칭되지 않은 특징점을 모두 추출하여 제 1 데이터베이스에 저장하고, 전체 특징점을 추출하여 상기 카메라가 특징점을 촬영한 각도를 제 2 데이터베이스에 저장하는 단계와, 상기 판단 결과 매칭되는 특징점이 존재하지 않을 경우에 상기 현재 영상에서 추출한 특징점을 선택하고, 선택한 특징점의 정보와 매칭되는 특징점의 정보를 상기 제 2 데이터베이스에서 검색하는 단계와, 상기 검색한 매칭되는 특징점 정보의 각도와 상기 카메라가 해당 특징점을 촬영한 거리를 이용하여 로봇의 현재위치를 계산하는 단계를 포함하여 구성됨을 특징으로 한다.According to the method for detecting the position of the robot of the present invention, the control unit inputs a photographed image of the camera while moving the robot, extracts a feature point from the current image photographed by the camera, extracts the extracted feature point and the camera previously photographed. Comparing the feature points extracted from the image to determine whether there is a matched feature point; if the matched feature point exists, extracting all of the feature points that are not matched, storing the extracted feature points in the first database, and extracting the entire feature point. Storing the angle at which the camera photographs the feature point in a second database; and selecting a feature point extracted from the current image when there is no matching feature point as a result of the determination, and information of the feature point matching the information of the selected feature point. Searching in the second database; And calculating a current position of the robot by using the angle of the matching feature point information and the distance at which the camera photographs the feature point.

상기 특징점 추출은 SIFT(Scale Invariant Feature Transform) 알고리즘을 이용하여 추출하는 것을 특징으로 한다.The feature point extraction is characterized in that the extraction using the Scale Invariant Feature Transform (SIFT) algorithm.

상기 카메라가 특징점을 촬영한 각도를 제 2 데이터베이스에 저장하는 것은 상기 카메라가 촬영한 현재 영상에서 추출한 특징점과 매칭되는 특징점의 정보가 상기 제 2 데이터베이스에 저장되어 있는지의 여부를 판단하는 단계와, 상기 판단 결과 매칭되는 특징점의 정보가 상기 제 2 데이터베이스에 저장되어 있지 않을 경우에 해당 특징점의 정보를 기준각도로 상기 제 2 데이터베이스에 저장하는 단계와, 상기 판단 결과 매칭되는 특징점의 정보가 상기 제 2 데이터베이스에 저장되어 있을 경우에 그 저장된 특징점 정보의 기준각도를 기준으로 하여 상기 카메라가 해당 특징점을 촬영한 각도로 해당 특징점의 정보를 저장하는 단계를 포함하여 이루어지는 것을 특징으로 한다.The storing of the angle at which the camera captures the feature point in the second database may include determining whether information on a feature point that matches the feature point extracted from the current image photographed by the camera is stored in the second database; If the information on the matching feature points is not stored in the second database as a result of the determination, storing the information on the corresponding feature points in the second database at a reference angle; And storing the information of the feature point at an angle at which the camera photographs the feature point, based on the reference angle of the stored feature point information when stored in the.

본 발명의 로봇의 위치 검출방법에 따르면, 카메라가 촬영하는 영상에서 추출한 특징점의 정보를, 카메라가 해당 특징점이 촬영한 각도로 데이터베이스에 미리 저장하고, 로봇이 소정의 장애물과 충돌하면서 튕겨지는 등의 키드냅핑이 발생하여 로봇의 위치를 알 수 없을 경우에 카메라가 촬영하는 현재 영상에서 특징점을 추출하고, 그 추출한 특징점의 정보와 매칭되는 특징점 정보를 데이터베이스에서 검출하고, 검출한 특징점 정보의 각도를 이용하여 로봇의 현재위치를 정확하게 검출한다.According to the method for detecting the position of the robot of the present invention, the information of the feature point extracted from the image captured by the camera is stored in advance in the database at the angle at which the feature point is captured, and the robot is bounced while colliding with a predetermined obstacle. If kidnapping occurs and the location of the robot is unknown, feature points are extracted from the current image taken by the camera, feature point information matching the extracted feature point information is detected in the database, and the angle of the detected feature point information is used. To accurately detect the current position of the robot.

이하의 상세한 설명은 예시에 지나지 않으며, 본 발명의 실시 예를 도시한 것에 불과하다. 또한 본 발명의 원리와 개념은 가장 유용하고, 쉽게 설명할 목적으로 제공된다.The following detailed description is only illustrative, and merely illustrates embodiments of the present invention. In addition, the principles and concepts of the present invention are provided for the purpose of explanation and most useful.

따라서, 본 발명의 기본 이해를 위한 필요 이상의 자세한 구조를 제공하고자 하지 않았음은 물론 통상의 지식을 가진 자가 본 발명의 실체에서 실시될 수 있는 여러 가지의 형태들을 도면을 통해 예시한다.Accordingly, various forms that can be implemented by those of ordinary skill in the art, as well as not intended to provide a detailed structure beyond the basic understanding of the present invention through the drawings.

도 1은 본 발명의 위치 검출방법이 적용되는 로봇의 제어장치의 구성을 보인 블록도이다. 여기서, 부호 100은 명령 입력부이다. 상기 명령 입력부(100)는 사용 자의 조작에 따라 로봇의 이동 명령을 비롯한 각종 명령이 입력된다.1 is a block diagram showing the configuration of a control device of a robot to which the position detection method of the present invention is applied. Here, reference numeral 100 denotes a command input unit. The command input unit 100 is a variety of commands, including the movement command of the robot is input according to the user's operation.

부호 110은 액츄에이터 구동부이다. 상기 액츄에이터 구동부(110)는 예를 들면, 전동기 등을 구동시켜 상기 로봇을 이동시키고, 소정의 작업을 수행할 수 있도록 한다.Reference numeral 110 is an actuator driver. The actuator driving unit 110 may, for example, drive an electric motor to move the robot and perform a predetermined task.

부호 120은 이동 검출부이다. 상기 이동 검출부(120)는 액츄에이터가 구동될 경우에 그 액츄에이터의 구동 값으로 로봇의 이동을 검출한다.Reference numeral 120 is a movement detection unit. When the actuator is driven, the movement detector 120 detects the movement of the robot by the driving value of the actuator.

부호 130은 카메라이다. 상기 카메라(130)는 이동하는 로봇에 설치되어 로봇 주변의 피사체들을 촬영한다.Reference numeral 130 is a camera. The camera 130 is installed in a moving robot to photograph subjects around the robot.

부호 140은 제 1 데이터 베이스이다. 상기 제 1 데이터베이스(140)에는 상기 카메라(130)가 촬영한 영상에서 추출되는 특징점들을 저장한다.Reference numeral 140 is a first database. The first database 140 stores feature points extracted from an image captured by the camera 130.

부호 150은 제 2 데이터베이스이다. 상기 제 2 데이터베이스(150)에는 상기 카메라(130)가 촬영한 영상에서 추출한 특징점들의 촬영 각도에 따른 특징점 정보가 저장된다.Reference numeral 150 is a second database. The second database 150 stores feature point information according to photographing angles of feature points extracted from an image photographed by the camera 130.

부호 160은 제어부이다. 상기 제어부(160)는 이동명령에 따라 상기 액츄에이터 구동부(110)를 제어하여 로봇을 소정의 목적지로 이동시키고, 이동상태 검출부(120)의 출력신호로 로봇의 이동을 검출한다. 또한 상기 제어부(160)는 상기 카메라(130)의 촬영 영상을 입력하여 특징점들을 추출하고, 추출한 특징점들을 상기 제 1 데이터베이스(140)에 저장함과 아울러 추출한 특징점들의 정보를 특징점들의 촬영 각도를 기준으로 하여 상기 제 2 데이터베이스(150)에 저장하고, 키드냅핑이 발생하였을 경우에 상기 제 2 데이터베이스(150)에 저장된 특징점들의 정보를 이용 하여 로봇의 현재위치를 검출하는 동작을 수행한다.Reference numeral 160 is a control unit. The controller 160 controls the actuator driver 110 according to a movement command to move the robot to a predetermined destination, and detects the movement of the robot by the output signal of the movement state detector 120. In addition, the controller 160 inputs a captured image of the camera 130 to extract feature points, store the extracted feature points in the first database 140, and extract information on the extracted feature points based on the photographing angles of the feature points. It stores in the second database 150, and when kidnapping occurs, it detects the current position of the robot by using the information of the feature points stored in the second database (150).

이러한 구성의 제어장치에 적용되는 본 발명의 위치 검출방법은 도 2에 도시된 바와 같이 먼저 제어부(160)는 로봇의 이동명령이 발생되는지의 여부를 판단한다(S200). 여기서, 상기 로봇의 이동명령은 사용자가 명령 입력부(100)를 조작하여 발생할 수 있다. 또한 상기 로봇의 이동명령은 로봇이 특정 위치에서 수행하는 소정의 작업을 완료하고, 목적지로 하는 소정의 위치로 이동할 경우 등 여러 가지의 경우에 따라서 발생될 수 있다.In the position detection method of the present invention applied to the control device having such a configuration, as shown in FIG. 2, the controller 160 first determines whether a movement command of the robot is generated (S200). Here, the movement command of the robot may be generated by the user operating the command input unit 100. In addition, the movement command of the robot may be generated according to various cases, such as when the robot completes a predetermined task performed at a specific position and moves to a predetermined position as a destination.

상기 로봇의 이동명령이 발생되면, 제어부(160)는 로봇의 현재위치를 판단하고(S202), 액츄에이터 구동부(110)를 통해 로봇을 이동시키는 액츄에이터를 구동시켜 로봇이 목표위치로 이동할 수 있도록 한다(S204).When the movement command of the robot is generated, the controller 160 determines the current position of the robot (S202) and drives an actuator for moving the robot through the actuator driver 110 to allow the robot to move to a target position ( S204).

그리고 상기 제어부(160)는 이동상태 검출부(120)의 출력신호로 액츄에이터의 구동상태를 판단하고, 판단한 액츄에이터의 구동상태로 로봇이 이동한 위치를 판단한다.The controller 160 determines the driving state of the actuator based on the output signal of the moving state detecting unit 120, and determines the position where the robot moves to the determined driving state of the actuator.

이와 같은 상태에서 카메라(130)가 소정의 피사체를 촬영하고, 촬영한 영상을 제어부(160)가 입력한다. 상기 제어부(160)는 상기 입력한 카메라(130)의 촬영영상에서 예를 들면, SIFT(Scale Invariant Feature Transform) 알고리즘을 이용하여 특징점을 추출한다(S208).In this state, the camera 130 photographs a predetermined subject, and the controller 160 inputs the photographed image. The controller 160 extracts feature points from the input image of the camera 130 using, for example, a scale invariant feature transform (SIFT) algorithm (S208).

상기 특징점이 추출되면, 상기 제어부(160)는 상기 카메라(130)가 이전에 촬영한 영상에서 추출한 특징점과 비교하고(S210), 비교 결과 매칭되는 특징점이 존 재하는지의 여부를 판단한다(S212). 즉, 상기 제어부(160)는 카메라(130)가 현재 촬영한 영상과 이전에 촬영한 영상에서 동일한 특징점이 존재하는지의 여부를 판단한다.When the feature point is extracted, the controller 160 compares the feature point extracted from the image previously photographed by the camera 130 (S210), and determines whether there is a matching feature point as a result of the comparison (S212). . That is, the controller 160 determines whether the same feature point exists in the image currently captured by the camera 130 and the previously captured image.

상기 판단 결과 상호간에 매칭되는 특징점이 존재할 경우에는 로봇이 상기 액츄에이터의 구동에 따라 정확하게 이동하고 있는 것으로서 상기 제어부(160)는 현재 영상에서 추출한 특정점들 중에서 이전 영상에서 추출한 특징점과 매칭되지 않은 새로운 특징점들을 추출하고(S214), 추출한 특징점들을 제 1 데이터베이스(140)에 저장한다(S216).If the feature points match each other as a result of the determination, the robot is moving correctly according to the driving of the actuator, and the controller 160 has a new feature point that does not match the feature point extracted from the previous image among the specific points extracted from the current image. And extract the extracted feature points in the first database 140 (S216).

그리고 상기 제어부(160)는 상기 현재 촬영한 영상에서 추출한 특징점들을 하나씩 선택하고(S218), 선택한 특징점과 매칭되는 특징점이 제 2 데이터베이스(150)에 저장되어 있는지의 여부를 판단한다(S220).The controller 160 selects the feature points extracted from the currently captured image one by one (S218), and determines whether the feature points matching the selected feature points are stored in the second database 150 (S220).

상기 판단 결과 제 2 데이터베이스(150)에 상기 선택한 특징점과 매칭되는 특징점이 저장되어 있을 경우에 상기 제어부(160)는 제 2 데이터베이스(150)에 저장되어 있는 해당 특징점의 기준각도를 기준으로 하여 카메라(130)가 현재 해당 특징점을 촬영한 각도로 제 2 데이터베이스에 해당 특징점의 정보를 저장한다(S222).As a result of the determination, when a feature point matching the selected feature point is stored in the second database 150, the controller 160 may store a camera (based on a reference angle of the corresponding feature point stored in the second database 150). 130 stores information of the corresponding feature point in the second database at an angle at which the feature point is currently photographed (S222).

그리고 상기 판단 결과 제 2 데이터베이스(150)에 상기 선택한 특징점과 매칭되는 특징점이 저장되어 있지 않을 경우에 상기 제어부(160)는 그 선택한 특징점을 기준각도로 하여 제 2 데이터베이스(150)에 저장한다(S224)When the feature point matching the selected feature point is not stored in the second database 150 as a result of the determination, the controller 160 stores the selected feature point as the reference angle in the second database 150 (S224). )

예를 들면, 도 3에 도시된 바와 같이 상기 카메라(130)가 촬영한 현재 영상에서 특징점(A, B, C, D, E)들을 추출하고, 추출한 특징점(A, B, C, D, E)들과 매 칭되는 특징점이 제 2 데이터베이스(150)에 저장되어 있지 않을 경우에 상기 제어부(160)는 상기 특징점(A, B, C, D, E)들을 촬영한 각도를 기준각도인 0°로 하여 제 2 데이터베이스(150)에 특징점 정보를 저장한다. 그리고 상기 특징점(A, B, C, D, E)들의 정보가 기준각도인 0°로 제 2 데이터베이스(150)에 저장되어 있는 상태에서 기준각도 0°를 기준으로 하여 소정의 각도 α1°의 위치에서 특징점(A, D)이 촬영되었을 경우에 α1°의 각도로 특징점(A, D)의 정보를 저장하며, 소정의 각도 α2°의 위치에서 특징점(A, B, E)이 촬영되었을 경우에 α2°의 각도로 특징점(A, B, E)의 정보를 저장하며, 소정의 각도 α3°의 위치에서 특징점(C, D)이 촬영되었을 경우에 α3°의 각도로 특징점(C, D)의 정보를 저장하며, 소정의 각도 α4°의 위치에서 특징점(B, E)이 촬영되었을 경우에 α4°의 각도로 특징점(B, E)의 정보를 저장한다.For example, as shown in FIG. 3, the feature points A, B, C, D, and E are extracted from the current image captured by the camera 130, and the extracted feature points A, B, C, D, and E are extracted. ), When the feature points matched with each other) are not stored in the second database 150, the controller 160 measures the angle at which the feature points A, B, C, D, and E are photographed as a reference angle of 0 °. As a result, the feature point information is stored in the second database 150. And the information of the feature points (A, B, C, D, E) is stored in the second database 150 at a reference angle of 0 ° with a predetermined angle α 1 ° based on the reference angle 0 ° feature point position (a, D) is the characteristic point at an angle of α 1 ° to when recording and storing information of the (a, D), a feature point from a position of angle α 2 ° of recording (a, B, E) Information of the feature points A, B, and E at an angle of α 2 °, and at an angle of α 3 ° when the feature points C and D are photographed at a predetermined angle of α 3 °. The information of (C, D) is stored, and the information of the feature points (B, E) is stored at an angle of 4 ° when the feature points (B, E) are photographed at a predetermined angle (alpha) 4 °.

그리고 상기 제어부(160)는 추출한 모든 특징점의 선택을 완료하였는지의 여부를 판단하고(S226), 모든 특징점의 선택을 완료하지 않았을 경우에 상기 제어부(160)는 상기 단계(218)로 복귀하여 특징점을 선택하고, 선택한 특징점의 정보를 상술한 바와 같이 제 2 데이터베이스(150)에 저장하는 동작을 반복 수행한다.The controller 160 determines whether the selection of all the extracted feature points is completed (S226), and when the selection of all the feature points is not completed, the controller 160 returns to step 218 to select the feature points. As described above, the operation of storing the selected feature point in the second database 150 is repeatedly performed.

현재 영상에서 추출한 모든 특징점들을 하나씩 선택하여 제 2 데이터베이스(150)에 특징점 정보를 저장하였을 경우에 상기 제어부(160)는 로봇이 목적지에 도착하였는지의 여부를 판단한다(S228).When all the feature points extracted from the current image are selected one by one and the feature point information is stored in the second database 150, the controller 160 determines whether the robot has arrived at the destination (S228).

상기 판단 결과 로봇이 목적지에 도착하지 않았을 경우에 상기 단계(S204)로 복귀하여 로봇을 이동시키고, 카메라(130)의 촬영 영상을 입력하여 특징점을 추출한 후 추출한 새로운 특징점은 제 1 데이터베이스(140)에 저장하고, 모든 특징점들의 정보를 촬영한 각도로 제 2 데이터베이스(150)에 저장하는 동작을 반복 수행한다.If the robot does not arrive at the destination as a result of the determination, the robot returns to step S204 to move the robot, inputs a captured image of the camera 130, extracts the feature points, and then extracts the new feature points into the first database 140. And storing the information of all the feature points in the second database 150 at the photographed angle.

그리고 카메라(130)의 촬영 영상을 입력하여 추출한 특징점과 이전에 촬영한 영상에서 추출한 특징점들에서 매칭되는 특징점이 없을 경우에, 로봇이 소정의 장애물과 충돌하면서 튕겨져 액츄에이터의 구동상태와 관계없이 위치를 이동하는 키드냅핑(kidnapping)이 발생한 것으로서 상기 제어부(160)는 상기 카메라(130)가 촬영한 현재 영상에서 추출한 특징점을 선택하고(S230), 선택한 특징점의 정보를 상기 제 2 데이터베이스(150)에 저장된 특징점의 정보와 비교하며(S232), 비교 결과 특징점의 정보가 매칭되는 특징점이 존재하는지의 여부를 판단한다(S234).When there is no feature point that matches the feature point extracted by inputting the photographed image of the camera 130 and the feature point extracted from the previously photographed image, the robot is bounced while colliding with a predetermined obstacle to position the position regardless of the driving state of the actuator. As moving kidnapping occurs, the controller 160 selects a feature point extracted from the current image photographed by the camera 130 (S230), and stores information on the selected feature point in the second database 150. It compares the information of the feature point (S232), and determines whether there is a feature point to which the information of the feature point matches as a result of the comparison (S234).

상기 판단 결과 매칭되는 특징점이 존재하지 않을 경우에 상기 제어부(160)는 상기 단계(S230)로 복귀하여 상기 현재 촬영한 영상에서 추출한 특징점들 중에서 선택하지 않은 다른 특징점을 선택하고, 그 선택한 특징점의 정보를 상기 제 2 데이터베이스(150)에 저장된 특징점의 정보와 비교하여 비교 결과 특징점의 정보가 매칭되는 특징점이 존재하는지의 여부를 판단하는 동작을 반복 수행한다.If there is no matching feature point as a result of the determination, the control unit 160 returns to step S230 and selects another feature point that is not selected among the feature points extracted from the currently photographed image, and the information of the selected feature point. Is compared with the information of the feature points stored in the second database 150 and the operation of determining whether there is a feature point to which the information of the feature points is matched is repeated.

그리고 상기 비교 결과 매칭되는 특징점이 존재할 경우에 상기 제어부(160)는 상기 매칭되는 특징점의 각도를 상기 제 2 데이터베이스(150)에서 독출하고, 상기 카메라(130)가 촬영한 해당 특징점과 카메라(130) 사이의 거리를 계산하며, 그 각도와 거리를 이용하여 로봇의 현재위치를 계산한다(S236).When there is a matching feature point as a result of the comparison, the controller 160 reads the angle of the matched feature point from the second database 150, and captures the corresponding feature point and the camera 130 photographed by the camera 130. Calculate the distance between, using the angle and the distance to calculate the current position of the robot (S236).

이와 같이 로봇의 현재위치가 계산되면, 상기 제어부(160)는 로봇이 목적지에 도착하였는지의 여부를 판단한다(S228).When the current position of the robot is calculated as described above, the controller 160 determines whether the robot has arrived at the destination (S228).

상기 판단 결과 로봇이 목적지에 도착하지 않았을 경우에 상기 단계(S204)로 복귀하여 로봇을 이동시키고, 카메라(130)의 촬영 영상을 입력하여 특징점을 추출한 후 추출한 새로운 특징점은 제 1 데이터베이스(140)에 저장하고, 모든 특징점들의 정보를 촬영한 각도로 제 2 데이터베이스(150)에 저장하는 동작을 반복 수행하며, 카메라(130)가 현재 촬영한 영상에서 추출한 특징점과 이전에 촬영한 영상에서 추출한 특징점들 중에서 매칭되는 특징점이 없을 경우에 상기 카메라(130)가 촬영한 현재 영상에서 추출한 특징점을 선택하고, 선택한 특징점의 정보를 상기 제 2 데이터베이스(150)에 저장된 특징점의 정보와 비교하여 매칭되는 특징점을 찾으며, 매칭되는 특징점을 찾았을 경우에 카메라(130)와 해당 특징점 사이의 거리와, 매칭되는 특징점의 각도를 이용하여 로봇의 현재위치를 계산하는 동작을 반복 수행한다.If the robot does not arrive at the destination as a result of the determination, the robot returns to step S204 to move the robot, inputs a captured image of the camera 130, extracts the feature points, and then extracts the new feature points into the first database 140. And storing the information of all the feature points in the second database 150 at the photographed angle, and among the feature points extracted from the image currently captured by the camera 130 and the feature points extracted from the previously captured image. If there is no matching feature point, the feature point extracted from the current image photographed by the camera 130 is selected, and the matching feature point is found by comparing the information of the selected feature point with the information of the feature point stored in the second database 150. When the matching feature point is found, the distance between the camera 130 and the corresponding feature point and the angle of the matching feature point are used. Repeatedly calculates the current position of the robot.

이상에서는 대표적인 실시 예를 통하여 본 발명에 대하여 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 상술한 실시 예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다.The present invention has been described in detail with reference to exemplary embodiments, but those skilled in the art to which the present invention pertains can make various modifications without departing from the scope of the present invention. I will understand.

그러므로 본 발명의 권리범위는 설명된 실시 예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.Therefore, the scope of the present invention should not be limited to the described embodiments, but should be defined by the claims below and equivalents thereof.

도 1은 본 발명의 위치 검출방법이 적용되는 로봇의 제어장치의 구성을 보인 블록도,1 is a block diagram showing the configuration of a control device of a robot to which the position detection method of the present invention is applied;

도 2는 본 발명의 위치 검출방법의 바람직한 실시 예의 동작을 보인 신호흐름도, 및2 is a signal flow diagram showing the operation of a preferred embodiment of the position detection method of the present invention, and

도 3은 본 발명의 위치 검출방법에 따라 제 2 데이터베이스에 저장되는 특징 점 정보를 설명하기 위한 도면이다.3 is a view for explaining feature point information stored in a second database according to the position detection method of the present invention.

Claims (3)

제어부가 로봇을 이동시키면서 카메라의 촬영 영상을 입력하는 단계;Inputting a captured image of a camera while the controller moves the robot; 상기 카메라가 촬영한 현재 영상에서 특징점을 추출하고, 추출한 특징점과 상기 카메라가 이전에 촬영한 영상에서 추출한 특징점을 비교하여 매칭되는 특징점의 존재 유무를 판단하는 단계;Extracting a feature point from a current image photographed by the camera, and comparing the extracted feature point with a feature point extracted from a previously photographed image by the camera to determine whether a matching feature point exists; 상기 판단 결과 매칭되는 특징점이 존재할 경우에 매칭되지 않은 특징점을 모두 추출하여 제 1 데이터베이스에 저장하고, 전체 특징점을 추출하여 상기 카메라가 특징점을 촬영한 각도를 제 2 데이터베이스에 저장하는 단계;Extracting and storing all unmatched feature points in the first database when the matching feature points exist, and storing the angles at which the camera photographs the feature points in the second database; 상기 판단 결과 매칭되는 특징점이 존재하지 않을 경우에 상기 현재 영상에서 추출한 특징점을 선택하고, 선택한 특징점의 정보와 매칭되는 특징점의 정보를 상기 제 2 데이터베이스에서 검색하는 단계; 및Selecting a feature point extracted from the current image when there is no matching feature point as a result of the determination, and retrieving information of the feature point matching the information of the selected feature point from the second database; And 상기 검색한 매칭되는 특징점 정보의 각도와 상기 카메라가 해당 특징점을 촬영한 거리를 이용하여 로봇의 현재위치를 계산하는 단계를 포함하고,Calculating a current position of the robot by using the searched angles of the matching feature point information and the distance at which the camera photographs the feature point; 상기 특징점 추출은;The feature point extraction is; SIFT(Scale Invariant Feature Transform) 알고리즘을 이용하여 추출하는 로봇의 위치 검출방법.Position detection method of a robot extracted using SIFT (Scale Invariant Feature Transform) algorithm. 삭제delete 제 1 항에 있어서, 상기 카메라가 특징점을 촬영한 각도를 제 2 데이터베이스에 저장하는 것은;The method of claim 1, wherein the camera stores the angle at which the feature point is photographed in a second database; 상기 카메라가 촬영한 현재 영상에서 추출한 특징점과 매칭되는 특징점의 정보가 상기 제 2 데이터베이스에 저장되어 있는지의 여부를 판단하는 단계;Determining whether information on a feature point that matches the feature point extracted from the current image captured by the camera is stored in the second database; 상기 판단 결과 매칭되는 특징점의 정보가 상기 제 2 데이터베이스에 저장되어 있지 않을 경우에 해당 특징점의 정보를 기준각도로 상기 제 2 데이터베이스에 저장하는 단계; 및Storing information of the corresponding feature point in the second database at a reference angle when information on the matching feature point is not stored in the second database as a result of the determination; And 상기 판단 결과 매칭되는 특징점의 정보가 상기 제 2 데이터베이스에 저장되어 있을 경우에 그 저장된 특징점 정보의 기준각도를 기준으로 하여 상기 카메라가 해당 특징점을 촬영한 각도로 해당 특징점의 정보를 저장하는 단계를 포함하여 이루어지는 것을 특징으로 하는 로봇의 위치 검출방법.Storing information of the corresponding feature point at an angle at which the camera photographs the feature point based on the reference angle of the stored feature point information when the matching feature point information is stored in the second database. Position detection method of the robot, characterized in that made.
KR1020080104574A 2008-10-24 2008-10-24 Method for detecting position of robot KR101038702B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080104574A KR101038702B1 (en) 2008-10-24 2008-10-24 Method for detecting position of robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080104574A KR101038702B1 (en) 2008-10-24 2008-10-24 Method for detecting position of robot

Publications (2)

Publication Number Publication Date
KR20100045585A KR20100045585A (en) 2010-05-04
KR101038702B1 true KR101038702B1 (en) 2011-06-03

Family

ID=42273206

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080104574A KR101038702B1 (en) 2008-10-24 2008-10-24 Method for detecting position of robot

Country Status (1)

Country Link
KR (1) KR101038702B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10383497B2 (en) 2015-05-12 2019-08-20 Samsung Electronics Co., Ltd. Robot and controlling method thereof
KR102252888B1 (en) * 2020-01-03 2021-05-17 포테닛 주식회사 An apparatus and method for detecting position of transfer robot in space

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101910382B1 (en) 2011-12-08 2018-10-22 엘지전자 주식회사 Automatic moving apparatus and manual operation method thereof
KR101802993B1 (en) 2015-02-12 2017-12-28 남한석 Unlimited movable marking system and marking method thereof
WO2018074904A1 (en) * 2016-10-20 2018-04-26 엘지전자 주식회사 Mobile robot and control method of mobile robot
KR101853127B1 (en) 2017-05-19 2018-04-27 주식회사 랜도르아키텍쳐 Movable Marking System, Controlling Method For Movable Marking Apparatus and Computer Readable Recording Medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0953939A (en) * 1995-08-18 1997-02-25 Fujitsu Ltd Method and system for measuring position of mobile vehicle
KR20000019189A (en) * 1998-09-09 2000-04-06 윤종용 Self position detector established inside free-moving transfer device and method thereof
JP2002048513A (en) 2000-05-26 2002-02-15 Honda Motor Co Ltd Position detector, method of detecting position, and program for detecting position

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0953939A (en) * 1995-08-18 1997-02-25 Fujitsu Ltd Method and system for measuring position of mobile vehicle
KR20000019189A (en) * 1998-09-09 2000-04-06 윤종용 Self position detector established inside free-moving transfer device and method thereof
JP2002048513A (en) 2000-05-26 2002-02-15 Honda Motor Co Ltd Position detector, method of detecting position, and program for detecting position

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
논문 2004*

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10383497B2 (en) 2015-05-12 2019-08-20 Samsung Electronics Co., Ltd. Robot and controlling method thereof
KR102252888B1 (en) * 2020-01-03 2021-05-17 포테닛 주식회사 An apparatus and method for detecting position of transfer robot in space

Also Published As

Publication number Publication date
KR20100045585A (en) 2010-05-04

Similar Documents

Publication Publication Date Title
KR101038702B1 (en) Method for detecting position of robot
KR101782057B1 (en) Apparatus for building map and method thereof
US8285482B2 (en) Mobile robot and method for moving mobile robot
US8849036B2 (en) Map generating and updating method for mobile robot position recognition
Angeli et al. Incremental vision-based topological SLAM
JP2021514498A (en) Target tracking method and device, storage medium
EP2460629A1 (en) Control method for localization and navigation of mobile robot and mobile robot using same
US20100174409A1 (en) Robot slip detection apparatus and method
KR20130118116A (en) Apparatus and method avoiding collision with moving obstacles in automatic parking assistance system
KR102263717B1 (en) Apparatus and method for analyzing abnormal behavior through object detection and tracking
JP2019537715A (en) Obstacle detection system and method
KR20110011424A (en) Method for recognizing position and controlling movement of a mobile robot, and the mobile robot using the same
KR20100031277A (en) Apparatus and method for localization using forward images
JP2021048617A (en) Information processing system, information processing method, and program
WO2004081683A1 (en) Autonomously moving robot
US20140002658A1 (en) Overtaking vehicle warning system and overtaking vehicle warning method
KR101625384B1 (en) System and method for identifying vehicles
KR101202108B1 (en) Localizing method for mobile robot
JP4687506B2 (en) Object size calculation device, object search device, object classification device, and object size calculation method using the same
JP2006236098A (en) Obstacle avoiding method for mobile body, and the mobile body
WO2014181386A1 (en) Vehicle assessment device
JP2015215651A (en) Robot and own position estimation method
JP2016081355A (en) Irregularity detection method, irregularity detection device and program
KR101018033B1 (en) Method and System for Warning Lane Departure
KR102329674B1 (en) Method of configuring position based on identification of fixed object and moving object and robot implementing thereof

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20131231

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150109

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20151224

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170512

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20180406

Year of fee payment: 8