KR20160058967A - 복호 장치 및 복호 방법 - Google Patents
복호 장치 및 복호 방법 Download PDFInfo
- Publication number
- KR20160058967A KR20160058967A KR1020167012309A KR20167012309A KR20160058967A KR 20160058967 A KR20160058967 A KR 20160058967A KR 1020167012309 A KR1020167012309 A KR 1020167012309A KR 20167012309 A KR20167012309 A KR 20167012309A KR 20160058967 A KR20160058967 A KR 20160058967A
- Authority
- KR
- South Korea
- Prior art keywords
- unit
- information
- syntax
- motion
- parameter
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 73
- 230000001172 regenerating effect Effects 0.000 claims 2
- 238000010586 diagram Methods 0.000 description 72
- 230000015654 memory Effects 0.000 description 68
- 238000013139 quantization Methods 0.000 description 63
- 238000012545 processing Methods 0.000 description 49
- 230000009466 transformation Effects 0.000 description 32
- 239000013598 vector Substances 0.000 description 30
- 230000002457 bidirectional effect Effects 0.000 description 25
- 230000008569 process Effects 0.000 description 24
- 230000006870 function Effects 0.000 description 18
- 238000012795 verification Methods 0.000 description 18
- 230000004048 modification Effects 0.000 description 17
- 238000012986 modification Methods 0.000 description 17
- 230000006978 adaptation Effects 0.000 description 14
- 238000011156 evaluation Methods 0.000 description 12
- 230000002123 temporal effect Effects 0.000 description 12
- 230000008859 change Effects 0.000 description 9
- FVTCRASFADXXNN-SCRDCRAPSA-N flavin mononucleotide Chemical compound OP(=O)(O)OC[C@@H](O)[C@@H](O)[C@@H](O)CN1C=2C=C(C)C(C)=CC=2N=C2C1=NC(=O)NC2=O FVTCRASFADXXNN-SCRDCRAPSA-N 0.000 description 8
- 230000014509 gene expression Effects 0.000 description 6
- 238000013507 mapping Methods 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 5
- 239000000470 constituent Substances 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000005562 fading Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000006467 substitution reaction Methods 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/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/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
- H04N19/126—Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
-
- 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/129—Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
-
- 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
-
- 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
-
- 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/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/186—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 a colour or a chrominance component
-
- 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/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
- H04N19/39—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability involving multiple description coding [MDC], i.e. with separate layers being structured as independently decodable descriptions of input picture data
-
- 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/46—Embedding additional information in the video signal during the compression process
- H04N19/463—Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
-
- 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/573—Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
-
- 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
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic 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/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/94—Vector quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2347—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving video stream encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
- H04N21/2389—Multiplex stream processing, e.g. multiplex stream encrypting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/438—Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
- H04N21/4385—Multiplex stream processing, e.g. multiplex stream decrypting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4405—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video stream decryption
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Error Detection And Correction (AREA)
- Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
Abstract
실시형태에 따른 암호화 방법은 인덱스 생성 단계와 암호화 단계를 포함한다. 인덱스 생성 단계는 제1 인덱스에 포함된 하나 이상의 참조 화상의 번호와 제2 인덱스에 포함된 하나 이상의 참조 화상의 번호가 동일 참조 화상을 포함하지 않도록 조합으로 분류된 공통 인덱스를 생성한다. 상기 제1 인덱스는 제1 참조 화상에 의해 참조되는 하나 이상의 참조 화상을 포함하는 조합을 표시하도록 설정된다. 상기 제2 인덱스는 제2 참조 화상에 의해 참조되는 하나 이상의 참조 화상을 포함하는 조합을 표시하도록 설정된다. 상기 제1 인덱스 및 상기 제2 인덱스에 포함된 참조 화상들의 번호는 미리 정해진 순서로 스캔된다. 암호화 단계는 상기 공통 인덱스를 암호화한다.
Description
본 발명의 실시형태는 암호화(encoding) 방법 및 복호 방법에 관한 것이다.
최근, 부호화 효율을 현저하게 개선한 화상 암호화 방법이 ITU-T(International Telecommunication Union Telecommunication Standardization Sector, 국제 전기통신 연합 전기통신 표준화 부문) 및 ISO(International Organization for Standardization, 국제 표준화 기구)/ IEC(International Electrotechnical Commission, 국제 전기기술 위원회)의 공동으로 ITU-T REC. H.264 및 ISO/IEC 14496-10(이하, "H.264"라고 부른다)으로서 권고되고 있다.
H.264에는 부호화 화상을 참조 화상으로서 이용하여 분수 정밀도의 모션(motion) 보상 예측을 행함으로써 시간 방향의 용장성을 제거하여 높은 부호화 효율을 달성하는 인터 예측(inter-prediction) 부호화 방식이 개시되어 있다.
또한, 페이드(fading) 또는 디졸브(dissolving) 효과를 포함한 동화상이 ISO/IEC MPEG(Moving Picture Experts Group, 동영상 전문가 그룹)-1, 2, 4에 따른 인터 예측 부호화 방식의 효율보다 더 높은 효율로 암호화되는 방식이 제안되고 있다. 이 방식에서는 시간 방향으로 명도의 변화를 예측하기 위한 프레임으로서 휘도 및 2개의 색차를 가진 입력 동화상에 대하여 분수 정밀도의 모션 보상 예측이 행해진다. 그 다음에, 참조 화상, 각각의 휘도 및 2개의 색차에 대한 가중 계수, 및 각각의 휘도 및 2개의 색차에 대한 오프셋의 조합을 표시하는 인덱스를 이용함으로써, 예측 화상이 가중 계수와 승산되고 오프셋이 그 결과치에 가산된다.
그러나, 전술한 종래의 관련 기술에서는 양방향 예측을 선택할 수 있는 양방향 예측 슬라이스에 있어서, 동일한 참조 화상을 갖지만 참조 화상 번호가 서로 다른 2개의 인덱스를 이용하여 가중 모션 보상이 수행될 때, 동일한 값을 가진 인덱스가 2회 암호화되는 경우가 있고, 따라서 부호화 효율이 감소하는 경우가 있다. 본 발명의 목적은 부호화 효율을 개선할 수 있는 암호화 방법 및 복호 방법을 제공하는 것이다.
실시형태에 따른 암호화(encoding) 장치는 인덱스 설정부와 암호화부를 포함한다. 인덱스 설정부는 제1 인덱스 및 제2 인덱스에 포함된 하나 이상의 참조 화상의 참조 인덱스들이 동일 참조 화상을 포함하지 않도록 미리 정해진 스캔 순서에 따라 조합으로 정렬되는 공통 인덱스를 생성한다. 상기 제1 인덱스는 제1 참조 화상에 의해 참조되는 하나 이상의 참조 화상의 조합을 표시한다. 상기 제2 인덱스는 제2 참조 화상에 의해 참조되는 하나 이상의 참조 화상의 조합을 표시한다. 암호화부는 공통 인덱스를 암호화한다.
도 1은 제1 실시형태에 따른 암호화(encoding) 장치의 예를 보인 블록도이다.
도 2는 제1 실시형태에 따른 화소 블록의 예측 부호화 순서의 예를 보인 설명도이다.
도 3a는 제1 실시형태에 따른 코딩 트리 블록의 사이즈 예를 보인 도이다.
도 3b는 제1 실시형태에 따른 코딩 트리 블록의 구체적인 예를 보인 도이다.
도 3c는 제1 실시형태에 따른 코딩 트리 블록의 다른 구체적인 예를 보인 도이다.
도 3d는 제1 실시형태에 따른 코딩 트리 블록의 다른 구체적인 예를 보인 도이다.
도 4는 제1 실시형태에 따른 예측 화상 생성부의 예를 보인 블록도이다.
도 5는 제1 실시형태에 따른 양방향 예측에 있어서 모션 보상 예측을 위한 모션 벡터들 간의 관계의 예를 보인 도이다.
도 6은 제1 실시형태에 따른 복수 프레임 모션 보상부의 예를 보인 블록도이다.
도 7은 제1 실시형태에 따른 가중 계수의 고정 소수점 정밀도의 예를 보인 설명도이다.
도 8은 제1 실시형태에 따른 인덱스 설정부의 예를 보인 블록도이다.
도 9a는 제1 실시형태에 따른 WP 파라미터 정보의 예를 보인 도이다.
도 9b는 제1 실시형태에 따른 WP 파라미터 정보의 예를 보인 도이다.
도 10은 제1 실시형태에 따른 저지연 암호화(encoding) 구조에 있어서 암호화 순서 및 디스플레이 순서의 예를 보인 도이다.
도 11은 제1 실시형태에 따른 저지연 암호화 구조에 있어서 참조 화상과 참조 번호 간의 관계의 예를 보인 도이다.
도 12는 제1 실시형태에 따른 랜덤 액세스 암호화 구조에 있어서 암호화 순서와 디스플레이 순서의 예를 보인 도이다.
도 13은 제1 실시형태에 따른 랜덤 액세스 암호화 구조에 있어서 참조 화상과 참조 번호 간의 관계의 예를 보인 도이다.
도 14는 제1 실시형태에 따른 참조 화상의 리스트 번호와 참조 번호의 스캔 순서의 예를 보인 도이다.
도 15는 제1 실시형태에 따른 공통 리스트 변환 후의 WP 파라미터 정보의 예를 간략화하여 보인 도이다.
도 16은 제1 실시형태에 따른 공통 리스트 변환 후의 WP 파라미터 정보의 예를 간략화하여 보인 도이다.
도 17은 제1 실시형태에 따른 인덱스 정보 생성 처리의 예를 보인 흐름도이다.
도 18은 제1 실시형태에 따른 신택스의 예를 보인 도이다.
도 19는 제1 실시형태에 따른 픽쳐 파라미터 세트 신택스의 예를 보인 도이다.
도 20은 제1 실시형태에 따른 슬라이스 헤더 신택스를 보인 도이다.
도 21은 제1 실시형태에 따른 프레드 웨이트 테이블 신택스의 예를 보인 도이다.
도 22는 변형예에 따른 시퀀스 파라미터 세트 신택스의 예를 보인 도이다.
도 23은 변형예에 따른 어댑테이션 파라미터 세트 신택스의 예를 보인 도이다.
도 24는 변형예에 따른 프레드 웨이트 테이블 신택스의 예를 보인 도이다.
도 25는 제2 실시형태에 따른 인덱스 설정부의 구성 예를 보인 블록도이다.
도 26은 제2 실시형태에 따른 인덱스 정보 생성 처리의 예를 보인 흐름도이다.
도 27은 제2 실시형태에 따른 프레드 웨이트 테이블 신택스의 예를 보인 도이다.
도 28은 제3 실시형태에 따른 암호화(encoding) 장치의 구성 예를 보인 블록도이다.
도 29는 제3 실시형태에 따른 모션 정보 메모리의 상세한 예를 보인 도이다.
도 30a는 제3 실시형태에 따른 모션 정보 후보가 암호화 화소 블록에 대하여 도출되는 블록 위치의 예를 보인 도이다.
도 30b는 제3 실시형태에 따른 모션 정보 후보가 암호화 화소 블록에 대하여 도출되는 블록 위치의 예를 보인 도이다.
도 31은 제3 실시형태에 따른 복수의 모션 정보 후보의 화소 블록 위치와 화소 블록 위치 인덱스 간의 관계 예를 보인 도이다.
도 32는 제3 실시형태에 따른 MergeCandList에 대한 저장 처리의 예를 보인 흐름도이다.
도 33은 제3 실시형태에 따른 모션 정보의 저장 리스트의 예를 보인 도이다.
도 34는 제3 실시형태에 따른 저장 리스트에 모션 정보를 저장하는 방법의 예를 보인 흐름도이다.
도 35는 제3 실시형태에 따른 양방향 예측의 조합의 예를 보인 도이다.
도 36은 제3 실시형태에 따른 프레드 유닛 신택스의 예를 보인 도이다.
도 37은 제3 실시형태에 따른 MergeCandList에 대한 저장 처리의 다른 예를 보인 흐름도이다.
도 38은 제4 실시형태에 따른 복호 장치의 구성 예를 보인 블록도이다.
도 39는 제4 실시형태에 따른 인덱스 설정부의 구성 예를 보인 블록도이다.
도 40은 제5 실시형태에 따른 인덱스 설정부의 구성 예를 보인 블록도이다.
도 41은 제6 실시형태에 따른 복호 장치의 구성 예를 보인 블록도이다.
도 2는 제1 실시형태에 따른 화소 블록의 예측 부호화 순서의 예를 보인 설명도이다.
도 3a는 제1 실시형태에 따른 코딩 트리 블록의 사이즈 예를 보인 도이다.
도 3b는 제1 실시형태에 따른 코딩 트리 블록의 구체적인 예를 보인 도이다.
도 3c는 제1 실시형태에 따른 코딩 트리 블록의 다른 구체적인 예를 보인 도이다.
도 3d는 제1 실시형태에 따른 코딩 트리 블록의 다른 구체적인 예를 보인 도이다.
도 4는 제1 실시형태에 따른 예측 화상 생성부의 예를 보인 블록도이다.
도 5는 제1 실시형태에 따른 양방향 예측에 있어서 모션 보상 예측을 위한 모션 벡터들 간의 관계의 예를 보인 도이다.
도 6은 제1 실시형태에 따른 복수 프레임 모션 보상부의 예를 보인 블록도이다.
도 7은 제1 실시형태에 따른 가중 계수의 고정 소수점 정밀도의 예를 보인 설명도이다.
도 8은 제1 실시형태에 따른 인덱스 설정부의 예를 보인 블록도이다.
도 9a는 제1 실시형태에 따른 WP 파라미터 정보의 예를 보인 도이다.
도 9b는 제1 실시형태에 따른 WP 파라미터 정보의 예를 보인 도이다.
도 10은 제1 실시형태에 따른 저지연 암호화(encoding) 구조에 있어서 암호화 순서 및 디스플레이 순서의 예를 보인 도이다.
도 11은 제1 실시형태에 따른 저지연 암호화 구조에 있어서 참조 화상과 참조 번호 간의 관계의 예를 보인 도이다.
도 12는 제1 실시형태에 따른 랜덤 액세스 암호화 구조에 있어서 암호화 순서와 디스플레이 순서의 예를 보인 도이다.
도 13은 제1 실시형태에 따른 랜덤 액세스 암호화 구조에 있어서 참조 화상과 참조 번호 간의 관계의 예를 보인 도이다.
도 14는 제1 실시형태에 따른 참조 화상의 리스트 번호와 참조 번호의 스캔 순서의 예를 보인 도이다.
도 15는 제1 실시형태에 따른 공통 리스트 변환 후의 WP 파라미터 정보의 예를 간략화하여 보인 도이다.
도 16은 제1 실시형태에 따른 공통 리스트 변환 후의 WP 파라미터 정보의 예를 간략화하여 보인 도이다.
도 17은 제1 실시형태에 따른 인덱스 정보 생성 처리의 예를 보인 흐름도이다.
도 18은 제1 실시형태에 따른 신택스의 예를 보인 도이다.
도 19는 제1 실시형태에 따른 픽쳐 파라미터 세트 신택스의 예를 보인 도이다.
도 20은 제1 실시형태에 따른 슬라이스 헤더 신택스를 보인 도이다.
도 21은 제1 실시형태에 따른 프레드 웨이트 테이블 신택스의 예를 보인 도이다.
도 22는 변형예에 따른 시퀀스 파라미터 세트 신택스의 예를 보인 도이다.
도 23은 변형예에 따른 어댑테이션 파라미터 세트 신택스의 예를 보인 도이다.
도 24는 변형예에 따른 프레드 웨이트 테이블 신택스의 예를 보인 도이다.
도 25는 제2 실시형태에 따른 인덱스 설정부의 구성 예를 보인 블록도이다.
도 26은 제2 실시형태에 따른 인덱스 정보 생성 처리의 예를 보인 흐름도이다.
도 27은 제2 실시형태에 따른 프레드 웨이트 테이블 신택스의 예를 보인 도이다.
도 28은 제3 실시형태에 따른 암호화(encoding) 장치의 구성 예를 보인 블록도이다.
도 29는 제3 실시형태에 따른 모션 정보 메모리의 상세한 예를 보인 도이다.
도 30a는 제3 실시형태에 따른 모션 정보 후보가 암호화 화소 블록에 대하여 도출되는 블록 위치의 예를 보인 도이다.
도 30b는 제3 실시형태에 따른 모션 정보 후보가 암호화 화소 블록에 대하여 도출되는 블록 위치의 예를 보인 도이다.
도 31은 제3 실시형태에 따른 복수의 모션 정보 후보의 화소 블록 위치와 화소 블록 위치 인덱스 간의 관계 예를 보인 도이다.
도 32는 제3 실시형태에 따른 MergeCandList에 대한 저장 처리의 예를 보인 흐름도이다.
도 33은 제3 실시형태에 따른 모션 정보의 저장 리스트의 예를 보인 도이다.
도 34는 제3 실시형태에 따른 저장 리스트에 모션 정보를 저장하는 방법의 예를 보인 흐름도이다.
도 35는 제3 실시형태에 따른 양방향 예측의 조합의 예를 보인 도이다.
도 36은 제3 실시형태에 따른 프레드 유닛 신택스의 예를 보인 도이다.
도 37은 제3 실시형태에 따른 MergeCandList에 대한 저장 처리의 다른 예를 보인 흐름도이다.
도 38은 제4 실시형태에 따른 복호 장치의 구성 예를 보인 블록도이다.
도 39는 제4 실시형태에 따른 인덱스 설정부의 구성 예를 보인 블록도이다.
도 40은 제5 실시형태에 따른 인덱스 설정부의 구성 예를 보인 블록도이다.
도 41은 제6 실시형태에 따른 복호 장치의 구성 예를 보인 블록도이다.
이하에서는 첨부 도면을 참조하여 실시형태들을 구체적으로 설명한다. 이하에서 제시하는 각 실시형태에 따른 암호화 장치 및 복호 장치는 LSI(대규모 집적) 칩, DSP(디지털 신호 프로세서), 또는 FPGA(필드 프로그래머블 게이트 어레이)와 같은 하드웨어에 의해 구현될 수 있다. 또한, 이하에서 제시하는 각 실시형태에 따른 암호화 장치 및 복호 장치는 컴퓨터가 프로그램을 실행하게 함으로써, 다시 말하면 소프트웨어에 의해 구현될 수 있다. 이하에서 제시하는 설명에서, 용어 "화상"(image)은 "영상", "화소", "화상 신호", "픽쳐"(picture) 또는 "화상 데이터" 등의 용어로 적절히 교체될 수 있다.
제1 실시형태
제1 실시형태에서는 동화상을 암호화하는 암호화 장치에 대해 설명한다.
도 1은 제1 실시형태에 따른 암호화 장치(100)의 구성 예를 보인 블록도이다.
암호화 장치(100)는 입력 화상을 구성하는 각 프레임 또는 각 필드를 복수의 화소 블록으로 분할하고, 암호화 제어부(111)로부터 입력된 암호화 파라미터를 이용하여 상기 분할된 화소 블록의 예측 암호화를 수행하여 예측 화상을 생성한다. 그 다음에, 암호화 장치(100)는 복수의 화소 블록으로 분할된 입력 화상으로부터 예측 화상을 감산하여 예측 오차를 생성하고, 생성된 예측 오차에 대하여 직교 변환 및 양자화를 수행한 다음에 엔트로피 암호화를 행함으로써 암호화 데이터를 생성하며, 생성된 암호화 데이터를 출력한다.
암호화 장치(100)는 화소 블록의 블록 사이즈와 예측 화상 생성 방법 중 적어도 하나에 있어서 서로 다른 복수의 예측 모드를 선택적으로 적용함으로써 예측 암호화를 수행한다. 예측 화상 생성 방법은 암호화 대상 프레임 내에서 예측을 행하는 인트라 예측(intra-prediction)과 상이한 시점의 하나 이상의 참조 프레임을 이용하여 모션 보상 예측을 행하는 인터 예측(inter-prediction)을 포함한 2가지 유형으로 크게 나누어질 수 있다. 인트라 예측은 화면 내 예측, 프레임 내 예측 등으로도 불리고, 인터 예측은 화면 간 예측, 프레임 간 예측, 모션 보상 예측 등으로도 불린다.
도 2는 제1 실시형태에 따른 화소 블록의 예측 부호화 순서의 예를 보인 설명도이다. 도 2에 도시된 예에서, 암호화(encoding) 장치(100)는 화소 블록의 상부 좌측으로부터 하부 우측을 향하여 예측 암호화를 수행한다. 따라서, 암호화 처리 대상 프레임(f)에 있어서, 암호화 대상 화소 블록(c)의 좌측 및 상측에, 암호화가 완료된 화소 블록(p)들이 위치한다. 이하에서는 설명의 편의를 위해, 암호화 장치(100)가 도 2에 도시된 순서로 예측 암호화를 수행하는 것으로 가정하지만, 예측 암호화의 순서는 이것으로 제한되지 않는다.
화소 블록은 화상을 처리하는 단위를 나타내는 것이고, 예를 들면 M×N 사이즈를 가진 블록(여기에서, M과 N은 자연수이다), 코딩 트리 블록, 매크로 블록, 서브 블록, 1 화소 등이 상기 화소 블록에 대응한다. 이하에서 제시하는 설명에서는 기본적으로, 화소 블록이 코딩 트리 블록의 의미로서 사용되지만, 다른 의미로도 사용될 수 있다. 예를 들면, 프리딕션 유닛의 설명에서, 화소 블록은 프리딕션 유닛의 화소 블록의 의미로서 사용된다. 블록을 유닛 등으로 부르기도 한다. 예를 들면, 부호화 블록을 부호화 유닛이라고 부르기도 한다.
도 3a는 제1 실시형태에 따른 코딩 트리 블록의 사이즈의 예를 보인 도이다. 코딩 트리 블록은 전형적으로 도 3a에 도시한 것처럼 64×64의 화소 블록이다. 그러나, 코딩 트리 블록은 이것에 제한되지 않고 32×32의 화소 블록, 16×16의 화소 블록, 8×8의 화소 블록, 4×4의 화소 블록 등일 수도 있다. 여기에서 코딩 트리 블록은 정사각형이 아닐 수도 있고, 예를 들면 M×N 사이즈(여기에서 M≠N)의 화소 블록일 수도 있다.
도 3b 내지 도 3d는 제1 실시형태에 따른 코딩 트리 블록의 구체적인 예를 보인 도이다. 도 3b는 64×64(N=32)의 사이즈를 가진 코딩 트리 블록을 보인 것이다. 여기에서 N은 기준 코딩 트리 블록의 사이즈를 나타낸다. 코딩 트리 블록이 분할된 경우의 사이즈는 N으로서 정의되고, 코딩 트리 블록이 분할되지 않은 경우의 사이즈는 2N으로서 정의된다. 도 3c는 도 3b에 도시된 코딩 트리 블록을 사분목(quadtree)으로 분할함으로써 획득된 코딩 트리 블록을 보인 것이다. 도 3c에 도시된 바와 같이 코딩 트리 블록은 사분목 구조를 갖는다. 코딩 트리 블록이 분할된 경우에는, 도 3c에 도시된 것처럼, 분할 후의 4개의 화소 블록에 대하여 Z 스캔 순으로 번호가 부여된다.
또한, 코딩 트리 블록은 1개의 사분목의 번호 내에서, 다시 사분목으로 분할될 수 있다. 따라서, 코딩 트리 블록은 계층 방식으로 분할될 수 있다. 그러한 경우에, 분할의 깊이는 "깊이"(Depth)로서 정의된다. 도 3d는 도 3b에 도시된 코딩 트리 블록을 사분목으로 분할함으로써 획득된 코딩 트리 블록 중 하나를 보인 것이고, 그 블록 사이즈는 32×32(N=16)이다. 도 3b에 도시된 코딩 트리 블록의 깊이는 "0"이고, 도 3d에 도시된 코딩 트리 블록의 깊이는 "1"이다. 또한, 최대 유닛을 가진 코딩 트리 블록은 큰 코딩 트리 블록이라고 불리고, 입력 화상 신호는 이 단위로 래스터 스캔 순으로 암호화된다.
이하에서 제시하는 설명에서는 입력 화상의 암호화 대상 블록 또는 코딩 트리 블록을 예측 대상 블록 또는 예측 화소 블록이라고 부를 수 있다. 또한, 암호화 단위는 화소 블록으로 제한되지 않고, 프레임, 필드, 슬라이스, 라인, 및 화소 중 적어도 하나가 암호화 단위로서 사용될 수 있다.
암호화 장치(100)는, 도 1에 도시된 것처럼, 감산부(101), 직교 변환부(102), 양자화부(103), 역 양자화부(104), 역 직교 변환부(105), 가산부(106), 예측 화상 생성부(107), 인덱스 설정부(108), 모션 평가부(109) 및 암호화부(110)를 포함한다. 또한 도 1에 도시된 암호화 제어부(111)는 암호화 장치(100)를 제어하고, 예를 들면, CPU(중앙 처리 장치) 등을 이용하여 구현될 수 있다.
감산부(101)는 대응하는 예측 화상을, 화소 블록으로 분할된 입력 화상으로부터 감산하여 예측 오차를 획득한다. 감산부(101)는 상기 예측 오차를 출력하여 직교 변환부(102)에 입력한다.
직교 변환부(102)는 감산부(101)로부터 입력된 예측 오차에 대하여 이산 코사인 변환(DCT) 또는 이산 사인 변환(DST) 등의 직교 변환을 수행하여 변환 계수를 획득한다. 직교 변환부(102)는 상기 변환 계수를 출력하여 양자화부(103)에 입력한다.
양자화부(103)는 직교 변환부(102)로부터 입력된 변환 계수에 대하여 양자화 처리를 수행하여 양자화 변환 계수를 획득한다. 더 구체적으로, 양자화부(103)는 암호화 제어부(111)에 의해 지정된 양자화 파라미터, 및 양자화 매트릭스 등의 양자화 정보에 기초하여 양자화를 수행한다. 더 자세히 설명하면, 양자화부(103)는 변환 계수를, 양자화 정보에 따라 도출된 양자화 스텝 사이즈로 나눔으로써 양자화 변환 계수를 획득한다. 양자화 파라미터는 양자화의 미세도(fineness)를 나타낸다. 양자화 매트릭스는 변환 계수의 각 성분에 대하여 양자화의 미세도를 가중(weighting)하기 위해 사용된다. 양자화부(103)는 양자화 변환 계수를 출력하여 역 양자화부(104) 및 암호화부(110)에 입력한다.
역 양자화부(104)는 양자화부(103)로부터 입력된 양자화 변환 계수에 대하여 역 양자화 처리를 수행하여 복원 변환 계수를 획득한다. 더 구체적으로, 역 양자화부(104)는 양자화부(103)에서 사용된 양자화 정보에 따라 역 양자화를 수행한다. 더 자세히 설명하면, 역 양자화부(104)는 양자화 변환 계수에, 양자화 정보에 따라 도출된 양자화 스텝 사이즈를 승산함으로써 복원 변환 계수를 획득한다. 또한, 양자화부(103)에서 사용된 양자화 정보는 암호화 제어부(111)의 내부 메모리(도시 생략됨)로부터 로드되어 사용된다. 역 양자화부(104)는 복원 변환 계수를 출력하여 역 직교 변환부(105)에 입력한다.
역 직교 변환부(105)는 역 양자화부(104)로부터 입력된 복원 변환 계수에 대하여 역 이산 코사인 변환(IDCT) 또는 역 이산 사인 변환(IDST) 등의 역 직교 변환을 수행하여 복원 예측 오차를 획득한다. 여기에서 역 직교 변환부(105)에 의해 수행되는 역 직교 변환은 직교 변환부(102)에 의해 수행된 직교 변환에 대응한다. 역 직교 변환부(105)는 복원 예측 오차를 출력하여 가산부(106)에 입력한다.
가산부(106)는 역 직교 변환부(105)로부터 입력된 복원 예측 오차와 대응하는 예측 화상을 가산하여 국부 복호 화상을 생성한다. 가산부(106)는 국부 복호 화상을 출력하여 예측 화상 생성부(107)에 입력한다.
예측 화상 생성부(107)는 가산부(106)로부터 입력된 국부 복호 화상을 참조 화상으로서 메모리(도 1에서는 도시 생략됨)에 저장하고, 메모리에 저장된 참조 화상을 출력하여 모션 평가부(109)에 입력한다. 또한, 예측 화상 생성부(107)는 모션 평가부(109)로부터 입력된 모션 정보 및 WP 파라미터 정보에 기초하여 가중 모션 보상 예측을 수행함으로써 예측 화상을 생성한다. 예측 화상 생성부(107)는 예측 화상을 출력하여 감산부(101) 및 가산부(106)에 입력한다.
도 4는 제1 실시형태에 따른 예측 화상 생성부(107)의 구성 예를 보인 블록도이다. 예측 화상 생성부(107)는, 도 4에 도시된 것처럼, 복수 프레임 모션 보상부(201), 메모리(202), 단방향 모션 보상부(203), 예측 파라미터 제어부(204), 참조 화상 선택기(205), 프레임 메모리(206), 및 참조 화상 제어부(207)를 포함한다.
프레임 메모리(206)는 참조 화상 제어부(207)의 제어하에 상기 가산부(106)로부터 입력된 국부 복호 화상을 참조 화상으로서 저장한다. 프레임 메모리(206)는 참조 화상을 임시로 저장하기 위해 사용되는 복수의 메모리 집합(FM1∼FMN(여기에서, N≥2))을 포함한다.
예측 파라미터 제어부(204)는 모션 평가부(109)로부터 입력된 모션 정보에 기초하여, 참조 화상 번호와 예측 파라미터 각각의 복수의 조합을 테이블로서 준비한다. 여기에서, 상기 모션 정보는 모션 보상 예측용으로 사용되는 모션의 편차를 나타내는 모션 벡터, 참조 화상 번호, 및 단방향/양방향 예측과 같은 예측 모드에 관한 정보를 가리킨다. 예측 파라미터는 모션 벡터 및 예측 모드에 관한 정보를 가리킨다. 그 다음에, 예측 파라미터 제어부(204)는 입력 화상에 기초하여 예측 화상을 생성하는데 사용된 참조 화상 번호 및 예측 파라미터의 조합을 선택하고 상기 선택된 조합을 출력하여, 참조 화상 번호는 참조 화상 선택기(205)에 입력하고 예측 파라미터는 단방향 모션 보상부(203)에 입력한다.
참조 화상 선택기(205)는 예측 파라미터 제어부(204)로부터 입력된 참조 화상 번호에 기초하여, 프레임 메모리(206)에 포함된 프레임 메모리(FM1∼FMN)의 출력 단자 중 하나가 전환되게 변경하는 스위치이다. 예를 들면, 참조 화상 번호가 "0"일 때 참조 화상 선택기(205)는 프레임 메모리(FM1)의 출력 단자를 참조 화상 선택기(205)의 출력 단자에 접속하고, 참조 화상 번호가 N-1일 때 참조 화상 선택기(205)는 프레임 메모리(FMN)의 출력 단자를 참조 화상 선택기(205)의 출력 단자에 접속한다. 참조 화상 선택기(205)는 프레임 메모리(206)에 포함된 프레임 메모리(FM1∼FMN) 중에서 출력 단자가 접속된 프레임 메모리에 저장된 참조 화상을 출력하여 단방향 모션 보상부(203) 및 모션 평가부(109)에 입력한다.
단방향 예측 모션 보상부(203)는 예측 파라미터 제어부(204)로부터 입력된 예측 파라미터 및 참조 화상 선택기(205)로부터 입력된 참조 화상에 기초하여 모션 보상 예측 처리를 수행하여 단방향 예측 화상을 생성한다.
도 5는 제1 실시형태에 따른 양방향 예측에 있어서 모션 보상 예측을 위한 모션 벡터들 간의 관계 예를 보인 도이다. 모션 보상 예측에서는 참조 화상을 이용하여 보간 처리가 수행되고, 생성된 보간 화상의 모션과 암호화 대상 위치에 위치한 화소 블록으로부터의 입력 화상의 편차에 기초하여 단방향 예측 화상이 생성된다. 여기에서, 상기 편차는 모션 벡터이다. 도 5에 도시된 것처럼, 양방향 예측 슬라이스(B-슬라이스)에서는 2 종류의 참조 화상과 모션 벡터 집합을 이용하여 예측 화상이 생성된다. 보간 처리로는 1/2 화소 정밀도의 보간 처리, 1/4 화소 정밀도의 보간 처리 등의 보간 처리가 사용되고, 참조 화상에 대하여 필터링 처리를 수행함으로써 보간 화상의 값이 생성된다. 예를 들면, 휘도 신호에 대하여 최대 1/4 화소 정밀도의 보간이 수행될 수 있는 H.264에서는 상기 편차가 정수 화소 정밀도의 4배로서 표현된다.
단방향 예측 모션 보상부(203)는 단방향 예측 화상을 출력하여 그 단방향 예측 화상을 메모리(202)에 임시로 저장한다. 여기에서, 모션 정보(예측 파라미터)가 양방향 예측을 나타내는 경우에, 복수 프레임 모션 보상부(201)는 2가지 유형의 단방향 예측 화상을 이용하여 가중 예측을 행한다. 따라서, 단방향 예측 모션 보상부(203)는 제1 유형에 대응하는 단방향 예측 화상을 메모리(202)에 저장하고, 제2 유형에 대응하는 단방향 예측 화상을 복수 프레임 모션 보상부(201)에 직접 출력한다. 여기에서, 상기 제1 유형에 대응하는 단방향 예측 화상은 제1 예측 화상이라고 부르고, 상기 제2 유형에 대응하는 단방향 예측 화상은 제2 예측 화상이라고 부른다.
또한, 2개의 단방향 모션 보상부(203)를 준비하여 2개의 단방향 예측 화상을 생성할 수 있다. 그 경우에, 모션 정보(예측 파라미터)가 단방향 예측을 나타내면, 단방향 모션 보상부(203)는 제1 단방향 예측 화상을 제1 예측 화상으로서 복수 프레임 모션 보상부(201)에 직접 출력할 수 있다.
복수 프레임 모션 보상부(201)는 메모리(202)로부터 입력된 제1 예측 화상, 단방향 예측 모션 보상부(203)로부터 입력된 제2 예측 화상, 및 모션 평가부(109)로부터 입력된 WP 파라미터 정보를 이용하여 가중 예측을 행함으로써 예측 화상을 생성한다. 복수 프레임 모션 보상부(201)는 예측 화상을 출력하여 감산부(101) 및 가산부(106)에 입력한다.
도 6은 제1 실시형태에 따른 복수 프레임 모션 보상부(201)의 구성 예를 보인 블록도이다. 도 6에 도시된 것처럼, 복수 프레임 모션 보상부(201)는 디폴트 모션 보상부(301), 가중 모션 보상부(302), WP 파라미터 제어부(303), 및 WP 선택기(304, 305)를 포함한다.
WP 파라미터 제어부(303)는 모션 평가부(109)로부터 입력된 WP 파라미터 정보에 기초해서 WP 적용 플래그 및 가중 정보를 출력하여, WP 적용 플래그를 WP 선택기(304, 305)에 입력하고 가중 정보를 가중 모션 보상부(302)에 입력한다.
여기에서, WP 파라미터 정보는 가중 계수의 고정 소수점 정밀도, 제1 WP 적용 플래그, 제1 가중 계수, 제1 예측 화상에 대응하는 제1 오프셋, 제2 WP 적용 플래그, 제2 가중 계수, 및 제2 예측 화상에 대응하는 제2 오프셋의 정보를 포함한다. WP 적용 플래그는 각각의 대응하는 참조 화상과 신호 성분에 대하여 설정될 수 있는 파라미터이고, 가중 모션 보상 예측이 이루어지는지 여부를 표시한다. 가중 정보는 가중 계수의 고정 소수점 정밀도, 제1 가중 계수, 제1 오프셋, 제2 가중 계수, 및 제2 오프셋의 정보를 포함한다.
더 자세히 설명하면, WP 파라미터 정보가 모션 평가부(109)로부터 입력될 때에, WP 파라미터 제어부(303)는 WP 파라미터 정보를 제1 WP 적용 플래그, 제2 WP 적용 플래그 및 가중 정보로 분리하여 출력함으로써, 제1 WP 적용 플래그를 WP 선택기(304)에, 제2 WP 적용 플래그를 WP 선택기(305)에, 및 가중 정보를 가중 모션 보상부(302)에 각각 입력한다.
WP 선택기(304, 305)는 WP 파라미터 제어부(303)로부터 입력된 WP 적용 플래그에 기초하여 예측 화상의 접속단을 변경한다. 대응하는 WP 적용 플래그가 "0"인 경우, 각각의 WP 선택기(304, 305)는 그 출력단을 디폴트 모션 보상부(301)에 접속한다. 그 다음에, WP 선택기(304, 305)는 제1 및 제2 예측 화상을 출력하여 디폴트 모션 보상부(301)에 입력한다. 한편, 대응하는 WP 적용 플래그가 "1"인 경우, 각각의 WP 선택기(304, 305)는 그 출력단을 가중 모션 보상부(302)에 접속한다. 그 다음에, WP 선택기(304, 305)는 제1 및 제2 예측 화상을 출력하여 가중 모션 보상부(302)에 입력한다.
디폴트 모션 보상부(301)는 WP 선택기(304, 305)로부터 입력된 2개의 단방향 예측 화상(제1 및 제2 예측 화상)에 따라 평균치 처리를 수행하여 예측 화상을 생성한다. 더 구체적으로, 제1 및 제2 WP 적용 플래그가 "0"인 경우에, 디폴트 모션 보상부(301)는 수학식 1에 기초하여 평균치 처리(average processing)를 수행한다.
여기에서, P[x, y]는 예측 화상이고, PL0[x, y]는 제1 예측 화상이며, PL1[x, y]는 제2 예측 화상이다. 또한, offset2와 shift2는 평균치 처리에 있어서 라운딩 처리(rounding process)의 파라미터로서, 제1 및 제2 예측 화상의 내부 연산 정밀도에 기초하여 결정된다. 예측 화상의 비트 정밀도가 L이고 제1 및 제2 예측 화상의 비트 정밀도가 M(L≤M)일 때, shift2는 수학식 2로 정의화되고, offset2는 수학식 3으로 정의화된다.
예를 들면, 예측 화상의 비트 정밀도가 "8"이고 제1 및 제2 예측 화상의 비트 정밀도가 "14"일 때, 수학식 2에 의해 shift2 = 7, 및 수학식 3에 의해 offset2 = (1 << 6)으로 된다.
또한, 모션 정보(예측 파라미터)에 의해 표시되는 예측 모드가 단방향 예측인 경우에, 디폴트 모션 보상부(301)는 수학식 4에 따라 제1 예측 화상만을 이용하여 최종 예측 화상을 산출한다.
여기에서, PLX[x, y]는 단방향 예측 화상(제1 예측 화상)을 나타내고, X는 참조 리스트로서 "0" 또는 "1"을 나타내는 식별자이다. 예를 들면, PLX[x, y]는 참조 리스트가 "0"인 경우에는 PL0[x, y]이고, 참조 리스트가 "1"인 경우에는 PL1[x, y]이다. 또한, offset1 및 shift1은 라운딩 처리를 위한 파라미터로서, 제1 예측 화상의 내부 연산 정밀도에 기초하여 결정된다. 예측 화상의 비트 정밀도가 L이고 제1 예측 화상의 비트 정밀도가 M일 때, shift1은 수학식 5로 정의화되고, offset1은 수학식 6으로 정의화된다.
예를 들면, 예측 화상의 비트 정밀도가 "8"이고 제1 예측 화상의 비트 정밀도가 "14"일 때, 수학식 5에 의해 shift1 = 6, 및 수학식 6에 의해 offset1 = (1 << 5)로 된다.
가중 모션 보상부(302)는 WP 선택기(304, 305)로부터 입력된 2개의 단방향 예측 화상(제1 및 제2 예측 화상) 및 WP 파라미터 제어부(303)로부터 입력된 가중 정보에 기초하여 가중 모션 보상을 수행한다. 더 구체적으로, 가중 모션 보상부(302)는 제1 및 제2 WP 적용 플래그가 "1"인 경우에 수학식 7에 기초하여 가중 처리를 수행한다.
여기에서, w0C는 제1 예측 화상에 대응하는 가중 계수를 나타내고, w1C는 제2 예측 화상에 대응하는 가중 계수를 나타내며, o0C는 제1 예측 화상에 대응하는 오프셋을 나타내고, o1C는 제2 예측 화상에 대응하는 오프셋을 나타낸다. 이후, 이들을제1 가중 계수, 제2 가중 계수, 제1 오프셋, 및 제2 오프셋이라고 부를 것이다. logWDC는 각 가중 계수의 고정 소수점 정밀도를 나타내는 파라미터이다. 또한, 변수 C는 신호 성분을 표시한다. 예를 들면, YUV 공간 신호의 경우에, 휘도 신호는 C=Y로 표시되고, Cr 색차 신호는 C=Cr로 표시되며, Cb 색차 성분은 C=Cb로 표시된다.
또한, 제1 및 제2 예측 화상의 연산 정밀도와 예측 화상의 연산 정밀도가 서로 다른 경우에, 가중 모션 보상부(302)는 수학식 8에서처럼 고정 소수점 정밀도인 logWDC를 제어함으로써 라운딩 처리를 실현한다.
라운딩 처리는 수학식 7에 표시된 logWDC를 수학식 8에 표시된 logWD'C로 치환함으로써 실현될 수 있다. 예를 들면, 예측 화상의 비트 정밀도가 "8"이고 제1 및 제2 예측 화상의 비트 정밀도가 "14"인 경우에는, logWDC를 재설정함으로써, 수학식 1에 표시된 shift2의 경우와 유사한 연산 정밀도에 대하여 일괄 라운딩 처리를 실현할 수 있다.
또한, 모션 정보(예측 파라미터)에 의해 표시되는 예측 모드가 단방향 예측인 경우에, 가중 모션 보상부(302)는 수학식 9에 따라 제1 예측 화상만을 이용하여 최종 예측 화상을 산출한다.
여기에서, PLX[x, y]는 단방향 예측 화상(제1 예측 화상)을 나타내고, wXC는 단방향 예측에 대응하는 가중 계수를 나타내며, X는 참조 리스트로서 "0" 또는 "1"을 나타내는 식별자이다. 예를 들면, PLX[x, y]와 wXC는 참조 리스트가 "0"인 경우에는 PL0[x, y]와 w0C이고, 참조 리스트가 "1"인 경우에는 PL1[x, y]와 w1C이다.
또한, 제1 및 제2 예측 화상의 연산 정밀도와 예측 화상의 연산 정밀도가 서로 다른 경우에, 가중 모션 보상부(302)는 양방향 예측의 경우와 마찬가지로, 수학식 8에서처럼 고정 소수점 정밀도인 logWDC를 제어함으로써 라운딩 처리를 실현한다.
라운딩 처리는 수학식 7에 표시된 logWDC를 수학식 8에 표시된 logWD'C로 치환함으로써 실현될 수 있다. 예를 들면, 예측 화상의 비트 정밀도가 "8"이고 제1 예측 화상의 비트 정밀도가 "14"인 경우에는, logWDC를 재설정함으로써, 수학식 4에 표시된 shift1의 경우와 유사한 연산 정밀도에 대하여 일괄 라운딩 처리를 실현할 수 있다.
도 7은 제1 실시형태에 따른 가중 계수의 고정 소수점 정밀도의 예를 보인 설명도이고, 시간 방향으로 명도 변화가 있는 동화상 및 계조치(gray scale value)에 있어서의 변화의 예를 보인 도이다. 도 7에 도시된 예에서, 암호화 대상 프레임은 프레임 (t)이고, 시간적으로 암호화 대상 프레임의 1 프레임 전의 프레임은 프레임 (t-1)이며, 시간적으로 암호화 대상 프레임의 1 프레임 후의 프레임은 프레임 (t+1)이다. 도 7에 도시된 것처럼, 백색으로부터 흑색으로 변하는 페이드 화상에 있어서, 화상의 명도(계조치)는 시간의 경과에 따라 감소한다. 가중 계수는 도 7에서 변화의 정도를 표시하고, 수학식 7 및 수학식 9에서 명백한 바와 같이, 명도에 변화가 없는 경우에는 "1.0"의 값을 취한다. 고정 소수점 정밀도는 가중 계수의 소수점에 대응하는 간격 폭을 제어하는 파라미터이고, 가중 계수는 명도 변화가 없는 경우에 1<<logWDC이다.
또한, 단방향 예측의 경우에, 제2 예측 화상에 대응하는 각종 파라미터(제2 WP 적용 플래그, 제2 가중 계수, 및 제2 오프셋 정보)는 사용되지 않고 미리 결정된 초기치로 설정될 수 있다.
다시 도 1을 참조하면, 모션 평가부(109)는 입력 화상과, 예측 화상 생성부(107)로부터 입력된 참조 화상에 기초하여 복수의 프레임 간의 모션 평가를 수행해 모션 정보 및 WP 파라미터 정보를 출력하여 모션 정보를 예측 화상 생성부(107) 및 암호화부(110)에 입력하고, WP 파라미터 정보를 예측 화상 생성부(107) 및 인덱스 설정부(108)에 입력한다.
모션 평가부(109)는 예를 들면 예측 대상 화소 블록의 입력 화상과 동일 위치에 대응하는 복수의 참조 화상을 기점으로 하여 차분치를 계산함으로써 오차를 산출하고, 상기 위치를 분수 정밀도에 의해 시프트시키고, 최소 오차 블록을 찾기 위한 블록 매칭 등과 같은 기술을 이용하여 최적의 모션 정보를 산출한다. 양방향 예측의 경우에, 모션 평가부(109)는 단방향 예측으로부터 도출된 모션 정보를 이용하여 수학식 1 및 수학식 4에 표시한 것과 같은 디폴트 모션 보상 예측을 포함한 블록 매칭을 수행하여 양방향 예측의 모션 정보를 산출한다.
이때, 모션 평가부(109)는 수학식 7 및 수학식 9에 표시한 것과 같은 가중 모션 보상 예측을 포함한 블록 매칭을 수행함으로써 WP 파라미터 정보를 산출할 수 있다. 또한, WP 파라미터 정보의 산출을 위하여, 입력 화상의 명도 구배를 이용하여 가중 계수 또는 오프셋을 산출하는 방법, 암호화시에 예측 오차의 누적에 따라 가중 계수 또는 오프셋을 산출하는 방법 등을 이용할 수 있다. 또한, WP 파라미터 정보로서, 각 암호화 장치에 대해 미리 결정된 고정 값을 사용할 수 있다.
여기에서, 가중 계수, 가중 계수의 고정 소수점 정밀도, 및 오프셋을 시간적으로 명도 변화가 있는 동화상으로부터 산출하는 방법을 도 7을 참조하여 설명한다. 전술한 바와 같이, 도 7에 도시된 것처럼 백색으로부터 흑색으로 변화하는 페이드 화상에서는 화상의 명도(계조치)가 시간의 경과에 따라 감소한다. 모션 평가부(109)는 그 기울기를 계산함으로써 가중 계수를 산출할 수 있다.
가중 계수의 고정 소수점 정밀도는 기울기의 정밀도를 나타내는 정보이고, 모션 평가부(109)는 참조 화상까지의 시간적 거리와 화상 명도의 변화도에 기초하여 최적치를 계산할 수 있다. 예를 들면, 도 7에서, 프레임 (t-1)과 프레임 (t+1) 간의 가중 계수가 분수 정밀도로 0.75인 경우에, 1/4 정밀도라면 3/4이 표현될 수 있고, 따라서 모션 평가부(109)는 고정 소수점 정밀도를 2(1 << 2)로 설정한다. 고정 소수점 정밀도의 값은 가중 계수를 암호화하는 경우의 부호량에 영향을 주기 때문에, 고정 소수점 정밀도의 값으로서 부호량과 예측 정밀도를 고려하여 최적치가 선택될 수 있다. 또한, 고정 소수점 정밀도의 값은 미리 정해진 고정 값일 수 있다.
또한, 기울기가 일치하지 않는 경우에, 모션 평가부(109)는 1차 함수의 절편(intercept)에 대응하는 보정치(편차량)를 획득함으로써 오프셋의 값을 산출할 수 있다. 예를 들면, 도 7에 있어서, 프레임 (t-1)과 프레임 (t+1) 간의 가중 계수가 소수점 정밀도로 0.60이고, 고정 소수점 정밀도가 "1"(1<<1)인 경우에, 가중 계수가 "1"(가중 계수의 소수점 정밀도 0.50에 대응함)로 설정될 가능성이 높다. 그 경우에, 가중 계수의 소수점 정밀도는 최적치인 0.60으로부터 0.10만큼 벗어나므로, 모션 평가부(109)는 화소의 최대치에 기초해 상기 편차에 대응하는 보정치를 계산하여 오프셋의 값으로서 설정한다. 화소의 최대치가 255인 경우에, 모션 보상부(109)는 25(255×0.1)와 같은 값을 설정할 수 있다.
제1 실시형태에서는 비록 모션 평가부(109)가 암호화 장치(100)의 1 기능으로서 예시되었지만, 모션 평가부(109)는 암호화 장치(100)의 필수 구성이 아니고, 예를 들면, 모션 평가부(109)는 암호화 장치(100) 이외의 장치일 수 있다. 그러한 경우에, 모션 평가부(109)에 의해 산출되는 모션 정보 및 WP 파라미터 정보는 암호화 장치(100)에 로드될 수 있다.
인덱스 설정부(108)는 모션 평가부(109)로부터 입력된 WP 파라미터 정보를 수신하고, 참조 리스트(리스트 번호) 및 참조 화상(참조 번호)을 체크하고, 인덱스 정보를 출력하여 인덱스 설정부(108)에 입력한다.
도 8은 제1 실시형태에 따른 인덱스 설정부(108)의 구성 예를 보인 블록도이다. 인덱스 설정부(108)는, 도 8에 도시된 것처럼, 참조 화상 확인부(401)와 인덱스 생성부(402)를 포함한다.
참조 화상 확인부(401)는 모션 평가부(109)로부터 입력된 WP 파라미터 정보를 수신하고, 2개의 참조 리스트에 포함된 동일한 참조 번호를 가진 참조 화상을 나타내는 WP 파라미터가 있는지 여부를 체크한다. 그 다음에, 참조 화상 확인부(401)는 WP 파라미터 정보에 포함된 동일한 참조 화상을 나타내는 WP 파라미터를 삭제하고, 삭제 후의 WP 파라미터 정보를 출력하여 인덱스 생성부(402)에 입력한다.
인덱스 생성부(402)는 참조 화상 확인부(401)로부터, 용장성 WP 파라미터가 삭제된 WP 파라미터 정보를 수신하고, WP 파라미터 정보를 후술하는 신택스 요소에 맵핑함으로써 인덱스 정보를 생성한다. 인덱스 생성부(402)는 인덱스 정보를 출력하여 암호화부(110)에 입력한다.
도 9a 및 도 9b는 제1 실시형태에 따른 WP 파라미터 정보의 예를 보인 도이다. P-슬라이스시의 WP 파라미터 정보의 예는 도 9a에 도시된 것과 같고, B-슬라이스시의 WP 파라미터 정보의 예는 도 9a 및 도 9b에 도시된 것과 같다. 리스트 번호는 예측 방향을 나타내는 식별자이다. 리스트 번호는 단방향 예측의 경우에 "0"의 값을 갖는다. 한편, 양방향 예측의 경우에는 2가지 유형의 예측을 사용할 수 있고, 따라서 리스트 번호는 2개의 값, 즉 "0"과 "1"을 갖는다. 참조 번호는 프레임 메모리(206)에 표시된 1∼N 중 어느 하나에 대응하는 값이다. WP 파라미터 정보가 각각의 참조 리스트와 참조 화상마다 유지되기 때문에, N개의 참조 화상이 있는 경우에는 B-슬라이스시에 2N개의 정보가 필요하다. 참조 화상 확인부(401)는 WP 파라미터 정보를 재변환하고 용장성 WP 파라미터를 삭제한다.
도 10은 제1 실시형태에 따른 저지연 암호화 구조에 있어서 암호화 순서 및 디스플레이 순서(POC: Picture Order Count)의 예를 보인 도이고, 참조 화상으로 될 수 있는 B-슬라이스가 rB-슬라이스로서 사용될 수 있는 암호화 구조의 예를 보인 것이다. 저지연 암호화 구조에서는 화상이 예측될 수 없고, 암호화 순서 및 디스플레이 순서가 동일하다. 여기에서, 프레임 0∼3이 디스플레이 순으로 암호화되었고 프레임 4를 암호화하는 경우를 생각한다.
도 11은 제1 실시형태에 따른 저지연 암호화 구조에 있어서 참조 화상과 참조 번호 간의 관계의 예를 보인 도이고, 프레임 4를 암호화하는 경우의 참조 화상과 참조 번호 간의 관계를 간략화한 WP 파라미터 정보를 이용하여 보인 것이다. 도 11에 도시된 예에서, 참조 리스트 내의 참조 번호의 순서는 리스트 0과 리스트 1에서 동일하고, 이것은 리스트 0과 리스트 1의 참조 화상들이 동일하다는 것을 의미한다.
도 12는 제1 실시형태에 따른 랜덤 액세스 암호화 구조에 있어서 암호화 순서 및 디스플레이 순서의 예를 보인 도이다. 여기에서는 프레임 0, 2, 4 및 8이 디스플레이 순으로 암호화되었고 프레임 1을 암호화하는 경우를 생각한다.
도 13은 제1 실시형태에 따른 랜덤 액세스 암호화 구조에 있어서 참조 화상과 참조 번호 간의 관계의 예를 보인 도이고, 프레임 1을 암호화하는 경우의 참조 화상과 참조 번호 간의 관계를 간략화한 WP 파라미터 정보를 이용하여 보인 것이다. 도 13에 도시된 예에서, 참조 리스트마다 참조 번호의 순서는 서로 다르지만, 4개의 공통 참조 화상이 리스트 0과 리스트 1에 포함되고, 이것은 리스트 0과 리스트 1의 참조 화상들이 동일하다는 것을 의미한다.
용장성 WP 파라미터를, 다시 말하면, 2개의 참조 리스트에 포함된 참조 번호가 동일한 참조 화상을 나타내는 WP 파라미터를 삭제하기 위해, 참조 화상 확인부(401)는 참조 번호들을 분류하여 공통의 새로운 인덱스로 변환한다.
도 14는 제1 실시형태에 따른 참조 화상의 리스트 번호와 참조 번호의 스캔 순서의 예를 보인 도이다. 참조 화상 확인부(401)는 도 14에 도시된 스캔 순서로 2차원 참조 리스트(2개의 참조 리스트)를 1차원 공통 리스트(1개의 공통 리스트)로 변환한다. 더 구체적으로, 참조 화상 확인부(401)는 도 9a 및 도 9b에 도시된 WP 파라미터 정보를 도 14에 도시된 스캔 순서로 판독하고, 2개의 참조 리스트를 공통 리스트로 분류하며, 용장성 WP 파라미터를 학제한다. 여기에서, 참조 화상 확인부(401)는 수학식 10에 표시된 의사 코드에 따라 WP 파라미터 정보를 판독한다.
여기에서, common_scan_list()는 도 14에 도시된 스캔 번호에 대응하는 리스트 번호를 반환하는 함수이다. 또한, common_scan_ref_idx()는 도 14에 도시된 스캔 번호에 대응하는 참조 번호를 반환하는 함수이다. RefPicOrderCnt()는 리스트 번호와 참조 번호에 대응하는 POC 번호를 반환하는 함수이다. 여기에서, POC 번호는 참조 화상의 디스플레이 순서를 나타내는 번호이다. POC 번호는, 미리 정해진 최대 수를 초과할 때, 초기치에 맵핑된다. 예를 들면, POC 번호의 최대치가 255인 경우에, 256에 대응하는 POC 번호는 0이다. CommonRefPicOrderCount()는 공통 리스트(CommonList)의 참조 번호에 대응하는 POC 번호를 반환하는 함수이다. InsertCommonRefPicOrderCount()는 스캔 번호에 대응하는 POC 번호를 공통 리스트(CommonList)에 삽입하는 함수이다.
여기에서, 도 14에 도시된 스캔 순서는 일례이고, 미리 정해진 스캔 순서라면 임의의 다른 스캔 순서도 사용할 수 있다. 또한, 수학식 10에 표시된 의사 부호는 일례이고, 이 처리의 목적이 실현될 수 있다면 처리의 추가 또는 용장 처리의 삭감도 이루어질 수 있다.
도 15 및 도 16은 제1 실시형태에 따른 공통 리스트 변환 후의 WP 파라미터 정보의 예를 간략화하여 보인 도이다. 도 15는 도 11에 도시된 참조 리스트의 WP 파라미터 정보를 변환하여 획득된 공통 리스트의 WP 파라미터 정보를 간략화하여 보인 것이고, 도 16은 도 13에 도시된 참조 리스트의 WP 파라미터 정보를 변환하여 획득된 공통 리스트의 WP 파라미터 정보를 간략화하여 보인 것이다.
도 17은 제1 실시형태에 따른 인덱스 설정부(108)에 의해 수행되는 인덱스 정보 생성 처리의 예를 보인 흐름도이다.
WP 파라미터 정보가 입력되면, 참조 화상 확인부(401)는 슬라이스의 유형에 따라 처리를 분기한다(단계 S101).
슬라이스 유형이 1개의 참조 리스트만을 이용하는 단방향 예측 슬라이스(P-슬라이스)인 경우에(단계 S101에서 "아니오"), 참조 화상 확인부(401)는 도 9a에 도시된 WP 파라미터 정보를 인덱스 생성부(402)에 직접 출력한다. 인덱스 생성부(402)는 참조 화상 확인부(401)로부터 입력된 WP 파라미터 정보를 후술하는 미리 정해진 신택스 요소에 맵핑하여 인덱스 정보를 생성하고, 생성된 인덱스 정보를 출력한다.
한편, 슬라이스 유형이 2개의 참조 리스트를 이용하는 양방향 예측 슬라이스(B-슬라이스)인 경우에(단계 S101에서 "예"), 참조 화상 확인부(401)는 변수 scan을 0으로 초기화한다(단계 S102). 변수 scan은 도 14에 도시된 스캔 번호를 나타낸다.
이어서, 참조 화상 확인부(401)는 변수 scan을 이용하여 스캔 번호에 대응하는 리스트 번호를 나타내는 변수 list를 획득하고(단계 S103), 스캔 번호에 대응하는 참조 번호를 나타내는 변수 refIdx를 획득한다(단계 S104).
이어서, 참조 화상 확인부(401)는 변수 list에 의해 표시된 리스트 번호 및 변수 refIdx에 의해 표시된 참조 번호에 대응하는 참조 화상의 POC 번호를 나타내는 변수 refPOC를 도출한다(단계 S105).
이어서, 참조 화상 확인부(401)는 플래그 identical_ref_flag를 false로 설정하고(단계 S106), 변수 currIdx를 "0"으로 설정한다(단계 S107). 플래그 identical_ref_flag는 공통 리스트에 동일한 참조 화상이 있는지 여부를 나타낸다. 변수 currIdx는 공통 리스트의 참조 번호를 나타낸다.
이어서, 참조 화상 확인부(401)는 도출된 변수 refPOC에 의해 표시되는 POC 번호와 변수 currIdx에 의해 표시되는 참조 번호에 대응하는 참조 화상의 POC 번호가 동일한지 여부를 결정한다(단계 S108).
양쪽의 POC 번호가 동일한 경우에(단계 S108에서 "예"), 참조 화상 확인부(401)는 플래그 identical_ref_flag를 true로 설정한다(단계 S109). 한편, 양쪽의 POC 번호가 동일하지 않은 경우(단계 S108에서 "아니오")에는 단계 S109의 처리는 수행되지 않는다.
이어서, 참조 화상 확인부(401)는 변수 currIdx를 증분시킨다(단계 S110).
이어서, 참조 화상 확인부(401)는 변수 currIdx의 값이 공통 리스트의 최대 수로부터 1을 감산하여 획득된 값인 num_of_common_active_ref_minus1보다 큰지 여부를 결정한다(단계 S111). 그리고 만일 상기 값이 num_of_common_active_ref_minus1 이하이면(단계 S111에서 "아니오"), 단계 S108∼S110의 처리가 반복된다.
만일 상기 값이 num_of_common_active_ref_minus1보다 크면(단계 S111에서 "예"), 참조 화상 확인부(401)는 공통 리스트의 체크를 완료하고, 플래그 identical_ref_flag가 false인지 여부를 더 체크한다(단계 S112).
플래그 identical_ref_flag가 false인 경우(단계 S112에서 "예"), 참조 화상 확인부(401)는 변수 refPOC에 의해 표시되는 POC 번호의 참조 화상과 동일한 참조 화상이 공통 리스트에 포함되어 있지 않다고 결정하고, 변수 refPOC에 의해 표시되는 POC 번호를 공통 리스트에 추가한다(단계 S113). 한편, 플래그 identical_ref_flag가 true인 경우(단계 S112에서 "아니오"), 참조 화상 확인부(401)는 변수 refPOC에 의해 표시되는 POC 번호의 참조 화상과 동일한 참조 화상이 공통 리스트에 포함되어 있다고 결정하고, 단계 S113의 처리를 수행하지 않는다.
이어서, 참조 화상 확인부(401)는 변수 scan을 증분시킨다(단계 S114).
이어서, 참조 화상 확인부(401)는 변수 scan의 값이 공통 리스트의 최대 수로부터 1을 감산하여 획득된 값인 num_of_common_active_ref_minus1 이상인지를 결정한다(단계 S115). 변수 scan의 값이 num_of_common_active_ref_minus1 이하이면(단계 S115에서 "아니오"), 처리는 단계 S103으로 복귀된다. 한편, 변수 scan의 값이 num_of_common_active_ref_minus1보다 크면(단계 S115에서 "예"), 참조 화상 확인부(401)는 공통 리스트로 변환한 후의 WP 파라미터 정보를 인덱스 생성부(402)에 출력한다. 인덱스 생성부(402)는 참조 화상 확인부(401)로부터 입력된 WP 파라미터 정보를 후술하는 미리 정해진 신택스 요소에 맵핑하여 인덱스 정보를 생성하고, 생성된 인덱스 정보를 출력한다.
다시 도 1을 참조하면, 암호화부(110)는 양자화부(103)로부터 입력된 양자화 변환 계수, 모션 평가부(109)로부터 입력된 모션 정보, 인덱스 설정부(108)로부터 입력된 인덱스 정보, 및 암호화 제어부(111)에 의해 지정된 양자화 정보와 같은 각종 암호화 파라미터의 엔트로피 암호화를 수행하여 암호화 데이터를 생성한다. 엔트로피 암호화로는, 예를 들면, 허프만(Huffman) 암호화 또는 산술 부호화가 있다.
여기에서, 암호화 파라미터는 예측 방법 등을 나타내는 예측 정보, 양자화 변환 계수에 관한 정보, 및 양자화에 관한 정보와 같은, 복호 처리에 필요한 파라미터이다. 예를 들면, 도시를 생략한 내부 메모리를 암호화 제어부(111)에 포함시키고, 암호화 파라미터를 내부 메모리에 저장하며, 암호화가 완료된 인접 화소 블록의 암호화 파라미터를 화소 블록의 암호화시에 사용하도록 구성할 수 있다. 예를 들면, H.264의 인트라 예측에서는 화소 블록의 예측 정보를 암호화된 인접 블록의 예측 정보로부터 도출할 수 있다.
암호화부(110)는 생성된 암호화 데이터를 암호화 제어부(111)가 관리하는 적절한 출력 타이밍에 출력한다. 예를 들면 출력된 암호화 데이터인 각종의 정보는 도시를 생략한 다중화부 등에 의해 다중화되어 도시를 생략한 출력 버퍼 등에 임시로 저장된 다음에, 예를 들면 저장 시스템(기억 매체) 또는 전송 시스템(통신 회선)에 출력된다.
도 18은 제1 실시형태에 따른 암호화 장치(100)에 의해 사용되는 신택스(syntax)(500)의 예를 보인 도이다. 신택스(500)는 암호화 장치(100)를 이용하여 입력 화상(동화상 데이터)을 암호화함으로써 생성된 암호화 데이터의 구조를 나타낸다. 암호화 데이터를 복호할 때, 후술하는 복호 장치는 신택스(500)의 구조와 동일한 신택스 구조를 참조하여 동화상의 신택스 분석을 수행한다.
신택스(500)는 3개의 부분, 즉 하이 레벨 신택스(high-level syntax)(501), 슬라이스 레벨 신택스(slice-level syntax)(502), 및 코딩 트리 레벨 신택스(coding tree level syntax)(503)를 포함한다. 하이 레벨 신택스(501)는 슬라이스보다 더 높은 레벨을 가진 상위층의 신택스 정보를 포함한다. 여기에서, 슬라이스는 프레임 또는 필드에 포함된 직사각형 영역 또는 연속 영역을 가리킨다. 슬라이스 레벨 신택스(502)는 각 슬라이스를 복호하는데 필요한 정보를 포함한다. 코딩 트리 레벨 신택스(503)는 각 코딩 트리(다시 말하면, 각 코딩 트리 블록)을 디코딩하는데 필요한 정보를 포함한다. 상기 부분들은 각각 더 상세한 신택스를 포함한다.
하이 레벨 신택스(501)는 시퀀스 파라미터 세트 신택스(sequence parameter set syntax)(504), 픽쳐 파라미터 세트 신택스(picture parameter set syntax)(505) 및 어댑테이션 파라미터 세트 신택스(adaptation parameter set syntax)(506)와 같은 시퀀스 및 픽쳐 레벨의 신택스를 포함한다.
슬라이스 레벨 신택스(502)는 슬라이스 헤더 신택스(slice header syntax)(507), 프레드 웨이트 테이블 신택스(pred weight table syntax)(508), 슬라이스 데이터 신택스(slice data syntax)(509) 등을 포함한다. 프레드 웨이트 테이블 신택스(508)는 슬라이스 헤더 신택스(507)로부터 호출된다.
코딩 트리 레벨 신택스(503)는 코딩 트리 유닛 신택스(coding tree unit syntax)(510), 트랜스폼 유닛 신택스(transform unit syntax)(511), 프리딕션 유닛 신택스(prediction unit syntax)(512) 등을 포함한다. 코딩 트리 유닛 신택스(510)는 사분목 구조를 가질 수 있다. 더 구체적으로, 코딩 트리 유닛 신택스(510)는 또한 코딩 트리 유닛 신택스(510)의 신택스 요소로서 재귀 호출될 수 있다. 다시 말해서, 하나의 코딩 트리 블록은 사분목으로 세분화될 수 있다. 또한, 트랜스폼 유닛 신택스(511)는 코딩 트리 유닛 신택스(510)에 포함된다. 트랜스폼 유닛 신택스(511)는 사분목의 최말단에 위치한 각각의 코딩 트리 유닛 신택스(510)로부터 호출된다. 트랜스폼 유닛 신택스(511)에는 역 직교 변환, 양자화 등에 관한 정보가 기술된다. 신택스에는 가중 모션 보상 예측에 관한 정보가 기술될 수 있다.
도 19는 제1 실시형태에 따른 픽쳐 파라미터 세트 신택스(505)의 예를 보인 도이다. 여기에서, weighted_pred_flag는 예를 들면 P-슬라이스에 대한 제1 실시형태에 따른 가중 보상 예측의 유효 또는 무효를 나타내는 신택스 요소이다. weighted_pred_flag가 "0"인 경우, P-슬라이스 내에서 제1 실시형태에 따른 가중 모션 보상 예측은 무효이다. 따라서, WP 파라미터 정보에 포함된 WP 적용 플래그는 항상 "0"으로 설정되고, WP 선택기(304, 305)의 출력단은 디폴트 모션 보상부(301)에 접속된다. 한편, weighted_pred_flag가 "1"인 경우, P-슬라이스 내에서 제1 실시형태에 따른 가중 모션 보상 예측은 유효이다.
다른 예로서, weighted_pred_flag가 "1"인 경우, 제1 실시형태에 따른 가중 모션 보상 예측의 유효 또는 무효는 하위층(슬라이스 헤더, 코딩 트리 블록, 트랜스폼 유닛, 프리딕션 유닛 등)의 신택스에 있어서 슬라이스 내의 각 국소 영역마다 정의될 수 있다.
또한, weighted_bipred_idc는 예를 들면 B-슬라이스에 대한 제1 실시형태에 따른 가중 보상 예측의 유효 또는 무효를 나타내는 신택스 요소이다. weighted_bipred_idc가 "0"인 경우, B-슬라이스 내에서 제1 실시형태에 따른 가중 모션 보상 예측은 무효이다. 따라서, WP 파라미터 정보에 포함된 WP 적용 플래그는 항상 "0"으로 설정되고, WP 선택기(304, 305)의 출력단은 디폴트 모션 보상부(301)에 접속된다. 한편, weighted_bipred_idc가 "1"인 경우, B-슬라이스 내에서 제1 실시형태에 따른 가중 모션 보상 예측은 유효이다.
다른 예로서, weighted_bipred_idc가 "1"인 경우, 제1 실시형태에 따른 가중 모션 보상 예측의 유효 또는 무효는 하위층(슬라이스 헤더, 코딩 트리 블록, 트랜스폼 유닛, 프리딕션 유닛 등)의 신택스에 있어서 슬라이스 내의 각 국소 영역마다 정의될 수 있다.
도 20은 제1 실시형태에 따른 슬라이스 헤더 신택스(507)의 예를 보인 도이다. 여기에서, slice_type은 슬라이스의 유형(I-슬라이스, P-슬라이스, B-슬라이스 등)을 나타낸다. 또한, pic_parameter_set_id는 어떤 픽쳐 파라미터 세트 신택스(505)가 참조되는지를 나타내는 식별자이다. num_ref_idx_active_override_flag는 유효 참조 화상의 수를 갱신해야 하는지 여부를 나타내는 플래그이고, 이 플래그가 "1"인 경우에는 참조 리스트의 참조 화상의 수를 정의하는 num_ref_idx_l0_active_minus1 및 num_ref_idx_l1_active_minus1을 사용할 수 있다. 또한, pred_weight_table()은 가중 모션 보상 예측을 위하여 사용되는 프레드 웨이트 테이블 신택스를 나타내는 함수이고, 이 함수는 weighted_pred_flag가 "1"이고 P-슬라이스인 경우 및 weighted_bipred_idc가 "1"이고 B-슬라이스인 경우에 호출된다.
도 21은 제1 실시형태에 따른 프레드 웨이트 테이블 신택스(508)의 예를 보인 도이다. 여기에서, luma_log2_weight_denom은 슬라이스에 있어서 휘도 신호의 가중 계수의 고정 소수점 정밀도를 나타내고, 수학식 7 또는 수학식 9에 표시된 logWDC에 대응하는 값이다. 또한, chroma_log2_weight_denom은 슬라이스에 있어서 색차 신호의 가중 계수의 고정 소수점 정밀도를 나타내고, 수학식 7 또는 수학식 9에 표시된 logWDC에 대응하는 값이다. chroma_format_idc는 색 공간을 나타내는 식별자이고, MONO_IDX는 단색 영상을 나타내는 값이다. 또한, num_ref_common_active_minus1은 슬라이스에 있어서 공통 리스트에 포함된 참조 화상의 수에서 1을 감산함으로써 획득된 값을 나타내고 수학식 10에서 사용된다. 이 값의 최대치는 2개의 리스트 0 및 리스트 1의 참조 화상의 수의 최대치를 가산함으로써 획득된다.
luma_weight_common_flag는 휘도 신호의 WP 적용 플래그를 나타낸다. 이 플래그가 "1"인 경우에는 제1 실시형태에 따른 휘도 신호의 가중 모션 보상 예측이 슬라이스 내의 전체 영역에 대하여 유효이다. 또한, chroma_weight_common_flag는 색차 신호의 WP 적용 플래그를 나타낸다. 이 플래그가 "1"인 경우에는 제1 실시형태에 따른 색차 신호의 가중 모션 보상 예측이 슬라이스 내의 전체 영역에 대하여 유효이다. 여기에서, luma_weight_common[i]는 공통 리스트에서 관리되는 i번째 휘도 신호의 가중 계수이다. 또한, luma_offset_common[i]는 공통 리스트에서 관리되는 i번째 휘도 신호의 오프셋이다. 이들은 수학식 7 또는 수학식 9에서 표시된 w0C, w1C, o0C, 및 o1C에 대응하는 값이다. 여기에서 C=Y이다.
여기에서, chroma_weight_common[i][j]는 공통 리스트에서 관리되는 i번째 색차 신호의 가중 계수이다. 또한, chroma_offset_common[i][j]는 공통 리스트에서 관리되는 i번째 색차 신호의 오프셋이다. 이들은 수학식 7 또는 수학식 9에서 표시된 w0C, w1C, o0C, o1C에 대응하는 값이다. 여기에서 C=Cr 또는 Cb이다. 또한, j는 색차의 성분을 나타내고, 예를 들어서 YUV 4:2:0인 신호의 경우에, j=0은 Cr 성분을 나타내고, j=1은 Cb 성분을 나타낸다.
상기와 같이, 제1 실시형태에서는, WP 파라미터 정보에 있어서 리스트 0 및 리스트 1의 2개의 참조 리스트에 동일한 참조 화상을 포함하는 조합이 있는 경우에, 인덱스 설정부(108)는 2개의 참조 리스트를 공통 리스트로 변환함으로써 WP 파라미터 정보에 기초해 중복된 용장 WP 파라미터를 삭제하여 인덱스 정보를 생성한다. 그러므로, 제1 실시형태에 따르면, 인덱스 정보의 부호량이 삭감될 수 있다.
특히, 가중 계수와 오프셋은 각각의 참조 화상마다 암호화될 필요가 있기 때문에, 디코더에 시그널링되는 정보의 양이 참조 화상의 수의 증가에 따라서 증가한다. 그러나, 참조 화상의 수가 증가하면 참조 리스트에서 동일한 참조 화상이 참조되는 경우의 수가 증가하고, 따라서 공통 리스트를 관리함으로써 부호량을 대폭 삭감하는 장점을 기대할 수 있다.
제1 실시형태의 변형예
제1 실시형태의 변형예에 대하여 설명한다. 제1 실시형태의 변형예에서는 인덱스 생성부(402)에서 사용하는 신택스 요소가 제1 실시형태의 것과 다르다.
도 22는 제1 실시형태의 변형예에 따른 시퀀스 파라미터 세트 신택스(504)의 예를 보인 도이다. 여기에서, profile_idc는 암호화 데이터의 프로파일에 관한 정보를 나타내는 식별자이다. level_idc는 암호화 데이터의 레벨에 관한 정보를 나타내는 식별자이다. 또한, seq_parameter_set_id는 참조되는 시퀀스 파라미터 세트 신택스(504)를 나타내는 식별자이다. num_ref_frames는 프레임 내에서 참조 화상의 최대 수를 나타내는 변수이다. 또한, weighted_prediction_enabled_flag는 예를 들면 암호화 데이터에 대한 변형예에 따른 가중 모션 보상 예측의 유효/무효를 나타내는 신택스 요소이다.
weighted_prediction_enabled_flag가 "0"인 경우에, 암호화 데이터의 변형예에 따른 가중 모션 보상 예측은 무효이다. 따라서, WP 파라미터 정보에 포함된 WP 적용 플래그는 항상 "0"으로 설정되고, WP 선택기(304, 305)는 그 출력단을 디폴트 모션 보상부(301)에 접속한다. 한편, weighted_prediction_enabled_flag가 "1"인 경우에, 변형예에 따른 가중 모션 보상 예측은 암호화 데이터의 전체 영역에서 유효이다.
다른 예로서, weighted_prediction_enabled_flag가 "1"인 경우에, 변형예에 따른 가중 모션 보상 예측의 유효/무효는 더 낮은 층(픽쳐 파라미터 세트, 어댑테이션 파라미터 세트, 슬라이스 헤더, 코딩 트리 블록, 트랜스폼 유닛, 프리딕션 유닛 등)의 신택스에 있어서 슬라이스 내부의 각 국소 영역마다 정의될 수 있다.
도 23은 제1 실시형태의 변형예에 따른 어댑테이션 파라미터 세트 신택스(506)의 예를 보인 도이다. 어댑테이션 파라미터 세트 신택스(506)는 전체 암호화 프레임에 영향을 주는 파라미터를 유지하고, 상위 레벨 유닛으로서 독립적으로 암호화된다. 예를 들면, H.264에서 상위 레벨 신택스(501)에 대응하는 신택스 요소는 NAL 유닛으로서 암호화된다. 따라서, 어댑테이션 파라미터 세트 신택스(506)의 암호화부는 슬라이스 또는 화소 블록에 의해 표시되는 하위 레벨 정보의 파라미터를 유지하는 슬라이스 레벨 신택스(502)의 레벨보다 더 낮은 레벨의 신택스의 암호화부와 다르다.
여기에서, aps_id는 참조되는 어댑테이션 파라미터 세트 신택스(506)를 나타내는 식별자이다. 이 식별자를 참조함으로써, 하위 레벨 슬라이스는 암호화된 임의의 aps_id를 참조할 수 있다. 그 경우에, 예를 들면, 도 20에 도시된 슬라이스 헤더 신택스(507)에 동일한 aps_id를 추가함으로써, 프레임 전체에 영향을 주는 파라미터를 판독할 수 있다.
aps_weighted_prediction_flag는, 예를 들면, 프레임에 있어서 P-슬라이스에 대한 변형예에 따른 가중 모션 보상 예측의 유효 또는 무효를 나타내는 신택스 요소이다. aps_weighted_prediction_flag가 "0"인 경우에, 프레임 내에서 P-슬라이스에 대한 변형예에 따른 가중 모션 보상 예측은 무효이다. 따라서, WP 파라미터 정보에 포함된 WP 적용 플래그는 항상 "0"으로 설정되고, WP 선택기(304, 305)는 그 출력단을 디폴트 모션 보상부(301)에 접속한다. 한편, aps_weighted_prediction_flag가 "1"인 경우에, 변형예에 따른 가중 모션 보상 예측은 프레임 내의 전체 영역에 대하여 유효이다.
또한, 다른 예로서, aps_weighted_prediction_flag가 "1"인 경우에, 더 낮은 층(슬라이스 헤더, 코딩 트리 블록, 트랜스폼 유닛, 프리딕션 유닛 등)의 신택스에 있어서, 변형예에 따른 가중 모션 보상 예측의 유효 또는 무효는 슬라이스 내부의 각 국소 영역마다 정의될 수 있다.
aps_weighted_bipred_idx는, 예를 들면, 프레임에 있어서 B-슬라이스에 대한 변형예에 따른 가중 모션 보상 예측의 유효 또는 무효를 나타내는 신택스 요소이다. aps_weighted_bipred_idx가 "0"인 경우에, 프레임 내에서 P-슬라이스에 대한 변형예에 따른 가중 모션 보상 예측은 무효이다. 따라서, WP 파라미터 정보에 포함된 WP 적용 플래그는 항상 "0"으로 설정되고, WP 선택기(304, 305)는 그 출력단을 디폴트 모션 보상부(301)에 접속한다. 한편, aps_weighted_bipred_idx가 "1"인 경우에, 변형예에 따른 가중 모션 보상 예측은 프레임 내의 전체 영역에 대하여 유효이다.
또한, 다른 예로서, aps_weighted_bipred_idx가 "1"인 경우에, 더 낮은 층(슬라이스 헤더, 코딩 트리 블록, 트랜스폼 유닛, 프리딕션 유닛 등)의 신택스에 있어서, 변형예에 따른 가중 모션 보상 예측의 유효 또는 무효는 슬라이스 내부의 각 국소 영역마다 정의될 수 있다.
또한, pred_weight_table()은 가중 모션 보상 예측에 사용되는 프레드 웨이트 테이블 신택스를 나타내는 함수이고, 이 함수는 전술한 aps_weighted_prediction_flag가 "1"인 경우에, 또는 aps_weighted_bipred_idx가 "1"인 경우에 호출된다.
도 24는 제1 실시형태의 변형예에 따른 프레드 웨이트 테이블 신택스(508)의 예를 보인 도이다. 제1 실시형태의 변형예에서는, 도 18에 도시된 신택스 구조에 있어서, 프레드 웨이트 테이블 신택스(508)가 어댑테이션 파라미터 세트 신택스(506)로부터 호출된다. 도 21에 도시된 프레드 웨이트 테이블 신택스(508)와의 차이점은 num_ref_common_active_minus1이 MAX_COMMON_REF_MINUS1으로 교체된 점이다. 참조 화상의 수는 슬라이스 헤더 신택스(507)에 기술되어 있으므로, 상위 레벨 층인 어댑테이션 파라미터 세트 신택스(506)에서는 참조될 수 없다. 따라서, 예를 들면, 시퀀스 파라미터 세트 신택스(504)에 기술되어 있는 num_ref_frames의 값으로부터 1을 감산하여 획득된 값이 MAX_COMMON_REF_MINUS1에 설정된다. 또한, 참조 화상의 최대 수로서 취해진 값은 미리 정해진 프로파일 또는 레벨에 따라서 설정될 수 있다. 기타 신택스 요소들은 도 21에 도시된 것과 같다.
상기와 같이, 제1 실시형태의 변형예에 따르면, 프레드 웨이트 테이블 신택스(508)가 어댑테이션 파라미터 세트 신택스(506)로부터 호출되는 구조를 이용함으로써, 1 프레임을 복수의 슬라이스로 분할할 때 WP 파라미터 정보의 부호량을 대폭 삭감할 수 있다.
예를 들면, 사용되는 서로 다른 3가지 유형의 WP 파라미터 정보를 가진 어댑테이션 파라미터 세트 신택스(506)를 먼저 암호화하고, 상황에 따라 aps_id를 이용하여 슬라이스 헤더 신택스(507)로부터 필요한 WP 파라미터 정보를 호출함으로써, WP 파라미터 정보가 항상 슬라이스 헤더 신택스(507)에 의해 암호화되는 구성보다 부호량을 삭감할 수 있다.
제2 실시형태
제2 실시형태를 설명한다. 제2 실시형태에 따른 암호화 장치(600)에서는 인덱스 설정부(608)의 구성이 제1 실시형태에 따른 암호화 장치(100)에서의 구성과 다르다. 이후, 제1 실시형태와의 차이점에 대하여 주로 설명할 것이며, 제1 실시형태에서와 동일한 기능을 가진 각 구성 요소에 대해서는 제1 실시형태에서와 동일한 명칭/참조 번호를 부여하고 그 설명은 생략한다.
도 25는 제2 실시형태에 따른 인덱스 설정부(608)의 구성 예를 보인 블록도이다. 인덱스 설정부(608)는, 도 25에 도시된 것처럼, 재사용 결정부(601)와 인덱스 생성부(602)를 포함한다.
재사용 결정부(601)는 리스트 1의 참조 번호를 리스트 0의 참조 번호와 조합하여 리스트 0의 WP 파라미터 정보를 리스트 1의 WP 파라미터 정보로서 재사용할 것인지를 결정한다. 동일한 참조 화상이 2개의 참조 리스트에 포함되어 있고 대응하는 WP 파라미터 정보의 값이 동일한 경우에는, 동일한 정보가 리스트 0에서뿐만 아니라 리스트 1에서도 암호화될 때, 부호량이 증가한다. 따라서, 재사용 결정부(601)는 리스트 0의 WP 파라미터 정보를 재사용한다.
더 구체적으로, 리스트 0의 WP 파라미터 정보를 재사용하는 경우에, 재사용 결정부(601)는 재사용 플래그를 "1"로 설정하고 참조 목적지(리스트 0)의 참조 번호를 참조 정보로서 설정한다. 한편, 리스트 0의 WP 파라미터 정보를 재사용하지 않는 경우에 재사용 결정부(601)는 재사용 플래그를 "0"으로 설정하고 리스트 1의 참조 번호에 대응하는 WP 파라미터 정보를 신택스에 설정한다.
재사용 결정부(601)는 예를 들면, 수학식 11에 표시된 의사 부호에 따라서, 리스트 0의 WP 파라미터 정보를 리스트 1의 WP 파라미터 정보로서 재사용할 것인지 여부를 결정한다.
여기에서, ListL0는 리스트 0을 표시하고 ListL1은 리스트 1을 표시한다. RefWPTable()은 리스트 번호, 참조 번호 및 참조용 WP 파라미터가 입력될 때, 입력된 참조용 WP 파라미터가, 입력된 리스트 번호 및 참조 번호에 대응하는 WP 파라미터와 일치하는지 여부를 플래그로서 반환하기 위한 함수이다. 플래그의 값이 "1"인 경우에, 이것은 양쪽의 WP 파라미터가 서로 일치함을 표시한다. 수학식 11에 표시된 의사 부호에 있어서, 리스트 1의 참조 번호가 순차적으로 스캔되고 리스트 0에 동일한 POC 번호를 가진 참조 화상이 있는 경우에, WP 파라미터가 동일하면, 재사용 플래그를 나타내는 reuse_wp_flag가 true로 설정되고, 리스트 0에 대응하는 참조 번호가 reuse_ref_idx로 설정된다.
재사용 결정부(601)는 재사용 결정 후의 WP 파라미터 정보를 출력하여 인덱스 생성부(602)에 입력한다.
인덱스 생성부(602)는 재사용 결정 후의 WP 파라미터 정보를 재사용 결정부(601)로부터 수신하고, 재사용 후의 WP 파라미터 정보를 후술하는 신택스 요소에 맵핑하여 인덱스 정보를 생성한다. WP 파라미터 정보가 인덱스 생성부(602)에 의해 맵핑되는 신택스 요소는 제1 실시형태의 경우와 다르다. 인덱스 생성부(602)는 인덱스 정보를 출력하여 암호화부(110)에 입력한다.
도 26은 제2 실시형태에 따른 인덱스 설정부(608)에 의해 수행되는 인덱스 정보 생성 처리의 예를 보인 흐름도이다.
WP 파라미터 정보가 입력되면, 재사용 결정부(601)는 슬라이스의 유형에 따라 처리를 분기한다(단계 S201).
슬라이스 유형이 1개의 참조 리스트만을 이용하는 단방향 예측 슬라이스(P-슬라이스)인 경우에(단계 S201에서 "아니오"), 재사용 결정부(601)는 도 9a에 도시된 WP 파라미터 정보를 인덱스 생성부(602)에 직접 출력한다. 인덱스 생성부(602)는 재사용 결정부(601)로부터 입력된 WP 파라미터 정보를 후술하는 미리 정해진 신택스 요소에 맵핑하여 인덱스 정보를 생성하고, 생성된 인덱스 정보를 출력한다.
한편, 슬라이스 유형이 2개의 참조 리스트를 이용하는 양방향 예측 슬라이스(B-슬라이스)인 경우에(단계 S201에서 "예"), 재사용 결정부(601)는 변수 refIdc를 0으로 초기화한다(단계 S202). 변수 refIdc는 리스트 1의 참조 번호를 나타낸다.
이어서, 재사용 결정부(601)는 변수 refIdx에 의해 표시되는 참조 번호에 대응하는 참조 화상의 POC 번호를 나타내는 변수 refPOC를 도출하고(단계 S203), 변수 refIdx에 의해 표시되는 참조 번호에 대응하는 WP 파라미터를 도출한다(단계 S204).
이어서, 재사용 결정부(601)는 플래그 reuse_wp_flag를 false로 설정하고(단계 S205), 변수 currIdx를 "0"으로 설정한다(단계 S206). 플래그 reuse_wp_flag는 리스트 0 및 리스트 1의 WP 파라미터가 동일한지 여부를 나타낸다. 또한, 변수 currIdx는 리스트 0의 참조 번호를 나타낸다.
이어서, 재사용 결정부(601)는 도출된 변수 refPOC에 의해 표시되는 POC 번호와 변수 currIdx에 의해 표시되는 참조 번호에 대응하는 참조 화상의 POC 번호가 동일한지와, 변수 refIdx에 의해 표시되는 참조 번호에 대응하는 WP 파라미터와 변수 currIdx에 의해 표시되는 참조 번호에 대응하는 WP 파라미터가 동일한지를 결정한다(단계 S207).
양쪽의 POC 번호 및 양쪽의 WP 파라미터가 동일한 경우에(단계 S207에서 "예"), 재사용 결정부(601)는 플래그 reuse_wp_flag를 true로 설정하고(단계 S208), 변수 currIdx의 값을 변수 reuse_ref_idx에 대입한다(단계 S209). 한편, 양쪽의 POC 번호 또는 양쪽의 WP 파라미터가 동일하지 않은 경우(단계 S207에서 "아니오")에는 단계 S208 및 S209의 처리를 수행하지 않는다. 또한, POC 번호의 일치를 체크하지 않는 구성을 사용할 수도 있다.
*이어서, 재사용 결정부(601)는 변수 currIdx를 증분시킨다(단계 S210).
이어서, 재사용 결정부(601)는 변수 currIdx의 값이 리스트 0의 최대 수로부터 1을 감산하여 획득된 값인 num_of_active_ref_l0_minus1 이상인지를 결정한다(단계 S211). 변수 currIdx의 값이 num_of_active_ref_l0_minus1 이하인 경우(단계 S211에서 "아니오")에는 단계 S207∼S210의 처리를 반복한다.
한편, 변수 currIdx의 값이 num_of_active_ref_l0_minus1보다 큰 경우(단계 S211에서 "예")에는, 재사용 결정부(601)가 리스트 0의 체크를 완료하고, 변수 refIdx를 증분시킨다(단계 S212).
이어서, 재사용 결정부(601)는 변수 refIdx의 값이 리스트 1의 최대 수로부터 1을 감산하여 획득된 값인 num_of_active_ref_l1_minus1 이상인지를 결정한다(단계 S213). 변수 refIdx의 값이 num_of_active_ref_l1_minus1 이하인 경우(단계 S213에서 "아니오")에는, 단계 S203∼S212의 처리를 반복한다.
한편, 변수 refIdx의 값이 num_of_active_ref_l1_minus1보다 크면(단계 S213에서 "예"), 재사용 결정부(601)는 리스트 1의 체크를 완료하고, 재사용 결정 후의 WP 파라미터 정보를 인덱스 생성부(602)에 출력한다. 인덱스 생성부(602)는 재사용 결정부(601)로부터 입력된 WP 파라미터 정보를 후술하는 미리 정해진 신택스 요소에 맵핑하여 인덱스 정보를 생성하고, 생성된 인덱스 정보를 출력한다.
도 27은 제2 실시형태에 따른 프레드 웨이트 테이블 신택스(506)의 예를 보인 도이다. 도 27에 도시된 신택스 요소에 있어서, l0 및 l1의 기호는 각각 리스트 0 및 리스트 1에 대응한다. 또한, 도 21에 도시된 것과 동일한 접두어를 가진 신택스 요소는, 공통 리스트가 아니라 리스트 0 또는 리스트 1의 차이가 있지만 참조 리스트의 취급을 다르게 하는 것 외에는 동일한 변수로서 사용된다. 예를 들면, luma_weight_l0[i]는 참조 리스트 l0에 있어서 i번째 참조 번호의 가중 계수를 나타내는 신택스 요소이다.
luma_log2_weight_denom과 chroma_log2_weight_denom은 제1 실시형태의 경우와 동일한 구성을 갖는다. 먼저, l0의 기호가 포함되는 리스트 0에 대하여, luma_weight_l0_flag, luma_weight_l0[i], luma_offset_l0[i], chroma_weight_l0_flag, chroma_weight_l0[i][j], 및 chroma_offset_l0[i][j]가 정의된다. 다음에, l1의 기호가 포함되는 리스트 1에 대한 신택스 요소가 정의된다.
여기에서, reuse_wp_flag는 리스트 0에 대응하는 l0의 WP 파라미터가 재사용되는지 여부를 나타내는 신택스 요소이다. reuse_wp_flag가 "1"인 경우에는 가중 계수와 오프셋이 암호화되지 않지만, reuse_ref_idx는 암호화된다. reuse_ref_idx는 사용하는 WP 파라미터가 대응하는 리스트 0에 대응하는 l0의 참조 번호를 나타낸다. 예를 들면, reuse_ref_idx가 "1"인 경우에, 리스트 0의 참조 번호 "1"에 대응하는 WP 파라미터는 리스트 1의 참조 번호 "1"에 대응하는 WP 파라미터에 카피된다. 한편, reuse_wp_flag가 "0"인 경우에는, 리스트 0과 마찬가지로, luma_weight_l1_flag, luma_weight_l1[i], luma_offset_l1[i], chroma_weight_l1_flag, chroma_weight_l1[i][j], 및 chroma_offset_l1[i][j]가 암호화된다.
상기와 같이 제2 실시형태에 따르면, WP 파라미터 정보에 있어서 리스트 0과 리스트 1의 2개의 참조 리스트에 동일한 참조 화상을 포함하는 조합이 있는 경우에, 인덱스 설정부(608)는 WP 파라미터 정보에서 중복된 용장 WP 파라미터를 삭제하고 중복 WP 파라미터를 재사용하여 인덱스 정보를 생성한다. 그러므로, 제2 실시형태에 따르면, 인덱스 정보의 부호량이 삭감될 수 있다.
제2 실시형태에 따르면, 리스트 0에 대응하는 WP 파라미터 정보가 종래의 방식으로 암호화되고, 리스트 1에 대응하는 WP 파라미터 정보를 암호화하기 위해 리스트 0 내에서 동일한 참조 화상이 참조되는지를 체크한다. 또한, 동일한 참조 화상이 참조되고, WP 파라미터가 역시 동일한 경우에는 WP 파라미터가 대응하는 리스트 0의 참조 번호를 나타내는 정보가 리스트 0의 WP 파라미터를 재사용하기 위한 플래그의 암호화와 함께 암호화된다. 그러한 정보의 양은 가중 계수 및 오프셋에 관한 정보의 양보다 현저히 적고, 따라서 WP 파라미터 정보의 부호량을, 리스트 0 및 리스트 1이 개별로 암호화되는 경우에 비하여 대폭 삭감하도록 구성할 수 있다.
또한, 제2 실시형태에 따르면, 리스트 0 및 리스트 1에 포함된 참조 번호가 동일한 참조 화상을 나타내고, WP 파라미터가 서로 다른 경우에는 서로 다른 WP 파라미터들이 설정될 수 있다. 다시 말해서, 참조 리스트에 동일한 참조 화상을 나타내는 조합이 있는 경우에, 제1 실시형태에서는 동일한 WP 파라미터가 강제로 설정되고, 제2 실시형태에서는 WP 파라미터가 동일한 경우에만 동일한 WP 파라미터의 용장 표현이 삭제된다.
제3 실시형태
제3 실시형태에 대하여 설명한다. 도 28은 제3 실시형태에 따른 암호화 장치(700)의 구성 예를 보인 블록도이다. 제3 실시형태에 따른 암호화 장치(700)는 모션 정보 메모리(701), 모션 정보 획득부(702) 및 선택 스위치(703)를 더 포함하는데, 이 점이 제1 실시형태에 따른 암호화 장치(100)와 다르다. 이후, 제1 실시형태와의 차이점에 대하여 주로 설명할 것이며, 제1 실시형태에서와 동일한 기능을 가진 각 구성 요소에 대해서는 동일한 명칭/참조 번호를 부여하고 그 설명은 생략한다.
모션 정보 메모리(701)는 암호화된 화소 블록에 적용된 모션 정보를 참조 모션 정보로서 임시 저장한다. 모션 정보 메모리(701)는 모션 정보에 대하여 서브샘플링과 같은 압축 처리를 수행함으로써 정보의 양을 삭감할 수 있다.
도 29는 제3 실시형태에 따른 모션 정보 메모리(701)의 상세한 예를 보인 도이다. 모션 정보 메모리(701)는, 도 29에 도시된 것처럼, 프레임 또는 슬라이스의 단위로 유지되고, 동일한 프레임의 모션 정보를 참조 모션 정보(710)로서 저장하는 공간 방향 참조 모션 정보 메모리(701A) 및 암호화가 완료된 프레임의 모션 정보를 참조 모션 정보(710)로서 저장하는 시간 방향 참조 모션 정보 메모리(701B)를 더 포함한다. 시간 방향 참조 모션 정보 메모리(701B)는 예측을 위해 암호화 대상 프레임에 의해 사용되는 참조 프레임의 수에 따라서 복수 개가 배치될 수 있다.
참조 모션 정보(710)는 미리 정해진 영역 단위(예를 들면, 4×4 화소 블록의 단위)로 공간 방향 참조 모션 정보 메모리(701A) 및 시간 방향 참조 모션 정보 메모리(701B)에 유지된다. 참조 모션 정보(710)는 영역이, 후술하는 인터 예측에 의해 암호화되는지 후술하는 인트라 예측에 의해 암호화되는지를 나타내는 정보를 더 포함한다. 또한, 화소 블록(부호화 유닛 또는 프리딕션 유닛)이 H.264에서 규정된 스킵 모드나 다이렉트 모드 또는 후술하는 병합(merge) 모드에서와 같이 모션 정보에 포함된 모션 벡터의 값을 암호화하지 않고 암호화된 영역으로부터 예측된 모션 정보를 이용하여 인터 예측되는 경우에도, 화소 블록의 모션 정보는 참조 모션 정보(710)로서 유지된다.
암호화 대상 프레임 또는 암호화 대상 슬라이스에 대한 암호화 처리가 완료될 때, 프레임의 공간 방향 참조 모션 정보 메모리(701A)는 다음에 암호화될 프레임에 대하여 사용되는 시간 방향 참조 모션 정보 메모리(701B)로서 취급되도록 변경된다. 이때, 시간 방향 참조 모션 정보 메모리(701B)의 용량을 삭감하기 위해, 모션 정보를 압축하고 압축된 모션 정보를 시간 방향 참조 모션 정보 메모리(701B)에 저장하도록 구성할 수 있다.
모션 정보 획득부(702)는 모션 정보 메모리(701)로부터의 참조 모션 정보를 입력으로 수신하고, 암호화 화소 블록에 대하여 사용되는 모션 정보(B)를 출력한다. 모션 정보 획득부(702)에 대해서는 뒤에서 상세하게 설명한다.
선택 스위치(703)는 후술하는 예측 모드 정보에 따라서 모션 정보 획득부(702)로부터 출력된 모션 정보(B)와 모션 평가부(109)로부터 출력된 모션 정보(A) 중 하나를 선택하고, 선택된 모션 정보를 예측 화상 생성부(107)에 모션 정보로서 출력한다. 모션 평가부(109)로부터 출력된 모션 정보(A)는 도시 생략된 예측 모션 벡터 획득부로부터 획득된 예측 모션 벡터와의 차분 정보와 예측 모션 벡터 획득 위치 정보를 암호화하기 위해 사용된다. 이후, 이러한 예측 모드는 인터 모드(inter-mode)라고 부른다. 한편, 예측 모드 정보에 따라서 모션 정보 획득부(702)로부터 출력된 모션 정보(B)는 인접 화소 블록으로부터의 모션 정보를 병합하기 위해 사용되고, 암호화 화소 블록에 직접 적용되며, 따라서 모션 정보에 관한 기타 정보(예를 들면, 모션 벡터 차분 정보)는 암호화될 필요가 없다. 이후, 이러한 예측 모드는 병합 모드라고 부른다.
예측 모드 정보는 암호화 제어부(111)에 의해 제어되는 예측 모드에 따르고, 선택 스위치(703)의 전환 정보를 포함한다.
이하에서는 모션 정보 획득부(702)에 대해 상세하게 설명한다.
모션 정보 획득부(702)는 참조 모션 정보를 입력으로서 수신하고 모션 정보(B)를 선택 스위치(703)에 출력한다. 도 30a 및 도 30b는 제3 실시형태에 따른 암호화 화소 블록에 대하여 모션 정보 후보가 도출되는 블록 위치의 예를 보인 도이다. 도 30a에 있어서, A∼E는 암호화 화소 블록에 공간적으로 인접하며 모션 정보 후보를 도출하기 위해 사용되는 화소 블록을 나타낸다. 또한 도 30b에 있어서, T는 시간적으로 인접하고 모션 정보 후보를 도출하기 위해 사용되는 화소 블록을 나타낸다.
도 31은 제3 실시형태에 따른 복수의 모션 정보 후보의 화소 블록 위치와 화소 블록 위치 인덱스(idx) 간의 관계 예를 보인 도이다. 모션 정보 후보의 블록 위치는 공간적으로 인접한 블록 위치(A∼E) 및 시간적으로 인접한 화소 블록 위치(T)의 순서로 배치되고, 그 순서 내에 이용 가능한(인터 예측이 적용된) 화소 블록이 있는 경우에는 병합 모드의 저장 리스트 MergeCandList에 저장된 모션 정보의 최대 수(N-1)에 도달할 때까지 인덱스(idx)가 순차적으로 할당된다.
도 32는 제3 실시형태에 따른 MergeCandList에 대한 저장 처리의 예를 보인 흐름도이다.
먼저, 모션 정보 획득부(702)는 MergeCandList에 대한 저장 수(numMergeCand)를 "0"으로 초기화한다(단계 S301).
이어서, 모션 정보 획득부(702)는 공간적으로 인접한 모든 블록(예를 들면, 블록 A∼E)이 이용 가능한지 여부를 결정한다(단계 S302, S303). 공간적으로 인접한 모든 블록이 이용 가능한 경우에(단계 S303에서 "예"), 모션 정보 획득부(702)는 공간적으로 인접한 블록들의 모션 정보를 MergeCandList에 저장하고 numMergeCand를 증분시킨다(단계 S304). 한편, 공간적으로 인접한 모든 블록이 이용 가능하지 않은 경우에(단계 S303에서 "아니오"), 모션 정보 획득부(702)는 단계 S304의 처리를 수행하지 않는다.
공간적으로 인접한 모든 블록에 대하여 단계 S303 및 S304의 처리가 수행될 때(단계 S305), 모션 정보 획득부(702)는 시간적으로 인접한 블록(예를 들면, 블록 T)이 이용 가능한지 결정한다(단계 S306).
시간적으로 인접한 블록이 이용 가능한 경우에(단계 S306에서 "예"), 모션 정보 획득부(702)는 시간적으로 인접한 블록(T)의 모션 정보를 MergeCandList에 저장하고 numMergeCand를 증분시킨다(단계 S307). 한편, 시간적으로 인접한 블록이 이용 가능하지 않은 경우에(단계 S306에서 "아니오"), 모션 정보 획득부(702)는 단계 S307의 처리를 수행하지 않는다.
이어서, 모션 정보 획득부(702)는 MergeCandList 내의 중복 모션 정보를 삭제하고, 삭제된 수에 대응하는 값만큼 numMergeCand를 감분시킨다(단계 S308). 모션 정보가 MergeCandList 내에서 중복되는지 여부를 결정하기 위해, 모션 정보 획득부(702)는 MergeCandList 내의 2가지 유형의 모션 정보(모션 벡터(mv)와 참조 번호(refIdx)) 및 WP 파라미터 정보가 서로 일치하는지 여부를 결정하고, 모든 정보가 서로 일치하는 경우에는 MergeCandList[]로부터 한쪽을 삭제한다.
도 33은 제3 실시형태에 따른 모션 정보의 저장 리스트의 예를 보인 도이고, 구체적으로는, N=5로 하여 도 31에 도시된 테이블에 따라서 각 idx에 대응하는 모션 정보(모션 벡터(mv)와 참조 번호(refIdx))의 저장 리스트 MergeCandList[idx]의 예를 보인 것이다. 도 33에 있어서, idx=0인 저장 리스트에는 리스트 0의 참조 모션 정보(모션 벡터(mv0L0), 참조 번호(refIdx0L0))가 저장되고, idx=1인 저장 리스트에는 리스트 1의 참조 모션 정보(모션 벡터(mv1L1), 참조 번호(refIdx1L1))가 저장되며, idx=2∼4인 저장 리스트에는 리스트 0과 리스트 1 양쪽의 참조 모션 정보(모션 벡터(mv2L0, mv2L1), 참조 번호(refIdx2L0, refIdx2L1))가 저장된다.
암호화 화소 블록은 최대 N 종류의 인덱스(idx) 중 하나를 선택하고, 선택된 인덱스(idx)에 대응하는 화소 블록의 참조 모션 정보를 MergeCandList[idx]로부터 도출하며, 도출된 참조 정보를 모션 정보(B)로서 출력한다. 참조 모션 정보가 없는 경우에, 암호화 화소 블록은 제로 벡터를 가진 모션 정보를 예측 모션 정보 후보(B)로서 출력한다. 선택된 인덱스(idx)의 정보(후술하는 신택스 merge_idx)는 예측 모드 정보에 포함되어, 암호화부(110)에 의해 암호화된다.
또한, 공간적 또는 시간적으로 인접한 블록들은 도 30a 및 도 30b에 도시된 것으로 제한되지 않고, 인접 블록이 암호화가 완료된 영역 내의 어떤 위치에도 위치할 수 있다. 또한, 전술한 리스트의 다른 예로서, MergeCandList에 대한 최대 저장 수(N) 및 MergeCandList에 대한 저장 순서는 전술한 범위에 제한되지 않고, 임의의 순서 또는 임의의 최대 수가 사용될 수 있다.
암호화 슬라이스가 B 슬라이스이고, 시간적 또는 공간적으로 인접한 화소 블록의 참조 모션 정보를 MergeCandList[]에 저장한 경우에도 최대 저장 수(N)에 도달하지 못한 경우에는, 그 시점에서 MergeCandList[]에 저장되어 있는 리스트 0의 모션 정보 및 리스트 1의 모션 정보를 서로 조합하여 양방향 예측을 새로 생성하고, 생성된 양방향 예측은 MergeCandList[]에 저장된다.
도 34는 제3 실시형태에 따른 모션 정보를 저장 리스트에 저장하는 방법의 예를 보인 흐름도이다.
먼저, 모션 정보 획득부(702)는 시간적 또는 공간적으로 인접한 화소 블록으로부터 MergeCandList로의 저장 수를 numInputMergeCand로 설정하고, 현재 저장 수를 나타내는 변수 numMergeCand를 numInputMergeCand로 초기화하며, 변수 combIdx 및 combCnt를 0으로 초기화한다(단계 S401).
이어서, 모션 정보 획득부(702)는 새로 생성된 양방향 예측의 조합(도 35 참조)을 이용하여 combIdx로부터 변수 l0CandIdx 및 l1CandIdx를 도출한다(단계 S402). 또한, 변수 combIdx로부터 변수 l0CandIdx 및 l1CandIdx를 도출하기 위한 조합은 도 36에 도시된 예로 한정되지 않고, 그들이 중복되지 않는 한 임의의 순서로 배치될 수 있다.
이어서, 모션 정보 획득부(702)는 MergeCandList[l0CandIdx]에 저장되어 있는 참조 모션 정보(양방향 예측의 경우에 리스트 0과 리스트 1의 2가지 유형)를 l0Cand에 설정한다. l0Cand의 모션 정보에서의 참조 번호를 refIdxL0l0Cand라고 부르고, l0Cand의 모션 정보에서의 모션 벡터를 mvL0l0Cand라고 부른다. 마찬가지로, 모션 정보 획득부(702)는 MergeCandList[l1CandIdx]에 저장되어 있는 참조 모션 정보를 l1Cand에 설정한다. l1Cand의 참조 모션 정보에서의 참조 번호를 refIdxL1l1Cand라고 부르고, l1Cand의 참조 모션 정보에서의 모션 벡터를 mvL1l1Cand라고 부른다(단계 S403). 또한, 리스트 0의 모션 정보로서 l0Cand를, 및 리스트 1의 모션 정보로서 l1Cand를 이용하여 양방향 예측을 행하기 위한 모션 정보의 조합은 combCand라고 부른다.
이어서, 모션 정보 획득부(702)는 조건식 12 내지 15를 이용하여 l0Cand 및 l1Cand가 참조하는 블록들이 동일한 것인지 여부를 결정한다(단계 S404).
RefPicOrderCnt(refIdx, LX)는 참조 리스트 X(여기에서, X = 0 또는 1)에 있어서 참조 번호(refIdx)에 대응하는 참조 프레임의 POC(Picture Order Count)를 도출하기 위한 함수이다. 또한, WpParam(refIdx, LX)는 참조 리스트 X(여기에서, X = 0 또는 1)에 있어서 참조 번호(refIdx)에 대응하는 참조 프레임의 WP 파라미터 정보를 도출하기 위한 함수이다. 이 함수는 리스트 0의 참조 프레임과 리스트 1의 참조 프레임이 동일한 WP 파라미터(WP의 유무(WP_flag), 가중 계수(Weight), 오프셋(Offset))를 갖지 않은 경우에는 "Yes"를, 참조 프레임이 완전히 동일한 파라미터를 갖는 경우에는 "No"를 반환한다. WpParam()의 다른 예로서, 모든 파라미터의 일치를 체크하지 않고 WP의 유무(WP_flag) 및 오프셋(Offset)의 일치만을 체크하는 등의 경우에서와 같이, WP 파라미터의 데이터의 일부만을 이용하여 결정할 수도 있다.
조건식 12가 만족되고, 조건식 13 내지 15 중 하나가 만족되는 경우(단계 S404에서 "예"), 모션 정보 획득부(702)는 mergeCandList[] 내의 l0Cand 및 l1Cand과 동일한 조합을 이용하여 양방향 예측이 있는지 여부를 결정한다(단계 S405).
mergeCandList[] 내에 l0Cand 및 l1Cand과 동일한 조합이 있는 경우에(단계 S405에서 "예"), 모션 정보 획득부(702)는 combCand를 mergeCandList의 최후미에 추가한다(단계 S406). 더 구체적으로, 모션 정보 획득부(702)는 combCand를 mergeCandList[numMergeCand]에 대입하고 numMergeCand와 combCnt를 증분시킨다.
이어서, 모션 정보 획득부(702)는 combIdx를 증분시킨다(단계 S407).
이어서, 모션 정보 획득부(702)는 조건식 16 내지 18을 이용하여 MergeCandList[]에 대한 저장을 종료할 것인지 여부를 결정한다(단계 S408).
조건식 16 내지 18 중 하나가 만족되는 경우에(단계 S408에서 "예"), 처리는 종료된다. 한편, 조건식 16 내지 18 모두가 만족되는 경우(단계 S408에서 "아니오")에는 처리가 단계 S402로 되돌아간다.
암호화 슬라이스가 B 슬라이스이고, 공간적 또는 시간적으로 인접한 화소 블록의 참조 모션 정보를 MergeCandList[]에 저장한 경우에도 최대 저장 수(N)에 도달하지 못한 경우의 처리를 설명하였다. 상기와 같이, 모션 정보(B)는 모션 정보 획득부(702)로부터 선택 스위치(703)로 출력된다.
도 36은 제3 실시형태에 따른 프레드 유닛 신택스(512)의 예를 보인 도이다. skip_flag는 프리딕션 유닛 신택스가 속하는 부호화 유닛의 예측 모드가 스킵 모드인지 여부를 나타내는 플래그이다. skip_flag가 "1"인 경우에, 이것은 예측 모드 정보 이외의 신택스(부호화 유닛 신택스, 프리딕션 유닛 신택스, 및 트랜스폼 유닛 신택스)가 암호화되지 않는다는 것을 표시한다. 한편, skip_flag가 "0"인 경우에, 이것은 프리딕션 유닛 신택스가 속하는 부호화 유닛의 예측 모드가 스킵 모드가 아니라는 것을 표시한다.
다음에, 암호화 화소 블록(프리딕션 유닛)이 병합 모드에 있는지 여부를 표시하는 플래그인 merge_flag가 암호화된다. merge_flag가 "1"인 경우, 이것은 프리딕션 유닛이 병합 모드에 있음을 표시한다. 한편, 그 값이 "0"인 경우, 이것은 프리딕션 유닛이 인터 모드를 사용한다는 것을 표시한다. merge_flag의 경우에는 전술한 화소 블록 위치 인덱스(idx)를 특정하기 위해 사용한 정보인 merge_idx가 암호화된다.
merge_flag가 "1"인 경우에 merge_flag 및 merge_idx 이외의 프리딕션 유닛 신택스는 암호화될 필요가 없다. 한편, merge_flag가 "0"인 경우에, 이것은 프리딕션 유닛이 인터 모드임을 표시한다.
상기와 같이, 제3 실시형태에 따르면, 가중 모션 보상 및 병합 모드를 동시에 적용함에 있어서, 암호화 장치(700)는 병합 모드의 저장 리스트(MergeCandList) 내에서 중복되는 모션 정보를 삭제할 때 모션 벡터와 참조 번호가 서로 일치하고 WP 파라미터 정보가 서로 다른 경우에도 공간적 또는 시간적으로 인접한 화소 블록의 참조 모션 정보가 MergeCandList로부터 삭제되는 문제를 해소한다. 또한, 참조 모션 정보가 MergeCandList에 저장될 때에도 최대 저장 수(N)에 도달하지 못한 경우에, 그 시점에서 MergeCandList에 저장되어 있는 리스트 0 및 리스트 1의 모션 정보가 함께 조합되고 양방향 예측이 새로 생성되어 MergeCandList[]에 저장될 때에, 양방향 예측에 사용된 2가지 유형의 모션 정보가 동일 블록을 참조하는 문제가 해소된다.
양방향 예측에 사용된 2가지 유형의 모션 정보가 동일 블록을 참조하는 경우에는, 양방향 예측에 따른 예측치와 단방향 예측에 따른 예측치가 서로 일치한다. 일반적으로, 양방향 예측의 효율이 단방향 예측의 효율보다 더 높기 때문에, 양방향 예측에 사용된 2가지 유형의 모션 정보는 동일 블록을 참조하지 않는 것이 바람직하다. 양방향 예측에 사용되는 2가지 유형의 모션 정보가 동일 블록을 참조하는지 여부를 결정할 때, 참조 번호로부터 도출된 참조 프레임 번호 위치(POC) 외에, 가중 모션 보상의 파라미터가 결정 항목에 도입된다. 따라서, 참조 프레임 번호 위치(POC)가 모션 벡터와 동일한 경우에도, 암호화 장치(700)는 가중 모션 보상의 파라미터가 서로 다른 2가지 유형의 모션 정보가 동일 블록을 참조하지 않는다고 결정하여, 병합 모드의 저장 리스트에 저장되어 있는 양방향 예측에 사용되는 모션 정보의 예측 효율을 향상시킬 수 있다.
또한, MergeCandList에 대한 저장 처리의 다른 예로서, 시간적으로 인접한 블록(T)의 모션 정보가 MergeCandList에 저장되어 있을 때 시간적으로 인접한 블록(T)의 참조 프레임의 WP 파라미터와 암호화 화소 블록의 참조 프레임의 WP 파라미터가 서로 일치하는지 여부를 결정하고, WP 파라미터가 서로 일치하는 경우에만 모션 정보가 MergeCandList에 저장되도록 구성할 수도 있다. 이렇게 하는 이유는, 시간적으로 인접한 블록(T)의 참조 프레임의 WP 파라미터와 암호화 화소 블록의 참조 프레임의 WP 파라미터가 서로 다른 경우에, 시간적으로 인접한 블록(T)의 모션 정보와 암호화 화소 블록의 모션 정보 간의 상관성이 낮은 것으로 추정할 수 있기 때문이다.
도 37은 제3 실시형태에 따른 MergeCandList에 대한 저장 처리의 다른 예를 보인 흐름도이다. 도 37에 도시한 흐름도는 단계 S507을 제외하고 도 32에 도시한 흐름도와 동일하다.
또한, 추가의 다른 예로서, 시간적으로 인접한 블록(T)의 참조 프레임의 WP 파라미터와 암호화 화소 블록의 참조 프레임의 WP 파라미터가 서로 다른 경우에, 공간적으로 블록(T)에 인접한 블록 중에서 암호화 화소 블록의 참조 프레임에 있어서 동일한 WP 파라미터를 가진 블록을 블록 T로 치환할 수 있다. 이때, 시간적으로 인접한 블록(T)의 모션 정보와 암호화 화소 블록의 모션 정보 간의 상관성은 낮아지지 않는다.
제4 실시형태
제4 실시형태에서는, 제1 실시형태에 따른 암호화 장치에 의해 암호화된 암호화 데이터를 복호하는 복호 장치에 대해 설명한다.
도 38은 제4 실시형태에 따른 복호 장치(800)의 구성 예를 보인 블록도이다.
복호 장치(800)는 도시를 생략한 입력 버퍼 등에 저장된 암호화 데이터를 복호 화상으로 복호하고, 복호 화상을 도시 생략한 출력 버퍼에 출력 화상으로서 출력한다. 암호화 데이터는 예를 들면 도 1에 도시된 암호화 장치(100) 등으로부터 출력되고, 도시 생략한 저장 시스템, 전송 시스템, 버퍼 등을 통해 복호 장치(800)에 입력된다.
복호 장치(800)는 도 38에 도시된 것처럼 복호부(801), 역 양자화부(802), 역 직교 변환부(803), 가산부(804), 예측 화상 생성부(805), 및 인덱스 설정부(806)를 포함한다. 역 양자화부(802), 역 직교 변환부(803), 가산부(804), 및 예측 화상 생성부(805)는 각각 도 1에 도시된 역 양자화부(104), 역 직교 변환부(105), 가산부(106), 및 예측 화상 생성부(107)와 실질적으로 동일하거나 유사한 요소이다. 또한, 도 38에 도시된 복호 제어부(807)는 복호 장치(800)를 제어하며, 예를 들면 CPU 등에 의해 실현된다.
암호화 데이터를 복호하기 위해, 복호부(801)는 각 프레임 또는 각 필드마다의 신택스에 기초하여 복호를 수행한다. 복호부(801)는 각 신택스의 부호열의 엔트로피 복호를 순차적으로 수행하여 예측 모드, 모션 벡터 및 참조 번호를 포함한 모션 정보, 가중 모션 보상 예측에 사용하는 인덱스 정보, 및 양자화 변환 계수 등과 같은 암호화 대상 블록의 암호화 파라미터를 재생성한다. 여기에서, 암호화 파라미터는 위에서 설명한 것 외에 변환 계수에 관한 정보, 양자화에 관한 정보 등을 복호하는데 필요한 모든 파라미터이다. 복호부(801)는 모션 정보, 인덱스 정보 및 양자화 변환 계수를 출력하여 양자화 변환 계수를 역 양자화부(802)에 입력하고, 인덱스 정보를 인덱스 설정부(806)에 입력하며, 모션 정보를 예측 화상 생성부(805)에 입력한다.
역 양자화부(802)는 복호부(801)로부터 입력된 양자화 변환 계수의 역 양자화 처리를 수행하여 복원 변환 계수를 획득한다. 더 구체적으로, 역 양자화부(802)는 복호부(801)에서 사용된 양자화 정보에 기초하여 역 양자화를 수행한다. 더 자세히 설명하면, 역 양자화부(802)는 양자화 변환 계수에, 양자화 정보에 기초하여 도출된 양자화 스텝 사이즈를 승산하여 복원 변환 계수를 획득한다. 역 양자화부(802)는 복원 변환 계수를 출력하여 역 직교 변환부(803)에 입력한다.
역 직교 변환부(803)는 역 양자화부(802)로부터 입력된 복원 변환 계수에 대하여 암호화 측에서 수행된 직교 변환에 대응하는 역 직교 변환을 수행하여 복원 예측 오차를 획득한다. 역 직교 변환부(803)는 복원 예측 오차를 출력하여 가산부(804)에 입력한다.
가산부(804)는 역 직교 변환부(803)로부터 입력된 복원 예측 오차 및 대응하는 예측 화상을 가산하여 복호 화상을 생성한다. 가산부(804)는 복호 화상을 출력하여 예측 화상 생성부(805)에 입력한다. 또한, 가산부(804)는 복호 화상을 출력 화상으로서 외부에 출력한다. 그 다음에, 출력 화상은 도시 생략된 외부 출력 버퍼 등에 임시로 저장되고, 예를 들면 복호 제어부(807)가 관리하는 출력 타이밍에, 도시 생략된 디스플레이 또는 모니터와 같은 디스플레이 장치 시스템 또는 영상 장치 시스템에 출력된다.
인덱스 설정부(806)는 복호부(801)로부터 입력된 인덱스 정보를 수신하고, 참조 리스트(리스트 번호)와 참조 화상(참조 번호)를 체크하며, WP 파라미터 정보를 출력하여 예측 화상 생성부(805)에 입력한다.
도 39는 제4 실시형태에 따른 인덱스 설정부(806)의 구성 예를 보인 블록도이다. 인덱스 설정부(806)는, 도 39에 도시된 것처럼, 참조 화상 확인부(901)와 WP 파라미터 생성부(902)를 포함한다.
참조 화상 확인부(901)는 복호부(801)로부터 인덱스 정보를 수신하고, 2개의 참조 리스트에 포함된 참조 번호가 동일한 참조 화상을 나타내는지 여부를 체크한다.
여기에서, 참조 리스트에 포함되어 있는 참조 번호는, 예를 들면, H.264 등에서 규정된 방법을 이용하여 이미 복호되어 있다. 따라서, 참조 화상 확인부(901)는 H.264 등에서 규정된 복호 픽쳐 버퍼(decoded picture buffer, DPB)의 관리에 따라서, 도출된 참조 리스트와 참조 번호를 이용하는 동일한 참조 화상을 나타내는 조합이 있는지 여부를 체크할 수 있다. 또한, DPB의 제어에 있어서 H.264 등에서 규정된 방법을 이용하거나, 또는 임의의 다른 방법을 이용할 수 있다. 여기에서, 참조 리스트와 참조 번호는 DPB의 제어에 기초하여 미리 정해질 수 있다.
참조 화상 확인부(901)는 공통의 참조 리스트를 생성하고, 도 14에 도시된 스캔 순서로 참조 리스트와 참조 번호를 체크한다. 여기에서, 공통의 참조 리스트는 수학식 10에 표시된 의사 부호를 이용하여 생성된다.
WP 파라미터 생성부(902)는 참조 화상 확인부(901)에서 체크된 참조 리스트와 참조 번호 간의 관계에 기초하여, 상기 생성된 공통 참조 리스트로부터 참조 리스트와 참조 번호에 대응하는 WP 파라미터 정보를 생성하고, 생성된 WP 파라미터 정보를 출력하여 예측 화상 생성부(805)에 입력한다. WP 파라미터 정보에 대해서는 도 9a 및 도 9b를 참조하여 이미 설명하였으므로, 여기에서는 그 설명을 생략한다.
WP 파라미터 생성부(902)는 공통 리스트에 따라서 common_scan_list() 함수 및 common_scan_ref_idx() 함수를 이용하여, 스캔으로 참조 리스트와 참조 번호를 추출하고 그 빠진 장소에 WP 파라미터 정보를 보충한다.
다시 말하면, 도 15 및 도 16에 도시된 공통 리스트는 도 11 및 도 13에서와 같이 각각 복원되고, 이들의 대응관계에 기초하여 공통 리스트에 대응하는 인덱스 정보를 도 9a 및 도 9b에 도시된 WP 파라미터 정보에 할당한다.
또한, 도 14에 도시한 스캔 순서는 일례이고, 미리 정해진 스캔 순서라면 임의의 다른 스캔 순서도 이용할 수 있다. 또한, 수학식 10에 표시된 의사 부호는 일례이고, 처리의 목적이 실현될 수 있다면 처리의 추가나 용장한 처리의 삭감도 이루어질 수 있다.
다시 도 38로 되돌아가서, 예측 화상 생성부(805)는 복호부(801)로부터 입력된 모션 정보, 인덱스 설정부(806)로부터 입력된 WP 파라미터 정보, 및 가산부(804)로부터 입력된 복호 화상을 이용하여 예측 화상을 생성한다.
여기에서, 예측 화상 생성부(805)에 대해 도 4를 참조하여 자세히 설명한다. 예측 화상 생성부(805)는, 예측 화상 생성부(107)와 마찬가지로, 복수 프레임 모션 보상부(201), 메모리(202), 단방향 모션 보상부(203), 예측 파라미터 제어부(204), 참조 화상 선택기(205), 프레임 메모리(206), 및 참조 화상 제어부(207)를 포함한다.
프레임 메모리(206)는 참조 화상 제어부(207)의 제어하에 상기 가산부(106)로부터 입력된 복호 화상을 참조 화상으로서 저장한다. 프레임 메모리(206)는 참조 화상을 임시로 저장하기 위해 사용되는 복수의 메모리 집합(FM1∼FMN(여기에서, N≥2))을 포함한다.
예측 파라미터 제어부(204)는 복호부(801)로부터 입력된 모션 정보에 기초하여, 참조 화상 번호와 예측 파라미터 각각의 복수의 조합을 테이블로서 준비한다. 여기에서, 상기 모션 정보는 모션 보상 예측용으로 사용되는 모션의 편차를 나타내는 모션 벡터, 참조 화상 번호, 및 단방향/양방향 예측과 같은 예측 모드에 관한 정보를 가리킨다. 예측 파라미터는 모션 벡터 및 예측 모드에 관한 정보를 가리킨다. 그 다음에, 예측 파라미터 제어부(204)는 모션 정보에 기초하여 예측 화상을 생성하는데 사용된 참조 화상 번호 및 예측 파라미터의 조합을 선택하고 상기 선택된 조합을 출력하여, 참조 화상 번호는 참조 화상 선택기(205)에 입력하고 예측 파라미터는 단방향 모션 보상부(203)에 입력한다.
참조 화상 선택기(205)는 예측 파라미터 제어부(204)로부터 입력된 참조 화상 번호에 기초하여, 프레임 메모리(206)에 포함된 프레임 메모리(FM1∼FMN)의 출력 단자 중 하나가 전환되게 변경하는 스위치이다. 예를 들면, 참조 화상 번호가 "0"일 때 참조 화상 선택기(205)는 프레임 메모리(FM1)의 출력 단자를 참조 화상 선택기(205)의 출력 단자에 접속하고, 참조 화상 번호가 N-1일 때 참조 화상 선택기(205)는 프레임 메모리(FMN)의 출력 단자를 참조 화상 선택기(205)의 출력 단자에 접속한다. 참조 화상 선택기(205)는 프레임 메모리(206)에 포함된 프레임 메모리(FM1∼FMN) 중에서 출력 단자가 접속된 프레임 메모리에 저장된 참조 화상을 출력하여 단방향 모션 보상부(203)에 입력한다. 복호 장치(800)에서는 참조 화상이 예측 화상 생성부(805) 이외의 어떠한 유닛에서도 사용되지 않기 때문에, 참조 화상은 예측 화상 생성부(805)의 외부로 출력되지 않을 수 있다.
단방향 예측 모션 보상부(203)는 예측 파라미터 제어부(204)로부터 입력된 예측 파라미터 및 참조 화상 선택기(205)로부터 입력된 참조 화상에 기초하여, 모션 보상 예측 처리를 수행함으로써 단방향 예측 화상을 생성한다. 모션 보상 예측에 대해서는 도 5를 참조하여 이미 설명하였고, 따라서 그 설명은 생략한다.
단방향 예측 모션 보상부(203)는 단방향 예측 화상을 출력하여 그 단방향 예측 화상을 메모리(202)에 임시로 저장한다. 여기에서, 모션 정보(예측 파라미터)가 양방향 예측을 나타내는 경우에는 복수 프레임 모션 보상부(201)가 2가지 유형의 단방향 예측 화상을 이용하여 가중 예측을 행한다. 따라서, 단방향 예측 모션 보상부(203)는 제1 유형에 대응하는 단방향 예측 화상을 메모리(202)에 저장하고, 제2 유형에 대응하는 단방향 예측 화상을 복수 프레임 모션 보상부(201)에 직접 출력한다. 여기에서, 상기 제1 유형에 대응하는 단방향 예측 화상은 제1 예측 화상이라고 부르고, 상기 제2 유형에 대응하는 단방향 예측 화상은 제2 예측 화상이라고 부른다.
또한, 2개의 단방향 모션 보상부(203)를 준비하여 2개의 단방향 예측 화상을 생성할 수 있다. 그 경우에, 모션 정보(예측 파라미터)가 단방향 예측을 나타내면, 단방향 모션 보상부(203)는 제1 단방향 예측 화상을 제1 예측 화상으로서 복수 프레임 모션 보상부(201)에 직접 출력할 수 있다.
복수 프레임 모션 보상부(201)는 메모리(202)로부터 입력된 제1 예측 화상, 단방향 예측 모션 보상부(203)로부터 입력된 제2 예측 화상, 및 모션 평가부(109)로부터 입력된 WP 파라미터 정보를 이용하여 가중 예측을 행함으로써 예측 화상을 생성한다. 복수 프레임 모션 보상부(201)는 예측 화상을 출력하여 가산부(804)에 입력한다.
여기에서, 복수 프레임 모션 보상부(201)에 대하여 도 6을 참조하여 자세히 설명한다. 예측 화상 생성부(107)와 마찬가지로, 복수 프레임 모션 보상부(201)는 디폴트 모션 보상부(301), 가중 모션 보상부(302), WP 파라미터 제어부(303), 및 WP 선택기(304, 305)를 포함한다.
WP 파라미터 제어부(303)는 인덱스 설정부(806)로부터 입력된 WP 파라미터 정보에 기초하여 WP 적용 플래그 및 가중 정보를 출력하여, WP 적용 플래그는 WP 선택기(304, 305)에 입력하고 가중 정보는 가중 모션 보상부(302)에 입력한다.
여기에서, WP 파라미터 정보는 가중 계수의 고정 소수점 정밀도, 제1 WP 적용 플래그, 제1 가중 계수, 제1 예측 화상에 대응하는 제1 오프셋, 제2 WP 적용 플래그, 제2 가중 계수, 및 제2 예측 화상에 대응하는 제2 오프셋의 정보를 포함한다. WP 적용 플래그는 각각의 대응하는 참조 화상과 신호 성분에 대하여 설정될 수 있는 파라미터이고, 가중 모션 보상 예측이 이루어지는지 여부를 표시한다. 가중 정보는 가중 계수의 고정 소수점 정밀도, 제1 가중 계수, 제1 오프셋, 제2 가중 계수, 및 제2 오프셋의 정보를 포함한다. 여기에서, WP 파라미터 정보는 제1 실시형태에서의 것과 동일한 정보를 나타낸다.
더 자세히 설명하면, WP 파라미터 정보가 인덱스 설정부(806)로부터 입력될 때, WP 파라미터 제어부(303)는 제1 WP 적용 플래그, 제2 WP 적용 플래그 및 가중 정보로 분할되는 WP 파라미터 정보를 출력하여, 제1 WP 적용 플래그는 WP 선택기(304)에, 제2 WP 적용 플래그는 WP 선택기(305)에, 및 가중 정보는 가중 모션 보상부(302)에 각각 입력한다.
WP 선택기(304, 305)는 WP 파라미터 제어부(303)로부터 입력된 WP 적용 플래그에 기초하여 예측 화상의 접속단을 변경한다. 대응하는 WP 적용 플래그가 "0"인 경우, 각각의 WP 선택기(304, 305)는 그 출력단을 디폴트 모션 보상부(301)에 접속한다. 그 다음에, WP 선택기(304, 305)는 제1 및 제2 예측 화상을 출력하여 디폴트 모션 보상부(301)에 입력한다. 한편, 대응하는 WP 적용 플래그가 "1"인 경우, 각각의 WP 선택기(304, 305)는 그 출력단을 가중 모션 보상부(302)에 접속한다. 그 다음에, WP 선택기(304, 305)는 제1 및 제2 예측 화상을 출력하여 가중 모션 보상부(302)에 입력한다.
디폴트 모션 보상부(301)는 WP 선택기(304, 305)로부터 입력된 2개의 단방향 예측 화상(제1 및 제2 예측 화상)에 기초한 평균치 처리를 수행하여 예측 화상을 생성한다. 더 구체적으로, 제1 및 제2 WP 적용 플래그가 "0"인 경우에, 디폴트 모션 보상부(301)는 수학식 1에 기초하여 평균치 처리를 수행한다.
또한, 모션 정보(예측 파라미터)에 의해 표시되는 예측 모드가 단방향 예측인 경우에, 디폴트 모션 보상부(301)는 수학식 4에 기초해 제1 예측 화상만을 이용하여 최종 예측 화상을 산출한다.
가중 모션 보상부(302)는 WP 선택기(304, 305)로부터 입력된 2개의 단방향 예측 화상(제1 및 제2 예측 화상) 및 WP 파라미터 제어부(303)로부터 입력된 가중 정보에 기초하여 가중 모션 보상을 수행한다. 더 구체적으로, 가중 모션 보상부(302)는 제1 및 제2 WP 적용 플래그가 "1"인 경우에 수학식 7에 기초하여 가중 처리를 수행한다.
또한, 제1 및 제2 예측 화상의 연산 정밀도와 예측 화상의 연산 정밀도가 서로 다른 경우에, 가중 모션 보상부(302)는 수학식 8에서처럼 고정 소수점 정밀도인 logWDC를 제어함으로써 라운딩 처리를 실현한다.
또한, 모션 정보(예측 파라미터)에 의해 표시되는 예측 모드가 단방향 예측인 경우에, 가중 모션 보상부(302)는 수학식 9에 따라 제1 예측 화상만을 이용하여 최종 예측 화상을 산출한다.
또한, 제1 및 제2 예측 화상의 연산 정밀도와 예측 화상의 연산 정밀도가 서로 다른 경우에, 가중 모션 보상부(302)는 양방향 예측의 경우와 마찬가지로, 수학식 8에서처럼 고정 소수점 정밀도인 logWDC를 제어함으로써 라운딩 처리를 실현한다.
가중 계수의 고정 소수점 정밀도는 도 7을 참조하여 이미 설명하였으므로, 여기에서는 그 설명을 생략한다. 또한, 단방향 예측의 경우에는 제2 예측 화상에 대응하는 각종 파라미터(제2 WP 적용 플래그, 제2 가중 계수, 및 제2 오프셋 정보)가 사용되지 않고, 미리 정해진 초기치로 설정될 수 있다.
복호부(801)는 도 18에 도시된 신택스(500)를 이용한다. 신택스(500)는 복호부(801)의 복호 대상인 암호화 데이터의 구조를 나타낸다. 신택스(500)는 도 18을 참조하여 이미 설명하였으므로, 여기에서는 그 설명을 생략한다. 또한, 픽쳐 파라미터 세트 신택스(505)는, 암호화 대신에 복호가 사용된다는 점을 제외하고 도 19를 참조하여 설명하였으므로, 여기에서는 그 설명을 생략한다. 또한, 슬라이스 헤더 신택스(507)는, 암호화 대신에 복호가 사용된다는 점을 제외하고 도 20을 참조하여 이미 설명하였으므로, 여기에서는 그 설명을 생략한다. 또한, 프레드 웨이트 테이블 신택스(508)는, 암호화 대신에 복호가 사용된다는 점을 제외하고 도 21을 참조하여 이미 설명하였으므로, 여기에서는 그 설명을 생략한다.
상기와 같이, 제4 실시형태에 따르면, 양방향 예측이 선택될 수 있는 양방향 예측 슬라이스에서 동일한 참조 화상을 갖지만 참조 화상 번호가 서로 다른 2개의 인덱스를 이용하여 가중 모션 보상이 수행될 때, 암호화 장치(800)는 동일한 값을 가진 인덱스를 2회 복호함에 따른 암호화 효율의 감소 문제를 해소한다.
양방향 예측 슬라이스에 포함된 2개의 참조 리스트와 각 리스트마다 설정된 참조 번호를 공통 리스트 및 공통 참조 번호에 재배치함으로써, 동일한 참조 화상을 나타내는 참조 번호의 조합이 참조 리스트에 포함되지 않고, 따라서 암호화 장치(800)는 용장 인덱스의 부호량을 삭감할 수 있다.
제4 실시형태의 변형예
제4 실시형태의 변형예를 설명한다. 제4 실시형태의 변형예에서는 복호부(801)에서 사용하는 신택스 요소가 제4 실시형태의 것과 다르다. 시퀀스 파라미터 세트 신택스(504)는, 암호화 대신에 복호가 수행되는 점을 제외하고 도 22를 참조하여 이미 설명하였으므로, 그 설명은 생략한다. 또한 어댑테이션 파라미터 세트 신택스(506)는, 암호화 대신에 복호가 수행되는 점을 제외하고 도 23을 참조하여 이미 설명하였으므로, 그 설명은 생략한다. 또한 프레드 웨이트 테이블 신택스(508)는, 암호화 대신에 복호가 수행되는 점을 제외하고 도 24를 참조하여 이미 설명하였으므로, 그 설명은 생략한다.
상기와 같이, 제4 실시형태의 변형예에 따르면, 프레드 웨이트 테이블 신택스(508)가 어댑테이션 파라미터 세트 신택스(506)로부터 호출되는 구조를 사용함으로써, 1 프레임을 복수의 슬라이스로 분할할 때 WP 파라미터 정보의 부호량이 대폭 삭감될 수 있다.
*예를 들면, 이용될 3가지 유형의 서로 다른 WP 파라미터 정보를 갖는 어댑테이션 파라미터 세트 신택스(506)가 미리 복호되고, 상황에 따라서 슬라이스 헤더 신택스(507)가 aps_id를 이용하며, 필요한 WP 파라미터 정보가 호출되게 하는 것에 의해, 슬라이스 헤더 신택스(507)를 이용하여 WP 파라미터 정보를 항상 복호하는 구성보다 부호량을 삭감할 수 있다.
제5 실시형태
제5 실시형태에서는, 제2 실시형태에 따른 암호화 장치에 의해 암호화된 암호화 데이터를 복호하는 복호 장치에 대해 설명한다. 제5 실시형태에 따른 복호 장치(1000)에서는 인덱스 설정부(1006)의 구성이 제4 실시형태에 따른 복호 장치(800)와 다르다. 이하에서는, 제4 실시형태와의 차이점에 대하여 주로 설명할 것이며, 제4 실시형태에서와 동일한 기능을 가진 각 구성 요소에 대해서는 제4 실시형태에서와 동일한 명칭/참조 번호를 부여하고 그 설명은 생략한다.
도 40은 제5 실시형태에 따른 인덱스 설정부(1006)의 구성 예를 보인 블록도이다. 인덱스 설정부(1006)는, 도 40에 도시된 것처럼, 재사용 결정부(1001)와 WP 파라미터 생성부(1002)를 포함한다.
재사용 결정부(1001)는 재사용 플래그를 체크하여 리스트 0의 WP 파라미터를 재사용할 것인지를 체크한다. 리스트 0의 WP 파라미터를 재사용하는 경우에, WP 파라미터 생성부(1002)는 리스트 0의 어떤 WP 파라미터가 카피되는지의 정보에 기초하여, 참조 목적지의 리스트 0의 WP 파라미터를 리스트 1의 WP 파라미터에 카피한다. 재사용 플래그 및 참조 목적지를 표시하는 참조 번호에 관한 정보는 신택스 요소에 기술되어 있고, WP 파라미터 생성부(1002)가 인덱스 정보를 분석하게 함으로써 WP 파라미터 정보를 복원한다.
재사용 결정부(1001)는 예를 들면, 수학식 11에 표시된 의사 부호에 따라서, 리스트 0의 WP 파라미터를 사용할 것인지를 체크한다.
프레드 웨이트 테이블 신택스(508)는, 암호화 대신에 복호가 수행되는 점을 제외하고 도 27을 참조하여 이미 설명하였으므로, 그 설명은 생략한다.
상기와 같이, 제5 실시형태에 따르면, 양방향 예측이 선택될 수 있는 양방향 예측 슬라이스에서 동일한 참조 화상을 갖지만 참조 화상 번호가 서로 다른 2개의 인덱스를 이용하여 가중 모션 보상이 수행될 때, 암호화 장치(1000)는 동일한 값을 가진 인덱스를 2회 복호함에 따른 부호화 효율의 감소 문제를 해소한다.
복호 장치(1000)는 리스트 0의 인덱스를 종래 방식으로 복호하고, 리스트 1의 인덱스를 복호할 때 동일한 참조 화상을 나타내는 참조 번호의 조합이 있는지 여부를 체크하며, 동일한 인덱스의 경우에는 리스트 1에서 사용한 인덱스를 리스트 0에서 사용하는 인덱스로서 재사용함으로써 동일한 인덱스가 2회 복호되는 것을 방지하고, 그에 따라서 용장 인덱스의 부호량을 삭감할 수 있다.
제6 실시형태
제6 실시형태에서는, 제3 실시형태에 따른 암호화 장치에 의해 암호화된 암호화 데이터를 복호하는 복호 장치에 대해 설명한다. 도 41은 제6 실시형태에 따른 복호 장치(1100)의 구성 예를 보인 블록도이다. 제6 실시형태에 따른 복호 장치(1100)는 복호 장치(1100)가 모션 정보 메모리(1101), 모션 정보 획득부(1102), 및 선택 스위치(1103)를 더 포함한다는 점에서 제4 실시형태에 따른 복호 장치(800)와 다르다. 이하에서는, 제4 실시형태와의 차이점에 대하여 주로 설명할 것이며, 제4 실시형태에서와 동일한 기능을 가진 각 구성 요소에 대해서는 제4 실시형태에서와 동일한 명칭/참조 번호를 부여하고 그 설명은 생략한다.
모션 정보 메모리(1101)는 복호가 완료된 화소 블록에 적용된 모션 정보를 참조 모션 정보로서 임시로 저장한다. 모션 정보 메모리(1101)는 모션 정보에 대하여 서브샘플링과 같은 압축 처리를 수행함으로써 정보의 양을 삭감할 수 있다. 모션 정보 메모리(1101)는, 도 29에 도시된 것처럼, 프레임 또는 슬라이스의 단위로 유지되고, 동일한 프레임의 모션 정보를 참조 모션 정보(710)로서 저장하는 공간 방향 참조 모션 정보 메모리(701A) 및 복호가 완료된 프레임의 모션 정보를 참조 모션 정보(710)로서 저장하는 시간 방향 참조 모션 정보 메모리(701B)를 더 포함한다. 시간 방향 참조 모션 정보 메모리(701B)는 예측을 위해 복호 대상 프레임에 의해 사용되는 참조 프레임의 수에 따라서 복수 개가 배치될 수 있다.
참조 모션 정보(710)는 미리 정해진 영역 단위(예를 들면, 4×4 화소 블록의 단위)로 공간 방향 참조 모션 정보 메모리(701A) 및 시간 방향 참조 모션 정보 메모리(701B)에 유지된다. 참조 모션 정보(710)는 또한 영역이 후술하는 인터 예측에 의해 암호화되는지 또는 후술하는 인트라 예측에 의해 암호화되는지를 나타내는 정보를 포함한다. 또한, 화소 블록(부호화 유닛 또는 프리딕션 유닛)이 H.264에서 규정된 스킵 모드나 다이렉트 모드 또는 후술하는 병합 모드에서와 같이 모션 정보에 포함된 모션 벡터의 값이 복호되지 않고서, 복호된 영역으로부터 예측된 모션 정보를 이용하여 인터 예측되는 경우에도, 화소 블록의 모션 정보는 참조 모션 정보(710)로서 유지된다.
복호 대상 프레임 또는 암호화 대상 슬라이스에 대한 복호 처리가 완료될 때, 프레임의 공간 방향 참조 모션 정보 메모리(701A)는 다음에 복호될 프레임에 대하여 사용되는 시간 방향 참조 모션 정보 메모리(701B)로서 취급되도록 변경된다. 이때, 시간 방향 참조 모션 정보 메모리(701B)의 용량을 삭감하기 위해, 모션 정보를 압축하고 압축된 모션 정보를 시간 방향 참조 모션 정보 메모리(701B)에 저장하도록 구성할 수 있다.
모션 정보 획득부(1102)는 모션 정보 메모리(1101)로부터의 참조 모션 정보를 입력으로서 수신하고, 복호 화소 블록에 대하여 사용되는 모션 정보(B)를 출력한다. 모션 정보 획득부(1102)의 동작은 모션 정보 획득부(702)의 동작과 동일하므로 그 설명은 생략한다.
선택 스위치(1103)는 후술하는 예측 모드 정보에 따라서 모션 정보 획득부(1102)로부터 출력된 모션 정보(B)와 복호부(801)로부터 출력된 모션 정보(A) 중 하나를 선택하고, 선택된 모션 정보를 예측 화상 생성부(805)에 모션 정보로서 출력한다. 복호부(801)로부터 출력된 모션 정보(A)는 도시 생략된 예측 모션 벡터 획득부로부터 획득된 예측 모션 벡터로부터의 차분 정보와 예측 모션 벡터 획득 위치 정보를 복호하기 위해 사용된다. 이후, 이러한 예측 모드를 인터 모드라고 부른다. 한편, 예측 모드 정보에 따라서 모션 정보 획득부(1102)로부터 출력된 모션 정보(B)는 인접 화소 블록으로부터의 모션 정보를 병합하기 위해 사용되고, 복호 화소 블록에 직접 적용되며, 따라서 다른 모션 정보에 관한 정보(예를 들면, 모션 벡터 차분 정보)는 복호될 필요가 없다. 이후, 이러한 예측 모드는 병합 모드라고 부른다.
예측 모드 정보는 복호 제어부(807)에 의해 제어되는 예측 모드에 따르고, 선택 스위치(1103)의 전환 정보를 포함한다.
프레드 유닛 신택스(512)는, 암호화 대신에 복호가 수행된다는 점을 제외하고 도 36을 참조하여 이미 설명하였으므로, 그 설명은 생략한다.
제6 실시형태의 장점은 제3 실시형태의 장점과 동일하고, 따라서 그 설명은 생략한다.
또한, MergeCandList에 대한 저장 처리의 다른 예로서, 시간적으로 인접한 블록(T)의 모션 정보가 MergeCandList에 저장되어 있을 때 시간적으로 인접한 블록(T)의 참조 프레임의 WP 파라미터와 복호 화소 블록의 참조 프레임의 WP 파라미터가 서로 일치하는지 여부를 결정하고, WP 파라미터가 서로 일치하는 경우에만 모션 정보가 MergeCandList에 저장되도록 구성할 수도 있다. 이렇게 하는 이유는, 시간적으로 인접한 블록(T)의 참조 프레임의 WP 파라미터와 복호 화소 블록의 참조 프레임의 WP 파라미터가 서로 다른 경우에, 시간적으로 인접한 블록(T)의 모션 정보와 복호 화소 블록의 모션 정보 간의 상관성이 낮은 것으로 추정할 수 있기 때문이다.
또한, 추가의 다른 예로서, 시간적으로 인접한 블록(T)의 참조 프레임의 WP 파라미터와 복호 화소 블록의 참조 프레임의 WP 파라미터가 서로 다른 경우에, 공간적으로 블록(T)에 인접한 블록 중에서 복호 화소 블록의 참조 프레임에 있어서 동일한 WP 파라미터를 가진 블록을 블록 T로 치환할 수 있다. 이때, 시간적으로 인접한 블록(T)의 모션 정보와 복호 화소 블록의 모션 정보 간의 상관성은 낮아지지 않는다.
변형예
제1 실시형태 내지 제3 실시형태는 선택적으로 사용될 수 있다. 다시 말해서, 방법을 선택하기 위한 정보를 미리 설정해 두고, 양방향 슬라이스가 선택된 경우에는 제1 실시형태의 기술이 사용되는지 또는 제2 실시형태의 기술이 사용되는지를 나타내는 정보에 따라서, 사용하는 기술을 변경하도록 구성할 수 있다. 예를 들면, 도 20에 도시된 슬라이스 헤더 신택스에, 상기와 같은 기술을 변경하기 위해 사용되는 플래그를 설정함으로써, 사용될 기술을 암호화 상황에 따라서 쉽게 선택할 수 있다. 또한, 사용될 기술을 특정의 하드웨어의 구성에 따라서 미리 설정할 수도 있다. 제1 내지 제3 실시형태에 따른 예측 화상 생성부 및 인덱스 설정부는 하드웨어에 의해 또는 소프트웨어에 의해 적절히 장착될 수 있다.
제4 실시형태 내지 제6 실시형태는 선택적으로 사용될 수 있다. 다시 말해서, 방법을 선택하기 위한 정보를 미리 설정해 두고, 양방향 슬라이스가 선택된 경우에는 제4 실시형태의 기술이 사용되는지 또는 제5 실시형태의 기술이 사용되는지를 나타내는 정보에 따라서, 사용하는 기술을 변경하도록 구성할 수 있다. 예를 들면, 도 20에 도시된 슬라이스 헤더 신택스에, 상기와 같은 기술을 변경하기 위해 사용되는 플래그를 설정함으로써, 사용될 기술을 암호화 상황에 따라서 쉽게 선택할 수 있다. 또한, 사용될 기술을 특정 하드웨어의 구성에 따라서 미리 설정할 수도 있다. 제4 내지 제6 실시형태에 따른 예측 화상 생성부 및 인덱스 설정부는 하드웨어에 의해 또는 소프트웨어에 의해 적절히 장착될 수 있다.
또한, 제1 내지 제6 실시형태에서 설명한 신택스 테이블의 행들 간에, 이 실시형태에서 규정하지 않은 신택스 요소가 삽입될 수도 있고, 또는 다른 조건 분기에 관한 기술(記述)이 포함될 수 있다. 더 나아가, 신택스 테이블을 복수의 테이블로 분할할 수 있고, 또는 복수의 신택스 테이블을 통합할 수도 있다. 또한, 예로서 제시된 각 신택스 요소의 용어는 임의로 변경될 수 있다.
제1 실시형태의 변형예는 제2 실시형태에 쉽게 적용될 수 있다. 그러한 경우에, 리스트 0 및 리스트 1에 대응하는 참조 화상의 최대 수를 설정할 수 있고, 상기 최대 수를 미리 설정해 둘 수도 있다.
제4 실시형태의 변형예는 제5 실시형태에 쉽게 적용될 수 있다. 그러한 경우에, 리스트 0 및 리스트 1에 대응하는 참조 화상의 최대 수를 설정할 수 있고, 상기 최대 수를 미리 설정해 둘 수도 있다.
전술한 제1 내지 제6 실시형태에서는 프레임이 16×16 등의 화소 사이즈를 각각 가진 직사각형 블록으로 분할되고 화면의 상부 좌측 블록으로부터 하부 우측 블록을 향하는 순으로 암호화/복호되는 예를 설명하였다(도 3a 참조). 그러나, 암호화 순서 및 복호 순서는 이 예에서 설명한 것으로 제한되지 않는다. 예를 들면, 암호화 및 복호는 하부 우측으로부터 상부 좌측을 향하는 순으로 수행될 수 있고, 또는 암호화 및 복호는 화면의 중앙으로부터 화면의 단부를 향하여 소용돌이를 그리도록 수행될 수도 있다. 또한, 암호화 및 복호는 상부 우측으로부터 하부 좌측을 향하는 순으로 수행될 수 있고, 또는 암호화 및 복호는 화면의 단부로부터 화면의 중앙을 향하여 소용돌이를 그리도록 수행될 수도 있다. 그러한 경우에는 암호화 순서에 따라 참조될 수 있는 인접 화소 블록의 위치가 변하기 때문에, 그 위치를 적절히 이용할 수 있는 위치로 변경할 수 있다.
전술한 제1 내지 제6 실시형태에서는 4×4 화소 블록, 8×8 화소 블록, 16×16 화소 블록 등과 같은 예측 대상 블록의 사이즈를 예로 하여 설명하였지만, 예측 대상 블록은 균일한 블록 형상을 갖지 않아도 된다. 예를 들면, 예측 대상 블록의 사이즈는 16×8 화소 블록, 8×16 화소 블록, 8×4 화소 블록, 4×8 화소 블록 등일 수도 있다. 또한, 하나의 코딩 트리 블록 내의 모든 블록 사이즈를 균일화할 필요가 없고, 서로 다른 복수의 블록 사이즈가 혼합되어 있을 수도 있다. 하나의 코딩 트리 블록 내에 서로 다른 복수의 블록 사이즈가 혼합되어 있는 경우에는 분할 정보를 암호화 또는 복호하기 위한 부호량이 분할 수의 증가에 따라서 증가한다. 그러므로, 분할 정보의 부호량과 국소 암호화 화상 또는 복호 화상의 품질 간의 균형을 고려하여 블록 사이즈를 선택하는 것이 바람직하다.
전술한 제1 내지 제6 실시형태에서는, 간편성을 위해, 휘도 신호와 색차 신호의 예측 처리를 서로 구별하지 않고 색 신호 성분에 대하여 포괄적인 설명을 기술하였다. 그러나, 휘도 신호와 색차 신호의 예측 처리가 서로 다른 경우에는 동일한 예측 방법 또는 서로 다른 예측 방법이 사용될 수 있다. 휘도 신호와 색차 신호에 대하여 서로 다른 예측 방법을 사용하는 경우에는 휘도 신호의 경우와 마찬가지로 색차 신호에 대하여 선택된 예측 방법을 이용하여 암호화 또는 복호를 수행할 수 있다.
전술한 제1 내지 제6 실시형태에서는, 간편성을 위해, 휘도 신호와 색차 신호의 가중 모션 보상 예측 처리를 서로 구별하지 않고 색 신호 성분에 대하여 포괄적인 설명을 제시하였다. 그러나, 휘도 신호와 색차 신호의 가중 예측 처리가 서로 다른 경우에는 동일한 가중 예측 방법 또는 서로 다른 가중 예측 방법이 사용될 수 있다. 휘도 신호와 색차 신호에 대하여 서로 다른 가중 예측 방법을 사용하는 경우에는 휘도 신호의 경우와 마찬가지로 색차 신호에 대하여 선택된 가중 예측 방법을 이용하여 암호화 또는 복호를 수행할 수 있다.
전술한 제1 내지 제6 실시형태에서는, 신택스 구성에 나타낸 테이블의 행들 간에, 이 실시형태에서 규정하지 않은 신택스 요소가 삽입될 수도 있고, 다른 조건 분기에 관한 기술이 포함될 수도 있다. 대안적으로, 신택스 테이블을 복수의 테이블로 분할할 수 있고, 또는 신택스 테이블을 함께 통합할 수도 있다. 또한, 반드시 동일한 용어를 사용하지 않아도 되고, 사용되는 형태에 따라서 용어를 임의로 변경할 수 있다.
전술한 바와 같이, 각각의 실시형태에 따르면, 가중 모션 보상 예측을 수행할 때 용장 정보를 암호화하는 문제가 해소되고, 고효율의 가중 모션 보상 예측 처리가 실현된다. 그러므로, 각각의 실시형태에 따르면, 부호화 효율이 향상하고 주관적인 화질이 향상한다.
본 발명의 몇 가지 실시형태를 설명하였지만, 그러한 실시형태는 예로서 제시된 것이고 본 발명의 범위를 제한하는 것이 아니다. 이들 신규한 실시형태는 각종의 다른 형태로 수행될 수 있고, 각종의 생략, 치환 및 변경이 본 발명의 개념으로부터 벗어나지 않는 범위 내에서 이루어질 수 있다. 상기 실시형태 및 그 변형예들은 본 발명의 범위 또는 개념에 속하는 것이고, 특허청구범위에 기술된 본 발명 및 그 균등 범위에 속하는 것이다.
예를 들면, 전술한 각 실시형태의 처리를 실현하는 프로그램이 컴퓨터 판독가능 기억 매체에 저장되어 제공될 수 있다. 기억 매체로서는 프로그램을 저장할 수 있고 컴퓨터에 의해 판독 가능한 자기 디스크, 광학 디스크(CD-ROM, CD-R, DVD 등), 자기-광학 디스크(MO 등) 또는 반도체 메모리와 같은 기억 매체가 기억 형태에 관계없이 사용될 수 있다.
또한, 각 실시형태의 처리를 실현하는 프로그램이 인터넷과 같은 네트워크에 접속된 컴퓨터(서버)에 저장되어 네트워크를 통해 컴퓨터(클라이언트)에 다운로드될 수도 있다.
100, 600, 700: 암호화 장치
101: 감산부
102: 직교 변환부 103: 양자화부
104: 역 양자화부 105: 역 직교 변환부
106: 가산부 107: 예측 화상 생성부
108: 인덱스 설정부 109: 모션 평가부
110: 암호화부 110A: 엔트로피 암호화부
110B: 인덱스 재구성부 111: 암호화 제어부
201: 복수 프레임 모션 보상부 202: 메모리
203: 단방향 모션 보상부 204: 예측 파라미터 제어부
205: 참조 화상 선택기 206: 프레임 메모리
207: 참조 화상 제어부 301: 디폴트 모션 보상부
302: 가중 모션 보상부 303: WP 파라미터 제어부
304, 305: WP 선택기 401, 901: 참조 화상 확인부
402, 602: 인덱스 생성부 601, 1001: 재사용 결정부
701, 1101: 모션 정보 메모리 702, 1102: 모션 정보 획득부
703, 1103: 선택 스위치 800, 1000, 1100: 복호 장치
801: 복호부 802: 역 양자화부
803: 역 직교 변환부 804: 가산부
805: 예측 화상 생성부 806, 1006: 인덱스 설정부
807: 복호 제어부 902, 1002: WP 파라미터 생성부
102: 직교 변환부 103: 양자화부
104: 역 양자화부 105: 역 직교 변환부
106: 가산부 107: 예측 화상 생성부
108: 인덱스 설정부 109: 모션 평가부
110: 암호화부 110A: 엔트로피 암호화부
110B: 인덱스 재구성부 111: 암호화 제어부
201: 복수 프레임 모션 보상부 202: 메모리
203: 단방향 모션 보상부 204: 예측 파라미터 제어부
205: 참조 화상 선택기 206: 프레임 메모리
207: 참조 화상 제어부 301: 디폴트 모션 보상부
302: 가중 모션 보상부 303: WP 파라미터 제어부
304, 305: WP 선택기 401, 901: 참조 화상 확인부
402, 602: 인덱스 생성부 601, 1001: 재사용 결정부
701, 1101: 모션 정보 메모리 702, 1102: 모션 정보 획득부
703, 1103: 선택 스위치 800, 1000, 1100: 복호 장치
801: 복호부 802: 역 양자화부
803: 역 직교 변환부 804: 가산부
805: 예측 화상 생성부 806, 1006: 인덱스 설정부
807: 복호 제어부 902, 1002: WP 파라미터 생성부
Claims (2)
- 복호화 방법에 있어서,
암호화된 데이터의 입력을 수신하는 단계로서, 상기 암호화된 데이터는,
슬라이스 레벨의 제1 신택스로서, 제1 참조 화상 리스트에서의 참조 화상의 수를 특정하는(specify) 제1 신택스 요소 및 제2 참조 화상 리스트에서의 참조 화상의 수를 특정하는 제2 신택스 요소를 기술하는, 상기 제1 신택스,
상기 슬라이스 레벨보다 상위 레벨의 신택스로부터 호출된 제2 신택스로서, 상기 제1 참조 화상 리스트 및 제2 참조 화상 리스트를 위해 공통으로 사용되는 공통 인덱스에 의해 특정되는 복수의 파라미터들을 기술하는, 상기 제2 신택스, 및
상기 슬라이스 레벨보다 상위 레벨의 제3 신택스로서, 상기 공통 인덱스에 의해 취해지는 최대 값을 특정하는 제3 신택스 요소를 기술하는, 상기 제3 신택스를 포함하는 것인, 상기 암호화된 데이터의 입력을 수신하는 단계;
상기 제3 신택스로부터 상기 제3 신택스 요소를 재생성하는 단계; 및
재생성된 제3 신택스 요소 및 상기 제2 신택스로부터 상기 복수의 파라미터들을 특정하는 단계
를 포함하고,
상기 공통 인덱스는 상기 제1 참조 화상 리스트 및 상기 제2 참조 화상 리스트로부터 참조 화상을 특정하는 것인, 복호화 방법. - 복호화 장치에 있어서,
암호화된 데이터의 입력을 수신하도록 구성된 수신부으로서, 상기 암호화된 데이터는,
슬라이스 레벨의 제1 신택스로서, 제1 참조 화상 리스트에서의 참조 화상의 수를 특정하는(specify) 제1 신택스 요소 및 제2 참조 화상 리스트에서의 참조 화상의 수를 특정하는 제2 신택스 요소를 기술하는, 상기 제1 신택스,
상기 슬라이스 레벨보다 상위 레벨의 신택스로부터 호출된 제2 신택스로서, 상기 제1 참조 화상 리스트 및 제2 참조 화상 리스트를 위해 공통으로 사용되는 공통 인덱스에 의해 특정되는 복수의 파라미터들을 기술하는, 상기 제2 신택스, 및
상기 슬라이스 레벨보다 상위 레벨의 제3 신택스로서, 상기 공통 인덱스에 의해 취해지는 최대 값을 특정하는 제3 신택스 요소를 기술하는, 상기 제3 신택스를 포함하는 것인, 상기 수신부;
상기 제3 신택스로부터 상기 제3 신택스 요소를 재생성하도록 구성된 재생성부; 및
재생성된 제3 신택스 요소 및 상기 제2 신택스로부터 상기 복수의 파라미터들을 특정하도록 구성된 특정부
를 포함하고,
상기 공통 인덱스는 상기 제1 참조 화상 리스트 및 상기 제2 참조 화상 리스트로부터 참조 화상을 특정하는 것인, 복호화 장치.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2011/073851 WO2013057782A1 (ja) | 2011-10-17 | 2011-10-17 | 符号化方法及び復号方法 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020157019999A Division KR20150092765A (ko) | 2011-10-17 | 2011-10-17 | 암호화 장치, 복호 장치, 암호화 방법, 및 복호 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20160058967A true KR20160058967A (ko) | 2016-05-25 |
KR101694664B1 KR101694664B1 (ko) | 2017-01-09 |
Family
ID=48140460
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020157019999A KR20150092765A (ko) | 2011-10-17 | 2011-10-17 | 암호화 장치, 복호 장치, 암호화 방법, 및 복호 방법 |
KR1020167012309A KR101694664B1 (ko) | 2011-10-17 | 2011-10-17 | 복호 장치 및 복호 방법 |
KR1020147005322A KR20140057301A (ko) | 2011-10-17 | 2011-10-17 | 암호화 장치, 복호 장치, 암호화 방법, 및 복호 방법 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020157019999A KR20150092765A (ko) | 2011-10-17 | 2011-10-17 | 암호화 장치, 복호 장치, 암호화 방법, 및 복호 방법 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020147005322A KR20140057301A (ko) | 2011-10-17 | 2011-10-17 | 암호화 장치, 복호 장치, 암호화 방법, 및 복호 방법 |
Country Status (16)
Country | Link |
---|---|
US (14) | US20140072237A1 (ko) |
EP (4) | EP3174296A1 (ko) |
JP (1) | JP5592023B2 (ko) |
KR (3) | KR20150092765A (ko) |
CN (2) | CN106231321B (ko) |
AU (8) | AU2011379258C1 (ko) |
BR (1) | BR112014004797B1 (ko) |
CA (1) | CA2847296C (ko) |
MX (3) | MX344805B (ko) |
MY (1) | MY168194A (ko) |
PH (2) | PH12017501851B1 (ko) |
RU (1) | RU2014107469A (ko) |
SG (1) | SG11201400288VA (ko) |
TW (9) | TWI794935B (ko) |
WO (1) | WO2013057782A1 (ko) |
ZA (1) | ZA201401564B (ko) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SG11201400294SA (en) | 2011-10-17 | 2014-09-26 | Toshiba Kk | Encoding device, decoding device, encoding method, and decoding method |
BR112014004797B1 (pt) | 2011-10-17 | 2022-02-15 | Kabushiki Kaisha Toshiba | Método de decodificação |
US20130114710A1 (en) * | 2011-11-08 | 2013-05-09 | Samsung Electronics Co., Ltd. | Method and apparatus for encoding video by prediction using reference picture list, and method and apparatus for decoding video by performing compensation using reference picture list |
JP5925801B2 (ja) | 2012-06-27 | 2016-05-25 | 株式会社東芝 | 符号化方法、復号方法、符号化装置、及び復号装置 |
MY183347A (en) | 2013-09-30 | 2021-02-18 | Japan Broadcasting Corp | Image encoding device, image decoding device, and the programs thereof |
AU2016264606B2 (en) | 2015-05-19 | 2020-09-03 | Magic Leap, Inc. | Semi-global shutter imager |
CN106331722B (zh) * | 2015-07-03 | 2019-04-26 | 华为技术有限公司 | 图像预测方法和相关设备 |
FR3041850B1 (fr) * | 2015-09-30 | 2018-05-25 | Vogo | Procede d'encodage de flux de donnees video basees sur des groupements d'images (gop) |
JP6105034B2 (ja) * | 2015-12-17 | 2017-03-29 | 株式会社東芝 | 復号方法及び復号装置 |
CN114363636B (zh) | 2016-07-05 | 2024-06-04 | 株式会社Kt | 用于处理视频信号的方法和装置 |
JP2018056699A (ja) * | 2016-09-27 | 2018-04-05 | 株式会社ドワンゴ | 符号化装置、符号化方法、復号化装置、及び復号化方法 |
US10750203B2 (en) | 2016-12-22 | 2020-08-18 | Mediatek Inc. | Method and apparatus of adaptive bi-prediction for video coding |
US10542275B2 (en) * | 2016-12-28 | 2020-01-21 | Arris Enterprises Llc | Video bitstream coding |
JP2017085633A (ja) * | 2017-01-04 | 2017-05-18 | 株式会社東芝 | 復号方法及び復号装置 |
KR20210115052A (ko) | 2017-07-07 | 2021-09-24 | 삼성전자주식회사 | 적응적 움직임 벡터 해상도로 결정된 움직임 벡터의 부호화 장치 및 부호화 방법, 및 움직임 벡터의 복호화 장치 및 복호화 방법 |
EP3691274A4 (en) | 2017-09-28 | 2021-04-28 | Samsung Electronics Co., Ltd. | CODING METHOD AND DEVICE FOR IT AND DECODING METHOD AND DEVICE FOR IT |
EP3721625A1 (en) * | 2017-12-06 | 2020-10-14 | V-Nova International Limited | Methods and apparatuses for hierarchically encoding and decoding a bytestream |
EP3854099A4 (en) * | 2018-09-21 | 2022-06-29 | Sharp Kabushiki Kaisha | Systems and methods for signaling reference pictures in video coding |
US11758132B2 (en) | 2018-12-28 | 2023-09-12 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Encoder and decoder, encoding method and decoding method with complexity handling for flexibly sized picture partitions |
US11076152B2 (en) * | 2019-03-18 | 2021-07-27 | Sony Group Corporation | Quantization step parameter for point cloud compression |
CN111726632B (zh) * | 2019-03-18 | 2022-08-26 | 杭州海康威视数字技术股份有限公司 | 一种编解码方法、装置及其设备 |
KR20220036948A (ko) * | 2019-07-05 | 2022-03-23 | 브이-노바 인터내셔널 리미티드 | 비디오 코딩에서 잔차의 양자화 |
CN115428455A (zh) * | 2020-03-31 | 2022-12-02 | 阿里巴巴集团控股有限公司 | 调色板预测方法 |
CN112004096B (zh) * | 2020-07-20 | 2024-07-12 | 浙江大华技术股份有限公司 | 角度模式帧间预测方法、编码器及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004007377A (ja) | 2002-04-18 | 2004-01-08 | Toshiba Corp | 動画像符号化/復号化方法及び装置 |
KR20050028026A (ko) * | 2002-07-15 | 2005-03-21 | 톰슨 라이센싱 에스.에이. | 비디오 신호 데이터 인코더 및 인코딩 방법 |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6002802A (en) * | 1995-10-27 | 1999-12-14 | Kabushiki Kaisha Toshiba | Video encoding and decoding apparatus |
JP2004007379A (ja) * | 2002-04-10 | 2004-01-08 | Toshiba Corp | 動画像符号化方法及び動画像復号化方法 |
EP1833261A1 (en) * | 2002-01-18 | 2007-09-12 | Kabushiki Kaisha Toshiba | Video encoding method and apparatus and video decoding method and apparatus |
KR100976017B1 (ko) | 2002-08-08 | 2010-08-17 | 파나소닉 주식회사 | 동화상의 부호화 방법 및 복호화 방법 |
JP4485157B2 (ja) | 2002-08-08 | 2010-06-16 | パナソニック株式会社 | 画像復号化方法および画像復号化装置 |
JP2004179687A (ja) | 2002-11-22 | 2004-06-24 | Toshiba Corp | 動画像符号化/復号化方法及び装置 |
US20050201470A1 (en) * | 2004-03-12 | 2005-09-15 | John Sievers | Intra block walk around refresh for H.264 |
JP2005318297A (ja) | 2004-04-28 | 2005-11-10 | Toshiba Corp | 動画像符号化・復号方法及び装置 |
DE102004059993B4 (de) | 2004-10-15 | 2006-08-31 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Vorrichtung und Verfahren zum Erzeugen einer codierten Videosequenz unter Verwendung einer Zwischen-Schicht-Bewegungsdaten-Prädiktion sowie Computerprogramm und computerlesbares Medium |
KR100896279B1 (ko) * | 2005-04-15 | 2009-05-07 | 엘지전자 주식회사 | 영상 신호의 스케일러블 인코딩 및 디코딩 방법 |
KR20070038396A (ko) * | 2005-10-05 | 2007-04-10 | 엘지전자 주식회사 | 영상 신호의 인코딩 및 디코딩 방법 |
EP1933570A4 (en) * | 2005-10-05 | 2010-09-29 | Panasonic Corp | PROCESS AND DEVICE FOR REFERENCE SELECTION |
EP1980112B1 (en) * | 2006-02-02 | 2012-10-24 | Thomson Licensing | Method and apparatus for adaptive weight selection for motion compensated prediction |
JP2007221201A (ja) * | 2006-02-14 | 2007-08-30 | Victor Co Of Japan Ltd | 動画像符号化装置及び動画像符号化プログラム |
JP4691062B2 (ja) | 2007-03-30 | 2011-06-01 | 株式会社東芝 | 情報処理装置 |
WO2011016251A1 (ja) * | 2009-08-06 | 2011-02-10 | パナソニック株式会社 | 符号化方法、復号方法、符号化装置及び復号装置 |
KR20110050283A (ko) * | 2009-11-06 | 2011-05-13 | 삼성전자주식회사 | 다중 참조 영상을 이용한 고속 움직임 추정 방법 |
US9277228B2 (en) * | 2011-07-18 | 2016-03-01 | Qualcomm Incorporated | Adaptation parameter sets for video coding |
BR112014004797B1 (pt) | 2011-10-17 | 2022-02-15 | Kabushiki Kaisha Toshiba | Método de decodificação |
JP6015034B2 (ja) | 2012-03-07 | 2016-10-26 | セイコーエプソン株式会社 | 光学センサー及び電子機器 |
JP2017003482A (ja) | 2015-06-12 | 2017-01-05 | ヤマシンフィルタ株式会社 | 測定装置 |
JP6105034B2 (ja) | 2015-12-17 | 2017-03-29 | 株式会社東芝 | 復号方法及び復号装置 |
-
2011
- 2011-10-17 BR BR112014004797-9A patent/BR112014004797B1/pt active IP Right Grant
- 2011-10-17 KR KR1020157019999A patent/KR20150092765A/ko active Application Filing
- 2011-10-17 SG SG11201400288VA patent/SG11201400288VA/en unknown
- 2011-10-17 EP EP17150471.5A patent/EP3174296A1/en not_active Ceased
- 2011-10-17 JP JP2013539429A patent/JP5592023B2/ja active Active
- 2011-10-17 KR KR1020167012309A patent/KR101694664B1/ko active IP Right Grant
- 2011-10-17 EP EP11874125.5A patent/EP2770735A4/en not_active Withdrawn
- 2011-10-17 RU RU2014107469/08A patent/RU2014107469A/ru not_active Application Discontinuation
- 2011-10-17 CN CN201610895415.9A patent/CN106231321B/zh active Active
- 2011-10-17 MX MX2016001118A patent/MX344805B/es unknown
- 2011-10-17 KR KR1020147005322A patent/KR20140057301A/ko active IP Right Grant
- 2011-10-17 WO PCT/JP2011/073851 patent/WO2013057782A1/ja active Application Filing
- 2011-10-17 MX MX2015005669A patent/MX336653B/es unknown
- 2011-10-17 EP EP17150477.2A patent/EP3174301A1/en not_active Withdrawn
- 2011-10-17 CN CN201180073124.7A patent/CN103782599A/zh active Pending
- 2011-10-17 MX MX2014002534A patent/MX2014002534A/es active IP Right Grant
- 2011-10-17 MY MYPI2014000579A patent/MY168194A/en unknown
- 2011-10-17 EP EP17150470.7A patent/EP3174300A1/en not_active Withdrawn
- 2011-10-17 CA CA2847296A patent/CA2847296C/en active Active
- 2011-10-17 AU AU2011379258A patent/AU2011379258C1/en active Active
-
2012
- 2012-01-17 TW TW110130330A patent/TWI794935B/zh active
- 2012-01-17 TW TW106129366A patent/TWI617184B/zh active
- 2012-01-17 TW TW104142717A patent/TWI575943B/zh active
- 2012-01-17 TW TW107131923A patent/TWI703859B/zh active
- 2012-01-17 TW TW105143925A patent/TWI608730B/zh active
- 2012-01-17 TW TW106135506A patent/TWI639332B/zh active
- 2012-01-17 TW TW101101750A patent/TW201318437A/zh unknown
- 2012-01-17 TW TW106135507A patent/TWI639333B/zh active
- 2012-01-17 TW TW109128457A patent/TWI742809B/zh active
-
2013
- 2013-09-16 US US14/028,024 patent/US20140072237A1/en not_active Abandoned
-
2014
- 2014-02-28 ZA ZA2014/01564A patent/ZA201401564B/en unknown
-
2015
- 2015-07-14 US US14/799,253 patent/US9681138B2/en active Active
- 2015-08-13 AU AU2015213330A patent/AU2015213330C1/en active Active
-
2017
- 2017-05-09 US US15/590,876 patent/US9872027B2/en active Active
- 2017-05-19 AU AU2017203354A patent/AU2017203354B2/en active Active
- 2017-08-17 US US15/679,520 patent/US10110904B2/en active Active
- 2017-08-17 US US15/679,438 patent/US10187642B2/en active Active
- 2017-10-09 PH PH12017501851A patent/PH12017501851B1/en unknown
-
2018
- 2018-07-23 AU AU2018206856A patent/AU2018206856B2/en active Active
- 2018-08-27 US US16/113,330 patent/US10412394B2/en active Active
-
2019
- 2019-07-03 PH PH12019501571A patent/PH12019501571A1/en unknown
- 2019-07-24 US US16/521,145 patent/US10674161B2/en active Active
- 2019-09-16 AU AU2019232774A patent/AU2019232774B2/en active Active
-
2020
- 2020-04-24 US US16/857,650 patent/US11323721B2/en active Active
- 2020-04-24 US US16/857,910 patent/US11425396B2/en active Active
- 2020-04-24 US US16/858,053 patent/US11356674B2/en active Active
- 2020-04-24 US US16/857,846 patent/US11381826B2/en active Active
- 2020-04-24 US US16/858,002 patent/US11483570B2/en active Active
-
2021
- 2021-02-06 AU AU2021200773A patent/AU2021200773B2/en active Active
-
2022
- 2022-08-25 AU AU2022221509A patent/AU2022221509B2/en active Active
- 2022-09-09 US US17/941,083 patent/US11871007B2/en active Active
-
2023
- 2023-11-21 US US18/515,891 patent/US20240098278A1/en active Pending
- 2023-11-29 AU AU2023274145A patent/AU2023274145A1/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004007377A (ja) | 2002-04-18 | 2004-01-08 | Toshiba Corp | 動画像符号化/復号化方法及び装置 |
KR20050028026A (ko) * | 2002-07-15 | 2005-03-21 | 톰슨 라이센싱 에스.에이. | 비디오 신호 데이터 인코더 및 인코딩 방법 |
Non-Patent Citations (1)
Title |
---|
Yoshinori Suzuki et al., Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, 4th Meeting:Daegu, Korea, 2011.01. * |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101694664B1 (ko) | 복호 장치 및 복호 방법 | |
KR101829179B1 (ko) | 복호 장치 및 복호 방법 | |
KR101624059B1 (ko) | 암호화 장치 및 암호화 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20191219 Year of fee payment: 4 |