KR101543313B1 - 공간 분할을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 - Google Patents
공간 분할을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 Download PDFInfo
- Publication number
- KR101543313B1 KR101543313B1 KR1020150008904A KR20150008904A KR101543313B1 KR 101543313 B1 KR101543313 B1 KR 101543313B1 KR 1020150008904 A KR1020150008904 A KR 1020150008904A KR 20150008904 A KR20150008904 A KR 20150008904A KR 101543313 B1 KR101543313 B1 KR 101543313B1
- Authority
- KR
- South Korea
- Prior art keywords
- motion vector
- group
- vector
- current block
- candidate
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/107—Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/567—Motion estimation based on rate distortion criteria
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
본 발명은 공간 분할을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치에 관한 것이다.
본 발명은 현재 블록의 후보 예측 움직임 벡터들을 적어도 하나의 후보 예측 움직임 벡터를 포함하는 복수 개의 그룹으로 구분하고, 각 그룹 내의 후보 예측 움직임 벡터들을 순차적으로 비교하여 하나의 후보 예측 움직임 벡터를 대표 예측 움직임 벡터로서 선택하여 그룹별 대표 예측 움직임 벡터를 선택하며, 그룹별 대표 예측 움직임 벡터 중에서 하나의 대표 예측 움직임 벡터를 예측 움직임 벡터로서 선택하며, 현재 블록의 현재 움직임 벡터와 선택되는 예측 움직임 벡터 간의 차이인 차분 벡터를 부호화하는 것을 특징으로 하는 움직임 벡터 부호화 방법을 제공한다.
본 발명에 의하면, 부호화할 차분 벡터의 크기를 줄이면서도 어떠한 예측 움직임 벡터가 선택되었는지를 나타내기 위한 부가 정보를 부호화함에 따라 발생하는 비트량을 억제할 수 있으므로, 움직임 벡터의 부호화 효율을 향상시켜 궁극적으로는 영상의 압축 효율을 향상시킬 수 있다.
본 발명은 현재 블록의 후보 예측 움직임 벡터들을 적어도 하나의 후보 예측 움직임 벡터를 포함하는 복수 개의 그룹으로 구분하고, 각 그룹 내의 후보 예측 움직임 벡터들을 순차적으로 비교하여 하나의 후보 예측 움직임 벡터를 대표 예측 움직임 벡터로서 선택하여 그룹별 대표 예측 움직임 벡터를 선택하며, 그룹별 대표 예측 움직임 벡터 중에서 하나의 대표 예측 움직임 벡터를 예측 움직임 벡터로서 선택하며, 현재 블록의 현재 움직임 벡터와 선택되는 예측 움직임 벡터 간의 차이인 차분 벡터를 부호화하는 것을 특징으로 하는 움직임 벡터 부호화 방법을 제공한다.
본 발명에 의하면, 부호화할 차분 벡터의 크기를 줄이면서도 어떠한 예측 움직임 벡터가 선택되었는지를 나타내기 위한 부가 정보를 부호화함에 따라 발생하는 비트량을 억제할 수 있으므로, 움직임 벡터의 부호화 효율을 향상시켜 궁극적으로는 영상의 압축 효율을 향상시킬 수 있다.
Description
본 발명은 공간 분할을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치에 관한 것이다. 더욱 상세하게는, 영상을 예측 부호화하는 데 이용되는 움직임 벡터를 효율적으로 압축하여 영상의 압축 효율을 향상시키기 위한 방법 및 장치에 관한 것이다.
H.264/AVC와 같은 통상적인 영상 압축 기술에서는 블록 기반으로 움직임을 추정하여 얻어지는 움직임 벡터를 예측 부호화하기 위해서, 부호화하고자 하는 블록의 주변 블록의 움직임 벡터들의 중앙값(Median)을 이용하여 예측 움직임 벡터를 결정하고, 부호화하고자 하는 움직임 벡터와 예측 움직임 벡터의 차분을 가변 길이 부호화하여 움직임 벡터를 압축한다.
최근 ITU-T VCEG(Video Coding Expert Group)에서는 KTA(Key Technical Area)라는 이름으로 기존의 H.264/AVC 기반으로 더 높은 성능을 갖는 코덱을 연구해왔는데, 그 중 MVComp(Competition-based Motion Vector Coding)라는 기법을 통하여 기존의 H.264/AVC의 움직임 벡터 부호화 기법을 개선하였다.
MVComp는 여러 개의 후보 예측 움직임 벡터를 두고, 현재 움직임 벡터와 예측 후에 얻어지는 움직임 벡터와의 차분 값이 최소가 되는 후보 예측 움직임 벡터를 선택하여 복호화기에 선정된 후보 예측 움직임 벡터에 대한 정보를 전송해주는 방법으로, 기존의 H.264/AVC에 비해서 5% 정도의 부호화 압축 효율을 개선하였다. 하지만, 이 기법은 후보 예측 움직임 벡터의 개수가 늘어날수록 복호화기에 전송해야 할 인덱싱 부가 정보(Indexing Side Information)의 양이 증가하는 문제점이 있다.
이에, 여러 개의 후보 예측 움직임 벡터 중에 현재 움직임 벡터와 가장 유사할 것과 같은 하나의 움직임 벡터를 부호화기에서 선택하여, 선택된 움직임 벡터가 최적의 움직임 벡터인지 아닌지만을 구별하기 위한 부가 정보를 보내는 기술 등이 제안되었다. 하지만, 제안된 방법은 현재 프레임의 비트를 에러 없이 전달 받았음에도 불구하고, 이전 프레임에서 발생한 에러 때문에 현재 프레임 및 다음 인트라 프레임 전까지의 프레임을 복원할 수 없게 되는 복호화기 충돌 문제(Decoder Crash Problem)와 복호화기에 많은 연산량 증가를 가져오는 한계를 가지는 문제점이 있다.
이에, 현재 부호화할 블록 주위의 움직임 벡터를 이용하여 현재 블록의 움직임 벡터를 결정하는 기법들이 제안되었다. 이 기법은 주변 블록의 움직임 벡터를 이용하여 인덱싱 부가 정보를 효율적으로 전송하고 후보 움직임 벡터의 선택을 이전 프레임의 정보와 분리시켜 복호화기 충돌 문제를 해결하였지만, 한정된 개수의 후보 움직임 벡터를 사용하기 때문에 압축 성능에 있어서 제한적이라는 한계를 가지는 문제점이 있다.
전술한 문제점을 해결하기 위해 본 발명은, 부호화할 움직임 벡터와 더욱 유사한 예측 움직임 벡터를 이용하여 움직임 벡터를 부호화하면서도 부호화된 비트량을 줄여 움직임 벡터를 효율적으로 압축하고 그에 따라 영상의 압축 효율을 향상시키는 데 주된 목적이 있다.
전술한 목적을 달성하기 위해 본 발명은, 움직임 벡터를 부호화하는 장치에 있어서, 현재 블록의 후보 예측 움직임 벡터들을 복수 개의 그룹으로 결집시키는 후보 예측 움직임 벡터 결집기; 결집된 각 그룹 내의 후보 예측 움직임 벡터 중 하나의 후보 예측 움직임 벡터를 대표 예측 움직임 벡터로서 선택하여 그룹별 대표 예측 움직임 벡터를 선택하는 대표 예측 움직임 벡터 선택기; 그룹별 대표 예측 움직임 벡터 중에서 하나의 대표 예측 움직임 벡터를 예측 움직임 벡터로서 선택하는 예측 움직임 벡터 선택기; 및 현재 블록의 현재 움직임 벡터와 선택되는 예측 움직임 벡터 간의 차이인 차분 벡터를 부호화하는 차분 벡터 부호화기를 포함하는 것을 특징으로 하는 움직임 벡터 부호화 장치를 제공한다.
또한, 본 발명의 다른 목적에 의하면, 영상을 부호화하는 장치에 있어서, 현재 블록의 움직임 벡터인 현재 움직임 벡터를 결정하고 현재 움직임 벡터를 이용하여 현재 블록을 예측 부호화하는 영상 부호화기; 및 현재 블록의 후보 예측 움직임 벡터들이 공간적 위치를 기초로 결집되는 복수 개의 그룹에 대해 그룹별 대표 예측 움직임 벡터를 선택하고, 그룹별 대표 예측 움직임 벡터 중에서 하나의 대표 예측 움직임 벡터를 예측 움직임 벡터로서 선택하며, 결정되는 현재 움직임 벡터와 선택되는 예측 움직임 벡터 간의 차인 차분 벡터와 선택되는 하나의 대표 예측 움직임 벡터가 포함되는 그룹을 나타내는 그룹 인덱스를 부호화하여 움직임 벡터 데이터를 생성하는 움직임 벡터 부호화기를 포함하는 것을 특징으로 하는 영상 부호화 장치를 제공한다.
또한, 본 발명의 또 다른 목적에 의하면, 움직임 벡터를 복호화하는 장치에 있어서, 현재 블록의 후보 예측 움직임 벡터들을 복수 개의 그룹으로 결집시키는 후보 예측 움직임 벡터 결집기; 결집된 각 그룹 내의 후보 예측 움직임 벡터 중 하나의 후보 예측 움직임 벡터를 대표 예측 움직임 벡터로서 선택하여 그룹별 대표 예측 움직임 벡터를 선택하는 대표 예측 움직임 벡터 선택기; 움직임 벡터 데이터로부터 추출되는 그룹 인덱스 데이터를 복호화하여 그룹 인덱스를 복원하고, 그룹별 대표 예측 움직임 벡터 중에서 복원되는 그룹 인덱스에 의해 식별되는 그룹의 대표 예측 움직임 벡터를 예측 움직임 벡터로서 선택하는 예측 움직임 벡터 복원기; 및 움직임 벡터 데이터로부터 추출되는 차분 벡터 데이터를 복호화하여 차분 벡터를 복원하고, 복원되는 차분 벡터와 선택되는 예측 움직임 벡터를 현재 블록의 현재 움직임 벡터로서 복원하는 현재 움직임 벡터 복원기를 포함하는 것을 특징으로 하는 움직임 벡터 복호화 장치를 제공한다.
또한, 본 발명의 또 다른 목적에 의하면, 영상을 복호화하는 장치에 있어서, 비트스트림으로부터 추출되는 움직임 벡터 데이터를 복호화하여 차분 벡터와 그룹 색인을 복원하고, 현재 블록의 후보 예측 움직임 벡터들이 공간적 위치를 기초로 결집되는 복수 개의 그룹에 대해 그룹별 대표 예측 움직임 벡터를 선택하며, 그룹별 대표 예측 움직임 벡터 중에서 복원되는 그룹 색인에 의해 식별되는 그룹의 대표 예측 움직임 벡터를 예측 움직임 벡터로서 선택하며, 복원되는 차분 벡터와 선택되는 예측 움직임 벡터를 가산하여 현재 블록의 현재 움직임 벡터를 복원하는 움직임 벡터 복호화기; 및 비트스트림으로부터 추출되는 영상 데이터를 복원되는 현재 움직임 벡터를 이용하여 예측 복호화하여 현재 블록을 복원하는 영상 복호화기를 포함하는 것을 특징으로 하는 영상 복호화 장치를 제공한다.
또한, 본 발명의 또 다른 목적에 의하면, 움직임 벡터를 부호화하는 방법에 있어서, 현재 블록의 후보 예측 움직임 벡터들을 복수 개의 그룹으로 결집시키는 단계; 결집된 각 그룹 내의 후보 예측 움직임 벡터 중 하나의 후보 예측 움직임 벡터를 대표 예측 움직임 벡터로서 선택하여 그룹별 대표 예측 움직임 벡터를 선택하는 단계; 그룹별 대표 예측 움직임 벡터 중에서 하나의 대표 예측 움직임 벡터를 예측 움직임 벡터로서 선택하는 단계; 및 현재 블록의 현재 움직임 벡터와 선택되는 예측 움직임 벡터 간의 차이인 차분 벡터를 부호화하는 단계를 포함하는 것을 특징으로 하는 움직임 벡터 부호화 방법을 제공한다.
또한, 본 발명의 또 다른 목적에 의하면, 영상을 부호화하는 방법에 있어서, 현재 블록의 움직임 벡터인 현재 움직임 벡터를 결정하는 단계; 결정되는 현재 움직임 벡터를 이용하여 현재 블록을 예측 부호화하는 단계; 현재 블록의 후보 예측 움직임 벡터들이 공간적 위치를 기초로 결집되는 복수 개의 그룹에 대해 그룹별 대표 예측 움직임 벡터를 선택하는 단계; 그룹별 대표 예측 움직임 벡터 중에서 하나의 대표 예측 움직임 벡터를 예측 움직임 벡터로서 선택하는 단계; 및 결정되는 현재 움직임 벡터와 선택되는 예측 움직임 벡터 간의 차인 차분 벡터와 선택되는 하나의 대표 예측 움직임 벡터가 포함되는 그룹을 나타내는 그룹 인덱스를 부호화하는 단계를 포함하는 것을 특징으로 하는 영상 부호화 방법을 제공한다.
또한, 본 발명의 또 다른 목적에 의하면, 움직임 벡터를 복호화하는 방법에 있어서, 움직임 벡터 데이터로부터 추출되는 차분 벡터 데이터와 그룹 인덱스 데이터를 복호화하여 차분 벡터와 그룹 인덱스를 복원하는 단계; 현재 블록의 후보 예측 움직임 벡터들을 복수 개의 그룹으로 결집시키는 단계; 결집된 각 그룹 내의 후보 예측 움직임 벡터 중 하나의 후보 예측 움직임 벡터를 대표 예측 움직임 벡터로서 선택하여 그룹별 대표 예측 움직임 벡터를 선택하는 단계; 그룹별 대표 예측 움직임 벡터 중에서 복원되는 그룹 인덱스에 의해 식별되는 그룹의 대표 예측 움직임 벡터를 예측 움직임 벡터로서 선택하는 단계; 및 복원되는 차분 벡터와 선택되는 예측 움직임 벡터를 가산하여 현재 블록의 현재 움직임 벡터를 복원하는 단계를 포함하는 것을 특징으로 하는 움직임 벡터 복호화 방법을 제공한다.
또한, 본 발명의 또 다른 목적에 의하면, 영상을 복호화하는 방법에 있어서, 비트스트림으로부터 추출되는 움직임 벡터 데이터를 복호화하여 차분 벡터와 그룹 색인을 복원하는 단계; 현재 블록의 후보 예측 움직임 벡터들이 공간적 위치를 기초로 결집되는 복수 개의 그룹에 대해 그룹별 대표 예측 움직임 벡터를 선택하는 단계; 그룹별 대표 예측 움직임 벡터 중에서 복원되는 그룹 색인에 의해 식별되는 그룹의 대표 예측 움직임 벡터를 예측 움직임 벡터로서 선택하는 단계; 복원되는 차분 벡터와 선택되는 예측 움직임 벡터를 가산하여 현재 블록의 현재 움직임 벡터를 복원하는 단계; 및 비트스트림으로부터 추출되는 영상 데이터를 복원되는 현재 움직임 벡터를 이용하여 예측 복호화하여 현재 블록을 복원하는 단계를 포함하는 것을 특징으로 하는 영상 복호화 방법을 제공한다.
이상에서 설명한 바와 같이 본 발명에 의하면, 많은 개수의 후보 예측 움직임 벡터들을 이용하여 예측 움직임 벡터를 선택하여 부호화할 차분 벡터의 크기를 줄이면서도 어떠한 예측 움직임 벡터가 선택되었는지를 나타내기 위한 부가 정보를 부호화함에 따라 발생하는 비트량을 억제할 수 있으므로, 움직임 벡터의 부호화 효율을 향상시켜 궁극적으로는 영상의 압축 효율을 향상시킬 수 있다.
도 1은 본 발명의 일 실시예에 따른 영상 부호화 장치를 간략하게 나타낸 블록 구성도,
도 2는 본 발명의 일 실시예에 따른 움직임 벡터 부호화 장치를 간략하게 나타낸 블록 구성도,
도 3 내지 도 5는 본 발명의 일 실시예에 따라 후보 예측 움직임 벡터들을 공간적 위치를 기초로 복수 개의 그룹으로 결집시키는 과정을 나타낸 예시도,
도 6은 본 발명의 일 실시예에 따라 그룹별 대표 예측 움직임 벡터를 선택하는 과정을 나타낸 예시도,
도 7은 본 발명의 일 실시예에 따른 움직임 벡터 부호화 방법을 설명하기 위한 순서도,
도 8은 본 발명의 일 실시예에 따른 영상 부호화 방법을 설명하기 위한 순서도,
도 9는 본 발명의 일 실시예에 따른 영상 복호화 장치를 간략하게 나타낸 블록 구성도,
도 10은 본 발명의 일 실시예에 따른 움직임 벡터 복호화 장치를 간략하게 나타낸 블록 구성도,
도 11은 본 발명의 일 실시예에 따른 움직임 벡터 복호화 방법을 설명하기 위한 순서도,
도 12는 본 발명의 일 실시예에 따른 영상 복호화 방법을 설명하기 위한 순서도이다.
도 2는 본 발명의 일 실시예에 따른 움직임 벡터 부호화 장치를 간략하게 나타낸 블록 구성도,
도 3 내지 도 5는 본 발명의 일 실시예에 따라 후보 예측 움직임 벡터들을 공간적 위치를 기초로 복수 개의 그룹으로 결집시키는 과정을 나타낸 예시도,
도 6은 본 발명의 일 실시예에 따라 그룹별 대표 예측 움직임 벡터를 선택하는 과정을 나타낸 예시도,
도 7은 본 발명의 일 실시예에 따른 움직임 벡터 부호화 방법을 설명하기 위한 순서도,
도 8은 본 발명의 일 실시예에 따른 영상 부호화 방법을 설명하기 위한 순서도,
도 9는 본 발명의 일 실시예에 따른 영상 복호화 장치를 간략하게 나타낸 블록 구성도,
도 10은 본 발명의 일 실시예에 따른 움직임 벡터 복호화 장치를 간략하게 나타낸 블록 구성도,
도 11은 본 발명의 일 실시예에 따른 움직임 벡터 복호화 방법을 설명하기 위한 순서도,
도 12는 본 발명의 일 실시예에 따른 영상 복호화 방법을 설명하기 위한 순서도이다.
이하, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.
이하에서 후술할 움직임 벡터 부호화 장치(Motion Vector Encoding Apparatus), 움직임 벡터 복호화 장치(Motion Vector Decoding Apparatus), 영상 부호화 장치(Video Encoding Apparatus), 영상 복호화 장치(Video Decoding Apparatus)는 개인용 컴퓨터(PC: Personal Computer), 노트북 컴퓨터, 개인 휴대 단말기(PDA: Personal Digital Assistant), 휴대형 멀티미디어 플레이어(PMP: Portable Multimedia Player), 플레이스테이션 포터블(PSP: PlayStation Portable), 이동통신 단말기(Mobile Communication Terminal) 등과 같은 사용자 단말기이거나 응용 서버와 서비스 서버 등 서버 단말기일 수 있으며, 각종 기기 또는 유무선 통신망과 통신을 수행하기 위한 통신 모뎀 등의 통신 장치, 움직임 벡터를 부호화거나 복호화거나 영상을 부호화하거나 복호화하기 위한 각종 프로그램과 데이터를 저장하기 위한 메모리, 프로그램을 실행하여 연산 및 제어하기 위한 마이크로프로세서 등을 구비하는 다양한 장치를 의미한다.
또한, 움직임 벡터 부호화 장치 또는 영상 부호화 장치에 의해 비트스트림으로 부호화된 움직임 벡터 또는 영상은 실시간 또는 비실시간으로 인터넷, 근거리 무선 통신망, 무선랜망, 와이브로망, 이동통신망 등의 유무선 통신망 등을 통하거나 케이블, 범용 직렬 버스(USB: Universal Serial Bus) 등과 같은 다양한 통신 인터페이스를 통해 움직임 벡터 복호화 장치 또는 영상 복호화 장치로 전송되어 움직임 벡터 복호화 장치에서 복호화되어 움직임 벡터로서 복원되거나 영상 복호화 장치에서 복호화되어 영상으로 복원되고 재생될 수 있다.
통상적으로 동영상은 일련의 픽처(Picture)로 구성되어 있으며, 각 픽처들은 블록(Block)과 같은 소정의 영역으로 분할된다. 영상의 영역이 블록으로 분할되는 경우에는 분할된 블록은 부호화 방법에 따라 크게 인트라 블록(Intra Block), 인터 블록(Inter Block)으로 분류된다. 인트라 블록은 인트라 예측 부호화(Intra Prediction Coding) 방식을 사용하여 부호화되는 블록을 뜻하는데, 인트라 예측 부호화란 현재 부호화를 수행하는 현재 픽처 내에서 이전에 부호화되고 복호화되어 복원된 블록들의 화소를 이용하여 현재 부호화하고자 하는 블록인 현재 블록의 화소를 예측함으로써 예측 블록을 생성하고 현재 블록의 화소와의 차분값을 부호화하는 방식이다. 인터 블록은 인터 예측 부호화(Inter Prediction Coding)를 사용하여 부호화되는 블록을 뜻하는데, 인터 예측 부호화란 하나 이상의 과거 픽처 또는 미래 픽처를 참조하여 현재 픽처 내의 현재 블록을 예측함으로써 예측 블록을 생성하고 현재 블록과의 차분값을 부호화하는 방식이다. 여기서, 현재 픽처를 부호화하거나 복호화하는데 참조되는 픽처를 참조 픽처(Reference Picture)라고 한다.
도 1은 본 발명의 일 실시예에 따른 영상 부호화 장치를 간략하게 나타낸 블록 구성도이다.
본 발명의 일 실시예에 따른 영상 부호화 장치(100)는 영상을 부호화하는 장치로서, 움직임 벡터 부호화기(Motion Vector Encoder, 110)와 영상 부호화기(Video Encoder, 120)를 포함하여 구성될 수 있다.
움직임 벡터 부호화기(110)는 현재 블록의 후보 예측 움직임 벡터들(Candidate Predictied Motion Vector)이 공간적 위치를 기초로 결집(Aggregation)되는 복수 개의 그룹에 대해 그룹별 대표 예측 움직임 벡터(Representative Predictied Motion Vector Classified by Group)를 선택하고, 그룹별 대표 예측 움직임 벡터 중에서 하나의 대표 예측 움직임 벡터(Representative Predictied Motion Vector)를 예측 움직임 벡터(Predictied Motion Vector)로서 선택하며, 현재 움직임 벡터(Current Motion Vector)와 선택되는 예측 움직임 벡터 간의 차인 차분 벡터(Differential Motion Vector)와 선택되는 하나의 대표 예측 움직임 벡터가 포함되는 그룹을 나타내는 그룹 인덱스(Group Index)를 부호화한다. 차분 벡터는 부호화되어 차분 벡터 데이터로서 생성되고 그룹 인덱스는 부호화되어 그룹 인덱스 데이터로서 생성된다.
따라서, 움직임 벡터 부호화기(110)는 차분 벡터 데이터와 그룹 인덱스 데이터를 포함하는 움직임 벡터 데이터를 생성한다. 여기서, 움직임 벡터 부호화기(110)는 차분 벡터를 생성하는 데 있어서, 영상 부호화기(120)에서 현재 블록을 예측 부호화하기 위해 결정된 현재 움직임 벡터를 이용한다. 움직임 벡터 부호화기(110)에 대해서는 후술하는 과정에서 도 2 내지 도 6을 통해 상세히 설명한다.
영상 부호화기(120)는 현재 블록의 움직임 벡터인 현재 움직임 벡터를 결정하고 현재 움직임 벡터를 이용하여 현재 블록을 예측 부호화한다. 이와 같이 현재 블록이 예측 부호화되어 영상 데이터가 생성된다.
이를 위해, 영상 부호화기(120)는 예측기(Predictor), 감산기(Subtracter), 변환기 및 양자화기(Transformer and Quantizer), 부호화기(Encoder)를 포함하여 구성될 수 있으며, 역 양자화기 및 역 변환기(Inverse Transformer and Inverse Quantizer), 가산기(Adder), 디블로킹 필터(Deblocking Filter), 메모리(Memory) 등을 추가로 포함할 수 있다. 여기서, 예측기는 현재 블록의 움직임을 추정하여 현재 움직임 벡터를 결정하고 현재 움직임 벡터를 이용하여 현재 블록의 움직임을 보상하여 예측 블록(Predicted Block)을 생성하며, 감산기는 현재 블록과 예측 블록을 감산하여 잔여 블록(Residual Block)을 생성하며, 변환기 및 양자화기는 잔여 블록을 변환 및 양자화하여 양자화된 변환 계수(Quantized Transform Coefficient)를 생성하며, 부호화기는 양자화된 변환 계수를 부호화하여 영상 데이터를 생성한다. 또한, 역 양자화기 및 역 변환기는 양자화된 변환 계수를 역 양자화 및 역 변환하여 잔여 블록을 복원하고 가산기는 예측 블록과 복원되는 잔여 블록을 복원하여 현재 블록을 복원하며, 복원된 현재 블록은 디블로킹 필터(Deblocking Filter)에 의해 디블로킹 필터링되어 메모리에 픽처 단위로 누적되어 참조 픽처로서 저장되고 다음 블록 또는 다음 픽처를 예측하는 데 활용된다.
도 2는 본 발명의 일 실시예에 따른 움직임 벡터 부호화 장치를 간략하게 나타낸 블록 구성도이다.
본 발명의 일 실시예에 따른 움직임 벡터 부호화 장치는 도 1을 통해 전술한 영상 부호화 장치(100)에서는 움직임 벡터 부호화기(110)로 구현될 수 있다. 이하에서는 설명의 편의를 위해, 본 발명의 일 실시예에 따른 움직임 벡터 부호화 장치를 움직임 벡터 부호화기(110)라 칭한다.
움직임 벡터 부호화기(110)는 후보 예측 움직임 벡터 결집기(Candidate Predicted Motion Vector Aggregator, 210), 대표 예측 움직임 벡터 선택기(Representative Predicted Motion Vector Selector, 220), 예측 움직임 벡터 선택기(Predicted Motion Vector Selector, 230), 차분 벡터 부호화기(Differential Motion Vector Encoder, 240) 및 예측 움직임 벡터 부호화기(Predicted Motion Vector Encoder, 250)를 포함하여 구성될 수 있다.
후보 예측 움직임 벡터 결집기(210)는 현재 블록의 후보 예측 움직임 벡터들을 적어도 하나의 후보 예측 움직임 벡터를 포함하는 복수 개의 그룹으로 구분하여 결집한다.
여기서, 현재 블록의 후보 예측 움직임 벡터들이란 현재 블록의 예측 움직임 벡터로서 결정될 가능성이 높은 후보들을 말한다. 이러한 후보 예측 움직임 벡터들은 예를 들어, MV H .264 , MV extspa , MV a , MV b , MV c , MV d , MV col , MV 0 등과 같은 움직임 벡터들이 될 수 있다. MV H .264 는 H.264/AVC 압축 표준에서 예측 움직임 벡터로 이용되는 움직임 벡터로서, 현재 블록의 주변 블록의 움직임 벡터의 중간값(Median)을 가지는 움직임 벡터를 말한다. MV extspa 는 현재 블록의 주변 블록의 존재 여부에 따라 예측 움직임 벡터로 이용되는 움직임 벡터를 말한다. MV a , MV b , MV c , MV d 는 현재 블록의 주변 블록의 움직임 벡터를 말한다. MV col 는 참조 픽처에서 현재 블록과 동일한 위치에 있는 블록의 움직임 벡터를 말한다. MV 0 는 (0, 0)의 움직임 벡터인 제로 벡터를 말한다.
일 예로, 현재 블록의 왼쪽 블록을 블록 a, 위쪽 블록을 블록 b, 위쪽 오른쪽 블록을 블록 c, 위쪽 왼쪽 블록을 블록 d라고 가정하면, 블록 a의 움직임 벡터는 MV a , 블록 b의 움직임 벡터는 MV b , 블록 c의 움직임 벡터는 MV c , 블록 d의 움직임 벡터는 MV d 이 된다. MV H .264 는 MV a , MV b , MV c 의 중간값으로 계산될 수 있으며, MV extspa 는 현재 블록의 주위에 블록 a, 블록 b, 블록 c가 모두 이용 가능한 경우에는 MV H.264 가 되며, 블록 a, 블록 b, 블록 c 중 하나 또는 두 개의 블록이 이용 가능하지 않은 경우에는 MV a , MV b , MV c 순서로 이용 가능한 움직임 벡터가 되며, 블록 a, 블록 b, 블록 c가 모두 이용 가능하지 않은 경우에는 MV 0 가 된다.
다만, 전술한 현재 블록의 후보 예측 움직임 벡터들은 설명의 편의를 위한 예시일 뿐, 본 발명의 일 실시예에서 이용되는 현재 블록의 후보 예측 움직임 벡터들이 전술한 예시로 한정되는 것은 아니며, 움직임 벡터 부호화 장치와 후술할 움직임 벡터 복호화 장치 또는 영상 부호화 장치와 후술할 영상 복호화 장치 간에 미리 약속된다는 전제하에서, 전술한 예시의 일부만이 후보 예측 움직임 벡터들로 이용될 수도 있고, 다른 다양한 후보 예측 움직임 벡터들이 추가로 이용될 수 있을 것이며, 전술한 예시의 전부가 이용되지 않고 다른 후보 예측 움직임 벡터들이 이용될 수도 있다.
후보 예측 움직임 벡터 결집기(210)는 현재 블록의 후보 예측 움직임 벡터들의 공간적 위치를 기초로 복수 개의 그룹으로 결집시킬 수 있다. 즉, 후보 예측 움직임 벡터 결집기(210)는 현재 블록의 후보 예측 움직임 벡터들의 공간적 위치를 고려하여 적절히 후보 예측 움직임 벡터들을 복수 개의 그룹으로 결집시킨다. 이때, 후보 예측 움직임 벡터 결집기(210)는 후보 예측 움직임 벡터들을 결집시키는 그룹의 개수를 임의로 선택할 수도 있고, 움직임 벡터 부호화 장치와 움직임 벡터 복호화 장치 또는 영상 부호화 장치와 영상 복호화 장치가 미리 약속한 개수로 선택할 수도 있다. 만약, 그룹의 개수가 미리 약속한 개수로 선택되는 경우에는 후보 예측 움직임 벡터들이 몇 개의 그룹으로 결집되는지를 나타내기 위해 그룹 개수에 대한 정보가 부호화될 필요가 없지만, 그룹의 개수가 임의의 개수로 선택되는 경우에는 그룹 개수에 대한 정보는 부호화되어 비트스트림의 슬라이스 헤더, 픽처 헤더, 시퀀스 헤더 등에 삽입되어야 한다.
후보 예측 움직임 벡터 결집기(210)는 K-Means 알고리즘을 이용하여 현재 블록의 후보 예측 움직임 벡터들을 그의 공간적 위치를 기초로 분할하여 복수 개의 그룹으로 결집시킬 수 있다. 즉, 후보 예측 움직임 벡터 결집기(210)는 현재 블록의 후보 예측 움직임 벡터들 중에서 복수 개의 후보 예측 움직임 벡터를 복수 개의 그룹의 중심값으로 설정하고, 각 그룹에 대해 중심값과의 공간적인 거리가 거리 임계값 이하가 되는 후보 예측 움직임 벡터를 각 그룹으로 결집시키며, 각 그룹에 대해 결집되는 후보 예측 움직임 벡터 간의 거리에 대한 제곱의 평균이 평균 임계값 이하가 되도록 중심값을 재설정하며, 이와 같이 각 그룹으로 결집시키고 중심값을 재설정하는 과정을 각 그룹에 대해 결집되는 후보 예측 움직임 벡터 간의 거리에 대한 제곱의 평균이 평균 임계값 이하가 될 때까지 반복함으로써 현재 블록의 후보 예측 움직임 벡터들을 복수 개의 그룹으로 결집시킬 수 있다.
도 3 내지 도 5는 본 발명의 일 실시예에 따라 후보 예측 움직임 벡터들을 공간적 위치를 기초로 복수 개의 그룹으로 결집시키는 과정을 나타낸 예시도이다.
도 3 내지 도 5에서는 현재 블록의 후보 예측 움직임 벡터들이 MV H .264 , MV extspa , MV a , MV b , MV c , MV d , MV col , MV 0 로 설정된 경우, K-Means 알고리즘을 이용하여 현재 블록의 주변 움직임 벡터들을 포함하는 후보 예측 움직임 벡터들을 그의 공간적 위치를 기초로 분할하여 복수 개의 그룹으로 결집시키는 과정을 예시적으로 나타내었다.
도 3에서는 현재 블록의 후보 예측 움직임 벡터들을 그의 공간적인 위치를 고려하여 X-Y 평면 상에 예시적으로 나타내었다. 후보 예측 움직임 벡터 결집기(210)는 도 3과 같이 나타낸 후보 예측 움직임 벡터들 중 복수 개의 후보 예측 움직임 벡터를 임의로 선택하여 복수 개의 그룹의 중심값으로 설정한다.
도 4에서는 도 3과 같이 나타낸 후보 예측 움직임 벡터 중에서 4 개의 후보 예측 움직임 벡터를 4 개의 그룹의 중심값으로 설정한 경우를 예시적으로 나타내었다. 4 개의 그룹은 그룹 A, 그룹 B, 그룹 C 및 그룹 D로 나타내었으며, 그룹 A에서는 MV d 가 초기의 중심값으로 설정된 것으로 가정하고, 그룹 B에서는 MV H .264 가 초기의 중심값으로 설정된 것으로 가정하며, 그룹 C에서는 MV col 가 초기의 중심값으로 설정된 것으로 가정하며, 그룹 D에서는 MV extspa 가 초기의 중심값으로 설정된 것으로 가정하였다.
후보 예측 움직임 벡터 결집기(210)는 도 4에 도시한 바와 같이 4 개의 그룹의 초기의 중심값이 설정되면, 각 그룹의 중심값과 현재 블록의 후보 예측 움직임 벡터들 간의 공간적 거리를 계산하여 계산된 거리가 기 설정된 거리 임계값 이하가 되는 후보 예측 움직임 벡터를 선택하여 해당 그룹에 결집시킨다. 도 4에서는 그룹 A의 초기의 중심값으로 설정된 MV d 와 현재 블록의 후보 예측 움직임 벡터들인 MV H.264 , MV extspa , MV a , MV b , MV c , MV d , MV col , MV 0 각각의 거리가 계산되고, 계산된 거리가 기 설정된 거리 임계값 이하가 되는 후보 예측 움직임 벡터인 MV a 와 중심값으로 설정된 후보 예측 움직임 벡터인 MV d 가 그룹 A에 결집되었다. 마찬가지 방식으로 그룹 B, 그룹 C 및 그룹 D에 대해서도 동일한 방식으로 각 그룹의 중심값과 후보 예측 움직임 벡터들 간의 거리가 계산되고 계산된 거리가 기 설정된 거리 임계값 이하가 되는 후보 예측 움직임 벡터가 해당 그룹으로 결집되어, 그룹 B에는 MV a 와 MV H.264 가 결집되고, 그룹 C에는 MV col 가 결집되며, 그룹 D에는 MV b , MV extspa , MV 0 가 결집되었다.
도 5에서는 도 4에 도시한 바와 같이 초기 중심값을 중심으로 결집된 그룹에 대해 중심값을 재설정한 모습을 예시적으로 나타내었다.
초기의 중심값을 중심으로 결집된 그룹이 형성되면, 후보 예측 움직임 벡터 결집기(210)는 초기 중심값을 중심으로 후보 움직임 벡터가 결집되어 형성된 각 그룹에 대해 각 그룹 내의 후보 예측 움직임 벡터 간의 거리에 대한 제곱의 평균이 기 설정된 평균 임계값 이하가 되도록 중심값을 재설정한다.
도 5에서는 그룹 A 내의 후보 예측 움직임 벡터들인 MV a 와 MV d 간의 거리가 기 설정된 평균 임계값 이하가 될 수 있도록 중심값을 재설정하여 MV a 와 MV d 사이에 새로운 중심값이 설정되었다. 마찬가지로 그룹 B, 그룹 C, 그룹 D에 대해서도 새로운 중심값이 도 5에 도시한 바와 같이 설정되었다.
이후, 후보 움직임 벡터 결집기(210)는 각 그룹의 재설정된 중심값과 현재 블록의 후보 예측 움직임 벡터들 간의 공간적 거리를 계산하여 계산된 거리가 기 설정된 거리 임계값 이하가 되는 후보 예측 움직임 벡터를 선택하여 해당 그룹에 결집시키고, 각 그룹 내의 후보 예측 움직임 벡터 간의 거리에 대한 제곱의 평균이 기 설정된 평균 임계값 이하가 되도록 중심값을 재설정하는 과정을 반복한다. 이와 같이 반복하는 과정에서, 각 그룹 내에 결집되는 후보 움직임 벡터가 달라질 수 있으며, 그에 따라 각 그룹 내의 후보 예측 움직임 벡터 간의 거리에 대한 제곱의 평균이 기 설정된 평균 임계값 이하가 될 수 있도록 수렴된다. 만약에 초기의 중심값 또는 재설정된 중심값을 중심으로 결집된 그룹 내의 후보 예측 움직임 벡터 간의 거리에 대한 제곱의 평균이 이미 평균 임계값 이하라면, 후보 움직임 벡터 결집기(210)는 중심값을 재설정하지 않고, 설정되어 있는 중심값을 최종 중심값으로 결정하고 해당 최종 중심값으로 형성된 그룹을 최종 그룹으로 결정한다. 도 5에서는 재설정된 중심값이 최종 중심값인 경우를 나타내었다.
다시 도 2를 참조하면, 대표 예측 움직임 벡터 선택기(220)는 후보 움직임 벡터 결집기(210)에 의해 결집된 각 그룹 내의 후보 예측 움직임 벡터들을 순차적으로 비교하여 하나의 후보 예측 움직임 벡터를 대표 예측 움직임 벡터로서 선택하여 그룹별 대표 예측 움직임 벡터를 선택한다. 이때, 대표 예측 움직임 벡터 선택기(220)는, 도 6에 예시적으로 도시한 바와 같이, 후보 예측 움직임 벡터 결집기(210)에 의해 결집된 각 그룹에 대해 그룹 내의 후보 예측 움직임 벡터 중에서 그룹 내의 후보 예측 움직임 벡터의 중심값과의 공간적인 거리가 가장 가까운 후보 예측 움직임 벡터를 선택함으로써, 그룹별 대표 예측 움직임 벡터를 선택할 수 있다.
도 6은 본 발명의 일 실시예에 따라 그룹별 대표 예측 움직임 벡터를 선택하는 과정을 나타낸 예시도이다.
도 6에서는 도 5에 도시한 바와 같이 4 개의 그룹에 후보 예측 움직임 벡터들이 나누어 결집되고 최종적인 중심값이 설정된 경우, 각 그룹에 대해 선택되는 대표 예측 움직임 벡터를 예시적으로 나타내었다.
도 6에서 도시한 바와 같이, 그룹 A에서는 MV d 가 MV c 보다 최종적인 중심값의 위치에서 공간적으로 가까우므로 MV d 가 대표 예측 움직임 벡터로서 선택된다. 그룹 B에서는 MV H .264 가 MV a 보다 최종적인 중심값의 위치에서 공간적으로 가까우므로 MV H. 264가 대표 예측 움직임 벡터로서 선택된다. 그룹 C에서는 MV col 가 최종적인 중심값이 되므로 MV col 가 대표 예측 움직임 벡터로서 선택된다. 그룹 D에서는 MV b 가 다른 움직임 벡터인 MV extspa 및 MV 0 와 비교할 때 최종적인 중심값의 위치에서 공간적으로 가장 가까우므로 MV b 가 대표 예측 움직임 벡터로서 선택된다.
다시 도 2를 참조하면, 예측 움직임 벡터 선택기(230)는 그룹별 대표 예측 움직임 벡터 중에서 하나의 대표 예측 움직임 벡터를 예측 움직임 벡터로서 선택한다. 여기서, 예측 움직임 벡터 선택기(230)는 율-왜곡 비용(Rate-Distortion Cost)을 이용하여 그룹별 대표 예측 움직임 벡터 중에서 하나의 대표 예측 움직임 벡터를 선택할 수 있다. 즉, 예측 움직임 벡터 선택기(230)는 그룹별 대표 예측 움직임 벡터 각각을 사용했을 때 현재 블록을 부호화함에 따라 발생하는 율-왜곡 비용을 계산하고 계산된 율-왜곡 비용이 가장 작은 그룹의 대표 예측 움직임 벡터를 현재 블록의 예측 움직임 벡터로서 선택할 수 있다. 다만, 율-왜곡 비용은 예측 움직임 벡터를 선택하는 데 이용될 수 있는 기준을 예시한 것일 뿐, 본 발명의 일 실시예에서 반드시 율-왜곡 비용을 이용하여 그룹별 대표 예측 움직임 벡터 중에서 예측 움직임 벡터를 선택해야 하는 것은 아니며, 다양한 부호화 비용을 이용하여 예측 움직임 벡터를 선택할 수도 있을 것이다.
차분 벡터 부호화기(240)는 현재 블록의 현재 움직임 벡터와 선택되는 예측 움직임 벡터 간의 차이인 차분 벡터를 부호화한다. 즉, 차분 벡터 부호화기(240)는 영상 부호화기(120)에 의해 결정된 현재 움직임 벡터와 예측 움직임 벡터 선택기(230)에 의해 선택되는 예측 움직임 벡터를 감산하여 차분 벡터를 구하고 차분 벡터를 부호화하여 차분 벡터 데이터를 생성한다. 다만, 차분 벡터 부호화기(240)는 차분 벡터를 별도로 부호화하지 않고 예측 움직임 벡터 선택기(230)가 율-왜곡 비용을 구하기 위해 차분 벡터를 구하고 부호화한 경우 예측 움직임 벡터 선택기(230)에 의해 부호화된 차분 벡터 데이터를 출력할 수 있다. 차분 벡터를 부호화하는 기법으로서는 고정 길이 부호화(Fixed Length Coding), 가변 길이 부호화(Variable Length Coding), 산술 부호화(Arithmetic Coding) 등과 같은 엔트로피 부호화(Entropy Coding) 기법이 이용될 수 있다.
예측 움직임 벡터 부호화기(250)는 예측 움직임 벡터로서 선택되는 하나의 대표 예측 움직임 벡터가 포함되는 그룹을 나타내는 그룹 인덱스를 부호화한다. 즉, 예측 움직임 벡터 부호화기(250)는 예측 움직임 벡터 선택기(230)에 의해 선택되는 예측 움직임 벡터가 어느 그룹의 대표 예측 움직임 벡터인지 여부를 확인하고, 해당 그룹을 나타내는 그룹 인덱스를 부호화하여 그룹 인덱스 데이터를 생성한다. 그룹 인덱스가 그룹 인덱스는 그룹 A, 그룹 B, 그룹 C, 그룹 D 등이나 제 1 그룹, 제 2 그룹, 제 3 그룹, 제 4 그룹 등과 같이 그룹을 식별할 수 있는 인덱스를 말하며, 차분 벡터와 유사하게 고정 길이 부호화, 가변 길이 부호화, 산술 부호화 등과 같은 엔트로피 부호화 기법 등이 이용될 수 있다.
예를 들어, 후보 예측 움직임 벡터들이 그룹 A, 그룹 B, 그룹 C, 그룹 D의 4 개의 그룹으로 결집된 경우, 고정 길이 부호화를 이용하여 그룹 인덱스를 부호화하면, 그룹 A에 대한 그룹 인덱스 데이터는 '00'으로 부호화되고, 그룹 B에 대한 그룹 인덱스 데이터는 '01'로 부호화되고, 그룹 C에 대한 그룹 인덱스 데이터는 '10'으로 부호화되고, 그룹 D에 대한 그룹 인덱스 데이터는 '11'로 부호화될 수 있다.
한편, 예측 움직임 벡터 선택기(230)는 전술한 바와 같이, 그룹별 대표 예측 움직임 벡터 중에서 하나의 대표 예측 움직임 벡터를 예측 움직임 벡터로서 선택할 수도 있지만, 복수 개의 그룹 상호 간의 공간적인 거리가 기 설정된 기준 거리 이하인지 여부를 판단하여, 기준 거리 이하인 경우에는 현재 블록의 후보 예측 움직임 벡터들의 중간값을 예측 움직임 벡터로서 선택하고, 기준 거리보다 큰 경우에만 전술한 바와 같이 그룹별 대표 예측 움직임 벡터 중에서 하나의 대표 예측 움직임 벡터를 예측 움직임 벡터로서 선택할 수 있다.
만약, 예측 움직임 벡터 선택기(230)가 복수 개의 그룹 상호 간의 공간적인 거리가 기 설정된 기준 거리 이하여서 현재 블록의 후보 예측 움직임 벡터들의 중간값을 예측 움직임 벡터로서 선택한 경우, 예측 움직임 벡터 부호화기(250)는 그룹 색인을 부호화하지 않을 수 있다. 이는 움직임 벡터 복호화 장치 또는 영상 복호화 장치도 움직임 벡터 부호화 장치 또는 영상 부호화 장치와 마찬가지로 현재 블록의 후보 예측 움직임 벡터들 복수 개의 그룹으로 집결시키고 복수 개의 그룹 상호 간의 공간적인 거리가 기 설정된 기준 거리 이하인지 여부를 판단할 수 있기 때문이다.
도 7은 본 발명의 일 실시예에 따른 움직임 벡터 부호화 방법을 설명하기 위한 순서도이다.
본 발명의 일 실시예에 따른 움직임 벡터 부호화 방법에 따르면, 움직임 벡터 부호화기(110)는 현재 블록의 후보 예측 움직임 벡터들을 복수 개의 그룹으로 결집시키고(S710), 결집된 각 그룹 내의 후보 예측 움직임 벡터 중 하나의 후보 예측 움직임 벡터를 대표 예측 움직임 벡터로서 선택하여 그룹별 대표 예측 움직임 벡터를 선택하며(S720), 그룹별 대표 예측 움직임 벡터 중에서 하나의 대표 예측 움직임 벡터를 예측 움직임 벡터로서 선택하며(S730), 현재 블록의 현재 움직임 벡터와 선택되는 예측 움직임 벡터 간의 차이인 차분 벡터를 부호화한다(740). 또한, 움직임 벡터 부호화기(110)는 차분 벡터뿐만 아니라 예측 움직임 벡터로서 선택되는 하나의 대표 예측 움직임 벡터가 포함되는 그룹을 나타내는 그룹 인덱스를 추가로 부호화할 수 있다.
단계 S710에서, 움직임 벡터 부호화기(110)는 현재 블록의 후보 예측 움직임 벡터들의 공간적 위치를 기초로 복수 개의 그룹으로 결집시킬 수 있는데, 예를 들어 현재 블록의 후보 예측 움직임 벡터들 중에서 복수 개의 후보 예측 움직임 벡터를 복수 개의 그룹의 중심값으로 설정하고, 각 그룹에 대해 중심값과의 공간적인 거리가 거리 임계값 이하가 되는 후보 예측 움직임 벡터를 각 그룹으로 결집시키며, 각 그룹에 대해 결집되는 후보 예측 움직임 벡터 간의 거리에 대한 제곱의 평균이 평균 임계값 이하가 되도록 중심값을 재설정하며, 각 그룹으로 결집시키는 과정과 중심값을 재설정하는 과정을 각 그룹에 대해 결집되는 후보 예측 움직임 벡터 간의 거리에 대한 제곱의 평균이 평균 임계값 이하가 될 때까지 반복함으로써 현재 블록의 후보 예측 움직임 벡터들을 복수 개의 그룹으로 결집시킬 수 있다.
단계 S720에서, 움직임 벡터 부호화기(110)는 각 그룹에 대해 그룹 내의 후보 예측 움직임 벡터 중에서 그룹 내의 후보 예측 움직임 벡터의 중심값과의 공간적인 거리가 가장 가까운 후보 예측 움직임 벡터를 선택함으로써, 그룹별 대표 예측 움직임 벡터를 선택할 수 있다.
단계 S730에서, 움직임 벡터 부호화기(110)는 율-왜곡 비용를 이용하여 그룹별 대표 예측 움직임 벡터 중에서 하나의 대표 예측 움직임 벡터를 선택할 수 있다.
또한, 움직임 벡터 부호화기(110)는 복수 개의 그룹 상호 간의 공간적인 거리가 기 설정된 기준 거리 이하인 경우에는 현재 블록의 후보 예측 움직임 벡터들의 중간값을 예측 움직임 벡터로서 선택할 수도 있다. 이 경우, 움직임 벡터 부호화기(110)는 그룹 색인을 부호화하지 않는다.
도 8은 본 발명의 일 실시예에 따른 영상 부호화 방법을 설명하기 위한 순서도이다.
본 발명의 일 실시예에 따른 영상 부호화 방법에 따르면, 영상 부호화 장치(100)는 현재 블록의 움직임 벡터인 현재 움직임 벡터를 결정하고(S810), 결정되는 현재 움직임 벡터를 이용하여 현재 블록을 예측 부호화하며(S820), 현재 블록의 후보 예측 움직임 벡터들이 공간적 위치를 기초로 결집되는 복수 개의 그룹에 대해 그룹별 대표 예측 움직임 벡터를 선택하며(S830), 그룹별 대표 예측 움직임 벡터 중에서 하나의 대표 예측 움직임 벡터를 예측 움직임 벡터로서 선택하며(S840), 결정되는 현재 움직임 벡터와 선택되는 예측 움직임 벡터 간의 차인 차분 벡터와 선택되는 하나의 대표 예측 움직임 벡터가 포함되는 그룹을 나타내는 그룹 인덱스를 부호화한다(S850).
도 9는 본 발명의 일 실시예에 따른 영상 복호화 장치를 간략하게 나타낸 블록 구성도이다.
본 발명의 일 실시예에 따른 영상 복호화 장치(900)는 움직임 벡터 복호화기(Motion Vector Decoder, 910) 및 영상 복호화기(Video Decoder, 920)를 포함하여 구성될 수 있다.
움직임 벡터 복호화기(910)는 비트스트림으로부터 추출되는 움직임 벡터 데이터를 복호화하여 차분 벡터와 그룹 색인을 복원하고, 현재 블록의 후보 예측 움직임 벡터들이 공간적 위치를 기초로 결집되는 복수 개의 그룹에 대해 그룹별 대표 예측 움직임 벡터를 선택하며, 그룹별 대표 예측 움직임 벡터 중에서 복원되는 그룹 색인에 의해 식별되는 그룹의 대표 예측 움직임 벡터를 예측 움직임 벡터로서 선택하며, 복원되는 차분 벡터와 선택되는 예측 움직임 벡터를 가산하여 현재 블록의 현재 움직임 벡터를 복원한다. 움직임 벡터 복호화기(910)에 대해서는 후술하는 과정에서 도 10을 통해 상세히 설명한다.
영상 복호화기(920)는 비트스트림으로부터 추출되는 영상 데이터를 복원되는 현재 움직임 벡터를 이용하여 예측 복호화하여 현재 블록을 복원한다. 이를 위해, 영상 복호화기(920)는 복호화기(Decoder), 역 양자화기 및 역 변환기, 예측기, 가산기, 디블로킹 필터, 메모리 등을 포함하여 구성될 수 있다. 여기서, 복호화기는 비트스트림으로부터 추출되는 영상 데이터를 복호화하여 양자화된 변환 계수를 복원하고, 역 양자화기 및 역 변환기는 복원되는 양자화된 변환 계수를 역 양자화 및 역 변환하여 잔여 블록을 복원하며, 예측기는 움직임 벡터 복호화기(910)에 의해 복원되는 현재 블록의 현재 움직임 벡터를 이용하여 현재 블록의 움직임을 보상함으로써 예측 블록을 생성하며, 가산기는 복원되는 잔여 블록과 예측 블록을 가산하여 현재 블록을 복원할 수 있다. 복원되는 현재 블록은 디블로킹 필터에 의해 디블로킹 필터링되고 픽처 단위로 누적되어 복원 영상으로서 출력되거나 메모리에 저장되어 예측기가 다음 블록 또는 다음 픽처를 예측하는데 활용된다.
도 10은 본 발명의 일 실시예에 따른 움직임 벡터 복호화 장치를 간략하게 나타낸 블록 구성도이다.
본 발명의 일 실시예에 따른 움직임 벡터 복호화 장치는 도 9를 통해 전술한 영상 복호화 장치(900)에서는 움직임 벡터 복호화기(910)로 구현될 수 있다. 이하에서는 설명의 편의를 위해, 본 발명의 일 실시예에 따른 움직임 벡터 복호화 장치를 움직임 벡터 복호화기(910)라 칭한다.
움직임 벡터 복호화기(910)는 후보 예측 움직임 벡터 결집기(1010), 대표 예측 움직임 벡터 선택기(1020), 예측 움직임 벡터 복원기(Predicted Motion Vector Reconstructer, 1030) 및 현재 움직임 벡터 복원기(Current Motion Vector Reconstructer, 1040)를 포함하여 구성될 수 있다.
예측 움직임 벡터 결집기(1010)는 현재 블록의 후보 예측 움직임 벡터들을 복수 개의 그룹으로 결집시키고, 대표 예측 움직임 벡터 선택기(1020)는 결집된 각 그룹 내의 후보 예측 움직임 벡터 중 하나의 후보 예측 움직임 벡터를 대표 예측 움직임 벡터로서 선택하여 그룹별 대표 예측 움직임 벡터를 선택한다. 여기서, 후보 예측 움직임 벡터 결집기(1010)와 대표 예측 움직임 벡터 선택기(1020)는 도 2를 통해 전술한 예측 움직임 벡터 결집기(210)와 대표 예측 움직임 벡터 선택기(220)와 동일 또는 유사하므로 상세한 설명은 생략한다.
예측 움직임 벡터 복원기(1030)는 움직임 벡터 데이터로부터 추출되는 그룹 인덱스 데이터를 복호화하여 그룹 인덱스를 복원하고, 그룹별 대표 예측 움직임 벡터 중에서 복원되는 그룹 인덱스에 의해 식별되는 그룹의 대표 예측 움직임 벡터를 예측 움직임 벡터로서 선택한다. 예를 들어, 대표 예측 움직임 벡터 선택기(1020)에 의해 도 6과 같이 그룹별 대표 예측 움직임 벡터가 선택되었고, 그룹 인덱스 데이터 '11'을 복호화하여 복원되는 그룹 인덱스에 의해 식별되는 그룹이 그룹 D라면, 예측 움직임 벡터 복원기(1030)는 그룹 D에서 대표 예측 움직임 벡터로 선택된 MV b 를 예측 움직임 벡터로서 복원한다.
현재 움직임 벡터 복원기(1040)는 움직임 벡터 데이터로부터 추출되는 차분 벡터 데이터를 복호화하여 차분 벡터를 복원하고, 복원되는 차분 벡터와 선택되는 예측 움직임 벡터를 현재 블록의 현재 움직임 벡터로서 복원한다. 예를 들어, 차분 벡터 데이터를 복호화하여 복원되는 차분 벡터가 MV 0 이고, 예측 움직임 벡터 복원기(1030)에 의해 복원되는 예측 움직임 벡터가 전술한 예와 같이 MV b 라면, MV b 가 현재 움직임 벡터로서 복원된다.
한편, 예측 움직임 벡터 복원기(1030)는 전술한 바와 같이 그룹별 대표 예측 움직임 벡터 중에서 복원되는 그룹 인덱스에 의해 식별되는 그룹의 대표 예측 움직임 벡터를 예측 움직임 벡터로서 선택할 수도 있지만, 현재 블록의 후보 예측 움직임 벡터들의 중간값을 예측 움직임 벡터로서 선택할 수도 있다. 즉, 예측 움직임 벡터 복원기(1030)는 움직임 벡터 데이터로부터 그룹 인덱스 데이터가 추출되는지 여부를 판단하여, 그룹 인덱스 데이터가 추출되는 경우에는 전술한 바와 같이 그룹별 대표 예측 움직임 벡터 중에서 복원되는 그룹 인덱스에 의해 식별되는 그룹의 대표 예측 움직임 벡터를 예측 움직임 벡터로서 선택하고, 그룹 인덱스 데이터가 추출되지 않는 경우에는 현재 블록의 후보 예측 움직임 벡터들의 중간값을 예측 움직임 벡터로서 선택할 수 있다.
도 11은 본 발명의 일 실시예에 따른 움직임 벡터 복호화 방법을 설명하기 위한 순서도이다.
본 발명의 일 실시예에 따른 움직임 벡터 복호화 방법에 따르면, 움직임 벡터 복호화기(910)는 움직임 벡터 데이터로부터 추출되는 차분 벡터 데이터와 그룹 인덱스 데이터를 복호화하여 차분 벡터와 그룹 인덱스를 복원하고(S1110), 현재 블록의 후보 예측 움직임 벡터들을 복수 개의 그룹으로 결집시키며(S1120), 결집된 각 그룹 내의 후보 예측 움직임 벡터 중 하나의 후보 예측 움직임 벡터를 대표 예측 움직임 벡터로서 선택하여 그룹별 대표 예측 움직임 벡터를 선택하며(S1130), 그룹별 대표 예측 움직임 벡터 중에서 복원되는 그룹 인덱스에 의해 식별되는 그룹의 대표 예측 움직임 벡터를 예측 움직임 벡터로서 선택하며(S1140), 복원되는 차분 벡터와 선택되는 예측 움직임 벡터를 가산하여 현재 블록의 현재 움직임 벡터를 복원한다(S1150).
단계 S1120에서, 움직임 벡터 복호화기(910)는 현재 블록의 후보 예측 움직임 벡터들의 공간적 위치를 기초로 복수 개의 그룹으로 결집시킬 수 있다. 예를 들어, 움직임 벡터 복호화기(910)는 현재 블록의 후보 예측 움직임 벡터들 중에서 복수 개의 후보 예측 움직임 벡터를 복수 개의 그룹의 중심값으로 설정하고, 각 그룹에 대해 중심값과의 공간적인 거리가 거리 임계값 이하가 되는 후보 예측 움직임 벡터를 각 그룹으로 결집시키며, 각 그룹에 대해 결집되는 후보 예측 움직임 벡터 간의 거리에 대한 제곱의 평균이 평균 임계값 이하가 되도록 중심값을 재설정하며, 각 그룹으로 결집시키는 과정과 중심값을 재설정하는 과정을 각 그룹에 대해 결집되는 후보 예측 움직임 벡터 간의 거리에 대한 제곱의 평균이 평균 임계값 이하가 될 때까지 반복함으로써, 현재 블록의 후보 예측 움직임 벡터들을 복수 개의 그룹으로 결집시킬 수 있다.
단계 S1130에서, 움직임 벡터 복호화기(910)는 각 그룹에 대해 그룹 내의 후보 예측 움직임 벡터 중에서 그룹 내의 후보 예측 움직임 벡터의 중심값과의 공간적인 거리가 가장 가까운 후보 예측 움직임 벡터를 선택함으로써, 그룹별 대표 예측 움직임 벡터를 선택할 수 있다.
또한, 움직임 벡터 복호화기(910)는 움직임 벡터 데이터로부터 그룹 색인 데이터가 추출되는지 여부를 판단하고, 그룹 색인 데이터가 추출되지 않는 경우, 현재 블록의 후보 예측 움직임 벡터들의 중간값을 예측 움직임 벡터로서 선택할 수 있다.
도 12는 본 발명의 일 실시예에 따른 영상 복호화 방법을 설명하기 위한 순서도이다.
본 발명의 일 실시예에 따른 영상 복호화 방법에 따르면, 영상 복호화 장치(900)는 비트스트림으로부터 추출되는 움직임 벡터 데이터를 복호화하여 차분 벡터와 그룹 색인을 복원하고(S1210), 현재 블록의 후보 예측 움직임 벡터들이 공간적 위치를 기초로 결집되는 복수 개의 그룹에 대해 그룹별 대표 예측 움직임 벡터를 선택하며(S1220), 그룹별 대표 예측 움직임 벡터 중에서 복원되는 그룹 색인에 의해 식별되는 그룹의 대표 예측 움직임 벡터를 예측 움직임 벡터로서 선택하며(S1230), 복원되는 차분 벡터와 선택되는 예측 움직임 벡터를 가산하여 현재 블록의 현재 움직임 벡터를 복원하며(S1240), 비트스트림으로부터 추출되는 영상 데이터를 복원되는 현재 움직임 벡터를 이용하여 예측 복호화하여 현재 블록을 복원한다(S1250).
이상에서 전술한 바와 같이, 본 발명의 일 실시예에 따르면, 부호화하고자 하는 블록의 후보 예측 움직임 벡터들을 공간적인 위치를 고려하여 여러 그룹으로 분할하여 결집시키고, 각 그룹별로 대표 예측 움직임 벡터를 선택하고 율-왜곡 관점에서 최적인 대표 예측 움직임 벡터를 예측 움직임 벡터로서 선택함으로써, 많은 개수의 후보 예측 움직임 벡터들을 이용하여 예측 움직임 벡터를 선택하고 그를 이용하여 움직임 벡터를 예측 부호화하더라도 어떠한 예측 움직임 벡터가 선택되었는지를 나타내기 위한 부가 정보를 부호화함에 따라 발생하는 비트량을 억제할 수 있으므로, 움직임 벡터의 부호화 효율을 향상시켜 궁극적으로는 영상의 압축 효율을 향상시킬 수 있다.
이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합하거나 결합하여 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 캐리어 웨이브 매체 등이 포함될 수 있다.
또한, 이상에서 기재된 "포함하다", "구성하다" 또는 "가지다" 등의 용어는, 특별히 반대되는 기재가 없는 한, 해당 구성 요소가 내재할 수 있음을 의미하는 것이므로, 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것으로 해석되어야 한다. 기술적이거나 과학적인 용어를 포함한 모든 용어들은, 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미가 있다. 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
이상에서 설명한 바와 같이 본 발명은 영상을 부호화하고 복호화하는 영상 압축 처리 분야에 적용되어, 많은 개수의 후보 예측 움직임 벡터들을 이용하여 예측 움직임 벡터를 선택하여 부호화할 차분 벡터의 크기를 줄이면서도 어떠한 예측 움직임 벡터가 선택되었는지를 나타내기 위한 부가 정보를 부호화함에 따라 발생하는 비트량을 억제할 수 있으므로, 움직임 벡터의 부호화 효율을 향상시켜 궁극적으로는 영상의 압축 효율을 향상시킬 수 있는 효과를 발생하는 매우 유용한 발명이다.
Claims (2)
- 현재 블록의 움직임 벡터를 복호화하는 방법에 있어서,
비트스트림으로부터 차분 벡터 데이터와 인덱스 데이터를 추출하고 복호화하여 상기 현재 블록의 예측 움직임 벡터를 복원하기 위한 인덱스와 차분 벡터를 복원하는 단계;
상기 현재 블록의 주변에 위치하는 블록에 대응되는 복수의 움직임 벡터들 중 제1 움직임 벡터 그룹에서 제1 움직임 벡터를 선택하고 상기 복수의 움직임 벡터들 중 제2 움직임 벡터 그룹에서 제2 움직임 벡터를 선택하는 단계;
상기 제1 움직임 벡터 및 제2 움직임 벡터를 포함하는 후보 움직임 벡터들 중에서 상기 복원된 인덱스에 의해 식별되는 움직임 벡터를 상기 현재 블록의 예측 움직임 벡터로서 결정하는 단계; 및
상기 복원된 차분 벡터와 상기 예측 움직임 벡터를 가산하여 상기 현재 블록의 움직임 벡터를 복원하는 단계
를 포함하고,
상기 제1 움직임 벡터 그룹은 상기 현재 블록의 왼쪽 블록의 움직임 벡터를 포함하고, 상기 제2 움직임 벡터 그룹은 상기 현재 블록의 위쪽 블록의 움직임 벡터를 포함하는 것을 특징으로 하는 움직임 벡터 복호화 방법. - 제 1 항에 있어서, 상기 제2 움직임 벡터를 선택하는 단계는,
상기 제2 움직임 벡터 그룹에 포함된 움직임 벡터들을 순차적으로 확인하여 상기 제2 움직임 벡터를 선택하는 것을 특징으로 하는 움직임 벡터 복호화 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150008904A KR101543313B1 (ko) | 2015-01-19 | 2015-01-19 | 공간 분할을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150008904A KR101543313B1 (ko) | 2015-01-19 | 2015-01-19 | 공간 분할을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140076783A Division KR101543309B1 (ko) | 2014-06-23 | 2014-06-23 | 공간 분할을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20150027774A KR20150027774A (ko) | 2015-03-12 |
KR101543313B1 true KR101543313B1 (ko) | 2015-08-12 |
Family
ID=53022975
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020150008904A KR101543313B1 (ko) | 2015-01-19 | 2015-01-19 | 공간 분할을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101543313B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019135648A1 (ko) * | 2018-01-08 | 2019-07-11 | 삼성전자 주식회사 | 움직임 정보의 부호화 및 복호화 방법, 및 움직임 정보의 부호화 및 복호화 장치 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200114825A (ko) | 2019-03-29 | 2020-10-07 | 아이피랩 주식회사 | 승객탑승을 병행하는 물류운송 시스템의 운용방법 및 운용서버 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009147757A (ja) * | 2007-12-14 | 2009-07-02 | Canon Inc | 動きベクトル検出装置及び動きベクトル検出方法及び撮像装置及びプログラム |
-
2015
- 2015-01-19 KR KR1020150008904A patent/KR101543313B1/ko active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009147757A (ja) * | 2007-12-14 | 2009-07-02 | Canon Inc | 動きベクトル検出装置及び動きベクトル検出方法及び撮像装置及びプログラム |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019135648A1 (ko) * | 2018-01-08 | 2019-07-11 | 삼성전자 주식회사 | 움직임 정보의 부호화 및 복호화 방법, 및 움직임 정보의 부호화 및 복호화 장치 |
Also Published As
Publication number | Publication date |
---|---|
KR20150027774A (ko) | 2015-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101459714B1 (ko) | 공간 분할을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 | |
US11425392B2 (en) | Method and apparatus for encoding and decoding video using skip mode | |
KR101441905B1 (ko) | 후보 예측 움직임 벡터 집합 선택을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 | |
RU2509436C1 (ru) | Способ и устройство для кодирования и декодирования блока кодирования границы картинки | |
KR101279573B1 (ko) | 움직임 벡터 부호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 | |
RU2559737C2 (ru) | Способ и устройство для кодирования/декодирования вектора движения | |
KR101681303B1 (ko) | 블록 분할예측을 이용한 영상 부호화/복호화 방법 및 장치 | |
WO2014054267A1 (ja) | 画像符号化装置及び画像符号化方法 | |
US20150063452A1 (en) | High efficiency video coding (hevc) intra prediction encoding apparatus and method | |
KR101418104B1 (ko) | 움직임 벡터 해상도 조합을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 | |
KR101924088B1 (ko) | 적응적 예측 블록 필터링을 이용한 영상 부호화/복호화 장치 및 방법 | |
KR101449683B1 (ko) | 움직임 벡터 해상도 제한을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 | |
KR101543313B1 (ko) | 공간 분할을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 | |
KR101377529B1 (ko) | 적응적 움직임 벡터 부호화/복호화를 이용한 영상 부호화/복호화 방법 및 장치 | |
KR101543310B1 (ko) | 공간 분할을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 | |
KR101543309B1 (ko) | 공간 분할을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 | |
KR20110066888A (ko) | 움직임 보상 프레임의 선택적 필터링을 이용한 영상 부호화/복호화 방법 및 장치와 그를 위한 인터 예측 방법 및 장치 | |
KR101543323B1 (ko) | 공간 분할을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 | |
KR101671507B1 (ko) | 움직임벡터를 부호화 또는 복호화하기 위한 방법과 장치 | |
KR101658585B1 (ko) | 툴 셋을 이용한 영상 부호화/복호화 방법 및 장치 | |
KR20120033546A (ko) | 영상의 구조적 정보를 이용한 적응적 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 | |
KR101316710B1 (ko) | 움직임 벡터 부호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 | |
WO2012044116A2 (ko) | 적응적 예측 블록 필터링을 이용한 영상 부호화/복호화 장치 및 방법 | |
KR101314632B1 (ko) | 움직임 벡터 부호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 | |
KR20130098252A (ko) | 움직임 벡터 부호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |