KR20130022918A - Cleaning robot navigationg method using the repeating image patterns of working environment - Google Patents

Cleaning robot navigationg method using the repeating image patterns of working environment Download PDF

Info

Publication number
KR20130022918A
KR20130022918A KR1020110085958A KR20110085958A KR20130022918A KR 20130022918 A KR20130022918 A KR 20130022918A KR 1020110085958 A KR1020110085958 A KR 1020110085958A KR 20110085958 A KR20110085958 A KR 20110085958A KR 20130022918 A KR20130022918 A KR 20130022918A
Authority
KR
South Korea
Prior art keywords
robot
image
vector
angle
intersection
Prior art date
Application number
KR1020110085958A
Other languages
Korean (ko)
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 KR1020110085958A priority Critical patent/KR20130022918A/en
Publication of KR20130022918A publication Critical patent/KR20130022918A/en

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L9/00Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners
    • A47L9/28Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means
    • A47L9/2805Parameters or conditions being sensed
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L2201/00Robotic cleaning machines, i.e. with automatic control of the travelling movement or the cleaning operation
    • A47L2201/04Automatic control of the travelling movement; Automatic obstacle detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)
  • Image Analysis (AREA)

Abstract

PURPOSE: A self-control movement method of a cleaning robot using repetitive image patterns around a workplace is provided to predict location information using a sum vector in which an optical flow is accumulated in a video frame. CONSTITUTION: A self-control movement method of a cleaning robot using repetitive image patterns around a workplace comprises; a step of receiving repetitive image patterns by installing a camera to the direction of the repetitive image around a workplace at the center of the cleaning robot and a step of calculating the angle with respect to a Y axis from a standard starting point of the cleaning robot at the workplace and set of angles. [Reference numerals] (AA) Initializing a robot imaging device; (BB) Processing a ceiling image with repetitive patterns; (CC) Straight lines are extracted?; (DD) Calculating the direction of a robot; (EE) Calculating the direction using an optical flow; (FF) Crossing point of the straight lines is extracted?; (GG) Calculating the position of the robot; (HH) Calculating the position using an optical flow; (II) Using the position/direction

Description

로봇 작업장 주변의 반복 무늬 패턴을 이용한 청소로봇의 자율 이동 방법 {Cleaning Robot Navigationg method using the Repeating Image Patterns of Working Environment }Autonomous movement of cleaning robot using repeating pattern around robot workplace {Cleaning Robot Navigationg method using the Repeating Image Patterns of Working Environment}

본 발명은 로봇의 이동 방법에 관한 것으로, 특히 로봇 작업장 주변의 반복 무늬 패턴을 이용한 로봇의 자율 이동 방법에 관한 것이다. The present invention relates to a method for moving a robot, and more particularly, to a method for autonomous movement of a robot using a repeating pattern around a robot workplace.

이동로봇의 위치계산을 위해서 과거에는 로봇의 초기 위치를 기준으로 계산하는 dead reckoning 방법이 많이 사용되었다. 이 방법은 간단하지만, 바퀴가 미끄러짐으로 인해서 생기는 에러가 누적된다는 문제가 있었다. 이 문제점을 극복하기 이해서, 초음파 센서도 많이 사용되었다. 이 방법은 초음파가 물체까지의 비행시간 (time-of-flight (TOF))을 계산하여 거리를 측정하는 방법인데, 정확성이 크지 않으며 환경의 영향을 많이 받는다. In order to calculate the position of a mobile robot, a lot of dead reckoning methods have been used in the past, based on the initial position of the robot. This method is simple, but there is a problem that an error caused by the sliding of the wheel is accumulated. In order to overcome this problem, many ultrasonic sensors have been used. This method uses ultrasonic waves to calculate the time-of-flight (TOF) of an object and measures the distance. It is not very accurate and is heavily influenced by the environment.

