KR20130063285A - 예측 움직임 벡터 선택에 따른 변환 부호화 방법 및 장치 - Google Patents
예측 움직임 벡터 선택에 따른 변환 부호화 방법 및 장치 Download PDFInfo
- Publication number
- KR20130063285A KR20130063285A KR1020110129721A KR20110129721A KR20130063285A KR 20130063285 A KR20130063285 A KR 20130063285A KR 1020110129721 A KR1020110129721 A KR 1020110129721A KR 20110129721 A KR20110129721 A KR 20110129721A KR 20130063285 A KR20130063285 A KR 20130063285A
- Authority
- KR
- South Korea
- Prior art keywords
- motion vector
- optimal
- prediction motion
- selecting
- center value
- 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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- 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/169—Methods 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/17—Methods 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/176—Methods 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
-
- 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/53—Multi-resolution motion estimation; Hierarchical motion estimation
-
- 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
본 발명은 변환 부호화 방법 및 장치에 관한 것으로, 보다 상세하게는 고해상도에서 저해상도로의 변환시에 예측 움직임 벡터를 효율적으로 선택하여 변환 부호화를 수행하는 방법 및 장치에 관한 것이다.
고해상도의 비디오 압축 스트림을 저해상도의 비디오 압축 스트림으로 변환 부호화(transcoding)를 수행할 때, 블록 기반 움직임 예측시, 고해상도의 블록의 다수의 움직임 벡터를 하나의 하위 해상도 매크로블록에 매칭시켜야 하는 문제가 발생한다.
도 1은 움직임 벡터의 다운 샘플링(down sampling) 모습을 나타낸 도면이다. 도 1에 도시된 바와 같이, 상위 해상도의 4개의 매크로블록에 해당하는 사이즈의 영상을 하나의 매크로 블록 크기로 줄일 때, 상위 해상도에 속하는 4개의 움직임 벡터를 하나의 움직임 벡터로 병합해야 하는 상황이 발생할 수 있다. 하위 해상도의 매크로 블록에 가장 최적인 움직임 벡터는 실제 움직임 기반 예측을 수행하여 찾을 수 있지만, 그 경우 필요한 막대한 연산량은 변환 부호화의 필수 요건인 빠른 처리 속도에 위배된다.
상기의 문제점을 해결하기 위해, 하위 해상도 영상과 매칭되는 상위 해상도 영상의 블록들의 움직임 벡터를 움직임 벡터 후보군으로 삼고, 이로부터 하나의 대표 움직임 벡터를 찾아내는 방법이 기존의 변환 부호화 방법에서 다양하게 제안되었다.
Random 방법은 여러 개의 입력 움직임 벡터들 중에서 하나의 움직임 벡터를 랜덤하게 선택하는 방법으로 변환 부호화의 연산 속도가 빠르지만, 부호화 성능 측면에서 비효율적이다(비특허문헌 1).
Mean 방법은 일부 후보 움직임 벡터들의 평균치를 대표 움직임 벡터로 선택하는 방법으로서, 후보 움직임 벡터를 찾는 방법에는 원본 영상에서 하위 해상도와 매칭되는 움직임 벡터들을 후보로 삼는 방법, 또는 동일한 방향을 가지는 움직임 벡터들을 후보군에 포함시키는 방법(비특허문헌 2)(비특허문헌 3), 또는 주변 매크로블록과 correlation을 고려하여 후보군을 선택하는 방법(비특허문헌 4) 등이 있다. 이 기술은 후보 움직임 벡터중 하나의 움직임 벡터의 magnitude가 다른 움직임 벡터에 비해 큰 경우 선택되는 움직임 벡터의 결과에 큰 영향을 미치는 단점이 있다.
Weighted Average(WA) 방법은 입력 움직임 벡터들에 대한 weighted average를 통해 대표 움직임 벡터를 선택하는 방법으로서, 각 움직임 벡터에 대한 weight를 perspective prediction error의 spatial activity(비특허문헌 2),(비특허문헌 5)에 의해 결정한다. 이 방법은 후보 움직임 벡터군의 노이즈에 약하고, original 움직임 벡터들이 다양한 방향을 가질 때, 움직임 벡터가 편향될 수도 있다는 단점이 있다.
Weighted Median(WM) 방법은 움직임 벡터들 간의 Euclidean distance를 구하여 중간값을 가지는 움직임 벡터로 대푯값을 선택한다(비특허문헌 1)(비특허문헌 4)(비특허문헌 6). 이 방법은 높은 부호화 효율을 보이지만, 중간값 계산에 많은 연산량을 필요로 한다.
DCmax 방법은 후보 움직임 벡터군 중에서 DC residual coefficient가 최대인 블록의 움직임 벡터로 대표 움직임 벡터를 택하는 방법(비특허문헌 7)이다. 이 방법은 mean 방법에 비해 약간의 연산량 증가가 필요하지만, mean 방법 또는 WA 방법에 비해서는 개선된 부호화 성능을 보여준다.
N. Bjork and C. Christopoulos, "Transcoder architecture for video coding," IEEE Trans. Consumer Electron., vol. 44, pp. 88-98, Feb. 1998.
B. Shen, I. K. Sethi, and B. Vasudev, "Adaptive motion-vector resamplingfor compressed video down scaling," IEEE Trans. Circuits Syst. Video Technol., vol. 9, no. 6, pp. 929-936, Sep. 1999.
P. Yin and M. Wu, "Video transcoding by reducing spatial resolution," in Proc. IEEE Int. Conf. Image Processing, vol. 1, 2000, pp. 972-975.
T. Shanableh and M. Ghanbari, "Heterogeneous video transcoding to lower spatial-temporal resolutions and different encoding formats," IEEE Trans. Multimedia, vol. 2, no. 2, pp. 101-110, Jun. 2000.
G. Shen, B. Zeng, Y.-Q. Zhang, and M. L. Liou, "Transcoder with arbitrarily resizing capability," in Proc. IEEE Int. Symp. Circuits and Systems (ISCAS) 2001, vol. 5, Sydney, NSW, Australia, May 2001, pp. 25-28.
J. Xin, M.-T. Sun, K. Chun, and B. S. Choi, "Motion re-estimation for HDTV to SDTV transcoding," in Proc. IEEE Int. Symp. Circuits and Systems (ISCAS) 2002, vol. 4, Geneva, Switzerland, May 2002, pp.715-718.
M.-J. Chen, M.-C. Chu, and C.-W. Pan, "Efficient motion-estimation algorithm for reduced frame-rate video transcoder," IEEE Trans. Circuits Syst. Video Technol., vol. 12, no. 4, pp. 269-275, Apr. 2002.
본 발명의 목적은 움직임 벡터 예측을 위한 연산량 감소에 따른 움직임 벡터의 정확도 저하 및 움직임 벡터 정확도 저하에 의한 변환 부호화 효율(transcoding efficiency) 감소의 문제점을 해결할 수 있는 예측 움직임 벡터 선택에 따른 변환 부호화 방법 및 장치를 제공하는 것이다.
본 발명의 다른 목적은 종래의 방법들과 비슷한 수준의 복잡도를 유지하면서 더 높은 정확도의 최적 움직임 벡터를 선택하기 위해, 높은 해상도 영상 블록의 후보 예측 움직임 벡터들을 수 개의 공간으로 분할하고, 각 공간으로부터 대표 후보 움직임 벡터를 선정하여 현재 블록의 움직임 벡터와의 차이를 최소화하는 최적 후보 움직임 벡터를 선택함으로써 변환 부호화 효율을 높일 수 있는 예측 움직임 벡터 선택에 따른 변환 부호화 방법 및 장치를 제공하는 것이다.
상기한 목적을 달성하기 위한 본 발명의 변환 부호화 방법은 고해상도에서 저해상도로의 변환 부호화시, 하위 해상도 블록에 매칭되는 상위 해상도 블록의 후보 예측 움직임 벡터들을 공간적 위치를 고려하여 결집시키고, 상기 결집된 후보 예측 움직임 벡터들을 기반으로 공간을 분할하는 단계; 상기 분할된 공간의 후보 예측 움직임 벡터들 중 하나를 대표 후보 예측 움직임 벡터로 선정하는 단계; 상기 대표 예측 움직임 벡터들 중에서 최적 예측 움직임 벡터를 선정하는 단계; 및 상기 최적 예측 움직임 벡터를 기반으로 상기 하위 해상도의 블록의 움직임 벡터를 예측하여 변환 부호화를 수행하는 단계를 포함할 수 있다.
상기 대표 예측 움직임 벡터 선정 단계는 상기 분할된 공간의 중심값에서 가장 거리가 가까운 후보 예측 움직임 벡터를 상기 대표 예측 움직임 벡터로 선정하는 단계를 포함할 수 있다.
상기 최적 예측 움직임 벡터 선정 단계는 상기 최적 예측 움직임 벡터의 정확도를 향상시키기 위해, 상기 최적 예측 움직임 벡터가 가리키는 블록의 주변 영역에서 더 적은 왜곡이 발생하는 움직임 벡터를 새로운 최적 예측 움직임 벡터로 선정하는 단계를 포함할 수 있다.
상기 최적 움직임 벡터 선정 단계는 상기 최적 예측 움직임 벡터가 가리키는 블록의 주변 영역에서 더 적은 왜곡이 발생하는 움직임 벡터를 상기 새로운 최적 예측 움직임 벡터로 선정할 때, 상기 주변 영역을 상기 최적 예측 움직임 벡터로부터 수 화소 이내의 근접한 영역으로 한정하는 단계를 포함할 수 있다.
상기 최적 움직임 벡터 선정 단계는 상기 주변 영역을 영상의 특성에 따라 적응적으로 조절하는 단계를 포함할 수 있다.
상기 최적 움직임 벡터 선정 단계는 상기 최적 움직임 벡터가 클 경우, 상기 주변 영역의 범위를 넓은 범위로 조절하고, 상기 최적 움직임 벡터가 작을 경우, 상기 주변 영역의 범위를 좁은 범위로 조절하는 단계를 포함할 수 있다.
상기 최적 예측 움직임 벡터 선정 단계는 상기 대표 예측 움직임 벡터들 중에서 율-왜곡(rate-distortion) 관점에서 가장 좋은 성능을 나타내는 움직임 벡터를 상기 최적 예측 움직임 벡터로 선정하는 단계를 포함할 수 있다.
상기 공간 분할 단계는 상기 분할된 공간의 중심값과 상기 후보 예측 움직임 벡터들의 거리의 차이의 분산을 최소화하는 방식을 통해 상기 공간을 분할하는 단계를 포함할 수 있다.
상기 공간 분할 단계는 상기 후보 예측 움직임 벡터들 중에서 임의의 K 개를 선택하여 중심값을 설정하는 제 1 단계; 상기 K개의 중심값을 기반으로 K 개의 그룹으로 분할하고, 상기 후보 예측 움직임 벡터 중 어느 하나와 상기 K 개 그룹의 중심 값 사이의 거리를 최소화시키는 새로운 중심 값을 찾고 상기 새로운 중심 값과 매칭되는 그룹에 상기 하나의 후보 예측 움직임 벡터를 소속시키는 제 2 단계; 상기 새롭게 바뀐 각 그룹 내의 모든 후보 예측 움직임 벡터들의 평균값으로 상기 각 그룹의 중심값을 다시 찾는 제 3 단계; 및 상기 제 2 및 제 3 단계의 반복을 통해 더이상 클러스터링 결과가 변하지 않는 시점의 결과를 최적의 공간 분할 및 중심값으로 선정하는 제 4 단계를 포함할 수 있다.
상기 최적 예측 움직임 벡터 선정 단계는 SATD(Sum of Absolute Transformed Differences)를 사용하여 상기 최적 예측 움직임 벡터를 선정하는 단계를 포함할 수 있다.
상기한 목적을 달성하기 위한 본 발명의 변환 부호화 장치는 고해상도에서 저해상도로의 변환 부호화시, 하위 해상도 블록에 매칭되는 상위 해상도 블록의 후보 예측 움직임 벡터들을 공간적 위치를 고려하여 결집시키고, 상기 결집된 후보 예측 움직임 벡터들을 기반으로 공간을 분할하는 공간 분할부; 상기 분할된 공간의 후보 예측 움직임 벡터들 중 하나를 대표 후보 예측 움직임 벡터로 선정하는 대표 예측 움직임 벡터 선정부; 상기 대표 예측 움직임 벡터들 중에서 최적 예측 움직임 벡터를 선정하는 최적 예측 움직임 벡터 선정부; 및 상기 최적 예측 움직임 벡터를 기반으로 상기 하위 해상도의 블록의 움직임 벡터를 예측하여 변환 부호화를 수행하는 변환 부호화부를 포함할 수 있다.
상기 대표 예측 움직임 벡터 선정부는 상기 분할된 공간의 중심값에서 가장 거리가 가까운 후보 예측 움직임 벡터를 상기 대표 예측 움직임 벡터로 선정할 수 있다.
상기 최적 예측 움직임 벡터 선정부는 상기 최적 예측 움직임 벡터의 정확도를 향상시키기 위해, 상기 최적 예측 움직임 벡터가 가리키는 블록의 주변 영역에서 더 적은 왜곡이 발생하는 움직임 벡터를 새로운 최적 예측 움직임 벡터로 선정할 수 있다.
상기 최적 움직임 벡터 선정부는 상기 최적 예측 움직임 벡터가 가리키는 블록의 주변 영역에서 더 적은 왜곡이 발생하는 움직임 벡터를 상기 새로운 최적 예측 움직임 벡터로 선정할 때, 상기 주변 영역을 상기 최적 예측 움직임 벡터로부터 수 화소 이내의 근접한 영역으로 한정할 수 있다.
상기 최적 움직임 벡터 선정부는 상기 주변 영역을 영상의 특성에 따라 적응적으로 조절할 수 있다.
상기 최적 움직임 벡터 선정 단계는 상기 최적 움직임 벡터가 클 경우, 상기 주변 영역의 범위를 넓은 범위로 조절하고, 상기 최적 움직임 벡터가 작을 경우, 상기 주변 영역의 범위를 좁은 범위로 조절할 수 있다.
상기 최적 예측 움직임 벡터 선정부는 상기 대표 예측 움직임 벡터들 중에서 율-왜곡(rate-distortion) 관점에서 가장 좋은 성능을 나타내는 움직임 벡터를 상기 최적 예측 움직임 벡터로 선정할 수 있다.
상기 공간 분할부는 상기 분할된 공간의 중심값과 상기 후보 예측 움직임 벡터들의 거리의 차이의 분산을 최소화하는 방식을 통해 상기 공간을 분할할 수 있다.
상기 공간 분할부는 상기 후보 예측 움직임 벡터들 중에서 임의의 K 개를 선택하여 중심값을 설정하는 제 1 중심값 설정부; 상기 K 개의 중심값을 기반으로 K 개의 그룹으로 분할하고, 상기 후보 예측 움직임 벡터 중 어느 하나와 K 개 그룹의 중심 값 사이의 거리를 최소화시키는 새로운 중심 값을 찾고 상기 새로운 중심 값과 매칭되는 그룹에 상기 하나의 후보 예측 움직임 벡터를 소속시키는 그룹 생성부; 상기 새롭게 바뀐 각 그룹 내의 모든 후보 예측 움직임 벡터들의 평균값으로 각 그룹의 중심값을 다시 찾는 제 2 중심값 생성부; 및 상기 제 2 및 제 3 단계의 반복을 통해 더이상 클러스터링 결과가 변하지 않는 시점의 결과를 최적의 공간 분할 및 중심값으로 선정하는 최적 공간 분할부를 포함할 수 있다.
상기 최적 예측 움직임 벡터 선정부는 SATD(Sum of Absolute Transformed Differences)를 사용하여 상기 최적 예측 움직임 벡터를 선정할 수 있다.
본 발명의 예측 움직임 벡터 선택에 따른 변환 부호화 방법 및 장치에 따르면, 상위 해상도 블록으로부터 얻은 후보 움직임 벡터의 공간 분할을 통해 하위 해상도 블록에 대한 대표 움직임 벡터를 선정하고, 율-왜곡 관점에서 최적인 후보 움직임 벡터를 선택함으로써, 실제 움직임 벡터 예측보다 연산량을 크게 줄이는 동시에, 선택된 움직임 벡터가 실제 움직임 벡터 예측에 매우 근접하게 선정되기 때문에 현재 블록의 움직임 벡터의 부호화 성능을 크게 향상시켜 비디오 변환 부호화 장치의 수행 속도를 증가시키고 복원 영상의 화질을 크게 개선할 수 있는 효과가 있다.
도 1은 움직임 벡터의 다운 샘플링(down sampling) 모습을 나타낸 도면
도 2는 본 발명의 일 실시예에 따른 변환 부호화 방법을 개략적으로 나타낸 흐름도,
도 3은 본 발명의 일 실시예에 따른 변환 부호화 방법의 공간 분할의 예를 도시한 도면,
도 4는 본 발명의 일 실시예에 따른 변환 부호화 방법의 공간 분할 단계를 구체적으로 나타낸 상세흐름도,
도 5는 본 발명의 일 실시예에 따른 변환 부호화 방법의 최적 예측 움직임 벡터 선정 단계를 구체적으로 나타낸 상세흐름도,
도 6은 본 발명의 일 실시예에 따른 변환 부호화 장치를 개략적으로 나타낸 블록도,
도 7은 본 발명의 일 실시예에 따른 변환 부호화 장치의 공간 분할부를 구체적으로 나타낸 상세블록도,
도 8은 본 발명의 일 실시예에 따른 변환 부호화 장치의 최적 예측 움직임 벡터 선정부를 구체적으로 나타낸 상세블록도,
도 9는 본 발명의 변환 부호화 방법의 공간 분할 기법과 다른 기법을 적용했을 시의 성능을 비교한 그래프,
도 10은 본 발명의 변환 부호화 방법의 최적 움직임 벡터 선정 기법과 다른 기법을 적용했을 시의 성능을 비교한 그래프이다.
도 2는 본 발명의 일 실시예에 따른 변환 부호화 방법을 개략적으로 나타낸 흐름도,
도 3은 본 발명의 일 실시예에 따른 변환 부호화 방법의 공간 분할의 예를 도시한 도면,
도 4는 본 발명의 일 실시예에 따른 변환 부호화 방법의 공간 분할 단계를 구체적으로 나타낸 상세흐름도,
도 5는 본 발명의 일 실시예에 따른 변환 부호화 방법의 최적 예측 움직임 벡터 선정 단계를 구체적으로 나타낸 상세흐름도,
도 6은 본 발명의 일 실시예에 따른 변환 부호화 장치를 개략적으로 나타낸 블록도,
도 7은 본 발명의 일 실시예에 따른 변환 부호화 장치의 공간 분할부를 구체적으로 나타낸 상세블록도,
도 8은 본 발명의 일 실시예에 따른 변환 부호화 장치의 최적 예측 움직임 벡터 선정부를 구체적으로 나타낸 상세블록도,
도 9는 본 발명의 변환 부호화 방법의 공간 분할 기법과 다른 기법을 적용했을 시의 성능을 비교한 그래프,
도 10은 본 발명의 변환 부호화 방법의 최적 움직임 벡터 선정 기법과 다른 기법을 적용했을 시의 성능을 비교한 그래프이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다.
그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제 1, 제 2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
변환 부호화 방법
도 2는 본 발명의 일 실시예에 따른 변환 부호화 방법을 개략적으로 나타낸 흐름도이다. 도 2에 도시된 바와 같이, 본 발명의 일 실시예에 따른 변환 부호화 방법은 움직임 벡터 결집 단계(210), 공간 분할 단계(220), 대표 예측 움직임 벡터 선정 단계(230), 최적 예측 움직임 벡터 선정 단계(240) 및 변환 부호화 수행 단계(250)를 포함할 수 있다.
도 2를 참조하면, 움직임 벡터를 결집하는 단계(210)에서, 변환 부호화 장치(미도시)는 하위 해상도 블록에 매칭되는 상위 해상도 블록의 후보 움직임 벡터들을 각 후호 움직임 벡터들의 공간적 위치를 고려하여 적절히 결집한다. 결집을 위해서는 K-means 알고리즘을 사용할 수 있다.
도 3은 본 발명의 일 실시예에 따른 변환 부호화 방법의 공간 분할의 예를 도시한 도면으로, 전술한 바와 같이, K-means 알고리즘을 사용한 결과로 공간을 분할한 것이다. 도 3에 도시된 바와 같이, 실선 원으로 표시된 것은 후보 예측 움직임 벡터이고, 점선 원으로 표시된 것은 공간적으로 결집되어 그룹을 형성한 움직임 벡터의 집합군을 의미한다. 진하게 색칠이 되어 있는 원은 상기 그룹의 중심값이고, 연하게 색칠되어 있는 것은 예측 움직임 벡터 중 각 그룹의 대표 예측 움직임 벡터를 나타낸다.
도 3을 참조하면, 다수의 후보 움직임 벡터가 존재하는데, 이를 공간적인 위치 관계를 고려하여 결집한다. 공간적 위치관계를 통해 K개의 그룹으로 결집할 수 있는데 이는 도 4를 통해 보다 상세히 설명한다. 다음으로, 공간적으로 결집된 그룹에 있어서, 중심값을 계산한다. 이는 상기 분할된 공간의 중심값을 의미하는 것으로, K 개의 그룹이 있으면, 중심값도 K 개 존재한다. 다음 각 그룹에 포함된 후보 예측 움직임 벡터 중에 상기 중심값에 가장 가까이 위치하는 후보 예측 움직임 벡터를 각 그룹의 대표 예측 움직임 벡터로 선정한다. 따라서, 대표 예측 움직임 벡터도 K 개의 그룹이 존재하는 경우, K 개가 선정된다. 또한, 상기 결집된 그룹의 위치 관계를 기반으로 공간을 분할한다. 도 3은 A, B, C 및 D의 4 개의 공간으로 분할된 모습을 도시하고 있다.
도 4는 본 발명의 일 실시예에 따른 변환 부호화 방법의 공간 분할 단계(220)를 구체적으로 나타낸 상세흐름도이다. 본 발명의 일 실시예에 따른 공간 분할 단계(220)는 K-means 알고리즘을 사용할 수 있다. 일반적으로, K-means 알고리즘은 주어진 데이터를 K개의 그룹으로 묶는 알고리즘으로, 각 그룹의 중심값과 데이터 값들의 거리의 차이의 분산을 최소화하는 방식으로 동작한다. 즉, 다음의 수학식으로 표현 가능하다.
여기서, Si는 K개의 그룹 중 i번째 후보 움직임 벡터 그룹, xj는 j번째 후보 예측 움직임 벡터, ui는 Si의 중심값, S는 K개의 Si들의 중심값과 각 그룹에 속한 xj들의 분산의 합을 최소화하도록 군집화시킨 결과를 의미한다.
도 4를 참조하여 상기 알고리즘을 보다 상세히 살펴보면, 먼저 변환 부호화 장치는 하위 해상도 블록에 매칭되는 상위 해상도 블록을 찾아서 상기 상위 해상도 블록의 후보 예측 움직임 벡터를 추출한다(410). 추출된 블록의 후보 예측 움직임 벡터 xj들 중에서 임의의 K개를 선택하여 초기 중심값을 설정한다(420). 다음으로, K개의 중심값에 가까운 움직임 벡터를 결집한다(430). 다음, 결집된 움직임 벡터를 기반으로 K개의 그룹을 생성한다(440). K개 그룹의 중심값을 다시 설정한다(450). 상기 결집 단계(430)부터 중심값 재설정 단계(450)를 좀더 상세히 살펴보면, 하나의 후보 예측 움직임 벡터 xj와 K개의 그룹의 중심값 ui 사이의 Euclidean distance를 최소화 시키는 ui를 찾고 이와 매칭되는 그룹 Si에 xj를 소속시킨다. 이를 수학식으로 표현하면 다음과 같다.
새롭게 바뀐 각 그룹 내의 모든 후보 움직임 벡터들의 평균값으로 각 그룹의 중심값 ui를 다시 찾는다. 이는 다음의 수학식으로 표현할 수 있다.
상기와 같은 과정을 거친 후, 다시 찾은 중심값을 선행 중심값과 비교한다(460). 비교 결과, 선행 중심값과 현행 중심값이 차이가 나면, 현행 중심값을 토대로 하는 K의 중심값을 기반으로 움직임 벡터 결집 단계(430)로 돌아가서 상기한 과정을 다시 수행한다. 비교 결과, 중심값이 서로 같은 경우, K 개의 후보 움직임 벡터를 추출하고, 공간을 분할한다. 즉, 반복 과정을 통해 더 이상의 클러스터링 결과가 변하지 않는 시점의 결과를 최적의 그룹화 및 중심값으로 선정하고 다음 단계를 진행한다.
도면에 도시되진 않았지만, K-means 알고리즘 이외에 다른 공간 분할 알고리즘을 통해 공간적인 위치를 기반으로 공간 분할을 보다 효율적으로 수행할 수 있으면, 다른 방법을 통해 공간을 분할할 수 있다. 반드시 상기 방법만으로 국한되는 것은 아니다.
도 2로 돌아가서, 대표 예측 움직임 벡터 선정 단계(230)에서, 변환 부호화 장치는 공간 분할 단계(220)를 통해 분할된 후보 움직임 벡터 공간의 각 집합 군에서 대표 후보 움직임 벡터를 선정한다. 선정 방식은 각 그룹의 중심값에서 거리가 가장 가까운 후보 예측 움직임 벡터를 대표 예측 움직임 벡터로 선정한다. 선정과 관련된 수학식은 다음과 같다.
K개의 후보 움직임 벡터 공간이 존재하면, 대표 후보 움직임 벡터도 K개가 선정되게 된다. 도 3을 참조하면, 4개의 후보 움직임 벡터 공간이 존재하고, 그에 따라 대표 후보 움직임 벡터도 4개 존재하는 것을 알 수 있다.
다음으로, 최적 예측 움직임 벡터 선정 단계(240)에서, 변환 부호화 장치는 대표 예측 움직임 벡터 선정 단계(230)에서 선정된 대표 예측 움직임 벡터들 중 최적의 예측 움직임 벡터를 선정한다.
도 5는 본 발명의 일 실시예에 따른 변환 부호화 방법의 최적 예측 움직임 벡터 선정 단계(240)를 구체적으로 나타낸 상세흐름도이다. 도 5를 참조하면, 최적 예측 움직임 벡터 선정 단계(240)는 대표 움직임 벡터 중 율-왜곡 관점에서 가장 좋은 성능을 나타내는 움직임 벡터를 최적 예측 움직임 벡터로 선정하는 단계(510) 및 최적 예측 움직임 벡터가 가리키는 블록의 주변 영역에서 더 적은 왜곡을 발생시키는 움직임 벡터를 새로운 최적 예측 움직임 벡터로 선정하는 단계(520)를 포함할 수 있다.
도 5를 참조하면, 최적 예측 움직임 벡터 선정 단계(510)에서, 대표 후보 예측 움직임 벡터들 중 율-왜곡 관점에서 최적인 예측 움직임 벡터를 최적 예측 움직임 벡터로 선정한다. 본 단계(510)에서는 율-왜곡 비용을 비교하기 위해 각 대표 예측 움직임 벡터의 율-왜곡 비용을 계산한다. 율-왜곡 비용은 SAD(Sum of Absolute Difference). SATD(Sum of Absolute Transformed Difference) 또는 (SAITD : Sum of Absolute Integer Transformed Difference) 등 다양한 비용을 계산한다. 상기 계산된 율-왜곡 비용을 기반으로 최적의 예측 움직임 벡터를 선정한다.
본 발명의 일 실시예에 있어서, 대표 예측 움직임 벡터 선정 단계(230)에서 선정된 움직임 벡터들 중 율-왜곡 관점에서 최적인 움직임 벡터를 선정하는 식은 다음과 같다.
여기서, 은 x를 부호화하는데 들어가는 비트량이다. 또한, R r 은 현재 블록의 잔여 신호(residual signal) 값을 부호화하는데 들어가는 비트량, 은 모드를 부호화하는데 들어가는 비트량, 는 움직임 벡터를 부호화하는데 들어가는 비트량, 과 은 가중치이다. D는 움직임 벡터가 가리키는 블록과 실제 블록 간의 왜곡을 의미한다.
다음으로, 새로운 최적 예측 움직임 벡터로 선정 단계(520)에서, 이전 단계(510)에서 선정된 최적 움직임 벡터의 정확도를 향상시키기 위해, 선택된 움직임 벡터가 가리키는 블록의 주변 영역에서 더 적은 왜곡이 발생하는 움직임 벡터를 찾는다. 이때, 개선된 움직임 벡터를 찾는 영역은 이전 단계(510)에서 선정된 최적 움직임 벡터로부터 수 화소 이내의 매우 근접한 영역으로 한정한다. 만일 개선된 움직임 벡터를 찾는 영역이 커진다면, 해당 연산에 걸리는 시간이 크게 증가하여 빠른 변화 부호화를 실현하고자 하는 목적에 부합하지 않게 되기 때문이다. 따라서, 영상의 특성에 따라 움직임 벡터 탐색 범위를 적응적으로 조절할 필요가 있다. 움직임이 큰 영상에서는 화질 열화가 심해질 수 있으므로, 움직임 벡터를 추정하는 탐색 범위를 넓은 범위로 해줄 필요가 있다. 따라서, 움직임 벡터 선택 방법에 의해 선택된 움직임 벡터의 크기에 따라 정확도 개선을 위한 탐색 범위를 조절하도록 한다.
다시 도 2로 돌아가서, 마지막으로, 변환 부호화 단계(250)에서, 변환 부호화 장치는 최적 예측 움직임 벡터 선정 단계(240)에서 선정된 최적 예측 움직임 벡터를 기반으로 변환 부호화하고자 하는 하위 해상도의 블록의 움직임 벡터를 예측하여 변환 부호화를 수행한다.
변환 부호화 장치
도 6은 본 발명의 일 실시예에 따른 변환 부호화 장치를 개략적으로 나타낸 블록도이다. 도 6에 도시된 바와 같이, 본 발명의 일 실시예에 따른 변환 부호화 장치는 공간 분할부(610), 대표 예측 움직임 벡터 선정부(620), 최적 예측 움직임 벡터 선정부(630) 및 변환 부호화부(640)를 포함할 수 있다.
공간 분할부(610)는 하위 해상도 블록에 매칭되는 상위 해상도 블록의 후보 움직임 벡터들을 각 후호 움직임 벡터들의 공간적 위치를 고려하여 적절히 결집한다. 결집을 위해서는 K-means 알고리즘을 사용할 수 있다. 다수의 후보 움직임 벡터가 존재하는데, 이를 공간적인 위치 관계를 고려하여 결집한다. 공간적 위치관계를 통해 K개의 그룹으로 결집할 수 있는데 이는 도 7를 통해 보다 상세히 설명한다. 다음으로, 공간적으로 결집된 그룹에 있어서, 중심값을 계산한다. 이는 상기 분할된 공간의 중심값을 의미하는 것으로, K 개의 그룹이 있으면, 중심값도 K 개 존재한다. 결집된 그룹의 위치 관계를 기반으로 공간을 분할한다.
도 7은 본 발명의 일 실시예에 따른 변환 부호화 장치의 공간 분할부(610)를 구체적으로 나타낸 상세블록도이다. 도 7에 도시된 바와 같이, 공간 분할부(610)는 제 1 중심값 설정부(710), 그룹 생성부(720), 제 2 중심값 생성부(730) 및 최적 공간 분할부(740)를 포함할 수 있다. 공간 분할부(610)는 K-means 알고리즘을 사용하는데, 전술한 바와 같이, K-means 알고리즘은 주어진 데이터를 K개의 그룹으로 묶는 알고리즘으로, 각 그룹의 중심값과 데이터 값들의 거리의 차이의 분산을 최소화하는 방식으로 동작한다.
제 1 중심값 설정부(710)는 하위 해상도 블록에 매칭되는 상위 해상도 블록을 찾아서 상기 상위 해상도 블록의 후보 예측 움직임 벡터를 추출하고, 추출된 블록의 후보 예측 움직임 벡터 xj들 중에서 임의의 K개를 선택하여 초기 중심값을 설정한다.
다음으로, 그룹 생성부(720)는 K개의 중심값에 가까운 움직임 벡터를 결집한다(430). 다음, 결집된 움직임 벡터를 기반으로 K개의 그룹을 생성한다.
제 2 중심값 생성부(730)는 K개 그룹의 중심값을 다시 설정한다. 이때, 하나의 후보 예측 움직임 벡터 xj와 K개의 그룹의 중심값 ui 사이의 Euclidean distance를 최소화시키는 ui를 찾고 이와 매칭되는 그룹 Si에 xj를 소속시킨다. 그리고는, 새롭게 바뀐 각 그룹 내의 모든 후보 움직임 벡터들의 평균값으로 각 그룹의 중심값 ui를 다시 찾는다.
상기와 같은 과정을 거친 후, 최적 공간 분할부(740)는 제 2 중심값 생성부(730)에서 생성된 중심값을 선행 중심값과 비교한다. 비교 결과, 선행 중심값과 현행 중심값이 차이가 나면, 현행 중심값을 토대로 하는 K의 중심값을 기반으로 제 1 중심값 설정부(710) 돌아가서 상기한 과정을 다시 수행한다. 비교 결과, 중심값이 서로 같은 경우, K 개의 후보 움직임 벡터를 추출하고, 공간을 분할한다. 즉, 반복 과정을 통해 더 이상의 클러스터링 결과가 변하지 않는 시점의 결과를 최적의 그룹화 및 중심값으로 선정한다.
도면에 도시되진 않았지만, 상기 공간 분할부(610)는 K-means 알고리즘 이외에 다른 공간 분할 알고리즘을 통해 공간적인 위치를 기반으로 공간 분할을 보다 효율적으로 수행할 수 있으면, 다른 방법을 통해 공간을 분할할 수 있다. 반드시 상기 방법만으로 국한되는 것은 아니다.
도 6으로 돌아가서, 대표 예측 움직임 벡터 선정부(620)는 공간 분할부(610)를 통해 분할된 후보 움직임 벡터 공간의 각 집합 군에서 대표 후보 움직임 벡터를 선정한다. 선정 방식은 각 그룹의 중심값에서 거리가 가장 가까운 후보 예측 움직임 벡터를 대표 예측 움직임 벡터로 선정한다. 전술한 바와 같이, K개의 후보 움직임 벡터 공간이 존재하면, 대표 후보 움직임 벡터도 K개가 선정되게 된다.
도 8은 본 발명의 일 실시예에 따른 변환 부호화 장치의 최적 예측 움직임 벡터 선정부(630)를 구체적으로 나타낸 상세블록도이다. 도 8에 도시된 바와 같이, 최적 예측 움직임 벡터 선정부(630)는 율-왜곡 비용 계산부(810), 벡터 선택부(820) 및 정확도 계산부(830)를 포함할 수 있다.
도 8을 참조하면, 최적 예측 움직임 벡터 선정부(630)는 대표 후보 예측 움직임 벡터들 중 율-왜곡 관점에서 최적인 예측 움직임 벡터를 최적 예측 움직임 벡터로 선정하기 위해 율-왜곡 비용을 비교한다. 따라서, 율-왜곡 비용 계산부(810)는 율-왜곡 비용을 비교하기 위해 각 대표 예측 움직임 벡터의 율-왜곡 비용을 계산하는 기능을 수행한다. 율-왜곡 비용은 SAD(Sum of Absolute Difference). SATD(Sum of Absolute Transformed Difference) 또는 (SAITD : Sum of Absolute Integer Transformed Difference) 등 다양한 비용을 계산한다. 상기 계산된 율-왜곡 비용을 기반으로 최적의 예측 움직임 벡터를 선정할 수 있다.
벡터 선택부(820)는 상기 율-왜곡 비용 계산부(810)에서 계산된 각 대표 예측 움직임 벡터의 율-왜곡 비용을 토대로 최적의 예측 움직임 벡터를 선택한다.
다음으로, 정확도 개선부(830)는 벡터 선택부(820)에서 선정된 최적 움직임 벡터의 정확도를 향상시키기 위해, 선택된 움직임 벡터가 가리키는 블록의 주변 영역에서 더 적은 왜곡이 발생하는 움직임 벡터를 찾는다. 이때, 개선된 움직임 벡터를 찾는 영역은 벡터 선택부(820)에서 선정된 최적 움직임 벡터로부터 수 화소 이내의 매우 근접한 영역으로 한정한다. 만일 개선된 움직임 벡터를 찾는 영역이 커진다면, 해당 연산에 걸리는 시간이 크게 증가하여 빠른 변화 부호화를 실현하고자 하는 목적에 부합하지 않게 되기 때문이다. 따라서, 영상의 특성에 따라 움직임 벡터 탐색 범위를 적응적으로 조절할 필요가 있다. 움직임이 큰 영상에서는 화질 열화가 심해질 수 있으므로, 움직임 벡터를 추정하는 탐색 범위를 넓은 범위로 해줄 필요가 있다. 따라서, 움직임 벡터 선택 방법에 의해 선택된 움직임 벡터의 크기에 따라 정확도 개선을 위한 탐색 범위를 조절하도록 한다.
다시 도 6으로 돌아가서, 마지막으로, 변환 부호화부(640)는 최적 예측 움직임 벡터 선정부(630)에서 선정된 최적 예측 움직임 벡터를 기반으로 변환 부호화하고자 하는 하위 해상도의 블록의 움직임 벡터를 예측하여 변환 부호화를 수행한다.
도 9는 본 발명의 변환 부호화 방법의 공간 분할 기법과 다른 기법을 적용했을 시의 성능을 비교한 그래프이다. 본 발명의 공간 분할 기법의 성능을 검증하기 위해 기존 알고리즘인 Mean 방법과 Median 방법을 사용하여 성능을 비교하였다. 실험은 JSVM(Joint Scalable Video Model) 9.19.7에서 실행하였으며, 실험 영상으로는 1280 x 720 크기의 City, Crew, Harbour, Soccer 영상을 사용하였다. 공간 해상도 감소는 가로, 세로로 각각 1/2로 하였다. 즉, 4개의 매크로 블록이 1개의 매크로 블록으로 병합된다. 도 9에 도시된 바와 같이, Anchor의 기법은 FDFE(Full Decoding Full Encoding) 기법으로 움직임 예측을 모두 수행한 결과이다. 따라서, 복잡도는 높지만 정확한 움직임 벡터를 구할 수 있기 때문에 가장 높은 성능을 보인다. 반면, 본 발명의 공간 분할 기법과 기존 알고리즘(Mean 및 Median)은 움직임 예측을 수행하기 않고 움직임 벡터 병합을 통해 산출된 움직임 벡터로 움직임 보상을 한 결과이다. 결과를 보면, 본 발명의 공간 분할 기법이 기존 알고리즘에 비해최대 1.5 dB 이상 성능이 향상된 것을 확인할 수 있다. 특히, City와 Soccer와 같이 움직임이 빠르고 복잡한 영상에서는 본 발명의 성능이 월등히 우수함을 알 수 있다. 이는 복잡한 움직임에서는 기존 방법은 적절히 해결할 수 없는데 반해 본 발명의 공간 분할 기법은 클러스터링을 통해 복잡한 움직임에서도 효과적으로 대처함을 알 수 있다. FDFE 방식에 비해 성능의 열화가 일부 존재하나 본 발명은 복잡도 측면에서 FDFE 방식과 비교가 되지 않을 정도로 낮은 복잡도를 나타낸다. 하지만 FDFE 방식과의 화질 성능 차이를 좁히기 위해 움직임 벡터 강도에 기반한 최적 움직임 벡터 선정시 정확도 개선 알고리즘을 적용한다.
도 10은 본 발명의 변환 부호화 방법의 최적 움직임 벡터 선정 기법과 다른 기법을 적용했을 시의 성능을 비교한 그래프이다. 특히 본 발명에서 제안하는 최적 움직임 벡터 선정과 정확도 개선 알고리즘을 적용한 경우의 성능을 평가하기 위한 것이다. 도 10에 도시된 바와 같이, 실험 결과 정확도 개선 알고리즘을 적용하였을 경우, FDFE 알고리즘과 거의 동일한 성능을 보여줌을 알 수 있다.
또한 복잡도 평가를 위해, FDFE 기반 트랜스코더 대비 본 발명의 변환 부호화 방법을 기반으로 한 트랜스코더의 움직임 예측 시간을 비교한 결과, 본 발명의 변환 부호화 방법은 대략 30배 정도의 움직임 예측 시간 감소가 있음을 확인할 수 있었다. 따라서, 본 발명의 변환 부호화 방법은 FDFE 방식과 거의 동일한 성능을 보여줌에도 불구하고 FDFE 알고리즘에 비해 최대 30배 정도의 움직임 벡터 추정 연산량 감소를 나타냄을 알 수 있다.
이상 도면 및 실시예를 참조하여 설명하였지만, 본 발명의 보호범위가 상기 도면 또는 실시예에 의해 한정되는 것을 의미하지는 않으며 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
Claims (20)
- 고해상도에서 저해상도로의 변환 부호화시 하위 해상도 블록에 매칭되는 상위 해상도 블록의 후보 예측 움직임 벡터들을 공간적 위치를 고려하여 결집시키고, 상기 결집된 후보 예측 움직임 벡터들을 기반으로 공간을 분할하는 단계;
상기 분할된 공간의 후보 예측 움직임 벡터들 중 하나를 대표 예측 움직임 벡터로 선정하는 단계;
상기 대표 예측 움직임 벡터들 중에서 최적 예측 움직임 벡터를 선정하는 단계; 및
상기 최적 예측 움직임 벡터를 기반으로 상기 하위 해상도의 블록의 움직임 벡터를 예측하여 변환 부호화를 수행하는 단계를 포함하는 것을 특징으로 하는 변환 부호화 방법.
- 제 1 항에 있어서, 상기 대표 예측 움직임 벡터 선정 단계는
상기 분할된 공간의 중심값에서 가장 거리가 가까운 후보 예측 움직임 벡터를 상기 대표 예측 움직임 벡터로 선정하는 단계를 포함하는 것을 특징으로 하는 변환 부호화 방법.
- 제 1 항에 있어서, 상기 최적 예측 움직임 벡터 선정 단계는
상기 최적 예측 움직임 벡터의 정확도를 향상시키기 위해, 상기 최적 예측 움직임 벡터가 가리키는 블록의 주변 영역에서 더 적은 왜곡이 발생하는 움직임 벡터를 새로운 최적 예측 움직임 벡터로 선정하는 단계를 포함하는 것을 특징으로 하는 변환 부호화 방법.
- 제 3 항에 있어서, 상기 최적 움직임 벡터 선정 단계는
상기 최적 예측 움직임 벡터가 가리키는 블록의 주변 영역에서 더 적은 왜곡이 발생하는 움직임 벡터를 상기 새로운 최적 예측 움직임 벡터로 선정할 때, 상기 주변 영역을 상기 최적 예측 움직임 벡터로부터 수 화소 이내의 근접한 영역으로 한정하는 단계를 포함하는 것을 특징으로 하는 변환 부호화 방법.
- 제 4 항에 있어서, 상기 최적 움직임 벡터 선정 단계는
상기 주변 영역을 영상의 특성에 따라 적응적으로 조절하는 단계를 포함하는 것을 특징으로 하는 변환 부호화 방법.
- 제 5 항에 있어서, 상기 최적 움직임 벡터 선정 단계는
상기 최적 움직임 벡터가 클 경우, 상기 주변 영역의 범위를 넓은 범위로 조절하고, 상기 최적 움직임 벡터가 작을 경우, 상기 주변 영역의 범위를 좁은 범위로 조절하는 단계를 포함하는 것을 특징으로 하는 변환 부호화 방법.
- 제 1 항에 있어서,
상기 최적 예측 움직임 벡터 선정 단계는 상기 대표 예측 움직임 벡터들 중에서 율-왜곡(rate-distortion) 관점에서 가장 좋은 성능을 나타내는 움직임 벡터를 상기 최적 예측 움직임 벡터로 선정하는 단계를 포함하는 것을 특징으로 하는 변환 부호화 방법.
- 제 1 항에 있어서, 상기 공간 분할 단계는
상기 분할된 공간의 중심값과 상기 후보 예측 움직임 벡터들의 거리의 차이의 분산을 최소화하는 방식을 통해 상기 공간을 분할하는 단계를 포함하는 것을 특징으로 하는 변환 부호화 방법.
- 제 1 항에 있어서, 상기 공간 분할 단계는
상기 후보 예측 움직임 벡터들 중에서 임의의 K 개를 선택하여 중심값을 설정하는 제 1 단계;
상기 K개의 중심값을 기반으로 K 개의 그룹으로 분할하고, 상기 후보 예측 움직임 벡터 중 어느 하나와 상기 K 개 그룹의 중심 값 사이의 거리를 최소화시키는 새로운 중심 값을 찾고 상기 새로운 중심 값과 매칭되는 그룹에 상기 하나의 후보 예측 움직임 벡터를 소속시키는 제 2 단계;
상기 새롭게 바뀐 각 그룹 내의 모든 후보 예측 움직임 벡터들의 평균값으로 상기 각 그룹의 중심값을 다시 찾는 제 3 단계; 및
상기 제 2 및 제 3 단계의 반복을 통해 더이상 클러스터링 결과가 변하지 않는 시점의 결과를 최적의 공간 분할 및 중심값으로 선정하는 제 4 단계를 포함하는 것을 특징으로 하는 변환 부호화 방법.
- 제 1 항에 있어서, 상기 최적 예측 움직임 벡터 선정 단계는
SATD(Sum of Absolute Transformed Differences)를 사용하여 상기 최적 예측 움직임 벡터를 선정하는 단계를 포함하는 것을 특징으로 하는 변환 부호화 방법.
- 고해상도에서 저해상도로의 변환 부호화시 하위 해상도 블록에 매칭되는 상위 해상도 블록의 후보 예측 움직임 벡터들을 공간적 위치를 고려하여 결집시키고, 상기 결집된 후보 예측 움직임 벡터들을 기반으로 공간을 분할하는 공간 분할부;
상기 분할된 공간의 후보 예측 움직임 벡터들 중 하나를 대표 예측 움직임 벡터로 선정하는 대표 예측 움직임 벡터 선정부;
상기 대표 예측 움직임 벡터들 중에서 최적 예측 움직임 벡터를 선정하는 최적 예측 움직임 벡터 선정부; 및
상기 최적 예측 움직임 벡터를 기반으로 상기 하위 해상도의 블록의 움직임 벡터를 예측하여 변환 부호화를 수행하는 변환 부호화부를 포함하는 것을 특징으로 하는 변환 부호화 장치.
- 제 11 항에 있어서, 상기 대표 예측 움직임 벡터 선정부는
상기 분할된 공간의 중심값에서 가장 거리가 가까운 후보 예측 움직임 벡터를 상기 대표 예측 움직임 벡터로 선정하는 것을 특징으로 하는 변환 부호화 장치.
- 제 11 항에 있어서, 상기 최적 예측 움직임 벡터 선정부는
상기 최적 예측 움직임 벡터의 정확도를 향상시키기 위해, 상기 최적 예측 움직임 벡터가 가리키는 블록의 주변 영역에서 더 적은 왜곡이 발생하는 움직임 벡터를 새로운 최적 예측 움직임 벡터로 선정하는 것을 특징으로 하는 변환 부호화 장치.
- 제 13 항에 있어서, 상기 최적 움직임 벡터 선정부는
상기 최적 예측 움직임 벡터가 가리키는 블록의 주변 영역에서 더 적은 왜곡이 발생하는 움직임 벡터를 상기 새로운 최적 예측 움직임 벡터로 선정할 때, 상기 주변 영역을 상기 최적 예측 움직임 벡터로부터 수 화소 이내의 근접한 영역으로 한정하는 것을 특징으로 하는 변환 부호화 장치.
- 제 14 항에 있어서,
상기 최적 움직임 벡터 선정부는 상기 주변 영역을 영상의 특성에 따라 적응적으로 조절하는 것을 특징으로 하는 변환 부호화 장치.
- 제 15 항에 있어서, 상기 최적 움직임 벡터 선정 단계는
상기 최적 움직임 벡터가 클 경우, 상기 주변 영역의 범위를 넓은 범위로 조절하고, 상기 최적 움직임 벡터가 작을 경우, 상기 주변 영역의 범위를 좁은 범위로 조절하는 것을 특징으로 하는 변환 부호화 장치.
- 제 11 항에 있어서,
상기 최적 예측 움직임 벡터 선정부는 상기 대표 예측 움직임 벡터들 중에서 율-왜곡(rate-distortion) 관점에서 가장 좋은 성능을 나타내는 움직임 벡터를 상기 최적 예측 움직임 벡터로 선정하는 것을 특징으로 하는 변환 부호화 장치.
- 제 11 항에 있어서, 상기 공간 분할부는
상기 분할된 공간의 중심값과 상기 후보 예측 움직임 벡터들의 거리의 차이의 분산을 최소화하는 방식을 통해 상기 공간을 분할하는 것을 특징으로 하는 변환 부호화 장치.
- 제 11 항에 있어서, 상기 공간 분할부는
상기 후보 예측 움직임 벡터들 중에서 임의의 K 개를 선택하여 중심값을 설정하는 제 1 중심값 설정부;
상기 K 개의 중심값을 기반으로 K 개의 그룹으로 분할하고, 상기 후보 예측 움직임 벡터 중 어느 하나와 K 개 그룹의 중심 값 사이의 거리를 최소화시키는 새로운 중심 값을 찾고 상기 새로운 중심 값과 매칭되는 그룹에 상기 하나의 후보 예측 움직임 벡터를 소속시키는 그룹 생성부;
상기 새롭게 바뀐 각 그룹 내의 모든 후보 예측 움직임 벡터들의 평균값으로 각 그룹의 중심값을 다시 찾는 제 2 중심값 생성부; 및
상기 제 2 및 제 3 단계의 반복을 통해 더이상 클러스터링 결과가 변하지 않는 시점의 결과를 최적의 공간 분할 및 중심값으로 선정하는 최적 공간 분할부를 포함하는 것을 특징으로 하는 변환 부호화 장치.
- 제 11 항에 있어서, 상기 최적 예측 움직임 벡터 선정부는
SATD(Sum of Absolute Transformed Differences)를 사용하여 상기 최적 예측 움직임 벡터를 선정하는 것을 특징으로 하는 변환 부호화 장치.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110129721A KR101796192B1 (ko) | 2011-12-06 | 2011-12-06 | 예측 움직임 벡터 선택에 따른 변환 부호화 방법 및 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110129721A KR101796192B1 (ko) | 2011-12-06 | 2011-12-06 | 예측 움직임 벡터 선택에 따른 변환 부호화 방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20130063285A true KR20130063285A (ko) | 2013-06-14 |
KR101796192B1 KR101796192B1 (ko) | 2017-11-10 |
Family
ID=48860682
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020110129721A KR101796192B1 (ko) | 2011-12-06 | 2011-12-06 | 예측 움직임 벡터 선택에 따른 변환 부호화 방법 및 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101796192B1 (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016068674A1 (ko) * | 2014-10-31 | 2016-05-06 | 삼성전자 주식회사 | 움직임 벡터 부복호화 방법 및 장치 |
WO2016137149A1 (ko) * | 2015-02-24 | 2016-09-01 | 엘지전자(주) | 폴리곤 유닛 기반 영상 처리 방법 및 이를 위한 장치 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020005032A1 (ko) * | 2018-06-28 | 2020-01-02 | 엘지전자 주식회사 | 움직임 정보 압축을 이용한 인터 예측 방법 및 그 장치 |
-
2011
- 2011-12-06 KR KR1020110129721A patent/KR101796192B1/ko active IP Right Grant
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016068674A1 (ko) * | 2014-10-31 | 2016-05-06 | 삼성전자 주식회사 | 움직임 벡터 부복호화 방법 및 장치 |
US10531113B2 (en) | 2014-10-31 | 2020-01-07 | Samsung Electronics Co., Ltd. | Method and device for encoding/decoding motion vector |
US10848780B2 (en) | 2014-10-31 | 2020-11-24 | Samsung Electronics Co., Ltd. | Method and device for encoding/decoding motion vector |
US11483584B2 (en) | 2014-10-31 | 2022-10-25 | Samsung Electronics Co., Ltd. | Method and device for encoding/decoding motion vector |
US11818388B2 (en) | 2014-10-31 | 2023-11-14 | Samsung Electronics Co., Ltd. | Method and device for encoding/decoding motion vector |
US11818387B2 (en) | 2014-10-31 | 2023-11-14 | Samsung Electronics Co., Ltd. | Method and device for encoding/decoding motion vector |
US11818389B2 (en) | 2014-10-31 | 2023-11-14 | Samsung Electronics Co., Ltd. | Method and device for encoding/decoding motion vector |
US11831904B2 (en) | 2014-10-31 | 2023-11-28 | Samsung Electronics Co., Ltd. | Method and device for encoding/decoding motion vector |
WO2016137149A1 (ko) * | 2015-02-24 | 2016-09-01 | 엘지전자(주) | 폴리곤 유닛 기반 영상 처리 방법 및 이를 위한 장치 |
US10856001B2 (en) | 2015-02-24 | 2020-12-01 | Lg Electronics Inc. | Polygon unit-based image processing method, and device for same |
Also Published As
Publication number | Publication date |
---|---|
KR101796192B1 (ko) | 2017-11-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110741640B (zh) | 用于视频代码化中的运动补偿预测的光流估计 | |
US11070834B2 (en) | Low-complexity method for generating synthetic reference frames in video coding | |
JP6457483B2 (ja) | 平滑性の制約を用いてモーションが補償されるフレーム補間 | |
KR100739281B1 (ko) | 움직임 추정 방법 및 장치 | |
US20190028732A1 (en) | Moving image encoding device, moving image encoding method, and recording medium for recording moving image encoding program | |
KR20140095607A (ko) | 인터 예측 방법 및 그 장치 | |
EP1980113A1 (en) | Method and apparatus for block-based motion estimation | |
US20170099491A1 (en) | Apparatus, method and non-transitory medium storing program for encoding moving picture | |
CN110691241A (zh) | 应用加速 | |
KR20150010518A (ko) | 적응적 샘플링에 기초한 계층적 움직임 예측 방법 및 움직임 예측 장치 | |
KR20090041562A (ko) | 프레임 보간 장치 및 그를 포함한 프레임 속도 상향 변환장치 | |
KR100910209B1 (ko) | 세분화된 탐색 영역을 기반으로 하는 고속 전영역 움직임예측 방법 및 그 장치 | |
KR101796192B1 (ko) | 예측 움직임 벡터 선택에 따른 변환 부호화 방법 및 장치 | |
US9736492B2 (en) | Motion vector smoothing method and apparatus | |
Van et al. | Fast motion estimation for closed-loop HEVC transrating | |
CN106303545B (zh) | 用于在帧序列中执行运动估计的数据处理***和方法 | |
JP6339977B2 (ja) | 映像符号化装置及び映像符号化プログラム | |
KR101253917B1 (ko) | 움직임 추정 장치 및 그 방법 | |
US11528485B2 (en) | Encoding apparatus and program | |
Hill et al. | Sub-pixel motion estimation using kernel methods | |
KR20190050207A (ko) | 고성능 hevc 부호기를 위한 움직임 추정 시스템 및 방법 | |
Hojati et al. | Massively parallel rate-constrained motion estimation using multiple temporal predictors in HEVC | |
Kulkarni et al. | A Two-Step Methodology for Minimization of Computational Overhead on Full Search Block Motion Estimation. | |
Senthamizharasi et al. | A hardware-efficient H. 264/AVC motion estimation using adaptive computation aware algorithm | |
Sudhakar et al. | Evaluation and comparison of different fast block matching algorithms using motion estimation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |