[go: up one dir, main page]

WO2012005195A1 - 画像処理装置および方法 - Google Patents

画像処理装置および方法 Download PDF

Info

Publication number
WO2012005195A1
WO2012005195A1 PCT/JP2011/065210 JP2011065210W WO2012005195A1 WO 2012005195 A1 WO2012005195 A1 WO 2012005195A1 JP 2011065210 W JP2011065210 W JP 2011065210W WO 2012005195 A1 WO2012005195 A1 WO 2012005195A1
Authority
WO
WIPO (PCT)
Prior art keywords
unit
image
order
scan order
scan
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/JP2011/065210
Other languages
English (en)
French (fr)
Inventor
佐藤 数史
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to CN201180033010XA priority Critical patent/CN102972025A/zh
Priority to US13/808,033 priority patent/US20130107940A1/en
Publication of WO2012005195A1 publication Critical patent/WO2012005195A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/142Detection of scene cut or scene change
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/17Methods 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/176Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/18Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Definitions

  • the present disclosure relates to an image processing apparatus and method, and more particularly, to an image processing apparatus and method capable of improving encoding efficiency.
  • MPEG compressed by orthogonal transform such as discrete cosine transform and motion compensation is used for the purpose of efficient transmission and storage of information.
  • a device that conforms to a system such as Moving (Pictures Experts Group) is becoming widespread in both information distribution at broadcast stations and information reception in general households.
  • MPEG2 International Organization for Standardization
  • IEC International Electrotechnical Commission
  • MPEG2 was mainly intended for high-quality encoding suitable for broadcasting, but it did not support encoding methods with a lower code amount (bit rate) than MPEG1, that is, a higher compression rate. With the widespread use of mobile terminals, the need for such an encoding system is expected to increase in the future, and the MPEG4 encoding system has been standardized accordingly. Regarding the image coding system, the standard was approved as an international standard in December 1998 as ISO / IEC 14496-2.
  • H.26L International Telecommunication Union Telecommunication Standardization Sector
  • Q6 / 16 VCEG Video Coding Expert Group
  • H.26L is known to achieve higher encoding efficiency than the conventional encoding schemes such as MPEG2 and MPEG4, although a large amount of calculation is required for encoding and decoding.
  • Joint ⁇ ⁇ ⁇ ⁇ Model of Enhanced-Compression Video Coding has been implemented based on this H.26L and incorporating functions not supported by H.26L to achieve higher coding efficiency. It has been broken.
  • AVC Advanced Video Coding
  • FRExt including RGB, 4: 2: 2, 4: 4: 4 encoding tools necessary for business use, 8x8DCT and quantization matrix defined by MPEG-2) Fidelity (Range (Extension) Extension) standardization was completed in February 2005, and as a result, Blu-Ray Disc has become an encoding method that can well express film noise in movies using AVC. It has been used for a wide range of applications.
  • the macroblock size which is a partial region serving as an orthogonal transform processing unit of an image
  • 16 pixels ⁇ 16 pixels is a UHD (Ultra High Definition) that is a target of the next-generation encoding method. ; 4000 pixels ⁇ 2000 pixels), which is not optimal. Therefore, in Non-Patent Document 1, etc., it is proposed that the macroblock size is set to 64 ⁇ 64 pixels, 32 pixels ⁇ 32 pixels, or the like.
  • Non-Patent Document 1 by adopting a hierarchical structure, a block larger than 16 ⁇ 16 pixel blocks is defined as a superset while maintaining compatibility with the current AVC macroblock. ing.
  • Non-Patent Document 1 is a proposal to apply an extended macroblock to an inter slice, but Non-Patent Document 2 proposes to apply an extended macroblock to an intra slice.
  • the scan method prepared in advance is not always optimal, and there is a possibility that the encoding efficiency cannot be sufficiently improved.
  • the size of the region is large, and the way of biasing the non-zero coefficient is further diversified. For this reason, the possibility that the scan method prepared in advance is optimized is further reduced, and there is a possibility that there is room for further improvement of the encoding efficiency (the possibility that the encoding efficiency can be sufficiently improved is reduced). There was a fear.
  • the present disclosure has been made in view of such a situation, and an object thereof is to improve encoding efficiency by adaptively determining a scan order according to an image.
  • One aspect of the present disclosure provides a scan order control for controlling a scan order when converting coefficient data obtained by converting an image to be encoded from a two-dimensional array to a one-dimensional array according to a statistical value indicating the feature of the image
  • a scan unit that scans the coefficient data in a two-dimensional array in the scan order controlled by the scan order control unit, and rearranges the coefficient data in the one-dimensional array, and the scan unit rearranges the coefficient data in the one-dimensional array.
  • an encoding unit that encodes the obtained coefficient data.
  • the scan order control unit for each pixel position in the partial region of the image, which is a processing unit of conversion processing for converting the image to generate the coefficient data, the appearance frequency of the non-zero coefficient of the coefficient data, A calculation unit that calculates for each predetermined data unit; and an update unit that updates the scan order in the order of the appearance frequency of the non-zero coefficient for each pixel position in the partial region calculated by the calculation unit,
  • the scan unit may scan the coefficient data in the scan order updated by the update unit.
  • the scan order control unit includes a determination unit that determines the scan order as one of an initial order that is a predetermined scan order determined in advance and an update order that is a scan order updated by the update unit. Further, the scan unit may scan the coefficient data in a scan order determined by the determination unit among the initial order and the update order.
  • the scan order control unit further includes a determination unit that determines whether or not the processing target is an IDR picture, and the determination unit is configured to determine that the processing target is the IDR picture by the determination unit
  • the scan order is determined in the initial order, and when it is determined that the processing target is not the IDR picture, the scan order can be determined in the update order.
  • the scan order control unit further includes a detection unit that detects a scene change, and the determination unit determines the scan order in the initial order when the scene change is detected in the processing target by the detection unit. When the scene change is not detected in the processing target, the scan order can be determined in the update order.
  • the scan order control unit further includes a generating unit that generates flag information indicating whether the scan order is determined by the determining unit in the initial order or selected in the update order, and the encoding unit includes the encoding unit, The flag information generated by the generation unit can be further encoded.
  • the update unit can update the scan order in an order corresponding to the order of appearance frequency of the non-zero coefficient for each pixel position in the partial region of the previously encoded image.
  • the update unit When the update unit performs processing by dividing a single picture into a plurality of slices, according to the order of appearance frequency of the non-zero coefficients for each pixel position in the partial region of the slice encoded immediately before The scan order can be updated.
  • the update unit When the update unit divides a single picture into a plurality of slices and performs processing, the update unit performs a process for each pixel position in the partial region of the slice at the same position as the slice to be processed of the picture encoded immediately before.
  • the scan order can be updated according to the order of appearance frequency of the non-zero coefficients.
  • the update unit When the update unit divides a single picture into a plurality of slices and performs processing of each slice in parallel, the update unit includes a portion of the previously encoded picture in the partial region of the slice at the same position as the slice to be processed.
  • the scan order can be updated according to the order of appearance frequency of the non-zero coefficient for each pixel position.
  • the update unit can update the scan order in an order corresponding to the order of appearance frequencies of the non-zero coefficients for each pixel position in the partial area of the image to be encoded.
  • the scan control unit can control the scan order for each size of a partial area of the image that is a processing unit of conversion processing for converting the image and generating the coefficient data.
  • the scan control unit can control the scan order for each type of image to be processed.
  • One aspect of the present disclosure is also an image processing method of an image processing apparatus, in which a scan order control unit scans coefficient data obtained by converting an image to be encoded from a two-dimensional array to a one-dimensional array. The order is controlled according to the statistical value indicating the characteristics of the image, the scan unit scans the coefficient data of the two-dimensional array in the scan order, rearranges the coefficient data in the one-dimensional array, the encoding unit, An image processing method for encoding the coefficient data rearranged in the one-dimensional array.
  • a scan order when converting coefficient data obtained by converting an image to be encoded from a two-dimensional array to a one-dimensional array is generated in accordance with a statistical value indicating the characteristics of the image.
  • a decoding unit that decodes the encoded data of the image, and a reverse scan when converting the coefficient data obtained by decoding the encoded data by the decoding unit from the one-dimensional array to the two-dimensional array
  • a reverse scan order control unit that controls the order in accordance with a statistical value indicating the characteristics of the image, and the reverse scan order controlled by the reverse scan order control unit;
  • An image processing apparatus including a reverse scanning unit that rearranges the data into the two-dimensional array.
  • the inverse scan order control unit converts the appearance frequency of non-zero coefficients of the coefficient data for each pixel position in the partial region of the image, which is a processing unit of conversion processing for converting the image and generating the coefficient data.
  • a calculation unit that calculates for each predetermined data unit, and an update unit that updates the reverse scan order in the order of the appearance frequency of the non-zero coefficient for each pixel position in the partial region calculated by the calculation unit.
  • the reverse scan unit may reverse scan the coefficient data in the reverse scan order updated by the update unit.
  • the reverse scan order control unit determines the reverse scan order as one of an initial order that is a predetermined reverse scan order set in advance and an update order that is a reverse scan order updated by the update unit.
  • a determination unit that performs the reverse scan on the coefficient data in the reverse scan order determined by the determination unit in the initial order and the update order.
  • the reverse scan order control unit further includes an IDR determination unit that determines whether or not a processing target is an IDR picture, and the determination unit determines that the processing target is the IDR picture by the IDR determination unit.
  • the reverse scan order is determined in the initial order, and when it is determined that the processing target is not the IDR picture, the reverse scan order can be determined in the update order.
  • the reverse scan order control unit further includes a flag determination unit that determines a value of flag information indicating whether the scan order of the coefficient data is the initial order or the update order, and the determination unit includes: When the flag determination unit determines that the scan order of the coefficient data is the initial order, the reverse scan order is determined as the initial order, and the scan order of the coefficient data is determined as the update order. If so, the reverse scan order can be determined in the update order.
  • Another aspect of the present disclosure is also an image processing method of an image processing apparatus, in which a decoding unit converts a coefficient data obtained by converting an image to be encoded from a two-dimensional array to a one-dimensional array. Is decoded in accordance with the statistical value indicating the characteristics of the image, and decodes the encoded data of the image, and a reverse scan order control unit calculates the coefficient data obtained by decoding the encoded data. , Controlling a reverse scan order when converting from the one-dimensional array to the two-dimensional array according to a statistical value indicating the characteristics of the image, and a reverse scan unit performs the reverse scan order in the one-dimensional array.
  • coefficient data is reverse-scanned and rearranged into the two-dimensional array.
  • a scan order when converting coefficient data obtained by converting an image to be encoded from a two-dimensional array to a one-dimensional array is controlled according to a statistical value indicating a feature of the image, and the scan is performed.
  • the coefficient data of the two-dimensional array is scanned, rearranged into the one-dimensional array, and the coefficient data rearranged into the one-dimensional array is encoded.
  • the scan order when converting the coefficient data obtained by converting the image to be encoded from the two-dimensional array to the one-dimensional array is generated by being controlled according to the statistical value indicating the feature of the image. Furthermore, the reverse scan order when the encoded data of the image is decoded and the coefficient data obtained by decoding the encoded data is converted from a one-dimensional array to a two-dimensional array becomes a statistical value indicating the characteristics of the image. The coefficient data of the one-dimensional array is reverse-scanned and rearranged into the two-dimensional array in the reverse scan order.
  • an image can be processed.
  • encoding efficiency can be improved.
  • FIG. 26 is a block diagram illustrating a main configuration example of a personal computer. It is a block diagram which shows the main structural examples of a television receiver. It is a block diagram which shows the main structural examples of a mobile telephone. It is a block diagram which shows the main structural examples of a hard disk recorder. It is a block diagram which shows the main structural examples of a camera.
  • the unit is 4 ⁇ 4 pixels as orthogonal transform.
  • each 4 ⁇ 4 array As a method of converting each 4 ⁇ 4 array into a one-dimensional 16th-order array, it is shown in FIG. 2A depending on whether the block is frame-encoded or field-encoded. Either a zigzag scan or a field scan shown in FIG. 2B is used. *
  • AVC at a high profile or higher, as shown in FIG. 3, it is possible to adaptively switch between 4 ⁇ 4 orthogonal transform and 8 ⁇ 8 orthogonal transform on the screen.
  • the zigzag scan shown in A of FIG. 4 or the B of FIG. 4 depends on whether the block is frame-encoded or field-encoded.
  • a quantized orthogonal transform coefficient that is a two-dimensional array is converted into a one-dimensional array.
  • JM Job Model
  • the following two mode determination methods can be selected: High Complexity Mode and Low Complexity Mode.
  • the cost function value for each prediction mode is calculated, and the prediction mode that minimizes the cost function value is selected as the sub macroblock or the optimum mode for the macroblock.
  • is the entire set of candidate modes for encoding the block or macroblock
  • D is the differential energy between the decoded image and the input image when encoded in the prediction mode.
  • is a Lagrange undetermined multiplier given as a function of the quantization parameter.
  • R is the total code amount when encoding is performed in this mode, including orthogonal transform coefficients.
  • D is the difference energy between the predicted image and the input image, unlike the case of High Complexity Mode.
  • QP2Quant QP
  • HeaderBit is a code amount related to information belonging to Header, such as a motion vector and mode, which does not include an orthogonal transform coefficient.
  • the macro block size of 16 pixels ⁇ 16 pixels is optimal for a large image frame such as UHD (Ultra High Definition; 4000 pixels ⁇ 2000 pixels), which is a target of the next generation encoding method. is not. Therefore, in Non-Patent Document 1, etc., it is proposed that the macroblock size is set to 64 ⁇ 64 pixels, 32 pixels ⁇ 32 pixels, as shown in FIG.
  • Non-Patent Document 1 by adopting a hierarchical structure as shown in FIG. 5, for a 16 ⁇ 16 pixel block or less, as a superset thereof while maintaining compatibility with the current AVC macroblock, A larger block is defined.
  • a macroblock having 16 ⁇ 16 pixels or less is referred to as a normal macroblock, and a macroblock larger than 16 ⁇ 16 pixels is referred to as an extended macroblock.
  • Non-Patent Document 1 is a proposal to apply an extended macroblock to an inter slice, but Non-Patent Document 2 proposes to apply an extended macroblock to an intra slice.
  • Non-Patent Document 1 and Non-Patent Document 2 it is possible to use a size larger than that defined in the AVC encoding method, such as 16 ⁇ 16.
  • Adaptive scan method In a conventional encoding method such as AVC, 4 ⁇ 4 orthogonal transform and 8 ⁇ 8 orthogonal transform scan methods are prepared in advance, but the distribution (bias method) of non-zero coefficients varies depending on the image. For this reason, scanning is not always performed in the optimal scanning order. That is, there is a possibility of further improving the coding efficiency by performing scanning in a scanning order more suitable for the properties of the image.
  • the size of the region is large, and the way of biasing the non-zero coefficient is further diversified. For this reason, the possibility that the scan method prepared in advance is optimized is further reduced, and there is a possibility that there is room for further improvement of the encoding efficiency (the possibility that the encoding efficiency can be sufficiently improved is reduced). There was a fear.
  • the present technology increases the zero-run value and improves the encoding efficiency by adaptively determining the scan order according to the image.
  • FIG. 6 shows the configuration of an embodiment of an image encoding device as an image processing device.
  • the image encoding device 100 shown in FIG. It is an encoding device that encodes an image in the same manner as the H.264 and MPEG (Moving Picture Experts Group) 4 Part 10 (AVC (Advanced Video Coding)) (hereinafter referred to as H.264 / AVC) system.
  • H.264 / AVC Advanced Video Coding
  • the image coding apparatus 100 applies the skip mode and the direct mode not only in the square block but also in the rectangular block. By doing in this way, the image coding apparatus 100 can improve coding efficiency.
  • the image encoding device 100 includes an A / D (Analog / Digital) conversion unit 101, a screen rearrangement buffer 102, a calculation unit 103, an orthogonal transformation unit 104, a quantization unit 105, and a lossless encoding unit 106. And a storage buffer 107.
  • the image encoding device 100 includes an inverse quantization unit 108, an inverse orthogonal transform unit 109, a calculation unit 110, a deblock filter 111, a frame memory 112, a selection unit 113, an intra prediction unit 114, a motion prediction / compensation unit 115, A selection unit 116 and a rate control unit 117 are included.
  • the image encoding device 100 further includes an adaptive scan control unit 121.
  • the A / D conversion unit 101 performs A / D conversion on the input image data, outputs it to the screen rearrangement buffer 102, and stores it.
  • the screen rearrangement buffer 102 rearranges the stored frame images in the display order in the order of frames for encoding in accordance with the GOP (Group of Picture) structure.
  • the screen rearrangement buffer 102 supplies the image with the rearranged frame order to the arithmetic unit 103.
  • the screen rearrangement buffer 102 also supplies the image in which the order of the frames is rearranged to the intra prediction unit 114 and the motion prediction / compensation unit 115.
  • the calculation unit 103 subtracts the prediction image supplied from the intra prediction unit 114 or the motion prediction / compensation unit 115 via the selection unit 116 from the image read from the screen rearrangement buffer 102, and orthogonalizes the difference information.
  • the data is output to the conversion unit 104.
  • the calculation unit 103 subtracts the prediction image supplied from the intra prediction unit 114 from the image read from the screen rearrangement buffer 102.
  • the arithmetic unit 103 subtracts the predicted image supplied from the motion prediction / compensation unit 115 from the image read from the screen rearrangement buffer 102.
  • the orthogonal transform unit 104 performs orthogonal transform such as discrete cosine transform and Karhunen-Loeve transform on the difference information supplied from the computation unit 103 and supplies the transform coefficient to the quantization unit 105.
  • the quantization unit 105 quantizes the transform coefficient output from the orthogonal transform unit 104.
  • the quantization unit 105 sets a quantization parameter based on the information supplied from the rate control unit 117 and performs quantization.
  • the quantization unit 105 supplies the quantized transform coefficient to the lossless encoding unit 106.
  • the lossless encoding unit 106 performs lossless encoding such as variable length encoding and arithmetic encoding on the quantized transform coefficient.
  • the lossless encoding unit 106 acquires information indicating intra prediction from the intra prediction unit 114 and acquires information indicating inter prediction mode, motion vector information, and the like from the motion prediction / compensation unit 115.
  • information indicating intra prediction is hereinafter also referred to as intra prediction mode information.
  • information indicating an information mode indicating inter prediction is hereinafter also referred to as inter prediction mode information.
  • the lossless encoding unit 106 encodes the quantized transform coefficient, and also converts various information such as filter coefficient, intra prediction mode information, inter prediction mode information, and quantization parameter into one piece of header information of the encoded data. Part (multiplex).
  • the lossless encoding unit 106 supplies the encoded data obtained by encoding to the accumulation buffer 107 for accumulation.
  • the lossless encoding unit 106 performs lossless encoding processing such as variable length encoding or arithmetic encoding.
  • variable length coding examples include H.264.
  • CAVLC Context-Adaptive Variable Length Coding
  • arithmetic coding examples include CABAC (Context-Adaptive Binary Arithmetic Coding).
  • the accumulation buffer 107 temporarily holds the encoded data supplied from the lossless encoding unit 106, and at a predetermined timing, the H.264 buffer stores the encoded data. As an encoded image encoded by the H.264 / AVC format, for example, it is output to a recording device or a transmission path (not shown) in the subsequent stage.
  • the transform coefficient quantized by the quantization unit 105 is also supplied to the inverse quantization unit 108.
  • the inverse quantization unit 108 inversely quantizes the quantized transform coefficient by a method corresponding to the quantization by the quantization unit 105.
  • the inverse quantization unit 108 supplies the obtained transform coefficient to the inverse orthogonal transform unit 109.
  • the inverse orthogonal transform unit 109 performs inverse orthogonal transform on the supplied transform coefficient by a method corresponding to the orthogonal transform processing by the orthogonal transform unit 104.
  • the inversely orthogonal transformed output (restored difference information) is supplied to the calculation unit 110.
  • the calculation unit 110 uses the inverse prediction unit 114 or the motion prediction / compensation unit 115 via the selection unit 116 for the inverse orthogonal transformation result supplied from the inverse orthogonal transformation unit 109, that is, the restored difference information.
  • the images are added to obtain a locally decoded image (decoded image).
  • the calculation unit 110 adds the prediction image supplied from the intra prediction unit 114 to the difference information.
  • the calculation unit 110 adds the predicted image supplied from the motion prediction / compensation unit 115 to the difference information.
  • the addition result is supplied to the deblock filter 111 or the frame memory 112.
  • the deblock filter 111 removes block distortion of the decoded image by appropriately performing deblock filter processing, and improves image quality by appropriately performing loop filter processing using, for example, a Wiener filter.
  • the deblocking filter 111 classifies each pixel and performs an appropriate filter process for each class.
  • the deblocking filter 111 supplies the filter processing result to the frame memory 112.
  • the frame memory 112 outputs the stored reference image to the intra prediction unit 114 or the motion prediction / compensation unit 115 via the selection unit 113 at a predetermined timing.
  • the frame memory 112 supplies the reference image to the intra prediction unit 114 via the selection unit 113.
  • the frame memory 112 supplies the reference image to the motion prediction / compensation unit 115 via the selection unit 113.
  • the selection unit 113 supplies the reference image to the intra prediction unit 114 when the reference image supplied from the frame memory 112 is an image to be subjected to intra coding. Further, when the reference image supplied from the frame memory 112 is an image to be subjected to inter coding, the selection unit 113 supplies the reference image to the motion prediction / compensation unit 115.
  • the intra prediction unit 114 performs intra prediction (intra-screen prediction) that generates a predicted image using pixel values in the screen.
  • the intra prediction unit 114 performs intra prediction in a plurality of modes (intra prediction modes).
  • the intra prediction unit 114 generates predicted images in all intra prediction modes, evaluates each predicted image, and selects an optimal mode. When the optimal intra prediction mode is selected, the intra prediction unit 114 supplies the prediction image generated in the optimal mode to the calculation unit 103 and the calculation unit 110 via the selection unit 116.
  • the intra prediction unit 114 supplies information such as intra prediction mode information indicating the adopted intra prediction mode to the lossless encoding unit 106 as appropriate.
  • the motion prediction / compensation unit 115 uses the input image supplied from the screen rearrangement buffer 102 and the reference image supplied from the frame memory 112 via the selection unit 113 for the image to be inter-coded, Motion prediction is performed, motion compensation processing is performed according to the detected motion vector, and a predicted image (inter predicted image information) is generated.
  • the motion prediction / compensation unit 115 performs inter prediction processing in all candidate inter prediction modes, and generates a prediction image.
  • the motion prediction / compensation unit 115 calculates the cost function value of each mode and selects an optimal mode.
  • the motion prediction / compensation unit 115 supplies the prediction image generated in the inter prediction mode selected in this way to the calculation unit 103 and the calculation unit 110 via the selection unit 116.
  • the motion prediction / compensation unit 115 supplies the inter prediction mode information indicating the employed inter prediction mode and the motion vector information indicating the calculated motion vector to the lossless encoding unit 106.
  • the selection unit 116 supplies the output of the intra prediction unit 114 to the calculation unit 103 and the calculation unit 110 in the case of an image to be subjected to intra coding, and outputs the output of the motion prediction / compensation unit 115 in the case of an image to be subjected to inter coding. It supplies to the calculating part 103 and the calculating part 110.
  • the rate control unit 117 controls the quantization operation rate of the quantization unit 105 based on the compressed image stored in the storage buffer 107 so that overflow or underflow does not occur.
  • the adaptive scan control unit 121 adaptively controls the scan order for converting the quantized orthogonal transform coefficient, which is a two-dimensional array in the lossless encoding unit 106, into a one-dimensional array according to the image.
  • the adaptive scan control unit 121 acquires the quantized orthogonal transform coefficient from the lossless encoding unit 106, observes the distribution of nonzero coefficients whose value is nonzero, and determines the lossless code according to the state of the distribution.
  • the scan order of the quantized orthogonal transform coefficients in the conversion unit 106 is determined.
  • the adaptive scan control unit 121 determines a scan order using a distribution of non-zero coefficients in an image encoded in the past, using the fact that there is a high possibility that images having similar characteristics are consecutive in a moving image.
  • the lossless encoding unit 106 scans the orthogonal transform coefficients quantized in the scan order determined by the adaptive scan control unit 121 according to the control.
  • the adaptive scan control unit 121 further acquires an input image from the screen rearrangement buffer 102 and determines whether or not the processing target is an IDR (Instantaneous Decoding Refresh) picture.
  • IDR Intelligent Decoding Refresh
  • the adaptive scan control unit 121 reduces the encoding efficiency by using an inappropriate scan order.
  • the scan order is determined to be a predetermined order (initial order).
  • the adaptive scan control unit 121 detects the presence / absence of a scene change from the input image acquired from the screen rearrangement buffer 102.
  • the adaptive scan control unit 121 increases the coding efficiency by using an inappropriate scan order.
  • the scan order is determined to be a predetermined order (initial order).
  • the adaptive scan control unit 121 generates flag information (default_scan_flag) indicating whether the scan order is set in the update order updated according to the image or set in the predetermined initial order.
  • This flag information is encoded together with the image (quantized orthogonal transform coefficient) by the lossless encoding unit 106 and transmitted to the decoding side. On the decoding side, it is possible to grasp whether the scan order is the initial order or the update order based on the flag information.
  • the image encoding device 100 can improve the encoding efficiency accordingly.
  • FIG. 7 is a block diagram illustrating a main configuration example of the lossless encoding unit 106 and the adaptive scan control unit 121 of FIG.
  • the lossless encoding unit 106 includes a macroblock syntax encoding unit 131, a flag encoding unit 132, and a quantized orthogonal transform coefficient encoding unit 133.
  • the adaptive scan control unit 121 includes a non-zero coefficient counter 141, a sort unit 142, a scan order buffer 143, an IDR determination unit 144, a scene change detection unit 145, a scan order determination unit 146, and a flag generation unit 147.
  • the macroblock syntax encoding unit 131 encodes the prediction mode, motion vector information, and the like supplied from the intra prediction unit 114 or the motion prediction / compensation unit 115, and uses the encoded data as macroblock syntax to store the buffer 107. To supply.
  • the flag encoding unit 132 encodes default_scan_flag generated by the flag generation unit 147 and supplies the encoded data to the accumulation buffer 107.
  • the quantized orthogonal transform coefficient encoding unit 133 encodes the quantized orthogonal transform coefficient supplied from the quantization unit 105 and supplies the encoded data to the accumulation buffer 107. At this time, the quantized orthogonal transform coefficient encoding unit 133 acquires the scan order determined by the scan order determining unit 146, and scans and encodes the quantized orthogonal transform coefficients in the scan order.
  • the quantized orthogonal transform coefficient encoding unit 133 is a non-zero coefficient in each macroblock (partial region serving as an orthogonal transform processing unit of the image) of the quantized orthogonal transform coefficient supplied from the quantization unit 105.
  • Information (non-zero coefficient position) indicating the position of is supplied to the non-zero coefficient counter 141.
  • the non-zero coefficient counter 141 of the adaptive scan control unit 121 acquires the non-zero coefficient position from the quantized orthogonal transform coefficient encoding unit 133, counts the non-zero coefficient for each pixel position in the macroblock, For each predetermined amount of data such as a picture, the accumulated value is obtained.
  • the non-zero coefficient counter 141 supplies a cumulative frequency distribution that is a cumulative value of non-zero coefficients for each position in the macro block to the sorting unit 142.
  • the sorting unit 142 sorts each pixel position in the macro block, which is a partial area serving as an orthogonal transform processing unit of the image, in the order of the cumulative degree.
  • the order is determined as the scan order. For example, when there are a plurality of pixel positions having the same accumulation degree, they are ranked and sorted according to a predetermined rule.
  • the sort unit 142 supplies the determined scan order to the scan order buffer 143.
  • the scan order buffer 143 holds the scan order supplied from the sorting unit 142 as the latest value of the update order that is the updated scan order.
  • the scan order buffer 143 supplies the update order to the scan order determining unit 146 as appropriate.
  • the IDR determination unit 144 refers to the NAL (Network Abstraction Layer) syntax of the input image information supplied from the screen rearrangement buffer 102, and determines whether or not the processing target is an IDR picture.
  • the IDR determination unit 144 supplies the determination result to the scan order determination unit 146.
  • the NAL syntax is a syntax related to NAL (network abstraction layer) defined in the AVC encoding method and the like, and an identifier nal_unit_type of the NAL header indicates whether the slice is an IDR picture.
  • the scene change detection unit 145 analyzes the input image information supplied from the screen rearrangement buffer 102, and detects the occurrence of a scene change based on the analysis result.
  • the method for detecting this scene change is arbitrary.
  • the scene change detection unit 145 compares arbitrary statistical values such as a histogram or average value of pixel values between frames of input image information, and if the difference between the statistical value frames is larger than a predetermined reference, that is, When the feature of the image changes greatly, it is determined that a scene change has occurred.
  • the scene change detection unit 145 notifies the scan order determination unit 146 of whether or not a scene change has occurred.
  • the scan order determination unit 146 stores the scan order in advance based on the IDR determination result supplied from the IDR determination unit 144, the scene change detection result supplied from the scene change detection unit 145, and the like. It is determined whether to change the order or the update order supplied from the scan order buffer 143.
  • the scan order determination unit 146 sets an inappropriate scan order for the image.
  • the scan order is determined in an initial order, which is a predetermined scan order, such as a conventional zigzag scan, and the quantization orthogonal transform coefficient Notify the encoding unit 133.
  • This initial order may be an arbitrary order, but it is generally desirable to use a generally suitable scan order such as a zigzag scan defined in AVC or the like.
  • the scan order determination unit 146 supplies the scan order to the update order that is the scan order supplied from the scan order buffer 143 and updated according to the image. And notifies the quantization orthogonal transform coefficient encoding unit 133 of that fact.
  • the scan order determination unit 146 also supplies the determination result of the scan order to the flag generation unit 147.
  • the flag generation unit 147 sets the value of default_scan_flag according to the determination result, and supplies it to the flag encoding unit 132. For example, when the initial order is selected as the scan order, the flag generation unit 147 sets the value of default_scan_flag to 1. For example, when the update order is selected as the scan order, the flag generation unit 147 sets default_scan_flag to 0.
  • the adaptive scan control unit 121 not only selects whether the scan order of the quantized orthogonal transform coefficients in the lossless encoding unit 106 is the initial order or the update order, but also the cumulative frequency distribution of non-zero coefficients.
  • the update order is updated according to.
  • a zigzag scan order as shown in FIG. 8A is preset as the initial order for a 4 ⁇ 4 block.
  • each square represents a pixel position in the block.
  • the numbers in each square of A in FIG. 8 indicate the scan order (order from 0 to 15).
  • the accumulated value of the non-zero coefficient at each pixel position in the block is as shown in FIG. Suppose that it becomes a distribution.
  • the numbers in each square indicate the cumulative frequency of non-zero coefficients.
  • the sorting unit 142 of the adaptive scan control unit 121 rearranges the scan order in the order of the frequency of this non-zero coefficient, as shown in FIG.
  • the numbers in each square of A in FIG. 8 indicate the scan order (order from 0 to 15).
  • the quantized orthogonal transform coefficient encoding unit 133 of the lossless encoding unit 106 can scan first from a pixel position where a non-zero coefficient is likely to appear. The value can be increased. That is, the lossless encoding unit 106 can perform scanning in a scan order that is more suitable for an image. Therefore, the image encoding device 100 can improve encoding efficiency.
  • the image encoding apparatus 100 scans in an inappropriate scan order with respect to the image because the feature of the current image is greatly different from the feature of the past image that is the basis of the scan order. Execution can be suppressed, and reduction in encoding efficiency can be suppressed.
  • step S101 the A / D converter 101 performs A / D conversion on the input image.
  • step S102 the screen rearrangement buffer 102 stores the A / D converted image, and rearranges the picture from the display order to the encoding order.
  • step S103 the calculation unit 103 calculates the difference between the image rearranged by the process in step S102 and the predicted image.
  • the predicted image is supplied from the motion prediction / compensation unit 115 in the case of inter prediction and from the intra prediction unit 114 in the case of intra prediction to the calculation unit 103 via the selection unit 116.
  • the data amount of difference data is reduced compared to the original image data. Therefore, the data amount can be compressed as compared with the case where the image is encoded as it is.
  • step S104 the orthogonal transform unit 104 orthogonally transforms the difference information generated by the process in step S103. Specifically, orthogonal transformation such as discrete cosine transformation and Karhunen-Loeve transformation is performed, and transformation coefficients are output.
  • orthogonal transformation such as discrete cosine transformation and Karhunen-Loeve transformation is performed, and transformation coefficients are output.
  • step S105 the quantization unit 105 quantizes the orthogonal transform coefficient obtained by the process in step S104.
  • step S105 The difference information quantized by the process of step S105 is locally decoded as follows. That is, in step S106, the inverse quantization unit 108 inversely quantizes the quantized orthogonal transform coefficient (also referred to as a quantization coefficient) generated by the process in step S105 with characteristics corresponding to the characteristics of the quantization unit 105. To do. In step S ⁇ b> 107, the inverse orthogonal transform unit 109 performs inverse orthogonal transform on the orthogonal transform coefficient obtained by the process of step S ⁇ b> 106 with characteristics corresponding to the characteristics of the orthogonal transform unit 104.
  • the quantized orthogonal transform coefficient also referred to as a quantization coefficient
  • step S108 the calculation unit 110 adds the predicted image to the locally decoded difference information, and generates a locally decoded image (an image corresponding to the input to the calculation unit 103).
  • step S109 the deblocking filter 111 filters the image generated by the process of step S108. Thereby, block distortion is removed.
  • step S110 the frame memory 112 stores an image from which block distortion has been removed by the process in step S109. It should be noted that an image that has not been filtered by the deblocking filter 111 is also supplied from the computing unit 110 and stored in the frame memory 112.
  • step S111 the intra prediction unit 114 performs an intra prediction process in the intra prediction mode.
  • step S112 the motion prediction / compensation unit 115 performs an inter motion prediction process for performing motion prediction and motion compensation in the inter prediction mode.
  • step S113 the selection unit 116 determines the optimal prediction mode based on the cost function values output from the intra prediction unit 114 and the motion prediction / compensation unit 115. That is, the selection unit 116 selects either the prediction image generated by the intra prediction unit 114 or the prediction image generated by the motion prediction / compensation unit 115.
  • the selection information indicating which prediction image has been selected is supplied to the intra prediction unit 114 and the motion prediction / compensation unit 115 which has selected the prediction image.
  • the intra prediction unit 114 supplies information indicating the optimal intra prediction mode (that is, intra prediction mode information) to the lossless encoding unit 106.
  • the motion prediction / compensation unit 115 sends information indicating the optimal inter prediction mode and, if necessary, information corresponding to the optimal inter prediction mode to the lossless encoding unit 106. Output.
  • Information according to the optimal inter prediction mode includes motion vector information, flag information, reference frame information, and the like.
  • step S114 the lossless encoding unit 106 encodes the transform coefficient quantized by the process in step S105. That is, lossless encoding such as variable length encoding or arithmetic encoding is performed on the difference image (secondary difference image in the case of inter).
  • the lossless encoding unit 106 encodes the quantization parameter calculated in step S105 and adds it to the encoded data.
  • the lossless encoding unit 106 encodes information regarding the prediction mode of the prediction image selected by the process of step S113, and adds the encoded information to the encoded data obtained by encoding the difference image. That is, the lossless encoding unit 106 also encodes intra prediction mode information supplied from the intra prediction unit 114 or information according to the optimal inter prediction mode supplied from the motion prediction / compensation unit 115, and the like. Append to
  • step S115 the accumulation buffer 107 accumulates the encoded data output from the lossless encoding unit 106.
  • the encoded data stored in the storage buffer 107 is appropriately read out and transmitted to the decoding side via the transmission path.
  • step S116 the rate control unit 117 controls the quantization operation rate of the quantization unit 105 based on the compressed image accumulated in the accumulation buffer 107 by the process in step S115 so that overflow or underflow does not occur. .
  • step S116 When the process of step S116 is finished, the encoding process is finished.
  • the IDR determination unit 144 determines whether or not the processing target image is an IDR picture in step S131. If it is determined that the picture is not an IDR picture, the IDR judgment unit 144 advances the processing to step S132.
  • step S132 the scene change detection unit 145 determines whether the processing target image includes a scene change. If it is determined that the scene change is not included, the scene change detection unit 145 proceeds with the process to step S133.
  • step S134 the flag encoding unit 132 encodes the default_scan_flag.
  • step S135 the scan order determination unit 146 selects the update order as the scan order of the quantized orthogonal transform coefficients in the lossless encoding unit 106 (quantized orthogonal transform coefficient encoding unit 133), and the process proceeds to step S139. Proceed.
  • step S132 If it is determined in step S132 that the processing target image does not include a scene change, the scene change detection unit 145 advances the processing to step S136.
  • step S137 the flag encoding unit 132 encodes the default_scan_flag, and the process proceeds to step S138.
  • step S131 when it is determined in step S131 that the processing target image is an IDR picture, the IDR determination unit 144 advances the processing to step S138. That is, in this case, the flag generation unit 147 does not generate default_scan_flag. Even on the decoding side, the IDR picture can be easily detected from the NAL syntax. Therefore, even if there is no default_scan_flag, it can be easily understood that the initial order is selected. By omitting transmission of this default_scan_flag in the case of an IDR picture, the image encoding device 100 can suppress a reduction in encoding efficiency due to transmission of the default_scan_flag.
  • step S138 the scan order determining unit 146 selects the initial order as the scan order of the quantized orthogonal transform coefficients in the lossless encoding unit 106 (quantized orthogonal transform coefficient encoding unit 133), and the process proceeds to step S139. Proceed.
  • step S139 the quantized orthogonal transform coefficient encoding unit 133 scans the quantized orthogonal transform coefficients of the processing target macroblock in the scan order (selection order) selected in step S135 or step S138.
  • step S140 the quantized orthogonal transform coefficients are encoded in the scanned order.
  • step S141 the non-zero coefficient counter 141 counts the non-zero coefficient at each pixel position in the macroblock and accumulates it in a predetermined data unit (picture or slice).
  • step S142 the non-zero coefficient counter 141 determines whether all macroblocks within a predetermined data unit have been processed. When it is determined that there is an unprocessed macroblock, the non-zero coefficient counter 141 returns the process to step S139 and repeats the subsequent processes.
  • step S142 If it is determined in step S142 that all macroblocks have been processed, the non-zero coefficient counter 141 advances the process to step S143.
  • step S143 the sorting unit 142 arranges the scan order in the order of the cumulative value of the non-zero coefficient (according to the cumulative frequency distribution).
  • step S144 the scan order buffer 143 updates the update order in the scan order set in step S143.
  • step S144 the adaptive scan control unit 121 ends the lossless encoding process, returns the process to step S114 of FIG. 9, and repeats the subsequent processes.
  • the adaptive scan control unit 121 adaptively controls the scan order performed in the lossless encoding unit 106 according to the characteristics of the image, so the image encoding device 100 improves the encoding efficiency. be able to.
  • FIG. 11 is a block diagram illustrating a main configuration example of an image decoding device.
  • An image decoding apparatus 200 shown in FIG. 11 is a decoding apparatus corresponding to the image encoding apparatus 100 of FIG.
  • encoded data encoded by the image encoding device 100 is transmitted to the image decoding device 200 corresponding to the image encoding device 100 via a predetermined transmission path and decoded.
  • the image decoding apparatus 200 includes a storage buffer 201, a lossless decoding unit 202, an inverse quantization unit 203, an inverse orthogonal transform unit 204, a calculation unit 205, a deblock filter 206, a screen rearrangement buffer 207, And a D / A converter 208.
  • the image decoding apparatus 200 includes a frame memory 209, a selection unit 210, an intra prediction unit 211, a motion prediction / compensation unit 212, and a selection unit 213.
  • the image decoding apparatus 200 further includes an adaptive reverse scan control unit 221.
  • the accumulation buffer 201 accumulates the transmitted encoded data. This encoded data is encoded by the image encoding device 100.
  • the lossless decoding unit 202 decodes the encoded data read from the accumulation buffer 201 at a predetermined timing by a method corresponding to the encoding method of the lossless encoding unit 106 in FIG.
  • the lossless decoding unit 202 performs reverse scan on the quantized orthogonal transform coefficient obtained by decoding the encoded data in the reverse scan order determined by the adaptive reverse scan control unit 221, and outputs 2 from the one-dimensional array. Rearrange into an array of dimensions.
  • the inverse quantization unit 203 inversely quantizes the coefficient data (quantization coefficient) obtained by decoding by the lossless decoding unit 202 by a method corresponding to the quantization method of the quantization unit 105 in FIG.
  • the inverse quantization unit 203 supplies the inversely quantized coefficient data, that is, the orthogonal transform coefficient, to the inverse orthogonal transform unit 204.
  • the inverse orthogonal transform unit 204 is a method corresponding to the orthogonal transform method of the orthogonal transform unit 104 in FIG. 6, performs inverse orthogonal transform on the orthogonal transform coefficient, and converts it into residual data before being orthogonally transformed by the image coding apparatus 100. Corresponding decoding residual data is obtained.
  • the decoded residual data obtained by the inverse orthogonal transform is supplied to the calculation unit 205.
  • a prediction image is supplied to the calculation unit 205 from the intra prediction unit 211 or the motion prediction / compensation unit 212 via the selection unit 213.
  • the calculation unit 205 adds the decoded residual data and the prediction image, and obtains decoded image data corresponding to the image data before the prediction image is subtracted by the calculation unit 103 of the image encoding device 100.
  • the arithmetic unit 205 supplies the decoded image data to the deblock filter 206.
  • the deblocking filter 206 removes the block distortion of the supplied decoded image, and then supplies it to the screen rearrangement buffer 207.
  • the screen rearrangement buffer 207 rearranges images. That is, the order of frames rearranged for the encoding order by the screen rearrangement buffer 102 in FIG. 6 is rearranged in the original display order.
  • the D / A conversion unit 208 D / A converts the image supplied from the screen rearrangement buffer 207, outputs it to a display (not shown), and displays it.
  • the output of the deblock filter 206 is further supplied to the frame memory 209.
  • the frame memory 209, the selection unit 210, the intra prediction unit 211, the motion prediction / compensation unit 212, and the selection unit 213 are the frame memory 112, the selection unit 113, the intra prediction unit 114, and the motion prediction of the image encoding device 100 in FIG. Corresponding to the compensation unit 115 and the selection unit 116, respectively.
  • the selection unit 210 reads out the inter-processed image and the referenced image from the frame memory 209 and supplies them to the motion prediction / compensation unit 212. Further, the selection unit 210 reads an image used for intra prediction from the frame memory 209 and supplies the image to the intra prediction unit 211.
  • the intra prediction unit 211 is appropriately supplied from the lossless decoding unit 202 with information indicating the intra prediction mode obtained by decoding the header information. Based on this information, the intra prediction unit 211 generates a prediction image from the reference image acquired from the frame memory 209 and supplies the generated prediction image to the selection unit 213.
  • the motion prediction / compensation unit 212 acquires information (prediction mode information, motion vector information, reference frame information, flags, various parameters, and the like) obtained by decoding the header information from the lossless decoding unit 202.
  • the motion prediction / compensation unit 212 generates a prediction image from the reference image acquired from the frame memory 209 based on the information supplied from the lossless decoding unit 202, and supplies the generated prediction image to the selection unit 213.
  • the selection unit 213 selects the prediction image generated by the motion prediction / compensation unit 212 or the intra prediction unit 211 and supplies the selected prediction image to the calculation unit 205.
  • the adaptive inverse scan control unit 221 performs a reverse scan order for converting the quantized orthogonal transform coefficient obtained by decoding the encoded data in the lossless decoding unit 202 from a one-dimensional array to a two-dimensional array according to the image. And adaptively control.
  • the adaptive inverse scan control unit 221 returns the quantized orthogonal transform coefficients rearranged according to the scan order determined by the adaptive scan control unit 121 in FIG. 6 to the original array (arrangement in the scan order).
  • the reverse scan order is determined so that rearrangement is performed in the reverse order.
  • the adaptive inverse scan control unit 221 acquires the quantized orthogonal transform coefficient obtained by decoding by the lossless decoding unit 202, observes the distribution of the non-zero coefficient whose value is non-zero, Depending on the situation, the reverse scan order of the quantized orthogonal transform coefficients in the lossless decoding unit 202 is updated (update order).
  • the adaptive reverse scan control unit 221 updates the update order using the distribution of non-zero coefficients in the previously decoded image by using the possibility that images having similar features are likely to continue in a moving image. .
  • the adaptive reverse scan control unit 221 is similar to the scan order update method by the adaptive scan control unit 121 of FIG. 6 so that the reverse scan update order corresponds to the scan update order (in reverse order). Update the reverse scan order.
  • the adaptive reverse scan control unit 221 further performs IDR picture determination and scene change detection based on syntax and flag information (default_scan_flag) included in the encoded data, and in this case, the reverse scan order is determined in advance.
  • the predetermined order (initial order) is determined.
  • the adaptive reverse scan control unit 221 determines the reverse scan order as the update order.
  • the adaptive reverse scan control unit 221 controls the reverse scan order so as to correspond to the control of the adaptive scan control unit 121 in FIG. 6, and the reverse scan is performed under the condition that the adaptive scan control unit 121 selects the initial order.
  • the order is set to the initial order, and the reverse scan order is set to the update order under the condition that the adaptive scan control unit 121 selects the update order.
  • the lossless decoding unit 202 performs reverse scanning of the orthogonal transform coefficients quantized in the reverse scanning order determined by the adaptive reverse scanning control unit 221 according to the control.
  • the lossless decoding unit 202 can perform reverse scanning in the reverse order to the scanning order in the lossless encoding unit 106. That is, the lossless decoding unit 202 can correctly reverse-scan the quantized orthogonal transform coefficient scanned by the lossless encoding unit 106 according to the characteristics of the image. Therefore, the image decoding apparatus 200 can correctly decode the encoded data encoded by the image encoding apparatus 100, and can improve the encoding efficiency.
  • FIG. 12 is a block diagram illustrating a main configuration example of the lossless decoding unit 202 and the adaptive reverse scan control unit 221 of FIG.
  • the lossless decoding unit 202 includes a macroblock syntax decoding unit 231, a NAL syntax decoding unit 232, a flag decoding unit 233, and a quantized orthogonal transform coefficient decoding unit 234.
  • the adaptive reverse scan control unit 221 includes a non-zero coefficient counter 241, a sort unit 242, a reverse scan order buffer 243, an IDR determination unit 244, a flag determination unit 245, and a reverse scan order determination unit. H.246.
  • the macroblock syntax decoding unit 231 decodes the encoded data of the macroblock syntax supplied from the accumulation buffer 201, and uses the intra prediction unit 211 or the motion prediction / This is supplied to the compensation unit 212.
  • the NAL syntax decoding unit 232 decodes the encoded NAL syntax data supplied from the accumulation buffer 201 and supplies the NAL syntax obtained by decoding to the IDR determination unit 244.
  • the flag decoding unit 233 decodes the encoded data of default_scan_flag supplied from the accumulation buffer 201 and supplies default_scan_flag obtained by decoding to the flag determination unit 245.
  • the quantized orthogonal transform coefficient decoding unit 234 decodes the quantized orthogonal transform coefficient encoded data supplied from the accumulation buffer 201, and adaptively converts the quantized orthogonal transform coefficient obtained by decoding. Reverse scanning is performed in the reverse scanning order controlled by the scan control unit 221, and the rearranged quantized orthogonal transform coefficients are supplied to the inverse quantization unit 203.
  • the quantized orthogonal transform coefficient decoding unit 234 supplies the non-zero coefficient counter 241 with information indicating the pixel position in the macro block of the non-zero coefficient of the quantized orthogonal transform coefficient.
  • the non-zero coefficient counter 241 counts the non-zero coefficient of the quantized orthogonal transform coefficient for each pixel position in the macroblock, and a predetermined data unit (for example, picture or slice) of the non-zero coefficient at each pixel position. And the like (accumulated frequency distribution) are supplied to the sorting unit 242.
  • the sorting unit 242 sorts the pixel positions in the macroblock in the order of the accumulation based on the cumulative frequency distribution of the non-zero coefficient supplied from the non-zero coefficient counter 241 and determines the reverse order of the order as the reverse scan order. To do. For example, when there are a plurality of pixel positions having the same accumulation degree, the sorting unit 242 ranks them according to a predetermined rule and sorts them. This rule corresponds to the rule that the sorting unit 142 has (reverse order of the ranking performed by the sorting unit 142). The sort unit 242 supplies the determined reverse scan order to the reverse scan order buffer 243.
  • the reverse scan order buffer 243 holds the update order of the reverse scan order.
  • the reverse scan order buffer 243 holds the reverse scan order supplied from the sorting unit 242 as the latest value of the update order that is the updated reverse scan order.
  • the reverse scan order buffer 243 supplies the update order to the reverse scan order determination unit 246 as appropriate.
  • the IDR determination unit 244 refers to the NAL syntax supplied from the NAL syntax decoding unit 232 and determines whether or not the processing target is an IDR picture. The IDR determination unit 244 supplies the determination result to the reverse scan order determination unit 246.
  • the flag determination unit 245 determines the value of default_scan_flag supplied from the flag decoding unit 233, and detects the occurrence of a scene change.
  • default_scan_flag is a value indicating the occurrence of a scene change (for example, “1” or the like)
  • the flag determination unit 245 notifies the reverse scan order determination unit 246 that a scene change has occurred.
  • the value of default_scan_flag is a value indicating that no scene change has occurred (for example, “0” or the like)
  • the flag determination unit 245 notifies the reverse scan order determination unit 246 that no scene change has occurred. Notice.
  • the reverse scan order determination unit 246 updates or updates the reverse scan order in the initial order The order is selected, and the selection result is notified to the quantized orthogonal transform coefficient decoding unit 234.
  • the reverse scan order determination unit 246 determines the reverse scan order as For example, it is determined in an initial order which is a predetermined scan order such as a conventional zigzag scan, and this is notified to the quantized orthogonal transform coefficient encoding unit 133.
  • the initial order of the reverse scan order is reverse to the initial order of the scan order included in the scan order determination unit 146 of the image encoding device 100.
  • the reverse scan order determination unit 246 supplies the reverse scan order from the reverse scan order buffer 243 updated according to the image.
  • the update order is determined, and the fact is notified to the quantized orthogonal transform coefficient encoding unit 133.
  • step S201 the accumulation buffer 201 accumulates the transmitted encoded data.
  • step S202 the lossless decoding unit 202 and the adaptive reverse scan control unit 221 decode the encoded data supplied from the accumulation buffer 201. That is, the I picture, P picture, and B picture encoded by the lossless encoding unit 106 in FIG. 6 are decoded.
  • motion vector information reference frame information
  • prediction mode information intra prediction mode or inter prediction mode
  • information such as flags and quantization parameters
  • the prediction mode information is intra prediction mode information
  • the prediction mode information is supplied to the intra prediction unit 211.
  • the prediction mode information is inter prediction mode information
  • motion vector information corresponding to the prediction mode information is supplied to the motion prediction / compensation unit 212.
  • step S203 the inverse quantization unit 203 performs inverse quantization on the quantized orthogonal transform coefficient obtained by decoding by the lossless decoding unit 202 by a method corresponding to the quantization processing by the quantization unit 105 in FIG.
  • step S204 the inverse orthogonal transform unit 204 performs inverse orthogonal transform on the orthogonal transform coefficient obtained by inverse quantization by the inverse quantization unit 203 by a method corresponding to the orthogonal transform processing by the orthogonal transform unit 104 in FIG.
  • the difference information corresponding to the input of the orthogonal transform unit 104 output of the calculation unit 103) in FIG. 6 is decoded.
  • step S205 the calculation unit 205 adds the predicted image to the difference information obtained by the process in step S204. As a result, the original image data is decoded.
  • step S206 the deblocking filter 206 appropriately filters the decoded image obtained by the process in step S205. Thereby, block distortion is appropriately removed from the decoded image.
  • step S207 the frame memory 209 stores the filtered decoded image.
  • step S208 the intra prediction unit 211 or the motion prediction / compensation unit 212 performs image prediction processing corresponding to the prediction mode information supplied from the lossless decoding unit 202, respectively.
  • the intra prediction unit 211 performs an intra prediction process in the intra prediction mode. Also, when inter prediction mode information is supplied from the lossless decoding unit 202, the motion prediction / compensation unit 212 performs motion prediction processing in the inter prediction mode.
  • step S209 the selection unit 213 selects a predicted image. That is, the prediction unit 213 is supplied with the prediction image generated by the intra prediction unit 211 or the prediction image generated by the motion prediction / compensation unit 212. The selection unit 213 selects the side to which the predicted image is supplied, and supplies the predicted image to the calculation unit 205. This predicted image is added to the difference information by the process of step S205.
  • step S210 the screen rearrangement buffer 207 rearranges the frames of the decoded image data. That is, the order of the frames of the decoded image data rearranged for encoding by the screen rearrangement buffer 102 (FIG. 6) of the image encoding device 100 is rearranged to the original display order.
  • step S211 the D / A converter 208 D / A converts the decoded image data in which the frames are rearranged in the screen rearrangement buffer 207.
  • the decoded image data is output to a display (not shown), and the image is displayed.
  • the NAL syntax decoding unit 232 decodes the NAL syntax in step S231.
  • the IDR determination unit 244 determines whether the processing target is an IDR picture based on information included in the decoded NAL syntax. If it is determined that the processing target is not an IDR picture (the orthogonal transform coefficient to be decoded is not an IDR picture), the IDR determination unit 244 advances the processing to step S233.
  • step S233 the flag decoding unit 233 decodes default_scan_flag.
  • step S234 the flag determination unit 245 determines whether or not the value of the decoded default_scan_flag is 1 (a value indicating that a scene change is included). When it is determined that the scene change is not included based on the value of default_scan_flag, the flag determination unit 245 advances the process to step S235.
  • step S235 the reverse scan order determination unit 246 selects the update order as the reverse scan order.
  • the reverse scan order determination unit 246 advances the process to step S237.
  • step S232 If it is determined in step S232 that the process target is an IDR picture, the IDR determination unit 244 advances the process to step S236. Furthermore, when it is determined in step S234 that the value of the decoded default_scan_flag is 0 (a value indicating that no scene change is included), the flag determination unit 245 advances the process to step S236.
  • step S236 the reverse scan order determination unit 246 selects the initial order as the reverse scan order. When the initial order is selected, the reverse scan order determination unit 246 advances the process to step S237.
  • step S237 the quantized orthogonal transform coefficient decoding unit 234 decodes the encoded data of the quantized orthogonal transform coefficients for the processing target macroblock.
  • step S2308 the quantized orthogonal transform coefficient decoding unit 234 selects the quantized orthogonal transform coefficients obtained by decoding in step S237 in the order selected in step S235 or step S236 (initial order or update order). , Reverse scan, and rearrange to the secondary array, and supply it to the inverse quantization unit 203.
  • step S239 the non-zero coefficient counter 241 counts the non-zero coefficient for each pixel position in the macroblock.
  • step S240 the non-zero coefficient counter 241 determines whether or not all macroblocks have been processed for a predetermined data unit (for example, a picture or a slice). If it is determined that there is an unprocessed macroblock, the non-zero coefficient counter 241 returns the process to step S237 and repeats the subsequent processes.
  • a predetermined data unit for example, a picture or a slice
  • step S240 If it is determined in step S240 that all macroblocks have been processed, the non-zero coefficient counter 241 advances the processing to step S241.
  • step S241 the sorting unit 242 sets the reverse scan order in the order of the cumulative value of the non-zero coefficient of the predetermined data unit (for example, picture or slice) described above.
  • step S242 the reverse scan order buffer 243 updates the update order by holding the reverse scan order set in step S241.
  • step S242 When the process of step S242 is completed, the lossless decoding unit 202 and the adaptive inverse scan control unit 221 end the lossless decoding process.
  • the image decoding apparatus 200 By executing each process as described above, the image decoding apparatus 200 correctly reproduces the reverse order of the scan order adaptively determined by the adaptive scan control unit 121 of the image encoding apparatus 100 according to the feature of the image. Can be in reverse scan order. Also, the image decoding apparatus 200 employs the initial order or the update order as the scan order in the image encoding apparatus 100 based on the NAL syntax and flag information of the codestream supplied from the image encoding apparatus 100. It is possible to correctly determine whether it has been done. That is, since the image decoding apparatus 200 can correctly decode the encoded data generated by the image encoding apparatus 100, the encoding efficiency can be improved.
  • the accumulation of non-zero coefficients for each pixel position is used as a statistical value for determining the update order of the scan order or reverse scan order.
  • any statistical value other than this such as an average value of accumulated values of non-zero coefficients, may be used as this statistical value.
  • the update order of the scan order or the reverse scan order may be determined using other than the statistical value of the non-zero coefficient.
  • the statistical value is calculated for each predetermined data unit such as a picture or a slice.
  • this data unit is arbitrary.
  • the statistical value of the non-zero coefficient in the past similar slice is used to update the scan order and reverse scan order of each slice (picture).
  • the scan order of the I slice is updated according to the frequency distribution of the non-zero coefficient in the I slice processed immediately before
  • the scan order of the P slice is the non-zero coefficient in the P slice processed immediately before. It is updated according to the frequency distribution
  • the scan order of the B slice is updated according to the frequency distribution of the non-zero coefficient in the B slice processed immediately before.
  • the statistical values used for updating the scan order and reverse scan order are arbitrary.
  • the scan order and reverse scan order performed independently of each other, such as using different statistical values for updating the scan order and reverse scan order in the case of I slice, P slice, and B slice. May be updated based on different statistical values.
  • different scan methods may be applied according to the intra prediction mode.
  • different scan methods may be applied according to the motion compensation partition mode such as 16 ⁇ 16, 16 ⁇ 8.
  • the statistical value of the non-zero coefficient in the slice processed immediately before is obtained as shown in A of FIG.
  • the scan order may be updated based on the non-zero coefficient statistics in the slice at the same position in the picture processed immediately before, as shown in FIG. 16B. May be updated.
  • the scan order employed in the image encoding device 100 may be transmitted to the image decoding device 200.
  • the image decoding apparatus 200 can easily obtain the correct reverse scan order according to the scan order.
  • the scan order and the reverse scan order are updated using the statistical value of the non-zero coefficient in the image processed in the past.
  • the present invention is not limited to this, and the non-zero coefficient in the current image to be processed is used.
  • the scan order and the reverse scan order may be updated using the statistical values (the scan order or reverse scan order updated based on the processing target image is used in the processing of the processing target image).
  • the quantized orthogonal transform coefficient encoding unit 133 holds the quantized orthogonal transform coefficients supplied from the quantizing unit 105 for a predetermined data unit (for example, a slice or a picture),
  • the zero coefficient counter 141 obtains the isotopic distribution of non-zero coefficients for the orthogonal transform coefficient
  • the sort unit 142 sets the scan order
  • the scan order buffer 143 updates the update order.
  • the quantized orthogonal transform coefficient encoding unit 133 scans the held orthogonal transform coefficients in the update order for each macroblock.
  • the lossless encoding unit 106 can perform scanning in a scanning order more suitable for the feature of the image.
  • the image encoding apparatus 100 sets the adopted update order (scan order) to the image decoding apparatus. 200 need to be transmitted.
  • the scan order and the reverse scan order are updated according to the cumulative frequency distribution of the non-zero coefficients.
  • a threshold value may be provided for determining whether to update. For example, when the frequency of appearance of non-zero coefficients is small and the cumulative frequency distribution is uniform, there is no significant difference in coding efficiency regardless of the order of scanning. Therefore, in such a case, updating in the update order may be omitted to reduce the load.
  • the initial order may be further selected as the scan order and the reverse scan order.
  • the update order that is adaptively updated according to the characteristics of the image (such as the cumulative frequency distribution of non-zero coefficients) or the initial order has been selected.
  • One of a plurality of prepared scan orders may be adaptively selected according to image characteristics (such as a cumulative frequency distribution of non-zero coefficients).
  • the closest scan order may be selected from a plurality of scan orders prepared in advance based on the frequency distribution of non-zero coefficients. The same applies to the reverse scan order.
  • Non-Patent Document 1 the control of the scan order and reverse scan order described above may be applied only to extended macroblocks (macroblocks larger than a predetermined size) as proposed in Non-Patent Document 1.
  • the scan order in which the quantized orthogonal transform coefficients are scanned has been described.
  • the present technology provides a scan order for converting arbitrary coefficient data from a two-dimensional array to a one-dimensional array ( Any process can be applied as long as it controls the (order of sorting).
  • the orthogonal transform coefficient may not be quantized.
  • the scanned data may not be orthogonal transform coefficients, but may be coefficient data generated by transforming image data by another transform process different from orthogonal transform. The same applies to reverse scanning.
  • the image encoding device that performs encoding according to the AVC method and the image decoding device that performs decoding according to the AVC method have been described as examples.
  • the scope of application of the present technology is not limited thereto.
  • the present invention can be applied to all image encoding devices and image decoding devices that perform orthogonal transform processing and encoding processing that scans orthogonal transform coefficients in a predetermined scan order.
  • the information such as default_scan_flag described above may be added to an arbitrary position of the encoded data, for example, or may be transmitted to the decoding side separately from the encoded data.
  • the lossless encoding unit 106 may describe these pieces of information as syntax in the bitstream.
  • the lossless encoding unit 106 may store and transmit these pieces of information as auxiliary information in a predetermined area.
  • these pieces of information may be stored in a parameter set (eg, sequence or picture header) such as SEI (Suplemental / Enhancement / Information).
  • the lossless encoding unit 106 may transmit these pieces of information from the image encoding device 100 to the image decoding device 200 separately from the encoded data (as a separate file). In that case, it is necessary to clarify the correspondence between these pieces of information and encoded data (so that the information can be grasped on the decoding side), but the method is arbitrary. For example, table information indicating the correspondence relationship may be created separately, or link information indicating the correspondence destination data may be embedded in each other's data.
  • a CPU (Central Processing Unit) 501 of the personal computer 500 performs various processes according to a program stored in a ROM (Read Only Memory) 502 or a program loaded from a storage unit 513 to a RAM (Random Access Memory) 503. Execute the process.
  • the RAM 503 also appropriately stores data necessary for the CPU 501 to execute various processes.
  • the CPU 501, the ROM 502, and the RAM 503 are connected to each other via a bus 504.
  • An input / output interface 510 is also connected to the bus 504.
  • the input / output interface 510 includes an input unit 511 including a keyboard and a mouse, a display including a CRT (Cathode Ray Tube) and an LCD (Liquid Crystal Display), an output unit 512 including a speaker, and a hard disk.
  • a communication unit 514 including a storage unit 513 and a modem is connected. The communication unit 514 performs communication processing via a network including the Internet.
  • a drive 515 is connected to the input / output interface 510 as necessary, and a removable medium 521 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory is appropriately mounted, and a computer program read from them is It is installed in the storage unit 513 as necessary.
  • a removable medium 521 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory is appropriately mounted, and a computer program read from them is It is installed in the storage unit 513 as necessary.
  • a program constituting the software is installed from a network or a recording medium.
  • the recording medium is distributed to distribute the program to the user separately from the apparatus main body, and includes a magnetic disk (including a flexible disk) on which the program is recorded, an optical disk ( It only consists of removable media 521 consisting of CD-ROM (compact disc -read only memory), DVD (including digital Versatile disc), magneto-optical disk (including MD (mini disc)), or semiconductor memory. Rather, it is composed of a ROM 502 on which a program is recorded and a hard disk included in the storage unit 513, which is distributed to the user in a state of being pre-installed in the apparatus body.
  • a magnetic disk including a flexible disk
  • an optical disk It only consists of removable media 521 consisting of CD-ROM (compact disc -read only memory), DVD (including digital Versatile disc), magneto-optical disk (including MD (mini disc)), or semiconductor memory. Rather, it is composed of a ROM 502 on which a program is recorded and a hard disk included in the storage unit 513, which is distributed
  • 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.
  • the step of describing the program recorded on the recording medium is not limited to the processing performed in chronological order according to the described order, but may be performed in parallel or It also includes processes that are executed individually.
  • system represents the entire apparatus composed of a plurality of devices (apparatuses).
  • the configuration described as one device (or processing unit) may be divided and configured as a plurality of devices (or processing units).
  • the configurations described above as a plurality of devices (or processing units) may be combined into a single device (or processing unit).
  • a configuration other than that described above may be added to the configuration of each device (or each processing unit).
  • a part of the configuration of a certain device (or processing unit) may be included in the configuration of another device (or other processing unit).
  • image encoding device and image decoding device can be applied to any electronic device. Examples thereof will be described below.
  • FIG. 18 is a block diagram illustrating a main configuration example of a television receiver using the image decoding device 200.
  • a terrestrial tuner 1013 has a terrestrial tuner 1013, a video decoder 1015, a video signal processing circuit 1018, a graphic generation circuit 1019, a panel drive circuit 1020, and a display panel 1021.
  • the terrestrial tuner 1013 receives a broadcast wave signal of terrestrial analog broadcast via an antenna, demodulates it, acquires a video signal, and supplies it to the video decoder 1015.
  • the video decoder 1015 performs a decoding process on the video signal supplied from the terrestrial tuner 1013 and supplies the obtained digital component signal to the video signal processing circuit 1018.
  • the video signal processing circuit 1018 performs predetermined processing such as noise removal on the video data supplied from the video decoder 1015 and supplies the obtained video data to the graphic generation circuit 1019.
  • the graphic generation circuit 1019 generates video data of a program to be displayed on the display panel 1021, image data by processing based on an application supplied via a network, and the generated video data and image data to the panel drive circuit 1020. Supply.
  • the graphic generation circuit 1019 generates video data (graphics) for displaying a screen used by the user for selecting an item and superimposing it on the video data of the program.
  • a process of supplying data to the panel drive circuit 1020 is also appropriately performed.
  • the panel drive circuit 1020 drives the display panel 1021 based on the data supplied from the graphic generation circuit 1019, and causes the display panel 1021 to display the video of the program and the various screens described above.
  • the display panel 1021 is composed of an LCD (Liquid Crystal Display) or the like, and displays a program video or the like according to control by the panel drive circuit 1020.
  • LCD Liquid Crystal Display
  • the television receiver 1000 also includes an audio A / D (Analog / Digital) conversion circuit 1014, an audio signal processing circuit 1022, an echo cancellation / audio synthesis circuit 1023, an audio amplification circuit 1024, and a speaker 1025.
  • an audio A / D (Analog / Digital) conversion circuit 1014 An audio signal processing circuit 1022, an echo cancellation / audio synthesis circuit 1023, an audio amplification circuit 1024, and a speaker 1025.
  • the terrestrial tuner 1013 acquires not only the video signal but also the audio signal by demodulating the received broadcast wave signal.
  • the terrestrial tuner 1013 supplies the acquired audio signal to the audio A / D conversion circuit 1014.
  • the audio A / D conversion circuit 1014 performs A / D conversion processing on the audio signal supplied from the terrestrial tuner 1013, and supplies the obtained digital audio signal to the audio signal processing circuit 1022.
  • the audio signal processing circuit 1022 performs predetermined processing such as noise removal on the audio data supplied from the audio A / D conversion circuit 1014 and supplies the obtained audio data to the echo cancellation / audio synthesis circuit 1023.
  • the echo cancellation / voice synthesis circuit 1023 supplies the voice data supplied from the voice signal processing circuit 1022 to the voice amplification circuit 1024.
  • the audio amplification circuit 1024 performs D / A conversion processing and amplification processing on the audio data supplied from the echo cancellation / audio synthesis circuit 1023, adjusts to a predetermined volume, and then outputs the audio from the speaker 1025.
  • the television receiver 1000 also has a digital tuner 1016 and an MPEG decoder 1017.
  • the digital tuner 1016 receives a broadcast wave signal of digital broadcasting (terrestrial digital broadcasting, BS (Broadcasting Satellite) / CS (Communications Satellite) digital broadcasting) via an antenna, demodulates, and MPEG-TS (Moving Picture Experts Group). -Transport Stream) and supply it to the MPEG decoder 1017.
  • digital broadcasting terrestrial digital broadcasting, BS (Broadcasting Satellite) / CS (Communications Satellite) digital broadcasting
  • MPEG-TS Motion Picture Experts Group
  • the MPEG decoder 1017 releases the scramble applied to the MPEG-TS supplied from the digital tuner 1016 and extracts a stream including program data to be played (viewing target).
  • the MPEG decoder 1017 decodes the audio packet constituting the extracted stream, supplies the obtained audio data to the audio signal processing circuit 1022, decodes the video packet constituting the stream, and converts the obtained video data into the video This is supplied to the signal processing circuit 1018.
  • the MPEG decoder 1017 supplies EPG (Electronic Program Guide) data extracted from the MPEG-TS to the CPU 1032 via a path (not shown).
  • EPG Electronic Program Guide
  • the television receiver 1000 uses the above-described image decoding device 200 as the MPEG decoder 1017 for decoding video packets in this way.
  • MPEG-TS transmitted from a broadcasting station or the like is encoded by the image encoding device 100.
  • the MPEG decoder 1017 can specify the reverse scan order corresponding to the scan order employed in the image encoding device 100 based on the NAL syntax and default_scan_flag, as in the case of the image decoding device 200. Therefore, the MPEG decoder 1017 can correctly decode the encoded data in which the quantized orthogonal transform coefficient is scanned and encoded according to the scan order adaptively controlled according to the feature of the image. Efficiency can be improved.
  • the video data supplied from the MPEG decoder 1017 is subjected to predetermined processing in the video signal processing circuit 1018 as in the case of the video data supplied from the video decoder 1015, and the generated video data in the graphic generation circuit 1019. Are appropriately superimposed and supplied to the display panel 1021 via the panel drive circuit 1020, and the image is displayed.
  • the audio data supplied from the MPEG decoder 1017 is subjected to predetermined processing in the audio signal processing circuit 1022 as in the case of the audio data supplied from the audio A / D conversion circuit 1014, and an echo cancellation / audio synthesis circuit 1023.
  • predetermined processing in the audio signal processing circuit 1022 as in the case of the audio data supplied from the audio A / D conversion circuit 1014, and an echo cancellation / audio synthesis circuit 1023.
  • sound adjusted to a predetermined volume is output from the speaker 1025.
  • the television receiver 1000 also includes a microphone 1026 and an A / D conversion circuit 1027.
  • the A / D conversion circuit 1027 receives a user's voice signal captured by a microphone 1026 provided in the television receiver 1000 for voice conversation, and performs A / D conversion processing on the received voice signal.
  • the obtained digital audio data is supplied to the echo cancellation / audio synthesis circuit 1023.
  • the echo cancellation / audio synthesis circuit 1023 performs echo cancellation on the audio data of the user A.
  • the voice data obtained by combining with other voice data is output from the speaker 1025 via the voice amplifier circuit 1024.
  • the television receiver 1000 also includes an audio codec 1028, an internal bus 1029, an SDRAM (Synchronous Dynamic Random Access Memory) 1030, a flash memory 1031, a CPU 1032, a USB (Universal Serial Bus) I / F 1033, and a network I / F 1034.
  • an audio codec 1028 an internal bus 1029
  • an SDRAM Serial Dynamic Random Access Memory
  • flash memory 1031
  • CPU central processing unit
  • USB Universal Serial Bus
  • the A / D conversion circuit 1027 receives a user's voice signal captured by a microphone 1026 provided in the television receiver 1000 for voice conversation, and performs A / D conversion processing on the received voice signal.
  • the obtained digital audio data is supplied to the audio codec 1028.
  • the audio codec 1028 converts the audio data supplied from the A / D conversion circuit 1027 into data of a predetermined format for transmission via the network, and supplies the data to the network I / F 1034 via the internal bus 1029.
  • the network I / F 1034 is connected to the network via a cable attached to the network terminal 1035.
  • the network I / F 1034 transmits the audio data supplied from the audio codec 1028 to another device connected to the network.
  • the network I / F 1034 receives, for example, audio data transmitted from another device connected via the network via the network terminal 1035, and receives the audio data via the internal bus 1029 to the audio codec 1028. Supply.
  • the voice codec 1028 converts the voice data supplied from the network I / F 1034 into data of a predetermined format and supplies it to the echo cancellation / voice synthesis circuit 1023.
  • the echo cancellation / speech synthesis circuit 1023 performs echo cancellation on the speech data supplied from the speech codec 1028, and synthesizes speech data obtained by combining with other speech data via the speech amplification circuit 1024. And output from the speaker 1025.
  • the SDRAM 1030 stores various data necessary for the CPU 1032 to perform processing.
  • the flash memory 1031 stores a program executed by the CPU 1032.
  • the program stored in the flash memory 1031 is read by the CPU 1032 at a predetermined timing such as when the television receiver 1000 is activated.
  • the flash memory 1031 also stores EPG data acquired via digital broadcasting, data acquired from a predetermined server via a network, and the like.
  • the flash memory 1031 stores MPEG-TS including content data acquired from a predetermined server via a network under the control of the CPU 1032.
  • the flash memory 1031 supplies the MPEG-TS to the MPEG decoder 1017 via the internal bus 1029, for example, under the control of the CPU 1032.
  • the MPEG decoder 1017 processes the MPEG-TS as in the case of MPEG-TS supplied from the digital tuner 1016. In this way, the television receiver 1000 receives content data including video and audio via the network, decodes it using the MPEG decoder 1017, displays the video, and outputs audio. Can do.
  • the television receiver 1000 also includes a light receiving unit 1037 that receives an infrared signal transmitted from the remote controller 1051.
  • the light receiving unit 1037 receives infrared rays from the remote controller 1051 and outputs a control code representing the contents of the user operation obtained by demodulation to the CPU 1032.
  • the CPU 1032 executes a program stored in the flash memory 1031 and controls the entire operation of the television receiver 1000 according to a control code supplied from the light receiving unit 1037.
  • the CPU 1032 and each part of the television receiver 1000 are connected via a path (not shown).
  • the USB I / F 1033 transmits / receives data to / from an external device of the television receiver 1000 connected via a USB cable attached to the USB terminal 1036.
  • the network I / F 1034 is connected to the network via a cable attached to the network terminal 1035, and transmits / receives data other than audio data to / from various devices connected to the network.
  • the television receiver 1000 uses the image decoding apparatus 200 as the MPEG decoder 1017, so that a broadcast wave signal received via an antenna or a quantized orthogonal transform coefficient of content data obtained via a network is converted into an image. Even when the data is scanned and encoded in a scan order that is adaptively controlled according to the above characteristics, the encoded data can be correctly decoded, and the encoding efficiency can be improved.
  • FIG. 19 is a block diagram illustrating a main configuration example of a mobile phone using the image encoding device 100 and the image decoding device 200.
  • a mobile phone 1100 shown in FIG. 19 includes a main control unit 1150, a power supply circuit unit 1151, an operation input control unit 1152, an image encoder 1153, a camera I / F unit 1154, an LCD control, which are configured to comprehensively control each unit.
  • the mobile phone 1100 also includes operation keys 1119, a CCD (Charge Coupled Devices) camera 1116, a liquid crystal display 1118, a storage unit 1123, a transmission / reception circuit unit 1163, an antenna 1114, a microphone (microphone) 1121, and a speaker 1117.
  • a CCD Charge Coupled Devices
  • the power supply circuit unit 1151 starts up the mobile phone 1100 in an operable state by supplying power from the battery pack to each unit.
  • the mobile phone 1100 transmits and receives voice signals, e-mails and image data, and images in various modes such as a voice call mode and a data communication mode based on the control of the main control unit 1150 including a CPU, a ROM, a RAM, and the like. Various operations such as shooting or data recording are performed.
  • the mobile phone 1100 converts the voice signal collected by the microphone (microphone) 1121 into digital voice data by the voice codec 1159, performs spectrum spread processing by the modulation / demodulation circuit unit 1158, and transmits and receives
  • the unit 1163 performs digital / analog conversion processing and frequency conversion processing.
  • the cellular phone 1100 transmits the transmission signal obtained by the conversion process to a base station (not shown) via the antenna 1114.
  • the transmission signal (voice signal) transmitted to the base station is supplied to the mobile phone of the other party via the public telephone line network.
  • the cellular phone 1100 in the voice call mode, the cellular phone 1100 amplifies the received signal received by the antenna 1114 by the transmission / reception circuit unit 1163, further performs frequency conversion processing and analog-digital conversion processing, and performs spectrum despreading processing by the modulation / demodulation circuit unit 1158. Then, the audio codec 1159 converts it into an analog audio signal. The cellular phone 1100 outputs an analog audio signal obtained by the conversion from the speaker 1117.
  • the mobile phone 1100 when transmitting an e-mail in the data communication mode, receives the text data of the e-mail input by operating the operation key 1119 in the operation input control unit 1152.
  • the cellular phone 1100 processes the text data in the main control unit 1150 and displays it on the liquid crystal display 1118 as an image via the LCD control unit 1155.
  • the mobile phone 1100 generates e-mail data in the main control unit 1150 based on text data received by the operation input control unit 1152, user instructions, and the like.
  • the cellular phone 1100 performs spread spectrum processing on the e-mail data by the modulation / demodulation circuit unit 1158 and digital / analog conversion processing and frequency conversion processing by the transmission / reception circuit unit 1163.
  • the cellular phone 1100 transmits the transmission signal obtained by the conversion process to a base station (not shown) via the antenna 1114.
  • the transmission signal (e-mail) transmitted to the base station is supplied to a predetermined destination via a network and a mail server.
  • the mobile phone 1100 when receiving an e-mail in the data communication mode, receives and amplifies the signal transmitted from the base station by the transmission / reception circuit unit 1163 via the antenna 1114, and further performs frequency conversion processing and Analog-digital conversion processing.
  • the cellular phone 1100 performs spectrum despreading processing on the received signal by the modulation / demodulation circuit unit 1158 to restore the original e-mail data.
  • the cellular phone 1100 displays the restored e-mail data on the liquid crystal display 1118 via the LCD control unit 1155.
  • the mobile phone 1100 can also record (store) the received e-mail data in the storage unit 1123 via the recording / playback unit 1162.
  • the storage unit 1123 is an arbitrary rewritable storage medium.
  • the storage unit 1123 may be, for example, a semiconductor memory such as a RAM or a built-in flash memory, a hard disk, or a removable disk such as a magnetic disk, a magneto-optical disk, an optical disk, a USB memory, or a memory card. It may be media. Of course, other than these may be used.
  • the mobile phone 1100 when transmitting image data in the data communication mode, the mobile phone 1100 generates image data with the CCD camera 1116 by imaging.
  • the CCD camera 1116 has an optical device such as a lens and a diaphragm and a CCD as a photoelectric conversion element, images a subject, converts the intensity of received light into an electrical signal, and generates image data of the subject image.
  • the CCD camera 1116 encodes the image data by the image encoder 1153 via the camera I / F unit 1154 and converts the encoded image data into encoded image data.
  • the cellular phone 1100 uses the above-described image encoding device 100 as the image encoder 1153 that performs such processing. Similar to the case of the image encoding device 100, the image encoder 1153 adaptively controls the scan order of the quantized orthogonal transform coefficients in accordance with image characteristics. Therefore, the image encoder 1153 can perform scanning in a scanning order more suitable for the feature of the image, can increase the value of zero run, and can improve the encoding efficiency.
  • the cellular phone 1100 simultaneously converts the audio collected by the microphone (microphone) 1121 during imaging by the CCD camera 1116 to analog-digital conversion by the audio codec 1159 and further encodes it.
  • the cellular phone 1100 multiplexes the encoded image data supplied from the image encoder 1153 and the digital audio data supplied from the audio codec 1159 in a demultiplexing unit 1157.
  • the cellular phone 1100 performs spread spectrum processing on the multiplexed data obtained as a result by the modulation / demodulation circuit unit 1158 and digital / analog conversion processing and frequency conversion processing by the transmission / reception circuit unit 1163.
  • the cellular phone 1100 transmits the transmission signal obtained by the conversion process to a base station (not shown) via the antenna 1114.
  • a transmission signal (image data) transmitted to the base station is supplied to a communication partner via a network or the like.
  • the mobile phone 1100 can also display the image data generated by the CCD camera 1116 on the liquid crystal display 1118 via the LCD control unit 1155 without using the image encoder 1153.
  • the mobile phone 1100 when receiving data of a moving image file linked to a simple homepage or the like in the data communication mode, transmits a signal transmitted from the base station to the transmission / reception circuit unit 1163 via the antenna 1114. Receive, amplify, and further perform frequency conversion processing and analog-digital conversion processing.
  • the cellular phone 1100 restores the original multiplexed data by subjecting the received signal to spectrum despreading processing by the modulation / demodulation circuit unit 1158.
  • the demultiplexing unit 1157 separates the multiplexed data and divides it into encoded image data and audio data.
  • the cellular phone 1100 generates reproduced moving image data by decoding the encoded image data in the image decoder 1156, and displays it on the liquid crystal display 1118 via the LCD control unit 1155. Thereby, for example, the moving image data included in the moving image file linked to the simple homepage is displayed on the liquid crystal display 1118.
  • the cellular phone 1100 uses the above-described image decoding device 200 as the image decoder 1156 that performs such processing. That is, the image decoder 1156 can specify the reverse scan order corresponding to the scan order employed in the image encoding device 100 based on the NAL syntax and default_scan_flag, as in the case of the image decoding device 200. Therefore, the image decoder 1156 can correctly decode the encoded data in which the quantized orthogonal transform coefficient is scanned and encoded according to the scan order adaptively controlled according to the characteristics of the image. Efficiency can be improved.
  • the cellular phone 1100 simultaneously converts the digital audio data into an analog audio signal in the audio codec 1159 and outputs it from the speaker 1117. Thereby, for example, audio data included in the moving image file linked to the simple homepage is reproduced.
  • the mobile phone 1100 can record (store) the data linked to the received simplified home page in the storage unit 1123 via the recording / playback unit 1162. .
  • the mobile phone 1100 can analyze the two-dimensional code obtained by the CCD camera 1116 and captured by the main control unit 1150 and obtain information recorded in the two-dimensional code.
  • the cellular phone 1100 can communicate with an external device by infrared rays at the infrared communication unit 1181.
  • the cellular phone 1100 uses the image encoding device 100 as the image encoder 1153, for example, when the image data generated in the CCD camera 1116 is encoded and transmitted, the quantized image data generated from the image data is transmitted.
  • the scan order of orthogonal transform coefficients can be adaptively controlled according to the image characteristics, scanning can be performed according to the scan order more suitable for the image characteristics, the zero-run value is increased, and the encoding efficiency is improved. Can be made.
  • the cellular phone 1100 uses the image decoding device 200 as the image decoder 1156, so that, for example, the quantized orthogonal transform coefficient of the moving image file linked to the simple homepage is adaptive according to the image characteristics. Even when scanned and encoded in a controlled scan order, the encoded data can be correctly decoded and the encoding efficiency can be improved.
  • the cellular phone 1100 uses the CCD camera 1116.
  • an image sensor CMOS image sensor
  • CMOS Complementary Metal Metal Oxide Semiconductor
  • the mobile phone 1100 can capture an image of a subject and generate image data of the image of the subject, as in the case where the CCD camera 1116 is used.
  • the mobile phone 1100 has been described.
  • a PDA Personal Digital Assistant
  • a smartphone an UMPC (Ultra Mobile Personal Computer)
  • a netbook a notebook personal computer, etc.
  • the image encoding device 100 and the image decoding device 200 can be applied to any device as in the case of the mobile phone 1100.
  • FIG. 20 is a block diagram illustrating a main configuration example of a hard disk recorder using the image encoding device 100 and the image decoding device 200.
  • a hard disk recorder (HDD recorder) 1200 shown in FIG. 20 receives audio data and video data of a broadcast program included in a broadcast wave signal (television signal) transmitted from a satellite or a ground antenna received by a tuner.
  • This is an apparatus for storing in a built-in hard disk and providing the stored data to the user at a timing according to the user's instruction.
  • the hard disk recorder 1200 can extract, for example, audio data and video data from broadcast wave signals, appropriately decode them, and store them in a built-in hard disk.
  • the hard disk recorder 1200 can also acquire audio data and video data from other devices via a network, for example, decode them as appropriate, and store them in a built-in hard disk.
  • the hard disk recorder 1200 decodes audio data and video data recorded on the built-in hard disk, supplies them to the monitor 1260, displays the image on the screen of the monitor 1260, and displays the sound from the speaker of the monitor 1260. Can be output. Further, the hard disk recorder 1200 decodes audio data and video data extracted from a broadcast wave signal acquired via a tuner, or audio data and video data acquired from another device via a network, for example. The image can be supplied to the monitor 1260, the image can be displayed on the screen of the monitor 1260, and the sound can be output from the speaker of the monitor 1260.
  • the hard disk recorder 1200 includes a receiving unit 1221, a demodulating unit 1222, a demultiplexer 1223, an audio decoder 1224, a video decoder 1225, and a recorder control unit 1226.
  • the hard disk recorder 1200 further includes an EPG data memory 1227, a program memory 1228, a work memory 1229, a display converter 1230, an OSD (On-Screen Display) control unit 1231, a display control unit 1232, a recording / playback unit 1233, a D / A converter 1234, And a communication unit 1235.
  • the display converter 1230 has a video encoder 1241.
  • the recording / playback unit 1233 includes an encoder 1251 and a decoder 1252.
  • the receiving unit 1221 receives an infrared signal from a remote controller (not shown), converts it into an electrical signal, and outputs it to the recorder control unit 1226.
  • the recorder control unit 1226 is constituted by, for example, a microprocessor and executes various processes according to a program stored in the program memory 1228. At this time, the recorder control unit 1226 uses the work memory 1229 as necessary.
  • the communication unit 1235 is connected to the network and performs communication processing with other devices via the network.
  • the communication unit 1235 is controlled by the recorder control unit 1226, communicates with a tuner (not shown), and mainly outputs a channel selection control signal to the tuner.
  • the demodulator 1222 demodulates the signal supplied from the tuner and outputs the demodulated signal to the demultiplexer 1223.
  • the demultiplexer 1223 separates the data supplied from the demodulation unit 1222 into audio data, video data, and EPG data, and outputs them to the audio decoder 1224, the video decoder 1225, or the recorder control unit 1226, respectively.
  • the audio decoder 1224 decodes the input audio data and outputs it to the recording / playback unit 1233.
  • the video decoder 1225 decodes the input video data and outputs it to the display converter 1230.
  • the recorder control unit 1226 supplies the input EPG data to the EPG data memory 1227 for storage.
  • the display converter 1230 encodes the video data supplied from the video decoder 1225 or the recorder control unit 1226 into, for example, NTSC (National Television Standards Committee) video data using the video encoder 1241, and outputs the video data to the recording / playback unit 1233.
  • the display converter 1230 converts the screen size of the video data supplied from the video decoder 1225 or the recorder control unit 1226 into a size corresponding to the size of the monitor 1260, and converts the video data to NTSC video data by the video encoder 1241. Then, it is converted into an analog signal and output to the display control unit 1232.
  • the display control unit 1232 Under the control of the recorder control unit 1226, the display control unit 1232 superimposes the OSD signal output by the OSD (On Screen Display) control unit 1231 on the video signal input from the display converter 1230, and displays it on the monitor 1260 display. Output and display.
  • OSD On Screen Display
  • the monitor 1260 is also supplied with the audio data output from the audio decoder 1224 after being converted into an analog signal by the D / A converter 1234.
  • the monitor 1260 outputs this audio signal from a built-in speaker.
  • the recording / playback unit 1233 has a hard disk as a storage medium for recording video data, audio data, and the like.
  • the recording / playback unit 1233 encodes the audio data supplied from the audio decoder 1224 by the encoder 1251, for example.
  • the recording / playback unit 1233 encodes the video data supplied from the video encoder 1241 of the display converter 1230 by the encoder 1251.
  • the recording / playback unit 1233 combines the encoded data of the audio data and the encoded data of the video data by a multiplexer.
  • the recording / playback unit 1233 amplifies the synthesized data by channel coding, and writes the data to the hard disk via the recording head.
  • the recording / playback unit 1233 plays back the data recorded on the hard disk via the playback head, amplifies it, and separates it into audio data and video data by a demultiplexer.
  • the recording / playback unit 1233 uses the decoder 1252 to decode the audio data and the video data.
  • the recording / playback unit 1233 performs D / A conversion on the decoded audio data and outputs it to the speaker of the monitor 1260.
  • the recording / playback unit 1233 performs D / A conversion on the decoded video data and outputs it to the display of the monitor 1260.
  • the recorder control unit 1226 reads the latest EPG data from the EPG data memory 1227 based on the user instruction indicated by the infrared signal from the remote controller received via the receiving unit 1221, and supplies it to the OSD control unit 1231. To do.
  • the OSD control unit 1231 generates image data corresponding to the input EPG data, and outputs the image data to the display control unit 1232.
  • the display control unit 1232 outputs the video data input from the OSD control unit 1231 to the display of the monitor 1260 for display. As a result, an EPG (electronic program guide) is displayed on the display of the monitor 1260.
  • the hard disk recorder 1200 can acquire various data such as video data, audio data, or EPG data supplied from other devices via a network such as the Internet.
  • the communication unit 1235 is controlled by the recorder control unit 1226, acquires encoded data such as video data, audio data, and EPG data transmitted from another device via the network, and supplies the encoded data to the recorder control unit 1226. To do.
  • the recorder control unit 1226 supplies the encoded data of the acquired video data and audio data to the recording / playback unit 1233 and stores it in the hard disk.
  • the recorder control unit 1226 and the recording / playback unit 1233 may perform processing such as re-encoding as necessary.
  • the recorder control unit 1226 decodes the acquired encoded data of video data and audio data, and supplies the obtained video data to the display converter 1230. Similar to the video data supplied from the video decoder 1225, the display converter 1230 processes the video data supplied from the recorder control unit 1226, supplies the processed video data to the monitor 1260 via the display control unit 1232, and displays the image. .
  • the recorder control unit 1226 may supply the decoded audio data to the monitor 1260 via the D / A converter 1234 and output the sound from the speaker.
  • the recorder control unit 1226 decodes the encoded data of the acquired EPG data and supplies the decoded EPG data to the EPG data memory 1227.
  • the hard disk recorder 1200 as described above uses the image decoding device 200 as a decoder built in the video decoder 1225, the decoder 1252, and the recorder control unit 1226. That is, the video decoder 1225, the decoder 1252, and the decoder built in the recorder control unit 1226 are scanned by the image encoding device 100 based on the NAL syntax and default_scan_flag, as in the case of the image decoding device 200. The reverse scan order corresponding to the order can be specified.
  • the decoder incorporated in the video decoder 1225, the decoder 1252, and the recorder control unit 1226 encodes the quantized orthogonal transform coefficients in a scan order that is adaptively controlled according to the characteristics of the image.
  • the encoded data can be correctly decoded, and the encoding efficiency can be improved.
  • the hard disk recorder 1200 has, for example, the quantized orthogonal transform coefficient of the video data (encoded data) received by the tuner or the communication unit 1235 and the video data (encoded data) reproduced by the recording / reproducing unit 1233. Even when the data is scanned and encoded according to the scan order adaptively controlled according to the characteristics of the image, the encoded data can be correctly decoded and the encoding efficiency can be improved. .
  • the hard disk recorder 1200 uses the image encoding device 100 as the encoder 1251. Therefore, the encoder 1251 adaptively controls the scan order of the quantized orthogonal transform coefficients in accordance with the image characteristics, as in the case of the image encoding device 100. Therefore, the encoder 1251 can perform scanning in a scanning order that is more suitable for the feature of the image, increase the value of zero run, and improve the encoding efficiency.
  • the hard disk recorder 1200 can adaptively control the scan order of the quantized orthogonal transform coefficients according to the characteristics of the image when generating encoded data to be recorded on the hard disk, for example. Therefore, it is possible to perform scanning in a scanning order more suitable for the above characteristics, increase the value of zero run, and improve encoding efficiency.
  • the hard disk recorder 1200 for recording video data and audio data on the hard disk has been described.
  • any recording medium may be used.
  • the image encoding device 100 and the image decoding device 200 are applied as in the case of the hard disk recorder 1200 described above. Can do.
  • FIG. 21 is a block diagram illustrating a main configuration example of a camera using the image encoding device 100 and the image decoding device 200.
  • the camera 1300 shown in FIG. 21 captures a subject, displays an image of the subject on the LCD 1316, or records it on the recording medium 1333 as image data.
  • the lens block 1311 causes light (that is, an image of the subject) to enter the CCD / CMOS 1312.
  • the CCD / CMOS 1312 is an image sensor using CCD or CMOS, converts the intensity of received light into an electric signal, and supplies it to the camera signal processing unit 1313.
  • the camera signal processing unit 1313 converts the electrical signal supplied from the CCD / CMOS 1312 into Y, Cr, and Cb color difference signals and supplies them to the image signal processing unit 1314.
  • the image signal processing unit 1314 performs predetermined image processing on the image signal supplied from the camera signal processing unit 1313 or encodes the image signal with the encoder 1341 under the control of the controller 1321.
  • the image signal processing unit 1314 supplies encoded data generated by encoding the image signal to the decoder 1315. Further, the image signal processing unit 1314 acquires display data generated in the on-screen display (OSD) 1320 and supplies it to the decoder 1315.
  • OSD on-screen display
  • the camera signal processing unit 1313 appropriately uses DRAM (Dynamic Random Access Memory) 1318 connected via the bus 1317, and if necessary, image data or a code obtained by encoding the image data.
  • DRAM Dynamic Random Access Memory
  • the digitized data or the like is held in the DRAM 1318.
  • the decoder 1315 decodes the encoded data supplied from the image signal processing unit 1314 and supplies the obtained image data (decoded image data) to the LCD 1316. In addition, the decoder 1315 supplies the display data supplied from the image signal processing unit 1314 to the LCD 1316. The LCD 1316 appropriately synthesizes the image of the decoded image data supplied from the decoder 1315 and the image of the display data, and displays the synthesized image.
  • the on-screen display 1320 outputs display data such as menu screens and icons composed of symbols, characters, or figures to the image signal processing unit 1314 via the bus 1317 under the control of the controller 1321.
  • the controller 1321 executes various processes based on a signal indicating the content instructed by the user using the operation unit 1322, and also via the bus 1317, an image signal processing unit 1314, a DRAM 1318, an external interface 1319, an on-screen display. 1320, media drive 1323, and the like are controlled.
  • the FLASH ROM 1324 stores programs and data necessary for the controller 1321 to execute various processes.
  • the controller 1321 can encode the image data stored in the DRAM 1318 or decode the encoded data stored in the DRAM 1318 instead of the image signal processing unit 1314 and the decoder 1315.
  • the controller 1321 may be configured to perform encoding / decoding processing by a method similar to the encoding / decoding method of the image signal processing unit 1314 or the decoder 1315, or the image signal processing unit 1314 or the decoder 1315 is compatible.
  • the encoding / decoding process may be performed by a method that is not performed.
  • the controller 1321 reads out image data from the DRAM 1318 and supplies it to the printer 1334 connected to the external interface 1319 via the bus 1317. Let it print.
  • the controller 1321 reads the encoded data from the DRAM 1318 and supplies it to the recording medium 1333 mounted on the media drive 1323 via the bus 1317.
  • the recording medium 1333 is an arbitrary readable / writable removable medium such as a magnetic disk, a magneto-optical disk, an optical disk, or a semiconductor memory.
  • the recording medium 1333 may be of any kind as a removable medium, and may be a tape device, a disk, or a memory card.
  • a non-contact IC card or the like may be used.
  • media drive 1323 and the recording medium 1333 may be integrated and configured by a non-portable storage medium such as a built-in hard disk drive or SSD (Solid State Drive).
  • SSD Solid State Drive
  • the external interface 1319 is composed of, for example, a USB input / output terminal, and is connected to the printer 1334 when printing an image.
  • a drive 1331 is connected to the external interface 1319 as necessary, and a removable medium 1332 such as a magnetic disk, an optical disk, or a magneto-optical disk is appropriately mounted, and a computer program read from them is loaded as necessary. Installed in the FLASH ROM 1324.
  • the external interface 1319 has a network interface connected to a predetermined network such as a LAN or the Internet.
  • the controller 1321 can read the encoded data from the DRAM 1318 in accordance with an instruction from the operation unit 1322 and supply the encoded data to the other device connected via the network from the external interface 1319.
  • the controller 1321 acquires encoded data and image data supplied from another device via the network via the external interface 1319, holds the data in the DRAM 1318, or supplies it to the image signal processing unit 1314. Can be.
  • the camera 1300 as described above uses the image decoding device 200 as the decoder 1315. That is, the decoder 1315 can specify the reverse scan order corresponding to the scan order employed in the image encoding device 100 based on the AL syntax and default_scan_flag, as in the case of the image decoding device 200. Therefore, the decoder 1315 can correctly decode the encoded data in which the quantized orthogonal transform coefficient is scanned and encoded according to the scan order adaptively controlled according to the feature of the image. Efficiency can be improved.
  • the camera 1300 quantizes, for example, image data generated in the CCD / CMOS 1312, encoded data of video data read from the DRAM 1318 or the recording medium 1333, and encoded data of video data acquired via the network. Even if the orthogonal transform coefficient is scanned and encoded in a scan order adaptively controlled according to the characteristics of the image, the encoded data can be correctly decoded, and the encoding efficiency Can be improved.
  • the camera 1300 uses the image encoding device 100 as the encoder 1341.
  • the encoder 1341 adaptively controls the scan order of the quantized orthogonal transform coefficients according to the image characteristics, as in the case of the image encoding device 100. Therefore, the encoder 1341 can perform scanning in a scanning order that is more suitable for the feature of the image, can increase the value of zero run, and can improve the encoding efficiency.
  • the camera 1300 changes the scan order of the quantized orthogonal transform coefficients, for example. It is possible to control adaptively according to the feature, scan can be performed in a scan order more suitable for the feature of the image, the value of zero run can be increased, and the encoding efficiency can be improved.
  • the decoding method of the image decoding device 200 may be applied to the decoding process performed by the controller 1321.
  • the encoding method of the image encoding device 100 may be applied to the encoding process performed by the controller 1321.
  • the image data captured by the camera 1300 may be a moving image or a still image.
  • image encoding device 100 and the image decoding device 200 can also be applied to devices and systems other than the devices described above.
  • This technology for example, uses MPEG, H.26x, etc., image information (bitstream) compressed by orthogonal transform such as discrete cosine transform and motion compensation, such as satellite broadcasting, cable TV, Internet, mobile phone, etc.
  • orthogonal transform such as discrete cosine transform and motion compensation
  • satellite broadcasting cable TV, Internet, mobile phone, etc.
  • the present invention can be applied to an image encoding device and an image decoding device that are used when receiving via a network medium or when processing on a storage medium such as an optical, magnetic disk, or flash memory.
  • this technique can also take the following structures.
  • a scan order control unit that controls a scan order when converting coefficient data obtained by converting an image to be encoded from a two-dimensional array to a one-dimensional array according to a statistical value indicating the characteristics of the image;
  • a scan unit that scans the coefficient data in a two-dimensional array in the scan order controlled by the scan order control unit, and rearranges the coefficient data in the one-dimensional array;
  • An image processing apparatus comprising: an encoding unit that encodes the coefficient data rearranged in the one-dimensional array by the scanning unit.
  • the scan order control unit The frequency of occurrence of non-zero coefficients in the coefficient data is calculated for each predetermined data unit for each pixel position in the partial region of the image, which is a processing unit for converting the image to generate the coefficient data.
  • a calculating unit to An update unit that updates the scan order in the order of the appearance frequency of the non-zero coefficient for each pixel position in the partial region calculated by the calculation unit, and The image processing apparatus according to (1), wherein the scan unit scans the coefficient data in a scan order updated by the update unit.
  • the scan order control unit determines the scan order as one of an initial order that is a predetermined scan order determined in advance and an update order that is a scan order updated by the update unit.
  • a decision unit The image processing apparatus according to (2), wherein the scan unit scans the coefficient data in a scan order determined by the determination unit among the initial order and the update order.
  • the scan order control unit further includes a determination unit that determines whether the processing target is an IDR picture, The determining unit determines the scan order when the determining unit determines that the processing target is the IDR picture, and determines the scan order as the initial order, and when determining that the processing target is not the IDR picture, The image processing apparatus according to (3), wherein a scan order is determined in the update order.
  • the scan order control unit further includes a detection unit that detects a scene change, The determining unit determines the scan order when the scene change is detected in the processing target by the detection unit, and determines the scan order when the scene change is not detected in the processing target.
  • the image processing device according to (3) or (4).
  • the scan order control unit further includes a generation unit that generates flag information indicating whether the scan order is determined by the determination unit in the initial order or selected in the update order.
  • the image processing device according to any one of (3) to (5), wherein the encoding unit further encodes the flag information generated by the generation unit.
  • the update unit updates the scan order in an order corresponding to the order of appearance frequencies of the non-zero coefficients for each pixel position in the partial region of the previously encoded image.
  • the image processing apparatus according to any one of 6).
  • the update unit performs processing by dividing a single picture into a plurality of slices, the update frequency of the non-zero coefficient for each pixel position in the partial region of the slice encoded immediately before is determined.
  • the image processing apparatus according to any one of (3) to (7), wherein the scan order is updated according to an order.
  • the update unit performs processing by dividing a single picture into a plurality of slices, the pixel in the partial region of the slice at the same position as the processing target slice of the picture encoded immediately before
  • the scan order is updated according to an order of appearance frequency of the non-zero coefficient for each position.
  • the update unit divides a single picture into a plurality of slices and performs processing of each slice in parallel, the update of the slice at the same position as the processing target slice of the picture encoded immediately before is performed.
  • the image processing apparatus according to any one of (3) to (7), wherein the scan order is updated according to an order of appearance frequencies of the non-zero coefficients for each pixel position in the partial region.
  • the update unit updates the scan order in an order corresponding to the order of appearance frequency of the non-zero coefficient for each pixel position in the partial region of the image to be encoded.
  • the scan control unit controls the scan order for each size of the partial area of the image that is a processing unit of conversion processing for converting the image and generating the coefficient data.
  • the image processing apparatus according to any one of 11).
  • (13) The image processing device according to any one of (1) to (11), wherein the scan control unit controls the scan order for each type of image to be processed.
  • (14) An image processing method for an image processing apparatus, The scan order control unit controls the scan order when converting the coefficient data obtained by converting the image to be encoded from the two-dimensional array to the one-dimensional array according to the statistical value indicating the characteristics of the image, A scanning unit that scans the coefficient data in a two-dimensional array in the scan order, and rearranges the coefficient data in the one-dimensional array; An image processing method in which an encoding unit encodes the coefficient data rearranged in the one-dimensional array.
  • a scan order for converting coefficient data obtained by converting an image to be encoded from a two-dimensional array to a one-dimensional array is controlled according to a statistical value indicating the characteristics of the image, and is generated.
  • a decoding unit for decoding the encoded data Control the reverse scan order of the coefficient data obtained by decoding the encoded data by the decoding unit when converting from the one-dimensional array to the two-dimensional array according to the statistical value indicating the feature of the image
  • a reverse scan order control unit An image processing apparatus comprising: a reverse scan unit that reverse scans the coefficient data of the one-dimensional array in the reverse scan order controlled by the reverse scan order control unit and rearranges the coefficient data into the two-dimensional array.
  • the reverse scan order control unit The frequency of occurrence of non-zero coefficients in the coefficient data is calculated for each predetermined data unit for each pixel position in the partial region of the image, which is a processing unit for converting the image to generate the coefficient data.
  • a calculating unit to An update unit that updates the reverse scan order in the order of the appearance frequency of the non-zero coefficient for each pixel position in the partial region calculated by the calculation unit,
  • the image processing apparatus according to (15), wherein the reverse scan unit performs reverse scan on the coefficient data in the reverse scan order updated by the update unit.
  • the reverse scan order control unit may select the reverse scan order from among an initial order that is a predetermined reverse scan order and an update order that is the reverse scan order updated by the update unit.
  • the reverse scan order control unit further includes an IDR determination unit that determines whether the processing target is an IDR picture, The determination unit determines the reverse scan order in the initial order when the IDR determination unit determines that the processing target is the IDR picture, and determines that the processing target is not the IDR picture.
  • the reverse scan order control unit further includes a flag determination unit that determines a value of flag information indicating whether the scan order of the coefficient data is the initial order or the update order, The determining unit determines the reverse scan order to the initial order when the flag determining unit determines that the scan order of the coefficient data is the initial order, and the scan order of the coefficient data is the update order.
  • the image processing apparatus according to (17) or (18), wherein the reverse scan order is determined in the update order when it is determined that.
  • An image processing method for an image processing apparatus The image generated by controlling the scan order when the decoding unit converts the coefficient data obtained by converting the image to be encoded from the two-dimensional array into the one-dimensional array according to the statistical value indicating the feature of the image.
  • the encoded data of A reverse scan order control unit converts the reverse scan order when the coefficient data obtained by decoding the encoded data from the one-dimensional array to the two-dimensional array is converted into a statistical value indicating the feature of the image.
  • Control according to An image processing method wherein a reverse scanning unit performs reverse scanning on the coefficient data in the one-dimensional array in the reverse scanning order, and rearranges the coefficient data in the two-dimensional array.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

 本開示は、符号化効率を向上させることができるようにする画像処理装置および方法に関する。符号化する画像が変換された係数データを2次元配列から1次元配列に変換する際のスキャン順を、前記画像の特徴を示す統計値に応じて制御するスキャン順制御部と、前記スキャン順制御部により制御される前記スキャン順で、2次元配列の前記係数データをスキャンし、前記1次元配列に並び替えるスキャン部と、前記スキャン部により前記1次元配列に並び替えられた前記係数データを符号化する符号化部とを備える本技術は、例えば、画像処理装置に適用することができる。

Description

画像処理装置および方法
 本開示は、画像処理装置および方法に関し、特に、符号化効率を向上させることができるようにした画像処理装置および方法に関する。
 近年、画像情報をデジタルとして取り扱い、その際、効率の高い情報の伝送、蓄積を目的とし、画像情報特有の冗長性を利用して、離散コサイン変換等の直交変換と動き補償により圧縮するMPEG(Moving Picture Experts Group)などの方式に準拠した装置が、放送局などの情報配信、及び一般家庭における情報受信の双方において普及しつつある。
 特に、MPEG2(ISO(International Organization for Standardization)/IEC(International Electrotechnical Commission) 13818-2)は、汎用画像符号化方式として定義されており、飛び越し走査画像及び順次走査画像の双方、並びに標準解像度画像及び高精細画像を網羅する標準で、プロフェッショナル用途及びコンシューマ用途の広範なアプリケーションに現在広く用いられている。MPEG2圧縮方式を用いることにより、例えば720×480画素を持つ標準解像度の飛び越し走査画像であれば4~8Mbps、1920×1088画素を持つ高解像度の飛び越し走査画像であれば18~22Mbpsの符号量(ビットレート)を割り当てることで、高い圧縮率と良好な画質の実現が可能である。
 MPEG2は主として放送用に適合する高画質符号化を対象としていたが、MPEG1より低い符号量(ビットレート)、つまりより高い圧縮率の符号化方式には対応していなかった。携帯端末の普及により、今後そのような符号化方式のニーズは高まると思われ、これに対応してMPEG4符号化方式の標準化が行われた。画像符号化方式に関しては、1998年12月にISO/IEC 14496-2としてその規格が国際標準に承認された。
 更に、近年、当初テレビ会議用の画像符号化を目的として、H.26L (ITU-T(International Telecommunication Union Telecommunication Standardization Sector) Q6/16 VCEG(Video Coding Expert Group))という標準の規格化が進んでいる。H.26LはMPEG2やMPEG4といった従来の符号化方式に比べ、その符号化、復号化により多くの演算量が要求されるものの、より高い符号化効率が実現されることが知られている。また、現在、MPEG4の活動の一環として、このH.26Lをベースに、H.26Lではサポートされない機能をも取り入れ、より高い符号化効率を実現する標準化がJoint Model of Enhanced-Compression Video Codingとして行われている。
 標準化のスケジュールとしては、2003年3月にはH.264及びMPEG-4 Part10 (Advanced Video Coding、以下AVCと記す)という名の元に国際標準となった。
 更に、その拡張として、RGBや4:2:2、4:4:4といった、業務用に必要な符号化ツールや、MPEG-2で規定されていた8x8DCTや量子化マトリクスをも含んだFRExt (Fidelity Range Extension) の標準化が2005年2月に完了し、これにより、AVCを用いて、映画に含まれるフィルムノイズをも良好に表現することが可能な符号化方式となって、Blu-Ray Disc等の幅広いアプリケーションに用いられる運びとなった。
 しかしながら、昨今、ハイビジョン画像の4倍の、4000×2000画素程度の画像を圧縮したい、或いは、インターネットのような、限られた伝送容量の環境において、ハイビジョン画像を配信したいといった、更なる高圧縮率符号化に対するニーズが高まっている。このため、先述の、ITU-T傘下のVCEGにおいて、符号化効率の改善に関する検討が継続され行なわれている。
 例えば、従来のように、画像の直交変換処理単位となる部分領域であるマクロブロックサイズを16画素×16画素とするのは、次世代符号化方式の対象となるような、UHD(Ultra High Definition;4000画素×2000画素)といった大きな画枠に対しては、最適ではない。そこで、非特許文献1などにおいては、マクロブロックサイズを、64×64画素、32画素×32画素といった大きさにすることが提案されている。
 すなわち、非特許文献1においては、階層構造を採用することにより、16×16画素ブロック以下に関しては、現在のAVCにおけるマクロブロックと互換性を保ちながら、そのスーパーセットとして、より大きなブロックが定義されている。
 非特許文献1は、インタースライスに対して拡張されたマクロブロックを適用する提案であるが、非特許文献2においては、拡張されたマクロブロックを、イントラスライスに適用することが提案されている。
 ところで、AVCにおいて定められている4×4直交変換及び8×8直交変換のスキャン方式は、シーケンスやビットレートによらず、固定されたものであった。
