WO2015053115A1 - 復号装置および復号方法、並びに、符号化装置および符号化方法 - Google Patents
復号装置および復号方法、並びに、符号化装置および符号化方法 Download PDFInfo
- Publication number
- WO2015053115A1 WO2015053115A1 PCT/JP2014/075841 JP2014075841W WO2015053115A1 WO 2015053115 A1 WO2015053115 A1 WO 2015053115A1 JP 2014075841 W JP2014075841 W JP 2014075841W WO 2015053115 A1 WO2015053115 A1 WO 2015053115A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- unit
- image
- transform
- encoding
- skip
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/625—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/107—Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/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/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
-
- 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/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
- H04N19/122—Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
- H04N19/126—Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
- H04N19/139—Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- 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
-
- 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/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
- H04N19/86—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
Definitions
- the present disclosure relates to a decoding apparatus and a decoding method, and an encoding apparatus and an encoding method, and in particular, a decoding apparatus and a decoding method capable of improving encoding efficiency by optimizing transform skip,
- the present invention also relates to an encoding device and an encoding method.
- MPEG Motion Picture Experts Group phase
- MPEG Motion Experts Group phase
- orthogonal transformation such as discrete cosine transformation and motion compensation using redundancy unique to image information
- the MPEG2 (ISO / IEC 13818-2) system is defined as a general-purpose image encoding system.
- MPEG2 is a standard that covers both interlaced scanning images and progressive scanning images, as well as standard resolution images and high-definition images.
- MPEG2 is currently widely used in a wide range of applications for professional and consumer applications.
- a code amount of 4 to 8 Mbps is assigned for a standard resolution interlaced scan image having 720 ⁇ 480 pixels, and 18 to 22 MBps is assigned for a high resolution interlaced scan image having 1920 ⁇ 1088 pixels. Therefore, it is possible to realize a high compression rate and good image quality.
- MPEG2 was mainly intended for high-quality encoding suitable for broadcasting, but it did not support encoding methods with a lower code amount (bit rate) than MPEG1, that is, a higher compression rate. With the widespread use of mobile terminals, the need for such an encoding system is expected to increase in the future, and the MPEG4 encoding system has been standardized accordingly. Regarding the MPEG4 image coding system, the standard was approved as an international standard in December 1998 as ISO / IEC 449 14496-2.
- H. Standardization to achieve higher coding efficiency by incorporating functions that are not supported by 26L was done as Joint Model of Enhanced-Compression Video Coding. This standardization was implemented in March 2003 by H.C. It was internationally standardized under the names of H.264 and MPEG-4® Part 10 (AVC (Advanced Video Coding)).
- Non-Patent Document 1 has been issued as Draft.
- transform skip that does not perform orthogonal transformation or inverse orthogonal transformation on the TU can be used.
- the image to be encoded is a non-natural image such as a CG (Computer Graphics) image or a personal computer screen
- 4 ⁇ 4 pixels are easily selected as the TU size.
- encoding efficiency may be higher when orthogonal transform is not performed. Therefore, in HEVC, when the size of the TU is 4 ⁇ 4 pixels, the encoding efficiency is improved by making it possible to apply transform skip.
- transform skip is applicable to both luminance signals and color difference signals.
- transform skip is applicable regardless of whether encoding is performed in the intra prediction mode or the inter prediction mode.
- Non-Patent Document 2 an encoding method for improving the encoding of an image in a color difference signal format such as 4: 2: 2 or 4: 4: 4 and screen content is studied.
- Non-Patent Document 3 discusses coding efficiency when transform skip is applied to a TU having a size larger than 4 ⁇ 4 pixels.
- Non-Patent Document 4 it is studied to apply transform skip to the minimum size of TU when the minimum size of TU is 8 ⁇ 8 pixels other than 4 ⁇ 4 pixels.
- transform skip is not performed for both the horizontal direction and the vertical direction, or is performed for both.
- the encoding efficiency is improved when the orthogonal transformation is performed, and for the other, the encoding efficiency is improved when the orthogonal transformation is not performed, The reverse is true.
- the present disclosure has been made in view of such a situation, and is intended to improve the encoding efficiency by optimizing the transform skip.
- the decoding device is an inverse of performing one transform skip on a difference between a predicted image of the image and the image in which one transform skip in the horizontal direction and the vertical direction is performed. It is a decoding apparatus provided with an orthogonal transformation part.
- the decoding method according to the first aspect of the present disclosure corresponds to the decoding device according to the first aspect of the present disclosure.
- one of the transform skips in the horizontal direction and the vertical direction is performed on the difference between the predicted image of the image and the image.
- the encoding device is an encoding device including an orthogonal transform unit that performs one transform skip in one of a horizontal direction and a vertical direction on a difference between a predicted image of an image and the image.
- the encoding method according to the second aspect of the present disclosure corresponds to the encoding device according to the second aspect of the present disclosure.
- one transform skip in the horizontal direction and the vertical direction is performed on the difference between the predicted image of the image and the image.
- the decoding device according to the first aspect and the encoding device according to the second aspect can be realized by causing a computer to execute a program.
- a program to be executed by a computer is transmitted through a transmission medium or recorded on a recording medium, Can be provided.
- the decoding device of the first aspect and the encoding device of the second aspect may be independent devices or may be internal blocks constituting one device.
- decoding can be performed. Also, according to the first aspect of the present disclosure, it is possible to decode an encoded stream with improved encoding efficiency by optimizing transform skip.
- encoding can be performed. Also, according to the second aspect of the present disclosure, encoding efficiency can be improved by optimizing transform skip.
- FIG. 11 is a flowchart describing details of the encoding process of FIG. 10.
- FIG. 11 is a flowchart describing details of the encoding process of FIG. 10.
- FIG. It is a flowchart explaining the horizontal-vertical orthogonal transformation process of FIG.
- 2 illustrates an example of a schematic configuration of a video set to which the present disclosure is applied. 2 illustrates an example of a schematic configuration of a video processor to which the present disclosure is applied. The other example of the schematic structure of the video processor to which this indication is applied is shown.
- FIG. 1 is a block diagram illustrating a configuration example of a first embodiment of an encoding device to which the present disclosure is applied.
- the encoding apparatus 10 in FIG. 1 includes a setting unit 11, an encoding unit 12, and a transmission unit 13, and encodes an image by a method according to the HEVC method.
- the setting unit 11 of the encoding device 10 sets an SPS (Sequence Parameter Set) including a scaling list (quantization matrix).
- the setting unit 11 also sets a PPS (Picture Parameter Set) including a scaling list, skip permission information (transform_skip_enabled_flag) indicating whether or not application of transform skip is permitted.
- the skip permission information is 1 when indicating that the application of transform skip is permitted, and 0 when indicating that the application of transform skip is not permitted.
- the setting unit 11 sets VUI (Video Usability Information), SEI (Supplemental Enhancement Information), and the like.
- the setting unit 11 supplies the set parameter set such as SPS, PPS, VUI, and SEI to the encoding unit 12.
- the frame unit image is input to the encoding unit 12.
- the encoding unit 12 refers to the parameter set supplied from the setting unit 11 and encodes the input image by a method according to the HEVC method.
- the encoding unit 12 generates an encoded stream from encoded data obtained as a result of encoding and a parameter set, and supplies the encoded stream to the transmission unit 13.
- the transmission unit 13 transmits the encoded stream supplied from the encoding unit 12 to a decoding device to be described later.
- FIG. 2 is a diagram for explaining the transmission of the scaling list.
- the scaling list for large TUs such as 16 ⁇ 16 pixels and 32 ⁇ 32 pixels is down-sampled into 8 ⁇ 8 matrix, set to SPS and PPS, and transmitted as shown in FIG. .
- the DC component is transmitted separately because it has a great influence on the image quality.
- the decoding apparatus upsamples the scaling list which is the 8 ⁇ 8 matrix transmitted in this way by the 0th order hold, and the scaling list for a large size TU such as 16 ⁇ 16 pixels or 32 ⁇ 32 pixels. To restore.
- FIG. 3 is a block diagram illustrating a configuration example of the encoding unit 12 of FIG.
- the encoding unit 12 includes a deblocking filter 41, an adaptive offset filter 42, an adaptive loop filter 43, a frame memory 44, a switch 45, an intra prediction unit 46, a motion prediction / compensation unit 47, a predicted image selection unit 48, a rate control. Part 49. Furthermore, the encoding unit 12 includes a skip control unit 50 and a skip control unit 51.
- the A / D conversion unit 31 of the encoding unit 12 performs A / D conversion on the frame-by-frame image input as an encoding target.
- the A / D conversion unit 31 outputs an image, which is a digital signal after conversion, to the screen rearrangement buffer 32 for storage.
- the screen rearrangement buffer 32 rearranges the stored frame-by-frame images in the order for encoding according to the GOP structure.
- the screen rearrangement buffer 32 outputs the rearranged image to the calculation unit 33, the intra prediction unit 46, and the motion prediction / compensation unit 47.
- the calculation unit 33 performs encoding by subtracting the prediction image supplied from the prediction image selection unit 48 from the image supplied from the screen rearrangement buffer 32.
- the calculation unit 33 outputs the image obtained as a result to the orthogonal transform unit 34 as residual information (difference).
- the calculation unit 33 outputs the image read from the screen rearrangement buffer 32 as it is to the orthogonal transform unit 34 as residual information.
- the orthogonal transform unit 34 performs horizontal orthogonal transform processing on the residual information from the calculation unit 33 based on a control signal from the skip control unit 50 in units of TUs. Then, the orthogonal transform unit 34 performs the orthogonal transform process in the vertical direction on the result of the orthogonal transform process in the horizontal direction based on the control signal in units of TUs.
- TU sizes include 4x4 pixels, 8x8 pixels, 16x16 pixels, and 32x32 pixels.
- orthogonal transform there is, for example, DCT (Discrete Cosine Transform) (discrete cosine transform).
- the DCT orthogonal transformation matrix when the TU is 4 ⁇ 4 pixels, 8 ⁇ 8 pixels, and 16 ⁇ 16 pixels is 1/8, the DCT orthogonal transformation matrix when the TU is 32 ⁇ 32 pixels, respectively. Obtained by decimation to 1 / 4,1 / 2. Therefore, the orthogonal transform unit 34 may be provided with a common calculation unit for all TU sizes, and does not need to be provided for each TU size.
- DST Discrete Sine Transform
- the orthogonal transform method is used. Since DST is used as the coding efficiency, the coding efficiency is improved.
- the orthogonal transform unit 34 supplies the residual information after the orthogonal transform process in the vertical direction to the skip control unit 50 as a final orthogonal transform process result. Further, the orthogonal transform unit 34 supplies the quantization unit 35 with an orthogonal transform process result corresponding to the optimum transform skip determined by the skip control unit 50.
- the quantization unit 35 holds a scaling list for each TU size included in the SPS or PPS.
- the quantization unit 35 determines the scaling list based on the transform skip information representing the optimal transform skip supplied from the skip control unit 50 and the held scaling list in units of TUs.
- the quantization unit 35 quantizes the orthogonal transform processing result supplied from the orthogonal transform unit 34 using the scaling list in units of TUs.
- the quantization unit 35 supplies the quantized value obtained as a result of the quantization to the lossless encoding unit 36.
- the lossless encoding unit 36 obtains transform skip information supplied from the skip control unit 50.
- the lossless encoding unit 36 acquires information indicating the optimal intra prediction mode (hereinafter referred to as intra prediction mode information) from the intra prediction unit 46. Further, the lossless encoding unit 36 acquires information indicating the optimal inter prediction mode (hereinafter referred to as inter prediction mode information), a motion vector, information specifying a reference image, and the like from the motion prediction / compensation unit 47.
- the lossless encoding unit 36 acquires offset filter information regarding the offset filter from the adaptive offset filter 42 and acquires filter coefficients from the adaptive loop filter 43.
- the lossless encoding unit 36 performs variable length coding (for example, CAVLC (Context-Adaptive Variable Length Coding)) and arithmetic coding (for example, CABAC (Context) on the quantization value supplied from the quantization unit 35. -Adaptive Binary Arithmetic Coding) etc.).
- variable length coding for example, CAVLC (Context-Adaptive Variable Length Coding)
- CABAC Context
- CABAC Context-Adaptive Binary Arithmetic Coding
- the lossless encoding unit 36 encodes intra prediction mode information or inter prediction mode information, information specifying a motion vector, and a reference image, transform skip information, offset filter information, and filter coefficients. Lossless encoding as the conversion information.
- the lossless encoding unit 36 supplies the encoded information and the quantized value, which are losslessly encoded, to the accumulation buffer 37 as encoded data, and accumulates them.
- the losslessly encoded information may be header information (for example, a slice header) of a losslessly encoded quantization value.
- the transform skip information is set to residual_coding, for example.
- the accumulation buffer 37 temporarily stores the encoded data supplied from the lossless encoding unit 36.
- the accumulation buffer 37 supplies the stored encoded data to the transmission unit 13 as an encoded stream together with the parameter set supplied from the setting unit 11 in FIG.
- the quantized value output from the quantizing unit 35 is also input to the inverse quantizing unit 38.
- the inverse quantization unit 38 holds a scaling list for each TU size included in the SPS or PPS.
- the inverse quantization unit 38 determines the scaling list in units of TUs based on the transform skip information supplied from the skip control unit 51 and the held scaling list.
- the inverse quantization unit 38 inversely quantizes the quantized value using a scaling list in units of TUs.
- the inverse quantization unit 38 supplies the orthogonal transform processing result obtained as a result of the inverse quantization to the inverse orthogonal transform unit 39.
- the inverse orthogonal transform unit 39 performs horizontal inverse orthogonal transform processing on the orthogonal transform processing result supplied from the inverse quantization unit 38 based on the control signal supplied from the skip control unit 51 in units of TUs. . Then, the inverse orthogonal transform unit 39 performs the inverse orthogonal transform process in the vertical direction on the orthogonal transform process result after the horizontal inverse orthogonal transform process based on the control signal in units of TUs.
- a method of inverse orthogonal transform for example, there are IDCT (Inverse Discrete Cosine Transform) and IDST (Inverse Discrete Sine Transform).
- IDCT Inverse Discrete Cosine Transform
- IDST Inverse Discrete Sine Transform
- the addition unit 40 adds the residual information supplied from the inverse orthogonal transform unit 39 and the prediction image supplied from the prediction image selection unit 48, and performs decoding.
- the adder 40 supplies the decoded image to the deblock filter 41 and the frame memory 44.
- the deblocking filter 41 performs an adaptive deblocking filter process for removing block distortion on the decoded image supplied from the adding unit 40, and supplies the resulting image to the adaptive offset filter.
- the adaptive offset filter 42 performs an adaptive offset filter (SAO (Sample adaptive offset)) process that mainly removes ringing on the image after the adaptive deblock filter process by the deblock filter 41.
- SAO Sample adaptive offset
- the adaptive offset filter 42 determines the type of adaptive offset filter processing for each LCU (Largest Coding Unit) which is the maximum coding unit, and obtains an offset used in the adaptive offset filter processing.
- the adaptive offset filter 42 performs the determined type of adaptive offset filter processing on the image after the adaptive deblocking filter processing, using the obtained offset.
- the adaptive offset filter 42 supplies the image after the adaptive offset filter processing to the adaptive loop filter 43. Further, the adaptive offset filter 42 supplies information indicating the type and offset of the adaptive offset filter processing performed to the lossless encoding unit 36 as offset filter information.
- the adaptive loop filter 43 is configured by, for example, a two-dimensional Wiener filter.
- the adaptive loop filter 43 performs an adaptive loop filter (ALF (Adaptive Loop Filter)) process for each LCU, for example, on the image after the adaptive offset filter process supplied from the adaptive offset filter 42.
- ALF Adaptive Loop Filter
- the adaptive loop filter 43 is configured so that the residual of the original image that is the image output from the screen rearrangement buffer 32 and the image after the adaptive loop filter processing is minimized for each LCU. A filter coefficient used in the processing is calculated. Then, the adaptive loop filter 43 performs adaptive loop filter processing for each LCU using the calculated filter coefficient on the image after the adaptive offset filter processing.
- the adaptive loop filter 43 supplies the image after the adaptive loop filter processing to the frame memory 44.
- the adaptive loop filter 43 supplies the filter coefficient used for the adaptive loop filter process to the lossless encoding unit 36.
- the adaptive loop filter processing is performed for each LCU, but the processing unit of the adaptive loop filter processing is not limited to the LCU. However, the processing can be efficiently performed by combining the processing units of the adaptive offset filter 42 and the adaptive loop filter 43.
- the frame memory 44 stores the image supplied from the adaptive loop filter 43 and the image supplied from the adder 40.
- An image adjacent to a PU (Prediction Unit) among the images not subjected to the filter processing accumulated in the frame memory 44 is supplied to the intra prediction unit 46 via the switch 45 as a peripheral image.
- the filtered image stored in the frame memory 44 is output to the motion prediction / compensation unit 47 via the switch 45 as a reference image.
- the intra prediction unit 46 performs intra prediction processing for all candidate intra prediction modes using peripheral images read from the frame memory 44 via the switch 45 in units of PUs.
- the intra prediction unit 46 calculates cost function values for all candidate intra prediction modes based on the image read from the screen rearrangement buffer 32 and the predicted image generated as a result of the intra prediction process. (Details will be described later). Then, the intra prediction unit 46 determines the intra prediction mode that minimizes the cost function value as the optimal intra prediction mode.
- the intra prediction unit 46 supplies the predicted image generated in the optimal intra prediction mode and the corresponding cost function value to the predicted image selection unit 48.
- the intra prediction unit 46 supplies the intra prediction mode information to the lossless encoding unit 36 when the prediction image selection unit 48 is notified of selection of a prediction image generated in the optimal intra prediction mode.
- the cost function value is also called RD (Rate Distortion) cost. It is calculated based on a method of High Complexity mode or Low Complexity mode as defined by JM (Joint Model) which is reference software in the H.264 / AVC format. H. Reference software in the H.264 / AVC format is published at http://iphome.hhi.de/suehring/tml/index.htm.
- D is the difference (distortion) between the original image and the decoded image
- R is the generated code amount including even the coefficient of orthogonal transformation
- ⁇ is the Lagrange undetermined multiplier given as a function of the quantization parameter QP.
- D is the difference (distortion) between the original image and the predicted image
- Header_Bit is the code amount of the encoding information
- QPtoQuant is a function given as a function of the quantization parameter QP.
- the intra prediction mode is a mode that represents the PU size, prediction direction, and the like.
- the motion prediction / compensation unit 47 performs motion prediction / compensation processing for all candidate inter prediction modes in PU units. Specifically, the motion prediction / compensation unit 47 selects all candidate inter prediction modes based on the image supplied from the screen rearrangement buffer 32 and the reference image read from the frame memory 44 via the switch 45. Are detected in units of PUs. Then, the motion prediction / compensation unit 47 performs compensation processing on the reference image for each PU based on the motion vector, and generates a predicted image.
- the motion prediction / compensation unit 47 calculates the cost function value for all candidate inter prediction modes based on the image and the predicted image supplied from the screen rearrangement buffer 32, and the cost function value. Is determined to be the optimal inter prediction mode. Then, the motion prediction / compensation unit 47 supplies the cost function value of the optimal inter prediction mode and the corresponding prediction image to the prediction image selection unit 48. The motion prediction / compensation unit 47, when notified of the selection of the predicted image generated in the optimal inter prediction mode from the predicted image selection unit 48, specifies the inter prediction mode information, the corresponding motion vector, and the reference image. Are output to the lossless encoding unit 36.
- the inter prediction mode is a mode that represents the size of the PU and the like.
- the predicted image selection unit 48 Based on the cost function values supplied from the intra prediction unit 46 and the motion prediction / compensation unit 47, the predicted image selection unit 48 has a smaller corresponding cost function value of the optimal intra prediction mode and the optimal inter prediction mode. Are determined as the optimum prediction mode. Then, the predicted image selection unit 48 supplies the predicted image in the optimal prediction mode to the calculation unit 33 and the addition unit 40. Further, the predicted image selection unit 48 notifies the intra prediction unit 46 or the motion prediction / compensation unit 47 of selection of the predicted image in the optimal prediction mode.
- the rate control unit 49 controls the quantization operation rate of the quantization unit 35 based on the encoded data stored in the storage buffer 37 so that overflow or underflow does not occur.
- the skip control unit 50 controls the horizontal skip on signal for performing horizontal transform skip and the vertical skip on signal for controlling to perform vertical transform skip. Is supplied to the orthogonal transform unit 34 as a control signal. In addition, the skip control unit 50 supplies a horizontal skip off signal and a vertical skip on signal that are controlled so as not to perform horizontal transform skip to the orthogonal transform unit 34 as control signals.
- the skip control unit 50 supplies a horizontal skip on signal and a vertical skip off signal for controlling not to perform a transform skip in the vertical direction to the orthogonal transform unit 34 as control signals. Further, the skip control unit 50 supplies the horizontal skip off signal and the vertical skip off signal to the orthogonal transform unit 34 as control signals.
- the skip control unit 50 calculates the cost function value for each of the four orthogonal transform processing results supplied from the orthogonal transform unit 34 according to the control signal in units of TU. Is calculated.
- the skip control unit 50 generates transform skip information that represents the presence / absence of the transform skip in the horizontal direction and the vertical direction corresponding to the orthogonal transform processing result that minimizes the cost function value as the optimum transform skip in units of TUs. .
- the skip control unit 50 supplies the control signal corresponding to the optimum transform skip to the orthogonal transform unit 34 again.
- the skip control unit 50 If the TU size is other than 4 ⁇ 4 pixels, the skip control unit 50 generates transform skip information that indicates that there is no transform skip in the horizontal and vertical directions as the optimal transform skip. Further, the skip control unit 50 supplies the horizontal skip off signal and the vertical skip off signal to the orthogonal transform unit 34 as control signals corresponding to the optimal transform skip. The skip control unit 50 supplies the generated transform skip information to the quantization unit 35, the lossless encoding unit 36, and the skip control unit 51.
- the skip control unit 51 supplies the transform skip information supplied from the skip control unit 50 to the inverse quantization unit 38. In addition, the skip control unit 51 supplies a control signal corresponding to the optimal transform skip represented by the transform skip information to the inverse orthogonal transform unit 39.
- FIG. 4 is a diagram illustrating Coding UNIT (CU) that is a coding unit in the HEVC scheme.
- CU is defined as a coding unit.
- the CU plays the same role as a macroblock in the AVC method. Specifically, the CU is divided into PUs or TUs.
- the size of the CU is a square represented by a power-of-two pixel that is variable for each sequence.
- the CU divides the LCU, which is the largest CU, into two in the horizontal direction and the vertical direction an arbitrary number of times so as not to be smaller than the SCU (Smallest Coding Unit) which is the smallest CU.
- SCU Smallest Coding Unit
- the LCU size is 128 and the SCU size is 8. Accordingly, the hierarchical depth (Depth) of the LCU is 0 to 4, and the hierarchical depth number is 5. That is, the number of divisions corresponding to the CU is one of 0 to 4.
- Non-Patent Document 1 Information specifying the LCU and SCU sizes is included in the SPS. Also, the number of divisions corresponding to the CU is specified by split_flag indicating whether or not to further divide each layer. Details of the CU are described in Non-Patent Document 1.
- TU size can be specified using split_transform_flag, similar to CU split_flag.
- the maximum number of TU divisions during inter prediction and intra prediction is specified by SPS as max_transform_hierarchy_depth_inter and max_transform_hierarchy_depth_intra, respectively.
- CTU Coding Tree Unit
- CTB Coding Tree Block
- LCU base level
- a CU constituting a CTU is a unit including CB (Coding Block) and a parameter for processing on the CU base (level).
- FIG. 5 is a block diagram illustrating a configuration example of the orthogonal transform unit 34, the quantization unit 35, and the skip control unit 50 of FIG.
- the orthogonal transform unit 34 includes a horizontal direction calculation unit 71 and a vertical direction calculation unit 72.
- the horizontal direction computing unit 71 of the orthogonal transform unit 34 performs horizontal orthogonal transform processing on the residual information from the computation unit 33 in FIG. 3 based on the control signal from the skip control unit 50 in units of TUs. . Specifically, the horizontal direction calculation unit 71 performs horizontal orthogonal transformation on the residual information based on the horizontal skip-off signal in units of TUs. And the horizontal direction calculating part 71 supplies the orthogonal transformation coefficient obtained as a result to the vertical direction calculating part 72 as a horizontal orthogonal transformation process result.
- the horizontal direction calculation unit 71 performs horizontal transform skip on the residual information based on the horizontal skip on signal in units of TUs. Then, the horizontal direction calculation unit 71 supplies residual information from the calculation unit 33 to the vertical direction calculation unit 72 as a result of horizontal orthogonal transformation processing.
- the vertical direction calculation unit 72 performs vertical orthogonal transformation processing on the horizontal orthogonal transformation processing result supplied from the horizontal direction calculation unit 71 based on the control signal from the skip control unit 50 in units of TUs. Do. Specifically, the vertical direction calculation unit 72 performs orthogonal transform in the vertical direction on the result of the orthogonal transform process in the horizontal direction based on the vertical skip-off signal in units of TUs. When the control signal from the skip control unit 50 is not a control signal corresponding to the optimal transform skip supplied again, the vertical direction calculation unit 72 determines the orthogonal transform coefficient obtained as a result of the orthogonal transform in the vertical direction as the final Is supplied to the skip control unit 50 as a result of a typical orthogonal transform process.
- the vertical direction computing unit 72 performs vertical transform skip on the result of the orthogonal transformation process in the horizontal direction based on the vertical skip on signal in units of TUs.
- the vertical direction computing unit 72 converts the horizontal orthogonal transform processing result into the final orthogonal transform processing. As a result, it is supplied to the skip control unit 50.
- the vertical direction calculation unit 72 supplies the final orthogonal transform processing result to the quantization unit 35.
- the skip control unit 50 includes a control unit 81 and a determination unit 82.
- the control unit 81 of the skip control unit 50 has a horizontal skip off signal and a vertical skip off signal, a horizontal skip on signal and a vertical skip off signal, and a horizontal skip off signal in units of TU. And a vertical skip-on signal, and a horizontal skip-off signal and a vertical skip-off signal are sequentially generated as control signals.
- the control unit 81 supplies a control signal to the orthogonal transform unit 34 in units of TUs.
- the control unit 81 supplies a control signal corresponding to the optimal transform skip supplied from the determination unit 82 to the horizontal direction calculation unit 71 and the vertical direction calculation unit 72 in units of TUs.
- the determination unit 82 calculates cost function values for the four orthogonal transform processing results supplied from the vertical direction calculation unit 72 in units of TUs.
- the determination unit 82 determines whether or not there is a transform skip in the horizontal direction and the vertical direction corresponding to the orthogonal transform processing result that minimizes the cost function value in units of TUs as the optimal transform skip.
- the determination unit 82 determines that there is no transform skip in the horizontal direction and the vertical direction as the optimum transform skip in units of TU.
- the determination unit 82 supplies the optimal transform skip to the control unit 81 in units of TUs. Further, the determination unit 82 generates transform skip information in units of TUs and supplies the transform skip information to the quantization unit 35, the lossless encoding unit 36, and the skip control unit 51.
- the quantization unit 35 includes a list determination unit 91 and a calculation unit 92.
- the list determination unit 91 holds a scaling list for each TU size included in the SPS or PPS.
- the list determination unit 91 determines a scaling list based on the transform skip information supplied from the determination unit 82 and the held scaling list in units of TUs, and supplies the scaling list to the calculation unit 92.
- the calculation unit 92 performs quantization on the orthogonal transform processing result supplied from the vertical direction calculation unit 72 using the scaling list supplied from the list determination unit 91 in units of TUs.
- the rate of this quantization operation is controlled by the rate control unit 49.
- the calculation unit 92 supplies the quantized value obtained as a result of the quantization to the lossless encoding unit 36 and the inverse quantization unit 38 in FIG.
- FIG. 6 is a diagram for explaining a scaling list determination method by the list determination unit 91 of FIG.
- the list determination unit 91 determines the size of the TU to be processed (FIG. 6). In the example, the value in the first row of the scaling list of 8 ⁇ 8 pixels) is read out. Then, the list determination unit 91 determines a scaling list having the read first row values as values of all rows as a scaling list of the TU to be processed. That is, when transform skip is performed only in the vertical direction for the processing target TU, the scaling list that changes in the row direction but does not change in the column direction is the scaling list of the processing target TU. .
- the list determination unit 91 determines the size of the TU to be processed (see FIG. 6). The value in the first column of the scaling list of 8 ⁇ 8 pixels in the example of 6 is read out. Then, the list determination unit 91 determines a scaling list having the read first column values as the values of all columns as the scaling list of the TU to be processed. That is, when the transform skip is performed only in the horizontal direction for the processing target TU, the scaling list that changes in the column direction but does not change in the row direction is the scaling list of the processing target TU. .
- the list determination unit 91 processes a scaling list in which the DC component of the held scaling list is applied to all components. Determine the scaling list of the target TU. In this case, the list determination unit 91 may determine the scaling list of the TU to be processed as a flat matrix.
- the scaling list in the direction in which the transform skip is performed is not used.
- FIG. 7 is a block diagram illustrating a configuration example of the inverse quantization unit 38, the inverse orthogonal transform unit 39, and the skip control unit 51 in FIG.
- the skip control unit 51 includes a reception unit 101 and a control unit 102.
- the receiving unit 101 of the skip control unit 51 receives transform skip information from the skip control unit 50 in units of TUs.
- the receiving unit 101 supplies transform skip information to the inverse quantization unit 38 and the control unit 102 in units of TUs.
- the control unit 102 uses the horizontal skip on signal or the horizontal skip off signal and the vertical skip on signal or the vertical skip off signal as control signals based on the transform skip information supplied from the receiving unit 101 in units of TUs. Generate.
- the control unit 102 when the transform skip information indicates no horizontal and vertical transform skips, the control unit 102 generates a horizontal skip off signal and a vertical skip off signal as control signals.
- the control unit 102 When the transform skip information indicates the presence of horizontal transform skip and the absence of vertical transform skip, the control unit 102 generates a horizontal skip on signal and a vertical skip off signal as control signals.
- the control unit 102 when the transform skip information represents no horizontal transform skip and vertical transform skip, the control unit 102 generates a horizontal skip off signal and a vertical skip on signal as control signals.
- the control unit 102 When the transform skip information indicates the presence of horizontal and vertical transform skips, the control unit 102 generates a horizontal skip on signal and a vertical skip on signal as control signals.
- the control unit 102 supplies the generated control signal to the inverse orthogonal transform unit 39.
- the inverse quantization unit 38 includes a list determination unit 103 and a calculation unit 104.
- the list determination unit 103 holds a scaling list for each TU size included in the SPS or PPS.
- the list determination unit 103 determines a scaling list in units of TUs in the same manner as the list determination unit 91 in FIG. 5 based on the transform skip information supplied from the reception unit 101 and the held scaling list.
- the list determination unit 103 supplies the scaling list to the calculation unit 104 in units of TUs.
- the calculation unit 104 dequantizes the quantization value supplied from the calculation unit 92 of FIG. 5 using the scaling list supplied from the list determination unit 103 in units of TUs.
- the computing unit 104 supplies the orthogonal transform processing result obtained as a result of the inverse quantization to the inverse orthogonal transform unit 39.
- the inverse orthogonal transform unit 39 includes a horizontal direction calculation unit 105 and a vertical direction calculation unit 106.
- the horizontal direction computing unit 105 of the inverse orthogonal transform unit 39 performs the inverse orthogonal transform process in the horizontal direction on the orthogonal transform processing result from the computation unit 104 based on the control signal supplied from the control unit 102 in units of TUs. Do.
- the horizontal direction calculation unit 105 performs inverse orthogonal transformation in the horizontal direction on the orthogonal transformation processing result based on the horizontal skip-off signal in units of TUs. Then, the horizontal calculation unit 105 supplies the horizontal inverse orthogonal transformation result of the orthogonal transformation processing result to the vertical calculation unit 106 as the horizontal inverse orthogonal transformation processing result.
- the horizontal direction calculation unit 105 performs horizontal transform skip on the orthogonal transform processing result based on the horizontal skip on signal in units of TUs. Then, the horizontal direction computing unit 105 supplies the orthogonal transformation processing result to the vertical direction computing unit 106 as the horizontal inverse orthogonal transformation processing result.
- the vertical direction computing unit 106 performs vertical inverse orthogonal transformation processing on the horizontal inverse orthogonal transformation processing result from the horizontal direction computing unit 105 based on the control signal supplied from the control unit 102 in units of TUs. Do.
- the vertical direction calculation unit 106 performs vertical inverse orthogonal transform on the horizontal inverse orthogonal transform processing result based on the vertical skip-off signal in units of TUs. Then, the vertical direction calculation unit 106 supplies residual information obtained as a result of the inverse orthogonal transform in the vertical direction to the addition unit 40 in FIG.
- the vertical direction calculation unit 106 performs vertical transform skip for the horizontal inverse orthogonal transform processing result based on the vertical skip on signal in units of TUs. Then, the vertical direction calculation unit 106 supplies residual information, which is the result of the inverse orthogonal transform process in the horizontal direction, to the addition unit 40.
- (Residual_coding syntax example) 8 and 9 are diagrams illustrating examples of the syntax of residual_coding.
- transform_skip_indicator of TU is set for residual_coding for each TU.
- the transform skip information is information that indicates the optimum transform skip, that is, information that identifies which transform skip in the horizontal direction or the vertical direction has been performed on the residual information.
- the transform skip information is 0 when indicating no horizontal and vertical transform skips, and 1 when indicating horizontal transform skips and no vertical transform skips. Also, the transform skip information is 2 when it indicates that there is no horizontal transform skip and when there is vertical transform skip, and it is 3 when it indicates the presence of horizontal and vertical transform skips.
- transform_skip_flag a transformer for identifying that a common transform skip has been performed in the horizontal direction and the vertical direction.
- the transform skip flag is 1 when indicating that the transform skip has been performed, and 0 when indicating that the transform skip has not been performed.
- FIG. 10 is a flowchart illustrating the stream generation processing of the encoding device 10 of FIG.
- step S11 of FIG. 10 the setting unit 11 of the encoding device 10 sets a parameter set.
- the setting unit 11 supplies the set parameter set to the encoding unit 12.
- step S12 the encoding unit 12 performs an encoding process in which an image in units of frames input from the outside is encoded by a method according to the HEVC method. Details of the encoding process will be described with reference to FIGS. 11 and 12 described later.
- step S13 the storage buffer 37 (FIG. 3) of the encoding unit 12 generates an encoded stream from the parameter set supplied from the setting unit 11 and the stored encoded data, and supplies the encoded stream to the transmission unit 13.
- step S14 the transmission unit 13 transmits the encoded stream supplied from the setting unit 11 to a decoding device to be described later, and ends the process.
- 11 and 12 are flowcharts illustrating details of the encoding process in step S12 in FIG.
- step S31 of FIG. 11 the A / D conversion unit 31 (FIG. 3) of the encoding unit 12 performs A / D conversion on the frame-unit image input as the encoding target.
- the A / D conversion unit 31 outputs an image, which is a digital signal after conversion, to the screen rearrangement buffer 32 for storage.
- step S32 the screen rearrangement buffer 32 rearranges the stored frame images in the display order in the order for encoding according to the GOP structure.
- the screen rearrangement buffer 32 supplies the rearranged frame-unit images to the calculation unit 33, the intra prediction unit 46, and the motion prediction / compensation unit 47.
- step S33 the intra prediction unit 46 performs intra prediction processing in all intra prediction modes that are candidates in PU units. Further, the intra prediction unit 46 calculates cost function values for all candidate intra prediction modes based on the image read from the screen rearrangement buffer 32 and the predicted image generated as a result of the intra prediction process. Is calculated. Then, the intra prediction unit 46 determines the intra prediction mode that minimizes the cost function value as the optimal intra prediction mode. The intra prediction unit 46 supplies the predicted image generated in the optimal intra prediction mode and the corresponding cost function value to the predicted image selection unit 48.
- the motion prediction / compensation unit 47 performs motion prediction / compensation processing for all candidate inter prediction modes in PU units.
- the motion prediction / compensation unit 47 calculates cost function values for all candidate inter prediction modes based on the images supplied from the screen rearrangement buffer 32 and the predicted images, and the cost function values are calculated.
- the minimum inter prediction mode is determined as the optimal inter prediction mode.
- the motion prediction / compensation unit 47 supplies the cost function value of the optimal inter prediction mode and the corresponding prediction image to the prediction image selection unit 48.
- step S ⁇ b> 34 the predicted image selection unit 48 selects one of the optimal intra prediction mode and the optimal inter prediction mode based on the cost function values supplied from the intra prediction unit 46 and the motion prediction / compensation unit 47 by the process of step S ⁇ b> 33. The one with the smallest cost function value is determined as the optimum prediction mode. Then, the predicted image selection unit 48 supplies the predicted image in the optimal prediction mode to the calculation unit 33 and the addition unit 40.
- step S35 the predicted image selection unit 48 determines whether or not the optimal prediction mode is the optimal inter prediction mode.
- the predicted image selection unit 48 notifies the motion prediction / compensation unit 47 of the selection of the predicted image generated in the optimal inter prediction mode.
- step S36 the motion prediction / compensation unit 47 supplies the inter prediction mode information, the motion vector, and information specifying the reference image to the lossless encoding unit 36, and the process proceeds to step S38.
- step S35 when it is determined in step S35 that the optimal prediction mode is not the optimal inter prediction mode, that is, when the optimal prediction mode is the optimal intra prediction mode, the predicted image selection unit 48 performs the prediction generated in the optimal intra prediction mode.
- the intra prediction unit 46 is notified of the image selection.
- step S37 the intra prediction unit 46 supplies the intra prediction mode information to the lossless encoding unit 36, and the process proceeds to step S38.
- step S38 the calculation unit 33 performs encoding by subtracting the prediction image supplied from the prediction image selection unit 48 from the image supplied from the screen rearrangement buffer 32.
- the computing unit 33 outputs the resulting image to the orthogonal transform unit 34 as residual information.
- step S39 the encoding unit 12 performs horizontal / vertical orthogonal transformation processing for performing orthogonal transformation processing in the horizontal direction and the vertical direction on the residual information in units of TUs. Details of the horizontal / vertical orthogonal transform processing will be described with reference to FIG.
- step S40 the list determination unit 91 (FIG. 5) of the quantization unit 35 performs the scaling list based on the transform skip information supplied from the skip control unit 50 and the held scaling list in units of TUs. To decide.
- the list determination unit 91 supplies the scaling list to the calculation unit 92 in units of TUs.
- step S41 the calculation unit 92 quantizes the orthogonal transformation processing result supplied from the orthogonal transformation unit 34 using the scaling list supplied from the list determination unit 91 in units of TUs.
- the quantization unit 35 supplies the quantization value obtained as a result of the quantization to the lossless encoding unit 36 and the inverse quantization unit 38.
- step S42 of FIG. 12 the list determination unit 103 (FIG. 7) of the inverse quantization unit 38 is based on the transform skip information supplied from the skip control unit 50 and the held scaling list in units of TUs. To determine the scaling list.
- the list determination unit 103 supplies the scaling list to the calculation unit 104 in units of TUs.
- step S43 the calculation unit 104 dequantizes the quantization value supplied from the calculation unit 92 using the scaling list supplied from the list determination unit 103 in units of TUs.
- the computing unit 104 supplies the orthogonal transform processing result obtained as a result of the inverse quantization to the inverse orthogonal transform unit 39.
- step S44 the encoding unit 12 performs horizontal / vertical inverse orthogonal transform processing for performing inverse orthogonal transform processing in the horizontal direction and the vertical direction on the orthogonal transform processing result based on the transform skip information in units of TUs. Details of the horizontal / vertical inverse orthogonal transform processing will be described with reference to FIG.
- step S45 the addition unit 40 adds the residual information supplied from the vertical direction calculation unit 106 (FIG. 7) of the inverse orthogonal transform unit 39 and the prediction image supplied from the prediction image selection unit 48, and performs decoding. Do.
- the adder 40 supplies the decoded image to the deblock filter 41 and the frame memory 44.
- step S46 the deblocking filter 41 performs a deblocking filtering process on the decoded image supplied from the adding unit 40.
- the deblocking filter 41 supplies the resulting image to the adaptive offset filter 42.
- step S47 the adaptive offset filter 42 performs an adaptive offset filter process on the image supplied from the deblocking filter 41 for each LCU.
- the adaptive offset filter 42 supplies the resulting image to the adaptive loop filter 43. Further, the adaptive offset filter 42 supplies the offset filter information to the lossless encoding unit 36 for each LCU.
- step S48 the adaptive loop filter 43 performs an adaptive loop filter process for each LCU on the image supplied from the adaptive offset filter 42.
- the adaptive loop filter 43 supplies the resulting image to the frame memory 44.
- the adaptive loop filter 43 also supplies the filter coefficient used in the adaptive loop filter process to the lossless encoding unit 36.
- step S49 the frame memory 44 stores the image supplied from the adaptive loop filter 43 and the image supplied from the adder 40.
- An image adjacent to the PU among the images not subjected to the filter processing accumulated in the frame memory 44 is supplied to the intra prediction unit 46 via the switch 45 as a peripheral image.
- the filtered image stored in the frame memory 44 is output to the motion prediction / compensation unit 47 via the switch 45 as a reference image.
- the lossless encoding unit 36 encodes intra prediction mode information or inter prediction mode information, information specifying a motion vector, and a reference image, transform skip information, offset filter information, and filter coefficients. It is losslessly encoded as information.
- step S51 the lossless encoding unit 36 performs lossless encoding on the quantization value supplied from the quantization unit 35. Then, the lossless encoding unit 36 generates encoded data from the encoded information that has been losslessly encoded in the process of step S 50 and the quantized value that has been losslessly encoded, and supplies the encoded data to the accumulation buffer 37.
- step S52 the accumulation buffer 37 temporarily accumulates the encoded data supplied from the lossless encoding unit 36.
- step S53 the rate control unit 49 controls the quantization operation rate of the quantization unit 35 based on the encoded data stored in the storage buffer 37 so that overflow or underflow does not occur. And a process returns to step S12 of FIG. 10, and progresses to step S13.
- FIG. 13 is a flowchart for explaining the horizontal / vertical orthogonal transform processing in step S39 of FIG. This horizontal / vertical orthogonal transformation process is performed in units of TUs.
- step S71 of FIG. 13 the control unit 81 (FIG. 5) of the skip control unit 50 determines whether or not the size of the TU is 4 ⁇ 4 pixels. If it is determined in step S71 that the TU size is 4 ⁇ 4 pixels, the process proceeds to step S72.
- step S72 the control unit 81 generates a horizontal skip-off signal and a vertical skip-off signal, and supplies them to the horizontal calculation unit 71 and the vertical calculation unit 72 as control signals.
- step S ⁇ b> 73 the horizontal calculation unit 71 of the orthogonal transform unit 34 performs horizontal orthogonal transform on the residual information supplied from the calculation unit 33 based on the horizontal skip-off signal supplied from the control unit 81. Do. And the horizontal direction calculating part 71 supplies the orthogonal transformation coefficient obtained as a result to the vertical direction calculating part 72 as a horizontal orthogonal transformation process result.
- step S ⁇ b> 74 the vertical direction computing unit 72 performs vertical orthogonal transformation on the horizontal orthogonal transformation processing result supplied from the horizontal direction computing unit 71 based on the vertical skip-off signal supplied from the control unit 81. I do. Then, the vertical direction calculation unit 72 supplies the orthogonal transform coefficient obtained as a result to the determination unit 82 as a final orthogonal transform processing result.
- step S75 the control unit 81 generates a horizontal skip on signal and a vertical skip off signal, and supplies them to the horizontal direction calculation unit 71 and the vertical direction calculation unit 72 as control signals.
- the horizontal direction calculation unit 71 performs transform skip based on the horizontal skip on signal, and supplies the residual information supplied from the calculation unit 33 to the vertical direction calculation unit 72 as a result of the orthogonal transformation process in the horizontal direction. To do.
- step S76 the vertical direction calculation unit 72 performs vertical orthogonal transform on the horizontal orthogonal transform processing result supplied from the horizontal direction calculation unit 71 based on the vertical skip-off signal supplied from the control unit 81. I do. Then, the vertical direction calculation unit 72 supplies the orthogonal transform coefficient obtained as a result to the determination unit 82 as a final orthogonal transform processing result.
- step S77 the control unit 81 generates a horizontal skip off signal and a vertical skip on signal, and supplies them to the horizontal direction calculation unit 71 and the vertical direction calculation unit 72 as control signals.
- step S78 the horizontal direction calculation unit 71 performs horizontal orthogonal transformation on the residual information supplied from the calculation unit 33 based on the horizontal skip-off signal supplied from the control unit 81. And the horizontal direction calculating part 71 supplies the orthogonal transformation coefficient obtained as a result to the vertical direction calculating part 72 as a horizontal orthogonal transformation process result.
- the vertical direction calculation unit 72 performs transform skip based on the vertical skip on signal supplied from the control unit 81, and finally converts the horizontal orthogonal transformation processing result supplied from the horizontal direction calculation unit 71 into the final orthogonal transformation. The result is supplied to the determination unit 82.
- step S79 the control unit 81 generates a horizontal skip on signal and a vertical skip on signal, and supplies them to the horizontal direction calculation unit 71 and the vertical direction calculation unit 72 as control signals.
- step S80 the horizontal direction calculation unit 71 and the vertical direction calculation unit 72 perform transform skip in the horizontal direction and the vertical direction based on the control signal supplied from the control unit 81. Thereby, the residual information supplied from the calculation unit 33 is supplied to the determination unit 82 as a final orthogonal transform processing result.
- step S81 the determination unit 82 calculates a cost function value for each of the four orthogonal transform processing results supplied from the vertical direction calculation unit 72 in the processing of steps S74, S76, S78, and S80. Determine the optimal transform skip.
- the determination unit 82 supplies the optimal transform skip to the control unit 81, and the process proceeds to step S83.
- step S71 determines the TU size without the horizontal and vertical transform skips.
- step S82 the determination unit 82 determines the optimal transform skip without the horizontal and vertical transform skips.
- the determination unit 82 supplies the optimal transform skip to the control unit 81, and the process proceeds to step S83.
- step S83 the determination unit 82 generates transform skip information indicating the optimal transform skip determined in step S81 or step S82.
- the determination unit 82 supplies the transform skip information to the quantization unit 35, the lossless encoding unit 36, and the skip control unit 51.
- step S84 the control unit 81 supplies a control signal corresponding to the optimum transform skip supplied from the determination unit 82 to the horizontal direction calculation unit 71 and the vertical direction calculation unit 72.
- step S85 the horizontal direction calculation unit 71 and the vertical direction calculation unit 72 perform orthogonal conversion processing in the horizontal direction and the vertical direction based on the control signal corresponding to the optimal transform skip supplied from the control unit 81.
- the vertical direction calculation unit 72 supplies the final orthogonal transformation processing result obtained as a result to the quantization unit 35. And a process returns to step S39 of FIG. 11, and progresses to step S40.
- the optimal transform skip is determined, and then the horizontal and vertical orthogonal transform processing corresponding to the optimal transform skip is performed again. However, it may not be performed.
- the vertical direction calculation unit 72 temporarily holds the final orthogonal transformation processing result, and after the optimum transform skip is determined, the final corresponding to the held optimum transform skip is determined. Output the orthogonal transform processing result.
- FIG. 14 is a flowchart illustrating the horizontal / vertical inverse orthogonal transform process in step S44 of FIG. This horizontal / vertical inverse orthogonal transform process is performed in units of TUs.
- the reception unit 101 (FIG. 7) of the skip control unit 51 receives the transform skip information supplied from the determination unit 82 of FIG. 5.
- step S102 the control unit 102 determines whether the remainder when the transform skip information is divided by 2 is 1.
- step S102 When it is determined in step S102 that the remainder when dividing the transform skip information by 2 is 1, that is, when the transform skip information is 1 or 3, the control unit 102 generates a horizontal skip on signal. To do. Then, the control unit 102 supplies the horizontal skip on signal to the inverse orthogonal transform unit 39 as a control signal.
- the horizontal calculation unit 105 of the inverse orthogonal transform unit 39 performs a transform in the horizontal direction on the orthogonal transform processing result from the calculation unit 104. Then, the horizontal direction calculation unit 105 supplies the orthogonal transformation processing result from the calculation unit 104 to the vertical direction calculation unit 106 as the orthogonal transformation processing result after the horizontal inverse orthogonal transformation processing, and the process proceeds to step S104.
- step S102 when it is determined in step S102 that the remainder when dividing the transform skip information by 2 is not 1, that is, when the transform skip information is 0 or 2, the control unit 102 performs horizontal skip off. Generate a signal. Then, the control unit 102 supplies the horizontal skip-off signal to the inverse orthogonal transform unit 39 as a control signal.
- step S103 the horizontal calculation unit 105 performs horizontal inverse orthogonal transform on the orthogonal transformation processing result from the calculation unit 104 based on the horizontal skip-off signal. Then, the horizontal direction calculation unit 105 supplies the orthogonal transformation process result after the horizontal inverse orthogonal transformation to the vertical direction calculation unit 106 as the orthogonal transformation process result after the horizontal inverse orthogonal transformation process, and the process is performed in step S104. Proceed to
- step S104 the control unit 102 determines whether or not the quotient when the transform skip information supplied from the determination unit 82 is divided by 2 is 1.
- step S104 If it is determined in step S104 that the quotient when the transform skip information is divided by 2 is 1, that is, if the transform skip information is 2 or 3, the control unit 102 generates a vertical skip on signal. . Then, the control unit 102 supplies the vertical skip on signal to the inverse orthogonal transform unit 39 as a control signal.
- the vertical direction calculation unit 106 performs the vertical transform skip on the orthogonal transformation processing result after the horizontal inverse orthogonal transformation processing supplied from the horizontal direction calculation unit 105. Then, the vertical direction calculation unit 106 supplies residual information, which is the result of the orthogonal transformation process after the horizontal inverse orthogonal transformation process, to the addition unit 40 in FIG. And a process returns to step S44 of FIG. 12, and progresses to step S45.
- step S104 when it is determined in step S104 that the quotient obtained by dividing the transform skip information by 2 is not 1, that is, when the transform skip information is 0 or 1, the control unit 102 outputs a vertical skip off signal. Generate. Then, the control unit 102 supplies the vertical skip off signal to the inverse orthogonal transform unit 39 as a control signal.
- step S ⁇ b> 105 the vertical direction computing unit 106 performs vertical inverse orthogonal transformation on the orthogonal transformation processing result after the horizontal inverse orthogonal transformation processing from the horizontal direction computing unit 105 based on the vertical skip-off signal. I do. Then, the vertical direction calculation unit 106 supplies residual information obtained as a result to the addition unit 40. And a process returns to step S44 of FIG. 12, and progresses to step S45.
- the encoding apparatus 10 can perform only one transform skip in the horizontal direction and the vertical direction, the transform skip can be optimized. As a result, encoding efficiency can be improved.
- FIG. 15 is a block diagram illustrating a configuration example of a first embodiment of a decoding device to which the present disclosure is applied, which decodes an encoded stream transmitted from the encoding device 10 in FIG. 1.
- the 15 includes a receiving unit 111, an extracting unit 112, and a decoding unit 113.
- the receiving unit 111 of the decoding device 110 receives the encoded stream transmitted from the encoding device 10 in FIG. 1 and supplies it to the extracting unit 112.
- the extraction unit 112 extracts a parameter set and encoded data from the encoded stream supplied from the receiving unit 111 and supplies the extracted parameter set and encoded data to the decoding unit 113.
- the decoding unit 113 decodes the encoded data supplied from the extraction unit 112 by a method according to the HEVC method. At this time, the decoding unit 113 also refers to the parameter set supplied from the extraction unit 112 as necessary. The decoding unit 113 outputs an image obtained as a result of decoding.
- FIG. 16 is a block diagram illustrating a configuration example of the decoding unit 113 in FIG.
- the decoding unit 113 includes a D / A conversion unit 140, a frame memory 141, a switch 142, an intra prediction unit 143, a motion compensation unit 144, a switch 145, and a skip control unit 146.
- the accumulation buffer 131 of the decoding unit 113 receives and accumulates encoded data from the extraction unit 112 of FIG.
- the accumulation buffer 131 supplies the accumulated encoded data to the lossless decoding unit 132.
- the lossless decoding unit 132 obtains a quantized value and encoded information by performing lossless decoding such as variable length decoding and arithmetic decoding on the encoded data from the accumulation buffer 131.
- the lossless decoding unit 132 supplies the quantized value to the inverse quantization unit 133.
- the lossless decoding unit 132 supplies intra prediction mode information as encoded information to the intra prediction unit 143.
- the lossless decoding unit 132 supplies a motion vector, inter prediction mode information, information for specifying a reference image, and the like to the motion compensation unit 144.
- the lossless decoding unit 132 supplies intra prediction mode information or inter prediction mode information as encoded information to the switch 145.
- the lossless decoding unit 132 supplies offset filter information as encoded information to the adaptive offset filter 137.
- the lossless decoding unit 132 supplies filter coefficients as encoded information to the adaptive loop filter 138.
- the lossless decoding unit 132 supplies transform skip information as encoded information to the skip control unit 146.
- the control unit 146 includes the inverse quantization unit 38, the inverse orthogonal transform unit 39, the addition unit 40, the deblock filter 41, the adaptive offset filter 42, the adaptive loop filter 43, the frame memory 44, the switch 45, and the intra prediction unit 46 illustrated in FIG. The same processing as that of the motion prediction / compensation unit 47 and the skip control unit 51 is performed, whereby the image is decoded.
- the inverse quantization unit 133 is configured similarly to the inverse quantization unit 38 of FIG.
- the inverse quantization unit 133 holds a scaling list for each TU size included in the SPS and PPS supplied from the extraction unit 112 in FIG.
- the inverse quantization unit 133 determines the scaling list in units of TUs based on the transform skip information supplied from the skip control unit 146 and the held scaling list.
- the inverse quantization unit 133 dequantizes the quantization value from the lossless decoding unit 132 using the scaling list in units of TUs.
- the inverse quantization unit 133 supplies the orthogonal transform processing result obtained as a result to the inverse orthogonal transform unit 134.
- the inverse orthogonal transform unit 134 is configured in the same manner as the inverse orthogonal transform unit 39 of FIG.
- the inverse orthogonal transform unit 134 performs a horizontal inverse orthogonal transform process on the orthogonal transform processing result supplied from the inverse quantization unit 133 based on the control signal supplied from the skip control unit 146 in units of TUs. .
- the inverse orthogonal transform unit 134 performs the inverse orthogonal transform process in the vertical direction on the orthogonal transform process result after the inverse orthogonal transform process in the horizontal direction based on the control signal in units of TUs.
- the inverse orthogonal transform unit 134 supplies residual information obtained as a result of the inverse orthogonal transform process in the vertical direction to the addition unit 135.
- the addition unit 135 performs decoding by adding the residual information supplied from the inverse orthogonal transform unit 134 and the prediction image supplied from the switch 145.
- the adder 135 supplies the decoded image to the deblock filter 136 and the frame memory 141.
- the deblock filter 136 performs an adaptive deblock filter process on the image supplied from the adder 135 and supplies the resulting image to the adaptive offset filter 137.
- the adaptive offset filter 137 performs, for each LCU, the type of adaptive offset filter processing represented by the offset filter information on the image after the adaptive deblocking filter processing using the offset represented by the offset filter information from the lossless decoding unit 132. Do.
- the adaptive offset filter 137 supplies the image after the adaptive offset filter processing to the adaptive loop filter 138.
- the adaptive loop filter 138 performs an adaptive loop filter process for each LCU on the image supplied from the adaptive offset filter 137 using the filter coefficient supplied from the lossless decoding unit 132.
- the adaptive loop filter 138 supplies the resulting image to the frame memory 141 and the screen rearrangement buffer 139.
- the screen rearrangement buffer 139 stores the image supplied from the adaptive loop filter 138 in units of frames.
- the screen rearrangement buffer 139 rearranges the stored frame-by-frame images for encoding in the original display order and supplies them to the D / A conversion unit 140.
- the D / A conversion unit 140 performs D / A conversion on the frame-based image supplied from the screen rearrangement buffer 139 and outputs it.
- the frame memory 141 stores the image supplied from the adaptive loop filter 138 and the image supplied from the adding unit 135. An image adjacent to the PU among the images not subjected to the filter processing accumulated in the frame memory 141 is supplied to the intra prediction unit 143 through the switch 142 as a peripheral image. On the other hand, the filtered image stored in the frame memory 141 is supplied to the motion compensation unit 144 via the switch 142 as a reference image.
- the intra prediction unit 143 performs intra prediction processing in the optimal intra prediction mode indicated by the intra prediction mode information supplied from the lossless decoding unit 132, using the peripheral image read from the frame memory 141 via the switch 142.
- the intra prediction unit 143 supplies the prediction image generated as a result to the switch 145.
- the motion compensation unit 144 reads the reference image specified by the information specifying the reference image supplied from the lossless decoding unit 132 from the frame memory 141 via the switch 142.
- the motion compensation unit 144 performs motion compensation processing in the optimal inter prediction mode indicated by the inter prediction mode information supplied from the lossless decoding unit 132, using the motion vector and the reference image supplied from the lossless decoding unit 132.
- the motion compensation unit 144 supplies the predicted image generated as a result to the switch 145.
- the switch 145 supplies the prediction image supplied from the intra prediction unit 143 to the addition unit 135.
- the switch 145 supplies the prediction image supplied from the motion compensation unit 144 to the adding unit 135.
- the skip control unit 146 is configured in the same manner as the skip control unit 51 in FIG.
- the skip control unit 146 receives the transform skip information supplied from the lossless decoding unit 132 and supplies the transform skip information to the inverse quantization unit 133.
- the skip control unit 146 supplies a control signal corresponding to the optimal transform skip represented by the transform skip information to the inverse orthogonal transform unit 134.
- FIG. 17 is a flowchart illustrating image generation processing of the decoding device 110 in FIG.
- the reception unit 111 of the decoding device 110 receives the encoded stream transmitted from the encoding device 10 of FIG. 1 and supplies the encoded stream to the extraction unit 112.
- step S112 the extraction unit 112 extracts encoded data and a parameter set from the encoded stream supplied from the reception unit 111, and supplies the extracted encoded data and parameter set to the decoding unit 113.
- step S113 the decoding unit 113 performs a decoding process for decoding the encoded data supplied from the extraction unit 112 by a method according to the HEVC method, using the parameter set supplied from the extraction unit 112 as necessary. Details of this decoding process will be described with reference to FIG. Then, the process ends.
- FIG. 18 is a flowchart for explaining the details of the decoding process in step S113 of FIG.
- the accumulation buffer 131 (FIG. 16) of the decoding unit 113 receives and accumulates the encoded data in units of frames from the extraction unit 112 of FIG. 15.
- the accumulation buffer 131 supplies the accumulated encoded data to the lossless decoding unit 132.
- step S132 the lossless decoding unit 132 losslessly decodes the encoded data from the accumulation buffer 131 to obtain a quantization value and encoded information.
- the lossless decoding unit 132 supplies the quantized value to the inverse quantization unit 133.
- the lossless decoding unit 132 supplies transform skip information as encoded information to the skip control unit 146.
- the skip control unit 146 supplies transform skip information to the inverse quantization unit 133.
- the lossless decoding unit 132 supplies intra prediction mode information as encoded information to the intra prediction unit 143.
- the lossless decoding unit 132 supplies a motion vector, inter prediction mode information, information for specifying a reference image, and the like to the motion compensation unit 144.
- the lossless decoding unit 132 supplies intra prediction mode information or inter prediction mode information as encoded information to the switch 145.
- the lossless decoding unit 132 supplies offset filter information as encoded information to the adaptive offset filter 137 and supplies filter coefficients to the adaptive loop filter 138.
- step S133 the inverse quantization unit 133 determines a scaling list in units of TUs based on the transform skip information supplied from the skip control unit 146 and the held scaling list.
- step S134 the inverse quantization unit 133 dequantizes the quantization value supplied from the lossless decoding unit 132 using the scaling list in units of TUs.
- the computing unit 104 supplies the orthogonal transform processing result obtained as a result of the inverse quantization to the inverse orthogonal transform unit 134.
- step S135 the decoding unit 113 performs a horizontal / vertical inverse orthogonal transform process similar to that of FIG. 14 on the orthogonal transform process result based on the transform skip information.
- step S136 the motion compensation unit 144 determines whether or not the inter prediction mode information is supplied from the lossless decoding unit 132. If it is determined in step S136 that the inter prediction mode information has been supplied, the process proceeds to step S137.
- step S137 the motion compensation unit 144 reads a reference image based on the reference image specifying information supplied from the lossless decoding unit 132, and uses the motion vector and the reference image to determine the optimal inter prediction mode indicated by the inter prediction mode information. Perform motion compensation processing.
- the motion compensation unit 144 supplies the predicted image generated as a result to the addition unit 135 via the switch 145, and the process proceeds to step S139.
- step S136 determines whether the inter prediction mode information is supplied. If it is determined in step S136 that the inter prediction mode information is supplied, that is, if the intra prediction mode information is supplied to the intra prediction unit 143, the process proceeds to step S138.
- step S138 the intra prediction unit 143 performs an intra prediction process in the intra prediction mode indicated by the intra prediction mode information, using the peripheral image read from the frame memory 141 via the switch 142.
- the intra prediction unit 143 supplies the prediction image generated as a result of the intra prediction process to the addition unit 135 via the switch 145, and the process proceeds to step S139.
- step S139 the adding unit 135 performs decoding by adding the residual information supplied from the inverse orthogonal transform unit 134 and the prediction image supplied from the switch 145.
- the adder 135 supplies the decoded image to the deblock filter 136 and the frame memory 141.
- step S140 the deblocking filter 136 performs deblocking filtering on the image supplied from the adding unit 135 to remove block distortion.
- the deblocking filter 136 supplies the resulting image to the adaptive offset filter 137.
- step S141 the adaptive offset filter 137 performs adaptive offset filter processing for each LCU on the image after the deblocking filter processing by the deblocking filter 136 based on the offset filter information supplied from the lossless decoding unit 132. .
- the adaptive offset filter 137 supplies the image after the adaptive offset filter processing to the adaptive loop filter 138.
- step S142 the adaptive loop filter 138 performs adaptive loop filter processing for each LCU on the image supplied from the adaptive offset filter 137 using the filter coefficient supplied from the lossless decoding unit 132.
- the adaptive loop filter 138 supplies the resulting image to the frame memory 141 and the screen rearrangement buffer 139.
- step S143 the frame memory 141 stores the image supplied from the adding unit 135 and the image supplied from the adaptive loop filter 138.
- An image adjacent to the PU among the images not subjected to the filter processing accumulated in the frame memory 141 is supplied to the intra prediction unit 143 through the switch 142 as a peripheral image.
- the filtered image stored in the frame memory 141 is supplied to the motion compensation unit 144 via the switch 142 as a reference image.
- step S144 the screen rearrangement buffer 139 stores the image supplied from the adaptive loop filter 138 in units of frames, and rearranges the stored frame-by-frame images for encoding in the original display order. To the D / A converter 140.
- step S145 the D / A conversion unit 140 performs D / A conversion on the frame unit image supplied from the screen rearrangement buffer 139 and outputs the image. Then, the process returns to step S113 in FIG. 17 and ends.
- the decoding apparatus 110 can perform only one transform skip in the horizontal direction and the vertical direction. As a result, the encoded stream with improved encoding efficiency can be decoded in the encoding device 10.
- the candidate for the direction of transform skip may be one according to the prediction direction of intra prediction or the shape of PU of inter prediction, not both the horizontal direction and the vertical direction, and not all of one and the other. .
- the control unit 81 in FIG. 5 determines the control signal for determining the optimal transform skip based on the prediction direction of intra prediction or the shape of the PU of inter prediction. To generate.
- the control unit 81 when the optimal prediction mode of the PU corresponding to the TU to be processed is the intra prediction mode, the control unit 81 generates a control signal based on the prediction direction represented by the intra prediction mode.
- the control unit 81 when the prediction direction is close to the vertical direction, the control unit 81 generates only the horizontal skip-on signal and the vertical skip-off signal, and the horizontal skip-off signal and the vertical skip-off signal as control signals.
- the control unit 81 When the prediction direction is close to the horizontal direction, the control unit 81 generates only the horizontal skip off signal and the vertical skip on signal, and the horizontal skip off signal and the vertical skip off signal as control signals.
- the control unit 81 when the prediction direction is not close to the vertical direction or the horizontal direction, the control unit 81 generates only the horizontal skip-on signal and the vertical skip-on signal, and the flat skip-off signal and the vertical skip-off signal as control signals. .
- the control unit 81 when the optimal prediction mode of the PU corresponding to the processing target TU is the inter prediction mode, the control unit 81 generates a control signal based on the shape of the PU having the size represented by the inter prediction mode.
- an inter prediction PU (hereinafter referred to as an inter PU) is formed as shown in FIG. That is, the inter PU is formed by symmetrically dividing a CU as shown in the upper part of FIG. 19 or asymmetrically dividing the CU as shown in the lower part of FIG.
- the inter PU has 2N ⁇ 2N pixels that are the CU itself, N ⁇ 2N pixels obtained by dividing the CU into two symmetrically, or two CUs that are vertically symmetrical.
- the divided 2N ⁇ N pixels can be used.
- the inter PU cannot be an N ⁇ N pixel obtained by dividing the CU into two vertically and horizontally symmetrically. Therefore, for example, when 8 ⁇ 8 pixels are used as the inter PU, the CU needs to be 8 ⁇ 8 pixels instead of 16 ⁇ 16 pixels.
- the inter PU is a 1 / 2N ⁇ 2N pixel (Left) obtained by dividing the CU into two parts so that the left side becomes asymmetrical left and right, or 1 / 2N ⁇ 2N obtained by dividing the CU into two parts so that the right side becomes asymmetrical. It can also be a pixel (Right). Further, the inter PU is a 2N ⁇ 1 / 2N pixel (Upper) obtained by dividing the CU into two parts so that the upper side is asymmetrical in the vertical direction, or 2N ⁇ 1/2 that is divided into two parts so that the lower side is reduced in the vertical direction. It can also be 2N pixels (Lower).
- the minimum size of the CU is 8 ⁇ 8 pixels
- the minimum size of the inter PU is 4 ⁇ 8 pixels or 8 ⁇ 4 pixels.
- the shape of the inter PU formed as described above which is an N ⁇ 2N pixel, 1 / 2N ⁇ 2N pixel (Left), or 1 / 2N ⁇ 2N pixel (Right), is vertically long as shown in A of FIG. It is a rectangle.
- the optimal prediction mode represents such an inter-PU size
- the correlation between pixels arranged in the vertical direction of the encoding target image is high. Therefore, when the shape of the inter PU having the size represented by the optimal prediction mode is a vertically long rectangle, the control unit 81 generates a horizontal skip on signal and a vertical skip off signal so that the transform skip in the horizontal direction is performed. .
- the shape of the inter PU that is 2N ⁇ N pixels, 2N ⁇ 1 / 2N pixels (Upper), or 2N ⁇ 1 / 2N pixels (Lower) is a horizontally long rectangle as shown in FIG.
- the optimal prediction mode represents such an inter-PU size
- the correlation between pixels arranged in the horizontal direction of the image to be encoded is high. Therefore, when the shape of the inter PU having the size represented by the optimal prediction mode is a horizontally long rectangle, the control unit 81 generates a horizontal skip off signal and a vertical skip on signal so that vertical transform skip is performed. .
- the control unit 81 performs horizontal skip so that transform skip in the horizontal direction and the vertical direction is performed. A skip on signal and a vertical skip on signal are generated.
- the encoding apparatus 10 when the transform skip direction candidate is one according to the prediction direction of intra prediction or the shape of the inter PU, the encoding apparatus 10 does not use transform skip information but a transform skip flag. Is set to residual_coding and transmitted. When the transform skip flag indicates the presence of transform skip, the decoding apparatus 110 performs transform skip in the direction corresponding to the prediction direction of intra prediction or the shape of the inter PU.
- the transform skip is enabled when the size of the TU is 4 ⁇ 4 pixels.
- the size of the TU capable of the transform skip is not limited to 4 ⁇ 4 pixels.
- a transform skip may be enabled for a TU of the minimum size, or as described in Non-Patent Document 3, TUs of all sizes.
- Transform skipping may be enabled.
- transform skip may be enabled for a TU having a size equal to or smaller than a predetermined size.
- the transform skip is enabled when the TU size is 4 ⁇ 4 pixels, but the TU size is 4 ⁇ 4 pixels and the skip permission information is 1. In some cases, transform skipping may be enabled.
- FIG. 21 is a block diagram illustrating a configuration example of an encoding unit according to the second embodiment of the encoding device to which the present disclosure is applied.
- the configuration of the encoding unit 160 in FIG. 21 is that the rotation unit 161 is newly provided, and that the lossless encoding unit 162 is provided instead of the lossless encoding unit 36. Different from the configuration.
- the encoding unit 160 rotates the quantized value based on the transform skip information during intra prediction.
- transform skip information output from the skip control unit 50 is input to the rotation unit 161 of the encoding unit 160.
- the intra prediction mode information output from the intra prediction unit 46 is input to the rotation unit 161.
- the rotation unit 161 performs rotation processing for rotating the two-dimensional quantization value output from the quantization unit 35 based on the transform skip information and the intra prediction mode information in units of TUs.
- the optimal prediction mode is the intra prediction mode
- the residual information is small because the correlation between the pixel and the pixel in the peripheral image is high.
- the correlation between the pixel and the pixel in the surrounding image decreases, and the residual information increases. Therefore, when transform skip is performed and the residual information is quantized, the quantized value converted from two-dimensional to one-dimensional by the scanning process is almost 0 on the low-order side, but not on the high-order side. 0. As a result, the encoding efficiency decreases.
- the rotation unit 161 rotates the quantized value in the direction in which the transform skip is performed based on the transform skip information, and the quantized value becomes non-zero on the lower order side and 0 on the higher order side.
- the rotation unit 161 supplies the quantized value after the rotation process to the lossless encoding unit 162.
- the lossless encoding unit 162 performs lossless encoding of the encoded information in the same manner as the lossless encoding unit 36 of FIG. Further, the lossless encoding unit 162 performs lossless encoding on the quantized value after rotation processing supplied from the rotation unit 161. At this time, the lossless encoding unit 162 performs a scan process for changing the two-dimensional quantization value after the rotation process to one dimension, and performs lossless encoding for the one-dimensional quantization value. The scan process is also performed at the time of lossless encoding of the quantized value in the lossless encoding unit 36 of FIG. The lossless encoding unit 162 supplies the encoded information and the quantized value, which are losslessly encoded, to the accumulation buffer 37 as encoded data and accumulates them.
- FIG. 22 is a diagram for explaining the rotation processing by the rotation unit 161.
- the optimal prediction mode is the intra prediction mode and both horizontal and vertical transform skips are performed
- the quantized value of the upper left pixel is 0, and the lower right
- the quantized value of the pixel is non-zero (No Zero (NZ)). That is, the one-dimensional quantized value is 0 on the low-order side and non-zero on the high-order side. Therefore, in such a case, the rotation unit 161 rotates the two-dimensional quantized value by 90 degrees in the horizontal direction and rotates by 90 degrees in the vertical direction, thereby setting the higher order side of the one-dimensional quantized value to 0.
- the low-order side is non-zero.
- the rotation unit 161 rotates the two-dimensional quantization value by 90 degrees in the horizontal direction, thereby setting the higher order side of the one-dimensional quantization value to 0 and setting the lower order side to non-zero. To do.
- the rotation unit 161 rotates the two-dimensional quantization value by 90 degrees in the horizontal direction, thereby setting the higher order side of the one-dimensional quantization value to 0 and setting the lower order side to non-zero. To do.
- step S172 the rotation unit 161 performs rotation processing for rotating the two-dimensional quantization value output from the quantization unit 35 based on the transform skip information in units of TUs. Details of this rotation processing will be described with reference to FIG.
- steps S173 through S181 in FIG. 24 are the same as the processes in steps S42 through S50 in FIG.
- step S182 the lossless encoding unit 162 performs lossless encoding on the quantized value supplied from the rotation unit 161 after the rotation process. Then, the lossless encoding unit 162 generates encoded data from the encoded information that has been losslessly encoded in the process of step S181 and the quantized value that has been losslessly encoded, and supplies the encoded data to the accumulation buffer 37.
- FIG. 25 is a flowchart for explaining the details of the rotation process in step S172 of FIG. This rotation process is performed in units of TU, for example.
- the rotation unit 161 determines whether or not intra prediction mode information is supplied from the intra prediction unit 46. If it is determined in step S200 that intra prediction mode information has been supplied, that is, if the optimal prediction mode is the intra prediction mode, the process proceeds to step S201.
- step S201 the rotation unit 161 determines whether the transform skip information supplied from the skip control unit 50 indicates the presence of a horizontal transform skip.
- step S201 If it is determined in step S201 that there is a horizontal transform skip, the process proceeds to step S202.
- the rotation unit 161 determines whether the transform skip information indicates the presence of vertical transform skip.
- step S203 the rotation unit 161 rotates the quantization value supplied from the quantization unit 35 by 90 degrees in the horizontal direction and the vertical direction.
- the rotation unit 161 supplies the rotated two-dimensional quantized value to the lossless encoding unit 162. Then, the process returns to step S172 in FIG. 23, and the process proceeds to step S173 in FIG.
- step S202 determines whether it represents the presence of a vertical transform skip, that is, a horizontal transform skip has been performed, but a vertical transform skip has not been performed. The process proceeds to step S204.
- step S204 the rotation unit 161 rotates the quantization value supplied from the quantization unit 35 by 90 degrees in the horizontal direction.
- the rotation unit 161 supplies the rotated two-dimensional quantized value to the lossless encoding unit 162. Then, the process returns to step S172 in FIG. 23, and the process proceeds to step S173 in FIG.
- step S201 If it is determined in step S201 that the transform skip information does not represent the presence of horizontal transform skip, the process proceeds to step S205.
- step S205 the rotation unit 161 determines whether the transform skip information indicates the presence of vertical transform skip. If it is determined in step S205 that the vertical transform skip is present, that is, the horizontal transform skip is not performed, but the vertical transform skip is performed, the process is as follows. Proceed to step S206.
- step S206 the rotation unit 161 rotates the quantization value supplied from the quantization unit 35 by 90 degrees in the vertical direction.
- the rotation unit 161 supplies the rotated two-dimensional quantized value to the lossless encoding unit 162. Then, the process returns to step S172 in FIG. 23, and the process proceeds to step S173 in FIG.
- step S205 if it is determined in step S205 that the vertical transform skip is not present, that is, if both the horizontal and vertical transform skips have not been performed, the rotating unit 161 uses the quantization value. Is supplied to the lossless encoding unit 162 as it is. Then, the process returns to step S172 in FIG. 23, and the process proceeds to step S173 in FIG.
- step S200 If it is determined in step S200 that intra prediction mode information is not supplied, that is, if the optimal prediction mode is the inter prediction mode, the rotation unit 161 supplies the quantized value to the lossless encoding unit 162 as it is. . Then, the process returns to step S172 in FIG. 23, and the process proceeds to step S173 in FIG.
- the encoding unit 160 rotates the quantized value in the direction in which the transform skip is performed, and losslessly encodes the rotated quantized value.
- the encoding efficiency is further improved.
- the quantization value after the rotation processing by the rotation unit 161 may be reversely rotated and supplied to the inverse quantization unit 38.
- a rotation unit that performs a rotation opposite to the rotation by the rotation unit 161 is provided before the inverse quantization unit 38.
- the configuration of the second embodiment of the decoding device to which the present disclosure is applied is the same as the configuration of the decoding device 110 in FIG. 15 except for the decoding unit 113. Therefore, only the decoding unit will be described below.
- FIG. 26 is a block diagram illustrating a configuration example of a decoding unit according to the second embodiment of the decoding device to which the present disclosure is applied.
- the decoding unit 180 differs from the configuration of the decoding unit 113 in FIG. 16 in that a rotation unit 181 is newly provided and an inverse quantization unit 182 is provided instead of the inverse quantization unit 133.
- the decoding unit 180 performs rotation opposite to the rotation in the encoding unit 160 on the quantized value based on the transform skip information.
- transform skip information, intra prediction mode information, and quantized values are supplied from the lossless decoding unit 132 to the rotation unit 181 of the decoding unit 180.
- the rotation unit 181 performs a reverse rotation process for rotating the quantized value in the opposite direction to the rotation in the rotation unit 161 based on the transform skip information and the intra prediction mode information in units of TUs.
- the rotation unit 181 rotates the rotation unit 161 by 90 degrees in the horizontal and vertical directions. Conversely, the quantization value is rotated.
- the rotating unit 181 rotates by 90 degrees in the horizontal direction. In contrast to the rotation in the unit 161, the quantization value is rotated.
- the rotating unit 181 rotates 90 degrees in the vertical direction. In contrast to the rotation in the unit 161, the quantization value is rotated.
- the rotation unit 181 supplies the quantized value after the reverse rotation process to the inverse quantization unit 182.
- the inverse quantization unit 182 holds a scaling list for each TU size, similarly to the inverse quantization unit 133 in FIG. Similar to the inverse quantization unit 133, the inverse quantization unit 182 determines a scaling list in units of TUs. The inverse quantization unit 182 inversely quantizes the quantized value after the inverse rotation processing from the rotation unit 181 using a scaling list in units of TUs. The inverse quantization unit 182 supplies the orthogonal transform processing result obtained as a result to the inverse orthogonal transform unit 134.
- FIG. 27 is a flowchart illustrating the decoding process of the decoding unit 180 in FIG.
- step S202 the rotation unit 181 performs reverse rotation processing based on the transform skip information and the intra prediction mode information.
- the reverse rotation process is the same as the rotation process of FIG. 25 except that the direction of rotation is reversed.
- step S203 the inverse quantization unit 182 determines a scaling list in units of TUs based on the transform skip information supplied from the skip control unit 146 and the held scaling list.
- step S204 the dequantization unit 182 dequantizes the quantized value after the reverse rotation process supplied from the rotation unit 181 using the scaling list in units of TUs.
- the computing unit 104 supplies the orthogonal transform processing result obtained as a result of the inverse quantization to the inverse orthogonal transform unit 134.
- steps S205 to S215 Since the processing of steps S205 to S215 is the same as the processing of steps S135 to S145 in FIG.
- the decoding unit 180 rotates the losslessly decoded quantized value in the opposite direction to the encoding unit 160 in the direction in which the transform skip is performed. Thereby, the encoding unit 160 can decode an encoded stream with improved encoding efficiency at the time of intra prediction.
- ⁇ Third Embodiment> (Description of computer to which the present disclosure is applied)
- the series of processes described above can be executed by hardware or can be executed by software.
- a program constituting the software is installed in the computer.
- the computer includes, for example, a general-purpose personal computer capable of executing various functions by installing various programs by installing a computer incorporated in dedicated hardware.
- FIG. 28 is a block diagram showing an example of the hardware configuration of a computer that executes the above-described series of processing by a program.
- a CPU Central Processing Unit
- ROM Read Only Memory
- RAM Random Access Memory
- An input / output interface 205 is further connected to the bus 204.
- An input unit 206, an output unit 207, a storage unit 208, a communication unit 209, and a drive 210 are connected to the input / output interface 205.
- the input unit 206 includes a keyboard, a mouse, a microphone, and the like.
- the output unit 207 includes a display, a speaker, and the like.
- the storage unit 208 includes a hard disk, a nonvolatile memory, and the like.
- the communication unit 209 includes a network interface and the like.
- the drive 210 drives a removable medium 211 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory.
- the CPU 201 loads, for example, the program stored in the storage unit 208 to the RAM 203 via the input / output interface 205 and the bus 204 and executes the program. Is performed.
- the program executed by the computer (CPU 201) can be provided by being recorded in the removable medium 211 as a package medium or the like, for example.
- the program can be provided via a wired or wireless transmission medium such as a local area network, the Internet, or digital satellite broadcasting.
- the program can be installed in the storage unit 208 via the input / output interface 205 by attaching the removable medium 211 to the drive 210.
- the program can be received by the communication unit 209 via a wired or wireless transmission medium and installed in the storage unit 208.
- the program can be installed in the ROM 202 or the storage unit 208 in advance.
- the program executed by the computer may be a program that is processed in time series in the order described in this specification, or in parallel or at a necessary timing such as when a call is made. It may be a program for processing.
- FIG. 29 shows an example of a multi-view image encoding method.
- the multi-viewpoint image includes images of a plurality of viewpoints (views). Multiple views of this multi-viewpoint image are encoded using the base view that encodes and decodes using only the image of its own view without using the image of the other view, and the image of the other view.
- -It consists of a non-base view that performs decoding. For the non-base view, an image of the base view may be used, or an image of another non-base view may be used.
- each view image is encoded / decoded.
- the method of the first embodiment described above is used. You may make it apply. By doing so, it is possible to improve the coding efficiency by optimizing the transform skip.
- flags and parameters used in the method of the first embodiment described above may be shared. More specifically, for example, syntax elements such as SPS, PPS, and residual_coding may be shared in encoding / decoding of each view. Of course, other necessary information may be shared in encoding / decoding of each view.
- FIG. 30 is a diagram illustrating a multi-view image encoding apparatus that performs the above-described multi-view image encoding.
- the multi-view image encoding device 600 includes an encoding unit 601, an encoding unit 602, and a multiplexing unit 603.
- the cocoon encoding unit 601 encodes the base view image and generates a base view image encoded stream.
- the encoding unit 602 encodes the non-base view image and generates a non-base view image encoded stream.
- the multiplexing unit 603 multiplexes the base view image encoded stream generated by the encoding unit 601 and the non-base view image encoded stream generated by the encoding unit 602 to generate a multi-view image encoded stream. To do.
- the encoding device 10 (FIG. 1) can be applied to the encoding unit 601 and the encoding unit 602 of the multi-view image encoding device 600. That is, in the encoding for each view, the encoding efficiency can be improved by optimizing the transform skip. Also, the encoding unit 601 and the encoding unit 602 can perform encoding using the same flags and parameters (for example, syntax elements related to processing between images) (that is, share the flags and parameters). Therefore, it is possible to suppress a reduction in encoding efficiency.
- flags and parameters for example, syntax elements related to processing between images
- FIG. 31 is a diagram illustrating a multi-view image decoding apparatus that performs the above-described multi-view image decoding.
- the multi-view image decoding device 610 includes a demultiplexing unit 611, a decoding unit 612, and a decoding unit 613.
- the demultiplexing unit 611 demultiplexes the multi-view image encoded stream in which the base view image encoded stream and the non-base view image encoded stream are multiplexed, and the base view image encoded stream and the non-base view image The encoded stream is extracted.
- the decoding unit 612 decodes the base view image encoded stream extracted by the demultiplexing unit 611 to obtain a base view image.
- the decoding unit 613 decodes the non-base view image encoded stream extracted by the demultiplexing unit 611 to obtain a non-base view image.
- the decoding device 110 (FIG. 15) can be applied to the decoding unit 612 and the decoding unit 613 of the multi-view image decoding device 610. That is, in decoding for each view, an encoded stream with improved encoding efficiency can be decoded by optimizing transform skip.
- the decoding unit 612 and the decoding unit 613 can perform decoding using the same flags and parameters (for example, syntax elements related to processing between images) (that is, the flags and parameters can be shared). Therefore, it is possible to suppress a reduction in encoding efficiency.
- FIG. 32 shows an example of a hierarchical image encoding method.
- Hierarchical image coding is a method in which image data is divided into a plurality of layers (hierarchized) so as to have a scalable function with respect to a predetermined parameter, and is encoded for each layer.
- Hierarchical image decoding is decoding corresponding to the hierarchical image encoding.
- the hierarchized image includes images of a plurality of hierarchies (layers) having different predetermined parameter values.
- a plurality of layers of this hierarchical image are encoded / decoded using only the image of the own layer without using the image of the other layer, and encoded / decoded using the image of the other layer.
- It consists of a non-base layer (also called enhancement layer) that performs decoding.
- the non-base layer an image of the base layer may be used, or an image of another non-base layer may be used.
- the non-base layer is composed of difference image data (difference data) between its own image and an image of another layer so that redundancy is reduced.
- difference image data difference data
- an image with lower quality than the original image can be obtained using only the base layer data.
- an original image that is, a high-quality image
- image compression information of only the base layer (base layer) is transmitted, and a moving image with low spatiotemporal resolution or poor image quality is reproduced.
- image enhancement information of the enhancement layer is transmitted.
- Image compression information corresponding to the capabilities of the terminal and the network can be transmitted from the server without performing transcoding processing, such as playing a moving image with high image quality.
- the image of each layer is encoded / decoded.
- the method of the first embodiment described above is used. May be applied. By doing so, it is possible to improve the coding efficiency by optimizing the transform skip.
- the flags and parameters used in the method of the first embodiment described above may be shared. More specifically, for example, syntax elements such as SPS, PPS, and residual_coding may be shared in encoding / decoding of each layer. Of course, other necessary information may be shared in encoding / decoding of each layer.
- parameters having a scalable function are arbitrary.
- the spatial resolution as shown in FIG. 33 may be used as the parameter (spatial scalability).
- the resolution of the image is different for each layer. That is, in this case, as shown in FIG. 33, each picture has two layers of a base layer having a spatially lower resolution than the original image and an enhancement layer in which the original spatial resolution can be obtained by combining with the base layer. Is layered.
- this number of hierarchies is an example, and the number of hierarchies can be hierarchized.
- a temporal resolution as shown in FIG. 34 may be applied (temporalabilityscalability).
- this temporal scalability temporary scalability
- the frame rate is different for each layer. That is, in this case, as shown in FIG. 34, each picture is divided into two layers of a base layer having a lower frame rate than the original moving image and an enhancement layer in which the original frame rate can be obtained by combining with the base layer. Layered.
- this number of hierarchies is an example, and the number of hierarchies can be hierarchized.
- a signal-to-noise ratio (SNR (Signal to Noise ratio)) may be applied (SNR ⁇ ⁇ scalability) as a parameter for providing such scalability.
- SNR Signal-to-noise ratio
- the SN ratio is different for each layer. That is, in this case, as shown in FIG. 35, each picture is hierarchized into two layers: a base layer having a lower SNR than the original image and an enhancement layer from which the original SNR is obtained by combining with the base layer.
- this number of hierarchies is an example, and the number of hierarchies can be hierarchized.
- bit depth can also be used as a parameter for providing scalability (bit-depth scalability).
- bit-depth scalability bit depth scalability
- the bit depth differs for each layer.
- the base layer is composed of an 8-bit image, and an enhancement layer is added to the base layer, whereby a 10-bit image can be obtained.
- a chroma format can be used as a parameter for providing scalability (chroma scalability).
- the chroma format differs for each layer.
- the base layer is composed of component images in 4: 2: 0 format, and by adding an enhancement layer (enhancement layer) to this, a component image in 4: 2: 2 format can be obtained. Can be.
- FIG. 36 is a diagram illustrating a hierarchical image encoding apparatus that performs the hierarchical image encoding described above.
- the hierarchical image encoding device 620 includes an encoding unit 621, an encoding unit 622, and a multiplexing unit 623.
- the cocoon encoding unit 621 encodes the base layer image and generates a base layer image encoded stream.
- the encoding unit 622 encodes the non-base layer image and generates a non-base layer image encoded stream.
- the multiplexing unit 623 multiplexes the base layer image encoded stream generated by the encoding unit 621 and the non-base layer image encoded stream generated by the encoding unit 622 to generate a hierarchical image encoded stream. .
- the encoding device 10 (FIG. 1) can be applied to the encoding unit 621 and the encoding unit 622 of the hierarchical image encoding device 620. That is, in the encoding for each layer, the encoding efficiency can be improved by optimizing the transform skip. Also, the encoding unit 621 and the encoding unit 622 can perform control of intra prediction filter processing using the same flags and parameters (for example, syntax elements related to processing between images) (that is, the intra prediction processing). Therefore, it is possible to share a flag and a parameter), and it is possible to suppress a reduction in encoding efficiency.
- flags and parameters for example, syntax elements related to processing between images
- FIG. 37 is a diagram illustrating a hierarchical image decoding apparatus that performs the hierarchical image decoding described above.
- the hierarchical image decoding device 630 includes a demultiplexing unit 631, a decoding unit 632, and a decoding unit 633.
- the demultiplexing unit 631 demultiplexes the hierarchical image encoded stream in which the base layer image encoded stream and the non-base layer image encoded stream are multiplexed, and the base layer image encoded stream and the non-base layer image code Stream.
- the decoding unit 632 decodes the base layer image encoded stream extracted by the demultiplexing unit 631 to obtain a base layer image.
- the decoding unit 633 decodes the non-base layer image encoded stream extracted by the demultiplexing unit 631 to obtain a non-base layer image.
- the decoding device 110 (FIG. 15) can be applied to the decoding unit 632 and the decoding unit 633 of the hierarchical image decoding device 630. That is, in decoding for each layer, it is possible to decode an encoded stream with improved encoding efficiency by optimizing transform skip.
- the decoding unit 612 and the decoding unit 613 can perform decoding using the same flags and parameters (for example, syntax elements related to processing between images) (that is, the flags and parameters can be shared). Therefore, it is possible to suppress a reduction in encoding efficiency.
- FIG. 38 illustrates a schematic configuration of a television apparatus to which the present disclosure is applied.
- the television apparatus 900 includes an antenna 901, a tuner 902, a demultiplexer 903, a decoder 904, a video signal processing unit 905, a display unit 906, an audio signal processing unit 907, a speaker 908, and an external interface unit 909. Furthermore, the television apparatus 900 includes a control unit 910, a user interface unit 911, and the like.
- the tuner 902 selects a desired channel from the broadcast wave signal received by the antenna 901, demodulates it, and outputs the obtained encoded bit stream to the demultiplexer 903.
- the demultiplexer 903 extracts video and audio packets of the program to be viewed from the encoded bit stream, and outputs the extracted packet data to the decoder 904. Further, the demultiplexer 903 supplies a packet of data such as EPG (Electronic Program Guide) to the control unit 910. If scrambling is being performed, descrambling is performed by a demultiplexer or the like.
- EPG Electronic Program Guide
- the decoder 904 performs packet decoding processing, and outputs video data generated by the decoding processing to the video signal processing unit 905 and audio data to the audio signal processing unit 907.
- the video signal processing unit 905 performs noise removal, video processing according to user settings, and the like on the video data.
- the video signal processing unit 905 generates video data of a program to be displayed on the display unit 906, image data by processing based on an application supplied via a network, and the like.
- the video signal processing unit 905 generates video data for displaying a menu screen for selecting an item and the like, and superimposes the video data on the video data of the program.
- the video signal processing unit 905 generates a drive signal based on the video data generated in this way, and drives the display unit 906.
- the display unit 906 drives a display device (for example, a liquid crystal display element or the like) based on a drive signal from the video signal processing unit 905 to display a program video or the like.
- a display device for example, a liquid crystal display element or the like
- the audio signal processing unit 907 performs predetermined processing such as noise removal on the audio data, performs D / A conversion processing and amplification processing on the processed audio data, and outputs the audio data to the speaker 908.
- the external interface unit 909 is an interface for connecting to an external device or a network, and transmits and receives data such as video data and audio data.
- a user interface unit 911 is connected to the control unit 910.
- the user interface unit 911 includes an operation switch, a remote control signal receiving unit, and the like, and supplies an operation signal corresponding to a user operation to the control unit 910.
- the control unit 910 is configured using a CPU (Central Processing Unit), a memory, and the like.
- the memory stores a program executed by the CPU, various data necessary for the CPU to perform processing, EPG data, data acquired via a network, and the like.
- the program stored in the memory is read and executed by the CPU at a predetermined timing such as when the television device 900 is activated.
- the CPU executes each program to control each unit so that the television device 900 operates in accordance with the user operation.
- the television device 900 includes a bus 912 for connecting the tuner 902, the demultiplexer 903, the video signal processing unit 905, the audio signal processing unit 907, the external interface unit 909, and the control unit 910.
- the decoder 904 is provided with the function of the decoding apparatus (decoding method) of the present application. For this reason, it is possible to decode an encoded stream with improved encoding efficiency by optimizing transform skip.
- FIG. 39 illustrates a schematic configuration of a mobile phone to which the present disclosure is applied.
- the cellular phone 920 includes a communication unit 922, an audio codec 923, a camera unit 926, an image processing unit 927, a demultiplexing unit 928, a recording / reproducing unit 929, a display unit 930, and a control unit 931. These are connected to each other via a bus 933.
- an antenna 921 is connected to the communication unit 922, and a speaker 924 and a microphone 925 are connected to the audio codec 923. Further, an operation unit 932 is connected to the control unit 931.
- the mobile phone 920 performs various operations such as transmission / reception of voice signals, transmission / reception of e-mail and image data, image shooting, and data recording in various modes such as a voice call mode and a data communication mode.
- the voice signal generated by the microphone 925 is converted into voice data and compressed by the voice codec 923 and supplied to the communication unit 922.
- the communication unit 922 performs audio data modulation processing, frequency conversion processing, and the like to generate a transmission signal.
- the communication unit 922 supplies a transmission signal to the antenna 921 and transmits it to a base station (not shown).
- the communication unit 922 performs amplification, frequency conversion processing, demodulation processing, and the like of the reception signal received by the antenna 921, and supplies the obtained audio data to the audio codec 923.
- the audio codec 923 performs data expansion of the audio data and conversion into an analog audio signal and outputs the result to the speaker 924.
- the control unit 931 receives character data input by operating the operation unit 932 and displays the input characters on the display unit 930.
- the control unit 931 generates mail data based on a user instruction or the like in the operation unit 932 and supplies the mail data to the communication unit 922.
- the communication unit 922 performs mail data modulation processing, frequency conversion processing, and the like, and transmits the obtained transmission signal from the antenna 921.
- the communication unit 922 performs amplification, frequency conversion processing, demodulation processing, and the like of the reception signal received by the antenna 921, and restores mail data. This mail data is supplied to the display unit 930 to display the mail contents.
- the mobile phone 920 can also store the received mail data in a storage medium by the recording / playback unit 929.
- the storage medium is any rewritable storage medium.
- the storage medium is a removable memory such as a RAM, a semiconductor memory such as a built-in flash memory, a hard disk, a magnetic disk, a magneto-optical disk, an optical disk, a USB (Universal Serial Bus) memory, or a memory card.
- the image data generated by the camera unit 926 is supplied to the image processing unit 927.
- the image processing unit 927 performs encoding processing of image data and generates encoded data.
- the demultiplexing unit 928 multiplexes the encoded data generated by the image processing unit 927 and the audio data supplied from the audio codec 923 by a predetermined method, and supplies the multiplexed data to the communication unit 922.
- the communication unit 922 performs modulation processing and frequency conversion processing of multiplexed data, and transmits the obtained transmission signal from the antenna 921.
- the communication unit 922 performs amplification, frequency conversion processing, demodulation processing, and the like of the reception signal received by the antenna 921, and restores multiplexed data. This multiplexed data is supplied to the demultiplexing unit 928.
- the demultiplexing unit 928 performs demultiplexing of the multiplexed data, and supplies the encoded data to the image processing unit 927 and the audio data to the audio codec 923.
- the image processing unit 927 performs a decoding process on the encoded data to generate image data.
- the image data is supplied to the display unit 930 and the received image is displayed.
- the audio codec 923 converts the audio data into an analog audio signal, supplies the analog audio signal to the speaker 924, and outputs the received audio.
- the image processing unit 927 is provided with the functions of the encoding device and the decoding device (encoding method and decoding method) of the present application. For this reason, encoding efficiency can be improved by optimizing a transform skip. Also, an encoded stream with improved encoding efficiency can be decoded by optimizing transform skip.
- FIG. 40 illustrates a schematic configuration of a recording / reproducing apparatus to which the present disclosure is applied.
- the recording / reproducing apparatus 940 records, for example, audio data and video data of a received broadcast program on a recording medium, and provides the recorded data to the user at a timing according to a user instruction.
- the recording / reproducing device 940 can also acquire audio data and video data from another device, for example, and record them on a recording medium. Further, the recording / reproducing apparatus 940 decodes and outputs the audio data and video data recorded on the recording medium, thereby enabling image display and audio output on the monitor apparatus or the like.
- the recording / reproducing apparatus 940 includes a tuner 941, an external interface unit 942, an encoder 943, an HDD (Hard Disk Drive) unit 944, a disk drive 945, a selector 946, a decoder 947, an OSD (On-Screen Display) unit 948, a control unit 949, A user interface unit 950 is included.
- Tuner 941 selects a desired channel from a broadcast signal received by an antenna (not shown).
- the tuner 941 outputs an encoded bit stream obtained by demodulating the received signal of a desired channel to the selector 946.
- the external interface unit 942 includes at least one of an IEEE 1394 interface, a network interface unit, a USB interface, a flash memory interface, and the like.
- the external interface unit 942 is an interface for connecting to an external device, a network, a memory card, and the like, and receives data such as video data and audio data to be recorded.
- the encoder 943 performs encoding by a predetermined method when the video data and audio data supplied from the external interface unit 942 are not encoded, and outputs an encoded bit stream to the selector 946.
- the HDD unit 944 records content data such as video and audio, various programs, and other data on a built-in hard disk, and reads them from the hard disk during playback.
- the disk drive 945 records and reproduces signals with respect to the mounted optical disk.
- An optical disk such as a DVD disk (DVD-Video, DVD-RAM, DVD-R, DVD-RW, DVD + R, DVD + RW, etc.), a Blu-ray (registered trademark) disk, or the like.
- the selector 946 selects one of the encoded bit streams from the tuner 941 or the encoder 943 and supplies it to either the HDD unit 944 or the disk drive 945 when recording video or audio. Further, the selector 946 supplies the encoded bit stream output from the HDD unit 944 or the disk drive 945 to the decoder 947 at the time of reproduction of video and audio.
- the decoder 947 performs a decoding process on the encoded bit stream.
- the decoder 947 supplies the video data generated by performing the decoding process to the OSD unit 948.
- the decoder 947 outputs audio data generated by performing the decoding process.
- the OSD unit 948 generates video data for displaying a menu screen for selecting an item and the like, and superimposes it on the video data output from the decoder 947 and outputs the video data.
- a user interface unit 950 is connected to the control unit 949.
- the user interface unit 950 includes an operation switch, a remote control signal receiving unit, and the like, and supplies an operation signal corresponding to a user operation to the control unit 949.
- the control unit 949 is configured using a CPU, a memory, and the like.
- the memory stores programs executed by the CPU and various data necessary for the CPU to perform processing.
- the program stored in the memory is read and executed by the CPU at a predetermined timing such as when the recording / reproducing apparatus 940 is activated.
- the CPU executes the program to control each unit so that the recording / reproducing device 940 operates according to the user operation.
- the decoder 947 is provided with the function of the decoding apparatus (decoding method) of the present application. For this reason, it is possible to decode an encoded stream with improved encoding efficiency by optimizing transform skip.
- FIG. 41 illustrates a schematic configuration of an imaging apparatus to which the present disclosure is applied.
- the imaging device 960 images a subject, displays an image of the subject on a display unit, and records it on a recording medium as image data.
- the imaging device 960 includes an optical block 961, an imaging unit 962, a camera signal processing unit 963, an image data processing unit 964, a display unit 965, an external interface unit 966, a memory unit 967, a media drive 968, an OSD unit 969, and a control unit 970. Have. In addition, a user interface unit 971 is connected to the control unit 970. Furthermore, the image data processing unit 964, the external interface unit 966, the memory unit 967, the media drive 968, the OSD unit 969, the control unit 970, and the like are connected via a bus 972.
- the optical block 961 is configured using a focus lens, a diaphragm mechanism, and the like.
- the optical block 961 forms an optical image of the subject on the imaging surface of the imaging unit 962.
- the imaging unit 962 is configured using a CCD or CMOS image sensor, generates an electrical signal corresponding to the optical image by photoelectric conversion, and supplies the electrical signal to the camera signal processing unit 963.
- the camera signal processing unit 963 performs various camera signal processing such as knee correction, gamma correction, and color correction on the electrical signal supplied from the imaging unit 962.
- the camera signal processing unit 963 supplies the image data after the camera signal processing to the image data processing unit 964.
- the image data processing unit 964 performs an encoding process on the image data supplied from the camera signal processing unit 963.
- the image data processing unit 964 supplies the encoded data generated by performing the encoding process to the external interface unit 966 and the media drive 968. Further, the image data processing unit 964 performs a decoding process on the encoded data supplied from the external interface unit 966 and the media drive 968.
- the image data processing unit 964 supplies the image data generated by performing the decoding process to the display unit 965. Further, the image data processing unit 964 superimposes the processing for supplying the image data supplied from the camera signal processing unit 963 to the display unit 965 and the display data acquired from the OSD unit 969 on the image data. To supply.
- the OSD unit 969 generates display data such as a menu screen and icons made up of symbols, characters, or figures and outputs them to the image data processing unit 964.
- the external interface unit 966 includes, for example, a USB input / output terminal, and is connected to a printer when printing an image.
- a drive is connected to the external interface unit 966 as necessary, a removable medium such as a magnetic disk or an optical disk is appropriately mounted, and a computer program read from them is installed as necessary.
- the external interface unit 966 has a network interface connected to a predetermined network such as a LAN or the Internet.
- the control unit 970 reads encoded data from the media drive 968 in accordance with an instruction from the user interface unit 971, and supplies the encoded data to the other device connected via the network from the external interface unit 966. it can.
- the control unit 970 may acquire encoded data and image data supplied from another device via the network via the external interface unit 966 and supply the acquired data to the image data processing unit 964. it can.
- any readable / writable removable medium such as a magnetic disk, a magneto-optical disk, an optical disk, or a semiconductor memory is used.
- the recording medium may be any type of removable medium, and may be a tape device, a disk, or a memory card. Of course, a non-contact IC (Integrated Circuit) card may be used.
- media drive 968 and the recording medium may be integrated and configured by a non-portable storage medium such as a built-in hard disk drive or an SSD (Solid State Drive).
- a non-portable storage medium such as a built-in hard disk drive or an SSD (Solid State Drive).
- the control unit 970 is configured using a CPU.
- the memory unit 967 stores a program executed by the control unit 970, various data necessary for the control unit 970 to perform processing, and the like.
- the program stored in the memory unit 967 is read and executed by the control unit 970 at a predetermined timing such as when the imaging device 960 is activated.
- the control unit 970 controls each unit so that the imaging device 960 performs an operation according to a user operation by executing a program.
- the image data processing unit 964 is provided with the functions of the encoding apparatus and decoding apparatus (encoding method and decoding method) of the present application. For this reason, encoding efficiency can be improved by optimizing a transform skip. Also, an encoded stream with improved encoding efficiency can be decoded by optimizing transform skip.
- scalable coding is used for selection of data to be transmitted, for example, as in the example shown in FIG.
- the distribution server 1002 reads the scalable encoded data stored in the scalable encoded data storage unit 1001, and via the network 1003, the personal computer 1004, the AV device 1005, the tablet This is distributed to the terminal device such as the device 1006 and the mobile phone 1007.
- the distribution server 1002 selects and transmits encoded data of appropriate quality according to the capability of the terminal device, the communication environment, and the like. Even if the distribution server 1002 transmits unnecessarily high-quality data, the terminal device does not always obtain a high-quality image, and may cause a delay or an overflow. Moreover, there is a possibility that the communication band is unnecessarily occupied or the load on the terminal device is unnecessarily increased. On the other hand, even if the distribution server 1002 transmits unnecessarily low quality data, there is a possibility that an image with sufficient image quality cannot be obtained in the terminal device. Therefore, the distribution server 1002 appropriately reads and transmits the scalable encoded data stored in the scalable encoded data storage unit 1001 as encoded data having an appropriate quality with respect to the capability and communication environment of the terminal device. .
- the scalable encoded data storage unit 1001 stores scalable encoded data (BL + EL) 1011 encoded in a scalable manner.
- the scalable encoded data (BL + EL) 1011 is encoded data including both a base layer and an enhancement layer, and is a data that can be decoded to obtain both a base layer image and an enhancement layer image. It is.
- the distribution server 1002 selects an appropriate layer according to the capability of the terminal device that transmits data, the communication environment, and the like, and reads the data of the layer. For example, the distribution server 1002 reads high-quality scalable encoded data (BL + EL) 1011 from the scalable encoded data storage unit 1001 and transmits it to the personal computer 1004 and the tablet device 1006 with high processing capability as they are. . On the other hand, for example, the distribution server 1002 extracts base layer data from the scalable encoded data (BL + EL) 1011 for the AV device 1005 and the cellular phone 1007 having a low processing capability, and performs scalable encoding. Although it is data of the same content as the data (BL + EL) 1011, it is transmitted as scalable encoded data (BL) 1012 having a lower quality than the scalable encoded data (BL + EL) 1011.
- BL scalable encoded data
- scalable encoded data By using scalable encoded data in this way, the amount of data can be easily adjusted, so that the occurrence of delay and overflow can be suppressed, and the unnecessary increase in the load on the terminal device and communication medium can be suppressed. be able to.
- scalable encoded data (BL + EL) 1011 since scalable encoded data (BL + EL) 1011 has reduced redundancy between layers, the amount of data can be reduced as compared with the case where encoded data of each layer is used as individual data. . Therefore, the storage area of the scalable encoded data storage unit 1001 can be used more efficiently.
- the hardware performance of the terminal device varies depending on the device.
- the application which a terminal device performs is also various, the capability of the software is also various.
- the network 1003 serving as a communication medium can be applied to any communication network including wired, wireless, or both, such as the Internet and a LAN (Local Area Network), and has various data transmission capabilities. Furthermore, there is a risk of change due to other communications.
- the distribution server 1002 communicates with the terminal device that is the data transmission destination before starting data transmission, and the hardware performance of the terminal device, the performance of the application (software) executed by the terminal device, etc. Information regarding the capability of the terminal device and information regarding the communication environment such as the available bandwidth of the network 1003 may be obtained. The distribution server 1002 may select an appropriate layer based on the information obtained here.
- the layer extraction may be performed by the terminal device.
- the personal computer 1004 may decode the transmitted scalable encoded data (BL + EL) 1011 and display a base layer image or an enhancement layer image. Further, for example, the personal computer 1004 extracts the base layer scalable encoded data (BL) 1012 from the transmitted scalable encoded data (BL + EL) 1011 and stores it or transfers it to another device. The base layer image may be displayed after decoding.
- the numbers of the scalable encoded data storage unit 1001, the distribution server 1002, the network 1003, and the terminal devices are arbitrary.
- the example in which the distribution server 1002 transmits data to the terminal device has been described, but the usage example is not limited to this.
- the data transmission system 1000 may be any system as long as it transmits a scalable encoded data to a terminal device by selecting an appropriate layer according to the capability of the terminal device or a communication environment. Can be applied to the system.
- scalable coding is used for transmission via a plurality of communication media, for example, as shown in FIG.
- a broadcast station 1101 transmits base layer scalable encoded data (BL) 1121 by terrestrial broadcasting 1111.
- the broadcast station 1101 transmits enhancement layer scalable encoded data (EL) 1122 via an arbitrary network 1112 including a wired or wireless communication network or both (for example, packetized transmission).
- BL base layer scalable encoded data
- EL enhancement layer scalable encoded data
- the terminal apparatus 1102 has a reception function of the terrestrial broadcast 1111 broadcast by the broadcast station 1101 and receives base layer scalable encoded data (BL) 1121 transmitted via the terrestrial broadcast 1111.
- the terminal apparatus 1102 further has a communication function for performing communication via the network 1112, and receives enhancement layer scalable encoded data (EL) 1122 transmitted via the network 1112.
- BL base layer scalable encoded data
- EL enhancement layer scalable encoded data
- the terminal device 1102 decodes the base layer scalable encoded data (BL) 1121 acquired via the terrestrial broadcast 1111 according to, for example, a user instruction, and obtains or stores a base layer image. Or transmit to other devices.
- BL base layer scalable encoded data
- the terminal device 1102 for example, in response to a user instruction, the base layer scalable encoded data (BL) 1121 acquired via the terrestrial broadcast 1111 and the enhancement layer scalable encoded acquired via the network 1112 Data (EL) 1122 is combined to obtain scalable encoded data (BL + EL), or decoded to obtain an enhancement layer image, stored, or transmitted to another device.
- BL base layer scalable encoded data
- EL enhancement layer scalable encoded acquired via the network 1112 Data
- the scalable encoded data can be transmitted via a communication medium that is different for each layer, for example. Therefore, the load can be distributed, and the occurrence of delay and overflow can be suppressed.
- the communication medium used for transmission may be selected for each layer. For example, scalable encoded data (BL) 1121 of a base layer having a relatively large amount of data is transmitted via a communication medium having a wide bandwidth, and scalable encoded data (EL) 1122 having a relatively small amount of data is transmitted. You may make it transmit via a communication medium with a narrow bandwidth. Further, for example, the communication medium for transmitting the enhancement layer scalable encoded data (EL) 1122 is switched between the network 1112 and the terrestrial broadcast 1111 according to the available bandwidth of the network 1112. May be. Of course, the same applies to data of an arbitrary layer.
- the number of layers is arbitrary, and the number of communication media used for transmission is also arbitrary.
- the number of terminal devices 1102 serving as data distribution destinations is also arbitrary.
- broadcasting from the broadcasting station 1101 has been described as an example, but the usage example is not limited to this.
- the data transmission system 1100 can be applied to any system as long as it is a system that divides scalable encoded data into a plurality of layers and transmits them through a plurality of lines.
- scalable encoding is used for storing encoded data as in the example shown in FIG. 44, for example.
- the imaging device 1201 performs scalable coding on the image data obtained by imaging the subject 1211, and obtains scalable coded data (BL + EL) 1221 as a scalable coded data storage device 1202. To supply.
- the scalable encoded data storage device 1202 stores the scalable encoded data (BL + EL) 1221 supplied from the imaging device 1201 with quality according to the situation. For example, in the normal case, the scalable encoded data storage device 1202 extracts base layer data from the scalable encoded data (BL + EL) 1221, and the base layer scalable encoded data ( BL) 1222. On the other hand, for example, in the case of attention, the scalable encoded data storage device 1202 stores scalable encoded data (BL + EL) 1221 with high quality and a large amount of data.
- the scalable encoded data storage device 1202 can store an image with high image quality only when necessary, so that an increase in the amount of data can be achieved while suppressing a reduction in the value of the image due to image quality degradation. And the use efficiency of the storage area can be improved.
- the imaging device 1201 is a surveillance camera.
- the monitoring target for example, an intruder
- the content of the captured image is likely to be unimportant, so reduction of the data amount is given priority, and the image data (scalable coding) Data) is stored in low quality.
- the image quality is given priority and the image data (scalable) (Encoded data) is stored with high quality.
- whether it is normal time or attention time may be determined by the scalable encoded data storage device 1202 analyzing an image, for example.
- the imaging apparatus 1201 may make a determination, and the determination result may be transmitted to the scalable encoded data storage device 1202.
- the criterion for determining whether the time is normal or noting is arbitrary, and the content of the image as the criterion is arbitrary. Of course, conditions other than the contents of the image can also be used as the criterion. For example, it may be switched according to the volume or waveform of the recorded sound, may be switched at every predetermined time, or may be switched by an external instruction such as a user instruction.
- the number of states is arbitrary, for example, normal, slightly attention, attention, very attention, etc.
- three or more states may be switched.
- the upper limit number of states to be switched depends on the number of layers of scalable encoded data.
- the imaging apparatus 1201 may determine the number of layers for scalable coding according to the state. For example, in a normal case, the imaging apparatus 1201 may generate base layer scalable encoded data (BL) 1222 with low quality and a small amount of data, and supply the scalable encoded data storage apparatus 1202 to the scalable encoded data storage apparatus 1202. For example, when attention is paid, the imaging device 1201 generates scalable encoded data (BL + EL) 1221 having a high quality and a large amount of data, and supplies the scalable encoded data storage device 1202 to the scalable encoded data storage device 1202. May be.
- BL base layer scalable encoded data
- BL + EL scalable encoded data
- the monitoring camera has been described as an example.
- the use of the imaging system 1200 is arbitrary and is not limited to the monitoring camera.
- FIG. 45 illustrates an example of a schematic configuration of a video set to which the present disclosure is applied.
- the video set 1300 shown in FIG. 45 has such a multi-functional configuration, and a device having a function relating to image encoding and decoding (either or both of them) can be used for the function. It is a combination of devices having other related functions.
- the video set 1300 includes a module group such as a video module 1311, an external memory 1312, a power management module 1313, and a front end module 1314, and an associated module 1321, a camera 1322, a sensor 1323, and the like. And a device having a function.
- a cocoon module is a component that has several functions that are related to each other and that have a coherent function.
- the specific physical configuration is arbitrary. For example, a plurality of processors each having a function, electronic circuit elements such as resistors and capacitors, and other devices arranged on a wiring board or the like can be considered. . It is also possible to combine the module with another module, a processor, or the like to form a new module.
- the video module 1311 is a combination of configurations having functions related to image processing, and includes an application processor, a video processor, a broadband modem 1333, and an RF module 1334.
- the processor is a configuration in which a configuration having a predetermined function is integrated on a semiconductor chip by an SoC (System On Chip), and for example, there is also a system LSI (Large Scale Integration) or the like.
- the configuration having the predetermined function may be a logic circuit (hardware configuration), a CPU, a ROM, a RAM, and the like, and a program (software configuration) executed using them. , Or a combination of both.
- a processor has a logic circuit and a CPU, ROM, RAM, etc., a part of the function is realized by a logic circuit (hardware configuration), and other functions are executed by the CPU (software configuration) It may be realized by.
- the application processor 1331 in FIG. 45 is a processor that executes an application related to image processing.
- the application executed in the application processor 1331 not only performs arithmetic processing to realize a predetermined function, but also can control the internal and external configurations of the video module 1311 such as the video processor 1332 as necessary. .
- the video processor 1332 is a processor having a function related to image encoding / decoding (one or both of them).
- the broadband modem 1333 is a processor (or module) that performs processing related to wired or wireless (or both) broadband communication performed via a broadband line such as the Internet or a public telephone line network.
- the broadband modem 1333 digitally modulates data to be transmitted (digital signal) to convert it into an analog signal, or demodulates the received analog signal to convert it into data (digital signal).
- the broadband modem 1333 can digitally modulate and demodulate arbitrary information such as image data processed by the video processor 1332, a stream obtained by encoding the image data, an application program, setting data, and the like.
- the RF module 1334 is a module that performs frequency conversion, modulation / demodulation, amplification, filter processing, and the like on an RF (Radio RF Frequency) signal transmitted and received via an antenna. For example, the RF module 1334 generates an RF signal by performing frequency conversion or the like on the baseband signal generated by the broadband modem 1333. Further, for example, the RF module 1334 generates a baseband signal by performing frequency conversion or the like on the RF signal received via the front end module 1314.
- RF Radio RF Frequency
- the application processor 1331 and the video processor 1332 may be integrated into a single processor.
- the external memory 1312 is a module having a storage device that is provided outside the video module 1311 and is used by the video module 1311.
- the storage device of the external memory 1312 may be realized by any physical configuration, but is generally used for storing a large amount of data such as image data in units of frames. For example, it is desirable to realize it with a relatively inexpensive and large-capacity semiconductor memory such as DRAM (Dynamic Random Access Memory).
- the power management module 1313 manages and controls power supply to the video module 1311 (each component in the video module 1311).
- the front end module 1314 is a module that provides the RF module 1334 with a front end function (a circuit on a transmitting / receiving end on the antenna side). As illustrated in FIG. 45, the front end module 1314 includes, for example, an antenna unit 1351, a filter 1352, and an amplifying unit 1353.
- Antenna unit 1351 has an antenna for transmitting and receiving a radio signal and its peripheral configuration.
- the antenna unit 1351 transmits the signal supplied from the amplification unit 1353 as a radio signal, and supplies the received radio signal to the filter 1352 as an electric signal (RF signal).
- the filter 1352 performs a filtering process on the RF signal received via the antenna unit 1351 and supplies the processed RF signal to the RF module 1334.
- the amplifying unit 1353 amplifies the RF signal supplied from the RF module 1334 and supplies the amplified RF signal to the antenna unit 1351.
- Connectivity 1321 is a module having a function related to connection with the outside.
- the physical configuration of the connectivity 1321 is arbitrary.
- the connectivity 1321 has a configuration having a communication function other than the communication standard supported by the broadband modem 1333, an external input / output terminal, and the like.
- the communication 1321 is compliant with wireless communication standards such as Bluetooth (registered trademark), IEEE 802.11 (for example, Wi-Fi (Wireless Fidelity, registered trademark)), NFC (Near Field Communication), IrDA (InfraRed Data Association), etc. You may make it have a module which has a function, an antenna etc. which transmit / receive the signal based on the standard.
- the connectivity 1321 has a module having a communication function compliant with a wired communication standard such as USB (Universal Serial Bus), HDMI (registered trademark) (High-Definition Multimedia Interface), or a terminal compliant with the standard. You may do it.
- the connectivity 1321 may have other data (signal) transmission functions such as analog input / output terminals.
- the connectivity 1321 may include a data (signal) transmission destination device.
- the drive 1321 reads and writes data to and from a recording medium such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory (not only a removable medium drive, but also a hard disk, SSD (Solid State Drive) NAS (including Network Attached Storage) and the like.
- the connectivity 1321 may include an image or audio output device (a monitor, a speaker, or the like).
- the eyelid camera 1322 is a module having a function of capturing an image of a subject and obtaining image data of the subject.
- Image data obtained by imaging by the camera 1322 is supplied to, for example, a video processor 1332 and encoded.
- the sensor 1323 includes, for example, a voice sensor, an ultrasonic sensor, an optical sensor, an illuminance sensor, an infrared sensor, an image sensor, a rotation sensor, an angle sensor, an angular velocity sensor, a velocity sensor, an acceleration sensor, an inclination sensor, a magnetic identification sensor, an impact sensor, It is a module having an arbitrary sensor function such as a temperature sensor.
- the data detected by the sensor 1323 is supplied to the application processor 1331 and used by an application or the like.
- the configuration described above as a module may be realized as a processor, or conversely, the configuration described as a processor may be realized as a module.
- the present disclosure can be applied to the video processor 1332 as described later. Accordingly, the video set 1300 can be implemented as a set to which the present disclosure is applied.
- FIG. 46 illustrates an example of a schematic configuration of the video processor 1332 (FIG. 45) to which the present disclosure is applied.
- the video processor 1332 receives the input of the video signal and the audio signal, encodes them in a predetermined method, decodes the encoded video data and audio data, A function of reproducing and outputting an audio signal.
- the video processor 1332 includes a video input processing unit 1401, a first image enlargement / reduction unit 1402, a second image enlargement / reduction unit 1403, a video output processing unit 1404, a frame memory 1405, and a memory control unit 1406.
- the video processor 1332 includes an encoding / decoding engine 1407, video ES (ElementaryElementStream) buffers 1408A and 1408B, and audio ES buffers 1409A and 1409B.
- the video processor 1332 includes an audio encoder 1410, an audio decoder 1411, a multiplexing unit (MUX (Multiplexer)) 1412, a demultiplexing unit (DMUX (Demultiplexer)) 1413, and a stream buffer 1414.
- MUX Multiplexing unit
- DMUX Demultiplexer
- the video input processing unit 1401 acquires a video signal input from, for example, the connectivity 1321 (FIG. 45) and converts it into digital image data.
- the first image enlargement / reduction unit 1402 performs format conversion, image enlargement / reduction processing, and the like on the image data.
- the second image enlargement / reduction unit 1403 performs image enlargement / reduction processing on the image data in accordance with the format of the output destination via the video output processing unit 1404, or is the same as the first image enlargement / reduction unit 1402. Format conversion and image enlargement / reduction processing.
- the video output processing unit 1404 performs format conversion, conversion to an analog signal, and the like on the image data and outputs the reproduced video signal to, for example, the connectivity 1321 (FIG. 45).
- the frame memory 1405 is a memory for image data shared by the video input processing unit 1401, the first image scaling unit 1402, the second image scaling unit 1403, the video output processing unit 1404, and the encoding / decoding engine 1407. .
- the frame memory 1405 is realized as a semiconductor memory such as a DRAM, for example.
- the memory control unit 1406 receives the synchronization signal from the encoding / decoding engine 1407, and controls the writing / reading access to the frame memory 1405 according to the access schedule to the frame memory 1405 written in the access management table 1406A.
- the access management table 1406A is updated by the memory control unit 1406 in accordance with processing executed by the encoding / decoding engine 1407, the first image enlargement / reduction unit 1402, the second image enlargement / reduction unit 1403, and the like.
- the encoding / decoding engine 1407 performs encoding processing of image data and decoding processing of a video stream that is data obtained by encoding the image data. For example, the encoding / decoding engine 1407 encodes the image data read from the frame memory 1405 and sequentially writes the data as a video stream in the video ES buffer 1408A. Further, for example, the video stream is sequentially read from the video ES buffer 1408B, decoded, and sequentially written in the frame memory 1405 as image data.
- the encoding / decoding engine 1407 uses the frame memory 1405 as a work area in the encoding and decoding. Also, the encoding / decoding engine 1407 outputs a synchronization signal to the memory control unit 1406, for example, at a timing at which processing for each macroblock is started.
- the video ES buffer 1408A buffers the video stream generated by the encoding / decoding engine 1407 and supplies the buffered video stream to the multiplexing unit (MUX) 1412.
- the video ES buffer 1408B buffers the video stream supplied from the demultiplexer (DMUX) 1413 and supplies the buffered video stream to the encoding / decoding engine 1407.
- the audio ES buffer 1409A buffers the audio stream generated by the audio encoder 1410 and supplies the buffered audio stream to the multiplexing unit (MUX) 1412.
- the audio ES buffer 1409B buffers the audio stream supplied from the demultiplexer (DMUX) 1413 and supplies the buffered audio stream to the audio decoder 1411.
- the audio encoder 1410 converts, for example, an audio signal input from the connectivity 1321 (FIG. 45), for example, into a digital format, and encodes the audio signal according to a predetermined method such as the MPEG audio method or the AC3 (Audio Code number 3) method.
- the audio encoder 1410 sequentially writes an audio stream, which is data obtained by encoding an audio signal, in the audio ES buffer 1409A.
- the audio decoder 1411 decodes the audio stream supplied from the audio ES buffer 1409B, performs conversion to an analog signal, for example, and supplies the reproduced audio signal to, for example, the connectivity 1321 (FIG. 45).
- Multiplexer (MUX) 1412 multiplexes the video stream and the audio stream.
- the multiplexing method (that is, the format of the bit stream generated by multiplexing) is arbitrary.
- the multiplexing unit (MUX) 1412 can also add predetermined header information or the like to the bit stream. That is, the multiplexing unit (MUX) 1412 can convert the stream format by multiplexing. For example, the multiplexing unit (MUX) 1412 multiplexes the video stream and the audio stream to convert it into a transport stream that is a bit stream in a transfer format. Further, for example, the multiplexing unit (MUX) 1412 multiplexes the video stream and the audio stream, thereby converting the data into file format data (file data) for recording.
- the demultiplexing unit (DMUX) 1413 demultiplexes the bit stream in which the video stream and the audio stream are multiplexed by a method corresponding to the multiplexing by the multiplexing unit (MUX) 1412. That is, the demultiplexer (DMUX) 1413 extracts the video stream and the audio stream from the bit stream read from the stream buffer 1414 (separates the video stream and the audio stream). That is, the demultiplexer (DMUX) 1413 can convert the stream format by demultiplexing (inverse conversion of the conversion by the multiplexer (MUX) 1412). For example, the demultiplexing unit (DMUX) 1413 obtains the transport stream supplied from, for example, the connectivity 1321 and the broadband modem 1333 (both in FIG.
- the demultiplexer (DMUX) 1413 obtains the file data read from various recording media by the connectivity 1321 (FIG. 45) via the stream buffer 1414 and demultiplexes the file data, for example. It can be converted into a video stream and an audio stream.
- DMUX demultiplexer
- the stream buffer 1414 buffers the bit stream.
- the stream buffer 1414 buffers the transport stream supplied from the multiplexing unit (MUX) 1412 and, for example, at the predetermined timing or based on a request from the outside, for example, the connectivity 1321 or the broadband modem 1333 (whichever Are also supplied to FIG.
- MUX multiplexing unit
- the stream buffer 1414 buffers the file data supplied from the multiplexing unit (MUX) 1412, and at a predetermined timing or based on an external request, for example, the connectivity 1321 (FIG. 45) or the like. To be recorded on various recording media.
- MUX multiplexing unit
- the stream buffer 1414 buffers the transport stream acquired through, for example, the connectivity 1321 and the broadband modem 1333 (both in FIG. 45), and performs reverse processing at a predetermined timing or based on an external request or the like.
- the data is supplied to a multiplexing unit (DMUX) 1413.
- DMUX multiplexing unit
- the stream buffer 1414 buffers file data read from various recording media in, for example, the connectivity 1321 (FIG. 45), and the demultiplexing unit at a predetermined timing or based on an external request or the like. (DMUX) 1413.
- DMUX demultiplexing unit
- a video signal input to the video processor 1332 from the connectivity 1321 (FIG. 45) or the like is converted into digital image data of a predetermined format such as 4: 2: 2Y / Cb / Cr format in the video input processing unit 1401.
- the data is sequentially written into the frame memory 1405.
- This digital image data is read by the first image enlargement / reduction unit 1402 or the second image enlargement / reduction unit 1403, and format conversion to a predetermined method such as 4: 2: 0Y / Cb / Cr method and enlargement / reduction processing are performed. Is written again in the frame memory 1405.
- This image data is encoded by the encoding / decoding engine 1407 and written as a video stream in the video ES buffer 1408A.
- an audio signal input to the video processor 1332 from the connectivity 1321 (FIG. 45) or the like is encoded by the audio encoder 1410 and written as an audio stream in the audio ES buffer 1409A.
- the video stream of the video ES buffer 1408A and the audio stream of the audio ES buffer 1409A are read and multiplexed by the multiplexing unit (MUX) 1412 and converted into a transport stream or file data.
- the transport stream generated by the multiplexing unit (MUX) 1412 is buffered in the stream buffer 1414 and then output to the external network via, for example, the connectivity 1321 and the broadband modem 1333 (both of which are shown in FIG. 45).
- the file data generated by the multiplexing unit (MUX) 1412 is buffered in the stream buffer 1414, and then output to, for example, the connectivity 1321 (FIG. 45) and recorded on various recording media.
- the transport stream input from the external network to the video processor 1332 via the connectivity 1321 or the broadband modem 1333 is buffered in the stream buffer 1414 and then demultiplexed (DMUX). 1413 is demultiplexed.
- DMUX demultiplexed
- file data read from various recording media in the connectivity 1321 (FIG. 45) and input to the video processor 1332 is buffered in the stream buffer 1414 and then demultiplexed by the demultiplexer (DMUX) 1413. It becomes. That is, the transport stream or file data input to the video processor 1332 is separated into a video stream and an audio stream by the demultiplexer (DMUX) 1413.
- the audio stream is supplied to the audio decoder 1411 via the audio ES buffer 1409B and decoded to reproduce the audio signal.
- the video stream is written to the video ES buffer 1408B, and then sequentially read and decoded by the encoding / decoding engine 1407, and written to the frame memory 1405.
- the decoded image data is enlarged / reduced by the second image enlargement / reduction unit 1403 and written to the frame memory 1405.
- the decoded image data is read out to the video output processing unit 1404, format-converted to a predetermined system such as 4: 2: 2Y / Cb / Cr system, and further converted into an analog signal to be converted into a video signal. Is played out.
- the present disclosure when the present disclosure is applied to the video processor 1332 configured as described above, the present disclosure according to each of the above-described embodiments may be applied to the encoding / decoding engine 1407. That is, for example, the encoding / decoding engine 1407 may have the functions of the encoding device and the decoding device according to the first embodiment. In this way, the video processor 1332 can obtain the same effects as those described above with reference to FIGS.
- the present disclosure (that is, the functions of the image encoding device and the image decoding device according to each embodiment described above) may be realized by hardware such as a logic circuit, It may be realized by software such as an embedded program, or may be realized by both of them.
- FIG. 47 illustrates another example of a schematic configuration of the video processor 1332 (FIG. 45) to which the present disclosure is applied.
- the video processor 1332 has a function of encoding and decoding video data by a predetermined method.
- the video processor 1332 includes a control unit 1511, a display interface 1512, a display engine 1513, an image processing engine 1514, and an internal memory 1515.
- the video processor 1332 includes a codec engine 1516, a memory interface 1517, a multiplexing / demultiplexing unit (MUX DMUX) 1518, a network interface 1519, and a video interface 1520.
- MUX DMUX multiplexing / demultiplexing unit
- the eyelid control unit 1511 controls the operation of each processing unit in the video processor 1332 such as the display interface 1512, the display engine 1513, the image processing engine 1514, and the codec engine 1516.
- the control unit 1511 includes, for example, a main CPU 1531, a sub CPU 1532, and a system controller 1533.
- the main CPU 1531 executes a program and the like for controlling the operation of each processing unit in the video processor 1332.
- the main CPU 1531 generates a control signal according to the program and supplies it to each processing unit (that is, controls the operation of each processing unit).
- the sub CPU 1532 plays an auxiliary role of the main CPU 1531.
- the sub CPU 1532 executes a child process such as a program executed by the main CPU 1531, a subroutine, or the like.
- the system controller 1533 controls operations of the main CPU 1531 and the sub CPU 1532 such as designating a program to be executed by the main CPU 1531 and the sub CPU 1532.
- the display interface 1512 outputs image data to, for example, the connectivity 1321 (FIG. 45) under the control of the control unit 1511.
- the display interface 1512 converts image data of digital data into an analog signal, and outputs it to a monitor device or the like of the connectivity 1321 (FIG. 45) as a reproduced video signal or as image data of the digital data.
- the display engine 1513 Under the control of the control unit 1511, the display engine 1513 performs various conversion processes such as format conversion, size conversion, color gamut conversion, and the like so as to match the image data with hardware specifications such as a monitor device that displays the image. I do.
- the eyelid image processing engine 1514 performs predetermined image processing such as filter processing for improving image quality on the image data under the control of the control unit 1511.
- the internal memory 1515 is a memory provided inside the video processor 1332 that is shared by the display engine 1513, the image processing engine 1514, and the codec engine 1516.
- the internal memory 1515 is used, for example, for data exchange performed between the display engine 1513, the image processing engine 1514, and the codec engine 1516.
- the internal memory 1515 stores data supplied from the display engine 1513, the image processing engine 1514, or the codec engine 1516, and stores the data as needed (eg, upon request). This is supplied to the image processing engine 1514 or the codec engine 1516.
- the internal memory 1515 may be realized by any storage device, but is generally used for storing a small amount of data such as image data or parameters in units of blocks. It is desirable to realize a semiconductor memory having a relatively small capacity but a high response speed (for example, as compared with the external memory 1312) such as “Static Random Access Memory”.
- the codec engine 1516 performs processing related to encoding and decoding of image data.
- the encoding / decoding scheme supported by the codec engine 1516 is arbitrary, and the number thereof may be one or plural.
- the codec engine 1516 may be provided with codec functions of a plurality of encoding / decoding schemes, and may be configured to perform encoding of image data or decoding of encoded data using one selected from them.
- the codec engine 1516 includes, for example, MPEG-2 video 1541, AVC / H.2641542, HEVC / H.2651543, HEVC / H.265 (Scalable) 1544, as function blocks for processing related to the codec.
- HEVC / H.265 (Multi-view) 1545 and MPEG-DASH 1551 are included.
- “MPEG-2” Video 1541 is a functional block that encodes and decodes image data in the MPEG-2 format.
- AVC / H.2641542 is a functional block that encodes and decodes image data using the AVC method.
- HEVC / H.2651543 is a functional block that encodes and decodes image data using the HEVC method.
- HEVC / H.265 (Scalable) 1544 is a functional block that performs scalable encoding and scalable decoding of image data using the HEVC method.
- HEVC / H.265 (Multi-view) 1545 is a functional block that multi-view encodes or multi-view decodes image data using the HEVC method.
- MPEG-DASH 1551 is a functional block that transmits and receives image data in the MPEG-DASH (MPEG-Dynamic Adaptive Streaming over HTTP) method.
- MPEG-DASH is a technology for streaming video using HTTP (HyperText Transfer Protocol), and selects and transmits appropriate data from multiple encoded data with different resolutions prepared in advance in segments. This is one of the features.
- MPEG-DASH 1551 generates a stream compliant with the standard, controls transmission of the stream, and the like.
- MPEG-2 Video 1541 to HEVC / H.265 (Multi-view) 1545 described above are used. Is used.
- the memory interface 1517 is an interface for the external memory 1312. Data supplied from the image processing engine 1514 or the codec engine 1516 is supplied to the external memory 1312 via the memory interface 1517. The data read from the external memory 1312 is supplied to the video processor 1332 (the image processing engine 1514 or the codec engine 1516) via the memory interface 1517.
- a multiplexing / demultiplexing unit (MUX DMUX) 1518 multiplexes and demultiplexes various data related to images such as a bit stream of encoded data, image data, and a video signal.
- This multiplexing / demultiplexing method is arbitrary.
- the multiplexing / demultiplexing unit (MUX DMUX) 1518 can not only combine a plurality of data into one but also add predetermined header information or the like to the data.
- the multiplexing / demultiplexing unit (MUX DMUX) 1518 not only divides one data into a plurality of data but also adds predetermined header information or the like to each divided data. it can.
- the multiplexing / demultiplexing unit (MUX DMUX) 1518 can convert the data format by multiplexing / demultiplexing.
- the multiplexing / demultiplexing unit (MUX DMUX) 1518 multiplexes the bitstream, thereby transporting the transport stream, which is a bit stream in a transfer format, or data in a file format for recording (file data).
- the transport stream which is a bit stream in a transfer format, or data in a file format for recording (file data).
- file data file format for recording
- the network interface 1519 is an interface for, for example, a broadband modem 1333 and connectivity 1321 (both are FIG. 45).
- the video interface 1520 is an interface for, for example, the connectivity 1321 and the camera 1322 (both are FIG. 45).
- the transport stream is transmitted to the multiplexing / demultiplexing unit (MUX DMUX via the network interface 1519).
- MUX DMUX multiplexing / demultiplexing unit
- the codec engine 1516 For example, the image data obtained by decoding by the codec engine 1516 is subjected to predetermined image processing by the image processing engine 1514, subjected to predetermined conversion by the display engine 1513, and connected to, for example, the connectivity 1321 (see FIG. 45), and the image is displayed on the monitor.
- image data obtained by decoding by the codec engine 1516 is re-encoded by the codec engine 1516, multiplexed by a multiplexing / demultiplexing unit (MUX DMUX) 1518, converted into file data, and video
- MUX DMUX multiplexing / demultiplexing unit
- the data is output to, for example, the connectivity 1321 (FIG. 45) via the interface 1520 and recorded on various recording media.
- the file data of the encoded data obtained by encoding the image data read from the recording medium (not shown) by the connectivity 1321 (FIG. 45) or the like is multiplexed / demultiplexed via the video interface 1520. Is supplied to a unit (MUX DMUX) 1518, demultiplexed, and decoded by the codec engine 1516. Image data obtained by decoding by the codec engine 1516 is subjected to predetermined image processing by the image processing engine 1514, subjected to predetermined conversion by the display engine 1513, and, for example, connectivity 1321 via the display interface 1512 (FIG. 45). And the image is displayed on the monitor.
- MUX DMUX MUX DMUX
- image data obtained by decoding by the codec engine 1516 is re-encoded by the codec engine 1516, multiplexed by the multiplexing / demultiplexing unit (MUX DMUX) 1518, and converted into a transport stream,
- MUX DMUX multiplexing / demultiplexing unit
- the connectivity 1321 and the broadband modem 1333 are supplied via the network interface 1519 and transmitted to another device (not shown).
- image data and other data are exchanged between the processing units in the video processor 1332 using, for example, the internal memory 1515 and the external memory 1312.
- the power management module 1313 controls power supply to the control unit 1511, for example.
- the present disclosure when the present disclosure is applied to the video processor 1332 configured as described above, the present disclosure according to each embodiment described above may be applied to the codec engine 1516. That is, for example, the codec engine 1516 may have a functional block that realizes the encoding device and the decoding device according to the first embodiment. Further, for example, by the codec engine 1516 doing this, the video processor 1332 can obtain the same effect as described above with reference to FIGS. 1 to 20.
- the present disclosure (that is, the functions of the image encoding device and the image decoding device according to each of the embodiments described above) may be realized by hardware such as a logic circuit, or an embedded program. It may be realized by software such as the above, or may be realized by both of them.
- the configuration of the video processor 1332 is arbitrary and may be other than the two examples described above.
- the video processor 1332 may be configured as one semiconductor chip, but may be configured as a plurality of semiconductor chips. For example, a three-dimensional stacked LSI in which a plurality of semiconductors are stacked may be used. Further, it may be realized by a plurality of LSIs.
- the video set 1300 can be incorporated into various devices that process image data.
- the video set 1300 can be incorporated in the television device 900 (FIG. 38), the mobile phone 920 (FIG. 39), the recording / reproducing device 940 (FIG. 40), the imaging device 960 (FIG. 41), or the like.
- the apparatus can obtain the same effects as those described above with reference to FIGS.
- the video set 1300 includes, for example, terminal devices such as the personal computer 1004, the AV device 1005, the tablet device 1006, and the mobile phone 1007 in the data transmission system 1000 in FIG. 42, the broadcasting station 1101 in the data transmission system 1100 in FIG. It can also be incorporated into the terminal device 1102, the imaging device 1201 in the imaging system 1200 of FIG. 44, the scalable encoded data storage device 1202, and the like.
- terminal devices such as the personal computer 1004, the AV device 1005, the tablet device 1006, and the mobile phone 1007 in the data transmission system 1000 in FIG. 42, the broadcasting station 1101 in the data transmission system 1100 in FIG. It can also be incorporated into the terminal device 1102, the imaging device 1201 in the imaging system 1200 of FIG. 44, the scalable encoded data storage device 1202, and the like.
- the apparatus can obtain the same effects as those described above with reference to FIGS.
- each configuration of the video set 1300 described above can be implemented as a configuration to which the present disclosure is applied as long as it includes the video processor 1332.
- the video processor 1332 can be implemented as a video processor to which the present disclosure is applied.
- the processor, the video module 1311, and the like indicated by the dotted line 1341 can be implemented as a processor, a module, or the like to which the present disclosure is applied.
- the video module 1311, the external memory 1312, the power management module 1313, and the front end module 1314 can be combined and implemented as a video unit 1361 to which the present disclosure is applied. In any case, the same effects as those described above with reference to FIGS. 1 to 20 can be obtained.
- any configuration including the video processor 1332 can be incorporated into various devices that process image data, as in the case of the video set 1300.
- a video processor 1332 a processor indicated by a dotted line 1341, a video module 1311, or a video unit 1361, a television device 900 (FIG. 38), a mobile phone 920 (FIG. 39), a recording / playback device 940 (FIG. 40), Imaging device 960 (FIG. 41), terminal devices such as personal computer 1004, AV device 1005, tablet device 1006, and mobile phone 1007 in data transmission system 1000 in FIG. 42, broadcast station 1101 and terminal in data transmission system 1100 in FIG.
- the apparatus 1102 can be incorporated into the apparatus 1102, the imaging apparatus 1201 in the imaging system 1200 of FIG. 44, the scalable encoded data storage apparatus 1202, and the like. Then, by incorporating any configuration to which the present disclosure is applied, the apparatus can obtain the same effects as those described above with reference to FIGS. 1 to 20 as in the case of the video set 1300. .
- the method for transmitting such information is not limited to such an example.
- these pieces of information may be transmitted or recorded as separate data associated with the encoded data without being multiplexed with the encoded data.
- the term “associate” means that an image (which may be a part of an image such as a slice or a block) included in the bitstream and information corresponding to the image can be linked at the time of decoding. Means. That is, the information may be transmitted on a transmission path different from the encoded data.
- the information may be recorded on a recording medium different from the encoded data (or another recording area of the same recording medium). Furthermore, the information and the encoded data may be associated with each other in an arbitrary unit such as a plurality of frames, one frame, or a part of the frame.
- the system means a set of a plurality of components (devices, modules (parts), etc.), and it does not matter whether all the components are in the same housing. Accordingly, a plurality of devices housed in separate housings and connected via a network and a single device housing a plurality of modules in one housing are all systems. .
- the present disclosure can be applied to an encoding device and a decoding device of an encoding method other than the HEVC method capable of performing transform skip.
- the present disclosure also relates to a case where an encoded stream is received via a network medium such as satellite broadcasting, cable TV, the Internet, or a mobile phone, or is processed on a storage medium such as an optical, magnetic disk, or flash memory.
- a network medium such as satellite broadcasting, cable TV, the Internet, or a mobile phone
- a storage medium such as an optical, magnetic disk, or flash memory.
- the present invention can be applied to an encoding device and a decoding device used in the above.
- the present disclosure can take a cloud computing configuration in which one function is shared by a plurality of devices via a network and is jointly processed.
- each step described in the above flowchart can be executed by one device or can be shared by a plurality of devices.
- the plurality of processes included in the one step can be executed by being shared by a plurality of apparatuses in addition to being executed by one apparatus.
- the present disclosure can have the following configurations.
- a decoding apparatus comprising: an inverse orthogonal transform unit that performs one transform skip on a difference between a predicted image of the image and the image in which one transform skip in the horizontal direction and the vertical direction is performed.
- the inverse orthogonal transform unit is configured to perform the other inverse orthogonal transform on the difference obtained by performing one transform skip in the horizontal direction and the vertical direction.
- the inverse orthogonal transform unit performs the one transform skip based on transform skip information for identifying which transform skip in the horizontal direction or the vertical direction has been performed on the difference.
- the inverse orthogonal transform unit performs the one transform skip based on a transform skip flag that identifies that transform skip has been performed on the difference, and a prediction direction of intra prediction of the predicted image.
- the inverse orthogonal transform unit performs the one transform skip based on a transform skip flag for identifying that a transform skip has been performed on the difference and a shape of an inter prediction block of the prediction image.
- An inverse quantization unit that performs inverse quantization using a quantization matrix that is transformed in the column direction without changing in the row direction with respect to the quantized difference that is subjected to horizontal transform skip is further provided.
- the inverse orthogonal transform unit is configured to perform horizontal transform skip on the difference inversely quantized by the inverse quantization unit, according to any one of (1) to (5).
- Decoding device (7) Further provided is an inverse quantization unit that performs inverse quantization using a quantization matrix that is subjected to vertical transform skip and is quantized so that the quantized difference does not change in the column direction but changes in the row direction.
- the inverse orthogonal transform unit is configured to perform transform skip in the vertical direction with respect to the difference inversely quantized by the inverse quantization unit. Any one of (1) to (6), Decoding device.
- a lossless decoding unit that performs lossless decoding of the lossless encoding result of the difference that has been subjected to one transform skip in the horizontal direction and the vertical direction and rotated to one of the skips;
- a rotation unit that rotates the difference losslessly decoded by the lossless decoding unit in one of the horizontal direction and the vertical direction;
- the inverse orthogonal transform unit is configured to perform one transform skip in the horizontal direction and the vertical direction with respect to the difference rotated by the rotation unit.
- the decryption device A decoding method comprising: an inverse orthogonal transform step of performing one transform skip on a difference between a predicted image of the image and the image in which one transform skip in the horizontal direction and the vertical direction is performed.
- An encoding apparatus comprising: an orthogonal transform unit that performs one transform skip in a horizontal direction and a vertical direction on a difference between a predicted image of the image and the image.
- the orthogonal transform unit is configured to perform the other orthogonal transform on the difference.
- the encoding device according to (12).
- (14) A transmission unit for transmitting a transform skip flag for identifying that the transform skip has been performed on the difference by the orthogonal transform unit; The encoding device according to (11) or (12), wherein the orthogonal transform unit selects the one based on a prediction direction of intra prediction of the predicted image.
- (15) A transmission unit for transmitting a transform skip flag for identifying that the transform skip has been performed on the difference by the orthogonal transform unit; The encoding device according to (11) or (12), wherein the orthogonal transform unit selects the one based on a shape of an inter prediction block of the prediction image.
- a rotation unit that rotates the difference subjected to transform skip by the orthogonal transform unit in one of the horizontal direction and the vertical direction;
- the encoding device according to any one of (11) to (17), further including: a lossless encoding unit that performs lossless encoding of the difference rotated by the rotation unit.
- the encoding apparatus according to (18), wherein the prediction image is configured to be generated by intra prediction.
- the encoding device An encoding method including an orthogonal transform step of performing one transform skip in one of a horizontal direction and a vertical direction on a difference between a predicted image of the image and the image.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
HEVC(High Efficiency Video Coding)と呼ばれる符号化方式の標準化が進められている。2013年10月現在、Draftとして非特許文献1が発行されている。
(符号化装置の第1実施の形態の構成例)
図1は、本開示を適用した符号化装置の第1実施の形態の構成例を示すブロック図である。
図2は、スケーリングリストの伝送を説明する図である。
図3は、図1の符号化部12の構成例を示すブロック図である。
図4は、HEVC方式における符号化単位であるCoding UNIT(CU)を説明する図である。
図5は、図3の直交変換部34、量子化部35、およびスキップ制御部50の構成例を示すブロック図である。
図6は、図5のリスト決定部91によるスケーリングリストの決定方法を説明する図である。
図7は、図3の逆量子化部38、逆直交変換部39、およびスキップ制御部51の構成例を示すブロック図である。
図8と図9は、residual_codingのシンタクスの例を示す図である。
図10は、図1の符号化装置10のストリーム生成処理を説明するフローチャートである。
図15は、図1の符号化装置10から伝送される符号化ストリームを復号する、本開示を適用した復号装置の第1実施の形態の構成例を示すブロック図である。
図16は、図15の復号部113の構成例を示すブロック図である。
図17は、図15の復号装置110の画像生成処理を説明するフローチャートである。
(符号化装置の第2実施の形態の符号化部の構成例)
本開示を適用した符号化装置の第2実施の形態の構成は、符号化部12を除いて、図1の符号化装置10の構成と同一である。従って、以下では、符号化部についてのみ説明する。
図22は、回転部161による回転処理を説明する図である。
図23および図24は、図21の符号化部160の符号化処理を説明するフローチャートである。
本開示を適用した復号装置の第2実施の形態の構成は、復号部113を除いて、図15の復号装置110の構成と同一である。従って、以下では、復号部についてのみ説明する。
図27は、図26の復号部180の復号処理を説明するフローチャートである。
(本開示を適用したコンピュータの説明)
上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
(多視点画像符号化・多視点画像復号への適用)
上述した一連の処理は、多視点画像符号化・多視点画像復号に適用することができる。図29は、多視点画像符号化方式の一例を示す。
図30は、上述した多視点画像符号化を行う多視点画像符号化装置を示す図である。図30に示されるように、多視点画像符号化装置600は、符号化部601、符号化部602、および多重化部603を有する。
図31は、上述した多視点画像復号を行う多視点画像復号装置を示す図である。図31に示されるように、多視点画像復号装置610は、逆多重化部611、復号部612、および復号部613を有する。
(階層画像符号化・階層画像復号への適用)
上述した一連の処理は、階層画像符号化・階層画像復号(スケーラブル符号化・スケーラブル復号)に適用することができる。図32は、階層画像符号化方式の一例を示す。
このような階層画像符号化・階層画像復号(スケーラブル符号化・スケーラブル復号)において、スケーラブル(scalable)機能を有するパラメータは、任意である。例えば、図33に示されるような空間解像度をそのパラメータとしてもよい(spatial scalability)。このスペーシャルスケーラビリティ(spatial scalability)の場合、レイヤ毎に画像の解像度が異なる。つまり、この場合、図33に示されるように、各ピクチャが、元の画像より空間的に低解像度のベースレイヤと、ベースレイヤと合成することにより元の空間解像度が得られるエンハンスメントレイヤの2階層に階層化される。もちろん、この階層数は一例であり、任意の階層数に階層化することができる。
図36は、上述した階層画像符号化を行う階層画像符号化装置を示す図である。図36に示されるように、階層画像符号化装置620は、符号化部621、符号化部622、および多重化部623を有する。
図37は、上述した階層画像復号を行う階層画像復号装置を示す図である。図37に示されるように、階層画像復号装置630は、逆多重化部631、復号部632、および復号部633を有する。
(テレビジョン装置の構成例)
図38は、本開示を適用したテレビジョン装置の概略構成を例示している。テレビジョン装置900は、アンテナ901、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、表示部906、音声信号処理部907、スピーカ908、外部インタフェース部909を有している。さらに、テレビジョン装置900は、制御部910、ユーザインタフェース部911等を有している。
(携帯電話機の構成例)
図39は、本開示を適用した携帯電話機の概略構成を例示している。携帯電話機920は、通信部922、音声コーデック923、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、制御部931を有している。これらは、バス933を介して互いに接続されている。
(記録再生装置の構成例)
図40は、本開示を適用した記録再生装置の概略構成を例示している。記録再生装置940は、例えば受信した放送番組のオーディオデータとビデオデータを、記録媒体に記録して、その記録されたデータをユーザの指示に応じたタイミングでユーザに提供する。また、記録再生装置940は、例えば他の装置からオーディオデータやビデオデータを取得し、それらを記録媒体に記録させることもできる。さらに、記録再生装置940は、記録媒体に記録されているオーディオデータやビデオデータを復号して出力することで、モニタ装置等において画像表示や音声出力を行うことができるようにする。
(撮像装置の構成例)
図41は、本開示を適用した撮像装置の概略構成を例示している。撮像装置960は、被写体を撮像し、被写体の画像を表示部に表示させたり、それを画像データとして、記録媒体に記録する。
(第1のシステム)
次に、スケーラブル符号化(階層符号化)されたスケーラブル符号化データの具体的な利用例について説明する。スケーラブル符号化は、例えば、図42に示される例のように、伝送するデータの選択のために利用される。
また、スケーラブル符号化は、例えば、図43に示される例のように、複数の通信媒体を介する伝送のために利用される。
また、スケーラブル符号化は、例えば、図44に示される例のように、符号化データの記憶に利用される。
(実施のその他の例)
以上において本開示を適用する装置やシステム等の例を説明したが、本開示は、これに限らず、このような装置またはシステムを構成する装置に搭載するあらゆる構成、例えば、システムLSI(Large Scale Integration)等としてのプロセッサ、複数のプロセッサ等を用いるモジュール、複数のモジュール等を用いるユニット、ユニットにさらにその他の機能を付加したセット等(すなわち、装置の一部の構成)として実施することもできる。
本開示をセットとして実施する場合の例について、図45を参照して説明する。図45は、本開示を適用したビデオセットの概略的な構成の一例を示している。
図46は、本開示を適用したビデオプロセッサ1332(図45)の概略的な構成の一例を示している。
図47は、本開示を適用したビデオプロセッサ1332(図45)の概略的な構成の他の例を示している。図47の例の場合、ビデオプロセッサ1332は、ビデオデータを所定の方式で符号化・復号する機能を有する。
水平方向および垂直方向の一方のトランスフォームスキップが行われた、画像の予測画像と前記画像の差分に対して、その一方のトランスフォームスキップを行う逆直交変換部
を備える復号装置。
(2)
前記逆直交変換部は、水平方向および垂直方向の一方のトランスフォームスキップが行われた前記差分に対して、他方の逆直交変換を行う
ように構成された
前記(1)に記載の復号装置。
(3)
前記逆直交変換部は、前記差分に対して水平方向と垂直方向のいずれのトランスフォームスキップが行われたかを識別するトランスフォームスキップ情報に基づいて、前記一方のトランスフォームスキップを行う
前記(1)または(2)に記載の復号装置。
(4)
前記逆直交変換部は、前記差分に対してトランスフォームスキップが行われたことを識別するトランスフォームスキップフラグと、前記予測画像のイントラ予測の予測方向とに基づいて、前記一方のトランスフォームスキップを行う
前記(1)または(2)に記載の復号装置。
(5)
前記逆直交変換部は、前記差分に対してトランスフォームスキップが行われたことを識別するトランスフォームスキップフラグと、前記予測画像のインター予測ブロックの形状とに基づいて、前記一方のトランスフォームスキップを行う
前記(1)、(2)、または(4)に記載の復号装置。
(6)
水平方向のトランスフォームスキップが行われ、量子化された前記差分に対して、行方向に変化せず、列方向に変化する量子化行列を用いて逆量子化を行う逆量子化部
をさらに備え、
前記逆直交変換部は、前記逆量子化部により逆量子化された前記差分に対して、水平方向のトランスフォームスキップを行う
ように構成された
前記(1)乃至(5)のいずれかに記載の復号装置。
(7)
垂直方向のトランスフォームスキップが行われ、量子化された前記差分に対して、列方向に変化せず、行方向に変化する量子化行列を用いて逆量子化を行う逆量子化部
をさらに備え、
前記逆直交変換部は、前記逆量子化部により逆量子化された前記差分に対して、垂直方向のトランスフォームスキップを行う
ように構成された
前記(1)乃至(6)のいずれかに記載の復号装置。
(8)
前記水平方向および垂直方向の一方のトランスフォームスキップが行われ、その一方に回転された前記差分の可逆符号化結果を可逆復号する可逆復号部と、
前記可逆復号部により可逆復号された前記差分を、前記水平方向および垂直方向の一方に回転させる回転部と
をさらに備え、
前記逆直交変換部は、前記回転部により回転された前記差分に対して、前記水平方向および垂直方向の一方のトランスフォームスキップを行う
ように構成された
前記(1)乃至(7)のいずれかに記載の復号装置。
(9)
前記予測画像は、イントラ予測により生成される
ように構成された
前記(8)に記載の復号装置。
(10)
復号装置が、
水平方向および垂直方向の一方のトランスフォームスキップが行われた、画像の予測画像と前記画像の差分に対して、その一方のトランスフォームスキップを行う逆直交変換ステップ
を含む復号方法。
(11)
画像の予測画像と前記画像の差分に対して、水平方向および垂直方向の一方のトランスフォームスキップを行う直交変換部
を備える符号化装置。
(12)
前記直交変換部は、前記差分に対して他方の直交変換を行う
ように構成された
前記(11)に記載の符号化装置。
(13)
前記直交変換部により前記差分に対して水平方向と垂直方向のいずれのトランスフォームスキップが行われたかを識別するトランスフォームスキップ情報を伝送する伝送部
をさらに備える
ように構成された
前記(11)または(12)に記載の符号化装置。
(14)
前記直交変換部により前記差分に対してトランスフォームスキップが行われたことを識別するトランスフォームスキップフラグを伝送する伝送部
をさらに備え、
前記直交変換部は、前記予測画像のイントラ予測の予測方向に基づいて前記一方を選択する
前記(11)または(12)に記載の符号化装置。
(15)
前記直交変換部により前記差分に対してトランスフォームスキップが行われたことを識別するトランスフォームスキップフラグを伝送する伝送部
をさらに備え、
前記直交変換部は、前記予測画像のインター予測ブロックの形状に基づいて前記一方を選択する
前記(11)または(12)に記載の符号化装置。
(16)
前記直交変換部により水平方向のトランスフォームスキップが行われた前記差分に対して、行方向に変化せず、列方向に変化する量子化行列を用いて量子化を行う量子化部
をさらに備える
ように構成された
前記(11)乃至(15)のいずれかに記載の符号化装置。
(17)
前記直交変換部により垂直方向のトランスフォームスキップが行われた前記差分に対して、列方向に変化せず、行方向に変化する量子化行列を用いて量子化を行う量子化部
をさらに備える
ように構成された
前記(11)乃至(16)のいずれかに記載の符号化装置。
(18)
前記直交変換部によりトランスフォームスキップが行われた前記差分を、前記水平方向および垂直方向の一方に回転させる回転部と、
前記回転部により回転された前記差分を可逆符号化する可逆符号化部と
をさらに備える
ように構成された
前記(11)乃至(17)のいずれかに記載の符号化装置。
(19)
前記予測画像は、イントラ予測により生成される
ように構成された
前記(18)に記載の符号化装置。
(20)
符号化装置が、
画像の予測画像と前記画像の差分に対して、水平方向および垂直方向の一方のトランスフォームスキップを行う直交変換ステップ
を含む符号化方法。
Claims (20)
- 水平方向および垂直方向の一方のトランスフォームスキップが行われた、画像の予測画像と前記画像の差分に対して、その一方のトランスフォームスキップを行う逆直交変換部
を備える復号装置。 - 前記逆直交変換部は、水平方向および垂直方向の一方のトランスフォームスキップが行われた前記差分に対して、他方の逆直交変換を行う
ように構成された
請求項1に記載の復号装置。 - 前記逆直交変換部は、前記差分に対して水平方向と垂直方向のいずれのトランスフォームスキップが行われたかを識別するトランスフォームスキップ情報に基づいて、前記一方のトランスフォームスキップを行う
請求項1に記載の復号装置。 - 前記逆直交変換部は、前記差分に対してトランスフォームスキップが行われたことを識別するトランスフォームスキップフラグと、前記予測画像のイントラ予測の予測方向とに基づいて、前記一方のトランスフォームスキップを行う
請求項1に記載の復号装置。 - 前記逆直交変換部は、前記差分に対してトランスフォームスキップが行われたことを識別するトランスフォームスキップフラグと、前記予測画像のインター予測ブロックの形状とに基づいて、前記一方のトランスフォームスキップを行う
請求項1に記載の復号装置。 - 水平方向のトランスフォームスキップが行われ、量子化された前記差分に対して、行方向に変化せず、列方向に変化する量子化行列を用いて逆量子化を行う逆量子化部
をさらに備え、
前記逆直交変換部は、前記逆量子化部により逆量子化された前記差分に対して、水平方向のトランスフォームスキップを行う
ように構成された
請求項1に記載の復号装置。 - 垂直方向のトランスフォームスキップが行われ、量子化された前記差分に対して、列方向に変化せず、行方向に変化する量子化行列を用いて逆量子化を行う逆量子化部
をさらに備え、
前記逆直交変換部は、前記逆量子化部により逆量子化された前記差分に対して、垂直方向のトランスフォームスキップを行う
ように構成された
請求項1に記載の復号装置。 - 前記水平方向および垂直方向の一方のトランスフォームスキップが行われ、その一方に回転された前記差分の可逆符号化結果を可逆復号する可逆復号部と、
前記可逆復号部により可逆復号された前記差分を、前記水平方向および垂直方向の一方に回転させる回転部と
をさらに備え、
前記逆直交変換部は、前記回転部により回転された前記差分に対して、前記水平方向および垂直方向の一方のトランスフォームスキップを行う
ように構成された
請求項1に記載の復号装置。 - 前記予測画像は、イントラ予測により生成される
ように構成された
請求項8に記載の復号装置。 - 復号装置が、
水平方向および垂直方向の一方のトランスフォームスキップが行われた、画像の予測画像と前記画像の差分に対して、その一方のトランスフォームスキップを行う逆直交変換ステップ
を含む復号方法。 - 画像の予測画像と前記画像の差分に対して、水平方向および垂直方向の一方のトランスフォームスキップを行う直交変換部
を備える符号化装置。 - 前記直交変換部は、前記差分に対して他方の直交変換を行う
ように構成された
請求項11に記載の符号化装置。 - 前記直交変換部により前記差分に対して水平方向と垂直方向のいずれのトランスフォームスキップが行われたかを識別するトランスフォームスキップ情報を伝送する伝送部
をさらに備える
ように構成された
請求項11に記載の符号化装置。 - 前記直交変換部により前記差分に対してトランスフォームスキップが行われたことを識別するトランスフォームスキップフラグを伝送する伝送部
をさらに備え、
前記直交変換部は、前記予測画像のイントラ予測の予測方向に基づいて前記一方を選択する
請求項11に記載の符号化装置。 - 前記直交変換部により前記差分に対してトランスフォームスキップが行われたことを識別するトランスフォームスキップフラグを伝送する伝送部
をさらに備え、
前記直交変換部は、前記予測画像のインター予測ブロックの形状に基づいて前記一方を選択する
請求項11に記載の符号化装置。 - 前記直交変換部により水平方向のトランスフォームスキップが行われた前記差分に対して、行方向に変化せず、列方向に変化する量子化行列を用いて量子化を行う量子化部
をさらに備える
ように構成された
請求項11に記載の符号化装置。 - 前記直交変換部により垂直方向のトランスフォームスキップが行われた前記差分に対して、列方向に変化せず、行方向に変化する量子化行列を用いて量子化を行う量子化部
をさらに備える
ように構成された
請求項11に記載の符号化装置。 - 前記直交変換部によりトランスフォームスキップが行われた前記差分を、前記水平方向および垂直方向の一方に回転させる回転部と、
前記回転部により回転された前記差分を可逆符号化する可逆符号化部と
をさらに備える
ように構成された
請求項11に記載の符号化装置。 - 前記予測画像は、イントラ予測により生成される
ように構成された
請求項18に記載の符号化装置。 - 符号化装置が、
画像の予測画像と前記画像の差分に対して、水平方向および垂直方向の一方のトランスフォームスキップを行う直交変換ステップ
を含む符号化方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201480054774.0A CN105594208A (zh) | 2013-10-11 | 2014-09-29 | 解码装置、解码方法、编码装置以及编码方法 |
US15/022,060 US20160227253A1 (en) | 2013-10-11 | 2014-09-29 | Decoding device, decoding method, encoding device and encoding method |
JP2015541524A JPWO2015053115A1 (ja) | 2013-10-11 | 2014-09-29 | 復号装置および復号方法、並びに、符号化装置および符号化方法 |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013214119 | 2013-10-11 | ||
JP2013-214119 | 2013-10-11 | ||
JP2013-233161 | 2013-11-11 | ||
JP2013233161 | 2013-11-11 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2015053115A1 true WO2015053115A1 (ja) | 2015-04-16 |
Family
ID=52812934
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2014/075841 WO2015053115A1 (ja) | 2013-10-11 | 2014-09-29 | 復号装置および復号方法、並びに、符号化装置および符号化方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20160227253A1 (ja) |
JP (1) | JPWO2015053115A1 (ja) |
CN (1) | CN105594208A (ja) |
WO (1) | WO2015053115A1 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018061837A1 (ja) * | 2016-09-30 | 2018-04-05 | ソニー株式会社 | 画像処理装置および方法 |
EP3439304A4 (en) * | 2016-03-28 | 2020-02-26 | KT Corporation | VIDEO SIGNAL PROCESSING METHOD AND APPARATUS |
JP2023510690A (ja) * | 2020-09-24 | 2023-03-15 | テンセント・アメリカ・エルエルシー | ビデオコーディングのための方法及び装置 |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10123044B2 (en) * | 2015-07-16 | 2018-11-06 | Mediatek Inc. | Partial decoding circuit of video encoder/decoder for dealing with inverse second transform and partial encoding circuit of video encoder for dealing with second transform |
JP6528635B2 (ja) * | 2015-10-05 | 2019-06-12 | 富士通株式会社 | 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム |
CN106027538A (zh) * | 2016-05-30 | 2016-10-12 | 东软集团股份有限公司 | 加载图片的方法及装置、发送图片资源的方法及装置 |
US11190770B2 (en) * | 2016-07-05 | 2021-11-30 | Kt Corporation | Method and apparatus for processing video signal |
CN109691112B (zh) * | 2016-08-31 | 2023-09-26 | 株式会社Kt | 用于处理视频信号的方法和设备 |
US10764583B2 (en) * | 2016-08-31 | 2020-09-01 | Kt Corporation | Method and apparatus for processing video signal |
US11095892B2 (en) * | 2016-09-20 | 2021-08-17 | Kt Corporation | Method and apparatus for processing video signal |
AU2018270853B2 (en) * | 2017-05-17 | 2021-04-01 | Kt Corporation | Method and device for video signal processing |
WO2019079093A1 (en) * | 2017-10-19 | 2019-04-25 | Interdigital Vc Holdings, Inc. | METHOD AND DEVICE FOR PREDICTIVE CODING / DECODING OF A POINT CLOUD |
CN117834919A (zh) | 2018-01-17 | 2024-04-05 | 英迪股份有限公司 | 对视频进行解码或编码的方法和用于发送比特流的方法 |
US10687083B2 (en) * | 2018-06-06 | 2020-06-16 | Intel Corporation | Loop restoration filtering for super resolution video coding |
KR20200039591A (ko) | 2018-10-05 | 2020-04-16 | 한국전자통신연구원 | 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체 |
KR20240014631A (ko) * | 2018-10-11 | 2024-02-01 | 엘지전자 주식회사 | 변환 계수 코딩 방법 및 장치 |
WO2021130374A1 (en) * | 2019-12-27 | 2021-07-01 | Interdigital Vc Holdings France | Transform coding for inter-predicted video data |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009272727A (ja) * | 2008-04-30 | 2009-11-19 | Toshiba Corp | 予測誤差の方向性に基づく変換方法、画像符号化方法及び画像復号化方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100846769B1 (ko) * | 2002-02-19 | 2008-07-16 | 삼성전자주식회사 | 고정 연산량을 갖는 동영상 부호화 방법 및 그 장치 |
GB2492333B (en) * | 2011-06-27 | 2018-12-12 | British Broadcasting Corp | Video encoding and decoding using transforms |
GB2561487B (en) * | 2011-10-18 | 2019-01-02 | Kt Corp | Method for encoding image, method for decoding image, image encoder, and image decoder |
US9264713B2 (en) * | 2012-07-11 | 2016-02-16 | Qualcomm Incorporated | Rotation of prediction residual blocks in video coding with transform skipping |
-
2014
- 2014-09-29 WO PCT/JP2014/075841 patent/WO2015053115A1/ja active Application Filing
- 2014-09-29 JP JP2015541524A patent/JPWO2015053115A1/ja active Pending
- 2014-09-29 US US15/022,060 patent/US20160227253A1/en not_active Abandoned
- 2014-09-29 CN CN201480054774.0A patent/CN105594208A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009272727A (ja) * | 2008-04-30 | 2009-11-19 | Toshiba Corp | 予測誤差の方向性に基づく変換方法、画像符号化方法及び画像復号化方法 |
Non-Patent Citations (4)
Title |
---|
DAKE HE ET AL.: "Rotation of Residual Block for Transform Skipping", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 10TH MEETING, 11 July 2012 (2012-07-11), STOCKHOLM, SE * |
JAEIL KIM ET AL.: "Efficient signaling of transform skipping mode", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG 16 WP3 AND ISO/IEC JTC1/SC29/WG11 8TH MEETING, 1 February 2012 (2012-02-01), SAN JOSé, CA , USA * |
MARTA MRAK ET AL.: "Transform skip mode", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG 16 WP3 AND ISO/IEC JTC1/SC29/WG11 6TH MEETING, 14 July 2011 (2011-07-14), TORINO, IT * |
MATTEO NACCARI ET AL.: "CE5.a: Quantization for transform skipping", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT- VC) OF ITU-T SG 16 WP3 AND ISO/IEC JTC1/SC29/ WG11 8TH MEETING, 1 February 2012 (2012-02-01), SAN JOSé, CA , USA * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3439304A4 (en) * | 2016-03-28 | 2020-02-26 | KT Corporation | VIDEO SIGNAL PROCESSING METHOD AND APPARATUS |
US10904526B2 (en) | 2016-03-28 | 2021-01-26 | Kt Corporation | Method and apparatus for processing video signal |
US11343497B2 (en) | 2016-03-28 | 2022-05-24 | Kt Corporation | Method and apparatus for processing video signal |
US11343499B2 (en) | 2016-03-28 | 2022-05-24 | Kt Corporation | Method and apparatus for processing video signal |
US11343498B2 (en) | 2016-03-28 | 2022-05-24 | Kt Corporation | Method and apparatus for processing video signal |
CN114598865A (zh) * | 2016-03-28 | 2022-06-07 | 株式会社Kt | 对视频进行解码和编码的方法以及解码的装置 |
WO2018061837A1 (ja) * | 2016-09-30 | 2018-04-05 | ソニー株式会社 | 画像処理装置および方法 |
JPWO2018061837A1 (ja) * | 2016-09-30 | 2019-07-11 | ソニー株式会社 | 画像処理装置および方法 |
US10728552B2 (en) | 2016-09-30 | 2020-07-28 | Sony Corporation | Image processing apparatus and method |
JP2023510690A (ja) * | 2020-09-24 | 2023-03-15 | テンセント・アメリカ・エルエルシー | ビデオコーディングのための方法及び装置 |
Also Published As
Publication number | Publication date |
---|---|
CN105594208A (zh) | 2016-05-18 |
JPWO2015053115A1 (ja) | 2017-03-09 |
US20160227253A1 (en) | 2016-08-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2015053115A1 (ja) | 復号装置および復号方法、並びに、符号化装置および符号化方法 | |
US11546594B2 (en) | Decoding device, decoding method, encoding device, and encoding method | |
JP6358475B2 (ja) | 画像復号装置および方法、並びに、画像符号化装置および方法 | |
JP6555541B2 (ja) | 画像符号化装置および方法 | |
WO2014002896A1 (ja) | 符号化装置および符号化方法、復号装置および復号方法 | |
WO2015053116A1 (ja) | 復号装置および復号方法、並びに、符号化装置および符号化方法 | |
WO2015137145A1 (ja) | 画像符号化装置および方法、並びに画像復号装置および方法 | |
WO2015098561A1 (ja) | 復号装置および復号方法、並びに、符号化装置および符号化方法 | |
JP2015005899A (ja) | 復号装置および復号方法、並びに、符号化装置および符号化方法 | |
JPWO2015064402A1 (ja) | 画像処理装置および方法 | |
JPWO2015064403A1 (ja) | 画像処理装置および方法 | |
WO2015098559A1 (ja) | 復号装置および復号方法、並びに、符号化装置および符号化方法 | |
WO2015053112A1 (ja) | 復号装置および復号方法、並びに、符号化装置および符号化方法 | |
JP6477930B2 (ja) | 符号化装置および符号化方法 | |
JP6150134B2 (ja) | 画像符号化装置および方法、画像復号装置および方法、プログラム、並びに記録媒体 | |
WO2014002900A1 (ja) | 画像処理装置および画像処理方法 | |
WO2015053111A1 (ja) | 復号装置および復号方法、並びに、符号化装置および符号化方法 | |
JP6402802B2 (ja) | 画像処理装置および方法、プログラム、並びに記録媒体 | |
JP2015050738A (ja) | 復号装置および復号方法、並びに、符号化装置および符号化方法 | |
WO2014203762A1 (ja) | 復号装置および復号方法、並びに、符号化装置および符号化方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 14852487 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2015541524 Country of ref document: JP Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 15022060 Country of ref document: US |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 14852487 Country of ref document: EP Kind code of ref document: A1 |