KR102230268B1 - 영상에서 움직임 벡터를 결정하는 방법 및 장치 - Google Patents

영상에서 움직임 벡터를 결정하는 방법 및 장치 Download PDF

Info

Publication number
KR102230268B1
KR102230268B1 KR1020150162847A KR20150162847A KR102230268B1 KR 102230268 B1 KR102230268 B1 KR 102230268B1 KR 1020150162847 A KR1020150162847 A KR 1020150162847A KR 20150162847 A KR20150162847 A KR 20150162847A KR 102230268 B1 KR102230268 B1 KR 102230268B1
Authority
KR
South Korea
Prior art keywords
downsampling
block
blocks
motion vector
image processing
Prior art date
Application number
KR1020150162847A
Other languages
English (en)
Other versions
KR20170058792A (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 KR1020150162847A priority Critical patent/KR102230268B1/ko
Priority to US15/222,190 priority patent/US10536713B2/en
Publication of KR20170058792A publication Critical patent/KR20170058792A/ko
Application granted granted Critical
Publication of KR102230268B1 publication Critical patent/KR102230268B1/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/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/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • 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/53Multi-resolution motion estimation; Hierarchical motion estimation
    • 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
    • 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
    • H04N19/521Processing of motion vectors for estimating the reliability of the determined motion vectors or motion vector field, e.g. for smoothing the motion vector field or for correcting motion vectors
    • 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/58Motion compensation with long-term prediction, i.e. the reference frame for a current frame not being the temporally closest one
    • 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/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution

Abstract

일 실시예에 따라, 영상을 처리하는 방법에 있어서, 제1 프레임에 포함된 제1 블록을 다운 샘플링(down-sampling)하여 제1 다운샘플링 블록을 생성하는 단계; 제2 프레임에 포함된 제2 블록을 다운 샘플링 하여 복수의 제2 다운샘플링 블록을 생성하는 단계; 상기 제1 다운샘플링 블록 및 상기 복수의 제2 다운샘플링 블록을 각각 비교하여, 상기 복수의 제2 다운샘플링 블록 중 하나의 제2 다운샘플링 블록을 선택하는 단계; 및 상기 제1 다운샘플링 블록 및 상기 선택된 제2 다운샘플링 블록에 기초하여 상기 제2 블록이 상기 제1 블록을 가리키는 움직임 벡터를 결정하는 단계를 포함하고, 상기 복수의 제2 다운샘플링 블록은 상기 제2 블록의 샘플들을 서로 다른 다운샘플링 방식을 이용하여 생성되는 것을 특징으로 하는 영상 처리 방법이 제공될 수 있다.

Description

영상에서 움직임 벡터를 결정하는 방법 및 장치{Method of determining a motion vector in a video and apparatus thereof}
일 실시예에 따라 복수개의 프레임으로 구성되는 영상에서 움직임 벡터를 결정하기 위한 방법 및 장치가 제공된다.
동적 이미지인 영상은 정적 이미지인 복수개의 프레임을 포함하고 있으며, 이러한 복수의 프레임들간의 관계에 기초하여 효율적으로 압축하는 과정을 수행할 수 있다. 각 프레임에 포함된 객체의 움직임과 관련된 움직임 벡터를 서로 상이한 프레임들간의 관계에서 추정(estimation)할 수 있고, 이러한 움직임 벡터를 이용하여 영상이 압축될 수 있다.
종래에는 움직임 벡터를 추정하기 위하여 영상의 크기를 축소시킨 후 움직임을 추정함으로써 고해상도 영상을 신속히 움직임 벡터를 추정하는 방법이 이용되어 왔다. 즉, 종래기술에서는 계층적 움직임 추정 기술을 이용하여, 현재 프레임 및 현재 프레임과 다른 프레임을 축소시킨 후 축소된 영상에서 움직임 벡터를 찾고 이후에 축소된 비율을 고려하여 움직임 벡터를 스케일업(scale up)함으로써 현재 프레임의 임의의 블록에 대한 움직임 벡터를 추정한다.
다만 이러한 축소된 프레임에서의 움직임 벡터를 스케일업 하는 경우 움직임 벡터의 정확도가 낮아지고, 특히 고주파 성분이 많은 영상에서 이러한 종래의 계층적 움직임 벡터 추정 방법의 이용 시 부정확한 움직임 벡터를 추정하는 결과를 초래하게 된다.
일 실시예에 따라 낮은 복잡도를 가지면서 영상의 고주파 영역에서 정확한 움직임 벡터를 추정하기 위한 영상 처리 방법 및 장치를 제공하기 위한 발명이다.
이러한 기술적 과제를 해결하기 위한 일 실시예에 따라, 영상을 처리하는 방법에 있어서, 제1 프레임에 포함된 제1 블록을 다운 샘플링(down-sampling)하여 제1 다운샘플링 블록을 생성하는 단계; 제2 프레임에 포함된 제2 블록을 다운 샘플링 하여 복수의 제2 다운샘플링 블록을 생성하는 단계; 상기 제1 다운샘플링 블록 및 상기 복수의 제2 다운샘플링 블록을 각각 비교하여, 상기 복수의 제2 다운샘플링 블록 중 하나의 제2 다운샘플링 블록을 선택하는 단계; 및 상기 제1 다운샘플링 블록 및 상기 선택된 제2 다운샘플링 블록에 기초하여 상기 제2 블록이 상기 제1 블록을 가리키는 움직임 벡터를 결정하는 단계를 포함하고, 상기 복수의 제2 다운샘플링 블록은 상기 제2 블록의 샘플들을 서로 다른 다운샘플링 방식을 이용하여 생성되는 것을 특징으로 하는 영상 처리 방법이 제공될 수 있다.
일 실시예에 따라, 복수의 제2 다운샘플링 블록을 식별하기 위한 식별 정보를 결정하는 단계를 더 포함하고, 움직임 벡터를 결정하는 단계는 상기 선택된 제2 다운샘플링 블록의 식별 정보에 기초하여 상기 움직임 벡터를 결정하는 단계를 포함하는 것을 특징으로 하는 영상 처리 방법이 제공될 수 있다.
일 실시예에 따라, 식별 정보는 상기 복수의 제2 다운샘플링 블록 간의 상대적 좌표를 나타내는 것을 특징으로 하고, 움직임 벡터를 결정하는 단계는 상기 복수의 제2 다운샘플링 블록 중 상기 상대적 좌표의 기준이 되는 제2 다운샘플링 블록과 관련된 움직임 벡터를 결정하는 단계를 더 포함하는 것을 특징으로 하는 영상 처리 방법이 제공될 수 있다.
일 실시예에 따라, 움직임 벡터를 결정하는 단계는 상기 기준이 되는 제2 다운샘플링 블록과 관련된 움직임 벡터의 크기를 상기 제2 블록의 다운샘플링 비율에 기초하여 확대하는 단계; 및 상기 선택된 제2 다운샘플링 블록의 식별 정보를 이용하여, 상기 확대된 움직임 벡터를 보정하는 단계를 더 포함하는 것을 특징으로 하는 영상 처리 방법이 제공될 수 있다.
일 실시예에 따라, 상기 복수의 제2 다운샘플링 블록 중, 상기 제1 다운샘플링 블록의 생성 과정에서 이용된 다운 샘플링 방식에 기초하여 생성된 제2 다운샘플링 블록을 상기 기준이 되는 제2 다운샘플링 블록으로 결정하는 단계를 더 포함하는 것을 특징으로 하는 기준이 되는 제2 다운샘플링 블록과 관련된 움직임 벡터를 결정하는 단계를 포함하는 영상 처리 방법이 제공될 수 있다.
일 실시예에 따라, 복수의 제2 다운샘플링 블록을 생성하는 단계는 상기 제2 블록에서 서로 다른 위치에 있는 샘플들에 기초한 다운 샘플링을 수행하여 상기 복수의 제2 다운샘플링 블록을 생성하는 단계를 포함하는 것을 특징으로 하는 영상 처리 방법이 제공될 수 있다.
일 실시예에 따라, 다운샘플링은 가로 및 세로 중 적어도 하나의 방향으로 축소된 크기를 가지는 블록을 생성하는 방식인 것을 특징으로 하는 영상 처리 방법이 제공될 수 있다.
일 실시예에 따라, 복수의 제2 다운샘플링 블록을 생성하는 데 이용되는 다운 샘플링 방식의 개수는 상기 제2 블록과 상기 제2 다운샘플링 블록 간의 크기의 비율에 기초하여 결정되는 것을 특징으로 하는 영상 처리 방법이 제공될 수 있다.
일 실시예에 따라, 상기 제1 다운샘플링 블록과 상기 복수의 제2 다운샘플링 블록 간의 차이와 관련된 정보를 나타내는 SAD(Sum of Absolute Difference)에 기초하여 상기 선택된 제2 다운샘플링 블록을 결정하는 단계를 포함하는 것을 특징으로 하는 선택된 제2 다운샘플링 블록을 결정하는 단계를 포함하는 영상 처리 방법이 제공될 수 있다.
이러한 기술적 과제를 해결하기 위한 또 다른 일 실시예에 따라, 영상을 처리하는 장치에 있어서, 현재 프레임과 구별되는 이전 프레임에 포함된 제1 블록을 다운 샘플링(down-sampling)하여 제1 다운샘플링 블록을 생성하는 제1 다운샘플링 블록 생성부; 상기 현재 프레임에 포함된 제2 블록을 다운 샘플링 하여 복수의 제2 다운샘플링 블록을 생성하는 제2 다운샘플링 블록 생성부; 상기 제1 다운샘플링 블록 및 상기 복수의 제2 다운샘플링 블록을 각각 비교함으로써 상기 복수의 제2 다운샘플링 블록 중 하나의 제2 다운샘플링 블록을 선택하고, 상기 제1 다운샘플링 블록 및 상기 선택된 제2 다운샘플링 블록에 기초하여 상기 제2 블록이 상기 제1 블록을 가리키는 움직임 벡터를 결정하는 움직임 벡터 결정부를 포함하고, 상기 복수의 제2 다운샘플링 블록은 상기 제2 블록의 샘플들을 서로 다른 다운 샘플링 방식을 이용하여 생성되는 것을 특징으로 하는 영상 처리 장치가 제공될 수 있다.
일 실시예에 따라, 상기 복수의 제2 다운샘플링 블록을 식별하기 위한 식별 정보를 결정하고, 상기 선택된 제2 다운샘플링 블록의 식별 정보에 기초하여 상기 움직임 벡터를 결정하는 것을 특징으로 하는 움직임 벡터 결정부를 포함하는 영상 처리 장치가 제공될 수 있다.
일 실시예에 따라, 상기 식별 정보는 상기 복수의 제2 다운샘플링 블록 간의 상대적 좌표를 나타내는 것을 특징으로 하고, 상기 움직임 벡터 결정부는 상기 복수의 제2 다운샘플링 블록 중 상기 상대적 좌표의 기준이 되는 제2 다운샘플링 블록과 관련된 움직임 벡터를 결정하는 것을 특징으로 하는 영상 처리 장치가 제공될 수 있다.
일 실시예에 따라, 움직임 벡터 결정부는 상기 기준이 되는 제2 다운샘플링 블록과 관련된 움직임 벡터의 크기를 상기 제2 블록의 다운샘플링 비율에 기초하여 확대하고, 상기 선택된 제2 다운샘플링 블록의 식별 정보를 이용하여 상기 확대된 움직임 벡터를 보정하는 것을 특징으로 하는 영상 처리 장치가 제공될 수 있다.
일 실시예에 따라, 움직임 벡터 결정부는, 상기 복수의 제2 다운샘플링 블록 중, 상기 제1 다운샘플링 블록의 생성 과정에서 이용된 다운 샘플링 방식에 기초하여 생성된 제2 다운샘플링 블록을 상기 기준이 되는 제2 다운샘플링 블록으로 결정하는 것을 특징으로 하는 영상 처리 장치가 제공될 수 있다.
일 실시예에 따라, 제2 다운샘플링 블록 생성부는, 상기 제2 블록에서 서로 다른 위치에 있는 샘플들에 기초한 다운 샘플링을 수행하여 상기 복수의 제2 다운샘플링 블록을 생성하는 것을 특징으로 하는 영상 처리 장치가 제공될 수 있다.
일 실시예에 따라, 다운 샘플링은 가로 및 세로 중 적어도 하나의 방향으로 축소된 크기를 가지는 블록을 생성하는 방식인 것을 특징으로 하는 영상 처리 장치가 제공될 수 있다.
일 실시예에 따라, 상기 복수의 제2 다운샘플링 블록을 생성하는 데 이용되는 다운 샘플링 방식의 개수는 상기 제2 블록과 상기 제2 다운샘플링 블록 간의 크기의 비율에 기초하여 결정되는 것을 특징으로 하는 영상 처리 장치가 제공될 수 있다.
일 실시예에 따라, 움직임 벡터 결정부는
상기 제1 다운샘플링 블록과 상기 복수의 제2 다운샘플링 블록 간의 차이와 관련된 정보를 나타내는 SAD(Sum of Absolute Difference)에 기초하여 상기 선택된 제2 다운샘플링 블록을 결정하는 것을 특징으로 하는 영상 처리 장치가 제공될 수 있다.
이러한 기술적 과제를 해결하기 위한 또 다른 일 실시예에 따라, 영상 처리 방법을 구현하기 위한 프로그램이 저장된 컴퓨터 판독 가능 기록매체가 제공될 수 있다.
일 실시예에 따라 종래의 움직임 벡터 추정 방법 보다 복잡도가 낮은 움직임 추정 방법을 이용할 수 있고, 고해상도 영상의 고주파 영역과 관련하여 정확한 움직임 벡터를 추정할 수 있다.
도 1은 일 실시예에 따라 현재 프레임에서 복수의 다운샘플링 블록을 생성하여 움직임 벡터를 결정할 수 있는 영상 처리 장치의 블록도를 도시한다.
도 2는 일 실시예에 따라 영상 처리 장치가 움직임 벡터를 결정하는 과정을 도시한 흐름도이다.
도 3은 일 실시예에 따라, 영상 처리 장치가 복수의 제2 다운샘플링 블록이 다운샘플링 된 방식에 기초하여 움직임 벡터를 결정하기 위한 방법에 대한 흐름도 이다.
도 4는 블록에 포함된 복수의 샘플들을 다운샘플링 하여 다운샘플링 블록을 생성하는 과정을 도시한 것이다.
도 5는 일 실시예에 따라 제1 다운샘플링 블록 또는 제2 다운샘플링 블록이 생성되는 과정을 도시한다.
도 6은 일 실시예에 따라 영상 처리 장치가 제2 다운샘플링 블록을 생성하기 위해 다운샘플링을 수행하는 방식을 도시한다.
도 7은 일 실시예에 따라 영상 처리 장치의 제2 다운샘플링 블록 생성부(104)가 제2 다운샘플링 블록을 만드는 또 다른 방법을 도시한다.
도 8은 일 실시예에 따라 영상 처리 장치가 다운샘플링을 수행하여 생성되는 다운샘플링 블록과 원본 블록과의 크기 비율에 기초하여, 영상 처리 장치(100)가 수행 가능한 다운샘플링 방식의 개수가 결정되는 내용을 도시한다.
도 9A 및 도 9B는 일 실시예에 따라, 영상 처리 장치가 선택한 제2 다운샘플링 블록에 기초하여 제2 블록이 제1 블록을 가리키는 움직임 벡터를 결정하는 과정을 도시한다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 본 발명에 대해 구체적으로 설명하기로 한다.
본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다.
본 명세서에서의 단수의 표현은 문맥상 명백하게 단수인 것으로 특정하지 않는 한, 복수의 표현을 포함한다.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에서 사용되는 "부"라는 용어는 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, "부"는 어떤 역할들을 수행한다. 그렇지만 "부"는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. "부"는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 "부"는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 "부"들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 "부"들로 결합되거나 추가적인 구성요소들과 "부"들로 더 분리될 수 있다.
아래에서는 첨부한 도면을 참고하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략한다.
도 1은 일 실시예에 따라 현재 프레임에서 복수의 다운샘플링 블록을 생성하여 움직임 벡터를 결정할 수 있는 영상 처리 장치(100)의 블록도를 도시한다. 일 실시예에 따라 영상 처리 장치(100)는 제1 다운샘플링 블록 생성부(102), 제2 다운샘플링 블록 생성부(104) 및 움직임 벡터 결정부(106)를 포함할 수 있다.
도 2는 일 실시예에 따라 영상 처리 장치(100)가 움직임 벡터를 결정하는 과정을 도시한 흐름도이다.
S200 단계에서 영상 처리 장치(100)는 일 실시예에 따라 제1 프레임에 포함된 제1 블록을 다운샘플링(down-sampling)하여 제1 다운샘플링 블록을 생성할 수 있다.
일 실시예에 따라 영상 처리 장치(100)는 제1 다운샘플링 블록을 생성할 수 있는 제1 다운샘플링 블록 생성부(102)를 포함할 수 있다. 제1 다운샘플링 블록 생성부(102)는 제1 프레임에 포함된 제1 블록을 다운샘플링 함으로써 제1 다운샘플링 블록을 생성할 수 있다. 제1 블록을 다운샘플링 하는 방식은 다양할 수 있으며 이하의 실시예들에 의하여 한정하여 해석되어서는 안된다. 제1 프레임에 포함된 제1 블록은 제1 프레임의 샘플들 중 일부를 포함하는 블록일 수 있고 제1 프레임의 샘플들 전부를 포함하는 블록일 수도 있다.
도 4는 블록에 포함된 복수의 샘플들을 다운샘플링 하여 다운샘플링 블록을 생성하는 과정을 도시한 것이다. 일 실시예에 따라 영상 처리 장치(100)의 제1 다운샘플링 블록 생성부(102)는 제1 블록(400)을 일정한 방식으로 다운샘플링 하여 제1 다운샘플링 블록(402)을 생성할 수 있다.
도 4를 참조하면 일 실시예에 따라 영상 처리 장치(100)의 제1 다운샘플링 블록 생성부(102)는 제1 블록(400)의 크기를 1/4로 축소시키는 다운샘플링을 수행함으로써 제1 다운샘플링 블록(402)를 생성할 수 있다. 구체적으로 제1 다운샘플링 블록 생성부(102)는 제1 블록의 가로 및 세로의 크기를 절반으로 축소시킴으로써 제1 블록의 크기의 1/4 크기를 가지는 제1 다운샘플링 블록을 생성할 수 있다. 제1 다운샘플링 블록 생성부(102)는 제1 블록의 행 또는 열 방향으로 배열된 2개의 샘플 중 하나의 샘플만을 포함하도록 제1 블록(400)을 다운샘플링 하여 제1 블록의 크기의 1/4 크기를 가지는 제1 다운샘플링 블록(402)을 생성할 수 있다.
도 4에 따르면, 제1 블록(400)과 제2 블록(410)은 서로 유사한 샘플값을 포함하고 있습니다. 단지 제1 블록(400) 및 제2 블록(410)이 서로 다른 프레임 상에 존재함에 따라 샘플의 위치가 서로 다른 관계일 수 있다. 예를 들면, 제1 블록(400)이 포함된 제1 프레임 및 제2 블록(410)이 포함된 제2 프레임은 시간적으로 서로 다른 정보를 포함하는 프레임일 수 있다. 즉, 동적 이미지를 포함하는 영상에서 제1 프레임은 제2 프레임과 다른 시간에 생성된 이미지일 수 있다.
이와 같이, 제1 블록(400)은 제2 블록(410)과 동일한 객체를 촬영한 정보를 포함하지만 해당 객체를 나타내는 복수의 샘플들의 위치가 제1 블록(400) 및 제2 블록(410) 내에서 다를 수 있다. 이에 따라, 제1 블록(400) 및 제2 블록(410)을 동일한 방식으로 다운샘플링 하여 제1 다운샘플링 블록(402) 및 제2 다운샘플링 블록(412)을 생성하는 경우, 동일한 객체에 대한 정보를 포함하는 블록을 다운샘플링 하였음에도 상이한 다운샘플링 블록이 생성될 수 있다. 특히 촬영된 영상이 미세하게 움직이는 객체를 포함하거나 작은 객체를 포함하는 경우와 같이 고주파 성분이 많은 경우, 다운샘플링 결과 생성되는 제1 다운샘플링 블록(402) 및 제2 다운샘플링 블록(412)에는 매우 상이한 방식으로 배치된 샘플이 포함될 수 있다.
영상의 부호화 또는 복호화 과정에서 이용되는 움직임 예측(motion estimation)은 서로 다른 프레임에 포함된 블록을 참조하는 방식으로 수행될 수 있고, 참조하는 블록은 원본 영상에 포함되는 블록일 수 있고 처리의 단순화를 위하여 다운샘플링 된 블록을 이용하는 경우일 수 있다. 원본 블록에 해당하는 제1 블록(400)을 다운샘플링 한 제1 다운샘플링 블록(402)을 참조하여 제2 블록(402)이 제1 블록(400)을 가리키는 움직임 벡터를 결정할 수 있으며, 이 경우 제2 블록(402)을 다운샘플링 한 제2 다운샘플링 블록(412)과 유사한 블록을 찾음으로써 움직임 벡터가 결정될 수 있다. 만일 서로 유사한 제1 블록(400) 및 제2 블록(402)이 고주파 성분이 많은 경우, 제1 블록(400) 및 제2 블록(402)을 동일한 방식으로 다운샘플링 한 제1 다운샘플링 블록(402) 및 제2 다운샘플링 블록(412)은 상대적으로 차이가 큰 정보를 포함할 수 있으며, 이러한 경우 움직임 예측 수행의 효율이 매우 낮아질 수 있다. 도 4를 참조하면, 동일한 방식으로 다운샘플링 한 제1 다운샘플링 블록(402) 및 제2 다운샘플링 블록(412)이 서로 차이가 큼에 따라, 제2 다운샘플링 블록(412)에 기초하여 제2 블록(410)의 움직임 벡터를 제2 블록(410)이 제1 블록(400)을 가리키는 벡터로 결정하는 것이 매우 어려울 수 있다. 이에 따라 이하에서는 다양한 실시예들을 통해 영상 처리 장치(100)가 이하의 현재 프레임에 포함되는 제2 블록(410)을 제1 블록(400)의 다운샘플링 방식과 상이한 방식으로 다운샘플링 하는 방법에 대하여 설명하도록 한다.
S202 단계에서 영상 처리 장치(100)는 일 실시예에 따라 제2 프레임에 포함된 제2 블록을 다운샘플링 하여 복수의 제2 다운샘플링 블록을 생성할 수 있다. 일 실시예에 따라 영상 처리 장치(100)는 제2 블록을 다운샘플링 하여 복수의 제2 다운샘플링 블록을 생성할 수 있는 제2 다운샘플링 블록 생성부(104)를 포함할 수 있다. 제1 다운샘플링 블록 생성부(102)와 달리, 제2 다운샘플링 블록 생성부(104)는 하나의 제2 블록을 다운샘플링 하여 복수개의 제2 다운샘플링 블록들을 생성할 수 있다는 점에서 차이가 있다. 여기서 제2 프레임에 포함된 제2 블록은 제2 프레임의 샘플들 중 일부를 포함하는 블록일 수 있고 제2 프레임의 샘플들 전부를 포함하는 블록일 수도 있다.
도 5는 일 실시예에 따라 제1 다운샘플링 블록 또는 제2 다운샘플링 블록이 생성되는 과정을 도시한다.
도 5를 참조하면, 일 실시예에 따라 영상 처리 장치(100)의 제1 다운샘플링 블록 생성부(102)는 제1 블록(500)의 크기를 1/4로 축소시키는 다운샘플링을 수행함으로써 제1 다운샘플링 블록(502)를 생성할 수 있다. 구체적으로 제1 다운샘플링 블록 생성부(102)는 제1 블록(500)의 가로 및 세로의 크기를 절반으로 축소시킴으로써 제1 블록(500)의 크기의 1/4 크기를 가지는 제1 다운샘플링 블록(502)을 생성할 수 있다. 이러한 제1 다운샘플링 블록(502)을 생성하기 위한 다운샘플링 방식은 다양할 수 있으며 이러한 실시예로 한정하여 해석되어서는 안 된다.
일 실시예에 따라 제2 다운샘플링 블록 생성부(104)는 제2 블록(510)을 다운샘플링 함으로써 다양한 형태의 복수의 제2 다운샘플링 블록(512, 514, 516, 518)을 생성할 수 있다. 도 5를 참조하면, 제2 다운샘플링 블록 생성부(104)는 제2 블록(510)을 다양한 방식으로 다운샘플링 함으로써 복수의 종류의 제2 다운샘플링 블록(512, 514, 516, 518)을 생성할 수 있다. 여기서 제2 블록(510)은 설명의 편의상 제2 프레임에 포함되는 블록으로서 제2 프레임의 샘플들 전부를 포함하는 블록임을 전제로 설명하도록 한다.
일 실시예에 따라 제2 다운샘플링 블록 생성부(104)는 복수의 제2 다운샘플링 블록(512, 514, 516, 518)을 생성하기 위하여 제2 블록(510)을 다운샘플링 할 수 있으며, 다운샘플링 방식은 다양할 수 있다. 예를 들면, 제2 다운샘플링 블록 생성부(104)는 제2 블록(510)내에서 2x2크기를 갖는 각각의 블록에서 4개의 샘플 중 하나를 포함하는 각각의 제2 다운샘플링 블록(512, 514, 516, 518)을 생성할 수 있다.
도 5를 참조하면, 제2 블록(510)내의 2x2크기를 갖는 블록(511)은 4개의 샘플을 포함할 수 있고, 제2 다운샘플링 블록(512, 514, 516, 518)은 이러한 블록(511)의 4개의 샘플들 중 하나를 각각 포함할 수 있다. 예를 들면, 제2 다운샘플링 블록 생성부(104)는 제2 블록(510)을 다운샘플링 하여, 블록(511) 내에서 좌측 상단 샘플을 포함하는 제2 다운샘플링 블록(512), 블록(511) 내에서 우측 상단 샘플을 포함하는 제2 다운샘플링 블록(514), 블록(511) 내에서 좌측 하단 샘플을 포함하는 제2 다운샘플링 블록(516), 블록(511) 내에서 우측 하단 샘플을 포함하는 제2 다운샘플링 블록(518)을 생성할 수 있다. 이와 같이, 제2 다운샘플링 블록 생성부(104)는 제2 블록(510)에 포함된 2x2의 크기를 갖는 블록 내에서의 샘플의 위치를 기준으로, 각각의 위치의 샘플을 포함하는 복수의 제2 다운샘플링 블록(512, 514, 516, 518)을 생성할 수 있다.
도 5를 참조하면, 제2 다운샘플링 블록 생성부(104)가 생성한 복수의 제2 다운샘플링 블록(512, 514, 516, 518)은 서로 다른 샘플들을 포함하고 있을 수 있다. 즉, 동일한 블록인 제2 블록(510)을 다운샘플링 하였음에도 다양한 형태의 복수의 제2 다운샘플링 블록(512, 514, 516, 518)이 생성될 수 있다. 제2 다운샘플링 블록 생성부(104)가 생성한 제2 다운샘플링 블록(512)은 제1 다운샘플링 블록 생성부(102)가 제1 블록(500)을 다운샘플링 하여 제1 다운샘플링 블록(502)을 생성하는 과정에서 이용한 다운샘플링 방식에 대응하는 방식을 이용하여 생성된 것일 수 있다. 이에 따르면, 제2 다운샘플링 블록(512)과 제2 블록(510)의 유사도는 다운샘플링이 수행됨에 따라 크게 떨어지게 될 수 있다. 그 결과, 제2 블록(510)이 제1 블록(500)과 유사하더라도, 제1 다운샘플링 블록(502)과 유사하지 않은 다운샘플링 블록이 생성될 수도 있음에 따라 제2 블록(510)이 제1 블록(500)을 가리키는 움직임 벡터를 결정하기 어려울 수 있다.
이에 반해 제1 다운샘플링 블록(502)의 다운샘플링 방식과 다른 방식으로 다운샘플링 된 제2 다운샘플링 블록들(514, 516, 518) 중 하나의 제2 다운샘플링 블록(514)은 제2 블록(510)과 유사한 형태로 배치된 샘플을 포함하고 있을 수 있다. 즉, 제2 다운샘플링 블록(514)을 이후에 업샘플링(up-sampling)하여 확대시킨 경우 제2 블록(510)과 유사한 형태의 블록이 생성될 수 있다. 이러한 제2 다운샘플링 블록(514)를 이용하는 경우, 제2 블록(510)이 제1 블록(500)을 가리키는 움직임 벡터를 상대적으로 정확히 결정할 수 있다.
도 6은 일 실시예에 따라 영상 처리 장치(100)가 제2 다운샘플링 블록을 생성하기 위해 다운샘플링을 수행하는 방식을 도시한다.
일 실시예에 따라 제2 다운샘플링 블록 생성부(104)가 복수의 제2 다운샘플링 블록을 생성하는 방법은 다양할 수 있다. 즉, 도 5에서처럼 제2 블록(510)에 포함된 샘플들을 전부 다운샘플링 하여 복수의 제2 다운샘플링 블록(512, 514, 516, 518)을 생성할 수도 있으며, 나아가 도 6에서처럼 제2 블록(510)에 포함된 샘플들의 일부를 다운샘플링 하여 복수의 제2 다운샘플링 블록(512, 514, 516, 518)을 생성할 수 있다.
도 6을 참조하면, 일 실시예에 따라 영상 처리 장치(100)의 제1 다운샘플링 블록 생성부(102)는 제1 블록(600)의 크기를 1/4로 축소시키는 다운샘플링을 수행함으로써 제1 다운샘플링 블록(602)를 생성할 수 있다. 이러한 제1 다운샘플링 블록(602)을 생성하기 위한 다운샘플링 방식은 다양할 수 있으며 이러한 실시예로 한정하여 해석되어서는 안 된다.
일 실시예에 따라 영상 처리 장치(100)의 제2 다운샘플링 블록 생성부(104)는 복수의 제2 다운샘플링 블록(612, 614, 616, 618)을 생성하기 위하여 제2 블록(610) 내에서 일부 샘플들을 포함하는 블록(611)을 기준으로 다운샘플링 할 수 있다. 즉, 영상 처리 장치(100)는 제2 블록(610)을 다운샘플링 하기 위하여 제2 블록(610)의 샘플들 일부를 포함하는 블록(611) 단위로 다운샘플링을 수행할 수 있다. 블록(611)을 다운샘플링 하는 방식은 도 5에서 설명한 내용에 대응하는 방식일 수 있으므로 자세한 설명은 생략하도록 한다. 도 6을 참조하면, 영상 처리 장치(100)는 블록(611)을 다운샘플링 함으로써 복수의 제2 다운샘플링 블록(612, 614, 616, 618)을 생성할 수 있으며, 생성된 복수의 제2 다운샘플링 블록(612, 614, 616, 618)의 크기는 블록(611)의 크기의 1/4에 해당할 수 있다. 다만 블록(611)의 다운샘플링 결과 생성되는 제2 다운샘플링 블록(612, 614, 616, 618)과 블록(611)의 크기 비율은 다양할 수 있다.
도 7은 일 실시예에 따라 영상 처리 장치(100)의 제2 다운샘플링 블록 생성부(104)가 제2 다운샘플링 블록을 만드는 또 다른 방법을 도시한다.
일 실시예에 따라 영상 처리 장치(100)의 제1 다운샘플링 블록 생성부(102)는 제1 블록(700)을 다운샘플링 하여 제1 다운샘플링 블록(720)을 생성할 수 있다. 제1 다운샘플링 블록(702)을 생성하는 방법에 대한 구체적인 내용은 다양한 실시예를 통하여 상술하였으므로 생략하도록 한다. 제2 다운샘플링 블록 생성부(104)는 제2 블록(710)을 다운샘플링 하여 복수의 제2 다운샘플링 블록(712, 714)을 생성할 수 있다. 상술한 실시예들에 따르면, 제2 블록(710)을 다운샘플링 하는 경우 제2 블록(710)에 포함되는 모든 샘플들을 각각 다른 방식으로 다운샘플링 하는 것으로 상술하였. 다만 일 실시예에서 설명한 제2 다운샘플링 블록(712, 714) 생성을 위한 다운샘플링 방식은 복수의 다운샘플링 블록을 생성하기 위한 다양한 방식이 있을 수 있다.
도 7을 참조하면, 일 실시예에 따라 제2 다운샘플링 블록 생성부(104)는 복수의 제2 다운샘플링 블록(712, 714)을 생성하기 위하여, 제2 블록(710) 내에서 2x2크기를 갖는 각각의 블록에서 4개의 샘플 중 하나를 포함하는 각각의 제2 다운샘플링 블록(712, 714)을 생성할 수 있다.
제2 블록(710)내의 2x2크기를 갖는 블록(711)은 4개의 샘플을 포함할 수 있고, 제2 다운샘플링 블록(712, 714)은 이러한 블록(511)의 4개의 샘플들 중 하나를 각각 포함할 수 있다. 예를 들면, 제2 다운샘플링 블록 생성부(104)는 제2 블록(710)을 다운샘플링 하여, 블록(711) 내에서 좌측 상단 샘플을 포함하는 제2 다운샘플링 블록(712), 블록(711) 내에서 우측 하단 샘플을 포함하는 제2 다운샘플링 블록(714)을 생성할 수 있다. 이와 같이, 제2 다운샘플링 블록 생성부(104)는 제2 블록(710)에 포함된 2x2의 크기를 갖는 블록 내에서의 샘플의 위치를 기준으로, 각각의 위치의 샘플을 포함하는 복수의 제2 다운샘플링 블록(712, 714)을 생성할 수 있다.
도 7에서의 제2 블록(710)을 다운샘플링 한 결과, 블록(711)에 포함된 4개의 샘플 중 특정 위치에 존재하는 샘플만을 이용하여 다운샘플링 함으로써 2개의 제2 다운샘플링 블록(712, 714)이 생성되었다. 이는 도 5에서 제2 블록(510)을 다운샘플링 하여 4개의 제2 다운샘플링 블록(512, 514, 516, 518)이 생성되는 것과는 다른 다운샘플링 방식에 해당할 수 있다. 4개의 제2 다운샘플링 블록(512, 514, 516, 518)을 생성하지 않고 2개의 제2 다운샘플링 블록(712, 714)만을 생성한다고 하더라도, 제1 다운샘플링 블록(502 또는 702)을 생성하는 방식에 대응하는 방식에 기초하여 생성된 제2 다운샘플링 블록(512 또는 712)에 비하여 상대적으로 제1 다운샘플링 블록(502 또는 702)과 더 유사한 제2 다운샘플링 블록(512 518 또는 714 등)이 생성될 수 있다. 따라서 경우에 따라서는 영상 처리 장치(100)는 다운샘플링 하여 생성되는 복수의 제2 다운샘플링 블록의 개수를 줄이더라도 큰 성능저하를 방지할 수 있으므로 효율적으로 움직임 벡터를 결정할 수 있다. 다만 이러한 제2 다운샘플링 블록(712, 714)을 생성하기 위한 다운샘플링 방식은 복수의 다운샘플링 블록 생성을 위한 다양한 다운샘플링 방식이 될 수 있으며, 이러한 실시예들로 한정하여 해석되어서는 안 된다.
일 실시예에 따라, 복수의 제2 다운샘플링 블록을 생성하는 데 이용되는 다운샘플링 방식의 개수는 제2 블록과 제2 다운샘플링 블록 간의 크기의 비율에 기초하여 결정될 수 있다. 예를 들어 도 5를 참조하면, 제2 다운샘플링 블록 생성부(104)는 제2 블록(510)의 1/4 크기를 갖는 4가지 유형의 제2 다운샘플링 블록(512, 514, 516, 518)을 생성하기 위하여, 2x2의 크기를 갖는 블록(511) 내의 4개의 샘플의 위치를 기준으로 다운샘플링을 수행할 수 있다. 다만 이러한 제2 다운샘플링 블록(512, 514, 516, 518)을 생성하기 위한 다운샘플링 방식은 복수의 다운샘플링 블록 생성을 위한 다양한 다운샘플링 방식이 될 수 있으며, 이러한 실시예들로 한정하여 해석되어서는 안 된다.
도 8은 일 실시예에 따라 영상 처리 장치(100)가 다운샘플링을 수행하여 생성되는 다운샘플링 블록과 원본 블록과의 크기 비율에 기초하여, 영상 처리 장치(100)가 수행 가능한 다운샘플링 방식의 개수가 결정되는 내용을 도시한다.
일 실시예에 따라 영상 처리 장치(100)의 제1 다운샘플링 블록 생성부(102)는 제1 블록(800)을 다운샘플링 하여 제1 블록(800)의 가로 길이의 절반의 가로 길이를 갖는 제1 다운샘플링 블록(802)을 생성할 수 있다. 제1 다운샘플링 블록 생성부(102)는 제1 블록(800)의 가로의 길이를 절반으로 축소시킨 제1 다운샘플링 블록(802)을 생성하기 위하여, 제1 블록(800)의 홀수 번째 열 또는 짝수 번째 열의 샘플들만을 이용하여 다운샘플링을 수행할 수 있다. 도 8을 참조하면, 제1 다운샘플링 블록 생성부(102)는 제1 블록(800)의 홀수 번째 열의 샘플들만을 이용하여 제1 다운샘플링 블록(802)을 생성할 수 있다.
일 실시예에 따라 영상 처리 장치(100)의 제2 다운샘플링 블록 생성부(104)는 제2 블록(810)을 다운샘플링 하여 제2 블록(810)의 가로 길이의 절반의 가로 길이를 갖는 복수의 제2 다운샘플링 블록(812, 814)을 생성할 수 있다. 제2 다운샘플링 블록 생성부(104)는 제2 블록(810)의 가로의 길이를 절반으로 축소시킨 복수의 제2 다운샘플링 블록(812, 814)을 생성하기 위하여, 제2 블록(810)의 홀수 번째 열 및 짝수 번째 열의 샘플들만을 이용하여 다운샘플링을 수행할 수 있다. 도 8을 참조하면, 제2 다운샘플링 블록 생성부(104)는 제2 블록(810)의 홀수 번째 열의 샘플들만을 이용하여 제2 다운샘플링 블록(812)을 생성할 수 있고, 제2 블록(810)의 짝수 번째 열의 샘플들만을 이용하여 제2 다운샘플링 블록(814)을 생성할 수 있다. 즉, 제2 다운샘플링 블록(812, 814)의 크기가 제2 블록(810) 크기의 1/2에 해당하는 경우, 제2 블록(810)을 다운샘플링 하여 생성할 수 있는 복수의 제2 다운샘플링 블록(812, 814)의 개수는 2개에 해당할 수 있다. 다만 상술한 다운샘플링 방법은 특정 비율 또는 특정 크기의 적어도 하나의 다운샘플링 블록을 생성하기 위한 다양한 실시예 중 하나이므로, 다운샘플링 블록과 원본 블록과의 크기 비율에 기초하여 영상 처리 장치(100)가 수행 가능한 다운샘플링 방식의 개수가 결정되는 특징이 상기 실시예에 한정하여 해석되어서는 안 된다.
S204 단계에서 영상 처리 장치(100)는 제1 다운샘플링 블록 및 복수의 제2 다운샘플링 블록을 각각 비교하여, 복수의 제2 다운샘플링 블록 중 하나의 제2 다운샘플링 블록을 선택할 수 있다.
일 실시예에 따라, 제2 다운샘플링 블록 생성부(104)가 제2 블록(510)을 다운샘플링 하여 복수의 제2 다운샘플링 블록(512, 514, 516, 518)을 생성한 경우, 제1 블록(500)을 다운샘플링 하는 방식과 동일한 방식으로 다운샘플링 하여 생성된 제2 다운샘플링 블록 보다 다른 방식으로 다운샘플링 하여 생성된 제2 다운샘플링 블록이 상대적으로 제2 블록(510)과 유사할 수 있다. 제1 블록(500) 및 제2 블록(510)이 서로 유사한 형태로 샘플이 배치되어 있다는 점을 고려하면, 제1 다운샘플링 블록(502)과 비교하여 가장 비슷한 제2 다운샘플링 블록(514)이 선택되어야 제2 블록(510)이 제1 블록(500)을 가리키는 움직임 벡터를 정확히 결정할 수 있다. 따라서 영상 처리 장치(100)는 복수의 제2 다운샘플링 블록(512, 514, 516, 518) 중 제1 다운샘플링 블록(502)과 가장 유사한 블록 하나를 선택할 수 있다. 제1 다운샘플링 블록(502)과 가장 유사한 제2 다운샘플링 블록을 선택하는 방법은 다양할 수 있고, 이하에서 설명되는 실시예들로 한정하여 해석되어서는 안 된다.
일 실시예에 따라 영상 처리 장치(100)는 복수의 제2 다운샘플링 블록(512, 514, 516, 518) 중 제1 다운샘플링 블록(502)과 가장 유사한 블록 하나를 선택하기 위하여, 제1 다운샘플링 블록(502)과 복수의 제2 다운샘플링 블록(512, 514, 516, 518)의 SAD(Sum of Absolute Difference)를 비교할 수 있다. 즉, 영상 처리 장치(100)는 제1 다운샘플링 블록(502)과 복수의 제2 다운샘플링 블록(512, 514, 516, 518) 간의 SAD를 비교하여 가장 SAD 값이 작은 제2 다운샘플링 블록을 제1 다운샘플링 블록(502)과 가장 유사한 블록으로 선택할 수 있다. 예를 들어, SAD는 아래의 수학식 1과 같이 계산될 수 있다.
Figure 112015113172375-pat00001
일 실시예에 따라, Bcur는 제2 다운샘플링 블록(512, 514, 516, 518)에 포함되는 현재 블록일 수 있고, Bref는 제1 다운샘플링 블록(502)에 포함되는 참조 블록일 수 있다. i, j는 현재 블록의 위치를 나타낼 수 있고, k, l은 참조 블록의 위치를 나타낼 수 있다.
일 실시예에 따라, 영상 처리 장치(100)는 블록(611)을 다운샘플링 함으로써 생성된 복수의 제2 다운샘플링 블록(612, 614, 616, 618)과 제1 다운샘플링 블록(602)을 비교하여 복수의 제2 다운샘플링 블록(612, 614, 616, 618) 중 하나를 선택할 수 있다. 예를 들면, 복수의 제2 다운샘플링 블록(612, 614, 616, 618) 중 제1 다운샘플링 블록(602)과 가장 유사한 블록을 선택할 수 있다. 영상 처리 장치(100)는 복수의 제2 다운샘플링 블록(612, 614, 616, 618) 각각에 대하여 제1 다운샘플링 블록(602)과 얼마나 유사한지를 나타내는 유사도를 결정하고, 복수의 제2 다운샘플링 블록(612, 614, 616, 618) 각각에 대한 결정된 유사도끼리 비교하였을 때 복수의 제2 다운샘플링 블록(612, 614, 616, 618) 중 어떤 블록이 제1 다운샘플링 블록(602)와 가장 유사한지 여부를 판단하여 복수의 제2 다운샘플링 블록(612, 614, 616, 618) 중 하나를 선택할 수 있다.
일 실시예에 따라 영상 처리 장치(100)는 복수의 제2 다운샘플링 블록(612, 614, 616, 618) 중 제1 다운샘플링 블록(602)과 가장 유사한 블록 하나를 선택하기 위하여, 제1 다운샘플링 블록(602)과 복수의 제2 다운샘플링 블록(612, 614, 616, 618)간의 SAD를 비교할 수 있다. SAD는 상술한 수학식 1에 대응하는 식에 기초하여 결정될 수 있다. 일 실시예에 따라, Bcur는 제2 다운샘플링 블록(612, 614, 616, 618)에 포함되는 현재 블록일 수 있고, Bref는 제1 다운샘플링 블록(602)에 포함되는 참조 블록일 수 있다. i, j는 현재 블록의 위치를 나타낼 수 있고, k, l은 참조 블록의 위치를 나타낼 수 있다.
S206 단계에서 영상 처리 장치(100)의 움직임 벡터 결정부(106)는 제1 다운샘플링 블록 및 선택된 제2 다운샘플링 블록에 기초하여 제2 블록이 제1 블록을 가리키는 움직임 벡터를 결정할 수 있다.
도 9A 및 도 9B는 일 실시예에 따라, 영상 처리 장치(100)가 선택한 제2 다운샘플링 블록에 기초하여 제2 블록이 제1 블록을 가리키는 움직임 벡터를 결정하는 과정을 도시한다.
일 실시예에 따라, 영상 처리 장치(100)는 제2 블록(912)의 복원을 위하여 제2 프레임(910)과 상이한 프레임인 제1 프레임(900)에서 제2 블록(912)과 유사한 정보를 포함하는 블록을 이용할 수 있다. 제2 블록(912)과 유사한 블록을 제1 프레임(900)상에서 결정하기 위하여, 제2 블록(912)과 관련된 움직임 벡터를 결정할 수 있다. 움직임 벡터가 가리키는 제1 프레임(900) 상의 특정 블록의 정보를 이용하여 제2 블록(912)에 대한 복원이 수행될 수 있다. 제2 블록(912)을 다운샘플링 하여 생성한 복수의 제2 다운샘플링 블록들 중 제1 블록(902)을 다운샘플링 하여 생성한 제1 다운샘플링 블록과 가장 유사한 것으로 선택된 제2 다운샘플링 블록에 의해, 제2 프레임(910)에서 제2 블록(912)과 가장 유사한 블록이 제1 블록(902)인 것으로 결정될 수 있다.
도 3은 일 실시예에 따라, 영상 처리 장치(100)가 복수의 제2 다운샘플링 블록이 다운샘플링 된 방식에 기초하여 움직임 벡터를 결정하기 위한 방법에 대한 흐름도 이다.
S300 단계에서 영상 처리 장치는 일 실시예에 따라 제1 프레임에 포함된 제1 블록을 다운샘플링 하여 제1 다운샘플링 블록을 생성할 수 있다. S300 단계에서의 영상 처리 장치(100)의 동작에 대한 내용은 도 2의 S200 단계와 관련하여 상술하였으므로 자세한 내용은 생략하도록 한다.
S302 단계에서 영상 처리 장치(100)는 일 실시예에 따라 제2 프레임에 포함된 제2 블록을 다운샘플링 하여 복수의 제2 다운샘플링 블록을 생성할 수 있다. S302 단계에서의 영상 처리 장치(100)의 동작에 대한 내용은 도 2의 S202 단계와 관련하여 상술하였으므로 자세한 내용은 생략하도록 한다.
S3-4 단계에서 영상 처리 장치(100)는 일 실시예에 따라 복수의 제2 다운샘플링 블록을 식별하기 위한 식별 정보를 결정할 수 있다.
도 9A를 참조하면, 제1 프레임(900) 및 제2 프레임(910)을 포함하는 영상을 복원하기 위하여, 각 프레임에 포함되는 적어도 하나의 블록을 다운샘플링 하고 다운샘플링 된 블록에 기초하여 움직임 벡터를 구할 수 있다. 구체적으로, 제2 프레임(910)이 복수의 블록으로 분할되고, 각각의 복수의 블록에 대하여 제1 프레임(900) 상에서 각 블록과 가장 유사한 블록을 가리키는 움직임 벡터가 추정(estimation) 될 수 있다. 제1 프레임(900) 및 제2 프레임(910) 상의 블록을 다운샘플링 된 블록끼리 비교하여 가장 유사한 블록인 것으로 결정된 경우, 제2 프레임(910) 상의 블록이 제1 프레임 상의 가장 유사한 블록을 가리키는 움직임 벡터를 획득하기 위해서는 다운샘플링 블록에 기초하여 획득된 벡터를 다운샘플링 비율을 고려하여 업샘플링을 수행하여야 한다. 즉, 블록의 가로 및 세로 크기를 1/2로 하는 다운샘플링 블록에 기초하여 벡터가 획득된 경우, 원 영상에서의 움직임 벡터를 결정하기 위하여 획득된 벡터값의 좌표값의 크기를 2배로 증가시킴으로써 원 영상에서의 움직임 벡터(905)를 결정할 수 있다. 다만 이러한 경우 움직임 벡터의 좌표값이 짝수인 경우에만 해당할 수 있으므로 홀수개의 샘플만큼 움직이는 피사체를 포함하거나 고주파 성분이 많은 영상에서는 정확한 움직임 벡터를 결정하는 것이 어려울 수 있다.
도 9B는, 일 실시예에 따라 영상 처리 장치(100)가 제2 프레임(960)을 분할하는 복수개의 블록 중 하나인 제2 블록(962)이 제1 프레임(950) 상의 제1 블록(952)을 가리키는 움직임 벡터(955)를 결정하는 과정을 도시한다.
일 실시예에 따라 영상 처리 장치(100)의 제2 다운샘플링 블록 생성부(104)는 제2 블록(960)에 포함되는 복수의 샘플 중 일부를 포함하는 복수의 제2 다운샘플링 블록(970, 972, 974, 976)을 생성할 수 있으며, 복수의 제2 다운샘플링 블록(970, 972, 974, 976)을 생성하는 방법은 상술한 다양한 실시예에서 설명하였으므로 자세한 설명은 생략하도록 한다.
일 실시예에 따라, 영상 처리 장치(100)는 제2 다운샘플링 블록 생성부(104)가 제2 블록(962)에서 생성한 제2 다운샘플링 블록(970, 972, 974, 976)을 식별하기 위한 식별 정보를 결정할 수 있다. 예를 들면, 영상 처리 장치(100)는, 제2 블록(962)에 포함되는 블록(964) 내에서 좌측 상단 샘플을 포함하는 제2 다운샘플링 블록(970)에 대한 식별 정보로서 (0,0), 블록(964) 내에서 우측 상단 샘플을 포함하는 제2 다운샘플링 블록(972)에 대한 식별 정보로서 (1,0), 블록(964) 내에서 좌측 하단 샘플을 포함하는 제2 다운샘플링 블록(974)에 대한 식별 정보로서 (0,1), 블록(964) 내에서 우측 하단 샘플을 포함하는 제2 다운샘플링 블록(976)에 대한 식별 정보로서 (1,1)을 결정할 수 있다. 이러한 식별 정보는 제2 블록(962)에서 다운샘플링이 수행된 방식에 따라 구분될 수 있는 복수의 제2 다운샘플링 블록(970, 972, 974, 976)마다 정의될 수 있으며, 복수의 제2 다운샘플링 블록(970, 972, 974, 976)들 간의 상대적인 좌표를 나타내는 정보일 수 있다. 예를 들면, 식별 정보가 (0,0)인 제2 다운샘플링 블록(970)을 기준으로 하였을 때, 식별 정보가 (1,0)인 제2 다운샘플링 블록(972)은 식별 정보가 (0,0)인 제2 다운샘플링 블록(970)이 다운샘플링 된 방식에 비하여 행 방향(또는 오른쪽 방향)으로 하나의 샘플만큼 이동하여 다운샘플링 됨으로써 생성된 다운샘플링 블록인 것을 나타낼 수 있다. 또 다른 예를 들면, 식별 정보가 (0,0)인 제2 다운샘플링 블록(970)을 기준으로 하였을 때, 식별 정보가 (0,1)인 제2 다운샘플링 블록(974)은 식별 정보가 (0,0)인 제2 다운샘플링 블록(970)이 다운샘플링 된 방식에 비하여 열 방향(또는 아래 방향)으로 하나의 샘플만큼 이동하여 다운샘플링 됨으로써 생성된 다운샘플링 블록인 것을 나타낼 수 있다.
S306 단계에서 영상 처리 장치(100)는 제1 다운샘플링 블록 및 복수의 제2 다운샘플링 블록을 각각 비교하여, 복수의 제2 다운샘플링 블록 중 하나의 제2 다운샘플링 블록을 선택할 수 있다. S306 단계에서의 영상 처리 장치(100)의 동작에 대한 내용은 도 2의 S204 단계와 관련하여 상술하였으므로 자세한 내용은 생략하도록 한다.
S308 단계에서 영상 처리 장치(100)는 일 실시예에 따라 복수의 제2 다운샘플링 블록 중 상대적 좌표의 기준이 되는 제2 다운샘플링 블록과 관련된 움직임 벡터를 결정할 수 있다.
도 9B를 참조하면, 일 실시예에 따라 복수의 제2 다운샘플링 블록(970, 972, 974 및 976)은 각각 (0,0), (1,0), (0,1) 및 (1,1)에 해당하는 식별 정보와 관련된 블록일 수 있다. 여기서 복수의 다운샘플링 블록(970, 972, 974 및 976) 중 제2 다운샘플링 블록(970)의 식별 정보 (0,0)가 식별 정보들과 관련된 상대적 좌표의 기준이 될 수 있다. 움직임 벡터 결정부(106)는 기준으로 선택한 제2 다운샘플링 블록(970)과 관련된 움직임 벡터를 결정할 수 있다. 예를 들면, 기준으로 선택된 식별 정보 (0,0)에 대응하는 제2 다운샘플링 블록(970)과 관련된 움직임 벡터를 결정할 수 있다.
일 실시예에 따라, 복수의 제2 다운샘플링 블록 (970, 972, 974 및 976) 중 제1 블록(954)을 다운샘플링 하는 방식에 대응하는 방식으로 다운샘플링 된 제2 다운샘플링 블록(970)이 상대적 좌표의 기준이 되는 제2 다운샘플링 블록으로 결정될 수 있다. 예를 들면, 제1 블록(954) 및 제2 블록(962)이 각각 동일한 크기의 블록이고, 영상 처리 장치(100)가 각 블록을 동일한 방식으로 다운샘플링 하여 다운샘플링 블록들을 생성한 경우, 제2 블록(962)에 대한 다운샘플링 블록은 제1 블록(954)을 가리키는 움직임 벡터를 결정하기 위한 상대적 좌표의 기준이 되는 제2 다운샘플링 블록으로 결정될 수 있다. 이하에서는 도 9B와 관련하여, 설명 상 편의를 위해 제2 다운샘플링 블록(970)이 상대적 좌표의 기준이 되는 제2 다운샘플링 블록으로 결정된 것을 전제로 설명하도록 한다. 다만 기준이 되는 제2 다운샘플링 블록을 설정하는 방법은 상기 실시예에 한정하여 해석되어서는 안 되며, 다양한 실시예들에서 이용될 수 있는 복수의 제2 다운샘플링 블록들 중 하나를 기준으로 선택할 수 있는 다양한 방식이 이용될 수 있다.
도 5를 참조하면 일 실시예에 따라 영상 처리 장치(100)의 제1 다운샘플링 블록 생성부(102) 및 제2 다운샘플링 블록 생성부(104)는 각각 제1 다운샘플링 블록(502) 및 복수의 제2 다운샘플링 블록(512, 514, 516, 518)을 생성할 수 있다. 이러한 과정을 통해 생성된 다운샘플링 블록들은 다운샘플링 되기 전의 원본 블록에 비해 1/4 크기를 가질 수 있다. 일 실시예에 따라 제2 다운샘플링 블록의 움직임 벡터는 원본 블록에서 다운샘플링 블록으로 다운샘플링 한 비율과 동일한 비율로 원본 프레임을 축소시킨 다운샘플링 프레임을 기준으로 결정될 수 있다.
S310 단계에서 영상 처리 장치(100)는 일 실시예에 따라 기준이 되는 제2 다운샘플링 블록과 관련된 움직임 벡터의 크기를 제2 블록의 다운샘플링 비율에 기초하여 확대시킬 수 있다. 도 5를 참조하였을 때 일 실시예에 따라 다운샘플링 블록인 제2 다운샘플링 블록(512, 514, 516, 518)이 제1 다운샘플링 블록(502)을 가리키는 움직임 벡터의 크기는 원본 블록인 제2 블록(510)이 제1 블록(500)을 가리키는 움직임 벡터의 크기의 절반에 해당할 수 있다. 이 경우, 기준으로 선택된 식별 정보 (0,0)에 대응하는 제2 다운샘플링 블록(970)의 움직임 벡터를 2배로 확대시킬 수 있다. 이렇게 확대된 벡터값에 대한 좌표값은 짝수 값만을 가질 수 있다. 따라서 업스케일링 한 벡터만을 움직임 추정에 이용하는 경우, 홀수 샘플만큼 움직이는 피사체가 프레임에 포함되는 경우 제2 블록(510)의 움직임 벡터의 정확도가 떨어질 수 있다. 따라서 제2 블록과 관련된 제2 다운샘플링 블록(512, 514, 516, 518)에 대한 정보를 이용하여 확대된 벡터값을 보정할 필요가 있다.
S312 단계에서 영상 처리 장치(100)는 S306 단계에서 선택된 제2 다운샘플링 블록의 식별 정보를 이용하여, 확대된 움직임 벡터를 보정할 수 있다.
일 실시예에 따라 영상 처리 장치(100)는 제1 블록(954)을 다운샘플링 한 블록과 가장 유사한 블록으로서 식별 정보가 (1,0)에 해당하는 제2 다운샘플링 블록(972)을 선택하고, 선택된 제2 다운샘플링 블록(972)와 관련된 식별 정보를 이용하여 움직임 벡터를 이용하여 확대된 움직임 벡터를 보정할 수 있다.
도 9B를 참조하면, 일 실시예에 따라 영상 처리 장치(100)는 복수의 제2 다운샘플링 블록(970, 972, 974 및 976) 중 각각의 식별 정보들이 나타내는 상대적 좌표의 기준으로서 제2 다운샘플링 블록(970)의 식별 정보를 선택할 수 있다. 영상 처리 장치(100)는 제2 블록(962)과 관련된 복수의 제2 다운샘플링 블록(970, 972, 974 및 976) 중 제1 블록(954)을 다운샘플링 한 블록과 가장 유사한 블록으로서 식별 정보가 (1,0)에 해당하는 제2 다운샘플링 블록(972)을 선택할 수 있다. 제1 블록(954)을 다운샘플링 한 블록과 가장 유사한 블록으로서 식별 정보가 (1,0)에 해당하는 제2 다운샘플링 블록(972)을 선택하는 방법은 상술한 다양한 실시예를 통하여 설명하였으므로 이에 대한 자세한 설명은 생략하도록 한다.
일 실시예에 따라 식별 정보가 (1,0)에 해당하는 제2 다운샘플링 블록(972)이 제1 블록(954)을 다운샘플링 한 블록과 가장 유사한 것으로서 선택될 수 있고, 영상 처리 장치(100)의 움직임 벡터 결정부(106)는 선택된 제2 다운샘플링 블록(972)과 관련된 식별 정보 (1,0)을 이용하여 S310 단계에서 영상 처리 장치(100)가 확대한 벡터값을 보정할 수 있다. 예를 들면, 벡터값을 확대시킴에 따라 벡터의 좌표 값이 짝수 값만을 가지게 될 경우에 움직임 벡터의 정확도의 저하 문제가 발생될 수 있으므로, 영상 처리 장치(100)의 움직임 벡터 결정부(106)는 복수의 제2 다운샘플링 블록과 관련된 식별 정보를 이용하여 움직임 벡터가 짝수 값만이 아닌 홀수 값으로도 결정될 수 있도록 보정할 수 있다.
일 실시예에 따라, 영상 처리 장치(100)의 움직임 벡터 결정부(106)는, 식별 정보가 나타내는 상대적 좌표의 기준이 되는 다운샘플링 블록으로 선택된 제2 다운샘플링 블록(970)의 움직임 벡터를, 제1 블록(954)을 다운샘플링 한 블록과 가장 유사한 블록으로 선택된 제2 다운샘플링 블록(972)의 식별 정보 (1,0)를 이용하여 보정할 수 있다.
움직임 벡터 결정부(106)는 제2 다운샘플링 블록(970)이 제1 블록(954)을 다운샘플링 한 블록을 가리키는 움직임 벡터값(예를 들면, (x,y))을 다운샘플링 비율에 기초하여 확대하여 확대된 벡터값을 결정할 수 있다. 예를 들면, 제2 블록(962)의 가로 및 세로의 크기의 1/2의 크기가 되도록 다운샘플링 함으로써 제2 다운샘플링 블록(970, 972, 974, 976)이 생성되는 경우, 확대된 벡터값은 (2x, 2y) 으로 결정될 수 있다. 확대된 벡터값은 제1 블록(954)을 다운샘플링 한 블록과 가장 유사한 블록으로 선택된 제2 다운샘플링 블록(972)의 식별 정보 (1,0)를 이용하여 보정될 수 있으며, 보정된 결과 확대된 벡터값이 홀수 값을 가질 수 있도록 보정될 수 있다. 예를 들면, 제2 다운샘플링 블록(972)의 식별 정보 (1,0)를 이용하여 확대된 벡터값 (2x, 2y)을 보정함으로써 (2x-1, 2y)의 값을 갖는 움직임 벡터를 결정할 수 있다. 제2 블록(962)이 제1 블록(954)을 가리키는 확대된 벡터값 (2x, 2y)이 보정됨으로써, 영상 처리 장치(100)의 움직임 벡터 결정부(106)는 보정된 움직임 벡터(2x-1, 2y)(예를 들면, 955)를 이용하여 제2 블록(962)의 움직임 벡터가 가리키는 블록을 위치가 변경된 제1 블록(952)으로 변경할 수 있다. 제2 블록(962)이 가리키는 제1 프레임(950) 상의 블록이 제1 블록(952)으로 변경됨에 따라, 영상 처리 장치(100)는 상대적으로 정확히 제2 블록(962)과 유사한 블록을 제1 프레임(950) 상에서 결정할 수 있다. 다만 다운샘플링을 통해 제2 블록(962)의 가로 및 세로의 크기가 축소된 제2 다운샘플링 블록(970, 972, 974, 976)이 생성되는 방식은 다양할 수 있다. 따라서 만일, 가로 및 세로의 크기가 1/n의 크기로 축소될 수 있으며, 이러한 경우 확대된 벡터값은 (nx, ny) 으로 결정될 수도 있다.
즉, 제1 블록(954)을 다운샘플링 한 블록과 가장 유사한 블록으로 선택된 제2 다운샘플링 블록(972)은 기준이 되는 제2 다운샘플링 블록(970)에 비하여, 제2 블록(962) 내에서 하나의 샘플만큼 오른쪽에 위치하는 샘플들을 이용하여 다운샘플링 되어 생성된 것일 수 있다. 이에 따라, 기준이 되는 제2 다운샘플링 블록(970)이 제1 블록(954)을 다운샘플링 하여 생성된 블록을 가리키는 벡터값을 확대함으로써 생성된 벡터값 (2x, 2y)보다 하나의 샘플만큼 왼쪽에 있는 블록을 가리키도록 식별 정보 (1,0)만큼 벡터 값을 감소시킬 수 있다.
한편, 본 발명은 컴퓨터 판독가능 저장매체에 컴퓨터가 판독 가능한 코드를 저장하여 구현하는 것이 가능하다. 컴퓨터 판독가능 저장매체는 컴퓨터 시스템에 의하여 판독될 수 있는 데이터가 저장되는 모든 종류의 저장 장치를 포함한다.
컴퓨터가 판독 가능한 코드는, 컴퓨터 판독가능 저장매체로부터 프로세서에 의하여 독출되어 실행될 때, 본 발명에 따른 객체 배열 방법을 구현하는 단계들을 수행하도록 구성된다. 컴퓨터가 판독 가능한 코드는 다양한 프로그래밍 언어들로 구현될 수 있다. 그리고 본 발명의 실시예들을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 통상의 기술자들에 의하여 용이하게 프로그래밍될 수 있다.
컴퓨터 판독가능 저장매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있다. 또한, 컴퓨터 판독가능 저장매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 판독 가능한 코드가 저장되고 실행되는 것도 가능하다.
이상과 첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.

Claims (19)

  1. 영상을 처리하는 방법에 있어서,
    제1 프레임에 포함된 제1 블록을 다운 샘플링(down-sampling)하여 제1 다운샘플링 블록을 생성하는 단계;
    제2 프레임에 포함된 제2 블록을 다운 샘플링 하여 복수의 제2 다운샘플링 블록을 생성하는 단계;
    상기 제1 다운샘플링 블록 및 상기 복수의 제2 다운샘플링 블록을 각각 비교하여, 상기 복수의 제2 다운샘플링 블록 중 하나의 제2 다운샘플링 블록을 선택하는 단계; 및
    상기 제1 다운샘플링 블록 및 상기 선택된 제2 다운샘플링 블록에 기초하여 상기 제2 블록이 상기 제1 블록을 가리키는 움직임 벡터를 결정하는 단계를 포함하고,
    상기 복수의 제2 다운샘플링 블록은 각각 서로 다른 다운샘플링 방식을 이용하여 생성되고,
    상기 복수의 제2 다운샘플링 블록을 생성하는 데 이용되는 서로 다른 다운샘플링 방식의 개수는 상기 제2 블록과 상기 제2 다운샘플링 블록 간의 크기의 비율에 기초하여 결정되는 것을 특징으로 하는 영상 처리 방법.
  2. 제 1 항에 있어서,
    상기 영상 처리 방법은 상기 복수의 제2 다운샘플링 블록을 식별하기 위한 식별 정보를 결정하는 단계를 더 포함하고,
    상기 움직임 벡터를 결정하는 단계는 상기 선택된 제2 다운샘플링 블록의 식별 정보에 기초하여 상기 움직임 벡터를 결정하는 단계를 포함하는 것을 특징으로 하는 영상 처리 방법.
  3. 제 2 항에 있어서,
    상기 식별 정보는 상기 복수의 제2 다운샘플링 블록 간의 상대적 좌표를 나타내는 것을 특징으로 하고,
    상기 움직임 벡터를 결정하는 단계는 상기 복수의 제2 다운샘플링 블록 중 상기 상대적 좌표의 기준이 되는 제2 다운샘플링 블록과 관련된 움직임 벡터를 결정하는 단계를 더 포함하는 것을 특징으로 하는 영상 처리 방법.
  4. 제 3 항에 있어서, 상기 움직임 벡터를 결정하는 단계는
    상기 기준이 되는 제2 다운샘플링 블록과 관련된 움직임 벡터의 크기를 상기 제2 블록의 다운샘플링 비율에 기초하여 확대하는 단계; 및
    상기 선택된 제2 다운샘플링 블록의 식별 정보를 이용하여, 상기 확대된 움직임 벡터를 보정하는 단계를 더 포함하는 것을 특징으로 하는 영상 처리 방법.
  5. 제 3 항에 있어서, 상기 기준이 되는 제2 다운샘플링 블록과 관련된 움직임 벡터를 결정하는 단계는,
    상기 복수의 제2 다운샘플링 블록 중, 상기 제1 다운샘플링 블록의 생성 과정에서 이용된 다운 샘플링 방식에 기초하여 생성된 제2 다운샘플링 블록을 상기 기준이 되는 제2 다운샘플링 블록으로 결정하는 단계를 더 포함하는 것을 특징으로 하는 영상 처리 방법.
  6. 제 1 항에 있어서, 상기 복수의 제2 다운샘플링 블록을 생성하는 단계는
    상기 제2 블록에서 서로 다른 위치에 있는 샘플들에 기초한 다운 샘플링을 수행하여 상기 복수의 제2 다운샘플링 블록을 생성하는 단계를 포함하는 것을 특징으로 하는 영상 처리 방법.
  7. 제 1 항에 있어서,
    상기 다운 샘플링은 가로 및 세로 중 적어도 하나의 방향으로 축소된 크기를 가지는 블록을 생성하는 방식인 것을 특징으로 하는 영상 처리 방법.
  8. 삭제
  9. 제 1 항에 있어서, 상기 선택된 제2 다운샘플링 블록을 결정하는 단계는
    상기 제1 다운샘플링 블록과 상기 복수의 제2 다운샘플링 블록 간의 차이와 관련된 정보를 나타내는 SAD(Sum of Absolute Difference)에 기초하여 상기 선택된 제2 다운샘플링 블록을 결정하는 단계를 포함하는 것을 특징으로 하는 영상 처리 방법.
  10. 영상을 처리하는 장치에 있어서,
    현재 프레임과 구별되는 이전 프레임에 포함된 제1 블록을 다운 샘플링(down-sampling)하여 제1 다운샘플링 블록을 생성하는 제1 다운샘플링 블록 생성부;
    상기 현재 프레임에 포함된 제2 블록을 다운 샘플링 하여 복수의 제2 다운샘플링 블록을 생성하는 제2 다운샘플링 블록 생성부;
    상기 제1 다운샘플링 블록 및 상기 복수의 제2 다운샘플링 블록을 각각 비교함으로써 상기 복수의 제2 다운샘플링 블록 중 하나의 제2 다운샘플링 블록을 선택하고, 상기 제1 다운샘플링 블록 및 상기 선택된 제2 다운샘플링 블록에 기초하여 상기 제2 블록이 상기 제1 블록을 가리키는 움직임 벡터를 결정하는 움직임 벡터 결정부를 포함하고,
    상기 복수의 제2 다운샘플링 블록은 각각 서로 다른 다운 샘플링 방식을 이용하여 생성되고,
    상기 복수의 제2 다운샘플링 블록을 생성하는 데 이용되는 서로 다른 다운샘플링 방식의 개수는 상기 제2 블록과 상기 제2 다운샘플링 블록 간의 크기의 비율에 기초하여 결정되는 것을 특징으로 하는 영상 처리 장치.
  11. 제 10 항에 있어서,
    상기 움직임 벡터 결정부는 상기 복수의 제2 다운샘플링 블록을 식별하기 위한 식별 정보를 결정하고, 상기 선택된 제2 다운샘플링 블록의 식별 정보에 기초하여 상기 움직임 벡터를 결정하는 것을 특징으로 하는 영상 처리 장치.
  12. 제 11 항에 있어서,
    상기 식별 정보는 상기 복수의 제2 다운샘플링 블록 간의 상대적 좌표를 나타내는 것을 특징으로 하고,
    상기 움직임 벡터 결정부는 상기 복수의 제2 다운샘플링 블록 중 상기 상대적 좌표의 기준이 되는 제2 다운샘플링 블록과 관련된 움직임 벡터를 결정하는 것을 특징으로 하는 영상 처리 장치.
  13. 제 12 항에 있어서, 상기 움직임 벡터 결정부는
    상기 기준이 되는 제2 다운샘플링 블록과 관련된 움직임 벡터의 크기를 상기 제2 블록의 다운샘플링 비율에 기초하여 확대하고, 상기 선택된 제2 다운샘플링 블록의 식별 정보를 이용하여 상기 확대된 움직임 벡터를 보정하는 것을 특징으로 하는 영상 처리 장치.
  14. 제 12 항에 있어서, 상기 움직임 벡터 결정부는,
    상기 복수의 제2 다운샘플링 블록 중, 상기 제1 다운샘플링 블록의 생성 과정에서 이용된 다운 샘플링 방식에 기초하여 생성된 제2 다운샘플링 블록을 상기 기준이 되는 제2 다운샘플링 블록으로 결정하는 것을 특징으로 하는 영상 처리 장치.
  15. 제 10 항에 있어서, 상기 제2 다운샘플링 블록 생성부는,
    상기 제2 블록에서 서로 다른 위치에 있는 샘플들에 기초한 다운 샘플링을 수행하여 상기 복수의 제2 다운샘플링 블록을 생성하는 것을 특징으로 하는 영상 처리 장치.
  16. 제 10 항에 있어서,
    상기 다운 샘플링은 가로 및 세로 중 적어도 하나의 방향으로 축소된 크기를 가지는 블록을 생성하는 방식인 것을 특징으로 하는 영상 처리 장치.
  17. 삭제
  18. 제 10 항에 있어서, 상기 움직임 벡터 결정부는
    상기 제1 다운샘플링 블록과 상기 복수의 제2 다운샘플링 블록 간의 차이와 관련된 정보를 나타내는 SAD(Sum of Absolute Difference)에 기초하여 상기 선택된 제2 다운샘플링 블록을 결정하는 것을 특징으로 하는 영상 처리 장치.
  19. 제 1 항의 영상 처리 방법을 구현하기 위한 프로그램이 저장된 컴퓨터 판독 가능 기록매체.
KR1020150162847A 2015-11-19 2015-11-19 영상에서 움직임 벡터를 결정하는 방법 및 장치 KR102230268B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020150162847A KR102230268B1 (ko) 2015-11-19 2015-11-19 영상에서 움직임 벡터를 결정하는 방법 및 장치
US15/222,190 US10536713B2 (en) 2015-11-19 2016-07-28 Method and apparatus for determining motion vector in video

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150162847A KR102230268B1 (ko) 2015-11-19 2015-11-19 영상에서 움직임 벡터를 결정하는 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20170058792A KR20170058792A (ko) 2017-05-29
KR102230268B1 true KR102230268B1 (ko) 2021-03-19

Family

ID=58721468

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150162847A KR102230268B1 (ko) 2015-11-19 2015-11-19 영상에서 움직임 벡터를 결정하는 방법 및 장치

Country Status (2)

Country Link
US (1) US10536713B2 (ko)
KR (1) KR102230268B1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10411798B2 (en) * 2017-07-13 2019-09-10 Qualcomm Incorporated Power optimized VLC signal processing with efficient handling of ISP/VFE
KR102031005B1 (ko) * 2018-03-12 2019-10-11 성균관대학교산학협력단 LED-to-Camera 시스템에서 데이터를 획득하는 방법 및 장치
CN113329228B (zh) * 2021-05-27 2024-04-26 杭州网易智企科技有限公司 视频编码方法、解码方法、装置、电子设备及存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1032822A (ja) * 1996-07-16 1998-02-03 Oki Electric Ind Co Ltd 動きベクトル検出装置
US20070268964A1 (en) * 2006-05-22 2007-11-22 Microsoft Corporation Unit co-location-based motion estimation
JP2007324830A (ja) 2006-05-31 2007-12-13 Toshiba Corp フレームレート変換装置及びフレームレート変換方法
US8160150B2 (en) * 2007-04-10 2012-04-17 Texas Instruments Incorporated Method and system for rate distortion optimization
US8325815B2 (en) * 2010-02-08 2012-12-04 Himax Technologies Limited Method and system of hierarchical motion estimation
KR102138368B1 (ko) 2013-07-19 2020-07-27 삼성전자주식회사 적응적 샘플링에 기초한 계층적 움직임 예측 방법 및 움직임 예측 장치

Also Published As

Publication number Publication date
US20170150170A1 (en) 2017-05-25
KR20170058792A (ko) 2017-05-29
US10536713B2 (en) 2020-01-14

Similar Documents

Publication Publication Date Title
JP3576987B2 (ja) 画像のテンプレートマッチング方法及び画像処理装置
US7899122B2 (en) Method, apparatus and computer program product for generating interpolation frame
KR102263625B1 (ko) 티어드 신호 품질 계층에서의 모션 맵들 및 다른 보조 맵들의 업샘플링 및 다운샘플링
US8098962B2 (en) Signal processing method, apparatus, and program
US9262684B2 (en) Methods of image fusion for image stabilization
JP6512100B2 (ja) 画像処理を実行する情報処理装置及び画像処理方法
US9781382B2 (en) Method for determining small-object region, and method and apparatus for interpolating frame between video frames
KR102230268B1 (ko) 영상에서 움직임 벡터를 결정하는 방법 및 장치
KR102244187B1 (ko) 예외적 움직임에 강인한 비디오 프레임 보간 방법 및 그 장치
JP2011071986A (ja) 低解像度ビデオから高解像度ビデオを生成する方法
WO2018230294A1 (ja) 動画像処理装置、表示装置、動画像処理方法、および制御プログラム
JP2010165052A (ja) 画像処理装置及び画像処理方法
CN109937573B (zh) 用于光场压缩和解压缩的系统和方法
CN106530231B (zh) 一种基于深层协作表达的超分辨率图像的重建方法及系统
US9582893B2 (en) Motion vector detector, distance detector, motion vector detection method and computer program product
JP4385077B1 (ja) 動きベクトル検出装置および画像処理装置
CN108475414B (zh) 图像处理方法和装置
WO2021211771A1 (en) Systems and methods for optical flow estimation
JP2015197818A (ja) 画像処理装置およびその方法
JP2006215657A (ja) 動きベクトル検出方法、動きベクトル検出装置、動きベクトル検出プログラム及びプログラム記録媒体
JP5702960B2 (ja) 画像処理装置、画像処理方法、及びプログラム
KR20170087734A (ko) 그라디언트 정보를 이용한 고해상도 영상 생성 장치 및 방법
US20230110665A1 (en) Image processing apparatus and method, and storage medium
KR100987584B1 (ko) 고해상도 동영상의 효율적 저장을 위한 동영상 변경 시스템및 방법
KR101957610B1 (ko) 히스토그램을 이용한 영상 처리 방법 및 이를 수행하기 위한 기록매체

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