Peisong Chenn,Yan Ye,Marta Karczewicz,"Video Coding Using Extended Block Sizes", COM16-C123-E, Qualcomm Inc,2009年1月 Sung-Chang Lim, Hahyun Lee, Jinho Lee, Jongho Kim, Haechul Choi, Seyoon Jeong, Jin Soo Choi, "Intra coding using extended block size", VCEG-AL28, 2009年7月
 しかしながら、非ゼロ係数の分布は画像に依存するので、予め用意されたスキャン方式が常に最適であるとは限らず、符号化効率を十分に向上させることが出来ない恐れがあった。
 特に、上述したような拡張されたマクロブロックの場合、領域のサイズが大きく、非ゼロ係数の偏り方もより多様化する。そのため、予め用意されたスキャン方式が最適となる可能性はより低下し、符号化効率をさらに向上させる余地が残る可能性が増大する(符号化効率を十分に向上させることができる可能性が低減する)恐れがあった。
 本開示は、このような状況に鑑みてなされたものであり、画像に応じてスキャン順を適応的に決定するようにすることにより、符号化効率を向上させることを目的とする。
 本開示の一側面は、符号化する画像が変換された係数データを2次元配列から1次元配列に変換する際のスキャン順を、前記画像の特徴を示す統計値に応じて制御するスキャン順制御部と、前記スキャン順制御部により制御される前記スキャン順で、2次元配列の前記係数データをスキャンし、前記1次元配列に並び替えるスキャン部と、前記スキャン部により前記1次元配列に並び替えられた前記係数データを符号化する符号化部とを備える画像処理装置である。
 前記スキャン順制御部は、前記画像を変換して前記係数データを生成する変換処理の処理単位となる前記画像の部分領域内の画素位置毎に、前記係数データの非ゼロ係数の出現頻度を、所定のデータ単位毎に算出する算出部と、前記算出部により算出された前記部分領域内の画素位置毎の前記非ゼロ係数の出現頻度の順に、前記スキャン順を更新する更新部とを備え、前記スキャン部は、前記更新部により更新されたスキャン順で前記係数データをスキャンすることができる。
 前記スキャン順制御部は、前記スキャン順を、予め定められた所定のスキャン順である初期順、および、前記更新部により更新されたスキャン順である更新順のいずれか一方に決定する決定部をさらに備え、前記スキャン部は、前記初期順および前記更新順のうち、前記決定部により決定された方のスキャン順で前記係数データをスキャンすることができる。
 前記スキャン順制御部は、処理対象がIDRピクチャであるか否かを判定する判定部をさらに備え、前記決定部は、前記判定部により、前記処理対象が前記IDRピクチャであると判定された場合、前記スキャン順を前記初期順に決定し、前記処理対象が前記IDRピクチャでないと判定された場合、前記スキャン順を前記更新順に決定することができる。
 前記スキャン順制御部は、シーンチェンジを検出する検出部をさらに備え、前記決定部は、前記検出部により、前記処理対象において前記シーンチェンジが検出された場合、前記スキャン順を前記初期順に決定し、前記処理対象において前記シーンチェンジが検出されなかった場合、前記スキャン順を前記更新順に決定することができる。
 前記スキャン順制御部は、前記決定部により前記スキャン順が前記初期順に決定されたか、若しくは、前記更新順に選択されたかを示すフラグ情報を生成する生成部をさらに備え、前記符号化部は、前記生成部により生成された前記フラグ情報をさらに符号化することができる。
 前記更新部は、前記スキャン順を、過去に符号化された画像の前記部分領域内の画素位置毎の前記非ゼロ係数の出現頻度の順に応じた順に更新することができる。
 前記更新部は、単一のピクチャを複数のスライスに分割して処理を行う場合、直前に符号化されたスライスの前記部分領域内の画素位置毎の前記非ゼロ係数の出現頻度の順に応じて前記スキャン順を更新することができる。
 前記更新部は、単一のピクチャを複数のスライスに分割して処理を行う場合、直前に符号化されたピクチャの、処理対象のスライスと同位置のスライスの前記部分領域内の画素位置毎の前記非ゼロ係数の出現頻度の順に応じて前記スキャン順を更新することができる。
 前記更新部は、単一のピクチャを複数のスライスに分割し、各スライスの処理を並列に行う場合、直前に符号化されたピクチャの、処理対象のスライスと同位置のスライスの前記部分領域内の画素位置毎の前記非ゼロ係数の出現頻度の順に応じて前記スキャン順を更新することができる。
 前記更新部は、前記スキャン順を、符号化処理対象の画像の前記部分領域内の画素位置毎の前記非ゼロ係数の出現頻度の順に応じた順に更新することができる。
 前記スキャン制御部は、前記画像を変換して前記係数データを生成する変換処理の処理単位となる前記画像の部分領域の大きさごとに前記スキャン順を制御することができる。
 前記スキャン制御部は、処理対象の画像のタイプごとに前記スキャン順を制御することができる。
 本開示の一側面は、また、画像処理装置の画像処理方法であって、スキャン順制御部が、符号化する画像が変換された係数データを2次元配列から1次元配列に変換する際のスキャン順を、前記画像の特徴を示す統計値に応じて制御し、スキャン部が、前記スキャン順で、2次元配列の前記係数データをスキャンし、前記1次元配列に並び替え、符号化部が、前記1次元配列に並び替えられた前記係数データを符号化する画像処理方法である。
 本開示の他の側面は、符号化する画像が変換された係数データを2次元配列から1次元配列に変換する際のスキャン順が前記画像の特徴を示す統計値に応じて制御されて生成された、前記画像の符号化データを復号する復号部と、前記復号部により前記符号化データが復号されて得られた係数データの、前記1次元配列から前記2次元配列に変換する際の逆スキャン順を、前記画像の特徴を示す統計値に応じて制御する逆スキャン順制御部と、前記逆スキャン順制御部により制御される前記逆スキャン順で、1次元配列の前記係数データを逆スキャンし、前記2次元配列に並び替える逆スキャン部とを備える画像処理装置である。
 前記逆スキャン順制御部は、前記画像を変換して前記係数データを生成する変換処理の処理単位となる前記画像の部分領域内の画素位置毎に、前記係数データの非ゼロ係数の出現頻度を、所定のデータ単位毎に算出する算出部と、前記算出部により算出された前記部分領域内の画素位置毎の前記非ゼロ係数の出現頻度の順に、前記逆スキャン順を更新する更新部とを備え、前記逆スキャン部は、前記更新部により更新された逆スキャン順で前記係数データを逆スキャンすることができる。
 前記逆スキャン順制御部は、前記逆スキャン順を、予め定められた所定の逆スキャン順である初期順、および、前記更新部により更新された逆スキャン順である更新順のいずれか一方に決定する決定部をさらに備え、前記逆スキャン部は、前記初期順および前記更新順のうち、前記決定部により決定された方の逆スキャン順で前記係数データを逆スキャンすることができる。
 前記逆スキャン順制御部は、処理対象がIDRピクチャであるか否かを判定するIDR判定部をさらに備え、前記決定部は、前記IDR判定部により、前記処理対象が前記IDRピクチャであると判定された場合、前記逆スキャン順を前記初期順に決定し、前記処理対象が前記IDRピクチャでないと判定された場合、前記逆スキャン順を前記更新順に決定することができる。
 前記逆スキャン順制御部は、前記係数データのスキャン順が前記初期順であるか、若しくは、前記更新順であるかを示すフラグ情報の値を判定するフラグ判定部をさらに備え、前記決定部は、前記フラグ判定部により、前記係数データのスキャン順が前記初期順であると判定された場合、前記逆スキャン順を前記初期順に決定し、前記係数データのスキャン順が前記更新順であると判定された場合、前記逆スキャン順を前記更新順に決定することができる。
 本開示の他の側面は、また、画像処理装置の画像処理方法であって、復号部が、符号化する画像が変換された係数データを2次元配列から1次元配列に変換する際のスキャン順が前記画像の特徴を示す統計値に応じて制御されて生成された、前記画像の符号化データを復号し、逆スキャン順制御部が、前記符号化データが復号されて得られた係数データの、前記1次元配列から前記2次元配列に変換する際の逆スキャン順を、前記画像の特徴を示す統計値に応じて制御し、逆スキャン部が、前記逆スキャン順で、1次元配列の前記係数データを逆スキャンし、前記2次元配列に並び替える画像処理方法である。
 本開示の一側面においては、符号化する画像が変換された係数データを2次元配列から1次元配列に変換する際のスキャン順が、画像の特徴を示す統計値に応じて制御され、そのスキャン順で、2次元配列の係数データがスキャンされ、1次元配列に並び替えられ、1次元配列に並び替えられた係数データが符号化される。
 本開示の他の側面においては、符号化する画像が変換された係数データを2次元配列から1次元配列に変換する際のスキャン順が画像の特徴を示す統計値に応じて制御されて生成された、画像の符号化データが復号され、符号化データが復号されて得られた係数データの、1次元配列から2次元配列に変換する際の逆スキャン順が、画像の特徴を示す統計値に応じて制御され、その逆スキャン順で、1次元配列の係数データが逆スキャンされ、2次元配列に並び替えられる。
 本開示によれば、画像を処理することができる。特に、符号化効率を向上させることができる。
AVC符号化方式において定められている、イントラ16×16符号化方式を説明するための図である。 AVC符号化方式において定められている、4×4直交変換ブロックに対する、ジグザグスキャン及びフィールドスキャン方式を示した図である。 AVC符号化方式において、ハイプロファイル以上においては、4×4直交変換と、8×8直交変換を、画面内で適応的に用いることが可能であることを示す図である。 AVC符号化方式において定められている、8×8直交変換ブロックに対する、ジグザグスキャン及びフィールドスキャン方式を示した図である。 マクロブロックの例を示す図である。 画像符号化装置の主な構成例を示すブロック図である。 適応スキャン制御部の主な構成例を示すブロック図である。 適応的にスキャン順を決定する様子の例を説明する図である。 符号化処理の流れの例を説明するフローチャートである。 可逆符号化処理の流れの例を説明するフローチャートである。 画像復号装置の主な構成例を示すブロック図である。 適応スキャン制御部の主な構成例を示すブロック図である。 復号処理の流れの例を説明するフローチャートである。 可逆復号処理の流れの例を説明するフローチャートである。 スライスタイプ毎に、スキャンの更新を行う方法を示した図である。 単一のピクチャを、複数のスライスに分割して処理を行う方法を示した図である。 パーソナルコンピュータの主な構成例を示すブロック図である。 テレビジョン受像機の主な構成例を示すブロック図である。 携帯電話機の主な構成例を示すブロック図である。 ハードディスクレコーダの主な構成例を示すブロック図である。 カメラの主な構成例を示すブロック図である。
 以下、本技術を実施するための形態(以下実施の形態とする)について説明する。なお、説明は以下の順序で行う。
1.第1の実施の形態(画像符号化装置)
2.第2の実施の形態(画像復号装置)
3.第3の実施の形態(パーソナルコンピュータ)
4.第4の実施の形態(テレビジョン受像機)
5.第5の実施の形態(携帯電話機)
6.第6の実施の形態(ハードディスクレコーダ)
7.第7の実施の形態(カメラ)
<1.第1の実施の形態>
[スキャン方式]
 従来の、MPEG-2等の符号化方式と同様、直交変換を行った後、2次元の配列として得られる量子化された直交変換係数を、可逆符号化のため、1次元のデータに並び直す必要がある。
 AVCにおけるベースラインプロファイル、メインプロファイル、拡張プロファイルにおいては、直交変換として、4×4画素を単位としている。
 更に、イントラ16×16モードの場合のみ、図1に示される通り、各4×4ブロックの、直交変換後の直流成分を集めて、4×4行列を作り、これに対して4×4アダマール変換を行うことになる。
 それぞれの、4×4配列を、一次元の16次配列に変換する方法として、当該ブロックが、フレーム符号化されているか、フィールド符号化されているかに応じて、図2のAに示されたジグザグスキャン、若しくは、図2のBに示されたフィールドスキャンのいずれかが用いられる。 
 また、AVCにおいて、ハイプロファイル以上では、図3に示されるように、画面内で、4×4直交変換と、8×8直交変換を、適応的に切り替えて用いることが可能である。
 8×8直交変換が用いられる場合には、当該ブロックが、フレーム符号化されているか、フィールド符号化されているかに応じて、図4のAに示されたジグザグスキャン、若しくは、図4のBに示されたフィールドスキャンのいずれかを用いることにより、2次元配列である量子化された直交変換係数が、1次元配列に変換される。
