KR20230100307A - 로봇의 회전각도 검출방법,이를 이용하는 로봇 및 건물 - Google Patents

로봇의 회전각도 검출방법,이를 이용하는 로봇 및 건물 Download PDF

Info

Publication number
KR20230100307A
KR20230100307A KR1020210190057A KR20210190057A KR20230100307A KR 20230100307 A KR20230100307 A KR 20230100307A KR 1020210190057 A KR1020210190057 A KR 1020210190057A KR 20210190057 A KR20210190057 A KR 20210190057A KR 20230100307 A KR20230100307 A KR 20230100307A
Authority
KR
South Korea
Prior art keywords
robot
angle
edge
rotation angle
surrounding image
Prior art date
Application number
KR1020210190057A
Other languages
English (en)
Inventor
이태재
이용한
박순용
이동환
Original Assignee
네이버랩스 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 네이버랩스 주식회사 filed Critical 네이버랩스 주식회사
Priority to KR1020210190057A priority Critical patent/KR20230100307A/ko
Priority to PCT/KR2022/021280 priority patent/WO2023128504A1/ko
Publication of KR20230100307A publication Critical patent/KR20230100307A/ko

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/1679Programme controls characterised by the tasks executed
    • B25J9/1692Calibration of manipulator
    • 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
    • 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
    • B25J5/00Manipulators mounted on wheels or on carriages
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J5/00Manipulators mounted on wheels or on carriages
    • B25J5/007Manipulators mounted on wheels or on carriages mounted on wheels
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1684Tracking a line or surface by means of sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/13Edge detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Length Measuring Devices By Optical Means (AREA)

Abstract

본 발명은 로봇의 회전각도 검출방법, 이를 이용하는 로봇 및 건물에 관한 것으로서, 본 발명의 일 실시예에 의한 로봇의 회전각도 검출방법은, 카메라로 상기 로봇의 상방을 촬영하여 주변 영상을 생성하는 단계; 상기 주변 영상 내 포함된 객체들의 엣지(edge)를 추출하고, 각각의 엣지들의 엣지각도를 구하는 단계; 및 상기 엣지각도를 기반으로 상대적인 로봇의 각도를 구하여, 상기 로봇의 회전각도를 검출하는 단계를 포함할 수 있다.

Description

로봇의 회전각도 검출방법,이를 이용하는 로봇 및 건물 {Method for determining a pose of a robot, control server and buiding using the same}
본 발명은 로봇의 주행을 제어하기 위해 로봇의 회전각도를 판별하는 로봇의 회전각도 검출방법, 이를 이용하는 로봇 및 건물에 관한 것이다.
일반적으로 로봇은 산업용으로 개발되어 공장 자동화의 일 부분을 담당하여 왔다. 최근에는 로봇을 응용한 분야가 더욱 확대되어, 의료용 로봇, 우주 항공 로봇 등이 개발되고, 일반 가정에서 사용할 수 있는 가정용 로봇도 만들어지고 있다. 이러한 로봇들은 일정 영역을 자율주행할 수 있으며, 이를 위해서는 각각의 로봇의 위치와 포즈(pose) 등을 측위(localization)할 필요가 있다.
종래에는 로봇의 회전각도 등 포즈를 구하기 위하여, 로봇이 촬영한 이미지내에서 직선 성분을 추출하여 직선 성분의 각도 등을 기반으로 로봇의 각도를 특정하는 방식을 활용하였다. 다만, 이미지 내 특징 등이 적거나, 대비(contrast)가 크지 않은 등의 경우에는 이미지로부터 직선성분이 정확하게 추출되지 못하므로, 로봇의 정확한 포즈를 구하지 못하는 등의 문제점이 존재하였다.
대한민국 공개특허공보 제10-2010-0119442호
본 발명은 주변 영상으로부터 추출한 엣지를 활용하여, 로봇의 회전각도를 정확하게 검출할 수 있는 로봇의 회전각도 검출방법, 이를 이용하는 로봇 및 건물을 제공하고자 한다.
본 발명은 주변 영상의 이미지 특성이 변화하는 경우에도 강인하게 로봇의 회전각도를 판별할 수 있는 로봇의 회전각도 검출방법, 이를 이용하는 로봇 및 건물을 제공하고자 한다.
본 발명은 주변 영상으로부터 구한 공간의 공간각도와 로봇 사이의 상대적인 각도를 이용하여 로봇의 회전각도를 검출함으로써, 누적오차가 없는 로봇의 회전각도 검출방법, 이를 이용하는 로봇 및 건물을 제공하고자 한다.
본 발명의 일 실시예에 의한 로봇의 회전각도 검출방법은, 로봇에 구비된 카메라로부터 취득한 주변 영상을 기반으로, 로봇의 회전각도를 판별하는 것으로, 카메라로부터 상기 로봇의 상방을 촬영한 주변 영상을 입력받는 단계; 상기 주변 영상 내 포함된 객체들의 엣지(edge)를 추출하고, 각각의 엣지들의 엣지각도를 구하는 단계; 및 상기 엣지각도를 기반으로 상대적인 로봇의 각도를 구하여, 상기 로봇의 회전각도를 검출하는 단계를 포함할 수 있다.
본 발명의 일 실시예에 의한 로봇은 로봇에 구비된 카메라로부터 취득한 주변 영상을 기반으로, 로봇의 회전각도를 판별하는 것으로, 상기 로봇의 상방을 촬영하여 주변 영상을 생성하는 카메라부; 및 상기 주변 영상 내 포함된 객체들의 엣지(edge)를 추출하고, 각각의 엣지들의 엣지각도를 추출하며, 상기 엣지각도를 기반으로 상대적인 로봇의 회전 각도를 구하는 연산부를 포함할 수 있다.
본 발명의 일 실시예에 의한 건물은, 상기 건물 내를 주행하며 서비스를 제공하는 적어도 하나의 로봇이 배치되고, 상기 로봇은 제어서버와의 통신을 통하여 제어되며, 상기 로봇은 컴퓨터에서 판독 가능한 명령을 실행하도록 구현되는 적어도 하나의 프로세서를 포함하는 것으로, 상기 적어도 하나의 프로세서는, 카메라로부터 상기 로봇의 상방을 촬영한 주변 영상을 입력받고, 상기 주변 영상 내 포함된 객체들의 엣지(edge)를 추출하고, 각각의 엣지들의 엣지각도를 추출하며, 상기 엣지각도를 기반으로 상대적인 로봇의 각도를 구하여, 상기 로봇의 회전각도를 검출할 수 있다.
덧붙여 상기한 과제의 해결수단은, 본 발명의 특징을 모두 열거한 것이 아니다. 본 발명의 다양한 특징과 그에 따른 장점과 효과는 아래의 구체적인 실시형태를 참조하여 보다 상세하게 이해될 수 있을 것이다.
본 발명의 일 실시예에 의한 로봇의 회전각도 검출방법, 이를 이용하는 로봇 및 건물에 의하면, 주변 영상으로부터 추출한 엣지를 활용하여, 로봇의 회전각도를 판별하므로, 주변 영상의 이미지 특성이 변화하는 경우에도 강인하게 로봇의 회전각도를 판별하는 것이 가능하다.
본 발명의 일 실시예에 의한 로봇의 회전각도 검출방법, 이를 이용하는 로봇 및 건물에 의하면, 주변 영상으로부터 구한 공간의 공간각도와 로봇 사이의 상대적인 각도를 이용하여 로봇의 회전각도를 검출하므로, 누적오차 없이 정확하게 로봇의 회전각도 등 포즈를 판별하는 것이 가능하다.
다만, 본 발명의 실시예들에 따른 로봇의 회전각도 검출방법, 이를 이용하는 로봇 및 건물이 달성할 수 있는 효과는 이상에서 언급한 것들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도1은 본 발명의 일 실시예에 의한 로봇의 동작을 제어하는 제어시스템을 나타내는 개략도이다.
도2는 본 발명의 일 실시예에 의한 로봇을 나타내는 블록도이다.
도3는 본 발명의 일 실시예에 의한 주변 영상으로부터의 직선 추출과 엣지 추출을 나타내는 예시도이다.
도4 및 도5는 본 발명의 일 실시예에 의한 로봇의 주변 영상에 대한 엣지 및 엣지각도 추출결과를 나타내는 예시도이다.
도6은 본 발명의 일 실시예에 의한 로봇의 각도와 그에 따른 엣지각도를 나타내는 예시도이다.
도7은 본 발명의 일 실시예에 의한 로봇을 나타내는 개략도이다.
도8은 본 발명의 일 실시예에 의한 시각적 측위를 이용하는 제어시스템이 구축된 건물을 나타내는 개략도이다.
도9는 본 발명의 일 실시예에 의한 시각적 측위방법을 나타내는 순서도이다.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 즉, 본 발명에서 사용되는 '부'라는 용어는 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, '부'는 어떤 역할들을 수행한다. 그렇지만 '부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 '부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '부'들로 결합되거나 추가적인 구성요소들과 '부'들로 더 분리될 수 있다.
또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
도1은 본 발명의 일 실시예에 의한 로봇의 동작을 제어하는 제어시스템을 나타내는 개략도이다.
도1을 참조하면, 본 발명의 일 실시예에 의한 제어시스템은 로봇(100) 및 제어서버(200)를 포함할 수 있다.
이하 도1을 참조하여 본 발명의 일 실시예에 의한 제어시스템을 설명한다.
로봇(100)은 대상영역(A) 내에서 이동하면서 다양한 서비스 등을 수행할 수 있다. 여기서 대상영역(A)은 건물 등 실내 공간일 수 있으며, 로봇(100)은 자율주행방식으로 대상영역(A) 내에서 이동할 수 있다. 여기서, 로봇(100)은 브레인리스 로봇(brainless robot)로 구현될 수 있으며, 로봇(100)의 동작은 제어서버(200)와의 통신을 통하여 제어될 수 있다.
로봇(100)은 카메라를 포함할 수 있으며, 카메라를 이용하여 로봇(100)의 이동에 대응하는 주변 영상을 촬영할 수 있다. 로봇(100)은 주변 영상을 기반으로 비주얼 오도메트리(visual odometry)를 생성할 수 있으며, 이를 이용하여로봇(1)의 회전각도 등 위치인식을 수행할 수 있다. 즉, 브레인리스 로봇의 경우에도, 로봇(100)의 위치를 판별하기 위한 위한 회전각도 검출 등은 자체적으로 수행할 수 있다. 다만, 실시예에 따라서는 제어서버(200)가 로봇(100)으로부터 주변 영상을 수신하여 로봇(100)의 회전각도 검출 등 포즈(pose)를 판별하도록 구현하는 것도 가능하다.
또한, 로봇(100)은 카메라 이외에 IMU(Inertial Measurment Unit) 센서, 휠 인코더 센서, 라이다 센서, 자이로 센서(gyro sensor) 등 다양한 센서들을 더 포함할 수 있으며, 비주얼 오도메트리 이외에 다른 방식으로 로봇(100)에 대한 추가적인 오도메트리를 생성할 수 있다.
제어서버(200)는 네트워크(N)를 통하여 대상영역(A) 내 위치하는 로봇(100)들과 통신을 수행할 수 있으며, 로봇(100)의 이동 등을 포함하여 다양한 동작들을 제어할 수 있다. 여기서, 제어서버(200)와 로봇(100) 사이의 통신 방식은 제한되지 않으며, 네트워크(N)가 포함할 수 있는 통신망(일례로, 이동통신망, 유선 인터넷, 무선 인터넷, 방송망, 위성망 등)을 활용하는 통신 방식뿐만 아니라 기기들간의 근거리 무선 통신 등도 포함될 수 있다. 예를 들어, 네트워크(N)는, PAN(personal area network), LAN(local area network), CAN(campus area network), MAN(metropolitan area network), WAN(wide area network), BBN(broadband network), 인터넷 등의 네트워크 중 하나 이상의 임의의 네트워크를 포함할 수 있다. 또한, 네트워크(N)는 버스 네트워크, 스타 네트워크, 링 네트워크, 메쉬 네트워크, 스타-버스 네트워크, 트리 또는 계층적(hierarchical) 네트워크 등을 포함하는 네트워크 토폴로지 중 임의의 하나 이상을 포함할 수 있으나, 이에 제한되지 않는다.
제어서버(200)는 로봇(100)과 네트워크(N)를 통해 통신하여 명령, 코드, 파일, 컨텐츠, 서비스 등을 제공하는 컴퓨터 장치 또는 복수의 컴퓨터 장치들로 구현될 수 있다. 실시예에 따라서는, 제어서버(200)를 클라우드 서버 형태로 구현할 수 있으며, 엣지 컴퓨팅(edge computing) 및 5G 통신을 활용하여 로봇(100)에 대한 초저지연 제어를 수행하는 것도 가능하다.
종래에는 로봇의 회전각도 등 포즈를 구하기 위하여, 로봇이 촬영한 이미지내에서 직선 성분을 추출하여 직선 성분의 각도 등을 기반으로 로봇의 각도를 특정하는 방식을 활용하였다. 다만, 이미지 내 특징 등이 적거나, 대비(contrast)가 크지 않은 등의 경우에는 이미지로부터 직선성분이 정확하게 추출되지 못하므로, 로봇의 정확한 회전각도를 구하지 못하는 등의 문제점이 존재하였다. 이를 해결하기 위하여, 본 발명의 일 실시예에 의한 로봇(100)은 주변 영상으로부터 직선 성분을 대신하여 엣지를 추출할 수 있으며, 엣지를 기반으로 로봇의 포즈를 판별할 수 있다. 이하, 도2를 참조하여 본 발명의 일 실시예에 의한 로봇(100)을 설명한다.
도2는 본 발명의 일 실시예에 의한 로봇을 나타내는 블록도이다.
도2를 참조하면 본 발명의 일 실시예에 의한 로봇(100)은 카메라(110) 및 연산부(120)를 포함할 수 있다.
카메라(110)는 로봇(100)이 위치하는 공간을 촬영하여 주변 영상을 생성할 수 있다. 즉, 로봇(100)은 자체에 설치된 카메라(110)를 이용하여 이동 중에 주변을 촬영한 주변영상을 생성할 수 있다. 여기서, 카메라(110)는 로봇(100) 내에 연직상방을 향하도록 설치할 수 있으며, 주변 영상은 로봇(100)의 상방을 촬영한 대상영역(A)의 천장을 촬영한 영상일 수 있다. 일반적으로 천장 높이는 일정하게 유지되므로, 상방을 촬영한 주변 영상은 각각의 스케일(scale) 변화가 적을 수 있으며, 로봇(100)에 근접하는 사물이나 사람 등에 의하여 주변 영상이 가려지는 것도 최소화할 수 있다. 또한, 실시예에 따라서는, 로봇(100)의 카메라(110)는 상방을 넓게 촬영할 수 있도록 화각이 넓은 렌즈를 포함할 수 있다. 이를 통하여 천장면에 위치하는 조명이나 인테리어 구조물 등의 객체가 주변 영상 내에 최대한 많이 포함되도록 할 수 있다.
연산부(120)는 주변 영상 내 포함된 객체들의 엣지(edge)를 추출하고, 각각의 엣지들의 엣지각도를 구할 수 있다. 도3에 도시한 바와 같이, 연산부(120)는 도3(a)의 주변 영상(I)에 이미지 프로세스를 적용하여, 도3(c)와 같이 주변 영상(I) 내에 포함된 엣지(E)를 검출할 수 있다. 종래에는, 도3(b)에 도시한 바와 같이, 주변 영상(I) 내에 포함된 직선 성분(L1, L2) 등을 검출한 후, 이를 바탕으로 로봇(100)의 회전각도를 추정하였다. 그러나, 주변 영상(I) 내 포함된 직선 성분(L1, L2)의 경우, 추출기의 계수에 민감하며, 주변 영상(I) 내 대비(contrast)가 적은 경우 직선성분(L1, L2) 자체가 정확하게 추출되지 못하는 등의 단점이 존재한다. 반면에, 도3(c)와 같이 주변 영상(I) 내 포함된 엣지를 검출하는 경우, 직선 성분(L1, L2)들에 비하여 대비가 적거나, 주변 영상(I) 내 특징이 적은 경우에도, 해당 공간에 대한 엣지를 정확하게 도출하는 것이 가능하다. 즉, 엣지를 활용하는 경우, 주변 영상(I)의 종류나 상태 등에 강인하게 로봇(100)의 회전각도를 판별할 수 있다.
구체적으로, 연산부(120)는 주변 영상에 포함된 픽셀들의 픽셀값 변화에 대한 기울기값(gradient)을 구할 수 있으며, 기울기값의 크기가 임계치 이상인 픽셀을 엣지로 추출할 수 있다.
즉, 연산부(120)는
Figure pat00001
를 이용하여, 주변 영상에 포함된 픽셀들의 x축 기울기값 gx 및 y축 기울기값 gy를 각각 구할 수 있다.
이후,
Figure pat00002
를 이용하여, 주변 영상 내 x, y 좌표에 대응하는 픽셀에서의 기울기값의 크기(M)를 구할 수 있다. 여기서, 연산부(120)는 각각의 엣지들의 기울기값의 크기를 임계치와 비교하여, 임계치 이상인 픽셀들을 엣지로 추출할 수 있다.
또한, 연산부(120)는 각각의 엣지에 해당하는 픽셀들의 x축 기울기값과 y축 기울기값에 아크탄젠트(arctangent) 연산을 적용하여, 엣지들의 엣지각도를 구할 수 있다. 즉,
Figure pat00003
를 이용하여, 엣지각도(θ)를 구할 수 있다.
도4를 참조하면, 도4(a)와 같이 주변 영상(I)이 입력되면, 연산부(120)는 도4(b)와 같이 각각의 엣지(E)와, 엣지(E)에서의 엣지각도(θ)들을 표시할 수 있다. 여기서, 엣지(E)는 도4(b)에 나타난 각각의 초록색 점들에 대응하고, 엣지각도(θ)는 각각의 엣지에서 연장된 붉은 선이 나타내는 각도에 대응한다. 또한, 도5는 도4와 비교할 때 주변 영상(I)의 각도가 일부 틀어진 경우에 해당하며, 도4와 동일한 방식으로 엣지(E) 및 각 엣지(E)에서의 엣지각도(θ)를 표시할 수 있다. 도4 및 도5를 참조하면, 각각의 엣지각도(θ)는 공간의 각도와 대응하는 관계가 있음을 확인할 수 있다.
각각의 엣지와 엣지들의 엣지각도를 구한 이후에는, 연산부(120)가 엣지각도를 기반으로 상대적인 로봇(1)의 각도를 구하여 로봇(100)의 회전각도를 검출할 수 있다.
구체적으로, 연산부(120)는 추출된 각각의 엣지들의 엣지각도를 비교하여 서로 평행한 엣지각도를 가지는 엣지들의 그룹을 생성할 수 있으며, 가장 많은 엣지를 포함하는 그룹의 엣지각도를 주변영상 내 공간의 공간 각도로 판별할 수 있다.
예를들어, 도4 및 도5를 참조하면, 복수의 엣지(E) 중에서 어느 하나의 대상엣지와, 나머지 엣지(E)들의 엣지 각도(θ)를 비교하여, 해당 대상엣지와 수평하는 각도를 가지는 엣지의 개수를 카운트할 수 있다. 이때, 연산부(120)는 각각의 엣지 각도를 정규화(normalize)하여, 엣지 각도(θ)가 -45°≤θ<45° 범위를 만족하도록 할 수 있다. 즉, 엣지 각도가 -45°≤θ<45° 범위를 만족할 때까지 90°를 더하거나 뺄 수 있다.
이후, 주변 영상 내 포함되는 모든 엣지들을 대상엣지로 설정하여 각각의 대상엣지에 수평하는 각도를 가지는 엣지의 개수를 카운트할 수 있다. 여기서, 연산부(120)는 다음을 만족하면 대상엣지와 수평하는 엣지로 판별할 수 있다.
Figure pat00004
이때, Normalize는 엣지 각도의 범위를 -45°≤θ<45°로 변환하는 정규화 함수이고, θi는 대상엣지의 엣지 각도, θj는 전체 엣지 중 j 번째 엣지의 엣지 각도이며, ε은 0 이상의 임의의 상수이다.
즉, 각각의 대상엣지 별로 그룹을 생성할 수 있으며, 각각의 그룹 내에 포함되는 엣지의 개수가 가장 많은 그룹을 대표 엣지로 선택할 수 있다.
이후, 연산부(120)는 대표 엣지의 엣지 각도를 해당 주변 영상에 나타난 공간의 공간각도로 설정할 수 있다.
추가적으로, 여기서는 각 그룹에 포함되는 엣지를 카운팅할 때 대상엣지와 수평인 각도를 가지는 엣지들을 카운트하였으나, 실시예에 따라서는 대상엣지와 수직인 각도를 가지는 엣지들을 카운트하도록 하는 것도 가능하다. 이 경우,
Figure pat00005
를 이용하여 대상엣지와 수직인 엣지들을 판별할 수 있다.
한편, 연산부(120)는 기준각도와 공간각도의 차를 이용하여, 로봇(100)의 회전각도를 구할 수 있으며, 회전각도로부터 로봇(100)의 포즈를 판별할 수 있다. 즉, 연산부(120)는 θr,k = Normalize(θ0 - θs,k)를 이용하여 로봇(100)의 회전각도를 구할 수 있으며, 이때 θr,k는 로봇(100)의 회전각도, θ0는 기준각도, θs,k는 k 위치에서의 공간각도에 해당한다.
기준각도는 θ0 = θr,0 + θs,0로 나타낼 수 있으며, θ0는 기준각도, θr,0는 초기화시 로봇(100)의 초기각도, θs,0는 초기화시점의 주변 영상으로부터 추출한 공간각도에 해당한다. 즉, 연산부(120)는 먼저 초기화를 통하여 기준각도를 고정할 수 있으며, 이후 기준각도와 공간각도 사이의 차이를 이용하여 로봇(100)의 회전각도를 연산할 수 있다. 천장의 구조나 무늬 등의 형상은 각 공간마다 일정하다고 가정할 수 있으므로, 해당 공간에서 초기화를 통하여 기준각도를 고정할 수 있다. 이후, 로봇(100)에서 측정한 공간각도와 기준각도의 차이를 이용하여 공간에 대한 로봇(1)의 상대적인 각도를 구하는 것이므로, 누적 각도오차없이 정확하게 로봇(100)의 회전각도를 구하는 것이 가능하다.
종래에는 현재 로봇의 포즈를 기반으로 랜드마크의 위치를 구하고, 로봇을 이동한 후 다시 랜드마크의 위치를 구하고 이를 기반으로 로봇의 회전각도를 다시 추정하는 방식을 활용하였다. 이 경우, 로봇의 위치 추정에 오차가 존재하는 경우, 오차가 지속적으로 누적되므로 로봇의 회전각도에 대한 누적오차가 점차 커지는 등의 문제점이 존재한다.
반면에, 여기서는 해당 공간에 대한 기준각도를 구하고, 해당 기준각도로부터 로봇(100)의 상대적인 각도를 구하는 것이므로, 로봇(100)의 이동에 따른 누적오차없이 정확하게 회전각도를 구하는 것이 가능하다.
실시예에 따라서는, 공간각도가 0도일 때 로봇(100)의 회전각도가 0도가 되도록 초기화를 수행할 수 있으며, 이 경우, 기준각도는 0이 될 수 있다. 즉, 공간각도는 그대로 로봇(100)의 회전각도에 대응하므로, 이를 이용하여 로봇(100)의 회전각도를 용이하게 구할 수 있다.
도6을 참조하면, 도6(a)는 주변영상(I)으로부터 추출한 공간각도가 35.06도인 경우에 해당하고, 도6(b)는 주변영상(I)으로부터 추출한 공간각도가 -25.25도인 경우에 해당하며, 도6(c)는 주변영상(I)으로부터 추출한 공간각도가 0.86도인 경우에 각각 해당한다. 따라서, 연산부(120)는 각각의 공간각도로부터 로봇(100)의 회전각도를 35.06, -25.25, 0.86으로 구할 수 있으며, 이를 바탕으로 로봇(100)의 포즈를 판별할 수 있다.
추가적으로, 실시예에 따라서는, 연산부(120)가 기준각도와 공간각도의 차만으로 로봇(100)의 회전각도를 구하지 않고, 기준각도와 공간각도의 차에 0도, +90도, -90도, +180도 및 -180도 등을 더하여 회전각도에 대한 후보군을 생성할 수 있다. 즉, 공간각도를 이용하여 로봇(100)의 회전각도를 구하는 경우, ±90나 ±180도 차이나는 경우를 정확하게 판별하지 못할 수 있으므로, 연산부(120)는 다음과 같이 후보군(H: Hypothesis)을 미리 생성한 후, 후보군 중 어느 하나를 로봇(100)의 회전각도로 설정할 수 있다.
Figure pat00006
여기서, 연산부(120)는 후보군 중 어느 하나를 선택하기 위하여, 로봇(100)의 다른 측위수단에서 측정한 각도정보(
Figure pat00007
)를 이용할 수 있다. 즉, 해당 각도정보(
Figure pat00008
)와 후보군(H)을 비교하여, 후보군(H) 중에서 각도정보(
Figure pat00009
)와 가장 근사한 값을 최종적으로 로봇(100)의 회전각도로 설정할 수 있다. 여기서, 다른 측위수단은 로봇(100)에 구비된 휠인코더 센서나 IMU 센서, 자이로 센서 등일 수 있다. 즉, 휠인코너 센서나 IMU 센서로부터 구한 오도메트리(Odometry)나, 자이로 센서에서 측정한 각속도 등을 기반으로 로봇(100)의 회전각도에 대한 각도정보(
Figure pat00010
)를 생성하여 활용할 수 있다. 각도정보(
Figure pat00011
)는 부정확한 결과를 제공하지만, ±90나 ±180의 범위 내에서는 정확한 정보를 제공할 수 있다. 따라서, 연산부(120)는 후보군(H) 중에서 각도정보(
Figure pat00012
)와 가장 근사한 값을, 로봇(100)의 회전각도로 선택할 수 있다.
도7은 본 발명의 일 실시예에 의한 로봇(100)을 나타내는 개략도이다.
도7을 참조하면, 로봇(100)은 메모리(10), 프로세서(20), 통신 인터페이스(30), 입출력 인터페이스(40) 등을 포함할 수 있다. 메모리(10)는 컴퓨터에서 판독 가능한 기록매체로서, RAM(random access memory), ROM(read only memory) 및 디스크 드라이브와 같은 비소멸성 대용량 기록장치(permanent mass storage device)를 포함할 수 있다. 여기서 ROM과 디스크 드라이브와 같은 비소멸성 대용량 기록장치는 메모리(10)와는 구분되는 별도의 영구 저장 장치로서 로봇(100)에 포함될 수도 있다. 또한, 메모리(10)에는 운영체제와 적어도 하나의 프로그램 코드가 저장될 수 있다. 이러한 소프트웨어 구성요소들은 메모리(10)와는 별도의 컴퓨터에서 판독 가능한 기록매체로부터 메모리(10)로 로딩될 수 있다. 이러한 별도의 컴퓨터에서 판독 가능한 기록매체는 플로피 드라이브, 디스크, 테이프, DVD/CD-ROM 드라이브, 메모리 카드 등의 컴퓨터에서 판독 가능한 기록매체를 포함할 수 있다. 다른 실시예에서 소프트웨어 구성요소들은 컴퓨터에서 판독 가능한 기록매체가 아닌 통신 인터페이스(30)를 통해 메모리(10)에 로딩될 수도 있다. 예를 들어, 소프트웨어 구성요소들은 네트워크(N)를 통해 수신되는 파일들에 의해 설치되는 컴퓨터 프로그램에 기반하여 로봇(100)의 메모리(10)에 로딩될 수 있다.
프로세서(20)는 기본적인 산술, 로직 및 입출력 연산을 수행함으로써, 컴퓨터 프로그램의 명령을 처리하도록 구성될 수 있다. 명령은 메모리(10) 또는 통신 인터페이스(30)에 의해 프로세서(20)로 제공될 수 있다. 예를 들어 프로세서(20)는 메모리(10)와 같은 기록 장치에 저장된 프로그램 코드에 따라 수신되는 명령을 실행하도록 구성될 수 있다.
통신 인터페이스(30)은 네트워크(N)를 통해 로봇(100)이 다른 장치(일례로, 제어서버)와 서로 통신하기 위한 기능을 제공할 수 있다. 일례로, 로봇(100)의 프로세서(20)가 메모리(10)와 같은 기록 장치에 저장된 프로그램 코드에 따라 생성한 요청이나 명령, 데이터, 파일 등이 통신 인터페이스(30)의 제어에 따라 네트워크(N)를 통해 다른 장치들로 전달될 수 있다. 역으로, 다른 장치로부터의 신호나 명령, 데이터, 파일 등이 네트워크(N)를 거쳐 로봇(100)의 통신 인터페이스(30)를 통해 수신될 수 있다. 통신 인터페이스(30)를 통해 수신된 신호나 명령, 데이터 등은 프로세서(20)나 메모리(10)로 전달될 수 있고, 파일 등은 로봇(100)이 더 포함할 수 있는 저장 매체(상술한 영구 저장 장치)로 저장될 수 있다.
입출력 인터페이스(40)는 입출력 장치(50)와의 인터페이스를 위한 수단일 수 있다. 예를 들어, 입력 장치는 마이크, 키보드 또는 마우스 등의 장치를, 그리고 출력 장치는 디스플레이, 스피커와 같은 장치를 포함할 수 있다. 다른 예로 입출력 인터페이스(40)는 터치스크린과 같이 입력과 출력을 위한 기능이 하나로 통합된 장치와의 인터페이스를 위한 수단일 수도 있다. 입출력 장치(50)는 로봇(100)과 하나의 장치로 구성될 수도 있다.
도8은 본 발명의 일 실시예에 의한 로봇의 동작을 제어하는 제어시스템이 구축된 건물(B)을 나타내는 개략도이다. 도8에 도시한 바와 같이, 건물(B)을 대상영역으로 설정할 수 있으며, 대상영역 내에서 서비스를 제공하는 복수의 로봇(100)들이 건물(B) 내 포함될 수 있다. 또한, 건물(B)은 로봇(100)이 주행하는 실내 영역을 포함하고, 실내 영역은 공간특성에 따라 복수의 공간으로 구별되는 것일 수 있다. 로봇(100)은 네트워크(N)를 통하여 제어서버(200)와의 통신을 수행할 수 있으며, 제어서버(200)의 제어에 의하여 이동 등의 동작을 수행할 수 있다. 제어서버(200)는 건물(B) 내에 구축되지 않을 수 있으며, 건물(B)과는 별도의 클라우드 서버 등으로 구현될 수 있다. 로봇(100)들은 구비된 카메라(110)로부터 취득한 주변 영상을 기반으로, 건물(B) 내에서 각각의 회전각도 등 위치를 검출할 수 있다. 다만, 로봇(100)의 회전각도를 판별하는 구체적인 내용은 앞서 설명하였으므로, 여기서는 구체적인 설명을 생략한다.
도9는 본 발명의 일 실시예에 의한 로봇의 포즈 판별 방법을 나타내는 순서도이다. 여기서, 도9의 각 단계들은 본 발명의 일 실시예에 의한 로봇에 의하여 수행될 수 있다.
로봇은 구비된 카메라로부터 로봇의 상방을 촬영한 주변 영상을 입력받을 수 있다(S10). 로봇은 자체에 설치된 카메라를 이용하여 이동 중에 주변을 촬영한 주변영상을 생성할 수 있으며, 이때 카메라를 연직상방을 향하도록 설치된 것일 수 있다. 즉, 주변 영상은 로봇의 상방을 촬영한 대상영역의 천장을 촬영한 영상일 수 있다.
로봇은, 주변 영상 내 포함된 객체들의 엣지(edge)를 추출하고, 각각의 엣지들의 엣지각도를 구할 수 있다(S20). 구체적으로, 로봇은 주변 영상에 포함된 픽셀들의 픽셀값 변화에 대한 기울기값(gradient)을 구할 수 있으며, 기울기값의 크기가 임계치 이상인 픽셀을 엣지로 추출할 수 있다.
즉,
Figure pat00013
를 이용하여, 주변 영상에 포함된 픽셀들의 x축 기울기값 gx 및 y축 기울기값 gy를 각각 구할 수 있으며,
Figure pat00014
를 이용하여, 주변 영상 내 x, y 좌표에 대응하는 픽셀에서의 기울기값의 크기(M)를 구할 수 있다. 여기서, 로봇은 각각의 엣지들의 기울기값의 크기를 미리 설정한 임계치와 비교할 수 있으며, 임계치 이상인 픽셀들에 한하여 엣지로 추출할 수 있다.
또한, 로봇은 각각의 엣지에 해당하는 픽셀들의 x축 기울기값과 y축 기울기값에 아크탄젠트(arctangent) 연산을 적용하여, 엣지들의 엣지각도를 구할 수 있다. 즉,
Figure pat00015
를 이용하여, 엣지각도(θ)를 구할 수 있다.
이후, 로봇은 엣지각도를 기반으로 상대적인 로봇의 각도를 구하여, 로봇의 회전각도를 검출할 수 있다(S30). 즉, 로봇은 추출된 각각의 엣지들의 엣지각도를 비교하여 서로 평행한 엣지각도를 가지는 엣지들의 그룹을 생성할 수 있으며, 가장 많은 엣지를 포함하는 그룹의 엣지각도를 주변영상 내 공간의 공간 각도로 판별할 수 있다. 예를들어, 주변 영상 내 각각의 엣지에서의 엣지각도를 다른 엣지들과 비교할 수 있으며, 해당 엣지각도와 수평하는 각도를 가지는 엣지들의 개수를 카운트할 수 있다. 이때, 로봇은 각각의 엣지 각도를 정규화(normalize)하여, 엣지 각도(θ)가 -45°≤θ<45° 범위를 만족하도록 할 수 있으며,
Figure pat00016
를 이용하여 수평인 엣지를 판별할 수 있다. 여기서, Normalize는 엣지 각도의 범위를 -45°≤θ<45°로 변환하는 정규화 함수이고, θi는 해당 엣지의 엣지각도, θj는 전체 엣지 중 j 번째 엣지의 엣지 각도이며, ε은 0 이상의 임의의 상수이다. 로봇은 해당 엣지각도와 수평하는 각도를 가지는 엣지의 개수가 가장 많은 엣지를 대표 엣지로 선택할 수 있으며, 대표 엣지의 엣지 각도를 해당 공간의 공간각도로 설정할 수 있다.
이후, 로봇은 기준각도와 공간각도의 차를 이용하여, 로봇의 회전각도를 구할 수 있으며, 회전각도로부터 로봇의 포즈를 판별할 수 있다. 즉, 로봇은 θr,k = Normalize(θ0 - θs,k)를 이용하여 로봇의 회전각도를 구할 수 있으며, 여기서 θr,k는 로봇(1)의 회전각도, θ0는 기준각도, θs,k는 k 위치에서의 공간각도에 해당한다. 또한, 기준각도는 θ0 = θr,0 + θs,0로 나타낼 수 있으며, θ0는 기준각도, θr,0는 초기화시 로봇의 초기각도, θs,0는 초기화시점의 주변 영상으로부터 추출한 공간각도에 해당한다.
추가적으로, 실시예에 따라서는, 로봇이 기준각도와 공간각도의 차만으로 로봇의 회전각도를 구하지 않고, 기준각도와 공간각도의 차에 0도, +90도, -90도, +180도 및 -180도 등을 더하여 회전각도에 대한 후보군을 생성할 수 있다. 즉, 로봇은 다음과 같이 후보군(H: Hypothesis)을 미리 생성한 후, 후보군 중 어느 하나를 로봇의 회전각도로 설정할 수 있다.
Figure pat00017
이후, 로봇은 후보군 중 어느 하나를 선택하기 위하여, 로봇의 다른 측위수단에서 측정한 각도정보(
Figure pat00018
)를 이용할 수 있다. 즉, 해당 각도정보(
Figure pat00019
)와 후보군(H)을 비교하여, 후보군(H) 중에서 각도정보(
Figure pat00020
)와 가장 근사한 값을 최종적으로 로봇의 회전각도로 설정할 수 있다. 여기서, 다른 측위수단은 로봇에 구비된 휠인코더 센서나 IMU 센서, 자이로 센서 등일 수 있으며, 휠인코너 센서나 IMU 센서로부터 구한 오도메트리(Odometry)나, 자이로 센서에서 측정한 각속도 등을 기반으로 로봇의 회전각도에 대한 각도정보(
Figure pat00021
)를 생성하여 활용할 수 있다. 일반적으로 각도정보(
Figure pat00022
)는 로봇의 회전각도에 대한 부정확한 결과를 제공하지만, ±90나 ±180의 범위 내에서는 정확한 정보를 제공할 수 있다. 따라서, 로봇은 후보군(H)에 포함된 값 중에서 각도정보(
Figure pat00023
)와 가장 근사한 값을 로봇의 회전각도로 선택할 수 있다.
전술한 본 발명은, 프로그램이 기록된 매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 매체는, 컴퓨터로 실행 가능한 프로그램을 계속 저장하거나, 실행 또는 다운로드를 위해 임시 저장하는 것일 수도 있다. 또한, 매체는 단일 또는 수개 하드웨어가 결합된 형태의 다양한 기록수단 또는 저장수단일 수 있는데, 어떤 컴퓨터 시스템에 직접 접속되는 매체에 한정되지 않고, 네트워크 상에 분산 존재하는 것일 수도 있다. 매체의 예시로는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등을 포함하여 프로그램 명령어가 저장되도록 구성된 것이 있을 수 있다. 또한, 다른 매체의 예시로, 애플리케이션을 유통하는 앱 스토어나 기타 다양한 소프트웨어를 공급 내지 유통하는 사이트, 서버 등에서 관리하는 기록매체 내지 저장매체도 들 수 있다. 따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.
본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다. 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 본 발명에 따른 구성요소를 치환, 변형 및 변경할 수 있다는 것이 명백할 것이다.
1: 로봇 10: 메모리
20: 프로세서 30: 통신인터페이스
40: 입출력인터페이스 50: 입출력장치
100: 제어서버 110: 영상수신부
120: 연산부

Claims (10)

  1. 로봇에 구비된 카메라로부터 취득한 주변 영상을 기반으로, 로봇의 포즈(pose)를 판별하는 로봇의 회전각도 검출방법에 있어서,
    카메라로부터 상기 로봇의 상방을 촬영한 주변 영상을 입력받는 단계;
    상기 주변 영상 내 포함된 객체들의 엣지(edge)를 추출하고, 각각의 엣지들의 엣지각도를 구하는 단계; 및
    상기 엣지각도를 기반으로 상대적인 로봇의 각도를 구하여, 상기 로봇의 회전각도를 검출하는 단계를 포함하는 로봇의 회전각도 검출방법.
  2. 제1항에 있어서, 상기 엣지각도를 추출하는 단계는
    상기 주변 영상에 포함된 픽셀들의 픽셀값 변화에 대한 기울기값(gradient)을 구하고, 상기 기울기값의 크기가 임계치 이상인 픽셀을 상기 엣지로 추출하는 것을 특징으로 하는 로봇의 회전각도 검출방법.
  3. 제2항에 있어서, 상기 엣지각도를 추출하는 단계는
    상기 엣지에 해당하는 픽셀들의 x축 기울기값과 y축 기울기값에 대한 아크탄젠트(arctangent) 연산을 이용하여, 상기 엣지들의 엣지각도를 구하는 것을 특징으로 하는 로봇의 회전각도 검출방법.
  4. 제1항에 있어서, 상기 엣지각도를 추출하는 단계는
    Figure pat00024

    를 이용하여, 상기 주변 영상에 포함된 픽셀들의 x축 기울기값 gx 및 y축 기울기값 gy를 구하고,
    Figure pat00025

    를 이용하여, 상기 주변 영상 내 x, y 좌표에 대응하는 픽셀에서의 기울기값의 크기(M)를 구하며,
    Figure pat00026

    를 이용하여, 상기 엣지각도(θ)를 구하는 것을 특징으로 하는 로봇의 회전각도 검출방법.
  5. 제1항에 있어서, 상기 회전각도를 검출하는 단계는
    상기 추출된 각각의 엣지들의 엣지각도를 비교하여 서로 평행한 엣지각도를 가지는 엣지들의 그룹을 생성하고, 가장 많은 엣지를 포함하는 그룹의 엣지각도를 상기 주변영상 내 공간각도로 판별하는 것을 특징으로 하는 로봇의 회전각도 검출방법.
  6. 제5항에 있어서, 상기 회전각도를 검출하는 단계는
    기준각도와 상기 공간각도의 차를 이용하여 상기 로봇의 회전각도를 구하고, 상기 회전각도로부터 상기 로봇의 포즈를 판별하는 것으로,
    상기 기준각도는 초기화시점의 공간각도와 상기 로봇의 초기각도의 합인 것을 특징으로 하는 로봇의 회전각도 검출방법.
  7. 제5항에 있어서, 상기 회전각도를 검출하는 단계는
    기준각도와 상기 공간각도의 차에 0도, +90도, -90도, +180도 및 -180도 중 적어도 어느 하나를 더하여, 상기 회전각도에 대한 후보군을 생성하고, 상기 후보군과 상기 로봇의 다른 측위수단으로 측정한 각도정보를 비교하여, 가장 근사한 값을 상기 로봇의 회전각도로 설정하는것을 특징으로 하는 로봇의 회전각도 검출방법.
  8. 하드웨어와 결합되어 제1항 내지 제7항 중 어느 한 항의 로봇의 회전각도 검출방법을 실행시키기 위하여 매체에 저장된 컴퓨터 프로그램.
  9. 카메라로부터 취득한 주변 영상을 기반으로, 로봇의 포즈(pose)를 판별하는 로봇에 있어서,
    상기 로봇의 상방을 촬영하여 주변 영상을 생성하는 카메라부; 및
    상기 주변 영상 내 포함된 객체들의 엣지(edge)를 추출하고, 각각의 엣지들의 엣지각도를 추출하며, 상기 엣지각도를 기반으로 상대적인 로봇의 각도를 구하여, 상기 로봇의 회전각도를 검출하는 연산부를 포함하는 로봇.
  10. 건물에 있어서,
    상기 건물 내를 주행하며 서비스를 제공하는 적어도 하나의 로봇이 배치되고,
    상기 로봇은 제어서버와의 통신을 통하여 제어되며,
    상기 로봇은컴퓨터에서 판독 가능한 명령을 실행하도록 구현되는 적어도 하나의 프로세서를 포함하고,
    상기 적어도 하나의 프로세서는,
    카메라로부터 상기 로봇의 상방을 촬영한 주변 영상을 입력받고,
    상기 주변 영상 내 포함된 객체들의 엣지(edge)를 추출하고, 각각의 엣지들의 엣지각도를 추출하며,
    상기 엣지각도를 기반으로 상대적인 로봇의 각도를 구하여, 상기 로봇의 회전각도를 검출하는, 건물.
KR1020210190057A 2021-12-28 2021-12-28 로봇의 회전각도 검출방법,이를 이용하는 로봇 및 건물 KR20230100307A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020210190057A KR20230100307A (ko) 2021-12-28 2021-12-28 로봇의 회전각도 검출방법,이를 이용하는 로봇 및 건물
PCT/KR2022/021280 WO2023128504A1 (ko) 2021-12-28 2022-12-26 로봇의 회전각도 검출방법, 이를 이용하는 로봇 및 건물

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210190057A KR20230100307A (ko) 2021-12-28 2021-12-28 로봇의 회전각도 검출방법,이를 이용하는 로봇 및 건물

Publications (1)

Publication Number Publication Date
KR20230100307A true KR20230100307A (ko) 2023-07-05

Family

ID=86999924

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210190057A KR20230100307A (ko) 2021-12-28 2021-12-28 로봇의 회전각도 검출방법,이를 이용하는 로봇 및 건물

Country Status (2)

Country Link
KR (1) KR20230100307A (ko)
WO (1) WO2023128504A1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100119442A (ko) 2009-04-30 2010-11-09 엘지전자 주식회사 이동 로봇, 로봇 청소기 및 이동 로봇의 각도 검출 방법

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100500831B1 (ko) * 2002-11-25 2005-07-12 삼성광주전자 주식회사 로봇청소기의 회전각도 산출방법
KR100877071B1 (ko) * 2007-07-18 2009-01-07 삼성전자주식회사 파티클 필터 기반의 이동 로봇의 자세 추정 방법 및 장치
KR101311100B1 (ko) * 2011-08-27 2013-09-25 고려대학교 산학협력단 천장 임의 형상 특성 활용 이동 로봇 위치 인식 방법
KR101784183B1 (ko) * 2014-06-17 2017-10-11 주식회사 유진로봇 ADoG 기반 특징점을 이용한 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100119442A (ko) 2009-04-30 2010-11-09 엘지전자 주식회사 이동 로봇, 로봇 청소기 및 이동 로봇의 각도 검출 방법

Also Published As

Publication number Publication date
WO2023128504A1 (ko) 2023-07-06

Similar Documents

Publication Publication Date Title
US10133278B2 (en) Apparatus of controlling movement of mobile robot mounted with wide angle camera and method thereof
US9990726B2 (en) Method of determining a position and orientation of a device associated with a capturing device for capturing at least one image
KR101538775B1 (ko) 전방 영상을 이용한 위치 인식 장치 및 방법
Winterhalter et al. Accurate indoor localization for RGB-D smartphones and tablets given 2D floor plans
KR101749017B1 (ko) 주변 정보를 이용하는 스피드-업 탬플릿 매칭
Ganganath et al. Mobile robot localization using odometry and kinect sensor
EP2495632B1 (en) Map generating and updating method for mobile robot position recognition
Acharya et al. BIM-Tracker: A model-based visual tracking approach for indoor localisation using a 3D building model
US9978149B1 (en) System and method for door detection for corridor exploration
WO2016077703A1 (en) Gyroscope assisted scalable visual simultaneous localization and mapping
Gao et al. Robust RGB-D simultaneous localization and mapping using planar point features
US10061324B2 (en) Autonomous moving device and self position estimation method
KR20110122022A (ko) 지도 생성 장치 및 방법
KR20150144731A (ko) 다이렉트 트래킹을 이용하여 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법
KR20110097140A (ko) 이동 로봇의 위치 추정 장치 및 방법
KR20150144727A (ko) 에지 기반 재조정을 이용하여 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법
KR101880185B1 (ko) 이동체 포즈 추정을 위한 전자 장치 및 그의 이동체 포즈 추정 방법
KR20150144730A (ko) ADoG 기반 특징점을 이용한 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법
CN111220148A (zh) 移动机器人的定位方法、系统、装置及移动机器人
KR102006291B1 (ko) 전자 장치의 이동체 포즈 추정 방법
US11257177B2 (en) Moving object action registration apparatus, moving object action registration system, and moving object action determination apparatus
Troiani et al. Low computational-complexity algorithms for vision-aided inertial navigation of micro aerial vehicles
Premachandra et al. Improving landmark detection accuracy for self-localization through baseboard recognition
KR20230100307A (ko) 로봇의 회전각도 검출방법,이를 이용하는 로봇 및 건물
Wang et al. Detection of moving objects in image plane for robot navigation using monocular vision

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E601 Decision to refuse application