KR101658592B1 - 영상의 구조적 정보를 이용한 적응적 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 - Google Patents

영상의 구조적 정보를 이용한 적응적 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 Download PDF

Info

Publication number
KR101658592B1
KR101658592B1 KR1020100095118A KR20100095118A KR101658592B1 KR 101658592 B1 KR101658592 B1 KR 101658592B1 KR 1020100095118 A KR1020100095118 A KR 1020100095118A KR 20100095118 A KR20100095118 A KR 20100095118A KR 101658592 B1 KR101658592 B1 KR 101658592B1
Authority
KR
South Korea
Prior art keywords
motion vector
delete delete
block
current block
decoding
Prior art date
Application number
KR1020100095118A
Other languages
English (en)
Other versions
KR20120033546A (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 KR1020100095118A priority Critical patent/KR101658592B1/ko
Priority to PCT/KR2011/007228 priority patent/WO2012044108A2/ko
Publication of KR20120033546A publication Critical patent/KR20120033546A/ko
Application granted granted Critical
Publication of KR101658592B1 publication Critical patent/KR101658592B1/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/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/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding

Abstract

본 발명의 실시예는 영상의 구조적 정보를 이용한 적응적 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치에 관한 것이다.
본 발명의 실시예는, 현재블록의 주변블록의 구조정보를 바탕으로 예측움직임벡터를 결정하여 상기 현재블록의 움직임벡터와 상기 예측움직임벡터와의 차분값인 차분움직임벡터를 부호화하고, 주변블록의 구조정보를 바탕으로 예측움직임벡터를 결정하고 비트스트림으로부터 차분움직임벡터를 추출하고 상기 추출된 차분움직임벡터와 상기 예측움직임벡터를 가산하여 복원될 현재블록의 움직임벡터를 복원하여 복호화하는 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치를 제공한다.

Description

영상의 구조적 정보를 이용한 적응적 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치{Method and Apparatus for Adaptive Motion Vector Coding/Decoding Using the Information of Image Structure and Method and Apparatus for Encoding/Decoding Using The Same}
본 발명의 실시예는 영상의 구조적 정보를 이용한 적응적 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치에 관한 것이다. 더욱 상세하게는, 현재 블록의 움직임 벡터를 부호화함에 있어 현재 블록과 인접한 주변 블록의 구조적 정보를 추출하여 효율적인 예측 움직임 벡터를 결정함으로써 현재 블록의 움직임 벡터의 부호화 효율을 향상시키는 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치에 관한 것이다.
이 부분에 기술된 내용은 단순히 본 발명의 실시예에 대한 배경 정보를 제공할 뿐 반드시 종래기술을 구성하는 것은 아니다.
일반적인 영상 압축 방식에서 화면 간 예측을 사용하는 인터 블록에 대해서는 예측 오차뿐만 아니라 움직임 벡터도 부호화하는데, H.264/AVC 표준에서는 부호화하고자 하는 현재 블록과 인접한 주변 블록의 움직임 벡터들의 중간값(Median value)을 이용하여 예측 움직임 벡터를 결정하고, 부호화하고자 하는 움직임 벡터와 예측 움직임 벡터의 차분 값만 부호화함으로써 움직임 벡터의 부호화 효율을 높인다.
최근 차세대 비디오 부호화 표준을 위해 ITU-T VCEG (Video Coding Experts Group)과 ISO/IEC MPEG (Moving Picture Experts Group)이 공동으로 결성한 JCT-VC (Joint Collaborate Team for Video Coding) 회의에서는 움직임 벡터를 보다 효율적으로 부호화하기 위해 MVC(Motion Vector Competition)라는 기법이 제안되었다.
MVC 기법에서는 기존에 하나의 예측 움직임 벡터만 사용하던 방식과 달리 영상 부호화 장치에서 미리 복수 개의 후보 예측 움직임 벡터를 만들어 두고, 그 중에서 현재 움직임 벡터와 차분값이 최소가 되는 후보 예측 움직임 벡터를 선택하여 현재 움직임 벡터를 예측 부호화하고 어떤 후보 예측 움직임 벡터가 선택되었는지에 대한 정보도 영상 복호화 장치에 전송해주는 방법을 사용한다. 영상 복호화 장치에서는 움직임 벡터의 차분값과 함께 선택된 후보 예측 움직임 벡터에 대한 정보를 전송받아 원래의 움직임 벡터를 복호하게 된다. 복수개의 후보 예측 움직임 벡터를 사용함으로써 기존의 H.264/AVC에 비해서 움직임 벡터의 부호화 효율을 개선할 수 있지만, 이 기법은 현재 블록이 포함된 영상 또는 객체의 형태와 움직임에 상관없이 선택할 수 있는 후보 예측 움직임 벡터가 항상 고정되어 있고, 후보 예측 움직임 벡터의 개수가 늘어날수록 영상 복호화 장치에 전송해야 할 후보 예측 움직임 벡터에 대한 인덱싱 부가정보의 양이 증가하는 문제점이 있다.
이러한 문제점을 해결하기 위해 본 발명의 일 실시예는, 현재 블록과 인접한 주변 블록의 구조적 정보를 추출하여 현재 블록이 포함된 객체의 형태와 움직임을 가장 유사하게 표현하는 예측 움직임 벡터를 결정함으로써 현재 블록의 움직임 벡터를 보다 효율적으로 부호화하는데 주된 목적이 있다.
전술한 목적을 달성하기 위해 본 발명의 일 실시예는, 영상을 부호화/복호화하는 장치에 있어서, 현재 블록을 예측하여 예측 블록을 생성하고 상기 현재 블록에서 상기 예측 블록을 감산하여 잔차 블록을 생성하고 상기 잔차 블록을 변환 및 양자화하여 주파수변환블록을 생성하고 상기 현재블록의 주변블록의 구조정보를 바탕으로 예측움직임벡터를 결정하여 상기 현재블록의 움직임벡터와 상기 예측움직임벡터와의 차분값인 차분움직임벡터 및 상기 양자화된 주파수변환블록을 부호화하는 영상 부호화기; 및 주변블록의 구조정보를 바탕으로 예측움직임벡터를 결정하고 비트스트림으로부터 차분움직임벡터를 추출하고 상기 추출된 차분움직임벡터와 상기 예측움직임벡터를 가산하여 복원될 현재블록의 움직임벡터를 복원하고 상기 비트스트림으로부터 양자화된 주파수변환블록을 복호하고 상기 복호된 주파수변환블록과 상기 복원된 움직임벡터를 이용하여 상기 현재블록을 복원하는 영상 복호화기를 포함하는 것을 특징으로 하는 영상 부호화/복호화 장치를 제공한다.
또한, 본 발명의 다른 목적을 달성하기 위해 본 발명의 일 실시예는, 영상을 부호화하는 장치에 있어서, 현재 블록을 예측하여 예측 블록을 생성하는 예측부; 상기 현재 블록에서 상기 예측 블록을 감산하여 잔차 블록을 생성하는 감산부; 상기 잔차 블록을 변환 및 양자화하여 주파수변환블록을 생성하는 변환 및 양자화부; 및 주변블록의 구조정보를 바탕으로 예측움직임벡터를 결정하여 상기 현재블록의 움직임벡터와 상기 예측움직임벡터와의 차분값인 차분움직임벡터 및 상기 양자화된 주파수변환블록을 부호화하는 부호화부 를 포함하는 것을 특징으로 하는 영상 부호화 장치를 제공한다.
또한, 본 발명의 다른 목적을 달성하기 위해 본 발명의 일 실시예는, 영상을 복호화하는 장치에 있어서, 주변블록의 구조정보를 바탕으로 예측움직임벡터를 결정하고 비트스트림으로부터 차분움직임벡터를 추출하고 상기 차분움직임벡터와 상기 예측움직임벡터를 가산하여 현재블록의 움직임벡터를 복원하고 비트스트림으로부터 양자화된 주파수변환블록을 복호하는 복호화부; 상기 주파수변환블록을 역 양자화 및 역 변환하여 잔차 블록을 복원하는 역양자화 및 역변환부; 현재 블록을 예측하여 예측 블록을 생성하는 예측부; 및 상기 복원되는 잔차 블록과 상기 예측 블록을 가산하여 상기 현재 블록을 복원하는 가산부를 포함하는 것을 특징으로 하는 영상 복호화 장치를 제공한다.
또한, 본 발명의 다른 목적을 달성하기 위해 본 발명의 일 실시예는, 움직임벡터 부호화 장치에 있어서, 주변블록의 구조정보를 추출하는 구조정보 추출부; 상기 구조정보를 바탕으로 예측움직임벡터를 결정하는 예측움직임벡터 결정부; 및 상기 현재블록의 움직임벡터와 상기 예측움직임벡터와의 차분값인 차분움직임벡터를 부호화하는 움직임벡터 예측부호화부를 포함하는 것을 특징으로 하는 움직임벡터 부호화 장치를 제공한다.
또한, 본 발명의 다른 목적을 달성하기 위해 본 발명의 일 실시예는, 움직임벡터 복호화 장치에 있어서, 주변블록의 구조정보를 추출하는 구조정보 추출부; 상기 구조정보를 바탕으로 예측움직임벡터를 결정하는 예측움직임벡터 결정부; 비트스트림으로부터 차분움직임벡터를 추출하는 차분움직임벡터 추출부; 및 상기 차분움직임벡터와 상기 예측움직임벡터를 가산하여 현재블록의 움직임벡터를 복원하는 움직임벡터 복호화부를 포함하는 것을 특징으로 하는 움직임벡터 복호화 장치를 제공한다.
또한, 본 발명의 다른 목적을 달성하기 위해 본 발명의 일 실시예는, 영상을 부호화/복호화하는 방법에 있어서, 현재 블록을 예측하여 예측 블록을 생성하고 상기 현재 블록에서 상기 예측 블록을 감산하여 잔차 블록을 생성하고 상기 잔차 블록을 변환 및 양자화하여 주파수변환블록을 생성하고 상기 현재블록의 주변블록의 구조정보를 바탕으로 예측움직임벡터를 결정하여 상기 현재블록의 움직임벡터와 상기 예측움직임벡터와의 차분값인 차분움직임벡터 및 상기 양자화된 주파수변환블록을 부호화하는 영상 부호화단계; 및 주변블록의 구조정보를 바탕으로 예측움직임벡터를 결정하고 비트스트림으로부터 차분움직임벡터를 추출하고 상기 추출된 차분움직임벡터와 상기 예측움직임벡터를 가산하여 복원될 현재블록의 움직임벡터를 복원하고 상기 비트스트림으로부터 양자화된 주파수변환블록을 복호하고 상기 복호된 주파수변환블록과 상기 복원된 움직임벡터를 이용하여 상기 현재블록을 복원하는 영상 복호화단계를 포함하는 것을 특징으로 하는 영상 부호화/복호화 방법을 제공한다.
또한, 본 발명의 다른 목적을 달성하기 위해 본 발명의 일 실시예는, 영상을 부호화하는 방법에 있어서, 현재 블록을 예측하여 예측 블록을 생성하는 예측단계; 상기 현재 블록에서 상기 예측 블록을 감산하여 잔차 블록을 생성하는 감산단계; 상기 잔차 블록을 변환 및 양자화하여 주파수변환블록을 생성하는 변환 및 양자화단계; 및 주변블록의 구조정보를 바탕으로 예측움직임벡터를 결정하여 상기 현재블록의 움직임벡터와 상기 예측움직임벡터와의 차분값인 차분움직임벡터 및 상기 양자화된 주파수변환블록을 부호화하는 부호화단계를 포함하는 것을 특징으로 하는 영상 부호화 방법을 제공한다.
또한, 본 발명의 다른 목적을 달성하기 위해 본 발명의 일 실시예는, 영상을 복호화하는 방법에 있어서, 주변블록의 구조정보를 바탕으로 예측움직임벡터를 결정하고 비트스트림으로부터 차분움직임벡터를 추출하고 상기 차분움직임벡터와 상기 예측움직임벡터를 가산하여 현재블록의 움직임벡터를 복원하고 비트스트림으로부터 양자화된 주파수변환블록을 복호하는 복호화단계; 상기 주파수변환블록을 역 양자화 및 역 변환하여 잔차 블록을 복원하는 역양자화 및 역변환단계; 현재 블록을 예측하여 예측 블록을 생성하는 예측단계; 및 상기 복원되는 잔차 블록과 상기 예측 블록을 가산하여 상기 현재 블록을 복원하는 가산단계를 포함하는 것을 특징으로 하는 영상 복호화 방법을 제공한다.
또한, 본 발명의 다른 목적을 달성하기 위해 본 발명의 일 실시예는, 움직임벡터 부호화 방법에 있어서, 주변블록의 구조정보를 추출하는 구조정보 추출단계; 상기 구조정보를 바탕으로 예측움직임벡터를 결정하는 예측움직임벡터 결정단계; 및 상기 현재블록의 움직임벡터와 상기 예측움직임벡터와의 차분값인 차분움직임벡터를 부호화하는 움직임벡터 예측부호화단계를 포함하는 것을 특징으로 하는 움직임벡터 부호화 방법을 제공한다.
또한, 본 발명의 다른 목적을 달성하기 위해 본 발명의 일 실시예는, 움직임벡터 복호화 방법에 있어서, 주변블록의 구조정보를 추출하는 구조정보 추출단계; 상기 구조정보를 바탕으로 예측움직임벡터를 결정하는 예측움직임벡터 결정단계; 비트스트림으로부터 차분움직임벡터를 추출하는 차분움직임벡터 추출단계; 및 상기 차분움직임벡터와 상기 예측움직임벡터를 가산하여 현재블록의 움직임벡터를 복원하는 움직임벡터 복호화단계를 포함하는 것을 특징으로 하는 움직임벡터 복호화 방법을 제공한다.
이상에서 설명한 바와 같이 본 발명의 일 실시예에 의하면, 같은 객체 내에 포함된 움직임 벡터는 서로 유사한 값을 가진다는 관찰을 기반으로 현재 블록과 인접한 주변 블록의 구조적 정보를 추출하여 현재 블록이 주변 블록과 어떤 형태의 객체를 이루고 있는지 분석하고, 해당 객체의 움직임을 현재 블록의 움직임 벡터와 함께 가장 정확하게 표현하는 예측 움직임 벡터를 결정함으로써 현재 블록의 움직임 벡터를 보다 효율적으로 부호화하는 효과가 있다.
도 1은 본 발명의 일 실시예에 따른 영상 부호화 장치를 간략하게 나타낸 블록 구성도이다.
도 2는 본 발명의 일 실시예에 따른 움직임 벡터 부호화 장치(200)를 도시한 도면이다.
도 3은 구조정보 추출부(210)가 소벨필터를 사용하여 에지 정보를 추출하는 예를 도시한 도면이다.
도 4는 현재블록의 주변블록 및 주변블록의 움직임벡터를 예시한 도면이다.
도 5는 현재블록이 매크로블록 크기와 같은 경우의 에지 라인에 의한 주변블록의 분할상황을 예시한 도면이다.
도 6은 현재블록이 매크로블록으로부터 분할된 서브블록인 경우의 에지 라인에 의한 주변블록의 분할상황을 예시한 도면이다.
도 7은 본 발명의 일 실시예에 따른 영상 복호화 장치의 구성을 간략하게 나타낸 블록 구성도이다.
도 8은 본 발명의 일 실시예에 따른 움직임벡터 복호화 장치(800)를 도시한 도면이다.
이하, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.
이하에서 후술할 영상 부호화 장치(Video Encoding Apparatus), 영상 복호화 장치(Video Decoding Apparatus)는 개인용 컴퓨터(PC: Personal Computer), 노트북 컴퓨터, 개인 휴대 단말기(PDA: Personal Digital Assistant), 휴대형 멀티미디어 플레이어(PMP: Portable Multimedia Player), 플레이스테이션 포터블(PSP: PlayStation Portable), 무선 통신 단말기(Wireless Communication Terminal), 스마트폰(Smart Phone), TV 등과 같은 사용자 단말기이거나 응용 서버와 서비스 서버 등 서버 단말기일 수 있으며, 각종 기기 또는 유무선 통신망과 통신을 수행하기 위한 통신 모뎀 등의 통신 장치, 영상을 부호화하거나 복호화하거나 부호화 또는 복호화를 위해 인터 또는 인트라 예측하기 위한 각종 프로그램과 데이터를 저장하기 위한 메모리, 프로그램을 실행하여 연산 및 제어하기 위한 마이크로프로세서 등을 구비하는 다양한 장치를 의미할 수 있다.
또한, 영상 부호화 장치에 의해 비트스트림으로 부호화된 영상은 실시간 또는 비실시간으로 인터넷, 근거리 무선 통신망, 무선랜망, 와이브로망, 이동통신망 등의 유무선 통신망 등을 통하거나 케이블, 범용 직렬 버스(USB: Universal Serial Bus) 등과 같은 다양한 통신 인터페이스를 통해 영상 복호화 장치로 전송되어 영상 복호화 장치에서 복호화되어 영상으로 복원되고 재생될 수 있다.
통상적으로 동영상은 일련의 픽처(Picture)로 구성될 수 있으며, 각 픽처들은 프레임 또는 블록(Block)과 같은 소정의 영역으로 분할될 수 있다. 영상의 영역이 블록으로 분할되는 경우에는 분할된 블록은 부호화 방법에 따라 크게 인트라 블록(Intra Block), 인터 블록(Inter Block)으로 분류될 수 있다. 인트라 블록은 인트라 예측 부호화(Intra Prediction Coding) 방식을 사용하여 부호화되는 블록을 뜻하는데, 인트라 예측 부호화란 현재 부호화를 수행하는 현재 픽처 내에서 이전에 부호화되고 복호화되어 복원된 블록들의 화소를 이용하여 현재 블록의 화소를 예측함으로써 예측 블록을 생성하고 현재 블록의 화소와의 차분값을 부호화하는 방식이다. 인터 블록은 인터 예측 부호화(Inter Prediction Coding)를 사용하여 부호화되는 블록을 뜻하는데, 인터 예측 부호화란 하나 이상의 과거 픽처 또는 미래 픽처를 참조하여 현재 픽처 내의 현재 블록을 예측함으로써 예측 블록을 생성하고 현재 블록과의 차분값을 부호화하는 방식이다. 여기서, 현재 픽처를 부호화하거나 복호화하는데 참조되는 프레임을 참조 프레임(Reference Frame)이라고 한다.
도 1은 본 발명의 일 실시예에 따른 영상 부호화 장치를 간략하게 나타낸 블록 구성도이다.
본 발명의 일 실시예에 따른 영상 부호화 장치(100)는 영상을 부호화하는 장치로서, 인트라 예측부(110), 인터 예측부(120), 감산부(130), 변환 및 양자화부(140), 부호화부(150), 역 양자화 및 역 변환부(160), 가산부(170), 프레임 메모리(180)를 포함하여 구성될 수 있다.
부호화하고자 하는 입력 영상은 매크로 블록(Macro Block) 단위로 입력이 되는데, 본 발명에서, 매크로 블록은 M×N 형태이며 M과 N은 각 2n의 크기를 가지며, M과 N이 동일하거나 다를 수 있다. 따라서, H.264의 매크로 블록과 동일하거나 클 수도 있다.
인트라 예측부(110)는 현재 매크로 블록을 예측하기 위하여 인접 화소를 이용하여 예측 블록을 생성한다. 즉, 인트라 예측부(110)는 이미 부호화 과정을 거치고 복원된, 현재 매크로 블록의 인접 화소들을 이용하여 인트라 예측부 (110)의 모드에 따라 예측 블록을 생성한다.
인터 예측부(120)는 현재 매크로 블록을 예측하기 위하여 다른 프레임을 이용하여 예측 블록을 생성한다. 즉, 인터 예측부(120)는 이미 부호화 과정을 거치고 복원된 이전 프레임에서 인터 예측부(120)의 모드에 따라 움직임 추정을 통해 움직임 벡터를 생성하고 움직임 벡터를 이용한 움직임 보상 과정에서 예측 블록을 생성한다.
감산부(130)는 현재 블록에서 예측 블록을 감산하여 잔차 블록(Residual Block)을 생성한다. 즉, 감산부(130)는 현재 블록의 화소값과 인트라 예측부(110) 또는 인터 예측부(120)에서 생성된 예측 블록의 화소값을 감산하여 잔차 블록을 생성한다.
변환 및 양자화부(140)는 감산부(130)에서 생성된 잔차 블록을 주파수 계수로 변환하고 양자화 한다. 즉, 변환 및 양자화부는(140)는 감산부(130)에 의해 생성된 잔차 블록의 잔차 계수를 주파수 계수를 갖는 잔차 블록을 생성하고 생성된 주파수 계수의 잔차 블록을 양자화 하는데, 이때 사용되는 변환 방식으로는 하다마드 변환(Hadamard Transform), 이산 코사인 변환 기반의 정수 변환(Discrete Cosine Transform Based Integer Transform) 등과 같은 공간 영역의 화상 신호를 주파수 영역으로 변환하는 기법이 사용되고, 양자화 방식으로는 데드존 균일 경계 양자화(DZUTQ: Dead Zone Uniform Threshold Quantization, 이하 'DZUTQ'라 칭함) 또는 양자화 가중치 매트릭스 (Quantization Weighted Matrix) 등과 같은 다양한 양자화 기법을 이용할 수 있다.
부호화부(150)는 변환 및 양자화부(140)에 의해 변환되고 양자화된 잔차 블록을 부호화하여 부호화 데이터를 생성할 수 있다. 이러한 부호화 기술로서는 엔트로피 부호화(Entropy Encoding) 기술이 사용될 수 있으나, 반드시 이에 한정하지 않고 다른 다양한 부호화 기술을 사용할 수 있을 것이다.
또한, 부호화부(150)는 양자화 주파수 계수들을 부호화한 비트열뿐만 아니라 부호화된 비트열을 복호화하는 데 필요한 다양한 정보들을 부호화 데이터에 포함시킬 수 있다. 즉, 부호화 데이터는 부호화된 블록 형태(CBP: Coded Block Pattern), 델타 양자화 계수(Delta Quantization Parameter) 및 양자화 주파수 계수가 부호화 된 비트열이 포함되는 제 1 필드와 예측에 필요한 정보(예를 들어, 인트라 예측의 경우 인트라 예측 모드 또는 인터 예측의 경우 움직임 벡터 등)를 위한 비트가 포함되는 제 2 필드를 포함할 수 있다.
그리고, 부호화부(150)는 움직임벡터를 부호화함에 있어서, 주변블록의 구조적정보를 추출하고, 추출된 구조적정보를 이용하여 현재블록의 움직임벡터와 동일한 객체의 움직임을 표현하는 주변블록의 움직임벡터를 예측움직임벡터로 결정하고 현재블록의 움직임벡터와 예측움직임벡터와의 차분값인 차분움직임벡터를 부호화할 수 있다. 이와 관련한 내용에 대해서는 후술하는 과정에서 도 2를 통해 상세히 설명한다.
역양자화 및 역변환부(160)는 변환 및 양자화부(140)에 의해 변환 및 양자화된 잔차 블록을 역 양자화(Inverse Quantization)하고 역 변환(Inverse Transform)하여 잔차 블록을 복원(Reconstruction)한다. 역 양자화와 역 변환은 변환 및 양자화부(140)가 수행한 변환 과정과 양자화 과정을 역으로 수행함으로써 이루어질 수 있다. 즉, 역양자화 및 역변환부(160)는 변환 및 양자화부(140)로부터 발생되어 전달되는 변환 및 양자화에 관한 정보(예를 들어, 변환 및 양자화 타입에 대한 정보)를 이용하여 변환 및 양자화부(140)가 변환 및 양자화한 방식을 역으로 수행하여 역 양자화 및 역 변환을 수행할 수 있다.
가산부(170)는 인트라 예측부(110) 또는 인터 예측부(120)에서 생성된 예측 블록과 역 양자화 및 역 변환부(160)에 의해 생성된 잔차 블록을 가산하여 복원된 블록을 생성한다.
프레임 메모리(180)는 가산부(170)에서 복원된 블록을 저장하여 인트라 혹은 인터 예측 수행 시 예측 블록을 생성하기 위해 참조블록으로 사용된다.
도 2는 본 발명의 일 실시예에 따른 움직임 벡터 부호화 장치(200)를 도시한 도면이며, 도 1의 부호화부(150)는 본 발명의 일 실시예에 따른 움직임 벡터 부호화 장치(200)를 포함할 수 있다.
본 발명의 일 실시예에 따른 움직임 벡터 부호화 장치(200)는 구조정보 추출부(210), 예측움직임벡터 결정부(220) 및 움직임벡터 예측부호화부(230)를 포함한다.
구조정보 추출부(210)는 주변블록의 구조정보를 추출하고, 예측움직임벡터 결정부(220)는 주변블록의 구조정보를 바탕으로 최적의 예측움직임벡터를 결정하고, 움직임벡터 예측부호화부(230)는 현재블록의 움직임벡터와 예측움직임벡터와의 차분값인 차분움직임벡터를 부호화한다.
구조정보 추출부(210)는 현재블록이 주변블록과 연결되어 어떠한 형태의 객체에 포함되어 있는지 분석하기 위해 주변블록의 구조 정보를 추출한다. 주변블록의 구조 정보를 표현하는 것으로서 에지(Edge), 윤곽선(Contour), 모서리(Corner) 등 많은 특징점(Feature)들이 있을 수 있으며, 이러한 구조 정보를 추출하여 분석함으로써 현재블록과 인접한 주변블록이 어떤 객체에 포함되어 있는지를 구분할 수 있고, 현재블록과 동일한 객체에 속해 있는 주변블록의 움직임 벡터를 예측움직임벡터로 선택함으로써 현재 움직임벡터와 보다 유사한 예측움직임벡터를 결정할 수 있도록 한다.
도 3은 구조정보 추출부(210)가 소벨필터를 사용하여 에지 정보를 추출하는 예를 도시한 도면이다.
본 실시예에서는 현재블록(X)의 주변블록에 소벨(Sobel) 필터를 이용하여 에지 정보를 추출하는 경우를 예로 들어 설명한다. 여기서 주변블록은 도 3과 같이 현재블록의 좌측블록, 상단블록, 우측상단블록을 의미할 수 있다.
Sobel 필터는 수학식 1과 같이 수직 방향 기울기(Gradient)를 구하는 gx와 수평 방향 기울기를 구하는 gy의 2가지 3x3 필터로 구성될 수 있다.
Figure 112010063178617-pat00001
주변블록의 각 픽셀에 대해 gx와 gy 필터를 취한 결과를 각각 Gy, Gx라고 하면, 해당 픽셀의 에지의 크기(G)는 수학식 2로 계산할 수 있다.
Figure 112010063178617-pat00002
또한, 에지의 방향은 수학식 3으로 계산할 수 있다.
Figure 112010063178617-pat00003
도 3에서처럼 현재블록과 인접한 주변블록의 모든 픽셀에 대해 Sobel 필터를 취하고 에지의 크기가 특정한 임계값 이상인 점들과 그 중 에지의 크기가 가장 큰 지점(G)을 찾은 다음, G를 중심으로 해당 임계값 이상의 에지 크기를 가지는 점들이 구성하는 직선(에지 라인)의 방향에 따라 주변블록을 분할한다. 분할된 주변블록 중에서 현재블록과 경계가 인접한 부분은 현재블록과 동일한 객체에 속하는 영역으로 판단할 수 있다. 주변블록의 모든 에지의 크기가 특정한 임계값보다 크지 않다면 구조적 특징점이 없는 것으로 보고 주변블록을 분할하지 않고 주변블록 모두를 현재블록과 동일한 객체로 판단한다.
예측움직임벡터 결정부(220)는 주변블록의 구조정보를 바탕으로 최적의 예측움직임벡터를 결정한다. 예측움직임벡터 결정부(220)는 구조정보 추출부(210)에서 분석된 구조정보를 바탕으로 현재블록과 동일한 객체의 움직임을 표현하고 있는 주변 블록의 움직임 벡터를 이용하여 예측 움직임 벡터로 결정할 수 있다.
도 4는 현재블록의 주변블록 및 주변블록의 움직임벡터를 예시한 도면이다.
기존의 H.264/AVC에서는 예측 움직임 벡터를 결정하기 위해서 도 4와 같이 현재 블록을 기준으로 좌측블록(A), 상단블록(B), 우측상단블록(C)에 있는 3개의 움직임 벡터들의 중간값(Median)으로 계산할 수 있다. 특히 주변블록이 복수개의 서브 블록으로 분할되어 있는 경우 현재 블록의 좌측 상단 경계를 기준으로 가장 인접한 서브 블록의 움직임 벡터들의 중간값(median{mva, mvb, mvc})으로 예측 움직임 벡터를 계산할 수 있다.
도 5는 현재블록이 매크로블록 크기와 같은 경우의 에지 라인에 의한 주변블록의 분할상황을 예시한 도면이다.
예측움직임벡터 결정부(220)는 예측 움직임 벡터를 결정하기 위해서 도 5의 (a)와 (b)처럼 부호화할 현재 블록의 위치와 구조정보 추출부(210)에서 추출된 에지 라인에 의해 분할된 주변 블록의 영역 중에서 현재 블록과 가까운 인접분할영역에 위치하는 주변 블록(또는 주변의 서브 블록)의 움직임 벡터들을 참조하여 예측 움직임 벡터를 계산한다. 도 5와 같이 부호화할 현재 블록이 매크로블록으로부터 분할된 서브 블록이 아닌 경우, 현재 블록과 인접한 주변 블록의 영역(인접분할영역)에서 현재 블록의 좌측 상단 지점에 가장 가까운 주변 블록(또는 주변 서브블록)들의 움직임 벡터들로부터 예측 움직임 벡터를 결정할 수 있다. 한편, 도 5의 (b)와 같이 에지 라인이 현재블록을 가로지르는 경우에는 에지 라인으로 분할되는 현재블록의 면적 중에서 넓은 면적을 갖는 영역을 현재 블록의 기준 영역으로 삼을 수 있으며, 이 기준 영역(즉 기준이 되는 현재블록)과 인접한 분할영역에서 기준 영역의 좌측 상단 지점에 가장 가까운 위치하는 주변 블록(또는 주변의 서브 블록)의 움직임 벡터들을 참조하여 예측 움직임 벡터를 계산할 수 있다.
이때, 도 5의 (a)와 같이 현재 블록과 가까운 분할영역에 위치하는 주변 블록(또는 주변의 서브 블록)의 움직임 벡터가 3개인 경우에는 3개의 움직임벡터의 중간값으로 예측움직임벡터를 설정할 수 있으며, 도 5의 (b)와 같이 현재 블록과 가까운 분할영역에 위치하는 주변 블록(또는 주변의 서브 블록)의 움직임 벡터가 2개인 경우에는 두 움직임벡터 중에서 큰 값 또는 작은 값으로 예측움직임벡터를 설정하거나, 현재블록의 움직임벡터와 유사한 값으로 예측움직임벡터를 설정할 수 있다. 또한, 현재 블록과 가까운 분할영역에 위치하는 주변 블록(또는 주변의 서브 블록)의 움직임 벡터가 1개인 경우에는 그 움직임벡터를 예측움직임벡터로 설정할 수 있다.
도 6은 현재블록이 매크로블록으로부터 분할된 서브블록인 경우의 에지 라인에 의한 주변블록의 분할상황을 예시한 도면이다.
예측움직임벡터 결정부(220)는 예측 움직임 벡터를 결정하기 위해서 도 6의 (a), (b), (c), (d)처럼 부호화할 현재 블록의 위치와 구조정보 추출부(210)에서 추출된 에지정보에 의해 분할된 주변 블록의 영역 중에서 현재 블록과 가까운 분할영역에 위치하는 주변 블록(또는 주변의 서브 블록)의 움직임 벡터들을 참조하여 예측 움직임 벡터를 계산한다.
도 6과 같이 부호화할 현재 블록이 매크로블록으로부터 분할된 서브블록인 경우, 인접분할영역에서 현재 블록과 가장 가까운 위치에 있는 주변 블록들의 움직임 벡터들로부터 예측 움직임 벡터를 결정할 수 있다. 이 경우에도 에지 라인이 현재블록을 가로지르는 경우에는 에지 라인으로 분할되는 현재블록의 면적 중에서 넓은 면적을 갖는 영역을 현재 블록의 기준 영역으로 삼을 수 있다.
도 6에 도시한 바와 같이, 예측 움직임 벡터를 결정하기 위해 에지 라인에 의해 주변 블록이 분할된 형태에 따라 3개 또는 2개 또는 1개의 주변 움직임 벡터를 사용할 수 있으며, 주변 움직임 벡터를 참조하기 위한 주변 블록(또는 서브 블록)의 위치도 달라질 수 있다. 이로 인해 현재 블록과 동일한 객체에 속하는 주변 블록의 움직임 벡터들을 참조하여 보다 정확하게 현재 움직임 벡터와 유사한 움직임을 가지고 있는 예측 움직임 벡터를 결정할 수 있다. 따라서, 현재 블록과 가까운 분할영역에 위치하는 주변 블록(또는 주변의 서브 블록)의 움직임 벡터가 3개인 경우에는 3개의 움직임벡터의 중간값으로 예측움직임벡터를 설정할 수 있으며, 현재 블록과 가까운 분할영역에 위치하는 주변 블록(또는 주변의 서브 블록)의 움직임 벡터가 2개인 경우에는 두 움직임벡터 중에서 큰 값 또는 작은 값으로 예측움직임벡터를 설정하거나, 현재블록의 움직임벡터와 유사한 값으로 예측움직임벡터를 설정할 수 있다. 또한, 현재 블록과 가까운 분할영역에 위치하는 주변 블록(또는 주변의 서브 블록)의 움직임 벡터가 1개인 경우에는 그 움직임벡터를 예측움직임벡터를 설정할 수 있다.
움직임벡터 예측부호화부(230)는 현재블록의 움직임 벡터와 예측움직임벡터 결정부(220)로부터 수신한 예측움직임벡터의 차이값인 차분 움직임 벡터를 부호화한다. 차분 움직임 벡터를 부호화하는 기법으로서는 고정 길이 부호화(Fixed Length Coding), 가변 길이 부호화(Variable Length Coding), 산술 부호화(Arithmetic Coding) 등과 같은 엔트로피 부호화(Entropy Coding) 기법이 이용될 수 있다.
도 7은 본 발명의 일 실시예에 따른 영상 복호화 장치의 구성을 간략하게 나타낸 블록 구성도이다.
본 발명의 일 실시예에 따른 영상 복호화 장치(700)는 복호화부(710), 역 양자화 및 역 변환부(720), 인트라 예측부(730), 인터 예측부(740), 가산부(750), 프레임 메모리(760)를 포함하여 구성될 수 있다.
복호화부(710)는 부호화 데이터를 복호화하여 블록 복호화에 필요한 정보를 추출할 수 있다. 즉, 복호화부(710)는 부호화 데이터를 복호화하여 주파수 마스크 테이블 정보를 추출하고 상기 주파수 마스크 테이블 정보를 사용하여 양자화 주파수계수열을 추출하고, 양자화 주파수 계수열을 역 스캐닝하여 양자화 주파수 계수를 갖는 잔차 블록을 생성할 수 있다. 이때, 복호화부(710)는 부호화 데이터에 포함된 제 1 필드에서 부호화된 잔차 블록을 추출하여 복호화할 수 있고, 부호화 데이터에 포함된 제 2 필드에서 예측에 필요한 정보를 추출할 수 있으며, 추출된 예측에 필요한 정보를 인트라 예측부(730) 또는 인터 예측부(740)로 전달하여, 해당 예측부가 영상 부호화 장치(100)의 해당 예측부와 동일한 방식으로 현재 블록을 예측하도록 할 수 있다.
역 양자화 및 역 변환부(720)는 잔차 블록을 역 양자화하여 역 양자화된 잔차 블록을 생성하고 생성된 양자화 블록을 역 트랜스폼하여 잔차 블록을 생성한다.
인트라 예측부(730)는 복호화부(710)로부터 전달되는 인트라 예측에 필요한 정보를 이용하여 현재 블록에 대한 예측 블록을 생성한다.
인터 예측부(730)는 복호화부(710)로부터 전달되는 인터 예측에 필요한 정보를 이용하여 현재 블록에 대한 예측 블록을 생성한다.
가산부(750)는 역 변환 잔차 블록과 예측 블록을 가산하여 현재 블록을 복원한다. 가산부(750)에 의해 복원된 현재 블록은 프레임 메모리(760)로 전달되어, 예측부에서 다른 블록을 예측하는 데 활용될 수 있다.
프레임 메모리(760)는 복원된 영상을 저장하여 인트라 및 인터 예측 블록 생성을 가능하게 한다.
한편, 복호화부(710)는 부호화 데이터를 복호화하여 변환 및 양자화된 잔차 블록뿐만 아니라 복호화에 필요한 정보들을 복호화하거나 추출할 수 있다. 복호화에 필요한 정보들은 부호화 데이터 내의 부호화된 비트열을 복호화하는 데 필요한 정보들을 말하며, 예를 들어 블록 타입에 대한 정보, 예측 모드가 인트라 예측 모드인 경우에는 인트라 예측 모드에 대한 정보, 예측 모드가 인터 예측 모드인 경우에는 움직임 벡터에 대한 정보, 변환 및 양자화 타입에 대한 정보 등이 될 수 있으며, 이외의 다양한 정보들이 될 수도 있다.
도 8은 본 발명의 일 실시예에 따른 움직임벡터 복호화 장치(800)를 도시한 도면이며, 도 7의 복호화부(710)는 본 발명의 일 실시예에 따른 움직임벡터 복호화 장치(800)를 포함할 수 있다.
본 발명의 일 실시예에 따른 움직임 벡터 복호화 장치(800)는 구조정보 추출부(810), 예측움직임벡터 결정부(820), 차분움직임벡터 추출부(830) 및 움직임벡터 복호화부(840)를 포함한다.
구조정보 추출부(810)는 주변블록의 구조정보를 추출하고, 예측움직임벡터 결정부(820)는 주변블록의 구조정보를 바탕으로 최적의 예측움직임벡터를 결정하고, 차분움직임벡터 추출부(830)는 비트스트림으로부터 차분움직임벡터를 추출하고, 움직임벡터 복호화부(840)는 예측 움직임 벡터와 차분움직임벡터 값을 더하여 현재 블록의 움직임 벡터를 복원한다.
구조정보 추출부(810)와 예측움직임벡터 결정부(820)는 움직임 벡터 부호화 장치(200)의 구조정보 추출부(210)와 예측움직임벡터 결정부(130)와 각각 동일 또는 유사한 기능을 하므로 상세한 설명은 생략한다.
움직임벡터 복호화부(840)는 예측움직임벡터 결정부(820)로부터 산출한 예측 움직임 벡터와 차분움직임벡터 추출부(830)에서 추출한 차분움직임벡터 값을 더하여 현재 블록의 움직임 벡터를 복원한다.
한편, 이상에서는 영상과 움직임 벡터가 블록 단위로 예측 부호화되고 복호화화되는 것으로 예를 들어 설명했지만, 영상과 움직임 벡터가 반드시 블록 단위로 예측 부호화되고 복호화되는 것은 아니다. 예를 들어, 블록 단위가 아닌, 슬라이스, 픽처, 시퀀스 단위와 같은 소정의 부호화 단위로 예측 부호화될 수도 있고 블록의 형태가 아닌 비정형의 다양한 영역의 형태로 예측 부호화될 수도 있다.
한편, 본 발명의 일 실시예에 따른 영상 부호화/복호화 장치는 도 1의 영상 부호화 장치(100)의 부호화데이터(비트스트림) 출력단을 도 7의 영상 복호화 장치(700)의 부호화 데이터(비트스트림) 입력단에 연결함으로써 구현할 수 있다.
본 발명의 일 실시예에 따른 영상 부호화/복호화 장치는, 현재 블록을 예측하여 예측 블록을 생성하고 현재 블록에서 예측 블록을 감산하여 잔차 블록을 생성하고 잔차 블록을 변환 및 양자화하여 주파수변환블록을 생성하고 현재블록의 주변블록의 구조정보를 바탕으로 예측움직임벡터를 결정하여 현재블록의 움직임벡터와 예측움직임벡터와의 차분값인 차분움직임벡터 및 양자화된 주파수변환블록을 부호화하는 영상 부호화기 및 주변블록의 구조정보를 바탕으로 예측움직임벡터를 결정하고 비트스트림으로부터 차분움직임벡터를 추출하고 추출된 차분움직임벡터와 예측움직임벡터를 가산하여 복원될 현재블록의 움직임벡터를 복원하고 비트스트림으로부터 양자화된 주파수변환블록을 복호하고 복호된 주파수변환블록과 복원된 움직임벡터를 이용하여 현재블록을 복원하는 영상 복호화기를 포함한다.
여기서 영상 부호화기는 본 발명의 일 실시예에 따른 영상 부호화 장치(100)로 구현 가능하며, 영상 복호화기는 본 발명의 일 실시예에 따른 영상 복호화 장치(700)로 구현 가능하다.
한편, 본 발명의 일 실시예에 따른 영상 부호화 방법은, 현재 블록을 예측하여 예측 블록을 생성하는 예측단계(S910), 현재 블록에서 예측 블록을 감산하여 잔차 블록을 생성하는 감산단계(S920), 잔차 블록을 변환 및 양자화하여 주파수변환블록을 생성하는 변환 및 양자화단계(S930) 및 주변블록의 구조정보를 바탕으로 예측움직임벡터를 결정하여 상기 현재블록의 움직임벡터와 상기 예측움직임벡터와의 차분값인 차분움직임벡터 및 상기 양자화된 주파수변환블록을 부호화하는 부호화단계(S940)를 포함한다.
여기서, 예측단계(S910)는 예측기(110 또는 120)의 동작에 대응되며, 감산단계(S920)는 감산부(130)의 동작에 대응되며, 변환 및 양자화단계(S930)는 변환 및 양자화부(140)의 동작에 대응되며, 부호화단계(S940)는 부호화부(150)의 동작에 대응되므로 상세한 설명은 생략한다.
한편, 본 발명의 일 실시예에 따른 영상 복호화 방법은, 주변블록의 구조정보를 바탕으로 예측움직임벡터를 결정하고 비트스트림으로부터 차분움직임벡터를 추출하고 상기 차분움직임벡터와 상기 예측움직임벡터를 가산하여 현재블록의 움직임벡터를 복원하고 비트스트림으로부터 양자화된 주파수변환블록을 복호하는 복호화단계(S1010), 주파수변환블록을 역 양자화 및 역 변환하여 잔차 블록을 복원하는 역양자화 및 역변환단계(S1020), 현재 블록을 예측하여 예측 블록을 생성하는 예측단계(S1030) 및 복원되는 잔차 블록과 예측 블록을 가산하여 현재 블록을 복원하는 가산단계(S1040)를 포함한다.
여기서, 복호화단계(S1010)는 복호화부(710)의 동작에 대응되며, 역양자화 및 역변환단계(S1020)는 역양자화 및 역변환부(720)의 동작에 대응되며, 예측단계(S1030)는 예측부(730 또는 740)의 동작에 대응되며, 가산단계(S1040)는 가산부(750)의 동작에 대응되므로 상세한 설명은 생략한다.
본 발명의 일 실시예에 따른 움직임벡터 부호화 방법은, 주변블록의 구조정보를 추출하는 구조정보 추출단계(S1110), 상기 구조정보를 바탕으로 예측움직임벡터를 결정하는 예측움직임벡터 결정단계(S1120), 상기 현재블록의 움직임벡터와 상기 예측움직임벡터와의 차분값인 차분움직임벡터를 부호화하는 움직임벡터 예측부호화단계(S1130)를 포함한다.
여기서, 구조정보 추출단계(S1110)는 구조정보 추출부(210)의 동작에 대응되며, 예측움직임벡터 결정단계(S1120)는 예측움직임벡터 결정부(220)의 동작에 대응되며, 움직임벡터 예측부호화단계(S1130)는 움직임벡터 예측부호화부(230)의 동작에 대응되므로 상세한 설명은 생략한다.
본 발명의 일 실시예에 따른 움직임벡터 복호화 방법은, 주변블록의 구조정보를 추출하는 구조정보 추출단계(S1210), 상기 구조정보를 바탕으로 예측움직임벡터를 결정하는 예측움직임벡터 결정단계(S1220), 비트스트림으로부터 차분움직임벡터를 추출하는 차분움직임벡터 추출단계(S1230), 상기 차분움직임벡터와 상기 예측움직임벡터를 가산하여 현재블록의 움직임벡터를 복원하는 움직임벡터 복호화단계(S1240)를 포함한다.
여기서, 구조정보 추출단계(S1210)는 구조정보 추출부(810)의 동작에 대응되며, 예측움직임벡터 결정단계(S1220)는 예측움직임벡터 결정부(820)의 동작에 대응되며, 차분움직임벡터 추출단계(S1230)는 차분움직임벡터 추출부(830)의 동작에 대응되며, 움직임벡터 복호화단계(S1240)는 움직임벡터 복호화부(840)의 동작에 대응되므로 상세한 설명은 생략한다.
본 발명의 일 실시예에 따른 영상 부호화/복호화 방법은, 본 발명의 일 실시예에 따른 영상 부호화 방법과 본 발명의 일 실시예에 따른 영상 복호화 방법을 결합하여 구현함으로써 실현할 수 있다.
본 발명의 일 실시예에 따른 영상 부호화/복호화 방법은, 현재 블록을 예측하여 예측 블록을 생성하고 현재 블록에서 예측 블록을 감산하여 잔차 블록을 생성하고 잔차 블록을 변환 및 양자화하여 주파수변환블록을 생성하고 현재블록의 주변블록의 구조정보를 바탕으로 예측움직임벡터를 결정하여 현재블록의 움직임벡터와 예측움직임벡터와의 차분값인 차분움직임벡터 및 양자화된 주파수변환블록을 부호화하는 영상 부호화단계 및 주변블록의 구조정보를 바탕으로 예측움직임벡터를 결정하고 비트스트림으로부터 차분움직임벡터를 추출하고 추출된 차분움직임벡터와 예측움직임벡터를 가산하여 복원될 현재블록의 움직임벡터를 복원하고 비트스트림으로부터 양자화된 주파수변환블록을 복호하고 복호된 주파수변환블록과 복원된 움직임벡터를 이용하여 현재블록을 복원하는 영상 복호화단계를 포함한다.
여기서 영상 부호화단계는 본 발명의 일 실시예에 따른 영상 부호화 단계로 구현 가능하며, 영상 복호화단계는 본 발명의 일 실시예에 따른 영상 복호화 단계로 구현 가능하다.
이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합하거나 결합하여 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 캐리어 웨이브 매체 등이 포함될 수 있다.
또한, 이상에서 기재된 "포함하다", "구성하다" 또는 "가지다" 등의 용어는, 특별히 반대되는 기재가 없는 한, 해당 구성 요소가 내재할 수 있음을 의미하는 것이므로, 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것으로 해석되어야 한다. 기술적이거나 과학적인 용어를 포함한 모든 용어들은, 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미가 있다. 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
이상에서 설명한 바와 같이 본 발명의 실시예에 의하면, 영상을 부호화하고 복호화하는 기술 분야에 적용되어, 주파수변환블록을 주파수영역으로 분할하여 주파수영역 부호화정보를 부호화함으로써, 0이 아닌 주파수가 저주파에 집중하는 일반적인 영상의 특성을 고려하여 효율적으로 부호화 효율을 높일 수 있는 매우 유용한 발명이다.

Claims (46)

  1. 삭제
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
  6. 삭제
  7. 삭제
  8. 삭제
  9. 영상을 복호화하는 장치에 있어서,
    현재블록의 주변블록의 에지를 포함하는 구조정보를 바탕으로 상기 현재블록의 예측움직임벡터를 결정하고 비트스트림으로부터 상기 현재블록의 차분움직임벡터를 추출하고 상기 차분움직임벡터와 상기 예측움직임벡터를 가산하여 상기 현재블록의 움직임벡터를 복원하고 상기 비트스트림으로부터 양자화된 주파수변환블록을 복호하는 복호화부;
    상기 양자화된 주파수변환블록을 역 양자화 및 역 변환하여 잔차 블록을 복원하는 역양자화 및 역변환부;
    상기 현재 블록을 예측하여 예측 블록을 생성하는 예측부; 및
    상기 복원되는 잔차 블록과 상기 예측 블록을 가산하여 상기 현재 블록을 복원하는 가산부
    를 포함하고,
    상기 복호화부는,
    상기 주변블록의 구조정보를 추출하는 구조정보 추출부;
    상기 구조정보를 바탕으로 상기 예측움직임벡터를 결정하는 예측움직임벡터 결정부;
    상기 비트스트림으로부터 상기 차분움직임벡터를 추출하는 차분움직임벡터 추출부; 및
    상기 차분움직임벡터와 상기 예측움직임벡터를 가산하여 상기 현재블록의 움직임벡터를 복원하는 움직임벡터 복호화부
    를 포함하는 것을 특징으로 하는 영상 복호화 장치.
  10. 삭제
  11. 제 9항에 있어서, 상기 예측움직임벡터 결정부는,
    상기 구조정보를 이용하여 상기 현재블록과 동일한 객체의 움직임을 표현하는 상기 주변블록의 움직임벡터를 이용하여 상기 예측움직임벡터로 결정하는 것을 특징으로 하는 영상 복호화 장치.
  12. 제 9항에 있어서,
    상기 구조정보 추출부는, 상기 에지가 구성하는 에지 라인에 따라 상기 주변블록을 분할하고,
    상기 예측움직임벡터 결정부는, 상기 분할된 주변블록 중에서 상기 현재블록에 인접한 인접분할영역의 움직임벡터를 이용하여 상기 예측움직임벡터를 산출하는 것을 특징으로 하는 영상 복호화 장치.
  13. 제 12항에 있어서,
    상기 에지 라인이 상기 현재블록을 가로지르는 경우에 상기 예측움직임벡터는 상기 에지 라인으로 분할되는 상기 현재블록의 면적 중에서 넓은 면적을 갖는 영역에 인접하는 인접분할영역의 움직임벡터를 이용하여 산출되는 것을 특징으로 하는 영상 복호화 장치.
  14. 제 12항에 있어서,
    상기 현재블록이 매크로블록인 경우,
    상기 인접분할영역에서 상기 현재 블록의 좌측 상단 지점에 가장 가까운 움직임 벡터들로부터 상기 예측움직임벡터가 결정되는 것을 특징으로 하는 영상 복호화 장치.
  15. 제 12항에 있어서,
    상기 현재 블록이 매크로블록으로부터 분할된 서브블록인 경우,
    상기 인접분할영역에서 상기 현재 블록과 가장 가까운 위치에 있는 주변 블록들의 움직임 벡터들로부터 상기 예측움직임벡터가 결정되는 것을 특징으로 하는 영상 복호화 장치.
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
  26. 삭제
  27. 삭제
  28. 삭제
  29. 삭제
  30. 삭제
  31. 삭제
  32. 삭제
  33. 삭제
  34. 삭제
  35. 삭제
  36. 삭제
  37. 삭제
  38. 삭제
  39. 삭제
  40. 삭제
  41. 삭제
  42. 삭제
  43. 삭제
  44. 삭제
  45. 삭제
  46. 삭제
KR1020100095118A 2010-09-30 2010-09-30 영상의 구조적 정보를 이용한 적응적 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 KR101658592B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020100095118A KR101658592B1 (ko) 2010-09-30 2010-09-30 영상의 구조적 정보를 이용한 적응적 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
PCT/KR2011/007228 WO2012044108A2 (ko) 2010-09-30 2011-09-30 영상의 구조적 정보를 이용한 적응적 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100095118A KR101658592B1 (ko) 2010-09-30 2010-09-30 영상의 구조적 정보를 이용한 적응적 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20120033546A KR20120033546A (ko) 2012-04-09
KR101658592B1 true KR101658592B1 (ko) 2016-09-21

Family

ID=45893686

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100095118A KR101658592B1 (ko) 2010-09-30 2010-09-30 영상의 구조적 정보를 이용한 적응적 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치

Country Status (2)

Country Link
KR (1) KR101658592B1 (ko)
WO (1) WO2012044108A2 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018124855A1 (ko) * 2017-01-02 2018-07-05 한양대학교 산학협력단 화면 간 예측을 이용한 영상 복호화 방법 및 장치
CN113468905B (zh) * 2021-07-12 2024-03-26 深圳思谋信息科技有限公司 图形码识别方法、装置、计算机设备和存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100212559B1 (ko) * 1996-03-22 1999-08-02 전주범 물체의 윤곽 부호화 시스템 및 그의 움직임 추정방법

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2738325B2 (ja) * 1995-01-24 1998-04-08 日本電気株式会社 動き補償フレーム間予測装置
KR101366093B1 (ko) * 2007-03-28 2014-02-21 삼성전자주식회사 영상의 부호화, 복호화 방법 및 장치

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100212559B1 (ko) * 1996-03-22 1999-08-02 전주범 물체의 윤곽 부호화 시스템 및 그의 움직임 추정방법

Also Published As

Publication number Publication date
WO2012044108A3 (ko) 2012-05-31
KR20120033546A (ko) 2012-04-09
WO2012044108A2 (ko) 2012-04-05

Similar Documents

Publication Publication Date Title
RU2715017C1 (ru) Устройство кодирования с предсказанием видео, способ кодирования с предсказанием видео, устройство декодирования с предсказанием видео и способ декодирования с предсказанием видео
KR101681303B1 (ko) 블록 분할예측을 이용한 영상 부호화/복호화 방법 및 장치
US9479791B2 (en) Image-filtering method and apparatus, and encoding/decoding method and apparatus using same
KR101943049B1 (ko) 영상 부호화/복호화 방법 및 장치
KR101444675B1 (ko) 영상 부호화 및 복호화 방법과 장치
KR101484171B1 (ko) 예측 움직임벡터 색인부호화에 기반한 움직임정보 생성/복원 장치 및 방법, 및 그것을 이용한 영상 부호화/복호화 장치 및 방법
KR101648058B1 (ko) 고정밀 필터를 이용한 영상 부호화/복호화 방법 및 장치
KR20120009861A (ko) 확장된 스킵모드를 이용한 영상 부호화/복호화 방법 및 장치
KR20130051029A (ko) 변환을 이용한 주파수 도메인 상의 적응적 루프 필터를 이용한 영상 부호화/복호화 방법 및 장치
KR102072124B1 (ko) 세밀한 예측 단위를 사용하는 효과적인 부호화/복호화 방법 및 장치
KR101506446B1 (ko) 움직임정보 병합을 이용한 부호움직임정보생성/움직임정보복원 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
KR101681301B1 (ko) 필터링모드 생략가능한 영상 부호화/복호화 방법 및 장치
KR101377529B1 (ko) 적응적 움직임 벡터 부호화/복호화를 이용한 영상 부호화/복호화 방법 및 장치
KR101658592B1 (ko) 영상의 구조적 정보를 이용한 적응적 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
KR20110066888A (ko) 움직임 보상 프레임의 선택적 필터링을 이용한 영상 부호화/복호화 방법 및 장치와 그를 위한 인터 예측 방법 및 장치
KR101943425B1 (ko) 비균등 양자화를 이용한 효과적인 부호화/복호화 방법 및 장치
KR101673026B1 (ko) 경쟁 기반 인터리브드 움직임 벡터코딩 방법 및 장치와 이를 이용한 영상 부호화/복호화 방법 및 장치
KR101693284B1 (ko) 전역움직임을 기반하여 결정된 부호화구조를 이용한 영상 부호화/복호화 방법 및 장치
KR101997655B1 (ko) 영상 부호화/복호화 방법 및 장치
KR101379189B1 (ko) 움직임 보상 프레임의 필터링을 이용한 영상 부호화/복호화 방법 및 장치
KR20160083832A (ko) 주파수변환단위 분할부호화 방법 및 장치와 이를 이용한 영상 부호화/복호화 방법 및 장치
KR101567961B1 (ko) 움직임정보 병합을 이용한 부호움직임정보생성/움직임정보복원 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
KR101567982B1 (ko) 움직임정보 병합을 이용한 부호움직임정보생성/움직임정보복원 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
KR101567986B1 (ko) 움직임정보 병합을 이용한 부호움직임정보생성/움직임정보복원 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
KR101527153B1 (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