[予測モードの選択]
 ところで、AVC符号化方式において、より高い符号化効率を達成するには、適切な予測モードの選択が重要である。
 かかる選択方式の例として、JM(Joint Model)と呼ばれるH.264/MPEG-4 AVCの参照ソフトウエア(http://iphome.hhi.de/suehring/tml/index.htm において公開されている)に実装されている方法を挙げることが出来る。
 JMにおいては、以下に述べる、High Complexity Modeと、Low Complexity Modeの2通りのモード判定方法を選択することができる。どちらも、それぞれの予測モードに関するコスト関数値を算出し、これを最小にする予測モードを当該サブマクロブロック、または、当該マクロブロックに対する最適モードとして選択する。
 High Complexity Modeにおけるコスト関数は、以下の式(1)のように示される。
 Cost(Mode∈Ω) = D + λ*R ・・・(1)
 ここで、Ωは、当該ブロック乃至マクロブロックを符号化するための候補モードの全体集合、Dは、当該予測モードで符号化した場合の、復号画像と入力画像の差分エネルギーである。λは、量子化パラメータの関数として与えられるLagrange未定乗数である。Rは、直交変換係数を含んだ、当該モードで符号化した場合の総符号量である。
 つまり、High Complexity Modeでの符号化を行うには、上記パラメータD及びRを算出するため、全ての候補モードにより、一度、仮エンコード処理を行う必要があり、より高い演算量を要する。
 Low Complexity Modeにおけるコスト関数は、以下の式(2)のように示される。
 Cost(Mode∈Ω) = D + QP2Quant(QP) * HeaderBit ・・・(2)
 ここで、Dは、High Complexity Modeの場合と異なり、予測画像と入力画像の差分エネルギーとなる。QP2Quant(QP)は、量子化パラメータQPの関数として与えられ、HeaderBitは、直交変換係数を含まない、動きベクトルや、モードといった、Headerに属する情報に関する符号量である。
 すなわち、Low Complexity Modeにおいては、それぞれの候補モードに関して、予測処理を行う必要があるが、復号画像までは必要ないため、符号化処理まで行う必要はない。このため、High Complexity Modeより低い演算量での実現が可能である。
[拡張マクロブロック]
 ところで、マクロブロックサイズを16画素×16画素とするのは、次世代符号化方式の対象となるような、UHD(Ultra High Definition;4000画素×2000画素)といった大きな画枠に対しては、最適ではない。そこで、非特許文献1などにおいては、マクロブロックサイズを、図5に示されるように、64×64画素、32画素×32画素といった大きさにすることが提案されている。
 すなわち、非特許文献1においては、図5のような、階層構造を採用することにより、16×16画素ブロック以下に関しては、現在のAVCにおけるマクロブロックと互換性を保ちながら、そのスーパーセットとして、より大きなブロックが定義されている。
 以下において、16×16画素以下のマクロブロックを通常マクロブロックと称し、16×16画素より大きなマクロブロックを拡張マクロブロックと称する。
 非特許文献1は、インタースライスに対して拡張されたマクロブロックを適用する提案であるが、非特許文献2においては、拡張されたマクロブロックを、イントラスライスに適用することが提案されている。
 直交変換サイズについても、非特許文献1及び非特許文献2においては、16×16といった、AVC符号化方式において定められているのよりも大きなものを用いることが可能とされている。
[適応的スキャン方式]
 AVC等の従来の符号化方式においては、4×4直交変換及び8×8直交変換のスキャン方式は予め用意されていたが、非ゼロ係数の分布(偏り方)は、画像によって異なる。そのため、常に最適なスキャン順でスキャンが行われるとは限らなかった。つまり、より画像の性質に適したスキャン順でスキャンを行うことにより、符号化効率をさらに向上させる可能性があった。
 特に、上述したような拡張されたマクロブロックの場合、領域のサイズが大きく、非ゼロ係数の偏り方もより多様化する。そのため、予め用意されたスキャン方式が最適となる可能性はより低下し、符号化効率をさらに向上させる余地が残る可能性が増大する(符号化効率を十分に向上させることができる可能性が低減する)恐れがあった。
 そこで、本技術は、スキャン順を画像に応じて適応的に決定するようにすることにより、ゼロランの値を増やし、符号化効率を向上させるようにする。
[画像符号化装置]
 図6は、画像処理装置としての画像符号化装置の一実施の形態の構成を表している。
 図6に示される画像符号化装置100は、例えば、H.264及びMPEG(Moving Picture Experts Group)4 Part10(AVC(Advanced Video Coding))(以下H.264/AVCと称する)方式と同様に画像を符号化する符号化装置である。ただし、画像符号化装置100は、正方形ブロックだけでなく長方形ブロックにおいても、スキップモード及びダイレクトモードを適用する。このようにすることにより、画像符号化装置100は、符号化効率を向上させることができる。
 図6の例において、画像符号化装置100は、A/D(Analog / Digital)変換部101、画面並べ替えバッファ102、演算部103、直交変換部104、量子化部105、可逆符号化部106、および蓄積バッファ107を有する。また、画像符号化装置100は、逆量子化部108、逆直交変換部109、演算部110、デブロックフィルタ111、フレームメモリ112、選択部113、イントラ予測部114、動き予測・補償部115、選択部116、およびレート制御部117を有する。
 画像符号化装置100は、さらに、適応スキャン制御部121を有する。
 A/D変換部101は、入力された画像データをA/D変換し、画面並べ替えバッファ102に出力し、記憶させる。
 画面並べ替えバッファ102は、記憶した表示の順番のフレームの画像を、GOP(Group of Picture)構造に応じて、符号化のためのフレームの順番に並べ替える。画面並べ替えバッファ102は、フレームの順番を並び替えた画像を、演算部103に供給する。また、画面並べ替えバッファ102は、フレームの順番を並び替えた画像を、イントラ予測部114および動き予測・補償部115にも供給する。
 演算部103は、画面並べ替えバッファ102から読み出された画像から、選択部116を介してイントラ予測部114若しくは動き予測・補償部115から供給される予測画像を減算し、その差分情報を直交変換部104に出力する。
 例えば、イントラ符号化が行われる画像の場合、演算部103は、画面並べ替えバッファ102から読み出された画像から、イントラ予測部114から供給される予測画像を減算する。また、例えば、インター符号化が行われる画像の場合、演算部103は、画面並べ替えバッファ102から読み出された画像から、動き予測・補償部115から供給される予測画像を減算する。
 直交変換部104は、演算部103から供給される差分情報に対して、離散コサイン変換、カルーネン・レーベ変換等の直交変換を施し、その変換係数を量子化部105に供給する。
 量子化部105は、直交変換部104が出力する変換係数を量子化する。量子化部105は、レート制御部117から供給される情報に基づいて量子化パラメータを設定し、量子化を行う。量子化部105は、量子化された変換係数を可逆符号化部106に供給する。
 可逆符号化部106は、その量子化された変換係数に対して、可変長符号化、算術符号化等の可逆符号化を施す。
 可逆符号化部106は、イントラ予測を示す情報などをイントラ予測部114から取得し、インター予測モードを示す情報や動きベクトル情報などを動き予測・補償部115から取得する。なお、イントラ予測(画面内予測)を示す情報は、以下、イントラ予測モード情報とも称する。また、インター予測(画面間予測)を示す情報モードを示す情報は、以下、インター予測モード情報とも称する。
 可逆符号化部106は、量子化された変換係数を符号化するとともに、フィルタ係数、イントラ予測モード情報、インター予測モード情報、および量子化パラメータなどの各種情報を、符号化データのヘッダ情報の一部とする(多重化する)。可逆符号化部106は、符号化して得られた符号化データを蓄積バッファ107に供給して蓄積させる。
 例えば、可逆符号化部106においては、可変長符号化または算術符号化等の可逆符号化処理が行われる。可変長符号化としては、H.264/AVC方式で定められているCAVLC(Context-Adaptive Variable Length Coding)などがあげられる。算術符号化としては、CABAC(Context-Adaptive Binary Arithmetic Coding)などがあげられる。
 蓄積バッファ107は、可逆符号化部106から供給された符号化データを、一時的に保持し、所定のタイミングにおいて、H.264/AVC方式で符号化された符号化画像として、例えば、後段の図示せぬ記録装置や伝送路などに出力する。
 また、量子化部105において量子化された変換係数は、逆量子化部108にも供給される。逆量子化部108は、その量子化された変換係数を、量子化部105による量子化に対応する方法で逆量子化する。逆量子化部108は、得られた変換係数を、逆直交変換部109に供給する。
 逆直交変換部109は、供給された変換係数を、直交変換部104による直交変換処理に対応する方法で逆直交変換する。逆直交変換された出力(復元された差分情報)は、演算部110に供給される。
 演算部110は、逆直交変換部109より供給された逆直交変換結果、すなわち、復元された差分情報に、選択部116を介してイントラ予測部114若しくは動き予測・補償部115から供給される予測画像を加算し、局部的に復号された画像(復号画像)を得る。
 例えば、差分情報が、イントラ符号化が行われる画像に対応する場合、演算部110は、その差分情報にイントラ予測部114から供給される予測画像を加算する。また、例えば、差分情報が、インター符号化が行われる画像に対応する場合、演算部110は、その差分情報に動き予測・補償部115から供給される予測画像を加算する。
 その加算結果は、デブロックフィルタ111またはフレームメモリ112に供給される。
 デブロックフィルタ111は、適宜デブロックフィルタ処理を行うことにより復号画像のブロック歪を除去するとともに、例えばウィナーフィルタ(Wiener Filter)を用いて適宜ループフィルタ処理を行うことにより画質改善を行う。デブロックフィルタ111は、各画素をクラス分類し、クラスごとに適切なフィルタ処理を施す。デブロックフィルタ111は、そのフィルタ処理結果をフレームメモリ112に供給する。
 フレームメモリ112は、所定のタイミングにおいて、蓄積されている参照画像を、選択部113を介してイントラ予測部114または動き予測・補償部115に出力する。
 例えば、イントラ符号化が行われる画像の場合、フレームメモリ112は、参照画像を、選択部113を介してイントラ予測部114に供給する。また、例えば、インター符号化が行われる場合、フレームメモリ112は、参照画像を、選択部113を介して動き予測・補償部115に供給する。
 選択部113は、フレームメモリ112から供給される参照画像がイントラ符号化を行う画像である場合、その参照画像をイントラ予測部114に供給する。また、選択部113は、フレームメモリ112から供給される参照画像がインター符号化を行う画像である場合、その参照画像を動き予測・補償部115に供給する。
 イントラ予測部114は、画面内の画素値を用いて予測画像を生成するイントラ予測(画面内予測)を行う。イントラ予測部114は、複数のモード(イントラ予測モード)によりイントラ予測を行う。
 イントラ予測部114は、全てのイントラ予測モードで予測画像を生成し、各予測画像を評価し、最適なモードを選択する。イントラ予測部114は、最適なイントラ予測モードを選択すると、その最適なモードで生成された予測画像を、選択部116を介して演算部103や演算部110に供給する。
 また、上述したように、イントラ予測部114は、採用したイントラ予測モードを示すイントラ予測モード情報等の情報を、適宜可逆符号化部106に供給する。
 動き予測・補償部115は、インター符号化が行われる画像について、画面並べ替えバッファ102から供給される入力画像と、選択部113を介してフレームメモリ112から供給される参照画像とを用いて、動き予測を行い、検出された動きベクトルに応じて動き補償処理を行い、予測画像(インター予測画像情報)を生成する。
 動き予測・補償部115は、候補となる全てのインター予測モードのインター予測処理を行い、予測画像を生成する。動き予測・補償部115は、各モードのコスト関数値を算出し、最適なモードを選択する。
 動き予測・補償部115は、このように選択されたインター予測モードで生成された予測画像を、選択部116を介して演算部103や演算部110に供給する。
 また、動き予測・補償部115は、採用されたインター予測モードを示すインター予測モード情報や、算出した動きベクトルを示す動きベクトル情報を可逆符号化部106に供給する。
 選択部116は、イントラ符号化を行う画像の場合、イントラ予測部114の出力を演算部103や演算部110に供給し、インター符号化を行う画像の場合、動き予測・補償部115の出力を演算部103や演算部110に供給する。
 レート制御部117は、蓄積バッファ107に蓄積された圧縮画像に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部105の量子化動作のレートを制御する。
 適応スキャン制御部121は、可逆符号化部106における2次元配列である量子化された直交変換係数を1次元配列に変換するスキャン順を、画像に応じて適応的に制御する。
 適応スキャン制御部121は、可逆符号化部106から量子化された直交変換係数を取得し、その値が非ゼロである非ゼロ係数の分布を観測し、その分布の様子に応じて、可逆符号化部106における量子化された直交変換係数のスキャン順を決定する。適応スキャン制御部121は、動画像においては特徴が類似する画像が連続する可能性が高いことを利用して、過去に符号化した画像における非ゼロ係数の分布を用いてスキャン順を決定する。
 可逆符号化部106は、その制御に従い、適応スキャン制御部121により決定されたスキャン順で量子化された直交変換係数のスキャンを行う。
 適応スキャン制御部121は、さらに、画面並べ替えバッファ102から入力画像を取得し、処理対象がIDR(Instantaneous Decoding Refresh)ピクチャであるか否かを判定する。IDRピクチャの場合、それ以前の画像との関連性は低く、画像の特徴が大きく変化する可能性が高いので、適応スキャン制御部121は、不適切なスキャン順の使用による符号化効率の低減を抑制するために、スキャン順を予め定められた所定の順序(初期順)に決定する。
 また、適応スキャン制御部121は、画面並べ替えバッファ102から取得した入力画像より、シーンチェンジの有無を検出する。シーンチェンジが発生した場合、それ以前の画像との関連性が低く、画像の特徴が大きく変化する可能性が高いので、適応スキャン制御部121は、不適切なスキャン順の使用による符号化効率の低減を抑制するために、スキャン順を予め定められた所定の順序(初期順)に決定する。
 さらに、適応スキャン制御部121は、スキャン順を、画像に応じて更新した更新順に設定したか、予め定められた初期順に設定したかを示すフラグ情報(default_scan_flag)を生成する。このフラグ情報は、可逆符号化部106により画像(量子化された直交変換係数)とともに符号化され、復号側に伝送される。復号側においては、このフラグ情報によって、スキャン順が初期順であるか更新順であるかを把握することができる。
 なお、過去に符号化した画像における非ゼロ係数の分布を用いてスキャン順を決定する場合、そのスキャン順の更新は、復号側においても再現可能であるので、スキャン順の伝送は不要になる。つまり、画像符号化装置100は、その分、符号化効率を向上させることができる。
[適応スキャン制御部]
 図7は、図6の可逆符号化部106と適応スキャン制御部121の主な構成例を示すブロック図である。
 図7に示されるように、可逆符号化部106は、マクロブロックシンタックス符号化部131、フラグ符号化部132、および量子化直交変換係数符号化部133を有する。
 また、適応スキャン制御部121は、非ゼロ係数カウンタ141、ソート部142、スキャン順バッファ143、IDR判定部144、シーンチェンジ検出部145、スキャン順決定部146、およびフラグ生成部147を有する。
 マクロブロックシンタックス符号化部131は、イントラ予測部114若しくは動き予測・補償部115から供給される予測モードや動きベクトル情報等を符号化し、その符号化データをマクロブロックのシンタックスとして蓄積バッファ107に供給する。
 フラグ符号化部132は、フラグ生成部147により生成されたdefault_scan_flagを符号化し、その符号化データを蓄積バッファ107に供給する。
 量子化直交変換係数符号化部133は、量子化部105より供給される量子化された直交変換係数を符号化し、その符号化データを蓄積バッファ107に供給する。このとき、量子化直交変換係数符号化部133は、スキャン順決定部146により決定されたスキャン順を取得し、そのスキャン順で、量子化された直交変換係数をスキャンし、符号化する。
 また、量子化直交変換係数符号化部133は、量子化部105から供給される量子化された直交変換係数の、各マクロブロック(画像の直交変換処理単位となる部分領域)内における非ゼロ係数の位置を示す情報(非ゼロ係数位置)を非ゼロ係数カウンタ141に供給する。
 適応スキャン制御部121の非ゼロ係数カウンタ141は、量子化直交変換係数符号化部133から非ゼロ係数位置を取得し、マクロブロック内の各画素位置について、非ゼロ係数をカウントし、例えばスライスやピクチャ等、所定のデータ量毎に、その累積値を求める。非ゼロ係数カウンタ141は、そのマクロブロック内の位置毎の非ゼロ係数の累積値である累積度数分布をソート部142に供給する。
 ソート部142は、非ゼロ係数カウンタ141から供給された非ゼロ係数の累積度数分布に基づいて、画像の直交変換処理単位となる部分領域であるマクロブロック内の各画素位置をその累積度順にソートし、その順をスキャン順として決定する。例えば累積度が同じ画素位置が複数存在する場合、予め定められた所定の規則に従って、それらを順位付けし、ソートする。ソート部142は、決定したスキャン順をスキャン順バッファ143に供給する。
 スキャン順バッファ143は、ソート部142から供給されるスキャン順を、更新されたスキャン順である更新順の最新の値として保持する。スキャン順バッファ143は、その更新順を適宜スキャン順決定部146に供給する。
 IDR判定部144は、画面並べ替えバッファ102から供給される入力画像情報のNAL(Network Abstraction Layer)シンタックスを参照し、処理対象がIDRピクチャであるか否かを判定する。IDR判定部144は、その判定結果をスキャン順決定部146に供給する。NALシンタックスは、AVC符号化方式等において規定されるNAL(ネットワーク抽象レイヤ)に関するシンタックスであり、そのNALヘッダの識別子nal_unit_typeにより、IDRピクチャのスライスであるか否かが示される。
 シーンチェンジ検出部145は、画面並べ替えバッファ102から供給される入力画像情報を解析し、その解析結果に基づいてシーンチェンジの発生を検出する。このシーンチェンジの検出方法は任意である。例えば、シーンチェンジ検出部145は、入力画像情報のフレーム間で画素値のヒストグラムや平均値等の任意の統計値を比較し、その統計値のフレーム間の差が所定の基準より大きい場合、つまり、画像の特徴が大きく変化した場合、シーンチェンジが発生したと判定する。シーンチェンジ検出部145は、シーンチェンジの発生の有無をスキャン順決定部146に通知する。
 スキャン順決定部146は、IDR判定部144から供給されるIDRの判定結果や、シーンチェンジ検出部145から供給されるシーンチェンジの検出結果等に基づいて、スキャン順を、予め保持している初期順にするか、スキャン順バッファ143から供給された更新順にするかを決定する。
 例えば、IDRピクチャであったり、シーンチェンジが含まれていたりする場合、画像の特徴が大きく変化している可能性が高いので、スキャン順決定部146は、画像に対して不適切なスキャン順を用いることによる符号化効率の低減を抑制するために、スキャン順を、例えば従来のジグザグスキャン等の、予め定められている所定のスキャン順である初期順に決定し、その旨を量子化直交変換係数符号化部133に通知する。
 この初期順は、任意の順でよいが、例えばAVC等において規定されているジグザグスキャン等のように、一般的に好適なスキャン順にするのが望ましい。
 また、例えば、IDRピクチャでもなく、シーンチェンジも含まれない場合、スキャン順決定部146は、スキャン順を、スキャン順バッファ143から供給される、画像に応じて更新されたスキャン順である更新順に決定し、その旨を量子化直交変換係数符号化部133に通知する。
 スキャン順決定部146は、そのスキャン順の決定結果をフラグ生成部147にも供給する。
 フラグ生成部147は、その決定結果に応じて、default_scan_flagの値を設定し、フラグ符号化部132に供給する。例えば、スキャン順として初期順が選択された場合、フラグ生成部147は、default_scan_flagの値を1に設定する。また、例えば、スキャン順として更新順が選択された場合、フラグ生成部147は、default_scan_flagを0に設定する。
[スキャン順の更新]
 以上のように適応スキャン制御部121は、可逆符号化部106における量子化された直交変換係数のスキャン順を初期順にするか更新順にするかを選択するだけでなく、非ゼロ係数の累積度数分布に応じてその更新順を更新する。
 例えば、図8に示されるように4×4のブロックについて、初期順として、図8のAに示されるようなジグザグスキャン順が予め設定されているとする。図8において各四角は、ブロック内の画素位置を示す。図8のAの各四角内の数字は、スキャン順(0から15に向かう順)を示す。
 例えば、ある所定のデータ単位(例えばピクチャやスライス等)において、各ブロックの非ゼロ係数のカウントの結果、ブロック内の各画素位置における非ゼロ係数の累積値が図8のBに示されるような分布になったとする。図8のBにおいて、各四角内の数字は、非ゼロ係数の累積度数を示す。
 適応スキャン制御部121のソート部142は、図8のCに示されるように、スキャン順を、この非ゼロ係数の度数順に並べ替える。図8のAの各四角内の数字は、スキャン順(0から15に向かう順)を示す。
 このようなスキャン順にすることにより、可逆符号化部106の量子化直交変換係数符号化部133は、非ゼロ係数が出現する可能性の高い画素位置から先にスキャンすることができるので、ゼロランの値を増大させることができる。つまり、可逆符号化部106は、より画像に適したスキャン順でスキャンすることができる。したがって、画像符号化装置100は、符号化効率を向上させることができる。
 なお、処理対象が次のデータ単位(ピクチャやスライス等)に進むと、非ゼロ係数のカウントが新たに行われる。上述した更新順は、過去のデータ単位のカウント結果を用いて、そのデータ単位毎に更新される。
 ただし、IDRピクチャの場合やシーンチェンジが含まれる場合、画像の特徴が、それより前の画像の特徴と大きく変化する可能性が高い(画像の特徴の連続性が薄い)ので、スキャン順は初期順に設定される。このようにすることにより、画像符号化装置100は、現在の画像の特徴と、スキャン順の根拠となる過去の画像の特徴とが大きく異なることによる、画像に対して不適切なスキャン順によるスキャン実行を抑制することができ、符号化効率の低減を抑制することができる。
[符号化処理の流れ]
 次に、以上のような画像符号化装置100により実行される各処理の流れについて説明する。最初に、図9のフローチャートを参照して、符号化処理の流れの例を説明する。
 ステップS101において、A/D変換部101は入力された画像をA/D変換する。ステップS102において、画面並べ替えバッファ102は、A/D変換された画像を記憶し、各ピクチャの表示する順番から符号化する順番への並べ替えを行う。
 ステップS103において、演算部103は、ステップS102の処理により並び替えられた画像と、予測画像との差分を演算する。予測画像は、インター予測する場合は動き予測・補償部115から、イントラ予測する場合はイントラ予測部114から、選択部116を介して演算部103に供給される。
 差分データは元の画像データに較べてデータ量が低減される。したがって、画像をそのまま符号化する場合に較べて、データ量を圧縮することができる。
 ステップS104において、直交変換部104は,ステップS103の処理により生成された差分情報を直交変換する。具体的には、離散コサイン変換、カルーネン・レーベ変換等の直交変換が行われ、変換係数が出力される。
 ステップS105において、量子化部105は、ステップS104の処理により得られた直交変換係数を量子化する。
 ステップS105の処理により量子化された差分情報は、次のようにして局部的に復号される。すなわち、ステップS106において、逆量子化部108は、ステップS105の処理により生成された量子化された直交変換係数(量子化係数とも称する)を量子化部105の特性に対応する特性で逆量子化する。ステップS107において、逆直交変換部109は、ステップS106の処理により得られた直交変換係数を、直交変換部104の特性に対応する特性で逆直交変換する。
 ステップS108において、演算部110は、予測画像を局部的に復号された差分情報に加算し、局部的に復号された画像(演算部103への入力に対応する画像)を生成する。ステップS109においてデブロックフィルタ111は、ステップS108の処理により生成された画像をフィルタリングする。これによりブロック歪みが除去される。
 ステップS110において、フレームメモリ112は、ステップS109の処理によりブロック歪みが除去された画像を記憶する。なお、フレームメモリ112にはデブロックフィルタ111によりフィルタ処理されていない画像も演算部110から供給され、記憶される。
 ステップS111において、イントラ予測部114は、イントラ予測モードのイントラ予測処理を行う。ステップS112において、動き予測・補償部115は、インター予測モードでの動き予測や動き補償を行うインター動き予測処理を行う。
 ステップS113において、選択部116は、イントラ予測部114および動き予測・補償部115から出力された各コスト関数値に基づいて、最適予測モードを決定する。つまり、選択部116は、イントラ予測部114により生成された予測画像と、動き予測・補償部115により生成された予測画像のいずれか一方を選択する。
 また、このいずれの予測画像が選択されたかを示す選択情報は、イントラ予測部114および動き予測・補償部115のうち、予測画像が選択された方に供給される。最適イントラ予測モードの予測画像が選択された場合、イントラ予測部114は、最適イントラ予測モードを示す情報(すなわち、イントラ予測モード情報)を、可逆符号化部106に供給する。
 最適インター予測モードの予測画像が選択された場合、動き予測・補償部115は、最適インター予測モードを示す情報と、必要に応じて、最適インター予測モードに応じた情報を可逆符号化部106に出力する。最適インター予測モードに応じた情報としては、動きベクトル情報やフラグ情報、参照フレーム情報などがあげられる。
 ステップS114において、可逆符号化部106は、ステップS105の処理により量子化された変換係数を符号化する。すなわち、差分画像(インターの場合、2次差分画像)に対して、可変長符号化や算術符号化等の可逆符号化が行われる。
 なお、可逆符号化部106は、ステップS105において算出された量子化パラメータを符号化し、符号化データに付加する。
 また、可逆符号化部106は、ステップS113の処理により選択された予測画像の予測モードに関する情報を符号化し、差分画像を符号化して得られる符号化データに付加する。つまり、可逆符号化部106は、イントラ予測部114から供給されるイントラ予測モード情報、または、動き予測・補償部115から供給される最適インター予測モードに応じた情報なども符号化し、符号化データに付加する。
 ステップS115において蓄積バッファ107は、可逆符号化部106から出力される符号化データを蓄積する。蓄積バッファ107に蓄積された符号化データは、適宜読み出され、伝送路を介して復号側に伝送される。
 ステップS116においてレート制御部117は、ステップS115の処理により蓄積バッファ107に蓄積された圧縮画像に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部105の量子化動作のレートを制御する。
 ステップS116の処理が終了すると、符号化処理が終了される。
[可逆符号化処理の流れ]
 次に、図10のフローチャートを参照して、図9のステップS114において実行される可逆符号化処理の流れの例を説明する。
 可逆符号化処理が開始されると、IDR判定部144は、ステップS131において、処理対象の画像がIDRピクチャであるか否かを判定する。IDRピクチャでないと判定した場合、IDR判定部144は、処理をステップS132に進める。
 ステップS132において、シーンチェンジ検出部145は、処理対象の画像がシーンチェンジを含むか否かを判定する。シーンチェンジを含まないと判定された場合、シーンチェンジ検出部145は、処理をステップS133に進める。
 IDRピクチャでもなくシーンチェンジも含まれないので、処理対象の画像の特徴は、それ以前の画像の特徴と類似する可能性が高い。そこで、ステップS133において、フラグ生成部147は、スキャン順として更新順が選択される(初期順が選択されない)ことを示すように、default_scan_flagの値を0にして生成する(default_scan_flag=0)。ステップS134において、フラグ符号化部132は、そのdefault_scan_flagを符号化する。
 ステップS135において、スキャン順決定部146は、可逆符号化部106(量子化直交変換係数符号化部133)における量子化された直交変換係数のスキャン順として更新順を選択し、処理をステップS139に進める。
 また、ステップS132において、処理対象の画像がシーンチェンジを含まないと判定された場合、シーンチェンジ検出部145は、処理をステップS136に進める。
 シーンチェンジが発生しているので、処理対象の画像の特徴は、それ以前の画像の特徴と類似する可能性が低い。そこで、ステップS137において、フラグ生成部147は、スキャン順として初期順が選択されることを示すように、default_scan_flagの値を1にして生成する(default_scan_flag=0)。ステップS137において、フラグ符号化部132は、そのdefault_scan_flagを符号化し、処理をステップS138に進める。
 さらに、ステップS131において、処理対象の画像がIDRピクチャであると判定された場合、IDR判定部144は、処理をステップS138に進める。つまり、この場合、フラグ生成部147は、default_scan_flagを生成しない。復号側においても、IDRピクチャはNALシンタックスから容易に検出することができる。したがって、default_scan_flagが無くても、初期順が選択されていることは、容易に把握することができる。IDRピクチャである場合に、このdefault_scan_flagの伝送を省略することにより、画像符号化装置100は、そのdefault_scan_flagの伝送による符号化効率の低減を抑制することができる。
 ステップS138において、スキャン順決定部146は、可逆符号化部106(量子化直交変換係数符号化部133)における量子化された直交変換係数のスキャン順として初期順を選択し、処理をステップS139に進める。
 量子化直交変換係数符号化部133は、ステップS139において、ステップS135若しくはステップS138において選択されたスキャン順(選択順)で、処理対象のマクロブロックの量子化された直交変換係数をスキャンし、ステップS140において、その量子化された直交変換係数をスキャンした順に符号化する。
 ステップS141において、非ゼロ係数カウンタ141は、マクロブロック内の各画素位置の非ゼロ係数をカウントし、所定のデータ単位(ピクチャ若しくはスライス等)で累算する。
 ステップS142において、非ゼロ係数カウンタ141は、所定のデータ単位内の全てのマクロブロックを処理したか否かを判定する。未処理のマクロブロックが存在すると判定された場合、非ゼロ係数カウンタ141は、ステップS139に処理を戻し、それ以降の処理を繰り返す。
 また、ステップS142において、全てのマクロブロックを処理したと判定された場合、非ゼロ係数カウンタ141は、処理をステップS143に進める。
 ステップS143において、ソート部142は、スキャン順を非ゼロ係数の累積値の大きさ順にする(累積度数分布に応じた順にする)。ステップS144において、スキャン順バッファ143は、更新順を、ステップS143において設定されたスキャン順に更新する。
 ステップS144の処理を終了すると、適応スキャン制御部121は、可逆符号化処理を終了し、処理を図9のステップS114に戻し、それ以降の処理を繰り返す。
 以上のように、適応スキャン制御部121が、可逆符号化部106において行われるスキャン順を、画像の特徴に応じて適応的に制御するので、画像符号化装置100は、符号化効率を向上させることができる。
<2.第2の実施の形態>
[画像復号装置]
 図11は、画像復号装置の主な構成例を示すブロック図である。図11に示される画像復号装置200は、図6の画像符号化装置100に対応する復号装置である。
 画像符号化装置100より符号化された符号化データは、所定の伝送路を介して、この画像符号化装置100に対応する画像復号装置200に伝送され、復号されるものとする。
 図11に示されるように、画像復号装置200は、蓄積バッファ201、可逆復号部202、逆量子化部203、逆直交変換部204、演算部205、デブロックフィルタ206、画面並べ替えバッファ207、およびD/A変換部208を有する。また、画像復号装置200は、フレームメモリ209、選択部210、イントラ予測部211、動き予測・補償部212、および選択部213を有する。
 画像復号装置200は、さらに、適応逆スキャン制御部221を有する。
 蓄積バッファ201は、伝送されてきた符号化データを蓄積する。この符号化データは、画像符号化装置100により符号化されたものである。可逆復号部202は、蓄積バッファ201から所定のタイミングで読み出された符号化データを、図6の可逆符号化部106の符号化方式に対応する方式で復号する。
 可逆復号部202は、適応逆スキャン制御部221により決定された逆スキャン順で、符号化データを復号して得られた、量子化された直交変換係数を逆スキャンし、1次元の配列から2次元の配列に並び直す。
 逆量子化部203は、可逆復号部202により復号されて得られた係数データ(量子化係数)を、図7の量子化部105の量子化方式に対応する方式で逆量子化する。
 逆量子化部203は、逆量子化された係数データ、つまり、直交変換係数を、逆直交変換部204に供給する。逆直交変換部204は、図6の直交変換部104の直交変換方式に対応する方式で、その直交変換係数を逆直交変換し、画像符号化装置100において直交変換される前の残差データに対応する復号残差データを得る。
 逆直交変換されて得られた復号残差データは、演算部205に供給される。また、演算部205には、選択部213を介して、イントラ予測部211若しくは動き予測・補償部212から予測画像が供給される。
 演算部205は、その復号残差データと予測画像とを加算し、画像符号化装置100の演算部103により予測画像が減算される前の画像データに対応する復号画像データを得る。演算部205は、その復号画像データをデブロックフィルタ206に供給する。
 デブロックフィルタ206は、供給された復号画像のブロック歪を除去した後、画面並べ替えバッファ207に供給する。
 画面並べ替えバッファ207は、画像の並べ替えを行う。すなわち、図6の画面並べ替えバッファ102により符号化の順番のために並べ替えられたフレームの順番が、元の表示の順番に並べ替えられる。D/A変換部208は、画面並べ替えバッファ207から供給された画像をD/A変換し、図示せぬディスプレイに出力し、表示させる。
 デブロックフィルタ206の出力は、さらに、フレームメモリ209に供給される。
 フレームメモリ209、選択部210、イントラ予測部211、動き予測・補償部212、および選択部213は、図7の画像符号化装置100のフレームメモリ112、選択部113、イントラ予測部114、動き予測・補償部115、および選択部116にそれぞれ対応する。
 選択部210は、インター処理される画像と参照される画像をフレームメモリ209から読み出し、動き予測・補償部212に供給する。また、選択部210は、イントラ予測に用いられる画像をフレームメモリ209から読み出し、イントラ予測部211に供給する。
 イントラ予測部211には、ヘッダ情報を復号して得られたイントラ予測モードを示す情報等が可逆復号部202から適宜供給される。イントラ予測部211は、この情報に基づいて、フレームメモリ209から取得した参照画像から予測画像を生成し、生成した予測画像を選択部213に供給する。
 動き予測・補償部212は、ヘッダ情報を復号して得られた情報(予測モード情報、動きベクトル情報、参照フレーム情報、フラグ、および各種パラメータ等)を可逆復号部202から取得する。
 動き予測・補償部212は、可逆復号部202から供給されるそれらの情報に基づいて、フレームメモリ209から取得した参照画像から予測画像を生成し、生成した予測画像を選択部213に供給する。
 選択部213は、動き予測・補償部212またはイントラ予測部211により生成された予測画像を選択し、演算部205に供給する。
 適応逆スキャン制御部221は、可逆復号部202において符号化データが復号されて得られた、量子化された直交変換係数を1次元配列から2次元配列に変換する逆スキャン順を、画像に応じて適応的に制御する。
 つまり、適応逆スキャン制御部221は、図6の適応スキャン制御部121が決定したスキャン順により並び替えられた、量子化された直交変換係数を、元の配列に戻すように(スキャン順の並び替えと逆の順に並び替えが行われるように)、逆スキャン順を決定する。
 適応逆スキャン制御部221は、可逆復号部202により復号されて得られた、量子化された直交変換係数を取得し、その値が非ゼロである非ゼロ係数の分布を観測し、その分布の様子に応じて、可逆復号部202における量子化された直交変換係数の逆スキャン順を更新する(更新順)。適応逆スキャン制御部221は、動画像においては特徴が類似する画像が連続する可能性が高いことを利用して、過去に復号した画像における非ゼロ係数の分布を用いてその更新順を更新する。
 つまり、適応逆スキャン制御部221は、逆スキャンの更新順がスキャンの更新順に対応するように(逆順となるように)、図6の適応スキャン制御部121によるスキャン順の更新方法と同様の方法で、逆スキャン順を更新する。 
 適応逆スキャン制御部221は、さらに、符号化データに含まれるシンタックスやフラグ情報(default_scan_flag)に基づいて、IDRピクチャの判定やシーンチェンジの検出を行い、その場合、逆スキャン順を予め定められた所定の順序(初期順)に決定する。また、処理対象がIDRピクチャでなく、かつ、シーンチェンジを含まない場合、適応逆スキャン制御部221は、逆スキャン順を更新順に決定する。
 つまり、適応逆スキャン制御部221は、図6の適応スキャン制御部121の制御に対応するように逆スキャン順の制御を行い、適応スキャン制御部121が初期順を選択する条件においては、逆スキャン順を初期順に設定し、適応スキャン制御部121が更新順を選択する条件においては、逆スキャン順を更新順に設定する。
 可逆復号部202は、その制御に従い、適応逆スキャン制御部221により決定された逆スキャン順で量子化された直交変換係数の逆スキャンを行う。
 以上のようにすることにより、可逆復号部202は、可逆符号化部106におけるスキャン順と逆順に逆スキャンを行うことができる。つまり、可逆復号部202は、可逆符号化部106が、画像の特性に応じてスキャンした、量子化された直交変換係数を正しく逆スキャンすることができる。したがって、画像復号装置200は、画像符号化装置100により符号化された符号化データを正しく復号することができるので、符号化効率を向上させることができる。
[適応逆スキャン制御部]
 図12は、図11の可逆復号部202と適応逆スキャン制御部221の主な構成例を示すブロック図である。
 図12に示されるように、可逆復号部202は、マクロブロックシンタックス復号部231、NALシンタックス復号部232、フラグ復号部233、および量子化直交変換係数復号部234を有する。
 また、図12に示されるように、適応逆スキャン制御部221は、非ゼロ係数カウンタ241、ソート部242、逆スキャン順バッファ243、IDR判定部244、フラグ判定部245、および逆スキャン順決定部246を有する。
 マクロブロックシンタックス復号部231は、蓄積バッファ201から供給される、マクロブロックシンタックスの符号化データを復号し、復号して得られる予測モードや動きベクトル情報等をイントラ予測部211若しくは動き予測・補償部212に供給する。
 NALシンタックス復号部232は、蓄積バッファ201から供給される、NALシンタックスの符号化データを復号し、復号して得られるNALシンタックスをIDR判定部244に供給する。
 フラグ復号部233は、蓄積バッファ201から供給される、default_scan_flagの符号化データを復号し、復号して得られるdefault_scan_flagをフラグ判定部245に供給する。
 量子化直交変換係数復号部234は、蓄積バッファ201から供給される、量子化された直交変換係数の符号化データを復号し、復号して得られる、量子化された直交変換係数を、適応逆スキャン制御部221により制御される逆スキャン順で逆スキャンし、その並び替えた、量子化された直交変換係数を逆量子化部203に供給する。
 また、量子化直交変換係数復号部234は、量子化された直交変換係数の、非ゼロ係数のマクロブロック内の画素位置を示す情報を、非ゼロ係数カウンタ241に供給する。
 非ゼロ係数カウンタ241は、量子化された直交変換係数の非ゼロ係数を、マクロブロック内の画素位置毎にカウントし、その各画素位置における非ゼロ係数の、所定のデータ単位(例えばピクチャ若しくはスライス等)の累積値(累積度数分布)をソート部242に供給する。
 ソート部242は、非ゼロ係数カウンタ241から供給された非ゼロ係数の累積度数分布に基づいて、マクロブロック内の各画素位置をその累積度順にソートし、その順の逆順を逆スキャン順として決定する。例えば累積度が同じ画素位置が複数存在する場合、ソート部242は、予め定められた所定の規則に従って、それらを順位付けし、ソートする。この規則はソート部142が有する規則に対応する(ソート部142が行う順位付けと逆順にする)。ソート部242は、決定した逆スキャン順を逆スキャン順バッファ243に供給する。
 逆スキャン順バッファ243は、逆スキャン順の更新順を保持する。逆スキャン順バッファ243は、ソート部242から供給される逆スキャン順を、更新された逆スキャン順である更新順の最新の値として保持する。逆スキャン順バッファ243は、その更新順を適宜逆スキャン順決定部246に供給する。
 IDR判定部244は、NALシンタックス復号部232から供給されるNALシンタックスを参照し、処理対象がIDRピクチャであるか否かを判定する。IDR判定部244は、その判定結果を逆スキャン順決定部246に供給する。
 フラグ判定部245は、フラグ復号部233から供給されるdefault_scan_flagの値を判定し、シーンチェンジの発生を検出する。default_scan_flagがシーンチェンジの発生を示す値(例えば「1」等)の場合、フラグ判定部245は、シーンチェンジが発生した旨を逆スキャン順決定部246に通知する。また、default_scan_flagの値が、シーンチェンジが発生していないことを示す値(例えば「0」等)の場合、フラグ判定部245は、シーンチェンジが発生していない旨を逆スキャン順決定部246に通知する。
 逆スキャン順決定部246は、IDR判定部244から供給されるIDRの判定結果や、フラグ判定部245から供給されるシーンチェンジの有無の判定結果に基づいて、逆スキャン順を初期順にするか更新順にするかを選択し、その選択結果を量子化直交変換係数復号部234に通知する。
 つまり、例えば、IDRピクチャであったり、シーンチェンジが含まれていたりする場合、画像符号化装置100において初期順によりスキャンが行われているので、逆スキャン順決定部246は、逆スキャン順を、例えば従来のジグザグスキャン等の、予め定められている所定のスキャン順である初期順に決定し、その旨を量子化直交変換係数符号化部133に通知する。
 なお、この逆スキャン順の初期順は、画像符号化装置100のスキャン順決定部146が有するスキャン順の初期順と逆順である。
 また、例えば、IDRピクチャでもなく、シーンチェンジも含まれない場合、逆スキャン順決定部246は、逆スキャン順を、逆スキャン順バッファ243から供給される、画像に応じて更新された逆スキャン順である更新順に決定し、その旨を量子化直交変換係数符号化部133に通知する。
[復号処理の流れ]
 次に、以上のような画像復号装置200により実行される各処理の流れについて説明する。最初に、図13のフローチャートを参照して、復号処理の流れの例を説明する。
 復号処理が開始されると、ステップS201において、蓄積バッファ201は、伝送されてきた符号化データを蓄積する。ステップS202において、可逆復号部202および適応逆スキャン制御部221は、蓄積バッファ201から供給される符号化データを復号する。すなわち、図6の可逆符号化部106により符号化されたIピクチャ、Pピクチャ、並びにBピクチャが復号される。
 このとき、動きベクトル情報、参照フレーム情報、予測モード情報(イントラ予測モード、またはインター予測モード)、並びに、フラグや量子化パラメータ等の情報も復号される。
 予測モード情報がイントラ予測モード情報である場合、予測モード情報は、イントラ予測部211に供給される。予測モード情報がインター予測モード情報である場合、予測モード情報と対応する動きベクトル情報は、動き予測・補償部212に供給される。
 ステップS203において、逆量子化部203は、可逆復号部202により復号されて得られた、量子化された直交変換係数を、図6の量子化部105による量子化処理に対応する方法で逆量子化する。ステップS204において逆直交変換部204は逆量子化部203により逆量子化されて得られた直交変換係数を、図6の直交変換部104による直交変換処理に対応する方法で逆直交変換する。これにより図6の直交変換部104の入力(演算部103の出力)に対応する差分情報が復号されたことになる。
 ステップS205において、演算部205は、ステップS204の処理により得られた差分情報に、予測画像を加算する。これにより元の画像データが復号される。
 ステップS206において、デブロックフィルタ206は、ステップS205の処理により得られた復号画像を適宜フィルタリングする。これにより適宜復号画像からブロック歪みが除去される。
 ステップS207において、フレームメモリ209は、フィルタリングされた復号画像を記憶する。
 ステップS208において、イントラ予測部211、または動き予測・補償部212は、可逆復号部202から供給される予測モード情報に対応して、それぞれ画像の予測処理を行う。
 すなわち、可逆復号部202からイントラ予測モード情報が供給された場合、イントラ予測部211は、イントラ予測モードのイントラ予測処理を行う。また、可逆復号部202からインター予測モード情報が供給された場合、動き予測・補償部212は、インター予測モードの動き予測処理を行う。
 ステップS209において、選択部213は予測画像を選択する。すなわち、選択部213には、イントラ予測部211により生成された予測画像、若しくは、動き予測・補償部212により生成された予測画像が供給される。選択部213は、その予測画像が供給された側を選択し、その予測画像を演算部205に供給する。この予測画像は、ステップS205の処理により差分情報に加算される。
 ステップS210において、画面並べ替えバッファ207は、復号画像データのフレームの並べ替えを行う。すなわち、復号画像データの、画像符号化装置100の画面並べ替えバッファ102(図6)により符号化のために並べ替えられたフレームの順序が、元の表示の順序に並べ替えられる。
 ステップS211において、D/A変換部208は、画面並べ替えバッファ207においてフレームが並べ替えられた復号画像データをD/A変換する。この復号画像データが図示せぬディスプレイに出力され、その画像が表示される。
[可逆復号処理の流れ]
 次に、図14のフローチャートを参照して、図13のステップS203において実行される可逆復号処理の流れの例を説明する。
 可逆復号処理が開始されると、NALシンタックス復号部232は、ステップS231において、NALシンタックスを復号する。ステップS232において、IDR判定部244は、復号されたNALシンタックスに含まれる情報に基づいて、処理対象がIDRピクチャであるか否かを判定する。処理対象がIDRピクチャでない(復号する直交変換係数がIDRピクチャでない)と判定された場合、IDR判定部244は、処理をステップS233に進める。
 ステップS233において、フラグ復号部233は、default_scan_flagを復号する。ステップS234において、フラグ判定部245は、復号されたdefault_scan_flagの値が1(シーンチェンジを含むことを示す値)であるか否かを判定する。default_scan_flagの値に基づいてシーンチェンジを含まないと判定された場合、フラグ判定部245は、処理をステップS235に進める。
 ステップS235において、逆スキャン順決定部246は、逆スキャン順として更新順を選択する。更新順を選択すると、逆スキャン順決定部246は、処理をステップS237に進める。
 また、ステップS232において、処理対象がIDRピクチャであると判定された場合、IDR判定部244は、処理をステップS236に進める。さらに、ステップS234において、復号されたdefault_scan_flagの値が0(シーンチェンジを含まないことを示す値)であると判定された場合、フラグ判定部245は、処理をステップS236に進める。
 ステップS236において、逆スキャン順決定部246は、逆スキャン順として初期順を選択する。初期順を選択すると、逆スキャン順決定部246は、処理をステップS237に進める。
 ステップS237において、量子化直交変換係数復号部234は、処理対象のマクロブロックについて、量子化された直交変換係数の符号化データを復号する。ステップS238において、量子化直交変換係数復号部234は、ステップS237において復号して得られた、量子化された直交変換係数を、ステップS235若しくはステップS236において選択された順序(初期順若しくは更新順)で逆スキャンし、2次配列に並び替え、それを逆量子化部203に供給する。
 ステップS239において、非ゼロ係数カウンタ241は、非ゼロ係数を、マクロブロック内の画素位置毎にカウントする。
 ステップS240において、非ゼロ係数カウンタ241は、所定のデータ単位(例えば、ピクチャ若しくはスライス等)について、全てのマクロブロックを処理したか否かを判定する。未処理のマクロブロックが存在すると判定された場合、非ゼロ係数カウンタ241は、処理をステップS237に戻し、それ以降の処理を繰り返す。
 また、ステップS240において、全てのマクロブロックを処理したと判定された場合、非ゼロ係数カウンタ241は、処理をステップS241に進める。
 ステップS241において、ソート部242は、逆スキャン順を、上述した所定のデータ単位(例えば、ピクチャ若しくはスライス等)の非ゼロ係数の累積値の大きさ順にする。
 ステップS242において、逆スキャン順バッファ243は、ステップS241において設定された逆スキャン順を保持することにより、更新順を更新する。
 ステップS242の処理を終了すると、可逆復号部202および適応逆スキャン制御部221は、可逆復号処理を終了する。
 以上のように各処理を実行することにより、画像復号装置200は、画像符号化装置100の適応スキャン制御部121が、画像の特徴に応じて適応的に決定したスキャン順の逆順を正しく再現することができ、それを逆スキャン順とすることができる。また、画像復号装置200は、画像符号化装置100から供給されるコードストリームのNALシンタックスやフラグ情報に基づいて、画像符号化装置100においてスキャン順として初期順が採用されたか、更新順が採用されたかを正しく判定することができる。つまり、画像復号装置200は、画像符号化装置100により生成された符号化データを正しく復号することができるので、符号化効率を向上させることができる。
 なお、以上に説明した、第1の実施の形態および第2の実施の形態においては、スキャン順若しくは逆スキャン順の更新順を決定するための統計値として、非ゼロ係数の画素位置毎の累積値を用いるように説明したが、この統計値は、例えば、非ゼロ係数の累積値の平均値等、これ以外のどのような統計値を用いるようにしてもよい。もちろん、非ゼロ係数の統計値以外を用いてスキャン順若しくは逆スキャン順の更新順を決定するようにしてもよい。
 また、以上においては、例えばピクチャやスライス等の所定のデータ単位毎に統計値を算出するように説明したが、このデータ単位は任意である。
 なお、以上に説明した、適応的なスキャン順および逆スキャン順の制御は、図15に示すように、Iスライス(Iピクチャ)、Pスライス(Pピクチャ)、およびBスライス(Bピクチャ)のそれぞれに対して互いに独立して行う(スライスタイプ若しくはピクチャタイプ毎に独立して制御する)ようにしてもよい。 
 その場合、図15に示されるように、各スライス(ピクチャ)のスキャン順および逆スキャン順の更新には、過去の同種のスライス(ピクチャ)における非ゼロ係数の統計値が用いられる。例えば、Iスライスのスキャン順は、その直前に処理されるIスライスにおける非ゼロ係数の度数分布に応じて更新され、Pスライスのスキャン順は、その直前に処理されるPスライスにおける非ゼロ係数の度数分布に応じて更新され、Bスライスのスキャン順は、その直前に処理されるBスライスにおける非ゼロ係数の度数分布に応じて更新される。
 もちろん、この場合も、スキャン順および逆スキャン順の更新に用いられる統計値は任意である。例えば、Iスライスの場合と、Pスライスの場合と、Bスライスの場合とで、互いに異なる統計値をスキャン順および逆スキャン順の更新に用いる等、互いに独立して行われるスキャン順および逆スキャン順の更新を互いに異なる統計値に基づいて行うようにしてもよい。
 また、Iスライスにおいては、イントラ予測モードに応じて、別々のスキャン方式を適用するようにしても良い。もちろん、インタースライスの場合、16×16、16×8…といったような、動き補償パーティションモードに応じて、別々のスキャン方式を適用するようにしても良い。
 更に、単一のピクチャを、図16に示すように、複数のスライスに分割して処理する場合、図16のAに示されるように、直前に処理されるスライスにおける非ゼロ係数の統計値を基に、スキャン順が更新されるようにしても良いが、図16のBに示されるように、直前に処理されるピクチャにおける同一位置のスライスにおける非ゼロ係数の統計値を基に、スキャン順が更新されるようにしても良い。スライス単位で並列処理を行う場合には、図16のBに示されるような方式を用いる必要がある。
 また、画像符号化装置100において採用されたスキャン順を、画像復号装置200に伝送するようにしてもよい。このようにすることにより画像復号装置200は、そのスキャン順に従って正しい逆スキャン順を容易に求めることができる。ただし、上述したように、スキャン順を伝送せずに、画像復号装置200において、正しいスキャン順(逆スキャン順)を再現することにより、符号化効率をさらに向上させることができる。
 以上においては、過去に処理された画像における非ゼロ係数の統計値を用いてスキャン順および逆スキャン順を更新するように説明したが、これに限らず、現在の処理対象の画像における非ゼロ係数の統計値を用いてスキャン順および逆スキャン順を更新する(処理対象の画像に基づいて更新されたスキャン順若しくは逆スキャン順を当該処理対象の画像の処理において使用する)ようにしてもよい。
 例えば、図7において、量子化直交変換係数符号化部133が、量子化部105から供給された量子化された直交変換係数を、所定のデータ単位(例えばスライスやピクチャ等)分保持し、非ゼロ係数カウンタ141がその直交変換係数について非ゼロ係数のる異性度数分布を求め、ソート部142がスキャン順を設定し、スキャン順バッファ143が更新順を更新するようにする。
 そして、スキャン順決定部146がその更新順を選択すると、量子化直交変換係数符号化部133は、保持している直交変換係数を、マクロブロック毎に、その更新順でスキャンする。
 このようにすることにより、可逆符号化部106は、より画像の特徴に適したスキャン順でスキャンを行うことができる。
 ただし、この場合、画像復号装置200が、このように採用された更新順(スキャン順)を再現することができないので、画像符号化装置100は、採用した更新順(スキャン順)を画像復号装置200に伝送する必要がある。
 以上においては、非ゼロ係数の累積度数分布に応じてスキャン順および逆スキャン順を更新するように説明したが、その際、更新するか否かを決める閾値を設けるようにしてもよい。例えば、非ゼロ係数の出現頻度に偏りが少なく、累積度数分布が一様な場合、どの順でスキャンしても符号化効率に大きな差は生じない。したがって、このような場合更新順の更新を省略し、負荷を軽減させるようにしてもよい。この場合、さらに、スキャン順および逆スキャン順として初期順が選択されるようにしてもよい。
 また、以上においては、画像の特性(非ゼロ係数の累積度数分布等)に応じて適応的に更新される更新順か、初期順が選択されるように説明したが、これに限らず、予め用意された複数のスキャン順の中から1つが、画像の特性(非ゼロ係数の累積度数分布等)に応じて適応的に選択されるようにしてもよい。例えば、非ゼロ係数の度数分布に基づいて、予め用意された複数のスキャン順の中から、最も近いスキャン順が選択されるようにしてもよい。逆スキャン順の場合も同様である。
 また、以上に説明したスキャン順や逆スキャン順の制御を、非特許文献1において提案されているような拡張マクロブロック(所定のサイズより大きなマクロブロック)についてのみ適用するようにしてもよい。
 また、以上においては、量子化された直交変換係数をスキャンするスキャン順を制御するように説明したが、本技術は任意の係数データを2次元配列から1次元配列に変換する際のスキャン順(並び替え順)を制御するものであればどのような処理にも適用することができる。例えば、直交変換係数は量子化されていなくてもよい。また、スキャンされるデータは、直交変換係数でなくてもよく、画像データが直交変換と異なる他の変換処理により変換されて生成された係数データであってもよい。逆スキャンの場合も同様である。
 以上においては、AVCに準ずる方式による符号化を行う画像符号化装置、並びに、AVCに準ずる方式による復号を行う画像復号装置を例にして説明してきたが、本技術の適用範囲はこれに限らず、直交変換処理および直交変換係数を所定のスキャン順でスキャンする符号化処理を行うあらゆる画像符号化装置並びに画像復号装置に適用することが可能である。
 また、以上に説明したdefault_scan_flag等の情報は、例えば、符号化データの任意の位置に付加されるようにしてもよいし、符号化データとは別に復号側に伝送されるようにしてもよい。例えば、可逆符号化部106が、これらの情報を、ビットストリームにシンタックスとして記述するようにしてもよい。また、可逆符号化部106が、これらの情報を、補助情報として所定の領域に格納して伝送するようにしてもよい。例えば、これらの情報が、SEI(Suplemental Enhancement Information)等のパラメータセット(例えばシーケンスやピクチャのヘッダ等)に格納されるようにしてもよい。
 また、可逆符号化部106が、これらの情報を、符号化データとは別に(別のファイルとして)、画像符号化装置100から画像復号装置200に伝送させるようにしてもよい。その場合、これらの情報と符号化データとの対応関係を明確にする(復号側で把握することができるようにする)必要があるが、その方法は任意である。例えば、別途、対応関係を示すテーブル情報を作成してもよいし、対応先のデータを示すリンク情報を互いのデータに埋め込むなどしてもよい。
<3.第3の実施の形態>
[パーソナルコンピュータ]
 上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。この場合、例えば、図17に示されるようなパーソナルコンピュータとして構成されるようにしてもよい。
 図17において、パーソナルコンピュータ500のCPU(Central Processing Unit)501は、ROM(Read Only Memory)502に記憶されているプログラム、または記憶部513からRAM(Random Access Memory)503にロードされたプログラムに従って各種の処理を実行する。RAM503にはまた、CPU501が各種の処理を実行する上において必要なデータなども適宜記憶される。
 CPU501、ROM502、およびRAM503は、バス504を介して相互に接続されている。このバス504にはまた、入出力インタフェース510も接続されている。
 入出力インタフェース510には、キーボード、マウスなどよりなる入力部511、CRT(Cathode Ray Tube)やLCD(Liquid Crystal Display)などよりなるディスプレイ、並びにスピーカなどよりなる出力部512、ハードディスクなどより構成される記憶部513、モデムなどより構成される通信部514が接続されている。通信部514は、インターネットを含むネットワークを介しての通信処理を行う。
 入出力インタフェース510にはまた、必要に応じてドライブ515が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア521が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部513にインストールされる。
 上述した一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、ネットワークや記録媒体からインストールされる。
 この記録媒体は、例えば、図17に示されるように、装置本体とは別に、ユーザにプログラムを配信するために配布される、プログラムが記録されている磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc - Read Only Memory),DVD(Digital Versatile Disc)を含む)、光磁気ディスク(MD(Mini Disc)を含む)、若しくは半導体メモリなどよりなるリムーバブルメディア521により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに配信される、プログラムが記録されているROM502や、記憶部513に含まれるハードディスクなどで構成される。
 なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
 また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
 また、本明細書において、システムとは、複数のデバイス(装置)により構成される装置全体を表すものである。
 また、以上において、1つの装置(または処理部)として説明した構成を分割し、複数の装置(または処理部)として構成するようにしてもよい。逆に、以上において複数の装置(または処理部)として説明した構成をまとめて1つの装置(または処理部)として構成されるようにしてもよい。また、各装置(または各処理部)の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置(または処理部)の構成の一部を他の装置(または他の処理部)の構成に含めるようにしてもよい。つまり、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
 例えば、上述した画像符号化装置や画像復号装置は、任意の電子機器に適用することができる。以下にその例について説明する。
<4.第4の実施の形態>
[テレビジョン受像機]
 図18は、画像復号装置200を用いるテレビジョン受像機の主な構成例を示すブロック図である。
 図18に示されるテレビジョン受像機1000は、地上波チューナ1013、ビデオデコーダ1015、映像信号処理回路1018、グラフィック生成回路1019、パネル駆動回路1020、および表示パネル1021を有する。
 地上波チューナ1013は、地上アナログ放送の放送波信号を、アンテナを介して受信し、復調し、映像信号を取得し、それをビデオデコーダ1015に供給する。ビデオデコーダ1015は、地上波チューナ1013から供給された映像信号に対してデコード処理を施し、得られたデジタルのコンポーネント信号を映像信号処理回路1018に供給する。
 映像信号処理回路1018は、ビデオデコーダ1015から供給された映像データに対してノイズ除去などの所定の処理を施し、得られた映像データをグラフィック生成回路1019に供給する。
 グラフィック生成回路1019は、表示パネル1021に表示させる番組の映像データや、ネットワークを介して供給されるアプリケーションに基づく処理による画像データなどを生成し、生成した映像データや画像データをパネル駆動回路1020に供給する。また、グラフィック生成回路1019は、項目の選択などにユーザにより利用される画面を表示するための映像データ(グラフィック)を生成し、それを番組の映像データに重畳したりすることによって得られた映像データをパネル駆動回路1020に供給するといった処理も適宜行う。
 パネル駆動回路1020は、グラフィック生成回路1019から供給されたデータに基づいて表示パネル1021を駆動し、番組の映像や上述した各種の画面を表示パネル1021に表示させる。
 表示パネル1021はLCD(Liquid Crystal Display)などよりなり、パネル駆動回路1020による制御に従って番組の映像などを表示させる。
 また、テレビジョン受像機1000は、音声A/D(Analog/Digital)変換回路1014、音声信号処理回路1022、エコーキャンセル/音声合成回路1023、音声増幅回路1024、およびスピーカ1025も有する。
 地上波チューナ1013は、受信した放送波信号を復調することにより、映像信号だけでなく音声信号も取得する。地上波チューナ1013は、取得した音声信号を音声A/D変換回路1014に供給する。
 音声A/D変換回路1014は、地上波チューナ1013から供給された音声信号に対してA/D変換処理を施し、得られたデジタルの音声信号を音声信号処理回路1022に供給する。
 音声信号処理回路1022は、音声A/D変換回路1014から供給された音声データに対してノイズ除去などの所定の処理を施し、得られた音声データをエコーキャンセル/音声合成回路1023に供給する。
 エコーキャンセル/音声合成回路1023は、音声信号処理回路1022から供給された音声データを音声増幅回路1024に供給する。
 音声増幅回路1024は、エコーキャンセル/音声合成回路1023から供給された音声データに対してD/A変換処理、増幅処理を施し、所定の音量に調整した後、音声をスピーカ1025から出力させる。
 さらに、テレビジョン受像機1000は、デジタルチューナ1016およびMPEGデコーダ1017も有する。
 デジタルチューナ1016は、デジタル放送(地上デジタル放送、BS(Broadcasting Satellite)/CS(Communications Satellite)デジタル放送)の放送波信号を、アンテナを介して受信し、復調し、MPEG-TS(Moving Picture Experts Group-Transport Stream)を取得し、それをMPEGデコーダ1017に供給する。
 MPEGデコーダ1017は、デジタルチューナ1016から供給されたMPEG-TSに施されているスクランブルを解除し、再生対象(視聴対象)になっている番組のデータを含むストリームを抽出する。MPEGデコーダ1017は、抽出したストリームを構成する音声パケットをデコードし、得られた音声データを音声信号処理回路1022に供給するとともに、ストリームを構成する映像パケットをデコードし、得られた映像データを映像信号処理回路1018に供給する。また、MPEGデコーダ1017は、MPEG-TSから抽出したEPG(Electronic Program Guide)データを図示せぬ経路を介してCPU1032に供給する。
 テレビジョン受像機1000は、このように映像パケットをデコードするMPEGデコーダ1017として、上述した画像復号装置200を用いる。なお、放送局等より送信されるMPEG-TSは、画像符号化装置100によって符号化されている。
 MPEGデコーダ1017は、画像復号装置200の場合と同様に、NALシンタックスやdefault_scan_flagに基づいて、画像符号化装置100において採用されたスキャン順に対応する逆スキャン順を特定することができる。したがって、MPEGデコーダ1017は、量子化された直交変換係数が、画像の特徴に応じて適応的に制御されたスキャン順によりスキャンされて符号化された符号化データを正しく復号することができ、符号化効率を向上させることができる。
 MPEGデコーダ1017から供給された映像データは、ビデオデコーダ1015から供給された映像データの場合と同様に、映像信号処理回路1018において所定の処理が施され、グラフィック生成回路1019において、生成された映像データ等が適宜重畳され、パネル駆動回路1020を介して表示パネル1021に供給され、その画像が表示される。
 MPEGデコーダ1017から供給された音声データは、音声A/D変換回路1014から供給された音声データの場合と同様に、音声信号処理回路1022において所定の処理が施され、エコーキャンセル/音声合成回路1023を介して音声増幅回路1024に供給され、D/A変換処理や増幅処理が施される。その結果、所定の音量に調整された音声がスピーカ1025から出力される。
 また、テレビジョン受像機1000は、マイクロホン1026、およびA/D変換回路1027も有する。
 A/D変換回路1027は、音声会話用のものとしてテレビジョン受像機1000に設けられるマイクロホン1026により取り込まれたユーザの音声の信号を受信し、受信した音声信号に対してA/D変換処理を施し、得られたデジタルの音声データをエコーキャンセル/音声合成回路1023に供給する。
 エコーキャンセル/音声合成回路1023は、テレビジョン受像機1000のユーザ(ユーザA)の音声のデータがA/D変換回路1027から供給されている場合、ユーザAの音声データを対象としてエコーキャンセルを行い、他の音声データと合成するなどして得られた音声のデータを、音声増幅回路1024を介してスピーカ1025より出力させる。
 さらに、テレビジョン受像機1000は、音声コーデック1028、内部バス1029、SDRAM(Synchronous Dynamic Random Access Memory)1030、フラッシュメモリ1031、CPU1032、USB(Universal Serial Bus) I/F1033、およびネットワークI/F1034も有する。
 A/D変換回路1027は、音声会話用のものとしてテレビジョン受像機1000に設けられるマイクロホン1026により取り込まれたユーザの音声の信号を受信し、受信した音声信号に対してA/D変換処理を施し、得られたデジタルの音声データを音声コーデック1028に供給する。
 音声コーデック1028は、A/D変換回路1027から供給された音声データを、ネットワーク経由で送信するための所定のフォーマットのデータに変換し、内部バス1029を介してネットワークI/F1034に供給する。
 ネットワークI/F1034は、ネットワーク端子1035に装着されたケーブルを介してネットワークに接続される。ネットワークI/F1034は、例えば、そのネットワークに接続される他の装置に対して、音声コーデック1028から供給された音声データを送信する。また、ネットワークI/F1034は、例えば、ネットワークを介して接続される他の装置から送信される音声データを、ネットワーク端子1035を介して受信し、それを、内部バス1029を介して音声コーデック1028に供給する。
 音声コーデック1028は、ネットワークI/F1034から供給された音声データを所定のフォーマットのデータに変換し、それをエコーキャンセル/音声合成回路1023に供給する。
 エコーキャンセル/音声合成回路1023は、音声コーデック1028から供給される音声データを対象としてエコーキャンセルを行い、他の音声データと合成するなどして得られた音声のデータを、音声増幅回路1024を介してスピーカ1025より出力させる。
 SDRAM1030は、CPU1032が処理を行う上で必要な各種のデータを記憶する。
 フラッシュメモリ1031は、CPU1032により実行されるプログラムを記憶する。フラッシュメモリ1031に記憶されているプログラムは、テレビジョン受像機1000の起動時などの所定のタイミングでCPU1032により読み出される。フラッシュメモリ1031には、デジタル放送を介して取得されたEPGデータ、ネットワークを介して所定のサーバから取得されたデータなども記憶される。
 例えば、フラッシュメモリ1031には、CPU1032の制御によりネットワークを介して所定のサーバから取得されたコンテンツデータを含むMPEG-TSが記憶される。フラッシュメモリ1031は、例えばCPU1032の制御により、そのMPEG-TSを、内部バス1029を介してMPEGデコーダ1017に供給する。
 MPEGデコーダ1017は、デジタルチューナ1016から供給されたMPEG-TSの場合と同様に、そのMPEG-TSを処理する。このようにテレビジョン受像機1000は、映像や音声等よりなるコンテンツデータを、ネットワークを介して受信し、MPEGデコーダ1017を用いてデコードし、その映像を表示させたり、音声を出力させたりすることができる。
 また、テレビジョン受像機1000は、リモートコントローラ1051から送信される赤外線信号を受光する受光部1037も有する。
 受光部1037は、リモートコントローラ1051からの赤外線を受光し、復調して得られたユーザ操作の内容を表す制御コードをCPU1032に出力する。
 CPU1032は、フラッシュメモリ1031に記憶されているプログラムを実行し、受光部1037から供給される制御コードなどに応じてテレビジョン受像機1000の全体の動作を制御する。CPU1032とテレビジョン受像機1000の各部は、図示せぬ経路を介して接続されている。
 USB I/F1033は、USB端子1036に装着されたUSBケーブルを介して接続される、テレビジョン受像機1000の外部の機器との間でデータの送受信を行う。ネットワークI/F1034は、ネットワーク端子1035に装着されたケーブルを介してネットワークに接続し、ネットワークに接続される各種の装置と音声データ以外のデータの送受信も行う。
 テレビジョン受像機1000は、MPEGデコーダ1017として画像復号装置200を用いることにより、アンテナを介して受信する放送波信号や、ネットワークを介して取得するコンテンツデータの量子化された直交変換係数が、画像の特徴に応じて適応的に制御されたスキャン順によりスキャンされて符号化される場合であっても、その符号化データを正しく復号することができ、符号化効率を向上させることができる。
<5.第5の実施の形態>
[携帯電話機]
 図19は、画像符号化装置100および画像復号装置200を用いる携帯電話機の主な構成例を示すブロック図である。
 図19に示される携帯電話機1100は、各部を統括的に制御するようになされた主制御部1150、電源回路部1151、操作入力制御部1152、画像エンコーダ1153、カメラI/F部1154、LCD制御部1155、画像デコーダ1156、多重分離部1157、記録再生部1162、変復調回路部1158、および音声コーデック1159を有する。これらは、バス1160を介して互いに接続されている。
 また、携帯電話機1100は、操作キー1119、CCD(Charge Coupled Devices)カメラ1116、液晶ディスプレイ1118、記憶部1123、送受信回路部1163、アンテナ1114、マイクロホン(マイク)1121、およびスピーカ1117を有する。
 電源回路部1151は、ユーザの操作により終話および電源キーがオン状態にされると、バッテリパックから各部に対して電力を供給することにより携帯電話機1100を動作可能な状態に起動する。
 携帯電話機1100は、CPU、ROMおよびRAM等でなる主制御部1150の制御に基づいて、音声通話モードやデータ通信モード等の各種モードで、音声信号の送受信、電子メールや画像データの送受信、画像撮影、またはデータ記録等の各種動作を行う。
 例えば、音声通話モードにおいて、携帯電話機1100は、マイクロホン(マイク)1121で集音した音声信号を、音声コーデック1159によってデジタル音声データに変換し、これを変復調回路部1158でスペクトラム拡散処理し、送受信回路部1163でデジタルアナログ変換処理および周波数変換処理する。携帯電話機1100は、その変換処理により得られた送信用信号を、アンテナ1114を介して図示しない基地局へ送信する。基地局へ伝送された送信用信号(音声信号)は、公衆電話回線網を介して通話相手の携帯電話機に供給される。
 また、例えば、音声通話モードにおいて、携帯電話機1100は、アンテナ1114で受信した受信信号を送受信回路部1163で増幅し、さらに周波数変換処理およびアナログデジタル変換処理し、変復調回路部1158でスペクトラム逆拡散処理し、音声コーデック1159によってアナログ音声信号に変換する。携帯電話機1100は、その変換して得られたアナログ音声信号をスピーカ1117から出力する。
 更に、例えば、データ通信モードにおいて電子メールを送信する場合、携帯電話機1100は、操作キー1119の操作によって入力された電子メールのテキストデータを、操作入力制御部1152において受け付ける。携帯電話機1100は、そのテキストデータを主制御部1150において処理し、LCD制御部1155を介して、画像として液晶ディスプレイ1118に表示させる。
 また、携帯電話機1100は、主制御部1150において、操作入力制御部1152が受け付けたテキストデータやユーザ指示等に基づいて電子メールデータを生成する。携帯電話機1100は、その電子メールデータを、変復調回路部1158でスペクトラム拡散処理し、送受信回路部1163でデジタルアナログ変換処理および周波数変換処理する。携帯電話機1100は、その変換処理により得られた送信用信号を、アンテナ1114を介して図示しない基地局へ送信する。基地局へ伝送された送信用信号(電子メール)は、ネットワークおよびメールサーバ等を介して、所定のあて先に供給される。
 また、例えば、データ通信モードにおいて電子メールを受信する場合、携帯電話機1100は、基地局から送信された信号を、アンテナ1114を介して送受信回路部1163で受信し、増幅し、さらに周波数変換処理およびアナログデジタル変換処理する。携帯電話機1100は、その受信信号を変復調回路部1158でスペクトラム逆拡散処理して元の電子メールデータを復元する。携帯電話機1100は、復元された電子メールデータを、LCD制御部1155を介して液晶ディスプレイ1118に表示する。
 なお、携帯電話機1100は、受信した電子メールデータを、記録再生部1162を介して、記憶部1123に記録する(記憶させる)ことも可能である。
 この記憶部1123は、書き換え可能な任意の記憶媒体である。記憶部1123は、例えば、RAMや内蔵型フラッシュメモリ等の半導体メモリであってもよいし、ハードディスクであってもよいし、磁気ディスク、光磁気ディスク、光ディスク、USBメモリ、またはメモリカード等のリムーバブルメディアであってもよい。もちろん、これら以外のものであってもよい。
 さらに、例えば、データ通信モードにおいて画像データを送信する場合、携帯電話機1100は、撮像によりCCDカメラ1116で画像データを生成する。CCDカメラ1116は、レンズや絞り等の光学デバイスと光電変換素子としてのCCDを有し、被写体を撮像し、受光した光の強度を電気信号に変換し、被写体の画像の画像データを生成する。CCDカメラ1116は、その画像データを、カメラI/F部1154を介して、画像エンコーダ1153で符号化し、符号化画像データに変換する。
 携帯電話機1100は、このような処理を行う画像エンコーダ1153として、上述した画像符号化装置100を用いる。画像エンコーダ1153は、画像符号化装置100の場合と同様に、量子化された直交変換係数のスキャン順を、画像の特徴に応じて適応的に制御する。したがって、画像エンコーダ1153は、画像の特徴により適したスキャン順によりスキャンを行うことができ、ゼロランの値を増やし、符号化効率を向上させることができる。
 なお、携帯電話機1100は、このとき同時に、CCDカメラ1116で撮像中にマイクロホン(マイク)1121で集音した音声を、音声コーデック1159においてアナログデジタル変換し、さらに符号化する。
 携帯電話機1100は、多重分離部1157において、画像エンコーダ1153から供給された符号化画像データと、音声コーデック1159から供給されたデジタル音声データとを、所定の方式で多重化する。携帯電話機1100は、その結果得られる多重化データを、変復調回路部1158でスペクトラム拡散処理し、送受信回路部1163でデジタルアナログ変換処理および周波数変換処理する。携帯電話機1100は、その変換処理により得られた送信用信号を、アンテナ1114を介して図示しない基地局へ送信する。基地局へ伝送された送信用信号(画像データ)は、ネットワーク等を介して、通信相手に供給される。
 なお、画像データを送信しない場合、携帯電話機1100は、CCDカメラ1116で生成した画像データを、画像エンコーダ1153を介さずに、LCD制御部1155を介して液晶ディスプレイ1118に表示させることもできる。
 また、例えば、データ通信モードにおいて、簡易ホームページ等にリンクされた動画像ファイルのデータを受信する場合、携帯電話機1100は、基地局から送信された信号を、アンテナ1114を介して送受信回路部1163で受信し、増幅し、さらに周波数変換処理およびアナログデジタル変換処理する。携帯電話機1100は、その受信信号を変復調回路部1158でスペクトラム逆拡散処理して元の多重化データを復元する。携帯電話機1100は、多重分離部1157において、その多重化データを分離して、符号化画像データと音声データとに分ける。
 携帯電話機1100は、画像デコーダ1156において符号化画像データをデコードすることにより、再生動画像データを生成し、これを、LCD制御部1155を介して液晶ディスプレイ1118に表示させる。これにより、例えば、簡易ホームページにリンクされた動画像ファイルに含まれる動画データが液晶ディスプレイ1118に表示される。
 携帯電話機1100は、このような処理を行う画像デコーダ1156として、上述した画像復号装置200を用いる。つまり、画像デコーダ1156は、画像復号装置200の場合と同様に、NALシンタックスやdefault_scan_flagに基づいて、画像符号化装置100において採用されたスキャン順に対応する逆スキャン順を特定することができる。したがって、画像デコーダ1156は、量子化された直交変換係数が、画像の特徴に応じて適応的に制御されたスキャン順によりスキャンされて符号化された符号化データを正しく復号することができ、符号化効率を向上させることができる。
 このとき、携帯電話機1100は、同時に、音声コーデック1159において、デジタルの音声データをアナログ音声信号に変換し、これをスピーカ1117より出力させる。これにより、例えば、簡易ホームページにリンクされた動画像ファイルに含まれる音声データが再生される。
 なお、電子メールの場合と同様に、携帯電話機1100は、受信した簡易ホームページ等にリンクされたデータを、記録再生部1162を介して、記憶部1123に記録する(記憶させる)ことも可能である。
 また、携帯電話機1100は、主制御部1150において、撮像されてCCDカメラ1116で得られた2次元コードを解析し、2次元コードに記録された情報を取得することができる。
 さらに、携帯電話機1100は、赤外線通信部1181で赤外線により外部の機器と通信することができる。
 携帯電話機1100は、画像エンコーダ1153として画像符号化装置100を用いることにより、例えばCCDカメラ1116において生成された画像データを符号化して伝送する際に、その画像データから生成された、量子化された直交変換係数のスキャン順を、画像の特徴に応じて適応的に制御することができ、画像の特徴により適したスキャン順によりスキャンを行うことができ、ゼロランの値を増やし、符号化効率を向上させることができる。
 また、携帯電話機1100は、画像デコーダ1156として画像復号装置200を用いることにより、例えば、簡易ホームページ等にリンクされた動画像ファイルの量子化された直交変換係数が、画像の特徴に応じて適応的に制御されたスキャン順によりスキャンされて符号化される場合であっても、その符号化データを正しく復号することができ、符号化効率を向上させることができる。
 なお、以上において、携帯電話機1100が、CCDカメラ1116を用いるように説明したが、このCCDカメラ1116の代わりに、CMOS(Complementary Metal Oxide Semiconductor)を用いたイメージセンサ(CMOSイメージセンサ)を用いるようにしてもよい。この場合も、携帯電話機1100は、CCDカメラ1116を用いる場合と同様に、被写体を撮像し、被写体の画像の画像データを生成することができる。
 また、以上においては携帯電話機1100として説明したが、例えば、PDA(Personal Digital Assistants)、スマートフォン、UMPC(Ultra Mobile Personal Computer)、ネットブック、ノート型パーソナルコンピュータ等、この携帯電話機1100と同様の撮像機能や通信機能を有する装置であれば、どのような装置であっても携帯電話機1100の場合と同様に、画像符号化装置100および画像復号装置200を適用することができる。
<6.第6の実施の形態>
[ハードディスクレコーダ]
 図20は、画像符号化装置100および画像復号装置200を用いるハードディスクレコーダの主な構成例を示すブロック図である。
 図20に示されるハードディスクレコーダ(HDDレコーダ)1200は、チューナにより受信された、衛星や地上のアンテナ等より送信される放送波信号(テレビジョン信号)に含まれる放送番組のオーディオデータとビデオデータを、内蔵するハードディスクに保存し、その保存したデータをユーザの指示に応じたタイミングでユーザに提供する装置である。
 ハードディスクレコーダ1200は、例えば、放送波信号よりオーディオデータとビデオデータを抽出し、それらを適宜復号し、内蔵するハードディスクに記憶させることができる。また、ハードディスクレコーダ1200は、例えば、ネットワークを介して他の装置からオーディオデータやビデオデータを取得し、それらを適宜復号し、内蔵するハードディスクに記憶させることもできる。
 さらに、ハードディスクレコーダ1200は、例えば、内蔵するハードディスクに記録されているオーディオデータやビデオデータを復号してモニタ1260に供給し、モニタ1260の画面にその画像を表示させ、モニタ1260のスピーカよりその音声を出力させることができる。また、ハードディスクレコーダ1200は、例えば、チューナを介して取得された放送波信号より抽出されたオーディオデータとビデオデータ、または、ネットワークを介して他の装置から取得したオーディオデータやビデオデータを復号してモニタ1260に供給し、モニタ1260の画面にその画像を表示させ、モニタ1260のスピーカよりその音声を出力させることもできる。
 もちろん、この他の動作も可能である。
 図20に示されるように、ハードディスクレコーダ1200は、受信部1221、復調部1222、デマルチプレクサ1223、オーディオデコーダ1224、ビデオデコーダ1225、およびレコーダ制御部1226を有する。ハードディスクレコーダ1200は、さらに、EPGデータメモリ1227、プログラムメモリ1228、ワークメモリ1229、ディスプレイコンバータ1230、OSD(On Screen Display)制御部1231、ディスプレイ制御部1232、記録再生部1233、D/Aコンバータ1234、および通信部1235を有する。
 また、ディスプレイコンバータ1230は、ビデオエンコーダ1241を有する。記録再生部1233は、エンコーダ1251およびデコーダ1252を有する。
 受信部1221は、リモートコントローラ(図示せず)からの赤外線信号を受信し、電気信号に変換してレコーダ制御部1226に出力する。レコーダ制御部1226は、例えば、マイクロプロセッサなどにより構成され、プログラムメモリ1228に記憶されているプログラムに従って、各種の処理を実行する。レコーダ制御部1226は、このとき、ワークメモリ1229を必要に応じて使用する。
 通信部1235は、ネットワークに接続され、ネットワークを介して他の装置との通信処理を行う。例えば、通信部1235は、レコーダ制御部1226により制御され、チューナ(図示せず)と通信し、主にチューナに対して選局制御信号を出力する。
 復調部1222は、チューナより供給された信号を、復調し、デマルチプレクサ1223に出力する。デマルチプレクサ1223は、復調部1222より供給されたデータを、オーディオデータ、ビデオデータ、およびEPGデータに分離し、それぞれ、オーディオデコーダ1224、ビデオデコーダ1225、またはレコーダ制御部1226に出力する。
 オーディオデコーダ1224は、入力されたオーディオデータをデコードし、記録再生部1233に出力する。ビデオデコーダ1225は、入力されたビデオデータをデコードし、ディスプレイコンバータ1230に出力する。レコーダ制御部1226は、入力されたEPGデータをEPGデータメモリ1227に供給し、記憶させる。
 ディスプレイコンバータ1230は、ビデオデコーダ1225またはレコーダ制御部1226より供給されたビデオデータを、ビデオエンコーダ1241により、例えばNTSC(National Television Standards Committee)方式のビデオデータにエンコードし、記録再生部1233に出力する。また、ディスプレイコンバータ1230は、ビデオデコーダ1225またはレコーダ制御部1226より供給されるビデオデータの画面のサイズを、モニタ1260のサイズに対応するサイズに変換し、ビデオエンコーダ1241によってNTSC方式のビデオデータに変換し、アナログ信号に変換し、ディスプレイ制御部1232に出力する。
 ディスプレイ制御部1232は、レコーダ制御部1226の制御のもと、OSD(On Screen Display)制御部1231が出力したOSD信号を、ディスプレイコンバータ1230より入力されたビデオ信号に重畳し、モニタ1260のディスプレイに出力し、表示させる。
 モニタ1260にはまた、オーディオデコーダ1224が出力したオーディオデータが、D/Aコンバータ1234によりアナログ信号に変換されて供給されている。モニタ1260は、このオーディオ信号を内蔵するスピーカから出力する。
 記録再生部1233は、ビデオデータやオーディオデータ等を記録する記憶媒体としてハードディスクを有する。
 記録再生部1233は、例えば、オーディオデコーダ1224より供給されるオーディオデータを、エンコーダ1251によりエンコードする。また、記録再生部1233は、ディスプレイコンバータ1230のビデオエンコーダ1241より供給されるビデオデータを、エンコーダ1251によりエンコードする。記録再生部1233は、そのオーディオデータの符号化データとビデオデータの符号化データとをマルチプレクサにより合成する。記録再生部1233は、その合成データをチャネルコーディングして増幅し、そのデータを、記録ヘッドを介してハードディスクに書き込む。
 記録再生部1233は、再生ヘッドを介してハードディスクに記録されているデータを再生し、増幅し、デマルチプレクサによりオーディオデータとビデオデータに分離する。記録再生部1233は、デコーダ1252によりオーディオデータおよびビデオデータをデコードする。記録再生部1233は、復号したオーディオデータをD/A変換し、モニタ1260のスピーカに出力する。また、記録再生部1233は、復号したビデオデータをD/A変換し、モニタ1260のディスプレイに出力する。
 レコーダ制御部1226は、受信部1221を介して受信されるリモートコントローラからの赤外線信号により示されるユーザ指示に基づいて、EPGデータメモリ1227から最新のEPGデータを読み出し、それをOSD制御部1231に供給する。OSD制御部1231は、入力されたEPGデータに対応する画像データを発生し、ディスプレイ制御部1232に出力する。ディスプレイ制御部1232は、OSD制御部1231より入力されたビデオデータをモニタ1260のディスプレイに出力し、表示させる。これにより、モニタ1260のディスプレイには、EPG(電子番組ガイド)が表示される。
 また、ハードディスクレコーダ1200は、インターネット等のネットワークを介して他の装置から供給されるビデオデータ、オーディオデータ、またはEPGデータ等の各種データを取得することができる。
 通信部1235は、レコーダ制御部1226に制御され、ネットワークを介して他の装置から送信されるビデオデータ、オーディオデータ、およびEPGデータ等の符号化データを取得し、それをレコーダ制御部1226に供給する。レコーダ制御部1226は、例えば、取得したビデオデータやオーディオデータの符号化データを記録再生部1233に供給し、ハードディスクに記憶させる。このとき、レコーダ制御部1226および記録再生部1233が、必要に応じて再エンコード等の処理を行うようにしてもよい。
 また、レコーダ制御部1226は、取得したビデオデータやオーディオデータの符号化データを復号し、得られるビデオデータをディスプレイコンバータ1230に供給する。ディスプレイコンバータ1230は、ビデオデコーダ1225から供給されるビデオデータと同様に、レコーダ制御部1226から供給されるビデオデータを処理し、ディスプレイ制御部1232を介してモニタ1260に供給し、その画像を表示させる。
 また、この画像表示に合わせて、レコーダ制御部1226が、復号したオーディオデータを、D/Aコンバータ1234を介してモニタ1260に供給し、その音声をスピーカから出力させるようにしてもよい。
 さらに、レコーダ制御部1226は、取得したEPGデータの符号化データを復号し、復号したEPGデータをEPGデータメモリ1227に供給する。
 以上のようなハードディスクレコーダ1200は、ビデオデコーダ1225、デコーダ1252、およびレコーダ制御部1226に内蔵されるデコーダとして画像復号装置200を用いる。つまり、ビデオデコーダ1225、デコーダ1252、およびレコーダ制御部1226に内蔵されるデコーダは、画像復号装置200の場合と同様に、NALシンタックスやdefault_scan_flagに基づいて、画像符号化装置100において採用されたスキャン順に対応する逆スキャン順を特定することができる。したがって、ビデオデコーダ1225、デコーダ1252、およびレコーダ制御部1226に内蔵されるデコーダは、量子化された直交変換係数が、画像の特徴に応じて適応的に制御されたスキャン順によりスキャンされて符号化された符号化データを正しく復号することができ、符号化効率を向上させることができる。
 したがって、ハードディスクレコーダ1200は、例えば、チューナや通信部1235が受信するビデオデータ(符号化データ)や、記録再生部1233が再生するビデオデータ(符号化データ)の量子化された直交変換係数が、画像の特徴に応じて適応的に制御されたスキャン順によりスキャンされて符号化されている場合であっても、その符号化データを正しく復号することができ、符号化効率を向上させることができる。
 また、ハードディスクレコーダ1200は、エンコーダ1251として画像符号化装置100を用いる。したがって、エンコーダ1251は、画像符号化装置100の場合と同様に、量子化された直交変換係数のスキャン順を、画像の特徴に応じて適応的に制御する。したがって、エンコーダ1251は、画像の特徴により適したスキャン順によりスキャンを行うことができ、ゼロランの値を増やし、符号化効率を向上させることができる。
 したがって、ハードディスクレコーダ1200は、例えば、ハードディスクに記録する符号化データを生成する際に、量子化された直交変換係数のスキャン順を、画像の特徴に応じて適応的に制御することができ、画像の特徴により適したスキャン順によりスキャンを行うことができ、ゼロランの値を増やし、符号化効率を向上させることができる。
 なお、以上においては、ビデオデータやオーディオデータをハードディスクに記録するハードディスクレコーダ1200について説明したが、もちろん、記録媒体はどのようなものであってもよい。例えばフラッシュメモリ、光ディスク、またはビデオテープ等、ハードディスク以外の記録媒体を適用するレコーダであっても、上述したハードディスクレコーダ1200の場合と同様に、画像符号化装置100および画像復号装置200を適用することができる。
