KR20210010274A - 자율 주행 이동 로봇의 충전 중 환경 학습 장치 및 환경 학습 방법 - Google Patents

자율 주행 이동 로봇의 충전 중 환경 학습 장치 및 환경 학습 방법 Download PDF

Info

Publication number
KR20210010274A
KR20210010274A KR1020190121799A KR20190121799A KR20210010274A KR 20210010274 A KR20210010274 A KR 20210010274A KR 1020190121799 A KR1020190121799 A KR 1020190121799A KR 20190121799 A KR20190121799 A KR 20190121799A KR 20210010274 A KR20210010274 A KR 20210010274A
Authority
KR
South Korea
Prior art keywords
information
driving
unit
environment
mobile robot
Prior art date
Application number
KR1020190121799A
Other languages
English (en)
Other versions
KR102301759B1 (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 PCT/KR2020/009431 priority Critical patent/WO2021010784A2/ko
Priority to EP20840775.9A priority patent/EP4015159A4/en
Publication of KR20210010274A publication Critical patent/KR20210010274A/ko
Application granted granted Critical
Publication of KR102301759B1 publication Critical patent/KR102301759B1/ko
Priority to US17/577,016 priority patent/US20220139086A1/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • 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/2836Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means characterised by the parts which are controlled
    • A47L9/2852Elements for displacement of the vacuum cleaner or the accessories therefor, e.g. wheels, casters or nozzles
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/008Manipulators for service tasks
    • B25J11/0085Cleaning
    • 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
    • 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/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • 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

Abstract

본 발명에 따르면, 자율 주행 이동 로봇이 충전 중에 로봇이 지도 작성 및 자율 주행 시 획득한 환경 정보를 다시 로딩(loading)하여 환경을 인지하는 딥 러닝(deep learning) 알고리즘을 수행하고, 인지된 물체들의 위치를 확인하여 지도에 마킹하는 방법을 이용하여 최종적으로 가구 등의 물체들을 인지하여 위치를 알아내는 어플리케이션(application)에 사용 가능한 자율 주행 이동 로봇의 환경 학습 장치 및 환경 학습 방법이 개시된다.

Description

자율 주행 이동 로봇의 충전 중 환경 학습 장치 및 환경 학습 방법 {Environment Learning Device and Method in Charging Time for Autonomous Mobile Robot}
본 발명은 로봇의 환경 학습 장치에 관한 것으로서, 특히 자율 주행 이동 로봇의 환경 학습 장치 및 환경 학습 방법에 관한 것이다.
가정용 로봇의 대표적인 일 예로, 청소 로봇을 들 수 있는데, 이 때 청소 로봇이란 청소 하고자 하는 영역을 스스로 주행하면서 바닥면으로부터 먼지 등의 이물질을 흡입함으로써, 청소하고자 하는 영역을 자동으로 청소하는 장치를 의미한다. 이러한 청소 로봇은 각종 센서 등을 통해 청소 영역 내에 위치하는 장애물 등을 감지하고, 감지 결과를 이용하여, 청소 로봇의 주행 경로 및 청소 동작을 제어하게 된다.
종래의 경우, 자율 주행 중에 각 물체들을 인지하여 위치를 추정하였으나, 자율 주행 중에 수행되는 알고리즘의 경우 자율 주행을 위한 처리 능력(processing power)에 딥 러닝(deep learning)을 수행하기 위한 추가적인 프로세서가 필요하다.
이에 따라, 낮은 시스템 사양으로는 시스템 구현이 어려우며, 로봇의 구동 중에는 원하는 위치로 로봇을 부르거나 보내는 것에 어려움이 있다.
본 발명은 자율 주행 이동 로봇의 환경 학습 장치 및 환경 학습 방법으로 자율 주행 이동 로봇이 충전 중에 로봇이 지도 작성 및 자율 주행 시 획득한 환경 정보를 다시 로딩(loading)하여 환경을 인지하는 딥 러닝(deep learning) 알고리즘을 수행하고, 인지된 물체들의 위치를 확인하여 지도에 마킹하는 방법을 이용하여 최종적으로 가구 등의 물체들을 인지하여 위치를 알아내는 어플리케이션(application)에 사용하는데 그 목적이 있다.
이에 따라, 충전시간에 딥 러닝(deep learning) 알고리즘을 수행하기 때문에 프로세서를 충분히 사용할 수 있으며, 충전을 하는 시간이 보장되어 있기 때문에 충분한 시간적 여유가 있도록 하는데 또 다른 목적이 있다.
또한, 주행 중에 딥 러닝(deep learning)을 돌리기 위한 별도의 프로세서(processor)가 필요하기 않기 때문에 낮은 시스템 사양으로도 시스템 구현이 가능하며, 지도에 물체의 위치를 마킹하기 때문에 로봇의 구동 중에 딥 러닝(deep learning) 알고리즘이 돌아가지 않아도 원하는 위치로 로봇을 부르거나 보내도록 하는데 또 다른 목적이 있다.
본 발명의 명시되지 않은 또 다른 목적들은 하기의 상세한 설명 및 그 효과로부터 용이하게 추론할 수 있는 범위 내에서 추가적으로 고려될 수 있다.
상기 과제를 해결하기 위해, 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 장치는, 일정 기준 이상으로 전력 관리가 가능한 상태의 자율 주행 이동 로봇이 주행 중에 이미 획득한 환경 정보와, 상기 자율 주행 이동 로봇이 주행한 주행 영역과 관련하여 생성된 주행 지도 정보를 저장하는 메모리, 상기 메모리에 저장된 상기 환경 정보와 상기 주행 지도 정보 중 적어도 일부를 이용하여, 상기 주행 영역에 위치한 객체를 인식하기 위한 특징 지점들을 결정하고, 상기 결정된 특징 지점에 따른 선별된 환경 정보를 상기 메모리로부터 로딩하는 환경 정보 획득부, 상기 선별된 환경 정보를 이용하여 상기 객체를 인식하는 주행 환경 인식부 및 상기 인식된 객체에 따른 객체 정보를 이용하여 상기 주행 지도를 업데이트 하는 업데이트부를 포함한다.
여기서, 상기 주행 지도 정보는, 상기 주행 영역과 관련한 주행 지도를 구성하는 다수의 노드 및 링크를 포함하며, 상기 환경 정보는, 주행 시 획득한 상기 주행 영역 상의 영상 정보 및 외부의 라이다(LiDAR)로부터 획득한 3차원 기반의 점군(point cloud) 데이터에서 추출되는 거리 정보와 반사광 정보를 포함한다.
여기서, 상기 특징 지점은, 상기 자율 주행 이동 로봇이 일정 경로를 이동했을 때마다의 지점, 상기 자율 주행 이동 로봇의 방향이 변경되는 지점 및 상기 객체를 인식하기 위하여 미리 결정된 지점 중 적어도 하나이다.
여기서, 상기 환경 정보 획득부는, 상기 메모리에 저장된 상기 환경 정보와 상기 주행 지도 정보 중 적어도 일부를 이용하여, 상기 주행 영역에 위치한 객체를 인식하기 위한 특징 지점을 결정하는 특징 지점 결정부 및 상기 결정된 특징 지점에 따른 선별된 환경 정보를 상기 메모리로부터 로딩하는 로딩부를 포함한다.
여기서, 상기 특징 지점 결정부는, 상기 주행 지도를 구성하는 노드들 중에서, 상기 특징 지점을 특징 노드로 지정하고, 상기 특징 노드가 지정되는 순서에 따라 노드별로 번호를 부여하되, 상기 로딩부는, 지정된 상기 특징 노드의 순서에 따라, 상기 자율 주행 이동 로봇이 상기 특징 노드에 위치할 때 저장된 환경 정보를 로딩하는 것을 특징으로 하는 자율 주행 이동 로봇의 환경 학습 장치.
여기서, 상기 로딩부는, 상기 자율 주행 이동 로봇이 주행 시 상기 특징 노드에 위치할 때, 상기 라이다(LiDAR)로부터 획득한 포인트 클라우드(point cloud) 데이터에서 추출되는 거리 정보와 반사광 정보를 로딩하는 라이더 데이터 로딩부 및 상기 자율 주행 이동 로봇이 주행 시 상기 특징 노드에 위치할 때, 영상 정보 획득부로부터 획득한 상기 주행 영역 상의 영상 정보를 로딩하는 영상 데이터 로딩부를 포함한다.
여기서, 상기 주행 환경 인식부는, CNN(Convolutional Neural Network) 방법을 이용하여 상기 특징 지점들의 주변 환경에 포함된 객체를 인식한다.
여기서, 상기 주행 환경 인식부는, 상기 라이더 데이터 로딩부로부터 로딩한 상기 거리 정보와 반사광 정보를 기반으로, 상기 특징 지점들의 주변 환경에 포함된 객체를 인식하는 라이더 데이터 인식부 및 상기 영상 데이터 로딩부로부터 로딩한 상기 영상 정보를 기반으로, 상기 특징 지점들의 주변 환경에 포함된 객체를 인식하는 영상 데이터 인식부를 포함한다.
여기서, 상기 라이더 데이터 인식부는, 상기 라이더 데이터 로딩부로부터 획득한 상기 거리 정보와 반사광 정보를 입력 받는 제1 입력부, 상기 거리 정보와 반사광 정보에 기초하여, 상기 포인트 클라우드(point cloud) 데이터의 각각의 점에서 후보 객체들의 단면을 합성하거나 필터링하여, 상기 특징 지점들의 주변 환경에 포함된 객체들의 형상을 추출하는 제1 형상 추출부, 추출된 상기 객체들의 형상에서, 상기 객체들의 형상을 속성에 따라 분류하여 객체를 인식하는 제1 객체 인식부를 포함한다.
여기서, 상기 영상 데이터 인식부는, 상기 영상 데이터 로딩부로부터 획득한 상기 영상 정보를 입력 받는 제2 입력부, 상기 영상 정보에 포함된 상기 주행 영역 상의 영상 정보의 각각의 점에서 후보 객체들의 단면을 합성하거나 필터링하여, 상기 특징 지점들의 주변 환경에 포함된 객체들의 형상을 추출하는 제2 형상 추출부, 추출된 상기 객체들의 형상에서, 상기 객체들의 형상을 속성에 따라 분류하여 객체를 인식하는 제2 객체 인식부를 포함한다.
여기서, 상기 주행 환경 인식부는, 상기 라이더 데이터 인식부에서 인식한 객체에 따른 객체 정보와, 상기 영상 데이터 인식부에서 인식한 객체에 따른 객체 정보를 상기 특징 노드의 좌표 별로 비교하여 객체 정보를 상세히 분류하는 객체 정보 매칭부를 더 포함한다.
여기서, 상기 업데이트부는, 인식된 상기 객체 정보의 해당 특징 노드의 좌표와 상기 주행 영역에 대한 주행 지도의 좌표를 매칭하여 상기 주행 지도를 업데이트 한다.
본 발명의 또 다른 실시예에 따른 자율 주행 이동 로봇의 환경 학습 방법은, 환경 정보 획득부가 메모리에 저장된 환경 정보와 주행 지도 정보 중 적어도 일부를 이용하여, 주행 영역에 위치한 객체를 인식하기 위한 특징 지점들을 결정하고, 상기 결정된 특징 지점에 따른 선별된 환경 정보를 상기 메모리로부터 로딩하는 단계, 주행 환경 인식부가 상기 선별된 환경 정보를 이용하여 상기 객체를 인식하는 단계 및 업데이트부가 상기 인식된 객체에 따른 객체 정보를 이용하여 상기 주행 지도를 업데이트 하는 단계를 포함한다.
여기서, 상기 주행 지도 정보는, 상기 주행 영역과 관련한 주행 지도를 구성하는 다수의 노드 및 링크를 포함하며, 상기 환경 정보는, 주행 시 획득한 상기 주행 영역 상의 영상 정보 및 외부의 라이다(LiDAR)로부터 획득한 객체에 의해 반사된 반사 광 신호에 따른 3차원 기반의 포인트 클라우드(point cloud) 데이터를 포함한다.
여기서, 상기 특징 지점은, 상기 자율 주행 이동 로봇이 일정 경로를 이동했을 때마다의 지점, 상기 자율 주행 이동 로봇의 방향이 변경되는 지점 및 상기 객체를 인식하기 위하여 미리 결정된 지점 중 적어도 하나이다.
여기서, 상기 결정된 특징 지점에 따른 선별된 환경 정보를 상기 메모리로부터 로딩하는 단계는, 특징 지점 결정부가 상기 메모리에 저장된 상기 환경 정보와 상기 주행 지도 정보 중 적어도 일부를 이용하여, 상기 주행 영역에 위치한 객체를 인식하기 위한 특징 지점을 결정하는 단계 및 로딩부가 상기 결정된 특징 지점에 따른 선별된 환경 정보를 상기 메모리로부터 로딩하는 단계를 포함하며, 상기 특징 지점을 결정하는 단계는, 상기 주행 지도를 구성하는 노드들 중에서, 상기 특징 지점을 특징 노드로 지정하고, 상기 특징 노드가 지정되는 순서에 따라 노드별로 번호를 부여하되, 상기 메모리로부터 로딩하는 단계는, 지정된 상기 특징 노드의 순서에 따라, 상기 자율 주행 이동 로봇이 상기 특징 노드에 위치할 때 저장된 환경 정보를 로딩한다.
여기서, 상기 메모리로부터 로딩하는 단계는, 라이더 데이터 로딩부가 상기 자율 주행 이동 로봇이 주행 시 상기 특징 노드에 위치할 때, 상기 라이다(LiDAR)로부터 획득한 3차원 기반의 포인트 클라우드(point cloud) 데이터에서 추출되는 거리 정보와 반사광 정보를 로딩하는 단계 및 영상 데이터 로딩부가 상기 자율 주행 이동 로봇이 주행 시 상기 특징 노드에 위치할 때, 영상 정보 획득부로부터 획득한 상기 주행 영역 상의 영상 정보를 로딩하는 단계를 포함한다.
여기서, 상기 객체를 인식하는 단계는, 라이더 데이터 인식부가 상기 라이더 데이터 로딩부로부터 로딩한 상기 거리 정보와 반사광 정보를 기반으로, 상기 특징 지점들의 주변 환경에 포함된 객체를 인식하는 단계, 영상 데이터 인식부가 상기 영상 데이터 로딩부로부터 로딩한 상기 영상 정보를 기반으로, 상기 특징 지점들의 주변 환경에 포함된 객체를 인식하는 단계 및 객체 정보 매칭부가 상기 라이더 데이터 인식부에서 인식한 객체에 따른 객체 정보와, 상기 영상 데이터 인식부에서 인식한 객체에 따른 객체 정보를 상기 특징 노드의 좌표 별로 비교하여 객체 정보를 상세히 분류하는 단계를 더 포함한다.
여기서, 상기 주행 지도를 업데이트 하는 단계는, 인식된 상기 객체 정보의 해당 특징 노드의 좌표와 상기 주행 영역에 대한 주행 지도의 좌표를 매칭하여 상기 주행 지도를 업데이트 한다.
이상에서 설명한 바와 같이 본 발명의 실시예들에 의하면, 자율 주행 이동 로봇이 충전 중에 로봇이 지도 작성 및 자율 주행 시 획득한 환경 정보를 다시 로딩(loading)하여 환경을 인지하는 딥 러닝(deep learning) 알고리즘을 수행하고, 인지된 물체들의 위치를 확인하여 지도에 마킹하는 방법을 이용하여 최종적으로 가구 등의 물체들을 인지하여 위치를 알아내는 어플리케이션(application)에 사용할 수 있다.
이에 따라, 충전시간에 딥 러닝(deep learning) 알고리즘을 수행하기 때문에 프로세서를 충분히 사용할 수 있으며, 충전을 하는 시간이 보장되어 있기 때문에 충분한 시간적 여유가 있도록 할 수 있다.
또한, 주행 중에 딥 러닝(deep learning)을 돌리기 위한 별도의 프로세서(processor)가 필요하기 않기 때문에 낮은 시스템 사양으로도 시스템 구현이 가능하며, 지도에 물체의 위치를 마킹하기 때문에 로봇의 구동 중에 딥 러닝(deep learning) 알고리즘이 돌아가지 않아도 원하는 위치로 로봇을 부르거나 보내도록 할 수 있다.
여기에서 명시적으로 언급되지 않은 효과라 하더라도, 본 발명의 기술적 특징에 의해 기대되는 이하의 명세서에서 기재된 효과 및 그 잠정적인 효과는 본 발명의 명세서에 기재된 것과 같이 취급된다.
도 1은 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 시스템을 개략적으로 나타낸 도면이다.
도 2는 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 장치를 나타낸 블록도이다.
도 3은 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 장치의 환경 정보 획득부를 나타낸 블록도이다.
도 4 내지 도 6은 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 장치의 주행 지도 정보를 설명하기 위한 도면이다.
도 7은 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 장치의 주행 환경 인식부를 나타낸 블록도이다.
도 8은 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 장치의 라이더 데이터 인식부를 설명하기 위한 도면이다.
도 9는 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 장치의 영상 데이터 인식부를 설명하기 위한 도면이다.
도 10은 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 장치의 객체 정보 매칭부를 설명하기 위한 도면이다.
도 11 내지 도 14는 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 방법을 나타낸 흐름도이다.
이하, 본 발명에 관련된 자율 주행 이동 로봇의 환경 학습 장치 및 환경 학습 방법에 대하여 도면을 참조하여 보다 상세하게 설명한다. 그러나, 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며, 설명하는 실시예에 한정되는 것이 아니다. 그리고, 본 발명을 명확하게 설명하기 위하여 설명과 관계없는 부분은 생략되며, 도면의 동일한 참조부호는 동일한 부재임을 나타낸다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
이하의 설명에서 사용되는 구성요소에 대한 접미사 “모듈” 및 “부”는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 구성요소들은 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
본 발명은 자율 주행 이동 로봇의 환경 학습 장치 및 환경 학습 방법에 관한 것이다.
도 1은 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 시스템을 개략적으로 나타낸 도면이다.
도 1에 도시한 바와 같이, 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 시스템은 자율 주행 이동 로봇(1), 이동 로봇의 충전을 위한 도킹 스테이션(docking station)(2)을 포함할 수 있다.
자율 주행 이동 로봇(1)은 이동이 가능한 청소 로봇을 말하고, 예컨대, 소정 공간 예컨대, 가정집, 공공기관, 회사 등에서 이동하면서 자동으로 청소를 수행할 수 있다.
자율 주행 이동 로봇(1)은 내부 또는 외부에 장착된 라이다(LiDAR)(11)와 영상 정보 획득부(12)를 포함한다.
3차원 라이다(11)는 멀리 있는 객체들을 감지할 수 있는 거리범위, 방위각과 고각 등의 시야각 범위, 그리고 공간 분해능의 성능이 우수한 라이다(Laser Radar)로 구현될 수 있다. 라이다는 레이저 신호를 쏘고 반사되어 돌아오는 시간을 측정하고, 빛의 속도를 이용하여 반사체의 거리를 측정하는 장치이다. 레이저 신호는 포토 다이오드를 통하여 전기적인 신호로 변경된다. 레이저 신호는 기 설정된 파장 대역을 가질 수 있다.
본 발명의 3차원 라이다(11)는 한 쌍의 광원 및 광 다이오드를 이용하여 광 신호를 송수신하며, 이동성 거울 및 회전체를 이용하여 주변을 3차원 스캐닝한다. 3차원 라이다(11)는 타임 오브 플라이트(Time of Flight, TOF) 방식으로 동작할 수 있다. 타임 오브 플라이트 방식은 레이저가 펄스 또는 구형파 신호를 방출하여 측정 범위 내에 있는 물체들로부터의 반사 펄스 또는 구형파 신호들이 수신기에 도착하는 시간을 측정함으로써, 측정 대상과 거리 측정 장치 사이의 거리를 측정한다.
본 발명에서 3차원 라이다(11)가 조사하는 레이저 신호는 상하 좌우로 이동하면서 매우 촘촘한 간격으로 조사되기 때문에, 객체들에 의해 반사된 레이저 신호에 따른 거리 정보들을 모으면 3차원 라이다 주변의 환경의 3차원 정보를 획득할 수 있다.
일 실시예에 따르면, 본 발명의 3차원 라이다(11)는 청소 로봇의 상단면에 설치되어 자체적으로 회전하며 360도 각도범위에 있는 주변 환경에 기 설정된 주기 간격으로 레이저 신호를 송수신함으로써 상기 객체에 대한 정보를 포함하는 포인트 클라우드(point cloud)를 획득할 수도 있고, 청소 로봇이 객체를 인식하고자 하는 위치에 고정되거나, 또는 인식하고자 하는 타이밍에 이동 주행하면서 레이저 신호를 송수신할 수도 있다.
영상 정보 획득부(12)는 각종 센서 예컨대, 카메라, 레이저 스캐너, 초음파 센서 등을 포함할 수 있으며, 획득한 데이터를 기반으로 소정 공간 예컨대, 가정집, 공공기관, 회사 등에서 이동하면서 청소하게 될 전체 영역에 대한 지도를 생성하고, 기 생성된 지도를 기반으로 사용자의 조작 없이도 청소하고자 하는 영역을 스스로 주행하면서 바닥면으로부터 먼지 등의 이물질을 흡입하여 청소하고자 하는 구역을 자동으로 청소할 수 있다.
본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 장치(10)는 자율 주행 이동 로봇(1)에서 프로세서로 구현되며, 라이다(11)와 영상 정보 획득부(12)가 획득한 환경 정보를 이용하게 되고, 주행 중에 이미 획득한 환경 정보와 자율 주행 이동 로봇이 주행한 주행 영역과 관련하여 생성된 주행 지도 정보를 저장하는 메모리를 포함할 수 있다.
여기서, 주행 지도 정보는, 상기 주행 영역과 관련한 주행 지도를 구성하는 다수의 노드 및 링크를 포함하며, 상기 환경 정보는, 주행 시 획득한 상기 주행 영역 상의 영상 정보 및 외부의 라이다(LiDAR)로부터 획득한 3차원 기반의 점군(point cloud) 데이터에서 추출되는 거리 정보와 반사광 정보를 포함한다.
이때, 자율 주행 이동 로봇(1)은 예컨대, 슬램(Simultaneous Localization And Mapping: SLAM) 기술을 이용하여 지도를 생성할 수 있다. 여기서 슬램 기술이란 기존의 지도를 가지고 위치 인식을 하거나 위치를 알고 지도를 만드는 기술에서 더 나아가 동시에 위치 파악과 지도 구축을 수행하여 상호보완 시키는 기술을 말한다.
자율 주행 이동 로봇(1)은 청소하고자 하는 구역을 자율적으로 이동하며 자동 청소를 수행하다가 충전 및 로봇 청소기 내에 저장된 먼지를 비우기 위해 도킹 스테이션(2)으로 이동한다.
신호 처리부(미도시)는 영상 정보 획득부(12)에서 획득된 환경 정보를 이용하여 상기 자율 주행 이동 로봇의 주행 모드 또는 주행 경로를 결정하며, 주행 영역과 관련된 동작과 사용자 명령을 처리한다.
도킹 스테이션(2)은 전방에 도킹 유도 신호를 발신하여 발신된 도킹 유도 신호에 따라 자율 주행 이동 로봇(1)이 도킹하면, 도킹된 자율 주행 이동 로봇(1)을 충전시킬 수 있다.
이때, 도킹 스테이션(2)은 이동 로봇이 도킹 스테이션에서 충전을 시작하면, 이동 로봇을 유도하기 위한 도킹 유도 신호의 송출을 중단 또는 차단할 수 있다.
이러한 도킹 스테이션(2)은 평소에는 이동 로봇이 원활히 도킹 스테이션으로 유도되도록 하는 신호를 송출하는 기능뿐 아니라, 이동 로봇이 연결된 경우 외부 전원을 이동 로봇으로 연결하여 전원을 공급하는 기능, 사용자에 의해 전원이 들어와 있는지, 충전 중인지, 충전 완료 상태인지 등에 대한 상태를 표시하는 기능, 전원 공급기의 전원을 이용하여 유도 신호, 상태 표시, 외부 전원 공급 등의 기능, 외부 AC 입력에서 전원을 공급 받고 도킹 스테이션 동작을 위한 전원으로 변환하는 기능 등을 수행한다.
또한, 도킹 스테이션(2)은 자율 주행 이동 로봇(1)이 도킹 스테이션에서 충전을 시작하면 상태 표시부에서의 충전 상태 표시를 차단할 수 있고, 이후 충전을 완료하더라도 도킹되어 있으면 상태 표시부에서의 충전 상태 표시를 차단할 수 있다.
도 2는 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 장치를 나타낸 블록도이다.
도 2를 참조하면, 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 장치(10)는 환경 정보 획득부(100), 주행 환경 인식부(200), 업데이트부(300)를 포함한다.
자율 주행 이동 로봇의 환경 학습 장치(10)는 자율 주행 및 충전을 해야하는 자율 주행 이동 로봇에 물체와 환경을 인식하는 기능을 적용하기 위한 장치이다.
자율 주행 이동 로봇은 환경 학습 장치를 이용하여 최종적으로 가구 등의 물체들을 인지하여 위치를 알아내는 어플리케이션(application)에 사용 가능하다.
여기서, 자율 주행 이동 로봇은 청소로봇, 물류로봇, 서비스로봇 등 자율 주행 이동 로봇 및 충전이 필요한 자율 주행 이동 로봇을 포함한다.
종래의 경우, 자율 주행 중에 각 물체들을 인지하여 위치를 추정하였으나, 자율 주행 중에 수행되는 알고리즘의 경우 자율 주행을 위한 처리 능력(processing power)에 딥 러닝(deep learning)을 수행하기 위한 추가적인 프로세서가 필요하다.
본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 장치(10)는, 자율 주행을 마친 상태에서, 로봇이 충전한 후에 로봇이 지도 작성 및 자율 주행 시 획득한 환경 정보를 다시 로딩(loading)하여 환경을 인지하는 딥 러닝(deep learning) 알고리즘을 수행하고, 인지된 물체들의 위치를 확인하여 지도에 마킹하는 방법을 이용한다.
이에 따라, 충전시간에 딥 러닝(deep learning) 알고리즘을 수행하기 때문에 프로세서를 충분히 사용할 수 있으며, 충전을 하는 시간이 보장되어 있기 때문에 충분한 시간적 여유가 있다.
또한, 주행 중에 딥 러닝(deep learning)을 돌리기 위한 별도의 프로세서(processor)가 필요하기 않기 때문에 낮은 시스템 사양으로도 시스템 구현이 가능하며, 지도에 물체의 위치를 마킹하기 때문에 로봇의 구동 중에 딥 러닝(deep learning) 알고리즘이 돌아가지 않아도 원하는 위치로 로봇을 부르거나 보내는 것이 가능해진다.
환경 정보 획득부(100)는 일정 기준 이상으로 전력 관리가 가능한 상태의 자율 주행 이동 로봇이 주행 중에 이미 획득한 환경 정보와, 상기 자율 주행 이동 로봇이 주행한 주행 영역과 관련하여 생성된 주행 지도 정보를 저장하는 메모리(101)에 저장된 상기 환경 정보와 상기 주행 지도 정보 중 적어도 일부를 이용하여, 상기 주행 영역에 위치한 객체를 인식하기 위한 특징 지점들을 결정하고, 상기 결정된 특징 지점에 따른 선별된 환경 정보를 상기 메모리로부터 로딩한다.
일정 기준은 예를 들어, 도킹 스테이션에서 충전중인 경우, 또는 배터리의 충전량이 일정 기준 이상 높은 경우, 주행중인 이동로봇의 잔여 이동 경로를 고려할 때, 기준값 이상의 전력량이 남아있는 경우 등이 있다.
본 발명의 일 실시예에서는 충전 모드 명령이 입력되면 환경 정보를 학습하기 위한 상태로 판단할 수 있으며, 충전 모드 명령은, 자율 주행 이동 로봇이 충전 스테이션에 도킹이 되는 경우, 주행 프로세스는 중단하고, 충전 프로세스를 시작하도록 하며 충전 프로세스 중에 환경 학습 장치의 알고리즘이 수행된다. 제어부(미도시)로부터 충전 모드 명령을 전달 받으면, 충전을 시작하며 주행 모드 명령을 전달 받을 경우 충전을 중단하고 자율 주행을 시작하게 된다.
충전 모드 명령이 입력되는 상태 이외에도, 일정 기준 이상으로 전력 관리가 가능한 상태로 당업자가 실시할 수 있는 경우에는 환경 학습 장치의 프로세스를 수행할 수 있다.
여기서, 주행 지도 정보는, 상기 주행 영역과 관련한 주행 지도를 구성하는 다수의 노드 및 링크를 포함하며, 상기 환경 정보는, 주행 시 획득한 상기 주행 영역 상의 영상 정보 및 외부의 라이다(LiDAR)로부터 획득한 3차원 기반의 점군(point cloud) 데이터에서 추출되는 거리 정보와 반사광 정보를 포함한다.
또한, 특징 지점은, 상기 자율 주행 이동 로봇이 일정 경로를 이동했을 때마다의 지점, 상기 자율 주행 이동 로봇의 방향이 변경되는 지점 및 상기 객체를 인식하기 위하여 미리 결정된 지점 중 적어도 하나이다.
여기서, 객체를 인식하기 위하여 미리 결정된 지점은 상기 객체를 가장 잘 인식할 수 있는 위치에 해당하는 지점, 예를 들어 객체의 중앙을 인식할 수 있는 지점, 또는 객체의 특징적인 외관이 잘 보이는 지점, 또는 객체로부터 에지 특징점 추출이 용이한(가장 많은) 지점을 의미하여, 에지 추출은 소벨 필터등을 이용하여 에지 영역을 검출하는 방법을 이용하여 수행할 수 있다. )
환경 정보는 물체 감지(object detection), 인식(recognition)을 수행하기 위한 각 지점의 위치별 데이터이며, 환경 정보 획득부(100)는 미리 만들어진 지도와 라이다(LiDAR) 영상 등의 정보와 지도로부터 가상의 로봇이 돌아다니면서 순간 순간 데이터를 획득하도록 한다.
환경 정보와 주행 지도 정보를 포함하는 정보들은 각각의 메모리(101, 102, 103)에 저장될 수 있으며, 메모리는 장치에 포함될 수도 있으며, 각각의 메모리는 통합될 수도 있다.
주행 환경 인식부(200)는 선별된 환경 정보를 이용하여 상기 객체를 인식한다.
여기서, 선별된 환경 정보는 환경 정보 중에서 객체를 인식하기 위해 결정된 특징 지점에서 획득되는 각각의 환경 정보를 의미하며, 획득된 환경 정보를 이용하여 물체 감지(object detection), 인식(recognition)을 수행한다.
업데이트부(300)는 상기 인식된 객체에 따른 객체 정보를 이용하여 상기 주행 지도를 업데이트 한다.
여기에서 객체 정보는, 예를들어 인식된 객체가 고정용 식탁인 경우, 해당 객체가 "식탁"이라는 "객체 인식 정보", 식탁의 위치에 관한 "위치 정보", 식탁이 주로 고정되어 사용된다는 "이동성 정보"를 포함할 수 있다.
업데이트부(300)는 인지된 물체를 지도 정보와 매칭하여 지도에서의 위치를 추정한다. 구체적으로, 인식된 상기 객체 정보의 해당 특징 노드의 좌표와 상기 주행 영역에 대한 주행 지도의 좌표를 매칭하여 인지된 물체의 지도 상에서 인지된 물체의 위치에 물체의 카테고리 및 정보를 마킹하여 상기 주행 지도를 업데이트 한다.
전체 지도에 대하여 물체 인식 및 지도에 마킹 과정이 끝나면 프로세스가 종료된다.
주행 중에 딥 러닝(deep learning)을 돌리기 위한 별도의 프로세서(processor)가 필요하기 않기 때문에 낮은 시스템 사양으로도 시스템 구현이 가능하며, 지도에 물체의 위치를 마킹하기 때문에 로봇의 구동 중에 딥 러닝(deep learning) 알고리즘이 돌아가지 않아도 원하는 위치로 로봇을 부르거나 보낼 수 있다.
도 3은 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 장치의 환경 정보 획득부를 나타낸 블록도이다.
도 3을 참조하면, 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 정보 획득부(100)는 특징 지점 결정부(110), 로딩부(120)를 포함한다.
환경 정보 획득부(100)는 자율 주행 이동 로봇이 주행 중에 획득한 데이터들 중에서 로봇이 그 위치를 지나는 순간 획득하는 데이터를 생성하고, 저장된 데이터를 리플레이 하면서 로봇의 위치와 그때 생성된 데이터를 모두 획득하고 물체 감지(object detection), 인식(recognition)을 할 수 있는 형태로 변환한다.
환경 정보 획득부(100)는 일정 기준 이상으로 전력 관리가 가능한 상태의 자율 주행 이동 로봇이 주행 중에 이미 획득한 환경 정보와, 상기 자율 주행 이동 로봇이 주행한 주행 영역과 관련하여 생성된 주행 지도 정보를 저장하는 메모리에 저장된 상기 환경 정보와 상기 주행 지도 정보 중 적어도 일부를 이용하여, 상기 주행 영역에 위치한 객체를 인식하기 위한 특징 지점들을 결정하고, 상기 결정된 특징 지점에 따른 선별된 환경 정보를 상기 메모리로부터 로딩한다.
환경 정보 획득부(100)는 자율 주행 이동로봇이 충전을 위하여 충전 스테이션에 도킹 후 충전을 시작하면, 로봇의 자율주행을 위한 프로세스를 끄고, 물체 감지(object detection), 인식(recognition) 프로세스를 켠다.
여기서, 상기 주행 지도 정보는, 상기 주행 영역과 관련한 주행 지도를 구성하는 다수의 노드 및 링크를 포함하며, 상기 환경 정보는, 주행 시 획득한 상기 주행 영역 상의 영상 정보 및 외부의 라이다(LiDAR)로부터 획득한 3차원 기반의 점군(point cloud) 데이터에서 추출되는 거리 정보와 반사광 정보를 포함한다.
여기서, 주행 지도는 3차원, 2차원 지도 사용이 가능하고, 주행 영역 상의 영상 정보는 영상 데이터, 라이다(LiDAR)로부터 획득한 데이터는 3차원, 2차원 라이더(LiDAR) 데이터인 것이 바람직하다.
특징 지점 결정부(110)는 메모리에 저장된 상기 환경 정보와 상기 주행 지도 정보 중 적어도 일부를 이용하여, 상기 주행 영역에 위치한 객체를 인식하기 위한 특징 지점을 결정한다.
구체적으로, 상기 주행 지도를 구성하는 노드들 중에서, 상기 특징 지점을 특징 노드로 지정하고, 상기 특징 노드가 지정되는 순서에 따라 노드별로 번호를 부여한다.
로딩부(120)는 결정된 특징 지점에 따른 선별된 환경 정보를 상기 메모리로부터 로딩하며, 지정된 상기 특징 노드의 순서에 따라, 상기 자율 주행 이동 로봇이 상기 특징 노드에 위치할 때 저장된 환경 정보를 로딩한다.
구체적으로, 로딩되는 환경 정보는 지도, 점군(point cloud) 정보, 영상 또는 이미지 정보를 포함하며, 지도는 3차원 또는 2차원 지도이며, 점군(point cloud) 정보는 거리(range) 정보와 반사광(intensity) 정보이고, 영상 또는 이미지 정보는 로봇이 주행하면서 찍은 영상 또는 이미지들이다.
로딩부(120)는 라이더 데이터 로딩부(121), 영상 데이터 로딩부(123)를 포함한다.
라이더 데이터 로딩부(121)는 상기 자율 주행 이동 로봇이 주행 시 상기 특징 노드에 위치할 때, 상기 라이다(LiDAR)로부터 획득한 3차원 기반의 점군(point cloud) 데이터에서 추출되는 거리 정보와 반사광 정보를 로딩한다.
영상 데이터 로딩부(123)는 상기 자율 주행 이동 로봇이 주행 시 상기 특징 노드에 위치할 때, 자율 주행 이동 로봇이 주행 시 상기 특징 노드에 위치할 때, 영상 정보 획득부로(12)부터 획득한 상기 주행 영역 상의 영상 정보를 로딩한다.
또한, 로딩한 환경 정보를 물체 감지(object detection), 인식(recognition)을 할 수 있는 형태로 변환하는 데이터 변환부를 더 포함할 수 있다.
도 4 내지 도 6은 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 장치의 주행 지도를 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 장치의 주행 지도를 나타낸 것이다.
자율 주행 이동 로봇은 지도 생성 중에 특징이 되는 지점들을 저장하고 그 지점에서의 환경 정보를 함께 저장한다.
자율 주행 이동 로봇이 지도 생성을 위하여 graph SLAM을 사용하는 경우 graph의 노드(node)가 특징이 되는 지점으로 사용 가능하다.
여기서, SLAM(Simultaneous Localization And Map-Building 또는 Simultaneous Localization and Mapping)은 로봇이 미지의 환경을 돌아다니면서 로봇에 부착되어 있는 센서만으로 외부의 도움 없이 환경에 대한 정확한 지도를 작성하는 작업을 의미한다.
도 4는 Graph SLAM을 통해 생성되는 지도에서 특징 지점들로 사용 가능한 노드(node) 정보를 나타낸 것이며, 도 4를 참조하면, 주행 지도(400)는 다수의 노드(401, 410) 및 링크(420)로 구성된다.
주행 지도에서 각 점은 노드를 나타내고, 점선은 엣지(edge)를 나타낸 것이다.
여기서, 노드들(401)은 자율 주행 로봇이 이동한 일 지점을 의미하며, 링크(420)는 각 노드 사이를 연결하는 자율 주행 로봇의 이동 경로를 나타낸다.
주행 지도 내에 존재하는 장애물(3)들 사이를 자율 주행 이동 로봇이 이동하며 생성되는 경로 상에서, 특징 지점 결정부(110)는 상기 주행 지도를 구성하는 노드들(401) 중에서, 상기 특징 지점을 특징 노드(410)로 지정하고, 상기 특징 노드가 지정되는 순서에 따라 노드별로 번호를 부여한다.
여기서, 특징 지점은, 자율 주행 이동 로봇이 일정 경로를 이동했을 때마다의 지점, 상기 자율 주행 이동 로봇의 경로가 급변하는 지점 및 상기 자율 주행 이동 로봇의 영상 정보 획득부가 중앙을 바라볼 때의 지점 중 적어도 하나이다.
또한, 각 노드에 위치한 자율 주행 이동 로봇은 경로 상에서 제1 방향(D1) 또는 제2 방향(D2)으로 이동한다.
한편, Graph SLAM을 사용하지 않는 경우에는 일정 거리를 이동했을 때 마다 특징 지점을 저장할 수 있으며, 또는 공간의 중앙이나 특징점들이 급변하는 지점 등을 특징 지점으로 저장하는 것도 가능하다.
자율 주행 이동 로봇이 3D 라이다(LiDAR)를 사용하여 물체인식을 하는 경우에는 각 특징 지점(410)에서의 라이다(LiDAR)를 통해 획득한 거리(range) 정보, 반사광(intensity) 정보와, 로봇의 위치 정보를 함께 저장한다.
자율 주행 이동 로봇이 이미지 카메라를 사용하여 물체 인식을 하는 경우에는 각 특징 지점에서 획득한 영상과 로봇의 위치 정보를 저장한다.
로딩부(120)는 지정된 상기 특징 노드의 순서에 따라, 상기 자율 주행 이동 로봇이 상기 특징 노드에 위치할 때 저장된 환경 정보를 로딩한다.
데이터는 노드의 번호 대로 로딩하며, 3D 라이다(LiDAR)를 사용하여 물체 인식을 하는 경우 점군(point cloud)의 위치 정보, (point cloud)의 반사광 정보를 로딩하며, 인식기를 구성하게 된다.
도 5는 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 장치의 주행 지도를 구체적으로 나타낸 것이다.
도 5를 참조하여, 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 장치의 노드를 지정하고, 데이터를 로딩하는 방법을 설명하면 주행 지도 내에 존재하는 장애물(3)들 사이를 자율 주행 이동 로봇이 이동하며 생성되는 경로 상에서, 자율 주행 로봇이 이동한 특징 지점들을 각각 제1 특징 노드(411), 제2 특징 노드(412), 제3 특징 노드(413), 제4 특징 노드(414)로 지정하며, 노드가 지정되는 순서에 따라 각각 #1, #2, #3, #4의 번호를 부여한다.
제1 특징 노드(411)는 제1 링크(421)와 제2 링크(422) 사이에 위치하며, 물체의 모서리 부분에서 제1 링크의 방향(L1)에서 제2 링크의 방향(L2)이 급변하는 것을 확인할 수 있다.
제2 특징 노드(412)는 제2 링크(422)와 제3 링크(423) 사이에 위치하며, 물체의 중앙부분(M)에 위치하는 상태이고, 제2 링크의 방향(L3)과 제3 링크의 방향(L4)은 일치하는 경로인 것을 확인할 수 있다.
제3 특징 노드(413)는 제3 링크(423)와 제4 링크(424) 사이에 위치하며, 물체의 모서리 부분에서 제3 링크의 방향(L5)에서 제4 링크의 방향(L6)이 급변하는 것을 확인할 수 있다.
여기서, 특징 지점은, 자율 주행 이동 로봇이 일정 경로를 이동했을 때마다의 지점, 상기 자율 주행 이동 로봇의 경로가 급변하는 지점 및 상기 자율 주행 이동 로봇의 영상 정보 획득부가 중앙을 바라볼 때의 지점 중 적어도 하나이다.
또한, 각 노드에 위치한 자율 주행 이동 로봇은 경로 상에서 제1 방향(D1) 또는 제2 방향(D2)으로 이동한다.
로딩부(120)는 지정된 상기 특징 노드의 순서(#1, #2, #3, #4)에 따라, 상기 자율 주행 이동 로봇이 상기 특징 노드에 위치할 때 저장된 환경 정보를 로딩한다.
환경 정보는 노드의 번호 대로 로딩하며, 3D 라이다(LiDAR)를 사용하여 물체 인식을 하는 경우 점군(point cloud)의 위치 정보, (point cloud)의 반사광 정보를 로딩하며, 인식기를 구성하게 된다.
도 6은 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 장치의 주행 지도에서 자율 주행 이동 로봇의 영상 정보 획득 과정을 나타낸 것이다.
주행 지도 내에 존재하는 장애물(3)들 사이를 자율 주행 이동 로봇이 이동하며 생성되는 경로(425, 426) 상에서, 자율 주행 로봇의 영상 정보 획득부는 각각 특징 노드(1a, 1b, 1c) 상에서 장애물의 정면(T1)과 측면(T2, T3)을 촬영할 수 있다.
특징 노드(1a)에서 장애물의 정면을 바라볼 때, 카메라의 회전 각도에 따른 영역(S)을 촬영할 수 있으며, 추후 데이터 복기 시 정면과 측면에서 바라본 장애물을 각각 비교하여 장애물을 구체적으로 판별할 수 있으며, 라이더 데이터와 비교하여 정지한 장애물과 이동하는 장애물을 비교할 수도 있다.
도 7은 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 장치의 주행 환경 인식부를 나타낸 블록도이다.
도 7을 참조하면, 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 주행 환경 인식부(200)는 라이더 데이터 인식부(210), 영상 데이터 인식부(220), 객체 정보 매칭부(230)를 포함한다.
주행 환경 인식부(200)는 딥 러닝(deep learning) 엔진에 변환된 정보를 넣고 물체 감지(object detection), 인식(recognition)을 수행한다.
주행 환경 인식부(200)는 선별된 환경 정보를 이용하여 상기 객체를 인식한다.
구체적으로, 주행 환경 인식부(200)는 CNN(Convolutional Neural Network) 방법을 이용하여 상기 특징 지점들의 주변 환경에 포함된 객체 정보를 인식한다.
CNN(Convolutional Neural Network)은 기존의 신경망(Neural Network)에서 이미지의 특성을 뽑을 수 있도록 레이어(Layer)가 구성되어 있어 새로운 이미지에서도 분류를 할 수 있도록 설계된 형태이다.
그러나 주행 환경 인식부의 모델이 합성곱 신경망 기법으로 학습된 모델로 반드시 한정되는 것은 아니며, 다른 종류의 딥 러닝 기법에 의해 학습된 모델이 사용될 수도 있다.
본 발명의 또 다른 일 실시예에 따르면, 상기 주행 환경 인식부는, 기 분류된 트레이닝 데이터로 부터 추출된 특징점을 입력으로 하여, 컨볼루션 신경망의 필터 계수를 결정하기 위한 학습을 미리 수행한 것으로서, 필터 계수를 결정하기 위한 딥러닝 학습부를 포함하여 구성될 수도 있다. 또한 필터 계수를 결정하기 위한 학습은 충전 중에 이루어지는 것이 바람직하다.
라이더 데이터 인식부(210)는 라이더 데이터 로딩부로부터 로딩한 상기 거리 정보와 반사광 정보를 기반으로, 상기 특징 지점들의 주변 환경에 포함된 객체를 인식한다.
영상 데이터 인식부(220)는 영상 데이터 로딩부로부터 로딩한 상기 영상 정보를 기반으로, 상기 특징 지점들의 주변 환경에 포함된 객체를 인식한다.
객체 정보 매칭부(230)는 상기 라이더 데이터 인식부에서 인식한 객체 정보와, 상기 영상 데이터 인식부에서 인식한 객체 정보를 상기 특징 노드의 좌표 별로 비교하여 객체 정보를 상세히 분류한다.
객체 정보 매칭부는 영상 데이터 인식부에서의 판단결과와, 라이더 데이터 인식부에서의 판단 결과를 고려하여 객체를 분류한다. 만약, 영상 데이터 인식부에서의 판단결과와, 라이더 데이터 인식부에서의 판단 결과를 다를 경우, 상황에 따라 가중치를 달리하여 합산한 결과에 따라 객체를 분류할 수 있다. 예를 들여, 조명이 어두운 경우라면, 객체 정보 매칭부는 라이더 데이터 인식부의 판단 결과에 더 높은 가중치를 부여하여, 객체를 분류할 수 있다.
또한, 최종적으로 인식된 물체의 위치 획득 방법에 있어서, 3D 라이다(LiDAR) 기반 물체 인식의 경우 인식된 물체가 있는 점군(point cloud)의 위치 정보를 입력 데이터에서 바로 얻을 수 있다.
이미지 기반의 물체 인식의 경우 라이다(LiDAR)가 적용된 경우와 아닌 경우로 구분이 가능하며, 구체적으로, 3D 라이다(LiDAR)가 같이 장착되어 있는 경우, 3D 라이다(LiDAR)와 이미지를 매칭하여 이미지에 투영된 3차원 위치정보를 획득할 수 있으며, 2D 라이다(LiDAR)가 같이 장착되어 있는 경우 2D 라이다(LiDAR)에서 획득된 지도상의 벽의 정보와 이미지 정보를 매칭하여 이미지에서 인식된 물체와 위치 정보를 매칭한다.
라이다(LiDAR)가 적용되지 않은 경우 자율 주행 이동 로봇이 이동하면서 만든 지도와 로봇의 위치 및 시야(FOV)를 매칭하여 인식된 물체의 위치를 추정한다.
도 8은 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 장치의 라이더 데이터 인식부를 설명하기 위한 도면이다.
도 8을 참조하면, 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 라이더 데이터 인식부(210)는 제1 입력부(211), 제1 형상 추출부(212), 제1 객체 인식부(213)를 포함한다.
라이더 데이터 인식부(210)는 라이더 데이터 로딩부로부터 로딩한 상기 거리 정보와 반사광 정보를 기반으로, 상기 특징 지점들의 주변 환경에 포함된 객체를 인식한다.
제1 입력부(211)는 라이더 데이터 로딩부로부터 획득한 상기 거리 정보와 반사광 정보를 입력 받는다.
제1 형상 추출부(212)는 상기 거리 정보와 반사광 정보에 기초하여, 상기 점군(point cloud) 데이터의 각각의 점에서 후보 객체들의 단면을 합성하거나 필터링하여, 상기 특징 지점들의 주변 환경에 포함된 객체들의 형상을 추출한다.
점군(point cloud) 데이터는, 라이더 데이터 인식부(210)가 사용할 수 있는 형태의 포맷으로서, 로딩이 가능한 도면 설계/제작 프로 그램을 이용하여 xyz, las 등의 형태로 스캔 정보로부터 추출될 수 있다. 예를 들어, 점군(point cloud) 데이터는, 물체로 판단되는 후보 객체의 윤곽, 형체, 구조 등을 나타내는 형체를 나타내는 이미지를 포함할 수 있다.
제1 형상 추출부(212)는 미리 지정된 복수개의 기준 높이에서의 단면을 잘라내어 합성하거나 필터링할수 있다. 예를 들어, 기준 높이는 30cm, 50cm, 1m 등과 같이 다양한 높이 별로 기 지정될 수 있으며, 필터링을 통해 물체의 중간 높이에 돌출부가 있거나, 상단의 높이에 돌출부가 있거나, 하단의 높이에 특정 물건 등이 있음을 확인할 수 있다.
제1 객체 인식부(213)는 추출된 상기 객체들의 형상에서, 상기 객체들의 형상을 속성에 따라 분류하여 객체를 인식한다.
예를 들어 추출된 객체들의 형상에서, 특정 객체가 쇼파 또는 인형임을 인식하는 경우 인식한 객체의 종류를 출력부(214)에서 출력하고, 기 저장된 주행 지도에서 출력된 객체에 따른 객체 정보를 마킹한다.
도 9는 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 장치의 영상 데이터 인식부를 설명하기 위한 도면이다.
도 9를 참조하면, 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 영상 데이터 인식부(220)는 제2 입력부(221), 제2 형상 추출부(222), 제2 객체 인식부(223)를 포함한다.
제2 입력부(221)는 상기 영상 데이터 로딩부로부터 획득한 상기 영상 정보를 입력 받는다.
제2 형상 추출부(222)는 영상 정보에 포함된 상기 주행 영역 상의 영상 정보의 각각의 점에서 후보 객체들의 단면을 합성하거나 필터링하여, 상기 특징 지점들의 주변 환경에 포함된 객체들의 형상을 추출한다.
미리 지정된 복수개의 기준 높이에서의 단면을 잘라내어 합성하거나 필터링할수 있다. 예를 들어, 기준 높이는 30cm, 50cm, 1m 등과 같이 다양한 높이 별로 기 지정될 수 있으며, 필터링을 통해 물체의 중간 높이에 돌출부가 있거나, 상단의 높이에 돌출부가 있거나, 하단의 높이에 특정 물건 등이 있음을 확인할 수 있다.
제2 객체 인식부(223)는 추출된 상기 객체들의 형상에서, 상기 객체들의 형상을 속성에 따라 분류하여 객체를 인식한다.
예를 들어 추출된 객체들의 형상에서, 특정 객체가 쇼파 또는 인형임을 인식하는 경우 인식한 객체의 종류를 출력부(224)에서 출력하고, 기 저장된 주행 지도에서 출력된 객체에 따른 객체 정보를 마킹한다.
본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 장치는 3D 라이다(LiDAR)와 이미지 기반 물체 인식 시스템을 사용할 수 있으며, 이에 따라 두 시스템을 각각 사용할 때의 차이점을 보완할 수 있다.
예를 들어, 3D 라이다(LiDAR)의 경우 입력 데이터가 많고 차수가 높으며, 물체의 종류를 출력하고, 인식된 물체의 위치를 획득하는 후처리가 쉽지만, 이미지 기반 물체 인식 시스템의 경우 입력데이터의 수가 적고 차수가 낮으며, 물체의 종류를 출력하고, 인식된 물체의 위치를 획득하는 후처리에 많은 연산이 소요된다.
도 10은 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 장치의 객체 정보 매칭부를 설명하기 위한 도면이다.
도 10의 (a)는 TV와 나무로 된 TV장식장을 나타낸 것이고, 도 10의 (b)는 유리로 이루어진 장식장을 나타낸 것이다.
도 10의 (a)와 (b)는 각각 제10 특징 노드에 해당하는 #10 순서의 노드에서 획득하는 경우를 예로 들어 나타낸 것이다.
도 10의 (a)에서, 라이더 데이터 인식부가 TV장식장(241)과 TV장식장 사이의 공간(242)을 인식하여, 틈이 있는 가구임을 판별하게 된다.
또한, 영상 데이터 인식부가 틈이 있는 가구이며, 장식장의 내부가 비치지 않는 나무 재질로 이루어진 것을 확인할 수 있으며, 상단에 TV(243)가 놓여짐을 확인할 수 있다.
객체 정보 매칭부는 라이더 데이터 인식부에서 인식된 틈이 있는 가구 정보에 해당하는 장식장임을 판단한 결과와, 영상 데이터 인식부에서 판단한 나무 재질의 가구임을 판단한 결과를 매칭하여 기존의 장애물로 인식된 객체가 구체적으로는 나무 재질로 이루어진 TV 장식장임을 판별할 수 있다.
도 10의 (b)에서, 라이더 데이터 인식부가 장식장(245)이 존재함을 판단하고, 장식장이 바닥과 틈이 없이 놓여진 것을 확인할 수 있다.
또한, 영상 데이터 인식부가 장식장의 내부가 비치는 것을 확인할 수 있고, 이에 따라 유리문(244) 또는 내부가 비어있는 것으로 판별할 수 있다.
객체 정보 매칭부는 라이더 데이터 인식부에서 바닥과 틈이 없이 놓여진 장식장임을 판단한 결과와, 영상 데이터 인식부에서 판단한 유리 재질의 가구임을 판단한 결과를 매칭하여 기존의 장애물로 인식된 객체가 구체적으로는 유리 재질로 이루어진 장식장임을 판별할 수 있다.
도 10의 (a)와 (b)에 나타난 바와 같이, #10 순서의 노드에서 장식장에 해당하는 장애물을 1차적으로 판별하였더라도, 본원 발명의 객체 정보 매칭부를 이용하여 객체 정보를 더욱 상세히 분류할 수 있다. 또한, 이에 따라 틈이 있는 가구의 경우 틈의 높이에 따라, 자율 주행 이동 로봇이 가구의 내부까지 청소하는 것이 가능하며, 유리 재질로 이루어진 장식장임을 판별할 경우, 부딪힘을 방지하기 위해 장애물과의 이격 거리를 조절하여 운행하도록 제어할 수 있다.
또한, 본 발명의 또 다른 실시예에 따른 자율 주행 이동 로봇의 환경 학습 장치에서 라이더 데이터 인식부와 영상 데이터 인식부가 배경과 실제 강아지 또는 강아지 인형을 인식하는 경우, 객체 정보 매칭부는 라이더 데이터 인식부에서 인식한 객체 정보와, 상기 영상 데이터 인식부에서 인식한 객체 정보를 비교할 수 있다.
예를 들어, 특징 노드의 좌표 별로 비교하여 객체 정보를 상세히 분류할 수 있다. 도 10에 나타난 #10 순서의 객체 정보 이외에, #9 순서와 #11 순서의 노드를 비교하며, 또한 각 노드에서는 이미지의 특징 지점에 따라 비교할 수도 있다.
#9 순서와 #11 순서의 노드에서도 강아지가 자체로 인식되었다면, 실제 움직이는 강아지임을 판별하고, 영상 데이터 인식부에서 정지하는 강아지 인형의 측면이 인식될 경우 강아지 인형으로 판별하며 이에 따라, 자율 주행 이동 로봇의 주행을 제어할 수 있다.
또한, 객체 정보 매칭부는 라이더 데이터 인식부의 객체 정보와 영상 데이터 인식부에서 인식한 객체 정보의 가중치를 상황에 따라 다르게 두어 분류할 수 있다.
예를 들어 높이에 따라 상단의 높이에서 장애물을 판단하였을 때는 정지한 물체에 가중치를 더하며, 바닥에서 인식되었을 경우에는 이동하는 물체에 가중치를 더하게 된다. 또한, 물체와 연관된 장애물과 같이 강아지와 함께 개 집이 인식되었을 경우에는 강아지에 가중치를 더하게 된다.
이에 따라, 실제 강아지가 있음을 판별하는 경우, 주행 경로상에 위치하는 강아지의 배설물을 함께 탐지하는 배설물 탐지 모드를 작동하여, 주행 시 배설물을 자율 주행 이동 로봇이 지나가는 상황을 방지할 수 있다.
도 11 내지 도 14는 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 방법을 나타낸 흐름도이다.
도 11은 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 방법을 나타낸 흐름도이다.
도 11을 참조하면, 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 방법은 자율 주행 로봇이 충전을 하기 위해 도킹하는 단계(S11)에서 시작한다.
단계 S11에서 로봇 도킹 후 프로세서가 시작되며, 로봇이 충전을 위하여 충전 스테이션에 도킹 후 충전을 시작하면, 로봇의 자율주행을 위한 프로세스를 끄고, 물체 감지(object detection), 인식(recognition)프로세스를 켠다.
단계 S12에서 프로세서가 로봇의 자율 주행 또는 지도 생성 과정에서 획득한 데이터들을 로딩한다.
단계 S12에서 자율 주행 또는 지도 생성 과정에서 획득한 데이터를 로딩하며, 이 경우 3차원, 2차원 지도 사용이 가능하고, 3차원, 2차원 LiDAR 데이터 또는 영상 데이터 사용이 가능하다.
구체적으로, 로딩되는 데이터 종류는 지도의 경우 3차원 또는 2차원 지도, 점군(point cloud) 정보의 경우 거리(range) 정보, 반사광(intensity) 정보, 영상 또는 이미지 정보의 경우 로봇이 주행하면서 찍은 영상 또는 이미지들을 포함한다.
단계 S13에서 로딩된 데이터들 중에서 상기 로봇이 일 지점을 지나는 순간의 위치별 데이터를 생성한다.
단계 S13에서 물체 감지(object detection), 인식(recognition)을 수행하기 위한 각 위치별 데이터를 획득하며, 미리 만들어진 지도와 LiDAR 영상 등의 정보와 지도로부터 가상의 로봇이 돌아다니면서 순간 순간 데이터를 획득하도록 한다.
구체적으로, 로봇이 주행 중에 획득한 데이터들 중에서 로봇이 그 위치를 지나는 순간 획득하는 데이터를 생성하며, 저장된 데이터를 리플레이 하면서 로봇의 위치와 그때 생성된 데이터를 모두 획득하고 물체 감지(object detection), 인식(recognition)을 할 수 있는 형태로 변환한다.
단계 S14에서 상기 위치별 데이터에서 상기 일 지점에 위치한 물체를 감지하고 인식한다.
단계 S14에서 획득된 데이터를 이용하여 물체 감지(object detection), 인식(recognition)을 수행한다.
여기서, 딥러닝(deep learning) 엔진에 변환된 정보를 넣고 물체 감지(object detection)와 인식(recognition)을 수행한다.
단계 S15에서 상기 감지된 물체의 위치를 지도에 마킹하고, 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 방법은 종료된다.
단계 S15에서 인지된 물체를 지도 정보와 매칭하여 지도에서의 위치를 추정하고, 지도 상에서 인지된 물체의 위치에 물체의 카테고리 및 정보를 마킹하게 된다. 이후 전체 지도에 대하여 물체 인식 및 지도에 마킹 과정이 끝나면 프로세스가 종료된다.
도 12를 참조하면, 본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 방법은 환경 정보 획득부가 특징 지점에 따른 선별된 환경 정보를 상기 메모리로부터 로딩하는 단계(S100)에서 시작한다.
단계 S100에서 환경 정보 획득부가 메모리에 저장된 환경 정보와 주행 지도 정보 중 적어도 일부를 이용하여, 주행 영역에 위치한 객체를 인식하기 위한 특징 지점들을 결정하고, 상기 결정된 특징 지점에 따른 선별된 환경 정보를 상기 메모리로부터 로딩한다.
구체적으로, 환경 정보 획득부(100)는 일정 기준 이상으로 전력 관리가 가능한 상태의 자율 주행 이동 로봇이 주행 중에 이미 획득한 환경 정보와, 상기 자율 주행 이동 로봇이 주행한 주행 영역과 관련하여 생성된 주행 지도 정보를 저장하는 메모리(101)에 저장된 상기 환경 정보와 상기 주행 지도 정보 중 적어도 일부를 이용하여, 상기 주행 영역에 위치한 객체를 인식하기 위한 특징 지점들을 결정하고, 상기 결정된 특징 지점에 따른 선별된 환경 정보를 상기 메모리로부터 로딩한다.
일정 기준은 예를 들어, 도킹 스테이션에서 충전중인 경우, 또는 배터리의 충전량이 일정 기준 이상 높은 경우, 주행중인 이동로봇의 잔여 이동 경로를 고려할 때, 기준값 이상의 전력량이 남아있는 경우 등이 있다.
본 발명의 일 실시예에서는 충전 모드 명령이 입력되면 환경 정보를 학습하기 위한 상태로 판단할 수 있으며, 충전 모드 명령은, 자율 주행 이동 로봇이 충전 스테이션에 도킹이 되는 경우, 주행 프로세스는 중단하고, 충전 프로세스를 시작하도록 하며 충전 프로세스 중에 환경 학습 장치의 알고리즘이 수행된다. 제어부(미도시)로부터 충전 모드 명령을 전달 받으면, 충전을 시작하며 주행 모드 명령을 전달 받을 경우 충전을 중단하고 자율 주행을 시작하게 된다.
충전 모드 명령이 입력되는 상태 이외에도, 일정 기준 이상으로 전력 관리가 가능한 상태로 당업자가 실시할 수 있는 경우에는 환경 학습 장치의 프로세스를 수행할 수 있다.
여기서, 주행 지도 정보는, 상기 주행 영역과 관련한 주행 지도를 구성하는 다수의 노드 및 링크를 포함하며, 상기 환경 정보는, 주행 시 획득한 상기 주행 영역 상의 영상 정보 및 외부의 라이다(LiDAR)로부터 획득한 3차원 기반의 점군(point cloud) 데이터에서 추출되는 거리 정보와 반사광 정보를 포함한다.
또한, 특징 지점은, 상기 자율 주행 이동 로봇이 일정 경로를 이동했을 때마다의 지점, 상기 자율 주행 이동 로봇의 경로가 급변하는 지점 및 상기 자율 주행 이동 로봇의 영상 정보 획득부가 중앙을 바라볼 때의 지점 중 적어도 하나이다.
위치 데이터는 물체 감지(object detection), 인식(recognition)을 수행하기 위한 각 위치별 데이터이며, 환경 정보 획득부(100)는 미리 만들어진 지도와 라이다(LiDAR) 영상 등의 정보와 지도로부터 가상의 로봇이 돌아다니면서 순간 순간 데이터를 획득하도록 한다.
단계 S200에서 주행 환경 인식부가 상기 선별된 환경 정보를 이용하여 상기 객체를 인식한다.
단계 S300에서 업데이트부가 상기 인식된 객체에 따른 객체 정보를 이용하여 상기 주행 지도를 업데이트 한다.
구체적으로, 인식된 상기 객체 정보의 해당 특징 노드의 좌표와 상기 주행 영역에 대한 주행 지도의 좌표를 매칭하여 상기 주행 지도를 업데이트 한다.
도 13을 참조하면, 특징 지점에 따른 선별된 환경 정보를 상기 메모리로부터 로딩하는 단계(S100)는,
단계 S110에서 특징 지점 결정부가 상기 주행 지도를 구성하는 노드들 중에서, 상기 특징 지점을 특징 노드로 지정하고, 상기 특징 노드가 지정되는 순서에 따라 노드별로 번호를 부여한다.
이후, 로딩부가 지정된 상기 특징 노드의 순서에 따라, 상기 자율 주행 이동 로봇이 상기 특징 노드에 위치할 때 저장된 환경 정보를 로딩한다.
구체적으로, 단계 S121에서 라이더 데이터 로딩부가 상기 자율 주행 이동 로봇이 주행 시 상기 특징 노드에 위치할 때, 상기 라이다(LiDAR)로부터 획득한 3차원 기반의 점군(point cloud) 데이터에서 추출되는 거리 정보와 반사광 정보를 로딩한다.
단계 S123에서 영상 데이터 로딩부가 상기 자율 주행 이동 로봇이 주행 시 상기 특징 노드에 위치할 때, 영상 정보 획득부로부터 획득한 상기 주행 영역 상의 영상 정보를 로딩한다.
도 14를 참조하면, 주변 환경에 포함된 객체 정보를 인식하는 단계(S200)는, CNN(Convolutional Neural Network) 방법을 이용하여 상기 특징 지점들의 주변 환경에 포함된 객체 정보를 인식하는 것을 특징으로 하되,
단계 S211 내지 S213에서 라이더 데이터 인식부가 상기 라이더 데이터 로딩부로부터 획득한 거리 정보와 반사광 정보를 기반으로, 상기 특징 지점들의 주변 환경에 포함된 객체 정보를 인식한다.
구체적으로, 단계 S211에서 제1 입력부(211)는 상기 라이더 데이터 로딩부로부터 획득한 거리 정보와 반사광 정보를 입력 받는다.
단계 S212에서 제1 형상 추출부(212)는 거리 정보와 반사광 정보에 기초하여, 상기 점군(point cloud) 데이터의 각각의 점에서 후보 객체들의 단면을 합성하거나 필터링하여, 상기 특징 지점들의 주변 환경에 포함된 객체들의 형상을 추출한다.
단계 S213에서 제1 객체 인식부(213)는 추출된 상기 객체들의 형상에서, 상기 객체들을 속성에 따라 분류하여 상기 자율 주행 이동 로봇이 인식한 객체들의 종류를 결정하여, 객체 정보로 인식한다.
예를 들어 추출된 객체들의 형상에서, 특정 객체가 쇼파 또는 인형임을 인식하는 경우 인식한 객체의 종류를 출력부(214)에서 출력하고, 기 저장된 주행 지도에서 출력된 객체의 종류를 마킹한다.
단계 S221 내지 S223에서 영상 데이터 인식부가 상기 영상 데이터 로딩부로부터 획득한 상기 영상 정보를 기반으로, 상기 특징 지점들의 주변 환경에 포함된 객체 정보를 인식한다.
단계 S221에서 제2 입력부(221)는 상기 영상 데이터 로딩부로부터 획득한 상기 영상 정보를 입력 받는다.
단계 S222에서 제2 형상 추출부(222)는 상기 영상 정보에 포함된 상기 주행 영역 상의 영상 정보의 각각의 점에서 후보 객체들의 단면을 합성하거나 필터링하여, 상기 특징 지점들의 주변 환경에 포함된 객체들의 형상을 추출한다.
단계 S223에서 제2 객체 인식부(223)는 추출된 상기 객체들의 형상에서, 상기 객체들을 속성에 따라 분류하여 상기 자율 주행 이동 로봇이 인식한 객체들의 종류를 결정하여, 객체 정보로 인식한다.
예를 들어 추출된 객체들의 형상에서, 특정 객체가 쇼파 또는 인형임을 인식하는 경우 인식한 객체의 종류를 출력부(224)에서 출력하고, 기 저장된 주행 지도에서 출력된 객체의 종류를 마킹한다.
본 발명의 일 실시예에 따른 자율 주행 이동 로봇의 환경 학습 장치는 3D 라이다(LiDAR)와 이미지 기반 물체 인식 시스템을 사용할 수 있으며, 이에 따라 두 시스템을 각각 사용할 때의 차이점을 보완할 수 있다.
단계 S230에서 객체 정보 매칭부가 상기 라이더 데이터 인식부에서 인식한 객체 정보와, 상기 영상 데이터 인식부에서 인식한 객체 정보를 상기 특징 노드의 좌표 별로 비교하여 객체 정보를 상세히 분류한다.
또한, 자율 주행 이동 로봇의 환경 학습 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
이러한 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 기록 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(Floptical disk)와 같은 자기-광매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상의 설명은 본 발명의 일 실시예에 불과할 뿐, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명의 본질적 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현할 수 있을 것이다. 따라서 본 발명의 범위는 전술한 실시예에 한정되지 않고 특허 청구 범위에 기재된 내용과 동등한 범위 내에 있는 다양한 실시 형태가 포함되도록 해석되어야 할 것이다.

Claims (16)

  1. 일정 기준 이상으로 전력 관리가 가능한 상태의 자율 주행 이동 로봇이 주행 중에 이미 획득한 환경 정보와, 상기 자율 주행 이동 로봇이 주행한 주행 영역과 관련하여 생성된 주행 지도 정보를 저장하는 메모리;
    상기 메모리에 저장된 상기 환경 정보와 상기 주행 지도 정보 중 적어도 일부를 이용하여, 상기 주행 영역에 위치한 객체를 인식하기 위한 특징 지점들을 결정하고, 상기 결정된 특징 지점에 따른 선별된 환경 정보를 상기 메모리로부터 로딩하는 환경 정보 획득부;
    상기 선별된 환경 정보를 이용하여 상기 객체를 인식하는 주행 환경 인식부; 및
    상기 인식된 객체에 따른 객체 정보를 이용하여 상기 주행 지도를 업데이트 하는 업데이트부;를 포함하는 것을 특징으로 하는 자율 주행 이동 로봇의 환경 학습 장치.
  2. 제1항에 있어서,
    상기 주행 지도 정보는, 상기 주행 영역과 관련한 주행 지도를 구성하는 다수의 노드 및 링크를 포함하며,
    상기 환경 정보는, 주행 시 획득한 상기 주행 영역 상의 영상 정보; 및
    외부의 라이다(LiDAR)로부터 획득한 객체에 의해 반사된 반사 광 신호에 따른 3차원 기반의 포인트 클라우드(point cloud) 데이터;를 포함하는 것을 특징으로 하는 자율 주행 이동 로봇의 환경 학습 장치.
  3. 제2항에 있어서,
    상기 특징 지점은,
    상기 자율 주행 이동 로봇이 일정 경로를 이동했을 때마다의 지점, 상기 자율 주행 이동 로봇의 방향이 변경되는 지점 및 상기 객체를 인식하기 위하여 미리 결정된 지점 중 적어도 하나인 것을 특징으로 하는 자율 주행 이동 로봇의 환경 학습 장치.
  4. 제2항에 있어서,
    상기 환경 정보 획득부는,
    상기 메모리에 저장된 상기 환경 정보와 상기 주행 지도 정보 중 적어도 일부를 이용하여, 상기 주행 영역에 위치한 객체를 인식하기 위한 특징 지점을 결정하는 특징 지점 결정부; 및
    상기 결정된 특징 지점에 따른 선별된 환경 정보를 상기 메모리로부터 로딩하는 로딩부;를 포함하는 것을 특징으로 하는 자율 주행 이동 로봇의 환경 학습 장치.
  5. 제4항에 있어서,
    상기 특징 지점 결정부는, 상기 주행 지도를 구성하는 노드들 중에서, 상기 특징 지점을 특징 노드로 지정하고, 상기 특징 노드가 지정되는 순서에 따라 노드별로 번호를 부여하되,
    상기 로딩부는, 지정된 상기 특징 노드의 순서에 따라, 상기 자율 주행 이동 로봇이 상기 특징 노드에 위치할 때 저장된 환경 정보를 로딩하는 것을 특징으로 하는 자율 주행 이동 로봇의 환경 학습 장치.
  6. 제5항에 있어서,
    상기 로딩부는,
    상기 자율 주행 이동 로봇이 주행 시 상기 특징 노드에 위치할 때, 상기 라이다(LiDAR)로부터 획득한 포인트 클라우드(point cloud) 데이터에서 추출되는 거리 정보와 반사광 정보를 로딩하는 라이더 데이터 로딩부; 및
    상기 자율 주행 이동 로봇이 주행 시 상기 특징 노드에 위치할 때, 영상 정보 획득부로부터 획득한 상기 주행 영역 상의 영상 정보를 로딩하는 영상 데이터 로딩부;를 포함하는 것을 특징으로 하는 자율 주행 이동 로봇의 환경 학습 장치.
  7. 제6항에 있어서,
    상기 주행 환경 인식부는,
    상기 라이더 데이터 로딩부로부터 로딩한 상기 거리 정보와 반사광 정보를 기반으로, 상기 특징 지점들의 주변 환경에 포함된 객체를 인식하는 라이더 데이터 인식부; 및
    상기 영상 데이터 로딩부로부터 로딩한 상기 영상 정보를 기반으로, 상기 특징 지점들의 주변 환경에 포함된 객체를 인식하는 영상 데이터 인식부;를 포함하는 것을 특징으로 하는 자율 주행 이동 로봇의 환경 학습 장치.
  8. 제7항에 있어서,
    상기 라이더 데이터 인식부는,
    상기 라이더 데이터 로딩부로부터 획득한 상기 거리 정보와 반사광 정보를 입력 받는 제1 입력부;
    상기 거리 정보와 반사광 정보에 기초하여, 상기 포인트 클라우드(point cloud) 데이터의 각각의 점에서 후보 객체들의 단면을 합성하거나 필터링하여, 상기 특징 지점들의 주변 환경에 포함된 객체들의 형상을 추출하는 제1 형상 추출부;
    추출된 상기 객체들의 형상에서, 상기 객체들의 형상을 속성에 따라 분류하여 객체를 인식하는 제1 객체 인식부;를 포함하는 것을 특징으로 하는 자율 주행 이동 로봇의 환경 학습 장치.
  9. 제7항에 있어서,
    상기 영상 데이터 인식부는,
    상기 영상 데이터 로딩부로부터 획득한 상기 영상 정보를 입력 받는 제2 입력부;
    상기 영상 정보에 포함된 상기 주행 영역 상의 영상 정보의 각각의 점에서 후보 객체들의 단면을 합성하거나 필터링하여, 상기 특징 지점들의 주변 환경에 포함된 객체들의 형상을 추출하는 제2 형상 추출부;
    추출된 상기 객체들의 형상에서, 상기 객체들의 형상을 속성에 따라 분류하여 객체를 인식하는 제2 객체 인식부;를 포함하는 것을 특징으로 하는 자율 주행 이동 로봇의 환경 학습 장치.
  10. 제7항에 있어서,
    상기 주행 환경 인식부는,
    상기 라이더 데이터 인식부에서 인식한 객체에 따른 객체 정보와, 상기 영상 데이터 인식부에서 인식한 객체에 따른 객체 정보를 상기 특징 노드의 좌표 별로 비교하여 객체 정보를 상세히 분류하는 객체 정보 매칭부;를 더 포함하는 것을 특징으로 하는 자율 주행 이동 로봇의 환경 학습 장치.
  11. 환경 정보 획득부가 메모리에 저장된 환경 정보와 주행 지도 정보 중 적어도 일부를 이용하여, 주행 영역에 위치한 객체를 인식하기 위한 특징 지점들을 결정하고, 상기 결정된 특징 지점에 따른 선별된 환경 정보를 상기 메모리로부터 로딩하는 단계;
    주행 환경 인식부가 상기 선별된 환경 정보를 이용하여 상기 객체를 인식하는 단계; 및
    업데이트부가 상기 인식된 객체에 따른 객체 정보를 이용하여 상기 주행 지도를 업데이트 하는 단계;를 포함하는 것을 특징으로 하는 자율 주행 이동 로봇의 환경 학습 방법.
  12. 제11항에 있어서,
    상기 주행 지도 정보는, 상기 주행 영역과 관련한 주행 지도를 구성하는 다수의 노드 및 링크를 포함하며,
    상기 환경 정보는, 주행 시 획득한 상기 주행 영역 상의 영상 정보; 및
    외부의 라이다(LiDAR)로부터 획득한 객체에 의해 반사된 반사 광 신호에 따른 3차원 기반의 포인트 클라우드(point cloud) 데이터;를 포함하는 것을 특징으로 하는 자율 주행 이동 로봇의 환경 학습 방법.
  13. 제11항에 있어서,
    상기 결정된 특징 지점에 따른 선별된 환경 정보를 상기 메모리로부터 로딩하는 단계는,
    특징 지점 결정부가 상기 메모리에 저장된 상기 환경 정보와 상기 주행 지도 정보 중 적어도 일부를 이용하여, 상기 주행 영역에 위치한 객체를 인식하기 위한 특징 지점을 결정하는 단계; 및
    로딩부가 상기 결정된 특징 지점에 따른 선별된 환경 정보를 상기 메모리로부터 로딩하는 단계;를 포함하며,
    상기 특징 지점을 결정하는 단계는, 상기 주행 지도를 구성하는 노드들 중에서, 상기 특징 지점을 특징 노드로 지정하고, 상기 특징 노드가 지정되는 순서에 따라 노드별로 번호를 부여하되,
    상기 메모리로부터 로딩하는 단계는, 지정된 상기 특징 노드의 순서에 따라, 상기 자율 주행 이동 로봇이 상기 특징 노드에 위치할 때 저장된 환경 정보를 로딩하는 것을 특징으로 하는 자율 주행 이동 로봇의 환경 학습 방법.
  14. 제13항에 있어서,
    상기 메모리로부터 로딩하는 단계는,
    라이더 데이터 로딩부가 상기 자율 주행 이동 로봇이 주행 시 상기 특징 노드에 위치할 때, 라이다(LiDAR)로부터 획득한 3차원 기반의 포인트 클라우드(point cloud) 데이터에서 추출되는 거리 정보와 반사광 정보를 로딩하는 단계; 및
    영상 데이터 로딩부가 상기 자율 주행 이동 로봇이 주행 시 상기 특징 노드에 위치할 때, 영상 정보 획득부로부터 획득한 상기 주행 영역 상의 영상 정보를 로딩하는 단계;를 포함하는 것을 특징으로 하는 자율 주행 이동 로봇의 환경 학습 방법.
  15. 제14항에 있어서,
    상기 객체를 인식하는 단계는,
    라이더 데이터 인식부가 상기 라이더 데이터 로딩부로부터 로딩한 상기 거리 정보와 반사광 정보를 기반으로, 상기 특징 지점들의 주변 환경에 포함된 객체를 인식하는 단계;
    영상 데이터 인식부가 상기 영상 데이터 로딩부로부터 로딩한 상기 영상 정보를 기반으로, 상기 특징 지점들의 주변 환경에 포함된 객체를 인식하는 단계; 및
    객체 정보 매칭부가 상기 라이더 데이터 인식부에서 인식한 객체에 따른 객체 정보와, 상기 영상 데이터 인식부에서 인식한 객체에 따른 객체 정보를 상기 특징 노드의 좌표 별로 비교하여 객체 정보를 상세히 분류하는 단계;를 더 포함하는 것을 특징으로 하는 자율 주행 이동 로봇의 환경 학습 방법.
  16. 제11항 내지 제15항 중 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020190121799A 2019-07-17 2019-10-01 자율 주행 이동 로봇의 충전 중 환경 학습 장치 및 환경 학습 방법 KR102301759B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
PCT/KR2020/009431 WO2021010784A2 (ko) 2019-07-17 2020-07-17 객체 영상 생성, 객체 인식과 이동 로봇의 환경 학습을 수행하는 장치 및 방법
EP20840775.9A EP4015159A4 (en) 2019-07-17 2020-07-17 APPARATUS AND METHOD FOR PERFORMING OBJECT IMAGE GENERATION, OBJECT RECOGNITION AND ENVIRONMENT LEARNING OF A MOBILE ROBOT
US17/577,016 US20220139086A1 (en) 2019-07-17 2022-01-17 Device and method for generating object image, recognizing object, and learning environment of mobile robot

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20190086265 2019-07-17
KR1020190086265 2019-07-17

Publications (2)

Publication Number Publication Date
KR20210010274A true KR20210010274A (ko) 2021-01-27
KR102301759B1 KR102301759B1 (ko) 2021-09-14

Family

ID=74238156

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020190121799A KR102301759B1 (ko) 2019-07-17 2019-10-01 자율 주행 이동 로봇의 충전 중 환경 학습 장치 및 환경 학습 방법
KR1020190128448A KR102315483B1 (ko) 2019-07-17 2019-10-16 객체 영상 생성 장치, 방법 및 이를 포함하는 객체 인식 장치

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020190128448A KR102315483B1 (ko) 2019-07-17 2019-10-16 객체 영상 생성 장치, 방법 및 이를 포함하는 객체 인식 장치

Country Status (1)

Country Link
KR (2) KR102301759B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102335974B1 (ko) * 2021-07-27 2021-12-07 주식회사 클레빌 정밀 맵핑 기술을 포함한 작업 모듈의 교체가 가능한 자율주행 로봇 시스템
KR102639282B1 (ko) * 2023-11-28 2024-02-21 주식회사 오르카소프트 포인트 클라우드를 이용한 확장 현실 출력 서비스 제공 서버, 방법 및 시스템

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102482532B1 (ko) * 2021-06-29 2022-12-28 경북대학교 산학협력단 3차원 깊이데이터 업샘플링 장치 및 그 방법
WO2024063608A1 (ko) * 2022-09-22 2024-03-28 엘지전자 주식회사 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법
KR102540632B1 (ko) * 2022-10-27 2023-06-13 주식회사 모빌테크 색상 보정을 적용한 컬러맵 생성 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100031878A (ko) * 2008-09-16 2010-03-25 삼성전자주식회사 이동 로봇의 지도 구성 장치 및 방법
KR20110054473A (ko) * 2009-11-17 2011-05-25 엘지전자 주식회사 로봇 청소기 및 그의 제어 방법
KR20180043606A (ko) * 2016-10-20 2018-04-30 엘지전자 주식회사 이동 로봇의 제어방법
KR20180061949A (ko) * 2016-11-30 2018-06-08 주식회사 유진로봇 다채널 라이더 기반 이동로봇의 장애물 검출 장치 및 방법, 및 이를 구비한 이동로봇

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5822255B2 (ja) * 2011-04-14 2015-11-24 株式会社豊田中央研究所 対象物識別装置及びプログラム
KR101826364B1 (ko) * 2012-03-08 2018-02-06 현대엠엔소프트 주식회사 컬러 지상 라이다 측량 데이터를 이용하여 건물의 3차원 모델링 데이터를 자동으로 생성하기 위한 방법
KR20180096059A (ko) * 2017-02-20 2018-08-29 엘지전자 주식회사 객체의 특성이 적용된 맵을 작성하는 방법 및 이를 구현하는 로봇
KR20180134230A (ko) 2017-06-08 2018-12-18 삼성전자주식회사 청소 로봇 및 그 제어 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100031878A (ko) * 2008-09-16 2010-03-25 삼성전자주식회사 이동 로봇의 지도 구성 장치 및 방법
KR20110054473A (ko) * 2009-11-17 2011-05-25 엘지전자 주식회사 로봇 청소기 및 그의 제어 방법
KR20180043606A (ko) * 2016-10-20 2018-04-30 엘지전자 주식회사 이동 로봇의 제어방법
KR20180061949A (ko) * 2016-11-30 2018-06-08 주식회사 유진로봇 다채널 라이더 기반 이동로봇의 장애물 검출 장치 및 방법, 및 이를 구비한 이동로봇

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102335974B1 (ko) * 2021-07-27 2021-12-07 주식회사 클레빌 정밀 맵핑 기술을 포함한 작업 모듈의 교체가 가능한 자율주행 로봇 시스템
KR102639282B1 (ko) * 2023-11-28 2024-02-21 주식회사 오르카소프트 포인트 클라우드를 이용한 확장 현실 출력 서비스 제공 서버, 방법 및 시스템

Also Published As

Publication number Publication date
KR102315483B1 (ko) 2021-10-21
KR20210010276A (ko) 2021-01-27
KR102301759B1 (ko) 2021-09-14

Similar Documents

Publication Publication Date Title
KR102301759B1 (ko) 자율 주행 이동 로봇의 충전 중 환경 학습 장치 및 환경 학습 방법
JP7139226B2 (ja) 状況認識のためのモバイル清掃ロボット人工知能
JP7436103B2 (ja) モバイル清掃ロボットの協同および永続マッピング
CN113110457B (zh) 在室内复杂动态环境中智能机器人的自主覆盖巡检方法
KR102130190B1 (ko) 로봇 청소 장치
US10617271B2 (en) Robotic cleaning device and method for landmark recognition
JP2022540387A (ja) 移動ロボット及びその制御方法
KR20170061373A (ko) 이동 로봇 및 그 제어 방법
JP2015092348A (ja) 可動式ヒューマンインターフェースロボット
KR20220029824A (ko) 청소 로봇 및 그 제어 방법
KR102204011B1 (ko) 복수의 자율주행 이동 로봇
Troniak et al. Charlie rides the elevator--integrating vision, navigation and manipulation towards multi-floor robot locomotion
US20220139086A1 (en) Device and method for generating object image, recognizing object, and learning environment of mobile robot
CN113675923B (zh) 充电方法、充电装置及机器人
US20220381909A1 (en) 3d lidar based target object recognizing method, apparatus, and mobile object using the same
CN107918940A (zh) 外接设备识别方法和装置、标识装置、外接设备、系统
US20200016751A1 (en) Mobile robot for avoiding non-driving area and method for avoiding non-driving area of mobile robot
JP2009223757A (ja) 自律移動体、その制御システム、自己位置推定方法
Volkhardt et al. Finding people in home environments with a mobile robot
US11300963B1 (en) Robot movement constraint system
Choi et al. Improved CNN-based path planning for stairs climbing in autonomous UAV with LiDAR sensor
US20200064481A1 (en) Autonomous mobile device, control method and storage medium
KR20170108656A (ko) 이동 로봇 및 그 제어방법
EP3992747B1 (en) Mobile body, control method, and program
CN110881909A (zh) 一种扫地机控制方法及装置

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant