KR101350460B1 - 영상의 모션 블러를 제거하는 방법 및 장치 - Google Patents

영상의 모션 블러를 제거하는 방법 및 장치 Download PDF

Info

Publication number
KR101350460B1
KR101350460B1 KR1020120048283A KR20120048283A KR101350460B1 KR 101350460 B1 KR101350460 B1 KR 101350460B1 KR 1020120048283 A KR1020120048283 A KR 1020120048283A KR 20120048283 A KR20120048283 A KR 20120048283A KR 101350460 B1 KR101350460 B1 KR 101350460B1
Authority
KR
South Korea
Prior art keywords
image
motion blur
camera
previous
motion
Prior art date
Application number
KR1020120048283A
Other languages
English (en)
Other versions
KR20130124837A (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 KR1020120048283A priority Critical patent/KR101350460B1/ko
Publication of KR20130124837A publication Critical patent/KR20130124837A/ko
Application granted granted Critical
Publication of KR101350460B1 publication Critical patent/KR101350460B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/73Deblurring; Sharpening
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20172Image enhancement details
    • G06T2207/20201Motion blur correction

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Studio Devices (AREA)

Abstract

본 발명은 카메라에서 획득한 영상의 모션 블러(motion blur)를 제거하는 영상의 모션 블러를 제거하는 방법으로, 이 방법은 카메라의 움직임으로부터 영상의 모션 블러 양상을 예측하는 단계, 모션 블러 양상을 이용하여 이전 영상과 영상 간의 대응 관계 정보를 검출하는 단계, 대응 관계 정보를 이용하여 카메라의 위치를 검출하는 단계, 그리고 카메라의 위치를 이용하여 모션 블러 함수를 추정하고, 모션 블러 함수를 이용하여 영상의 모션 블러를 제거하는 단계를 포함한다.

Description

영상의 모션 블러를 제거하는 방법 및 장치{METHOD AND APPARATUS FOR REMOVING MOTION BLUR OF IMAGE}
본 발명은 영상의 모션 블러를 제거하는 방법 및 장치에 관한 것으로, 보다 상세하게는 카메라로부터 획득된 영상의 모션 블러를 제거할 수 있는 영상의 모션 블러를 제거하는 방법 및 장치에 관한 것이다.
일반적으로 모션 블러(motion blur)는 카메라의 초점 불일치, 장시간 동안의 CCD(Charge-Coupled Device) 노출, 인터레이티드(interated) 스캔 방식 카메라에서의 손 떨림 등에 의해서 발생될 수 있다. 또한, 짧은 시간 동안의 CCD 노출의 경우에도 카메라에 근접한 물체가 매우 빠르게 움직일 때에는 긴 시간 동안의 CCD 노출의 경우처럼 영상에 모션 블러가 발생할 수 있다.
이와 같은 모션 블러는 영상의 품질에 가장 큰 영향을 미치는 선명도에 직접적인 영향을 주기 때문에 모션 블러를 제거하지 않으면, 영상의 품질을 크게 저하시키는 문제점이 있으며, 여러 가지 아티팩트(artifact)를 발생시키는 원인이 될 수 있다.
한편, 손 떨림을 방지하기 위한 방법으로는 크게 광학식(Optical Image Stabilizer: OIS), 전기식(Electrical Image Stabilizer: EIS), 디지털식(Digital Image Stabilizer: DIS) 등이 있으며, 기존의 카메라에서 대부분 채용하고 있는 광학식은 액티브 프리즘(Active prism) 방식, 렌즈 시프트(Lens shift) 방식, 센서 이동 방식 등이 있다.
이러한 방식들은 손 떨림을 감지하기 위한 자이로 센서뿐만 아니라 추가적인 광학계, 구동계가 필요하기 때문에 카메라 모듈의 크기가 커지고, 구조가 복잡해지는 문제점이 있다.
또한, 카메라에서 획득된 영상에서 발생한 모션 블러를 제거하기 위한 방법으로는 주파수 영역에서 영점(zero)의 규칙적인 패턴(regular pattern)에 기반한 방법 및 확률적 선형 모델(stochastic linear model)에 기반한 방법들이 있으나, 이와 같은 방법들은 대부분 모션 블러의 크기나 방향 등이 영상 전체에 대해 동일한 경우, 즉 선형 모션 블러에만 적용이 가능하기 때문에 실제 카메라를 사용하여 획득된 영상의 모션 블러는 정확하게 제거하지 못하는 문제점이 있다.
한국등록특허 제10-0930119호(등록일: 2009, 11, 27)
본 발명이 해결하고자 하는 과제는 카메라의 움직임으로부터 영상의 모션 블러 양상을 예측하고, 예측된 영상의 모션 블러 양상을 이용하여 카메라의 움직임 및 모션 블러 함수를 보다 정확하게 추정함으로써 영상의 모션 블러를 보다 효과적으로 제거할 수 있는 영상의 모션 블러를 제거하는 방법 및 장치를 제공함에 있다.
이러한 과제를 해결하기 위한 본 발명의 일 실시예에 따른 영상의 모션 블러를 제거하는 방법은 카메라의 움직임으로부터 영상의 모션 블러 양상을 예측하는 단계, 상기 모션 블러 양상을 이용하여 이전 영상과 상기 영상 간의 대응 관계 정보를 검출하는 단계, 상기 대응 관계 정보를 이용하여 상기 카메라의 위치를 검출하는 단계, 그리고 상기 카메라의 위치를 이용하여 모션 블러 함수를 추정하고, 상기 모션 블러 함수를 이용하여 상기 영상의 모션 블러를 제거하는 단계를 포함한다.
여기서, 상기 모션 블러 양상을 예측하는 단계는, 상기 카메라의 움직임을 예측한 카메라 움직임 정보와 상기 이전 영상을 이용하여 상기 영상의 모션 블러 양상을 예측할 수 있다.
그리고, 상기 모션 블러 양상을 예측하는 단계는, 상기 카메라 움직임 정보와 상기 이전 영상에 저장된 특징점의 3차원 공간상의 위치 정보를 이용하여 상기 영상의 모션 블러 양상을 예측할 수 있다.
이때, 상기 카메라의 움직임 정보는, 상기 카메라의 움직임 변화량과 이전 카메라의 위치를 이용하여 예측할 수 있다.
아울러, 상기 대응 관계 정보를 검출하는 단계는, 상기 이전 영상에 저장된 특징점의 위치와 상기 이전 영상의 특징점에 대응하는 상기 영상의 특징점의 위치를 이용하여 대응 관계 정보를 검출할 수 있다.
또한, 상기 대응 관계 정보를 검출하는 단계는, 상기 모션 블러 양상을 기반으로 상기 이전 영상에 저장된 특징점의 위치가 상기 영상의 어느 위치에 해당하는지 예측하여 상기 대응 관계 정보를 검출할 수 있다.
게다가, 상기 카메라의 위치를 검출하는 단계는, 최소 제곱근(least square) 기법을 이용하여 상기 카메라의 위치를 검출할 수 있다.
여기서, 상기 이전 영상은, 상기 카메라에 의해 사전에 획득되어 저장된 지도일 수 있다.
그리고, 상기 영상의 모션 블러를 제거하는 단계는, 리차드슨 루시(Richardson-Lucy) 기법을 이용하여 상기 영상의 모션 블러를 제거할 수 있다.
한편, 본 발명의 일 실시예에 따른 영상의 모션 블러를 제거하는 장치는 카메라의 움직임으로부터 영상의 모션 블러 양상을 예측하는 예측부, 상기 모션 블러 양상을 이용하여 이전 영상과 상기 영상 간의 대응 관계 정보를 검출하는 관계 검출부, 상기 대응 관계 정보를 이용하여 상기 카메라의 위치를 검출하는 위치 검출부, 그리고 상기 카메라의 위치를 이용하여 모션 블러 함수를 추정하고, 상기 모션 블러 함수를 이용하여 상기 영상의 모션 블러를 제거하는 추정 제거부를 포함한다.
여기서, 상기 예측부는, 상기 카메라의 움직임을 예측한 카메라 움직임 정보와 상기 이전 영상을 이용하여 상기 영상의 모션 블러 양상을 예측할 수 있다.
또한, 상기 예측부는, 상기 카메라 움직임 정보와 상기 이전 영상에 저장된 특징점의 위치 정보를 이용하여 상기 영상의 모션 블러 양상을 예측할 수 있다.
이때, 상기 카메라 움직임 정보는, 상기 카메라의 움직임 변화량과 이전 카메라의 위치를 이용하여 예측할 수 있다.
아울러, 상기 관계 검출부는, 상기 이전 영상에 저장된 특징점의 위치와 상기 이전 영상의 특징점에 대응하는 상기 영상의 특징점의 위치를 이용하여 대응 관계 정보를 검출할 수 있다.
게다가, 상기 위치 검출부는, 최소 제곱근(least square) 기법을 이용하여 상기 카메라의 위치를 검출할 수 있다.
그리고, 상기 관계 검출부는, 상기 모션 블러 양상을 기반으로 상기 이전 영상에 저장된 특징점의 위치가 상기 영상의 어느 위치에 해당하는지 예측하여 상기 대응 관계 정보를 검출할 수 있다.
이때, 상기 이전 영상은, 상기 카메라에 의해 사전에 획득되어 저장된 지도일 수 있다.
또한, 상기 추정 제거부는, 리차드슨 루시(Richardson-Lucy) 기법을 이용하여 상기 영상의 모션 블러를 제거할 수 있다.
이와 같이 본 발명의 실시예에 따른 영상의 모션 블러를 제거하는 방법 및 장치에 따르면, 카메라의 움직임 및 피사체의 3차원 구조로부터 영상의 모션 블러 양상을 예측하고, 예측된 영상의 모션 블러 양상을 이용하여 모션 블러 함수를 보다 정확하게 추정할 수 있는 장점이 있다. 즉, 카메라의 움직임을 예측한 카메라 움직임 정보와 이전 영상의 특징점 위치를 이용하여 현재 영상의 모션 블러 양상을 예측하고, 예측된 현재 영상의 모션 블러 양상을 통해 모션 블러 함수를 보다 정확하게 추정할 수 있는 장점이 있다.
또한, 보다 정확하게 추정된 모션 블러 함수를 이용하여 현재 영상에 포함된 모션 블러 자체를 직접적으로 제거할 수 있기 때문에 영상의 모션 블러를 보다 신속하고 효과적으로 제거할 수 있는 장점이 있다.
이로 인해, 영상의 품질을 크게 향상시킬 수 있는 이점이 생긴다.
또한, 로봇에 적용된 카메라의 경우, 외부로부터 변수가 발생하여도 안정적으로 동작할 수 있으며, 모션 블러의 고려 및 제거 기술 등을 통해 슬램 알고리즘에서의 특징점 대응 기술은 보다 안정적으로 동작할 수 있게 된다.
다시 말하면, 모션 블러에 강인한 특징점의 대응(matching) 기술로 인하여 모션 블러가 심하게 나타나는 영상 환경에서도 연속되는 영상 간에 특징점이 안정적으로 대응될 수 있으며, 이로 인해, 카메라의 위치를 보다 안정적으로 측정하여 로봇의 위치를 정확하게 검출할 수 있는 장점이 있다.
또한, 모션 블러가 제거된 영상을 물체 인식 등과 같이 영상 인식을 위해 사용하면, 물체의 인식 성능이 향상되기 때문에 슬램 동작 외에 다양한 분야에서 응용하여 사용할 수 있는 장점이 있다.
도 1은 본 발명의 일 실시예에 따른 로봇의 개략적인 구성도이다.
도 2는 도 1에 도시한 영상의 모션 블러를 제거하는 장치의 상세 구성도이다.
도 3은 본 발명의 일 실시예에 따른 영상의 모션 블러를 제거하는 과정을 보여주는 동작 흐름도이다.
도 4는 모션 블러 현상이 발생된 영상을 보여주는 예시도이다.
도 5는 본 발명의 일 실시예에 따라 모션 블러 현상이 제거된 영상을 보여주는 예시도이다.
본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다.
따라서, 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시예에 불과할 뿐이고 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세히 설명한다.
도 1은 본 발명의 일 실시예에 따른 로봇의 개략적인 구성도를 나타낸다.
도 1에 도시한 바와 같이, 로봇(1)은 주행장치(20), 카메라(40), 로봇 제어장치(60) 및 영상의 모션 블러를 제거하는 장치(100)를 포함하여 구성된다.
주행장치(20)는 로봇이 이동할 수 있도록 동력을 제공할 수 있으며, 일반적으로 복수의 바퀴와 방향 제어장치 등을 포함할 수 있다.
카메라(40)는 외부의 영상 이미지인 프레임을 포착(capture)하여 이를 디지털 신호로 변환해주는 장치이며, CCD(Charge Coupled Device) 모듈이나 CMOS(Complementary Metal Oxide Semiconductor) 모듈을 포함하여 구성될 수 있다.
로봇 제어장치(60)는 로봇(1)을 전반적으로 제어하는 마이컴으로서, 주행장치(20)나 카메라(40) 등의 기능을 제어할 수 있다. 즉, 로봇 제어장치(60)는 로봇(1)이 사용자가 명령한 위치로 이동하도록 제어하거나 카메라(40)의 영상 포착 동작을 제어할 수 있다.
또한, 로봇 제어장치(60)는 슬램(Simultaneous Localization And Mapping: SLAM) 알고리즘을 사용하여 로봇(1)의 위치를 추정함과 더불어 주변 환경의 지도를 동시에 추정할 수 있다.
보다 구체적으로 설명하면, 로봇 제어장치(60)는 슬램(Simultaneous Localization And Mapping: SLAM) 알고리즘을 사용하여 카메라(40)로부터 영상을 획득하고, 획득된 영상에서 추출된 물체나 특징점을 이용하여 주변 환경의 지도나 물체에 대한 데이터베이스(database)를 사전에 구성할 수 있다. 그런 후, 데이터베이스에 저장된 특징점과 현재 획득된 영상의 특징점 간의 대응(matching) 관계를 통해 물체를 인식하거나 로봇의 위치 및 주변 환경의 지도를 동시에 추정할 수 있다.
또한, 로봇 제어장치(60)는 슬램 알고리즘을 통해 로봇의 위치 및 주변 환경의 지도를 추정하는 도중에 로봇 즉, 카메라(40)에서 획득된 영상에 모션 블러가 발생하면, 로봇 제어장치(60)에 구비된 영상의 모션 블러를 제거하는 장치(100)를 이용하여 영상에 포함된 모션 블러를 제거할 수 있다.
도 2는 도 1에 도시한 영상의 모션 블러를 제거하는 장치의 상세 구성도를 나타낸다.
도 2를 참조하여 영상의 모션 블러를 제거하는 장치에 대하여 보다 구체적으로 설명하도록 한다.
영상의 모션 블러를 제거하는 장치(100)는 예측부(110), 관계 검출부(120), 위치 검출부(130) 및 추정 제거부(140)를 포함하여 구성된다.
우선, 예측부(110)는 카메라(40)의 움직임으로부터 영상의 모션 블러 양상을 예측할 수 있는데, 보다 구체적으로는, 카메라의 움직임을 예측한 카메라 움직임 정보와 이전 영상을 이용하여 영상의 모션 블러 양상을 예측할 수 있다.
더 자세하게 설명하면, 예측부(110)는 카메라 움직임 정보와 데이터베이스에 저장된 이전 영상의 특징점의 3차원 공간상의 위치 정보를 이용하여 현재 영상의 모션 블러 양상을 예측할 수 있다.
여기서, 이전 영상이란 카메라(40)에 의해 사전에 획득되어 저장된 지도(3차원 지도)를 나타내며, 카메라 움직임 정보는 하기의 (수식 1), (수식 2)에 나타난 바와 같이, 카메라(40)의 움직임 변화량과 이전 카메라의 위치를 이용하여 검출할 수 있다.
(수식 1)
Figure 112012036420798-pat00001
(수식 2)
Figure 112012036420798-pat00002
여기서,
Figure 112012036420798-pat00003
는 카메라의 움직임 변화량이고,
Figure 112012036420798-pat00004
는 이전 카메라의 위치이며,
Figure 112012036420798-pat00005
는 현재 카메라의 위치를 나타낸다. 이때, 카메라의 위치는 4×4 행렬 P로 나타낼 수 있으며, 카메라의 위치의 변화는 변화량 행렬을 곱함으로써 구할 수 있다.
앞서 설명한 바와 같이, 카메라의 움직임 변화량(
Figure 112012036420798-pat00006
)에 이전 카메라의 위치(
Figure 112012036420798-pat00007
)를 곱하면, 현재 카메라의 위치(
Figure 112012036420798-pat00008
)를 구할 수 있기 때문에 이를 기반으로 카메라 움직임 정보를 검출할 수 있게 된다.
그리고, 상기에서 예측된 카메라 움직임 정보와 하기의 (수식 3), (수식 4), (수식 5)를 이용하여 모션 블러 양상을 예측할 수 있다.
(수식 3)
Figure 112012036420798-pat00009
(수식 4)
Figure 112012036420798-pat00010
(수식 5)
Figure 112012036420798-pat00011
여기서,
Figure 112012036420798-pat00012
는 예측되는 영상의 픽셀의 움직임이고,
Figure 112012036420798-pat00013
Figure 112012036420798-pat00014
는 T에서의 자코비안(Jacobian) 및 헤씨안(Hessian)이며, 2차 테일러(Taylor) 전개를 이용하여 모션 블러에 의한 픽셀 값의 변화를 (식 4)와 같이 근사화할 수 있다.
이와 같이, 예측부(110)를 통해 지도에 저장된 특징점의 3차원 위치와 카메라 움직임 정보의 기하학적인 관계로부터 현재 영상에 나타날 모션 블러 양상을 예측할 수 있기 때문에 현재 영상에 나타난 특징점 위치의 예측이 용이해질 수 있다.
관계 검출부(120)는 예측부(110)에서 예측한 모션 블러 양상을 이용하여 이전 영상과 현재 영상 간의 대응(matching) 관계 정보를 검출할 수 있다.
보다 상세하게 설명하면, 관계 검출부(120)는 이전 영상에 저장된 특징점의 위치와 이전 영상의 특징점에 대응하는 현재 영상의 특징점의 위치를 이용하여 대응 관계 정보를 검출할 수 있는데, 모션 블러 양상을 기반으로 이전 영상에 저장된 특징점의 위치가 현재 영상의 어느 위치에 해당하는지 예측하여 대응 관계 정보를 검출할 수 있다.
즉, 관계 검출부(120)는 지도에 저장된 특징점과 모션 블러가 있는 현재 영상의 특징점과의 대응(matching) 관계를 통해 지도에 저장된 영상이 현재 영상에서 보이는 모습을 예측할 수 있고, 예측된 모습을 통해 이전 영상과 현재 영상 간의 대응 관계를 쉽게 얻어낼 수 있다.
위치 검출부(130)는 관계 검출부(120)에서 대응 관계 정보를 이용하여 카메라의 위치를 검출한다.
보다 자세하게 설명하면, 위치 검출부(130)는 관계 검출부(120)를 통해 이전 영상의 특징점과 현재 영상의 특징점 간의 대응 관계 정보가 검출되면, 이들의 대응 관계 정보를 최소 제곱근(least square) 기법에 적용하여 보다 정확하게 카메라의 위치를 검출할 수 있게 된다.
즉, 위치 검출부(130)는 최소 제곱근(least square) 기법(가중치 최소 제곱근 기법(weighted least square))을 사용하여 현재 카메라의 위치(
Figure 112012036420798-pat00015
)를 다시 구할 수 있으며, 보다 정확해진 현재 카메라의 위치(
Figure 112012036420798-pat00016
)를 이용하여 추정 제거부(140)로 하여금 보다 정확한 모션 블러 함수(Point Spread Function: PSF)를 추정할 수 있게 한다.
추정 제거부(140)는 추정기(142) 및 제거기(144)를 포함하는데, 추정기(142)는 카메라의 위치를 이용하여 모션 블러 함수를 추정할 수 있다.
보다 상세하게 설명하면, 추정기(142)는 하기의 (수식 6), (수식 7)을 이용하여 모션 블러 함수를 추정할 수 있다.
(식 6)
Figure 112012036420798-pat00017
(식 7)
Figure 112012036420798-pat00018
여기서, L은 3차원 특징점의 좌표, P는 카메라의 위치, T는 영상(프레임)의 시간 간격이고, 함수 h()는 3차원 호모지니어스(homogeneous) 형식의 좌표(x, y, z)를 2차원 인호모지니어스(inhomogeneous) 형식의 좌표(x/z, y/z)로 변환하는 함수, g()는 3차원 공간 상의 점을 2차원 영상 평면으로 투영(projection) 시키는 함수로, 카메라 내부 변수(초점 거리), 주 좌표 등이 관여되는 함수이며, 함수 h(g())에 의해서 시간 k에서 3차원 특징점이 영상에 나타나는 좌표가 나올 수 있게 된다.
따라서, 시간 k, k-1에서의 좌표의 차를 시간 T로 나누면, 노출 시간 동안 영상 속에서 3차원 특징점의 투영이 이동한 속도 벡터가 나오게 되고, 이 벡터의 방위각 pi가 모션 블러 함수의 각도가 되게 된다.
그리고, 카메라의 노출 시간은 영상(프레임)의 시간 간격(T)에서 셔터가 열리는 시간(t_0)을 뺀 값이 되는데, (식 7)에서와 같이, 시간 k, k-1 사이의 투영된 특징점의 속도에 노출 시간(T-t_0)을 곱해주면 투영된 특징점의 이동 거리 즉, 모션 블러 함수의 길이 값이 나오게 된다.
즉, 영상 투영 관련 함수와 3차원 특징점의 좌표 L, 카메라의 위치 P, 노출 시간 t_0 ~ T만 있으면, (식 6), (식 7)을 이용하여 모션 블러 함수의 길이와 방향을 구할 수 있게 된다.
그리고, 이와 같은 모션 블러 함수는 방향 즉, 방위각 pi와 길이 l로 결정되기 때문에 상술한 방법으로 모션 블러 함수를 간단하게 구할 수 있고, 이를 모션 블러를 제거하는데 보다 용이하게 사용할 수 있게 된다.
제거기(144)는 추정기에서 추정된 모션 블러 함수를 이용하여 현재 영상의 모션 블러를 제거할 수 있다.
보다 자세하게 설명하면, 제거기(144)는 리차드슨 루시(Richardson-Lucy) 기법을 이용하여 현재 영상의 모션 블러를 제거할 수 있는데, 범용 그래픽 처리 장치(General Purpose Graphic Processing Unit: GPGPU)에 리차드슨 루시 기법을 적용하여 현재 영상의 모션 블러를 빠르게 제거할 수 있게 된다.
이하에서는 본 발명의 일 실시예에 따른 영상의 모션 블러를 제거하는 과정에 대하여 설명하도록 한다.
도 3은 본 발명의 일 실시예에 따른 영상의 모션 블러를 제거하는 과정을 보여주는 동작 흐름도, 도 4는 모션 블러 현상이 발생된 영상을 보여주는 예시도 및 도 5는 본 발명의 일 실시예에 따라 모션 블러 현상이 제거된 영상을 보여주는 예시도를 나타낸다.
도 3에 도시한 바와 같이, 카메라의 움직임으로부터 현재 영상의 모션 블러 양상을 예측한다(S300).
보다 구체적으로 설명하면, 카메라의 움직임을 예측한 카메라 움직임 정보와 이전 영상을 이용하여 영상의 모션 블러 양상을 예측할 수 있는데, 더 자세하게는 카메라 움직임 정보와 데이터베이스에 저장된 이전 영상의 특징점의 3차원 공간상의 위치 정보를 이용하여 현재 영상의 모션 블러 양상을 예측할 수 있다.
여기서, 이전 영상이란 카메라(40)에 의해 사전에 획득되어 저장된 지도(3차원 지도)를 나타내며, 카메라 움직임 정보는 하기의 (수식 1), (수식 2)에 나타난 바와 같이, 카메라(40)의 움직임 변화량과 이전 카메라의 위치를 이용하여 검출할 수 있다.
(수식 1)
Figure 112012036420798-pat00019
(수식 2)
Figure 112012036420798-pat00020
여기서,
Figure 112012036420798-pat00021
는 카메라의 움직임 변화량이고,
Figure 112012036420798-pat00022
는 이전 카메라의 위치이며,
Figure 112012036420798-pat00023
는 현재 카메라의 위치를 나타낸다. 이때, 카메라의 위치는 4×4 행렬 P로 나타낼 수 있으며, 카메라의 위치의 변화는 변화량 행렬을 곱함으로써 구할 수 있다.
앞서 설명한 바와 같이, 카메라의 움직임 변화량(
Figure 112012036420798-pat00024
)에 이전 카메라의 위치(
Figure 112012036420798-pat00025
)를 곱하면, 현재 카메라의 위치(
Figure 112012036420798-pat00026
)를 구할 수 있기 때문에 이를 기반으로 카메라 움직임 정보를 검출할 수 있게 된다.
그리고, 상기에서 예측된 카메라 움직임 정보와 하기의 (수식 3), (수식 4), (수식 5)를 이용하여 모션 블러 양상을 예측할 수 있다.
(수식 3)
Figure 112012036420798-pat00027
(수식 4)
Figure 112012036420798-pat00028
(수식 5)
Figure 112012036420798-pat00029
여기서,
Figure 112012036420798-pat00030
는 예측되는 영상의 픽셀의 움직임이고,
Figure 112012036420798-pat00031
Figure 112012036420798-pat00032
는 T에서의 자코비안(Jacobian) 및 헤씨안(Hessian)이며, 2차 테일러(Taylor) 전개를 이용하여 모션 블러에 의한 픽셀 값의 변화를 (식 4)와 같이 근사화할 수 있다.
이와 같이, 지도에 저장된 특징점의 3차원 위치와 카메라 움직임 정보의 기하학적인 관계로부터 현재 영상에 나타날 모션 블러 양상을 예측할 수 있기 때문에 현재 영상에 나타난 특징점의 예측이 용이해질 수 있다.
다음으로, 모션 블러 양상을 이용하여 이전 영상과 현재 영상 간의 대응(matching) 관계 정보를 검출한다(S310).
보다 상세하게 설명하면, 이전 영상에 저장된 특징점의 위치와 이전 영상의 특징점에 대응하는 현재 영상의 특징점의 위치를 이용하여 대응 관계 정보를 검출할 수 있는데, 모션 블러 양상을 기반으로 이전 영상에 저장된 특징점의 위치가 현재 영상의 어느 위치에 해당하는지 예측하여 대응 관계 정보를 검출할 수 있다.
즉, 지도에 저장된 특징점과 모션 블러가 있는 현재 영상의 특징점과의 대응(matching) 관계를 통해 지도에 저장된 영상이 현재 영상에서 보이는 모습을 예측할 수 있고, 예측된 모습을 통해 이전 영상과 현재 영상 간의 대응 관계를 쉽게 얻어낼 수 있다.
그리고, 대응 관계 정보를 이용하여 카메라의 위치를 검출할 수 있다(S320).
보다 자세하게 설명하면, 이전 영상의 특징점과 현재 영상의 특징점 간의 대응 관계 정보가 검출되면, 이들의 대응 관계 정보를 최소 제곱근(least square) 기법에 적용하여 보다 정확하게 카메라의 위치를 검출할 수 있게 된다.
즉, 최소 제곱근(least square) 기법(가중치 최소 제곱근 기법(weighted least square))을 사용하여 현재 카메라의 위치(
Figure 112012036420798-pat00033
)를 다시 구할 수 있으며, 보다 정확해진 현재 카메라의 위치(
Figure 112012036420798-pat00034
)를 이용하여 추정 제거부(140)로 하여금 보다 정확한 모션 블러 함수(Point Spread Function: PSF)를 추정할 수 있게 한다.
그 다음, 카메라의 위치를 이용하여 모션 블러 함수를 추정한다(S330).
보다 상세하게 설명하면, 하기의 (수식 6), (수식 7)을 이용하여 모션 블러 함수를 추정할 수 있다.
(식 6)
Figure 112012036420798-pat00035
(식 7)
Figure 112012036420798-pat00036
여기서, L은 3차원 특징점의 좌표, P는 카메라의 위치, T는 영상(프레임)의 시간 간격이고, 함수 h()는 3차원 호모지니어스(homogeneous) 형식의 좌표(x, y, z)를 2차원 인호모지니어스(inhomogeneous) 형식의 좌표(x/z, y/z)로 변환하는 함수, g()는 3차원 공간 상의 점을 2차원 영상 평면으로 투영(projection) 시키는 함수로, 카메라 내부 변수(초점 거리), 주 좌표 등이 관여되는 함수이며, 함수 h(g())에 의해서 시간 k에서 3차원 특징점이 영상에 나타나는 좌표가 나올 수 있게 된다.
따라서, 시간 k, k-1에서의 좌표의 차를 시간 T로 나누면, 노출 시간 동안 영상 속에서 3차원 특징점의 투영이 이동한 속도 벡터가 나오게 되고, 이 벡터의 방위각 pi가 모션 블러 함수의 각도가 되게 된다.
그리고, 카메라의 노출 시간은 영상(프레임)의 시간 간격(T)에서 셔터가 열리는 시간(t_0)을 뺀 값이 되는데, (식 7)에서와 같이, 시간 k, k-1 사이의 투영된 특징점의 속도에 노출 시간(T-t_0)을 곱해주면 투영된 특징점의 이동 거리 즉, 모션 블러 함수의 길이 값이 나오게 된다.
즉, 영상 투영 관련 함수와 3차원 특징점의 좌표 L, 카메라의 위치 P, 노출 시간 t_0 ~ T만 있으면, (식 6), (식 7)을 이용하여 모션 블러 함수의 길이와 방향을 구할 수 있게 된다.
그리고, 이와 같은 모션 블러 함수는 방향 즉, 방위각 pi와 길이 l로 결정되기 때문에 상술한 방법으로 모션 블러 함수를 간단하게 구할 수 있고, 이를 모션 블러를 제거하는데 보다 용이하게 사용할 수 있게 된다.
그런 후, 모션 블러 함수를 이용하여 현재 영상의 모션 블러를 제거한다(S340).
보다 자세하게 설명하면, 리차드슨 루시(Richardson-Lucy) 기법을 이용하여 현재 영상의 모션 블러를 제거할 수 있는데, 범용 그래픽 처리 장치(General Purpose Graphic Processing Unit: GPGPU)에 리차드슨 루시 기법을 적용하여 도 5에 도시한 바와 같이, 현재 영상의 모션 블러를 빠르게 제거할 수 있다.
그런 다음에, 모션 블러가 제거된 현재 영상은 로봇(1)의 위치를 추정함과 더불어 주변 환경의 지도를 추정하는데 사용할 수 있게 된다.
한편, 본 발명의 일 실시예에서는 로봇에 구비된 카메라의 경우로 한정하여 설명하였으나, 이러한 구성은 예시적인 것일 뿐이고, 스마트폰 등과 같이 사용자 단말 장치에 구비된 카메라에 적용될 수 있으며, 이외에 다양한 카메라에 적용될 수 있음은 물론이다. 그리고, 본 발명의 기술적 특징은 이와 동일하게 적용될 수 있으며, 일례로, 스마트폰에 구비된 카메라에 적용될 경우, 이전 영상으로는 스마트폰에서 접속한 웹 서버의 맵핑된 지도 또는 사전에 획득되어 데이터베이스에 저장된 지도를 이용할 수 있다.
본 발명의 일 실시예는 다양한 컴퓨터로 구현되는 동작을 수행하기 위한 프로그램 명령을 포함하는 컴퓨터로 읽을 수 있는 매체를 포함한다. 이 매체는 앞서 설명한 영상의 모션 블러를 제거하는 방법을 실행시키기 위한 프로그램을 기록한다. 이 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 이러한 매체의 예에는 하드디스크, 플로피디스크 및 자기 테이프와 같은 자기 매체, CD 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 자기-광 매체, 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 구성된 하드웨어 장치 등이 있다. 또는 이러한 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상의 상세한 설명은 본 발명을 예시하는 것이다. 또한 전술한 내용은 본 발명의 바람직한 실시 형태를 나타내고 설명하는 것에 불과하며, 본 발명은 다양한 다른 조합, 변경 및 환경에서 사용할 수 있다. 즉, 본 명세서에 개시된 발명의 개념의 범위, 저술한 개시 내용과 균등한 범위 및/또는 당업계의 기술 또는 지식의 범위 내에서 변경 또는 수정이 가능하다. 전술한 실시예들은 본 발명을 실시하는데 있어 최선의 상태를 설명하기 위한 것이며, 본 발명과 같은 다른 발명을 이용하는데 당업계에 알려진 다른 상태로의 실시, 그리고 발명의 구체적인 적용 분야 및 용도에서 요구되는 다양한 변경도 가능하다. 따라서, 이상의 발명의 상세한 설명은 개시된 실시 상태로 본 발명을 제한하려는 의도가 아니다. 또한 첨부된 청구범위는 다른 실시 상태도 포함하는 것으로 해석되어야 한다.
1: 로봇
20: 주행장치
40: 카메라
60: 로봇 제어장치
100: 영상의 모션 블러를 제거하는 장치
110: 예측부
120: 관계 검출부
130: 위치 검출부
140: 추정 제거부
142: 추정기
144: 제거기

Claims (15)

  1. 카메라의 움직임으로부터 영상의 모션 블러에 의한 픽셀 값의 변화를 예측하는 단계,
    상기 모션 블러에 의한 픽셀 값의 변화를 이용하여 이전 영상과 상기 영상 간의 대응 관계 정보를 검출하는 단계,
    상기 대응 관계 정보를 이용하여 상기 카메라의 위치를 검출하는 단계, 그리고
    상기 카메라의 위치를 이용하여 모션 블러 함수를 추정하고, 상기 모션 블러 함수를 이용하여 상기 영상의 모션 블러를 제거하는 단계
    를 포함하고,
    상기 이전 영상은 상기 카메라에 의해 사전에 획득되어 저장된 지도인 영상의 모션 블러를 제거하는 방법.
  2. 제 1 항에 있어서,
    상기 모션 블러에 의한 픽셀 값의 변화를 예측하는 단계는,
    상기 카메라의 움직임을 예측한 카메라 움직임 정보와 상기 이전 영상을 이용하여 상기 영상의 모션 블러에 의한 픽셀 값의 변화를 예측하는 영상의 모션 블러를 제거하는 방법.
  3. 제 2 항에 있어서,
    상기 모션 블러에 의한 픽셀 값의 변화를 예측하는 단계는,
    상기 카메라 움직임 정보와 상기 이전 영상에 저장된 특징점의 위치 정보를 이용하여 상기 영상의 모션 블러에 의한 픽셀 값의 변화를 예측하는 영상의 모션 블러를 제거하는 방법.
  4. 제 2 항에 있어서,
    상기 카메라의 움직임 정보는,
    상기 카메라의 움직임 변화량과 이전 카메라의 위치를 이용하여 예측하고,
    상기 이전 카메라의 위치는 상기 카메라가 상기 이전 영상을 촬영한 위치인 영상의 모션 블러를 제거하는 방법.
  5. 제 1 항에 있어서,
    상기 대응 관계 정보를 검출하는 단계는,
    상기 이전 영상에 저장된 특징점의 위치와 상기 이전 영상의 특징점에 대응하는 상기 영상의 특징점의 위치를 이용하여 대응 관계 정보를 검출하는 영상의 모션 블러를 제거하는 방법.
  6. 제 5 항에 있어서,
    상기 대응 관계 정보를 검출하는 단계는,
    상기 모션 블러에 의한 픽셀 값의 변화를 기반으로 상기 이전 영상에 저장된 특징점의 위치가 상기 영상의 어느 위치에 해당하는지 예측하여 상기 대응 관계 정보를 검출하는 영상의 모션 블러를 제거하는 방법.
  7. 삭제
  8. 삭제
  9. 제 1 항에 있어서,
    상기 영상의 모션 블러를 제거하는 단계는,
    리차드슨 루시(Richardson-Lucy) 기법을 이용하여 상기 영상의 모션 블러를 제거하는 영상의 모션 블러를 제거하는 방법.
  10. 카메라의 움직임으로부터 영상의 모션 블러에 의한 픽셀 값의 변화를 예측하는 예측부,
    상기 모션 블러에 의한 픽셀 값의 변화를 이용하여 이전 영상과 상기 영상 간의 대응 관계 정보를 검출하는 관계 검출부,
    상기 대응 관계 정보를 이용하여 상기 카메라의 위치를 검출하는 위치 검출부, 그리고
    상기 카메라의 위치를 이용하여 모션 블러 함수를 추정하고, 상기 모션 블러 함수를 이용하여 상기 영상의 모션 블러를 제거하는 추정 제거부
    를 포함하고,
    상기 이전 영상은 상기 카메라에 의해 사전에 획득되어 저장된 지도이며,
    는 영상의 모션 블러를 제거하는 장치.
  11. 제 10 항에 있어서,
    상기 예측부는,
    상기 카메라의 움직임을 예측한 카메라 움직임 정보와 상기 이전 영상을 이용하여 상기 영상의 모션 블러에 의한 픽셀 값의 변화를 예측하는 영상의 모션 블러를 제거하는 장치.
  12. 제 11 항에 있어서,
    상기 예측부는,
    상기 카메라 움직임 정보와 상기 이전 영상에 저장된 특징점의 위치 정보를 이용하여 상기 영상의 모션 블러에 의한 픽셀 값의 변화를 예측하는 영상의 모션 블러를 제거하는 장치.
  13. 제 11 항에 있어서,
    상기 카메라 움직임 정보는,
    상기 카메라의 움직임 변화량과 이전 카메라의 위치를 이용하여 예측하고,
    상기 이전 카메라의 위치는 상기 카메라가 상기 이전 영상을 촬영한 위치인 영상의 모션 블러를 제거하는 장치.
  14. 제 10 항에 있어서,
    상기 관계 검출부는,
    상기 이전 영상에 저장된 특징점의 위치와 상기 이전 영상의 특징점에 대응하는 상기 영상의 특징점의 위치를 이용하여 대응 관계 정보를 검출하는 영상의 모션 블러를 제거하는 장치.
  15. 삭제
KR1020120048283A 2012-05-07 2012-05-07 영상의 모션 블러를 제거하는 방법 및 장치 KR101350460B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120048283A KR101350460B1 (ko) 2012-05-07 2012-05-07 영상의 모션 블러를 제거하는 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120048283A KR101350460B1 (ko) 2012-05-07 2012-05-07 영상의 모션 블러를 제거하는 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20130124837A KR20130124837A (ko) 2013-11-15
KR101350460B1 true KR101350460B1 (ko) 2014-01-10

Family

ID=49853496

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120048283A KR101350460B1 (ko) 2012-05-07 2012-05-07 영상의 모션 블러를 제거하는 방법 및 장치

Country Status (1)

Country Link
KR (1) KR101350460B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102197089B1 (ko) 2020-09-22 2020-12-30 엘아이지넥스원 주식회사 단일 영상 비균일 블러 제거를 위한 딥러닝 기반 다중 학습 구조

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102457222B1 (ko) 2015-11-26 2022-10-21 삼성전자주식회사 이동 로봇 및 그 제어 방법
US20220375041A1 (en) * 2021-05-18 2022-11-24 Snap Inc. Selective image pyramid computation for motion blur mitigation in visual-inertial tracking

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007006045A (ja) 2005-06-22 2007-01-11 Ricoh Co Ltd 手ぶれ補正方法、手ぶれ補正装置、及び撮像装置
JP2008520117A (ja) 2004-11-10 2008-06-12 フォトネーション ビジョン リミテッド カメラのモーションブラー関数を決定する手段を有するデジタルイメージ取得システム
KR20100034145A (ko) * 2008-09-23 2010-04-01 한양대학교 산학협력단 Psf 파라미터 추정을 기반으로 한 영상 복원 방법 및 장치

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008520117A (ja) 2004-11-10 2008-06-12 フォトネーション ビジョン リミテッド カメラのモーションブラー関数を決定する手段を有するデジタルイメージ取得システム
JP2007006045A (ja) 2005-06-22 2007-01-11 Ricoh Co Ltd 手ぶれ補正方法、手ぶれ補正装置、及び撮像装置
KR20100034145A (ko) * 2008-09-23 2010-04-01 한양대학교 산학협력단 Psf 파라미터 추정을 기반으로 한 영상 복원 방법 및 장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102197089B1 (ko) 2020-09-22 2020-12-30 엘아이지넥스원 주식회사 단일 영상 비균일 블러 제거를 위한 딥러닝 기반 다중 학습 구조

Also Published As

Publication number Publication date
KR20130124837A (ko) 2013-11-15

Similar Documents

Publication Publication Date Title
CN108986161B (zh) 一种三维空间坐标估计方法、装置、终端和存储介质
KR101776622B1 (ko) 다이렉트 트래킹을 이용하여 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법
KR101776621B1 (ko) 에지 기반 재조정을 이용하여 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법
KR101725060B1 (ko) 그래디언트 기반 특징점을 이용한 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법
EP2917754B1 (en) Image processing method, particularly used in a vision-based localization of a device
KR101776620B1 (ko) 검색 기반 상관 매칭을 이용하여 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법
JP6534664B2 (ja) カメラ動き予測及び修正のための方法
EP3296952B1 (en) Method and device for blurring a virtual object in a video
KR101071352B1 (ko) 좌표맵을 이용한 팬틸트줌 카메라 기반의 객체 추적 장치 및 방법
JP6744336B2 (ja) 予想されるエッジ軌跡を用いたレンズ汚染の検出
JP7151488B2 (ja) 移動物体検出装置、移動物体検出方法及びプログラム
JP2007293722A (ja) 画像処理装置、画像処理方法、画像処理プログラム、および画像処理プログラムを記録した記録媒体、ならびに移動物体検出システム
JP6638723B2 (ja) 画像解析装置、画像解析方法、及び、画像解析プログラム
JP2015186085A (ja) 移動量導出装置、及び、移動量導出方法
WO2016120132A1 (en) Method and apparatus for generating an initial superpixel label map for an image
KR101350460B1 (ko) 영상의 모션 블러를 제거하는 방법 및 장치
JP5709255B2 (ja) 画像処理方法および監視装置
JP7286310B2 (ja) オブジェクト検出のための画像からのクラッタ背景の除去
JP4751871B2 (ja) 撮像対象検出装置および方法
JP2015005200A (ja) 情報処理装置、情報処理システム、情報処理方法、プログラムおよび記憶媒体
KR20130019485A (ko) 마커를 기반으로 하는 증강현실 시스템 및 그 객체 증강방법
JP4298621B2 (ja) 物体検知装置、物体検知方法および物体検知プログラム
JP4825260B2 (ja) 三次元的動き検出装置、三次元的動き検出方法及び三次元的動き検出プログラム
JP4926163B2 (ja) 移動対象検出装置、移動対象検出方法及び移動対象検出プログラム
Erdem et al. Estimation of camera ego-motion for real-time computer vision applications

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
FPAY Annual fee payment

Payment date: 20160224

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20200102

Year of fee payment: 7