KR101866660B1 - 동적인 환경에서 배경모델에 기반한 rgb-d 시각 주행 거리 측정 방법 및 장치 - Google Patents

동적인 환경에서 배경모델에 기반한 rgb-d 시각 주행 거리 측정 방법 및 장치 Download PDF

Info

Publication number
KR101866660B1
KR101866660B1 KR1020160135992A KR20160135992A KR101866660B1 KR 101866660 B1 KR101866660 B1 KR 101866660B1 KR 1020160135992 A KR1020160135992 A KR 1020160135992A KR 20160135992 A KR20160135992 A KR 20160135992A KR 101866660 B1 KR101866660 B1 KR 101866660B1
Authority
KR
South Korea
Prior art keywords
background model
image
sensor
estimating
rgb
Prior art date
Application number
KR1020160135992A
Other languages
English (en)
Other versions
KR20180043101A (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 KR1020160135992A priority Critical patent/KR101866660B1/ko
Publication of KR20180043101A publication Critical patent/KR20180043101A/ko
Application granted granted Critical
Publication of KR101866660B1 publication Critical patent/KR101866660B1/ko

Links

Images

Classifications

    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/254Analysis of motion involving subtraction of images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/269Analysis of motion using gradient-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/285Analysis of motion using a sequence of stereo image pairs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • G06T7/33Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
    • G06T7/337Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods involving reference images or patches

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Image Analysis (AREA)

Abstract

동적인 환경에서 배경모델에 기반한 RGB-D 시각 주행 거리 측정 방법 및 장치가 개시된다. RGB-D 센서를 이용한 시각 주행 거리 측정 방법은, 컬러 이미지와 깊이 이미지(depth image)를 포함하는 현재 이미지를 기반으로 배경 모델(background model)을 추정하는 단계, 추정된 상기 배경 모델을 대상으로, 필터링하고자 하는 대상 물체(target object)의 속도에 기초하여 라벨링(labeling)을 수행하는 단계, 및 추정된 상기 배경 모델과 라벨링된 배경 모델에 기초하여 시간적으로 연속하는 상기 현재 이미지와 이전 이미지 사이에서 센서의 주행거리(ego-motion)를 추정하는 단계를 포함할 수 있다.

Description

동적인 환경에서 배경모델에 기반한 RGB-D 시각 주행 거리 측정 방법 및 장치{METHOD AND APPARATUS FOR RGB-D DENSE VISUAL ODOMETRY BASED ON BACKGROUND MODEL IN A DYNAMIC ENVIRONMENT}
본 발명의 실시예들은 동적인 환경에서 배경모델을 기반으로 자율주행을 위한 시각주행거리를 측정하는 기술에 관한 것이다.
기존에는 자율 주행을 위해 모바일 로봇에 부착된 엔코더 데이터(encoder data)를 이용하여 주행거리를 측정하였다. 모바일 로봇에 부착된 엔코더 데이터를 이용하는 경우, 오로지 모바일 로봇에만 국한되기 때문에 다양한 형태의 로봇에 적용하여 주행거리를 측정하는데 어려움이 존재한다.
최근에는 시간적으로 연속되는 영상 이미지를 활용하여 시각주행거리를 측정하고 있다. 시각주행거리란 연속되는 2개의 이미지 사이에서의 로봇의 포즈(pose) 변화를 영상처리를 통해 추정하는 것을 의미한다. 이러한 시각주행거리 측정은 정적인 환경, 즉, 아무것도 움직이지 않는 환경에서의 측정을 기반으로 한다. 그러나, 실제 환경에서는 자동차, 사람, 비행기 동물 등의 다양한 물체에서 여러 형태의 동적인 움직임이 존재한다. 이러한 동적인 움직임이 존재하는 환경에서 영상을 기반으로 하는 시각주행거리 측정을 하는 경우, 실제로 로봇이 움직이지 않았는데 동적인 물체의 움직임으로 인해 로봇이 움직인 것으로 잘못 측정되는 결과가 발생한다.
따라서, 모바일 로봇뿐만 아니라 다양한 로봇 형태에 적용 가능하고, 동적인 물체의 움직임이 존재하는 환경에서 동적인 물체의 움직임으로 인한 측정 오차를 감소 또는 제거하는 시각주행거리 측정 기술이 요구되고 있다. 한국공개특허 제10-2015-0079098호는 시각주행거리 측정을 위한 시공간적 3차원 벡터 필터링 기법을 제시하고 있다.
[1] A. Elgammal, D. Harwood, and L. Davis, "Non-parametric model for background subtraction," in Computer VisionECCV 2000. Springer, 2000, pp. 751-767. [2] C. Kerl, J. Sturm, and D. Cremers, "Robust odometry estimation for rgb-d cameras," in Robotics and Automation (ICRA), 2013 IEEE International Conference on. IEEE, 2013, pp. 3748-3754. [3] F. Steinbrucker, J. Sturm, and D. Cremers, "Real-time visual odometry from dense rgb-d images," in Computer Vision Workshops (ICCV Workshops), 2011 IEEE International Conference on. IEEE, 2011, pp.719-722.
본 발명은 동적인 환경에서 RGB-D 센서를 이용하여 배경모델에 기반으로 시각주행거리를 측정하는 기술에 관한 것이다.
RGB-D 센서를 이용한 시각 주행 거리 측정 방법은, 컬러 이미지와 깊이 이미지(depth image)를 포함하는 현재 이미지를 기반으로 배경 모델(background model)을 추정하는 단계, 추정된 상기 배경 모델을 대상으로, 필터링하고자 하는 대상 물체(target object)의 속도에 기초하여 라벨링(labeling)을 수행하는 단계, 및 추정된 상기 배경 모델과 라벨링된 배경 모델에 기초하여 시간적으로 연속하는 상기 현재 이미지와 이전 이미지 사이에서 센서의 주행거리(ego-motion)를 추정하는 단계를 포함할 수 있다.
일측면에 따르면, 상기 배경 모델을 추정하는 단계는, 상기 현재 이미지를 기준으로 적어도 하나의 이전 이미지를 변환(warping)하는 단계, 및 변환된(warped) 적어도 하나의 이전 이미지와 상기 현재 이미지를 확률 알고리즘을 기초로 융합하여 상기 배경 모델을 추정하는 단계를 포함할 수 있다.
다른 측면에 따르면, 상기 현재 이미지를 기준으로 변환(warping)하는 단계는, 이전 이미지의 깊이 정보를 이용하여 이전 이미지의 깊이 이미지에 포함된 각 픽셀들을 현재 이미지의 깊이 이미지에 포함된 각 픽셀들에 재맵핑(remapping)하는 단계를 포함할 수 있다.
또 다른 측면에 따르면, 상기 배경 모델을 추정하는 단계는, 상기 현재 이미지에 포함된 깊이 이미지와 이전 이미지의 깊이 이미지를 이용하여 상기 배경 모델을 추정할 수 있다.
또 다른 측면에 따르면, 상기 라벨링을 수행하는 단계는, 상기 배경 모델에 포함된 물체들(objects)을 각 물체의 속도에 따라 정적 물체와 상기 필터링하고자 하는 대상 물체인 동적 물체로 구분하는 라벨링을 수행할 수 있다.
또 다른 측면에 따르면, 상기 현재 이미지는 RGB-D 센서에서 센싱된 RGB-D 이미지를 포함하고, 상기 센서의 주행거리를 추정하는 단계는, 상기 RGB-D 이미지에 해당하는 전체 밀도 정보와 에너지 기반 접근법(energy-based approach)에 기초하여 상기 주행거리를 추정할 수 있다.
또 다른 측면에 따르면, 상기 센서의 주행거리(ego-motion)를 추정하는 단계는, 상기 라벨링된 배경 모델에서 아웃라이어(outliers)를 제거하는 단계를 포함할 수 있다.
또 다른 측면에 따르면, 상기 센서의 주행거리(ego-motion)를 추정하는 단계는, 추정된 상기 배경 모델과 센서모델을 이용하여 가중치함수를 계산하고, 계산된 가중치함수를 이용하여 상기 주행거리를 추정할 수 있다.
또 다른 측면에 따르면, 상기 센서의 주행거리(ego-motion)를 추정하는 단계는, 기정의된 일정시간 동안 센싱되는 연속하는 프레임들 간의 동차변환행렬을 누적하여 상기 주행거리를 추정할 수 있다.
또 다른 측면에 따르면, 상기 센서의 주행거리(ego-motion)를 추정하는 단계는, 리파인먼트 기법(refinement scheme)을 이용하여 상기 현재 이미지에 해당하는 강도값(intensity)을 업데이트하는 단계, 및 업데이트된 상기 강도값을 이용하여 상기 동차변환행렬을 계산하는 단계를 포함할 수 있다.
RGB-D 센서를 이용한 시각 주행 거리 측정 장치는, 컬러 이미지와 깊이 이미지(depth image)를 포함하는 현재 이미지를 생성하는 RGB-D 센서, 상기 현재 이미지를 기반으로 배경 모델(background model)을 추정하는 배경모델 추정부, 추정된 상기 배경 모델을 대상으로, 필터링하고자 하는 대상 물체(target object)의 속도에 기초하여 라벨링(labeling)을 수행하는 라벨링 수행부, 및 추정된 상기 배경 모델과 라벨링된 배경 모델에 기초하여 시간적으로 연속하는 상기 현재 이미지와 이전 이미지 사이에서 센서의 주행거리(ego-motion)를 추정하는 주행거리 추정부를 포함할 수 있다.
일측면에 따르면, 상기 배경모델 추정부는, 상기 현재 이미지를 기준으로 적어도 하나의 이전 이미지를 변환(warping)하고, 변환된(warped) 적어도 하나의 이전 이미지와 상기 현재 이미지를 확률 알고리즘을 기초로 융합하여 상기 배경 모델을 추정할 수 있다.
다른 측면에 따르면, 상기 배경모델 추정부는, 이전 이미지의 깊이 정보를 이용하여 이전 이미지의 깊이 이미지에 포함된 각 픽셀들을 현재 이미지의 깊이 이미지에 포함된 각 픽셀들에 재맵핑(remapping)할 수 있다.
또 다른 측면에 따르면, 상기 배경모델 추정부는, 상기 현재 이미지에 포함된 깊이 이미지와 이전 이미지의 깊이 이미지를 이용하여 상기 배경 모델을 추정할 수 있다.
또 다른 측면에 따르면, 상기 라벨링 수행부는, 상기 배경 모델에 포함된 물체들(objects)을 각 물체의 속도에 따라 정적 물체와 상기 필터링하고자 하는 대상 물체인 동적 물체로 구분하는 라벨링을 수행할 수 있다.
또 다른 측면에 따르면, 상기 현재 이미지는 RGB-D 이미지를 포함하고, 상기 주행거리 추정부는, 상기 RGB-D 이미지에 해당하는 전체 밀도 정보와 에너지 기반 접근법(energy-based approach)에 기초하여 상기 주행거리를 추정할 수 있다.
또 다른 측면에 따르면, 상기 주행거리 추정부는, 상기 라벨링된 배경 모델에서 아웃라이어(outliers)를 제거할 수 있다.
또 다른 측면에 따르면, 상기 주행거리 추정부는, 추정된 상기 배경 모델과 센서모델을 이용하여 가중치함수를 계산하고, 계산된 가중치함수를 이용하여 상기 주행거리를 추정할 수 있다.
또 다른 측면에 따르면, 상기 주행거리 추정부는, 상기 RGB-D 센서에서 기정의된 일정시간 동안 센싱되는 연속하는 프레임들 간의 동차변환행렬을 누적하여 상기 주행거리를 추정할 수 있다.
또 다른 측면에 따르면, 상기 주행거리 추정부는, 리파인먼트 기법(refinement scheme)을 이용하여 상기 현재 이미지에 해당하는 강도값(intensity)을 업데이트하고, 업데이트된 강도값을 이용하여 상기 동차변환행렬을 계산할 수 있다.
본 발명은 동적인 환경에서 RGB-D 센서를 이용하여 배경모델에 기반으로 시각주행거리를 측정함으로써, 동적인 움직임을 센싱하기 위한 센서(예컨대, IMU 센서)를 별도로 이용하지 않고도 동적임 움직임을 필터링하여 시각주행거리를 보다 정확하게 측정할 수 있다.
도 1은 본 발명의 일실시예에 있어서, 동적인 환경에서 RGB-D 센서를 이용하여 배경모델을 기반으로 시간주행거리를 측정하는 동작을 도시한 흐름도이다.
도 2는 본 발명의 일실시예에 있어서, 시간주행거리 측정 장치의 내부구성을 도시한 블록도이다.
도 3은 본 발명의 일실실예에 있어서, 배경모델 추정 및 주행거리 추정을 설명하기 위해 제공되는 도면이다.
도 4는 본 발명의 일실시예에 있어서, 현재 이미지를 기준으로 메모리에 저장된 이전 이미지들을 변환(warped)하는 과정을 도시한 도면이다.
도 5는 본 발명의 일실시예에 있어서, 현재 이미지와 이전 이미지 간의 깊이 차이의 분포를 도시한 도면이다.
도 6는 본 발명의 일실시예에 있어서, 라벨링된 배경모델을 도시한 도면이다.
이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
본 실시예들은 움직이는 동적인 물체(object)와 움직이지 않는 정적인 물체가 존재하는 실제 환경에서 RGB-D 센서(sensor)를 이용하여 생성된 이미지들을 대상으로 배경 모델(background model)을 추정하고, 추정된 배경 모델을 기반으로 센서의 시각주행거리(ego-motion)을 추정하는 기술에 관한 것이다. 특히, 본 실시예들은 컬러 이미지(RGB 이미지)와 깊이 이미지(depth image)를 동시에 제공하는 RGB-D 센서(예컨대, RGB-D 카메라)를 이용하여 시각주행거리를 측정하여, 시각 센서를 사용한 자율주행을 제공하는 기술에 관한 것이다.
본 명세서에서, 시각주행거리(ego-motion)는 시간적으로 연속하는 둘 이상의 이미지들 사이에서 센서(예컨대, 모바일 로봇, 자율주행 자동차, 무인기, 휴머노이드, 보행 로봇 등)의 이동 거리, 포즈(pose) 변화 등을 추정하는 것을 나타낼 수 있다. 예를 들어, 주행거리는 시간 t에서 시간 t+1 동안 로봇 등이 얼만큼 이동했는지(즉, 얼마나 포즈가 변했는지) 여부를 나타낼 수 있다.
본 실시예들에서, 현재 이미지는 현재 시점 t에 RGB-D 센서에서 센싱을 통해 생성된 RGB-D 이미지를 나타내고, 이전 이미지는 현재 이미지와 시간적으로 연속하는 이미지로서, 상기 현재 시점 t에 상기 현재 이미지를 생성하기 직전인 t-1 시점에 센싱을 통해 생성된 RGB-D 이미지를 나타낼 수 있다.
본 실시예들에서, 배경 모델(background model)은 동적 환경에서 시간주행거리 측정 시 움직이는 물체, 즉, 동적인 물체의 영향을 감소 또는 제거시키기 위해 이용될 수 있으며, 배경 분리(background subtraction) 분야에서 이용되는 비매개 모델(non-parametric model)을 이용하여 배경 모델이 추정될 수 있다.
도 1은 본 발명의 일실시예에 있어서, 동적인 환경에서 RGB-D 센서를 이용하여 배경모델을 기반으로 시간주행거리를 측정하는 동작을 도시한 흐름도이고, 도 2는 본 발명의 일실시예에 있어서, 시간주행거리 측정 장치의 내부구성을 도시한 블록도이다.
도 2에서, 시간주행거리 측정 장치(200)는 RGB-D 센서(210), 배경모델 추정부(220), 라벨링 수행부(230) 및 주행거리 추정부(240)를 포함할 수 있다. 그리고, 도 1의 각 단계들(110 내지 130 단계)은 도 2의 시간주행거리 측정 장치(200)의 구성요소들, 즉, RGB-D 센서(210), 배경모델 추정부(220), 라벨링 수행부(230) 및 주행거리 추정부(240)에 의해 수행될 수 있다.
RGB-D 센서(210)는 모바일 로봇, 자율주행 자동차, 무인기, 휴머노이드, 보행 로봇 등에 장착되어, 벽면, 책상, 사람, 동물 등의 물체(object)를 포함하는 주변 환경을 센싱(즉, 촬영)할 수 있다. 이때, RGB-D 센서(210)는 주변 환경을 센싱하여 컬러 이미지(RGB 이미지)와 깊이 이미지(depth image)를 포함하는 이미지를 생성할 수 있다.
110 단계에서, 배경모델 추정부(220)는 RGB-D 센서(210)로부터 컬러 이미지와 깊이 이미지를 포함하는 현재 이미지를 전달받아 배경모델(background model)을 추정할 수 있다. 이때, 배경모델 추정부(220)는 위에서 언급한 비특허 문헌 [1] A. Elgammal , D. Harwood , and L. Davis, "Non-parametric model for background subtraction," in Computer VisionECCV 2000. Springer, 2000, pp. 751-767.에서 설명하고 있는 비매개 모델(non-parametric model) 기법을 이용하여 배경모델을 추정할 수 있다.
예를 들어, 배경모델 추정부(220)는 현재 이미지와 시간적으로 연속하는 이전 이미지를 상기 현재 이미지를 기준으로 변환(warping)하고, 변환된 이전 이미지와 현재 이미지를 확률 알고리즘을 기초로 융합하여 상기 현재 이미지에 해당하는 배경모델을 추정할 수 있다. 여기서, 이전 이미지는 현재 이미지를 생성하기 바로 이전 시점에 RGB-D 센서(210)에서 센싱을 통해 생성된 이미지로서, 현재 이미지와 시간적으로 연속하는 이미지를 나타낼 수 있다. 예컨대, RGB-D 센서(210)에서 연속하는 프레임 1(frame 1), 프레임 2, 프레임 3을 생성한 경우, 프레임 3이 현재 프레임이면, 프레임 2이 이전 프레임에 해당하고, 프레임 2가 현재 프레임이면, 프레임 1이 이전 프레임이 해당할 수 있다. 이때, 배경모델 추정을 위해 복수 개의 이전 프레임(즉, 이전 이미지)이 이용되는 경우, 현재 프레임 바로 직전의 프레임 포함 순차적으로 일정 개수의 프레임들이 복수개의 이전 프레임에 해당할 수 있다. 예컨대, 2개의 이전 프레임을 이용하고, 현재 프레임이 프레임 3인 경우, 복수개의 이전 프레임은 프레임 3의 직전 프레임인 프레임 2를 포함 프레임 1이 복수개의 이전 프레임에 해당할 수 있다.
이때, 배경모델 추정부(210)는 메모리에 저장된 N개의 이전 이미지의 깊이 이미지와 현재 이미지의 깊이 이미지를 각각 더하고, 더해진 N개의 결과값들을 합하여 배경모델을 추정할 수 있다. 예컨대, 배경모델 추정부(210)는 이전 프레임k-1의 깊이 이미지와 현재 프레임 k의 깊이 이미지를 더하여 결과값 1을 계산하고, 프레임 k-2의 깊이 이미지와 현재 프레임 현재 프레임 k의 깊이 이미지를 더하여 결과값 2를 계산하고, 프레임 k-3의 깊이 이미지와 현재 프레임 현재 프레임 k의 깊이 이미지를 더하여 결과값 3을 계산할 수 있다. 그리고, 배경모델 추정부(210)는 더해진 3개의 결과값(결과값 1, 결과값 2, 결과값 3)을 합하여 배경모델을 추정할 수 있다. 예컨대, 결과값 1은 이전 프레임k-1의 깊이 이미지에 포함된 각 픽셀들의 깊이 정보와 현재 프레임 k의 깊이 이미지에 포함된 각 픽셀들의 깊이 정보를 더한 값을 나타낼 수 있으며, 이때, 대응하는 위치의 픽셀 별로 깊이 정보가 더해질 수 있다.
120 단계에서, 라벨링 수행부(230)는 추정된 배경모델을 대상으로 필터링하고자 하는 대상 물체(target object)의 속도에 기초하여 라벨링을 수행할 수 있다.
일례로, 라벨링 수행부(230)는 추정된 배경모델에 포함된 벽면, 사람, 책상, 의자, 시계, 동물 등의 물체들(object)의 속도에 따라 움직임이 없는 정적 물체와 필터링하고자 하는 대상 물체임 동적 물체(즉, 움직임이 있는 물체)를 구분하는 라벨링을 수행할 수 있다. 예컨대, 라벨링 수행부(230)는 배경모델에 포함된 물체들을 대상으로, 각 물체의 속도에 따라 정적인 물체에는 1, 필터링하고자 하는 동적인 물체에는 0과 같이 라벨링을 수행할 수 있다.
130 단계에서, 주행거리 추정부(240)는 추정된 배경모델과 라벨링된 배경모델에 기초하여 현재 이미지와 이전 이미지 사이에서 센서의 주행거리(ego-motion)를 점진적으로 추정할 수 있다. 즉, RGB-D 센서(210)를 장착한 로봇 등이 시점 t-1에서 시점 t 동안 얼마나 이동했는지, 포즈(pose)가 변했는지 여부를 추정할 수 있다. 이때, 주행거리 추정부(240)는 에너지 기반 접근법(energy-based approach)에 기초하여 주행거리를 추정할 수 있다.
도 3은 본 발명의 일실실예에 있어서, 배경모델 추정 및 주행거리 추정을 설명하기 위해 제공되는 도면이다.
도 3에 따르면, 깊이 이미지를 이용하여 배경모델이 추정이 될 수 있으며, 주행거리 추정을 위해 상기 추정된 배경 모델에 해당하는 배경 이미지와 현재 검출된 RGB-D 이미지, 그리고 이전에 검출된 RGB-D 이미지가 이용될 수 있다. 그리고, 에너지 함수(예컨대, 아래의 수학식 17에서 정의한 에너지 함수)를 기반으로 점진적으로 두 프레임 사이에서의 주행거리(즉, 포즈 변화, ego-motion)을 추정하여 현재 프레임에서의 이미지를 이전 프레임 기준으로 변화시켜가면서 에너지를 줄여줄 수 있다. 이처럼, 에너지를 줄이면서 추정된 두 프레임 간의 주행거리(즉, 포즈 변화, ego-motion)는 다시 배경 모델 추정을 위해 피드백될 수 있으며, 피드백된 주행거리(즉, 포즈 변화, ego-motion)는 상기 현재 이미지를 기준으로 이전 이미지들의 뷰포인트를 통일시키는 역할을 수행할 수 있다.
이하에서는 배경 모델 추정 및 주행거리(즉, 포즈 변화, ego-motion)을 수학식들을 참고하여 상세히 설명하기로 한다.
RGB-D 센서(210)는 프레임 k를 구성하는 모든 픽셀에 대해 컬러이미지와 깊이 이미지를 포함하는 현재 이미지를 생성할 수 있다. 즉, 픽셀 좌표
Figure 112016101593820-pat00001
Figure 112016101593820-pat00002
에 해당하는 컬러 이미지
Figure 112016101593820-pat00003
와 깊이 이미지
Figure 112016101593820-pat00004
를 포함하는 현재 이미지가 생성될 수 있다. 그리고, RGB-D 센서(210)는 생성된 현재 이미지를 배경모델 추정부(220)로 전달할 수 있다.
그러면, 배경모델 추정부(220)는 컬러 이미지(310)와 깊이 이미지(320) 중 깊이 이미지(320)와 메모리에 저장된 적어도 하나의 이전 이미지(330)를 이용하여 프레임 k에 해당하는 배경모델을 추정할 수 있다.
먼저, 배경모델 추정부(220)는 동차 좌표(homogeneous coordinates)를 사용하여 프레임 k의 3D 포인트(point)를
Figure 112016101593820-pat00005
와 같이 표현할 수 있다. 여기서,
Figure 112016101593820-pat00006
는 프레임 k를 구성하는 각 픽셀의 깊이 정보를 나타낼 수 있다. 그러면, 핀홀 카메라 모델의 투영 변환(perspective transform)에 대한 3D 포인트와 픽셀 좌표 사이의 관계는 아래의 수학식 1과 같이 표현될 수 있다.
[수학식 1]
Figure 112016101593820-pat00007
수학식 1에서,
Figure 112016101593820-pat00008
는 3D 포인트,
Figure 112016101593820-pat00009
Figure 112016101593820-pat00010
는 초점 거리,
Figure 112016101593820-pat00011
는 주점(principal point),
Figure 112016101593820-pat00012
는 깊이 정보를 나타낼 수 있다. 배경모델 추정부(220)는 아래의 수학식 2와 같이, 투영함수(projection function) π를 이용하여 이미지 플랜(image plane)에 상기 3D 포인트를 투영(projection)할 수 있다.
[수학식 2]
Figure 112016101593820-pat00013
RGB-D 센서(210)의 주행거리(ego-motion)에 의해 대응 포인트들은 두 개의 연속하는 이미지들(예컨대, 현재 이미지(즉, 프레임 k)와 이전 이미지(즉, 프레임 k-1)) 사이의 동차변환행렬(homogeneous transform matrix)인
Figure 112016101593820-pat00014
를 통해, 삼차원의 강체 변위(rigid body displacements)를 가질 수 있다. 여기서, 동차변환행렬은 변환(translation)과 회전(rotation)으로 구성된 유클리드 변환(Euclidean transform)에 기초하여 아래의 수학식 3과 같이 표현될 수 있다.
[수학식 3]
Figure 112016101593820-pat00015
수학식 3에서,
Figure 112016101593820-pat00016
Figure 112016101593820-pat00017
회전 행렬(rotation matrix)를 나타내고,
Figure 112016101593820-pat00018
Figure 112016101593820-pat00019
변환 벡터(translation vector)를 나타내고,
Figure 112016101593820-pat00020
는 프레임 k-1의 3D 포인트를 나타낼 수 있다.
그러면, 연속하는 이미지들(즉, 연속하는 프레임들, 예컨대, 현재 이미지인 프레임 k와 이전 이미지인 프레임 k-1) 사이의 동차변환행렬은 특수 유클리드 그룹, 삼차원 강체 변위(rigid body displacements)
Figure 112016101593820-pat00021
중 하나일 수 있다. 여기서,
Figure 112016101593820-pat00022
는 라이 그룹(Lie group)에 해당할 수 있다. 배경모델 추정부(220)는 3차원 공간에서의 변환을 나타내는 라이 그룹(Lie group)과 같이 동작하는 동차변환행렬을 상기
Figure 112016101593820-pat00023
의 라이 대수(Lie algebra)에 의해 주어진 6차원 벡터
Figure 112016101593820-pat00024
로 압축할 수 있다. 여기서, 6차원 벡터
Figure 112016101593820-pat00025
Figure 112016101593820-pat00026
와 같은 당일 시간 당 6자유도(6-DoF) 강체 운동의 각 변화
Figure 112016101593820-pat00027
와 선형 변화
Figure 112016101593820-pat00028
로 구성될 수 있다. 그러면, 상기 동차변환행렬은 라이 대수(Lie algebra)에 기초하여 아래의 수학식 4와 같이 다시 표현될 수 있다.
[수학식 4]
Figure 112016101593820-pat00029
수학식 4에서,
Figure 112016101593820-pat00030
Figure 112016101593820-pat00031
Figure 112016101593820-pat00032
행렬 표현을 나타낼 수 있다.
이처럼, 배경모델 추정부(220)는 6차원 벡터로 압축된 현재 이미지(즉 현재 프레임 k)의 동차변환행렬을 이용하여 이전 이미지(즉, 이전 프레임 k-1)의 깊이 이미지에 대해 변환(warping)을 수행할 수 있다.
구체적으로, 배경모델 추정부(220)는 RGB-D 센서(210)로부터 전달받은 깊이 이미지(즉, 현재 이미지에 포함된 깊이 이미지)와 메모리에 저장된 이전 이미지의 깊이 이미지 간의 차이를 누적하여 배경모델을 추정할 수 있다. 이때, 서로 다른 위치에서 뷰 포인트(view point)가 얻어지므로 움직이는 RGB-D 센서(210)로부터 연속하는 이미지들 간의 깊이 차이를 얻는 데에는 어려움이 존재할 수 있다. 이에 따라, 연속하는 이미지들(즉, 이전 이미지와 현재 이미지) 간의 뷰 포인트를 동일하게 통일시키기 위해, 현재 이미지를 기준으로 이전 이미지를 변환(warping)할 수 있다. 이때, 배경모델 추정부(220)는 변환(warping)을 위해 아래의 수학식 5와 같이 정의되는 변환함수(warped function)
Figure 112016101593820-pat00033
를 이용할 수 있다.
[수학식 5]
Figure 112016101593820-pat00034
수학식 5에 기초하여, 변환된 픽셀 위치(warped pixel location)가 계산될 수 있으며, 변환된 픽셀 위치는 센서의 주행거리(ego-motion)의 보정된 픽셀 위치를 나타낼 수 있다. 그러면, 배경모델 추정부(220)는 수학식 5의 변환함수와 이전 이미지의 깊이 정보(즉, 이전 프레임 k-1의 깊이 정보)
Figure 112016101593820-pat00035
를 이용하여 이전 이미지에 포함된 각 픽셀들을 현재 이미지에 재맵핑(remapping)할 수 있다. 즉, 이전 프레임 k-1의 깊이 이미지를 구성하는 픽셀들의 깊이 정보가 현재 프레임 k의 깊이 이미지를 구성하는 픽셀들의 깊이 정보에 재맵핑될 수 있다. 이처럼, 이전 이미지와 현재 이미지에서 서로 대응하는 픽셀 위치의 깊이 정보가 재맵핑됨에 따라, 이전 이미지는 현재 이미지를 기준으로 변환(warping)될 수 있다. 예를 들어, 이전 이미지의 픽셀 1의 깊이 정보는 현재 이미지에서 상응하는 픽셀(예컨대, 현재 이미지를 구성하는 픽셀 1)의 깊이 정보로 재맵핑되고, 이와 마찬가지로 이전 이미지의 픽셀 2의 깊이 정보는 현재 이미지에서 상응하는 픽셀(예컨대, 현재 이미지를 구성하는 픽셀 2)의 깊이 정보로 재맵핑되며, 이전 이미지에서의 모든 픽셀들에 대해 재맵핑이 수행될 수 있다.
이처럼, 재맵핑을 통해 변환된(warped) 깊이 이미지는 아래의 수학식 6과 같이 표현될 수 있다.
[수학식 6]
Figure 112016101593820-pat00036
수학식 6에서,
Figure 112016101593820-pat00037
는 이전 이미지(즉, 이전 프레임 k-1)에서 현재 이미지(즉, 현재 프레임 k)으로 재맵핑된 깊이 이미지(depth image)를 나타내고,
Figure 112016101593820-pat00038
는 위의 수학식 3으로부터의 변환된 3차원 포인트의 깊이 값(depth value)을 나타낼 수 있다. 즉,
Figure 112016101593820-pat00039
는 수학식 1을 통해 획득된 3차원 포인트
Figure 112016101593820-pat00040
의 z축 값으로서, 3차원 포인트
Figure 112016101593820-pat00041
의 z축 값이 깊이 값(즉, 깊이 정보)를 나타낼 수 있다.
위의 수학식 3과 같이, 재맵핑을 통해 현재 이미지를 기준으로 이전 이미지들(프레임 k-1, 프레임 k-2, 프레임 k-3)가 변환(warped)되면, 이전 이미지들의 깊이 이미지의 뷰 포인트가 도 4와 같이 현재 이미지(즉, 현재 프레임 k)에서 동일해질 수 있다. 예를 들어. 이전 이미지들의 깊이 이미지들은 각각 3차원 포인트들의 묶음으로 변환 될 수 있다. 그리고, 변환된 3차원 포인트들의 묶음은 각 프레임에서 계산된 정보(즉, 위의 수학식 4에서 계산된 odometry 정보)를 통해 수학식 3처럼 현재 프레임의 3차원 포인트로 변환 될 수 있다. 그러면, 수학식 6과 같이, 현재 프레임 기준에서의 깊이 이미지로 변환 될 수 있으며, 이렇게 변환이 완료되면, 이전 이미지들 각각의 깊이 이미지들의 뷰포인트가 현재 이미지의 깊이 이미지와 동일해질 수 있다.
그러면, 배경모델 추정부(220)는 현재 이미지와 변환된 적어도 하나의 이전 이미지 간의 차이를 계산할 수 있다. 예컨대, 배경모델 추정부(220)는 아래의 수학식 7에 기초하여 상기 현재 이미지와 변환된 이전 이미지 간의 차이를 계산할 수 있다.
[수학식 7]
Figure 112016101593820-pat00042
수학식 7에 따르면, 배경모델은 현재 이미지와 변환함수를 이용하여 변환된(warped) 적어도 하나의 이전 이미지의 깊이 이미지 간의 차이인
Figure 112016101593820-pat00043
의 한 주기 동안의 누적으로 정의될 수 있다.
이처럼, 배경모델 추정부(220)는 움직이는 물체에 의한 노이즈(noise)를 감소시키기 위해 배경모델 추정 시에는 컬러 이미지를 제외한 깊이 이미지만을 사용하여 배경모델을 추정할 수 있다.
배경모델 추정부(220)는 변환된 이전 이미지의 깊이 이미지와 현재 이미지의 깊이 이미지 간의 차인
Figure 112016101593820-pat00044
를 이용하여 현재 이미지, 즉, 현재 프레임 k에 해당하는 배경모델의 확률밀도함수
Figure 112016101593820-pat00045
를 계산할 수 있다. 이때, 배경모델 추정부(220)는 아래의 수학식 8에 기초하여 상기 확률밀도함수
Figure 112016101593820-pat00046
를 각 픽셀 별로 비매개변수적으로(non parametrical) 측정할 수 있다.
[수학식 8]
Figure 112016101593820-pat00047
수학식 8에서,
Figure 112016101593820-pat00048
는 메모리에 저장된 이전 이미지의 깊이 이미지들의 편차(deviation)을 나타내고, N은 메모리에 저장된 이전 깊이 이미지들의 크기(size) 또는 개수를 나타낼 수 있다. 이때, 배경모델 추정부(220)는 메모리에 저장된 N개의 프레임들 동안 RGB-D 센서(210)가 움직이지 않음을 가정하고, 현재 이미지에 해당하는 배경모델을 추정할 수 있다. RGB-D 센서(210)의 움직임이 없다는 가정의 부정적인 영향을 제거하기 위해, 메모리에 저장된 이전 이미지의 깊이 이미지들의 수는 기정의된 측정 오차를 고려하여 가능한 낮게 설정될 수 있다. 예컨대, N=4 이하의 상수값으로 미리 설정될 수 있다.
RGB-D 센서(210)의 간섭 홀(holes)의 위치가 시간마다 달라지므로, 서로 연속하는 변환된(warped) 이전 이미지들(예컨대, 변환된 프레임 k-1, 변환된 프레임 k-2, 변환된 프레임 k-3 등) 사이에는 큰 점프들(jumps)이 존재할 수 있다. 그러면, 상기 편차
Figure 112016101593820-pat00049
는 이전 이미지의 깊이 이미지를 구성하는 모든 픽셀들에 대한 중위수 절대 편차(median absolute deviation)를 이용하여 계산될 수 있다. 예컨대, 아래의 수학식 9에 기초하여 상기 편자는 계산될 수 있다.
[수학식 9]
Figure 112016101593820-pat00050
수학식 9에서, C는 상수 스케일 인자이고,
Figure 112016101593820-pat00051
는 누적분포함수를 나타낼 수 있다. 그리고, 배경모델에 포함된 물체들(objects)의 절대적인 움직임을 감소시키기 위해 라벨링이 수행될 수 있다. 예컨대, 아래의 수학식 10에 기초하여 동적인 물체는 0, 정적인 물체는 1로 라벨링이 수행될 수 있다.
[수학식 10]
Figure 112016101593820-pat00052
수학식 10에서,
Figure 112016101593820-pat00053
는 라벨링된 배경모델을 나타내고, 배경 모델인
Figure 112016101593820-pat00054
의 각 픽셀값이
Figure 112016101593820-pat00055
보다 크거나 같은 경우에는 배경, 작은 경우에는 아웃라이어로 구분될 수 있다. 이때, 배경 모델 필터링을 위한 상수값인
Figure 112016101593820-pat00056
를 결정하기 위해 위의 수학식 8 및 위의 수학식 9에 프레임 마다 동적인 물체의 속도
Figure 112016101593820-pat00057
가 적용될 수 있다. 예컨대,
Figure 112016101593820-pat00058
는 아래의 수학식 11과 같이 표현될 수 있으며, 동적인 물체의 속도
Figure 112016101593820-pat00059
는 아래의 수학식 12와 같이 표현될 수 있다.
[수학식 11]
Figure 112016101593820-pat00060
[수학식 12]
Figure 112016101593820-pat00061
수학식 12에서,
Figure 112016101593820-pat00062
는 깊이 차이
Figure 112016101593820-pat00063
의 분산에 대한 표준편차를 나타낼 수 있다. 여기서, 상기 깊이 차이
Figure 112016101593820-pat00064
는 현재 프레임 k의 깊이 이미지와 이전 프레임 k-1의 깊이 이미지의 차이를 나타낼 수 있다.
도 5는 본 발명의 일실시예에 있어서, 현재 이미지와 이전 이미지 간의 깊이 차이의 분포를 도시한 도면이다.
구체적으로, 도 5는 모든 픽셀에 대한
Figure 112016101593820-pat00065
의 분포도를 나태는 것으로서, 해당 분포도는 동적인 움직임이 없을 경우에 발생하는 깊이 차이(Depth difference)
Figure 112016101593820-pat00066
의 분포를 의미할 수 있다.
즉, 아무런 동적인 움직임이 없으므로, 해당 정보에 대한 95%의 신뢰도(CI)를 갖는 구간(-1.96
Figure 112016101593820-pat00067
<
Figure 112016101593820-pat00068
<+1.96
Figure 112016101593820-pat00069
)이 선택될 수 있으며, 이러한 신뢰도(CI) 구간은 정적인 움직임이 해당 구간에서만 발생하고, 이외에 구간(즉, 상기 신뢰도를 갖는 구간 중 정적인 움직임에 해당하는 구간을 제외한 나머지 구간)에서 발생하는
Figure 112016101593820-pat00070
는 동적인 움직임에 의해 발생한다는 것을 의미할 수 있다.
또한,
Figure 112016101593820-pat00071
는 확률 밀도 함수로서, 해당 픽셀이 배경에 해당할 확률을 의미할 수 있다.
도 5에 따르면, 정적 환경에서 고정된 RGB-D 센서(210)로부터
Figure 112016101593820-pat00072
는 16.23임을 알 수 있다.
도 6는 본 발명의 일실시예에 있어서, 라벨링된 배경모델을 도시한 도면이다.
도 6에서, 동적인 물체의 속도
Figure 112016101593820-pat00073
에 기초하여 추정된 배경모델(610)에서 동적인 물체를 라벨링하고, 라벨링된 동적인 물체를 필터링함으로써, 라벨링된 배경모델(620) 생성될 수 있다. 즉, 현재 프레임 k에 해당하는 추정된 배경모델에서 사람 등과 같이 움직이는 동적인 물체는 불필요한 정보로서, 필터링되어 제거되고, 불필요한 정보가 제거된 배경모델이 라벨링된 배경모델에 해당할 수 있다.
도 6에서, 컬러 이미지(601) 및 깊이 이미지(602)에는 동적인 물체(예컨대, 사람)이 포함되어 있음을 확인할 수 있다. 이때, 배경모델 추정 및 라벨링을 통해 동적인 물체는 불필요한 정보로 판단되어 필터링됨으로써, 제거될 수 있다. 즉, 필터링을 통해 상기 라벨링된 배경모델(620)에서 블랙(black, 621)으로 표현될 수 있으며, 필요한 정보는 화이트(white, 622)로 표현될 수 있다.
이하에서는 추정된 배경모델 및 라벨링된 배경모델을 기반으로 에너지기반 접근법을 이용하여 주행거리를 추정하는 동작에 대해 상세히 설명하기로 한다.
주행거리를 추정하기 이전에, 주행거리 추정부(240)는 먼저, 라벨링된 배경 모델
Figure 112016101593820-pat00074
에서 아웃라이어(outliers)를 제거할 수 있다. 이때, 주행거리 추정부(240)는 센서모델을 이용하여 아웃라이어를 제거할 수 있다. 여기서, 센서모델은 센서로부터 발생한 노이즈를 나타낼 수 있다. 주행거리 추정부(240)는 주행거리(ego-motion) 추정 시 노이즈에 대한 강건함(robustness)을 증가시키기 위해 상기 라벨링된 배경모델에서 아웃라이어를 제거하는 데, 이때, 위의 비특허 문헌 [2] C. Kerl , J. Sturm, and D. Cremers , "Robust odometry estimation for rgb-d cameras," in Robotics and Automation ( ICRA ), 2013 IEEE International Conference on. IEEE, 2013, pp. 3748-3754.에 제시된 t-분포를 이용하여 강건함을 증가시킬 수 있다. 여기서, t-분포는 낮은 확률로 강도 오차(intensity residuals) 중 아웃라이어(outliers)를 커버하는 heavy-tails을 가지는 분포를 나타낼 수 있다. 그러면, 강도 오차를 나타내는 이미지(즉, 강도 오차 이미지)
Figure 112016101593820-pat00075
는 아래의 수학식 13과 같이 표현될 수 있다.
[수학식 13]
Figure 112016101593820-pat00076
수학식 13에서, 이전 이미지(즉, 이전 프레임 k-1)에 해당하는 그레이 스케일 이미지(gray-scaled image)의 강도값(intensity)을 나타낼 수 있다. 주행거리 추정부(240)는 현재 이미지의 컬러 이미지를 RGB-D 센서(210)로부터 입력받고, 입력받은 컬러 이미지
Figure 112016101593820-pat00077
를 그레이 스케일 이미지로 변환하고, 변환된 그레이 스케일 이미지로부터 상기 강도값을 획득할 수 있다. 그러면, 주행거리 추정부(240)는 강건함(robustness)을 증가시키기 위한 센서모델에 대한 가중치 함수
Figure 112016101593820-pat00078
는 t-분포에 기초하여 계산할 수 있다. 예컨대, 아래의 수학식 14에 기초하여 상기 가중치 함수
Figure 112016101593820-pat00079
가 계산될 수 있다.
[수학식 14]
Figure 112016101593820-pat00080
수학식 14에서,
Figure 112016101593820-pat00081
는 t-분포에 대한 자유도를 나타내고,
Figure 112016101593820-pat00082
는 강도 오차(intensity residuals)의 측정된 표준 편차를 나타낼 수 있다. 예컨대,
Figure 112016101593820-pat00083
는 5 등의 상수값으로 기설정될 수 있다. 그러면, 주행거리 추정부(240)는 상기 강도 오차의 표준편차
Figure 112016101593820-pat00084
와 코스투파인(coarse-to-fine) 기법을 반복적으로 수행하여 주행거리(ego-motion) 계산을 위한 강도 오차의 분산
Figure 112016101593820-pat00085
을 계산할 수 있다. 예컨대, 주행거리 추정부(240)는 아래의 수학식 15를 이용하여 코스투파인(coarse-to-fine) 기법을 반복적으로 수행함으로써, 상기 강도 오차의 분산
Figure 112016101593820-pat00086
을 계산할 수 있다.
[수학식 15]
Figure 112016101593820-pat00087
수학식 15에서,
Figure 112016101593820-pat00088
는 라벨링된 배경모델
Figure 112016101593820-pat00089
에서 필요 정보로 라벨링된 물체들을 나타내는 픽셀들의 집합을 의미하고, 은
Figure 112016101593820-pat00090
의 픽셀들의 개수를 나타낼 수 있다. 예컨대, 정적인 물체들은 1로, 동적인 물체들은 0으로 라벨링되어 라벨링된 배경모델
Figure 112016101593820-pat00091
이 생성될 수 있으며, 상기 라벨링된 배경모델
Figure 112016101593820-pat00092
에서 필요 정보로서 표시되어야 할 이미지일 수 있다. 이에 따라,
Figure 112016101593820-pat00093
는 1로 라벨링된 물체들과 관련된 픽셀들의 집합을 나타낼 수 있다.
주행거리 추정부(240)는 아래의 수학식 16과 같이,
Figure 112016101593820-pat00094
Figure 112016101593820-pat00095
를 이용하여 현재 이미지(즉, 현재 프레임 k)의 가중치 함수
Figure 112016101593820-pat00096
를 계산할 수 있다.
[수학식 16]
Figure 112016101593820-pat00097
수학식 16에서,
Figure 112016101593820-pat00098
는 수학식 8에서 추정된 배경모델의 가중치 함수를 나타내고,
Figure 112016101593820-pat00099
는 센서모델의 가중치 함수를 나타낼 수 있다.
주행거리 추정부(240)는 상기 가중치 함수
Figure 112016101593820-pat00100
와 에너지 기반 접근법을 이용하여 현재 프레임 k에 해당하는 RGB-D 이미지(즉, 깊이 이미지와 컬러 이미지를 포함하는 현재 이미지)의 전체 밀도 정보로부터 주행거리(ego-motion), 예컨대, 센서의 포즈 변화 정도를 계산할 수 있다. 이때, 위의 비특허 문헌 [3] F. Steinbrucker, J. Sturm, and D. Cremers , "Real-time visual odometry from dense rgb-d images," in Computer Vision Workshops ( ICCV Workshops), 2011 IEEE International Conference on. IEEE, 2011, pp.719-722.에서 설명하고 있는 배경모델 기반 에너지 기반 접근법(energy-based approach)이 이용될 수 있다. 예를 들어, 주행거리 추정부(240)는 에너지 함수
Figure 112016101593820-pat00101
를 이용하여 주행거리를 추정할 수 있다. 여기서, 에너지 함수는 아래의 수학식 17과 같이 정의될 수 있다.
[수학식 17]
Figure 112016101593820-pat00102
수학식 17에서,
Figure 112016101593820-pat00103
는 이전 이미지(즉, 이전 프레임)에서의 가중치 함수를 나타내고,
Figure 112016101593820-pat00104
는 이전 이미지 기준의 강도 오차를 나타낼 수 있다.
수학식 17의 에너지 함수를 최소화함으로써, 연속하는 이미지들(예컨대, 이전 이미지와 현재 이미지) 간의 영상-일관성(photo-consistency)가 최대화될 뿐만 아니라, 움직이는 동적 물체의 영향이 최소화될 수 있다. 주행거리 추정부(240)는 상기 최소화 문제를 해결하기 위해 오차(residuals)의 선형 근사화를 이용할 수 있다. 이때, 주행거리 추정부(240)는 변환된 강도 이미지(warped intensity image)에 아래의 수학식 18을 이용하여 1차 테일러 급수 근사화(Taylor series approximation)를 수행할 수 있다. 여기서, 변환된 강도 이미지(warped intensity image)는 이전 프레임 기준에서의 강도 이미지로써, 수학식 13에서 치환되어 사용될 수 있다.
[수학식 18]
Figure 112016101593820-pat00105
수학식 18에서 변환함수
Figure 112016101593820-pat00106
는 아래의 수학식 19와 같이 근사화되고 선형화될 수 있다.
[수학식 19]
Figure 112016101593820-pat00107
수학식 19와 같이, 근사화 및 선형화된 변환함수
Figure 112016101593820-pat00108
는 연쇄법칙(chain rule)에 의해 아래의 수학식 20과 같이 확장될 수 있다. 즉, 현재 프레임 k에 대한 변환함수
Figure 112016101593820-pat00109
의 도함수가 아래의 수학식 20과 같이 확장될 수 있다.
[수학식 20]
Figure 112016101593820-pat00110
그러면, 위의 수학식 20의 단위 시간당 동차변환행렬의 도함수는 위의 수학식 4로부터 아래의 수학식 21과 같이 표현될 수 있다.
[수학식 21]
Figure 112016101593820-pat00111
수학식 21의 동차변환행렬의 도함수는 위의 비특허 문헌 [4]에 제시된 벡터 재형성(reshape) 시 이용된 표기법 에 따라 아래의 수학식 22와 같이 표현될 수 있다.
[수학식 22]
Figure 112016101593820-pat00112
수학식 22에서,
Figure 112016101593820-pat00113
는 동차변환행렬의 첫 번째 행부터 세 번째 행이 재형성된(reshaped)
Figure 112016101593820-pat00114
에서의 동차변환벡터를 나타내고,
Figure 112016101593820-pat00115
Figure 112016101593820-pat00116
인 행렬을 나타낼 수 있다. 그러면, 수학식 22를 이용하여, 현재 이미지(즉, 현재 프레임 k)에 대한 변환함수의 도함수는 아래의 수학식 23과 같이 다시 표현될 수 있다.
[수학식 23]
Figure 112016101593820-pat00117
수학식 23에서,
Figure 112016101593820-pat00118
는 크기가
Figure 112016101593820-pat00119
인 행렬을 나타낼 수 있다. 그러면, RGB-D 이미지(즉, 깊이 이미지와 컬러 이미지를 포함하는 현재 이미지)로부터 주행거리(ego-motion) 추정을 위해 이용되는 최종 에너지 함수는 위의 수학식 18, 수학식 19 및 수학식 23에 기초하여 아래의 수학식 24와 같이 다시 표현될 수 있다.
[수학식 24]
Figure 112016101593820-pat00120
수학식 24는 선형 가중최소제곱(weighted-least-squares) 문제이므로, 오차를 최소화하기 위한 최상의 6차원 벡터
Figure 112016101593820-pat00121
는 아래의 수학식 25와 같이 평균 방정식(normal equation)을 풀어서 찾을 수 있다.
[수학식 25]
Figure 112016101593820-pat00122
주행거리 추정부(240)는 평균방정식을 푸는 전체 계산 과정에서 코스투파인(coarse-to-fine scheme)을 적용하여 동차변환행렬
Figure 112016101593820-pat00123
을 점진적으로 계산할 수 있다. 리파인먼트 기법(refinement scheme)을 이용하는 경우, 현재 프레임 k에서의 강도값
Figure 112016101593820-pat00124
은 위의 수학식 5에서 설명한 변환함수
Figure 112016101593820-pat00125
를 이용하여 아래의 수학식 26과 같이 업데이트될 수 있다.
[수학식 26]
Figure 112016101593820-pat00126
수학식 26에서,
Figure 112016101593820-pat00127
는 변환된 픽셀 좌표(warped pixel coordinate)
Figure 112016101593820-pat00128
와 이웃하는 4개의 이웃 픽셀들을 나타낼 수 있다. 그러면, 주행거리 추정부(240)는 센서의 포즈
Figure 112016101593820-pat00129
, 즉, 주행거리를 이전에 발생한 모든 프레임(k=0,1,2,3,...,k)에 대한 동차변환행렬을 누적함으로써 계산할 수 있다. 예컨대, 주행거리 추정부(240)는 아래의 수학식 27에 기초하여 모든 프레임에 대한 동차변환행렬(k=0,1,2,3,...,k)을 누적함으로써 상기 주행거리
Figure 112016101593820-pat00130
를 추정할 수 있다.
[수학식 27]
Figure 112016101593820-pat00131
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (20)

  1. 컬러 이미지와 깊이 이미지(depth image)를 포함하는 현재 이미지를 기반으로 배경 모델(background model)을 추정하는 단계;
    추정된 상기 배경 모델을 대상으로, 필터링하고자 하는 대상 물체(target object)의 속도에 기초하여 라벨링(labeling)을 수행하는 단계; 및
    추정된 상기 배경 모델과 라벨링된 배경 모델에 기초하여 시간적으로 연속하는 상기 현재 이미지와 이전 이미지 사이에서 센서의 주행거리(ego-motion)를 추정하는 단계를 포함하되,
    상기 배경 모델을 추정하는 단계는,
    상기 현재 이미지를 기준으로 적어도 하나의 이전 이미지를 변환(warping)하는 단계; 및
    변환된(warped) 적어도 하나의 이전 이미지와 상기 현재 이미지를 확률 알고리즘을 기초로 융합하여 상기 배경 모델을 추정하는 단계를 포함하는 RGB-D 센서를 이용한 시각 주행 거리 측정 방법.
  2. 삭제
  3. 제1항에 있어서,
    상기 현재 이미지를 기준으로 변환(warping)하는 단계는,
    이전 이미지의 깊이 정보를 이용하여 이전 이미지의 깊이 이미지에 포함된 각 픽셀들을 현재 이미지의 깊이 이미지에 포함된 각 픽셀들에 재맵핑(remapping)하는 단계
    를 포함하는 RGB-D 센서를 이용한 시각 주행 거리 측정 방법.
  4. 제1항에 있어서,
    상기 배경 모델을 추정하는 단계는,
    상기 현재 이미지에 포함된 깊이 이미지와 이전 이미지의 깊이 이미지를 이용하여 상기 배경 모델을 추정하는 것
    을 특징으로 하는 RGB-D 센서를 이용한 시각 주행 거리 측정 방법.
  5. 제1항에 있어서,
    상기 라벨링을 수행하는 단계는,
    상기 배경 모델에 포함된 물체들(objects)을 각 물체의 속도에 따라 정적 물체와 상기 필터링하고자 하는 대상 물체인 동적 물체로 구분하는 라벨링을 수행하는 것
    을 특징으로 하는 RGB-D 센서를 이용한 시각 주행 거리 측정 방법.
  6. 컬러 이미지와 깊이 이미지(depth image)를 포함하는 현재 이미지를 기반으로 배경 모델(background model)을 추정하는 단계;
    추정된 상기 배경 모델을 대상으로, 필터링하고자 하는 대상 물체(target object)의 속도에 기초하여 라벨링(labeling)을 수행하는 단계; 및
    추정된 상기 배경 모델과 라벨링된 배경 모델에 기초하여 시간적으로 연속하는 상기 현재 이미지와 이전 이미지 사이에서 센서의 주행거리(ego-motion)를 추정하는 단계를 포함하되,
    상기 현재 이미지는 RGB-D 센서에서 센싱된 RGB-D 이미지를 포함하고,
    상기 센서의 주행거리를 추정하는 단계는,
    상기 RGB-D 이미지에 해당하는 전체 밀도 정보와 에너지 기반 접근법(energy-based approach)에 기초하여 상기 주행거리를 추정하는 것
    을 특징으로 하는 RGB-D 센서를 이용한 시각 주행 거리 측정 방법.
  7. 제1항에 있어서,
    상기 센서의 주행거리(ego-motion)를 추정하는 단계는,
    상기 라벨링된 배경 모델에서 아웃라이어(outliers)를 제거하는 단계
    를 포함하는 RGB-D 센서를 이용한 시각 주행 거리 측정 방법.
  8. 컬러 이미지와 깊이 이미지(depth image)를 포함하는 현재 이미지를 기반으로 배경 모델(background model)을 추정하는 단계;
    추정된 상기 배경 모델을 대상으로, 필터링하고자 하는 대상 물체(target object)의 속도에 기초하여 라벨링(labeling)을 수행하는 단계; 및
    추정된 상기 배경 모델과 라벨링된 배경 모델에 기초하여 시간적으로 연속하는 상기 현재 이미지와 이전 이미지 사이에서 센서의 주행거리(ego-motion)를 추정하는 단계를 포함하되,
    상기 센서의 주행거리(ego-motion)를 추정하는 단계는,
    추정된 상기 배경 모델과 센서모델을 이용하여 가중치함수를 계산하고, 계산된 가중치함수를 이용하여 상기 주행거리를 추정하는 것
    을 특징으로 하는 RGB-D 센서를 이용한 시각 주행 거리 측정 방법.
  9. 컬러 이미지와 깊이 이미지(depth image)를 포함하는 현재 이미지를 기반으로 배경 모델(background model)을 추정하는 단계;
    추정된 상기 배경 모델을 대상으로, 필터링하고자 하는 대상 물체(target object)의 속도에 기초하여 라벨링(labeling)을 수행하는 단계; 및
    추정된 상기 배경 모델과 라벨링된 배경 모델에 기초하여 시간적으로 연속하는 상기 현재 이미지와 이전 이미지 사이에서 센서의 주행거리(ego-motion)를 추정하는 단계를 포함하되,
    상기 센서의 주행거리(ego-motion)를 추정하는 단계는,
    기정의된 일정시간 동안 센싱되는 연속하는 프레임들 간의 동차변환행렬을 누적하여 상기 주행거리를 추정하는 것
    을 특징으로 하는 RGB-D 센서를 이용한 시각 주행 거리 측정 방법.
  10. 제9항에 있어서,
    상기 센서의 주행거리(ego-motion)를 추정하는 단계는,
    리파인먼트 기법(refinement scheme)을 이용하여 상기 현재 이미지에 해당하는 강도값(intensity)을 업데이트하는 단계; 및
    업데이트된 상기 강도값을 이용하여 상기 동차변환행렬을 계산하는 단계
    를 포함하는 RGB-D 센서를 이용한 시각 주행 거리 측정 방법.
  11. 컬러 이미지와 깊이 이미지(depth image)를 포함하는 현재 이미지를 생성하는 RGB-D 센서;
    상기 현재 이미지를 기반으로 배경 모델(background model)을 추정하는 배경모델 추정부;
    추정된 상기 배경 모델을 대상으로, 필터링하고자 하는 대상 물체(target object)의 속도에 기초하여 라벨링(labeling)을 수행하는 라벨링 수행부; 및
    추정된 상기 배경 모델과 라벨링된 배경 모델에 기초하여 시간적으로 연속하는 상기 현재 이미지와 이전 이미지 사이에서 센서의 주행거리(ego-motion)를 추정하는 주행거리 추정부를 포함하되,
    상기 배경모델 추정부는,
    상기 현재 이미지를 기준으로 적어도 하나의 이전 이미지를 변환(warping)하고, 변환된(warped) 적어도 하나의 이전 이미지와 상기 현재 이미지를 확률 알고리즘을 기초로 융합하여 상기 배경 모델을 추정하는 것을 특징으로 하는 RGB-D 센서를 이용한 시각 주행 거리 측정 장치.
  12. 삭제
  13. 제11항에 있어서,
    상기 배경모델 추정부는,
    이전 이미지의 깊이 정보를 이용하여 이전 이미지의 깊이 이미지에 포함된 각 픽셀들을 현재 이미지의 깊이 이미지에 포함된 각 픽셀들에 재맵핑(remapping)하는 것
    을 특징으로 하는 RGB-D 센서를 이용한 시각 주행 거리 측정 장치.
  14. 제11항에 있어서,
    상기 배경모델 추정부는,
    상기 현재 이미지에 포함된 깊이 이미지와 이전 이미지의 깊이 이미지를 이용하여 상기 배경 모델을 추정하는 것
    을 특징으로 하는 RGB-D 센서를 이용한 시각 주행 거리 측정 장치.
  15. 제11항에 있어서,
    상기 라벨링 수행부는,
    상기 배경 모델에 포함된 물체들(objects)을 각 물체의 속도에 따라 정적 물체와 상기 필터링하고자 하는 대상 물체인 동적 물체로 구분하는 라벨링을 수행하는 것
    을 특징으로 하는 RGB-D 센서를 이용한 시각 주행 거리 측정 장치.
  16. 컬러 이미지와 깊이 이미지(depth image)를 포함하는 현재 이미지를 생성하는 RGB-D 센서;
    상기 현재 이미지를 기반으로 배경 모델(background model)을 추정하는 배경모델 추정부;
    추정된 상기 배경 모델을 대상으로, 필터링하고자 하는 대상 물체(target object)의 속도에 기초하여 라벨링(labeling)을 수행하는 라벨링 수행부; 및
    추정된 상기 배경 모델과 라벨링된 배경 모델에 기초하여 시간적으로 연속하는 상기 현재 이미지와 이전 이미지 사이에서 센서의 주행거리(ego-motion)를 추정하는 주행거리 추정부를 포함하되,
    상기 현재 이미지는 RGB-D 이미지를 포함하고,
    상기 주행거리 추정부는,
    상기 RGB-D 이미지에 해당하는 전체 밀도 정보와 에너지 기반 접근법(energy-based approach)에 기초하여 상기 주행거리를 추정하는 것
    을 특징으로 하는 RGB-D 센서를 이용한 시각 주행 거리 측정 장치.
  17. 제11항에 있어서,
    상기 주행거리 추정부는,
    상기 라벨링된 배경 모델에서 아웃라이어(outliers)를 제거하는 것
    을 특징으로 하는 RGB-D 센서를 이용한 시각 주행 거리 측정 장치.
  18. 컬러 이미지와 깊이 이미지(depth image)를 포함하는 현재 이미지를 생성하는 RGB-D 센서;
    상기 현재 이미지를 기반으로 배경 모델(background model)을 추정하는 배경모델 추정부;
    추정된 상기 배경 모델을 대상으로, 필터링하고자 하는 대상 물체(target object)의 속도에 기초하여 라벨링(labeling)을 수행하는 라벨링 수행부; 및
    추정된 상기 배경 모델과 라벨링된 배경 모델에 기초하여 시간적으로 연속하는 상기 현재 이미지와 이전 이미지 사이에서 센서의 주행거리(ego-motion)를 추정하는 주행거리 추정부를 포함하되,
    상기 주행거리 추정부는,
    추정된 상기 배경 모델과 센서모델을 이용하여 가중치함수를 계산하고, 계산된 가중치함수를 이용하여 상기 주행거리를 추정하는 것
    을 특징으로 하는 RGB-D 센서를 이용한 시각 주행 거리 측정 장치.
  19. 컬러 이미지와 깊이 이미지(depth image)를 포함하는 현재 이미지를 생성하는 RGB-D 센서;
    상기 현재 이미지를 기반으로 배경 모델(background model)을 추정하는 배경모델 추정부;
    추정된 상기 배경 모델을 대상으로, 필터링하고자 하는 대상 물체(target object)의 속도에 기초하여 라벨링(labeling)을 수행하는 라벨링 수행부; 및
    추정된 상기 배경 모델과 라벨링된 배경 모델에 기초하여 시간적으로 연속하는 상기 현재 이미지와 이전 이미지 사이에서 센서의 주행거리(ego-motion)를 추정하는 주행거리 추정부를 포함하되,
    상기 주행거리 추정부는,
    상기 RGB-D 센서에서 기정의된 일정시간 동안 센싱되는 연속하는 프레임들 간의 동차변환행렬을 누적하여 상기 주행거리를 추정하는 것
    을 특징으로 하는 RGB-D 센서를 이용한 시각 주행 거리 측정 장치.
  20. 제19항에 있어서,
    상기 주행거리 추정부는,
    리파인먼트 기법(refinement scheme)을 이용하여 상기 현재 이미지에 해당하는 강도값(intensity)을 업데이트하고, 업데이트된 강도값을 이용하여 상기 동차변환행렬을 계산하는 것
    을 특징으로 하는 RGB-D 센서를 이용한 시각 주행 거리 측정 장치.
KR1020160135992A 2016-10-19 2016-10-19 동적인 환경에서 배경모델에 기반한 rgb-d 시각 주행 거리 측정 방법 및 장치 KR101866660B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160135992A KR101866660B1 (ko) 2016-10-19 2016-10-19 동적인 환경에서 배경모델에 기반한 rgb-d 시각 주행 거리 측정 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160135992A KR101866660B1 (ko) 2016-10-19 2016-10-19 동적인 환경에서 배경모델에 기반한 rgb-d 시각 주행 거리 측정 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20180043101A KR20180043101A (ko) 2018-04-27
KR101866660B1 true KR101866660B1 (ko) 2018-06-12

Family

ID=62081538

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160135992A KR101866660B1 (ko) 2016-10-19 2016-10-19 동적인 환경에서 배경모델에 기반한 rgb-d 시각 주행 거리 측정 방법 및 장치

Country Status (1)

Country Link
KR (1) KR101866660B1 (ko)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6999600B2 (en) * 2003-01-30 2006-02-14 Objectvideo, Inc. Video scene background maintenance using change detection and classification
KR100926783B1 (ko) * 2008-02-15 2009-11-13 한국과학기술연구원 물체인식 및 인식된 물체를 포함하는 주변 환경 정보를바탕으로 한 로봇의 자기 위치 추정 방법
KR102116791B1 (ko) * 2013-06-04 2020-06-09 삼성전자주식회사 깊이 정보를 사용한 움직인 물체 검출 장치, 방법 및 컴퓨터 판독 가능한 기록 매체

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
논문1:한국로봇학회(2008.12) *
논문1:한국로봇학회(2008.12)*
논문2:IEEE(2011) *
동적 환경에서 강인한 영상특징을 이용한 스테레오 비전 기반의 비주얼 오도메트리, 로봇학회 논문지 *

Also Published As

Publication number Publication date
KR20180043101A (ko) 2018-04-27

Similar Documents

Publication Publication Date Title
KR101776622B1 (ko) 다이렉트 트래킹을 이용하여 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법
KR101725060B1 (ko) 그래디언트 기반 특징점을 이용한 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법
KR101784183B1 (ko) ADoG 기반 특징점을 이용한 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법
KR101776621B1 (ko) 에지 기반 재조정을 이용하여 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법
US10133279B2 (en) Apparatus of updating key frame of mobile robot and method thereof
KR102016551B1 (ko) 위치 추정 장치 및 방법
Kim et al. Effective background model-based RGB-D dense visual odometry in a dynamic environment
RU2713611C2 (ru) Способ моделирования трехмерного пространства
JP6534664B2 (ja) カメラ動き予測及び修正のための方法
JP5782088B2 (ja) 歪みのあるカメラ画像を補正するシステム及び方法
US5777690A (en) Device and method for detection of moving obstacles
KR101665386B1 (ko) 로봇 위치 추정 장치 및 방법
Fischer et al. Stereo vision-based localization for hexapod walking robots operating in rough terrains
KR101866660B1 (ko) 동적인 환경에서 배경모델에 기반한 rgb-d 시각 주행 거리 측정 방법 및 장치
US11657506B2 (en) Systems and methods for autonomous robot navigation
Ly et al. A new framework of moving object tracking based on object detection-tracking with removal of moving features
Qian et al. An improved ORB-SLAM2 in dynamic scene with instance segmentation
Le Dem et al. Exploiting the ACCuracy-ACCeleration tradeoff: VINS-assisted real-time object detection on moving systems
Sajikumar et al. Monocular Visual Odometry Approach for Trajectory Estimation of a Moving Object Using Ground Plane Geometry
JP2023053681A (ja) 距離推定装置
Cadman et al. Simultaneous feature tracking and three-dimensional object reconstruction from an image sequence
Alonso-Ramirez et al. Plane Detection with Feature Point Tracking from Monocular Images on a Mobile Robot for Indoor Environments

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