WO2013175748A1 - 動画像符号化方法、動画像復号方法、動画像符号化装置、動画像復号装置、および動画像符号化復号装置 - Google Patents
動画像符号化方法、動画像復号方法、動画像符号化装置、動画像復号装置、および動画像符号化復号装置 Download PDFInfo
- Publication number
- WO2013175748A1 WO2013175748A1 PCT/JP2013/003158 JP2013003158W WO2013175748A1 WO 2013175748 A1 WO2013175748 A1 WO 2013175748A1 JP 2013003158 W JP2013003158 W JP 2013003158W WO 2013175748 A1 WO2013175748 A1 WO 2013175748A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- information
- sao
- decoding
- offset
- encoding
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/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/117—Filters, e.g. for pre-processing or post-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/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/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- 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/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
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
-
- 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/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
- H04N19/82—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
Definitions
- the present invention relates to a moving image encoding method and decoding method.
- Non-patent Document 1 High Efficiency Video Coding
- ITU-T International Telecommunication Union Telecommunication Standardization Sector
- ISO / IEC ISO / IEC standard
- MPEG-x MPEG-x.
- the latest and most advanced image coding standard is currently H.264.
- H.264 / AVC or MPEG-4 AVC is being studied as a standard next to the standard (see Non-Patent Document 2).
- SAO Sample Adaptive Offset
- SAO is an offset process that adds an offset value for each predetermined region, section, or type in order to reduce coding degradation, and is performed on a provisional decoded image (reconstructed image) (Non-Patent Document). 3).
- JCT-VC Joint Collaborative Team on Video Coding
- JCT-VC Advanced Video Coding for Generic Audiovisual Services
- the present invention provides a moving image encoding method and a moving image decoding method capable of improving the processing efficiency.
- a moving image encoding method is a moving image encoding method for generating a bitstream by encoding an input image, and is included in an image generated by encoding the input image.
- the first information of a plurality of types of SAO information used for SAO (Sample Adaptive Offset), which is a process of giving an offset value to the pixel value of a pixel, is encoded by context adaptive arithmetic coding using a variable probability value.
- the second information and the third information of the plurality of types of SAO information are continuously encoded by bypass arithmetic encoding using a fixed probability value, and are encoded in the bitstream.
- the encoded second information and third information are arranged after the first information.
- a recording medium such as a system, a method, an integrated circuit, a computer program, or a computer-readable CD-ROM (Compact Disc Only Memory). You may implement
- the moving picture encoding method and moving picture decoding method of the present invention can improve the processing efficiency.
- FIG. 1A is a diagram showing information used for offset processing called SAO.
- FIG. 1B is a diagram showing other information used for offset processing called SAO.
- FIG. 1C is a diagram showing other information used for offset processing called SAO.
- FIG. 1D is a diagram showing other information used for offset processing called SAO.
- FIG. 2 is a block diagram showing a functional configuration of the SAO information decoding unit.
- FIG. 3 is a flowchart showing an operation flow of the SAO information decoding unit.
- FIG. 4 is a flowchart showing context adaptive arithmetic decoding.
- FIG. 5 is a flowchart showing bypass arithmetic decoding.
- FIG. 6 is a flowchart showing normalization processing of the arithmetic decoding method.
- FIG. 1A is a diagram showing information used for offset processing called SAO.
- FIG. 1B is a diagram showing other information used for offset processing called SAO.
- FIG. 1C is a diagram showing other information used for
- FIG. 7 is a block diagram showing an example of the configuration of the video decoding apparatus according to Embodiment 1.
- FIG. 8 is a block diagram showing a functional configuration of the SAO information decoding unit according to the first embodiment.
- FIG. 9 is a flowchart showing arithmetic decoding by the SAO information decoding unit according to Embodiment 1.
- FIG. 10A is a diagram for describing an example of a list of parameters included in the SAO information and a decoding order of the parameters in the first embodiment.
- FIG. 10B is a diagram for explaining an example of the arrangement of parameters included in the SAO information and the decoding order of the parameters, corresponding to the flowchart of FIG. 3.
- FIG. 10A is a diagram for describing an example of a list of parameters included in the SAO information and a decoding order of the parameters in the first embodiment.
- FIG. 10B is a diagram for explaining an example of the arrangement of parameters included in the SAO information and the decoding order of the parameters, corresponding to
- FIG. 10C is a diagram for describing another example of the arrangement of parameters included in the SAO information and the decoding order of the parameters in Embodiment 1.
- FIG. 11 is a block diagram illustrating an example of a configuration of a video encoding apparatus according to Embodiment 2.
- FIG. 12 is a flowchart showing arithmetic coding by the SAO information coding unit according to Embodiment 2.
- FIG. 13A is a diagram illustrating a syntax for generating a conventional bitstream.
- FIG. 13B is a diagram illustrating a syntax for generating a bitstream according to Embodiment 2.
- FIG. 14 is a diagram illustrating a syntax for generating another bitstream in the second embodiment.
- FIG. 15A is a flowchart of a video encoding method in the embodiment.
- FIG. 15B is a block diagram of the video encoding apparatus in the embodiment.
- FIG. 15C is a flowchart of the moving image decoding method according to the embodiment.
- FIG. 15D is a block diagram of the video decoding device in the embodiment.
- FIG. 16 is an overall configuration diagram of a content supply system that realizes a content distribution service.
- FIG. 17 is an overall configuration diagram of a digital broadcasting system.
- FIG. 18 is a block diagram illustrating a configuration example of a television.
- FIG. 19 is a block diagram illustrating a configuration example of an information reproducing / recording unit that reads and writes information from and on a recording medium that is an optical disk.
- FIG. 20 is a diagram illustrating a structure example of a recording medium that is an optical disk.
- FIG. 21A is a diagram illustrating an example of a mobile phone.
- FIG. 21B is a block diagram illustrating a configuration example of a mobile phone.
- FIG. 22 is a diagram showing a structure of multiplexed data.
- FIG. 23 is a diagram schematically showing how each stream is multiplexed in the multiplexed data.
- FIG. 24 is a diagram showing in more detail how the video stream is stored in the PES packet sequence.
- FIG. 25 is a diagram illustrating the structure of TS packets and source packets in multiplexed data.
- FIG. 26 is a diagram illustrating a data structure of the PMT.
- FIG. 27 is a diagram showing an internal configuration of multiplexed data information.
- FIG. 28 shows the internal structure of stream attribute information.
- FIG. 29 is a diagram illustrating steps for identifying video data.
- FIG. 30 is a block diagram illustrating a configuration example of an integrated circuit that realizes the moving image encoding method and the moving image decoding method according to each embodiment.
- FIG. 31 is a diagram showing a configuration for switching the driving frequency.
- FIG. 32 is a diagram illustrating steps for identifying video data and switching between driving frequencies.
- FIG. 33 is a diagram showing an example of a look-up table in which video data standards are associated with drive frequencies.
- FIG. 34A is a diagram illustrating an example of a configuration for sharing a module of a signal processing unit.
- FIG. 34B is a diagram illustrating another example of a configuration for sharing a module of a signal processing unit.
- 1A to 1D are diagrams showing four types of information used in offset processing called SAO. These four types of information (parameters) are SAO type information (sao_type_idx), SAO pixel value width position information (sao_band_position), SAO offset value (sao_offset [i]), and SAO offset sign (sao_offset_sign [i]). These pieces of information are collectively referred to as SAO information.
- SAO type information indicates that no offset processing is performed or the type of offset processing performed as shown in FIG. 1A.
- the offset processing includes an edge offset for performing offset processing on the pattern in the edge direction and a band offset for performing offset processing on pixel values included in a certain fixed width (predetermined pixel value range). .
- the edge offset is further classified into several types according to the direction of the edge. For example, in Non-Patent Document 3, the content indicated by the SAO type information is classified into six types as shown in FIG. 1A. A part of this SAO type information is arithmetically encoded (context adaptive arithmetic encoding) using a context corresponding to a variable probability value, and recorded in the bitstream.
- SAO pixel value width position information is information used for band offset. For example, the level width of the image signal to be handled (0 to 255 in the case of 8 bits) is divided into 32 sections.
- the SAO pixel value width position information indicates from which point of the 32 sections the band offset is applied to the section (at least one continuous section). For example, in Non-Patent Document 3, the number of consecutive sections is four.
- the SAO pixel value width position information indicates 1 and an 8-bit image signal
- the SAO pixel value width position information includes pixel values 8 to 15, 16 to 23, 24 to 31, and 32 to 39, respectively. Indicates that offset processing is to be performed for each category.
- the SAO pixel value width position information has a fixed length of 5 bits and is encoded by a method called bypass arithmetic encoding using a fixed probability value without using a variable probability value. And recorded in the bitstream.
- the SAO offset value (sao_offset [i]) is an offset value that is actually given to the type of edge offset indicated by the SAO type information or the division (at least one continuous division) indicated by the SAO pixel value width position information. Indicates. Note that i represents the type or category described above. That is, the SAO offset value indicates the offset value for the type of edge offset or band offset indicated by i for each i. For example, in Non-Patent Document 3, i takes four types from 0 to 3. That is, in the case of the edge offset value, the SAO offset value is a pattern (for example, saddle type, ⁇ type, / type, ⁇ type) for each of the aforementioned edge directions (0, 45, 90, and 135 degrees).
- the values of 0 to 7 are shown as offset values for the four types.
- the SAO offset value indicates a value from 0 to 7 as an offset value for each of the above-described four sections. Then, at least a part of the SAO offset value is arithmetically encoded using the above-described context and recorded in the bitstream (see FIG. 1C).
- SAO offset sign indicates the sign of the SAO offset value described above.
- i is the same as i used for the aforementioned SAO offset value, and associates the SAO offset value with the SAO offset sign.
- the SAO type information indicates an edge offset
- the SAO sign is not used, and the offset value indicated by the SAO offset value is always treated as positive. Therefore, this SAO offset sign is not described in the bit stream.
- the SAO type information indicates a band offset
- a SAO offset sign is used for each of the four sections of the SAO offset value. Therefore, each SAO offset positive / negative code is encoded by the method of bypass arithmetic encoding described above and recorded in the bit stream (see FIG. 1D).
- FIG. 2 is a block diagram showing a functional configuration of the SAO information decoding unit.
- the SAO information decoding unit A01 includes SAO type information (sao_type_idx), SAO pixel value width position information (sao_band_position), SAO offset value (sao_offset [i]), and SAO offset sign (sao_offset_sign [signo] which are part of SAO information. ]) Variable length decoding (arithmetic decoding).
- the SAO information decoding unit A01 includes a Sao_Type decoding unit A02 that decodes SAO type information, a Sao_Type determination unit A03 that determines the type of offset processing indicated by the SAO type information, switches A04, A05, A06, and SAO pixels.
- Sao_band_position decoding unit A07 that decodes the value width position information
- Sao_Offset decoding unit A08 that decodes the SAO offset value
- Sao_offset_sign decoding unit A09 that decodes the SAO offset sign
- a data storage position setting unit A10 and a data storage unit A11
- the SAO information is restored from the bitstream BS.
- FIG. 3 is a flowchart showing an example of the operation flow of the SAO information decoding unit A01.
- the Sao_Type decoding unit A02 of the SAO information decoding unit A01 decodes the SAO type information (sao_type_idx) from the bit stream BS (SB01).
- the Sao_Type determination unit A03 determines whether or not sao_type_idx indicates a band offset for performing offset processing on a pixel value included in a certain fixed width (predetermined pixel value range) (SB02).
- the Sao_Type determination unit A03 sets the switch A04 to ON.
- the Sao_band_position decoding unit A07 decodes the SAO pixel value width position information (sao_band_position) (SB03).
- the data storage position setting unit A10 determines a storage location in the data storage unit A11 based on the decoded SAO pixel value width position information. On the other hand, when it is determined that the band offset is not indicated (NO in SB02), the Sao_Type determination unit A03 sets the switch A04 to OFF. Next, the Sao_Type determination unit A03 determines whether the sao_type_idx indicates that the offset process is not performed (Sao off) (SB04). If it is determined that Sao is off (YES in SB04), the Sao_Type determination unit A03 sets the switches A04, A05, and A06 to OFF, and ends the SAO information decoding process.
- the Sao_Type determination unit A03 sets the switch A05 to ON.
- the Sao_Offset decoding unit A08 decodes the SAO offset value (sao_offset) from the bit stream BS (SB05).
- the decrypted SAO offset value is stored at the position of the data storage unit A11 set by the data storage position setting unit A10.
- the decoding in step SB05 is continued until a predetermined number of SAO offset values are decoded (while NO in SB06).
- the Sao_Type determination unit A03 determines whether sao_type_idx indicates a band offset (SB07). When it is determined that the band offset is indicated (YES in SB07), the Sao_Type determination unit A03 sets the switch A06 to ON.
- the Sao_offset_sign decoding unit A09 decodes the SAO offset sign corresponding to the SAO offset value (SB09). In this case, the SAO offset value in the data storage unit A11 is updated with the decoded SAO offset sign.
- the decoded SAO offset value is zero (YES in SB08)
- the SAO offset plus / minus sign has no particular meaning, so the Sao_offset_sign decoding unit A09 skips decoding.
- the Sao_offset_sign decoding unit A09 continues decoding until the SAO offset sign for a predetermined number of SAO offset values is decoded (while NO in SB10).
- the SAO information decoding unit A01 ends decoding of the SAO information.
- the parameter that is information decoded in the steps surrounded by the double frame in FIG. 3 is a parameter that is decoded by bypass arithmetic decoding that does not require a variable probability value.
- a parameter that is information decoded in steps surrounded by a normal frame line is a parameter that is information that is decoded using a variable probability value, and is scattered in the bitstream.
- variable length coding such as context adaptive arithmetic coding using variable probability values and bypass arithmetic coding not using variable probability values
- CABAC Context Adaptive Binary Arithmetic Coding
- FIG. 4 is a flowchart showing context adaptive arithmetic decoding.
- FIG. 4 is extracted from Non-Patent Document 2, and is as described in Non-Patent Document 2 unless otherwise specified.
- a context (ctxIdx) determined based on a signal type is input.
- a value “qCodIRRangeIdx” is calculated from the first parameter “codIRRange” indicating the current state in the arithmetic decoding apparatus, and a pStateIdx that is a state value corresponding to ctxIdx is obtained.
- the codIRangeLPS is obtained by referring to (rangeTableLPS). This codIRrangeLPS means that in the arithmetic decoding device when LPS (indicating a symbol with a low probability of occurrence among symbols 0 and 1) occurs for the first parameter “codIRrange” indicating the state in the arithmetic decoding device. This parameter indicates the status of
- codIRRange a value obtained by subtracting the above-mentioned codIRrangeLPS from the current codIRrange is set (step SC01).
- the calculated codIRRange is compared with the second parameter “codIOoffset” indicating the state in the arithmetic decoding device (step SC02).
- codIOoffset is equal or larger (Yes in SC02)
- a value obtained by subtracting codIRRange is set in the second parameter “codIOoffset” indicating the state in the arithmetic decoding apparatus. Since LPS has occurred in the first parameter “codIRrange” indicating the state in the arithmetic decoding apparatus, the value of codIRrangeLPS calculated in step SC01 is set (step SC03).
- pStateIdx is not 0 (No in step SC05)
- pStateIdx is updated based on the conversion table “transIdxLPS” when LPS occurs (step SC07).
- codIOoffset is small (No in SC02), it is determined that an MPS symbol has been generated, valMPS is set in the decoded output value binVal, and pStateIdx is converted into the conversion table “transIdxMPS when MPS occurs. Is updated based on "(step SC04).
- step SC08 normalization processing (RenormD) is performed (step SC08), and context adaptive arithmetic decoding is terminated.
- a plurality of symbol occurrence probabilities which are occurrence probabilities of binary symbols, are stored in association with context indexes, and are switched according to conditions (for example, refer to values of adjacent blocks). It is necessary to maintain the order of processing.
- FIG. 5 is a flowchart of bypass arithmetic decoding.
- FIG. 5 is extracted from Non-Patent Document 2, and is as described in Non-Patent Document 2 unless otherwise specified.
- the second parameter “codIOoffset” indicating the current state of the arithmetic decoding device is shifted left (doubled), 1 bit is read from the bit stream, and if the read bit is 1, further +1, 0 If so, the value of (doubled) is set as it is (SD01).
- codIOoffset is equal to or larger than the first parameter “codIRrange” indicating the state in the arithmetic decoding apparatus (Yes in SD02)
- “1” is set to binVal which is a decoding output value
- codIRange is set to codIOoffset. Is set (step SD03).
- codIOoffset is smaller than the first parameter “codIRRange” indicating the state in the arithmetic decoding apparatus (No in SD02)
- “0” is set to binVal which is a decoded output value (step SD04).
- FIG. 6 is a flowchart for explaining in detail the normalization process (RenormD) shown in step SC08 of FIG. This drawing is extracted from Non-Patent Document 2, and is as described in Non-Patent Document 2 unless otherwise specified.
- codIRrange When the first parameter “codIRrange” indicating the state in the arithmetic decoding apparatus is smaller than 0x100 (hexadecimal: 256 (decimal)) in context adaptive arithmetic decoding (Yes in step SE01), codIRrange is set to the left. Shift (twice), left-shift (twice) the second parameter “codIOoffset” indicating the state in the arithmetic decoding device, read 1 bit from the bitstream, and if the read bit is 1, then +1, If it is 0, the value (twice) is set as it is (SE02).
- Non-Patent Document 3 places importance on improving data storability, so that the degree of parallelism in arithmetic encoding or arithmetic decoding, the arrangement of encoded bits, etc. are insufficient. In addition, an extra bit length is required, and as a result, there is a problem that a burden is imposed on encoding and decoding of SAO information.
- the present invention can improve the processing efficiency without reducing the encoding efficiency while maintaining the data storage property when the SAO information, which is the information necessary for the SAO, is arithmetically encoded or arithmetically decoded.
- the SAO information which is the information necessary for the SAO
- arithmetically encoded or arithmetically decoded Provided are a possible video encoding method, video encoding device, video decoding method, video decoding device, and the like.
- encoding may be used in the meaning of encoding.
- a moving image encoding method is a moving image encoding method for generating a bitstream by encoding an input image, and is included in an image generated by encoding the input image.
- the first information of a plurality of types of SAO information used for SAO (Sample Adaptive Offset), which is a process of giving an offset value to the pixel value of a pixel, is encoded by context adaptive arithmetic coding using a variable probability value.
- the second information and the third information of the plurality of types of SAO information are continuously encoded by bypass arithmetic encoding using a fixed probability value, and are encoded in the bitstream.
- the encoded second information and third information are arranged after the first information.
- the context adaptive arithmetic coding cannot be processed in parallel, and the bypass arithmetic coding can be processed in bit units in parallel. Therefore, in the moving picture coding method according to an aspect of the present invention, the second information bypass arithmetic coding and the third information bypass arithmetic coding are performed by context adaptive arithmetic coding of the first information. Since it is performed continuously without being performed intermittently, the amount of information that can be continuously processed in parallel can be increased, and as a result, the efficiency of the parallel processing can be improved. For example, the degree of parallelism can be increased by increasing the number of bits in which bypass arithmetic coding is performed in parallel.
- bypass arithmetic coding since the probability value is fixed, before obtaining the symbol to be coded, arithmetic coding when the symbol is 0 and arithmetic coding when the symbol is 1 are performed. It can be done in parallel in advance. That is, for each symbol generation pattern, arithmetic coding according to the generation pattern can be performed in advance. In other words, pre-read processing can be performed in bypass arithmetic coding. Therefore, by performing the bypass arithmetic encoding of the second information and the bypass arithmetic encoding of the third information in succession, the above-described prefetched processing can be effectively used.
- the second information and the third information that are subjected to bypass arithmetic coding are encoded by context adaptive arithmetic coding. Therefore, the moving picture decoding apparatus can easily decode the second information and the third information successively by bypass arithmetic decoding because the first information is not divided and is arranged after the first information. can do. As a result, the efficiency of parallel processing can be improved even when decoding. Further, in the bitstream, the first information encoded by the context adaptive arithmetic coding is preceded by the second information and the third information encoded by the bypass arithmetic coding.
- the decoding apparatus can start context adaptive arithmetic decoding of the first information before bypass arithmetic decoding of the second information and the third information, so that decoding of the first information is performed. Before the end, decoding of the second information and the third information can be started. As a result, the processing speed can be increased.
- one of the second information and the third information may be sao_band_position indicating a range of pixel values to which the SAO is applied.
- sao_band_position can be efficiently encoded.
- the first information is sao_offset indicating the absolute value of the offset value
- sao_band_position is arranged after sao_offset in the bitstream.
- sao_band_position is decoded after sao_offset. Therefore, even if sao_offset is decoded, but sao_band_position is not decoded, the decoded sao_offset is converted to the pixel value range indicated by sao_band_position (the range of pixel values indicated by sao_band_position).
- the pixel value included in the pixel value range indicated by the sao_band_position is determined by sao_offset.
- the absolute value of the indicated offset value can be applied appropriately. As a result, SAO can be appropriately performed while improving processing efficiency.
- the other of the second information and the third information may be sao_offset_sign indicating whether an offset value given to the pixel value to which the SAO is applied is positive or negative. Good.
- sao_offset_sign can be efficiently encoded.
- sao_offset_sign is arranged after sao_offset in the bitstream.
- the absolute value of the offset value indicated by sao_offset is 0, the sao_offset_sign can be omitted. As a result, the encoding efficiency can be improved.
- the sao_band_position may be encoded after the sao_offset_sign is encoded.
- the first information is sao_offset indicating the absolute value of the offset value
- the pieces of information are arranged in the order of sao_offset, sao_offset_sign, and sao_band_position in the bitstream.
- the video decoding device can decode sao_offset and sao_offset_sign prior to sao_band_position, and as a result, can quickly determine an offset value to be given to the pixel value without waiting for decoding of sao_band_position. .
- the offset value can be easily stored in the memory.
- the pixel to which the SAO is applied has a plurality of types of components, and for each component, the first information corresponding to the component is encoded, the second information corresponding to the component, and the second information 3 information may be encoded.
- the encoded first information applied to the luminance and the first information applied to the luminance are included in the bitstream.
- 2 information and 3rd information are arranged together, the encoded 1st information applied to a color difference, and the encoded 2nd information applied to a color difference, and the 3rd information Arranged together.
- the moving image decoding apparatus can decode only one of the SAO information applied to luminance and the SAO information applied to color difference as necessary. That is, when SAO is performed only for luminance, it is possible to prevent decoding even SAO information applied to unnecessary color differences. As a result, processing efficiency can be improved.
- the second information and the third information are encoded, the second information and the third information are encoded in the plurality of types of SAO information.
- the at least one other information may be encoded by the bypass arithmetic encoding.
- the first information may be a part of sao_type_idx indicating that the SAO is not performed or the type of the SAO.
- a moving picture decoding method is a moving picture decoding method for decoding an encoded image included in a bitstream, and includes a pixel of an image generated by decoding the encoded image.
- Context adaptive arithmetic in which variable probability values are used as the first information among a plurality of types of SAO information used in SAO (Sample Adaptive Offset), which is a process of giving an offset value to a pixel value.
- SAO Sample Adaptive Offset
- the second information and the third information after the first information in the bitstream are decoded by bypass arithmetic decoding using a fixed probability value. Decrypt continuously.
- the second information bypass arithmetic decoding and the third information bypass arithmetic decoding are intermittently performed by the context adaptive arithmetic decoding of the first information. Therefore, the amount of information that can be continuously processed in parallel can be increased, and as a result, the efficiency of the parallel processing can be improved. For example, the degree of parallelism can be increased by increasing the number of bits in which bypass arithmetic decoding is performed in parallel.
- bypass arithmetic decoding since the probability value is fixed, before acquiring data to be decoded, arithmetic decoding when the data is 0 and arithmetic decoding when the data is 1 are performed in parallel in advance. Can be done. That is, for each data generation pattern, arithmetic decoding according to the generation pattern can be performed in advance. In other words, in the bypass arithmetic decoding, the prefetched process can be performed. Therefore, by performing the bypass arithmetic decoding of the second information and the bypass arithmetic decoding of the third information in succession, the above-described prefetched processing can be effectively utilized.
- the first information encoded by the context adaptive arithmetic encoding is preceded by the second information and the third information encoded by the bypass arithmetic encoding.
- Context adaptive arithmetic decoding of one information can be started before bypass arithmetic decoding of the second information and the third information, and as a result, before the decoding of the first information ends, Decoding of the second information and the third information can be started. As a result, the processing speed can be increased.
- one of the second information and the third information may be sao_band_position indicating a range of pixel values to which the SAO is applied.
- sao_band_position can be efficiently decoded.
- the first information is sao_offset indicating the absolute value of the offset value
- sao_band_position is arranged after sao_offset in the bitstream.
- the decoded sao_offset is associated with a range (position) of pixel values indicated by sao_band_position. Cannot be stored in the memory storage location.
- the pixel value included in the pixel value range indicated by the sao_band_position is determined by sao_offset.
- the absolute value of the indicated offset value can be applied appropriately. As a result, SAO can be appropriately performed while improving processing efficiency.
- the other of the second information and the third information may be sao_offset_sign indicating whether an offset value given to the pixel value to which the SAO is applied is positive or negative. Good.
- sao_offset_sign can be efficiently decoded.
- sao_offset_sign is arranged after sao_offset in the bitstream.
- the absolute value of the offset value indicated by sao_offset is 0, the sao_offset_sign is omitted.
- the sao_band_position may be decoded after the sao_offset_sign is decoded.
- sao_offset indicating the absolute value of the offset value
- sao_bandset and sao_offset_sign can be decoded before sao_band_position, and as a result, without waiting for decoding of sao_band_position.
- the offset value given to the pixel value can be determined quickly. As a result, the offset value can be easily stored in the memory.
- the pixel to which the SAO is applied has a plurality of types of components, and for each component, the first information corresponding to the component is decoded, the second information corresponding to the component, and the third information The information may be decrypted.
- the plurality of types of components are the luminance and color difference indicated by cIdx
- only one of SAO information applied to luminance and SAO information applied to color difference is required. It can be decrypted accordingly. That is, when SAO is performed only for luminance, it is possible to prevent decoding even SAO information applied to unnecessary color differences. As a result, processing efficiency can be improved.
- At least one of the plurality of types of SAO information is continuously included in the decoding of the second information and the third information.
- One piece of other information may be decoded by the bypass arithmetic decoding.
- the first information may be a part of sao_type_idx indicating that the SAO is not performed or the type of the SAO.
- FIG. 7 is a block diagram illustrating an example of a configuration of the video decoding device 100 according to Embodiment 1.
- the moving image decoding apparatus 100 decodes the encoded image data that has been compression encoded. For example, the moving image decoding apparatus 100 receives encoded image data (bit stream) as a decoding target signal (input signal) for each block. The moving image decoding apparatus 100 restores image data by performing variable length decoding, inverse quantization, and inverse transform on the input decoding target signal.
- the video decoding device 100 includes an entropy decoding unit 110, an inverse quantization / inverse conversion unit 120, an adder 125, a loop filter 130, a memory 140, an intra prediction unit 150, A motion compensation unit 160 and an intra / inter switch 170 are provided.
- the entropy decoding unit 110 restores the quantized coefficient by variable length decoding the input signal.
- the input signal is a signal to be decoded and corresponds to data for each block of the encoded image data. Further, the entropy decoding unit 110 acquires motion data from the input signal and outputs the acquired motion data to the motion compensation unit 160. Furthermore, the entropy decoding unit 110 restores the above-described SAO information by variable-length decoding the input signal, and outputs the SAO information to the loop filter 130.
- the inverse quantization / inverse transform unit 120 restores the transform coefficient by inversely quantizing the quantized coefficient restored by the entropy decoding unit 110. Then, the inverse quantization / inverse transform unit 120 restores the prediction error by inversely transforming the restored transform coefficient.
- the adder 125 generates a decoded image by adding the restored prediction error and the prediction signal.
- the loop filter 130 performs loop filter processing on the generated decoded image.
- the decoded image subjected to the loop filter process is output as a decoded signal.
- This loop filter process includes the SAO described above.
- the memory 140 is a memory for storing a reference image used for motion compensation. Specifically, the memory 140 stores a decoded image that has been subjected to loop filter processing.
- the intra prediction unit 150 generates a prediction signal (intra prediction signal) by performing intra prediction. Specifically, the intra prediction unit 150 generates an intra prediction signal by performing intra prediction with reference to images around the block to be decoded (input signal) in the decoded image generated by the adder 125. .
- the motion compensation unit 160 generates a prediction signal (inter prediction signal) by performing motion compensation based on the motion data output from the entropy decoding unit 110.
- the intra / inter switch 170 selects either the intra prediction signal or the inter prediction signal, and outputs the selected signal to the adder 125 as a prediction signal.
- the moving image decoding apparatus 100 decodes encoded image data that is compression-encoded image data.
- the entropy decoding unit 110 includes a SAO information decoding unit that decodes SAO information.
- FIG. 8 is a block diagram illustrating a functional configuration of the SAO information decoding unit according to the first embodiment.
- the SAO information decoding unit 101 restores the SAO information from the bit stream BS. That is, the SAO information decoding unit 101 performs SAO type information (sao_type_idx), SAO pixel value width position information (sao_band_position), SAO offset value (sao_offset [i]), which are part of SAO information, which are each variable-length encoded.
- SAO offset sign (sao_offset_sign [i]) is variable-length decoded.
- the SAO information decoding unit 101 includes a Sao_Type decoding unit 102 that decodes SAO type information, a Sao_Type determination unit 103 that determines the type of offset processing indicated by the SAO type information, switches 104 and 105, A Sao_band_position decoding unit 107 that decodes SAO pixel value width position information, a Sao_Offset decoding unit 108 that decodes SAO offset values, a Sao_offset_sign decoding unit 109 that decodes SAO offset positive / negative codes, and a data storage unit 111 are provided.
- a Sao_Type decoding unit 102 that decodes SAO type information
- a Sao_Type determination unit 103 that determines the type of offset processing indicated by the SAO type information
- switches 104 and 105 switches 104 and 105
- a Sao_band_position decoding unit 107 that decodes SAO pixel value width position information
- a Sao_Offset decoding unit 108 that decodes SAO
- FIG. 9 is a flowchart showing an example of the flow of arithmetic decoding by the SAO information decoding unit 101.
- the Sao_Type decoding unit 102 of the SAO information decoding unit 101 decodes SAO type information (sao_type_idx) from the bitstream BS (S201).
- the Sao_Type determination unit 103 determines whether or not sao_type_idx indicates that SAO is not performed (Sao off) (S202). If it is determined that SAO is not performed (YES in S202), the Sao_Type determination unit 103 sets the switches 104 and 105 to OFF because there is no SAO information other than SAO type information in the bitstream BS. To complete arithmetic decoding of SAO information.
- the Sao_Type determination unit 103 sets the switch 105 to ON. Accordingly, the Sao_Offset decoding unit 108 decodes the SAO offset value (sao_offset) from the bitstream BS (S203). The Sao_Offset decoding unit 108 stores the decoded SAO offset value in an offset register or a memory portion reserved in advance in the data storage unit 111. Here, the Sao_Offset decoding unit 108 continues the decoding in step S203 until a predetermined number of SAO offset values are decoded (NO in S204).
- the Sao_Type determination unit 103 performs an offset process on the pixel values included in a certain fixed width (predetermined pixel value range). It is determined whether or not sao_type_idx indicates a band offset for performing (S205).
- the Sao_Type determination unit 103 sets the switch 104 to OFF and ends the arithmetic decoding of all the SAO information.
- the Sao_Type determination unit 103 sets the switch 104 to ON.
- the Sao_offset_sign decoding unit 109 If the decoded SAO offset value is zero (YES in S206), the SAO offset plus / minus sign has no particular meaning, so the Sao_offset_sign decoding unit 109 skips decoding. Here, the Sao_offset_sign decoding unit 109 continues decoding until the SAO offset sign for the predetermined number of SAO offset values is decoded (while NO in S208). When all the SAO offset signs are decoded (YES in S208), the Sao_band_position decoding unit 107 decodes the SAO pixel value width position information (sao_band_position) (S209).
- the SAO pixel value width position information is recorded in the data storage unit 111 in order to indicate which pixel value width (section) the SAO offset value is the offset value by this SAO pixel value width position information.
- the storage position in the data storage unit 111 is changed based on the SAO pixel value width position information. With this process, the SAO information can be correctly decoded.
- the SAO type information is always decoded from the bitstream BS here, but the present invention is not limited to this.
- the SAO type information may be decoded by deriving the SAO type information of the area to be processed according to a predetermined rule (for example, using the same SAO type information as the left area).
- the SAO type information is not necessarily described in the bitstream.
- the processing amount is reduced, the processing efficiency is improved, and the coding efficiency is improved. Appropriate decoding of the bitstream can be achieved.
- the parameter which is the information decoded in the steps surrounded by the double frame in FIG. 9 is the parameter decoded by the above-described bypass arithmetic decoding.
- a parameter that is information that is decoded in steps surrounded by a normal frame line is a parameter that is context-adaptive arithmetically decoded by using a probability value in which at least a part of the parameter is variable.
- the amount of processing can be reduced by performing bypass arithmetic decoding on the SAO offset sign corresponding to the SAO offset value and the SAO pixel value width position information (see FIG. 5).
- this bypass arithmetic decoding normalization processing is executed according to the flow shown in FIG.
- FIG. 10A is a diagram for describing an example of the arrangement of parameters included in the SAO information and the decoding order of the parameters in the present embodiment.
- FIG. 10A shows an example when decoding for SAO information is performed in parallel.
- these pieces of information (parameters) included in the bitstream BS are decoded in the order of SAO_OFFSET, SAO_OFFSET_SIGN, and SAO_BAND_POSITION.
- the SAO offset value is shown as SAO_OFFSET
- the SAO offset sign is shown as SAO_OFFSET_SIGN
- the SAO pixel value width position information is shown as SAO_BAND_POSITION.
- SAO_OFFSET_SIGN and SAO_BAND_POSITION surrounded by a thick frame in FIG. 10A are all bypass arithmetic decoded.
- high-speed processing is required as the image resolution to be used increases and high-speed real-time communication becomes widespread.
- SAO_OFFSET since at least a part of SAO_OFFSET is context adaptive arithmetic coded, it is necessary to sequentially read and update the symbol occurrence probability. Therefore, the arithmetic decoding of the SAO_OFFSET cannot be performed in parallel. Therefore, the parts subjected to bypass arithmetic decoding are decoded in parallel in bit units as shown in FIG. 10A (b).
- bypass arithmetic decoding when the bypass arithmetic decoding is performed in parallel, the bypass arithmetic decoding can be performed in advance without depending on the internal state of the video decoding device 100. As soon as the information is acquired, the bypass arithmetic decoding may be started even if the context adaptive arithmetic decoding is not completed. As a result, higher-speed decoding is possible.
- FIG. 10B is a diagram for describing an example of the arrangement of parameters included in the SAO information and the decoding order of the parameters for performing the operation illustrated in FIG. 3.
- 10A corresponds to (a) in FIG. 10A
- (b) in FIG. 10B corresponds to (b) in FIG. 10A.
- context adaptive arithmetic decoding for SAO_OFFSET is a sequential process
- bypass arithmetic decoding for SAO_BAND_POSITION and SAO_OFFSET_SIGN can be parallelized.
- bypass arithmetic decoding portion before and after the context arithmetic decoding portion a portion where parallel processing is possible is interrupted. Therefore, the arrangement of the parameters in the present embodiment shown in FIG.
- the video decoding apparatus can know the position of the band offset (SAO pixel value width position information) in advance, the storage position in the memory where the SAO offset value is stored is stored. There is an advantage that it can be determined in advance according to the SAO pixel value width position information.
- the above-described storage position is determined regardless of the band offset position (SAO pixel value width position information), and when applying SAO, the SAO pixel value width position information indicating the band offset position is used. It is passed to the loop filter 130. Thereby, according to the order of each parameter shown to FIG. 10A, those parameters can be decoded without a problem.
- SAO_OFFSET even when all of SAO_OFFSET is context arithmetic coded or only a part thereof is context arithmetic coded, there are i SAO_OFFSETs (i is an integer of 2 or more). Are decoded in the order in which they are included in the bitstream BS.
- the present invention is not limited to this, and the PREFIX part configured by collecting only a part of each SAO_OFFSET and the SUFIX part configured by collecting only the remaining part of each SAO_OFFSET are sequentially decoded. May be.
- FIG. 10C is a diagram for explaining an example of the arrangement of parameters included in the SAO information and the decoding order of each parameter when i SAO_OFFSETs are configured by a PREFIX part and a SUFIX part.
- the SURFIX part follows the PREFIX part.
- these parameters are continuously included, including not only SAO_OFFSET_SIGN and SAO_BAND_POSITION, but also SAO_OFFSET_SURFIX which is a SURFIX part.
- SAO_OFFSET_SURFIX which is a SURFIX part.
- context adaptive arithmetic decoding is performed on a predetermined type of information among a plurality of types of information included in the SAO information, and other types of information are converted.
- bypass arithmetic decoding by performing bypass arithmetic decoding continuously, a portion that can be processed in parallel can be made longer, so that efficient parallel processing, that is, high-speed decoding can be performed.
- band offset related information sao_band_position
- sao_offset the band offset related information after sao_offset
- decoding applied to the parameter is switched between context adaptive arithmetic decoding and bypass arithmetic decoding.
- the present invention is not limited to this.
- the effect of reducing a certain amount of processing can be expected only by switching the decoding applied to the part between the context adaptive arithmetic decoding and the bypass arithmetic decoding. In this case, it is possible to realize not only the above-described effect in the present embodiment but also the reduction of the internal memory.
- a Huffman code may be derived from a mode number obtained according to the occurrence frequency, a table may be generated from the code, and a portion with a biased occurrence probability may be selected as the prefix portion.
- the binarization column may be a fixed length. This is because SAO information is used for loop filter processing, and thus affects the image quality of the output image. Since the part subjected to bypass arithmetic decoding is directly related to the code amount, when the moving image encoder selects regardless of the code amount, the fixed length is used so that the moving image encoder matches the video characteristics. Information can be selected. As a result, a high-quality decoded image can be provided.
- the present invention is not limited to this. Even if all of these parameters are bypass arithmetic coded, decoding can be performed at high speed by parallelizing bypass arithmetic decoding using the order of the present embodiment different from the conventional method. Furthermore, there is an effect that it is possible to reduce the processing for determining whether or not it is a band offset, and the processing load can be reduced.
- the moving picture coding apparatus generates a bit stream BS that is decoded by the moving picture decoding apparatus 100 according to the first embodiment by coding a moving picture.
- FIG. 11 is a block diagram showing an example of the configuration of the moving picture coding apparatus 200 according to the second embodiment.
- the moving image coding apparatus 200 includes a subtracter 205, a transform / quantization unit 210, an entropy coding unit 220, an inverse quantization / inverse transform unit 230, an adder 235, A loop filter 240, a memory 250, an intra prediction unit 260, a motion detection unit 270, a motion compensation unit 280, and an intra / inter switch 290 are provided.
- the subtracter 205 calculates a difference between an input signal indicating an image and a prediction signal, that is, a prediction error.
- the transform / quantization unit 210 generates a frequency domain transform coefficient by transforming a spatial domain prediction error. For example, the transform / quantization unit 210 generates a transform coefficient by performing DCT (Discrete Cosine Transform) transform on the prediction error. Furthermore, the transform / quantization unit 210 generates a quantized coefficient by quantizing the transform coefficient.
- DCT Discrete Cosine Transform
- the entropy encoding unit 220 generates an encoded signal (bit stream) by variable-length encoding the quantization coefficient.
- the entropy encoding unit 220 encodes the motion data (for example, a motion vector) detected by the motion detection unit 270, and outputs the encoded data by including it in the encoded signal. Furthermore, the entropy encoding unit 220 performs variable length encoding on the SAO information used in the loop filter 240, and includes the variable length encoded SAO information in the encoded signal.
- the inverse quantization / inverse transform unit 230 restores the transform coefficient by inverse quantization of the quantized coefficient. Further, the inverse quantization / inverse transform unit 230 restores the prediction error by inversely transforming the restored transform coefficient. Note that the restored prediction error does not match the prediction error generated by the subtractor 205 because information is lost due to quantization. That is, the restored prediction error includes a quantization error.
- the adder 235 generates a local decoded image (temporary decoded image) by adding the restored prediction error and the prediction signal.
- the loop filter 240 performs a loop filter process on the generated local decoded image.
- This loop filter process includes the SAO described above. That is, the loop filter 240 performs SAO on the local decoded image using SAO information, and outputs the SAO information to the entropy encoding unit 220.
- the memory 250 is a memory for storing a reference image used for motion compensation. Specifically, the memory 250 stores a locally decoded image that has been subjected to loop filter processing.
- the intra prediction unit 260 generates a prediction signal (intra prediction signal) by performing intra prediction. Specifically, the intra prediction unit 260 performs intra prediction with reference to an image around the block to be encoded (input signal) in the local decoded image generated by the adder 235, thereby obtaining an intra prediction signal. Generate.
- the motion detector 270 detects motion data (for example, a motion vector) between the input signal and the reference image stored in the memory 250.
- motion data for example, a motion vector
- the motion compensation unit 280 generates a prediction signal (inter prediction signal) by performing motion compensation based on the detected motion data.
- the intra / inter switch 290 selects either the intra prediction signal or the inter prediction signal, and outputs the selected signal to the subtracter 205 and the adder 235 as a prediction signal.
- the moving image encoding apparatus 200 compresses and encodes image data.
- the entropy encoding unit 220 includes a SAO information encoding unit that encodes SAO information.
- the arithmetic coding method by the SAO information coding unit of the present embodiment is a context adaptive arithmetic coding of a predetermined parameter included in SAO information and is included in SAO information. It is characterized in that a plurality of other kinds of parameters are successively subjected to bypass arithmetic coding. Thus, efficient parallel processing can be realized, and SAO information can be encoded at high speed.
- FIG. 12 is a flowchart showing the flow of arithmetic coding by the SAO information coding unit according to the second embodiment.
- the SAO information encoding unit encodes sao_type_idx (S501).
- sao_type_idx does not have to be the information itself shown in FIG. 1A.
- sao_type_idx is not limited to the information shown in FIG. 1A as long as it is information for specifying SAO type information such as a flag indicating that the same SAO type information as that of the left target area is used.
- the present embodiment is characterized in the order of encoding of subsequent bit streams.
- the SAO information encoding unit when sao_type_idx indicates that SAO is not to be performed (Sao off) (YES in S502), the SAO information encoding unit does not need to encode any more SAO information. End encoding.
- the SAO information encoding unit encodes the SAO offset value (sao_offset) (S503).
- sao_offset is context arithmetic coded and included in the bitstream by a predetermined method (S503).
- the SAO information encoding unit repeatedly executes the encoding in step S503 until all the predetermined number of sao_offsets are encoded (while NO in S504). If all the sao_offsets have been encoded (YES in S504), the SAO information encoding unit determines whether sao_type_idx indicates a band offset (S505). If it is determined that sao_type_idx does not indicate a band offset (NO in S505), the SAO information encoding unit ends encoding of SAO information.
- the SAO information encoding unit determines whether the already encoded sao_offset value is zero (S506).
- the SAO information encoding unit encodes the SAO offset positive / negative code for the sao_offset (S507).
- This SAO offset sign is bypass arithmetic coded.
- the details of bypass arithmetic coding are the same as CABAC coding described in Non-Patent Documents 1 to 3, and bypass arithmetic coding is a process that can be compared with bypass arithmetic decoding.
- the SAO information encoding unit skips encoding.
- the SAO information encoding unit repeats steps S506 and S507 for all the values of sao_offset (S508), and when the processing for all the values of sao_offset is completed (YES in S508), the SAO pixel value width position information (sao_band_position) Is encoded (S509).
- This parameter is also a parameter that is bypass arithmetic coded as described above. This completes the encoding of the SAO information.
- the parameter that is information encoded in the steps surrounded by the double frame in FIG. 12 is a parameter encoded by bypass arithmetic encoding.
- the probability value is fixed in bypass arithmetic coding applied to these parameters, each of these parameters can be coded in parallel.
- bypass arithmetic coding is arithmetic coding that does not require update of the probability value, and may be arithmetic coding different from those described in Non-Patent Documents 1 and 2.
- FIG. 13A is a diagram showing a syntax for generating a conventional bitstream shown in Non-Patent Document 3.
- the process for generating the bitstream includes a determination step for determining whether sao_type_idx indicates a band offset. Therefore, high-speed encoding is difficult.
- FIG. 13B is a diagram illustrating a syntax for generating a bitstream according to the present embodiment.
- the moving picture coding method according to the present embodiment is significant.
- FIG. 14 is a diagram showing a syntax for generating another bit stream in the present embodiment.
- the SAO offset value (sao_offset) is divided into a PREFIX part that is context arithmetic coded and a SURFIX part that is bypass arithmetic coded. In this case, encoding can be performed at a higher speed as shown in FIG. 10C.
- the present invention is not limited to this. Even if all of these parameters are bypass arithmetic encoded, they can be encoded at high speed by parallelization of bypass arithmetic encoding using the order of the present embodiment different from the conventional method. Furthermore, there is an effect that it is possible to reduce the processing for determining whether or not it is a band offset, and the processing load can be reduced.
- FIG. 15A is a flowchart of a moving picture coding method according to another embodiment.
- This moving image encoding method is a moving image encoding method that generates a bit stream by encoding an input image, and includes steps S11 and S12.
- step S11 among the plurality of types of SAO information (parameters) used for SAO (Sample Adaptive Offset), which is a process of giving an offset value to the pixel value of a pixel included in an image generated by encoding an input image. 1 information is encoded by context adaptive arithmetic coding using variable probability values.
- step S12 the second information and the third information of the plurality of types of SAO information are continuously encoded by bypass arithmetic coding using a fixed probability value. As a result, in the bit stream, the encoded second information and the third information are arranged after the encoded first information.
- FIG. 15B is a block diagram of a moving picture coding apparatus according to another embodiment.
- the moving image encoding device 10 is a moving image encoding device that generates a bit stream by encoding an input image, and includes a context adaptive arithmetic encoding unit 11 and a bypass arithmetic encoding unit 12.
- the context adaptive arithmetic coding unit 11 uses a plurality of types of SAO information (parameters) used in SAO (Sample Adaptive Offset), which is a process of giving an offset value to a pixel value of a pixel included in an image generated by encoding an input image. ) Is encoded by context adaptive arithmetic coding using a variable probability value.
- SAO Sample Adaptive Offset
- the bypass arithmetic encoding unit 12 continuously encodes the second information and the third information of the plurality of types of SAO information by bypass arithmetic encoding using a fixed probability value. As a result, in the bit stream, the encoded second information and the third information are arranged after the encoded first information.
- FIG. 15C is a flowchart of a moving picture decoding method according to another embodiment.
- This moving image decoding method is a moving image decoding method for decoding an encoded image included in a bit stream, and includes steps S21 and S22.
- step S21 multiple types of SAO information included in the bitstream used for SAO (Sample Adaptive Offset), which is a process of giving an offset value to the pixel value of a pixel included in an image generated by decoding the encoded image
- First information of (parameter) is decoded by context adaptive arithmetic decoding using a variable probability value.
- step S22 the second information and the third information after the first information in the bit stream among the plurality of types of SAO information are successively obtained by bypass arithmetic decoding using a fixed probability value. Decrypt.
- FIG. 15D is a block diagram of a video decoding device according to another embodiment.
- the video decoding device 20 is a video decoding device that decodes an encoded image included in a bitstream, and includes a context adaptive arithmetic decoding unit 21 and a bypass arithmetic decoding unit 22.
- the context adaptive arithmetic decoding unit 21 is used for SAO (Sample Adaptive Offset), which is a process for giving an offset value to a pixel value of a pixel included in an image generated by decoding a coded image, and includes a plurality of bits included in the bit stream.
- SAO Sample Adaptive Offset
- First information of the SAO information (parameter) of the seed is decoded by context adaptive arithmetic decoding using a variable probability value.
- the bypass arithmetic decoding unit 22 performs the second information and the third information after the first information in the bitstream among the plurality of types of SAO information by bypass arithmetic decoding using a fixed probability value. Decrypt continuously.
- each component may be configured by dedicated hardware or may be realized by executing a software program suitable for each component.
- Each component may be realized by a program execution unit such as a CPU or a processor reading and executing a software program recorded on a recording medium such as a hard disk or a semiconductor memory.
- the software that realizes the moving picture coding apparatus according to each of the above embodiments is a program that causes a computer to execute the steps shown in FIG. 15A.
- achieves the moving image decoding apparatus of each said embodiment is a program which makes a computer perform each step shown to FIG. 15C.
- the storage medium may be any medium that can record a program, such as a magnetic disk, an optical disk, a magneto-optical disk, an IC card, and a semiconductor memory.
- the system has an image encoding / decoding device including an image encoding device using an image encoding method and an image decoding device using an image decoding method.
- image encoding / decoding device including an image encoding device using an image encoding method and an image decoding device using an image decoding method.
- Other configurations in the system can be appropriately changed according to circumstances.
- FIG. 16 is a diagram showing an overall configuration of a content supply system ex100 that realizes a content distribution service.
- a communication service providing area is divided into desired sizes, and base stations ex106, ex107, ex108, ex109, and ex110, which are fixed wireless stations, are installed in each cell.
- This content supply system ex100 includes a computer ex111, a PDA (Personal Digital Assistant) ex112, a camera ex113, a mobile phone ex114, a game machine ex115 via the Internet ex101, the Internet service provider ex102, the telephone network ex104, and the base stations ex106 to ex110. Etc. are connected.
- PDA Personal Digital Assistant
- each device may be directly connected to the telephone network ex104 without going from the base station ex106, which is a fixed wireless station, to ex110.
- the devices may be directly connected to each other via short-range wireless or the like.
- the camera ex113 is a device that can shoot moving images such as a digital video camera
- the camera ex116 is a device that can shoot still images and movies such as a digital camera.
- the mobile phone ex114 is a GSM (registered trademark) (Global System for Mobile Communications) system, a CDMA (Code Division Multiple Access) system, a W-CDMA (Wideband-Code Division Multiple Access) system, or an LTE (Long Terminal Term Evolution). It is possible to use any of the above-mentioned systems, HSPA (High Speed Packet Access) mobile phone, PHS (Personal Handyphone System), or the like.
- the camera ex113 and the like are connected to the streaming server ex103 through the base station ex109 and the telephone network ex104, thereby enabling live distribution and the like.
- live distribution content that is shot by a user using the camera ex113 (for example, music live video) is encoded as described in each of the above embodiments (that is, in one aspect of the present invention).
- the streaming server ex103 stream-distributes the content data transmitted to the requested client. Examples of the client include a computer ex111, a PDA ex112, a camera ex113, a mobile phone ex114, and a game machine ex115 that can decode the encoded data.
- Each device that receives the distributed data decodes the received data and reproduces it (that is, functions as an image decoding device according to one embodiment of the present invention).
- the captured data may be encoded by the camera ex113, the streaming server ex103 that performs data transmission processing, or may be shared with each other.
- the decryption processing of the distributed data may be performed by the client, the streaming server ex103, or may be performed in common with each other.
- still images and / or moving image data captured by the camera ex116 may be transmitted to the streaming server ex103 via the computer ex111.
- the encoding process in this case may be performed by any of the camera ex116, the computer ex111, and the streaming server ex103, or may be performed in a shared manner.
- these encoding / decoding processes are generally performed in the computer ex111 and the LSI ex500 included in each device.
- the LSI ex500 may be configured as a single chip or a plurality of chips.
- moving image encoding / decoding software is incorporated into some recording medium (CD-ROM, flexible disk, hard disk, etc.) that can be read by the computer ex111, etc., and encoding / decoding processing is performed using the software. May be.
- moving image data acquired by the camera may be transmitted.
- the moving image data at this time is data encoded by the LSI ex500 included in the mobile phone ex114.
- the streaming server ex103 may be a plurality of servers or a plurality of computers, and may process, record, and distribute data in a distributed manner.
- the encoded data can be received and reproduced by the client.
- the information transmitted by the user can be received, decrypted and reproduced by the client in real time, and personal broadcasting can be realized even for a user who does not have special rights or facilities.
- the digital broadcast system ex200 also includes at least the video encoding device (video encoding device) or video decoding according to each of the above embodiments. Any of the devices (image decoding devices) can be incorporated.
- video encoding device video encoding device
- image decoding devices any of the devices (image decoding devices) can be incorporated.
- the broadcast station ex201 multiplexed data obtained by multiplexing music data and the like on video data is transmitted to a communication or satellite ex202 via radio waves.
- This video data is data encoded by the moving image encoding method described in each of the above embodiments (that is, data encoded by the image encoding apparatus according to one aspect of the present invention).
- the broadcasting satellite ex202 transmits a radio wave for broadcasting, and this radio wave is received by a home antenna ex204 capable of receiving satellite broadcasting.
- the received multiplexed data is decoded and reproduced by an apparatus such as the television (receiver) ex300 or the set top box (STB) ex217 (that is, functions as an image decoding apparatus according to one embodiment of the present invention).
- a reader / recorder ex218 that reads and decodes multiplexed data recorded on a recording medium ex215 such as a DVD or a BD, or encodes a video signal on the recording medium ex215 and, in some cases, multiplexes and writes it with a music signal. It is possible to mount the moving picture decoding apparatus or moving picture encoding apparatus described in the above embodiments. In this case, the reproduced video signal is displayed on the monitor ex219, and the video signal can be reproduced in another device or system using the recording medium ex215 on which the multiplexed data is recorded.
- a moving picture decoding apparatus may be mounted in a set-top box ex217 connected to a cable ex203 for cable television or an antenna ex204 for satellite / terrestrial broadcasting and displayed on the monitor ex219 of the television.
- the moving picture decoding apparatus may be incorporated in the television instead of the set top box.
- FIG. 18 is a diagram illustrating a television (receiver) ex300 that uses the video decoding method and the video encoding method described in each of the above embodiments.
- the television ex300 obtains or outputs multiplexed data in which audio data is multiplexed with video data via the antenna ex204 or the cable ex203 that receives the broadcast, and demodulates the received multiplexed data.
- the modulation / demodulation unit ex302 that modulates multiplexed data to be transmitted to the outside, and the demodulated multiplexed data is separated into video data and audio data, or the video data and audio data encoded by the signal processing unit ex306 Is provided with a multiplexing / demultiplexing unit ex303.
- the television ex300 also decodes the audio data and the video data, or encodes the information, the audio signal processing unit ex304, the video signal processing unit ex305 (the image encoding device or the image according to one embodiment of the present invention) A signal processing unit ex306 that functions as a decoding device), a speaker ex307 that outputs the decoded audio signal, and an output unit ex309 that includes a display unit ex308 such as a display that displays the decoded video signal. Furthermore, the television ex300 includes an interface unit ex317 including an operation input unit ex312 that receives an input of a user operation. Furthermore, the television ex300 includes a control unit ex310 that performs overall control of each unit, and a power supply circuit unit ex311 that supplies power to each unit.
- the interface unit ex317 includes a bridge unit ex313 connected to an external device such as a reader / recorder ex218, a recording unit ex216 such as an SD card, and an external recording unit such as a hard disk.
- a driver ex315 for connecting to a medium, a modem ex316 for connecting to a telephone network, and the like may be included.
- the recording medium ex216 is capable of electrically recording information by using a nonvolatile / volatile semiconductor memory element to be stored.
- Each part of the television ex300 is connected to each other via a synchronous bus.
- the television ex300 receives a user operation from the remote controller ex220 or the like, and demultiplexes the multiplexed data demodulated by the modulation / demodulation unit ex302 by the multiplexing / demultiplexing unit ex303 based on the control of the control unit ex310 having a CPU or the like. Furthermore, in the television ex300, the separated audio data is decoded by the audio signal processing unit ex304, and the separated video data is decoded by the video signal processing unit ex305 using the decoding method described in each of the above embodiments.
- the decoded audio signal and video signal are output from the output unit ex309 to the outside. At the time of output, these signals may be temporarily stored in the buffers ex318, ex319, etc. so that the audio signal and the video signal are reproduced in synchronization. Also, the television ex300 may read multiplexed data from recording media ex215 and ex216 such as a magnetic / optical disk and an SD card, not from broadcasting. Next, a configuration in which the television ex300 encodes an audio signal or a video signal and transmits the signal to the outside or to a recording medium will be described.
- the television ex300 receives a user operation from the remote controller ex220 and the like, encodes an audio signal with the audio signal processing unit ex304, and converts the video signal with the video signal processing unit ex305 based on the control of the control unit ex310. Encoding is performed using the encoding method described in (1).
- the encoded audio signal and video signal are multiplexed by the multiplexing / demultiplexing unit ex303 and output to the outside. When multiplexing, these signals may be temporarily stored in the buffers ex320, ex321, etc. so that the audio signal and the video signal are synchronized.
- a plurality of buffers ex318, ex319, ex320, and ex321 may be provided as illustrated, or one or more buffers may be shared. Further, in addition to the illustrated example, data may be stored in the buffer as a buffer material that prevents system overflow and underflow, for example, between the modulation / demodulation unit ex302 and the multiplexing / demultiplexing unit ex303.
- the television ex300 has a configuration for receiving AV input of a microphone and a camera, and performs encoding processing on the data acquired from them. Also good.
- the television ex300 has been described as a configuration capable of the above-described encoding processing, multiplexing, and external output, but these processing cannot be performed, and only the above-described reception, decoding processing, and external output are possible. It may be a configuration.
- the decoding process or the encoding process may be performed by either the television ex300 or the reader / recorder ex218,
- the reader / recorder ex218 may share with each other.
- FIG. 19 shows a configuration of an information reproducing / recording unit ex400 when data is read from or written to an optical disk.
- the information reproducing / recording unit ex400 includes elements ex401, ex402, ex403, ex404, ex405, ex406, and ex407 described below.
- the optical head ex401 irradiates a laser spot on the recording surface of the recording medium ex215 that is an optical disk to write information, and detects information reflected from the recording surface of the recording medium ex215 to read the information.
- the modulation recording unit ex402 electrically drives a semiconductor laser built in the optical head ex401 and modulates the laser beam according to the recording data.
- the reproduction demodulator ex403 amplifies the reproduction signal obtained by electrically detecting the reflected light from the recording surface by the photodetector built in the optical head ex401, separates and demodulates the signal component recorded on the recording medium ex215, and is necessary To play back information.
- the buffer ex404 temporarily holds information to be recorded on the recording medium ex215 and information reproduced from the recording medium ex215.
- the disk motor ex405 rotates the recording medium ex215.
- the servo control unit ex406 moves the optical head ex401 to a predetermined information track while controlling the rotational drive of the disk motor ex405, and performs a laser spot tracking process.
- the system control unit ex407 controls the entire information reproduction / recording unit ex400.
- the system control unit ex407 uses various types of information held in the buffer ex404, and generates and adds new information as necessary.
- the modulation recording unit ex402, the reproduction demodulation unit This is realized by recording / reproducing information through the optical head ex401 while operating the ex403 and the servo control unit ex406 in a coordinated manner.
- the system control unit ex407 includes, for example, a microprocessor, and executes these processes by executing a read / write program.
- the optical head ex401 has been described as irradiating a laser spot.
- a configuration in which higher-density recording is performed using near-field light may be used.
- FIG. 20 shows a schematic diagram of a recording medium ex215 that is an optical disk.
- Guide grooves grooves
- address information indicating the absolute position on the disc is recorded in advance on the information track ex230 by changing the shape of the groove.
- This address information includes information for specifying the position of the recording block ex231 that is a unit for recording data, and the recording block is specified by reproducing the information track ex230 and reading the address information in a recording or reproducing apparatus.
- the recording medium ex215 includes a data recording area ex233, an inner peripheral area ex232, and an outer peripheral area ex234.
- the area used for recording user data is the data recording area ex233, and the inner circumference area ex232 and the outer circumference area ex234 arranged on the inner or outer circumference of the data recording area ex233 are used for specific purposes other than user data recording. Used.
- the information reproducing / recording unit ex400 reads / writes encoded audio data, video data, or multiplexed data obtained by multiplexing these data with respect to the data recording area ex233 of the recording medium ex215.
- an optical disk such as a single-layer DVD or BD has been described as an example.
- the present invention is not limited to these, and an optical disk having a multilayer structure and capable of recording other than the surface may be used.
- an optical disc with a multi-dimensional recording / reproducing structure such as recording information using light of different wavelengths in the same place on the disc, or recording different layers of information from various angles. It may be.
- the car ex210 having the antenna ex205 can receive data from the satellite ex202 and the like, and the moving image can be reproduced on a display device such as the car navigation ex211 that the car ex210 has.
- the configuration of the car navigation ex211 may be, for example, a configuration in which a GPS receiving unit is added in the configuration illustrated in FIG.
- FIG. 21A is a diagram showing the mobile phone ex114 using the moving picture decoding method and the moving picture encoding method described in the above embodiment.
- the mobile phone ex114 includes an antenna ex350 for transmitting and receiving radio waves to and from the base station ex110, a camera unit ex365 capable of capturing video and still images, a video captured by the camera unit ex365, a video received by the antenna ex350, and the like Is provided with a display unit ex358 such as a liquid crystal display for displaying the decrypted data.
- the mobile phone ex114 further includes a main body unit having an operation key unit ex366, an audio output unit ex357 such as a speaker for outputting audio, an audio input unit ex356 such as a microphone for inputting audio, a captured video,
- an audio input unit ex356 such as a microphone for inputting audio
- a captured video In the memory unit ex367 for storing encoded data or decoded data such as still images, recorded audio, received video, still images, mails, or the like, or an interface unit with a recording medium for storing data
- a slot ex364 is provided.
- the mobile phone ex114 has a power supply circuit part ex361, an operation input control part ex362, and a video signal processing part ex355 with respect to a main control part ex360 that comprehensively controls each part of the main body including the display part ex358 and the operation key part ex366.
- a camera interface unit ex363, an LCD (Liquid Crystal Display) control unit ex359, a modulation / demodulation unit ex352, a multiplexing / demultiplexing unit ex353, an audio signal processing unit ex354, a slot unit ex364, and a memory unit ex367 are connected to each other via a bus ex370. ing.
- the power supply circuit unit ex361 starts up the mobile phone ex114 in an operable state by supplying power from the battery pack to each unit.
- the cellular phone ex114 converts the audio signal collected by the audio input unit ex356 in the voice call mode into a digital audio signal by the audio signal processing unit ex354 based on the control of the main control unit ex360 having a CPU, a ROM, a RAM, and the like. Then, this is subjected to spectrum spread processing by the modulation / demodulation unit ex352, digital-analog conversion processing and frequency conversion processing are performed by the transmission / reception unit ex351, and then transmitted via the antenna ex350.
- the mobile phone ex114 also amplifies the received data received via the antenna ex350 in the voice call mode, performs frequency conversion processing and analog-digital conversion processing, performs spectrum despreading processing by the modulation / demodulation unit ex352, and performs voice signal processing unit After being converted into an analog audio signal by ex354, this is output from the audio output unit ex357.
- the text data of the e-mail input by operating the operation key unit ex366 of the main unit is sent to the main control unit ex360 via the operation input control unit ex362.
- the main control unit ex360 performs spread spectrum processing on the text data in the modulation / demodulation unit ex352, performs digital analog conversion processing and frequency conversion processing in the transmission / reception unit ex351, and then transmits the text data to the base station ex110 via the antenna ex350.
- almost the reverse process is performed on the received data and output to the display unit ex358.
- the video signal processing unit ex355 compresses the video signal supplied from the camera unit ex365 by the moving image encoding method described in the above embodiments. Encode (that is, function as an image encoding device according to an aspect of the present invention), and send the encoded video data to the multiplexing / demultiplexing unit ex353.
- the audio signal processing unit ex354 encodes the audio signal picked up by the audio input unit ex356 while the camera unit ex365 images a video, a still image, etc., and sends the encoded audio data to the multiplexing / separating unit ex353. To do.
- the multiplexing / demultiplexing unit ex353 multiplexes the encoded video data supplied from the video signal processing unit ex355 and the encoded audio data supplied from the audio signal processing unit ex354 by a predetermined method, and is obtained as a result.
- the multiplexed data is subjected to spread spectrum processing by the modulation / demodulation unit (modulation / demodulation circuit unit) ex352, digital-analog conversion processing and frequency conversion processing by the transmission / reception unit ex351, and then transmitted via the antenna ex350.
- the multiplexing / separating unit ex353 separates the multiplexed data into a video data bit stream and an audio data bit stream, and performs video signal processing on the video data encoded via the synchronization bus ex370.
- the encoded audio data is supplied to the audio signal processing unit ex354 while being supplied to the unit ex355.
- the video signal processing unit ex355 decodes the video signal by decoding using the video decoding method corresponding to the video encoding method described in each of the above embodiments (that is, an image according to an aspect of the present invention).
- video and still images included in the moving image file linked to the home page are displayed from the display unit ex358 via the LCD control unit ex359.
- the audio signal processing unit ex354 decodes the audio signal, and the audio is output from the audio output unit ex357.
- the terminal such as the mobile phone ex114 is referred to as a transmission terminal having only an encoder and a receiving terminal having only a decoder.
- a transmission terminal having only an encoder
- a receiving terminal having only a decoder.
- multiplexed data in which music data or the like is multiplexed with video data is received and transmitted, but data in which character data or the like related to video is multiplexed in addition to audio data It may be video data itself instead of multiplexed data.
- the moving picture encoding method or the moving picture decoding method shown in each of the above embodiments can be used in any of the above-described devices / systems. The described effect can be obtained.
- Embodiment 4 The moving picture coding method or apparatus shown in the above embodiments and the moving picture coding method or apparatus compliant with different standards such as MPEG-2, MPEG4-AVC, and VC-1 are appropriately switched as necessary. Thus, it is also possible to generate video data.
- multiplexed data obtained by multiplexing audio data or the like with video data is configured to include identification information indicating which standard the video data conforms to.
- identification information indicating which standard the video data conforms to.
- FIG. 22 is a diagram showing a structure of multiplexed data.
- the multiplexed data is obtained by multiplexing one or more of a video stream, an audio stream, a presentation graphics stream (PG), and an interactive graphics stream.
- the video stream indicates the main video and sub-video of the movie
- the audio stream (IG) indicates the main audio portion of the movie and the sub-audio mixed with the main audio
- the presentation graphics stream indicates the subtitles of the movie.
- the main video indicates a normal video displayed on the screen
- the sub-video is a video displayed on a small screen in the main video.
- the interactive graphics stream indicates an interactive screen created by arranging GUI components on the screen.
- the video stream is encoded by the moving image encoding method or apparatus shown in the above embodiments, or the moving image encoding method or apparatus conforming to the conventional standards such as MPEG-2, MPEG4-AVC, and VC-1. ing.
- the audio stream is encoded by a method such as Dolby AC-3, Dolby Digital Plus, MLP, DTS, DTS-HD, or linear PCM.
- Each stream included in the multiplexed data is identified by PID. For example, 0x1011 for video streams used for movie images, 0x1100 to 0x111F for audio streams, 0x1200 to 0x121F for presentation graphics, 0x1400 to 0x141F for interactive graphics streams, 0x1B00 to 0x1B1F are assigned to the video stream used for the sub-picture, and 0x1A00 to 0x1A1F are assigned to the audio stream used for the sub-audio mixed with the main audio.
- FIG. 23 is a diagram schematically showing how multiplexed data is multiplexed.
- a video stream ex235 composed of a plurality of video frames and an audio stream ex238 composed of a plurality of audio frames are converted into PES packet sequences ex236 and ex239, respectively, and converted into TS packets ex237 and ex240.
- the data of the presentation graphics stream ex241 and interactive graphics ex244 are converted into PES packet sequences ex242 and ex245, respectively, and further converted into TS packets ex243 and ex246.
- the multiplexed data ex247 is configured by multiplexing these TS packets into one stream.
- FIG. 24 shows in more detail how the video stream is stored in the PES packet sequence.
- the first row in FIG. 24 shows a video frame sequence of the video stream.
- the second level shows a PES packet sequence.
- a plurality of Video Presentation Units in the video stream are divided into pictures, B pictures, and P pictures, and are stored in the payload of the PES packet.
- Each PES packet has a PES header, and a PTS (Presentation Time-Stamp) that is a display time of a picture and a DTS (Decoding Time-Stamp) that is a decoding time of a picture are stored in the PES header.
- PTS Presentation Time-Stamp
- DTS Decoding Time-Stamp
- FIG. 25 shows the format of the TS packet that is finally written in the multiplexed data.
- the TS packet is a 188-byte fixed-length packet composed of a 4-byte TS header having information such as a PID for identifying a stream and a 184-byte TS payload for storing data.
- the PES packet is divided and stored in the TS payload.
- a 4-byte TP_Extra_Header is added to a TS packet, forms a 192-byte source packet, and is written in multiplexed data.
- TP_Extra_Header information such as ATS (Arrival_Time_Stamp) is described.
- ATS indicates the transfer start time of the TS packet to the PID filter of the decoder.
- source packets are arranged in the multiplexed data, and the number incremented from the head of the multiplexed data is called SPN (source packet number).
- TS packets included in the multiplexed data include PAT (Program Association Table), PMT (Program Map Table), PCR (Program Clock Reference), and the like in addition to each stream such as video / audio / caption.
- PAT indicates what the PID of the PMT used in the multiplexed data is, and the PID of the PAT itself is registered as 0.
- the PMT has the PID of each stream such as video / audio / subtitles included in the multiplexed data and the attribute information of the stream corresponding to each PID, and has various descriptors related to the multiplexed data.
- the descriptor includes copy control information for instructing permission / non-permission of copying of multiplexed data.
- the PCR corresponds to the ATS in which the PCR packet is transferred to the decoder. Contains STC time information.
- FIG. 26 is a diagram for explaining the data structure of the PMT in detail.
- a PMT header describing the length of data included in the PMT is arranged at the head of the PMT.
- a plurality of descriptors related to multiplexed data are arranged.
- the copy control information and the like are described as descriptors.
- a plurality of pieces of stream information regarding each stream included in the multiplexed data are arranged.
- the stream information includes a stream descriptor in which a stream type, a stream PID, and stream attribute information (frame rate, aspect ratio, etc.) are described to identify a compression codec of the stream.
- the multiplexed data is recorded together with the multiplexed data information file.
- the multiplexed data information file is management information of multiplexed data, has a one-to-one correspondence with the multiplexed data, and includes multiplexed data information, stream attribute information, and an entry map.
- the multiplexed data information is composed of a system rate, a reproduction start time, and a reproduction end time.
- the system rate indicates a maximum transfer rate of multiplexed data to a PID filter of a system target decoder described later.
- the ATS interval included in the multiplexed data is set to be equal to or less than the system rate.
- the playback start time is the PTS of the first video frame of the multiplexed data
- the playback end time is set by adding the playback interval for one frame to the PTS of the video frame at the end of the multiplexed data.
- attribute information about each stream included in the multiplexed data is registered for each PID.
- the attribute information has different information for each video stream, audio stream, presentation graphics stream, and interactive graphics stream.
- the video stream attribute information includes the compression codec used to compress the video stream, the resolution of the individual picture data constituting the video stream, the aspect ratio, and the frame rate. It has information such as how much it is.
- the audio stream attribute information includes the compression codec used to compress the audio stream, the number of channels included in the audio stream, the language supported, and the sampling frequency. With information. These pieces of information are used for initialization of the decoder before the player reproduces it.
- the stream type included in the PMT is used.
- video stream attribute information included in the multiplexed data information is used.
- the video encoding shown in each of the above embodiments for the stream type or video stream attribute information included in the PMT.
- FIG. 29 shows steps of the moving picture decoding method according to the present embodiment.
- step exS100 the stream type included in the PMT or the video stream attribute information included in the multiplexed data information is acquired from the multiplexed data.
- step exS101 it is determined whether or not the stream type or the video stream attribute information indicates multiplexed data generated by the moving picture encoding method or apparatus described in the above embodiments. To do.
- step exS102 the above embodiments are performed. Decoding is performed by the moving picture decoding method shown in the form.
- the conventional information Decoding is performed by a moving image decoding method compliant with the standard.
- FIG. 30 shows the configuration of an LSI ex500 that is made into one chip.
- the LSI ex500 includes elements ex501, ex502, ex503, ex504, ex505, ex506, ex507, ex508, and ex509 described below, and each element is connected via a bus ex510.
- the power supply circuit unit ex505 is activated to an operable state by supplying power to each unit when the power supply is on.
- the LSI ex500 uses the AV I / O ex509 to perform the microphone ex117 and the camera ex113 based on the control of the control unit ex501 including the CPU ex502, the memory controller ex503, the stream controller ex504, the driving frequency control unit ex512, and the like.
- the AV signal is input from the above.
- the input AV signal is temporarily stored in an external memory ex511 such as SDRAM.
- the accumulated data is divided into a plurality of times as appropriate according to the processing amount and the processing speed and sent to the signal processing unit ex507, and the signal processing unit ex507 encodes an audio signal and / or video. Signal encoding is performed.
- the encoding process of the video signal is the encoding process described in the above embodiments.
- the signal processing unit ex507 further performs processing such as multiplexing the encoded audio data and the encoded video data according to circumstances, and outputs the result from the stream I / Oex 506 to the outside.
- the output multiplexed data is transmitted to the base station ex107 or written to the recording medium ex215. It should be noted that data should be temporarily stored in the buffer ex508 so as to be synchronized when multiplexing.
- the memory ex511 is described as an external configuration of the LSI ex500.
- a configuration included in the LSI ex500 may be used.
- the number of buffers ex508 is not limited to one, and a plurality of buffers may be provided.
- the LSI ex500 may be made into one chip or a plurality of chips.
- control unit ex501 includes the CPU ex502, the memory controller ex503, the stream controller ex504, the drive frequency control unit ex512, and the like, but the configuration of the control unit ex501 is not limited to this configuration.
- the signal processing unit ex507 may further include a CPU.
- the CPU ex502 may be configured to include a signal processing unit ex507 or, for example, an audio signal processing unit that is a part of the signal processing unit ex507.
- the control unit ex501 is configured to include a signal processing unit ex507 or a CPU ex502 having a part thereof.
- LSI LSI
- IC system LSI
- super LSI ultra LSI depending on the degree of integration
- the method of circuit integration is not limited to LSI, and implementation with a dedicated circuit or a general-purpose processor is also possible.
- An FPGA Field Programmable Gate Array
- Such a programmable logic device typically loads or reads a program constituting software or firmware from a memory or the like, thereby moving the moving picture coding method or moving picture shown in each of the above embodiments.
- An image decoding method can be performed.
- FIG. 31 shows a configuration ex800 in the present embodiment.
- the drive frequency switching unit ex803 sets the drive frequency high when the video data is generated by the moving image encoding method or apparatus described in the above embodiments.
- the decoding processing unit ex801 that executes the moving picture decoding method described in each of the above embodiments is instructed to decode the video data.
- the video data is video data compliant with the conventional standard, compared to the case where the video data is generated by the moving picture encoding method or apparatus shown in the above embodiments, Set the drive frequency low. Then, it instructs the decoding processing unit ex802 compliant with the conventional standard to decode the video data.
- the drive frequency switching unit ex803 includes the CPU ex502 and the drive frequency control unit ex512 in FIG.
- the decoding processing unit ex801 that executes the moving picture decoding method shown in each of the above embodiments and the decoding processing unit ex802 that complies with the conventional standard correspond to the signal processing unit ex507 in FIG.
- the CPU ex502 identifies which standard the video data conforms to. Then, based on the signal from the CPU ex502, the drive frequency control unit ex512 sets the drive frequency. Further, based on the signal from the CPU ex502, the signal processing unit ex507 decodes the video data.
- the identification information described in the fourth embodiment may be used.
- the identification information is not limited to that described in the fourth embodiment, and any information that can identify which standard the video data conforms to may be used. For example, it is possible to identify which standard the video data conforms to based on an external signal that identifies whether the video data is used for a television or a disk. In some cases, identification may be performed based on such an external signal.
- the selection of the driving frequency in the CPU ex502 may be performed based on, for example, a lookup table in which video data standards and driving frequencies are associated with each other as shown in FIG. The look-up table is stored in the buffer ex508 or the internal memory of the LSI, and the CPU ex502 can select the drive frequency by referring to the look-up table.
- FIG. 32 shows steps for executing the method of the present embodiment.
- the signal processing unit ex507 acquires identification information from the multiplexed data.
- the CPU ex502 identifies whether the video data is generated by the encoding method or apparatus described in each of the above embodiments based on the identification information.
- the CPU ex502 sends a signal for setting the drive frequency high to the drive frequency control unit ex512. Then, the drive frequency control unit ex512 sets a high drive frequency.
- step exS203 the CPU ex502 drives the signal for setting the drive frequency low. This is sent to the frequency control unit ex512. Then, in the drive frequency control unit ex512, the drive frequency is set to be lower than that in the case where the video data is generated by the encoding method or apparatus described in the above embodiments.
- the power saving effect can be further enhanced by changing the voltage applied to the LSI ex500 or the device including the LSI ex500 in conjunction with the switching of the driving frequency. For example, when the drive frequency is set low, it is conceivable that the voltage applied to the LSI ex500 or the device including the LSI ex500 is set low as compared with the case where the drive frequency is set high.
- the setting method of the driving frequency may be set to a high driving frequency when the processing amount at the time of decoding is large, and to a low driving frequency when the processing amount at the time of decoding is small. It is not limited to the method.
- the amount of processing for decoding video data compliant with the MPEG4-AVC standard is larger than the amount of processing for decoding video data generated by the moving picture encoding method or apparatus described in the above embodiments. It is conceivable that the setting of the driving frequency is reversed to that in the case described above.
- the method for setting the drive frequency is not limited to the configuration in which the drive frequency is lowered.
- the voltage applied to the LSIex500 or the apparatus including the LSIex500 is set high.
- the driving of the CPU ex502 is stopped.
- the CPU ex502 is temporarily stopped because there is room in processing. Is also possible. Even when the identification information indicates that the video data is generated by the moving image encoding method or apparatus described in each of the above embodiments, if there is a margin for processing, the CPU ex502 is temporarily driven. It can also be stopped. In this case, it is conceivable to set the stop time shorter than in the case where the video data conforms to the conventional standards such as MPEG-2, MPEG4-AVC, and VC-1.
- a plurality of video data that conforms to different standards may be input to the above-described devices and systems such as a television and a mobile phone.
- the signal processing unit ex507 of the LSI ex500 needs to support a plurality of standards in order to be able to decode even when a plurality of video data complying with different standards is input.
- the signal processing unit ex507 corresponding to each standard is used individually, there is a problem that the circuit scale of the LSI ex500 increases and the cost increases.
- a decoding processing unit for executing the moving picture decoding method shown in each of the above embodiments and a decoding conforming to a standard such as MPEG-2, MPEG4-AVC, or VC-1
- the processing unit is partly shared.
- An example of this configuration is shown as ex900 in FIG. 34A.
- the moving picture decoding method shown in each of the above embodiments and the moving picture decoding method compliant with the MPEG4-AVC standard are processed in processes such as entropy coding, inverse quantization, deblocking filter, and motion compensation. Some contents are common.
- the decoding processing unit ex902 corresponding to the MPEG4-AVC standard is shared, and for other processing contents specific to one aspect of the present invention that do not correspond to the MPEG4-AVC standard, a dedicated decoding processing unit A configuration using ex901 is conceivable.
- the decoding processing unit for executing the moving picture decoding method described in each of the above embodiments is shared, and the processing content specific to the MPEG4-AVC standard As for, a configuration using a dedicated decoding processing unit may be used.
- ex1000 in FIG. 34B shows another example in which processing is partially shared.
- a dedicated decoding processing unit ex1001 corresponding to the processing content specific to one aspect of the present invention
- a dedicated decoding processing unit ex1002 corresponding to the processing content specific to another conventional standard
- a common decoding processing unit ex1003 corresponding to the processing contents common to the moving image decoding method according to the above and other conventional moving image decoding methods.
- the dedicated decoding processing units ex1001 and ex1002 are not necessarily specialized in one aspect of the present invention or processing content specific to other conventional standards, and can execute other general-purpose processing. Also good.
- the configuration of the present embodiment can be implemented by LSI ex500.
- the processing content common to the moving picture decoding method according to one aspect of the present invention and the moving picture decoding method of the conventional standard reduces the circuit scale of the LSI by sharing the decoding processing unit, In addition, the cost can be reduced.
- the moving image encoding method and the moving image decoding method according to an aspect of the present invention can be used for, for example, a television receiver, a digital video recorder, a car navigation, a mobile phone, a digital camera, a digital video camera, or the like. .
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
図1A~1Dは、SAOと呼ばれるオフセット処理に用いられる4種類の情報を示す図である。これらの4種類の情報(パラメタ)は、SAO種別情報(sao_type_idx)、SAO画素値幅位置情報(sao_band_position)、SAOオフセット値(sao_offset[i])およびSAOオフセット正負符号(sao_offset_sign[i])である。なお、これらの情報を総称してSAO情報という。
図7は、実施の形態1に係る動画像復号装置100の構成の一例を示すブロック図である。
本実施の形態における動画像符号化装置は、動画像を符号化することによって、実施の形態1の動画像復号装置100によって復号されるビットストリームBSを生成する。
上記各実施の形態で示した動画像符号化方法(画像符号化方法)または動画像復号化方法(画像復号方法)の構成を実現するためのプログラムを記憶メディアに記録することにより、上記各実施の形態で示した処理を独立したコンピュータシステムにおいて簡単に実施することが可能となる。記憶メディアは、磁気ディスク、光ディスク、光磁気ディスク、ICカード、半導体メモリ等、プログラムを記録できるものであればよい。
上記各実施の形態で示した動画像符号化方法または装置と、MPEG-2、MPEG4-AVC、VC-1など異なる規格に準拠した動画像符号化方法または装置とを、必要に応じて適宜切替えることにより、映像データを生成することも可能である。
上記各実施の形態で示した動画像符号化方法および装置、動画像復号化方法および装置は、典型的には集積回路であるLSIで実現される。一例として、図30に1チップ化されたLSIex500の構成を示す。LSIex500は、以下に説明する要素ex501、ex502、ex503、ex504、ex505、ex506、ex507、ex508、ex509を備え、各要素はバスex510を介して接続している。電源回路部ex505は電源がオン状態の場合に各部に対して電力を供給することで動作可能な状態に起動する。
上記各実施の形態で示した動画像符号化方法または装置によって生成された映像データを復号する場合、従来のMPEG-2、MPEG4-AVC、VC-1などの規格に準拠する映像データを復号する場合に比べ、処理量が増加することが考えられる。そのため、LSIex500において、従来の規格に準拠する映像データを復号する際のCPUex502の駆動周波数よりも高い駆動周波数に設定する必要がある。しかし、駆動周波数を高くすると、消費電力が高くなるという課題が生じる。
テレビや、携帯電話など、上述した機器・システムには、異なる規格に準拠する複数の映像データが入力される場合がある。このように、異なる規格に準拠する複数の映像データが入力された場合にも復号できるようにするために、LSIex500の信号処理部ex507が複数の規格に対応している必要がある。しかし、それぞれの規格に対応する信号処理部ex507を個別に用いると、LSIex500の回路規模が大きくなり、また、コストが増加するという課題が生じる。
20,100 動画像復号装置
101 SAO情報復号部
102 Sao_Type復号部
103 Sao_Type判定部
104,105 スイッチ
107 Sao_band_position復号部
108 Sao_Offset復号部
109 Sao_offset_sign復号部
110 エントロピー復号部
111 データ格納部
120,230 逆量子化・逆変換部
125,235 加算器
130,240 ループフィルタ
140,250 メモリ
150,260 イントラ予測部
160,280 動き補償部
170 イントラ/インター切換スイッチ
205 減算器
210 変換・量子化部
220 エントロピー符号化部
270 動き検出部
Claims (17)
- 入力画像を符号化することによりビットストリームを生成する動画像符号化方法であって、
前記入力画像の符号化で生成される画像に含まれる画素の画素値にオフセット値を与える処理であるSAO(Sample Adaptive Offset)に用いられる複数種のSAO情報のうちの第1の情報を、可変の確率値が用いられるコンテキスト適応算術符号化によって符号化し、
前記複数種のSAO情報のうちの第2の情報および第3の情報を、固定の確率値が用いられるバイパス算術符号化によって連続して符号化し、
前記ビットストリーム中には、符号化された前記第1の情報の後に、符号化された前記第2の情報および前記第3の情報が配置される
動画像符号化方法。 - 前記第2の情報および前記第3の情報のうちの一方は、前記SAOが適用される画素値の範囲を示すsao_band_positionである
請求項1に記載の動画像符号化方法。 - 前記第2の情報および前記第3の情報のうちの他方は、前記SAOが適用される画素値に対して与えられるオフセット値が正であるか負であるかを示すsao_offset_signである
請求項2に記載の動画像符号化方法。 - 前記第2の情報および前記第3の情報を符号化する際には、
前記sao_offset_signの符号化の後に、前記sao_band_positionを符号化する
請求項3に記載の動画像符号化方法。 - 前記SAOが適用される画素は複数種の成分を有し、
成分ごとに、当該成分に対応する前記第1の情報の符号化と、当該成分に対応する前記第2の情報および前記第3の情報の符号化とを行う
請求項1~4の何れか1項に記載の動画像符号化方法。 - 前記第2の情報および前記第3の情報を符号化する際には、
さらに、前記第2の情報および前記第3の情報の符号化に連続して、前記複数種のSAO情報のうちの少なくとも1つの他の情報を前記バイパス算術符号化によって符号化する
請求項1~5の何れか1項に記載の動画像符号化方法。 - 前記第1の情報は、前記SAOを行なわないこと、または前記SAOの種別を示すsao_type_idxの一部である
請求項1~6の何れか1項に記載の動画像符号化方法。 - ビットストリームに含まれる符号化画像を復号する動画像復号方法であって、
前記符号化画像の復号で生成される画像に含まれる画素の画素値にオフセット値を与える処理であるSAO(Sample Adaptive Offset)に用いられる、前記ビットストリームに含まれる複数種のSAO情報のうちの第1の情報を、可変の確率値が用いられるコンテキスト適応算術復号によって復号し、
前記複数種のSAO情報のうちの、前記ビットストリーム中で前記第1の情報の後にある第2の情報および第3の情報を、固定の確率値が用いられるバイパス算術復号によって連続して復号する
動画像復号方法。 - 前記第2の情報および前記第3の情報のうちの一方は、前記SAOが適用される画素値の範囲を示すsao_band_positionである
請求項8に記載の動画像復号方法。 - 前記第2の情報および前記第3の情報のうちの他方は、前記SAOが適用される画素値に対して与えられるオフセット値が正であるか負であるかを示すsao_offset_signである
請求項9に記載の動画像復号方法。 - 前記第2の情報および前記第3の情報を復号する際には、
前記sao_offset_signの復号の後に、前記sao_band_positionを復号する
請求項10に記載の動画像復号方法。 - 前記SAOが適用される画素は複数種の成分を有し、
成分ごとに、当該成分に対応する前記第1の情報の復号と、当該成分に対応する前記第2の情報および前記第3の情報の復号とを行う
請求項8~11の何れか1項に記載の動画像復号方法。 - 前記第2の情報および前記第3の情報を復号する際には、
さらに、前記第2の情報および前記第3の情報の復号に連続して、前記複数種のSAO情報のうちの少なくとも1つの他の情報を前記バイパス算術復号によって復号する
請求項8~12の何れか1項に記載の動画像復号方法。 - 前記第1の情報は、前記SAOを行なわないこと、または前記SAOの種別を示すsao_type_idxの一部である
請求項8~13の何れか1項に記載の動画像復号方法。 - 制御回路と、前記制御回路に電気的に接続される記憶装置とを備え、入力画像を符号化することによりビットストリームを生成する動画像符号化装置であって、
前記制御回路は、
前記入力画像の符号化で生成される画像に含まれる画素の画素値にオフセット値を与える処理であるSAO(Sample Adaptive Offset)に用いられる複数種のSAO情報のうちの第1の情報を、可変の確率値が用いられるコンテキスト適応算術符号化によって符号化し、
前記複数種のSAO情報のうちの第2の情報および第3の情報を、固定の確率値が用いられるバイパス算術符号化によって連続して符号化し、
前記ビットストリーム中には、符号化された前記第1の情報の後に、符号化された前記第2の情報および前記第3の情報が配置される
動画像符号化装置。 - 制御回路と、前記制御回路に電気的に接続される記憶装置とを備え、ビットストリームに含まれる符号化画像を復号する動画像復号装置であって、
前記制御回路は、
前記符号化画像の復号で生成される画像に含まれる画素の画素値にオフセット値を与える処理であるSAO(Sample Adaptive Offset)に用いられる、前記ビットストリームに含まれる複数種のSAO情報のうちの第1の情報を、可変の確率値が用いられるコンテキスト適応算術復号によって復号し、
前記複数種のSAO情報のうちの、前記ビットストリーム中で前記第1の情報の後にある第2の情報および第3の情報を、固定の確率値が用いられるバイパス算術復号によって連続して復号する
動画像復号装置。 - 請求項15に記載の動画像符号化装置と、
請求項16に記載の動画像復号装置とを備える
動画像符号化復号装置。
Priority Applications (12)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CA2841112A CA2841112C (en) | 2012-05-25 | 2013-05-17 | Moving picture coding and decoding using context adaptive binary arithmetic coding with fixed probability for some sample adaptive offset parameters |
JP2013547052A JP6168452B2 (ja) | 2012-05-25 | 2013-05-17 | 動画像符号化方法、動画像復号方法、動画像符号化装置、動画像復号装置、および動画像符号化復号装置 |
BR112014000369-6A BR112014000369B1 (pt) | 2012-05-25 | 2013-05-17 | Método de decodificação de imagem em movimento, aparelho de decodificação de imagem em movimento, método de codificação de imagem em movimento e aparelho de codificação de imagem em movimento |
MX2013015089A MX2013015089A (es) | 2012-05-25 | 2013-05-17 | Metodo de codificacion de imagenes en movimiento, metodo de decodificacion de imagenes en movimiento, aparato de codificacion de imagenes en movimiento, aparato de decodificacion de imágenes en movimiento y aparato de codificacion y decodificacion de imagenes en movimiento. |
RU2013158190A RU2623800C2 (ru) | 2012-05-25 | 2013-05-17 | Способ кодирования видеоизображений, способ декодирования видеоизображений, устройство кодирования видеоизображений, устройство декодирования видеоизображений и устройство кодирования-декодирования видеоизображений |
AU2013264323A AU2013264323B2 (en) | 2012-05-25 | 2013-05-17 | Video image coding method, video image decoding method, video image coding device, video image decoding device, and video image coding-decoding device |
ES13793080T ES2936333T3 (es) | 2012-05-25 | 2013-05-17 | Procedimiento de codificación de imágenes de vídeo, procedimiento de decodificación de imágenes de vídeo, dispositivo de codificación de imágenes de vídeo, dispositivo de decodificación de imágenes de vídeo y dispositivo de codificación-decodificación de imágenes de vídeo |
EP22205537.8A EP4149113A1 (en) | 2012-05-25 | 2013-05-17 | Moving picture coding method, moving picture decoding method, moving picture coding apparatus, moving picture decoding apparatus, and moving picture coding and decoding apparatus |
CN201380002039.0A CN103650511B (zh) | 2012-05-25 | 2013-05-17 | 运动图像解码方法及运动图像解码装置 |
KR1020147000400A KR102132917B1 (ko) | 2012-05-25 | 2013-05-17 | 동화상 부호화 방법, 동화상 복호 방법, 동화상 부호화 장치, 동화상 복호 장치, 및 동화상 부호화 복호 장치 |
EP13793080.6A EP2858354B1 (en) | 2012-05-25 | 2013-05-17 | Video image coding method, video image decoding method, video image coding device, video image decoding device, and video image coding-decoding device |
PL13793080.6T PL2858354T3 (pl) | 2012-05-25 | 2013-05-17 | Sposób kodowania obrazów wideo, sposób dekodowania obrazów wideo, urządzenie do kodowania obrazów wideo, urządzenie do dekodowania obrazów wideo oraz urządzenie do kodowania-dekodowania obrazów wideo |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261651653P | 2012-05-25 | 2012-05-25 | |
US61/651,653 | 2012-05-25 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2013175748A1 true WO2013175748A1 (ja) | 2013-11-28 |
Family
ID=49621582
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2013/003158 WO2013175748A1 (ja) | 2012-05-25 | 2013-05-17 | 動画像符号化方法、動画像復号方法、動画像符号化装置、動画像復号装置、および動画像符号化復号装置 |
Country Status (15)
Country | Link |
---|---|
US (4) | US9749623B2 (ja) |
EP (2) | EP2858354B1 (ja) |
JP (1) | JP6168452B2 (ja) |
KR (1) | KR102132917B1 (ja) |
CN (2) | CN107846598B (ja) |
AU (1) | AU2013264323B2 (ja) |
BR (1) | BR112014000369B1 (ja) |
CA (1) | CA2841112C (ja) |
ES (1) | ES2936333T3 (ja) |
MX (1) | MX2013015089A (ja) |
MY (1) | MY167340A (ja) |
PL (1) | PL2858354T3 (ja) |
RU (1) | RU2623800C2 (ja) |
TW (1) | TWI573438B (ja) |
WO (1) | WO2013175748A1 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPWO2016067832A1 (ja) * | 2014-10-27 | 2017-09-21 | 株式会社村田製作所 | 触覚提示装置 |
JP2019024219A (ja) * | 2012-06-28 | 2019-02-14 | キヤノン株式会社 | 符号化ビデオデータのサンプル適応オフセットデータを復号するための方法、プログラム、コンピュータ可読記憶媒体、およびビデオデコーダ |
EP3445052A1 (en) | 2017-08-10 | 2019-02-20 | Fujitsu Limited | Video encoding apparatus and video encoding method |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101529992B1 (ko) * | 2010-04-05 | 2015-06-18 | 삼성전자주식회사 | 픽셀 그룹별 픽셀값 보상을 위한 비디오 부호화 방법과 그 장치, 및 픽셀 그룹별 픽셀값 보상을 위한 비디오 복호화 방법과 그 장치 |
CA2864570A1 (en) * | 2012-04-16 | 2013-10-24 | Mediatek Inc. | Method and apparatus for sample adaptive offset coding with separate sign and magnitude |
WO2013175698A1 (ja) * | 2012-05-25 | 2013-11-28 | パナソニック株式会社 | 画像符号化方法、画像符号化装置、画像復号方法、画像復号装置および画像符号化復号装置 |
WO2013175736A1 (ja) | 2012-05-25 | 2013-11-28 | パナソニック株式会社 | 動画像符号化方法、動画像符号化装置、動画像復号方法、動画像復号装置、および、動画像符号化復号装置 |
EP2858354B1 (en) | 2012-05-25 | 2022-12-21 | Sun Patent Trust | Video image coding method, video image decoding method, video image coding device, video image decoding device, and video image coding-decoding device |
EP2858357B1 (en) * | 2012-06-04 | 2022-07-06 | Sun Patent Trust | Video image encoding method, video image decoding method |
CA2985277C (en) * | 2012-06-11 | 2019-06-04 | Samsung Electronics Co., Ltd. | Video encoding method and apparatus, and video decoding method and apparatus sharing sao parameters between color components |
US10623759B2 (en) * | 2012-06-13 | 2020-04-14 | Sony Corporation | Decoupling enhancements in sample adaptive offset (SAO) for high efficiency video encoder (HEVC) |
US20130336386A1 (en) * | 2012-06-18 | 2013-12-19 | Qualcomm Incorporated | Sample adaptive offset (sao) coding |
US20150326859A1 (en) * | 2012-06-28 | 2015-11-12 | Nec Corporation | Video quantization-parameter encoding method, video quantization-parameter decoding method, device, and program |
TWI502162B (zh) * | 2014-03-21 | 2015-10-01 | Univ Feng Chia | 雙影像導引追瞄之射擊系統與方法 |
CN104980747B (zh) * | 2014-04-04 | 2019-08-09 | 北京三星通信技术研究有限公司 | 对像素标识进行处理的方法和装置 |
EP3280143A1 (en) * | 2016-08-04 | 2018-02-07 | Thomson Licensing | A method and an apparatus for image block encoding and decoding |
GB2585042A (en) * | 2019-06-25 | 2020-12-30 | Sony Corp | Image data encoding and decoding |
WO2021199283A1 (ja) * | 2020-03-31 | 2021-10-07 | 富士通株式会社 | 画像処理制御装置、画像処理制御プログラム、及び画像処理制御方法 |
US20220107738A1 (en) * | 2020-10-06 | 2022-04-07 | Kioxia Corporation | Read controller and input/output controller |
Family Cites Families (81)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FI117533B (fi) | 2000-01-20 | 2006-11-15 | Nokia Corp | Menetelmä digitaalisten videokuvien suodattamiseksi |
EP3282699B1 (en) * | 2001-11-29 | 2019-10-23 | Godo Kaisha IP Bridge 1 | Coding distortion removal method |
US6900748B2 (en) | 2003-07-17 | 2005-05-31 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Method and apparatus for binarization and arithmetic coding of a data value |
US6894628B2 (en) * | 2003-07-17 | 2005-05-17 | Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. | Apparatus and methods for entropy-encoding or entropy-decoding using an initialization of context variables |
CA2534695C (en) * | 2003-08-19 | 2011-10-25 | Matsushita Electric Industrial Co., Ltd. | Method for encoding moving image and method for decoding moving image |
KR100674941B1 (ko) | 2005-01-13 | 2007-01-26 | 삼성전자주식회사 | 내용 적응 가변 길이 부호화 장치 및 방법 |
KR100624432B1 (ko) | 2004-08-05 | 2006-09-19 | 삼성전자주식회사 | 내용 기반 적응적 이진 산술 복호화 방법 및 장치 |
JP4856954B2 (ja) | 2005-06-08 | 2012-01-18 | パナソニック株式会社 | 画像符号化装置 |
KR100718134B1 (ko) * | 2005-07-21 | 2007-05-14 | 삼성전자주식회사 | 비트율에 적응적인 영상 데이터 이진 산술 부호화/복호화장치 및 방법 |
US7221296B2 (en) | 2005-08-22 | 2007-05-22 | Streaming Networks (Pvt.) Ltd. | Method and system for fast context based adaptive binary arithmetic coding |
CN100438629C (zh) * | 2005-09-19 | 2008-11-26 | 华为技术有限公司 | 图像编码处理中的环路滤波方法 |
CN100466739C (zh) | 2005-10-12 | 2009-03-04 | 华为技术有限公司 | Cabac解码系统及方法 |
JP2007142637A (ja) | 2005-11-16 | 2007-06-07 | Matsushita Electric Ind Co Ltd | 画像情報符号化装置 |
US8606023B2 (en) | 2006-06-26 | 2013-12-10 | Qualcomm Incorporated | Reduction of errors during computation of inverse discrete cosine transform |
RU2419855C2 (ru) | 2006-06-26 | 2011-05-27 | Квэлкомм Инкорпорейтед | Снижение ошибок в ходе вычисления обратного дискретного косинусного преобразования |
KR100896289B1 (ko) | 2006-11-17 | 2009-05-07 | 엘지전자 주식회사 | 비디오 신호의 디코딩/인코딩 방법 및 장치 |
CN100512443C (zh) | 2007-01-11 | 2009-07-08 | 北京交通大学 | 基于自适应哈什和格型矢量量化的分布式视频编码方法 |
JP4947364B2 (ja) | 2007-06-22 | 2012-06-06 | ソニー株式会社 | 情報処理システムおよび方法、情報処理装置および方法、並びにプログラム |
US7535387B1 (en) | 2007-09-10 | 2009-05-19 | Xilinx, Inc. | Methods and systems for implementing context adaptive binary arithmetic coding |
US8782379B2 (en) | 2007-09-27 | 2014-07-15 | Qualcomm Incorporated | H.264 video decoder CABAC core optimization techniques |
US7999870B2 (en) * | 2008-02-01 | 2011-08-16 | Omnivision Technologies, Inc. | Sampling and readout of an image sensor having a sparse color filter array pattern |
EP2237557A1 (en) * | 2009-04-03 | 2010-10-06 | Panasonic Corporation | Coding for filter coefficients |
US20120069906A1 (en) | 2009-06-09 | 2012-03-22 | Kazushi Sato | Image processing apparatus and method (as amended) |
US20120127002A1 (en) | 2009-08-06 | 2012-05-24 | Youji Shibahara | Coding method, decoding method, coding apparatus, and decoding apparatus |
CN101771879B (zh) | 2010-01-28 | 2011-08-17 | 清华大学 | 基于cabac的并行归一化编码实现电路及编码方法 |
US9973768B2 (en) | 2010-03-16 | 2018-05-15 | Texas Instruments Incorporated | CABAC decoder with decoupled arithmetic decoding and inverse binarization |
WO2011126277A2 (en) | 2010-04-05 | 2011-10-13 | Samsung Electronics Co., Ltd. | Low complexity entropy-encoding/decoding method and apparatus |
CN103119849B (zh) | 2010-04-13 | 2017-06-16 | 弗劳恩霍夫应用研究促进协会 | 概率区间分割编码器和译码器 |
ITVI20100175A1 (it) | 2010-06-21 | 2011-12-22 | St Microelectronics Pvt Ltd | Sistema per la codifica entropica di video h.264 per applicazioni hdtv in tempo reale |
US9591320B2 (en) | 2010-07-15 | 2017-03-07 | Texas Instruments Incorporated | Context and bypass encoding video |
JP2012023613A (ja) | 2010-07-15 | 2012-02-02 | Mitsubishi Electric Corp | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 |
US8520740B2 (en) | 2010-09-02 | 2013-08-27 | International Business Machines Corporation | Arithmetic decoding acceleration |
US9055305B2 (en) | 2011-01-09 | 2015-06-09 | Mediatek Inc. | Apparatus and method of sample adaptive offset for video coding |
CN102231830B (zh) | 2010-11-23 | 2013-04-17 | 浙江大学 | 用于上下文算术编解码的运算单元 |
US9042440B2 (en) | 2010-12-03 | 2015-05-26 | Qualcomm Incorporated | Coding the position of a last significant coefficient within a video block based on a scanning order for the block in video coding |
US20120163448A1 (en) | 2010-12-22 | 2012-06-28 | Qualcomm Incorporated | Coding the position of a last significant coefficient of a video block in video coding |
US9060174B2 (en) | 2010-12-28 | 2015-06-16 | Fish Dive, Inc. | Method and system for selectively breaking prediction in video coding |
CA2822925C (en) | 2011-01-04 | 2017-09-19 | Research In Motion Limited | Coding of residual data in predictive compression |
CA2822929C (en) | 2011-01-04 | 2016-07-12 | Research In Motion Limited | Coding of residual data in predictive compression |
US9161041B2 (en) * | 2011-01-09 | 2015-10-13 | Mediatek Inc. | Apparatus and method of efficient sample adaptive offset |
US20120294353A1 (en) * | 2011-05-16 | 2012-11-22 | Mediatek Inc. | Apparatus and Method of Sample Adaptive Offset for Luma and Chroma Components |
US10123053B2 (en) | 2011-05-23 | 2018-11-06 | Texas Instruments Incorporated | Acceleration of bypass binary symbol processing in video coding |
US9112526B2 (en) | 2011-06-15 | 2015-08-18 | Sony Corporation | Binarization of DQP using separate absolute value and sign (SAVS) in CABAC |
BR112013032333B1 (pt) | 2011-06-16 | 2022-07-26 | Ge Video Compression, Llc | Comutação de modo auxiliar para codificação por entropia |
US8837582B2 (en) | 2011-06-22 | 2014-09-16 | Blackberry Limited | Compressing image data |
CN102186087B (zh) | 2011-06-24 | 2013-06-12 | 哈尔滨工业大学 | 用于二进制算术编码可并行的非零系数上下文建模方法 |
US20130083856A1 (en) | 2011-06-29 | 2013-04-04 | Qualcomm Incorporated | Contexts for coefficient level coding in video compression |
WO2013003823A1 (en) | 2011-06-30 | 2013-01-03 | Huawei Technologies, Co., Ltd. | Lossless coding and associated signaling methods for compound video |
US9008179B2 (en) | 2011-06-30 | 2015-04-14 | Futurewei Technologies, Inc. | Encoding of prediction residuals for lossless video coding |
US10536701B2 (en) | 2011-07-01 | 2020-01-14 | Qualcomm Incorporated | Video coding using adaptive motion vector resolution |
US9807426B2 (en) | 2011-07-01 | 2017-10-31 | Qualcomm Incorporated | Applying non-square transforms to video data |
US9392301B2 (en) | 2011-07-01 | 2016-07-12 | Qualcomm Incorporated | Context adaptive entropy coding for non-square blocks in video coding |
EP2705668A1 (en) | 2011-07-12 | 2014-03-12 | Huawei Technologies Co., Ltd | Pixel-based intra prediction for coding in hevc |
EP2736255A4 (en) | 2011-07-18 | 2014-12-17 | Panasonic Ip Corp America | IMAGE ENCODING METHOD, IMAGE DECODING METHOD, IMAGE ENCODING APPARATUS, IMAGE DECODING APPARATUS, AND IMAGE ENCODING / DECODING APPARATUS |
EP2740272A4 (en) * | 2011-08-04 | 2015-04-08 | Mediatek Inc | METHOD AND DEVICE FOR RECORDING BINARIZATION OF SYNTAX ELEMENTS IN CABAC |
WO2013050612A1 (en) | 2011-10-06 | 2013-04-11 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Entropy coding buffer arrangement |
US9871537B2 (en) | 2011-10-27 | 2018-01-16 | Qualcomm Incorporated | Mapping states in binary arithmetic coder for video coding |
US20130114691A1 (en) | 2011-11-03 | 2013-05-09 | Qualcomm Incorporated | Adaptive initialization for context adaptive entropy coding |
US10051289B2 (en) | 2011-11-04 | 2018-08-14 | Qualcomm Incorporated | Adaptive center band offset filter for video coding |
US9253508B2 (en) | 2011-11-04 | 2016-02-02 | Futurewei Technologies, Inc. | Differential pulse code modulation intra prediction for high efficiency video coding |
EP2779648A4 (en) | 2011-11-07 | 2016-06-01 | Panasonic Ip Corp America | PICTURE CODING METHOD, PICTURE DECODING METHOD, PICTURE CODING DEVICE, PICTURE DECODING DEVICE, AND PICTURE CODING / DECODING DEVICE |
US9088796B2 (en) * | 2011-11-07 | 2015-07-21 | Sharp Kabushiki Kaisha | Video decoder with enhanced CABAC decoding |
EP3139617B1 (en) | 2011-11-07 | 2018-01-17 | Tagivan Ii Llc | Arithmetic coding of the position of the last non-zero coefficient |
US9277194B2 (en) * | 2011-11-08 | 2016-03-01 | Texas Instruments Incorporated | Method and apparatus for image and video coding using hierarchical sample adaptive band offset |
US20130114686A1 (en) * | 2011-11-08 | 2013-05-09 | Sharp Laboratories Of America, Inc. | Video decoder with enhanced cabac motion vector decoding |
US9154792B2 (en) | 2011-11-08 | 2015-10-06 | Qualcomm Incorporated | Progressive coding of position of last significant coefficient |
US9344722B2 (en) | 2011-11-18 | 2016-05-17 | Futurewei Technologies, Inc. | Scanning of prediction residuals in high efficiency video coding |
US9503717B2 (en) | 2012-01-09 | 2016-11-22 | Texas Instruments Incorporated | Context adaptive binary arithmetic coding (CABAC) with scalable throughput and coding efficiency |
US9654139B2 (en) | 2012-01-19 | 2017-05-16 | Huawei Technologies Co., Ltd. | High throughput binarization (HTB) method for CABAC in HEVC |
US8581753B2 (en) * | 2012-01-19 | 2013-11-12 | Sharp Laboratories Of America, Inc. | Lossless coding technique for CABAC in HEVC |
US9380302B2 (en) | 2012-02-27 | 2016-06-28 | Texas Instruments Incorporated | Sample adaptive offset (SAO) parameter signaling |
US9584802B2 (en) | 2012-04-13 | 2017-02-28 | Texas Instruments Incorporated | Reducing context coded and bypass coded bins to improve context adaptive binary arithmetic coding (CABAC) throughput |
CA2864570A1 (en) * | 2012-04-16 | 2013-10-24 | Mediatek Inc. | Method and apparatus for sample adaptive offset coding with separate sign and magnitude |
US9031137B2 (en) * | 2012-05-03 | 2015-05-12 | Texas Instruments Incorporated | Signaling signed band offset values for sample adaptive offset (SAO) filtering in video coding |
EP2858354B1 (en) | 2012-05-25 | 2022-12-21 | Sun Patent Trust | Video image coding method, video image decoding method, video image coding device, video image decoding device, and video image coding-decoding device |
WO2013175736A1 (ja) | 2012-05-25 | 2013-11-28 | パナソニック株式会社 | 動画像符号化方法、動画像符号化装置、動画像復号方法、動画像復号装置、および、動画像符号化復号装置 |
US9942571B2 (en) | 2012-05-29 | 2018-04-10 | Hfi Innovations Inc. | Method and apparatus for coding of sample adaptive offset information |
EP2858357B1 (en) | 2012-06-04 | 2022-07-06 | Sun Patent Trust | Video image encoding method, video image decoding method |
US9386307B2 (en) | 2012-06-14 | 2016-07-05 | Qualcomm Incorporated | Grouping of bypass-coded bins for SAO syntax elements |
CN107172438B (zh) * | 2012-07-02 | 2021-03-02 | 索尼公司 | 用于采样自适应偏移的编码装置和编码方法 |
TWI625962B (zh) | 2012-07-16 | 2018-06-01 | 三星電子股份有限公司 | 取樣自適應偏移解碼方法 |
-
2013
- 2013-05-17 EP EP13793080.6A patent/EP2858354B1/en active Active
- 2013-05-17 KR KR1020147000400A patent/KR102132917B1/ko active IP Right Grant
- 2013-05-17 EP EP22205537.8A patent/EP4149113A1/en active Pending
- 2013-05-17 MX MX2013015089A patent/MX2013015089A/es active IP Right Grant
- 2013-05-17 ES ES13793080T patent/ES2936333T3/es active Active
- 2013-05-17 BR BR112014000369-6A patent/BR112014000369B1/pt active IP Right Grant
- 2013-05-17 WO PCT/JP2013/003158 patent/WO2013175748A1/ja active Application Filing
- 2013-05-17 PL PL13793080.6T patent/PL2858354T3/pl unknown
- 2013-05-17 CN CN201711427859.0A patent/CN107846598B/zh active Active
- 2013-05-17 MY MYPI2014700025A patent/MY167340A/en unknown
- 2013-05-17 CA CA2841112A patent/CA2841112C/en active Active
- 2013-05-17 AU AU2013264323A patent/AU2013264323B2/en active Active
- 2013-05-17 CN CN201380002039.0A patent/CN103650511B/zh active Active
- 2013-05-17 JP JP2013547052A patent/JP6168452B2/ja active Active
- 2013-05-17 RU RU2013158190A patent/RU2623800C2/ru active
- 2013-05-20 TW TW102117758A patent/TWI573438B/zh active
- 2013-05-21 US US13/898,722 patent/US9749623B2/en active Active
-
2017
- 2017-07-21 US US15/656,081 patent/US9967560B2/en active Active
-
2018
- 2018-04-04 US US15/944,954 patent/US10298924B2/en active Active
-
2019
- 2019-04-04 US US16/375,127 patent/US10567758B2/en active Active
Non-Patent Citations (7)
Title |
---|
"Advanced video coding for generic audiovisual services", ITU-T RECOMMENDATION H.264, March 2010 (2010-03-01) |
"BoG report on integrated text of SAO adoptions on top of JCTVC-I0030", JCTVC-I0602, 27 April 2012 (2012-04-27) |
"High efficiency video coding (HEVC) text specification draft 7", JCTVC-I1003_D1, 27 April 2012 (2012-04-27) |
BENJAMIN BROSS ET AL.: "High efficiency video coding (HEVC) text specification draft 7", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT- VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/ WG11 JCTVC-I1003_D1, ITU-T, 16 May 2012 (2012-05-16), pages 45, 174 - 175, XP055140332 * |
CHIH-MING FU ET AL.: "Non-CE1: Bug-fix of offset coding in SAO interleaving mode", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11 JCTVC-I0168, ITU-T, 27 April 2012 (2012-04-27), pages 1 - 3, XP030111931 * |
See also references of EP2858354A4 |
YU-WEN HUANG ET AL.: "BoG report on integrated text of SAO adoptions on top of JCTVC-I0030", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11 JCTVC-I0602, ITU-T, 24 May 2012 (2012-05-24), pages 1 - 2, XP030112365 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019024219A (ja) * | 2012-06-28 | 2019-02-14 | キヤノン株式会社 | 符号化ビデオデータのサンプル適応オフセットデータを復号するための方法、プログラム、コンピュータ可読記憶媒体、およびビデオデコーダ |
JP2020010393A (ja) * | 2012-06-28 | 2020-01-16 | キヤノン株式会社 | 符号化ビデオデータのサンプル適応オフセットデータを復号するための方法、プログラム、コンピュータ可読記憶媒体、およびビデオデコーダ |
JP2021040332A (ja) * | 2012-06-28 | 2021-03-11 | キヤノン株式会社 | ビデオデータのサンプル適応オフセットデータを復号するための方法、プログラム、コンピュータ可読記憶媒体、およびビデオデコーダ |
JP6992147B2 (ja) | 2012-06-28 | 2022-01-13 | キヤノン株式会社 | ビデオデータのサンプル適応オフセットデータを復号するための方法 |
JPWO2016067832A1 (ja) * | 2014-10-27 | 2017-09-21 | 株式会社村田製作所 | 触覚提示装置 |
EP3445052A1 (en) | 2017-08-10 | 2019-02-20 | Fujitsu Limited | Video encoding apparatus and video encoding method |
US11223829B2 (en) | 2017-08-10 | 2022-01-11 | Fujitsu Limited | Video encoding apparatus and video encoding method with block shape based filtering |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6612416B2 (ja) | 画像復号方法および画像復号装置 | |
JP6238215B2 (ja) | 復号方法および復号装置 | |
JP6498811B2 (ja) | 符号化方法および符号化装置 | |
JP6168452B2 (ja) | 動画像符号化方法、動画像復号方法、動画像符号化装置、動画像復号装置、および動画像符号化復号装置 | |
JP5937020B2 (ja) | 動画像符号化方法、動画像復号方法、動画像符号化装置、動画像復号装置、及び動画像符号化復号装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
ENP | Entry into the national phase |
Ref document number: 2013547052 Country of ref document: JP Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: MX/A/2013/015089 Country of ref document: MX |
|
ENP | Entry into the national phase |
Ref document number: 2841112 Country of ref document: CA |
|
ENP | Entry into the national phase |
Ref document number: 20147000400 Country of ref document: KR Kind code of ref document: A |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 13793080 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2013264323 Country of ref document: AU Date of ref document: 20130517 Kind code of ref document: A |
|
REG | Reference to national code |
Ref country code: BR Ref legal event code: B01A Ref document number: 112014000369 Country of ref document: BR |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 2013158190 Country of ref document: RU Kind code of ref document: A |
|
ENP | Entry into the national phase |
Ref document number: 112014000369 Country of ref document: BR Kind code of ref document: A2 Effective date: 20140107 |