KR20200015798A - 동화상 부호화 방법, 동화상 부호화 장치, 동화상 복호 방법, 동화상 복호 장치, 및 동화상 부호화 복호장치 - Google Patents
동화상 부호화 방법, 동화상 부호화 장치, 동화상 복호 방법, 동화상 복호 장치, 및 동화상 부호화 복호장치 Download PDFInfo
- Publication number
- KR20200015798A KR20200015798A KR1020207002677A KR20207002677A KR20200015798A KR 20200015798 A KR20200015798 A KR 20200015798A KR 1020207002677 A KR1020207002677 A KR 1020207002677A KR 20207002677 A KR20207002677 A KR 20207002677A KR 20200015798 A KR20200015798 A KR 20200015798A
- Authority
- KR
- South Korea
- Prior art keywords
- motion vector
- block
- blk
- list
- candidate
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 156
- 230000033001 locomotion Effects 0.000 claims abstract description 353
- 239000013598 vector Substances 0.000 claims abstract description 324
- 238000012545 processing Methods 0.000 description 106
- 238000010586 diagram Methods 0.000 description 56
- 230000008569 process Effects 0.000 description 49
- 230000005236 sound signal Effects 0.000 description 19
- 230000003287 optical effect Effects 0.000 description 18
- 238000013139 quantization Methods 0.000 description 14
- 239000000872 buffer Substances 0.000 description 12
- 230000001413 cellular effect Effects 0.000 description 10
- 238000001824 photoionisation detection Methods 0.000 description 10
- 230000002123 temporal effect Effects 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 9
- 230000006870 function Effects 0.000 description 9
- 238000006243 chemical reaction Methods 0.000 description 8
- 238000009795 derivation Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 6
- 230000002452 interceptive effect Effects 0.000 description 6
- 239000004065 semiconductor Substances 0.000 description 5
- 238000000926 separation method Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 230000006835 compression Effects 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000001228 spectrum Methods 0.000 description 4
- 230000001174 ascending effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 241000023320 Luma <angiosperm> Species 0.000 description 1
- 101100083337 Schizosaccharomyces pombe (strain 972 / ATCC 24843) pic1 gene Proteins 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000012447 hatching Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000001678 irradiating effect Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
- H04N19/139—Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
-
- 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/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- 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/124—Quantisation
-
- 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/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
-
- 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/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/15—Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
-
- 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/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- 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/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- 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
-
- 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/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
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
-
- 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/56—Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
-
- 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
-
- 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/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- 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/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
-
- 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/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- 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/172—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 picture, frame or field
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
동화상 부호화 장치(100)는, 부호화 대상 픽처에 포함되어 부호화 대상 블록에 공간적으로 인접하거나, 또는, 부호화 대상 픽처와는 상이한 픽처에 포함되는 시간적으로 인접하는 1 이상의 대응 블록의 각각에 대하여, 리스트에 대응 블록의 움직임 벡터를 선택적으로 추가할 때에, 시간적으로 인접하는 대응 블록의 제1의 움직임 벡터를 스케일링 처리함으로써 제2의 움직임 벡터를 산출하고, 제2의 움직임 벡터가 소정 크기의 범위에 포함되는지 여부를 판정하고, 제2의 움직임 벡터가 소정 크기의 범위 내에 포함되면, 제2의 움직임 벡터를 리스트에 추가하는 인트라·인터 예측부(107)를 구비한다.
Description
본 발명은, 복수의 픽처를 블록마다 부호화하는 동화상 부호화 방법, 및 복수의 픽처를 블록마다 복호하는 동화상 복호 방법에 관한 것이다.
H. 264의 인터 예측 복호에 있어서, B 슬라이스 등에 포함되는 2방향 참조 블록은, 복호 대상 블록이 포함되는 픽처와 상이한 픽처에 포함되는 2개의 화상 데이터를 참조함으로써 복호 대상 블록의 화상 데이터가 예측 복호된다.
또한, H. 264에서는, 다이렉트 모드라고 불리는 예측 화상을 작성하기 위한 움직임 벡터의 도출 모드가 존재한다(비특허 문헌 1의 8.4.1.2.1절, 3.45절 등).
H. 264의 다이렉트 모드에서는, 이하의 (S)와 (T)의 2개의 모드가 있다.
(T) (시간적으로 상이하지만) 공간적으로 동일한 위치에 위치하는 co_located 블록(Col_Blk)의 움직임 벡터 mvCol를 소정의 비로 스케일 처리하여 이용하는 시간 다이렉트 모드(temporal mode).
(S) (시간적으로는 동일한 표시 시각의 픽처이지만) 공간적으로 상이한 위치의 블록의 움직임 벡터에 관한 데이터(motion data)를 이용하는 공간 다이렉트 모드(special direct mode).
비특허 문헌 1 : ITU-T H. 264 03/2010
비특허 문헌 2 : WD4: Working Draft 4 of High-Efficiency Video Coding Joint Collaborative Team on Video Coding(JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG 11 6th Meeting:Torino, IT, 14-22 July, 2011, Document:JCTVC-F803_d2
그러나, 상기의 시간 다이렉트 모드에서는, 스케일 처리 시에 곱셈의 계산이 필요하다. 이 때문에, 스케일 처리 후는, 부호화측 또는 복호측에서 취급하는 움직임 벡터의 비트 정밀도 범위가 커질 수 있으므로, 부호화측 또는 복호화측의 부하가 증가한다.
여기서, 본 발명은, 처리 부하를 삭감하면서도 부호화 효율을 유지할 수 있는 동화상 부호화 방법 및 동화상 복호 방법 등을 제공한다.
본 발명의 일양태에 관련된 동화상 부호화 방법은, 복수의 픽처를 블록마다 부호화하는 동화상 부호화 방법으로서, 부호화 대상 픽처에 포함되어 부호화 대상 블록에 공간적으로 인접하거나, 또는, 상기 부호화 대상 픽처와는 상이한 픽처에 포함되는 시간적으로 인접하는 1이상의 대응 블록의 각각에 대하여, 리스트에 상기 대응 블록의 움직임 벡터를 선택적으로 추가하는 추가 단계와, 상기 리스트로부터, 상기 부호화 대상 블록의 부호화를 위해서 이용하는 움직임 벡터를 선택하는 선택 단계와, 상기 선택 단계에 있어서 선택된 상기 움직임 벡터를 이용하여 상기 부호화 대상 블록을 부호화하는 부호화 단계를 포함하고, 상기 추가 단계에서는, 상기 시간적으로 인접하는 대응 블록의 제1의 움직임 벡터를 스케일링 처리함으로써 제2의 움직임 벡터를 산출하고, 산출한 상기 제2의 움직임 벡터가, 소정 크기의 범위에 포함되는지 여부를 판정하고, 상기 제2의 움직임 벡터가 상기 소정 크기의 범위 내에 포함되면, 상기 제2의 움직임 벡터를 상기 대응 블록의 움직임 벡터로서 상기 리스트에 추가한다.
또한, 본 발명의 일양태에 관련된 동화상 복호 방법은, 복수의 픽처를 블록마다 복호하는 동화상 복호 방법으로서, 복호 대상 픽처에 포함되어 복호 대상 블록에 공간적으로 인접하거나, 또는, 상기 복호 대상 픽처와는 상이한 픽처에 포함되는 시간적으로 인접하는 1이상의 대응 블록의 각각에 대하여, 리스트에 상기 대응 블록의 움직임 벡터를 선택적으로 추가하는 추가 단계와, 상기 리스트로부터, 상기 복호 대상 블록의 복호를 위해서 이용하는 움직임 벡터를 선택하는 선택 단계와, 상기 선택 단계에 있어서 선택된 상기 움직임 벡터를 이용하여 상기 복호 대상 블록을 복호하는 복호 단계를 포함하고, 상기 추가 단계에서는, 상기 시간적으로 인접하는 대응 블록의 제1의 움직임 벡터를 스케일링 처리함으로써 제2의 움직임 벡터를 산출하고, 산출한 상기 제2의 움직임 벡터가, 소정 크기의 범위에 포함되는지 여부를 판정하고, 상기 제2의 움직임 벡터가 상기 소정 크기의 범위 내에 포함되면, 상기 제2의 움직임 벡터를 상기 대응 블록의 움직임 벡터로서 상기 리스트에 추가한다.
또한, 이들의 포괄적 또는 구체적인 양태는, 시스템, 방법, 집적 회로, 컴퓨터 프로그램 또는 컴퓨터 판독 가능한 CD-ROM 등의 기록 매체로 실현되어도 되고, 시스템, 방법, 집적 회로, 컴퓨터 프로그램 및 기록 매체가 임의 조합으로 실현되어도 된다.
본 발명에 의하면, 처리 부하를 삭감하면서도 부호화 효율을 유지하는 것이 가능해진다.
도 1은 복호 대상 블록(Curr_Blk)의 복호에 있어서 참조하는 2매의 픽처를 설명하는 도면이다.
도 2a는 참조 픽처 리스트(RefPicList0)를 설명하는 도면이다.
도 2b는 참조 픽처 리스트(RefPicList1)를 설명하는 도면이다.
도 3은 CurrBlk의 참조 픽처 리스트 RefPicList0과 RefPicList1에 대하여 picNum을 설명하는 도면이다.
도 4는 (T)의 시간 다이렉트 모드(temporal mode)에 있어서 이용되는 정보를 설명하는 도면이다.
도 5a는 시간 다이렉트 모드(temporal mode)에 있어서의 스케일링 처리를 설명하기 위한 도면이며, co-located 블록, 움직임 벡터 mvL0Col을 간략화하여 설명하는 도면이다.
도 5b는 시간 다이렉트 모드(temporal mode)에 있어서의 스케일링 처리를 설명하기 위한 도면이며, 스케일링 처리의 개념을 설명하는 도면이다.
도 6은 STEP1∼3을 비특허 문헌 1에 기재된 도출식과의 관계로 나타내는 도면이다.
도 7은 (S)의 공간 다이렉트 모드(special direct mode)에 대하여 설명하는 도면이다.
도 8은 실시의 형태 1의 동화상 부호화 장치의 구성을 나타내는 블록도이다.
도 9는 실시의 형태 1의 동화상 부호화 장치에 있어서의 동작을 설명하는 플로우도이다.
도 10은 인트라·인터 예측부가 설정하는 머지 후보 블록 [1…6]을 설명하는 도면이다.
도 11은 머지 후보 리스트(mergeCandList)의 개념을 설명하는 도면이다.
도 12는 인트라·인터 예측부가 행하는 중복 판정에서 중복으로 판정하는 예를 나타내는 도면이다.
도 13은 머지 후보 블록 [i]의 motion data를 취득하는 처리를 설명하는 플로우도이다.
도 14는 인트라·인터 예측부가 행하는 스케일링 처리의 일예를 설명하는 플로우도이다.
도 15는 인트라·인터 예측부가 행하는 스케일링 처리의 다른 예를 설명하는 플로우도이다.
도 16은 실시의 형태 1의 동화상 복호 장치의 구성을 나타내는 블록도이다.
도 17은 실시의 형태 1의 동화상 복호 장치에 있어서의 동작을 설명하는 플로우도이다.
도 18은 머지 후보 리스트(mergeCandList)의 갱신 처리를 설명하기 위한 도면이며, (a) 초기화 생성되는 머지 후보 리스트(mergeCandList)를 나타내는 도면, (b) 갱신 처리된 후의 머지 후보 리스트(mergeCandList)를 나타내는 도면이다.
도 19a는 HEVC에 있어서의 움직임 예측 벡터 mvpLX에 대하여 설명하는 도면이다.
도 19b는 움직임 예측 벡터 mvpLX의 후보 리스트 mvpListLX(mvpListL0과 mvpListL1)를 설명하는 도면이다.
도 20은 예측 후보 블록군, 혹은 예측 후보 블록을 설명하는 도면이다.
도 21은 컨텐츠 전송 서비스를 실현하는 컨텐츠 공급 시스템의 전체 구성도이다.
도 22는 디지털 방송용 시스템의 전체 구성도이다.
도 23은 텔레비전의 구성예를 나타내는 블록도이다.
도 24는 광 디스크인 기록 미디어에 정보의 읽고 쓰기를 행하는 정보 재생/기록부의 구성예를 나타내는 블록도이다.
도 25는 광 디스크인 기록 미디어의 구조예를 나타내는 도면이다.
도 26a는 휴대전화의 일예를 나타내는 도면이다.
도 26b는 휴대전화의 구성예를 나타내는 블록도이다.
도 27은 다중화 데이터의 구성을 나타내는 도면이다.
도 28은 각 스트림이 다중화 데이터에 있어서 어떻게 다중화되어 있는지를 모식적으로 나타내는 도면이다.
도 29는 PES 패킷열에, 비디오 스트림이 어떻게 저장되는지를 더욱 상세하게 도시한 도면이다.
도 30은 다중화 데이터에 있어서의 TS 패킷과 소스 패킷의 구조를 나타내는 도면이다.
도 31은 PMT의 데이터 구성을 나타내는 도면이다.
도 32는 다중화 데이터 정보의 내부 구성을 나타내는 도면이다.
도 33은 스트림 속성 정보의 내부 구성을 나타내는 도면이다.
도 34는 영상 데이터를 식별하는 단계를 나타내는 도면이다.
도 35는 각 실시의 형태의 동화상 부호화 방법 및 동화상 복호 방법을 실현하는 집적 회로의 구성예를 도시하는 블록도이다.
도 36은 구동 주파수를 전환하는 구성을 나타내는 도면이다.
도 37은 영상 데이터를 식별하고, 구동 주파수를 전환하는 단계를 나타내는 도면이다.
도 38은 영상 데이터의 규격과 구동 주파수를 대응시킨 룩 업 테이블의 일예를 나타내는 도면이다.
도 39a는 신호 처리부의 모듈을 공유화하는 구성의 일예를 나타내는 도면이다.
도 39b는 신호 처리부의 모듈을 공유화하는 구성의 다른 일예를 나타내는 도면이다.
도 2a는 참조 픽처 리스트(RefPicList0)를 설명하는 도면이다.
도 2b는 참조 픽처 리스트(RefPicList1)를 설명하는 도면이다.
도 3은 CurrBlk의 참조 픽처 리스트 RefPicList0과 RefPicList1에 대하여 picNum을 설명하는 도면이다.
도 4는 (T)의 시간 다이렉트 모드(temporal mode)에 있어서 이용되는 정보를 설명하는 도면이다.
도 5a는 시간 다이렉트 모드(temporal mode)에 있어서의 스케일링 처리를 설명하기 위한 도면이며, co-located 블록, 움직임 벡터 mvL0Col을 간략화하여 설명하는 도면이다.
도 5b는 시간 다이렉트 모드(temporal mode)에 있어서의 스케일링 처리를 설명하기 위한 도면이며, 스케일링 처리의 개념을 설명하는 도면이다.
도 6은 STEP1∼3을 비특허 문헌 1에 기재된 도출식과의 관계로 나타내는 도면이다.
도 7은 (S)의 공간 다이렉트 모드(special direct mode)에 대하여 설명하는 도면이다.
도 8은 실시의 형태 1의 동화상 부호화 장치의 구성을 나타내는 블록도이다.
도 9는 실시의 형태 1의 동화상 부호화 장치에 있어서의 동작을 설명하는 플로우도이다.
도 10은 인트라·인터 예측부가 설정하는 머지 후보 블록 [1…6]을 설명하는 도면이다.
도 11은 머지 후보 리스트(mergeCandList)의 개념을 설명하는 도면이다.
도 12는 인트라·인터 예측부가 행하는 중복 판정에서 중복으로 판정하는 예를 나타내는 도면이다.
도 13은 머지 후보 블록 [i]의 motion data를 취득하는 처리를 설명하는 플로우도이다.
도 14는 인트라·인터 예측부가 행하는 스케일링 처리의 일예를 설명하는 플로우도이다.
도 15는 인트라·인터 예측부가 행하는 스케일링 처리의 다른 예를 설명하는 플로우도이다.
도 16은 실시의 형태 1의 동화상 복호 장치의 구성을 나타내는 블록도이다.
도 17은 실시의 형태 1의 동화상 복호 장치에 있어서의 동작을 설명하는 플로우도이다.
도 18은 머지 후보 리스트(mergeCandList)의 갱신 처리를 설명하기 위한 도면이며, (a) 초기화 생성되는 머지 후보 리스트(mergeCandList)를 나타내는 도면, (b) 갱신 처리된 후의 머지 후보 리스트(mergeCandList)를 나타내는 도면이다.
도 19a는 HEVC에 있어서의 움직임 예측 벡터 mvpLX에 대하여 설명하는 도면이다.
도 19b는 움직임 예측 벡터 mvpLX의 후보 리스트 mvpListLX(mvpListL0과 mvpListL1)를 설명하는 도면이다.
도 20은 예측 후보 블록군, 혹은 예측 후보 블록을 설명하는 도면이다.
도 21은 컨텐츠 전송 서비스를 실현하는 컨텐츠 공급 시스템의 전체 구성도이다.
도 22는 디지털 방송용 시스템의 전체 구성도이다.
도 23은 텔레비전의 구성예를 나타내는 블록도이다.
도 24는 광 디스크인 기록 미디어에 정보의 읽고 쓰기를 행하는 정보 재생/기록부의 구성예를 나타내는 블록도이다.
도 25는 광 디스크인 기록 미디어의 구조예를 나타내는 도면이다.
도 26a는 휴대전화의 일예를 나타내는 도면이다.
도 26b는 휴대전화의 구성예를 나타내는 블록도이다.
도 27은 다중화 데이터의 구성을 나타내는 도면이다.
도 28은 각 스트림이 다중화 데이터에 있어서 어떻게 다중화되어 있는지를 모식적으로 나타내는 도면이다.
도 29는 PES 패킷열에, 비디오 스트림이 어떻게 저장되는지를 더욱 상세하게 도시한 도면이다.
도 30은 다중화 데이터에 있어서의 TS 패킷과 소스 패킷의 구조를 나타내는 도면이다.
도 31은 PMT의 데이터 구성을 나타내는 도면이다.
도 32는 다중화 데이터 정보의 내부 구성을 나타내는 도면이다.
도 33은 스트림 속성 정보의 내부 구성을 나타내는 도면이다.
도 34는 영상 데이터를 식별하는 단계를 나타내는 도면이다.
도 35는 각 실시의 형태의 동화상 부호화 방법 및 동화상 복호 방법을 실현하는 집적 회로의 구성예를 도시하는 블록도이다.
도 36은 구동 주파수를 전환하는 구성을 나타내는 도면이다.
도 37은 영상 데이터를 식별하고, 구동 주파수를 전환하는 단계를 나타내는 도면이다.
도 38은 영상 데이터의 규격과 구동 주파수를 대응시킨 룩 업 테이블의 일예를 나타내는 도면이다.
도 39a는 신호 처리부의 모듈을 공유화하는 구성의 일예를 나타내는 도면이다.
도 39b는 신호 처리부의 모듈을 공유화하는 구성의 다른 일예를 나타내는 도면이다.
(본 발명의 기초가 된 지견)
도 1은, 복호 대상 블록(Curr_Blk)의 복호에 있어서 참조하는 2매의 픽처를 설명하는 도면이다. 도면 중, 「300」부터 「304」는 픽처 번호(PicNum)이며, 표시순 PicOrderCnt()의 값을 올림차순으로 배열한 도면이다. 복호 대상 블록은 픽처 번호 302(CurrPic)에 포함되는 블록이다. 이 예에서는, 복호 대상 블록은, 표시순 전방에 존재하는 PicNum301의 픽처와 표시순 후방에 존재하는 PicNum304의 픽처의 화상 데이터를 참조하고 있다. 이하, 화살표 범례는 이 예와 같이, 화살표의 근원이 참조 하는 쪽(복호 대상측)의 픽처, 화살표의 끝이 복호에 이용되는(참조되는)쪽의 픽처를 나타낸다.
이하, 명세서와 도면에서는, 복호 대상 블록을 검은색 블록으로 표시하여 Curr_Blk로 생략 표기한다. 또한, 화살표 범례는 이 예와 같이, 화살표의 근원이 참조하는 쪽(복호 대상측)의 픽처, 화살표의 끝이 복호에 이용되는 (참조되는)쪽의 픽처를 나타낸다. 또한, picNum302의 픽처가 복호 대상 블록을 포함하는 픽처(복호 대상 픽처)인 것으로 한다.
도 2a 및 도 2b는, 2개의 참조 픽처 리스트(RefPicList0 및 RefPicList1)를 설명하는 도면이다.
첫번째의 참조 픽처를 특정하기 위한 리스트가 도 2a에 도시하는 참조 픽처 리스트 0(RefPicList0)이다. 두번째 참조 픽처를 특정하기 위한 리스트가 도 2b에 도시하는 참조 픽처 리스트 1(RefPicList1)이다. 참조 픽처 리스트는, 복호 대상 블록이 어느 참조 픽처를 참조하는지를, 「302」등의 값이 커지는 picNum이 아니라, 「0」이나 「1」과 같은 작은 인덱스값(refIdxL0과 refIdxL1)만으로 표시할 수 있는 리스트이다. 슬라이스 중의 각각의 블록인, 복호 대상 블록(Curr_Blk)이 어느 픽처를 참조할지는, 이 리스트 중의 인덱스의 값으로 주어진다.
복호 대상 블록이 포함되는 B슬라이스의 복호 시에 리스트가 초기치화(생성)된다.
참조 픽처 리스트 RefPicList0과 RefPicList1은, 인덱스의 나중 번호(인덱스값이 작은 번호)가 나타내는 픽처 번호 picNum가 상이하도록 바꿔 배열할 수 있다. 참조 픽처 리스트를 각각 복호 대상 픽처의 picNum302을 경계로 하여 전반 부분과 후반 부분으로 나누고, 참조 픽처 리스트 0의 전반 부분에서는 내림차순으로(301, 300…) 할당한다. 또한, 참조 픽처 리스트 1의 전반 부분에서는 올림차순으로(303, 304…) 할당한다.
예를 들면, 부호열에서 인덱스의 값이 참조 픽처 리스트 0 및 참조 픽처 리스트 1 각각에 대하여 가장 작은 「0」으로 주어지면, 픽처(302)에 대하여 이하의 2개의 참조 픽처가 결정된다.
첫번째의 참조 픽처로서, RefPicList0 [0]의 값인 1개전의 픽처(301)가 결정된다. 두번째의 참조 픽처로서, RefPicList1 [0]의 값인 1개 후의 픽처(303)가 결정된다.
도 1에 도시하는 예에서는, 첫번째의 인덱스가 refIdxL0=0이며, 픽처(301)를 참조하고, 두번째의 인덱스가 refIdxL1=1이며, 픽처(304)를 참조하고 있다.
도 3은, 픽처(302)에 포함되는 CurrBlk의 참조 픽처 리스트 RefPicList0과 RefPicList1에 대하여 refIdxL0 및 refIdxL1의 값을 「0」부터 증가시킨 경우에 나타내는 picNum을 설명하는 도면이다. 복호 대상 픽처(picNum302)로부터 봐서, 각 리스트의 인덱스값(refIdxL0의 값과 refIdxL1의 값)이 증가할수록, 인덱스의 값으로 특정되는 픽처는 복호 대상 픽처로부터 멀어진다.
특히 두번째 참조를 나타내는 RefPicList1에 있어서는, 리스트의 인덱스의 작은 값의 부분에 CurrPic 픽처(302)보다 뒤(greater than PicOrderCnt(CurrPic))의 픽처(복호 완료이며 메모리에 유지되어 있는 것에 대해서) 내림차순으로 설정되는 룰로 인덱스가 유지된다(이를 Rule1이라고 부른다). 이 Rule1에 따르면, RefPicList1 [0]로 특정되는 픽처는, 도면 중 파선원으로 표시하는 picNum(303)이 된다.
상기한 바와 같이, 명세서와 도면에서는, 특별히 양해를 받지 않는 한 첫번째의 참조 픽처 리스트를 RefPicList0으로 생략하고, 이 리스트 중의 인덱스를 refIdxL0로 생략한다. 두번째의 참조 픽처 리스트를 RefPicList1, 이 리스트 중의 인덱스를 refIdxL1으로 생략한다(상세는 도면 중의 설명 및 비특허 문헌 1의 8.2.4.2.3절 8.2.4Decoding process for reference picture lists construction을 참조).
다음에, H. 264의 (T)시간 다이렉트 모드(temporal mode) 및 (S)공간 다이렉트 모드(special direct mode)에 대하여, 순서대로 설명한다.
도 4는 (T)의 시간 다이렉트 모드(temporal mode)에 있어서 이용되는 정보를 설명하는 도면이다.
도면 중 해칭으로 표시하는 블록이, 「(시간적으로 상이하지만) 공간적으로 같은 위치에 위치하는 co_located 블록(Col_Blk)」이다. 시간 위치는, 도 3에서 설명한 두번째 참조 리스트 1RefPicList1의 인덱스의 값 「0」으로 특정되어 픽처(303)가 된다. 전술의 Rule1에 의거하여 초기화되는 RefPicList1 리스트에 있어서, 인덱스값 「0」이 나타내는 픽처(RefPicList1 [0]의 값)는, 참조 메모리 중에 시간적으로 후방의 픽처가 존재하지 않는 등 특별할 경우를 제외하고, 참조 메모리 중에 존재하는 가장 표시 시간적으로 가까운 후방의 픽처가 된다.
다음에, 시간 다이렉트 모드는, 검은색을 표시하는 복호 대상 블록 Curr_Blk의 움직임 벡터 mvL0, mvL1을, 해칭으로 표시하는 Col_Blk의 「motion 데이터」를 이용하여 도출한다. motion 데이터에는 이하가 포함된다.
(i) Col_Blk가 참조하는 참조 픽처 refIdxL0 [refidx].
Col_Blk는, 참조 픽처로서 픽처 picNum(301)을 참조하고 있다(RefPicList0 [1]의 값).
(ii) 참조 픽처에 대한 움직임 벡터 mvL0Col.
도면 중, 픽처 picNum(301) 중의, 파선 화살표가, Col_Blk의 복호 시에 이용되는 첫번째의 움직임 벡터 mvL0Col이다.
이하, 명세서, 도면에 있어서, 파선 화살표는 움직임 벡터를 나타낸다. 움직임 벡터 mvL0Col는, Col_Blk의 복호 시에 이용된 col_Blk에 있어서의 예측 화상을 나타내는 움직임 벡터이다.
도 5a 및 도 5b는, 시간 다이렉트 모드(temporal mode)에 있어서의 스케일링 처리를 설명하는 도면이다.
스케일링 처리는, 움직임 벡터 mvL0Col의 값을, 참조 픽처까지의 거리의 차의 비로 스케일링함으로써, 복호 대상 블록 Curr_Blk의 움직임 벡터 mvL0와 움직임 벡터 mvL1을 도출하는 처리이다.
도 5a는, 도 1∼4의 참조 구조, co-located 블록, 움직임 벡터 mvL0Col을 간략화하여 설명하는 도면이다.
도 5b는, 스케일링 처리의 개념을 설명하는 도면이다.
스케일링 처리는, 간단히는 도 5b에 도시하는 것과 같은 삼각형 DEF와 삼각형 ABC의 상이를 관념하면 된다.
삼각형 DEF는, Col_Blk에 대한 삼각형이다.
점 D는, Col_Blk의 위치이다. 점 E는, Col_Blk가 참조하는 픽처의 위치이다. 점 F는, 점 E를 기점으로 한 움직임 벡터 mvL0Col가 나타내는 앞의 좌표이다.
삼각형 ABC는, Curr_Blk에 대한 삼각형이다.
점 A는, 복호 대상으로 하는 블록 Curr_Blk의 위치이다. 점 B는, 이 블록 Curr_Blk가 참조하는 픽처의 위치이다. 점 C는, 지금부터 도출하는 벡터가 지시하는 앞의 좌표가 된다.
우선, STEP1에서, (1) Curr_Blk부터 Curr_Blk의 참조하는 픽처에의 상대 거리(tb)에 대한, (2) Col_Blk부터 Col_Blk의 참조하는 픽처에의 상대 거리(tx)의 비인 ScaleFactor를 도출한다. 예를 들면 이 도면에서는, ScaleFactor는, tb=302-301=1에 대한, tx=303-301=2의 비(tb/tx)이며, 0.5(1/2)가 스케일비(상사비가 1:2)이다. 이는, 삼각형 ABC와 삼각형 DEF와 상사비가 1/2인 것에 해당한다.
ScaleFactor=tb/tx= (302-301)/ (303-301)=1/2… (STEP1)
STEP2에서, 원래 주어져 있는 변(EF)을 길이로 하는 벡터(EF)를, 얻어진 스케일비로, 곱셈하여, 벡터(BC)를 얻는다. 이 벡터(BC)가 첫번째의 벡터(mvL0)이다.
mvL0=ScaleFactor×mvL0Col …(STEP2)
STEP3에서, 도출 대상인 또 하나의 벡터 mvL1을, STEP2에서 도출한 mvL0과 방향을 반전시킨 mvL0Col을 이용하여 도출한다.
mvL1=mvL0-mvL0Col …(STEP3)
도 6은, 단계 STEP1∼3을 비특허 문헌 1의 8.4.1.2.3절 Derivation process for temporal direct luma motion vector and reference index prediction mode에 기재된 도출식과의 관계로 나타내는 도면이다.
도 7은, 2개의 다이렉트 모드 중, 다른쪽의 (S)의 공간 다이렉트 모드(special direct mode)에 대하여 설명하는 도면이다.
이 모드에서는, 복호 대상 블록(Curr_Blk)이 포함되는 움직임 보상 단위 블록에 인접하는 블록 N(예를 들면 인접 블록 A, 인접 블록 B, 인접 블록 C)에 대하여 전술의 움직임 벡터에 관한 데이터(motion 데이터) ((움직임 벡터 mvLXN, 참조 인덱스 refIdxLXN)의 값의 쌍을 말한다. 이하 동일)를 취득한다.
움직임 벡터에 관한 데이터(이하, 움직임 데이터라고도 한다) 중, 가장 참조 인덱스(refIdxLXN)의 값이 작은 「0」을 포함시킨 자연수(minPositive값)를 가지는 블록의 움직임 데이터(refIdxL0, L1과 그에 대한 mvL0, mvL1)를 그대로 이용한다(비특허 문헌 8-186, 187식). 구체적으로는, 이하의 계산에 의해 refIdxL0과 L1을, 각각 도출한다.
refIdxL0=MinPositive(refIdxL0A, MinPositive(refIdxL0B, refIdxL0C))(8-186)
refIdxL1=MinPositive(refIdxL1A, MinPositive(refIdxL1B, refIdxL1C)) (8-187)
이 공간 다이렉트 모드에서는, 움직임 벡터 mvL0 또는 mvL1에 대하여, 동일한 픽처로부터 참조 픽처까지의 거리(refIdxL0, L1)를 포함시킨 “motiondata”을 세트로 이용하기 위해서, 인접 블록이 이용하는 참조 픽처를 참조하면 되고, 원칙적으로, 시간 다이렉트 모드와 같이 mvL0 또는 mvL1을 스케일할 필요는 없었다.
이상과 같이, (T) 시간 다이렉트 모드에 대하여, ScaleFactor(DistScaleFactor)을 이용한 움직임 벡터 mvL0의 도출에는, ScaleFactor와 mvL0Col의 곱셈의 계산이 필요하다. 이 때문에, 예를 들면, 복호측에서 취급하는 움직임 벡터의 크기 범위를, 어떤 비트 정밀도로 나타내는 것이 가능한 범위로 제한할 경우, 부호화측에서, 시간 다이렉트의 곱셈 후의 움직임 벡터의 크기가, 상기 범위내에 들어가도록 움직임 벡터의 생성을 제어할 필요가 있어, 부호화측의 처리 부하가 증가한다.
또한, 종래의 H. 264에서는, (T) 시간 다이렉트 모드를 사용할지(S) 공간 다이렉트를 사용할지의 전환이, 슬라이스 단위로 1회밖에 할 수 없었다.
HEVC에서는, H. 264에 있어서의 슬라이스 단위의 공간 다이렉트 모드 및 시간 다이렉트 모드에서도, 필요한 유연한 움직임 벡터의 도출 방법의 지정을 모도하는 머지 모드로 불리는 모드가 검토되고 있다. 이 새로운 HEVC의 머지 모드와의 조합에 의해, 상기 움직임 벡터의 크기 범위를 제한할 경우의 처리 부하를 삭감하면서도 부호화 효율을 유지하는 적절한 밸런스가 기대된다.
여기서, 본 발명의 일양태에 관련된 동화상 부호화 방법은, 복수의 픽처를 블록마다 부호화하는 동화상 부호화 방법으로서, 부호화 대상 픽처에 포함되어 부호화 대상 블록에 공간적으로 인접하는, 또는, 상기 부호화 대상 픽처와는 상이한 픽처에 포함되는 시간적으로 인접하는 1이상의 대응 블록의 각각에 대하여, 리스트에 상기 대응 블록의 움직임 벡터를 선택적으로 추가하는 추가 단계와, 상기 리스트로부터, 상기 부호화 대상 블록의 부호화를 위해서 이용하는 움직임 벡터를 선택하는 선택 단계와, 상기 선택 단계에 있어서 선택된 상기 움직임 벡터를 이용하여 상기 부호화 대상 블록을 부호화하는 부호화 단계를 포함하고, 상기 추가 단계에서는, 상기 시간적으로 인접하는 대응 블록의 제1의 움직임 벡터를 스케일링 처리함으로써 제2의 움직임 벡터를 산출하고, 산출한 상기 제2의 움직임 벡터가, 소정 크기의 범위에 포함되는지 여부를 판정하고, 상기 제2의 움직임 벡터가 상기 소정 크기의 범위 내에 포함되면, 상기 제2의 움직임 벡터를 상기 대응 블록의 움직임 벡터로서 상기 리스트에 추가한다.
이에 따라, 부호화측 및 복호측에서 취급하는 움직임 벡터의 크기 범위를, 어떤 비트 정밀도로 나타내는 것이 가능한 범위에 항상 넣을 수 있다.
또한, 상기 추가 단계에서는, 상기 제2의 움직임 벡터가 상기 소정 크기의 범위 내에 포함되지 않으면, 상기 제2의 움직임 벡터를 상기 소정 크기의 범위 내에 들어가도록 클립하고, 클립 후의 움직임 벡터를 상기 대응 블록의 움직임 벡터로서 상기 리스트에 추가해도 된다.
또한, 상기 추가 단계에서는, 상기 제2의 움직임 벡터가 상기 소정 크기의 범위 내에 포함되지 않으면, 상기 제2의 움직임 벡터를 상기 리스트에 추가하지 않아도 된다.
또한, 상기 리스트는, 상기 대응 블록의 상기 움직임 벡터, 및 상기 대응 블록으로 참조된 픽처를 특정하기 위한 특정 정보를 가지는 머지 후보 리스트이며, 상기 추가 단계에서는, 상기 대응 블록의 상기 움직임 벡터에 추가하여, 상기 특정 정보를 상기 머지 후보 리스트에 추가하고, 상기 선택 단계에서는, 상기 머지 후보 리스트로부터, 상기 부호화 대상 블록의 부호화를 위해서 이용하는 움직임 벡터 및 특정 정보를 선택하고, 상기 부호화 단계에서는, 상기 선택 단계에 있어서 선택된 상기 움직임 벡터 및 상기 특정 정보를 이용하여 상기 부호화 대상 블록의 예측 화상을 생성함으로써 상기 부호화 대상 블록을 부호화해도 된다.
또한, 상기 리스트는, 예측 움직임 벡터 후보 리스트이며, 상기 추가 단계에서는, 또한, 상기 공간적으로 인접하는 대응 블록의 제3의 움직임 벡터를 스케일링 처리함으로써 산출되는 제4의 움직임 벡터가, 소정 크기의 범위에 포함되는지 여부를 판정하고, 상기 제4의 움직임 벡터가 상기 소정 크기의 범위 내에 포함되면, 상기 제4의 움직임 벡터를 예측 움직임 벡터의 후보로서 상기 예측 움직임 벡터 후보 리스트에 추가하고, 상기 선택 단계에서는, 상기 예측 움직임 벡터 후보 리스트로부터, 상기 부호화 대상 블록의 부호화를 위해서 이용하는 예측 움직임 벡터를 선택하고, 상기 부호화 단계에서는, 상기 선택 단계에 있어서 선택된 상기 예측 움직임 벡터를 이용하여 상기 부호화 대상 블록의 움직임 벡터를 부호화하는 것을 포함하는 상기 부호화 대상 블록의 부호화를 행해도 된다.
또한, 상기 추가 단계에서는, 상기 제4의 움직임 벡터가 상기 소정 크기의 범위 내에 포함되지 않으면, 상기 제4의 움직임 벡터를 상기 소정 크기의 범위 내에 들어가도록 클립하고, 클립 후의 움직임 벡터를 상기 예측 움직임 벡터의 후보로서 상기 예측 움직임 벡터 후보 리스트에 추가해도 된다.
또한, 상기 소정 크기의 범위는, 움직임 벡터의 비트 정밀도로 결정되고, 상기 비트 정밀도는 프로파일 또는 레벨로 규정된 값, 혹은, 헤더에 부가된 값을 이용해도 된다.
또한, 본 발명의 일양태에 관련된 동화상 복호 방법은, 복수의 픽처를 블록마다 복호하는 동화상 복호 방법으로서, 복호 대상 픽처에 포함되어 복호 대상 블록에 공간적으로 인접하거나, 또는, 상기 복호 대상 픽처와는 상이한 픽처에 포함되는 시간적으로 인접하는 1이상의 대응 블록의 각각에 대하여, 리스트에 상기 대응 블록의 움직임 벡터를 선택적으로 추가하는 추가 단계와, 상기 리스트로부터, 상기 복호 대상 블록의 복호를 위해서 이용하는 움직임 벡터를 선택하는 선택 단계와, 상기 선택 단계에 있어서 선택된 상기 움직임 벡터를 이용하여 상기 복호 대상 블록을 복호하는 복호 단계를 포함하고, 상기 추가 단계에서는, 상기 시간적으로 인접하는 대응 블록의 제1의 움직임 벡터를 스케일링 처리함으로써 제2의 움직임 벡터를 산출하고, 산출한 상기 제2의 움직임 벡터가, 소정 크기의 범위에 포함되는지 여부를 판정하고, 상기 제2의 움직임 벡터가 상기 소정 크기의 범위 내에 포함되면, 상기 제2의 움직임 벡터를 상기 대응 블록의 움직임 벡터로서 상기 리스트에 추가한다.
이에 따라, 부호화측 및 복호측에서 취급하는 움직임 벡터의 크기 범위를, 어떤 비트 정밀도로 나타내는 것이 가능한 범위에 항상 둘 수 있다.
또한, 상기 추가 단계에서는, 상기 제2의 움직임 벡터가 상기 소정 크기의 범위 내에 포함되지 않으면, 상기 제2의 움직임 벡터를 상기 소정 크기의 범위 내에 들어가도록 클립하고, 클립 후의 움직임 벡터를 상기 리스트에 추가해도 된다.
또한, 상기 추가 단계에서는, 상기 제2의 움직임 벡터가 상기 소정 크기의 범위 내에 포함되지 않으면, 상기 제2의 움직임 벡터를 상기 리스트에 추가하지 않아도 된다.
또한, 상기 리스트는, 상기 대응 블록의 상기 움직임 벡터, 및 상기 대응 블록에서 참조된 픽처를 특정하기 위한 특정 정보를 가지는 머지 후보 리스트이며, 상기 추가 단계에서는, 상기 대응 블록의 상기 움직임 벡터에 추가하여, 상기 특정 정보를 상기 머지 후보 리스트에 추가하고, 상기 선택 단계에서는, 상기 머지 후보 리스트로부터, 상기 복호 대상 블록의 복호를 위해서 이용하는 움직임 벡터 및 특정 정보를 선택하고, 상기 복호 단계에서는, 상기 선택 단계에 있어서 선택된 상기 움직임 벡터 및 상기 특정 정보를 이용하여 상기 복호 대상 블록의 예측 화상을 생성함으로써 상기 복호 대상 블록을 복호해도 된다.
또한, 상기 리스트는, 예측 움직임 벡터 후보 리스트이며, 상기 추가 단계에서는, 또한, 상기 공간적으로 인접하는 대응 블록의 제3의 움직임 벡터를 스케일링 처리함으로써 산출되는 제4의 움직임 벡터가, 소정 크기의 범위에 포함되는지 여부를 판정하고, 상기 제4의 움직임 벡터가 상기 소정 크기의 범위 내에 포함되면, 상기 제4의 움직임 벡터를 예측 움직임 벡터의 후보로서 상기 예측 움직임 벡터 후보 리스트에 추가하고, 상기 선택 단계에서는, 상기 예측 움직임 벡터 후보 리스트로부터, 상기 복호 대상 블록의 복호를 위해서 이용하는 예측 움직임 벡터를 선택하고, 상기 복호 단계에서는, 상기 선택 단계에 있어서 선택된 상기 예측 움직임 벡터를 이용하여 상기 복호 대상 블록의 움직임 벡터를 복호하는 것을 포함하는 상기 복호 대상 블록의 복호를 행해도 된다.
또한, 상기 추가 단계에서는, 상기 제4의 움직임 벡터가 상기 소정 크기의 범위 내에 포함되지 않으면, 상기 제4의 움직임 벡터를 상기 소정 크기의 범위 내에 들어가도록 클립하고, 클립 후의 움직임 벡터를 상기 예측 움직임 벡터의 후보로서 상기 예측 움직임 벡터 후보 리스트에 추가해도 된다.
또한, 상기 소정 크기의 범위는, 움직임 벡터의 비트 정밀도로 결정되고, 상기 비트 정밀도는 프로파일 또는 레벨로 규정된 값, 혹은, 헤더에 부가된 값을 이용해도 된다.
또한, 이들 포괄적 또는 구체적인 양태는, 시스템, 방법, 집적 회로, 컴퓨터 프로그램 또는 컴퓨터 판독 가능한 CD-ROM 등의 기록 매체로 실현되어도 되고, 시스템, 방법, 집적 회로, 컴퓨터 프로그램 및 기록 매체가 임의 조합으로 실현되어도 된다.
이하, 본 발명의 실시의 형태에 대하여, 도면을 참조하면서 설명한다.
또한, 이하에서 설명하는 실시의 형태는, 모두 포괄적 또는 구체적인 예를 나타내는 것이다. 이하의 실시 형태로 나타내는 수치, 형상, 재료, 구성 요소, 구성 요소의 배치 위치 및 접속 형태, 단계, 단계의 순서 등은, 일예이며, 본 발명을 한정하는 주지는 아니다. 또한, 이하의 실시 형태에 있어서의 구성 요소 중, 최상위 개념을 나타내는 독립 청구항에 기재되지 않은 구성 요소에 대해서는, 임의의 구성 요소로서 설명된다.
(실시의 형태 1)
도 8은, 실시의 형태 1의 동화상 부호화 장치의 구성을 나타내는 블록도이다.
동화상 부호화 장치(100)는, 도 8에 도시하는 바와 같이, 주로, 차분부(101), 변환부(102), 양자화부(103), 엔트로피 부호화부(110), 역양자화부(104), 역변환부(105), 가산부(106), 메모리(109), 인트라·인터 예측부(107), 및, 부호화 제어부(108)를 구비하고 있다.
차분부(101)는, 입력 화상 신호와 예측 화상 신호의 차분인 잔차 신호를 출력한다.
변환부(102)는, 잔차 신호에 대하여, 화상 영역으로부터 주파수 영역으로의 변환을 행한다. 양자화부(103)는, 주파수 영역으로 변환된 잔차 신호에 대하여 양자화 처리를 행하고, 양자화 완료 잔차 신호를 출력한다.
엔트로피 부호화부(110)는, 양자화 완료 잔차 신호 및 복호 제어 신호를 엔트로피 부호화하고, 부호화 완료 비트 스트림을 출력한다.
역양자화부(104)는, 양자화 완료 잔차 신호에 대하여, 역양자화 처리를 행한다. 역변환부(105)는, 역양자화 처리된 잔차 신호에 대하여, 주파수 영역으로부터 화상 영역으로의 변환을 행하여, 복원 완료 잔차 신호를 출력한다.
가산부(106)는, 복원 완료 잔차 신호와 예측 화상 신호를 가산하여, 복호 화상 신호로 한다.
인트라·인터 예측부(107)는, 복호 화상 신호를 프레임 또는 블록 등 소정의 단위로 메모리(109)에 축적함과 더불어, 부호화 제어부(108)의 지시를 받아, 차분부(101) 및 가산부(106)에 부여하는 예측 화상 신호(복호 화상 신호와 움직임 벡터에 의거하여 도출된 화소값)를 생성하여, 출력한다.
또한, 인트라·인터 예측부(107)는, 부호화·복호 프로세스에 있어서 머지 모드로 이용되는 움직임 벡터의 후보 리스트인 머지 후보 리스트(mergeCandList)를 도출한다. 이 때, 인트라·인터 예측부(107)는, 부호화 대상 픽처에 포함되어 부호화 대상 블록에 공간적으로 인접하거나, 또는, 상기 부호화 대상 픽처와는 상이한 픽처에 포함되는 시간적으로 인접하는 1이상의 대응 블록의 각각에 대하여, 머지 후보 리스트에 대응 블록의 움직임 벡터를 선택적으로 추가한다. 또한, 인트라·인터 예측부(107)는, 시간적으로 인접하는 대응 블록의 제1의 움직임 벡터를 스케일링 처리함으로써 제2의 움직임 벡터를 산출하고, 제2의 움직임 벡터가 소정 크기의 범위에 포함되는지 여부를 판정하고, 제2의 움직임 벡터가 소정 크기의 범위 내에 포함되면, 제2의 움직임 벡터를 대응 블록의 움직임 벡터로서 머지 후보 리스트에 추가한다. 또한, 인트라·인터 예측부(107)는, 머지 후보 리스트로부터, 부호화 대상 블록의 부호화를 위해서 이용하는 움직임 벡터를 선택한다. 즉, 본 실시의 형태의 스케일링 처리는 주로 인트라·인터 예측부(107)에 있어서 실행된다. 또한, 본 실시의 형태의 동화상 부호화 장치(100)에서는, 추가부 및 선택부는, 인트라·인터 예측부(107)에 상당한다. 또한, 본 실시의 형태의 동화상 부호화 장치(100)에서는, 부호화부는, 차분부(101), 변환부(102), 양자화부(103), 및 엔트로피 부호화부(110) 등에 상당한다.
부호화 제어부(108)는, 도면 중의 각 처리부 및, 픽처를 어떠한 제어 파라미터로 부호화할지(이 제어 파라미터는, 복호 제어 신호에 대응하게 된다)를 시행 상에서 결정하고, 특히, 인트라·인터 예측부(107)에 대하여 부여한다. 시행은 예를 들면, 도면 중의 점선으로 표시하는 부호화 완료 비트 스트림의 비트 길이를 짧게 하는 것을 목적으로 하는 함수 등으로 행해져, 어떤 화상 데이터의 부호화를 위한 제어 파라미터(예를 들면, 인터 예측, 인트라 예측의 구별 등)를 결정하여, 출력하게 된다. 출력 신호 중, 움직임 벡터 인덱스에 대해서는 후술한다.
부호화 제어부(108)는, 전술 시행의 결과가 양호한 경우에, 본 실시의 형태에 관련된 스케일링 처리를 이용한 것을 값으로서 표시하도록, 후술하는 머지 인덱스(merge_Idx)를 결정하여 복호 제어 신호에 포함시켜 출력한다. 또한 이 경우의, 양자화 완료 잔차 신호는, 본 실시 형태의 스케일링 방법을 이용하여 생성된 예측 화상 신호에 의해 도출된 값이 된다.
도 9는, 실시의 형태 1의 동화상 부호화 장치에 있어서의 동작을 설명하는 플로우도이다.
여기에서는, 부호화 제어부(108)가, 부호화 대상 블록을 (1) 인터 부호화(MODE_INTER) 하고, 또한, (2) 머지 모드(MergeMODE)를 이용한다고 판정한 (혹은 이용한 경우의 결과를 얻는) 경우의 머지 모드 부호화 동작에 대하여 설명한다.
HEVC의 머지 모드는, 관념적으로는 H. 264로 도입된 다이렉트 모드와 같다. 움직임 벡터의 도출에 관하여, H. 264의 다이렉트 모드와 마찬가지로 부호열을 이용하지 않고, 공간적 (S) 또는 시간적 (T)으로 다른 블록의 움직임 벡터를 이용하여 도출한다.
H. 264의 다이렉트 모드와의 주요 차이는 이하이다.
(a) 처리 단위: 머지 모드를 이용할지 여부를, 슬라이스 단위보다 세세한 PreduicitionUnit(PU) 단위의 merge_flag에 의해 전환할 수 있다.
(b) 선택 단위: (S) 공간 다이렉트를 이용할지 (T) 시간 다이렉트를 이용할지를 2가지가 아니라, 보다 다수의 후보값으로부터 merge_idx에 의해 지정할 수 있다. 구체적으로는, 부호화·복호 프로세스에 있어서 머지 모드로 이용되는 움직임 벡터의 후보 리스트인 머지 후보 리스트(mergeCandList)를 도출한다. 이 리스트 중의 부호열로부터 지정되는 인덱스의 값(merge_idx의 값)에 의해, 어느 움직임 벡터 후보를 이용할지를 특정한다.
머지 모드에 대한 처리가 개시되면, 부호화 제어부(108)는, merge_idx의 값 및 i의 값을 「0」에 세트한다(단계 S101). 여기에서, i는 후보를 구별하기 위한 편의상의 후보 번호이다.
인트라·인터 예측부(107)는, 후보 블록[1…N]에 이하에 2개의 유형의 블록을 설정한다(단계 S102). 여기에서, N=6인 것으로 한다.
(s) 후보 블록 [1… (N-1)]은, 공간 다이렉트를 위한 1이상의 후보이며, 후보 블록의 장소에 따라 [1…5]을 구별한다.
(t) 후보 블록 [N]은, 시간 다이렉트를 위한 후보이다. 공간 다이렉트에 추가(append)한 경우의 엔트리값 「6」이 Co_located 블록의 인덱스에 해당한다. 도 10을 이용하여 후술한다.
단계 S103 이하는, 부호화 제어부(108)가 후보를 특정하는 번호 i를 인크리먼트(단계 S103) 하면서, 정밀도가 좋은 목적 함수에 있는 출력할 움직임 벡터 도출 모드를 결정하는 루프이다.
인트라·인터 예측부(107)는, 후보 블록[i]가, 메모리 상에서 이용 가능(available)한지 여부를 판정한다(단계 S104). 예를 들면, 위치적으로 부호화 대상 블록보다도 하측 방향에 위치하는 블록 등의 부호화(복호) 완료가 아닌 블록(메모리에 유지되지 않는 블록)에 대해서는, 이용할 수 없다고 판정된다.
판정의 결과, 이용할 수 없는 경우(단계 S104에서 No:not available)는, merge_idx의 값을 현재의 값 그대로 유지하면서, 다음 후보 i로 이동한다(단계 S103으로 돌아간다).
판정의 결과, 이용할 수 있는 경우(단계 S104에서 Yes:available)는 다음 단계로 진행한다.
인트라·인터 예측부(107)는, 후보 블록[i]의 motion data(mvL0, mvL1, refIdxL0, refIdxL1의 쌍, 이하 동일)가, 과거의 후보 블록 [1… (i-1)]에 대해서 시행이 끝난 motion data(mvL0, refIdxL0, mvL1, refIdxL1)와 중복하는지 여부를 판정한다(단계 S105). 이 판정에 대해서는 도 12를 이용하여 후술한다.
판정의 결과, 중복되는 경우(단계 S105에서 Yes:duplicated)는, merge_idx의 값을 현재의 값 그대로 유지하면서, 다음 후보 i로 이동한다(단계 S103으로 돌아간다).
판정의 결과, 중복하지 않는, 즉, 새로운 motion data인 경우(단계 S105에서 No:not duplicated)는, 다음의 단계로 진행한다. 또한, 이용 가능한지 여부의 판정 처리(단계 S104)와 중복하는지 여부의 판정 처리(단계 S105)에 따라 완성되는 것이, 움직임 벡터에 대한 머지 후보 리스트(mergeCandLis)이며, 도 11을 이용하여 후술한다.
다음에, 인트라·인터 예측부(107)는, 후보 블록 [i]의 motion data(mvL0, refIdxL0, mvL1, refIdxL1)를 취득 혹은 도출한다(단계 S106). 여기에서, 후보 블록 [i]이, 시간 다이렉트를 전제로 하는 Colocated 블록인 경우는, 도 14를 이용하여 후술하는 스케일링 처리를 행한다.
또한, 본 실시의 형태에서는, 단계 S106에 있어서, 후보 블록 [i]가, 시간 다이렉트를 전제로 하는 Colocated 블록인 경우는, 도 14를 이용하여 후술하는 스케일링 처리를 행하도록 했는데, 반드시 이에 한정되지 않는다. 예를 들면, 단계 S102에 있어서, Colocated 블록을 후보 블록에 추가할 때에, 미리 도 14를 이용하여 후술하는 스케일링 처리를 실시한 motion data(mvL0, refIdxL0, mvL1, refIdxL1)을 취득하고, 단계 S105에 있어서, 과거의 후보 블록과 중복하는 motion data를 후보 블록에 추가하지 않도록 하는 것을 생각할 수 있다(도 17). 이에 따라, 중복하는 motion data를 보다 많이 후보 블록으로부터 없앨 수 있어, 처리 비용 삭감 및, 부호화 효율을 개선할 수 있다.
결정된 motion data를 이용하여, 부호화 제어부(108)의 제어 하 부호화 장치 전체를 이용하여 인터 부호화를 시행한다(단계 S107). 부호화 제어부(108)는, 예를 들면, 엔트로피 부호화부(110)의 출력 결과의 비트 스트림[i]을 얻는다.
부호화 제어부(108)는, 예를 들면 비트 스트림 길이(압축 효율)나 처리 지연 등을 관점으로 한 목적에 따라, 현재의 후보 [i]의 결과가 과거의 후보 [1… (i-1)]의 결과보다 뛰어난지를 (소정의 목적 함수의 최대치(혹은 최소치)를 나타내는지 여부) 판정한다(단계 S108).
이 판정의 결과, 과거의 후보[1… (i-1)]의 결과보다 뛰어난 경우(단계 S108에서 Yes:better candidate), 현시점의 merge_idx의 값을, 실제로 부호화·복호에 이용할 예정의 merge_idx의 번호로서 유지한다(단계 S109). 간단히는, 보다 목적이 있는 결과를 출력한 경우의 유효 엔트리 번호 merge_idx를 dummy_merge_idx의 변수로 기억해 두는 처리이다.
인트라·인터 예측부(107)는, 금회의 후보 i는, 엔트리 번호로서 유효한 것으로서 다음의 엔트리로 이동하므로, merge_idx의 값을 인크리먼트한다(단계 S110).
부호화 제어부(108)는, 모든 후보 블록에 대한 시행이 행해졌는지를 판정한다(단계 S111).
판정의 결과가, 모든 블록에 대한 처리가 완료한 것(단계 S102에서 설정한 최후의 후보 블록 [N]인, (t)시간 다이렉트용의 co_located 블록에 있어서의 시행이 행해진)을 나타내는 경우(단계 S111에서 Yes), 다음 단계로 진행한다.
판정의 결과가, 아직 후보 블록이 남아 있는 경우(단계 S111에서 No)는, 후보 번호 i를 증가시키면서, 다음 후보에 대한 시행을 행한다.
소정의 목적 함수의 최대치(혹은 최소치)를 출력한, dummy_merge_idx를, 실제로 부호화열에 출력하는 인덱스 번호인 머지 인덱스(merge_idx)로 결정한다(단계 S112).
이상이, 머지 모드를 이용한 경우의 부호화 동작이다.
도 10은, 단계 S102에서 인트라·인터 예측부(107)가 설정하는 머지 후보 블록 [1…6]을 설명하는 도면이다.
후보 블록은 (s) 공간적으로 인접하는 1이상의 블록(도면 중 (s) 인접 공간 블록 [1… (N-1)]과, (t) 시간적으로 인접하는 1개의 블록(도면 중 (t) Co_located 블록 [N]을 포함하고 있다.
머지 후보 리스트 중, merge_idx의 index 값이 작은, 바꿔 말하면 최초에 열거되는, 후보 엔트리(혹은 복수의 엔트리)가 되는 것은, 공간적으로 인접하는 블록이다. 공간적으로 인접한다는 것은, 도면 중의 (S1) 수평 방향, 혹은, (S2) 수직 방향 중 어느 하나에 있어서 인접하고 있는 것이다.
또한, 인접을 관념하는 단위는, 동일한 움직임 벡터를 적용하는 움직임 데이터의 단위인 PU이다. 즉, 부호화 대상 블록 Curr_Blk를 포함하는 CurrentPU에 인접하는 PU인지 여부이다. 도면 중에서 블록 B0∼B2은, 수직 방향에 인접하고 있는 블록의 예이며, 각각의 블록을 포함하는 PU가 인접하는 PU가 되고, 그 motion data(mvL0, refIdxL0, mvL1, refIdxL1)가 이용된다. 도면 중에서 블록 A0, A1…은 수평 방향에 인접하고 있는 블록의 예이다.
머지 후보 리스트의 말미에, merge_idx의 인덱스값이 가장 큰, 바꿔 말하면 마지막에 엔트리되는 후보 엔트리가, 시간 방향에 인접하는 블록이다. 이 도면에서는, Current 블록의 참조 픽처 리스트 L1(없는 경우는, L0)의 인덱스값 0으로 지정되는 픽처에 존재하는 Co_located 블록이다.
도 11은, 단계 S103 이후의 처리에서 생성되는 머지 후보 리스트(mergeCandList)의 개념을 설명하는 도면이다. 도면 중 좌측의 i(1…6)가, 단계 S103 등의 후보 번호 i에 해당한다.
i=[1…5]의 엔트리가, (s) 공간적으로 인접하는 1이상의 블록(도 10의 A0…B2)에 대응한다. i=6의 엔트리가, (t) 시간적으로 인접하는 1개의 블록(도 10(t)Co_located 블록[N]에 대응한다.
후보 1…6 중 유효한 엔트리 번호가 되는 것이 merge_idx이다. 도면 중, i=3, 5는, Duplicated motion vectors인 것을 나타내고 있다. 이는, 단계 S105에서, 인트라·인터 예측부(107)는, 후보 블록 [i]의 motion data(mvL0, mvL1, refIdxL0, refIdxL1의 쌍, 이하 동일)가, 과거의 후보 블록 [1… (i-1)]에 대하여 시행이 끝난 motion data(mvL0, refIdxL0, mvL1, refIdxL1)와 중복한다고 판정된 엔트리인 것을 나타낸다.
도 12는, 단계 105의 중복 판정에서 중복으로 판정하는 예를 나타내는 도면이다. motion data가 후보보다 위의 엔트리의 값이 중복하는 motion data인 경우에 대하여 설명하는 도면이다.
CurrentPU에 대하여 상방향 B1의 위치에서 인접하는 블록의 motion data는, 실제로는 B0 및 BN을 포함하는 1개의 PU에 대하여 1개 정의될 경우, 후보 번호 3이나 5에 대응하는 B0 및 BN의 블록의 motion data의 값은, 중복된 motion data가 되어 리스트로부터 엔트리를 삭제하게 된다. 따라서, 도 11과 같이, mergeCandList는, merge_idx의 최대치를 「2」에 압축한 리스트로 할 수 있다.
도 13은, 단계 S106에서 실행하는, 머지 후보 블록 [i]의 motion data(mvL0, refIdxL0, mvL1, refIdxL1)를 취득하는 처리를 설명하는 플로우도이다.
처리가 개시되면, 부호화 제어부(108)는, 인접 블록 [i]의 인접 방향을 판정한다(단계 S201).
판정의 결과, 인접 방향이 공간 방향(도 11의 표에서 i가 1…5인 값)인 경우, 후보 블록 [i]가 포함되는 PU의 motion data를, 부호화 대상 블록의 motion data로서 그대로 결정한다(단계 S202).
판정의 결과, 인접 방향이 시간 방향(도 11의 표에서 i가 6)인 경우, 후보 블록[6]인 colocateBlok(Col_Blk)의 mvL0Col을, 곱셈에 의한 시간 다이렉트 스케일링 처리에 의해 스케일한다(단계 S203).
이 스케일링 처리에 대하여, 도 14를 이용하여 설명한다.
도 14는, 단계 S203의 스케일링 처리를 설명하는 플로우도이다.
우선, 인트라·인터 예측부(107)는, 도 6의 STEP1의 식으로 표시되는 바와 같이, 부호화 대상 픽처 currPicOrField, 부호화 대상 블록이 참조하는 참조 픽처 pic0, co-located 블록이 포함되는 픽처 pic1, 및, co-located 블록이 참조하는 참조 픽처 pic0의 표시순의 값을 이용하여, DistScaleFactor를 산출한다(단계 S301). 그리고, 인트라·인터 예측부(107)는, 도 6의 STEP2의 식으로 표시되는 바와 같이, co-located 블록의 움직임 벡터 mvCol에 DistScaleFactor를 곱셈함으로써, 움직임 벡터 mvL0을 산출한다(단계 S302). 다음에, 인트라·인터 예측부(107)는, 산출한 움직임 벡터 mvL0의 수평 성분, 및, 수직 성분의 크기가, 어떤 비트 정밀도로 나타내는 것이 가능한 크기의 범위 내에 들어가 있는지 여부를 판정한다(단계 S303). 이 판정의 결과, 범위 내에 들어가 있는 경우(단계 S303에서 Yes), 인트라·인터 예측부(107)는, 산출한 움직임 벡터 mvL0을 가지는 머지 블록 후보로서, 머지 후보 리스트 mergeCandList에 추가한다(단계 S304). 한편, 범위 내에 들어가 있지 않은 경우(단계 S303에서 No), 인트라·인터 예측부(107)는, co-located 블록으로부터 산출하는 머지 블록 후보를 not available로 하고, 머지 후보 리스트 mergeCandList에 추가하지 않도록 한다(단계 S305).
이와 같이, 스케일링 처리후의 움직임 벡터의 값이, 어떠한 비트 정밀도로 나타내는 것이 가능한 값의 범위를 넘은 경우는, 그 움직임 벡터를 가지는 머지 블록 후보를 머지 후보 리스트에 추가하지 않도록 함으로써, 부호화측 및 복호측에서 취급하는 움직임 벡터의 크기 범위를, 어떠한 비트 정밀도로 나타내는 것이 가능한 범위에 항상 두는 것이 가능해진다. 예를 들면, 어떠한 비트 정밀도로서, 16bit를 가정한 경우, 스케일링 처리후의 움직임 벡터 mvL0의 수평 성분 혹은 수직 성분의 값이, -32768이상 +32767이하를 만족시키지 않는 경우는, 움직임 벡터 mvL0을 가지는 머지 블록 후보를 머지 후보 리스트에 추가하지 않도록 한다. 이에 따라, 부호화측 및 복호측에서 취급하는 움직임 벡터의 크기 범위를, 16bit 정밀도로 나타내는 것이 가능한 범위에 항상 두는 것이 가능해진다.
또한, 본 실시의 형태에서는, 움직임 벡터의 수평 성분, 수직 성분 모두, 16bit 정밀도로 두는 예를 제시했는데, 반드시 이에 한정되지 않는다. 예를 들면, 수평 성분을 16bit 정밀도, 수직 성분을 14bit 정밀도로 두고 싶은 경우에는, 스케일링 처리후의 움직임 벡터 mvL0의 수평 성분의 값이, -32768이상 +32767이하, 움직임 벡터 mvL0의 수직 성분의 값이, -8192이상 8191이하인지를 판정하고, 어느 하나를 만족하지 않는 경우는, 움직임 벡터 mvL0을 가지는 머지 블록 후보를 머지 후보 리스트에 추가하지 않도록 해도 상관없다. 이에 따라, 움직임 벡터의 크기 범위를, 수평 성분과 수직 성분으로 따로따로 일정 범위 이내에 두는 것이 가능해진다.
또한, 본 실시의 형태에서는, 스케일링 계산에 의해 산출하는 움직임 벡터의 예로서 참조 픽처 리스트 L0의 움직임 벡터 mvL0을 이용한 예를 나타냈는데, 반드시 이에 한정되지 않고, 참조 픽처 리스트 L1의 움직임 벡터 mvL1를 산출할 경우에도 적용가능하다.
또한, 본 실시의 형태에서는, 단계 S302에서 co-located 블록의 움직임 벡터 mvCol에 DistScaleFactor를 곱셈하여 mvL0을 산출하고, mvL0의 수평 성분, 또는 수직 성분 중 어느 하나가, 어떠한 비트 정밀도로 나타내는 것이 가능한 범위를 넘은 경우에는, co-located 블록으로부터 산출하는 머지 블록 후보를 머지 후보 리스트에 추가하지 않도록 했는데, 반드시 이에 한정되지 않고, 예를 들면, co-located 블록이 2방향 예측인 경우 등은, mvCol에 co-located 블록이 가지는 다른 한쪽의 움직임 벡터를 세트하고, 단계 S302부터 단계 S305의 처리를 행함으로써, 머지 블록 후보를 산출하도록 해도 상관없다. 이에 따라, co-located 블록으로부터 산출되는 머지 블록 후보의 감소를 억제할 수 있어, 부호화 효율을 향상시킬 수 있다.
또한, 본 실시의 형태에서는, 단계 S305에 있어서, 움직임 벡터 mvL0의 수평 성분, 또는 수직 성분 중 어느 하나가, 어떠한 비트 정밀도로 나타내는 것이 가능한 범위를 넘은 경우에는, co-located 블록으로부터 산출하는 머지 블록 후보를 머지 후보 리스트에 추가하지 않도록 했는데, 반드시 이에 한정되지 않는다. 예를 들면, 도 15의 단계 S401에 나타내는 바와 같이, 움직임 벡터 mvL0의 수평 성분, 또는 수직 성분의 값을, 어떠한 비트 정밀도로 나타내는 것이 가능한 크기에 클립하고, 클립 후의 움직임 벡터를 가지는 머지 블록 후보로서, 머지 후보 리스트에 추가하도록 해도 상관없다. 예를 들면, 어떠한 비트 정밀도로서 16bit 정밀도를 가정한 경우에, 스케일링 처리후의 움직임 벡터의 수평 성분의 값이 +32767을 넘은 경우는, 클립 후의 움직임 벡터의 수평 성분으로서 +32767을 이용하여, 머지 블록 후보를 산출하도록 해도 상관없다. 또한, 예를 들면, 스케일링 처리후의 움직임 벡터의 수평 성분의 값이 -32768을 밑돈 경우는, 클립 후의 움직임 벡터의 수평 성분으로서 -32768을 이용하여, 머지 블록 후보를 산출하도록 해도 상관없다.
또한, 본 실시의 형태에서는, 어떠한 비트 정밀도에 고정하여 움직임 벡터의 크기를 제한하는 예를 나타냈는데, 반드시 이에 한정되지 않는다. 예를 들면, 시퀀스 파라미터 셋트(SPS), 픽처 파라미터 셋트(PPS), 및 슬라이스 헤더 등의 헤더부에, 움직임 벡터의 크기를 제한하는 플래그 및 그 비트 정밀도를 부가하고, 시퀀스, 픽처 및 슬라이스 단위로, 움직임 벡터의 제한치를 전환하도록 해도 상관없다. 또한, 프로파일이나 레벨 등으로, 움직임 벡터의 비트 정밀도를 설정하고, 프로파일이나 레벨에 따라서 움직임 벡터의 제한값을 전환하도록 해도 상관없다.
다음에, 본 실시의 형태 1의 동화상 부호화 장치에 의해 부호화된 비트 스트림으로부터 동화상을 복원하는 동화상 복호 장치에 대하여 설명한다.
도 16은, 본 실시의 형태 1의 동화상 복호 장치의 구성을 나타내는 블록도이다.
동화상 복호 장치(200)는, 입력된 부호화 완료 비트 스트림을 복호하여, 메모리(복호 픽처 메모리)에 버퍼링된 복호 완료 화상 신호를, 소정의 타이밍에서 표시순으로 출력한다.
동화상 복호 장치(200)는, 도 16에 도시하는 바와 같이, 주로, 엔트로피 복호부(201), 역양자화부(202), 역변환부(203), 가산부(204), 메모리(207), 인트라·인터 예측부(205), 및, 복호 제어부(206)를 구비하고 있다. 동일 명칭의 각 부의 기능은 도 8에서 도시한 동화상 부호화 장치 내의 각 처리부에 대응하는 것이다.
엔트로피 복호부(201)는, 입력된 부호화 완료 비트 스트림에 대하여, 엔트로피 복호 처리를 행하고, 양자화 완료 잔차 신호 및 복호 제어 신호 등을 출력한다.
역양자화부(202)는, 엔트로피 복호 처리에 의해 얻어진 양자화 완료 잔차 신호에 대하여, 역양자화 처리를 행한다. 역변환부(203)는, 역양자화 처리에 의해 얻어진 잔차 신호를, 주파수 영역으로부터 화상 영역으로 변환함으로써, 복원 완료 잔차 신호를 출력한다.
가산부(204)는, 복원 완료 잔차 신호와 예측 화상 신호를 가산하여, 복호 화상 신호로 한다.
인트라·인터 예측부(205)는, 복호 화상 신호를 프레임 또는 블록 등 소정의 단위로 메모리(207)에 축적함과 더불어, 복호 제어부(206)의 지시를 받아, 가산부(204)에 부여하는 예측 화상 신호(복호 화상 신호와 움직임 벡터에 의거하여 도출된 화소값)를 생성하여, 출력한다.
동화상 부호화 장치(100)와 마찬가지로, 본 실시의 형태의 스케일링 처리는 인트라·인터 예측부(205)에 있어서 실행된다. 또한, 본 실시의 형태의 동화상 복호 장치(200)에서는, 추가부 및 선택부는, 인트라·인터 예측부(205)에 상당한다. 또한, 본 실시의 형태의 동화상 복호 장치(200)에서는, 복호부는, 엔트로피 복호부(201), 역양자화부(202), 역변환부(203), 및 가산부(204) 등에 상당한다.
복호 제어부(206)는, 도면 중의 각 처리부 및 픽처를 어떠한 제어 파라미터로 복호할지를, 엔트로피 복호부(201)에서 해석된 복호 제어 정보로부터 얻는다. 부호화 비트 스트림 중의 복호 제어 정보에는, 도 9의 단계 S112에서 결정된 머지 인덱스(merge_idx)가 포함되어 있다.
도 17은, 실시의 형태 1의 동화상 복호 장치에 있어서의 동작을 설명하는 플로우도이다.
여기에서, 복호 제어부(206)가, 복호 제어 신호의 정보로부터, 「복호 대상 블록(Curr_Blk)(혹은, 복호 대상 블록이 포함되는 예측 단위 PU 블록)이, 인터 부호화된 것이며(MODE_INTER), 또한, MergeMODE를 이용하는 것」을 판정한 경우의 동작에 대하여 설명한다.
먼저, 인트라·인터 예측부(205)가, 도 11에서 설명한 머지 후보 리스트(mergeCandList)를 로컬로 생성한다. 로컬로란, 인트라·인터 예측부(205)는, 동화상 부호화 장치(100)의 동작과 동일한 방법으로, 부호화 비트 스트림으로부터의 정보에 상관없이 이 리스트를 생성하는 것을 의미한다.
도면 중의 i=1…6은, 도 11의 정의와 같다.
인트라·인터 예측부(205)는, 후보 블록 번호 i=1…6에 대하여, 각각 단계 S501∼단계 S505의 처리를 행한다. 인트라·인터 예측부(205)는, 후보 블록 번호 i를 판정한다(단계 S501). 후보 블록 번호 i=1…5인 경우, 인트라·인터 예측부(205)는, 공간 인접 블록에 대하여 움직임 데이터를 취득한다(단계 S502).
후보 블록 번호 i=6인 경우, 인트라·인터 예측부(205)는, colocated 블록의 움직임 데이터를 이용하여, 도 13의 단계 S203과 동일한 방법으로 스케일링 처리를 행한다(단계 S503).
다음에, 인트라·인터 예측부(205)는, 단계 S502 혹은 단계 S504에서 얻어진 움직임 데이터가, mergeCandList 중의 상위의 엔트리 데이터와 데이터의 값이 중복하고 있는지 여부를 판정한다(단계 S504).
판정의 결과, 중복해 있는 경우(단계 S504에서 Yes)는, 다음의 후보 블록 번호 i로 진행한다.
판정의 결과, 중복하지 않는 경우(단계 S504에서 No)는, 인트라·인터 예측부(205)는, 머지 후보 리스트(mergeCandList)의 말미에 움직임 데이터를 추가한다(단계 S505).
이와 같이 하여, 단계 S501∼단계 S505에 의해 머지 후보 리스트(mergeCandList)가 초기화 생성된다.
다음에, 인트라·인터 예측부(205)는, 소정의 조건을 만족하는 경우, 머지 후보 리스트(mergeCandList)의 갱신 처리를 행한다(단계 S506). 예를 들면, 갱신 처리는 도 18에 도시하는 것과 같은 것이며, 부호화측과 암묵적으로(implicit) 공유되어 있는 룰에 따르는 것이다. 도 18(a)는, 초기화 생성되는 머지 후보 리스트(mergeCandList)를 나타내는 도면이며, 도 18(b)는, 갱신 처리된 후의 머지 후보 리스트(mergeCandList)를 나타내는 도면이다. 도 18(b)에 도시하는 예에서는, 머지 인덱스(merge_idx)의 값이 「0」인 후보(mvL0_A, ref0)와 「1」인 후보(mvL1_B, ref0)를 조합하여, 머지 인덱스(merge_idx)의 값이 「2」인 후보(mvL0_A, ref0, mvL1_B, ref0)가 생성되어 있다.
이하, 이 리스트를 이용하여, 움직임 벡터 mvL0, mvL1의 머지 모드 선택 처리를 행한다.
엔트로피 복호부(201)에 의해 merge_Idx가 엔트로피 복호되고, 인트라·인터 예측부(205)는 이 merge_Idx의 값을 수취한다(단계 S507).
인트라·인터 예측부(205)는, merge_Idx의 값으로 특정되는 머지 모드로 이용하는 움직임 데이터 motion data를, 머지 후보 리스트의 후보로부터 1개 선택한다(단계 S508).
최후에, 선택한 움직임 데이터 motion data(mvL0, refIdxL0, mvL1, refIdxL1)에 있어서의 움직임 벡터 mvL0, mvL1가 나타내는 위치의 화소 데이터(pixelsL0과 pixelsL1)를 취득하고, 이들 화소 데이터를 이용하여 예측 화상 신호를 도출한다(단계 S509).
이와 같이, 스케일링 처리후의 움직임 벡터의 값이, 어떠한 비트 정밀도로 나타내는 것이 가능한 값의 범위를 넘은 경우는, 그 움직임 벡터를 가지는 머지 블록 후보를 머지 후보 리스트에 추가하지 않도록 함으로써, 부호화측 및 복호측에서 취급하는 움직임 벡터의 크기 범위를, 어떠한 비트 정밀도로 나타내는 것이 가능한 범위에 항상 두는 것이 가능해진다.
또한, 본 실시의 형태에서는, 도 14의 단계 S302에 있어서의 스케일링 처리후에, 산출한 움직임 벡터가 어느 비트 정밀도로 나타내는 것이 가능한 크기의 범위 내인지 여부를 판정하도록 했는데, 반드시 이에 한정되지 않는다. 예를 들면, 도 17의 단계 S508에 있어서, merge_idx에서 선택된 움직임 벡터 mvL0가, 어떠한 비트 정밀도로 나타내는 것이 가능한 범위인지 여부를 판정하여, 그 범위 외이면, 범위 내에 들어가도록 클립하도록 해도 상관없다.
또한, 본 실시의 형태에서는, 비특허 문헌 2에서 검토가 진행되고 있는 HEVC의 머지 모드를 이용하여, 스케일링 처리후의 움직임 벡터의 크기 범위를, 어떠한 비트 정밀도로 나타내는 것이 가능한 범위에 들어가게 하는 예를 나타냈는데, 마찬가지로, 비특허 문헌 2에서 검토가 진행되고 있는 HEVC의 AMVP의 예측 움직임 벡터 후보를 산출하는 방식에 대해서도 적용가능하다.
도 19A는, 비특허 문헌 2의 HEVC에 있어서의 움직임 예측 벡터 mvpLX에 대하여 설명하는 도면이며, 도 19B는, 움직임 예측 벡터 mvpLX의 후보 리스트 mvpListLX(mvpListL0과 mvpListL1)을 설명하는 도면이다.
움직임 예측 벡터 mvpLX는, 도 19A에 도시하는 바와 같이 움직임 검출에서 의해 도출된 움직임 벡터 mvLX와의 차분인 움직임 차분 벡터 mvdLX를 구하기 위해서 이용된다. 그리고, 이 움직임 차분 벡터 mvdLX가 부호화된다. 도 19B 중 mvp_idx_l0의 값이, 부호화되는(복호측에서 추출되는) mvp_idx_lX의 값에 대응한다. 이 인덱스의 값(0, 1, 2)로 결정되는 mvpListLXN [mvp_idx_lX]의 움직임 데이터가, 움직임 예측 벡터 mvp(predictor)가 된다. 도면 중의 N은 공간적·혹은 시간적으로 어느 위치의 블록의 움직임 벡터의 값을 움직임 벡터의 예측값으로서 이용할지를 나타내고 있다.
도 20은, 도 19B에 도시하는 N의 값(A, B, Col)에 의한 예측 후보 블록군, 혹은 예측 후보 블록을 설명하는 도면이다. 도면 중 검은색 블록이 부호화(복호) 대상 블록 CurrBlk이다. 픽처 번호 picNum(302) 중의 블록이다. 도면 중 해칭된 블록이, 복호 대상 블록 Curr_Blk(혹은 이 블록이 포함되는 예측 단위 PU 블록)과 대략 동일한 공간 좌표 위치(x, y)에 위치하는데 picNum이 상이한 (시간적으로 상이한) 픽처에 존재하는, 소위 Co_located 블록(Col_Blk)이다. 이 예에서, Col_Blk는 picNum302와는 상이한 picNum303에 위치하는 것으로 한다. HEVC에서는, 이들 위치 A, B, Col의 위치의 블록 N_Blk(A_Blk, B_Blk, Col_Blk)의 움직임 벡터 mvL0A, mvL0B, mvL0Col, 또는 (mvL1A, mvL1B, mvL1Col)을, DiscScaleFactor라고 불리는 비율로 곱셈함으로써, 움직임 예측 벡터 mvpL0, mvpL1로서 예측 후보에 이용한다.
본 실시의 형태에서는, 이 때, 곱셈에 의해 산출된 예측 움직임 벡터가, 어떠한 비트 정밀도로 나타내는 것이 가능한 범위에 들어가는지 여부를 판정하고, 그 범위 내에 들어가지 않으면, 예측 움직임 벡터 후보의 리스트에 추가하지 않는다. 이에 따라, 예측 움직임 벡터, 또는, 부호화 대상 블록의 움직임 벡터와 예측 움직임 벡터로부터 산출되는 차분 움직임 벡터의 크기 범위를, 어떠한 비트 정밀도로 나타내는 것이 범위에 들어가게 할 수 있다. 또한, 곱셈에 의해 산출된 예측 움직임 벡터가 어떠한 비트 정밀도로 나타내는 것이 가능한 범위 내에 들어가지 않으면, 그 범위 내에 들어가도록 클립한 예측 움직임 벡터를 예측 움직임 벡터 후보의 리스트에 추가하도록 해도 상관없다.
이상, 본 발명의 1개 또는 복수의 양태에 관련된 동화상 부호화 장치 및 동화상 복호 장치에 대하여, 실시의 형태에 의거하여 설명했는데, 본 발명은, 이 실시의 형태에 한정되는 것은 아니다. 본 발명의 취지를 일탈하지 않는 한, 당업자가 생각해 내는 각종 변형을 본 실시의 형태에 실시한 것이나, 다른 실시의 형태에 있어서의 구성 요소를 조합하여 구축되는 형태도, 본 발명의 일 또는 복수의 양태 범위내에 포함되어도 된다.
또한, 상기 각 실시의 형태에 있어서, 각 구성 요소는, 전용 하드웨어로 구성되거나, 각 구성 요소에 적합한 소프트웨어 프로그램을 실행함으로써 실현되어도 된다. 각 구성 요소는, CPU 또는 프로세서 등의 프로그램 실행부가, 하드 디스크 또는 반도체 메모리 등의 기록 매체에 기록된 소프트웨어 프로그램을 독출하여 실행함으로써 실현되어도 된다. 여기에서, 상기 각 실시의 형태의 동화상 부호화 장치 또는 동화상 복호 장치 등을 실현하는 소프트웨어는, 다음과 같은 프로그램이다.
즉, 이 프로그램은, 컴퓨터에, 복수의 픽처를 블록마다 부호화하는 동화상 부호화 방법으로서, 부호화 대상 픽처에 포함되어 부호화 대상 블록에 공간적으로 인접하거나, 또는, 상기 부호화 대상 픽처와는 상이한 픽처에 포함되는 시간적으로 인접하는 1이상의 대응 블록의 각각에 대하여, 리스트에 상기 대응 블록의 움직임 벡터를 선택적으로 추가하는 추가 단계와, 상기 리스트로부터, 상기 부호화 대상 블록의 부호화를 위해서 이용하는 움직임 벡터를 선택하는 선택 단계와, 상기 선택 단계에 있어서 선택된 상기 움직임 벡터를 이용하여 상기 부호화 대상 블록을 부호화하는 부호화 단계를 포함하고, 상기 추가 단계에서는, 상기 시간적으로 인접하는 대응 블록의 제1의 움직임 벡터를 스케일링 처리함으로써 제2의 움직임 벡터를 산출하고, 산출한 상기 제2의 움직임 벡터가, 소정 크기의 범위에 포함되는지 여부를 판정하고, 상기 제2의 움직임 벡터가 상기 소정 크기의 범위 내에 포함되면, 상기 제2의 움직임 벡터를 상기 대응 블록의 움직임 벡터로서 상기 리스트에 추가하는 동화상 부호화 방법을 실행시킨다.
혹은, 이 프로그램은, 컴퓨터에, 복수의 픽처를 블록마다 복호하는 동화상 복호 방법으로서, 복호 대상 픽처에 포함되어 복호 대상 블록에 공간적으로 인접하거나, 또는, 상기 복호 대상 픽처와는 상이한 픽처에 포함되는 시간적으로 인접하는 1이상의 대응 블록의 각각에 대하여, 리스트에 상기 대응 블록의 움직임 벡터를 선택적으로 추가하는 추가 단계와, 상기 리스트로부터, 상기 복호 대상 블록의 복호를 위해서 이용하는 움직임 벡터를 선택하는 선택 단계와, 상기 선택 단계에 있어서 선택된 상기 움직임 벡터를 이용하여 상기 복호 대상 블록을 복호하는 복호 단계를 포함하고, 상기 추가 단계에서는, 상기 시간적으로 인접하는 대응 블록의 제1의 움직임 벡터를 스케일링 처리함으로써 제2의 움직임 벡터를 산출하고, 산출한 상기 제2의 움직임 벡터가, 소정 크기의 범위에 포함되는지 여부를 판정하고, 상기 제2의 움직임 벡터가 상기 소정 크기의 범위 내에 포함되면, 상기 제2의 움직임 벡터를 상기 대응 블록의 움직임 벡터로서 상기 리스트에 추가하는 동화상 복호 방법을 실행시킨다.
(실시의 형태 2)
상기 각 실시의 형태에서 나타낸 동화상 부호화 방법(화상 부호화 방법) 또는 동화상 복호화 방법(화상 복호 방법)의 구성을 실현하기 위한 프로그램을 기억 미디어에 기록함으로써, 상기 각 실시의 형태에서 나타낸 처리를 독립된 컴퓨터 시스템에 있어서 간단히 실시하는 것이 가능해진다. 기억 미디어는, 자기 디스크, 광 디스크, 광 자기 디스크, IC 카드, 반도체 메모리 등, 프로그램을 기록할 수 있는 것이면 된다.
또한 여기에서, 상기 각 실시의 형태에서 나타낸 동화상 부호화 방법(화상 부호화 방법)이나 동화상 복호화 방법(화상 복호 방법)의 응용예와 이를 이용한 시스템을 설명한다. 해당 시스템은, 화상 부호화 방법을 이용한 화상 부호화 장치, 및 화상 복호 방법을 이용한 화상 복호 장치로 이루어지는 화상 부호화 복호 장치를 가지는 것을 특징으로 한다. 시스템에 있어서의 다른 구성에 대하여, 경우에 따라서 적절히 변경할 수 있다.
도 21은, 컨텐츠 전송 서비스를 실현하는 컨텐츠 공급 시스템(ex100)의 전체 구성을 나타내는 도면이다. 통신 서비스의 제공 에어리어를 원하는 크기로 분할하고, 각 셀내에 각각 고정 무선국인 기지국(ex106, ex107, ex108, ex109, ex110)이 설치되어 있다.
이 컨텐츠 공급 시스템(ex100)은, 인터넷(ex101)에 인터넷 서비스 프로바이더(ex102) 및 전화망(ex104), 및 기지국(ex106)으로부터 ex110을 통하여, 컴퓨터(ex111), PDA(Personal Digital Assistant)(ex112), 카메라(ex113), 휴대 전화(ex114), 게임기(ex115) 등의 각 기기가 접속된다.
그러나, 컨텐츠 공급 시스템(ex100)은 도 21과 같은 구성에 한정되지 않고, 어느 하나의 요소를 조합시켜서 접속하도록 해도 된다. 또한, 고정 무선국인 기지국(ex106)으로부터 ex110을 거치지 않고, 각 기기가 전화망(ex104)에 직접 접속되어도 된다. 또한, 각 기기가 근거리 무선등을 통하여 직접 서로 접속되어 있어도 된다.
카메라(ex113)는 디지털 비디오 카메라 등의 동화상 촬영이 가능한 기기이며, 카메라(ex116)는 디지털 카메라 등의 정지 화상 촬영, 동화상 촬영이 가능한 기기이다. 또한, 휴대전화(ex114)는, GSM(등록 상표)(Global System for Mobile Communications) 방식, CDMA(Code Division Multiple Access) 방식, W-CDMA(Wideband-Code Division Multiple Access) 방식, 혹은 LTE(Long Term Evolution) 방식, HSPA(High Speed Packet Access)의 휴대 전화기, 또는 PHS(Personal Handyphone System) 등이며, 어떠한 것이라도 상관없다.
컨텐츠 공급 시스템(ex100)에서는, 카메라(ex113) 등이 기지국(ex109), 전화망(ex104)을 통하여 스트리밍 서버(ex103)에 접속됨으로써, 라이브 전송 등이 가능해진다. 라이브 전송에서는, 사용자가 카메라(ex113)를 이용하여 촬영하는 컨텐츠(예를 들면, 음악 라이브 영상 등)에 대하여 상기 각 실시의 형태에서 설명한 바와 같이 부호화 처리를 행하고(즉, 본 발명의 일양태에 관련된 화상 부호화 장치로서 기능한다), 스트리밍 서버(ex103)에 송신한다. 한편, 스트리밍 서버(ex103)는 요구가 있는 클라이언트에 대하여 송신된 컨텐츠 데이터를 스트림 전송한다. 클라이언트로는, 상기 부호화 처리된 데이터를 복호화하는 것이 가능한, 컴퓨터(ex111), PDA(ex112), 카메라(ex113), 휴대전화(ex114), 게임기(ex115) 등이 있다. 전송된 데이터를 수신한 각 기기에서는, 수신한 데이터를 복호화 처리하여 재생한다(즉, 본 발명의 일양태에 관련된 화상 복호 장치로서 기능한다).
또한, 촬영한 데이터의 부호화 처리는 카메라(ex113)에서 행하거나, 데이터의 송신 처리를 하는 스트리밍 서버(ex103)에서 행해도 되고, 서로 분담하여 행해도 된다. 마찬가지로 전송된 데이터의 복호화 처리는 클라이언트에서 행하거나, 스트리밍 서버(ex103)에서 행해도 되고, 서로 분담하여 행해도 된다. 또한, 카메라(ex113)에 한정되지 않고, 카메라(ex116)로 촬영한 정지 화상 및/또는 동화상 데이터를, 컴퓨터(ex111)를 통하여 스트리밍 서버(ex103)에 송신해도 된다. 이 경우의 부호화 처리는 카메라(ex116), 컴퓨터(ex111), 스트리밍 서버(ex103) 중 어느 하나로 행해도 되고, 서로 분담하여 행해도 된다.
또한, 이들 부호화·복호화 처리는, 일반적으로 컴퓨터(ex111)나 각 기기가 가지는 LSI(ex500)에 있어서 처리한다. LSI(ex500)는, 1칩이거나 복수 칩으로 이루어지는 구성이어도 된다. 또한, 동화상 부호화·복호화용의 소프트웨어를 컴퓨터(ex111) 등으로 판독 가능한 어떠한 기록 미디어(CD-ROM, 플렉서블 디스크, 하드 디스크 등)에 집어넣고, 그 소프트 웨어를 이용하여 부호화·복호화 처리를 행해도 된다. 또한, 휴대전화(ex114)가 카메라 부착인 경우에는, 그 카메라로 취득한 동화상 데이터를 송신해도 된다. 이 때의 동화상 데이터는 휴대전화(ex114)가 가지는 LSI(ex500)로 부호화 처리된 데이터이다.
또한, 스트리밍 서버(ex103)는 복수의 서버나 복수의 컴퓨터이며, 데이터를 분산하여 처리하거나 기록하거나 전송하는 것이어도 된다.
이상과 같이 하여, 컨텐츠 공급 시스템(ex100)에서는, 부호화된 데이터를 클라이언트가 수신하여 재생할 수 있다. 이와 같이 컨텐츠 공급 시스템(ex100)에서는, 사용자가 송신한 정보를 실시간으로 클라이언트가 수신하여 복호화하여, 재생할 수 있어, 특별한 권리나 설비를 가지지 않는 사용자라도 개인 방송을 실현할 수 있다.
또한, 컨텐츠 공급 시스템(ex100)의 예에 한정되지 않고, 도 22에 도시하는 바와 같이, 디지털 방송용 시스템(ex200)에도, 상기 각 실시의 형태의 적어도 동화상 부호화 장치(화상 부호화 장치) 또는 동화상 복호화 장치(화상 복호 장치) 중 어느 하나를 집어넣을 수 있다. 구체적으로는, 방송국(ex201)에서는 영상 데이터에 음악 데이터 등이 다중화된 다중화 데이터가 전파를 통하여 통신 또는 위성(ex202)에 전송된다. 이 영상 데이터는 상기 각 실시의 형태에서 설명한 동화상 부호화 방법에 의해 부호화된 데이터이다(즉, 본 발명의 일양태에 관련된 화상 부호화 장치에 의해 부호화된 데이터이다). 이를 받은 방송 위성(ex202)은, 방송용 전파를 발신하고, 이 전파를 위성 방송의 수신이 가능한 가정의 안테나(ex204)가 수신한다. 수신한 다중화 데이터를, 텔레비전(수신기)(ex300) 또는 셋탑 박스(STB)(ex217) 등의 장치가 복호화하여 재생한다(즉, 본 발명의 일양태에 관련된 화상 복호 장치로서 기능한다).
또한, DVD, BD 등의 기록 미디어(ex215)에 기록한 다중화 데이터를 판독하여 복호화하거나, 또는 기록 미디어(ex215)에 영상 신호를 부호화하고, 또한 경우에 따라서는 음악 신호와 다중화하여 기입하는 리더/레코더(ex218)에도 상기 각 실시의 형태에서 나타낸 동화상 복호화 장치 또는 동화상 부호화 장치를 실장하는 것이 가능하다. 이 경우, 재생된 영상 신호는 모니터(ex219)에 표시되고, 다중화 데이터가 기록된 기록 미디어(ex215)에 의해 다른 장치나 시스템에 있어서 영상 신호를 재생할 수 있다. 또한, 케이블 텔레비젼용의 케이블(ex203) 또는 위성/지상파 방송의 안테나(ex204)에 접속된 셋탑 박스(ex217) 내에 동화상 복호화 장치를 실장하고, 이를 텔레비전 모니터(ex219)로 표시해도 된다. 이 때 셋탑 박스가 아니라, 텔레비전 내에 동화상 복호화 장치를 집어넣어도 된다.
도 23은, 상기 각 실시의 형태에서 설명한 동화상 복호화 방법 및 동화상 부호화 방법을 이용한 텔레비전(수신기)(ex300)을 나타내는 도면이다. 텔레비전(ex300)은, 상기 방송을 수신하는 안테나(ex204) 또는 케이블(ex203) 등을 통하여 영상 데이터에 음성 데이터가 다중화된 다중화 데이터를 취득, 또는 출력하는 튜너(ex301)와, 수신한 다중화 데이터를 복조하거나, 또는 외부에 송신하는 다중화 데이터로 변조하는 변조/복조부(ex302)와, 복조한 다중화 데이터를 영상 데이터와, 음성 데이터로 분리하거나, 또는 신호 처리부(ex306)에서 부호화된 영상 데이터, 음성 데이터를 다중화하는 다중/분리부(ex303)를 구비한다.
또한, 텔레비전(ex300)은, 음성 데이터, 영상 데이터의 각각을 복호화하거나, 또는 각각의 정보를 부호화하는 음성 신호 처리부(ex304), 영상 신호 처리부(ex305)(본 발명의 일양태에 관련된 화상 부호화 장치 또는 화상 복호 장치로서 기능한다)를 가지는 신호 처리부(ex306)와, 복호화한 음성 신호를 출력하는 스피커(ex307), 복호화한 영상 신호를 표시하는 디스플레이 등의 표시부(ex308)를 가지는 출력부(ex309)를 가진다. 또한, 텔레비전(ex300)은, 사용자 조작의 입력을 접수하는 조작 입력부(ex312) 등을 가지는 인터페이스부(ex317)를 가진다. 또한, 텔레비전(ex300)은, 각 부를 통괄적으로 제어하는 제어부(ex310), 각 부에 전력을 공급하는 전원 회로부(ex311)를 가진다. 인터페이스부(ex317)는, 조작 입력부(ex312) 이외에, 리더/레코더(ex218) 등의 외부 기기와 접속되는 브릿지(ex313), SD 카드 등의 기록 미디어(ex216)를 장착 가능하게 하기 위한 슬롯부(ex314), 하드 디스크 등의 외부 기록 미디어와 접속하기 위한 드라이버(ex315), 전화망과 접속하는 모뎀(ex316) 등을 가지고 있어도 된다. 또한 기록 미디어(ex216)는, 저장할 불휘발성/휘발성의 반도체 메모리 소자에 의해 전기적으로 정보의 기록을 가능하게 한 것이다. 텔레비전(ex300)의 각 부는 동기 버스를 통하여 서로 접속되어 있다.
먼저, 텔레비전(ex300)이 안테나(ex204) 등에 의해 외부로부터 취득한 다중화 데이터를 복호화하여, 재생하는 구성에 대하여 설명한다. 텔레비전(ex300)은, 리모트 컨트롤러(ex220) 등으로부터의 사용자 조작을 받아, CPU 등을 가지는 제어부(ex310)의 제어에 의거하여, 변조/복조부(ex302)에서 복조한 다중화 데이터를 다중/분리부(ex303)에서 분리한다. 또한 텔레비전(ex300)은, 분리한 음성 데이터를 음성 신호 처리부(ex304)에서 복호화하고, 분리한 영상 데이터를 영상 신호 처리부(ex305)에서 상기 각 실시의 형태에서 설명한 복호화 방법을 이용하여 복호화한다. 복호화한 음성 신호, 영상 신호는, 각각 출력부(ex309)로부터 외부를 향해서 출력된다. 출력할 때는, 음성 신호와 영상 신호가 동기하여 재생하도록, 버퍼(ex318, ex319) 등에 일단 이들 신호를 축적하면 된다. 또한, 텔레비전(ex300)은, 방송 등으로부터가 아니라, 자기/광 디스크, SD 카드 등의 기록 미디어(ex215, ex216)로부터 다중화 데이터를 독출해도 된다. 다음에, 텔레비전(ex300)이 음성 신호나 영상 신호를 부호화하여, 외부에 송신 또는 기록 미디어 등에 기입하는 구성에 대하여 설명한다. 텔레비전(ex300)은, 리모트 컨트롤러(ex220) 등으로부터의 사용자 조작을 받아, 제어부(ex310)의 제어에 의거하여, 음성 신호 처리부(ex304)에서 음성 신호를 부호화하고, 영상 신호 처리부(ex305)에서 영상 신호를 상기 각 실시의 형태에서 설명한 부호화 방법을 이용하여 부호화한다. 부호화한 음성 신호, 영상 신호는 다중/분리부(ex303)에서 다중화되어 외부에 출력된다. 다중화할 때는, 음성 신호와 영상 신호가 동기하도록, 버퍼(ex320, ex321) 등에 일단 이들 신호를 축적하면 된다. 또한, 버퍼(ex318, ex319, ex320, ex321)는 도시하고 있는 바와 같이 복수 구비하고 있어도 되고, 1개 이상의 버퍼를 공유하는 구성이어도 된다. 또한, 도시하고 있는 이외에, 예를 들면 변조/복조부(ex302)나 다중/분리부(ex303)의 사이 등에서도 시스템의 오버플로우, 언더플로우를 피하는 완충재로서 버퍼에 데이터를 축적하는 것으로 해도 된다.
또한, 텔레비전(ex300)은, 방송 등이나 기록 미디어 등으로부터 음성 데이터, 영상 데이터를 취득하는 이외에, 마이크나 카메라의 AV 입력을 접수하는 구성을 구비하고, 이들로부터 취득한 데이터에 대하여 부호화 처리를 행해도 된다. 또한, 여기에서 텔레비전(ex300)은 상기의 부호화 처리, 다중화, 및 외부 출력이 가능한 구성으로서 설명했는데, 이들 처리를 행할 수는 없고, 상기 수신, 복호화 처리, 외부 출력만이 가능한 구성이어도 된다.
또한, 리더/레코더(ex218)에서 기록 미디어로부터 다중화 데이터를 독출하거나, 또는 기입하는 경우에는, 상기 복호화 처리 또는 부호화 처리는 텔레비전(ex300), 리더/레코더(ex218) 중 어느 것으로 행해도 되고, 텔레비전(ex300)과 리더/레코더(ex218)가 서로 분담하여 행해도 된다.
일예로서, 광 디스크로부터 데이터의 읽어들임 또는 기입을 행할 경우의 정보 재생/기록부(ex400)의 구성을 도 24에 도시한다. 정보 재생/기록부(ex400)는, 이하에 설명하는 요소(ex401, ex402, ex403, ex404, ex405, ex406, ex407)를 구비한다. 광 헤드(ex401)는, 광 디스크인 기록 미디어(ex215)의 기록면에 레이저 스폿을 조사하여 정보를 기입하고, 기록 미디어(ex215)의 기록면으로부터의 반사광을 검출하여 정보를 읽어들인다. 변조 기록부(ex402)는, 광 헤드(ex401)에 내장된 반도체 레이저를 전기적으로 구동하여 기록 데이터에 따라서 레이저 광의 변조를 행한다. 재생 복조부(ex403)는, 광 헤드(ex401)에 내장된 포토 디텍터에 의해 기록면으로부터의 반사광을 전기적으로 검출한 재생 신호를 증폭하고, 기록 미디어(ex215)에 기록된 신호 성분을 분리하고 복조하여, 필요한 정보를 재생한다. 버퍼(ex404)는, 기록 미디어(ex215)에 기록하기 위한 정보 및 기록 미디어(ex215)로부터 재생한 정보를 일시적으로 유지한다. 디스크 모터(ex405)는 기록 미디어(ex215)를 회전시킨다. 서보 제어부(ex406)는, 디스크 모터(ex405)의 회전 구동을 제어하면서 광 헤드(ex401)를 소정의 정보 트랙으로 이동시켜, 레이저 스폿의 추종 처리를 행한다. 시스템 제어부(ex407)는, 정보 재생/기록부(ex400) 전체의 제어를 행한다. 상기의 독출이나 기입의 처리는 시스템 제어부(ex407)가, 버퍼(ex404)에 유지된 각종 정보를 이용하고, 또한 필요에 따라 새로운 정보의 생성·추가를 행함과 더불어, 변조 기록부(ex402), 재생 복조부(ex403), 서보 제어부(ex406)를 협조 동작시키면서, 광 헤드(ex401)를 통하여, 정보의 기록 재생을 행함으로써 실현된다. 시스템 제어부(ex407)는 예를 들면 마이크로 프로세서로 구성되고, 독출 기입의 프로그램을 실행함으로써 이들 처리를 실행한다.
이상에서는, 광 헤드(ex401)는 레이저 스폿을 조사하는 것으로서 설명했는데, 근접장광을 이용하여 보다 고밀도의 기록을 행하는 구성이어도 된다.
도 25에 광 디스크인 기록 미디어(ex215)의 모식도를 도시한다. 기록 미디어(ex215)의 기록면에는 안내 홈(그루브)이 스파이럴상으로 형성되고, 정보 트랙(ex230)에는, 미리 그루브의 형상 변화에 따라 디스크 상의 절대 위치를 나타내는 번지 정보가 기록되어 있다. 이 번지 정보는 데이터를 기록하는 단위인 기록 블록(ex231)의 위치를 특정하기 위한 정보를 포함하고, 기록이나 재생을 행하는 장치에 있어서 정보 트랙(ex230)을 재생하여 번지 정보를 판독함으로써 기록 블록을 특정할 수 있다. 또한, 기록 미디어(ex215)는, 데이터 기록 영역(ex233), 내주 영역(ex232), 외주 영역(ex234)을 포함하고 있다. 사용자 데이터를 기록하기 위해서 이용하는 영역이 데이터 기록 영역(ex233)이며, 데이터 기록 영역(ex233)보다 내주 또는 외주에 배치되어 있는 내주 영역(ex232)과 외주 영역(ex234)은, 사용자 데이터의 기록 이외의 특정 용도에 이용된다. 정보 재생/기록부(ex400)는, 이러한 기록 미디어(ex215)의 데이터 기록 영역(ex233)에 대하여, 부호화된 음성 데이터, 영상 데이터 또는 이들 데이터를 다중화한 다중화 데이터의 읽고 쓰기를 행한다.
이상에서는, 1층의 DVD, BD 등의 광 디스크를 예로 들어 설명했는데, 이들에 한정되는 것은 아니고, 다층 구조이며 표면 이외에도 기록가능한 광 디스크여도 된다. 또한, 디스크의 동일한 장소에 다양한 상이한 파장의 색의 광을 이용하여 정보를 기록하거나, 다양한 각도로부터 상이한 정보의 층을 기록하는 등, 다차원적인 기록/재생을 행하는 구조의 광 디스크여도 된다.
또한, 디지털 방송용 시스템(ex200)에 있어서, 안테나(ex205)를 가지는 차(ex210)에서 위성(ex202) 등으로부터 데이터를 수신하고, 차(ex210)가 가지는 카 네비게이션(ex211) 등의 표시 장치에 동화상을 재생하는 것도 가능하다. 또한, 카 네비게이션(ex211)의 구성은 예를 들면 도 23에 도시하는 구성 중, GPS 수신부를 첨가한 구성을 생각할 수 있고, 동일한 것을 컴퓨터(ex111)나 휴대전화(ex114) 등에서도 생각할 수 있다.
도 26a는, 상기 실시의 형태에서 설명한 동화상 복호화 방법 및 동화상 부호화 방법을 이용한 휴대전화(ex114)를 도시하는 도면이다. 휴대전화(ex114)는, 기지국(ex110)과의 사이에서 전파를 송수신하기 위한 안테나(ex350), 영상, 정지 화상을 찍는 것이 가능한 카메라부(ex365), 카메라부(ex365)에서 촬상한 영상, 안테나(ex350)에서 수신한 영상 등이 복호화된 데이터를 표시하는 액정 디스플레이 등의 표시부(ex358)를 구비한다. 휴대전화(ex114)는, 또한, 조작 키부(ex366)를 가지는 본체부, 음성을 출력하기 위한 스피커 등인 음성 출력부(ex357), 음성을 입력하기 위한 마이크 등인 음성 입력부(ex356), 촬영한 영상, 정지 화상, 녹음한 음성, 또는 수신한 영상, 정지 화상, 메일 등이 부호화된 데이터 혹은 복호화된 데이터를 보존하는 메모리부(ex367), 또는 마찬가지로 데이터를 보존하는 기록 미디어와의 인터페이스부인 슬롯부(ex364)를 구비한다.
또한, 휴대전화(ex114)의 구성예에 대하여, 도 26b를 이용하여 설명한다. 휴대전화(ex114)는, 표시부(ex358) 및 조작 키부(ex366)를 구비한 본체부의 각 부를 통괄적으로 제어하는 주제어부(ex360)에 대하여, 전원 회로부(ex361), 조작 입력 제어부(ex362), 영상 신호 처리부(ex355), 카메라 인터페이스부(ex363), LCD(Liquid Crystal Display) 제어부(ex359), 변조/복조부(ex352), 다중/분리부(ex353), 음성 신호 처리부(ex354), 슬롯부(ex364), 메모리부(ex367)가 버스(ex370)를 통하여 서로 접속되어 있다.
전원 회로부(ex361)는, 사용자의 조작에 의해 통화 종료 및 전원 키가 온 상태로 되면, 배터리 팩으로부터 각 부에 대하여 전력을 공급함으로써 휴대전화(ex114)를 동작 가능한 상태로 기동한다.
휴대전화(ex114)는, CPU, ROM, RAM 등을 가지는 주 제어부(ex360)의 제어에 의거하여, 음성 통화 모드 시에 음성 입력부(ex356)에서 수음한 음성 신호를 음성 신호 처리부(ex354)에서 디지털 음성 신호로 변환하고, 이를 변조/복조부(ex352)에서 스펙트럼 확산 처리하고, 송신/수신부(ex351)에서 디지털 아날로그 변환 처리 및 주파수 변환 처리를 실시한 후에 안테나(ex350)를 통하여 송신한다. 또한 휴대전화(ex114)는, 음성 통화 모드 시에 안테나(ex350)를 통하여 수신한 수신 데이터를 증폭하여 주파수 변환 처리 및 아날로그 디지털 변환 처리를 실시하고, 변조/복조부(ex352)에서 스펙트럼 역확산 처리하고, 음성 신호 처리부(ex354)에서 아날로그 음성 신호로 변환한 후, 이를 음성 출력부(ex357)로부터 출력한다.
또한 데이터 통신 모드 시에 전자 메일을 송신할 경우, 본체부의 조작 키부(ex366) 등의 조작에 의해 입력된 전자 메일의 텍스트 데이터는 조작 입력 제어부(ex362)를 통하여 주제어부(ex360)에 송출된다. 주제어부(ex360)는, 텍스트 데이터를 변조/복조부(ex352)에서 스펙트럼 확산 처리를 하고, 송신/수신부(ex351)에서 디지털 아날로그 변환 처리 및 주파수 변환 처리를 실시한 후에 안테나(ex350)를 통하여 기지국(ex110)에 송신한다. 전자 메일을 수신할 경우는, 수신한 데이터에 대하여 이 거의 반대의 처리가 행해져, 표시부(ex358)에 출력된다.
데이터 통신 모드 시에 영상, 정지 화상, 또는 영상과 음성을 송신할 경우, 영상 신호 처리부(ex355)는, 카메라부(ex365)로부터 공급된 영상 신호를 상기 각 실시의 형태에서 나타낸 동화상 부호화 방법에 의해 압축 부호화하고(즉, 본 발명의 일양태에 관련된 화상 부호화 장치로서 기능한다), 부호화된 영상 데이터를 다중/분리부(ex353)에 송출한다. 또한, 음성 신호 처리부(ex354)는, 영상, 정지 화상 등을 카메라부(ex365)로 촬상 중에 음성 입력부(ex356)에서 수음한 음성 신호를 부호화하고, 부호화된 음성 데이터를 다중/분리부(ex353)에 송출한다.
다중/분리부(ex353)는, 영상 신호 처리부(ex355)로부터 공급된 부호화된 영상 데이터와 음성 신호 처리부(ex354)로부터 공급된 부호화된 음성 데이터를 소정의 방식으로 다중화하고, 그 결과 얻어지는 다중화 데이터를 변조/복조부(변조/복조 회로부)(ex352)에서 스펙트럼 확산 처리를 하고, 송신/수신부(ex351)에서 디지털 아날로그 변환 처리 및 주파수 변환 처리를 실시한 후에 안테나(ex350)를 통하여 송신한다.
데이터 통신 모드 시에 홈페이지 등에 링크된 동화상 파일 데이터를 수신할 경우, 또는 영상 및 혹은 음성이 첨부된 전자 메일을 수신할 경우, 안테나(ex350)를 통하여 수신된 다중화 데이터를 복호화하기 위해서, 다중/분리부(ex353)는, 다중화 데이터를 분리함으로써 영상 데이터의 비트 스트림과 음성 데이터의 비트 스트림으로 나누고, 동기 버스(ex370)를 통하여 부호화된 영상 데이터를 영상 신호 처리부(ex355)에 공급함과 더불어, 부호화된 음성 데이터를 음성 신호 처리부(ex354)에 공급한다. 영상 신호 처리부(ex355)는, 상기 각 실시의 형태에서 나타낸 동화상 부호화 방법에 대응한 동화상 복호화 방법에 의해 복호화함으로써 영상 신호를 복호하고(즉, 본 발명의 일양태에 관련된 화상 복호 장치로서 기능한다), LCD 제어부(ex359)를 통하여 표시부(ex358)로부터, 예를 들면 홈페이지에 링크된 동화상 파일에 포함되는 영상, 정지 화상이 표시된다. 또한 음성 신호 처리부(ex354)는, 음성 신호를 복호하고, 음성 출력부(ex357)로부터 음성이 출력된다.
또한, 상기 휴대 전화(ex114) 등의 단말은, 텔레비전(ex300)과 마찬가지로, 부호화기·복호화기를 양쪽 다 가지는 송수신형 단말 이외에, 부호화기만의 송신 단말, 복호화기만의 수신 단말이라고 하는 3가지의 실장 형식을 생각할 수 있다. 또한, 디지털 방송용 시스템(ex200)에 있어서, 영상 데이터에 음악 데이터 등이 다중화된 다중화 데이터를 수신, 송신하는 것으로서 설명했는데, 음성 데이터 이외에 영상에 관련된 문자 데이터 등이 다중화된 데이터여도 되고, 다중화 데이터가 아니라 영상 데이터 자체여도 된다.
이와 같이, 상기 각 실시의 형태에서 나타낸 동화상 부호화 방법 혹은 동화상 복호화 방법을 상술한 어느 하나의 기기·시스템에 이용하는 것은 가능하고, 그렇게 함으로써, 상기 각 실시의 형태에서 설명한 효과를 얻을 수 있다.
또한, 본 발명은 이러한 상기 실시의 형태에 한정되는 것이 아니라, 본 발명의 범위를 일탈하지 않고 다양한 변형 또는 수정이 가능하다.
(실시의 형태 3)
상기 각 실시의 형태에서 나타낸 동화상 부호화 방법 또는 장치와, MPEG-2, MPEG4-AVC, VC-1 등 상이한 규격에 준거한 동화상 부호화 방법 또는 장치를, 필요에 따라 적절히 바꿈으로써, 영상 데이터를 생성하는 것도 가능하다.
여기에서, 각각 상이한 규격에 준거하는 복수의 영상 데이터를 생성한 경우, 복호할 때에, 각각의 규격에 대응한 복호 방법을 선택할 필요가 있다. 그러나, 복호하는 영상 데이터가, 어느 규격에 준거하는 것인지 식별할 수 없으므로, 적절한 복호 방법을 선택할 수 없다는 과제가 발생한다.
이 과제를 해결하기 위해서, 영상 데이터에 음성 데이터 등을 다중화한 다중화 데이터는, 영상 데이터가 어느 규격에 준거하는 것인지를 나타내는 식별 정보를 포함하는 구성으로 한다. 상기 각 실시의 형태에서 나타내는 동화상 부호화 방법 또는 장치에 의해 생성된 영상 데이터를 포함하는 다중화 데이터의 구체적인 구성을 이하에 설명한다. 다중화 데이터는, MPEG-2 트랜스포트 스트림 형식의 디지털 스트림이다.
도 27은, 다중화 데이터의 구성을 나타내는 도면이다. 도 27에 도시하는 바와 같이 다중화 데이터는, 비디오 스트림, 오디오 스트림, 프리젠테이션 그래픽스 스트림(PG), 인터랙티브 그래픽스 스트림 중, 1개 이상을 다중화함으로써 얻어진다. 비디오 스트림은 영화의 주영상 및 부영상을, 오디오 스트림(IG)은 영화의 주음성 부분과 그 주음성과 믹싱하는 부음성을, 프리젠테이션 그래픽스 스트림은, 영화의 자막을 각각 나타내고 있다. 여기서 주영상이란 화면에 표시되는 통상의 영상을 나타내고, 부영상이란 주영상 중에 작은 화면으로 표시하는 영상이다. 또한, 인터랙티브 그래픽스 스트림은, 화면 상에 GUI 부품을 배치함으로써 작성되는 대화 화면을 나타내고 있다. 비디오 스트림은, 상기 각 실시의 형태에서 나타낸 동화상 부호화 방법 또는 장치, 종래의 MPEG-2, MPEG4-AVC, VC-1 등의 규격에 준거한 동화상 부호화 방법 또는 장치에 의해 부호화되어 있다. 오디오 스트림은, 돌비 AC-3, Dolby Digital Plus, MLP, DTS, DTS-HD, 또는, 리니어 PCM 등의 방식으로 부호화되어 있다.
다중화 데이터에 포함되는 각 스트림은 PID에 의해 식별된다. 예를 들면, 영화의 영상에 이용하는 비디오 스트림에는 0x1011이, 오디오 스트림에는 0x1100부터 0x111F까지가, 프리젠테이션 그래픽스에는 0x1200부터 0x121F까지가, 인터랙티브 그래픽스 스트림에는 0x1400부터 0x141F까지가, 영화의 부영상에 이용하는 비디오 스트림에는 0x1B00부터 0x1B1F까지, 주음성과 믹싱하는 부음성에 이용하는 오디오 스트림에는 0x1A00부터 0x1A1F가, 각각 할당되어 있다.
도 28은, 다중화 데이터가 어떻게 다중화되는지를 모식적으로 도시하는 도면이다. 먼저, 복수의 비디오 프레임으로 이루어지는 비디오 스트림(ex235), 복수의 오디오 프레임으로 이루어지는 오디오 스트림(ex238)을, 각각 PES 패킷 열(ex236 및 ex239)로 변환하고, TS 패킷(ex237 및 ex240)으로 변환한다. 마찬가지로 프리젠테이션 그래픽스 스트림(ex241) 및 인터렉티브 그래픽스(ex244)의 데이터를 각각 PES 패킷 열(ex242 및 ex245)로 변환하고, 또한 TS 패킷(ex243 및 ex246)으로 변환한다. 다중화 데이터(ex247)는 이 TS 패킷을 1개의 스트림으로 다중화함으로써 구성된다.
도 29는, PES 패킷 열에, 비디오 스트림이 어떻게 저장되는지를 더욱 상세하게 나타내고 있다. 도 29에 있어서의 제1단째는 비디오 스트림의 비디오 프레임 열을 나타낸다. 제2단째는, PES 패킷 열을 나타낸다. 도 29의 화살표 yy1, yy2, yy3, yy4로 표시하는 바와 같이, 비디오 스트림에 있어서의 복수의 Video Presentation Unit인 I 픽처, B 픽처, P 픽처는, 픽처마다 분할되어, PES 패킷의 페이로드에 저장된다. 각 PES 패킷은 PES 헤더를 가지고, PES 헤더에는, 픽처의 표시 시각인 PTS(Presentation Time-Stamp)나 픽처의 복호 시각인 DTS(Decoding Time-Stamp)가 저장된다.
도 30은, 다중화 데이터에 최종적으로 기입되는 TS 패킷의 형식을 나타내고 있다. TS 패킷은, 스트림을 식별하는 PID 등의 정보를 가지는 4Byte의 TS 헤더와 데이터를 저장하는 184Byte의 TS 페이로드로 구성되는 188Byte 고정 길이의 패킷이며, 상기 PES 패킷은 분할되어 TS 페이로드에 저장된다. BD-ROM의 경우, TS 패킷에는, 4Byte의 TP_Extra_Header가 부여되고, 192Byte의 소스 패킷을 구성하여, 다중화 데이터에 기입된다. TP_Extra_Header에는 ATS(Arrival_Time_Stamp) 등의 정보가 기재된다. ATS는 해당 TS 패킷의 디코더의 PID 필터로의 전송 개시 시각을 나타낸다. 다중화 데이터에는 도 30 하단에 도시하는 바와 같이 소스 패킷이 늘어서게 되고, 다중화 데이터의 선두부터 인크리먼트하는 번호는 SPN(소스 패킷 넘버)으로 불린다.
또한, 다중화 데이터에 포함되는 TS 패킷에는, 영상·음성·자막 등의 각 스트림 이외에도 PAT(Program Association Table), PMT(Program Map Table), PCR(Program Clock Reference) 등이 있다. PAT는 다중화 데이터 중에 이용되는 PMT의 PID가 무엇인지를 나타내고, PAT 자신의 PID는 0으로 등록된다. PMT는, 다중화 데이터 중에 포함되는 영상·음성·자막 등의 각 스트림의 PID와 각 PID에 대응하는 스트림의 속성 정보를 가지고, 또한 다중화 데이터에 관한 각종 디스크립터를 가진다. 디스크립터에는 다중화 데이터의 카피의 허가·불허가를 지시하는 카피 컨트롤 정보 등이 있다. PCR은, ATS의 시간축인 ATC(Arrival Time Clock)와 PTS·DTS의 시간축인 STC(System Time Clock)의 동기를 취하기 위해서, 그 PCR 패킷이 디코더에 전송되는 ATS에 대응하는 STC 시간의 정보를 가진다.
도 31은 PMT의 데이터 구조를 상세하게 설명하는 도면이다. PMT의 선두에는, 그 PMT에 포함되는 데이터의 길이 등을 기록한 PMT 헤더가 배치된다. 그 뒤에는, 다중화 데이터에 관한 디스크립터가 복수 배치된다. 상기 카피 컨트롤 정보 등이, 디스크립터로서 기재된다. 디스크립터의 뒤에는, 다중화 데이터에 포함되는 각 스트림에 관한 스트림 정보가 복수 배치된다. 스트림 정보는, 스트림의 압축 코덱 등을 식별하기 위해서 스트림 타입, 스트림의 PID, 스트림의 속성 정보(프레임 레이트, 애스펙트비 등)가 기재된 스트림 디스크립터로 구성된다. 스트림 디스크립터는 다중화 데이터에 존재하는 스트림의 수만큼 존재한다.
기록 매체 등에 기록할 경우에는, 상기 다중화 데이터는, 다중화 데이터 정보 파일과 함께 기록된다.
다중화 데이터 정보 파일은, 도 32에 도시하는 바와 같이 다중화 데이터의 관리 정보이며, 다중화 데이터와 1대1로 대응하고, 다중화 데이터 정보, 스트림 속성 정보와 엔트리 맵으로 구성된다.
다중화 데이터 정보는 도 32에 도시하는 바와 같이 시스템 레이트, 재생 개시 시각, 재생 종료 시각으로 구성되어 있다. 시스템 레이트는 다중화 데이터의, 후술하는 시스템 타겟 디코더의 PID 필터로의 최대 전송 레이트를 나타낸다. 다중화 데이터 중에 포함되는 ATS의 간격은 시스템 레이트 이하가 되도록 설정되어 있다. 재생 개시 시각은 다중화 데이터의 선두 비디오 프레임의 PTS이며, 재생 종료 시각은 다중화 데이터의 종단 비디오 프레임의 PTS에 1프레임분의 재생 간격을 더한 것이 설정된다.
스트림 속성 정보는 도 33에 도시하는 바와 같이, 다중화 데이터에 포함되는 각 스트림에 대한 속성 정보가, PID마다 등록된다. 속성 정보는 비디오 스트림, 오디오 스트림, 프리젠테이션 그래픽스 스트림, 인터랙티브 그래픽스 스트림마다 상이한 정보를 가진다. 비디오 스트림 속성 정보는, 그 비디오 스트림이 어떠한 압축 코덱으로 압축되었는지, 비디오 스트림을 구성하는 각각의 픽처 데이터의 해상도가 얼마인지, 애스펙트비는 얼마인지, 프레임 레이트는 얼마인지 등의 정보를 가진다. 오디오 스트림 속성 정보는, 그 오디오 스트림이 어떠한 압축 코덱으로 압축되었는지, 그 오디오 스트림에 포함되는 채널수는 몇인지, 어떠한 언어에 대응하는지, 샘플링 주파수가 얼마인지 등의 정보를 가진다. 이들 정보는, 플레이어가 재생하기 전의 디코더의 초기화 등에 이용된다.
본 실시의 형태에 있어서는, 상기 다중화 데이터 중, PMT에 포함되는 스트림 타입을 이용한다. 또한, 기록 매체에 다중화 데이터가 기록되어 있는 경우에는, 다중화 데이터 정보에 포함되는, 비디오 스트림 속성 정보를 이용한다. 구체적으로는, 상기 각 실시의 형태에서 나타낸 동화상 부호화 방법 또는 장치에 있어서, PMT에 포함되는 스트림 타입, 또는, 비디오 스트림 속성 정보에 대하여, 상기 각 실시의 형태에서 나타낸 동화상 부호화 방법 또는 장치에 의해 생성된 영상 데이터인 것을 나타내는 고유의 정보를 설정하는 단계 또는 수단을 설정한다. 이 구성에 의해, 상기 각 실시의 형태에서 나타낸 동화상 부호화 방법 또는 장치에 의해 생성한 영상 데이터와, 다른 규격에 준거하는 영상 데이터를 식별하는 것이 가능해진다.
또한, 본 실시의 형태에 있어서의 동화상 복호화 방법의 단계를 도 34에 도시한다. 단계 exS100에 있어서, 다중화 데이터로부터 PMT에 포함되는 스트림 타입, 또는, 다중화 데이터 정보에 포함되는 비디오 스트림 속성 정보를 취득한다. 다음에, 단계 exS101에 있어서, 스트림 타입, 또는, 비디오 스트림 속성 정보가 상기 각 실시의 형태에서 나타낸 동화상 부호화 방법 또는 장치에 의해 생성된 다중화 데이터인 것을 나타내는지 여부를 판단한다. 그리고, 스트림 타입, 또는, 비디오 스트림 속성 정보가 상기 각 실시의 형태에서 나타낸 동화상 부호화 방법 또는 장치에 의해 생성된 것이라고 판단된 경우에는, 단계 exS102에 있어서, 상기 각 실시의 형태에서 나타낸 동화상 복호 방법에 의해 복호를 행한다. 또한, 스트림 타입, 또는, 비디오 스트림 속성 정보가, 종래의 MPEG-2, MPEG4-AVC, VC-1 등의 규격에 준거하는 것임을 나타내는 경우에는, 단계 exS103에 있어서, 종래의 규격에 준거한 동화상 복호 방법에 의해 복호를 행한다.
이와 같이, 스트림 타입, 또는, 비디오 스트림 속성 정보에 새로운 고유값을 설정함으로써, 복호할 때에, 상기 각 실시의 형태에서 나타낸 동화상 복호화 방법 또는 장치로 복호가능한지를 판단할 수 있다. 따라서, 상이한 규격에 준거하는 다중화 데이터가 입력된 경우에도, 적절한 복호화 방법 또는 장치를 선택할 수 있으므로, 에러를 발생시키지 않고 복호하는 것이 가능해진다. 또한, 본 실시의 형태에서 나타낸 동화상 부호화 방법 또는 장치, 또는, 동화상 복호 방법 또는 장치를, 상술한 어느 하나의 기기·시스템에 이용하는 것도 가능하다.
(실시의 형태 4)
상기 각 실시의 형태에서 나타낸 동화상 부호화 방법 및 장치, 동화상 복호화 방법 및 장치는, 전형적으로는 집적 회로인 LSI로 실현된다. 일예로서, 도 35에 1칩화된 LSI(ex500)의 구성을 나타낸다. LSI(ex500)는, 이하에 설명하는 요소(ex501, ex502, ex503, ex504, ex505, ex506, ex507, ex508, ex509)를 구비하고, 각 요소는 버스(ex510)를 통하여 접속하고 있다. 전원 회로부(ex505)는 전원이 온 상태인 경우에 각 부에 대하여 전력을 공급함으로써 동작 가능한 상태로 기동한다.
예를 들면 부호화 처리를 행하는 경우에는, LSI(ex500)는, CPU(ex502), 메모리 컨트롤러(ex503), 스트림 컨트롤러(ex504), 구동 주파수 제어부(ex512) 등을 가지는 제어부(ex501)의 제어에 의거하여, AV I/O(ex509)에 의해 마이크(ex117)나 카메라(ex113) 등으로부터 AV 신호를 입력한다. 입력된 AV 신호는, 일단 SDRAM 등의 외부 메모리(ex511)에 축적된다. 제어부(ex501)의 제어에 의거하여, 축적한 데이터는 처리량이나 처리 속도에 따라서 적절히 복수회로 나뉘는 등으로 되어 신호 처리부(ex507)에 보내지고, 신호 처리부(ex507)에 있어서 음성 신호의 부호화 및/또는 영상 신호의 부호화가 행해진다. 여기서 영상 신호의 부호화 처리는 상기 각 실시의 형태에서 설명한 부호화 처리이다. 신호 처리부(ex507)에서는 또한, 경우에 따라 부호화된 음성 데이터와 부호화된 영상 데이터를 다중화하는 등의 처리를 행하여, 스트림 I/O(ex506)로부터 외부로 출력한다. 이 출력된 다중화 데이터는, 기지국(ex107)을 향해서 송신되거나, 또는 기록 미디어(ex215)에 기입되기도 한다. 또한, 다중화할 때는 동기하도록, 일단 버퍼(ex508)에 데이터를 축적하면 된다.
또한, 상기에서는, 메모리(ex511)를 LSI(ex500)의 외부 구성으로서 설명했는데, LSI(ex500)의 내부에 포함되는 구성이어도 된다. 버퍼(ex508)도 1개에 한정되는 것이 아니라, 복수의 버퍼를 구비하고 있어도 된다. 또한, LSI(ex500)는 1칩화되어도 되고, 복수 칩화되어도 된다.
또한, 상기에서는, 제어부(ex501)가, CPU(ex502), 메모리 컨트롤러(ex503), 스트림 컨트롤러(ex504), 구동 주파수 제어부(ex512) 등을 가지는 것으로 하고 있는데, 제어부(ex501)의 구성은, 이 구성에 한정되지 않는다. 예를 들면, 신호 처리부(ex507)가 CPU를 더 구비하는 구성이어도 된다. 신호 처리부(ex507)의 내부에도 CPU를 설치함으로써, 처리 속도를 보다 향상시키는 것이 가능해진다. 또한, 다른 예로서, CPU(ex502)가 신호 처리부(ex507), 또는 신호 처리부(ex507)의 일부인 예를 들면 음성 신호 처리부를 구비하는 구성이어도 된다. 이러한 경우에는, 제어부(ex501)는, 신호 처리부(ex507), 또는 그 일부를 가지는 CPU(ex502)를 구비하는 구성이 된다.
또한, 여기에서는, LSI로 했지만, 집적도의 차이에 따라, IC, 시스템 LSI, 슈퍼 LSI, 울트라 LSI로 불리기도 한다.
또한, 집적 회로화의 수법은 LSI에 한정되는 것은 아니고, 전용 회로 또는 범용 프로세서에서 실현해도 된다. LSI 제조후에, 프로그램하는 것이 가능한 FPGA(Field Programmable Gate Array)나, LSI 내부의 회로 셀의 접속이나 설정을 재구성가능한 리콘피규러블·프로세서를 이용해도 된다.
또한, 반도체 기술의 진보 또는 파생하는 별도 기술에 의해 LSI로 치환되는 집적 회로화의 기술이 등장하면, 당연히, 그 기술을 이용하여 기능 블록의 집적화를 행해도 된다. 바이오 기술의 적응 등이 가능성으로서 있을 수 있다.
(실시의 형태 5)
상기 각 실시의 형태에서 나타낸 동화상 부호화 방법 또는 장치에 의해 생성된 영상 데이터를 복호할 경우, 종래의 MPEG-2, MPEG4-AVC, VC-1 등의 규격에 준거하는 영상 데이터를 복호하는 경우에 비해, 처리량이 증가하는 것을 생각할 수 있다. 이 때문에, LSI(ex500)에 있어서, 종래의 규격에 준거하는 영상 데이터를 복호할 때의 CPU(ex502)의 구동 주파수보다도 높은 구동 주파수로 설정할 필요가 있다. 그러나, 구동 주파수를 높게 하면, 소비 전력이 높아진다는 과제가 생긴다.
이 과제를 해결하기 위해서, 텔레비전(ex300), LSI(ex500) 등의 동화상 복호화 장치는, 영상 데이터가 어느 규격에 준거하는 것인지를 식별하고, 규격에 따라서 구동 주파수를 전환하는 구성으로 한다. 도 36은, 본 실시의 형태에 있어서의 구성(ex800)을 나타내고 있다. 구동 주파수 전환부(ex803)는, 영상 데이터가, 상기 각 실시의 형태에서 나타낸 동화상 부호화 방법 또는 장치에 의해 생성된 것인 경우에는, 구동 주파수를 높게 설정한다. 그리고, 상기 각 실시의 형태에서 나타낸 동화상 복호화 방법을 실행하는 복호 처리부(ex801)에 대하여, 영상 데이터를 복호하도록 지시한다. 한편, 영상 데이터가, 종래의 규격에 준거하는 영상 데이터인 경우에는, 영상 데이터가, 상기 각 실시의 형태에서 나타낸 동화상 부호화 방법 또는 장치에 의해 생성된 것인 경우에 비해, 구동 주파수를 낮게 설정한다. 그리고, 종래의 규격에 준거하는 복호 처리부(ex802)에 대하여, 영상 데이터를 복호하도록 지시한다.
보다 구체적으로는, 구동 주파수 전환부(ex803)는, 도 35의 CPU(ex502)와 구동 주파수 제어부(ex512)로 구성된다. 또한, 상기 각 실시의 형태에서 나타낸 동화상 복호화 방법을 실행하는 복호 처리부(ex801), 및, 종래의 규격에 준거하는 복호 처리부(ex802)는, 도 35의 신호 처리부(ex507)에 해당한다. CPU(ex502)는, 영상 데이터가 어느 규격에 준거하는 것인지를 식별한다. 그리고, CPU(ex502)로부터의 신호에 의거하여, 구동 주파수 제어부(ex512)는, 구동 주파수를 설정한다. 또한, CPU(ex502)로부터의 신호에 의거하여, 신호 처리부(ex507)는, 영상 데이터의 복호를 행한다. 여기에서, 영상 데이터의 식별에는, 예를 들면, 실시의 형태 3에서 기재한 식별 정보를 이용하는 것을 생각할 수 있다. 식별 정보에 관해서는, 실시의 형태 3에서 기재한 것에 한정되지 않고, 영상 데이터가 어느 규격에 준거하는지 식별할 수 있는 정보면 된다. 예를 들면, 영상 데이터가 텔레비전에 이용되는 것인지, 디스크에 이용되는 것인지 등을 식별하는 외부 신호에 의거하여, 영상 데이터가 어느 규격에 준거하는 것인지 식별 가능한 경우에는, 이러한 외부 신호에 의거하여 식별해도 된다. 또한, CPU(ex502)에 있어서의 구동 주파수의 선택은, 예를 들면, 도 38과 같은 영상 데이터의 규격과, 구동 주파수를 대응시킨 룩 업 테이블에 의거하여 행하는 것을 생각할 수 있다. 룩 업 테이블을, 버퍼(ex508)나, LSI의 내부 메모리에 저장해 두고, CPU(ex502)가 이 룩 업 테이블을 참조함으로써, 구동 주파수를 선택하는 것이 가능하다.
도 37은, 본 실시 형태의 방법을 실시하는 단계를 나타내고 있다. 우선, 단계 exS200에서는, 신호 처리부(ex507)에 있어서, 다중화 데이터로부터 식별 정보를 취득한다. 다음에, 단계 exS201에서는, CPUex502에 있어서, 식별 정보에 의거하여 영상 데이터가 상기 각 실시의 형태에서 나타낸 부호화 방법 또는 장치에 의해 생성된 것인지 여부를 식별한다. 영상 데이터가 상기 각 실시의 형태에서 나타낸 부호화 방법 또는 장치에 의해 생성된 것인 경우에는, 단계 exS202에 있어서, 구동 주파수를 높게 설정하는 신호를, CPU(ex502)가 구동 주파수 제어부(ex512)에 보낸다. 그리고, 구동 주파수 제어부(ex512)에 있어서, 높은 구동 주파수로 설정된다. 한편, 종래의 MPEG-2, MPEG4-AVC, VC-1 등의 규격에 준거하는 영상 데이터인 것을 나타내는 경우에는, 단계 exS203에 있어서, 구동 주파수를 낮게 설정하는 신호를, CPU(ex502)가 구동 주파수 제어부(ex512)에 보낸다. 그리고, 구동 주파수 제어부(ex512)에 있어서, 영상 데이터가 상기 각 실시의 형태에서 나타낸 부호화 방법 또는 장치에 의해 생성된 것인 경우에 비해, 낮은 구동 주파수로 설정된다.
또한, 구동 주파수의 전환에 연동하여, LSI(ex500) 또는 LSI(ex500)을 포함하는 장치에 주어지는 전압을 변경함으로써, 전력 절감 효과를 보다 높이는 것이 가능하다. 예를 들면, 구동 주파수를 낮게 설정할 경우에는, 이에 따라, 구동 주파수를 높게 설정하고 있는 경우에 비해, LSI(ex500) 또는 LSI(ex500)을 포함하는 장치에 주어지는 전압을 낮게 설정하는 것을 생각할 수 있다.
또한, 구동 주파수의 설정 방법은, 복호할 때의 처리량이 큰 경우에, 구동 주파수를 높게 설정하고, 복호할 때의 처리량이 작은 경우에, 구동 주파수를 낮게 설정하면 되고, 상술한 설정 방법에 한정되지 않는다. 예를 들면, MPEG4-AVC 규격에 준거하는 영상 데이터를 복호하는 처리량의 쪽이, 상기 각 실시의 형태에서 나타낸 동화상 부호화 방법 또는 장치에 의해 생성된 영상 데이터를 복호하는 처리량보다도 큰 경우에는, 구동 주파수의 설정을 상술한 경우의 반대로 하는 것을 생각할 수 있다.
또한, 구동 주파수의 설정 방법은, 구동 주파수를 낮게 하는 구성에 한정되지 않는다. 예를 들면, 식별 정보가, 상기 각 실시의 형태에서 나타낸 동화상 부호화 방법 또는 장치에 의해 생성된 영상 데이터인 것을 나타내는 경우에는, LSI(ex500) 또는 LSI(ex500)을 포함하는 장치에 주어지는 전압을 높게 설정하고, 종래의 MPEG-2, MPEG4-AVC, VC-1 등의 규격에 준거하는 영상 데이터인 것을 나타내는 경우에는, LSI(ex500) 또는 LSI(ex500)을 포함하는 장치에 주어지는 전압을 낮게 설정하는 것도 생각할 수 있다. 또한, 다른 예로는, 식별 정보가, 상기 각 실시의 형태에서 나타낸 동화상 부호화 방법 또는 장치에 의해 생성된 영상 데이터인 것을 나타내는 경우에는, CPU(ex502)의 구동을 정지시키지 않고, 종래의 MPEG-2, MPEG4-AVC, VC-1 등의 규격에 준거하는 영상 데이터인 것을 나타내는 경우에는, 처리에 여유가 있으므로, CPU(ex502)의 구동을 일시 정지시키는 것도 생각할 수 있다. 식별 정보가, 상기 각 실시의 형태에서 나타낸 동화상 부호화 방법 또는 장치에 의해 생성된 영상 데이터인 것을 나타내는 경우에도, 처리에 여유가 있으면, CPU(ex502)의 구동을 일시 정지시키는 것도 생각할 수 있다. 이 경우는, 종래의 MPEG-2, MPEG4-AVC, VC-1 등의 규격에 준거하는 영상 데이터인 것을 나타내는 경우에 비하여, 정지 시간을 짧게 설정하는 것을 생각할 수 있다.
이와 같이, 영상 데이터가 준거하는 규격에 따라, 구동 주파수를 전환함으로써, 전력 절감화를 도모하는 것이 가능해진다. 또한, 전지를 이용하여 LSI(ex500) 또는 LSI(ex500)을 포함하는 장치를 구동하고 있는 경우에는, 전력 절감화에 따라, 전지의 수명을 길게 하는 것이 가능하다.
(실시의 형태 6)
텔레비전이나, 휴대 전화 등, 상술한 기기·시스템에는, 상이한 규격에 준거하는 복수의 영상 데이터가 입력되는 경우가 있다. 이와 같이, 상이한 규격에 준거하는 복수의 영상 데이터가 입력된 경우에도 복호가능하도록 하기 위해서, LSI(ex500)의 신호 처리부(ex507)가 복수의 규격에 대응하고 있을 필요가 있다. 그러나, 각각의 규격에 대응하는 신호 처리부(ex507)를 개별로 이용하면, LSI(ex500)의 회로 규모가 커지고, 또한, 비용이 증가한다는 과제가 생긴다.
이 과제를 해결하기 위해서, 상기 각 실시의 형태에서 나타낸 동화상 복호 방법을 실행하기 위한 복호 처리부와, 종래의 MPEG-2, MPEG4-AVC, VC-1 등의 규격에 준거하는 복호 처리부를 일부 공유화하는 구성으로 한다. 이 구성예를 도 39a의 ex900에 나타낸다. 예를 들면, 상기 각 실시의 형태에서 나타낸 동화상 복호 방법과, MPEG4-AVC 규격에 준거하는 동화상 복호 방법은, 엔트로피 부호화, 역양자화, 디블로킹·필터, 움직임 보상 등의 처리에 있어서 처리 내용이 일부 공통된다. 공통되는 처리 내용에 대해서는, MPEG4-AVC 규격에 대응하는 복호 처리부(ex902)를 공유하고, MPEG4-AVC 규격에 대응하지 않는, 본 발명의 일양태의 특유의 다른 처리 내용에 대해서는, 전용 복호 처리부(ex901)를 이용하는 구성을 생각할 수 있다. 복호 처리부의 공유화에 관해서는, 공통되는 처리 내용에 대해서는, 상기 각 실시의 형태에서 나타낸 동화상 복호화 방법을 실행하기 위한 복호 처리부를 공유하고, MPEG4-AVC 규격의 특유의 처리 내용에 대해서는, 전용 복호 처리부를 이용하는 구성이어도 된다.
또한, 처리를 일부 공유화하는 다른 예를 도 39b의 ex1000에 나타낸다. 이 예에서는, 본 발명의 일양태의 특유의 처리 내용에 대응한 전용 복호 처리부(ex1001)와, 다른 종래 규격의 특유의 처리 내용에 대응한 전용 복호 처리부(ex1002)와, 본 발명의 일양태에 관련된 동화상 복호 방법과 다른 종래 규격의 동화상 복호 방법에 공통되는 처리 내용에 대응한 공용 복호 처리부(ex1003)를 이용하는 구성으로 하고 있다. 여기에서, 전용 복호 처리부(ex1001, ex1002)는, 반드시 본 발명의 일양태, 또는, 다른 종래 규격의 특유의 처리 내용에 특화한 것이 아니라, 다른 범용 처리를 실행할 수 있는 것이어도 된다. 또한, 본 실시의 형태의 구성을, LSI(ex500)로 실장하는 것도 가능하다.
이와 같이, 본 발명의 일양태에 관련된 동화상 복호 방법과, 종래 규격의 동화상 복호 방법에서 공통되는 처리 내용에 대하여, 복호 처리부를 공유함으로써, LSI의 회로 규모를 작게 하고, 또한, 비용을 저감하는 것이 가능하다.
<산업상의 이용 가능성>
본 발명에 관련된 동화상 부호화 방법 및 동화상 복호 방법은, 모든 멀티미디어 데이터에 적용할 수 있고, 움직임 벡터의 크기 범위를 제한하는 경우의 처리 부하를 삭감하면서도 부호화 효율을 유지하는 것이 가능하고, 예를 들면 휴대 전화, DVD 장치, 및 PC 등을 이용한 축적, 전송, 통신 등에 있어서의 동화상 부호화 방법 및 동화상 복호 방법으로서 유용하다.
100 : 동화상 부호화 장치 101 : 차분부
102 : 변환부 103 : 양자화부
104, 202 : 역양자화부 105, 203 : 역변환부
106, 204 : 가산부 107, 205 : 인트라·인터 예측부
108 : 부호화 제어부 109, 207 : 메모리
110 : 엔트로피 부호화부 200 : 동화상 복호 장치
201 : 엔트로피 복호부 206 : 복호 제어부
102 : 변환부 103 : 양자화부
104, 202 : 역양자화부 105, 203 : 역변환부
106, 204 : 가산부 107, 205 : 인트라·인터 예측부
108 : 부호화 제어부 109, 207 : 메모리
110 : 엔트로피 부호화부 200 : 동화상 복호 장치
201 : 엔트로피 복호부 206 : 복호 제어부
Claims (8)
- 픽처를 블록마다 부호화하는 동화상 부호화 방법으로서,
리스트에, 현재 블록(Curr_Blk)의 하나 이상의 대응 블록의 후보 움직임 벡터를 추가하는 단계(S106)로서, 대응 블록은 (ⅰ) 부호화 대상 현재 픽처에서 상기 현재 블록(Curr_Blk)에 공간적으로 인접한 이웃 블록(A, B) 또는 (ⅱ) 상기 현재 픽처와는 상이한 픽처(picNum 30X)에 포함된 코로케이티드(co-located) 블록(Col_Blk)인 것인, 추가하는 단계;
상기 리스트의 후보 움직임 벡터 중에서 상기 현재 블록(Curr_Blk)의 부호화를 위한 후보 움직임 벡터를 선택하는 단계; 및
상기 선택된 후보 움직임 벡터를 사용하여 상기 현재 블록(Curr_Blk)을 부호화하는 단계(S107)를 포함하고,
상기 후보 움직임 벡터를 추가하는 단계는, 또한:
상기 코로케이티드 블록(Col_Blk)의 움직임 벡터를 스케일링함으로써 스케일링된 움직임 벡터를 계산하는 단계(S203)를 포함하고;
상기 코로케이티드 블록(Col_Blk)의 후보 움직임 벡터를 추가하는 것은, 또한:
상기 스케일링된 움직임 벡터의 수평 성분 및 상기 스케일링된 움직임 벡터의 수직 성분의 크기가, 미리 결정된 고정된 크기 범위 내에 있는지 아닌지 여부를 결정하는 단계로서, 상기 고정된 크기 범위는 -32768 내지 +32767 사이인 것인, 결정하는 단계;
상기 스케일링된 움직임 벡터의 수평 성분 및 상기 스케일링된 움직임 벡터의 수직 성분의 크기가 상기 고정된 크기 범위 내에 있을 때, 상기 스케일링된 움직임 벡터를 상기 코로케이티드 블록(Col_Blk)의 후보 움직임 벡터로서 상기 리스트에 추가하는 단계(S304); 및
상기 스케일링된 움직임 벡터의 수평 성분 및 상기 스케일링된 움직임 벡터의 수직 성분 중 적어도 하나의 크기가 상기 고정된 크기 범위 내에 있지 않을 때, 클립된 움직임 벡터를 상기 코로케이티드 블록(Col_Blk)의 후보 움직임 벡터로서 상기 리스트에 추가하는 단계(S401)로서, 상기 클립된 움직임 벡터는 상기 스케일링된 움직임 벡터의 수평 성분 및 상기 스케일링된 움직임 벡터의 수직 성분 중 적어도 하나를 상기 고정된 크기 범위 내의 크기를 갖도록 클립함으로써 생성되는 것인, 추가하는 단계
를 포함하는 것을 특징으로 하는 것인, 동화상 부호화 방법. - 청구항 1에 있어서,
상기 리스트는, 상기 이웃 블록(A, B) 또는 코로케이티드 블록(Col_Blk)의 후보 움직임 벡터, 및 상기 이웃 블록(A, B) 또는 코로케이티드 블록(Col_Blk)에 의해 참조된 픽처를 특정하기 위한 특정 정보를 열거하는 머지(merging) 후보 리스트이고,
상기 추가하는 단계(S106)에서는, 상기 이웃 블록(A, B) 또는 코로케이티드 블록(Col_Blk)의 후보 움직임 벡터에 더해, 상기 특정 정보가 상기 머지 후보 리스트에 추가되고,
상기 선택하는 단계에서는, 상기 머지 후보 리스트의 후보 움직임 벡터 중에서, 상기 현재 블록(Curr_Blk)의 부호화를 위해서 사용하는 후보 움직임 벡터 및 특정 정보가 선택되고,
상기 부호화하는 단계(S107)에서는, 상기 선택된 후보 움직임 벡터 및 선택된 특정 정보를 사용하여 상기 현재 블록(Curr_Blk)의 예측 픽처를 생성함으로써 상기 현재 블록(Curr_Blk)이 부호화되는 것인, 동화상 부호화 방법. - 청구항 1 또는 2에 있어서,
상기 리스트는, 움직임 벡터 예측자 후보 리스트이고,
상기 선택하는 단계에서는, 상기 움직임 벡터 예측자 후보 리스트로부터, 상기 현재 블록(Curr_Blk)의 부호화를 위해서 사용하는 움직임 벡터 예측자가 선택되고,
상기 부호화하는 단계(S107)에서는, 상기 선택하는 단계에서 선택된 움직임 벡터 예측자를 사용하여 상기 현재 블록(Curr_Blk)의 움직임 벡터를 부호화하는 것을 포함하는 상기 현재 블록(Curr_Blk)의 부호화가 수행되는 것인, 동화상 부호화 방법. - 픽처를 블록마다 복호하는 동화상 복호 방법으로서,
리스트에, 현재 블록(Curr_Blk)의 하나 이상의 대응 블록의 후보 움직임 벡터를 추가하는 단계(S505)로서, 대응 블록은 (ⅰ) 부호화 대상 현재 픽처에서 상기 현재 블록(Curr_Blk)에 공간적으로 인접한 이웃 블록(A, B) 또는 (ⅱ) 상기 현재 픽처와는 상이한 픽처에 포함된 코로케이티드(co-located) 블록(Col_Blk)인 것인, 추가하는 단계;
상기 리스트의 후보 움직임 벡터 중에서 상기 현재 블록의 부호화를 위해 사용되는 후보 움직임 벡터를 선택하는 단계(S507, S508); 및
상기 선택된 후보 움직임 벡터를 사용하여 상기 현재 블록을 복호하는 단계(S509)를 포함하고,
코로케이티드 블록(Col_Blk)의 후보 움직임 벡터를 추가하는 것(S505)은, 또한:
상기 코로케이티드 블록(Col_Blk)의 움직임 벡터를 스케일링함으로써 스케일링된 움직임 벡터를 계산하는 단계(S503)를 포함하고;
상기 코로케이티드 블록(Col_Blk)의 후보 움직임 벡터를 추가하는 것은 또한:
상기 스케일링된 움직임 벡터의 크기가, 미리 결정된 고정된 크기 범위 내에 있는지 아닌지 여부를 결정하는 단계로서, 상기 고정된 크기 범위는 -32768 내지 +32767 사이인 것인, 결정하는 단계;
상기 스케일링된 움직임 벡터의 크기가 상기 고정된 크기 범위 내에 있을 때, 상기 스케일링된 움직임 벡터를 상기 코로케이티드 블록(Col_Blk)의 후보 움직임 벡터로서 상기 리스트에 추가하는 단계; 및
상기 스케일링된 움직임 벡터의 크기가 상기 고정된 크기 범위 내에 있지 않을 때, 클립된 움직임 벡터를 상기 코로케이티드 블록(Col_Blk)의 후보 움직임 벡터로서 상기 리스트에 추가하는 단계로서, 상기 클립된 움직임 벡터는 상기 스케일링된 움직임 벡터를 상기 고정된 크기 범위 내의 크기를 갖도록 클립함으로써 생성되는 것인, 추가하는 단계
를 포함하는 것을 특징으로 하는 것인, 동화상 복호 방법. - 청구항 4에 있어서,
상기 리스트는, 상기 이웃 블록(A, B) 또는 코로케이티드 블록(Col_Blk)의 후보 움직임 벡터, 및 상기 이웃 블록(A, B) 또는 코로케이티드 블록(Col_Blk)에 의해 참조된 픽처를 특정하기 위한 특정 정보를 열거하는 머지 후보 리스트이고,
상기 추가하는 단계(S505)에서는, 상기 이웃 블록(A, B) 또는 코로케이티드 블록(Col_Blk)의 후보 움직임 벡터에 더해, 상기 특정 정보가 상기 머지 후보 리스트에 추가되고,
상기 선택하는 단계(S507, S508)에서는, 상기 머지 후보 리스트의 후보 움직임 벡터 중에서, 상기 현재 블록의 부호화를 위해서 사용하는 후보 움직임 벡터 및 특정 정보가 선택되고,
상기 복호하는 단계(S509)에서는, 상기 선택된 후보 움직임 벡터 및 선택된 특정 정보를 사용하여 상기 현재 블록의 예측 픽처를 생성함으로써 상기 현재 블록이 복호되는 것인, 동화상 복호 방법. - 청구항 4 또는 5에 있어서,
상기 리스트는, 움직임 벡터 예측자 후보 리스트이고,
상기 선택하는 단계에서는, 상기 움직임 벡터 예측자 후보 리스트로부터, 상기 현재 블록을 복호하기 위해서 사용하는 움직임 벡터 예측자가 선택되고,
상기 복호하는 단계에서는, 상기 선택하는 단계에서 선택된 움직임 벡터 예측자를 사용하여 상기 현재 블록의 움직임 벡터를 복호하는 것을 포함하는 상기 현재 블록의 복호가 수행되는 것인, 동화상 복호 방법. - 픽처를 블록마다 부호화하는 동화상 부호화 장치로서, 상기 장치는:
리스트에, 현재 블록(Curr_Blk)의 하나 이상의 대응 블록의 후보 움직임 벡터를 추가하고 - 대응 블록은 (ⅰ) 부호화 대상 현재 픽처에서 상기 현재 블록(Curr_Blk)에 공간적으로 인접한 이웃 블록(A, B) 또는 (ⅱ) 상기 현재 픽처와는 상이한 픽처에 포함된 코로케이티드(co-located) 블록(Col_Blk)인 것임 -;
상기 리스트의 움직임 벡터 중에서 상기 현재 블록의 부호화를 위한 후보 움직임 벡터를 선택하고;
상기 선택된 후보 움직임 벡터를 사용하여 상기 현재 블록을 부호화하고,
(ⅰ) 코로케이티드 블록(Col_Blk)의 움직임 벡터를 스케일링함으로써 스케일링된 움직임 벡터를 계산하도록 구성된 회로를 포함하고,
상기 회로는 또한,
(ⅱ) 상기 스케일링된 움직임 벡터의 크기가, 미리 결정된 고정된 크기 범위 내에 있는지 아닌지 여부를 결정하고 - 상기 고정된 크기 범위는 -32768 내지 +32767 사이인 것임 - ;
(ⅲ) 상기 스케일링된 움직임 벡터의 크기가 상기 고정된 크기 범위 내에 있을 때, 상기 스케일링된 움직임 벡터를 상기 코로케이티드 블록(Col_Blk)의 후보 움직임 벡터로서 상기 리스트에 추가하고;
(ⅳ) 상기 스케일링된 움직임 벡터의 크기가 상기 고정된 크기 범위 내에 있지 않을 때, 클립된 움직임 벡터를 상기 코로케이티드 블록(Col_Blk)의 후보 움직임 벡터로서 상기 리스트에 추가하도록 구성되고,
상기 클립된 움직임 벡터는 상기 스케일링된 움직임 벡터를 상기 고정된 크기 범위 내의 크기를 갖도록 클립함으로써 생성되는 것인, 동화상 부호화 장치. - 픽처를 블록마다 복호하는 동화상 복호 장치로서, 상기 장치는:
리스트에, 현재 블록(Curr_Blk)의 하나 이상의 대응 블록의 후보 움직임 벡터를 추가하고 - 대응 블록은 (ⅰ) 부호화 대상 현재 픽처에서 상기 현재 블록(Curr_Blk)에 공간적으로 인접한 이웃 블록(A, B) 또는 (ⅱ) 상기 현재 픽처와는 상이한 픽처에 포함된 코로케이티드(co-located) 블록(Col_Blk)인 것임 - ;
상기 리스트의 움직임 벡터 중에서 상기 현재 블록(Curr_Blk)의 부호화를 위해 사용되는 후보 움직임 벡터를 선택하고;
상기 선택된 후보 움직임 벡터를 사용하여 상기 현재 블록(Curr_Blk)을 복호하고;
(ⅰ) 상기 코로케이티드 블록(Col_Blk)의 움직임 벡터를 스케일링함으로써 스케일링된 움직임 벡터를 계산하도록 구성되는 회로를 포함하고;
상기 회로는 또한,
(ⅱ) 상기 스케일링된 움직임 벡터의 크기가, 미리 결정된 고정된 크기 범위 내에 있는지 아닌지 여부를 결정하고 - 상기 고정된 크기 범위는 -32768 내지 +32767 사이인 것임 - ;
(ⅲ) 상기 스케일링된 움직임 벡터의 크기가 상기 고정된 크기 범위 내에 있을 때, 상기 스케일링된 움직임 벡터를 상기 코로케이티드 블록(Col_Blk)의 후보 움직임 벡터로서 상기 리스트에 추가하고;
(ⅳ) 상기 스케일링된 움직임 벡터의 크기가 상기 고정된 크기 범위 내에 있지 않을 때, 클립된 움직임 벡터를 상기 코로케이티드 블록(Col_Blk)의 후보 움직임 벡터로서 상기 리스트에 추가하도록 구성되고,
상기 클립된 움직임 벡터는 상기 스케일링된 움직임 벡터를 상기 고정된 크기 범위 내의 크기를 갖도록 클립함으로써 생성되는 것인, 동화상 복호 장치.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161576501P | 2011-12-16 | 2011-12-16 | |
US61/576,501 | 2011-12-16 | ||
PCT/JP2012/007895 WO2013088697A1 (ja) | 2011-12-16 | 2012-12-11 | 動画像符号化方法、動画像符号化装置、動画像復号方法、動画像復号装置、および動画像符号化復号装置 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020147000301A Division KR102072831B1 (ko) | 2011-12-16 | 2012-12-11 | 동화상 부호화 방법, 동화상 부호화 장치, 동화상 복호 방법, 동화상 복호 장치, 및 동화상 부호화 복호장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200015798A true KR20200015798A (ko) | 2020-02-12 |
KR102211673B1 KR102211673B1 (ko) | 2021-02-03 |
Family
ID=48612172
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020207002677A KR102211673B1 (ko) | 2011-12-16 | 2012-12-11 | 동화상 부호화 방법, 동화상 부호화 장치, 동화상 복호 방법, 동화상 복호 장치, 및 동화상 부호화 복호장치 |
KR1020147000301A KR102072831B1 (ko) | 2011-12-16 | 2012-12-11 | 동화상 부호화 방법, 동화상 부호화 장치, 동화상 복호 방법, 동화상 복호 장치, 및 동화상 부호화 복호장치 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020147000301A KR102072831B1 (ko) | 2011-12-16 | 2012-12-11 | 동화상 부호화 방법, 동화상 부호화 장치, 동화상 복호 방법, 동화상 복호 장치, 및 동화상 부호화 복호장치 |
Country Status (10)
Country | Link |
---|---|
US (11) | US8867620B2 (ko) |
EP (1) | EP2793466A4 (ko) |
JP (4) | JP5364219B1 (ko) |
KR (2) | KR102211673B1 (ko) |
CN (1) | CN103650507B (ko) |
CA (1) | CA2841058C (ko) |
MX (2) | MX2013014733A (ko) |
RU (1) | RU2628226C2 (ko) |
TW (1) | TWI581619B (ko) |
WO (1) | WO2013088697A1 (ko) |
Families Citing this family (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9762904B2 (en) * | 2011-12-22 | 2017-09-12 | Qualcomm Incorporated | Performing motion vector prediction for video coding |
US9800869B2 (en) * | 2012-06-15 | 2017-10-24 | Google Technology Holdings LLC | Method and apparatus for efficient slice header processing |
US9392268B2 (en) * | 2012-09-28 | 2016-07-12 | Qualcomm Incorporated | Using base layer motion information |
ES2687768T3 (es) * | 2013-01-16 | 2018-10-29 | Telefonaktiebolaget Lm Ericsson (Publ) | Descodificador y codificador para codificar una secuencia de vídeo |
JP5983430B2 (ja) * | 2013-01-25 | 2016-08-31 | 富士通株式会社 | 動画像符号化装置、動画像符号化方法及び動画像復号装置ならびに動画像復号方法 |
US10009629B2 (en) | 2013-10-11 | 2018-06-26 | Sony Corporation | Video coding system with search range and method of operation thereof |
US10003818B2 (en) | 2013-10-11 | 2018-06-19 | Sony Corporation | Video coding system with intra prediction mechanism and method of operation thereof |
US9749642B2 (en) | 2014-01-08 | 2017-08-29 | Microsoft Technology Licensing, Llc | Selection of motion vector precision |
US9774881B2 (en) * | 2014-01-08 | 2017-09-26 | Microsoft Technology Licensing, Llc | Representing motion vectors in an encoded bitstream |
CN105874789B (zh) * | 2014-01-29 | 2019-10-29 | 联发科技股份有限公司 | 利用自适应运动向量精度的方法 |
MX2016016867A (es) * | 2014-06-18 | 2017-03-27 | Samsung Electronics Co Ltd | Metodo de codificacion de video inter-capa para compensar diferencia de luminancia y dispositivo para ello, y metodo de decodificacion de video y dispositivo para ello. |
KR20180085714A (ko) * | 2015-12-17 | 2018-07-27 | 삼성전자주식회사 | 머지 후보 리스트를 이용한 비디오 복호화 방법 및 비디오 복호화 장치 |
WO2017135151A1 (ja) * | 2016-02-01 | 2017-08-10 | シャープ株式会社 | 予測画像生成装置、動画像復号装置、および動画像符号化装置 |
CN116567212A (zh) | 2016-08-11 | 2023-08-08 | Lx 半导体科技有限公司 | 编码/解码设备以及发送图像数据的设备 |
WO2018210315A1 (en) * | 2017-05-18 | 2018-11-22 | Mediatek Inc. | Method and apparatus of motion vector constraint for video coding |
US11272207B2 (en) | 2017-06-12 | 2022-03-08 | Futurewei Technologies, Inc. | Selection and signaling of motion vector (MV) precisions |
US20180376148A1 (en) | 2017-06-23 | 2018-12-27 | Qualcomm Incorporated | Combination of inter-prediction and intra-prediction in video coding |
WO2020060351A1 (ko) * | 2018-09-21 | 2020-03-26 | 엘지전자 주식회사 | 움직임 벡터를 도출하는 방법 및 그 장치 |
CN111083491B (zh) | 2018-10-22 | 2024-09-20 | 北京字节跳动网络技术有限公司 | 细化运动矢量的利用 |
WO2020098644A1 (en) | 2018-11-12 | 2020-05-22 | Beijing Bytedance Network Technology Co., Ltd. | Bandwidth control methods for inter prediction |
CN117319644A (zh) | 2018-11-20 | 2023-12-29 | 北京字节跳动网络技术有限公司 | 基于部分位置的差计算 |
WO2020122062A1 (en) * | 2018-12-10 | 2020-06-18 | Sharp Kabushiki Kaisha | Systems and methods for signaling reference pictures in video coding |
CN113196771B (zh) * | 2018-12-21 | 2023-12-22 | 北京字节跳动网络技术有限公司 | 基于运动矢量精度的运动矢量范围 |
JP7189234B2 (ja) * | 2018-12-21 | 2022-12-13 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 符号化装置及び復号装置 |
BR112021012418A2 (pt) | 2018-12-28 | 2021-09-08 | Jvckenwood Corporation | Dispositivo de codificação de imagem, método de codificação de imagem, dispositivo de decodificação de imagem e método de decodificação de imagem |
BR112021012479A2 (pt) | 2018-12-28 | 2021-09-08 | Jvckenwood Corporation | Dispositivo de codificação de imagem em movimento, método de codificação de imagem em movimento, programa de codificação de imagem em movimento, dispositivo de decodificação de imagem em movimento, método de decodificação de imagem em movimento e programa de decodificação de imagem em movimento |
US11089325B2 (en) * | 2019-02-08 | 2021-08-10 | Qualcomm Incorporated | Constrained affine motion inheritance for video coding |
WO2020177755A1 (en) | 2019-03-06 | 2020-09-10 | Beijing Bytedance Network Technology Co., Ltd. | Usage of converted uni-prediction candidate |
AR118250A1 (es) * | 2019-03-08 | 2021-09-22 | Jvckenwood Corp | Dispositivos, métodos y programas de codificación y decodificación de imágenes en movimiento |
RU2767973C1 (ru) * | 2019-03-08 | 2022-03-22 | ДжейВиСиКЕНВУД Корпорейшн | Устройство для кодирования видео, способ кодирования видео, устройство для декодирования видео и способ декодирования видео |
US20230224472A1 (en) * | 2022-01-12 | 2023-07-13 | Tencent America LLC | Motion vector restriction for out-of-frame boundary conditions |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7206346B2 (en) * | 1997-06-25 | 2007-04-17 | Nippon Telegraph And Telephone Corporation | Motion vector predictive encoding method, motion vector decoding method, predictive encoding apparatus and decoding apparatus, and storage media storing motion vector predictive encoding and decoding programs |
JP2914448B2 (ja) * | 1997-06-25 | 1999-06-28 | 日本電信電話株式会社 | 動きベクトル予測符号化方法および動きベクトル復号方法、予測符号化装置および復号装置、並びに、動きベクトルの予測符号化プログラムおよび復号プログラムを記録した記録媒体 |
US6539059B1 (en) * | 2000-03-02 | 2003-03-25 | Sun Microsystems, Inc. | Apparatus and method for efficiently scalable digital video decoding |
US6965645B2 (en) * | 2001-09-25 | 2005-11-15 | Microsoft Corporation | Content-based characterization of video frame sequences |
EP1827026A1 (en) * | 2002-01-18 | 2007-08-29 | Kabushiki Kaisha Toshiba | Video decoding method and apparatus |
KR100506864B1 (ko) * | 2002-10-04 | 2005-08-05 | 엘지전자 주식회사 | 모션벡터 결정방법 |
US8064520B2 (en) | 2003-09-07 | 2011-11-22 | Microsoft Corporation | Advanced bi-directional predictive coding of interlaced video |
RU2368095C1 (ru) * | 2005-07-22 | 2009-09-20 | Мицубиси Электрик Корпорейшн | Кодер изображения и декодер изображения, способ кодирования изображения и способ декодирования изображения, программа кодирования изображения и программа декодирования изображения и компьютерно-считываемый носитель записи, на котором записана программа кодирования изображения, и компьютерно-считываемый носитель записи, на котором записана программа декодирования изображения |
US9113194B2 (en) * | 2007-12-19 | 2015-08-18 | Arris Technology, Inc. | Method and system for interleaving video and data for transmission over a network at a selected bit rate |
BRPI0922119A2 (pt) | 2008-11-07 | 2016-01-05 | Mitsubishi Eletric Corp | dispositivos de codificação e de decodificação de imagem que dividem uma pluralidade de imagens paradas que compõem um sinal de video |
US8885728B2 (en) * | 2009-10-13 | 2014-11-11 | General Instrument Corporation | Decoding apparatus for a set-top box |
US9137544B2 (en) * | 2010-11-29 | 2015-09-15 | Mediatek Inc. | Method and apparatus for derivation of mv/mvp candidate for inter/skip/merge modes |
US9247249B2 (en) * | 2011-04-20 | 2016-01-26 | Qualcomm Incorporated | Motion vector prediction in video coding |
US9762904B2 (en) * | 2011-12-22 | 2017-09-12 | Qualcomm Incorporated | Performing motion vector prediction for video coding |
-
2012
- 2012-12-11 KR KR1020207002677A patent/KR102211673B1/ko active IP Right Grant
- 2012-12-11 MX MX2013014733A patent/MX2013014733A/es active IP Right Grant
- 2012-12-11 JP JP2013522755A patent/JP5364219B1/ja active Active
- 2012-12-11 KR KR1020147000301A patent/KR102072831B1/ko active IP Right Grant
- 2012-12-11 MX MX2015006553A patent/MX340433B/es unknown
- 2012-12-11 CN CN201280033794.0A patent/CN103650507B/zh active Active
- 2012-12-11 WO PCT/JP2012/007895 patent/WO2013088697A1/ja active Application Filing
- 2012-12-11 EP EP12857032.2A patent/EP2793466A4/en not_active Ceased
- 2012-12-11 RU RU2013158874A patent/RU2628226C2/ru active
- 2012-12-11 CA CA2841058A patent/CA2841058C/en active Active
- 2012-12-12 US US13/712,041 patent/US8867620B2/en active Active
- 2012-12-12 TW TW101146859A patent/TWI581619B/zh active
-
2013
- 2013-09-06 JP JP2013185761A patent/JP5432410B2/ja active Active
- 2013-09-06 JP JP2013185760A patent/JP6025061B2/ja active Active
- 2013-10-21 US US14/058,636 patent/US8885722B2/en active Active
-
2014
- 2014-07-30 US US14/446,420 patent/US8917773B2/en active Active
- 2014-09-19 US US14/490,910 patent/US9094682B2/en active Active
-
2015
- 2015-06-03 US US14/729,321 patent/US20150271519A1/en not_active Abandoned
-
2016
- 2016-09-29 JP JP2016191545A patent/JP6210423B2/ja active Active
- 2016-11-08 US US15/345,920 patent/US10321133B2/en active Active
-
2019
- 2019-04-23 US US16/392,565 patent/US10757418B2/en active Active
-
2020
- 2020-08-24 US US17/000,920 patent/US11356669B2/en active Active
-
2022
- 2022-06-06 US US17/833,649 patent/US11711521B2/en active Active
-
2023
- 2023-05-31 US US18/203,709 patent/US12015782B2/en active Active
-
2024
- 2024-05-09 US US18/659,460 patent/US20240292000A1/en active Pending
Non-Patent Citations (3)
Title |
---|
Benjamin Bross ET AL., "WD4: Working Draft 4 of High-Efficiency Video Coding", Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 6th Meeting, 2011.10.04.,* * |
비특허 문헌 1 : ITU-T H. 264 03/2010 |
비특허 문헌 2 : WD4: Working Draft 4 of High-Efficiency Video Coding Joint Collaborative Team on Video Coding(JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG 11 6th Meeting:Torino, IT, 14-22 July, 2011, Document:JCTVC-F803_d2 |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230105128A1 (en) | Video encoding method, video encoding apparatus, video decoding method, video decoding apparatus, and video encoding/decoding apparatus | |
JP6210423B2 (ja) | 復号方法、および、復号装置 | |
JP2021180499A (ja) | 動画像復号方法及び動画像符号化方法 | |
EP2675167B1 (en) | Moving picture encoding method, moving picture encoding device, moving picture decoding method, moving picture decoding device, and moving picture encoding decoding device | |
KR102050761B1 (ko) | 화상 복호 방법 및 화상 복호 장치 | |
KR101913086B1 (ko) | 동화상 부호화 방법 및 동화상 복호화 방법 | |
EP3413567B1 (en) | Video decoding method, and video decoder | |
KR20140010068A (ko) | 동화상 부호화 방법, 동화상 부호화 장치, 동화상 복호화 방법, 동화상 복호화 장치, 및 동화상 부호화 복호화 장치 | |
JP6643655B2 (ja) | 動画像符号化方法、動画像符号化装置、動画像復号方法、および、動画像復号装置 | |
KR20140018891A (ko) | 동화상 부호화 방법, 동화상 복호 방법, 동화상 부호화 장치, 동화상 복호 장치 및 동화상 부호화 복호 장치 | |
JP5883431B2 (ja) | 画像符号化方法および画像復号化方法 | |
KR102080449B1 (ko) | 움직임 벡터 산출 방법, 화상 부호화 방법, 화상 복호 방법, 움직임 벡터 산출 장치 및 화상 부호화 복호 장치 | |
WO2012073481A1 (ja) | 動画像符号化方法および動画像復号化方法 |
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 |