KR20130009372A - 움직임 추정 장치 및 그 방법 - Google Patents

움직임 추정 장치 및 그 방법 Download PDF

Info

Publication number
KR20130009372A
KR20130009372A KR1020110070427A KR20110070427A KR20130009372A KR 20130009372 A KR20130009372 A KR 20130009372A KR 1020110070427 A KR1020110070427 A KR 1020110070427A KR 20110070427 A KR20110070427 A KR 20110070427A KR 20130009372 A KR20130009372 A KR 20130009372A
Authority
KR
South Korea
Prior art keywords
image frame
estimating
motion vector
probability density
state variable
Prior art date
Application number
KR1020110070427A
Other languages
English (en)
Other versions
KR101253917B1 (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 KR1020110070427A priority Critical patent/KR101253917B1/ko
Publication of KR20130009372A publication Critical patent/KR20130009372A/ko
Application granted granted Critical
Publication of KR101253917B1 publication Critical patent/KR101253917B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본 발명은 움직임 추정 장치 및 그 방법에 관한 것으로, 본 발명의 일 실시예에 따른 움직임 추정 장치는, 복수의 영상 프레임을 블록화하여, 기준 영상 프레임인 제1 영상 프레임에 포함되는 마크로 블록과 상기 제1 영상 프레임 이후의 영상 프레임인 제2 영상 프레임에 포함되는 마크로 블록 간의 차이를 나타내는 움직임 벡터의 확률 밀도 함수를 추정하는 확률 밀도 함수 추정부와, 상기 제1 영상 프레임에서 상기 확률 밀도 함수가 미리 설정된 임계치보다 큰 값을 가지는 위치를 탐색 위치로 설정하는 탐색 위치 설정부와, 상기 설정된 탐색 위치에서 상기 움직임 벡터를 추정하는 움직임 벡터 추정부를 포함한다. 이와 같은 본 발명에 따르면 움직임 벡터가 어떤 값을 갖을 확률이 높은지를 나타내는 확률 밀도 함수를 추정한 후에 확률이 높은 위치만을 탐색함으로써 보다 빠르게 움직임 벡터를 추정할 수 있다.

Description

움직임 추정 장치 및 그 방법{APPARATUS AND METHOD FOR ESTIMATING OF MOTION IN A MOVING PICTURE}
본 발명은 움직임 추정 장치 및 그 방법에 관한 것으로, 더욱 상세하게는 주어진 영상으로부터 움직임 벡터의 확률 밀도 함수를 추정하고, 이를 이용하여 움직임 벡터를 빠르게 찾을 수 있는 움직임 추정 장치 및 추정 방법에 관한 것이다.
화상 회의, 고화질 텔레비전, 주문형 비디오(Video On Demand, VOD) 수신기, MPEG(Moving Picture Experts Group) 영상을 지원하는 개인용 컴퓨터, 게임기, 지상파 디지털 방송 수신기, 디지털 위성 방송 수신기 및 케이블 텔레비전에서 사용되는 동영상 데이터는 아날로그 신호를 디지털화하는 과정에서 데이터의 양이 크게 늘어나기 때문에 적절한 압축 방식을 통하여 압축된다. 동영상은 다수의 프레임들로 구성되고, 영상 신호의 특성상 이웃하는 프레임 간 또는 동일 프레임 내의 이웃하는 블록 또는 화소 간에는 서로 유사성이 존재한다. 이와 같은 영상 신호의 유사성을 이용하여 영상을 예측 부호화하여 고효율의 영상 신호 압축이 수행된다.
일반적으로 영상 데이터의 압축 방법은 크게 세 가지 종류로 구분할 수 있는데, 시간적인 중복성(temporal redundancy)을 줄이는 방법, 공간적인 중복성(spatial redundancy)를 줄이는 방법, 발생 부호의 통계적 특성을 이용하여 줄이는 방법이 이에 속한다. 이 중 시간적인 중복성을 줄이는 방법 중에서 움직임 추정 및 보상 방법이 MPEG, H.263 등 대부분의 동영상 압축 표준안에서 채택되고 있다. 움직임 추정 방법은 동영상 부호화에서 시간적 중복성을 제거하여 비트율(bit rate)을 줄이는데 큰 역할을 하며, 이에는 화소 단위의 정합 기법과 블록 단위의 정합 기법이 있으며, 움직임은 대블록 단위로 표현하기 때문에 블록 단위의 추정 방법이 널리 사용되고 있다.
블록 단위의 추정 방법은 영상을 일정한 크기의 블록으로 분할하고 이전 영상의 탐색 영역 내에서 현재 영상의 블록과 가장 잘 정합되는 블록을 찾는 방법으로써, 현재 블록과 탐색된 블록과의 차이인 움직임 벡터를 계산하고 이를 부호화하여 움직임 추정이 이루어진다. 두 블록 간의 정합 계산은 여러 가지 정합함수들이 사용될 수 있는데, 가장 일반적으로 사용되는 것은 두 블록 간 화소들 차의 절대값을 모두 합한 값인 SAD(Sum of Absolute Difference)이다. H.264 방식의 동영상 부호화 장치는 기존의 SAD 위주의 탐색 방법 대신에 율-왜곡최적화(rate-distortion optimization)에 기반한 코스트 함수를 이용한다.
특히, H.264 방식에서는 압출 효율과 높은 화질을 동시에 얻기 위하여, 기존의 동영상 부호화에서는 16×16 대블록 혹은 8×8 대블록 단위로 부호화를 수행한 것과 달리, 모두 8가지의 서로 다른 블록화 모드를 가지고 있으며, 각각의 블록 중에서 최소값을 가지는 모드를 선택하도록 구성되어 있다. 따라서, 다양한 크기의 가변 블록 기반 움직임 추정(variable block-based motion estimation)을 통하여 부화화 효율에 있어 많은 이득을 제공한다. 또한, H.264 방식은 1/4 화소 단위의 움직임 벡터 예측을 수행하여 더욱 정확한 움직임 추정으로 부호화 효율을 향상시킬 수 있다.
그러나 다른 부호화 방식과 비교하여 1/4 화소 탐색을 이용할 경우에는 부호화 효율을 향상시킬 수 있는 반면, 최소 16배나 많은 움직임 추정 연산을 수행하여야 하며, 이것은 H.264 비디오 부호화에서 속도 저하의 중요한 요소이다. 따라서, 동양상의 부호화 시간이 가장 많이 소요되는 움직임 추정 시간을 줄이는 노력이 계속되고 있다.
또한, 움직임 추정은 동영상 압축 이외에도 동영상의 프레임 레이트를 변환하는 경우에도 이용된다. 연속되는 두 장의 영상 사이의 움직임을 추정한 후, 추정된 움직임을 보상하여 두 장 사이의 영상을 만들어 낼 수 있다. 예를 들어, 1초당 60장의 영상으로 구성된 영상을 입력으로 받을 때, 만들어진 영상을 삽입하면 1초당 120장의 영상으로 구성된 동영상을 출력할 수 있다. 프레임 레이트 변환에 움직임 추정 및 보상 기법을 적용하려면, 추정된 움직임 벡터가 실제 물체의 움직임을 나타내고 있어야 한다. 영상 압축에 사용되는 움직임 추정 방법은 움직임 보상 후 남은 에러가 최소화되는 것을 목적으로 하기 때문에, 추정된 움직임 벡터가 실제 물체의 움직임을 나타내지 못하는 경우가 많다. 따라서, 실제 물체의 움직임을 나타내는 움직임 벡터를 추정하는 노력이 계속되고 있다.
본 발명이 해결하고자 하는 과제는 실제 물체의 움직임을 나타내는 움직임 벡터를 빠르게 추정하는 움직임 추정 장치 및 그 방법을 제공하는 것이다.
본 발명의 일 실시예에 따른 움직임 추정 장치는, 복수의 영상 프레임을 블록화하여, 기준 영상 프레임인 제1 영상 프레임에 포함되는 마크로 블록과 상기 제1 영상 프레임 이후의 영상 프레임인 제2 영상 프레임에 포함되는 마크로 블록 간의 차이를 나타내는 움직임 벡터의 확률 밀도 함수를 추정하는 확률 밀도 함수 추정부와, 상기 제1 영상 프레임에서 상기 확률 밀도 함수가 미리 설정된 임계치보다 큰 값을 가지는 위치를 탐색 위치로 설정하는 탐색 위치 설정부와, 상기 설정된 탐색 위치에서 상기 움직임 벡터를 추정하는 움직임 벡터 추정부를 포함한다.
또한, 상기 확률 밀도 함수 추정부는 상기 제2 영상 프레임의 움직임 벡터를 상태 변수로 하고, 상기 제1 영상 프레임에 포함되는 마크로 블록과 상기 제2 영상 프레임에 포함되는 마크로 블록 간의 차이를 관측값으로 갖는 파티클 필터를 이용하여 상기 관측값에 따른 상기 상태 변수의 확률 밀도 함수를 추정할 수 있다.
또한, 상기 확률 밀도 함수 추정부는 상기 마크로 블록의 크기가 움직이는 대상 개체보다 작은 경우, 상기 마크로 블록의 움직임은 상기 마크로 블록에 이웃하는 마크로 블록들에 의존하여 상기 확률 밀도 함수를 추정할 수 있다.
또한, 상기 확률 밀도 함수 추정부는 상기 상태 변수와 가중치를 포함하는 파티클을 초기화하는 파티클 초기화부와, 상기 상태 변수를 업데이트하고, 상기 제1 영상 프레임에 포함되는 마크로 블록과 상기 제2 영상 프레임에 포함되는 마크로 블록 간의 거리를 상기 관측값으로 계산하고, 상기 마크로 블록 간의 거리의 유사성을 계산하여, 상기 가중치를 증가시켜 상기 파티클을 필터링하는 파티클 필터링부와, 상기 필터링된 파티클의 유사성 레벨이 미리 설정된 기준값보다 높은 경우, 상기 파티클을 리샘플링하는 파티클 리샘플링부를 포함할 수 있다.
또한, 상기 탐색 위치 설정부는 상기 확률 밀도 함수가 상기 임계치보다 큰 값을 가지는 상태 변수를 계산하여, 상기 탐색 위치로 설정할 수 있다.
또한, 상기 움직임 벡터 추정부는 상기 제1 영상 프레임의 마크로 블록 중 상기 상태 변수에 따라 움직인 것으로 판단되는 마크로 블록을 결정하고, 상기 결정된 마크로 블록과 상기 제2 영상 프레임의 마크로 블록 간의 화소들의 차이에 대한 절대값을 모두 합한 값을 이용하여 움직임 벡터를 추정할 수 있다.
본 발명의 다른 실시예에 따른 움직임 추정 방법은 복수의 영상 프레임을 블록화하여, 기준 영상 프레임인 제1 영상 프레임에 포함되는 마크로 블록과 상기 제1 영상 프레임 이후의 영상 프레임인 제2 영상 프레임에 포함되는 마크로 블록 간의 차이를 나타내는 움직임 벡터의 확률 밀도 함수를 추정하는 단계와, 상기 제1 영상 프레임에서 상기 확률 밀도 함수가 미리 설정된 임계치보다 큰 값을 가지는 위치를 탐색 위치로 설정하는 단계와, 상기 설정된 탐색 위치에서 상기 움직임 벡터를 추정하는 단계를 포함한다.
이와 같은 본 발명에 따르면 움직임 벡터가 어떤 값을 갖을 확률이 높은지를 나타내는 확률 밀도 함수를 추정한 후에 확률이 높은 위치만을 탐색함으로써 보다 빠르게 움직임 벡터를 추정할 수 있다. 또한, 확률 밀도 함수가 움직임 벡터가 실제 어떤 값을 갖는 확률을 나타냄으로써 움직임 보상 후 에러를 최소화하는 움직임 추정 방식에 비해 실제 움직임에 가까운 움직임 벡터를 추정할 수 있다.
도 1은 본 발명의 일 실시예에 따른 움직임 추정 장치의 구성도,
도 2는 도 1에 따른 움직임 추정 방법의 흐름도,
도 3은 도 2에 따른 움직임 추정 방법 중 확률 밀도 함수 추정 단계의 구체적인 흐름도,
도 4는 도 2에 따른 움직임 추정 방법 중 확률 밀도 함수 추정을 설명하기 위한 예시도이다.
이하, 첨부된 도면들을 참조하여 본 발명의 실시예를 상세하게 설명한다. 사용되는 용어들은 실시예에서의 기능을 고려하여 선택된 용어들로서, 그 용어의 의미는 사용자, 운용자의 의도 또는 판례 등에 따라 달라질 수 있다. 그러므로 후술하는 실시예들에서 사용된 용어의 의미는, 본 명세서에 구체적으로 정의된 경우에는 그 정의에 따르며, 구체적인 정의가 없는 경우는 당업자들이 일반적으로 인식하는 의미로 해석되어야 할 것이다.
도 1은 본 발명의 일 실시예에 따른 움직임 추정 장치의 구성도이고, 도 2는 도 1에 따른 움직임 추정 방법의 흐름도이다.
도 1을 참조하면, 움직임 추정 장치(100)는 확률 밀도 함수 추정부(110), 탐색 위치 설정부(120), 움직임 벡터 추정부(130)를 포함한다. 또한, 확률 밀도 함수 추정부(110)는 구체적으로 파티클 초기화부(111), 파티클 필터링부(112), 파티클 리샘플링부(113)를 포함한다. 확률 밀도 함수 추정부(110)는 복수의 영상 프레임을 블록화하여, 기준 영상 프레임인 제1 영상 프레임에 포함되는 마크로 블록(macro block)과 제1 영상 프레임 이후의 영상 프레임인 제2 영상 프레임에 포함되는 마크로 블록 간의 차이를 나타내는 움직임 벡터의 확률 밀도 함수를 추정한다(S210). 각 영상 프레임은 수 개의 마크로 블록으로 분할되며, 제1 영상 프레임은 사용자 설정에 따른 기준 영상 프레임이며, 제2 영상 프레임은 현재의 영상 프레임이다.
영상 시퀀스는 f(i, j, t)로 정의할 수 있는데, i는 수직 인덱스, j는 수평 인덱스, t는 시간 인덱스를 나타낸다. 특정 시간에서 영상 프레임의 크기는 [I×J]로 나타낼 수 있으며, 움직임 추정에 사용되는 마크로 블록의 크기를 [bi×bj]라고 하면, 해당 영상은 [M×N]개의 마크로 블록으로 나눌 수 있다. 이 경우, M=1/bi , N=1/bj 이며, 현재 움직임을 추정하고자 하는 마크로 블록의 인덱스를 k라고 하면, 시공간 인덱스와 블록 인덱스 사이에는 다음의 수학식 1과 같은 관계가 형성된다.
Figure pat00001
또한, 확률 밀도 함수 추정부(110)는 제2 영상 프레임의 움직임 벡터를 상태 변수로 하고, 제1 영상 프레임에 포함되는 마크로 블록과 제2 영상 프레임에 포함되는 마크로 블록 간의 차이를 관측값(measure)으로 갖는 파티클 필터(Particle filter)를 이용하여 관측값에 따른 상태 변수의 확률 밀도 함수를 추정할 수 있다. 마크로 블록의 움직임을 나타내는 상태 변수를 xk라고 하면, 이동 움직임 모델을 이용할 경우 상태 변수 xk는 (vi, vj)로 나타낼 수 있으며, 이 경우 vi는 수직 방향의 움직임, vj는 수평 방향의 움직임을 나타낸다. 또한, 마크로 블록의 움직임을 어파인 움직임 모델(Affine Model)을 이용할 경우 상태 변수 xk는 (vi, vj, ri, rj, θ)로 나타낼 수 있으며, 어파인 모델은 변환 후 위치(i', j')와 변환 전 위치(i, j)가 다음의 수학식 2와 같은 관계가 형성된다.
Figure pat00002
현재 영상 프레임인 제2 영상 프레임 f(i, j, t)에서 (m, n)번째 마크로 블록과 기준 영상 프레임인 제1 영상 프레임 f(i, j, t-1)의 마크로 블록 사이의 거리는 상태 변수에 의해서 다음의 수학식 3과 같이 나타낼 수 있다.
Figure pat00003
수학식 3에서, ik=(m-1)bi이고, jk=(n-1)bj이고, ik, jk는 제2 영상 프레임의 마크로 블록의 인덱스를 나타낸다. 또한, (i', j')와 (i, j)는 수학식 2와 같은 움직임 모델에 의해 연관된다.
Figure pat00004
수학식 4에서, B는 하나의 마크로 블록 내의 인덱스들의 집합이다. (i', j')가 정수가 아닐 때에는 쌍일차 방정식(bilinear)을 이용한 보간을 이용하여 픽셀 값을 찾는다. 움직임 벡터를 포함한 상태함수 xk가 수학식 5와 같이 진행(evolve)되고, 그에 따른 관측값(measure) zk가 수학식 6과 같이 표현된다.
Figure pat00005
Figure pat00006
수학식 5, 수학식 6에서 G와 H는 비선형 함수이고, vk, nk는 각각 프로세스 노이즈와 관측 노이즈다. 마크로 블록 인덱스 k까지의 관측치 z1 :k가 주어졌을 경우, 상태 변수의 값의 조건부 확률은 p(xk│z1 :k)가 된다.
본 발명의 또 다른 실시예에 따르면 확률 밀도 함수 추정부(110)는 마크로 블록의 크기가 움직이는 대상 개체보다 작은 경우, 마크로 블록의 움직임은 이웃하는 마크로 블록들에 의존하여 확률 밀도 함수를 추정할 수 있다. 제2 영상 프레임에서의 마크로 블록의 움직임은 인접하는 마크로 블록들의 움직임과 유사하다고 가정하고, 대상 마크로 블록의 상태는 인접하는 마크로 블록들에 의존하여 모델링된다. 이 경우, 확률 밀도 함수는 다음의 수학식 7과 같이 나타낼 수 있다.
Figure pat00007
수학식 7에서 πc는 혼합 확률(mixing probability)이고, N(xk;xcc 2)은 평균 xc와 분산 σc 2의 정규 분포 함수를 나타낸다. 혼합 확률 πc와 분산 σc 2은 모든 혼합 밀도에 대하여 상수로 설정된다. C(k)는 k 번째 마크로 블록의 시공간상 주변의 마크로 블록의 인덱스로 구성된 집합으로, 이는 다음의 수학식 8과 같이 나타낼 수 있다.
Figure pat00008
상태 변수 모델은 다음의 수학식 9와 같이 나타낼 수 있다.
Figure pat00009
수학식 9에서 γ는 집합 C의 원소의 개수와 같은 수의 면을 갖는 동전 던지기(coin toss) 알고리즘을 이용한 결과이다. 또한, 비선형 함수 g(X1 :k-1;γ)는 다음의 수학식 10과 같이 동전 던지기 γ의 결과에 기인하여 이웃하는 상태들 중 하나를 선택한다.
Figure pat00010
한편, 파티클 필터는 영상 프레임으로부터 마크로 블록의 위치 및 방향각에 따른 예측치를 가진 복수개의 샘플을 추출하고, 각 샘플이 실제 마크로 블록의 위치 및 방향각을 가질 확률을 이용하여 최적의 마크로 블록의 위치를 추정한다. 이 경우, 조건부 확률 p(xk│z1 :k)은 다음의 수학식 11과 수학식 12를 반복적으로 이용하여 추정할 수 있다.
Figure pat00011
Figure pat00012
이하, 확률 밀도 함수 추정부(110)에서 파티클 필터(Particle filter)를 이용하여 관측값에 따른 상태 변수의 확률 밀도 함수를 추정하는 것과 관련하여 도 3을 참조하여 설명하도록 한다.
도 3은 도 2에 따른 움직임 추정 방법 중 확률 밀도 함수 추정 단계의 구체적인 흐름도이다.
도 3을 참조하면, 먼저 파티클 초기화부(111)는 상태 변수와 가중치를 포함하는 파티클을 초기화한다(S310). 파티클 초기화부(111)는 파티클(S)에 연관되는 초기 가중치(w0 2)와 상태 변수(x0 2)를 초기화한다. 상태 변수의 각 요소의 초기값은 탐색 위치에서 균일하게 분포된다. 따라서, 파티클들은 초기에 탐색 영역에서 균일하게 분포된다. 초기 가중치(w0 2)는 1/S로 설정되고, 초기 상태 변수(x0 2)는 [w1, w2 ,…, wL]T로 설정된다. 이 경우, xi는 Rl×U(-1, 1)로부터 설정되며, U(a, b)는 [a, b]의 균일 분포를 나타내며, Rl은 l번째 상태 변수의 탐색 영역을 나타낸다.
다음으로, 파티클 필터링부(112)는 파티클 초기화부(111)에서 초기화된 상태 변수를 업데이트하고, 제1 영상 프레임에 포함되는 마크로 블록과 제2 영상 프레임에 포함되는 마크로 블록 간의 거리를 관측값으로 계산하고, 마크로 블록 간의 거리의 유사성을 계산하여, 가중치를 증가시켜 파티클을 필터링한다(S320). 예를 들어, k 번째 마크로 블록에 대해 파티클 필터링을 하는 경우, k 번째 마크로 블록의 상태 변수와 가중치를 업데이트하며, k 번째 마크로 블록의 파라미터(
Figure pat00013
)를 추정하게 된다.
파티클 필터링부(112)는 예를 들어 다음과 같은 알고리즘을 이용할 수 있다. 먼저, 동전 던지기(coin toss) 알고리즘을 이용하여 k 번째 마크로 블록의 시공간상 주변의 마크로 블록의 인덱스로 구성된 집합 C를 결정한다. 다음으로, 파티클(S)을
Figure pat00014
의 식을 이용하여 업데이트한다. 다음으로,
Figure pat00015
에 의해 지정된 제1 영상 프레임의 마크로 블록을 가져온다. 다음으로, 제1 영상 프레임에서 가져온 마크로 블록과 제2 영상 프레임의 k 번째 마크로 블록 간의 거리를 계산한다. 다음으로, 마크로 블록 간의 거리p(zk│xk s)의 유사성을 계산한다. 다음으로, 가중치를
Figure pat00016
을 이용하여 업데이트한다.
다음으로, 파티클 리샘플링부(113)는 필터링된 파티클의 유사성 레벨이 미리 설정된 기준값보다 높은지 여부를 판단한다(S330). 유사성 레벨이 기준값보다 낮은 경우에는 가중치(wk s)를 정규화하고, k 번째 마크로 블록의 파라미터를 추정하고, 높은 경우에는 파티클을 리샘플링한다(S340). 예를 들어 리샘플링 알고리즘은 다음과 같이 구현될 수 있다. 먼저
Figure pat00017
을 이용하여 파티클 SE(K)의 값을 계산하고, SE(K)가 기준 파티클 값인 ST보다 작으면, 가중치(wk s)의 누적분포함수(CDF)인 Wk s을 계산한다. 다음으로, [0, 1]의 균일 분포인 U(0, 1)로부터 구한 r을 이용하여, 가중치(wk j)가 r보다 같거나 크도록 하는 j 값을 구한다. 다음으로, 리샘플링된 상태변수 x'k s를 Xk j로 설정하고, 리샘플링된 가중치 w'k s를 1/S로 설정한다.
다시 도 2를 참조하면, 다음으로 탐색 위치 설정부(120)는 제1 영상 프레임에서 확률 밀도 함수가 미리 설정된 임계치보다 큰 값을 가지는 위치를 탐색 위치로 설정한다(S220). 이 경우 임계치는 사용자의 설정에 의해 달리 설정될 수 있다. 탐색 위치 설정부(120)는 확률 밀도 함수 추정부(110)에서 추정된 확률 밀도 함수가 임계치보다 큰 값을 가지는 상태 변수를 계산하고, 계산된 상태 변수로부터 탐색 위치를 설정한다. 탐색 위치 설정부(120)는 설정된 탐색 위치 정보를 움직임 벡터 추정부(130)로 출력한다.
다음으로, 움직임 벡터 추정부(130)는 탐색 위치 설정부(120)에서 설정된 탐색 위치에서 움직임 벡터를 추정한다. 이 경우, 제1 영상 프레임의 마크로 블록 중 상태 변수에 따라 움직인 것으로 판단되는 마크로 블록을 결정하고, 결정된 마크로 블록과 제2 영상 프레임의 마크로 블록 간의 화소들의 차이에 대한 절대값을 모두 합한 값(SAD)을 이용하여 움직임 벡터를 추정할 수 있다. 움직임 벡터에 대한 정보는 다음의 수학식 13에 의한 기대값으로 구해질 수 있다.
Figure pat00018
도 4는 도 2에 따른 움직임 추정 방법 중 확률 밀도 함수 추정을 설명하기 위한 예시도이다.
도 4를 참조하면, 각각의 영상 프레임은 복수의 마크로 블록으로 분할되며, f(t-1)은 기준 영상 프레임인 제1 영상 프레임이고, f(t)는 제1 영상 프레임 이후의 프레임인 제2 영상 프레임이다. 마크로 블록 인덱스 'k-1'의 경우, 상태 변수 Xk -1은 이전 영상 프레임인 제1 영상 프레임에 대한 제2 영상 프레임의 (k-1)번째 마크로 블록의 움직임에 관계된다. 또한, 다음 마크로 블록인 인텍스 'k'의 경우, 상태 변수 Xk는 이전 영상 프레임인 제1 영상 프레임에 대하여 제2 영상 프레임의 k 번째 마크로 블록의 움직임에 관계된다.
이와 같은 본 발명에 따르면 움직임 벡터가 어떤 값을 갖을 확률이 높은지를 나타내는 확률 밀도 함수를 추정한 후에 확률이 높은 위치만을 탐색함으로써 보다 빠르게 움직임 벡터를 추정할 수 있다. 또한, 확률 밀도 함수가 움직임 벡터가 실제 어떤 값을 갖는 확률을 나타냄으로써 움직임 보상 후 에러를 최소화하는 움직임 추정 방식에 비해 실제 움직임에 가까운 움직임 벡터를 추정할 수 있다.
이상에서 본 발명은 도면을 참조하면서 기술되는 바람직한 실시예를 중심으로 설명되었지만 이에 한정되는 것은 아니다. 따라서 본 발명은 기재된 실시예로부터 도출 가능한 자명한 변형예를 포괄하도록 의도된 특허청구범위의 기재에 의해 해석되어져야 한다.
100 : 움직임 추정 장치 110 : 확률 밀도 함수 추정부
111 : 파티클 초기화부 112 : 파티클 필터링부
113 : 파티클 리샘플링부 120 : 탐색 위치 설정부
130 : 움직임 벡터 추정부

Claims (12)

  1. 복수의 영상 프레임을 블록화하여, 기준 영상 프레임인 제1 영상 프레임에 포함되는 마크로 블록과 상기 제1 영상 프레임 이후의 영상 프레임인 제2 영상 프레임에 포함되는 마크로 블록 간의 차이를 나타내는 움직임 벡터의 확률 밀도 함수를 추정하는 확률 밀도 함수 추정부;
    상기 제1 영상 프레임에서 상기 확률 밀도 함수가 미리 설정된 임계치보다 큰 값을 가지는 위치를 탐색 위치로 설정하는 탐색 위치 설정부; 및
    상기 설정된 탐색 위치에서 상기 움직임 벡터를 추정하는 움직임 벡터 추정부를 포함하는 움직임 추정 장치.
  2. 제1항에 있어서, 상기 확률 밀도 함수 추정부는,
    상기 제2 영상 프레임의 움직임 벡터를 상태 변수로 하고, 상기 제1 영상 프레임에 포함되는 마크로 블록과 상기 제2 영상 프레임에 포함되는 마크로 블록 간의 차이를 관측값으로 갖는 파티클 필터를 이용하여 상기 관측값에 따른 상기 상태 변수의 확률 밀도 함수를 추정하는 움직임 추정 장치.
  3. 제1항에 있어서, 상기 확률 밀도 함수 추정부는,
    상기 마크로 블록의 크기가 움직이는 대상 개체보다 작은 경우, 상기 마크로 블록의 움직임은 상기 마크로 블록에 이웃하는 마크로 블록들에 의존하여 상기 확률 밀도 함수를 추정하는 움직임 추정 장치.
  4. 제2항에 있어서, 상기 확률 밀도 함수 추정부는,
    상기 상태 변수와 가중치를 포함하는 파티클을 초기화하는 파티클 초기화부;
    상기 상태 변수를 업데이트하고, 상기 제1 영상 프레임에 포함되는 마크로 블록과 상기 제2 영상 프레임에 포함되는 마크로 블록 간의 거리를 상기 관측값으로 계산하고, 상기 마크로 블록 간의 거리의 유사성을 계산하여, 상기 가중치를 증가시켜 상기 파티클을 필터링하는 파티클 필터링부; 및
    상기 필터링된 파티클의 유사성 레벨이 미리 설정된 기준값보다 높은 경우, 상기 파티클을 리샘플링하는 파티클 리샘플링부를 포함하는 움직임 추정 장치.
  5. 제2항에 있어서, 상기 탐색 위치 설정부는,
    상기 확률 밀도 함수가 상기 임계치보다 큰 값을 가지는 상태 변수를 계산하여, 상기 탐색 위치로 설정하는 움직임 추정 장치.
  6. 제2항에 있어서, 상기 움직임 벡터 추정부는,
    상기 제1 영상 프레임의 마크로 블록 중 상기 상태 변수에 따라 움직인 것으로 판단되는 마크로 블록을 결정하고, 상기 결정된 마크로 블록과 상기 제2 영상 프레임의 마크로 블록 간의 화소들의 차이에 대한 절대값을 모두 합한 값을 이용하여 움직임 벡터를 추정하는 움직임 추정 장치.
  7. 복수의 영상 프레임을 블록화하여, 기준 영상 프레임인 제1 영상 프레임에 포함되는 마크로 블록과 상기 제1 영상 프레임 이후의 영상 프레임인 제2 영상 프레임에 포함되는 마크로 블록 간의 차이를 나타내는 움직임 벡터의 확률 밀도 함수를 추정하는 단계;
    상기 제1 영상 프레임에서 상기 확률 밀도 함수가 미리 설정된 임계치보다 큰 값을 가지는 위치를 탐색 위치로 설정하는 단계; 및
    상기 설정된 탐색 위치에서 상기 움직임 벡터를 추정하는 단계를 포함하는 움직임 추정 방법.
  8. 제7항에 있어서, 상기 확률 밀도 함수를 추정하는 단계는,
    상기 제2 영상 프레임의 움직임 벡터를 상태 변수로 하고, 상기 제1 영상 프레임에 포함되는 마크로 블록과 상기 제2 영상 프레임에 포함되는 마크로 블록 간의 차이를 관측값으로 갖는 파티클 필터를 이용하여 상기 관측값에 따른 상기 상태 변수의 확률 밀도 함수를 추정하는 움직임 추정 방법.
  9. 제7항에 있어서, 상기 확률 밀도 함수를 추정하는 단계는,
    상기 마크로 블록의 크기가 움직이는 대상 개체보다 작은 경우, 상기 마크로 블록의 움직임은 상기 마크로 블록에 이웃하는 마크로 블록들에 의존하여 상기 확률 밀도 함수를 추정하는 움직임 추정 방법.
  10. 제8항에 있어서, 상기 확률 밀도 함수를 추정하는 단계는,
    상기 상태 변수와 가중치를 포함하는 파티클을 초기화하는 단계;
    상기 상태 변수를 업데이트하고, 상기 제1 영상 프레임에 포함되는 마크로 블록과 상기 제2 영상 프레임에 포함되는 마크로 블록 간의 거리를 상기 관측값으로 계산하고, 상기 마크로 블록 간의 거리의 유사성을 계산하여, 상기 가중치를 증가시켜 상기 파티클을 필터링하는 단계; 및
    상기 필터링된 파티클의 유사성 레벨이 미리 설정된 기준값보다 높은 경우, 상기 파티클을 리샘플링하는 단계를 포함하는 움직임 추정 방법.
  11. 제8항에 있어서, 상기 탐색 위치로 설정하는 단계는,
    상기 확률 밀도 함수가 상기 임계치보다 큰 값을 가지는 상태 변수를 계산하여, 상기 탐색 위치로 설정하는 움직임 추정 방법.
  12. 제8항에 있어서, 상기 움직임 벡터를 추정하는 단계는,
    상기 제1 영상 프레임의 마크로 블록 중 상기 상태 변수에 따라 움직인 것으로 판단되는 마크로 블록을 결정하고, 상기 결정된 마크로 블록과 상기 제2 영상 프레임의 마크로 블록 간의 화소들의 차이에 대한 절대값을 모두 합한 값을 이용하여 움직임 벡터를 추정하는 움직임 추정 방법.
KR1020110070427A 2011-07-15 2011-07-15 움직임 추정 장치 및 그 방법 KR101253917B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110070427A KR101253917B1 (ko) 2011-07-15 2011-07-15 움직임 추정 장치 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110070427A KR101253917B1 (ko) 2011-07-15 2011-07-15 움직임 추정 장치 및 그 방법

Publications (2)

Publication Number Publication Date
KR20130009372A true KR20130009372A (ko) 2013-01-23
KR101253917B1 KR101253917B1 (ko) 2013-04-16

Family

ID=47839175

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110070427A KR101253917B1 (ko) 2011-07-15 2011-07-15 움직임 추정 장치 및 그 방법

Country Status (1)

Country Link
KR (1) KR101253917B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170034226A (ko) * 2015-09-18 2017-03-28 삼성전자주식회사 객체 인식 장치 및 방법, 객체 인식 모델 학습 장치 및 방법
CN110647723A (zh) * 2019-08-14 2020-01-03 中国科学院计算机网络信息中心 基于原位可视化的粒子数据处理方法、装置和系统
KR20220128857A (ko) * 2021-03-15 2022-09-22 국방과학연구소 파티클 필터링을 이용한 비트율 제어 방법 및 장치

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101005382B1 (ko) * 2008-11-27 2010-12-30 경희대학교 산학협력단 완전 탐색 기반의 적응적 탐색 영역을 이용한 움직임 추정 방법
KR20110050283A (ko) * 2009-11-06 2011-05-13 삼성전자주식회사 다중 참조 영상을 이용한 고속 움직임 추정 방법

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170034226A (ko) * 2015-09-18 2017-03-28 삼성전자주식회사 객체 인식 장치 및 방법, 객체 인식 모델 학습 장치 및 방법
CN110647723A (zh) * 2019-08-14 2020-01-03 中国科学院计算机网络信息中心 基于原位可视化的粒子数据处理方法、装置和系统
CN110647723B (zh) * 2019-08-14 2023-12-26 中国科学院计算机网络信息中心 基于原位可视化的粒子数据处理方法、装置和系统
KR20220128857A (ko) * 2021-03-15 2022-09-22 국방과학연구소 파티클 필터링을 이용한 비트율 제어 방법 및 장치

Also Published As

Publication number Publication date
KR101253917B1 (ko) 2013-04-16

Similar Documents

Publication Publication Date Title
CN108141594B (zh) 用于对图像进行编码或解码的方法和设备
EP1797722B1 (en) Adaptive overlapped block matching for accurate motion compensation
US9621917B2 (en) Continuous block tracking for temporal prediction in video encoding
CN110741640B (zh) 用于视频代码化中的运动补偿预测的光流估计
CN110519600B (zh) 帧内帧间联合预测方法、装置、编解码器及存储装置
US8718143B2 (en) Optical flow based motion vector estimation systems and methods
CN100452832C (zh) 使用行和列向量的运动向量估计
TWI489878B (zh) 影像編碼方法、影像解碼方法、影像編碼裝置、影像解碼裝置及該等之程式
US9641861B2 (en) Method and integrated circuit for video processing
US20120300840A1 (en) Image encoding device, image decoding device, image encoding method, and image decoding method
EP1732329A1 (en) Method and apparatus for coding moving images
JPH08307874A (ja) 映像信号符号化装置
US5793429A (en) Methods of estimating motion in image data and apparatus for performing same
CN108574844B (zh) 一种时空显著感知的多策略视频帧率提升方法
Kamisli Intra prediction based on markov process modeling of images
EP2890128A1 (en) Video encoder with block merging and methods for use therewith
KR101253917B1 (ko) 움직임 추정 장치 및 그 방법
KR20130103140A (ko) 영상압축 전에 행해지는 전처리 방법, 영상 압축률 개선을 위한 적응성 움직임 추정방법 및 영상 타입별 영상 데이터 제공방법
CN101931739A (zh) 绝对误差总和值估算系统及方法
JPH08265767A (ja) 特徴点を決定するための方法
JP5011854B2 (ja) 高解像度画像処理装置
EP1515562B1 (en) Method for setting motion vector of digital video
KR20130063285A (ko) 예측 움직임 벡터 선택에 따른 변환 부호화 방법 및 장치
CN102204256B (zh) 图像预测方法和系统
LeQuang et al. Object-oriented coding using successive motion field segmentation and estimation

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: 20160406

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170330

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee