KR101341871B1 - Method for deblurring video and apparatus thereof - Google Patents
Method for deblurring video and apparatus thereof Download PDFInfo
- Publication number
- KR101341871B1 KR101341871B1 KR1020120101176A KR20120101176A KR101341871B1 KR 101341871 B1 KR101341871 B1 KR 101341871B1 KR 1020120101176 A KR1020120101176 A KR 1020120101176A KR 20120101176 A KR20120101176 A KR 20120101176A KR 101341871 B1 KR101341871 B1 KR 101341871B1
- Authority
- KR
- South Korea
- Prior art keywords
- frame
- blur
- patches
- motion
- frames
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 72
- 238000002156 mixing Methods 0.000 claims abstract description 26
- 238000011084 recovery Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 description 49
- 238000010586 diagram Methods 0.000 description 8
- 230000002123 temporal effect Effects 0.000 description 7
- 238000013507 mapping Methods 0.000 description 6
- 230000015572 biosynthetic process Effects 0.000 description 4
- 238000003786 synthesis reaction Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000012804 iterative process Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000006641 stabilisation Effects 0.000 description 2
- 238000011105 stabilization Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 229910052709 silver Inorganic materials 0.000 description 1
- 239000004332 silver Substances 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/68—Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
- H04N23/682—Vibration or motion blur correction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/73—Deblurring; Sharpening
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Signal Processing (AREA)
- Studio Devices (AREA)
- Image Processing (AREA)
Abstract
Description
본 발명은 비디오 디블러링에 관한 것으로, 더욱 상세하게는 카메라의 떨림에 의해 발생하는 모션 블러를 제거하는 방법 및 장치에 관한 것이다.The present invention relates to video deblur, and more particularly, to a method and apparatus for removing motion blur caused by camera shake.
디지털 캠코더 또는 카메라폰 등과 같은 휴대용 동영상 촬영 장치에 대한 보급이 확대되고, 유투브(YouTube)와 같은 비디오 서비스가 확산됨에 따라, 어느 누구나 비디오를 촬영하여 이용할 수 있는 환경이 조성되고 있다. As the spread of portable video recording apparatuses such as digital camcorders and camera phones is expanded, and video services such as YouTube are spreading, an environment in which anyone can shoot and use video is being created.
전문 촬영 장비를 구비하지 않은 일반 사용자는 카메라를 손에 들고 동영상을 촬영하는 경우가 일반적이다. 하지만, 전문 촬영 장비없이 카메라를 손에 들고 동영상을 촬영하는 경우, 카메라의 흔들림으로 인하여 촬영된 동영상에 모션 블러가 발생할 수 있다. A general user who does not have professional shooting equipment usually takes a camera in hand and shoots a video. However, when shooting a video with the camera in hand without professional shooting equipment, motion blur may occur in the recorded video due to the camera shake.
즉, 일반 사용자가 촬영하는 동영상의 수가 급격하게 증가하는 추세에 있으나, 전문 촬영 장비없이 일반 사용자가 동영상을 촬영하는 경우 일반적으로 손에 들고 움직이며 동영상을 촬영하기 때문에 동영상의 내용이 흔들릴 뿐만 아니라, 동영상을 구성하는 각각의 프레임이 블러(blur)되어 촬영되는 경우가 많은 실정이다. In other words, the number of videos taken by the general user is increasing rapidly, but when the general user shoots the video without the professional shooting equipment, the content of the video is not only shaken because the user moves the hand and shoots the video. In many cases, each frame constituting the video is blurred and photographed.
최근에 카메라의 모션을 부드럽게 하여 동영상의 흔들림을 제거하는 비디오 안정화 시스템(Video stabilization system)이 제안되었으며, 아도비(Adobe Systems, Inc) 사의 AfterEffects과 같은 동영상 편집 프로그램에 적용되어 널리 사용되고 있다. 그러나 비디오 안정화 시스템은 동영상을 구성하는 각각의 프레임의 블러는 제거하지 못하기 때문에, 고품질의 결과를 얻는데 한계가 있다. Recently, a video stabilization system has been proposed, which smoothes the motion of a camera to remove motion blur, and has been widely applied to video editing programs such as AfterEffects of Adobe Systems, Inc. However, since the video stabilization system does not remove the blur of each frame constituting the video, there is a limit in obtaining high quality results.
이와 별개로 카메라의 흔들림을 제거하기 위한 영상 디블러링 기법들이 제안되었다. 이러한 기법으로는 싱글 이미지 디블러링(single image deblurring) 또는 멀티 이미지 디블러링(multiple image deblurring)과 같은 기법들이 있다. Separately, image deblurring techniques have been proposed to remove camera shake. Such techniques include techniques such as single image deblurring or multiple image deblurring.
따라서 동영상의 각각의 프레임의 블러를 제거하기 위한 가장 간단한 방법으로 이러한 디블러링 기법을 적용하는 방법을 생각할 수 있으나, 이러한 방법은 고품질의 결과를 얻을 수 없다. 이는 비디오에서 블러 커널(blur kernel)들의 공간적 시간적인 다양성, 객체 모션에 따른 블러의 효과적인 처리에 대한 한계, 노이즈 등에 민감한 디콘볼루션(deconvolution)의 특성, 개별 프레임들에 대한 이미지 디블러링에 따른 시간적 불일치 등으로 인하여 비디오를 효과적으로 디블러링하는데 한계가 있기 때문이다. Therefore, we can think of the method of applying this deblurring technique as the simplest method for eliminating the blurring of each frame of the video, but this method cannot obtain high quality results. This is due to the spatial and temporal diversity of the blur kernels in video, the limitations of effective processing of blur due to object motion, the nature of deconvolution sensitive to noise, and the image deblur of individual frames. This is because there is a limit to effectively blur the video due to temporal mismatch.
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, 카메라의 모션에 의해 발생하는 블러(blur)를 효과적으로 제거할 수 있는 비디오 디블러링 방법을 제공하는데 있다.An object of the present invention for solving the above problems is to provide a video deblurring method that can effectively remove the blur caused by the motion of the camera.
상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은, 카메라의 모션에 의해 발생하는 블러(blur)를 효과적으로 제거할 수 있는 비디오 디블러링 장치를 제공하는데 있다.Another object of the present invention for solving the above problems is to provide a video deblurring apparatus that can effectively remove the blur caused by the motion of the camera.
상기 목적을 달성하기 위한 본 발명의 일 측면에 따른 비디오 디블러링 방법은, 입력 비디오로부터 프레임들 사이의 모션 및 프레임의 모션 블러를 추정하는 단계와, 추정된 모션 및 모션 블러를 이용하여 입력 비디오의 프레임의 블러를 제거하는 단계를 포함한다. According to an aspect of the present invention, there is provided a video deblurring method, comprising: estimating motion between frames and motion blur of a frame from input video, and using the estimated motion and motion blur Removing the blur of the frame.
여기에서, 상기 입력 비디오로부터 프레임들 사이의 모션 및 프레임의 모션 블러를 추정하는 단계는, 입력 비디오의 각각의 프레임과 인접한 프레임 사이의 호모그래피 함수를 추정하는 단계와, 추정된 호모그래피 함수를 이용하여 각각의 프레임의 픽셀들이 블러된 정도를 나타내는 러키니스값을 산출하는 단계와, 추정된 호모그래피 함수와 산출된 러키니스값을 이용하여 각각의 프레임의 블러 함수를 추정하는 단계를 포함할 수 있다. Here, estimating motion between frames and motion blur of a frame from the input video includes estimating a homography function between each frame of the input video and an adjacent frame, and using the estimated homography function. Comprising the steps of: calculating a lukiness value representing the degree of blurring of pixels of each frame; and estimating a blur function of each frame using the estimated homography function and the calculated lukiness value .
여기에서, 상기 추정된 모션 및 모션 블러를 이용하여 상기 입력 비디오의 프레임의 블러를 제거하는 단계는, 입력비디오의 각각의 프레임의 모든 패치에 대해 인접한 프레임으로부터 매칭 패치들을 선별하는 단계와, 선별된 매칭 패치들을 블렌딩하여 선명한 프레임을 복원하는 단계를 포함할 수 있다. Wherein removing the blur of the frame of the input video using the estimated motion and motion blur comprises selecting matching patches from adjacent frames for every patch of each frame of the input video; Blending the matching patches to restore the clear frame.
여기에서, 상기 추정된 호모그래피 함수와 상기 산출된 러키니스값을 이용하여 상기 각각의 프레임의 블러 함수를 추정하는 단계는, 추정된 호모그래피 함수를 보간(interpolation)하여 카메라의 흔들림을 근사하여 블러 함수를 추정할 수 있다. Here, the estimating of the blur function of each frame using the estimated homography function and the calculated lukiness value may be performed by interpolating the estimated homography function to approximate a camera shake. The function can be estimated.
여기에서, 상기 추정된 호모그래피 함수와 상기 산출된 러키니스값을 이용하여 상기 각각의 프레임의 블러 함수를 추정하는 단계는, 산출된 러키니스값을 이용하여 선명한 프레임과 인접한 블러된 프레임의 쌍을 선택하고, 선택된 프레임의 쌍을 비교하여 프레임의 노출 시간을 추정할 수 있다. Here, the estimating of the blur function of each frame using the estimated homography function and the calculated lukiness value may be performed by using a calculated lukiness value to determine a pair of clear and adjacent blurred frames. The exposure time of the frame can be estimated by selecting and comparing the pair of the selected frame.
여기에서, 상기 입력된 비디오의 각각의 프레임의 모든 패치에 대해 상기 인접한 프레임으로부터 매칭 패치들을 선별하는 단계는, 추정된 각각의 프레임의 블러 함수를 각각의 프레임에 상응하는 인접 프레임에 적용한 후, 각각의 프레임의 패치들과 블러 함수가 적용된 인접 프레임의 패치들 사이의 유사도에 따라 산출되는 블러 기반 유사도를 이용하여 각각의 프레임의 패치들에 가장 유사한 인접 프레임의 패치들을 매칭 패치들로 찾을 수 있다. Here, selecting matching patches from the adjacent frame for every patch of each frame of the input video may be performed by applying the estimated blur function of each frame to the adjacent frame corresponding to each frame, respectively. The blur based similarity calculated according to the similarity between the patches of the frame of the frame and the patches of the adjacent frame to which the blur function is applied can find the patches of the adjacent frame most similar to the patches of each frame as matching patches.
여기에서, 상기 입력된 비디오의 각각의 프레임의 모든 패치에 대해 상기 인접한 프레임으로부터 매칭 패치들을 선별하는 단계는, 산출된 블러 기반 유사도에 산출된 러키니스값을 기반으로 한 가중치를 적용하여 산출되는 수정된 블러 기반 유사도를 이용하여 각각의 프레임의 패치들에 가장 유사한 인접 프레임의 패치들을 매칭 패치들로 찾을 수 있다. Here, the step of selecting matching patches from the adjacent frames for all the patches of each frame of the input video, the correction is calculated by applying the weight based on the calculated lukiness value to the calculated blur based similarity Based on the blur based similarity, the patches of the adjacent frame most similar to the patches of each frame can be found as matching patches.
여기에서, 상기 선별된 매칭 패치들을 블렌딩하여 선명한 프레임을 복원하는 단계는, 각각의 프레임의 패치들에 대해, 선별된 매칭 패치들을 블렌딩(blending)하여 선명한 프레임을 복원할 수 있다. Here, in the reconstructing the clear frame by blending the selected matching patches, the clear frame may be restored by blending the selected matching patches for the patches of each frame.
여기에서, 상기 선별된 매칭 패치를 블렌딩하여 선명한 프레임을 복원하는 단계는, 산출된 블러 기반 유사도 또는 산출된 수정된 블러 기반 유사도에 기반한 매칭 패치들을 각각의 프레임의 패치들에 블렌딩할 수 있다. Here, in the reconstructing the clear frame by blending the selected matching patch, matching patches based on the calculated blur based similarity or the calculated modified blur based similarity may be blended into the patches of each frame.
여기에서, 상기 선별된 매칭 패치의 러키니스값을 블렌딩하여 복원된 프레임의 러키니스값을 업데이트하는 단계를 더 포함할 수 있다. Here, the method may further include blending the lukiness values of the selected matching patch to update the lukiness value of the reconstructed frame.
여기에서, 상기 추정된 모션 및 모션 블러를 이용하여 입력 비디오의 프레임의 블러를 제거하는 단계를 미리 설정된 횟수만큼 반복할 수 있다. Here, the step of removing the blur of the frame of the input video by using the estimated motion and motion blur may be repeated a predetermined number of times.
여기에서, 상기 러키니스값에 기반하여 상기 입력 프레임에 대한 디블러링 순서를 결정하는 단계를 더 포함할 수 있다.Here, the method may further include determining a deblurring order for the input frame based on the lukiness value.
상기 목적을 달성하기 위한 본 발명의 일 측면에 따른 비디오 디블러링 장치는, 입력 비디오로부터 프레임 사이의 모션 및 프레임의 모션 블러를 추정하는 모션 및 모션 블러 추정부와, 추정된 모션 및 모션 블러를 이용하여 입력 비디오의 프레임의 블러를 제거하는 디블러링부를 포함한다. According to an aspect of the present invention, there is provided a video deblurring apparatus comprising: a motion and motion blur estimator for estimating motion between frames and motion blur of a frame from an input video; And a deblurring unit that removes blur of a frame of the input video using the blur.
상기와 같은 본 발명의 실시예에 따른 비디오 디블러링 방법 및 장치를 이용할 경우에는 카메라의 모션에 의해 야기된 블러를 효과적으로 제거할 수 있다. When using the video deblurring method and apparatus according to the embodiment of the present invention as described above, it is possible to effectively remove the blur caused by the motion of the camera.
또한, 비디오 디블러링 방법 및 장치는 비디오에서 블러 커널(blur kernel)들의 공간적 시간적인 다양성, 객체 모션에 따른 블러의 효과적인 처리에 대한 한계, 노이즈 등에 민감한 디콘볼루션(deconvolution)의 특성, 개별 프레임들에 대한 이미지 디블러링에 따른 시간적 불일치에 따른 종래 디블러링의 한계를 보완할 수 있는 장점이 있다.In addition, video deblurring methods and apparatuses include spatial and temporal diversity of blur kernels in video, limitations on effective processing of blur due to object motion, characteristics of deconvolution sensitive to noise, and individual frames. There is an advantage that can compensate for the limitation of the conventional deblurring due to the temporal inconsistency due to image deblurring.
도 1은 모션 블러된 영상의 특성을 설명하기 위한 영상들이다.
도 2는 본 발명의 실시예에 따른 블러 모델을 설명하기 위한 개념도이다.
도 3은 본 발명의 실시예에 따라 영상의 선명도를 설명하기 위한 러키니스값을 나타내는 예시도이다.
도 4는 본 발명의 실시예에 따른 디블러링 방법을 설명하기 위한 흐름도이다.
도 5는 본 발명의 실시예에 따른 디블러링 방법을 적용한 영상에 대한 예시도이다.
도 6은 본 발명의 실시예에 따른 비디오 디블러링 장치를 나타내는 블록도이다. 1 is a diagram illustrating images of a motion blurred image.
2 is a conceptual diagram illustrating a blur model according to an embodiment of the present invention.
3 is an exemplary diagram illustrating a luckiness value for explaining the sharpness of an image according to an exemplary embodiment of the present invention.
4 is a flowchart illustrating a deblurring method according to an embodiment of the present invention.
5 is an exemplary view of an image to which the deblurring method according to an embodiment of the present invention is applied.
6 is a block diagram illustrating a video debluring apparatus according to an embodiment of the present invention.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail. It should be understood, however, that the invention is not intended to be limited to the particular embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. Like reference numerals are used for like elements in describing each drawing.
제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. The terms first, second, A, B, etc. may be used to describe various elements, but the elements should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component. And / or < / RTI > includes any combination of a plurality of related listed items or any of a plurality of related listed items.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. When a component is referred to as being "connected" or "connected" to another component, it may be directly connected to or connected to that other component, but it may be understood that other components may be present in between. Should be. On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used in this application is used only to describe a specific embodiment and is not intended to limit the invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, the terms "comprise" or "have" are intended to indicate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, and one or more other features. It is to be understood that the present invention does not exclude the possibility of the presence or the addition of numbers, steps, operations, components, components, or a combination thereof.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the contextual meaning of the related art and are to be interpreted as either ideal or overly formal in the sense of the present application Do not.
통상적으로 비디오는 일련의 픽쳐(Picture)으로 구성되고, 픽쳐는 블록(Block)과 같은 소정의 영역으로 분할될 수 있다. 또한, "픽처(picture)"이라는 용어는 영상(image), 프레임(frame) 등과 같은 동등한 의미를 갖는 다른 용어로 대치되어 사용될 수 있으며, 프레임의 일 영역을 패치(patch)로 표현할 수 있음은 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 이해할 수 있다.In general, a video is composed of a series of pictures, and the picture may be divided into predetermined areas such as blocks. In addition, the term "picture" may be used interchangeably with another term having an equivalent meaning such as an image, a frame, and the like, and a region of a frame may be expressed as a patch. Those skilled in the art to which the embodiments belong may understand.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the accompanying drawings.
도 1은 모션 블러된 영상의 특성을 설명하기 위한 영상들이다. 1 is a diagram illustrating images of a motion blurred image.
도 1을 참조하면, 모션 블러된 비디오의 프레임들은 블러된 이미지 영역뿐만 아니라 선명한(sharp) 이미지 영역을 포함할 수 있다. Referring to FIG. 1, frames of a motion blurred video may include a sharp image region as well as a blurred image region.
도 1a에서 보는 바와 같이 프레임의 배경이 되는 영역에 하나의 특징점 (feature point)를 설정하여 카메라의 모션을 추적할 수 있으며, 배경은 정적(static)이기 때문에 카메라의 모션을 잘 표현할 수 있다. 즉, 도 1b에 나타난 특징점의 궤적은 카메라의 움직임을 나타낼 수 있다.As shown in FIG. 1A, a motion point of a camera can be tracked by setting a feature point in an area of the background of the frame. Since the background is static, the motion of the camera can be well represented. That is, the trajectory of the feature point shown in FIG. 1B may represent the movement of the camera.
카메라를 손에 들고 동영상을 촬영하는 경우, 카메라의 흔들림으로 인하여 프레임에 블러(blur)가 발생할 수 있다. 여기서, 카메라의 흔들림은 손 떨림에 의해 짧은 시간에 속도가 변화하는 비정형적인 모션이다. When shooting a video with the camera in hand, blur may occur in the frame due to camera shake. Here, the shaking of the camera is an atypical motion in which the speed changes in a short time due to the shaking of the hand.
모션을 가진 카메라도 일정한 시간동안 정적인 상태에 있을 수 있기 때문에, 모션을 가지는 카메라에 의해 캡쳐된 영상은 블러된(blurred) 프레임뿐 아니라 선명한(sharp) 프레임을 포함할 수 있다. 또한, 단일 프레임은 블러된 이미지 영역과 선명한 이미지 영역을 포함할 수 있다. 이는, 공간적으로 변화하는 블러 커널(blur kernel)에 기인한다. Since a camera with motion may be in a static state for a certain time, the image captured by the camera with motion may include sharp frames as well as blurred frames. In addition, a single frame may comprise a blurred image area and a clear image area. This is due to the spatially changing blur kernel.
예컨대, 도 1c는 카메라 로테이션(rotation)을 가지고 캡쳐된 비디오 프레임을 나타낸다. 로테이션 중앙은 왼쪽 이미지 경계의 중앙 주위에 있다. 로테이션 중앙 근처의 이미지 영역은 선명하고(도 1d), 반면에 로테이션 중앙으로부터 멀리 떨어진 이미지 영역은 더욱 블러된다(도 1e). 이러한 예를 통하여 비디오 디블러링을 위하여, 비디오 프레임들에서 지역적인 선명함을 고려할 수 있음을 의미할 수 있다.
For example, FIG. 1C shows a video frame captured with camera rotation. The center of rotation is around the center of the left image boundary. The image area near the center of rotation is clear (FIG. 1D), while the image area farther from the center of rotation is more blurred (FIG. 1E). Through this example, it may mean that local sharpness may be considered in video frames for video deblur.
본 발명의 실시예에 따르면, 시차(parallax)에 기인하여 훨씬 복잡할 수 있는 실제 모션에 대한 근사화로써 파라메트릭(parametric), 호모그래피(homography)에 기반하여 모션을 추정할 수 있다. According to an embodiment of the present invention, motion can be estimated based on parametric and homography as an approximation to actual motion, which can be much more complicated due to parallax.
또한, 영상의 선명한 정도 또는 블러된 정도를 나타내는 픽셀의 러키니스(luckiness)를 정의하기 위한 근사화된 모션을 사용할 수 있다. 비디오 프레임을 디블러링(deblurring)하기 위하여, 현재 프레임에서 덜 러키(lucky)한 픽셀을 인접 프레임에서 더 러키한 픽셀로 대체할 수 있다. 여기에서 "러키(lucky)"라는 용어는 블러된 정도를 나타내는 용어로 사용될 수 있으며, 러키한 픽셀은 러키하지 않은 픽셀과 비교하여 블러가 덜 되어 선명한 픽셀을 의미할 수 있다.In addition, it is possible to use an approximated motion for defining the luckiness of the pixel representing the sharpness or blurring of the image. In order to deblurr the video frame, it is possible to replace the less lucky pixel in the current frame with the more lucky pixel in the adjacent frame. Here, the term "lucky" may be used as a term indicating the degree of blurring, and the lucky pixel may mean a pixel that is less blurry than a non-lucky pixel and is clear.
프레임 상호간 픽셀의 대응은 추정된 호모그래픽을 사용하여 얻을 수 있으며, 이는 모션 모델에서 부정확성 보상하기 위해 가장 매칭되는 영상 부분을 찾도록 한다. 또한, 블러된 프레임에 러키한 픽셀을 복사할 때, 객체 구조를 보존하기 위하여 패치 기반한 텍스처 합성법(patch-based texture synthesis approach)을 적용할 수 있다. 그리고, 디블러링된 프레임의 시간의 일관성을 유지하기 위해 연속적인 프레임들에서 상응하는 패치들에 유사한 제약을 부가할 수 있다.
Correspondence of pixels between frames can be obtained using the estimated homographics, which allows the motion model to find the best matched portion to compensate for inaccuracy. In addition, a patch-based texture synthesis approach may be applied to copy the lucky pixels to the blurred frame to preserve the object structure. And similar constraints can be added to corresponding patches in consecutive frames to maintain time consistency of the deblurred frame.
도 2는 본 발명의 실시예에 따른 블러 모델을 설명하기 위한 개념도이다.2 is a conceptual diagram illustrating a blur model according to an embodiment of the present invention.
도 2를 참조하면, 호모그래피(homography)를 사용하여 비디오 프레임들의 블러들을 근사화할 수 있다. 카메라의 듀티 사이클(duty cycle)이 2τ이고, i번째 프레임인 프레임 를 위한 노출 시간이 이다. 시간 간격은 로 하고, 의 잠상(latent image)을 로 나타낸다. 근접한 프레임들간의 모션은 호모그래피()에 의해 근사화할 수 있다. 여기서 는 3×3 호모그래피 메트릭스()에 의해 파라메터라이즈된(parameterized) 왜곡(warping) 함수이고, 모션의 속도는 인접한 프레임들 사이에서 일정하다. 본 출원에서 i는 프레임의 번호를 의미할 수 있다. 본 발명에 있어서, 잠상(latent image), 잠상의 프레임(latent frame) 또는 잠상의 패치(latent patch)는 블러된 영상을 복원하기 위한 이미지, 프레임 또는 패치를 의미할 수 있다. Referring to FIG. 2, homography can be used to approximate blurs of video frames. Frame whose duty cycle is 2τ and the i th frame Exposure time for to be. Time interval With Latent image Respectively. Motion between adjacent frames is homography ( Can be approximated by here Is a 3 × 3 homography matrix ( Is a parameterized warping function, and the speed of motion is constant between adjacent frames. In the present application, i may mean a frame number. In the present invention, a latent image, a latent frame, or a latent patch may refer to an image, a frame, or a patch for restoring a blurred image.
따라서, 는 다음의 수학식 1과 같이 나타낼 수 있다. therefore, Can be expressed as
여기서, 와 는 호모그래피 메트릭스인 와 에 의해 각각 파라메터라이즈된 왜곡(warping) 함수이고 다음의 수학식 2와 같이 정의될 수 있다. here, Wow Is a homography matrix Wow It is a warping function each parameterized by and can be defined as Equation 2 below.
I는 3×3 아이덴터티(identity) 메트릭스이고, 는 의 역 행렬이다.
I is a 3 × 3 identity metric, The Is the inverse of.
수학식 1을 이산화(Discretizing)하면 다음의 수학식 3을 얻을 수 있다.
여기서, T는 에서 샘플링율(sampling rate)이 될 수 있고, 실시예에 따라 20으로 설정될 수 있다. τ는 듀티 사이클로 나뉘는 샘플들의 개수가 될 수 있다. 또한, 프레임 i를 위한 블러 함수를 라 할 수 있다. Where T is The sampling rate may be set to 20, and may be set to 20 according to an embodiment. τ may be the number of samples divided by the duty cycle. Also, blur function for frame i .
블러 모델은 파노라마 생성을 위해 멀티-이미지 디블러링 방법에서 개발된 것과 유사할 수 있으며 근본적인 모션 모델로서 호모그래피를 사용할 수 있다. 다만, 기존의 방법에서는 블러 모델을 정확한 모델로서 다루는 반면에서, 본 발명의 실시예에 따르면 파노라마들보다 더 복잡한 비디오를 다루기 위하여 블러 모델을 근사치로 다룰 수 있다. The blur model can be similar to that developed in the multi-image deblurring method for panorama generation and can use homography as the underlying motion model. However, while the existing method treats the blur model as an accurate model, the blur model can be treated as an approximation in order to deal with a more complicated video than panoramas according to an embodiment of the present invention.
또한, 본 발명의 실시예에 따르면, 모델링 에러들을 명확하게 핸들링하기 위하여 다른 프레임들의 나란한 이미지 영역들을 위한 추가적인 지역 탐색을 수행할 수 있다.
In addition, according to an embodiment of the present invention, an additional local search may be performed for side-by-side image regions of different frames in order to clearly handle modeling errors.
도 3은 본 발명의 실시예에 따라 영상의 선명도를 설명하기 위한 러키니스값을 나타내는 예시도이다. 3 is an exemplary diagram illustrating a luckiness value for explaining the sharpness of an image according to an exemplary embodiment of the present invention.
도 3을 참조하면, 모션 블러된 두 개의 프레임의 러키니스값(luckiness value)을 나타낸다. 도 3a 및 3b는 모션 블러된 두 개의 프레임이며, 도 3c 및 도 3d는 각각 도 3a와 3b의 각각의 픽셀들의 러키니스값을 시각화 한 것이다. 밝은 색은 러키니스값이 1에 가까운 것을 의미하며, 어두운 것은 러키니스값이 0에 가까운 것을 의미한다. 도 3a와 3b의 픽셀이 선명할수록 도 3c와 3d의 러키니스값도 높은 값을 나타낸다. 즉, 프레임이 선명할수록 더 높은 러키니스값을 가질 수 있다. 따라서, 러키니스값은 프레임의 선명한 정도 또는 블러된 정도를 나타낼 수 있다. Referring to FIG. 3, the luckiness value of two frames with motion blur is shown. 3A and 3B are two frames that are motion blurred, and FIGS. 3C and 3D are visualizations of the lukiness values of the respective pixels of FIGS. 3A and 3B, respectively. Light color means that the lukiness value is close to 1, and dark means that the lukiness value is close to zero. The sharper the pixels of FIGS. 3A and 3B are, the higher the luckiness values of FIGS. 3C and 3D are. In other words, the sharper the frame, the higher the lukiness value. Thus, the lukiness value may represent the sharpness or blur of the frame.
본 발명의 실시예에 따르면, 비디오 프레임을 구성하는 픽셀들에 대한 러키니스값은 인접한 프레임들간의 픽셀의 절대 변위를 이용하여 산출할 수 있다. 프레임 에서 x픽셀의 러키니스값은 수학식 4와 같이 정의할 수 있다. According to an exemplary embodiment of the present invention, the lukiness value of the pixels constituting the video frame may be calculated using absolute displacement of pixels between adjacent frames. frame The lukiness value of x pixels in can be defined as shown in Equation 4.
여기서, 는 호모그래피 H에 따른 하나의 픽셀을 다른 픽셀 위치에 매핑(mapping)하는 함수이다. 는 상수로서 20 픽셀들로 설정할 수 있다. 수학식 4는 를 통하여 프레임에서 프레임으로 카메라가 움직일 때 픽셀 x의 변위를 계산할 수 있다. here, Is a function of mapping one pixel according to homography H to another pixel position. Can be set to 20 pixels as a constant. Equation (4) through In the frame We can calculate the displacement of pixel x when the camera moves in a frame.
예컨대, 픽셀x의 프레임-투-프레임 모션이 작을 때, 와 는 I에 가깝고 는 1에 가까울 수 있으며, 픽셀x에 중심을 두는 이미지 패치는 거의 선명하다는 것을 나타낼 수 있다. 반대로, 가 작으면, 해당 패치가 큰 모션 블러를 포함하는 것을 나타낼 수 있다. 또한, 전체 프레임()의 러키니스값()은 안의 픽셀들을 위한 모든 의 평균값으로써 나타낼 수 있다. 여기서, 러키니스값은 0부터 1 사이의 값일 수 있다.
For example, when the frame-to-frame motion of pixel x is small, Wow Is close to I Can be close to 1, indicating that the image patch centered on pixel x is nearly sharp. Contrary, If is small, it may indicate that the patch includes large motion blur. Also, the full frame ( Lukiness value of) )silver All for the pixels inside It can be represented as an average value of. Here, the lukiness value may be a value between 0 and 1.
도 4는 본 발명의 실시예에 따른 디블러링 방법을 설명하기 위한 흐름도 이다. 4 is a flowchart for describing a deblurring method according to an embodiment of the present invention.
도 4를 참조하면, 본 발명의 실시예에 따른 비디오 디블러링 방법은 모션 및 모션 블러 추정 단계(S100), 디블러링 단계(S200)를 포함한다.Referring to FIG. 4, a video deblurring method according to an embodiment of the present invention includes a motion and motion blur estimation step S100 and a deblur step S200.
모션 및 모션 블러 추정 단계(S100)는 입력 비디오의 각각의 프레임에 대해, 각각의 프레임과 인접한 프레임 사이의 호모그래피 함수를 추정하는 단계(S110), 추정된 호모그래피를 이용하여 각각의 프레임의 픽셀들이 블러된 정도를 나타내는 러키니스값을 산출하는 단계(S120), 추정된 호모그래피와 산출된 러키니스값을 이용하여 각각의 프레임의 블러 함수를 추정하는 단계(S130)를 포함한다.Motion and motion blur estimation step S100 is performed for estimating a homography function between each frame and an adjacent frame, for each frame of the input video at step S110, using the estimated homography pixels of each frame. Comprising a step (S120) of calculating the lukiness value indicating the degree of blurring, and estimating the blur function of each frame using the estimated homography and the calculated lukiness value (S130).
디블러링 단계(S200)는 입력된 블러 비디오의 각각의 프레임의 모든 패치에 대해 주변 프레임으로부터 매칭 패치를 선별하는 단계(S210), 선별된 매칭 패치를 블렌딩하여 선명한 프레임을 복원하는 단계(S220), 선별된 매칭 패치의 러키니스값을 블렌딩하여 복원된 프레임의 러키니스값을 업데이트하는 단계(S230)를 포함한다.The deblurring step (S200) may include selecting matching patches from neighboring frames for all patches of each frame of the input blur video (S210), blending the selected matching patches, and restoring a clear frame (S220). And blending the lukiness value of the selected matching patch to update the lukiness value of the reconstructed frame (S230).
호모그래피 함수를 추정하는 단계(S110)는 입력 비디오의 각각의 프레임과 그 프레임의 인접 프레임을 구성하는 픽셀들간의 매핑(mapping)에 기반한 호모그래피를 추정하기 위해, 특징점 기반의 영상 정합 방법(image registration method)이나 또는 픽셀값 기반의 영상 정합 방법 등을 사용할 수 있다. 특징점 기반의 방법과 같은 경우, 각각의 프레임에서 특징점을 추출하고, 각각의 프레임 간에 대응되는 특징점들을 찾아, 특징점 간의 위치를 매핑하는 호모그래피를 추정하며, 픽셀값 기반의 영상 정합 방법과 같은 경우, 두 프레임 간의 픽셀 값의 차이를 최소화하는 호모그래피를 추정한다. 루카스 카나데 영상 정합 방법(Lucas-Kanade image registration method)와 같은 방법이 대표적인 예이다.The estimating of the homography function (S110) may include an image matching method based on a feature point to estimate homography based on a mapping between each frame of the input video and pixels constituting adjacent frames of the frame. registration method) or pixel value-based image matching method. In the case of a feature point-based method, a feature point is extracted from each frame, a corresponding feature point is found between each frame, a homography for mapping a position between the feature points is estimated, and in the case of a pixel value-based image matching method, Estimate homography that minimizes the difference in pixel values between two frames. A typical example is a method such as the Lucas-Kanade image registration method.
러키니스값을 산출하는 단계(S120)는 입력 비디오의 각각의 프레임과 그 인접 프레임을 구성하는 픽셀들간의 매핑(mapping)에 기반한 호모그래피(homography) 함수를 이용하여 입력 프레임의 픽셀이 블러된(blurred) 정도를 나타내는 러키니스값을 산출할 수 있다.In operation S120, the pixel of the input frame is blurred by using a homography function based on a mapping between each frame of the input video and pixels constituting the adjacent frame. It is possible to calculate the luckiness value indicating the degree of blurredness.
추정된 호모그래피와 산출된 러키니스값을 이용하여 각각의 프레임의 블러 함수를 추정하는 단계(S130)는 인접한 프레임 간의 호모그래피 함수를 보간(interpolation)하여 카메라의 흔들림을 근사하여 모션 블러 함수를 추정할 수 있다. 또한 산출된 러키니스값을 이용하여 선명한 프레임과 인접한 블러된 프레임의 쌍을 선택하고, 이렇게 선택된 프레임들을 비교하여 프레임의 노출 시간, 즉 듀티 사이클(duty cycle)을 추정할 수 있다.Estimating the blur function of each frame by using the estimated homography and the calculated lukiness value (S130) may estimate the motion blur function by approximating the camera shake by interpolating the homography function between adjacent frames. can do. In addition, by using the calculated lukiness value, a pair of sharp and adjacent blurred frames may be selected, and the exposure time of the frame, that is, the duty cycle may be estimated by comparing the selected frames.
입력된 블러 비디오의 각각의 프레임의 모든 패치에 대해 주변 프레임으로부터 매칭 패치를 선별하는 단계(S210)는 상기 추정된 각각의 프레임의 블러 함수를 그 인접 프레임들에 적용한 후, 각 프레임의 각각의 패치와 상기 블러 함수가 적용된 인접 프레임의 패치 사이의 유사도에 따라 산출되는 블러 기반 유사도를 이용하여 상기 입력 프레임의 각각의 패치에 가장 유사한 인접 프레임의 패치를 매칭 패치로 찾을 수 있다. 또한, 보다 선명한 매칭 패치를 찾기 위하여, 상기 블러 기반 유사도와 더불어, 러키니스값에 상응하는 가중치를 추가로 고려한 수정된 블러 기반 유사도를 최대화하는 인접 프레임의 패치를 매칭 패치로 찾을 수 있다.Selecting a matching patch from neighboring frames for all patches of each frame of the input blur video (S210) applies the blur function of each estimated frame to its adjacent frames, and then applies each patch of each frame. The patch of the adjacent frame most similar to each patch of the input frame may be found as a matching patch by using the blur based similarity calculated based on the similarity between the patches of the adjacent frames to which the blur function is applied. In addition, in order to find a clearer matching patch, a patch of an adjacent frame that maximizes the modified blur based similarity, which further considers the blur based similarity and a weight corresponding to the luckiness value, may be found as the matching patch.
선별된 매칭 패치를 블렌딩하여 선명한 프레임을 복원하는 단계(S220)는, 각 프레임의 각각의 패치에 대해, 상기 선별된 매칭 패치들을 블렌딩(blending)하여 선명한 프레임을 복원할 수 있다. 블렌딩은, 상기 산출된 블러 기반 유사도, 또는 상기 산출된 수정된 블러 기반 유사도를 이용하여 각각의 매칭 패치에 대해 새로운 가중치를 산출 후, 새로운 가중치를 이용하여 매칭 패치들을 블렌딩할 수 있다.In step S220 of restoring the clear frame by blending the selected matching patches, the clear frame may be restored by blending the selected matching patches for each patch of each frame. The blending may calculate the new weight for each matching patch using the calculated blur based similarity or the calculated corrected blur based similarity, and then blend the matching patches using the new weight.
복원된 프레임의 러키니스값을 업데이트하는 단계(S230)는, 상기 블렌딩 단계에서 산출된 가중치를 이용하여 상기 선별된 매칭 패치의 러키니스값들을 블렌딩하여 업데이트된 러키니스값을 산출할 수 있다.In the updating of the lukiness value of the reconstructed frame (S230), the updated lukiness value may be calculated by blending the lukiness values of the selected matching patch using the weights calculated in the blending step.
또한, 본 발명의 실시예에 따른 디블러링 단계(S200)는 입력 비디오의 모든 프레임에 대하여 미리 설정된 횟수만큼 반복하여 수행함으로써 디블러링 효과를 향상시킬 수 있다. In addition, the deblurring step (S200) according to an embodiment of the present invention may be performed repeatedly for a predetermined number of times for all frames of the input video to improve the deblurring effect.
또한, 입력 프레임별로 블러된 정도에 차이가 있으므로 러키니스값에 기반하여 입력 프레임에 대한 디블러링 순서를 결정할 수 있다. 예컨대, 적어도 하나의 입력 프레임의 각각을 구성하는 픽셀에 대한 러키니스값을 평균한 값을 기준으로 각각의 입력 프레임에 대한 디블러링 순서를 결정할 수 있다.
In addition, since the blur degree for each input frame is different, the order of deblurring for the input frame may be determined based on the lukiness value. For example, the order of deblurring for each input frame may be determined based on an average of the lukiness values for the pixels constituting each of the at least one input frame.
본 발명의 실시예에 따른 비디오 디블러링 방법을 설명하기 위한 개념은 다음과 같다. A concept for describing a video debluring method according to an embodiment of the present invention is as follows.
수학식 3에서 블러 함수 를 산출하기 위하여, 호모그래피()와 듀티 사이클(τ)의 추정이 필요하다. Blur function in equation (3) In order to calculate the homography ( ) And the estimation of the duty cycle τ are required.
먼저, 호모그래피()를 추정하기 위하여, 표준 KLT 기법[Shi and Tomasi 1994]을 사용하는 움직임 추정(feature tracking)을 적용할 수 있다. 또한, 초기 호모그래피를 계산하기 위하여 트래킹된 피쳐 포인트(feature point)를 사용할 수 있으며, Lucad-kanade registration[Baker and Matthew 2004]을 사용하여 프레임간의 호모그래피를 개선할 수 있다. First, homography ( ), We can apply feature tracking using the standard KLT technique [Shi and Tomasi 1994]. In addition, tracked feature points can be used to calculate initial homography, and Lucad-kanade registration [Baker and Matthew 2004] can be used to improve homography between frames.
본 발명의 실시예에 따르면, 인접 프레임들간 뿐만 아니라 지역 시간 윈도우(local temporal window)()에서 어떤 두 개의 프레임간의 호모그래픽스를 추정할 수 있다. 여기서, M은 5 프레임들로 세팅할 수 있다. 프레임 i에서 프레임 j로의 호모그래피는 로 정의될 수 있고, 일 수 있다. 또한, 도 2를 참조하면 이며, 비-인접 프레임들 사이의 호모그래픽스는 와 동일한 방법으로 초기화되고 개선될 수 있다. According to an embodiment of the present invention, a local temporal window as well as between adjacent frames ( ), We can estimate the homographics between any two frames. Here, M can be set to 5 frames. The homography from frame i to frame j is Can be defined as Lt; / RTI > Also, referring to FIG. 2 Homographics between non-adjacent frames It can be initialized and improved in the same way as.
본 발명의 실시예에 따른 비디오 디블러링 방법은 근사화된 모션 모델로서 호모그래피를 다루기 때문에 호모그래피를 업데이트하지 않을 수 있다. 또한, 호모 그래피 추정에서 작은 에러들은 디블러링 프로세스에서 매칭하는 패치의 지역적 탐색에 의해 핸들링될 수 있다. The video deblurring method according to an embodiment of the present invention may not update homography because it treats homography as an approximated motion model. In addition, small errors in homography estimation can be handled by local search of the matching patch in the deblurring process.
또한, τ를 계산하기 위하여 프레임 쌍의 세트를 선택할 수 있다. 여기서, 각각의 쌍은 러키니스 측정에서 큰 차이점을 가지므로, 블러 함수의 정확성이 효과적으로 테스트될 수 있다. 로 하면, 인 프레임들의 K 쌍이 있을 수 있다. 여기서, 프레임 러키니스 차이인 는 임계값(예: )보다 클 수 있다. Also, a set of frame pairs can be selected to calculate τ. Here, each pair has a big difference in the lukiness measurement, so the accuracy of the blur function can be tested effectively. , There may be K pairs of frames. Where the frame lurkiness difference Is the threshold value May be greater than).
따라서, 수학식 5를 최소화하는 최적의 τ를 구할 수 있다. Therefore, an optimal τ that minimizes Equation 5 can be obtained.
호모그래피()를 이용하여 을 가지고 를 조정할 수 있고, 의 블러 함수()를 사용하여 조정된 선명한 프레임()을 블러할 수 있다. 또한, 합성적으로 블러된 프레임과 관찰된 사이의 제곱된 차이점의 합을 계산할 수 있다. Homography ( ) To have Can be adjusted, 'S blur function ( ) Sharp frame adjusted with ) Can be blurred. Also, synthetically blurred frames and observed You can calculate the sum of squared differences between them.
수학식 5의 값은 모든 k를 위한 블러 함수()에 의존할 수 있다. 즉 함수()가 정확하다면, 수학식 5의 값은 작고 그렇지 않으면 반대가 될 것이다. τ의 주어진 값을 위하여 는 수학식 3에 의해 결정되므로, 수학식 5는 τ의 에너지 함수가 될 수 있다. 또한, 본 발명의 실시예에 따르면, τ는 1에서 으로 정수값의 제한된 세트를 가짐에 따라 brute-force search 를 사용하여 수학식 5를 최소화할 수 있다.
The value of Equation 5 is the blur function for all k Can be relied upon. Function If) is correct, the value of Equation 5 is small, otherwise it will be reversed. for a given value of τ Since is determined by Equation 3, Equation 5 may be an energy function of τ. Further, according to the embodiment of the present invention, τ is at 1 As we have a limited set of integer values, we can minimize Equation 5 using brute-force search.
디콘볼루션(deconvolution)을 이용한 비디오 디블러링 방법은 만족할 만한 결과를 보여주지 못한다. 이에 본 발명의 실시예에 따른 비디오 디블러링 방법은 의 복원을 위하여 인접 프레임에서의 패치를 이용할 수 있다. The video debluring method using deconvolution does not give satisfactory results. Accordingly, the video debluring method according to an embodiment of the present invention Patches in adjacent frames may be used for the recovery.
는 프레임 에서 픽셀 x에 중심을 둔 n×n 이미지 패치로 정의될 수 있다. 예컨대, n=11일 수 있다. 본 발명의 실시예에 따르면, 시간 윈도우 에서 인접 프레임들()로부터 선명한 패치들의 가중된 평균을 계산함에 의해 를 디블러링할 수 있다. Frame Can be defined as an n × n image patch centered on pixel x. For example, n = 11. According to an embodiment of the invention, the time window Adjacent frames in By calculating the weighted average of the clear patches Can be deblurred.
여기서, 는 의 디블러링된 패치이고, 는 픽셀 y에 중심을 둔 왜곡(warped) 프레임()의 패치이다.
here, The Deblurred patch for, Is a warped frame centered at pixel y ( ) Patch.
가중치 는 입력 프레임의 패치와 인접한 프레임의 패치 사이의 블러 기반 유사도로, 수학식 7에 의해 구할 수 있다. weight Is a blur based similarity between a patch of an input frame and a patch of an adjacent frame, which can be obtained by Equation 7.
여기서, 는 블러된 왜곡 프레임()에서 y에 중심을 둔 패치이고, 현재 프레임()의 블러 함수()를 에 적용함에 의해 얻을 수 있다. 는 상수로서, 0.1이 될 수 있다. 는 왜곡 인접 프레임들()로부터 샘플링된 을 위한 매칭 패치(matching patch)들이다. Z는 정규화 팩터로, 이다. here, Is a blurred distortion frame ( ) Is the patch centered on y and the current frame ( Blur function of ) It can be obtained by applying to. Is a constant, and may be 0.1. Is the distortion adjacent frames ( Sampled from) Matching patches for. Z is the normalization factor, to be.
블러 기반 유사도()는 종래의 비디오 디블러링 방법의 데이터 피팅 항(fitting term)과 유사할 수 있고, 입력된 블러된 이미지로부터 잠상의 차이로 측정될 수 있다. Blur-based similarity ( ) May be similar to the data fitting term of the conventional video deblurring method, and may be measured as the latent image difference from the input blurred image.
본 발명의 실시예에 따르면, 잠상의 패치(latent patch)()가 되는 것의 적합성을 위하여 인접 프레임()으로부터 왜곡 패치()를 테스트할 수 있다. 블러 기반 유사도()는 블러된 패치()가 와 매칭됨에 따라 높게 나타날 수 있다. 결과적으로, 왜곡 패치()는 그들이 잠상의 패치()와 유사할 때 수학식 6에서 가중된 평균에 더 많은 기여를 할 수 있다. According to an embodiment of the present invention, a latent patch (latent patch) Adjoining frames ( From the distortion patch ( ) Can be tested. Blur-based similarity ( ) Shows a blurred patch ( )end It may appear higher as it matches. As a result, the distortion patch ( ) They are patches of latent images ( ) Can contribute more to the weighted average in equation (6).
패치 세트()를 결정하기 위하여 왜곡 인접 프레임()들로부터 N 최적 매칭 패치들을 발견할 수 있다. 여기서, 이다. 또한, 매칭의 정도에 따른 를 사용할 수 있다. Patch set ( To determine the distortion adjacent frame ( N optimal matching patches can be found from here, to be. Also, depending on the degree of matching Can be used.
아래의 수학식 8에 의해 패치들을 선택할 수 있다.Patches may be selected by Equation 8 below.
에서 매칭 패치()를 발견하기 위하여 y의 범위를 탐색하기 위하여, 픽셀 x에 중심을 둔 m×m 윈도우를 사용할 수 있다. 만약 가 로부터 로의 움직임을 정확하게 추정할 수 있다면, 에서 x에 중심을 둔 패치를 사용하여 범위 m을 세팅할 수 있다. Matching patch ( We can use the m × m window centered on pixel x to search the range of y to find if end from If you can accurately estimate the movement of the furnace, You can set the range m using a patch centered on x.
그러나, 시차(parallax)와 객체의 움직임으로 인하여 프레임들간의 실제 움직임은 일반적으로 싱글 호모그래피보다 복잡하다. 따라서, 검색 범위(m)을 위해 하나보다 큰 값을 사용함에 의하여 호모그래피를 사용하는 모션 모델에서의 에러를 보상할 수 있다. 예컨대, 본 발명의 실시예에서 m=21을 사용할 수 있다.However, due to parallax and the movement of objects, the actual movement between frames is generally more complicated than single homography. Thus, using more than one value for the search range m can compensate for errors in the motion model using homography. For example, m = 21 may be used in an embodiment of the present invention.
또한, 본 발명의 실시예에서, N 최적-매칭 패치간의 조정 불량에 기인하여, 큰 값의 N을 사용하는 것은 오버-스무드(over-smoothed) 디블러링된 결과들로 이끌 수 있다. 이에 본 발명의 실시예에 따르면, 최적의 선명도를 위해 N=1을 사용할 수 있고, 수학식 6은 잠상의 패치를 복원하기 위해 최적-매칭된 패치를 사용할 수 있다. 또한, 시간 윈도우()를 위하여 M=5로 세팅할 수 있다. 즉, 인접 프레임들과 가 패치 탐색에 포함될 수 있다.
In addition, in an embodiment of the present invention, due to misalignment between N best-matching patches, using a large value of N can lead to over-smoothed deblurred results. Accordingly, according to an embodiment of the present invention, N = 1 may be used for optimal sharpness, and Equation 6 may use an optimally-matched patch to restore a patch of latent image. Also, the time window ( Can be set to M = 5. That is, adjacent frames May be included in the patch search.
잠상 프레임(latent frame)()을 입력 프레임()로부터 복원하기 위하여, 안의 각각의 픽셀x에 수학식 6을 사용하여 패치를 디블러링할 수 있으나, 에서 객체 구조들의 조정 불일치를 야기할 수 있다. 따라서, 우리는 에서 디블러링된 패치들을 오버랩핑하는 효과를 병합하기 위하여 패치 기반 텍스트 합성 기법(patch-based texture synthesis approach)을 적용할 수 있다.Latent frame ( ) Input frame ( To restore from You can use the equation (6) for each pixel x inside to deblur the patch, Can cause mismatching of the object structures. Therefore, we A patch-based texture synthesis approach can be applied to merge the effects of overlapping the deblurred patches in.
가 픽셀 x에서 의 값이라고 하면, 는 수학식 9로 결정될 수 있다. Is at pixel x If the value of May be determined by Equation 9.
여기서, 는 x에 중심을 둔 공간 윈도우(nㅧn)에서 픽셀의 세트이고, 디블러링된 패치()는 수학식 6으로부터 산출할 수 있다. 또한, 는 x에서의 의 픽셀 값이다. Z는 정규화 팩터이고, 이며, 이다. 는 왜곡 패치()에서 x의 픽셀값이다. 에서 모든 픽셀을 위해 디블러링된 패치를 계산한다면, 이미지 경계를 제외한 안의 픽셀 x에 대한 에 픽셀들이 있을 것이다. 따라서, 픽셀 x는 디블러링된 개의 패치에 의해 커버될 수 있다. 또한, 비디오 디블러링을 위하여, 모든 픽셀에 대해서가 아니라 지역적으로 디블러링을 수행할 수 있다.
here, In the space window centered on x (n ㅧ n) Is a set of pixels, and a deblurred patch ( ) Can be calculated from equation (6). Also, Is at x The pixel value of. Z is the normalization factor, Lt; to be. Is a distortion patch ( ) Is the pixel value of x. Computes a deblurred patch for every pixel in the For pixel x inside on There will be pixels. Thus, pixel x is deblured Can be covered by two patches. In addition, for video deblurring, it is possible to perform deblurring locally instead of for every pixel.
본 발명의 실시예에 따른 비디오 디블러링 방법은 매칭 패치들의 지역적 탐색을 통하여 움직이는 객체에 따른 블러를 효과적으로 제거할 수 있다. 다만, 큰 모션을 가진 객체들에 대해서는 디블러링을 수행하지 않을 수 있다. 의 패치()는 움직이는 객체를 포함할 수 있고, 객체의 모션은 블러 함수()와 다른 블러를 초래할 수 있다. 즉, 객체의 모션이 크다면, 객체의 모션이 를 위한 진정 블러 함수를 지배할 수 있다. 이러한 경우, 블러 함수 차이점으로 인하여, 지역 패치 탐색을 통하여 수학식 8에서 정의된 피팅 에러(fitting error)를 가진 매칭 패치를 다른 프레임 ()에서 발견할 수 없다. The video deblurring method according to an embodiment of the present invention can effectively remove blur due to a moving object through local search of matching patches. However, deblurring may not be performed on objects having a large motion. Patch of ) Can contain a moving object, and the motion of the object is a blur function ( ) And other blurs. In other words, if the motion of the object is large, the motion of the object Can dominate the true blur function. In this case, due to the blur function difference, a matching patch having a fitting error defined in Equation 8 is applied to another frame through local patch search. Can not be found in).
한편, 는 객체 모션에 의해 이미 블러링되고, 는 동일한 형상을 가진 의 스무드된 버전이기 때문에, 와 사이의 피팅 에러는 상대적으로 작을 수 있다. 따라서, 는 그것 자체를 위하여 최적 매칭 패치가 될 수 있고, 수학식 6에 의해 계산된 잠상의 패치()는 와 유사하게 남을 수 있다.
Meanwhile, Is already blurred by object motion, Have the same shape Since it's a smooth version of Wow The fitting error in between may be relatively small. therefore, Can be an optimal matching patch for itself, and the latent image patch ( ) May remain similar to
본 발명의 실시예에 따른 비디오 디블러링 방법은 디블러링된 프레임들의 선명도를 더 개선하기 위하여 새로운 가중치()를 적용할 수 있다. The video deblurring method according to an embodiment of the present invention uses a new weight value in order to further improve the sharpness of the deblurred frames. ) Can be applied.
새로운 가중치는 수학식 10에 의해 얻을 수 있다. The new weight can be obtained by equation (10).
여기서, 는 러키니스 맵()에서 픽셀 y에 중심을 둔 n×n 패치이고, 는 상수이다. 즉, 러키니스값이 작아지면 새로운 가중치도 작아질 수 있다. 러키니스 맵()은 왜곡 프레임()의 러키니스값들에 의해 구성될 수 있다. 또한, 최적 매칭 패치를 선택하기 위한 새로운 가중치()를 적용함에 의해 수학식 8은 수학식 11과 같이 될 수 있다. here, Is the Luckyness map ( ) Is an n × n patch centered on pixel y, Is a constant. In other words, when the lukiness value decreases, the new weight may also decrease. Luckyness map ( ) Is the distortion frame ( It can be configured by the lukiness values of). In addition, new weights for selecting the optimal matching patch ( Equation 8 may be expressed by Equation 11 by applying ().
여기서, 이다. 예컨대, 를 위하여 작은 값인 0.01을 사용할 수 있다.
here, to be. for example, For this reason, a small value of 0.01 can be used.
또한, 본 발명의 실시예에 따른 비디오 디블러링 방법은 디블러링을 수행하는 프레임의 순서를 결정하는데 러키니스값을 사용할 수 있다. 먼저 프레임의 러키니스값에 기반하여 모든 프레임들 분류할 수 있다. 러키한 프레임의 경우 대부분의 픽셀들이 디블러링 후에 바뀌지 않을 수 있다. In addition, the video deblurring method according to an embodiment of the present invention may use the lukiness value to determine the order of frames for performing deblur. First, all frames may be classified based on the lukiness value of the frame. In the case of a lucky frame, most of the pixels may not change after deblur.
예컨대, 프레임들의 러키니스값이 더 낮아짐에 따라 더 많은 픽셀들이 이미 처리된 프레임들로부터 더 선명한 픽셀들에 의해 업데이트될 수 있고, 픽셀들의 RGB값들을 업데이트 하는 방법과 동일한 방법을 사용할 수 있다. For example, as the lukiness value of the frames is lowered, more pixels can be updated by sharper pixels from already processed frames, and the same method as the method of updating the RGB values of the pixels can be used.
결과적으로, 선명한 픽셀들은 더 러키한 것에서부터 덜 러키한 것으로 전파될 수 있다.
As a result, the sharp pixels can be propagated from more lucky to less lucky.
패치 기반한 텍스처 합성과 이미지 리타겟팅(retargeting)에서, 합성은 더 일치하는 텍스처(texture)와 객체 구조를 얻도록 반복적으로 수행될 수 있다. In patch-based texture synthesis and image retargeting, synthesis may be performed iteratively to obtain a more consistent texture and object structure.
즉, 본 발명의 실시예에 따른 비디오 디블러링 방법은 디블러링된 프레임들의 공간적 일치를 개선하기 위해 유사한 반복적인 프로세스를 수행할 수 있다. 따라서, 디블러링된 프레임들에서 픽셀 선명도와 객체 구조는 반복을 통하여 강화될 수 있다. That is, the video deblurring method according to the embodiment of the present invention may perform a similar iterative process to improve spatial matching of deblurred frames. Thus, pixel sharpness and object structure in deblurred frames can be enhanced through iteration.
반복을 통한 디블러링의 개선을 위하여 수학식 6은 수학식 12와 같이 변형될 수 있다. Equation 6 may be modified as shown in Equation 12 to improve deblurring through repetition.
여기서, 는 p번째 반복을 통하여 복원된 i번째 잠상의 프레임으로 이다.here, Is the i-th latent frame restored through the p-th iteration to be.
또한, 수학식 10은 수학식 13과 같이 변형될 수 있다. In addition,
여기서, 는 블러링된 왜곡 잠상의 프레임()에서의 패치이고, 는 p번째 반복으로 업데이트된 러키니스 맵()에서의 패치이다. 반복을 통한 개선에 있어서 반복의 횟수는 선명한 프레임들이 서로 얼마나 멀리 분배되어 있는지와 관련된다. 예컨대, 반복의 횟수는 시간 윈도우의 사이즈(2M+1)에 기반하여 결정될 수 있고, 선명한 프레임이 한번의 반복에서 얼마나 멀리 확장될 수 있는지 정의할 수 있다. here, Is the frame of the blurred distortion latent image ( Is a patch from), Is the rookieness map updated with the p iteration ( ). In improvement through iteration, the number of iterations is related to how far the clear frames are distributed to each other. For example, the number of repetitions can be determined based on the size of the time window (2M + 1) and can define how far a clear frame can be expanded in one repetition.
즉, 두 개의 선명한 인접 프레임들간의 최대 거리를 발견할 수 있고, 이를 로 정의할 수 있다. 따라서, 반복의 수는 로 계산될 수 있다.
That is, the maximum distance between two sharp adjacent frames can be found and . Thus, the number of iterations Lt; / RTI >
수학식 13은 시간 일치와 관련된 항을 포함하고 있지 않지만, 반복된 디블러링에 의해 생성된 비디오는 거의 시간적으로 일치한다. 이는 호모그래피 등록 이후에 작은 공간적 윈도우 안에서 패치 탐색을 제한하였기 때문이다. 따라서, 연속되는 프레임들에서 동일한 블러된 패치를 위하여, 동일한 선명한 패치가 매칭 패치들의 지역적 탐색에서 선택될 수 있다. 또한, 반복 프로세스는 멀티 프레임들을 통하여 선명한 패치가 전파되도록 하여 시간 일치성을 향상시킬 수 있다. Equation 13 does not include a term related to time matching, but the video generated by repeated deblur matches almost in time. This is because the patch search was limited within a small spatial window after homography registration. Thus, for the same blurred patch in successive frames, the same clear patch can be selected in the local search of matching patches. The iterative process can also improve time consistency by allowing clear patches to propagate through multiple frames.
또한, 시간 일치성의 개선을 위하여, 디블러링된 프레임들의 반복을 통한 개선 후에, 수학식 12를 변형한 추가적인 반복을 수행할 수 있다. 즉, 로서 시간적 윈도우()를 제한하고, 수학식 12의 계산을 위하여 세 개의 패치들()을 사용할 수 있다. 여기서, 과 은 이전 프레임과 다음 프레임에서 픽셀x의 매칭된 픽셀 위치이다. 예컨대, 에너지 함수에 기반한 수학식 14의 마코브 랜덤 필드(Markov random field)를 최적화함에 의해 주어진 비디오 프레임들()로부터 시간적으로 매끄러운 비디오 프레임들()을 생성할 수 있다. In addition, in order to improve temporal consistency, after the improvement through the repetition of the deblurred frames, an additional iteration of Equation 12 may be performed. In other words, As a temporal window ( ) And three patches ( ) Can be used. here, and Is the matched pixel position of pixel x in the previous frame and the next frame. For example, given video frames, by optimizing the Markov random field of equation (14) based on an energy function, Temporally smooth video frames ( Can be generated.
패치 대응과 가중치들은 각각의 기울기 강하 단계에서 업데이트되는 기울기 강하법(gradient descent method)을 이용한다. 수학식 14에서, 첫 번재 항(term)은 데이터 정확도에 관한 것으로 을 주어진 프레임()과 유사하도록 강화하고, 두 번째와 세 번째 항은 업데이트된 프레임들()을 그들의 이웃한 프레임들에 가까워지도록 할 수 있다. 결과적으로, 결과 프레임들은 시간 일치성과 마찬가지로 주어진 디블러링된 프레임들()에 가까워진다.
The patch correspondences and weights use a gradient descent method that is updated at each gradient descent step. In Equation 14, the first term relates to data accuracy Given a frame ( ), And the second and third terms are updated frames ( ) Can be brought close to their neighboring frames. As a result, the resulting frames are given the deblured frames ( Close to)
도 5는 본 발명의 실시예에 따른 디블러링 방법을 적용한 영상에 대한 예시도이다.5 is an exemplary view of an image to which the deblurring method according to an embodiment of the present invention is applied.
도 5a는 입력 프레임들을 나타내고, 도 5b는 본 발명의 실시예에 따른 비디오 디블러링 방법을 적용한 영상을 나타낸다. 도 5를 참조하면, 입력 프레임은 모션 블러를 포함하고 있으나 디블러링을 통하여 상당 부분의 블러가 제거되었음을 볼 수 있다. 특히, 도 5b를 참조하면 배경 영역에 발생한 블러가 효과적으로 제거되었음을 알 수 있다. 이는 본 발명의 실시예에 따른 비디오 디블러링 방법이 카메라의 모션에 따른 영상의 블러를 효과적으로 제거할 수 있음을 보여준다.
5A illustrates input frames, and FIG. 5B illustrates an image to which the video deblurring method according to an embodiment of the present invention is applied. Referring to FIG. 5, although the input frame includes motion blur, it can be seen that a significant portion of the blur has been removed through deblur. In particular, referring to FIG. 5B, it can be seen that the blur generated in the background region is effectively removed. This shows that the video deblurring method according to the embodiment of the present invention can effectively remove the blur of the image due to the motion of the camera.
도 6은 본 발명의 실시예에 따른 비디오 디블러링 장치를 나타내는 블록도이다. 6 is a block diagram illustrating a video debluring apparatus according to an embodiment of the present invention.
도 6을 참조하면, 본 발명의 실시예에 따른 비디오 디블러링 장치(10)는 모션 및 모션 블러 추정부(100) 및 디블러링부(200)를 포함한다. 또한, 본 발명의 실시예에 따른 비디오 디블러링 장치는 상술한 비디오 디블러링 방법을 수행하는 장치일 수 있다.Referring to FIG. 6, the
모션 및 모션 블러 추정부(100)는 블러 비디오의 각각의 프레임에 대해 인접한 프레임 사이의 호모그래피 함수를 추정하는 호모그래피 추정부(110)와, 각각의 프레임의 픽셀이 블러된 정도를 나타내는 러키니스값 산출부(120)와, 추정된 호모그래피와 러키니스값에 기반하여 각각의 프레임의 모션 블러 함수를 추정하는 블러 함수 추정부(130)를 포함한다.The motion and
디블러링부(200)는, 블러 프레임의 각각의 패치에 대한 매칭 패치를 인접 프레임으로부터 선별하는 매칭 패치 선별부(210)와, 선별된 패치를 블렌딩(blending)하여 블러 프레임을 복원하는 선명한 프레임 복원부(220)와, 복원된 프레임에 따라 블러 프레임의 러키니스값을 업데이트하는 러키니스 업데이트부(230)를 포함한다.The
호모그래피 추정부(110)는 입력 비디오의 각각의 프레임과 그 프레임의 인접 프레임을 구성하는 픽셀들간의 매핑(mapping)에 기반한 호모그래피를 추정할 수 있다.The
러키니스값 산출부(120)는 입력 비디오의 각각의 프레임과 그 인접 프레임을 구성하는 픽셀들간의 매핑(mapping)에 기반한 호모그래피(homography) 함수를 이용하여 입력 프레임의 픽셀이 블러된(blurred) 정도를 나타내는 러키니스값을 산출할 수 있다.The
블러 함수 추정부(130)는 인접한 프레임 간의 호모그래피 함수를 보간(interpolation)하여 카메라의 흔들림을 근사하여 모션 블러 함수를 추정할 수 있다. 또한 산출된 러키니스값을 이용하여 선명한 프레임과 인접한 블러된 프레임의 쌍을 선택하고, 이렇게 선택된 프레임들을 비교하여 프레임의 노출 시간, 즉 듀티 사이클(duty cycle)을 추정할 수 있다.The
매칭 패치를 선별부(210)는 상기 추정된 각각의 프레임의 블러 함수를 그 인접 프레임들에 적용한 후, 각 프레임의 각각의 패치와 상기 블러 함수가 적용된 인접 프레임의 패치 사이의 유사도에 따라 산출되는 블러 기반 유사도를 이용하여 상기 입력 프레임의 각각의 패치에 가장 유사한 인접 프레임의 패치를 매칭 패치로 찾을 수 있다. 또한, 보다 선명한 매칭 패치를 찾기 위하여, 상기 블러 기반 유사도와 더불어, 러키니스값에 상응하는 가중치를 추가로 고려한 수정된 블러 기반 유사도를 최대화하는 인접 프레임의 패치를 매칭 패치로 찾을 수 있다.The
선명한 프레임 복원부(220)는, 각 프레임의 각각의 패치에 대해, 상기 선별된 매칭 패치들을 블렌딩(blending)하여 선명한 프레임을 복원할 수 있다. 블렌딩은, 상기 산출된 블러 기반 유사도, 또는 상기 산출된 수정된 블러 기반 유사도를 이용하여 각각의 매칭 패치에 대해 새로운 가중치를 산출 후, 새로운 가중치를 이용하여 매칭 패치들을 블렌딩할 수 있다.The clear
러키니스 업데이트부(230)는, 상기 블렌딩 단계에서 산출된 가중치를 이용하여 상기 선별된 매칭 패치의 러키니스값들을 블렌딩하여 업데이트된 러키니스값을 산출할 수 있다.The
또한, 본 발명의 실시예에 따른 디블러링부(200)는 입력 비디오의 모든 프레임에 대하여 미리 설정된 횟수만큼 반복하여 수행함으로써 디블러링 효과를 향상시킬 수 있다. In addition, the
또한, 본 발명의 실시예에 따른 디블러링부(200)는 입력 프레임별로 블러된 정도에 차이가 있으므로 러키니스값에 기반하여 입력 프레임에 대한 디블러링 순서를 결정할 수 있다. 예컨대, 적어도 하나의 입력 프레임의 각각을 구성하는 픽셀에 대한 러키니스값을 평균한 값을 기준으로 각각의 입력 프레임에 대한 디블러링 순서를 결정할 수 있다. In addition, since the
상술한 본 발명에서의 모션 및 모션블러 추정부(100), 디블러링부(200), 호모그래피 추정부(110), 러키니스값 산출부(120), 블러 함수 추정부(130), 매칭 패치 선별부(210) 및 선명한 프레임 복원부(220) 및 러키니스 업데이트부(230)는 서로 독립적으로 개시되지만, 모션 및 모션블러 추정부(100), 디블러링부(200), 호모그래피 추정부(110), 러키니스값 산출부(120), 블러 함수 추정부(130), 매칭 패치 선별부(210) 및 선명한 프레임 복원부(220) 및 러키니스 업데이트부(230)는 하나의 단일한 형태, 하나의 물리적 장치로 구현될 수 있다. 이뿐만 아니라, 모션 및 모션블러 추정부(100), 디블러링부(200), 호모그래피 추정부(110), 러키니스값 산출부(120), 블러 함수 추정부(130), 매칭 패치 선별부(210) 및 선명한 프레임 복원부(220) 및 러키니스 업데이트부(230)는 각각 하나의 물리적 장치 또는 집단이 아닌 복수의 물리적 장치 또는 집단으로 구현될 수 있다.
Motion and
본 발명의 실시예에 따른 비디오 디블러링 방법은 카메라의 모션에 의해 야기된 블러를 효과적으로 제거할 수 있다. 즉, 움직이는 객체들에 따른 블러는 일반적으로 객체 모션에 의존하기 때문에 주목할 만한 아티팩트(artifact)가 아니다. 이에 반해, 천천히 변화하는 배경에 나타나는 블러는 인간의 인지에 있어 민감하게 작용할 수 있다. 따라서, 본 발명의 실시예에 따른 디블러링 방법 및 장치를 이용하여 카메라의 모션에 의해 발생하는 블러를 효과적으로 제거함으로써 비디오에 대한 주관적인 품질을 향상시킬 수 있다. The video deblurring method according to the embodiment of the present invention can effectively remove the blur caused by the motion of the camera. In other words, blur along moving objects is not a notable artifact since it generally depends on object motion. In contrast, blur that appears in a slowly changing background can be sensitive to human perception. Therefore, the subjective quality of the video can be improved by effectively removing the blur caused by the motion of the camera using the deblurring method and apparatus according to the embodiment of the present invention.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or scope of the present invention as defined by the following claims It can be understood that
10: 비디오 디블러링 장치 100: 모션 및 모션블러 추정부
200: 디블러링부 110: 호모그래피 추정부
120: 러키니스값 산출부 130: 블러 함수 추정부
210: 매칭 패치 선별부 220: 선명한 프레임 복원부
230: 러키니스 업데이트부10: video deblur device 100: motion and motion blur estimator
200: deblur 110: homography estimation unit
120: lukiness value calculator 130: blur function estimation unit
210: matching patch selection unit 220: clear frame restoration unit
230: Luckyness update
Claims (22)
상기 추정된 모션 및 모션 블러를 이용하여 상기 입력 비디오의 프레임의 블러를 제거하는 단계를 포함하되,
상기 입력 비디오의 프레임의 블러를 제거하는 단계는,
상기 입력 비디오의 각각의 프레임의 모든 패치에 대해 상기 인접한 프레임으로부터 매칭 패치들을 선별하는 단계; 및
상기 선별된 매칭 패치들을 블렌딩하여 선명한 프레임을 복원하는 단계를 포함하는 비디오 디블러링 방법.Estimating motion between frames and motion blur of the frames from the input video through comparison of each frame of the input video with adjacent frames; And
Removing blur of a frame of the input video using the estimated motion and motion blur,
Removing the blur of the frame of the input video,
Selecting matching patches from the adjacent frame for every patch of each frame of the input video; And
Blending the selected matching patches to reconstruct a clear frame.
상기 입력 비디오의 각각의 프레임과 상기 인접한 프레임 사이의 호모그래피 함수를 추정하는 단계;
상기 추정된 호모그래피 함수를 이용하여 상기 각각의 프레임의 픽셀들이 블러된 정도를 나타내는 러키니스값을 산출하는 단계; 및
상기 추정된 호모그래피 함수와 상기 산출된 러키니스값을 이용하여 상기 각각의 프레임의 블러 함수를 추정하는 단계를 포함하는 비디오 디블러링 방법.The method of claim 1, wherein estimating motion between frames and motion blur of the frame from the input video comprises:
Estimating a homography function between each frame of the input video and the adjacent frame;
Calculating a lukiness value indicating a degree to which pixels of each frame are blurred using the estimated homography function; And
Estimating a blur function of each frame using the estimated homography function and the calculated lukiness value.
상기 추정된 호모그래피 함수를 보간(interpolation)하여 카메라의 흔들림을 근사하여 상기 블러 함수를 추정하는 비디오 디블러링 방법.The method of claim 2, wherein the estimating the blur function of each frame using the estimated homography function and the calculated lukiness value comprises:
And a method for estimating the blur function by approximating a camera shake by interpolating the estimated homography function.
상기 산출된 러키니스값을 이용하여 선명한 프레임과 인접한 블러된 프레임의 쌍을 선택하고, 상기 선택된 프레임의 쌍을 비교하여 프레임의 노출 시간을 추정하는 비디오 디블러링 방법.The method of claim 2, wherein the estimating the blur function of each frame using the estimated homography function and the calculated lukiness value comprises:
And selecting a pair of clear frames and adjacent blurred frames by using the calculated lukiness value, and comparing the selected pairs of frames to estimate the exposure time of the frames.
상기 추정된 각각의 프레임의 블러 함수를 상기 각각의 프레임에 상응하는 인접 프레임에 적용한 후, 상기 각각의 프레임의 패치들과 상기 블러 함수가 적용된 상기 인접 프레임의 패치들 사이의 유사도에 따라 산출되는 블러 기반 유사도를 이용하여 상기 각각의 프레임의 패치들에 가장 유사한 인접 프레임의 패치들을 매칭 패치들로 찾는 비디오 디블러링 방법.The method of claim 2, wherein selecting matching patches from the adjacent frame for every patch of each frame of the input video comprises:
After applying the estimated blur function of each frame to adjacent frames corresponding to the respective frames, the blur calculated based on the similarity between the patches of each frame and the patches of the adjacent frames to which the blur function is applied. Video deblurring method using based similarity to find patches of adjacent frame most similar to the patches of each frame as matching patches.
상기 산출된 블러 기반 유사도에 상기 산출된 러키니스값을 기반으로 한 가중치를 적용하여 산출되는 수정된 블러 기반 유사도를 이용하여 상기 각각의 프레임의 패치들에 가장 유사한 인접 프레임의 패치들을 매칭 패치들로 찾는 비디오 디블러링 방법.The method of claim 6, wherein selecting matching patches from the adjacent frame for every patch of each frame of the input video comprises:
Patches of adjacent frames most similar to patches of each frame are matched to matching patches using a modified blur based similarity calculated by applying the calculated blur based similarity to a weight based on the calculated lukiness value. Find video deblur method.
상기 각각의 프레임의 패치들에 대해, 상기 선별된 매칭 패치들을 블렌딩(blending)하여 선명한 프레임을 복원하는 비디오 디블러링 방법.The method of claim 2, wherein blending the selected matching patches to restore a clear frame includes:
And for the patches of each frame, reconstruct the clear frame by blending the selected matching patches.
상기 산출된 블러 기반 유사도 또는 상기 산출된 수정된 블러 기반 유사도에 기반한 매칭 패치들을 상기 각각의 프레임의 패치들에 블렌딩하는 비디오 디블러링 방법.The method of claim 7, wherein blending the selected matching patch to restore a clear frame,
And a matching patch based on the calculated blur based similarity or the calculated modified blur based similarity to the patches of each frame.
상기 선별된 매칭 패치들의 러키니스값을 블렌딩하여 복원된 프레임의 러키니스값을 업데이트하는 단계를 더 포함하는 비디오 디블러링 방법.The method according to claim 2,
And blending the lukiness values of the selected matching patches to update the lukiness value of the reconstructed frame.
상기 추정된 모션 및 모션 블러를 이용하여 상기 입력 비디오의 프레임의 블러를 제거하는 단계를 미리 설정된 횟수만큼 반복하는 것을 특징으로 하는 비디오 디블러링 방법.The method according to claim 2,
And removing the blur of the frame of the input video by using the estimated motion and motion blur a predetermined number of times.
상기 러키니스값에 기반하여 상기 입력 프레임에 대한 디블러링 순서를 결정하는 단계를 더 포함하는 것을 특징으로 하는 비디오 디블러링 방법. The method according to claim 2,
And determining the order of deblurring for the input frame based on the lukiness value.
상기 추정된 모션 및 모션 블러를 이용하여 상기 입력 비디오의 프레임의 블러를 제거하는 디블러링부를 포함하되,
상기 디블러링부는,
상기 입력 비디오의 각각의 프레임의 모든 패치에 대해 상기 인접한 프레임으로부터 매칭 패치들을 선별하는 매칭 패치 선별부; 및
상기 선별된 매칭 패치들을 블렌딩하여 선명한 프레임을 복원하는 선명한 프레임 복원부를 포함하는 비디오 디블러링 장치.A motion and motion blur estimator for estimating motion between frames and motion blur of the frames from the input video by comparing each frame of the input video with an adjacent frame; And
A deblurring unit configured to remove a blur of a frame of the input video by using the estimated motion and motion blur,
The deblurring unit,
A matching patch selector that selects matching patches from the adjacent frame for every patch of each frame of the input video; And
And a clear frame reconstructing unit which reconstructs a clear frame by blending the selected matching patches.
상기 입력 비디오의 각각의 프레임과 상기 인접한 프레임 사이의 호모그래피 함수를 추정하는 호모그래피 추정부;
상기 추정된 호모그래피 함수를 이용하여 상기 각각의 프레임의 픽셀들이 블러된 정도를 나타내는 러키니스값을 산출하는 러키니스값 산출부; 및
상기 추정된 호모그래피 함수와 상기 산출된 러키니스값을 이용하여 상기 각각의 프레임의 블러 함수를 추정하는 블러 함수 추정부를 포함하는 비디오 디블러링 장치.The method of claim 13, wherein the motion and motion blur estimator,
A homography estimator for estimating a homography function between each frame of the input video and the adjacent frame;
A lukiness value calculator configured to calculate a luckiness value indicating a degree of blurring of pixels of each frame by using the estimated homography function; And
And a blur function estimator for estimating a blur function of each frame using the estimated homography function and the calculated lukiness value.
상기 추정된 호모그래피 함수를 보간(interpolation)하여 카메라의 흔들림을 근사하여 상기 블러 함수를 추정하는 비디오 디블러링 장치.The method of claim 14, wherein the blur function estimator,
And a video deblur device which estimates the blur function by approximating a camera shake by interpolating the estimated homography function.
상기 산출된 러키니스값을 이용하여 선명한 프레임과 인접한 블러된 프레임의 쌍을 선택하고, 상기 선택된 프레임의 쌍을 비교하여 프레임의 노출 시간을 추정하는 비디오 디블러링 장치.The method of claim 14, wherein the blur function estimator,
And selecting a pair of clear frames and an adjacent blurred frame by using the calculated lukiness value, and comparing the selected pairs of frames to estimate an exposure time of the frame.
상기 추정된 각각의 프레임의 블러 함수를 상기 각각의 프레임에 상응하는 인접 프레임에 적용한 후, 상기 각각의 프레임의 패치들과 상기 블러 함수가 적용된 상기 인접 프레임의 패치들 사이의 유사도에 따라 산출되는 블러 기반 유사도를 이용하여 상기 각각의 프레임의 패치들에 가장 유사한 인접 프레임의 패치들을 매칭 패치들로 찾는 비디오 디블러링 장치.The method according to claim 14, The matching patch selector,
After applying the estimated blur function of each frame to adjacent frames corresponding to the respective frames, the blur calculated based on the similarity between the patches of each frame and the patches of the adjacent frames to which the blur function is applied. Video deblurring apparatus using based similarity to find patches of adjacent frame most similar to the patches of each frame as matching patches.
상기 산출된 블러 기반 유사도에 상기 산출된 러키니스값을 기반으로 한 가중치를 적용하여 산출되는 수정된 블러 기반 유사도를 이용하여 상기 각각의 프레임의 패치들에 가장 유사한 인접 프레임의 패치들을 매칭 패치들로 찾는 비디오 디블러링 장치.The method according to claim 18, The matching patch selector,
Patches of adjacent frames most similar to patches of each frame are matched to matching patches using a modified blur based similarity calculated by applying the calculated blur based similarity to a weight based on the calculated lukiness value. Finding video deblur device.
상기 각각의 프레임의 패치들에 대해, 상기 선별된 매칭 패치들을 블렌딩(blending)하여 선명한 프레임을 복원하는 비디오 디블러링 장치.The method of claim 14, wherein the clear frame recovery unit,
And for the patches of each frame, reconstruct the clear frame by blending the selected matching patches.
상기 산출된 블러 기반 유사도 또는 상기 산출된 수정된 블러 기반 유사도에 기반한 매칭 패치들을 상기 각각의 프레임의 패치들에 블렌딩하는 비디오 디블러링 장치.The method of claim 19, wherein the clear frame recovery unit,
And a matching patch based on the calculated blur based similarity or the calculated modified blur based similarity to the patches of each frame.
상기 선별된 매칭 패치의 러키니스값을 블렌딩하여 복원된 프레임의 러키니스값을 업데이트하는 러키니스 업데이트부를 더 포함하는 비디오 디블러링 장치.The method according to claim 14,
And a lukiness updater configured to update the lukiness value of the reconstructed frame by blending the lukiness values of the selected matching patch.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120101176A KR101341871B1 (en) | 2012-09-12 | 2012-09-12 | Method for deblurring video and apparatus thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120101176A KR101341871B1 (en) | 2012-09-12 | 2012-09-12 | Method for deblurring video and apparatus thereof |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101341871B1 true KR101341871B1 (en) | 2014-01-07 |
Family
ID=50144078
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020120101176A KR101341871B1 (en) | 2012-09-12 | 2012-09-12 | Method for deblurring video and apparatus thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101341871B1 (en) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150131066A (en) * | 2013-03-13 | 2015-11-24 | 퀄컴 인코포레이티드 | Motion blur aware visual pose tracking |
KR101574301B1 (en) | 2014-05-22 | 2015-12-04 | 주식회사 칩스앤미디어 | An appratus for frame rate conversion and a method thereof |
KR101574205B1 (en) | 2014-05-22 | 2015-12-04 | 주식회사 칩스앤미디어 | An appratus for estimating a motion vector for frame rate conversion and a method thereof |
KR101671391B1 (en) | 2015-07-07 | 2016-11-02 | 한국과학기술연구원 | Method for deblurring video using modeling blurred video with layers, recording medium and device for performing the method |
CN107689035A (en) * | 2017-08-30 | 2018-02-13 | 广州华多网络科技有限公司 | A kind of homography matrix based on convolutional neural networks determines method and device |
KR20180028962A (en) * | 2016-09-09 | 2018-03-19 | 광운대학교 산학협력단 | Method and Device for detecting image wobbling |
CN113409209A (en) * | 2021-06-17 | 2021-09-17 | Oppo广东移动通信有限公司 | Image deblurring method and device, electronic equipment and storage medium |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100815010B1 (en) * | 2005-06-13 | 2008-03-18 | 세이코 엡슨 가부시키가이샤 | LCD Motion Blur Precompensation Method |
KR20100046544A (en) * | 2008-10-27 | 2010-05-07 | 삼성전자주식회사 | Image distortion compensation method and apparatus |
KR101152525B1 (en) * | 2010-12-29 | 2012-07-11 | 포항공과대학교 산학협력단 | Methods of removing motion blur and apparatuses for the same |
-
2012
- 2012-09-12 KR KR1020120101176A patent/KR101341871B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100815010B1 (en) * | 2005-06-13 | 2008-03-18 | 세이코 엡슨 가부시키가이샤 | LCD Motion Blur Precompensation Method |
KR20100046544A (en) * | 2008-10-27 | 2010-05-07 | 삼성전자주식회사 | Image distortion compensation method and apparatus |
KR101152525B1 (en) * | 2010-12-29 | 2012-07-11 | 포항공과대학교 산학협력단 | Methods of removing motion blur and apparatuses for the same |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150131066A (en) * | 2013-03-13 | 2015-11-24 | 퀄컴 인코포레이티드 | Motion blur aware visual pose tracking |
KR101642055B1 (en) | 2013-03-13 | 2016-07-25 | 퀄컴 인코포레이티드 | Motion blur aware visual pose tracking |
KR101574301B1 (en) | 2014-05-22 | 2015-12-04 | 주식회사 칩스앤미디어 | An appratus for frame rate conversion and a method thereof |
KR101574205B1 (en) | 2014-05-22 | 2015-12-04 | 주식회사 칩스앤미디어 | An appratus for estimating a motion vector for frame rate conversion and a method thereof |
KR101671391B1 (en) | 2015-07-07 | 2016-11-02 | 한국과학기술연구원 | Method for deblurring video using modeling blurred video with layers, recording medium and device for performing the method |
US10013741B2 (en) | 2015-07-07 | 2018-07-03 | Korea Institute Of Science And Technology | Method for deblurring video using modeling blurred video with layers, recording medium and device for performing the method |
KR20180028962A (en) * | 2016-09-09 | 2018-03-19 | 광운대학교 산학협력단 | Method and Device for detecting image wobbling |
KR20180028961A (en) * | 2016-09-09 | 2018-03-19 | 광운대학교 산학협력단 | Device for comparing image files |
KR101905813B1 (en) * | 2016-09-09 | 2018-10-08 | 광운대학교 산학협력단 | Device for comparing image files |
CN107689035A (en) * | 2017-08-30 | 2018-02-13 | 广州华多网络科技有限公司 | A kind of homography matrix based on convolutional neural networks determines method and device |
CN107689035B (en) * | 2017-08-30 | 2021-12-21 | 广州方硅信息技术有限公司 | Homography matrix determination method and device based on convolutional neural network |
CN113409209A (en) * | 2021-06-17 | 2021-09-17 | Oppo广东移动通信有限公司 | Image deblurring method and device, electronic equipment and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101341871B1 (en) | Method for deblurring video and apparatus thereof | |
Su et al. | Deep video deblurring for hand-held cameras | |
Vasu et al. | Non-blind deblurring: Handling kernel uncertainty with CNNs | |
Aittala et al. | Burst image deblurring using permutation invariant convolutional neural networks | |
Cho et al. | Video deblurring for hand-held cameras using patch-based synthesis | |
Zhu et al. | Removing atmospheric turbulence via space-invariant deconvolution | |
Delbracio et al. | Hand-held video deblurring via efficient fourier aggregation | |
CN104103050B (en) | A kind of real video restored method based on local policy | |
CN105469363B (en) | Method and apparatus based on blurred picture generation clear image | |
Pan et al. | Fast $\ell^{0} $-Regularized Kernel Estimation for Robust Motion Deblurring | |
US9262815B2 (en) | Algorithm for minimizing latent sharp image cost function and point spread function cost function with a spatial mask in a regularization term | |
Su et al. | Rolling shutter motion deblurring | |
WO2016183716A1 (en) | Method and system for image deblurring | |
CN102147915B (en) | Method for restoring weighting sparse edge regularization image | |
US20140348441A1 (en) | Algorithm for minimizing latent sharp image cost function and point spread function with a spatial mask in a fidelity term | |
KR101671391B1 (en) | Method for deblurring video using modeling blurred video with layers, recording medium and device for performing the method | |
KR101839617B1 (en) | Method and apparatus for removing non-uniform motion blur using multiframe | |
US20150254814A1 (en) | Globally dominant point spread function estimation | |
CN103544681B (en) | The restoration methods of non-homogeneous motion blur image | |
EP2775448A1 (en) | Deblurring of an image from a sequence of images | |
Zhang et al. | Intra-frame deblurring by leveraging inter-frame camera motion | |
KR20130104258A (en) | A method and an apparatus for debluring non-uniform motion blur usign multiframe comprises of a blur image and a noise image | |
Ito et al. | Blurburst: Removing blur due to camera shake using multiple images | |
CN107133923A (en) | A kind of blurred picture non-blind deblurring method based on self-adaption gradient sparse model | |
KR101181161B1 (en) | An apparatus and a method for deblurring image blur caused by camera ego motion |
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: 20161004 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20180201 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20181001 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20190925 Year of fee payment: 7 |