최근에는 랜드마크를 사용하는 방법이 많이 연구되고 있다. 이에 대한 방법 중의 하나는 RFID (Radio기술을 이용하는 것인데, RFID tags를 작업환경에 다수 배치한 후, RFID reader를 장착한 로봇이 움직이면서 RFID tag 위치를 알아내는 방법에 의해 로봇의 위치를 계산하는 방법이다. 여기서 각 RFID tag 는 각 각 자신의 위치를 가지고 있기 때문에 로봇의 위치를 알아내는 데 활용할 수 있다. 또, 다른 방법은 시각적인 랜드마크를 사용하는 방법이다. 비젼센서는 랜드마크의 특징을 인식하여 로봇의 위치를 계산하는 것이다. 이를 위해서 특수한 모양으로 제작된 랜드마크를 제작해서 사용한다. 랜드 마크를 이용하는 방법 중 효과적인 방법은 랜드마크를 천정에 부착하는 방법이다. 랜드 마크가 약속된 코드들 표현하게 하고, 작은 크기의 랜드 마크에 많은 코드 정보를 포함시키기 위해서 개발된 칼라기반 천정 부착 랜드 마크 방법이다. 이 방법에서는 각 랜드 마크가 고유한 상대적인 위치를 표현하게 하여 로봇은 랜드마크의 상대적 위치를 누적시키는 방법으로 위치를 계산하는 것이다. 이 방법은 사용되지 않는 천정에 랜드마크를 부착하여 공간의 활용도를 높인다는 장점은 있지만, 작업장 랜드 마크을 부착해야 하는 노력과 미관을 해친다는 문제점이 있다. Recently, many ways of using landmarks have been studied. One method for this is to use RFID (Radio technology). After placing a large number of RFID tags in the work environment, the robot is equipped with an RFID reader to calculate the position of the robot by finding the location of the RFID tag. Since each RFID tag has its own location, it can be used to locate the robot, and another method is to use visual landmarks. For this purpose, a landmark made in a special shape is used, and an effective method of using the landmark is to attach the landmark to the ceiling. Color-based ceiling-attached lands developed to display and include a lot of code information in small landmarks In this method, each landmark represents a unique relative position, and the robot calculates the position by accumulating the relative position of the landmark. Although there is an advantage of increasing the utilization of space, there is a problem that it impairs the effort and aesthetics of attaching workplace landmarks.

본 발명은 상기와 같은 문제점을 해결하기 위한 것으로, 본 발명은 작업장에 랜드 마크를 부착하지 않고, 반복 무늬만을 활용해서 로봇의 방향과 위치를 알아내는 새롭고 효과적인 방법이다. 격자형 반복 무늬의 경우에는 직선이나 교차점들을 활용해서 위치나 방향정보에 누적되는 에러를 줄일 수 있다. 반복무늬 패턴이 검출되지 않는 영상 프레임에서는 화소 간의 이동 벡터인 Optical Flow 벡터들을 영상 프레임마다 누적한 합 벡터를 활용함으로써 위치정보를 예측할 수 있다. 본 발명은 이와 같은 목표를 달성하기 위한 기술에 관한 것이다.   The present invention is to solve the above problems, the present invention is a new and effective way to find the direction and location of the robot using only a repeating pattern without attaching a landmark to the workplace. In the case of lattice repeating patterns, errors accumulated in position or direction information can be reduced by using straight lines or intersection points. In an image frame in which a repeating pattern is not detected, position information may be predicted by using a sum vector obtained by accumulating optical flow vectors, which are motion vectors between pixels, for each image frame. The present invention relates to techniques for achieving this goal.

이를 위해 본 발명은, 이동 로봇의 중심에 작업장의 반복무늬 방향으로 카메라를 설치하여 반복 무늬 영상을 얻을 수 있게 하고; 로봇 작업장의 반복되는 무늬 중 반복되는 직선 성분들에 대해 로봇 작업장의 기준 원점에서의 y 축에 대한 각도를 계산하여 그 각도 집합을 구하여 준비하고; 반복 무늬에서의 모든 교차점들에 대한 위치 정보들로 구성된 교차점 집합을 준비하고; 로봇 자율 이동 중의 방향을 계산하기 위해서는, 이동 중 촬영한 영상에서 직선을 검출하여 이 직선과 로봇의 현재 방향 간의 각도를 영상으로부터 구한 후, 상기 미리 계산하여 준비한 작업장의 y 축을 기준으로 한 각 직선들에 대한 각도 집합 내의 각 개별 각도에 더하여 이를 로봇의 방향 각도 후보 집합이라고 하고; 상기 방향각도 후보 집합 내의 각도들 중, 이 전 영상의 로봇 위치에서 구한 로봇 방향 각도에 가장 가까운 각도를 선택하여 현재의 로봇 각도로 결정하고; 로봇 자율 이동 중의 위치를 계산하기 위해서는, 상기 초기화시 준비한 교차점 집합 상에서 로봇의 이전 영상 위치 주변의 교차점 들의 위치 좌표만을 취하여 로봇 기준 위치 후보 집합이라고 하고; 현재 위치에서 촬영된 작업장 영상 중 가장 뚜렷한 교차점을 선택하여 이 교차점 의 화소 좌표를 영상 중심으로부터의 상대 좌표로 표시하고 이를 청구항 2 항에서 기술한 변환된 실제거리 상대위치 벡터로 표시하고; 상기 변환된 실제거리 상대위치 벡터를 상기 기준로봇위치 후보 집합에 더하여 이를 로봇의 실제 위치에 대한 후보 집합이라 하고; 상기 로봇 실제 위치의 후보 집합의 요소들 중, 이전 영상에서 구한 로봇의 위치와 가장 가까운 위치 점을 현재의 로봇 위치 점으로 결정하는 단계를 포함하여 이루어진다.
To this end, the present invention, by installing the camera in the direction of the repeating pattern of the workplace in the center of the mobile robot to obtain a repeating pattern image; Calculating the angle set with respect to the y-axis at the reference origin of the robot workshop for the repeated linear components among the repeated patterns of the robot workshop to obtain and prepare the angle set; Prepare an intersection set consisting of positional information for all intersections in the repeating pattern; In order to calculate the direction during the autonomous movement of the robot, a straight line is detected from the image taken during the movement, the angle between the straight line and the current direction of the robot is obtained from the image, and then the respective straight lines based on the y axis of the workplace prepared in advance. In addition to each individual angle in the set of angles for, it is called the set of orientation angle candidates of the robot; Selecting an angle closest to the robot direction angle obtained from the robot position of the previous image among the angles in the direction angle candidate set to determine the current robot angle; In order to calculate the position during the robot autonomous movement, only the position coordinates of the intersections around the previous image position of the robot on the intersection set prepared at the initialization are called robot reference position candidate sets; Selecting the most distinct intersection point among the workplace images photographed at the current position to display pixel coordinates of the intersection point as a relative coordinate from the image center and display it as the transformed actual distance relative position vector described in claim 2; Adding the transformed actual distance relative position vector to the reference robot position candidate set and calling it a candidate set for the actual position of the robot; And among the elements of the candidate set of the actual position of the robot, determining the position point closest to the position of the robot obtained from the previous image as the current robot position point.

본 발명은 반복 무늬만으로도 로봇의 위치 및 방향을 인식하는 기술로서 초기의 방향과 위치가 주어지는 경우, 반복 무늬의 특징을 인식을 통해서 로봇의 방향과 위치를 점차적으로 계산할 수 있으며, 이 때 발생하는 작은 에러들은 각 반복 무늬의 특징을 발견할 때 마다 정정되어 누적되지 않고 이동을 계속할 수 있다. 특히, 본 발명은 작업 장의 영상을 그대로 이용하기 때문에 기존의 제품들에서 필수적인 랜드마크나 엔코더등의 부가장치가 없이 정확한 위치를 측정할 수 있으므로, 가격 경쟁력이 매우 높은 기술로 판단된다. 대부분의 사무실은 본 발명을 적용시킬 수 있는 격자무늬를 가지고 있으므로, 본 발명은 사무실용 로봇에 유용하게 활용이 가능하다고 할 수 있다.
The present invention is a technology for recognizing the position and direction of the robot with only a repeating pattern, when the initial direction and position is given, the direction and position of the robot can be gradually calculated through the recognition of the characteristic of the repeating pattern, Errors can be corrected each time a feature of each repeating pattern is found and continue to move without accumulating. In particular, since the present invention can use the image of the workplace as it is, it is possible to accurately measure the position without additional landmarks or encoders, which are essential in existing products, and thus it is judged to be a technology having a high price competitiveness. Since most offices have a lattice pattern to which the present invention can be applied, the present invention can be said to be useful for an office robot.

도 1은 반복되는 격자 무늬를 갖는 천정들을 예시한 그림이고;
도 2는 반복되는 반복 무늬를 이용해서 로봇의 방향 및 위치를 결정하는 본 발명의 주 흐름도이고;
도 3은 검출된 직선을 이용하여 로봇의 방향을 결정하는 루틴의 흐름도이고;
도 4(a)는 일반적인 반복 무늬에서 직선 및 교차점에 대한 원점기준 좌표와 로봇좌표를 예시한 그림이고;
도 4(b)는 원점 기준좌표계 (x-y)와 로봇기준 좌표계(x'-y')를 겹쳐서 보여주는 것이고;
도 5는 영상에서 직선들의 교차점을 이용해서 로봇의 위치를 계산하는 루틴의 흐름도이고;
도 6은 도 5의 루틴에서 로봇의 실제 위치를 계산하는데 사용된 보조그림이고;
도 7은 청구항 2 항에 있어서의 실제거리 상대위치 벡터로 변환방법을 기술한 루틴이고;
도 8은 반복무늬 패턴이 발견되지 않는 영상의 경우, 영상프레임 간의 화소이동 벡터(optical flow)혹은 그 누적 벡터를 사용해서 로봇 방향을 예측하는 방법과, 직선이 발견되는 경우, 이 직선을 이용해서 누적 벡터로부터 예측한 로봇의 방향을 교정하는 방법을 보여주는 루틴이고;
도 9는 반복무늬 패턴이 발견되지 않는 영상의 경우, 영상프레임 간의 화소이동 벡터(optical flow) 혹은 그 누적 벡터를 사용해서 로봇 위치을 예측하는 방법과, 반복무늬 패턴이 발견되는 경우, 이 패턴을 이용해서 누적벡터로부터 예측한 로봇 위치를 교정하는 방법을 보여주는 루틴이다.
1 is a diagram illustrating ceilings with repeating lattice patterns;
2 is a main flow diagram of the present invention for determining the direction and position of a robot using repeated repeating patterns;
3 is a flowchart of a routine for determining the direction of the robot using the detected straight line;
4 (a) is a diagram illustrating origin reference coordinates and robot coordinates for straight lines and intersections in a general repeating pattern;
4 (b) shows the origin reference coordinate system (xy) and the robot reference coordinate system (x'-y ') superimposed;
5 is a flowchart of a routine for calculating the position of the robot using the intersection of straight lines in the image;
FIG. 6 is an auxiliary picture used to calculate the actual position of the robot in the routine of FIG. 5; FIG.
Fig. 7 is a routine describing a method of converting into a real distance relative position vector according to claim 2;
8 illustrates a method of predicting a robot direction using an optical flow or cumulative vector between image frames in case of an image in which a repeating pattern is not found, and using a straight line when a straight line is found. A routine showing how to correct the direction of the robot predicted from the cumulative vector;
FIG. 9 illustrates a method of predicting a robot position using an optical flow or cumulative vector between image frames in an image in which a repeating pattern is not found, and using the pattern when a repeating pattern is found. This routine shows how to correct the robot position predicted from the cumulative vector.

본 발명에서는 상기와 같은 과제를 해결하기 위해서 도 1과 같이 격자 무늬가 있는 영상 특징을 이용하여, 랜드마크와 같은 부수적인 장치 없이 영상만으로도 로봇의 위치 및 방향을 인식하게 하고자 하는 것이다. 이를 위해서는 이동 로봇의 중심에 반복 무늬를 향하여 카메라를 설치하여 작업 장의 연속적인 디지털 영상을 얻을 수 있게 한다.In order to solve the above problems, the present invention intends to recognize the position and orientation of the robot by using only the image without ancillary devices such as landmarks by using a grid-like image feature as shown in FIG. 1. To do this, a camera is installed at the center of the mobile robot with a repeating pattern to obtain a continuous digital image of the workplace.

격자형의 반복무늬 경우에는 도 2와 같이 영상의 직선으로부터 방향을 검출하며, 교차점으로부터 위치를 인식한다. 만약, 영상에 직선이나 교차점이 검출되지 않는 경우에는 영상프레임 간의 이동벡터를 활용해서 로봇의 방향과 위치를 예측한다. 보다 자세하게는 본 발명에서의 로봇의 방향은 영상으로부터 검출된 직선과 로봇 사이의 각도를 이용하여 계산하고, 로봇의 위치는 반복되는 직선의 교차점이 작업장의 원점으로 부터의 반복회수와 교차점으로부터 로봇 중심까지의 백터를 이용하여 계산한다. 반복무늬 패턴이 검출되지 않는 영상 프레임에서는 화소 간의 이동 벡터인 Optical Flow 벡터들을 영상 프레임마다 누적한 합 벡터의 부의 값을 이전의 영상 방향이나 위치에 더하여 사용한다. 그러다, 영상에서 직선이나 교차점들이 검출되면, 검출된 직선이나 교차점 정보에 의해 로봇의 방향과 위치 정보를 교정함으로써 에러가 누적되는 것을 피한다. In the case of lattice repeating pattern, the direction is detected from the straight line of the image as shown in FIG. 2 and the position is recognized from the intersection point. If a straight line or an intersection point is not detected in the image, the direction and position of the robot are predicted using the motion vector between the image frames. In more detail, the direction of the robot in the present invention is calculated using the angle between the straight line and the robot detected from the image, the position of the robot is the center of the robot from the intersection and the number of repetitions from the origin of the workplace Calculate using vector up to. In an image frame in which a repeating pattern is not detected, a negative value of a sum vector accumulated for each image frame is used by adding a negative value of a sum vector accumulated in each image frame to a previous image direction or position. However, when straight lines or intersection points are detected in the image, errors are accumulated by correcting the direction and position information of the robot by the detected straight lines or intersection points information.

이를 위해서 이동 로봇의 중심에 반복무늬 패턴을 향하여 카메라를 설치하여 반복 무늬 중 반복되는 직선 성분들에 대해 로봇 작업장의 원점을 기준으로 각도 집합을 구하여 준비하고, 격자형 무늬에서의 모든 교차점에 대한 위치 집합을 준비한다.
To this end, the camera is installed at the center of the mobile robot toward the repeat pattern to obtain a set of angles based on the origin of the robot's workplace for the repeated linear components among the repeat patterns, and the positions of all intersection points in the grid pattern. Prepare the assembly.

로봇의 방향 인식Robot direction recognition

이동 중인 로봇의 방향은 도 3에서와 같이 영상에서 직선을 검출하여 이 직선과 로봇의 현재 방향 간의 각도를 계산 한 후, 미리 준비한 작업장의 원점 기준 직선들에 대한 개별 각도에 더하여 이들 중, 이 전 영상에서의 로봇 방향과 가장 가까운 방향을 현재의 로봇 각도로 결정한다.The direction of the moving robot detects a straight line from the image as shown in FIG. The direction closest to the robot direction in the image is determined by the current robot angle.

격자무늬의 반복무늬의 경우에는 평행하거나 교차하는 2 방향의 직선이 존재한다. 도 4(a)에서와 같이 실제 공간의 원점을 기준으로 x 축에 평행한 직선의 방향을 -π/2이고, y 축에 평행한 직선이 방향을 0로 정의한다. 이렇게 하면, -x 축에 평행한 방향은 π/2고, -y축에 평행한 방향은 π가 되는 것이다. In the case of a lattice repeating pattern, there are two straight lines that are parallel or intersect. As shown in FIG. 4 (a), the direction of the straight line parallel to the x axis is −π / 2 based on the origin of the real space, and the straight line parallel to the y axis defines the direction to be zero. In this way, the direction parallel to the -x axis is π / 2, and the direction parallel to the -y axis is π.

도 4(b)와 같은 공간 좌표 계에서는 각 직선의 방향은 {-π/2, 0, π/2, π}와 같은 4 개의 방향을 갖게 된다. 또, 영상 좌표 계에서는 로봇과 카메라 시스템의 배치상, 영상의 윗 쪽 방향을 로봇의 전면 방향으로서, y'로 정의하고, y 축과의 사이 각을 θ라 하자. 한 개의 직선을 구해서 그 직선 로봇의 앞면과의 각도인 θ를 구했다고 하면 실제의 로봇의 방향은 {θ-π/2, θ, θ+π/2, θ+π} 중의 하나가 된다.즉, 영상의 상하를 연결하는 수직선과 가장 가까운 직선을 우선 구하고, 이 수직선과 직선이 이루는 각도를 θ라고 한다. 그런데, 영상에서 구한 직선은 원점을 기준으로 0도 방향, π/2, π 혹은 -π/2 중 어느 직선과 θ인지를 구별해야 한다. In the spatial coordinate system as shown in FIG. 4B, the directions of the straight lines have four directions such as {−π / 2, 0, π / 2, π}. In the video coordinate system, the upper direction of the image is defined as y 'as the front direction of the robot on the arrangement of the robot and the camera system, and the angle between the y axis and θ is assumed. If one straight line is found and θ, which is the angle to the front face of the linear robot, is obtained, the actual robot direction is one of {θ-π / 2, θ, θ + π / 2, θ + π}. First, a straight line closest to the vertical line connecting the upper and lower sides of the image is first obtained, and the angle formed by the vertical line and the straight line is called θ. However, the straight line obtained from the image should be distinguished from which line is θ in the 0 degree direction, π / 2, π, or -π / 2 based on the origin.

만약 로봇의 회전 속도가 충분히 낮다고 가정하면, 즉, 로봇의 방향 변화가 매우 작다면, 현재의 로봇의 현재 방향의 가장 최근에 포착한 영상의 방향과 유사한 방향이 될 것이다. 이 방향을

Figure pat00001
로 한다면, 현재의 방향은 {θ-π/2, θ, θ+π/2, θ+π} 중
Figure pat00002
에 가까운 값이다. If we assume that the rotational speed of the robot is low enough, that is, if the direction change of the robot is very small, it will be a direction similar to the direction of the most recently captured image of the current direction of the current robot. This direction
Figure pat00001
Current direction is {θ-π / 2, θ, θ + π / 2, θ + π}
Figure pat00002
Is close to.

이를 위해서,

Figure pat00003
를 현재의 방향이라고 하면,
for this,
Figure pat00003
If is the current direction,

[수학식 1][Equation 1]

Figure pat00004
Figure pat00004

이 되는 것이다. It will be.

그런데, 초기의 방향을 매우 정확하게 계산할 필요는 없고, 대충의 방향만 알면, 그것을 이용해서 {θ-π/2, θ, θ+π/2, θ+π} 중 어느 각도에 가까운지 결정만 하면 되는 것이기 때문이다. 따라서, 이 에러는 누적이 되지 않는다는 큰 장점이 있다. 다음 절에서는 허용되는 에러의 범위를 계산한다.
By the way, it is not necessary to calculate the initial direction very accurately, and if only the rough direction is known, it is only necessary to determine which angle is close to {θ-π / 2, θ, θ + π / 2, θ + π}. It is because it becomes. Therefore, there is a big advantage that this error does not accumulate. The next section calculates the range of errors allowed.

로봇 위치 인식 Robot position recognition

로봇의 위치를 계산하기 위해서는 도 5와 같이 작업장의 교차점들의 위치 집합 중, 로봇의 이전 위치 점을 중심으로 그 주변의 교차점 들의 위치 좌표들을 취한다. 또, 현재의 영상에서 가장 뚜렷한 교차점을 선택하여 영상 중심의 위치를 상기 교차점에 대한 상대 벡터로 표현하고 이를 기준 원점의 좌표로 회전 변환한 후, 이전 영상에서의 로봇 위치와 가장 가까운 위치를 실제 로봇 위치로 결정한다. In order to calculate the position of the robot, as shown in FIG. 5, the position coordinates of the intersections around the robot are taken from the previous position of the robot. In addition, by selecting the most distinct intersection point in the current image, the position of the image center is expressed as a relative vector with respect to the intersection point, and the rotation is converted into the coordinates of the reference origin, and then the position closest to the robot position in the previous image is displayed. Determined by location.

격자형의 반복무늬의 경우, 도 4에서 보는 바와 같이 대상으로 하는 격자형의 반복 무늬에는 두 개의 직선이 교차하여 만드는 많은 교차점들이 있다. 격자형 반복 무늬의 두 인접 교차점 간 거리를 d 라고 하자. 따라서, 이 교차점의 위치들은 알 수 있고, 좌표 축이 정의된다면, 교차점들의 위치를 계산할 수 있다.  In the case of the lattice repeating pattern, as shown in FIG. 4, the target lattice repeating pattern has many intersection points formed by two straight lines crossing each other. Let d be the distance between two adjacent intersections of a grid pattern. Thus, the positions of these intersections are known and, if the coordinate axis is defined, the positions of the intersections can be calculated.

만약, 이 교차점으로부터 영상의 중앙까지의 거리를 계산하면 로봇의 현재의 위치도 계산할 수 있다. If we calculate the distance from this intersection to the center of the image, we can also calculate the current position of the robot.

이전 프레임의 영상에서 인식된 교차점의 실제 위치를

Figure pat00005
라고 할 때, 현재 영상 프레임에서의 교차점의 실제 위치는 다음과 같은 점 중의 하나이다.
The actual position of the intersection detected in the image of the previous frame.
Figure pat00005
In this case, the actual position of the intersection point in the current video frame is one of the following points.

[수학식 2]&Quot; (2) "

Figure pat00006
Figure pat00006

여기서 과 는 x 축과 y축 간의 거리이다. Where and are the distances between the x and y axes.

로봇의 위치는 상기와 같은 방법을 사용하여 교차점의 위치를 계산한 후, 도 6을 이용하여 구할 수 있다. 즉, 로봇의 위치는 영상의 중심점의 위치와 같으므로 이를 C라하고, 검출된 교차점의 위치 점을 A, B를 인접위치의 교차점이라고 하면, 벡터

Figure pat00007
의 방향은 로봇의 방향과 같다. The position of the robot can be calculated using FIG. 6 after calculating the position of the intersection using the above method. That is, since the position of the robot is the same as the position of the center point of the image, it is called C. If the position point of the detected intersection point is A and B as the intersection point of the adjacent position, the vector
Figure pat00007
The direction of is the same as that of the robot.

현재의 로봇 방향은

Figure pat00008
로 계산되어 있으므로, 각
Figure pat00009
를 계산할 수 있다. 만약, 영상 평면과 반복 무늬의 크기비율 관계를 이용하면, 실제위치점 A로부터
Figure pat00010
점의 위치는 [수학식 3]과 같이 계산 할 수 있다.
The current robot direction is
Figure pat00008
Is calculated as
Figure pat00009
Can be calculated. If the relationship between the image plane and the size of the repeating pattern is used,
Figure pat00010
The position of the point can be calculated as shown in [Equation 3].

[수학식 3]&Quot; (3) "

Figure pat00011
Figure pat00011

Figure pat00012
은 9개의 후보 점을 가질 수 있으므로,
Figure pat00013
a점 역시 9 점을 갖는다. 이와 같은 변환의 절차는 도 7의 실제거리 상대위치 벡터로 변환방법에서 을 기술하고 있다. point
Figure pat00012
Can have 9 candidate points,
Figure pat00013
point a also has 9 points. This conversion procedure is described in the conversion method to the actual distance relative position vector of FIG.

그런데, 로봇의 속도는 빠르지 않으므로, 점은 점에 가까이 위치하게 된다. 따라서 로봇의 현재 위치 점은However, since the speed of the robot is not fast, the point is located close to the point. So the current position of the robot

[ 수학식 4][Equation 4]

Figure pat00014
Figure pat00014

로 계산되고,
Is calculated as

[수학식 5][Equation 5]

Figure pat00015
Figure pat00015

로서 로봇의 위치점을 구할 수 있다.

Figure pat00016
Figure pat00017
는 {-1, 0, 1} 중에서 [수학식 5] 식이 최소값을 갖는 값이다. [수학식 2]에 의하면, 현재의 화면상에 나타나는 교차점
Figure pat00018
의 위치도 구할 수 있다. As a result, the position point of the robot can be obtained.
Figure pat00016
Wow
Figure pat00017
Is a value in which Equation 5 has a minimum value among {-1, 0, 1}. According to [Equation 2], the intersection point appearing on the current screen
Figure pat00018
The position of can also be obtained.

결론적으로 알고 있는 교차점

Figure pat00019
과 이전 프레임에서의 로봇 위치점
Figure pat00020
를 알면, 로봇의 현재 위치와 현 영상에 나타나는 교차점의 위치는 [수학식 5] 및 [수학식 2]를 이용하면 계산할 수 있다. 따라서, 로봇의 초기 위치가 주어지면, [수학식 2]에 의해, 로봇의 위치를 점차적으로 계산할 수 있는 것이며, [수학식 5]를 이용하므로,
Figure pat00021
점에 대한 에러가 누적되지 않는다는 중요한 특징이 있다.
The intersection that we know in conclusion
Figure pat00019
And robot position points in the previous frame
Figure pat00020
The current position of the robot and the position of the intersection point appearing on the current image can be calculated by using Equations 5 and 2 below. Therefore, given the initial position of the robot, it is possible to gradually calculate the position of the robot by [Equation 2], because [Equation 5] is used,
Figure pat00021
An important feature is that errors for points are not cumulative.

OpticalOptical FlowFlow 의 벡터를 이용한 로봇 방향 및 위치 보완The robot's direction and position

만약, 반복무늬 패턴이 검출되지 않는 영상의 경우에는 도 8 혹은 도 9과 같이 화소 간의 이동 벡터 (Optical Flow)를 계산하고, 직선이나 교차점이 없는 영상이 계속되면 이 이동벡터들 간의 합 벡타를 구하여 로봇의 방향과 위치를 예측하여 사용하며, 직선이나 교차점이 검출되는 영상을 얻으면, 예측하여 사용한 로봇의 방향과 위치를 예측한다.In the case of an image in which a repeating pattern is not detected, a motion vector between pixels is calculated as shown in FIG. 8 or 9, and when the image without a straight line or an intersection point is continued, a sum vector between the motion vectors is obtained. The robot predicts the direction and position of the robot. If the image is obtained by detecting a straight line or intersection point, the robot predicts the direction and position of the robot.

Optical Flow란 인접한 영상 프레임 사이의 화소의 움직임 벡터로서 로봇이 이동하면, 로봇과 반대 방향으로 화소가 이동한다. 이 때, 많은 영상의 화소들의 이동 벡터는 약간 다를 수 있으므로, 영상프레임 간의 대표적인 이동벡터를 사용한다. 을 영상 m과 n프레임 간의 대표 이동벡터라고 하자. m번째 프레임으로부터 k개의 영상프레임의 Optical Flow가 누적되는 경우, 누적된 optical flow,

Figure pat00022

Optical flow is a motion vector of pixels between adjacent image frames, and when the robot moves, the pixels move in the opposite direction to the robot. In this case, since the motion vectors of the pixels of many images may be slightly different, a representative motion vector between image frames is used. Let be a representative motion vector between image m and n frames. When the optical flow of k image frames is accumulated from the m th frame, the accumulated optical flow,
Figure pat00022
The

[수학식 6]&Quot; (6) "

Figure pat00023
=
Figure pat00024
+
Figure pat00025
++...+
Figure pat00026
Figure pat00023
=
Figure pat00024
+
Figure pat00025
++ ... +
Figure pat00026

로 계산할 수 있다. Can be calculated as

따라서, 시점 m에서의 로봇의 방향 각이 원점을 기준으로

Figure pat00027
이었다면, k프레임 후의 각도는 는
Therefore, the direction angle of the robot at time m is based on the origin.
Figure pat00027
If, the angle after k frames is

[수학식 7][Equation 7]

Figure pat00028
=
Figure pat00029
-
Figure pat00030
Figure pat00028
=
Figure pat00029
-
Figure pat00030

와 같이 부의 값을 더하여 구한다.It is obtained by adding negative values as follows.

만약 영상 중, 직선을 가진 영상을 얻으면 직선을 기준으로 로봇의 각도를 구하고 상기 로봇 방향 구하는 방법처럼 상기 직선으로부터 구한 각도를 방향 각도 후보 집합 내의 개별 직선 각도에 더하여 방향 각도 후보 집합 내의 각 각도와 상기 이동 벡터의 합에 의해 구한 로봇 방향과 가장 차이가 적은 상기 복수의 로봇 방향 후보의 방향을 현재의 로봇 방향으로 결정한다. If an image with a straight line is obtained from the image, the angle obtained from the straight line is obtained by adding the angle obtained from the straight line to the individual linear angles in the directional angle candidate set as in the method of obtaining the robot direction based on the straight line. The direction of the plurality of robot direction candidates having the smallest difference from the robot direction determined by the sum of the motion vectors is determined as the current robot direction.

또, 영상에 교차점이 존재하지 않는 경우 도 9과 같이 상기 수학식 6처럼 optical flow의 벡터를 누적하여 이동벡터의 합을 구하고, 교차점을 가진 영상에서 구한 로봇의 위치에 이동벡터의 합의 부의 값을 더하여 로봇 예측 위치를 구한다. In addition, when the intersection point does not exist in the image, as shown in FIG. 9, the sum of the motion vectors is obtained by accumulating the vector of the optical flow as shown in Equation 6, and the negative value of the sum of the motion vector is obtained at the position of the robot obtained from the image having the intersection point. In addition, the robot predicted position is obtained.

만약, 영상에서 교차점(들) 이 검출되면 상기 로봇 위치 인식 방법처럼 로봇 실제 위치에 대한 후보 집합을 구하고 상기 로봇실제 위치에 대한 후보 집합으로부터 상기 로봇 예측위치와의 거리가 가장 가까운 위치 점을 현재의 로봇 위치로 수정한다. If the intersection point (s) is detected in the image, the candidate set for the actual position of the robot is obtained as in the robot position recognition method, and the position point closest to the robot predicted position is determined from the candidate set for the actual position of the robot. Correct it to the robot position.

Claims (5)

이동 로봇의 중심에 작업장의 반복무늬 방향으로 카메라를 설치하여 반복 무늬 영상을 얻을 수 있게 하고;
로봇 작업장의 반복되는 무늬 중 반복되는 직선 성분들에 대해 로봇 작업장의 기준 원점에서의 y 축에 대한 각도를 계산하여 그 각도 집합을 구하여 준비하고;
반복 무늬에서의 모든 교차점들에 대한 위치 정보들로 구성된 교차점 집합을 준비하고;
로봇 자율 이동 중의 방향을 계산하기 위해서는, 이동 중 촬영한 영상에서 직선을 검출하여 이 직선과 로봇의 현재 방향 간의 각도를 영상으로부터 구한 후, 상기 미리 계산하여 준비한 작업장의 y 축을 기준으로 한 각 직선들에 대한 각도 집합 내의 각 개별 각도에 더하여 이를 로봇의 방향 각도 후보 집합이라고 하고;
상기 방향각도 후보 집합 내의 각도들 중, 이 전 영상의 로봇 위치에서 구한 로봇 방향 각도에 가장 가까운 각도를 선택하여 현재의 로봇 각도로 결정하고;
로봇 자율 이동 중의 위치를 계산하기 위해서는, 상기 초기화시 준비한 교차점 집합 상에서 로봇의 이전 영상 위치 주변의 교차점 들의 위치 좌표만을 취하여 로봇 기준 위치 후보 집합이라고 하고;
현재 위치에서 촬영된 작업장 영상 중 가장 뚜렷한 교차점을 선택하여 이 교차점 의 화소 좌표를 영상 중심으로부터의 상대 좌표로 표시하고 이를 청구항 2 항에서 기술한 변환된 실제거리 상대위치 벡터로 표시하고;
상기 변환된 실제거리 상대위치 벡터를 상기 기준로봇위치 후보 집합에 더하여 이를 로봇의 실제 위치에 대한 후보 집합이라 하고;
상기 로봇 실제 위치의 후보 집합의 요소들 중, 이전 영상에서 구한 로봇의 위치와 가장 가까운 위치 점을 현재의 로봇 위치 점으로 결정하는 작업장 영상의 반복 무늬를 이용한 로봇의 방향 및 위치 계산 방법.
Installing a camera in the direction of the repeating pattern of the workplace at the center of the mobile robot to obtain a repeating pattern image;
Calculating the angle set with respect to the y-axis at the reference origin of the robot workshop for the repeated linear components among the repeated patterns of the robot workshop to obtain and prepare the angle set;
Prepare an intersection set consisting of positional information for all intersections in the repeating pattern;
In order to calculate the direction during the autonomous movement of the robot, a straight line is detected from the image taken during the movement, the angle between the straight line and the current direction of the robot is obtained from the image, and then the respective straight lines based on the y axis of the workplace prepared in advance. In addition to each individual angle in the set of angles for, it is called the set of orientation angle candidates of the robot;
Selecting an angle closest to the robot direction angle obtained from the robot position of the previous image among the angles in the direction angle candidate set to determine the current robot angle;
In order to calculate the position during the robot autonomous movement, only the position coordinates of the intersections around the previous image position of the robot on the intersection set prepared at the initialization are called robot reference position candidate sets;
Selecting the most distinct intersection point among the workplace images photographed at the current position to display pixel coordinates of the intersection point as a relative coordinate from the image center and display it as the transformed actual distance relative position vector described in claim 2;
Adding the transformed actual distance relative position vector to the reference robot position candidate set and calling it a candidate set for the actual position of the robot;
Method of calculating the direction and position of the robot using a repeating pattern of the workplace image among the elements of the candidate set of the actual position of the robot to determine the position point closest to the position of the robot obtained from the previous image as the current robot position point.
상기 청구항 1항에 있어서,
변환된 상대 위치 벡터는,
선택된 교차점에 대한 영상 중심으로부터의 상대 벡터를 구하고;
상기 교차점이 벡터를 상기 청구항 1항에서 구한 로봇의 방향만큼 영상의 중심에 대해서 역 방향으로 회전하여 변환하고;
상기 회전 변환한 교차점 벡터에 단위 화소 간격에 대한 실제 거리를 곱하여 교차점의 위치를 로봇의 중심으로부터 실제거리 상대벡터로 변환하고;
상기 교차점의 로봇 중심에 대한 실제거리 상대벡터에 부의 부호를 곱하여, 로봇 중심이 상기 교차점에 대한 실제거리 상대벡터로 표시되게 하여 구하는 것을 특징으로 하는 작업장 영상의 반복 무늬를 이용한 로봇의 방향 및 위치 계산 방법.
The method according to claim 1,
The transformed relative position vector is
Find a relative vector from the image center for the selected intersection;
Converting the intersection by rotating the vector in the reverse direction with respect to the center of the image by the direction of the robot obtained in claim 1;
Multiplying the rotation-converted intersection vector by the actual distance with respect to the unit pixel spacing to convert the position of the intersection into the actual distance relative vector from the center of the robot;
Calculate the direction and position of the robot using a repeating pattern of the workplace image, wherein the robot center is displayed as the actual distance relative vector to the intersection by multiplying a negative sign by the actual distance relative vector to the robot center of the intersection. Way.
청구항 1 항에 있어서,
로봇 방향 구하는 방법에 있어서 영상에 반복무늬가 발견되지 않아 로봇의 방향 계산이 어려운 경우, 영상에 반복무늬 특징이 발견될 때까지 optical flow의 벡터를 누적하여 이동벡터 합의 부의 값을 이전의 로봇 방향에 더하여 로봇의 방향으로 예측하여 사용하고;
직선을 가진 영상을 얻으면 직선으로부터 로봇의 각도를 구하고, 상기 청구항 1 항의 방향 구하는 방법처럼 방향 각도 후보 집합을 구하고, 이 집합 내의 개별 각도와 상기 이동 벡터의 누적 합에 의해 구한 로봇 방향과 가장 차이가 적은 방향을 현재의 로봇 방향으로 결정하는 Optical Flow를 사용한 로봇의 방향 결정 보완 방법을 더 포함하는 것을 특징으로 하는 작업장 영상의 반복 무늬를 이용한 로봇의 방향 및 위치 계산 방법.
The method according to claim 1,
In the method of obtaining the robot direction, if the repetitive pattern is not found in the image and it is difficult to calculate the direction of the robot, the vector of the flow vector sum is accumulated by accumulating the vector of the optical flow until the repetitive pattern feature is found in the image. In addition, it predicts and uses in the direction of the robot;
When the image having a straight line is obtained, the angle of the robot is obtained from the straight line, and the direction angle candidate set is obtained as in the method of claim 1, and the difference between the robot direction determined by the cumulative sum of the individual angles and the motion vector in the set is most different. A method for calculating the direction and position of a robot using a repeating pattern of a workplace image, further comprising a method for supplementing a direction determination of a robot using an optical flow for determining a smaller direction as the current robot direction.
청구항 1 항 또는 청구항 2 항에 있어서,
영상에 반복무늬의 특징이 존재하지 않는 경우 반복무늬가 발견되는 다음 영상이 나올 때까지 optical flow의 벡터를 누적하여 이동벡터의 합을 구하고, 반복무늬를 가진 영상에서 구한 로봇의 이전 위치에 이동벡터의 합의 부의 값을 더하여 로봇 예측 위치를 구하고;
영상에서 반복무늬가 검출되면 상기 청구한 1 항 혹은 청구항 2 항에서의 로봇 위치 계산 방법과 동일하되 기준로봇 위치 후보 집합의 범위를 2내지 3 배 확대하여 이를 이용하여 확대된 로봇 실제 위치에 대한 후보 집합을 구하고;
상기 로봇실제 위치에 대한 후보 집합으로부터 상기 로봇 예측위치와의 거리가 가장 가까운 위치 점을 현재의 로봇 위치로 수정하는 optical flow를 이용한 로봇 위치 점 계산 보완 방법을 포함하는 것을 특징으로 하는 작업장 영상의 반복 무늬를 이용한 로봇의 방향 및 위치 계산 방법.
The method according to claim 1 or 2,
If there is no feature of the repeating pattern in the image, the sum of the motion vectors is obtained by accumulating the vector of the optical flow until the next image where the repeating pattern is found, and moving to the previous position of the robot obtained from the image with the repeating pattern. Obtain the robot prediction position by adding the negative values of the sum of
If a repeating pattern is detected in the image, it is the same as the method of calculating the robot position in claim 1 or claim 2, but the candidate for the enlarged robot actual position is expanded by using a 2 to 3 times enlargement of the range of the reference robot position candidate set. Obtain a set;
And a robot position point calculation complementary method using an optical flow for correcting a position point closest to the robot predicted position from the candidate set for the actual position of the robot to the current robot position. Method of calculating the direction and position of the robot using patterns.
청구항 제1항 또는 제 4항 중 어느 한 항에 있어서,
직선으로만 구성된 격차형의 패턴에 국한하지 않고, 일반적인이나 곡선이나 원으로 구성된 반복무늬 패턴에 모두 적용되며, 이 경우 패턴의 크기와 방향을 미리 측정하여 이 정보를 활용함으로써 로봇의 위치와 방향을 계산하는 것을 특징으로 하는 작업장 영상의 반복 무늬를 이용한 로봇의 방향 및 위치 계산 방법.
The method according to claim 1 or 4,
It is not limited to a gap pattern consisting of only straight lines, but applies to general or repeating patterns composed of curves or circles.In this case, the size and direction of the pattern are measured in advance to utilize the information to adjust the position and direction of the robot. Method for calculating the direction and position of the robot using a repeating pattern of the workplace image, characterized in that the calculation.
KR1020110085958A 2011-08-26 2011-08-26 Cleaning robot navigationg method using the repeating image patterns of working environment KR20130022918A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110085958A KR20130022918A (en) 2011-08-26 2011-08-26 Cleaning robot navigationg method using the repeating image patterns of working environment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110085958A KR20130022918A (en) 2011-08-26 2011-08-26 Cleaning robot navigationg method using the repeating image patterns of working environment

Publications (1)

Publication Number Publication Date
KR20130022918A true KR20130022918A (en) 2013-03-07

Family

ID=48175482

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110085958A KR20130022918A (en) 2011-08-26 2011-08-26 Cleaning robot navigationg method using the repeating image patterns of working environment

Country Status (1)

Country Link
KR (1) KR20130022918A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101644270B1 (en) * 2015-05-15 2016-08-01 한경대학교 산학협력단 Unmanned freight transportation system using automatic positioning and moving route correcting

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101644270B1 (en) * 2015-05-15 2016-08-01 한경대학교 산학협력단 Unmanned freight transportation system using automatic positioning and moving route correcting

Similar Documents

Publication Publication Date Title
US8508527B2 (en) Apparatus and method of building map for mobile robot
US8588471B2 (en) Method and device of mapping and localization method using the same
US9134127B2 (en) Determining tilt angle and tilt direction using image processing
EP2824425B1 (en) Moving-object position/attitude estimation apparatus and method for estimating position/attitude of moving object
Acharya et al. BIM-Tracker: A model-based visual tracking approach for indoor localisation using a 3D building model
CN108007456A (en) A kind of indoor navigation method, apparatus and system
TW201715476A (en) Navigation system based on augmented reality technique analyzes direction of users' moving by analyzing optical flow through the planar images captured by the image unit
JP5388921B2 (en) Three-dimensional distance measuring apparatus and method
JP2006349607A (en) Distance measuring device
KR20220054582A (en) Visual positioning method and related apparatus, device and computer readable storage medium
Do et al. A simple camera calibration method for vehicle velocity estimation
JP2010086267A (en) Image processing apparatus for vehicle
JP2017120551A (en) Autonomous traveling device
KR101153221B1 (en) Computation of Robot Location and Orientation using Repeating Feature of Ceiling Textures and Optical Flow Vectors
Varelas et al. An AR indoor positioning system based on anchors
JP6579727B1 (en) Moving object detection device, moving object detection method, and moving object detection program
WO2008032375A1 (en) Image correcting device and method, and computer program
JP2017147689A (en) Video editing device, video editing method, and computer program for editing video
JP5936527B2 (en) Image processing apparatus and image processing method
Goronzy et al. QRPos: Indoor positioning system for self-balancing robots based on QR codes
KR20130022918A (en) Cleaning robot navigationg method using the repeating image patterns of working environment
CN104937608A (en) Road region detection
KR101725685B1 (en) Method and apparatus for detecting localization of mobile robot by ceiling outline detection
KR101578158B1 (en) Device and method for calculating position value
JP2022175768A (en) Position measurement system

Legal Events

Date Code Title Description
N231 Notification of change of applicant
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid