KR20150144729A - 그래디언트 기반 특징점을 이용한 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법 - Google Patents

그래디언트 기반 특징점을 이용한 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법 Download PDF

Info

Publication number
KR20150144729A
KR20150144729A KR1020150086229A KR20150086229A KR20150144729A KR 20150144729 A KR20150144729 A KR 20150144729A KR 1020150086229 A KR1020150086229 A KR 1020150086229A KR 20150086229 A KR20150086229 A KR 20150086229A KR 20150144729 A KR20150144729 A KR 20150144729A
Authority
KR
South Korea
Prior art keywords
gradient
mobile robot
edge
axis direction
information
Prior art date
Application number
KR1020150086229A
Other languages
English (en)
Other versions
KR101725060B1 (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 주식회사 유진로봇
Publication of KR20150144729A publication Critical patent/KR20150144729A/ko
Application granted granted Critical
Publication of KR101725060B1 publication Critical patent/KR101725060B1/ko

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
    • 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/1602Programme controls characterised by the control system, structure, architecture
    • 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/1671Programme controls characterised by programming, planning systems for manipulators characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems
    • 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
    • B25J9/1697Vision controlled systems
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/10Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
    • G01C21/12Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
    • G01C21/16Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
    • G01C21/165Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments
    • G01C21/1656Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments with passive imaging devices, e.g. cameras
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control 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/0251Control 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 3D information from a plurality of images taken from different locations, e.g. stereo vision
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control 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/0253Control 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/027Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means comprising intertial navigation means, e.g. azimuth detector
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0272Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means comprising means for registering the travel distance, e.g. revolutions of wheels
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/13Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/50Extraction of image or video features by performing operations within image blocks; by using histograms, e.g. histogram of oriented gradients [HoG]; by summing image-intensity values; Projection analysis
    • G06V10/507Summing image-intensity values; Histogram projection analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • H04N13/239Image signal generators using stereoscopic image cameras using two 2D image sensors having a relative position equal to or related to the interocular distance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • G06T2207/10021Stereoscopic video; Stereoscopic image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20021Dividing image into blocks, subimages or windows
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/01Mobile robot

Abstract

본 발명에 의한 그래디언트 기반 특징점을 이용한 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법이 개시된다. 본 발명에 따른 이동 로봇의 위치를 인식하기 위한 장치는 이동 로봇이 동작함에 따라 수직 방향과 수평 방향을 포함하는 관심 영역에 대한 한쌍의 스테레오 영상을 획득하는 두 개의 광각 카메라; 및 획득한 상기 스테레오 영상의 각 픽셀에서 x축 방향과 y축 방향으로의 그래디언트를 구하여 그 구한 x축 방향과 y축 방향으로의 그래디언트를 기반으로 에지를 추출하고 추출된 상기 에지를 기반으로 현재의 위치를 추정하는 위치 인식부를 포함한다.

Description

그래디언트 기반 특징점을 이용한 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법 {APPARATUS FOR RECOGNIZING LOCATION MOBILE ROBOT USING KEY POINT BASED ON GRADIENT AND METHOD THEREOF}
본 발명은 이동 로봇의 위치 인식 방법에 관한 것으로서, 특히, 그래디언트 기반 특징점을 이용한 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법에 관한 것이다.
최근 로봇 기술의 발전에 따라 스스로 경로를 설정하고 이동하는 이동 로봇이 활용되고 있다. 이동 로봇이 공간에서 효과적으로 위치를 판단하며 이동하기 위해서는 이동하고 있는 공간에 대한 지도를 생성하면서 공간 상의 자신의 위치를 인식하는 것이 요구된다.
이동 로봇은 자이로스코프와 구동 모터에 구비된 엔코더를 이용하여 추측 항법(dead reckoning)으로 주행하며, 상부에 설치된 카메라를 이용하여 영상을 분석하여 지도를 생성하고, 이때 자이로스코프와 엔코더로부터의 주행 정보에 의한 오차가 발생하는 경우 카메라로부터 획득된 영상 정보를 활용하여 누적되는 오차를 보정한다.
그러나 지금까지 개발된 위치 인식 기반의 이동 로봇은 단안 카메라나 레이저 스캐너를 이용하여 2D 평면 상의 움직임을 가정하여 개발되었다. 이러한 단안 카메라를 이용하는 경우 특징점까지의 거리를 알 수 없게 되므로, 추측 항법의 오차가 커지면 이에 따라 위치 인식 결과에 오차가 매우 많이 포함된다는 문제점이 있다.
또한 이동 로봇에 적용하기에는 레이저 스캐너가 고가이기 때문에 최근에는 스테레오 카메라를 이용하여 공간을 인지하고 자신의 위치를 갱신하는 SLAM(Simultaneous Localization and Mapping) 기술을 이용한 연구가 많이 이루어지고 있다.
이러한 SLAM 기술 기반의 이동 로봇은 코너 특징점을 영상으로부터 추출하고 이들의 3차원 좌표를 복원하여 지도를 작성하고 위치를 인식하는 과정을 거치게 된다.
그러나 복도와 같이 코너 특징점이 매우 적거나 카메라 모션이 매우 빨라서 코너 특징점을 추출하기 어려운 경우에는 위치 인식의 실패율이 높아지는 문제점이 있다.
따라서 이러한 종래 기술의 문제점을 해결하기 위한 것으로, 본 발명의 목적은 x축 방향과 y축 방향으로의 그래디언트를 구하여 구한 그래디언트를 이용하여 크기와 각도를 산출하고 산출된 크기와 각도를 기반으로 NMS(Non-Maximal Suppression) 과정을 통해서 최종적으로 에지 이미지를 추출하도록 하는 그래디언트 기반 특징점을 이용한 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법을 제공하는 데에 있다.
본 발명의 다른 목적은 스테레오 영상을 기반으로 하는 비주얼 오도메트리를 통해 산출된 오도메트리 정보와 관성 정보를 기반으로 하는 내부 오도메트리를 통해 산출된 오도메트리 정보 중 선택된 하나의 오도메트리 정보를 기반으로 위치를 추정하도록 하는 그래디언트 기반 특징점을 이용한 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법을 제공하는 데에 있다.
본 발명의 또 다른 목적은 스테레오 영상으로부터 기 설정된 개수의 수평 라인을 추출하여 그 추출된 수평 라인을 따라 dense 스테레오 정합을 수행하여 그 수행한 결과로 장애물까지의 거리 정보를 획득하도록 하는 그래디언트 기반 특징점을 이용한 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법을 제공하는 데에 있다.
그러나 본 발명의 목적은 상기에 언급된 사항으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
상기 목적들을 달성하기 위하여, 본 발명의 한 관점에 따른 이동 로봇의 위치를 인식하기 위한 장치는 이동 로봇에서 획득한 적어도 한쌍의 스테레오 영상을 입력받는 영상 입력부; 및 상기 입력받은 스테레오 영상의 각 픽셀에서 그래디언트를 제1축 방향과 제2축 방향으로 구하고, 상기 구한 제1축 방향과 제2축 방향으로의 그래디언트를 기반으로 에지를 추출하고, 상기 추출한 에지를 기반으로 상기 이동 로봇의 위치를 추정하는 위치 인식부를 포함할 수 있다.
바람직하게, 이동 로봇의 위치를 인식하기 위한 장치는 상기 스테레오 영상을 획득하는 두개의 카메라를 더 포함할 수 있다.
바람직하게, 상기 제1축과 제2축은 상기 스테레오 영상 면의 좌표계에서 서로 직교하는 서로 다른 축인 것을 특징으로 할 수 있다.
바람직하게, 상기 위치 인식부는, 상기 스테레오 영상의 각 픽셀에서 상기 제1축 방향의 그래디언트와 상기 제2축 방향의 그래디언트를 구하고, 상기 구한 상기 제1축 방향의 그래디언트와 상기 제2축 방향의 그래디언트를 이용하여 상기 그래디언트의 크기와 각도를 산출하고, 상기 산출한 그래디언트의 크기와 각도를 이용하여 에지를 추출하는 것을 특징으로 할 수 있다.
바람직하게, 상기 위치 인식부는 상기 스테레오 영상의 각 픽셀에서, 상기 각 픽셀에 인접한 픽셀들 중 같은 상기 그래디언트의 각도를 갖는 픽셀 중에서, 상기 그래디언트의 크기가 가장 큰 픽셀을 에지로 추출하는 것을 특징으로 할 수 있다.
바람직하게, 상기 위치 인식부는, 상기 스테레오 영상의 각 픽셀에서 상기 제1축 방향의 그래디언트와 상기 제2축 방향의 그래디언트를 구하고, 상기 구한 상기 제1축 방향의 그래디언트와 상기 제2축 방향의 그래디언트를 이용하여 상기 그래디언트의 크기와 각도를 산출하는 그래디언트 산출부; 상기 산출한 그래디언트의 크기와 각도를 이용하여 에지를 추출하는 에지 추출부; 상기 추출한 에지를 이용하여 상기 이동 로봇의 위치를 추정하는 위치 추정부를 포함할 수 있다.
바람직하게, 상기 위치 인식부는, 상기 스테레오 영상에서 추출한 상기 에지를 이용하여 상기 스테레오 영상 간의 스테레오 매칭을 수행하여 깊이 값을 산출하고, 상기 산출한 깊이 값을 이용하여 상기 이동 로봇의 위치를 추정할 수 있다.
바람직하게, 상기 위치 인식부는, 상기 에지를 포함하는 선 상에 위치하는 각 픽셀에서 가장 인접한 기 설정된 개수의 픽셀들까지로 영역을 확장하고, 상기 확장한 영역 내에서 기 설정된 임계치 이상의 상기 그래디언트의 크기를 갖는 적어도 하나 이상의 픽셀을 모두 에지로 추출하는 것을 특징으로 할 수 있다.
바람직하게, 상기 위치 인식부는, 상기 제1축 방향의 그래디언트 Ix와 상기 제2축 방향의 그래디언트 Iy를 이용하여, 상기 그래디언트의 크기 Im을 수학식 Im=(Ix 2+Iy 2)1/2에 의해 산출하는 것을 특징으로 할 수 있다.
바람직하게, 상기 위치 인식부는, 상기 제1축 방향의 그래디언트 Ix와 상기 제2축 방향의 그래디언트 Iy를 이용하여, 상기 그래디언트의 각도 Iθ를 수학식 Iθ=arctan(Iy/Ix)에 의해 산출하는 것을 특징으로 할 수 있다.
바람직하게, 상기 위치 인식부는, 상기 에지를 기반으로 산출된 오도메트리 정보를 이용하여 상태 정보를 예측하고, 상기 예측한 상기 상태 정보와 기 저장된 키 프레임을 이용하여 위치를 추정하는 것을 특징으로 할 수 있다.
바람직하게, 상기 위치 인식부는, 상기 에지를 기반으로 산출된 제1 오도메트리 정보와 관성 정보를 기반으로 산출된 제2 오도메트리 정보 중 하나를 이용하여 상태 정보를 예측하고, 예측된 상기 상태 정보와 기 저장된 키 프레임을 이용하여 위치를 추정하는 것을 특징으로 할 수 있다.
바람직하게, 상기 위치 인식부는, 입력 받은 상기 스테레오 영상을 기 설정된 크기로 축소하여 축소된 상기 스테레오 영상을 브리프 바이너리 서술자를 이용하여 인코딩하여 그 인코딩한 결과로 이진 데이터를 생성하고, 생성된 상기 이진 데이터와 기 저장된 키 프레임 내 이동 로봇의 절대 위치를 나타내는 데이터와 비교하여 그 비교한 결과로 상기 절대 위치로 상기 이동 로봇의 위치를 인식하는 것을 특징으로 할 수 있다.
바람직하게, 상기 위치 인식부는, 상기 제1 오도메트리 정보가 기 설정된 조건을 만족하면 상기 제1 오도메트리 정보를 선택하고, 상기 제1 오도메트리 정보가 기 설정된 조건을 만족하지 못하면 상기 제2 오도메트리 정보를 선택하는 것을 특징으로 할 수 있다.
바람직하게 상기 위치 인식부는, 예측된 상기 상태 정보를 기반으로 기 저장된 키 프레임 집합 중 기 설정된 개수의 이웃하는 키 프레임을 검색하고, 검색된 상기 기 설정된 개수의 이웃하는 키 프레임을 이용하여 상기 이동 로봇의 위치를 추정하는 것을 특징으로 할 수 있다.
또한, 본 발명에 따른 이동 로봇의 위치를 인식하기 위한 장치는 입력받은 상기 스테레오 영상 내에서 기 설정된 개수의 수평 라인을 추출하고 추출된 상기 수평 라인을 따라 스테레오 정합을 수행하여 그 수행한 결과로 장애물까지의 거리 정보를 획득하는 장애물 감지부를 더 포함할 수 있다.
또한, 본 발명에 따른 이동 로봇의 위치를 인식하기 위한 장치는 상기 위치 인식부로부터 추정된 상기 이동 로봇의 위치 정보를 기반으로 자세 그래프를 재구성하고 그 재구성된 자세 그래프를 기반으로 기 저장된 상기 키 프레임의 집합을 업데이트하는 지도 작성부를 더 포함할 수 있다.
본 발명의 다른 한 관점에 따른 이동 로봇의 위치를 인식하기 위한 방법은 이동 로봇에서 획득한 적어도 한쌍의 스테레오 영상을 입력받는 단계; 및 위치 인식부가 상기 입력받은 스테레오 영상의 각 픽셀에서 그래디언트를 제1축 방향과 제2축 방향으로 구하고, 상기 구한 제1축 방향과 제2축 방향으로의 그래디언트를 기반으로 에지를 추출하고, 상기 추출한 에지를 기반으로 상기 이동 로봇의 위치를 추정하는 단계를 포함할 수 있다.
바람직하게 상기 추정하는 단계는, 상기 스테레오 영상의 각 픽셀에서 상기 제1축 방향의 그래디언트와 상기 제2축 방향의 그래디언트를 구하고, 상기 구한 상기 제1축 방향의 그래디언트와 상기 제2축 방향의 그래디언트를 이용하여 상기 그래디언트의 크기와 각도를 산출하고, 상기 산출한 그래디언트의 크기와 각도를 이용하여 에지를 추출하는 것을 특징으로 할 수 있다.
바람직하게 상기 추정하는 단계는, 상기 스테레오 영상의 각 픽셀에서, 상기 각 픽셀에 인접한 픽셀들 중 같은 상기 그래디언트의 각도를 갖는 픽셀 중에서, 상기 그래디언트의 크기가 가장 큰 픽셀을 에지로 추출하는 것을 특징으로 할 수 있다.
바람직하게 상기 추정하는 단계는, 상기 에지를 포함하는 선 상에 위치하는 각 픽셀에서 가장 인접한 기 설정된 개수의 픽셀들까지로 영역을 확장하고, 상기 확장한 영역 내에서 기 설정된 임계치 이상의 상기 그래디언트의 크기를 갖는 적어도 하나 이상의 픽셀을 모두 에지로 추출하는 것을 특징으로 할 수 있다.
바람직하게, 상기 추정하는 단계는, 상기 제1축 방향의 그래디언트 Ix와 상기 제2축 방향의 그래디언트 Iy를 이용하여, 상기 그래디언트의 크기 Im을 수학식 Im=(Ix 2+Iy 2)1/2에 의해 산출하는 것을 특징으로 할 수 있다.
바람직하게, 상기 추정하는 단계는, 상기 제1축 방향의 그래디언트 Ix와 상기 제2축 방향의 그래디언트 Iy를 이용하여, 상기 그래디언트의 각도 Iθ를 수학식 Iθ=arctan(Iy/Ix)에 의해 산출하는 것을 특징으로 할 수 있다.
바람직하게 상기 추정하는 단계는, 상기 에지를 기반으로 산출된 오도메트리 정보를 이용하여 상태 정보를 예측하고, 예측된 상기 상태 정보와 기 저장된 키 프레임을 이용하여 위치를 추정하는 것을 특징으로 할 수 있다.
이를 통해, 본 발명은 x축 방향과 y축 방향으로의 그래디언트를 구하여 구한 그래디언트를 이용하여 크기와 각도를 산출하고 산출된 크기와 각도를 기반으로 NMS(Non-Maximal Suppression) 과정을 통해서 최종적으로 에지 이미지를 추출하도록 함으로써, 코너 특징점들을 추출하기에 용이하지 않은 환경에서 에지 특징점을 추출할 수 있는 효과가 있다.
또한, 본 발명은 본 발명에 따른 스테레오 영상을 기반으로 하는 비주얼 오도메트리를 통해 산출된 오도메트리 정보와 관성 정보를 기반으로 하는 내부 오도메트리를 통해 산출된 오도메트리 정보 중 선택된 하나의 오도메트리 정보를 기반으로 위치를 추정하도록 함으로써, 이동 로봇들이 기울어지거나 미끄러지는 것에 의한 위치 오차를 줄일 수 있는 효과가 있다.
또한, 본 발명은 이동 로봇들이 기울어지거나 미끄러지는 것에 의한 위치 오차에 취약했던 문제를 해결하기 때문에 안정적인 위치 인식이 가능할 수 있는 효과가 있다.
또한, 본 발명은 스테레오 영상으로부터 기 설정된 개수의 수평 라인을 추출하여 그 추출된 수평 라인을 따라 dense 스테레오 정합을 수행하여 그 수행한 결과로 장애물까지의 거리 정보를 획득하도록 함으로써, 고가의 거리 측정을 위한 전용 센서를 부착하지 않더라도 장애물에 대한 거리 정보를 획득할 수 있는 효과가 있다.
도 1은 본 발명의 일 실시예에 따른 이동 로봇의 위치를 인식하기 위한 장치를 나타내는 도면이다.
도 2는 본 발명의 일 실시예에 따른 광각 카메라의 관심 영역을 보여주는 도면이다.
도 3은 본 발명의 일 실시예에 따른 공간 인식 과정을 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시예에 따른 특징점을 추출하는 방법을 나타내는 도면이다.
도 5는 본 발명의 일 실시예에 따라 추출된 에지 이미지를 보여주는 도면이다.
도 6은 본 발명의 일 실시예에 따른 3차원 점의 불확실성을 설명하기 위한 도면이다.
도 7은 본 발명의 일 실시예에 따른 에지에 대한 3차원 정보를 보여주는 도면이다.
도 8은 본 발명의 일 실시예에 따른 장애물 감지 과정을 설명하기 위한 도면이다.
도 9는 본 발명의 일 실시예에 따른 이동 로봇의 위치를 인식하기 위한 방법을 나타내는 도면이다.
이하에서는, 본 발명의 실시예에 따른 그래디언트 기반 특징점을 이용한 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법을 첨부한 도면을 참조하여 설명한다. 본 발명에 따른 동작 및 작용을 이해하는 데 필요한 부분을 중심으로 상세히 설명한다.
또한, 본 발명의 구성 요소를 설명하는 데 있어서, 동일한 명칭의 구성 요소에 대하여 도면에 따라 다른 참조부호를 부여할 수도 있으며, 서로 다른 도면임에도 불구하고 동일한 참조부호를 부여할 수도 있다. 그러나, 이와 같은 경우라 하더라도 해당 구성 요소가 실시예에 따라 서로 다른 기능을 갖는다는 것을 의미하거나, 서로 다른 실시예에서 동일한 기능을 갖는다는 것을 의미하는 것은 아니며, 각각의 구성 요소의 기능은 해당 실시예에서의 각각의 구성 요소에 대한 설명에 기초하여 판단하여야 할 것이다.
특히, 본 발명에서는 x축 방향과 y축 방향으로의 그래디언트를 구하여 구한 그래디언트를 이용하여 그래디언트의 크기와 각도를 산출하고 산출된 그래디언트의 크기와 각도를 기반으로 NMS(Non-Maximal Suppression) 과정을 통해서 최종적으로 에지 이미지를 추출하도록 하는 새로운 방안을 제안한다.
또한 본 발명에서는 스테레오 영상을 기반으로 하는 비주얼 오도메트리(visual odometry)를 통해 산출된 오도메트리 정보와 관성 정보를 기반으로 하는 내부 오도메트리(internal odometry)를 통해 산출된 오도메트리 정보 중 선택된 하나의 오도메트리 정보를 기반으로 위치를 추정하며, 스테레오 영상으로부터 기 설정된 개수의 수평 라인을 추출하여 그 추출된 수평 라인을 따라 dense 스테레오 정합을 수행하여 그 수행한 결과로 장애물까지의 거리 정보를 획득한다.
도 1은 본 발명의 일 실시예에 따른 이동 로봇의 위치를 인식하기 위한 장치를 나타내는 도면이다.
본 발명의 일 실시예에 따른 이동 로봇의 위치를 인식하기 위한 장치는 영상 입력부(130a)와 위치 인식부(130)를 포함할 수 있다. 여기서 본 발명의 일 실시예에 따른 이동 로봇의 위치를 인식하기 위한 장치는 필요에 따라 카메라(110), IMU(Inertial Measurement Unit)(120), 장애물 감지부(140), 지도 작성부(150), DB(Database)(160) 중 적어도 어느 하나 이상을 더 포함할 수도 있다.
영상 입력부(130a)는 이동 로봇에서 획득한 적어도 한쌍의 스테레오 영상을 입력받을 수 있다. 이때 상기 스테레오 영상은 이동 로봇에 구비된 두개의 카메라를 이용하여 획득된 영상이 될 수 있다.
카메라(110)는 한쌍의 스테레오 영상 즉, 좌측 영상과 우측 영상을 획득하기 위해 2개가 구비될 수 있다. 여기서 2개의 카메라라 함은 2개의 서로 다른 렌즈를 이용하여 2개의 시각에서 영상을 획득하는 것을 의미하는 것으로, 하나의 영상 획득 장치에 2개의 렌즈를 구비하여 2개의 영상을 획득하는 경우를 포함함은 물론이다. 이때, 카메라(110)는 기 설정된 관심 영역을 갖도록 장착될 수 있다. 여기서 관심 영역이란 이동 로봇에 구비된 카메라(110)를 이용하여 촬영하고자 하는 영역이 될 수 있다.
또한 여기서 카메라(110)는 바람직하게는 광각 카메라가 될 수 있다. 광각 카메라는 일반 카메라 렌즈와 비교하였을 때 보다 넓은 화각을 가지는 광각 렌즈를 이용하여 촬영하는 카메라이다. 이동 로봇에서는 보다 넓은 주변 영상을 획득하기 위하여 광각 카메라를 이용하는 것이 바람직하다. 예를 들면 광각 카메라는 어안 렌즈를 이용한 카메라가 될 수 있다. 그리고 여기서 광각 카메라는 예를 들면 60도 내지 270도의 화각을 가지는 광각 렌즈를 이용할 수 있다. 본 발명에의 광각 카메라는 위에서 일예로 든 화각의 범위에 한정되지 아니하고 다양한 범위의 화각을 가지는 렌즈를 이용한 카메라가 될 수 있다.
도 2는 본 발명의 일 실시예에 따른 광각 카메라의 관심 영역을 보여주는 도면이다.
도 2에 도시한 바와 같이, 본 발명에 따른 두 개의 카메라(110)는 기존의 이동 로봇에 장착된 카메라처럼 실내의 천정이나 전방만을 바라보지 않고, 광각 렌즈를 이용하여 이동 로봇(10)에서 천정과 전방 모두를 바라보도록 장착하여 천정과 전방을 모두 관심 영역(ROI)으로 가질 수 있다.
예컨대, 카메라는 광각 렌즈를 이용하여 수평 방향과 수직 방향의 영역을 모두 촬영할 수 있다.
본 발명은 이렇게 장착된 카메라(110)를 이용하여 천정과 전방을 모두 관심 영역으로 갖게 됨으로써, 특징점 확보가 용이해질 뿐 아니라 특징점을 찾기가 어려운 지점에서도 위치 인식이 가능하고, 전방에 대한 장애물 인식도 가능하게 된다.
IMU(120)는 이동 로봇의 관성 정보 예컨대, 위치, 자세 등의 정보를 측정할 수 있다.
위치 인식부(130)는 카메라(110)로부터 스테레오 영상을 입력 받아 입력받은 스테레오 영상을 기반으로 일정 거리를 이동할 때마다 주어진 공간을 인식할 수 있다.
도 3은 본 발명의 일 실시예에 따른 공간 인식 과정을 설명하기 위한 도면이다.
도 3에 도시한 바와 같이, 위치 인식부(130)는 일정 거리를 이동할 때마다 또는 새로운 키 프레임을 생성할 때마다 주어진 공간을 인식하여 데이터베이스화할 수 있다.
위치 인식부(130)는 입력 받은 스테레오 영상을 기 설정된 크기로 축소하여 블러링(blurring)할 수 있다. 여기서, 기 설정된 크기는 1/8 크기인 것이 바람직하다. 도 3을 참조하면 위치 인식부(130)는 입력 받은 스테레오 영상 (a)를 축소하고 블러링한 영상 (b)를 생성할 수 있다.
위치 인식부(130)는 블러링된 스테레오 영상을 브리프(BRIEF, Binary Robust Independent Elementary Features) 바이너리 서술자(BRIEF binary descriptor)를 이용하여 인코딩하여 그 인코딩한 결과로 이진 데이터를 생성할 수 있다. 여기서 브리프 바이너리 서술자는 "{BRIEF}: Computing a Local Binary Descriptor Very Fast, M. Calonder, V. Lepetit, M. Ozuysal, T. Trzcinski, C. Strecha, and P. Fua IEEE Transactions on Pattern Analysis and Machine Intelligence 2012"에서 소개하고 있는 방식을 이용하여 인코딩할 수 있다. 여기서, 이진 데이터는 예를 들면 32바이트(Byte) 크기로 생성될 수 있다. 도 3의 (c)는 이와 같은 브리프 바이너리 서술자를 나타내는 참고도이다.
위치 인식부(130)는 이렇게 생성된 이진 데이터와 기 저장된 키 프레임 내 이동 로봇의 절대 위치를 나타내는 데이터와 비교하여 그 비교한 결과로 기 설정된 범위 이내에 있는 경우 그 절대 위치로 현재의 위치를 인식할 수 있다.
이렇게 본 발명에서 공간 인식을 위해 브리프 바이너리 서술자를 이용하는 이유는 기존에 사용하던 SIFT, SURF와 같은 서술자에 비해 연산 속도가 매우 빠르기 때문이다.
위치 인식부(130)는 카메라(110)로부터 스테레오 영상을 입력 받아 입력 받은 스테레오 영상을 기반으로 하는 비주얼 오도메트리를 통해 제1 오도메트리 정보를 획득하고, IMU(120)으로부터 관성 정보를 입력 받아 입력 받은 관성 정보를 기반으로 하는 내부 오도메트리를 통해 제2 오도메트리 정보를 획득할 수 있다.
이때, 위치 인식부(130)는 스테레오 영상으로부터 특징점을 추출하여 추출된 특징점을 추적하고 그 추적하는 특징점을 이용하여 오도메트리 정보를 획득할 수 있다.
일반적으로 전처리 과정에서 추출되는 특징점은 코너이다. 그러나 예컨대, 복도나 넓은 사무실 등의 텍스쳐가 없는 영역에서는 충분한 양의 특징점을 구하는 것이 불가능하다.
위치 인식부(130)는 이를 해결하기 위해 에지에 대한 스테레오 매칭을 수행한다. 즉, 위치 인식부(130)는 스테레오 영상으로부터 에지를 추출하고, 추출된 에지에 대해 sparse 스테레오 매칭(sparse stereo matching)을 수행할 수 있다. 여기서 sparse 스테레오 매칭은 dense 스테레오 매칭과 대별되는 개념으로 스테레오 영상 간에 매칭을 수행함에 있어서 정확한 매칭 결과를 산출하기 보다는 대강의 매칭을 빠르게 수행하는 매칭 방법으로, 매칭 간격을 조절하거나 매칭을 위하여 탐색하는 범위를 조정하는 등의 기존의 다양한 방법을 이용할 수 있다.
특히, 본 발명에서는 코너 특징점들을 추출하기에 용이하지 않은 환경에서도 특징점을 추출하기 위해 그래디언트(gradient)를 이용하여 에지 이미지를 추출하고자 한다.
위치 인식부(130)는 상기 입력받은 스테레오 영상의 각 픽셀에서 그래디언트를 제1축 방향과 제2축 방향으로 구하고, 상기 구한 제1축 방향과 제2축 방향으로의 그래디언트를 기반으로 에지를 추출하고, 상기 추출한 에지를 기반으로 상기 이동 로봇의 위치를 추정할 수 있다. 여기서 이동 로봇의 위치는 현재 기준 시점의 위치가 될 수 있다.
상기 제1축과 제2축은 상기 스테레오 영상 면의 좌표계에서 서로 직교하는 서로 다른 축이 될 수 있고, 바람직하게는 x, y축으로 이루어지는 직교 좌표계의 x축과 y축이 각각 될 수 있다. 이하에서는 제1축과 제2축을 x축과 y축으로 하여 위치 인식부(130)의 동작에 대하여 설명한다. 이하에서 x축과 y축을 참조하면서 설명한 위치 인식부(130)의 동작은 상기 제1축과 제2축에 대하여도 동일하게 적용될 수 있다.
도 4는 본 발명의 일 실시예에 따른 특징점을 추출하는 방법을 나타내는 도면이다.
도 4에 도시한 바와 같이, 본 발명에 따른 위치 인식부(130)는 스테레오 영상의 각 픽셀에서 제1축인 x축 방향과 제2축인 y축 방향으로의 그래디언트 Ix, Iy를 구할 수 있다(S410).
다음으로, 위치 인식부(130)는 구한 x축 방향과 y축 방향으로의 그래디언트 Ix, Iy를 이용하여 그래디언트의 크기(magnitude) Im을 산출할 수 있는데(S420), 다음의 [수학식 1]과 같다.
[수학식 1]
Figure pat00001
다음으로, 위치 인식부(130)는 구한 x축 방향과 y축 방향으로의 그래디언트 Ix, Iy를 이용하여 그래디언트의 각도(angle) Iθ를 산출할 수 있는데(S430), 다음의 [수학식 2]와 같다.
[수학식 2]
Figure pat00002
다음으로, 위치 인식부(130)는 산출된 각 픽셀의 그래디언트의 크기 Im와 그래디언트의 각도 Iθ를 기반으로 NMS(Non-Maximal Suppression) 과정을 통해서 최종적으로 에지 이미지를 추출할 수 있다(S440).
즉, 위치 인식부(130)는 해당 픽셀의 그래디언트의 각도 Iθ를 기준으로 인접한 픽셀들 중 같은 각도를 갖는 픽셀 중에서 그래디언트의 크기 Im이 가장 큰 픽셀을 최대값(maxima)로 선택할 수 있다.
이러한 과정을 모든 픽셀에 적용하여 하나의 라인으로 이루어진 에지가 추출될 수 있다.
그리고 나서, 위치 인식부(130)는 에지를 이루는 라인 상에 위치하는 각 픽셀에서 가장 인접한 기 설정된 개수의 픽셀들까지 영역을 확장하여 확장된 영역 내에서 기 설정된 임계치 이상의 크기를 갖는 픽셀을 에지로 선택할 수 있다.
예컨대, 위치 인식부(130)는 해당 픽셀에서 가장 인접한 두 개의 픽셀들까지로 영역을 확장하여 확장된 영역 내 픽셀들 중 임계치 이상의 크기를 갖는 픽셀을 모두 에지로 선택한다.
이러한 과정을 모든 픽셀에 적용함으로써, NMS에 의한 하나의 라인으로 이루어진 에지에서 확장된 다수의 라인으로 이루어진 최종적인 에지 이미지가 추출될 수 있다.
여기서 NMS(Non-Maximal Suppression) 과정은 예를 들면 "Canny, J., A Computational Approach To Edge Detection, IEEE Trans. Pattern Analysis and Machine Intelligence, 8(6):679~698, 1986."에서 소개하고 있는 Non-Maximal Suppression 기법을 이용할 수 있고, 그 이외에 다양한 방식의 Non-Maximal Suppression 기법을 사용할 수도 있다.
도 5는 본 발명의 일 실시예에 따라 추출된 에지 이미지를 보여주는 도면이다.
도 5에 도시한 바와 같이, 도 5 (a)와 같은 스테레오 영상으로부터 도 5 (b)와 같은 에지 이미지를 추출하되, 효과적으로 강한 그래디언트를 갖는 에지 이미지를 추출할 수 있음을 알 수 있다.
도 6은 본 발명의 일 실시예에 따른 3차원 점의 불확실성을 설명하기 위한 도면이다.
도 6에 도시한 바와 같이, 위치 인식부(130)는 수행한 결과로 구한 깊이 값에 따라 불확실성(uncertainty) σ를 설정하고 DB에 저장할 수 있다. 광각 카메라의 경우 초점 길이(focal length)가 매우 짧아 해상도가 낮아져서 구한 깊이 값의 신뢰도가 떨어지기 때문에 이후에 업데이트를 수행한다.
도 6을 참조하면, 두 개의 카메라를 이용하여 구한 3차원점의 불확실성은 다음의 [수학식 3]과 같다.
[수학식 3]
Figure pat00003
여기서,
Figure pat00004
는 불확실성 공분산 타원체(uncertainty covariance ellipsoid)를 나타내고, b는 카메라 사이의 거리를 나타내며, x, y, z는 좌영상 카메라의 좌표계, x', y', z'은 우영상 카메라의 좌표계를 나타내고, (c, r)과 (c', r')는 좌영상과 우영상에서 서로 매칭하는 픽셀의 좌표를 나타내고, f와 f'는 각각 좌영상 카메라와 우영상 카메라의 초점 거리를 나타내며, σr, σc는 특징점을 추출할 때의 상기 불확실성을 좌표계의 각 축으로 표현한 것이며, r0, c0는 카메라의 광축을 카메라 좌표계로 표현한 것이다. 그리고, d는 특징점이 좌측과 우측에 투영되었을 때 그 차이값으로 일반적으로는 시차(disparity)라고 한다.
이동 로봇이 일정 거리를 이동하였다고 판단되는 시점에서 키 프레임에 저장된 각 픽셀들을 현재의 영상에 투영시켜 가장 비슷한 픽셀을 찾아 깊이 값을 업데이트한다. 이러한 업데이트는 일반적인 베이시안 룰을 적용하여 수행할 수 있다.
이때, 이동 로봇이 동작하는 중에는 다양한 변수 특히, 움직이는 장애물이나 가려짐에 의해 잘못된 정보들이 들어오게 되고 이를 기반으로 구한 깊이 값 중에는 이상점(outlier)이 존재한다.
이러한 문제를 해결하기 위해, 구한 깊이 값이 1Σ 이내이면 변수 no_success를 1 증가시키고, 구한 깊이 값이 1Σ보다 크면, 변수 no_failure를 1 증가시킨 후 신뢰도 no_success/(no_success+no_failure)가 특정 수치 이상 큰 경우에만 위치 인식에 사용한다.
이렇게 깊이 값을 업데이트하는데 사용되는 베이시안 룰은 다음의 [수학식 4]와 같다.
[수학식 4]
Figure pat00005
Figure pat00006
여기서는 깊이 값 z에 대한 업데이트 과정을 설명하고 있지만, x와 y 값은 z에 따라 변화하기 때문에 x, y, z가 모두 업데이트 되어 위치 파악이 가능하고 이렇게 업데이트된 x, y, z를 이용하여 역으로 해당 카메라의 위치 파악도 가능하게 된다.
도 7은 본 발명의 일 실시예에 따른 에지에 대한 3차원 정보를 보여주는 도면이다. 도 7의 (a)는 좌영상 카메라에 투영된 깊이 값을 나타내는 영상이고, (b)는 우영상 카메라에 투영된 깊이 값을 나타내는 영상이고, (c)는 업데이트 과정을 거쳐 획득된 깊이 값을 나타내는 영상이고, (d)는 매칭점 및 깊이 값에 대한 투영을 나타내는 영상이다.
도 7에 도시한 바와 같이, 앞에서 설명한 깊이 값에 대한 업데이트를 반복적으로 수행하게 되면 각 에지에 대한 3차원 정보를 지속적으로 구할 수 있음을 볼 수 있다.
또한, IMU의 정보는 카메라로 환경을 인지하기 어려운 상황에서 매우 중요하다. 그러나 저가형 IMU들은 모두 바이어스(bias)가 심하게 변하거나 추정하기가 매우 어렵다. 이를 해결하기 위한 방법은 로봇을 잠시 멈추고 평균을 취하여 바이어스를 구하는 것인데 이 경우에는 사용자 입자에서 이동 로봇이 지능적으로 보이지 않을 뿐만 아니라 작업 속도도 떨어지게 되는 단점이 있다.
위치 인식부(130)는 이를 해결하기 위해 이동 중에도 바이어스를 업데이트한다.
θg는 자이로 센서를 통해 구한 각속도이고, θc는 광각 스테레오 비전을 통해 구한 각속도라고 가정한다. 이동 로봇의 주행 중에는 바이어스 등에 의해서 둘 사이에 오차가 발생하게 된다. 이 오차 θe는 다음의 [수학식 5]와 같이 정의할 수 있다.
[수학식 5]
θe = θg - θc
이때, θe는 바이어스가 될 수 있고, 빠른 회전이나 외란이 발생하는 경우에는 다음의 [수학식 6]과 같이 베이시안 룰을 적용하여 바이어스를 업데이트한다.
[수학식 6]
If, |θ|<thresholdmoving, μn= θe, σ2=1deg/sec×0.1deg/sec
이동 로봇이 이동 중 멈출 수 있는 시점에는 다음의 [수학식 7]과 같이 업데이트한다.
[수학식 7]
If, |θ|<thresholdstop, μn= θe, σ2=0.1deg/sec×0.1deg/sec
이러한 업데이트 과정을 통해 바이어스는 실시간으로 보정되기 때문에 순간적으로 카메라를 사용할 수 없는 시점이 되더라도 항상 최적의 바이어스를 이용하여 IMU를 이용한 오도메트리 정보가 일정 수준 이상의 정확도를 유지할 수 있게 된다.
여기서 위치 인식부(130)는, 상기 스테레오 영상의 각 픽셀에서 상기 제1축 방향의 그래디언트와 상기 제2축 방향의 그래디언트를 구하고, 상기 구한 상기 제1축 방향의 그래디언트와 상기 제2축 방향의 그래디언트를 이용하여 그래디언트의 크기와 각도를 산출하는 그래디언트 산출부(131); 상기 산출한 그래디언트의 크기와 각도를 이용하여 에지를 추출하는 에지 추출부(132); 상기 추출한 에지를 이용하여 상기 이동 로봇의 현재의 위치를 추정하는 위치 추정부(133)를 포함할 수 있다.
여기서 위치 인식부(130)는, 상기 스테레오 영상에서 추출한 상기 에지를 이용하여 상기 스테레오 영상 간의 스테레오 매칭을 수행하여 상기 스테레오 영상 에 포함된 픽셀에서의 시차 값 또는 깊이 값을 산출하고, 상기 산출한 시차 값 또는 깊이 값을 이용하여 상기 이동 로봇의 현재의 위치를 추정할 수 있다. 즉 각 스테레오 영상에서 추출한 에지에 해당하는 픽셀에서 상기 스테레오 영상 간의 스테레오 매칭을 수행하여 시차 값 또는 깊이 값을 산출하고, 상기 시차 값 또는 깊이 값과 카메라의 광축 정보, 초점거리 정보, 스테레오 카메라 사이의 거리 정보를 이용하여 상기 이동 로봇의 현재의 위치를 추정할 수 있다. 즉 스테레오 영상의 특정 픽셀에서의 시차 값 또는 깊이 값과 스테레오 영상을 획득한 카메라의 스펙 정보(광축, 초점거리, 카메라 간 거리)를 알면 해당 픽셀에서의 3차원 좌표를 복원할 수 있고, 스테레오 영상에 포함된 픽셀들에서의 3차원 좌표를 통하여 상대적으로 이동 로봇의 위치를 파악할 수 있는 것이다.
예를 들면 광축 u0와 v0를 알고 초점거리 f와 카메라 사이의 거리 b를 알며 스테레오 매칭을 통해서 시차 값(disparity) d를 알 때 복원된 3차원 좌표 (x, y, z)는
Figure pat00007
와 같다.
또한 여기서 스테레오 영상의 깊이 값을 이용하여 스테레오 영상을 취득한 물체의 위치를 파악하는 방법은 기존의 다양한 기법들을 이용할 수 있다.
위치 인식부(130)는 제1 오도메트리 정보와 제2 오도메트리 정보 중 하나의 오도메트리 정보를 선택하여 선택된 오도메트리 정보를 기반으로 현재의 상태 정보 예컨대, 자세, 위치 등을 예측할 수 있다.
위치 인식부(130)는 예측된 상태 정보를 기반으로 기 저장된 키 프레임 집합 중 기 설정된 개수의 이웃하는 키 프레임을 이용하여 현재의 위치를 추정할 수 있다. 여기서, 키 프레임은 주기적으로 측정된 이동 로봇의 상태 정보를 포함할 수 있다.
장애물 감지부(140)는 카메라(110)로부터 스테레오 영상을 입력받아 입력 받은 스테레오 영상 내에서 기 설정된 개수의 수평 라인을 추출할 수 있다. 여기서, 기 설정된 개수는 적어도 2개 이상을 사용하되, 특히 3개인 것이 바람직하다.
장애물 감지부(140)는 추출된 수평 라인을 따라 dense 스테레오 정합(dense stereo matching)을 수행하여 그 수행한 결과로 장애물까지의 거리 정보를 획득할 수 있다. 여기서 dense 스테레오 매칭은 sparse 스테레오 매칭과 대별되는 개념으로, 스테레오 영상 간에 매칭을 수행함에 있어서 정확한 매칭 결과를 산출하기 위한 매칭 방법이다. 이를 위하여 매칭 간격을 조절하거나 매칭을 위하여 탐색하는 범위를 조정하는 등의 기존의 다양한 방법을 이용할 수 있다.
도 8은 본 발명의 일 실시예에 따른 장애물 감지 과정을 설명하기 위한 도면이다.
도 8에 도시한 바와 같이, 장애물 감지부(140)는 입력 받은 도 8의 (a)와 (b)와 같은 좌, 우 스테레오 영상을 기반으로 고밀도 스테레오 매칭을 수행하여 그 수행한 결과로 깊이 값을 산출할 수 있다. 여기서 도 8 (c) 영상은 이렇게 산출된 깊이 값을 그레이스케일로 표현하고 있다. 그리고 도 8 (c)은 장애물 감지에 이용되는 라인 영역(L)을 나타내고 있다.
이때, 전체 영역에 대한 깊이 값 산출은 소형 프로세서를 탑재한 이동 로봇에서는 불가능하기 때문에 본 발명에서는 일부 영역에 대해서만 깊이 값을 추출하고자 한다.
지도 작성부(150)는 위치 인식부(130)로부터 추정된 현재의 위치 정보를 제공 받아 제공 받은 위치 정보를 기반으로 자세 그래프(pose graph)를 재구성하고 그 재구성된 자세 그래프를 기반으로 기 저장된 키 프레임 집합을 업데이트할 수 있다.
DB(160)는 이동 로봇의 움직임에 따라 생성된 키 프레임 집합을 저장할 수 있다.
본 발명의 또 다른 실시예에 따른 이동 로봇의 위치를 인식하기 위한 방법은 이동 로봇에서 획득한 적어도 한쌍의 스테레오 영상을 입력받는 단계; 및 위치 인식부가 상기 입력받은 스테레오 영상의 각 픽셀에서 제1축 방향과 제2축 방향으로의 그래디언트를 구하고, 상기 구한 제1축 방향과 제2축 방향으로의 그래디언트를 기반으로 에지를 추출하고, 상기 추출한 에지를 기반으로 상기 이동 로봇의 위치를 추정하는 단계를 포함할 수 있다. 상기 이동 로봇의 위치를 인식하기 위한 방법은 상술한 이동 로봇의 위치를 인식하기 위한 장치가 동작하는 방식과 동일한 방식으로 동작할 수 있다. 이에 중복되는 부분은 생략하고 간략히 서술한다.
여기서 상기 추정하는 단계는, 상기 스테레오 영상의 각 픽셀에서 상기 제1축 방향의 그래디언트와 상기 제2축 방향의 그래디언트를 구하고, 상기 구한 상기 제1축 방향의 그래디언트와 상기 제2축 방향의 그래디언트를 이용하여 그래디언트의 크기와 각도를 산출하고, 상기 산출한 그래디언트의 크기와 각도를 이용하여 에지를 추출할 수 있다.
여기서 상기 추정하는 단계는, 상기 스테레오 영상의 각 픽셀에서, 상기 각 픽셀에 인접한 픽셀들 중 같은 상기 그래디언트의 각도를 갖는 픽셀 중에서, 상기 그래디언트의 크기가 가장 큰 픽셀을 에지로 추출할 수 있다.
여기서 상기 추정하는 단계는, 상기 에지를 포함하는 선 상에 위치하는 각 픽셀에서 가장 인접한 기 설정된 개수의 픽셀들까지로 영역을 확장하고, 상기 확장한 영역 내에서 기 설정된 임계치 이상의 상기 그래디언트의 크기를 갖는 적어도 하나 이상의 픽셀을 모두 에지로 추출할 수 있다.
여기서 상기 추정하는 단계는, 상기 제1축 방향의 그래디언트 Ix와 상기 제2축 방향의 그래디언트 Iy를 이용하여, 상기 그래디언트의 크기 Im을 수학식
Im=(Ix 2+Iy 2)1/2에 의해 산출할 수 있다.
여기서 상기 추정하는 단계는, 상기 제1축 방향의 그래디언트 Ix와 상기 제2축 방향의 그래디언트 Iy를 이용하여, 상기 그래디언트의 각도 Iθ를 수학식 Iθ=arctan(Iy/Ix)에 의해 산출할 수 있다.
도 9는 본 발명의 일 실시예에 따른 이동 로봇의 위치를 인식하기 위한 방법을 나타내는 도면이다.
도 9에 도시한 바와 같이, 본 발명에 따른 이동 로봇의 위치를 인식하기 위한 장치(이하 위치인식 장치라 한다)는 카메라로부터 스테레오 영상을 입력 받으면(S910), 입력 받은 스테레오 영상으로부터 특징점을 추출하고 추출된 특징점을 프레임 단위로 지속적으로 추적할 수 있다(S920).
이때, 위치인식 장치는 입력 받은 스테레오 영상으로부터 코너(corner)가 아닌 그래디언트를 이용한 에지를 추출하여 추출된 에지를 프레임 단위로 지속적으로 추적한다.
다음으로, 위치인식 장치는 스테레오 영상 내 이동 객체를 제거할 수 있다(S930).
예컨대, 위치인식 장치는 현재의 프레임과 마지막 n번째 프레임을 비교하여 그 비교한 결과로 이동 객체라도 판단될 수 있는 일치하지 않는 특징을 제거하게 된다.
다음으로, 위치인식 장치는 추적하는 특징점을 기반으로 비주얼 오도메트리를 수행하여 그 수행한 결과로 제1 오도메트리 정보를 획득하고(S940), 관성 정보를 기반으로 하는 내부 오도메트리를 통해 제2 오도메트리 정보를 획득할 수 있다(S942).
다음으로, 위치인식 장치는 획득한 제1 오도메트리 정보와 제2 오도메트리 정보 중 하나의 오도메트리 정보를 선택하고(S950), 선택된 오도메트리 정보와 자세 정보를 이용하여 상태 정보를 예측할 수 있다(S960).
이때, 위치인식 장치는 제1 오도메트리 정보가 기 설정된 조건을 만족하면 제1 오도메트리 정보를 선택하고, 만족하지 못하면 제2 오도메트리 정보를 선택하게 된다.
여기서 기 설정된 조건을 만족하는지를 판단하는 것은 오도메트리 정보 예컨대, 위치 정보의 변화율이 기 설정된 임계치 이내인지를 판단하는 것을 의미할 수 있다.
다음으로, 위치인식 장치는 예측된 상태 정보를 기반으로 기 저장된 키 프레임 집합 중 기 설정된 개수의 이웃하는 키 프레임을 검색하고(S970), 검색된 기 설정된 개수의 이웃하는 키 프레임을 이용하여 현재의 위치를 추정할 수 있다(S980).
이때, 이웃하는 키 프레임의 개수가 많을수록 위치를 정확하게 추정할 수 있다.
본 실시예에 따른 위치 인식 장치는 자율 주행하는 청소로봇, 서비스 로봇에 적용될 수 있다. 예를 들어, 청소로봇은 실내 환경, 또는 실외 환경에서 자율 주행하는데, 주행 중 벽면, 난간, 책상, 가구 등 다양한 장애물과 마주치게 되고, 자율 주행 청소로봇은 청소 구역에서의 자신의 위치와, 파악된 장애물의 위치를 이용하여 주행 경로를 결정하여 주행한다. 본 실시예에 따라 자율 주행 청소 로봇은 외부 영상 획득을 위하여, 스테레오 카메라 특히 광각 스테레오 카메라를 영상 획득부로 포함하며, 이를 통해 획득된 외부 환경에 대한 정보, 특히 에지와 관련된 특징점을 이용하여 자신의 위치를 추정하고, 주행 경로를 결정하며 주행하도록 구현될 수 있다.
특히, SLAM(Simultaneous Localization And Map-Building)을 기반으로 자율 주행하는 청소로봇의 경우, 구축된 격자 맵에서 자신의 위치를 추정하고, 장애물의 위치를 추정하며, 추정된 위치 관계를 이용하여 장애물과의 충돌을 피하기 위한 주행경로를 결정하거나, 또는 최적 경로를 결정하는데 본 실시예가 이용될 수 있다.
본 실시예에서 오도메트리 정보는 예를 들어, 이동 로봇에 장착된 휠이나, 레그 조인트(legged joint)에 있는 회전 인코더(rotary encoders)로부터 획득되는 정보이다. 오도메트리 정보를 이용하여, 이동 로봇의 주행 거리, 바퀴의 회전 수와 같은 상태 정보를 계산할 수 있다. 또한, 상태 정보를 통해 현재 이동 로봇이 위치하는 공간을 파악할 수 있으므로, 이를 통해 영상 처리에 있어서 키 프레임을 결정하는데 사용할 수 있다.
상술한 본 발명의 실시예에 따른 위치 인식을 위한 방법은, 컴퓨터에서 판독가능한 소프트웨어의 형태로 구현될 수 있으며, 이러한 소프트웨어는 자율 주행 청소 로봇 내에 탑재된 프로세서에서 실행될 수 있다.
한편, 이상에서 설명한 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합하거나 결합하여 동작하는 것으로 기재되어 있다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 또한, 이와 같은 컴퓨터 프로그램은 USB 메모리, CD 디스크, 플래쉬 메모리 등과 같은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 캐리어 웨이브 매체 등이 포함될 수 있다.
이상에서 설명한 실시예들은 그 일 예로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
130a: 영상 입력부
110: 카메라
120: IMU
130: 위치 인식부
140: 장애물 감지부
150: 지도 작성부
160: DB

Claims (22)

  1. 이동 로봇에서 획득한 적어도 한쌍의 스테레오 영상을 입력받는 영상 입력부; 및
    입력받은 상기 스테레오 영상의 각 픽셀에서 그래디언트를 제1축 방향과 제2축 방향으로 구하고, 구한 상기 제1축 방향과 상기 제2축 방향으로의 그래디언트를 기반으로 에지를 추출하고, 추출한 상기 에지를 기반으로 상기 이동 로봇의 위치를 추정하는 위치 인식부;
    를 포함하는 이동 로봇의 위치를 인식하기 위한 장치.
  2. 제 1 항에 있어서,
    상기 스테레오 영상을 획득하는 두개의 카메라를 더 포함하는 이동 로봇의 위치를 인식하기 위한 장치.
  3. 제 1 항에 있어서,
    상기 제1축과 제2축은 상기 스테레오 영상 면의 좌표계에서 서로 직교하는 서로 다른 축인 것을 특징으로 하는 이동 로봇의 위치를 인식하기 위한 장치.
  4. 제 1 항에 있어서,
    상기 위치 인식부는,
    상기 스테레오 영상의 각 픽셀에서 상기 제1축 방향의 그래디언트와 상기 제2축 방향의 그래디언트를 구하고,
    상기 구한 상기 제1축 방향의 그래디언트와 상기 제2축 방향의 그래디언트를 이용하여 상기 그래디언트의 크기와 각도를 산출하고,
    산출한 상기 그래디언트의 크기와 각도를 이용하여 상기 에지를 추출하는 것을 특징으로 하는 이동 로봇의 위치를 인식하기 위한 장치.
  5. 제 4 항에 있어서,
    상기 위치 인식부는
    상기 스테레오 영상의 각 픽셀에서, 상기 각 픽셀에 인접한 픽셀들 중 같은 상기 그래디언트의 각도를 갖는 픽셀 중에서, 상기 그래디언트의 크기가 가장 큰 픽셀을 상기 에지로 추출하는 것을 특징으로 하는 이동 로봇의 위치를 인식하기 위한 장치.
  6. 제 4 항에 있어서,
    상기 위치 인식부는,
    상기 에지를 포함하는 선 상에 위치하는 각 픽셀에서 가장 인접한 기 설정된 개수의 픽셀들까지로 영역을 확장하고,
    확장한 상기 영역 내에서 기 설정된 임계치 이상의 상기 그래디언트의 크기를 갖는 적어도 하나 이상의 픽셀을 모두 상기 에지로 추출하는 것을 특징으로 하는 이동 로봇의 위치를 인식하기 위한 장치.
  7. 제 4 항에 있어서,
    상기 위치 인식부는,
    상기 스테레오 영상의 각 픽셀에서 상기 제1축 방향의 그래디언트와 상기 제2축 방향의 그래디언트를 구하고, 상기 구한 상기 제1축 방향의 그래디언트와 상기 제2축 방향의 그래디언트를 이용하여 상기 그래디언트의 크기와 각도를 산출하는 그래디언트 산출부;
    상기 산출한 그래디언트의 크기와 각도를 이용하여 상기 에지를 추출하는 에지 추출부;
    상기 추출한 에지를 이용하여 상기 이동 로봇의 위치를 추정하는 위치 추정부를 포함하는 것을 특징으로 하는 이동 로봇의 위치를 인식하기 위한 장치.
  8. 제 4 항에 있어서,
    상기 위치 인식부는,
    상기 제1축 방향의 그래디언트 Ix와 상기 제2축 방향의 그래디언트 Iy를 이용하여, 상기 그래디언트의 크기 Im을 수학식 Im=(Ix 2+Iy 2)1/2에 의해 산출하고,
    상기 제1축 방향의 그래디언트 Ix와 상기 제2축 방향의 그래디언트 Iy를 이용하여, 상기 그래디언트의 각도 Iθ를 수학식 Iθ=arctan(Iy/Ix)에 의해 산출하는 것을 특징으로 하는 이동 로봇의 위치를 인식하기 위한 장치.
  9. 제 1 항에 있어서,
    상기 위치 인식부는,
    상기 스테레오 영상에서 추출한 상기 에지를 이용하여 상기 스테레오 영상 간의 스테레오 매칭을 수행하여 깊이 값을 산출하고, 산출한 상기 깊이 값을 이용하여 상기 이동 로봇의 위치를 추정하는 것을 특징으로 하는 이동 로봇의 위치를 인식하기 위한 장치.
  10. 제 1 항에 있어서,
    상기 위치 인식부는,
    상기 에지를 기반으로 산출된 오도메트리 정보를 이용하여 상태 정보를 예측하고, 예측한 상기 상태 정보와 기 저장된 키 프레임을 이용하여 상기 이동 로봇의 위치를 추정하는 것을 특징으로 하는 이동 로봇의 위치를 인식하기 위한 장치.
  11. 제 1 항에 있어서,
    상기 위치 인식부는,
    상기 에지를 기반으로 산출된 제1 오도메트리 정보와 관성 정보를 기반으로 산출된 제2 오도메트리 정보 중 하나를 이용하여 상태 정보를 예측하고, 예측된 상기 상태 정보와 기 저장된 키 프레임을 이용하여 상기 이동 로봇의 위치를 추정하는 것을 특징으로 하는 이동 로봇의 위치를 인식하기 위한 장치.
  12. 제 1 항에 있어서,
    상기 위치 인식부는,
    입력받은 상기 스테레오 영상을 기 설정된 크기로 축소하여 축소된 상기 스테레오 영상을 브리프 바이너리 서술자를 이용하여 인코딩하여 그 인코딩한 결과로 이진 데이터를 생성하고,
    생성된 상기 이진 데이터와 기 저장된 키 프레임 내 이동 로봇의 절대 위치를 나타내는 데이터와 비교하여 그 비교한 결과로 상기 절대 위치로 상기 이동 로봇의 위치를 인식하는 것을 특징으로 하는 이동 로봇의 위치를 인식하기 위한 장치.
  13. 제 11 항에 있어서,
    상기 위치 인식부는,
    상기 제1 오도메트리 정보가 기 설정된 조건을 만족하면 상기 제1 오도메트리 정보를 선택하고,
    상기 제1 오도메트리 정보가 기 설정된 조건을 만족하지 못하면 상기 제2 오도메트리 정보를 선택하는 것을 특징으로 하는 이동 로봇의 위치를 인식하기 위한 장치.
  14. 제 11 항에 있어서,
    상기 위치 인식부는,
    예측된 상기 상태 정보를 기반으로 기 저장된 상기 키 프레임의 집합 중 기 설정된 개수의 이웃하는 키 프레임을 검색하고,
    검색된 상기 기 설정된 개수의 이웃하는 상기 키 프레임을 이용하여 상기 이동 로봇의 위치를 추정하는 것을 특징으로 하는 이동 로봇의 위치를 인식하기 위한 장치.
  15. 제 1 항에 있어서,
    입력 받은 상기 스테레오 영상 내에서 기 설정된 개수의 수평 라인을 추출하고 추출된 상기 수평 라인을 따라 스테레오 정합을 수행하여 그 수행한 결과로 장애물까지의 거리 정보를 획득하는 장애물 감지부;
    를 더 포함하는 것을 특징으로 하는 이동 로봇의 위치를 인식하기 위한 장치.
  16. 제 14 항에 있어서,
    상기 위치 인식부로부터 추정된 상기 이동 로봇의 위치 정보를 기반으로 자세 그래프를 재구성하고 그 재구성된 자세 그래프를 기반으로 기 저장된 상기 키 프레임의 집합을 업데이트하는 지도 작성부;
    를 더 포함하는 것을 특징으로 하는 이동 로봇의 위치를 인식하기 위한 장치.
  17. 이동 로봇에서 획득한 적어도 한쌍의 스테레오 영상을 입력받는 단계; 및
    위치 인식부가 상기 입력받은 스테레오 영상의 각 픽셀에서 그래디언트를 제1축 방향과 제2축 방향으로 구하고, 구한 상기 제1축 방향과 상기 제2축 방향으로의 그래디언트를 기반으로 에지를 추출하고, 추출한 상기 에지를 기반으로 상기 이동 로봇의 위치를 추정하는 단계;
    를 포함하는 이동 로봇의 위치를 인식하기 위한 방법.
  18. 제 17 항에 있어서,
    상기 추정하는 단계는,
    상기 스테레오 영상의 각 픽셀에서 상기 제1축 방향의 그래디언트와 상기 제2축 방향의 그래디언트를 구하고,
    구한 상기 제1축 방향의 그래디언트와 상기 제2축 방향의 그래디언트를 이용하여 상기 그래디언트의 크기와 각도를 산출하고,
    산출한 상기 그래디언트의 크기와 각도를 이용하여 상기 에지를 추출하는 것을 특징으로 하는 이동 로봇의 위치를 인식하기 위한 방법.
  19. 제 18 항에 있어서,
    상기 추정하는 단계는,
    상기 스테레오 영상의 각 픽셀에서, 상기 각 픽셀에 인접한 픽셀들 중 같은 상기 그래디언트의 각도를 갖는 픽셀 중에서, 상기 그래디언트의 크기가 가장 큰 픽셀을 상기 에지로 추출하는 것을 특징으로 하는 이동 로봇의 위치를 인식하기 위한 방법.
  20. 제 18 항에 있어서,
    상기 추정하는 단계는,
    상기 에지를 포함하는 선 상에 위치하는 각 픽셀에서 가장 인접한 기 설정된 개수의 픽셀들까지로 영역을 확장하고,
    확장한 상기 영역 내에서 기 설정된 임계치 이상의 상기 그래디언트의 크기를 갖는 적어도 하나 이상의 픽셀을 모두 상기 에지로 추출하는 것을 특징으로 하는 이동 로봇의 위치를 인식하기 위한 방법.
  21. 제18 항에 있어서,
    상기 추정하는 단계는,
    상기 제1축 방향의 그래디언트 Ix와 상기 제2축 방향의 그래디언트 Iy를 이용하여, 상기 그래디언트의 크기 Im을 수학식 Im=(Ix 2+Iy 2)1/2에 의해 산출하고,
    상기 제1축 방향의 그래디언트 Ix와 상기 제2축 방향의 그래디언트 Iy를 이용하여, 상기 그래디언트의 각도 Iθ를 수학식 Iθ=arctan(Iy/Ix)에 의해 산출하는 것을 특징으로 하는 이동 로봇의 위치를 인식하기 위한 방법.
  22. 제 17 항에 있어서,
    상기 추정하는 단계는,
    상기 에지를 기반으로 산출된 오도메트리 정보를 이용하여 상태 정보를 예측하고, 예측된 상기 상태 정보와 기 저장된 키 프레임을 이용하여 상기 이동 로봇의 위치를 추정하는 것을 특징으로 하는 이동 로봇의 위치를 인식하기 위한 방법.
KR1020150086229A 2014-06-17 2015-06-17 그래디언트 기반 특징점을 이용한 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법 KR101725060B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020140073708 2014-06-17
KR20140073708 2014-06-17

Publications (2)

Publication Number Publication Date
KR20150144729A true KR20150144729A (ko) 2015-12-28
KR101725060B1 KR101725060B1 (ko) 2017-04-10

Family

ID=54935783

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150086229A KR101725060B1 (ko) 2014-06-17 2015-06-17 그래디언트 기반 특징점을 이용한 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법

Country Status (4)

Country Link
US (1) US10133278B2 (ko)
EP (1) EP3159123A4 (ko)
KR (1) KR101725060B1 (ko)
WO (1) WO2015194868A1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102024563B1 (ko) * 2018-05-30 2019-09-24 에이미파이(주) 실내에서의 전파세기 측정 방법과 그 방법을 위한 장치
KR102098687B1 (ko) * 2018-11-02 2020-04-09 서울대학교산학협력단 영상 모서리 정렬 기반 영상 항법 및 장치
KR20200137943A (ko) * 2019-05-30 2020-12-09 엘지전자 주식회사 멀티 센서를 이용하여 위치를 추정하는 방법 및 이를구현하는 로봇
CN117130376A (zh) * 2023-10-27 2023-11-28 合肥酷尔环保科技有限公司 一种分布式超声波避障系统及其避障方法

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180121244A (ko) * 2017-04-28 2018-11-07 엘지전자 주식회사 이동 로봇 및 그 제어방법
CN108873878A (zh) * 2017-06-22 2018-11-23 北京石头世纪科技有限公司 自主机器人及其控制方法、装置、系统和计算机可读介质
US11579298B2 (en) 2017-09-20 2023-02-14 Yujin Robot Co., Ltd. Hybrid sensor and compact Lidar sensor
WO2019060529A1 (en) * 2017-09-20 2019-03-28 Magna International Inc. SYSTEM AND METHOD FOR ADAPTIVE BAC TAKING FOR MANUFACTURING
CN107941217B (zh) * 2017-09-30 2020-05-22 杭州迦智科技有限公司 一种机器人定位方法、电子设备、存储介质、装置
GB2567012B (en) * 2017-10-02 2021-05-12 Advanced Risc Mach Ltd Motion Sensing
CN107553497B (zh) * 2017-10-20 2023-12-22 苏州瑞得恩光能科技有限公司 太阳能面板清扫机器人的边缘定位装置及其定位方法
US10926725B2 (en) 2018-10-10 2021-02-23 Stocked Robotics, Inc. Non-destructive kit mounting system for driverless industrial vehicles
KR20190055582A (ko) 2017-11-15 2019-05-23 삼성전자주식회사 전자 장치의 이미지 촬영 방법 및 그 전자 장치
WO2019138640A1 (ja) * 2018-01-10 2019-07-18 ソニー株式会社 情報処理装置、情報処理方法、および、プログラム
JP6870635B2 (ja) 2018-03-08 2021-05-12 セイコーエプソン株式会社 慣性計測装置、移動体、携帯型電子機器、及び電子機器
CN110377015B (zh) * 2018-04-13 2021-04-27 北京三快在线科技有限公司 机器人定位方法和机器人定位装置
US11454981B1 (en) * 2018-04-20 2022-09-27 AI Incorporated Versatile mobile robotic device
US11874399B2 (en) 2018-05-16 2024-01-16 Yujin Robot Co., Ltd. 3D scanning LIDAR sensor
JP2020020631A (ja) * 2018-07-31 2020-02-06 セイコーエプソン株式会社 姿勢推定方法、姿勢推定装置及び移動体
CN109890573B (zh) * 2019-01-04 2022-05-03 上海阿科伯特机器人有限公司 移动机器人的控制方法、装置、移动机器人及存储介质
US10782137B2 (en) * 2019-01-28 2020-09-22 Qfeeltech (Beijing) Co., Ltd. Methods, apparatus, and systems for localization and mapping
EP4151372A1 (en) * 2019-04-16 2023-03-22 Yujin Robot Co., Ltd. Method and system for initialization diagnosis of mobile robot
US11713977B2 (en) * 2019-12-19 2023-08-01 Canon Kabushiki Kaisha Information processing apparatus, information processing method, and medium
CN111121768B (zh) * 2019-12-23 2021-10-29 深圳市优必选科技股份有限公司 一种机器人位姿估计方法、装置、可读存储介质及机器人
KR20210100518A (ko) * 2020-02-06 2021-08-17 엘지전자 주식회사 로봇 청소기 및 그 제어 방법
CN111197987A (zh) * 2020-02-26 2020-05-26 深圳市银星智能科技股份有限公司 一种困境识别方法、装置以及计算机存储介质
CN114153197B (zh) * 2020-08-17 2023-08-18 速感科技(北京)有限公司 自主移动设备的脱困方法及装置
CN111993391B (zh) * 2020-08-25 2022-02-15 深圳市优必选科技股份有限公司 机器人位姿估计方法、装置、仿人机器人及存储介质
CN112263188B (zh) * 2020-10-22 2022-04-05 湖南格兰博智能科技有限责任公司 一种移动机器人行进方向的矫正方法及其设备
CN112489127B (zh) * 2020-12-14 2023-06-23 一方智诚(珠海)科技有限公司 基于人工智能的升降台控制方法及系统
CN112819943B (zh) * 2021-01-15 2022-08-30 北京航空航天大学 一种基于全景相机的主动视觉slam系统
CN114229396B (zh) * 2022-02-18 2022-05-13 深圳市创新特科技有限公司 电路板取放位置校正装置及校正方法
CN115254482B (zh) * 2022-08-11 2023-08-04 重庆科技学院 一种用于检测sf6吸附剂浸出液的喷雾装置和喷雾调控方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100834577B1 (ko) * 2006-12-07 2008-06-02 한국전자통신연구원 스테레오 비전 처리를 통해 목표물 검색 및 추종 방법, 및이를 적용한 가정용 지능형 서비스 로봇 장치
KR20110097344A (ko) * 2010-02-25 2011-08-31 연세대학교 산학협력단 이동 로봇의 위치 및 지도의 이중 보정 장치 및 방법
KR101083394B1 (ko) * 2009-10-30 2011-11-14 주식회사 유진로봇 이동 로봇의 위치 인식을 위한 지도 생성 및 갱신 방법
KR20130046741A (ko) * 2011-10-28 2013-05-08 포항공과대학교 산학협력단 상향식 단일 카메라를 이용한 중대형 공간에서의 자율적 위상지도 생성 방법

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100478452B1 (ko) * 2002-06-12 2005-03-23 삼성전자주식회사 이동 로봇의 위치 및 방향 인식 장치 및 방법
US7110602B2 (en) * 2002-08-21 2006-09-19 Raytheon Company System and method for detection of image edges using a polar algorithm process
US6983583B2 (en) * 2003-11-21 2006-01-10 Ariens Company Lawnmower tilt sensor apparatus and method
US7066004B1 (en) * 2004-09-02 2006-06-27 Sandia Corporation Inertial measurement unit using rotatable MEMS sensors
KR101245832B1 (ko) * 2006-05-23 2013-03-21 삼성전자주식회사 장애물을 감지하는 장치 및 방법
KR100755611B1 (ko) * 2006-09-22 2007-09-06 삼성전기주식회사 기울어짐 감지형 자동 운전 청소기 및 그 동작 제어 방법
US20080195316A1 (en) * 2007-02-12 2008-08-14 Honeywell International Inc. System and method for motion estimation using vision sensors
WO2010027731A2 (en) * 2008-08-25 2010-03-11 Trw Braking Electronics Method for correction of dynamic output signals of inertial sensors having mounting offsets
KR101581197B1 (ko) 2009-01-06 2015-12-30 삼성전자주식회사 로봇 및 그 제어방법
KR101513639B1 (ko) * 2009-04-30 2015-04-20 엘지전자 주식회사 이동 로봇, 로봇 청소기 및 이동 로봇의 각도 검출 방법
KR101618030B1 (ko) 2009-07-28 2016-05-09 주식회사 유진로봇 이동 로봇의 위치 인식 및 주행 제어 방법과 이를 이용한 이동 로봇
KR20120070291A (ko) * 2010-12-21 2012-06-29 삼성전자주식회사 보행 로봇 및 그의 동시 위치 인식 및 지도 작성 방법
JP5963353B2 (ja) * 2012-08-09 2016-08-03 株式会社トプコン 光学データ処理装置、光学データ処理システム、光学データ処理方法、および光学データ処理用プログラム
US20150119086A1 (en) * 2013-10-25 2015-04-30 Alcatel-Lucent Usa Inc. Simultaneous localization and mapping systems and methods

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100834577B1 (ko) * 2006-12-07 2008-06-02 한국전자통신연구원 스테레오 비전 처리를 통해 목표물 검색 및 추종 방법, 및이를 적용한 가정용 지능형 서비스 로봇 장치
KR101083394B1 (ko) * 2009-10-30 2011-11-14 주식회사 유진로봇 이동 로봇의 위치 인식을 위한 지도 생성 및 갱신 방법
KR20110097344A (ko) * 2010-02-25 2011-08-31 연세대학교 산학협력단 이동 로봇의 위치 및 지도의 이중 보정 장치 및 방법
KR20130046741A (ko) * 2011-10-28 2013-05-08 포항공과대학교 산학협력단 상향식 단일 카메라를 이용한 중대형 공간에서의 자율적 위상지도 생성 방법

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102024563B1 (ko) * 2018-05-30 2019-09-24 에이미파이(주) 실내에서의 전파세기 측정 방법과 그 방법을 위한 장치
KR102098687B1 (ko) * 2018-11-02 2020-04-09 서울대학교산학협력단 영상 모서리 정렬 기반 영상 항법 및 장치
KR20200137943A (ko) * 2019-05-30 2020-12-09 엘지전자 주식회사 멀티 센서를 이용하여 위치를 추정하는 방법 및 이를구현하는 로봇
US11554495B2 (en) 2019-05-30 2023-01-17 Lg Electronics Inc. Method of localization using multi sensor and robot implementing same
CN117130376A (zh) * 2023-10-27 2023-11-28 合肥酷尔环保科技有限公司 一种分布式超声波避障系统及其避障方法
CN117130376B (zh) * 2023-10-27 2024-02-02 合肥酷尔环保科技有限公司 一种分布式超声波避障系统及其避障方法

Also Published As

Publication number Publication date
EP3159123A1 (en) 2017-04-26
EP3159123A4 (en) 2018-08-08
US10133278B2 (en) 2018-11-20
US20170153646A1 (en) 2017-06-01
WO2015194868A1 (ko) 2015-12-23
KR101725060B1 (ko) 2017-04-10

Similar Documents

Publication Publication Date Title
KR101725060B1 (ko) 그래디언트 기반 특징점을 이용한 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법
KR101776622B1 (ko) 다이렉트 트래킹을 이용하여 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법
KR101708659B1 (ko) 이동 로봇의 맵을 업데이트하기 위한 장치 및 그 방법
KR101776621B1 (ko) 에지 기반 재조정을 이용하여 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법
KR101784183B1 (ko) ADoG 기반 특징점을 이용한 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법
US10948297B2 (en) Simultaneous location and mapping (SLAM) using dual event cameras
CN109084746B (zh) 用于具有辅助传感器的自主平台引导系统的单目模式
JP6514624B2 (ja) 障害物検知装置
JP4672175B2 (ja) 位置検出装置、位置検出方法、及び位置検出プログラム
JP6198230B2 (ja) 深度カメラを使用した頭部姿勢トラッキング
Saeedi et al. Vision-based 3-D trajectory tracking for unknown environments
KR101072876B1 (ko) 이동 로봇에서 자신의 위치를 추정하기 위한 방법 및 장치
KR20190042187A (ko) 깊이 값을 추정하는 방법 및 장치
KR20180112090A (ko) 카메라의 포즈를 판단하기 위한 장치 및 방법
KR20150088636A (ko) 위치 추정 장치 및 방법
KR20200075727A (ko) 깊이 맵 산출 방법 및 장치
CN115406447B (zh) 拒止环境下基于视觉惯性的四旋翼无人机自主定位方法
CN113052907B (zh) 一种动态环境移动机器人的定位方法
JP7354528B2 (ja) 自律移動装置、自律移動装置のレンズの汚れ検出方法及びプログラム
Ruotsalainen et al. Overview of methods for visual-aided pedestrian navigation
KR102555269B1 (ko) 전방향 영상센서 및 관성측정센서의 자세추정 융합 방법 및 시스템
JP2017182564A (ja) 位置合わせ装置、位置合わせ方法及び位置合わせ用コンピュータプログラム
Engler et al. Recursive 3D scene estimation with multiple camera pairs
US20220343536A1 (en) Three-dimensional map estimation apparatus and obstacle detection apparatus
Wang et al. Research on visual odometry based on large-scale aerial images taken by UAV

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