WO2016194721A1 - 画像処理装置および画像処理方法 - Google Patents
画像処理装置および画像処理方法 Download PDFInfo
- Publication number
- WO2016194721A1 WO2016194721A1 PCT/JP2016/065390 JP2016065390W WO2016194721A1 WO 2016194721 A1 WO2016194721 A1 WO 2016194721A1 JP 2016065390 W JP2016065390 W JP 2016065390W WO 2016194721 A1 WO2016194721 A1 WO 2016194721A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- unit
- prediction
- processing
- current block
- data
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/115—Selection of the code volume for a coding unit prior to coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/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
-
- 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/167—Position within a video image, e.g. region of interest [ROI]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/57—Motion estimation characterised by a search window with variable size or shape
-
- 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/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
Definitions
- the present disclosure relates to an image processing apparatus and an image processing method, and more particularly, to an image processing apparatus and an image processing method capable of reducing a processing load when performing intra-BC prediction using correlation in a screen.
- H.264 / AVC High Efficiency Efficiency Video Video Coding
- JCTVC Joint Collaboration Collaboration Team Video Video Coding
- a range extension (HEVC Range Extension) is considered to support high-end formats such as 4: 2: 2 and 4: 4: 4 color difference signal format images and screen content profiles.
- HEVC Range Extension HEVC Range Extension
- IntraBlockCopy (Intra) BC) is a coding tool that performs prediction by performing motion compensation in the screen using the correlation in the screen.
- Intra BC is known as a tool that contributes to improving the coding efficiency of artificial images such as computer screens and CG images.
- Intra BC is not adopted for the above-described HEVC Range Extension extension, and technical studies are being continued with standardization of Screen Content Coding (SCC) extension (see, for example, Non-Patent Document 2).
- SCC Screen Content Coding
- Intra BC prediction all areas that are in the coding order before the current block that is the current CU (Coding Unit) in the current picture can be referenced.
- filter processing such as deblocking filter processing and SAO (Sample-adaptive-offset) processing
- SAO Sample-adaptive-offset
- the reference picture in the inter prediction is a picture different from the current picture, all regions in the reference picture are filtered when the current block is encoded. Therefore, the inter prediction is performed with reference to the reference picture after the filtering process.
- This disclosure has been made in view of such a situation, and is intended to reduce the processing load when performing intra-BC prediction using correlation within a screen.
- An image processing apparatus limits a motion vector of a current block used for prediction using in-screen correlation so that neighboring pixels of the current block are not used for the prediction of the current block. It is an image processing apparatus provided with the restriction
- the image processing method according to one aspect of the present disclosure corresponds to the image processing apparatus according to one aspect of the present disclosure.
- a motion vector of a current block used for prediction using correlation within a screen is limited so that peripheral pixels of the current block are not used for the prediction of the current block.
- the image processing apparatus can be realized by causing a computer to execute a program.
- a program to be executed by a computer can be provided by being transmitted via a transmission medium or by being recorded on a recording medium.
- the image processing apparatus may be an independent apparatus, or may be an internal block constituting one apparatus.
- an image can be predicted. Also, according to one aspect of the present disclosure, it is possible to reduce a processing load when performing Intra BC prediction using correlation within a screen.
- FIG. 1 It is a block diagram which shows the structural example of the hardware of a computer. It is a figure which shows the example of schematic structure of the television apparatus to which this indication is applied. It is a figure which shows the schematic structural example of the mobile telephone to which this indication is applied. It is a figure which shows the schematic structural example of the recording / reproducing apparatus to which this indication is applied. It is a figure which shows the schematic structural example of the imaging device to which this indication is applied. 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 an embodiment of an encoding device as an image processing device to which the present disclosure is applied.
- the encoding device 70 includes a filter 82, a frame memory 85, a switch 86, an intra prediction unit 87, a motion prediction / compensation unit 89, a predicted image selection unit 92, and a rate control unit 93.
- the encoding device 70 encodes a picture in units of frames by a method according to HEVC.
- the coding unit is Coding UNIT (CU) having a recursive hierarchical structure. Specifically, the CU is set by dividing a picture into CTUs (Coding
- the maximum size of the CU is LCU (Largest Coding Unit), and the minimum size is SCU (Smallest Coding Unit).
- the CU is divided into PU (Prediction unit) and TU (transform unit).
- the A / D conversion unit 71 of the encoding device 70 performs A / D conversion on a frame-by-frame picture input as an encoding target.
- the A / D conversion unit 71 outputs the picture, which is the converted digital signal, to the screen rearrangement buffer 72 for storage.
- the screen rearrangement buffer 72 rearranges the stored frame-by-frame pictures in the order for encoding according to the GOP structure.
- the screen rearrangement buffer 72 sets the rearranged picture as the current picture, and sequentially sets each CU of the current picture as the current block.
- the screen rearrangement buffer 72 outputs the current block to the calculation unit 73, the intra prediction unit 87, and the motion prediction / compensation unit 89.
- the calculation unit 73 performs encoding by subtracting the prediction image supplied from the prediction image selection unit 92 from the current block supplied from the screen rearrangement buffer 72.
- the computing unit 73 outputs the resulting picture to the orthogonal transform unit 74 as residual information.
- the calculation unit 73 outputs the current block read from the screen rearrangement buffer 72 as it is to the orthogonal transform unit 74 as residual information.
- the orthogonal transform unit 74 orthogonally transforms the residual information from the calculation unit 73 in units of TUs.
- the orthogonal transform unit 74 supplies an orthogonal transform coefficient obtained as a result of the orthogonal transform to the quantization unit 75.
- the quantization unit 75 performs quantization on the orthogonal transform coefficient supplied from the orthogonal transform unit 74.
- the quantization unit 75 supplies the quantized orthogonal transform coefficient to the lossless encoding unit 76.
- the lossless encoding unit 76 acquires the intra prediction mode information indicating the optimal intra prediction mode from the intra prediction unit 87. Further, the lossless encoding unit 76 acquires, from the motion prediction / compensation unit 89, inter prediction mode information indicating an optimal inter prediction mode, a motion vector, reference picture specifying information for specifying a reference picture, and the like. Furthermore, the lossless encoding unit 76 acquires offset filter information related to adaptive offset filter processing from the filter 82.
- the lossless encoding unit 76 performs variable length coding (for example, CAVLC (Context-Adaptive Variable Length Coding)), arithmetic coding (for example, for the quantized orthogonal transform coefficient supplied from the quantization unit 75, for example. , CABAC (Context-Adaptive Binary Arithmetic Coding) etc.).
- variable length coding for example, CAVLC (Context-Adaptive Variable Length Coding)
- arithmetic coding for example, for the quantized orthogonal transform coefficient supplied from the quantization unit 75, for example.
- CABAC Context-Adaptive Binary Arithmetic Coding
- the lossless encoding unit 76 performs lossless encoding on intra prediction mode information, inter prediction mode information, motion vectors, reference picture specifying information, offset filter information, and the like as encoding information related to encoding.
- the lossless encoding unit 76 adds losslessly encoded encoding information and the like to the losslessly encoded orthogonal transform coefficient and supplies the result to the accumulation buffer 77 as encoded data.
- the accumulation buffer 77 temporarily stores the encoded data supplied from the lossless encoding unit 76. Further, the accumulation buffer 77 supplies the stored encoded data to the generation unit 78.
- the generating unit 78 generates and outputs an encoded stream from a parameter set such as SPS (Sequence Parameter Set), PPS (Picture Parameter Set), and the encoded data supplied from the accumulation buffer 77.
- a parameter set such as SPS (Sequence Parameter Set), PPS (Picture Parameter Set), and the encoded data supplied from the accumulation buffer 77.
- the quantized orthogonal transform coefficient output from the quantization unit 75 is also input to the inverse quantization unit 79.
- the inverse quantization unit 79 performs inverse quantization on the orthogonal transform coefficient quantized by the quantization unit 75 by a method corresponding to the quantization method in the quantization unit 75.
- the inverse quantization unit 79 supplies the orthogonal transform coefficient obtained as a result of the inverse quantization to the inverse orthogonal transform unit 80.
- the inverse orthogonal transform unit 80 performs inverse orthogonal transform on the orthogonal transform coefficient supplied from the inverse quantization unit 79 by a method corresponding to the orthogonal transform method in the orthogonal transform unit 74 in units of TUs.
- the inverse orthogonal transform unit 80 supplies the residual information obtained as a result to the addition unit 81.
- the adding unit 81 decodes the current block by adding the residual information supplied from the inverse orthogonal transform unit 80 and the predicted image supplied from the predicted image selecting unit 92. When the predicted image is not supplied from the predicted image selection unit 92, the adding unit 81 uses the residual information supplied from the inverse orthogonal transform unit 80 as a decoding result. The adder 81 supplies the current block to the frame memory 85 and the filter 82.
- the filter 82 holds the current block supplied from the adding unit 81 as an encoded CU.
- the filter 82 is centered on the boundary between the current block and the adjacent block using the current block supplied from the adder 81 and the encoded CU adjacent to the held current block (hereinafter referred to as an adjacent block).
- the deblocking filter process is performed on each of up to three pixels arranged in the direction perpendicular to the boundary.
- the filter 82 performs SAO processing on the pixel after the deblocking filter processing.
- Types of SAO processing include edge offset processing and band offset processing, which are selected in units of LCUs.
- Edge offset processing is performed using pixel values of two pixels arranged in a horizontal direction, a vertical direction, or an oblique direction with a pixel to be processed as a center. Therefore, the edge offset processing for each maximum pixel arranged in the direction perpendicular to the boundary around the boundary between adjacent CUs is performed using another adjacent CU.
- the filter 82 supplies the pixel after SAO processing to the frame memory 85. Further, the filter 82 supplies information indicating the type and offset of the SAO processing performed to the lossless encoding unit 76 as offset filter information.
- the frame memory 85 is composed of, for example, DRAM (Dynamic Random Access Memory).
- the frame memory 85 stores a part of the current block before the deblocking filter process supplied from the adding unit 81 and the pixel after the SAO process supplied from the filter 82.
- the pixels adjacent to the PU are supplied as peripheral pixels to the intra prediction unit 87 via the switch 86.
- the current picture after the SAO process stored in the frame memory 85 and the picture after the SAO process preceding in encoding order from the current picture are sent to the motion prediction / compensation unit 89 via the switch 86 as reference picture candidates. Is output.
- the intra prediction unit 87 performs intra prediction processing in all candidate intra prediction modes using peripheral pixels read from the frame memory 85 via the switch 86 in units of PUs.
- the intra prediction unit 87 performs, on a PU basis, all candidate intra prediction modes based on the current block supplied from the screen rearrangement buffer 72 and the prediction image generated as a result of the intra prediction process.
- the cost function value (details will be described later) is calculated. Then, the intra prediction unit 87 determines the intra prediction mode that minimizes the cost function value as the optimal intra prediction mode for each PU.
- the intra prediction unit 87 supplies the predicted image generated in the optimal intra prediction mode and the corresponding cost function value to the predicted image selection unit 92 for the current block.
- the intra prediction unit 87 supplies the intra prediction mode information of each PU of the current block to the lossless encoding unit 76 when the prediction image selection unit 92 is notified of the selection of the 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 the method of High Complexity mode or Low Complexity mode 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.
- the motion prediction / compensation unit 89 performs inter prediction and Intra-BC prediction for all candidate PU modes in units of PUs.
- the PU mode is a mode that represents a partitioning method for the CU of the PU.
- the motion prediction / compensation unit 89 precedes the encoded region of the current picture and the current picture in which the horizontal and vertical resolution is quadrupled in the encoding order. Are divided into PU-sized areas, and these areas are sequentially set as search areas.
- the motion prediction / compensation unit 89 sets a predetermined range excluding peripheral pixels of the current block in the current picture as a reference range used for detecting a motion vector of the current block.
- the motion prediction / compensation unit 89 reads the search area of the current picture after the SAO process from the frame memory 85 via the switch 86 as a reference block candidate of the reference picture.
- the motion prediction / compensation unit 89 obtains a correlation value between each PU of the current block supplied from the screen rearrangement buffer 72 and a reference block candidate of the reference picture. For each PU in each PU mode, the motion prediction / compensation unit 89, when the obtained correlation value is larger than the correlation value held, the PU of the current block corresponding to the correlation value and the reference block of the reference picture The motion vector with integer pixel accuracy between the candidates is determined as the best vector for Intra BC prediction.
- the motion prediction / compensation unit 89 holds the best vector of Intra BC prediction and the corresponding correlation value for each PU in each PU mode.
- the motion prediction / compensation unit 89 performs compensation processing on the reference block candidate of the reference picture based on the best vector of Intra-BC prediction for each PU in each PU mode, and generates a predicted image.
- the motion prediction / compensation unit 89 also selects an area corresponding to the search area of the picture after the SAO process as a reference block candidate for the reference picture when the search area exists in the previous picture in the coding order from the current picture. Read from the frame memory 85. The motion prediction / compensation unit 89 quadruples the horizontal and vertical resolutions of the reference block candidates for the current block and the reference picture.
- the motion prediction / compensation unit 89 obtains a correlation value between each PU of the current block whose resolution is quadrupled and a reference block candidate of the reference picture. For each PU in each PU mode, the motion prediction / compensation unit 89, when the obtained correlation value is larger than the correlation value held, the PU of the current block corresponding to the correlation value and the reference block of the reference picture The motion vector with 1/4 pixel accuracy between the candidates is determined as the best vector for inter prediction. The motion prediction / compensation unit 89 holds the best vector of inter prediction and the corresponding correlation value for each PU in each PU mode. The motion prediction / compensation unit 89 performs compensation processing on the reference block candidate of the reference picture based on the best vector of inter prediction for each PU in each PU mode, and generates a predicted image.
- the motion prediction / compensation unit 89 calculates cost function values for all candidate PU modes for intra prediction and intra-BC prediction based on the current block and the predicted image in units of PUs.
- the motion prediction / compensation unit 89 determines, for each PU, a mode representing a PU mode having a minimum cost function value and inter prediction or Intra-BC prediction as the optimal inter prediction mode. Then, the motion prediction / compensation unit 89 supplies the predicted image generated in the optimal inter prediction mode and the corresponding cost function value to the predicted image selection unit 92 for the current block.
- the motion prediction / compensation unit 89 determines a reference picture candidate as a reference picture when the prediction image selection unit 92 is notified of selection of a prediction image generated in the optimal inter prediction mode. Then, the motion prediction / compensation unit 89 supplies the motion vector, the reference picture specifying information, and the inter prediction mode information corresponding to the predicted image to the lossless encoding unit 76.
- the predicted image selection unit 92 Based on the cost function values supplied from the intra prediction unit 87 and the motion prediction / compensation unit 89, the predicted image selection unit 92 has a smaller corresponding cost function value among the optimal intra prediction mode and the optimal inter prediction mode. Are determined as the optimum prediction mode. Then, the predicted image selection unit 92 supplies the predicted image in the optimal prediction mode to the calculation unit 73 and the addition unit 81. Further, the predicted image selection unit 92 notifies the intra prediction unit 87 or the motion prediction / compensation unit 89 of selection of the predicted image in the optimal prediction mode.
- the rate control unit 93 controls the rate of the quantization operation of the quantization unit 75 based on the encoded data stored in the storage buffer 77 so that overflow or underflow does not occur.
- FIG. 2 is a block diagram illustrating a configuration example of an Intra BC prediction unit that performs Intra BC prediction and the like in the motion prediction / compensation unit 89 of FIG.
- the 2 is composed of a restriction unit 101, a detection unit 102, and a prediction unit 103.
- the restriction unit 101 sets a predetermined range excluding peripheral pixels of the current block in the current picture as a reference range used for detecting a motion vector of the current block. That is, the restriction unit 101 restricts the motion vector of the current block used for Intra BC prediction so that peripheral pixels of the current block are not used for Intra BC prediction of the current block.
- the restriction unit 101 supplies the reference range to the detection unit 102.
- the detection unit 102 sets the search region after the SAO process as a reference block candidate of the reference picture from the frame memory 85 via the switch 86. read out.
- the detecting unit 102 obtains a correlation value between each PU of the current block supplied from the screen rearrangement buffer 72 and the reference block candidate of the reference picture. When the obtained correlation value is larger than the held correlation value for each PU in each PU mode, the detection unit 102 determines whether the PU of the current block corresponding to the correlation value and the reference block candidate of the reference picture The motion vector with integer pixel accuracy between them is determined as the best vector for Intra BC prediction. The detection unit 102 holds the best vector of Intra BC prediction and the corresponding correlation value. Then, for each PU mode, the detection unit 102 supplies the intra-BC prediction best vector of each PU to the prediction unit 103 when all the encoded regions of the current picture are set as search regions.
- the prediction unit 103 performs Intra BC prediction by performing compensation processing on the reference block candidate of the reference picture based on the best vector supplied from the detection unit 102 for each PU in each PU mode, and performs prediction image prediction. Is generated. Further, the prediction unit 103 calculates cost function values for all the intra-BC predictions of candidate PU modes based on the current block and the predicted image supplied from the screen rearrangement buffer 72 in units of PUs. . The prediction unit 103 outputs the calculated cost function value and the predicted image.
- the cost function value output from the Intra BC prediction unit 100 is compared with the cost function value corresponding to the inter prediction of each PU mode, and the optimal inter prediction mode is determined.
- FIG. 3 is a diagram illustrating an example of a reference range.
- the image to be encoded is divided into 7 (horizontal) ⁇ 5 (vertical) CUs.
- the CU group 112 including the CUs existing above the CU 111 or having the same vertical position as the CU 111 and existing on the left side of the CU 111 is already encoded. ing.
- the CU 111 and the CU group 113 that is located below the CU 111 or has the same position in the vertical direction as the CU 111 and is located on the right side of the CU 111 are not yet encoded.
- a maximum of three pixels arranged in a direction perpendicular to the boundary from the boundary with the adjacent CU in the CU are affected by the adjacent CU.
- a maximum of one pixel arranged in a direction perpendicular to the boundary from the boundary with the adjacent CU in the CU is affected by the adjacent CU.
- the restriction unit 101 excludes, from the reference range, the region 114 in the CU group 112 that has a horizontal or vertical distance of 3 pixels or less from the CU group 113.
- intra-BC prediction can be performed using a region other than the region 114 of the CU group 112 on which the SAO processing has been performed. Therefore, unlike the case where the CU group 112 before the deblocking filter processing and the SAO processing are temporarily held in a cache or the like and used for Intra-BC prediction, there is no need to provide a cache for Intra-BC prediction. As a result, an increase in memory bandwidth, processing load, and mounting cost can be prevented.
- the motion vector (mvLX [0] z >> 2, mvLX [1] >> 2) of the PU 115 in the CU 111 satisfies the following expression (1).
- xBl and yBl are the x-coordinate and y-coordinate of the top left vertex of the PU 115, respectively.
- nPbW and nPbH are the size of the PU 115 in the horizontal direction and the size in the vertical direction, respectively.
- xCb and yCb are the x coordinate and y coordinate of the upper left vertex of the CU 111, respectively.
- the restriction unit 101 is configured to include a CTU including the CU 111 so that the reference range can be referred to.
- the 2N right CTU of the N upper CTUs and the CTU existing to the right or upper right of the CTU are excluded from the reference range.
- the restriction unit 101 excludes the region 118 including the two right CUs 117 of the CU one above the CU 111 and the CUs existing on the right or upper right of the CU 117 from the reference range.
- the reference range at the time of intra-BC prediction is an area excluding the area 114 and the area 118 in the CU group 112. Therefore, the block 119 having the same size as the PU 115 adjacent to the left of the CU 111 and the block 120 having the same size as the PU 115 adjacent on the CU 111 are not used for detecting the motion vector of the PU 115. As described above, the image used for detecting the motion vector is limited, but the influence on the encoding efficiency is negligible.
- xCb and yCb may be the x-coordinate and y-coordinate of the upper left vertex of the CTU including CU111 instead of CU111.
- step S31 of FIG. 4 the A / D conversion unit 71 of the encoding device 70 performs A / D conversion on the frame unit picture input as an encoding target, and rearranges the picture that is the converted digital signal on the screen.
- the data is output to the buffer 72 and stored.
- step S32 the screen rearrangement buffer 72 rearranges the stored frame-by-frame pictures in the order of encoding in accordance with the GOP structure.
- the screen rearrangement buffer 72 sets the frame-by-frame picture after the rearrangement as the current picture, and sequentially sets each CU of the current picture as the current block.
- the screen rearrangement buffer 72 supplies the current block to the calculation unit 73, the intra prediction unit 87, and the motion prediction / compensation unit 89.
- the intra prediction unit 87 performs intra prediction processing of all candidate intra prediction modes using peripheral pixels read from the frame memory 85 via the switch 86 in units of PUs.
- the intra prediction unit 87 performs, on a PU basis, all candidate intra prediction modes based on the current block supplied from the screen rearrangement buffer 72 and the prediction image generated as a result of the intra prediction process. To calculate the cost function value. Then, the intra prediction unit 87 determines the intra prediction mode that minimizes the cost function value as the optimal intra prediction mode for each PU.
- the intra prediction unit 87 supplies the predicted image generated in the optimal intra prediction mode and the corresponding cost function value to the predicted image selection unit 92 for the current block.
- the intra prediction unit 87 supplies the intra prediction mode information to the lossless encoding unit 76 when the prediction image selection unit 92 is notified of the selection of the prediction image generated in the optimal intra prediction mode.
- the motion prediction / compensation unit 89 performs inter prediction and Intra BC prediction of all candidate PU modes for each PU. In addition, the motion prediction / compensation unit 89 performs inter prediction and Intra BC prediction for all candidate PU modes based on the current block and the prediction image generated as a result of the inter prediction and Intra BC prediction in units of PUs. For this, a cost function value is calculated. The motion prediction / compensation unit 89 determines, for each PU, a mode representing a PU mode having the smallest cost function value and inter prediction or Intra-BC prediction as the optimal inter prediction mode. Then, the motion prediction / compensation unit 89 supplies the predicted image generated in the optimal inter prediction mode and the minimum value of the corresponding cost function value to the predicted image selection unit 92 for the current block.
- step S ⁇ b> 34 the predicted image selection unit 92 has a minimum cost function value of the optimal intra prediction mode and the optimal inter prediction mode based on the cost function values supplied from the intra prediction unit 87 and the motion prediction / compensation unit 89. Is determined as the optimum prediction mode. Then, the predicted image selection unit 92 supplies the predicted image in the optimal prediction mode to the calculation unit 73 and the addition unit 81.
- step S35 the predicted image selecting unit 92 determines whether or not the optimal prediction mode is the optimal inter prediction mode.
- the predicted image selection unit 92 notifies the motion prediction / compensation unit 89 of the selection of the predicted image generated in the optimal inter prediction mode.
- step S36 the motion prediction / compensation unit 89 supplies the inter prediction mode information, the motion vector, and the reference picture specifying information corresponding to the prediction image selected by the prediction image selection unit 92 to the lossless encoding unit 76. Then, 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 92 performs the prediction generated in the optimal intra prediction mode.
- the intra prediction unit 87 is notified of image selection.
- step S37 the intra prediction unit 87 supplies the intra prediction mode information corresponding to the prediction image selected by the prediction image selection unit 92 to the lossless encoding unit 76, and the process proceeds to step S38.
- step S38 the calculation unit 73 performs encoding by subtracting the prediction image supplied from the prediction image selection unit 92 from the current block supplied from the screen rearrangement buffer 72.
- the computing unit 73 outputs the resulting picture to the orthogonal transform unit 74 as residual information.
- step S39 the orthogonal transform unit 74 performs orthogonal transform on the residual information from the calculation unit 73 in units of TUs, and supplies the resulting orthogonal transform coefficient to the quantization unit 75.
- step S40 the quantization unit 75 quantizes the orthogonal transform coefficient supplied from the orthogonal transform unit 74, and supplies the quantized orthogonal transform coefficient to the lossless encoding unit 76 and the inverse quantization unit 79.
- the inverse quantization unit 79 inversely quantizes the quantized coefficient supplied from the quantization unit 75 and supplies the resulting orthogonal transform coefficient to the inverse orthogonal transform unit 80.
- step S42 the inverse orthogonal transform unit 80 performs inverse orthogonal transform on the orthogonal transform coefficient supplied from the inverse quantization unit 79 in units of TUs, and supplies residual information obtained as a result to the adder 81.
- step S43 the addition unit 81 adds the residual information supplied from the inverse orthogonal transform unit 80 and the prediction image supplied from the prediction image selection unit 92, and decodes the current block.
- the adder 81 supplies the decoded current block to the frame memory 85 and the filter 82.
- the filter 82 holds the current block supplied from the adding unit 81 as an encoded CU.
- step S44 the filter 82 uses the current block and the adjacent block supplied from the adder 81, and performs the decoding on a maximum of three pixels arranged in the direction perpendicular to the boundary around the boundary between the current block and the adjacent block. Perform block filter processing.
- step S45 the filter 82 performs SAO processing on the pixel after the deblocking filter processing.
- the filter 82 supplies the pixel after SAO processing to the frame memory 85. Further, the filter 82 supplies information indicating the type and offset of the SAO processing performed to the lossless encoding unit 76 as offset filter information.
- step S46 the frame memory 85 stores a part of the current block before the deblocking filter process supplied from the adding unit 81 and the pixel after the SAO process supplied from the filter 82.
- the pixels adjacent to the PU are supplied as peripheral pixels to the intra prediction unit 87 via the switch 86.
- the current picture after the SAO process stored in the frame memory 85 and the picture after the SAO process preceding in encoding order from the current picture are sent to the motion prediction / compensation unit 89 via the switch 86 as reference picture candidates. Is output.
- step S47 the lossless encoding unit 76 losslessly encodes the intra prediction mode information, the inter prediction mode information, the motion vector, the reference picture specifying information, and the offset filter information as the encoding information.
- step S48 the lossless encoding unit 76 performs lossless encoding on the quantized orthogonal transform coefficient supplied from the quantization unit 75. Then, the lossless encoding unit 76 generates encoded data from the encoding information that has been losslessly encoded in the process of step S 47 and the orthogonal transform coefficient that has been losslessly encoded, and supplies the encoded data to the accumulation buffer 77.
- step S49 the accumulation buffer 77 temporarily accumulates the encoded data supplied from the lossless encoding unit 76.
- step S50 the rate control unit 93 controls the rate of the quantization operation of the quantization unit 75 based on the encoded data stored in the storage buffer 77 so that overflow or underflow does not occur.
- step S51 the generation unit 78 generates and outputs an encoded stream from the encoded data and parameter set stored in the accumulation buffer 77.
- the intra prediction process, the Intra BC prediction, and the inter prediction are always performed. Only one of them may be performed.
- FIG. 6 is a flowchart for explaining the details of the Intra-BC prediction process for performing Intra-BC prediction and the like in the process of Step S33 of FIG.
- the limiting unit 101 (FIG. 2) of the motion prediction / compensation unit 89 determines the reference range of the current block and supplies it to the detection unit 102.
- the processes in steps S62 to S70 are performed for each PU mode.
- step S62 the detection unit 102 determines whether or not a new search region has been set by the motion prediction / compensation unit 89. If it is determined in step S62 that a new search area has not yet been set, the detection unit 102 waits until a new search area is set.
- step S63 the detection unit 102 determines whether or not the newly set search area exists in the current picture.
- step S64 the detection unit 102 determines whether the search area exists in the reference range supplied from the restriction unit 101.
- the detection unit 102 reads out the search area after the SAO processing as a reference block candidate of the reference picture from the frame memory 85 via the switch 86. .
- step S65 the detection unit 102 obtains a correlation value between each PU of the current block supplied from the screen rearrangement buffer 72 and a reference block candidate of the reference picture.
- step S66 the detection unit 102 determines whether the correlation value obtained in step S65 is greater than the correlation value corresponding to the best vector held for each PU. If it is determined in step S66 that the correlation value is greater than the correlation value corresponding to the best vector, the process proceeds to step S67.
- step S67 the detection unit 102 sets the motion vector of integer pixel accuracy between the PU of the current block corresponding to the correlation value obtained in step S65 and the reference block candidate of the reference picture as the best vector, and uses the best vector. And the corresponding correlation value is held. Then, the process proceeds to step S68.
- step S63 If it is determined in step S63 that the search area does not exist in the current picture, if it is determined in step S64 that the search area does not exist in the reference range, or if the correlation value corresponds to the best vector in step S66. If it is determined that the correlation value is not greater than the correlation value, the process proceeds to step S68.
- step S68 the detection unit 102 determines whether all the encoded regions of the current picture have been set as search regions by the motion prediction / compensation unit 89. If it is determined in step S68 that not all areas have been set as search areas, the process returns to step S62, and the processes in steps S62 to S68 are repeated until all areas are set as search areas. .
- step S68 the detection unit 102 supplies the best vector of each held PU to the prediction unit 103.
- step S69 the prediction unit 103 performs IntraInBC prediction by performing compensation processing on the reference block candidate of the reference picture based on the best vector supplied from the detection unit 102 in units of PUs. A prediction image is generated.
- step S70 the prediction unit 103 calculates a cost function value in units of PUs based on the current block and the predicted image supplied from the screen rearrangement buffer 72.
- the prediction unit 103 outputs a cost function value and a predicted image.
- the cost function value output from the Intra BC prediction unit 100 as described above is compared with the cost function value corresponding to the inter prediction of each PU mode by the motion prediction / compensation unit 89 to determine the optimal inter prediction mode. .
- the encoding device 70 restricts the motion vector of the current block used for intra-BC prediction so that an area other than the reference range in the current picture is not used for prediction of the current block. Therefore, for example, in intra-BC prediction, a picture after SAO processing can be referred to as a reference picture. As a result, there is no need to prepare a cache or the like for the reference picture for Intra-BC prediction, and an increase in memory bandwidth, processing load, and mounting cost when performing Intra-BC prediction can be prevented.
- FIG. 7 is a block diagram illustrating a configuration example of an embodiment of a decoding device as an image processing device to which the present disclosure is applied, which decodes an encoded stream transmitted from the encoding device 70 of FIG.
- the decoding device 130 includes a frame memory 141, a switch 142, an intra prediction unit 143, a motion compensation unit 147, and a switch 148.
- the accumulation buffer 131 of the decoding device 130 receives and accumulates the encoded stream from the encoding device 70 of FIG.
- the accumulation buffer 131 sequentially supplies the encoded data of each CU in the stored encoded stream to the lossless decoding unit 132 as encoded data of the current block. Note that the parameter set in the encoded stream is supplied to each unit of the decoding device 130 as necessary, and used for processing.
- the lossless decoding unit 132 performs lossless decoding such as variable length decoding and arithmetic decoding corresponding to the lossless encoding of the lossless encoding unit 76 of FIG. Obtained orthogonal transform coefficients and encoding information.
- the lossless decoding unit 132 supplies the quantized orthogonal transform coefficient to the inverse quantization unit 133.
- the lossless decoding unit 132 supplies intra prediction mode information and the like as encoded information to the intra prediction unit 143, and supplies reference picture specifying information, motion vectors, inter prediction mode information, and the like to the motion compensation unit 147.
- the lossless decoding unit 132 supplies intra prediction mode information or inter prediction mode information as encoded information to the switch 148.
- the lossless decoding unit 132 supplies offset filter information as encoded information to the filter 136.
- the inverse quantization unit 133, the inverse orthogonal transform unit 134, the addition unit 135, the filter 136, the frame memory 141, the switch 142, the intra prediction unit 143, and the motion compensation unit 147 are the inverse quantization unit 79 and the inverse orthogonal transform unit illustrated in FIG. 80, the adding unit 81, the filter 82, the frame memory 85, the switch 86, the intra prediction unit 87, and the motion prediction / compensation unit 89, the same process is performed, whereby the current block is decoded.
- the inverse quantization unit 133 inversely quantizes the quantized orthogonal transform coefficient from the lossless decoding unit 132 and supplies the orthogonal transform coefficient obtained as a result to the inverse orthogonal transform unit 134.
- the inverse orthogonal transform unit 134 performs inverse orthogonal transform on the orthogonal transform coefficient from the inverse quantization unit 133 in units of TUs.
- the inverse orthogonal transform unit 134 supplies residual information obtained as a result of the inverse orthogonal transform to the addition unit 135.
- the adding unit 135 decodes the current block by adding the residual information supplied from the inverse orthogonal transform unit 134 and the prediction image supplied from the switch 148. Note that, when the predicted image is not supplied from the switch 148, the adding unit 135 uses the residual information supplied from the inverse orthogonal transform unit 134 as a decoding result. The adding unit 135 supplies the current block obtained as a result of decoding to the frame memory 141 and the filter 136.
- the filter 136 holds the current block supplied from the adding unit 135 as an encoded CU.
- the filter 136 uses the current block and the adjacent block supplied from the addition unit 135 to perform deblock filter processing on a maximum of three pixels arranged in the direction perpendicular to the boundary around the boundary between the current block and the adjacent block. I do.
- the filter 136 uses the offset represented by the offset filter information supplied from the lossless decoding unit 132 to perform the type of SAO processing represented by the offset filter information on the pixel after the deblocking filter processing.
- the filter 136 supplies the pixels after the SAO processing to the frame memory 141 and the screen rearrangement buffer 139.
- the screen rearrangement buffer 139 stores the pixels after SAO processing supplied from the filter 136 in units of frames.
- the screen rearrangement buffer 139 rearranges the stored pictures in frame units for encoding in the original display order and supplies them to the D / A converter 140.
- the D / A conversion unit 140 D / A converts the picture supplied from the screen rearrangement buffer 139 and outputs it.
- the frame memory 141 is composed of, for example, DRAM.
- the frame memory 141 stores a part of the current block before the deblocking filter processing supplied from the adding unit 135 and the pixel after the SAO processing supplied from the filter 136.
- the pixels adjacent to the PU are supplied to the intra prediction unit 143 via the switch 142 as peripheral pixels.
- the current picture after the SAO process stored in the frame memory 141 and the picture after the SAO process before the current picture in the coding order are output to the motion compensation unit 147 via the switch 142 as a reference picture.
- the intra prediction unit 143 uses the peripheral pixels read from the frame memory 141 via the switch 142 in units of PUs, and performs intra prediction in the optimal intra prediction mode indicated by the intra prediction mode information supplied from the lossless decoding unit 132. Process.
- the intra prediction unit 143 supplies the prediction image generated as a result to the switch 148.
- the motion compensation unit 147 performs motion compensation processing on a PU basis based on the inter prediction mode information, the reference picture specifying information, and the motion vector supplied from the lossless decoding unit 132.
- the motion compensation unit 147 reads the reference picture specified by the reference picture specifying information from the frame memory 141 via the switch 142.
- the motion compensation unit 147 performs motion compensation processing in the optimal inter prediction mode indicated by the inter prediction mode information, using the reference picture and the motion vector.
- the motion compensation unit 147 supplies the predicted image generated as a result to the switch 148.
- the switch 148 supplies the prediction image supplied from the intra prediction unit 143 to the addition unit 135.
- the switch 148 supplies the prediction image supplied from the motion compensation unit 147 to the adding unit 135.
- FIG. 8 is a flowchart for explaining the decoding process of the decoding device 130 of FIG.
- the accumulation buffer 131 of the decoding device 130 receives the encoded stream from the encoding device 70 of FIG. 1 and accumulates it.
- the accumulation buffer 131 sequentially supplies the encoded data of each CU in the stored encoded stream to the lossless decoding unit 132 as encoded data of the current block.
- step S132 the lossless decoding unit 132 performs lossless decoding such as variable length decoding and arithmetic decoding corresponding to the lossless encoding of the lossless encoding unit 76 of FIG. 1 on the encoded data from the accumulation buffer 131.
- lossless decoding unit 132 supplies the quantized orthogonal transform coefficient to the inverse quantization unit 133.
- the lossless decoding unit 132 supplies intra prediction mode information and the like as encoded information to the intra prediction unit 143, and supplies reference picture specifying information, motion vectors, inter prediction mode information, and the like to the motion compensation unit 147.
- the lossless decoding unit 132 supplies intra prediction mode information or inter prediction mode information as encoded information to the switch 148.
- the lossless decoding unit 132 supplies offset filter information as encoded information to the filter 136.
- step S133 the inverse quantization unit 133 inversely quantizes the quantized orthogonal transform coefficient from the lossless decoding unit 132, and supplies the resulting orthogonal transform coefficient to the inverse orthogonal transform unit 134.
- step S134 the inverse orthogonal transform unit 134 performs inverse orthogonal transform on the orthogonal transform coefficient from the inverse quantization unit 133, and supplies the residual information obtained as a result to the addition unit 135.
- the processes in steps S136 to S141 and step S148 are performed in units of PUs.
- step S135 the motion compensation unit 147 determines whether the inter prediction mode information of the PU to be processed is supplied from the lossless decoding unit 132. If it is determined in step S135 that the inter prediction mode information has been supplied, the process proceeds to step S136.
- step S136 the motion compensation unit 147 determines whether or not the optimal inter prediction mode represented by the inter prediction mode information of the processing target PU is a mode representing Intra BC prediction. If it is determined in step S136 that the optimal inter prediction mode is a mode representing Intra BC prediction, the process proceeds to step S137.
- step S137 the motion compensation unit 147 determines whether the reference picture is the current picture based on the reference picture specifying information of the processing target PU supplied from the lossless decoding unit 132.
- step S138 the processing target PU that is a motion vector supplied from the lossless decoding unit 132 is a vector between the current block and the processing target PU. It is determined whether a block of the same size as is within the reference range.
- the reference range is determined by the motion compensation unit 147 based on the current block, similarly to the restriction unit 101.
- step S138 it is determined that a block having the same size as that of the processing target PU, which is a motion vector supplied from the lossless decoding unit 132, between the current block and the processing target PU is within the reference range. If YES, the process proceeds to step S139.
- step S139 the motion compensation unit 147 reads the current picture from the frame memory 141 based on the PU mode and the motion vector represented by the inter prediction mode information of the processing target PU, thereby performing Intra BC prediction on the processing target PU. Do.
- the motion compensation unit 147 supplies the predicted image generated as a result to the switch 148, and the process proceeds to step S142.
- step S136 if it is determined in step S136 that the optimum inter prediction mode is not a mode representing Intra BC prediction, that is, if the optimum inter prediction mode is a mode representing inter prediction, the process proceeds to step S140.
- step S140 the motion compensation unit 147 reads the reference picture from the frame memory 141 based on the PU mode, the reference picture specifying information, and the motion vector represented by the inter prediction mode information of the PU to be processed, thereby processing the processing target. Inter prediction for PU.
- the motion compensation unit 147 supplies the predicted image generated as a result to the switch 148, and the process proceeds to step S142.
- step S135 when it is determined in step S135 that the inter prediction mode information is not supplied, that is, when the intra prediction mode information is supplied to the intra prediction unit 143, the process proceeds to step S141.
- step S141 the intra prediction unit 143 performs intra prediction processing in the optimal intra prediction mode indicated by the intra prediction mode information using the peripheral pixels read from the frame memory 141 via the switch 142 with respect to the current block. Do.
- 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 148, and the process proceeds to step S142.
- step S142 the adding unit 135 decodes the current block by adding the residual information supplied from the inverse orthogonal transform unit 134 and the prediction image supplied from the switch 148.
- the adding unit 135 supplies the current block obtained as a result of decoding to the frame memory 141 and the filter 136.
- the filter 136 holds the current block supplied from the adding unit 135 as an encoded CU.
- step S143 the filter 136 uses the current block and the adjacent block supplied from the addition unit 135 to perform the decoding on each of up to three pixels arranged in the direction perpendicular to the boundary centering on the boundary between the current block and the adjacent block. Perform block filter processing.
- step S144 the filter 136 uses the offset represented by the offset filter information supplied from the lossless decoding unit 132 to perform the type of SAO processing represented by the offset filter information on the pixel after the deblocking filter processing.
- the filter 136 supplies the pixels after the SAO processing to the frame memory 141 and the screen rearrangement buffer 139.
- step S145 the frame memory 141 stores a part of the current block before the deblocking filter processing supplied from the adding unit 135 and the pixel after the SAO processing supplied from the filter 136.
- the pixels adjacent to the PU are supplied to the intra prediction unit 143 via the switch 142 as peripheral pixels.
- the current picture after the SAO process stored in the frame memory 141 and the picture after the SAO process preceding the current picture in the coding order are output to the motion compensation unit 147 via the switch 142 as a reference picture.
- step S146 the screen rearrangement buffer 139 stores the pixels after the SAO processing supplied from the filter 136 in units of frames, and returns to the original display order of the stored frame-by-frame pictures for encoding. Sort the.
- the screen rearrangement buffer 139 supplies the rearranged picture to the D / A conversion unit 140.
- step S147 the D / A conversion unit 140 D / A converts the picture supplied from the screen rearrangement buffer 139 and outputs it. Then, the process ends.
- step S137 if it is determined in step S137 that the reference picture is not the current picture, or the processing target PU whose motion vector supplied from the lossless decoding unit 132 is a vector between the current block and the processing target PU. If it is determined that a block having the same size as is not within the reference range, the process proceeds to step S148.
- step S148 the decoding device 130 performs predetermined error processing on the processing target PU, and ends the processing.
- the decoding apparatus 130 performs Intra BC prediction using the motion vector of the current block that is restricted so that a region other than the reference range in the current picture is not used for prediction of the current block. Therefore, for example, in intra-BC prediction, a picture after SAO processing can be referred to as a reference picture. As a result, there is no need to prepare a cache or the like for the reference picture for Intra-BC prediction, and an increase in memory bandwidth, processing load, and mounting cost when performing Intra-BC prediction can be prevented.
- the region 114 having a horizontal or vertical distance of 3 pixels or less from the CU group 113 that has not yet been encoded is excluded from the reference range, but is within a multiple of 4 pixels.
- the region may be excluded from the reference range.
- Intra BC prediction can be performed. Therefore, encoding processing and decoding processing can be performed in parallel on a CU or PU basis, and the processing load can be reduced.
- ⁇ Second 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. 9 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. 10 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, the processing load at the time of performing Intra
- FIG. 11 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 to 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, the processing load at the time of performing Intra
- FIG. 12 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 encoder 943 is provided with the function of the encoding apparatus (encoding method) of the present application
- the decoder 947 is provided with the function of the decoding apparatus (decoding method) of the present application. For this reason, the processing load at the time of performing Intra
- FIG. 13 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, the processing load at the time of performing Intra
- FIG. 14 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. 14 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. 14 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. 14, the front end module 1314 includes, for example, an antenna unit 1351, a filter 1352, and an amplification 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. 15 illustrates an example of a schematic configuration of a video processor 1332 (FIG. 14) to which the present disclosure is applied.
- the video processor 1332 receives 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 demultiplexing unit
- the video input processing unit 1401 acquires a video signal input from, for example, the connectivity 1321 (FIG. 14) 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 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, connectivity 1321 (FIG. 14).
- 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. 14), for example, into a digital format, and encodes the audio signal using 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. 14).
- 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).
- the demultiplexing unit (DMUX) 1413 obtains a transport stream supplied from, for example, the connectivity 1321 and the broadband modem 1333 (both in FIG. 14) via the stream buffer 1414 and demultiplexes the transport stream. Can be converted into a video stream and an audio stream. Further, for example, the demultiplexing unit (DMUX) 1413 obtains file data read from various recording media by, for example, the connectivity 1321 (FIG. 14) via the stream buffer 1414, and demultiplexes the file data. It can be converted into a video stream and an audio stream.
- 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. 14) 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 of which are shown in FIG. 14), 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. 14), 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. 14) or the like is converted into digital image data of a predetermined format such as 4: 2: 2Y / Cb / Cr format by 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. 14) 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. 14).
- 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. 14) 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.
- the file data read from various recording media in the connectivity 1321 (FIG. 14) and inputted 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 to third embodiments. In this way, the video processor 1332 can obtain the same effects as those described above with reference to FIGS. 1 to 8.
- the present disclosure (that is, the functions of the encoding device and the decoding device according to each of the above-described embodiments) 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.
- FIG. 16 illustrates another example of a schematic configuration of the video processor 1332 (FIG. 14) 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. 14) or the like 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. 14) as a reproduced video signal or as image data of 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, 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 in the AVC / H.264 format.
- HEVC / H.2651543 is a functional block that encodes and decodes image data using HEVC.
- HEVC / H.265 (Scalable) 1544 is a functional block that performs scalable encoding and scalable decoding of image data using HEVC.
- HEVC / H.265 (Multi-view) 1545 is a functional block that multi-view encodes or multi-view decodes image data using HEVC.
- 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 a broadband modem 1333, connectivity 1321 (both in FIG. 14), and the like.
- the video interface 1520 is an interface for, for example, the connectivity 1321 and the camera 1322 (both are FIG. 14).
- the transport stream is transmitted to the multiplexing / demultiplexing unit (MUX DMUX) via the network interface 1519. ) 1518 to be demultiplexed and decoded by the codec engine 1516.
- MUX DMUX multiplexing / demultiplexing unit
- 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. 14), 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. 14) via the interface 1520 and recorded on various recording media.
- encoded data file data obtained by encoding image data read from a recording medium (not shown) by the connectivity 1321 (FIG. 14) or the like is multiplexed / demultiplexed via the video interface 1520.
- 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 (FIG. 14) via the display interface 1512. 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 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 to third embodiments. With the codec engine 1516 doing in this way, the video processor 1332 can obtain the same effects as those described above with reference to FIGS. 1 to 8.
- the present disclosure (that is, the functions of the encoding device and the decoding device according to each of the above-described embodiments) may be realized by hardware such as a logic circuit, an embedded program, or the like. It may be realized by software, 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.
- 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. 10), the mobile phone 920 (FIG. 11), the recording / reproducing device 940 (FIG. 12), the imaging device 960 (FIG. 13), or 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 8 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. 10), a mobile phone 920 (FIG. 11), a recording / playback device 940 (FIG. 12), It can be incorporated in an imaging device 960 (FIG. 13) or the like.
- the apparatus can obtain the same effects as those described above with reference to FIGS. 1 to 8 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.
- This disclosure receives bitstreams compressed by orthogonal transform such as discrete cosine transform and motion compensation, such as MPEG, H.26x, etc., via network media such as satellite broadcasting, cable TV, the Internet, and mobile phones.
- orthogonal transform such as discrete cosine transform and motion compensation
- the present invention can be applied to an encoding device or a decoding device that is used when processing on a storage medium such as an optical, magnetic disk, or flash memory.
- 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 take a cloud computing configuration in which one function is shared by a plurality of devices via a network and is processed jointly.
- 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.
- This disclosure can have the following configurations.
- An image processing apparatus comprising: a limiting unit that restricts a motion vector of a current block used for prediction using correlation in a screen so that neighboring pixels of the current block are not used for the prediction of the current block.
- the image according to (1) further comprising: a prediction unit that performs the prediction using a reference range that does not include the surrounding pixels in the screen including the current block based on the motion vector limited by the limitation unit. Processing equipment.
- the peripheral pixel is configured such that a horizontal or vertical distance with a region in the screen that has not been encoded at the time of encoding the current block is within a predetermined range. ).
- the image processing device configured to perform the prediction using an image in the reference range after deblocking filter processing and SAO (Sample adaptive offset) processing.
- the image processing apparatus wherein the predetermined range is configured to be within three pixels.
- the image processing apparatus wherein the predetermined range is configured to be within a pixel that is a multiple of four.
- the image processing device according to any one of (1) to (6), wherein the current block is configured to be a CU (Coding Unit).
- the image processing device An image processing method including a restriction step of restricting a motion vector of a current block used for prediction using correlation in a screen so that neighboring pixels of the current block are not used for the prediction of the current block.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
1.第1実施の形態:符号化装置および復号装置(図1乃至図8)
2.第2実施の形態:コンピュータ(図9)
3.第3実施の形態:テレビジョン装置(図10)
4.第4実施の形態:携帯電話機(図11)
5.第5実施の形態:記録再生装置(図12)
6.第6実施の形態:撮像装置(図13)
7.第7実施の形態:ビデオセット(図14乃至図16)
(符号化装置の一実施の形態の構成例)
図1は、本開示を適用した画像処理装置としての符号化装置の一実施の形態の構成例を示すブロック図である。
図2は、図1の動き予測・補償部89のうちのIntra BC予測等を行うIntra BC予測部の構成例を示すブロック図である。
図3は、参照範囲の例を示す図である。
図4および図5は、図1の符号化装置70の符号化処理を説明するフローチャートである。
図7は、図1の符号化装置70から伝送される符号化ストリームを復号する、本開示を適用した画像処理装置としての復号装置の一実施の形態の構成例を示すブロック図である。
図8は、図7の復号装置130の復号処理を説明するフローチャートである。
一方、ステップS136で最適インター予測モードがIntra BC予測を表すモードではないと判定された場合、即ち最適インター予測モードがインター予測を表すモードである場合、処理はステップS140に進む。
(本開示を適用したコンピュータの説明)
上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
(テレビジョン装置の構成例)
図10は、本開示を適用したテレビジョン装置の概略構成を例示している。テレビジョン装置900は、アンテナ901、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、表示部906、音声信号処理部907、スピーカ908、外部インタフェース部909を有している。さらに、テレビジョン装置900は、制御部910、ユーザインタフェース部911等を有している。
(携帯電話機の構成例)
図11は、本開示を適用した携帯電話機の概略構成を例示している。携帯電話機920は、通信部922、音声コーデック923、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、制御部931を有している。これらは、バス933を介して互いに接続されている。
(記録再生装置の構成例)
図12は、本開示を適用した記録再生装置の概略構成を例示している。記録再生装置940は、例えば受信した放送番組のオーディオデータとビデオデータを、記録媒体に記録して、その記録されたデータをユーザの指示に応じたタイミングでユーザに提供する。また、記録再生装置940は、例えば他の装置からオーディオデータやビデオデータを取得し、それらを記録媒体に記録させることもできる。さらに、記録再生装置940は、記録媒体に記録されているオーディオデータやビデオデータを復号して出力することで、モニタ装置等において画像表示や音声出力を行うことができるようにする。
(撮像装置の構成例)
図13は、本開示を適用した撮像装置の概略構成を例示している。撮像装置960は、被写体を撮像し、被写体の画像を表示部に表示させたり、それを画像データとして、記録媒体に記録する。
(実施のその他の例)
以上において本開示を適用する装置やシステム等の例を説明したが、本開示は、これに限らず、このような装置またはシステムを構成する装置に搭載するあらゆる構成、例えば、システムLSI(Large Scale Integration)等としてのプロセッサ、複数のプロセッサ等を用いるモジュール、複数のモジュール等を用いるユニット、ユニットにさらにその他の機能を付加したセット等(すなわち、装置の一部の構成)として実施することもできる。
本開示をセットとして実施する場合の例について、図14を参照して説明する。図14は、本開示を適用したビデオセットの概略的な構成の一例を示している。
図15は、本開示を適用したビデオプロセッサ1332(図14)の概略的な構成の一例を示している。
図16は、本開示を適用したビデオプロセッサ1332(図14)の概略的な構成の他の例を示している。図16の例の場合、ビデオプロセッサ1332は、ビデオデータを所定の方式で符号化・復号する機能を有する。
ビデオセット1300は、画像データを処理する各種装置に組み込むことができる。例えば、ビデオセット1300は、テレビジョン装置900(図10)、携帯電話機920(図11)、記録再生装置940(図12)、撮像装置960(図13)等に組み込むことができる。ビデオセット1300を組み込むことにより、その装置は、図1乃至図8を参照して上述した効果と同様の効果を得ることができる。
画面内の相関性を利用した予測に用いられるカレントブロックの動きベクトルを、前記カレントブロックの周辺画素が前記カレントブロックの前記予測に用いられないように制限する制限部
を備える画像処理装置。
(2)
前記制限部により制限された前記動きベクトルに基づいて、前記カレントブロックを含む画面内の前記周辺画素を含まない参照範囲を用いて前記予測を行う予測部
をさらに備える
前記(1)に記載の画像処理装置。
(3)
前記周辺画素は、前記カレントブロックの符号化時にまだ符号化されていない前記画面内の領域との水平方向または垂直方向の距離が所定の範囲内である画素である
ように構成された
前記(2)に記載の画像処理装置。
(4)
前記予測部は、デブロックフィルタ処理およびSAO(Sample adaptive offset)処理後の前記参照範囲の画像を用いて前記予測を行う
ように構成された
前記(3)に記載の画像処理装置。
(5)
前記所定の範囲は、3画素以内である
ように構成された
前記(4)に記載の画像処理装置。
(6)
前記所定の範囲は、4の倍数の画素以内である
ように構成された
前記(3)に記載の画像処理装置。
(7)
前記カレントブロックは、CU(Coding Unit)である
ように構成された
前記(1)乃至(6)のいずれかに記載の画像処理装置。
(8)
画像処理装置が、
画面内の相関性を利用した予測に用いられるカレントブロックの動きベクトルを、前記カレントブロックの周辺画素が前記カレントブロックの前記予測に用いられないように制限する制限ステップ
を含む画像処理方法。
Claims (8)
- 画面内の相関性を利用した予測に用いられるカレントブロックの動きベクトルを、前記カレントブロックの周辺画素が前記カレントブロックの前記予測に用いられないように制限する制限部
を備える画像処理装置。 - 前記制限部により制限された前記動きベクトルに基づいて、前記カレントブロックを含む画面内の前記周辺画素を含まない参照範囲を用いて前記予測を行う予測部
をさらに備える
請求項1に記載の画像処理装置。 - 前記周辺画素は、前記カレントブロックの符号化時にまだ符号化されていない前記画面内の領域との水平方向または垂直方向の距離が所定の範囲内である画素である
ように構成された
請求項2に記載の画像処理装置。 - 前記予測部は、デブロックフィルタ処理およびSAO(Sample adaptive offset)処理後の前記参照範囲の画像を用いて前記予測を行う
ように構成された
請求項3に記載の画像処理装置。 - 前記所定の範囲は、3画素以内である
ように構成された
請求項4に記載の画像処理装置。 - 前記所定の範囲は、4の倍数の画素以内である
ように構成された
請求項3に記載の画像処理装置。 - 前記カレントブロックは、CU(Coding Unit)である
ように構成された
請求項1に記載の画像処理装置。 - 画像処理装置が、
画面内の相関性を利用した予測に用いられるカレントブロックの動きベクトルを、前記カレントブロックの周辺画素が前記カレントブロックの前記予測に用いられないように制限する制限ステップ
を含む画像処理方法。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP16803156.5A EP3306925B1 (en) | 2015-06-05 | 2016-05-25 | Image processing device and image processing method |
KR1020177031859A KR20180016348A (ko) | 2015-06-05 | 2016-05-25 | 화상 처리 장치 및 화상 처리 방법 |
US15/575,836 US11140400B2 (en) | 2015-06-05 | 2016-05-25 | Image processing apparatus and image processing method for intra BC prediction |
JP2017521852A JP6711353B2 (ja) | 2015-06-05 | 2016-05-25 | 画像処理装置および画像処理方法 |
CN201680030966.7A CN107683606B (zh) | 2015-06-05 | 2016-05-25 | 图像处理装置和图像处理方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015-114915 | 2015-06-05 | ||
JP2015114915 | 2015-06-05 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2016194721A1 true WO2016194721A1 (ja) | 2016-12-08 |
Family
ID=57440967
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2016/065390 WO2016194721A1 (ja) | 2015-06-05 | 2016-05-25 | 画像処理装置および画像処理方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11140400B2 (ja) |
EP (1) | EP3306925B1 (ja) |
JP (1) | JP6711353B2 (ja) |
KR (1) | KR20180016348A (ja) |
CN (1) | CN107683606B (ja) |
WO (1) | WO2016194721A1 (ja) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018210315A1 (en) * | 2017-05-18 | 2018-11-22 | Mediatek Inc. | Method and apparatus of motion vector constraint for video coding |
WO2019187096A1 (ja) * | 2018-03-30 | 2019-10-03 | 株式会社ソシオネクスト | 復号方法、復号装置、符号化装置及びプログラム |
WO2020156541A1 (en) | 2019-02-02 | 2020-08-06 | Beijing Bytedance Network Technology Co., Ltd. | Data storage in buffers for intra block copy in video coding |
EP3915265A4 (en) | 2019-03-01 | 2022-06-22 | Beijing Bytedance Network Technology Co., Ltd. | DIRECTION-BASED PREDICTION FOR INTRA BLOCK COPY IN VIDEO CODING |
CN113545068B (zh) | 2019-03-01 | 2023-09-15 | 北京字节跳动网络技术有限公司 | 用于视频编解码中的帧内块复制的基于顺序的更新 |
EP3915252A4 (en) | 2019-03-04 | 2022-03-23 | Beijing Bytedance Network Technology Co., Ltd. | IMPLEMENTATION OF ASPECTS IN AN INTRA BLOCK COPY IN VIDEO ENCODING |
CN113994703A (zh) * | 2019-06-11 | 2022-01-28 | 索尼集团公司 | 图像处理装置和图像处理方法 |
US20220353546A1 (en) * | 2019-06-19 | 2022-11-03 | Sony Group Corporation | Image processing device and image processing method |
JP7359934B2 (ja) | 2019-07-10 | 2023-10-11 | 北京字節跳動網絡技術有限公司 | 映像符号化におけるイントラブロックコピーのためのサンプル識別 |
US11979560B2 (en) * | 2021-08-25 | 2024-05-07 | Tencent America LLC | Intra block copy with an adaptive local reference range |
US20230224472A1 (en) * | 2022-01-12 | 2023-07-13 | Tencent America LLC | Motion vector restriction for out-of-frame boundary conditions |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014050695A1 (ja) * | 2012-09-28 | 2014-04-03 | ソニー株式会社 | 画像処理装置および方法 |
WO2014050948A1 (ja) * | 2012-09-28 | 2014-04-03 | シャープ株式会社 | 画像復号装置及び画像符号化装置 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103891292B (zh) * | 2011-10-24 | 2018-02-02 | 寰发股份有限公司 | 视频数据环路滤波处理方法及其装置 |
US10015515B2 (en) * | 2013-06-21 | 2018-07-03 | Qualcomm Incorporated | Intra prediction from a predictive block |
US20150071357A1 (en) * | 2013-09-12 | 2015-03-12 | Qualcomm Incorporated | Partial intra block copying for video coding |
KR102257269B1 (ko) | 2013-10-14 | 2021-05-26 | 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 | 비디오 및 이미지 코딩 및 디코딩을 위한 인트라 블록 카피 예측 모드의 피쳐 |
US10477232B2 (en) * | 2014-03-21 | 2019-11-12 | Qualcomm Incorporated | Search region determination for intra block copy in video coding |
KR20170066457A (ko) * | 2014-09-26 | 2017-06-14 | 브이아이디 스케일, 인크. | 시간적 블록 벡터 예측을 갖는 인트라 블록 카피 코딩 |
EP3202150B1 (en) * | 2014-09-30 | 2021-07-21 | Microsoft Technology Licensing, LLC | Rules for intra-picture prediction modes when wavefront parallel processing is enabled |
US10212445B2 (en) * | 2014-10-09 | 2019-02-19 | Qualcomm Incorporated | Intra block copy prediction restrictions for parallel processing |
US10306246B2 (en) * | 2015-02-13 | 2019-05-28 | Mediatek Inc. | Method and apparatus of loop filters for efficient hardware implementation |
-
2016
- 2016-05-25 EP EP16803156.5A patent/EP3306925B1/en active Active
- 2016-05-25 JP JP2017521852A patent/JP6711353B2/ja active Active
- 2016-05-25 US US15/575,836 patent/US11140400B2/en active Active
- 2016-05-25 WO PCT/JP2016/065390 patent/WO2016194721A1/ja active Application Filing
- 2016-05-25 KR KR1020177031859A patent/KR20180016348A/ko not_active Application Discontinuation
- 2016-05-25 CN CN201680030966.7A patent/CN107683606B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014050695A1 (ja) * | 2012-09-28 | 2014-04-03 | ソニー株式会社 | 画像処理装置および方法 |
WO2014050948A1 (ja) * | 2012-09-28 | 2014-04-03 | シャープ株式会社 | 画像復号装置及び画像符号化装置 |
Non-Patent Citations (1)
Title |
---|
RAPAKA, KRISHNA ET AL.: "On parallel processing capability of intra block copy", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG 16 WP3 AND ISO/IEC JTC1/ SC29/WG11 JCTVC-S0220R1, 24 October 2014 (2014-10-24), pages 1 - 9, XP030117009 * |
Also Published As
Publication number | Publication date |
---|---|
US20180124411A1 (en) | 2018-05-03 |
JPWO2016194721A1 (ja) | 2018-03-22 |
CN107683606B (zh) | 2021-11-05 |
JP6711353B2 (ja) | 2020-06-17 |
KR20180016348A (ko) | 2018-02-14 |
US11140400B2 (en) | 2021-10-05 |
EP3306925B1 (en) | 2019-09-18 |
CN107683606A (zh) | 2018-02-09 |
EP3306925A4 (en) | 2019-01-02 |
EP3306925A1 (en) | 2018-04-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12063357B2 (en) | Image encoding device and method, and image decoding device and method | |
JP6711353B2 (ja) | 画像処理装置および画像処理方法 | |
US12047597B2 (en) | Image processing apparatus and image processing method | |
JP6287035B2 (ja) | 復号装置および復号方法 | |
WO2015053116A1 (ja) | 復号装置および復号方法、並びに、符号化装置および符号化方法 | |
WO2015163146A1 (ja) | 符号化装置および符号化方法 | |
WO2015098559A1 (ja) | 復号装置および復号方法、並びに、符号化装置および符号化方法 | |
KR102338669B1 (ko) | 화상 처리 장치 및 방법, 및 기록 매체 | |
JP6477930B2 (ja) | 符号化装置および符号化方法 | |
WO2016199574A1 (ja) | 画像処理装置および画像処理方法 | |
JP6402802B2 (ja) | 画像処理装置および方法、プログラム、並びに記録媒体 | |
JP2015050738A (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: 16803156 Country of ref document: EP Kind code of ref document: A1 |
|
REEP | Request for entry into the european phase |
Ref document number: 2016803156 Country of ref document: EP |
|
ENP | Entry into the national phase |
Ref document number: 2017521852 Country of ref document: JP Kind code of ref document: A |
|
ENP | Entry into the national phase |
Ref document number: 20177031859 Country of ref document: KR Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 15575836 Country of ref document: US |
|
NENP | Non-entry into the national phase |
Ref country code: DE |