<7.第7の実施の形態>
[カメラ]
 図21は、画像符号化装置100および画像復号装置200を用いるカメラの主な構成例を示すブロック図である。
 図21に示されるカメラ1300は、被写体を撮像し、被写体の画像をLCD1316に表示させたり、それを画像データとして、記録メディア1333に記録したりする。
 レンズブロック1311は、光(すなわち、被写体の映像)を、CCD/CMOS1312に入射させる。CCD/CMOS1312は、CCDまたはCMOSを用いたイメージセンサであり、受光した光の強度を電気信号に変換し、カメラ信号処理部1313に供給する。
 カメラ信号処理部1313は、CCD/CMOS1312から供給された電気信号を、Y,Cr,Cbの色差信号に変換し、画像信号処理部1314に供給する。画像信号処理部1314は、コントローラ1321の制御の下、カメラ信号処理部1313から供給された画像信号に対して所定の画像処理を施したり、その画像信号をエンコーダ1341で符号化したりする。画像信号処理部1314は、画像信号を符号化して生成した符号化データを、デコーダ1315に供給する。さらに、画像信号処理部1314は、オンスクリーンディスプレイ(OSD)1320において生成された表示用データを取得し、それをデコーダ1315に供給する。
 以上の処理において、カメラ信号処理部1313は、バス1317を介して接続されるDRAM(Dynamic Random Access Memory)1318を適宜利用し、必要に応じて画像データや、その画像データが符号化された符号化データ等をそのDRAM1318に保持させる。
 デコーダ1315は、画像信号処理部1314から供給された符号化データを復号し、得られた画像データ(復号画像データ)をLCD1316に供給する。また、デコーダ1315は、画像信号処理部1314から供給された表示用データをLCD1316に供給する。LCD1316は、デコーダ1315から供給された復号画像データの画像と表示用データの画像を適宜合成し、その合成画像を表示する。
 オンスクリーンディスプレイ1320は、コントローラ1321の制御の下、記号、文字、または図形からなるメニュー画面やアイコンなどの表示用データを、バス1317を介して画像信号処理部1314に出力する。
 コントローラ1321は、ユーザが操作部1322を用いて指令した内容を示す信号に基づいて、各種処理を実行するとともに、バス1317を介して、画像信号処理部1314、DRAM1318、外部インタフェース1319、オンスクリーンディスプレイ1320、およびメディアドライブ1323等を制御する。FLASH ROM1324には、コントローラ1321が各種処理を実行する上で必要なプログラムやデータ等が格納される。
 例えば、コントローラ1321は、画像信号処理部1314やデコーダ1315に代わって、DRAM1318に記憶されている画像データを符号化したり、DRAM1318に記憶されている符号化データを復号したりすることができる。このとき、コントローラ1321は、画像信号処理部1314やデコーダ1315の符号化・復号方式と同様の方式によって符号化・復号処理を行うようにしてもよいし、画像信号処理部1314やデコーダ1315が対応していない方式により符号化・復号処理を行うようにしてもよい。
 また、例えば、操作部1322から画像印刷の開始が指示された場合、コントローラ1321は、DRAM1318から画像データを読み出し、それを、バス1317を介して外部インタフェース1319に接続されるプリンタ1334に供給して印刷させる。
 さらに、例えば、操作部1322から画像記録が指示された場合、コントローラ1321は、DRAM1318から符号化データを読み出し、それを、バス1317を介してメディアドライブ1323に装着される記録メディア1333に供給して記憶させる。
 記録メディア1333は、例えば、磁気ディスク、光磁気ディスク、光ディスク、または半導体メモリ等の、読み書き可能な任意のリムーバブルメディアである。記録メディア1333は、もちろん、リムーバブルメディアとしての種類も任意であり、テープデバイスであってもよいし、ディスクであってもよいし、メモリカードであってもよい。もちろん、非接触ICカード等であっても良い。
 また、メディアドライブ1323と記録メディア1333を一体化し、例えば、内蔵型ハードディスクドライブやSSD(Solid State Drive)等のように、非可搬性の記憶媒体により構成されるようにしてもよい。
 外部インタフェース1319は、例えば、USB入出力端子などで構成され、画像の印刷を行う場合に、プリンタ1334と接続される。また、外部インタフェース1319には、必要に応じてドライブ1331が接続され、磁気ディスク、光ディスク、あるいは光磁気ディスクなどのリムーバブルメディア1332が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて、FLASH ROM1324にインストールされる。
 さらに、外部インタフェース1319は、LANやインターネット等の所定のネットワークに接続されるネットワークインタフェースを有する。コントローラ1321は、例えば、操作部1322からの指示に従って、DRAM1318から符号化データを読み出し、それを外部インタフェース1319から、ネットワークを介して接続される他の装置に供給させることができる。また、コントローラ1321は、ネットワークを介して他の装置から供給される符号化データや画像データを、外部インタフェース1319を介して取得し、それをDRAM1318に保持させたり、画像信号処理部1314に供給したりすることができる。
 以上のようなカメラ1300は、デコーダ1315として画像復号装置200を用いる。つまり、デコーダ1315は、画像復号装置200の場合と同様に、ALシンタックスやdefault_scan_flagに基づいて、画像符号化装置100において採用されたスキャン順に対応する逆スキャン順を特定することができる。したがって、デコーダ1315は、量子化された直交変換係数が、画像の特徴に応じて適応的に制御されたスキャン順によりスキャンされて符号化された符号化データを正しく復号することができ、符号化効率を向上させることができる。
 したがって、カメラ1300は、例えば、CCD/CMOS1312において生成される画像データや、DRAM1318または記録メディア1333から読み出すビデオデータの符号化データや、ネットワークを介して取得するビデオデータの符号化データの量子化された直交変換係数が、画像の特徴に応じて適応的に制御されたスキャン順によりスキャンされて符号化されている場合であっても、その符号化データを正しく復号することができ、符号化効率を向上させることができる。
 また、カメラ1300は、エンコーダ1341として画像符号化装置100を用いる。エンコーダ1341は、画像符号化装置100の場合と同様に、量子化された直交変換係数のスキャン順を、画像の特徴に応じて適応的に制御する。したがって、エンコーダ1341は、画像の特徴により適したスキャン順によりスキャンを行うことができ、ゼロランの値を増やし、符号化効率を向上させることができる。
 したがって、カメラ1300は、例えば、DRAM1318や記録メディア1333に記録する符号化データや、他の装置に提供する符号化データを生成する際に、量子化された直交変換係数のスキャン順を、画像の特徴に応じて適応的に制御することができ、画像の特徴により適したスキャン順によりスキャンを行うことができ、ゼロランの値を増やし、符号化効率を向上させることができる。
 なお、コントローラ1321が行う復号処理に画像復号装置200の復号方法を適用するようにしてもよい。同様に、コントローラ1321が行う符号化処理に画像符号化装置100の符号化方法を適用するようにしてもよい。
 また、カメラ1300が撮像する画像データは動画像であってもよいし、静止画像であってもよい。
 もちろん、画像符号化装置100および画像復号装置200は、上述した装置以外の装置やシステムにも適用可能である。
 本技術は、例えば、MPEG,H.26x等の様に、離散コサイン変換等の直交変換と動き補償によって圧縮された画像情報(ビットストリーム)を、衛星放送、ケーブルTV、インターネット、携帯電話などのネットワークメディアを介して受信する際に、若しくは光、磁気ディスク、フラッシュメモリのような記憶メディア上で処理する際に用いられる画像符号化装置や画像復号装置に適用することができる。
 なお、本技術は以下のような構成も取ることができる。
 (1) 符号化する画像が変換された係数データを2次元配列から1次元配列に変換する際のスキャン順を、前記画像の特徴を示す統計値に応じて制御するスキャン順制御部と、
 前記スキャン順制御部により制御される前記スキャン順で、2次元配列の前記係数データをスキャンし、前記1次元配列に並び替えるスキャン部と、
 前記スキャン部により前記1次元配列に並び替えられた前記係数データを符号化する符号化部と
 を備える画像処理装置。
 (2) 前記スキャン順制御部は、
  前記画像を変換して前記係数データを生成する変換処理の処理単位となる前記画像の部分領域内の画素位置毎に、前記係数データの非ゼロ係数の出現頻度を、所定のデータ単位毎に算出する算出部と、
  前記算出部により算出された前記部分領域内の画素位置毎の前記非ゼロ係数の出現頻度の順に、前記スキャン順を更新する更新部と
 を備え、
 前記スキャン部は、前記更新部により更新されたスキャン順で前記係数データをスキャンする
 前記(1)に記載の画像処理装置。
 (3) 前記スキャン順制御部は、前記スキャン順を、予め定められた所定のスキャン順である初期順、および、前記更新部により更新されたスキャン順である更新順のいずれか一方に決定する決定部をさらに備え、
 前記スキャン部は、前記初期順および前記更新順のうち、前記決定部により決定された方のスキャン順で前記係数データをスキャンする
 前記(2)に記載の画像処理装置。
 (4) 前記スキャン順制御部は、処理対象がIDRピクチャであるか否かを判定する判定部をさらに備え、
  前記決定部は、前記判定部により、前記処理対象が前記IDRピクチャであると判定された場合、前記スキャン順を前記初期順に決定し、前記処理対象が前記IDRピクチャでないと判定された場合、前記スキャン順を前記更新順に決定する
 前記(3)に記載の画像処理装置。
 (5) 前記スキャン順制御部は、シーンチェンジを検出する検出部をさらに備え、
  前記決定部は、前記検出部により、前記処理対象において前記シーンチェンジが検出された場合、前記スキャン順を前記初期順に決定し、前記処理対象において前記シーンチェンジが検出されなかった場合、前記スキャン順を前記更新順に決定する
 前記(3)または(4)に記載の画像処理装置。
 (6) 前記スキャン順制御部は、前記決定部により前記スキャン順が前記初期順に決定されたか、若しくは、前記更新順に選択されたかを示すフラグ情報を生成する生成部をさらに備え、
 前記符号化部は、前記生成部により生成された前記フラグ情報をさらに符号化する
 前記(3)乃至(5)のいずれかに記載の画像処理装置。
 (7)  前記更新部は、前記スキャン順を、過去に符号化された画像の前記部分領域内の画素位置毎の前記非ゼロ係数の出現頻度の順に応じた順に更新する
 前記(3)乃至(6)のいずれかに記載の画像処理装置。
 (8)  前記更新部は、単一のピクチャを複数のスライスに分割して処理を行う場合、直前に符号化されたスライスの前記部分領域内の画素位置毎の前記非ゼロ係数の出現頻度の順に応じて前記スキャン順を更新する
 前記(3)乃至(7)のいずれかに記載の画像処理装置。
 (9)  前記更新部は、単一のピクチャを複数のスライスに分割して処理を行う場合、直前に符号化されたピクチャの、処理対象のスライスと同位置のスライスの前記部分領域内の画素位置毎の前記非ゼロ係数の出現頻度の順に応じて前記スキャン順を更新する
 前記(3)乃至(7)のいずれかに記載の画像処理装置。
 (10)  前記更新部は、単一のピクチャを複数のスライスに分割し、各スライスの処理を並列に行う場合、直前に符号化されたピクチャの、処理対象のスライスと同位置のスライスの前記部分領域内の画素位置毎の前記非ゼロ係数の出現頻度の順に応じて前記スキャン順を更新する
 前記(3)乃至(7)のいずれかに記載の画像処理装置。
 (11)  前記更新部は、前記スキャン順を、符号化処理対象の画像の前記部分領域内の画素位置毎の前記非ゼロ係数の出現頻度の順に応じた順に更新する
 前記(3)乃至(7)のいずれかに記載の画像処理装置。
 (12) 前記スキャン制御部は、前記画像を変換して前記係数データを生成する変換処理の処理単位となる前記画像の部分領域の大きさごとに前記スキャン順を制御する
 前記(1)乃至(11)のいずれかに記載の画像処理装置。
 (13) 前記スキャン制御部は、処理対象の画像のタイプごとに前記スキャン順を制御する
 前記(1)乃至(11)のいずれかに記載の画像処理装置。
 (14) 画像処理装置の画像処理方法であって、
 スキャン順制御部が、符号化する画像が変換された係数データを2次元配列から1次元配列に変換する際のスキャン順を、前記画像の特徴を示す統計値に応じて制御し、
 スキャン部が、前記スキャン順で、2次元配列の前記係数データをスキャンし、前記1次元配列に並び替え、
 符号化部が、前記1次元配列に並び替えられた前記係数データを符号化する
 画像処理方法。
 (15) 符号化する画像が変換された係数データを2次元配列から1次元配列に変換する際のスキャン順が前記画像の特徴を示す統計値に応じて制御されて生成された、前記画像の符号化データを復号する復号部と、
 前記復号部により前記符号化データが復号されて得られた係数データの、前記1次元配列から前記2次元配列に変換する際の逆スキャン順を、前記画像の特徴を示す統計値に応じて制御する逆スキャン順制御部と、
 前記逆スキャン順制御部により制御される前記逆スキャン順で、1次元配列の前記係数データを逆スキャンし、前記2次元配列に並び替える逆スキャン部と
 を備える画像処理装置。
 (16) 前記逆スキャン順制御部は、
  前記画像を変換して前記係数データを生成する変換処理の処理単位となる前記画像の部分領域内の画素位置毎に、前記係数データの非ゼロ係数の出現頻度を、所定のデータ単位毎に算出する算出部と、
  前記算出部により算出された前記部分領域内の画素位置毎の前記非ゼロ係数の出現頻度の順に、前記逆スキャン順を更新する更新部と
 を備え、
 前記逆スキャン部は、前記更新部により更新された逆スキャン順で前記係数データを逆スキャンする
 前記(15)に記載の画像処理装置。
 (17) 前記逆スキャン順制御部は、前記逆スキャン順を、予め定められた所定の逆スキャン順である初期順、および、前記更新部により更新された逆スキャン順である更新順のいずれか一方に決定する決定部をさらに備え、
 前記逆スキャン部は、前記初期順および前記更新順のうち、前記決定部により決定された方の逆スキャン順で前記係数データを逆スキャンする
 前記(16)に記載の画像処理装置。
 (18) 前記逆スキャン順制御部は、処理対象がIDRピクチャであるか否かを判定するIDR判定部をさらに備え、
  前記決定部は、前記IDR判定部により、前記処理対象が前記IDRピクチャであると判定された場合、前記逆スキャン順を前記初期順に決定し、前記処理対象が前記IDRピクチャでないと判定された場合、前記逆スキャン順を前記更新順に決定する
 前記(17)に記載の画像処理装置。
 (19) 前記逆スキャン順制御部は、前記係数データのスキャン順が前記初期順であるか、若しくは、前記更新順であるかを示すフラグ情報の値を判定するフラグ判定部をさらに備え、
  前記決定部は、前記フラグ判定部により、前記係数データのスキャン順が前記初期順であると判定された場合、前記逆スキャン順を前記初期順に決定し、前記係数データのスキャン順が前記更新順であると判定された場合、前記逆スキャン順を前記更新順に決定する
 前記(17)または(18)に記載の画像処理装置。
 (20) 画像処理装置の画像処理方法であって、
 復号部が、符号化する画像が変換された係数データを2次元配列から1次元配列に変換する際のスキャン順が前記画像の特徴を示す統計値に応じて制御されて生成された、前記画像の符号化データを復号し、
 逆スキャン順制御部が、前記符号化データが復号されて得られた係数データの、前記1次元配列から前記2次元配列に変換する際の逆スキャン順を、前記画像の特徴を示す統計値に応じて制御し、
 逆スキャン部が、前記逆スキャン順で、1次元配列の前記係数データを逆スキャンし、前記2次元配列に並び替える
 画像処理方法。
 100 画像符号化装置, 106 可逆符号化部, 121 適応スキャン制御部, 131 マクロブロックシンタックス符号化部, 132 フラグ符号化部, 133 量子化直交変換係数符号化部, 141 非ゼロ係数カウンタ, 142 ソート部, 143 スキャン順バッファ, 144 IDR判定部, 145 シーンチェンジ検出部, 146 スキャン順決定部, 147 フラグ生成部, 200 画像復号装置, 202 可逆復号部, 221 適応逆スキャン制御部, 231 マクロブロックシンタックス復号部, 232 NALシンタックス復号部, 233 フラグ復号部, 234 量子化直交変換係数復号部, 241 非ゼロ係数カウンタ, 242 ソート部, 243 逆スキャン順バッファ, 244 IDR判定部, 245 フラグ判定部, 246 逆スキャン順決定部

Claims (20)

  1.  符号化する画像が変換された係数データを2次元配列から1次元配列に変換する際のスキャン順を、前記画像の特徴を示す統計値に応じて制御するスキャン順制御部と、
     前記スキャン順制御部により制御される前記スキャン順で、2次元配列の前記係数データをスキャンし、前記1次元配列に並び替えるスキャン部と、
     前記スキャン部により前記1次元配列に並び替えられた前記係数データを符号化する符号化部と
     を備える画像処理装置。
  2.  前記スキャン順制御部は、
      前記画像を変換して前記係数データを生成する変換処理の処理単位となる前記画像の部分領域内の画素位置毎に、前記係数データの非ゼロ係数の出現頻度を、所定のデータ単位毎に算出する算出部と、
      前記算出部により算出された前記部分領域内の画素位置毎の前記非ゼロ係数の出現頻度の順に、前記スキャン順を更新する更新部と
     を備え、
     前記スキャン部は、前記更新部により更新されたスキャン順で前記係数データをスキャンする
     請求項1に記載の画像処理装置。
  3.  前記スキャン順制御部は、前記スキャン順を、予め定められた所定のスキャン順である初期順、および、前記更新部により更新されたスキャン順である更新順のいずれか一方に決定する決定部をさらに備え、
     前記スキャン部は、前記初期順および前記更新順のうち、前記決定部により決定された方のスキャン順で前記係数データをスキャンする
     請求項2に記載の画像処理装置。
  4.  前記スキャン順制御部は、処理対象がIDRピクチャであるか否かを判定する判定部をさらに備え、
      前記決定部は、前記判定部により、前記処理対象が前記IDRピクチャであると判定された場合、前記スキャン順を前記初期順に決定し、前記処理対象が前記IDRピクチャでないと判定された場合、前記スキャン順を前記更新順に決定する
     請求項3に記載の画像処理装置。
  5.  前記スキャン順制御部は、シーンチェンジを検出する検出部をさらに備え、
      前記決定部は、前記検出部により、前記処理対象において前記シーンチェンジが検出された場合、前記スキャン順を前記初期順に決定し、前記処理対象において前記シーンチェンジが検出されなかった場合、前記スキャン順を前記更新順に決定する
     請求項3に記載の画像処理装置。
  6.  前記スキャン順制御部は、前記決定部により前記スキャン順が前記初期順に決定されたか、若しくは、前記更新順に選択されたかを示すフラグ情報を生成する生成部をさらに備え、
     前記符号化部は、前記生成部により生成された前記フラグ情報をさらに符号化する
     請求項3に記載の画像処理装置。
  7.   前記更新部は、前記スキャン順を、過去に符号化された画像の前記部分領域内の画素位置毎の前記非ゼロ係数の出現頻度の順に応じた順に更新する
     請求項3に記載の画像処理装置。
  8.   前記更新部は、単一のピクチャを複数のスライスに分割して処理を行う場合、直前に符号化されたスライスの前記部分領域内の画素位置毎の前記非ゼロ係数の出現頻度の順に応じて前記スキャン順を更新する
     請求項3に記載の画像処理装置。
  9.   前記更新部は、単一のピクチャを複数のスライスに分割して処理を行う場合、直前に符号化されたピクチャの、処理対象のスライスと同位置のスライスの前記部分領域内の画素位置毎の前記非ゼロ係数の出現頻度の順に応じて前記スキャン順を更新する
     請求項3に記載の画像処理装置。
  10.   前記更新部は、単一のピクチャを複数のスライスに分割し、各スライスの処理を並列に行う場合、直前に符号化されたピクチャの、処理対象のスライスと同位置のスライスの前記部分領域内の画素位置毎の前記非ゼロ係数の出現頻度の順に応じて前記スキャン順を更新する
     請求項3に記載の画像処理装置。
  11.   前記更新部は、前記スキャン順を、符号化処理対象の画像の前記部分領域内の画素位置毎の前記非ゼロ係数の出現頻度の順に応じた順に更新する
     請求項3に記載の画像処理装置。
  12.  前記スキャン制御部は、前記画像を変換して前記係数データを生成する変換処理の処理単位となる前記画像の部分領域の大きさごとに前記スキャン順を制御する
     請求項1に記載の画像処理装置。
  13.  前記スキャン制御部は、処理対象の画像のタイプごとに前記スキャン順を制御する
     請求項1に記載の画像処理装置。
  14.  画像処理装置の画像処理方法であって、
     スキャン順制御部が、符号化する画像が変換された係数データを2次元配列から1次元配列に変換する際のスキャン順を、前記画像の特徴を示す統計値に応じて制御し、
     スキャン部が、前記スキャン順で、2次元配列の前記係数データをスキャンし、前記1次元配列に並び替え、
     符号化部が、前記1次元配列に並び替えられた前記係数データを符号化する
     画像処理方法。
  15.  符号化する画像が変換された係数データを2次元配列から1次元配列に変換する際のスキャン順が前記画像の特徴を示す統計値に応じて制御されて生成された、前記画像の符号化データを復号する復号部と、
     前記復号部により前記符号化データが復号されて得られた係数データの、前記1次元配列から前記2次元配列に変換する際の逆スキャン順を、前記画像の特徴を示す統計値に応じて制御する逆スキャン順制御部と、
     前記逆スキャン順制御部により制御される前記逆スキャン順で、1次元配列の前記係数データを逆スキャンし、前記2次元配列に並び替える逆スキャン部と
     を備える画像処理装置。
  16.  前記逆スキャン順制御部は、
      前記画像を変換して前記係数データを生成する変換処理の処理単位となる前記画像の部分領域内の画素位置毎に、前記係数データの非ゼロ係数の出現頻度を、所定のデータ単位毎に算出する算出部と、
      前記算出部により算出された前記部分領域内の画素位置毎の前記非ゼロ係数の出現頻度の順に、前記逆スキャン順を更新する更新部と
     を備え、
     前記逆スキャン部は、前記更新部により更新された逆スキャン順で前記係数データを逆スキャンする
     請求項15に記載の画像処理装置。
  17.  前記逆スキャン順制御部は、前記逆スキャン順を、予め定められた所定の逆スキャン順である初期順、および、前記更新部により更新された逆スキャン順である更新順のいずれか一方に決定する決定部をさらに備え、
     前記逆スキャン部は、前記初期順および前記更新順のうち、前記決定部により決定された方の逆スキャン順で前記係数データを逆スキャンする
     請求項16に記載の画像処理装置。
  18.  前記逆スキャン順制御部は、処理対象がIDRピクチャであるか否かを判定するIDR判定部をさらに備え、
      前記決定部は、前記IDR判定部により、前記処理対象が前記IDRピクチャであると判定された場合、前記逆スキャン順を前記初期順に決定し、前記処理対象が前記IDRピクチャでないと判定された場合、前記逆スキャン順を前記更新順に決定する
     請求項17に記載の画像処理装置。
  19.  前記逆スキャン順制御部は、前記係数データのスキャン順が前記初期順であるか、若しくは、前記更新順であるかを示すフラグ情報の値を判定するフラグ判定部をさらに備え、
      前記決定部は、前記フラグ判定部により、前記係数データのスキャン順が前記初期順であると判定された場合、前記逆スキャン順を前記初期順に決定し、前記係数データのスキャン順が前記更新順であると判定された場合、前記逆スキャン順を前記更新順に決定する
     請求項17に記載の画像処理装置。
  20.  画像処理装置の画像処理方法であって、
     復号部が、符号化する画像が変換された係数データを2次元配列から1次元配列に変換する際のスキャン順が前記画像の特徴を示す統計値に応じて制御されて生成された、前記画像の符号化データを復号し、
     逆スキャン順制御部が、前記符号化データが復号されて得られた係数データの、前記1次元配列から前記2次元配列に変換する際の逆スキャン順を、前記画像の特徴を示す統計値に応じて制御し、
     逆スキャン部が、前記逆スキャン順で、1次元配列の前記係数データを逆スキャンし、前記2次元配列に並び替える
     画像処理方法。
PCT/JP2011/065210 2010-07-09 2011-07-01 画像処理装置および方法 Ceased WO2012005195A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201180033010XA CN102972025A (zh) 2010-07-09 2011-07-01 图像处理设备和方法
US13/808,033 US20130107940A1 (en) 2010-07-09 2011-07-01 Image processing device and method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2010-156707 2010-07-09
JP2010156707A JP2012019448A (ja) 2010-07-09 2010-07-09 画像処理装置および方法

Publications (1)

Publication Number Publication Date
WO2012005195A1 true WO2012005195A1 (ja) 2012-01-12

Family

ID=45441174

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/065210 Ceased WO2012005195A1 (ja) 2010-07-09 2011-07-01 画像処理装置および方法

Country Status (4)

Country Link
US (1) US20130107940A1 (ja)
JP (1) JP2012019448A (ja)
CN (1) CN102972025A (ja)
WO (1) WO2012005195A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2545529A1 (en) * 2010-03-10 2013-01-16 Thomson Licensing Methods and apparatus for constrained transforms for video coding and decoding having transform selection
JP5979406B2 (ja) * 2012-02-22 2016-08-24 ソニー株式会社 画像処理装置、画像処理方法、および画像処理システム
CN103581601A (zh) * 2013-10-24 2014-02-12 南京熊猫电子股份有限公司 一种uhd信号采样和显示的分屏扫描方法
CN103826136B (zh) * 2014-02-19 2017-10-17 华为软件技术有限公司 一种快速离散余弦反变换的方法和终端

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04247770A (ja) * 1991-02-04 1992-09-03 Fujitsu Ltd 画像データ圧縮方法および画像データ圧縮装置ならびに画像データ復元装置
JP2003250157A (ja) * 2002-01-07 2003-09-05 Samsung Electronics Co Ltd 静止映像及び動映像を符号化/復号化するための変換係数の最適走査方法
JP2006191628A (ja) * 2004-12-31 2006-07-20 Microsoft Corp 適応係数スキャン順序付け
WO2008157268A2 (en) * 2007-06-15 2008-12-24 Qualcomm Incorporated Adaptive coefficient scanning in video coding

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04247770A (ja) * 1991-02-04 1992-09-03 Fujitsu Ltd 画像データ圧縮方法および画像データ圧縮装置ならびに画像データ復元装置
JP2003250157A (ja) * 2002-01-07 2003-09-05 Samsung Electronics Co Ltd 静止映像及び動映像を符号化/復号化するための変換係数の最適走査方法
JP2006191628A (ja) * 2004-12-31 2006-07-20 Microsoft Corp 適応係数スキャン順序付け
WO2008157268A2 (en) * 2007-06-15 2008-12-24 Qualcomm Incorporated Adaptive coefficient scanning in video coding

Also Published As

Publication number Publication date
CN102972025A (zh) 2013-03-13
US20130107940A1 (en) 2013-05-02
JP2012019448A (ja) 2012-01-26

Similar Documents

Publication Publication Date Title
CN103716626B (zh) 图像处理设备和方法
KR101786130B1 (ko) 화상 처리 장치 및 방법
US8737751B2 (en) Image processing apparatus and method
US10419756B2 (en) Image processing device and method
JP5464435B2 (ja) 画像復号装置および方法
US20120287998A1 (en) Image processing apparatus and method
WO2011155378A1 (ja) 画像処理装置および方法
WO2011145601A1 (ja) 画像処理装置と画像処理方法
EP2521356A1 (en) Image processing device and method, and program
US20130077672A1 (en) Image processing apparatus and method
JP2011223337A (ja) 画像処理装置および方法
JP5556996B2 (ja) 画像処理装置および方法
WO2011152315A1 (ja) 画像処理装置および方法
WO2013108688A1 (ja) 画像処理装置および方法
WO2011096318A1 (ja) 画像処理装置および方法
WO2012005195A1 (ja) 画像処理装置および方法
WO2012005194A1 (ja) 画像処理装置および方法
JP2011244210A (ja) 画像処理装置および方法
WO2013002111A1 (ja) 画像処理装置および方法
JP2012129925A (ja) 画像処理装置および方法、並びに、プログラム

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201180033010.X

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11803529

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 13808033

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11803529

Country of ref document: EP

Kind code of ref document: A1