WO2013183268A1 - 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置および画像符号化復号装置 - Google Patents

画像符号化方法、画像復号方法、画像符号化装置、画像復号装置および画像符号化復号装置 Download PDF

Info

Publication number
WO2013183268A1
WO2013183268A1 PCT/JP2013/003452 JP2013003452W WO2013183268A1 WO 2013183268 A1 WO2013183268 A1 WO 2013183268A1 JP 2013003452 W JP2013003452 W JP 2013003452W WO 2013183268 A1 WO2013183268 A1 WO 2013183268A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
offset
processing
unit
decoding
Prior art date
Application number
PCT/JP2013/003452
Other languages
English (en)
French (fr)
Inventor
徹 松延
西 孝啓
陽司 柴原
寿郎 笹井
京子 谷川
敏康 杉尾
健吾 寺田
Original Assignee
パナソニック株式会社
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
Priority to KR1020137034152A priority Critical patent/KR101886472B1/ko
Application filed by パナソニック株式会社 filed Critical パナソニック株式会社
Priority to CN201380002016.XA priority patent/CN103636209B/zh
Priority to AU2013272989A priority patent/AU2013272989B2/en
Priority to RU2013157586A priority patent/RU2628315C2/ru
Priority to JP2013551817A priority patent/JP6132161B2/ja
Priority to PL13800830T priority patent/PL2860973T3/pl
Priority to ES13800830T priority patent/ES2781573T3/es
Priority to EP13800830.5A priority patent/EP2860973B1/en
Priority to MX2013014752A priority patent/MX2013014752A/es
Priority to CA2840063A priority patent/CA2840063C/en
Priority to BR112013033374-0A priority patent/BR112013033374B1/pt
Publication of WO2013183268A1 publication Critical patent/WO2013183268A1/ja
Priority to ZA2013/09740A priority patent/ZA201309740B/en

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/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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61FFILTERS IMPLANTABLE INTO BLOOD VESSELS; PROSTHESES; DEVICES PROVIDING PATENCY TO, OR PREVENTING COLLAPSING OF, TUBULAR STRUCTURES OF THE BODY, e.g. STENTS; ORTHOPAEDIC, NURSING OR CONTRACEPTIVE DEVICES; FOMENTATION; TREATMENT OR PROTECTION OF EYES OR EARS; BANDAGES, DRESSINGS OR ABSORBENT PADS; FIRST-AID KITS
    • A61F13/00Bandages or dressings; Absorbent pads
    • A61F13/05Bandages or dressings; Absorbent pads specially adapted for use with sub-pressure or over-pressure therapy, wound drainage or wound irrigation, e.g. for use with negative-pressure wound therapy [NPWT]
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61MDEVICES FOR INTRODUCING MEDIA INTO, OR ONTO, THE BODY; DEVICES FOR TRANSDUCING BODY MEDIA OR FOR TAKING MEDIA FROM THE BODY; DEVICES FOR PRODUCING OR ENDING SLEEP OR STUPOR
    • A61M1/00Suction or pumping devices for medical purposes; Devices for carrying-off, for treatment of, or for carrying-over, body-liquids; Drainage systems
    • A61M1/71Suction drainage systems
    • A61M1/73Suction drainage systems comprising sensors or indicators for physical values
    • A61M1/732Visual indicating means for vacuum pressure
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61MDEVICES FOR INTRODUCING MEDIA INTO, OR ONTO, THE BODY; DEVICES FOR TRANSDUCING BODY MEDIA OR FOR TAKING MEDIA FROM THE BODY; DEVICES FOR PRODUCING OR ENDING SLEEP OR STUPOR
    • A61M1/00Suction or pumping devices for medical purposes; Devices for carrying-off, for treatment of, or for carrying-over, body-liquids; Drainage systems
    • A61M1/90Negative pressure wound therapy devices, i.e. devices for applying suction to a wound to promote healing, e.g. including a vacuum dressing
    • A61M1/96Suction control thereof
    • A61M1/962Suction control thereof having pumping means on the suction site, e.g. miniature pump on dressing or dressing capable of exerting suction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • 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/117Filters, e.g. for pre-processing or post-processing
    • 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
    • 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
    • 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/1887Methods 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 variable length codeword
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61FFILTERS IMPLANTABLE INTO BLOOD VESSELS; PROSTHESES; DEVICES PROVIDING PATENCY TO, OR PREVENTING COLLAPSING OF, TUBULAR STRUCTURES OF THE BODY, e.g. STENTS; ORTHOPAEDIC, NURSING OR CONTRACEPTIVE DEVICES; FOMENTATION; TREATMENT OR PROTECTION OF EYES OR EARS; BANDAGES, DRESSINGS OR ABSORBENT PADS; FIRST-AID KITS
    • A61F13/00Bandages or dressings; Absorbent pads
    • A61F2013/00089Wound bandages
    • A61F2013/0017Wound bandages possibility of applying fluid
    • A61F2013/00174Wound bandages possibility of applying fluid possibility of applying pressure
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61FFILTERS IMPLANTABLE INTO BLOOD VESSELS; PROSTHESES; DEVICES PROVIDING PATENCY TO, OR PREVENTING COLLAPSING OF, TUBULAR STRUCTURES OF THE BODY, e.g. STENTS; ORTHOPAEDIC, NURSING OR CONTRACEPTIVE DEVICES; FOMENTATION; TREATMENT OR PROTECTION OF EYES OR EARS; BANDAGES, DRESSINGS OR ABSORBENT PADS; FIRST-AID KITS
    • A61F13/00Bandages or dressings; Absorbent pads
    • A61F2013/00361Plasters
    • A61F2013/00544Plasters form or structure
    • A61F2013/0057Plasters form or structure with openable cover
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61FFILTERS IMPLANTABLE INTO BLOOD VESSELS; PROSTHESES; DEVICES PROVIDING PATENCY TO, OR PREVENTING COLLAPSING OF, TUBULAR STRUCTURES OF THE BODY, e.g. STENTS; ORTHOPAEDIC, NURSING OR CONTRACEPTIVE DEVICES; FOMENTATION; TREATMENT OR PROTECTION OF EYES OR EARS; BANDAGES, DRESSINGS OR ABSORBENT PADS; FIRST-AID KITS
    • A61F13/00Bandages or dressings; Absorbent pads
    • A61F2013/00361Plasters
    • A61F2013/00902Plasters containing means
    • A61F2013/0091Plasters containing means with disinfecting or anaesthetics means, e.g. anti-mycrobic
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61FFILTERS IMPLANTABLE INTO BLOOD VESSELS; PROSTHESES; DEVICES PROVIDING PATENCY TO, OR PREVENTING COLLAPSING OF, TUBULAR STRUCTURES OF THE BODY, e.g. STENTS; ORTHOPAEDIC, NURSING OR CONTRACEPTIVE DEVICES; FOMENTATION; TREATMENT OR PROTECTION OF EYES OR EARS; BANDAGES, DRESSINGS OR ABSORBENT PADS; FIRST-AID KITS
    • A61F13/00Bandages or dressings; Absorbent pads
    • A61F2013/00361Plasters
    • A61F2013/00902Plasters containing means
    • A61F2013/0094Plasters containing means for sensing physical parameters
    • A61F2013/00944Plasters containing means for sensing physical parameters humidity; moisture
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61FFILTERS IMPLANTABLE INTO BLOOD VESSELS; PROSTHESES; DEVICES PROVIDING PATENCY TO, OR PREVENTING COLLAPSING OF, TUBULAR STRUCTURES OF THE BODY, e.g. STENTS; ORTHOPAEDIC, NURSING OR CONTRACEPTIVE DEVICES; FOMENTATION; TREATMENT OR PROTECTION OF EYES OR EARS; BANDAGES, DRESSINGS OR ABSORBENT PADS; FIRST-AID KITS
    • A61F13/00Bandages or dressings; Absorbent pads
    • A61F2013/00361Plasters
    • A61F2013/00902Plasters containing means
    • A61F2013/0094Plasters containing means for sensing physical parameters
    • A61F2013/00957Plasters containing means for sensing physical parameters pressure
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61MDEVICES FOR INTRODUCING MEDIA INTO, OR ONTO, THE BODY; DEVICES FOR TRANSDUCING BODY MEDIA OR FOR TAKING MEDIA FROM THE BODY; DEVICES FOR PRODUCING OR ENDING SLEEP OR STUPOR
    • A61M2205/00General characteristics of the apparatus
    • A61M2205/15Detection of leaks
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61MDEVICES FOR INTRODUCING MEDIA INTO, OR ONTO, THE BODY; DEVICES FOR TRANSDUCING BODY MEDIA OR FOR TAKING MEDIA FROM THE BODY; DEVICES FOR PRODUCING OR ENDING SLEEP OR STUPOR
    • A61M2205/00General characteristics of the apparatus
    • A61M2205/35Communication
    • A61M2205/3576Communication with non implanted data transmission devices, e.g. using external transmitter or receiver
    • A61M2205/3592Communication with non implanted data transmission devices, e.g. using external transmitter or receiver using telemetric means, e.g. radio or optical transmission
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61MDEVICES FOR INTRODUCING MEDIA INTO, OR ONTO, THE BODY; DEVICES FOR TRANSDUCING BODY MEDIA OR FOR TAKING MEDIA FROM THE BODY; DEVICES FOR PRODUCING OR ENDING SLEEP OR STUPOR
    • A61M2205/00General characteristics of the apparatus
    • A61M2205/82Internal energy supply devices
    • A61M2205/8206Internal energy supply devices battery-operated
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding

Definitions

  • the present invention relates to an image coding method using the arithmetic coding.
  • Non-Patent Document 1 Regarding the image coding method using arithmetic coding, there are techniques described in Non-Patent Document 1 and Non-Patent Document 2.
  • the present invention provides an image encoding method capable of performing encoding with high processing efficiency.
  • An image encoding method performs (i) SAO (sample adaptive offset) processing, which is offset processing of pixel values, by image arithmetic coding using context arithmetic encoding, which is arithmetic encoding using a variable probability. And (ii) first information indicating whether or not to use SAO processing information for a region other than the first region in the SAO processing for the first region.
  • a bypass arithmetic encoding step of encoding other information which is information of SAO processing for one area and is different from the first information and the second information.
  • the image encoding method according to the present invention can perform encoding with high processing efficiency.
  • FIG. 1 is a block diagram illustrating an example of a configuration of an image encoding device according to Embodiment 1.
  • FIG. 2 is a block diagram showing an example of the configuration of the image decoding apparatus according to Embodiment 1.
  • FIG. 3 is a schematic diagram illustrating an example of an edge offset according to the first embodiment.
  • FIG. 4 is a schematic diagram illustrating edge offset categories according to the first embodiment.
  • FIG. 5 is a schematic diagram illustrating types of edge offsets according to the first embodiment.
  • FIG. 6 is a schematic diagram illustrating an example of a band offset according to the first embodiment.
  • FIG. 7 is a schematic diagram illustrating a category of band offsets according to the first embodiment.
  • FIG. 8 is a schematic diagram showing band offset encoding target information according to the first embodiment.
  • FIG. 9A is a schematic diagram illustrating an example of a region dividing procedure according to the first embodiment.
  • FIG. 9B is a schematic diagram illustrating an example of a region division result according to Embodiment 1.
  • FIG. 10 is a block diagram illustrating an example of a configuration of a loop filtering unit in the image coding apparatus according to Embodiment 1.
  • FIG. 11 is a block diagram illustrating an example of a configuration of a loop filtering unit in the image decoding apparatus according to Embodiment 1.
  • FIG. 12 is a flowchart showing an example of the operation of the loop filtering unit in the image coding apparatus according to Embodiment 1.
  • FIG. 13 is a flowchart illustrating an example of the operation of the loop filtering unit in the image decoding apparatus according to Embodiment 1.
  • FIG. 14 is a schematic diagram illustrating an example of bit allocation to index numbers indicating the pixel classification method according to the first embodiment.
  • FIG. 15 is a schematic diagram illustrating an example of an encoded stream according to Embodiment 1.
  • FIG. 16A is a schematic diagram illustrating an example of syntax (aps_sao_param) in the APS according to the first embodiment.
  • FIG. 16B is a schematic diagram illustrating an example of syntax (sao_unit_vlc) in the APS according to Embodiment 1.
  • FIG. 16C is a schematic diagram illustrating an example of syntax (sao_offset_vlc) in the APS according to Embodiment 1.
  • FIG. 16A is a schematic diagram illustrating an example of syntax (aps_sao_param) in the APS according to the first embodiment.
  • FIG. 16B is a schematic diagram illustrating an example of syntax (sao_unit_vlc) in the APS according to Embodiment 1.
  • FIG. 17A is a schematic diagram illustrating an example of syntax (slice_data) in slice data according to Embodiment 1.
  • FIG. 17B is a schematic diagram illustrating an example of syntax (sao_unit_cabac) in slice data according to Embodiment 1.
  • FIG. 17C is a schematic diagram illustrating an example of syntax (sao_offset_cabac) in slice data according to Embodiment 1.
  • FIG. 18 is a schematic diagram illustrating an example of a region sharing the offset information according to the first embodiment.
  • FIG. 19 is a flowchart illustrating an example of encoding of an index number indicating the pixel classification method according to the first embodiment.
  • FIG. 19 is a flowchart illustrating an example of encoding of an index number indicating the pixel classification method according to the first embodiment.
  • FIG. 20 is a flowchart illustrating an example of decoding of an index number indicating the pixel classification method according to the first embodiment.
  • FIG. 21 is a block diagram illustrating an example of a configuration of a loop filtering unit in the image coding device according to Embodiment 2.
  • FIG. 22 is a block diagram illustrating an example of a configuration of a loop filtering unit in the image decoding device according to the second embodiment.
  • FIG. 23 is a flowchart showing an example of the operation of the loop filtering unit in the image coding apparatus according to Embodiment 2.
  • FIG. 24 is a flowchart illustrating an example of the operation of the loop filtering unit in the image decoding device according to the second embodiment.
  • FIG. 21 is a block diagram illustrating an example of a configuration of a loop filtering unit in the image coding device according to Embodiment 2.
  • FIG. 22 is a block diagram illustrating an example of a configuration of a loop filtering unit in the image decoding device according to the second embodiment
  • FIG. 25 is a schematic diagram illustrating an example of bit allocation to an index number indicating the pixel classification method according to the second embodiment.
  • FIG. 26 is a schematic diagram illustrating another example of bit allocation to the index number indicating the pixel classification method according to the second embodiment.
  • FIG. 27A is a schematic diagram illustrating an example of syntax (sao_unit_vlc) in the APS according to the second embodiment.
  • FIG. 27B is a schematic diagram illustrating an example of syntax (sao_offset_vlc) in the APS according to the second embodiment.
  • FIG. 27C is a schematic diagram illustrating an example of assignment of context indexes to offset information in the APS according to the second embodiment.
  • FIG. 27D is a flowchart illustrating an example of encoding of offset information in the APS according to Embodiment 2.
  • FIG. 27E is a flowchart showing an example of decoding of offset information in the APS according to Embodiment 2.
  • FIG. 28A is a schematic diagram illustrating an example of syntax (sao_unit_cabac) in slice data according to Embodiment 2.
  • FIG. 28B is a schematic diagram illustrating an example of syntax (sao_offset_cabac) in slice data according to Embodiment 2.
  • FIG. 28C is a schematic diagram illustrating an example of assignment of context indexes to offset information in slice data according to Embodiment 2.
  • FIG. 28A is a schematic diagram illustrating an example of syntax (sao_unit_cabac) in slice data according to Embodiment 2.
  • FIG. 28B is a schematic diagram illustrating an example of syntax (sao_offset_cabac) in slice data according to Embodiment 2.
  • FIG. 28D is a flowchart showing an example of encoding of offset information in slice data according to Embodiment 2.
  • FIG. 28E is a flowchart showing an example of decoding of offset information in slice data according to Embodiment 2.
  • FIG. 29 is a flowchart illustrating an example of encoding of an index number indicating the pixel classification method according to the second embodiment.
  • FIG. 30 is a flowchart illustrating an example of decoding of an index number indicating the pixel classification method according to the second embodiment.
  • FIG. 31A is a schematic diagram illustrating an example of assignment of context indexes to offset information according to Embodiment 3.
  • FIG. 31B is a diagram illustrating objective performance of the image coding device and the image decoding device according to Embodiment 3.
  • FIG. 32 is a block diagram illustrating an example of a configuration of the offset information encoding unit according to Embodiment 3.
  • FIG. 33 is a block diagram illustrating an example of a configuration of the offset information decoding unit according to Embodiment 3.
  • FIG. 34 is a flowchart illustrating an example of the operation of the offset information encoding unit according to Embodiment 3.
  • FIG. 35 is a flowchart illustrating an example of operation of the offset information decoding unit according to Embodiment 3.
  • FIG. 36 is a flowchart illustrating an example of encoding characteristics according to the third embodiment.
  • FIG. 37 is a flowchart illustrating an example of the decoding characteristics according to the third embodiment.
  • FIG. 38 is an overall configuration diagram of a content supply system that implements a content distribution service.
  • Figure 39 is an overall configuration diagram of a digital broadcasting system.
  • Figure 40 is a block diagram illustrating a configuration example of a television.
  • FIG. 41 is a block diagram illustrating a configuration example of an information reproducing / recording unit that reads and writes information from and on a recording medium that is an optical disk.
  • FIG. 42 is a diagram illustrating a structure example of a recording medium that is an optical disk.
  • Figure 43A is a diagram showing an example of a cellular phone.
  • Figure 43B is a block diagram showing a configuration example of a mobile phone.
  • Figure 44 is a diagram showing the structure of multiplexed data.
  • FIG. 45 is a diagram schematically showing how each stream is multiplexed in the multiplexed data.
  • FIG. 45 is a diagram schematically showing how each stream is multiplexed in the multiplexed data.
  • FIG. 46 is a diagram showing in more detail how the video stream is stored in the PES packet sequence.
  • FIG. 47 is a diagram showing the structure of TS packets and source packets in multiplexed data.
  • Figure 48 is a diagram showing the data structure of the PMT.
  • FIG. 49 shows the internal structure of multiplexed data information.
  • Figure 50 is a diagram showing an internal structure of stream attribute information.
  • Figure 51 is a diagram illustrating the step of identifying video data.
  • FIG. 52 is a block diagram illustrating a configuration example of an integrated circuit that realizes the moving picture coding method and the moving picture decoding method according to each embodiment.
  • Figure 53 is a diagram showing a configuration for switching between driving frequencies.
  • FIG. 54 is a diagram showing steps for identifying video data and switching between driving frequencies.
  • FIG. 54 is a diagram showing steps for identifying video data and switching between driving frequencies.
  • FIG. 55 is a diagram showing an example of a look-up table in which video data standards are associated with drive frequencies.
  • FIG. 56A is a diagram illustrating an example of a configuration for sharing a module of a signal processing unit.
  • FIG. 56B is a diagram illustrating another example of a configuration for sharing a module of a signal processing unit.
  • H An image encoding apparatus according to an image encoding system represented by the ITU-T standard called 26x and the ISO / IEC standard called MPEG-x divides a picture into predetermined units, Encoding is performed in that unit.
  • H.M An image encoding apparatus according to the H.264 / MPEG-4 AVC format (see Non-Patent Document 1) performs processing in units called macroblocks of 16 horizontal pixels and 16 vertical pixels.
  • the image encoding device When performing motion compensation, the image encoding device divides a macroblock into sub-blocks (minimum 4 horizontal pixels and 4 vertical pixels). Then, the image encoding device performs motion compensation using a different motion vector for each sub-block, frequency-converts the difference signal between the original signal and the prediction signal, collects the information of the difference signal in the low-frequency region, and performs quantization The information can be compressed.
  • sub-blocks minimum 4 horizontal pixels and 4 vertical pixels.
  • a lattice-like distortion called block distortion is seen at a block boundary in a method for coding a picture in units of blocks using orthogonal transform such as DCT that collects information of difference signals in a low frequency region. ing.
  • the image encoding device can reduce block distortion by deblocking filtering.
  • an image encoding method performs (i) SAO (sample adaptive offset) processing, which is offset processing of pixel values, by performing context arithmetic encoding, which is arithmetic encoding using variable probability. And (ii) whether or not to use SAO processing information for a region other than the first region for the SAO processing for the first region.
  • SAO sample adaptive offset
  • a contextual arithmetic encoding step that continuously encodes the second information to be indicated, and after the first information and the second information are encoded, bypass arithmetic encoding that is arithmetic encoding using a fixed probability, A bypass arithmetic encoding step of encoding other information which is information of SAO processing for the first region and is different from the first information and the second information.
  • context arithmetic coding is continuously performed on the information of the SAO processing for improving the image quality. That is, frequent switching between context arithmetic coding and bypass arithmetic coding is suppressed, and the same kind of processing is continuously performed. Therefore, the processing efficiency is improved.
  • the other information including the fourth information indicating the absolute value of the offset value may be encoded.
  • the SAO process for the first region is a band offset process
  • fifth information indicating the sign of the offset value and a sixth information indicating the application range of the offset value are provided.
  • the other information including information may be encoded.
  • information indicating whether or not to use SAO processing information for the right region adjacent to the right of the first region in the SAO processing for the first region, and the first The second information including at least one of information indicating whether or not to use the SAO processing information for the upper region adjacent to the first region may be encoded in the SAO processing for the region.
  • the image decoding method performs (i) SAO (sample adaptive offset) processing, which is offset processing of pixel values, on the first image by performing context arithmetic decoding, which is arithmetic decoding using a variable probability. And (ii) second information indicating whether or not to use SAO processing information for a region other than the first region for the SAO processing for the first region.
  • a context arithmetic decoding step for continuously decoding information, and after the first information and the second information are decoded, the SAO processing for the first region is performed by bypass arithmetic decoding, which is arithmetic decoding using a fixed probability.
  • An image decoding method including a bypass arithmetic decoding step of decoding other information that is information and is different from the first information and the second information may be used.
  • context arithmetic decoding is continuously performed on the information of the SAO processing for improving the image quality. That is, frequent switching between context arithmetic decoding and bypass arithmetic decoding is suppressed, and the same kind of processing is continuously performed. Therefore, the processing efficiency is improved.
  • the other information including the fourth information indicating the absolute value of the offset value may be decoded.
  • the SAO process for the first region is a band offset process
  • fifth information indicating the sign of the offset value and sixth information indicating the application range of the offset value may be decoded.
  • the second information including at least one of the information indicating whether to use the SAO processing information for the upper region adjacent to the first region may be decoded in the SAO processing for the first region.
  • these comprehensive or specific aspects may be realized by a non-transitory recording medium such as a system, an apparatus, an integrated circuit, a computer program, or a computer-readable CD-ROM.
  • a non-transitory recording medium such as a system, an apparatus, an integrated circuit, a computer program, or a computer-readable CD-ROM.
  • the present invention may be realized by any combination of an integrated circuit, a computer program, or a recording medium.
  • coding is the following sometimes used in the meaning of encoding.
  • FIG. 1 shows the configuration of the image coding apparatus according to the present embodiment.
  • the image encoding device 100 shown in FIG. 1 includes a control unit 110 and an encoding unit 120.
  • the encoding unit 120 includes a subtraction unit 121, a frequency conversion unit 122, a quantization unit 123, an entropy encoding unit 124, an inverse quantization unit 125, an inverse frequency conversion unit 126, an addition unit 127, a loop filtering unit 128, and a storage unit 129.
  • the encoding unit 120 encodes the image 141 for each block to generate an encoded stream 142.
  • the subtracting unit 121 of the encoding unit 120 subtracts a pixel block composed of a plurality of pixel values of the predicted image from a pixel block composed of a plurality of pixel values of the image 141.
  • the frequency converter 122 converts the pixel block obtained by the subtraction into a coefficient block composed of a plurality of frequency coefficients.
  • the quantization unit 123 quantizes the coefficient block obtained by the frequency conversion unit 122.
  • the motion detection unit 132 detects a motion vector using the pixel block of the image 141.
  • the motion compensation unit 131 performs inter-plane prediction (inter prediction) using the reference image stored in the storage unit 129 and the motion vector detected by the motion detection unit 132.
  • the in-plane prediction unit 130 performs in-plane prediction (intra prediction) using the pixel block obtained by the addition unit 127 according to the in-plane prediction mode.
  • the switch 133 inputs the pixel block of the predicted image obtained by intra prediction or inter prediction to the subtraction unit 121 and the addition unit 127.
  • the entropy coding unit 124 performs entropy coding on the block partition information, the prediction type, the motion vector, the prediction mode (in-plane prediction mode), the quantization parameter, the quantized coefficient block, and the like. To generate an encoded stream 142.
  • the inverse quantization unit 125 inversely quantizes the quantized coefficient block. Then, the inverse frequency converter 126 converts the inversely quantized coefficient block into a pixel block. Then, the adding unit 127 adds the pixel block of the predicted image to the pixel block obtained by the inverse frequency converting unit 126.
  • the loop filtering unit 128 suppresses distortion from the pixel block obtained by the adding unit 127 and stores the pixel block in the storage unit 129 as a reference image.
  • control unit 110 controls the encoding unit 120.
  • the image encoding device 100 encodes the image 141 by the above operation. Then, the image coding apparatus 100 reduces the data amount of the coded stream 142 by various processes such as frequency conversion, quantization, intra prediction, inter prediction, entropy coding, and loop filtering.
  • FIG. 2 shows a configuration of an image decoding apparatus 200 corresponding to the image encoding apparatus 100 shown in FIG.
  • the image decoding apparatus 200 shown in FIG. 2 includes a control unit 210 and a decoding unit 220.
  • the decoding unit 220 includes an entropy decoding unit 224, an inverse quantization unit 225, an inverse frequency conversion unit 226, an addition unit 227, a loop filtering unit 228, a storage unit 229, an in-plane prediction unit 230, a motion compensation unit 231 and a switch 233.
  • the decoding unit 220 decodes the image 241 included in the encoded stream 242 for each block. At that time, the entropy decoding unit 224 of the decoding unit 220 performs entropy decoding on the encoded stream 242, thereby performing block partition information, prediction type, motion vector, in-plane prediction mode, quantization parameter, and Obtain quantized coefficient blocks and the like.
  • control unit 210 controls the operation of the decoding unit 220.
  • the inverse quantization unit 225 of the decoding unit 220 performs inverse quantization on the quantized coefficient block.
  • the inverse frequency conversion unit 226 converts the inversely quantized coefficient block into a pixel block.
  • the addition unit 227 adds the pixel block of the predicted image to the pixel block obtained by the inverse frequency conversion unit 226.
  • the loop filtering unit 228 suppresses distortion from the pixel block obtained by the adding unit 227. Thereafter, the loop filtering unit 228 stores the reference image formed of the pixel blocks in the storage unit 229. Further, the loop filtering unit 228 outputs an image 241 composed of pixel blocks.
  • the in-plane prediction unit 230 performs in-plane prediction using the pixel block obtained by the addition unit 227 according to the in-plane prediction mode.
  • the motion compensation unit 231 performs inter-surface prediction using the motion vector and the reference image of the storage unit 229.
  • the switch 233 inputs the pixel block of the predicted image obtained by the intra prediction or the inter prediction to the adding unit 227.
  • the image decoding device 200 decodes the image 241 included in the encoded stream 242 for each block by the operation corresponding to the image encoding device 100 as described above.
  • the loop filtering process is a process for reducing the coding deterioration of the reconstructed signal.
  • a deblocking filter process is performed to reduce block-like distortion that occurs at a macroblock boundary.
  • offset processing for reducing coding degradation is performed.
  • the distortion with respect to the original signal is reduced by adding an offset value to the pixels included in the processing target block of the reconstructed signal.
  • the pixels in the processing target block are classified into a plurality of categories, and a common offset value is used for each category.
  • the pixel classification method includes an edge offset pixel classification method performed by comparing the classification target pixel and its adjacent pixels, and a band offset pixel classification method performed based on the pixel value of the classification target pixel.
  • the edge offset is an offset performed according to the edge
  • the band offset is an offset performed according to the pixel value.
  • edge offset pixel classification method may be expressed as the pixel classification method being an edge offset or the pixel classification method using an edge offset.
  • pixel classification method of the band offset may be expressed as the pixel classification method being a band offset or using the band offset as the pixel classification method.
  • FIG. 3 is a schematic diagram showing an example of a pixel classification method by edge offset.
  • the classification is performed based on the magnitude relationship between the classification target pixel c and the adjacent pixels c1 and c2 on the left and right.
  • FIG. 4 is a schematic diagram showing an example of classifying processing target blocks into five categories by edge offset. For example, when the pixel value of c is larger than the pixel value of c1 and equal to the pixel value of c2, the target pixel is classified into category 3, and the offset value Offset [3] assigned to category 3 is added.
  • the pixels to be compared with the classification target pixel are the left and right adjacent pixels (EO (0)), the upper and lower adjacent pixels (EO (1)), and the oblique adjacent pixels (EO (2 ) Or EO (3)), or a combination thereof (EO (4) or EO (5)).
  • FIG. 6 is a schematic diagram showing an example of a pixel classification method based on band offset.
  • the gradations that can be taken by the pixel value to be processed are equally divided into M.
  • M is 32.
  • the divided gradation division becomes a category. Processing target pixel is classified into categories in its pixel value.
  • FIG. 7 is a schematic diagram showing an example in which processing target blocks are classified into 16 classes by band offset. For example, when the pixel value of c is greater than or equal to R9 and less than R10, the processing target pixel is classified into category 9, and the offset value Offset [9] assigned to category 9 is added.
  • the image encoding apparatus 100 can encode only offset values for categories with a high offset effect. At that time, the image encoding apparatus 100 also encodes the category index number indicating the category of the encoded offset value.
  • SAO Sample Adaptive Offset
  • FIG. 10 is a block diagram showing an example of the configuration of the loop filtering unit 128 in the image coding apparatus 100 according to the present embodiment.
  • the loop filtering unit 128 includes a signal acquisition unit 151, an offset information calculation unit 152, an offset processing unit 153, an offset information encoding unit 154, and a signal output unit 155.
  • the signal acquisition unit 151 acquires the pixel signal of the reconfigured processing target area.
  • the offset information calculation unit 152 calculates offset information such as a division pattern, a pixel classification method, and an offset value used for offset processing.
  • the offset processing unit 153 classifies the pixels in the processing target area into categories using the offset information, and performs offset processing for each category.
  • the offset information encoding unit 154 outputs the offset information to the entropy encoding unit 124 shown in FIG. Note that the offset information encoding unit 154 may encode the offset information. Further, the offset information encoding unit 154 may be included in the entropy encoding unit 124.
  • the signal output unit 155 outputs the pixel signal of the processing target area on which the offset process has been performed.
  • FIG. 11 is a block diagram showing an example of the configuration of the loop filtering unit 228 in the image decoding apparatus 200 according to the present embodiment.
  • the loop filtering unit 228 includes a signal acquisition unit 251, an offset information decoding unit 252, an offset processing unit 253, and a signal output unit 254.
  • the signal acquisition unit 251 acquires the pixel signal of the reconfigured processing target area.
  • the offset information decoding unit 252 acquires offset information such as a division pattern, a pixel classification method, and an offset value used for offset processing. Note that the offset information decoding unit 252 may decode the offset information. Further, the offset information decoding unit 252 may be included in the entropy decoding unit 224.
  • the offset processing unit 253 classifies the pixels in the processing target area into categories using the offset information, and performs offset processing for each category.
  • the signal output unit 254 outputs the pixel signal of the processing target area where the offset process has been performed.
  • FIG. 12 is a flowchart mainly showing the operation of the loop filtering unit 128 shown in FIG. 10 in the image encoding device 100 shown in FIG.
  • the signal acquisition unit 151 acquires the pixel signal of the reconfigured processing target area from the addition unit 127 (S151).
  • the offset information calculation unit 152 calculates offset information such as a division pattern, a pixel classification method, and an offset value used for offset processing (S152).
  • the offset processing unit 153 divides the region based on the offset information, classifies the pixels in the divided region into categories, and adds an offset value for each category (S153).
  • the offset information encoding unit 154 outputs offset information such as a division pattern, a pixel classification method, a category index number, and an offset value to the entropy encoding unit 124.
  • the entropy encoding unit 124 encodes the offset information and inserts the encoded offset information into the encoded stream (S154). Note that the offset information encoding unit 154 may encode the offset information and insert the encoded offset information into the encoded stream.
  • the signal output unit 155 outputs the pixel signal of the offset processing target area to the storage unit 129 (S155).
  • FIG. 13 is a flowchart mainly showing the operation of the loop filtering unit 228 shown in FIG. 11 in the image decoding apparatus 200 shown in FIG.
  • the signal acquisition unit 251 acquires the pixel signal of the reconfigured processing target area from the addition unit 227 (S251).
  • the entropy decoding unit 224 decodes offset information such as a division pattern, a pixel classification method, a category index number, and an offset value from the encoded stream, and the offset information decoding unit 252 acquires the decoded offset information ( S252). Note that the offset information decoding unit 252 may decode the offset information from the encoded stream.
  • the offset processing unit 253 divides the region based on the offset information, classifies the pixels of the divided region into categories, and adds an offset value for each category (S253).
  • the signal output unit 254 outputs the offset pixel signal of the processing target region to the storage unit 229 (S254).
  • offset information encoding unit 154 and the offset information decoding unit 252 will be described in more detail.
  • FIG. 14 shows an example of assignment of index numbers indicating the above pixel classification methods.
  • the index number is binarized so that a small value has a small bit length and a large value has a large bit length, and the maximum bit length is specified as 5 bits.
  • the allocation method is not limited to this. For example, a bit may be allocated so that the end is 0 at all index numbers without specifying the maximum bit length.
  • index number 1 information indicating that the offset processing is not performed for the processing target block is assigned to index number 0.
  • the image encoding device 100 generates an encoded stream by encoding a moving image.
  • the encoded stream includes header portions such as SPS (Sequence Parameter Set) and PPS (Picture Parameter Set), and picture data that is encoded image data.
  • SPS Sequence Parameter Set
  • PPS Picture Parameter Set
  • the picture data further includes a slice header (SH) and slice data.
  • the slice data includes encoded image data included in the slice.
  • the slice data further includes a block header (BH) and block data.
  • the block data includes encoded image data included in the block.
  • the encoded stream includes an APS (Adaptation Parameter Set) that stores parameters used in one or more slices.
  • the index number aps_idx is assigned to the APS, and the image coding apparatus 100 can insert the index number aps_idx for calling the APS to be used into the slice header.
  • the offset information is encoded by the offset information encoding unit 154 (or the entropy encoding unit 124) and inserted into any of SPS, PPS, SH, slice data, BH, block data, and APS. Also, the offset information is acquired from one of SPS, PPS, SH, slice data, BH, block data, and APS in the offset information decoding unit 252 (or entropy decoding unit 224) and decoded.
  • FIGS. 16A, 16B, and 16C Examples of inserting offset information into the APS are shown in FIGS. 16A, 16B, and 16C.
  • the image encoding device 100 can collectively insert offset information of all blocks in a slice into the APS, and the image decoding device 200 can acquire offset information from the APS in a lump.
  • FIGS. 17A, 17B, and 17C examples of inserting offset information into slice data are shown in FIGS. 17A, 17B, and 17C.
  • the image encoding device 100 can insert offset information in units of blocks in slice data
  • the image decoding device 200 can acquire offset information in units of blocks in slice data.
  • the image encoding device 100 (image decoding device 200) can share offset information among a plurality of processing target areas as shown in FIG.
  • the solid line in FIG. 18 is the boundary of the processing target area section of the offset process, and the dotted line is the boundary of the area section that uses common offset information.
  • the image coding apparatus 100 suppresses an increase in the bit amount due to the offset processing by inserting information indicating that the offset value is shared instead of the offset information indicating the offset value into the encoded stream. can do.
  • the image encoding apparatus 100 may encode a flag indicating that all blocks in the slice share the offset information, such as sao_one_luma_unit_flag, sao_one_cr_unit_flag, and sao_one_cb_unit_flag in FIG. 16A. Further, the image encoding apparatus 100 may encode a flag indicating that the offset information for one line is copied from the line one level higher, like sao_repeat_row_flag in FIG. 16A.
  • the image encoding device 100 may encode a parameter indicating the number of processing target areas sharing the offset information, such as saoRun and sao_run_diff in FIG. 16B. Further, as shown in FIGS. 16B and 17B, the image encoding apparatus 100 may encode sao_merge_left_flag or sao_merge_up_flag indicating that offset information is copied from the left or upper area.
  • FIG. 19 is a flowchart illustrating an operation in which the offset information encoding unit 154 encodes an index number indicating a pixel classification method in the offset information.
  • the offset information encoding unit 154 determines whether or not an offset process has been performed (S1541).
  • the offset information calculation unit 152 calculates offset information such as a division pattern, a pixel classification method, a category index number, and an offset value.
  • the offset information calculation unit 152 determines that the offset processing is not performed when the bit amount required for the offset information is larger than the correction amount of the encoding deterioration. In this case, the offset processing unit 153 does not perform offset processing.
  • the offset information encoding unit 154 acquires information regarding whether or not the offset processing has been performed from the offset information calculating unit 152 or the offset processing unit 153. When the offset process has not been performed (No in S1541), the offset information encoding unit 154 encodes the index number indicating the pixel classification method as 0 (S1542).
  • the offset information encoding unit 154 determines whether or not the pixel classification method is edge offset EO (0) (S1543).
  • the offset information encoding unit 154 encodes the index number indicating the pixel classification method as 1 (S1544).
  • the offset information encoding unit 154 determines whether the pixel classification method is the edge offset EO (1) (S1545). When the pixel classification method is edge offset EO (1) (Yes in S1545), the offset information encoding unit 154 encodes the index number indicating the pixel classification method as 2 (S1546).
  • the offset information encoding unit 154 determines whether the pixel classification method is edge offset EO (2) (S1547). When the pixel classification method is edge offset EO (2) (Yes in S1547), the offset information encoding unit 154 encodes the index number indicating the pixel classification method as 3 (S1548).
  • the offset information encoding unit 154 determines whether the pixel classification method is edge offset EO (3) (S1549). When the pixel classification method is edge offset EO (3) (Yes in S1549), the offset information encoding unit 154 encodes the index number indicating the pixel classification method as 4 (S1550).
  • the offset information encoding unit 154 encodes the index number indicating the pixel classification method as 5 (S1551).
  • FIG. 20 is a flowchart illustrating an operation in which the offset information decoding unit 252 decodes an index number indicating a pixel classification method in the offset information, and an operation in which the offset processing unit 253 performs an offset process.
  • the offset processing unit 253 determines whether or not the index number decoded by the offset information decoding unit 252 is 0 (S2521). If the index number is 0 (Yes in S2521), the offset processing unit 253 does not perform offset processing (S2522).
  • the offset processing unit 253 determines whether or not the index number decoded by the offset information decoding unit 252 is 1 (S2523). When the index number is 1 (Yes in S2523), the offset processing unit 253 performs edge offset EO (0) (S2524).
  • the offset processing unit 253 determines whether the index number decoded by the offset information decoding unit 252 is 2 (S2525). When the index number is 2 (Yes in S2525), the offset processing unit 253 performs edge offset EO (1) (S2526).
  • the offset processing unit 253 determines whether or not the index number decoded by the offset information decoding unit 252 is 3 (S2527). When the index number is 3 (Yes in S2527), the offset processing unit 253 performs edge offset EO (2) (S2528).
  • the offset processing unit 253 determines whether the index number decoded by the offset information decoding unit 252 is 4 (S2529). When the index number is 4 (Yes in S2529), the offset processing unit 253 performs edge offset EO (3) (S2530).
  • the offset processing unit 253 performs band offset BO (0) (S2531).
  • the image encoding device 100 and the image decoding device 200 add an offset value for compensating for the difference between the original signal and the reconstructed image signal to the reconstructed image signal. As a result, a reconstructed signal close to the original signal can be generated.
  • offset information can be shared by a plurality of areas.
  • the sharing target area is limited to a nearby area. For example, if the sharing target area is limited to only the areas adjacent to the left and upper, the processing delay is reduced. Further, if the sharing target area is limited to only the area adjacent to the left, the amount of memory for storing the offset information of the processed area is suppressed.
  • the band offset encoding start category sao_band_position is encoded as a parameter in the band offset. Therefore, the bit amount is larger than the edge offset. Therefore, it is more advantageous to use the edge offset from the viewpoint of increasing the bit amount.
  • the image coding apparatus reduces the bit amount required when using the band offset in order to improve the disadvantage of the band offset with respect to the edge offset.
  • the band offset encoding start category sao_band_position is an example of information indicating the application range of the offset value.
  • FIG. 21 is a block diagram showing a configuration of the loop filtering unit of the image coding apparatus according to the present embodiment.
  • Other configurations of the image encoding device according to the present embodiment are the same as those of the image encoding device 100 shown in FIG.
  • FIG. 22 is a block diagram showing a configuration of a loop filtering unit of the image decoding apparatus according to the present embodiment.
  • Other configurations of the image decoding apparatus according to the present embodiment are the same as those of the image decoding apparatus 200 shown in FIG.
  • FIG. 23 is a flowchart showing the operation of the loop filtering unit 300 (loop filtering unit of the image encoding device) shown in FIG.
  • FIG. 24 is a flowchart showing the operation of the loop filtering unit 400 (loop filtering unit of the image decoding apparatus) shown in FIG.
  • the loop filtering unit 300 includes a signal acquisition unit 301, an offset information calculation unit 302, an offset processing unit 303, a signal output unit 304, an offset information encoding unit 305, and a control unit 306.
  • the description of the overlapping parts with the first embodiment is omitted, and the differences, that is, the control unit 306 in FIG. 21, the offset information encoding unit 305 in FIG. 21, and step S304 in FIG. 23 will be described.
  • control unit 306 controls the offset information encoding unit 305 so that the bit amount of the offset information of the band offset becomes small.
  • the offset information encoding unit 305 performs encoding so that the numerical value of the index number indicating that the pixel classification method is band offset is small.
  • step S304 the offset information encoding unit 305 allocates an index number to the pixel classification method and encodes the offset information. At this time, the offset information encoding unit 305 makes the index number indicating the band offset BO (0) smaller than the four edge offsets EO (0), EO (1), EO (2), and EO (3). Is assigned an index number. Then, the offset information encoding unit 305 inserts the encoded offset information into the encoded stream.
  • the loop filtering unit 400 includes a signal acquisition unit 401, an offset information decoding unit 402, an offset processing unit 403, a signal output unit 404, and a control unit 405. Description of the overlapping parts with the first embodiment will be omitted, and differences will be described, that is, the control unit 405 in FIG. 22, the offset information decoding unit 402 in FIG. 22, and step S402 in FIG.
  • control unit 405 controls the offset information decoding unit 402 so that the offset information of the band offset is decoded with a small bit amount.
  • the offset information decoding unit 402 decodes an index number having a small numerical value as an index number indicating that the pixel classification method is a band offset.
  • the offset information decoding unit 402 assigns an index number to the pixel classification method and decodes the offset information. At this time, the offset information decoding unit 402 makes the index number indicating the band offset BO (0) smaller than the four edge offsets EO (0), EO (1), EO (2), and EO (3). Assign an index number.
  • edge offset EO (0), EO (1), EO (2) and EO (3), and band offset BO (0) are employed for the pixel classification method in the offset processing.
  • the difference between the minimum bit amount and the maximum bit amount corresponding to the index number indicating the pixel classification method is 3 bits except for the index number 0 when no offset processing is performed.
  • the maximum bit amount is assigned to the band offset as shown in FIG.
  • the number of categories of the band offset is 32
  • a difference of 8 bits at the maximum including sao_band_position and 5 bits at the minimum occurs between the band offset and the edge offset.
  • bits smaller than the edge offset are assigned to the index number indicating the band offset as shown in FIG.
  • the offset processing ON / OFF flag may be independent of the index number sao_type_idx indicating the pixel classification method as sao_on_flag.
  • the band offset is assigned to index number 0.
  • the index number is binarized so that a small value has a small bit length and a large value has a large bit length, and the maximum bit length is specified as 4 bits.
  • the allocation method is not limited to this. For example, a bit may be allocated so that the end is 0 at all index numbers without specifying the maximum bit length. The following description is based on the assumption of bit allocation in FIG.
  • FIGS. 27A and 27B Examples of inserting offset information into APS are shown in FIGS. 27A and 27B.
  • An offset processing ON / OFF flag sao_on_flag independent of the index indicating the pixel classification method is newly provided in sao_unit_vlc in FIG. 27A.
  • the minimum bit is assigned to the band offset.
  • FIG. 27C is a diagram illustrating an example of the context of offset information in the APS.
  • FIG. 27D is a flowchart illustrating an example of encoding offset information in the APS.
  • FIG. 27E is a flowchart illustrating an example of decoding of offset information in the APS.
  • FIGS. 28A and 28B examples of inserting offset information into slice data are shown in FIGS. 28A and 28B.
  • An offset process ON / OFF flag sao_on_flag is newly provided in sao_unit_cabac in FIG. 28A.
  • the minimum bit is assigned to the band offset.
  • FIG. 28C is a schematic diagram illustrating an example of the context of offset information in slice data.
  • FIG. 28D is a flowchart illustrating an example of encoding offset information in slice data.
  • FIG. 28E is a flowchart illustrating an example of decoding of offset information in slice data.
  • FIG. 29 is a flowchart showing an operation in which the offset information encoding unit 305 encodes an index number indicating a pixel classification method in the offset information.
  • the offset information encoding unit 305 determines whether or not an offset process has been performed (S3051).
  • the offset information calculation unit 302 calculates offset information such as a division pattern, a pixel classification method, a category index number, and an offset value.
  • the offset information calculation unit 302 determines that the offset process is not performed when the bit amount required for the offset information becomes larger than the correction amount of the encoding deterioration. In this case, the offset processing unit 303 does not perform offset processing.
  • the offset information encoding unit 305 acquires information on whether or not the offset processing has been performed from the offset information calculation unit 302 or the offset processing unit 303.
  • the offset information encoding unit 305 encodes the offset process ON / OFF flag as 0 (S3052).
  • the offset information encoding unit 305 encodes the offset process ON / OFF flag as 1 (S3053). Then, the offset information encoding unit 305 determines whether or not the pixel classification method is band offset BO (0) (S3054).
  • the offset information encoding unit 305 encodes the index number indicating the pixel classification method as 0 (S3055).
  • the offset information encoding unit 305 determines whether or not the pixel classification method is the edge offset EO (0) (S3056).
  • the offset information encoding unit 305 encodes the index number indicating the pixel classification method as 1 (S3057).
  • the offset information encoding unit 305 determines whether or not the pixel classification method is the edge offset EO (1) (S3058).
  • the offset information encoding unit 305 encodes the index number indicating the pixel classification method as 2 (S3059).
  • the offset information encoding unit 305 determines whether or not the pixel classification method is edge offset EO (2) (S3060).
  • the offset information encoding unit 305 encodes the index number indicating the pixel classification method as 3 (S3061).
  • the offset information encoding unit 305 encodes the index number indicating the pixel classification method as 4 (S3062).
  • FIG. 30 is a flowchart showing an operation in which the offset information decoding unit 402 decodes an index number indicating a pixel classification method in the offset information, and an operation in which the offset processing unit 403 performs an offset process.
  • the offset processing unit 403 determines whether or not the offset processing ON / OFF flag decoded by the offset information decoding unit 402 is 0 (S4021). When the offset processing ON / OFF flag is 0 (Yes in S4021), the offset processing unit 403 does not perform the offset processing (S4022).
  • the offset processing ON / OFF flag is not 0 (No in S4021)
  • the offset information decoding unit 402 decodes the index number (S4023). Then, the offset processing unit 403 determines whether or not the index number decoded by the offset information decoding unit 402 is 0 (S4024).
  • the offset processing unit 403 performs a band offset BO (0) (S4025).
  • the offset processing unit 403 determines whether or not the index number decoded by the offset information decoding unit 402 is 1 (S4026).
  • the offset processing unit 403 performs edge offset EO (0) (S4027). If the index number is not 1 (No in S4026), the offset processing unit 403 determines whether the index number decoded by the offset information decoding unit 402 is 2 (S4028).
  • the offset processing unit 403 performs edge offset EO (1) (S4029).
  • the offset processing unit 403 determines whether or not the index number decoded by the offset information decoding unit 402 is 3 (S4030).
  • the offset processing unit 403 performs edge offset EO (2) (S4031). If the index number is not 3 (No in S4030), the offset processing unit 403 performs edge offset EO (3) (S4032).
  • the image encoding device and the image decoding device reduce the difference in the bit amount required for encoding the offset information of the band offset and the edge offset. Accordingly, the image encoding device and the image decoding device can perform an appropriate offset process for each processing target area. Therefore, encoding efficiency and subjective image quality are improved.
  • the image encoding device and the image decoding device may assign a small bit amount to the index number of the edge offset when performing the offset process on the luminance signal.
  • the image encoding device and the image decoding device may assign a small bit amount to the band offset index number when performing the offset process on the color difference signal. This makes it easier to use a pixel classification method suitable for the characteristics of the signal being processed. Therefore, encoding efficiency and subjective image quality are further improved.
  • the image encoding device and the image decoding device may refer to the frequency conversion coefficient and allocate a small bit amount to the index number of the edge offset in the processing target region with a small low frequency component. Then, the image encoding device and the image decoding device may allocate a small bit amount to the band offset index number in the processing target region having a large low frequency component. This makes it easier to use a pixel classification method suitable for the characteristics of the signal being processed. Therefore, encoding efficiency and subjective image quality are further improved.
  • a threshold value may be used for the determination of the number of the low frequency components, or the threshold value may be encoded.
  • arithmetic coding will be described as a method for encoding and decoding offset information in the offset information encoding unit 305 and the offset information decoding unit 402.
  • an image coding apparatus first converts (binarizes) a signal to be coded from a multilevel signal to a binary signal (bin, 0, or 1 signal), and arithmetically codes the binary signal. To generate a code string.
  • Arithmetic coding includes context arithmetic coding (context adaptive arithmetic coding) that performs arithmetic coding using an adaptive symbol occurrence probability.
  • the image coding apparatus selects a context for each signal to be coded, and specifies a symbol occurrence probability corresponding to the context. More specifically, in context arithmetic coding, the image coding apparatus first loads a context, and performs arithmetic coding of the target signal based on the symbol occurrence probability for the context. Then, the image coding apparatus updates the symbol occurrence probability corresponding to the context according to the value of the encoded target signal.
  • a common context may be used for encoding the offset processing ON / OFF flag sao_on_flag, or the context is determined by each signal as shown in FIG. 27C or FIG. 28C. It may be switched.
  • FIG. 28D is a flowchart illustrating an example in which three contexts are used when the offset information encoding unit 305 encodes and inserts the offset processing ON / OFF flag sao_on_flag into slice data.
  • the offset information encoding unit 305 determines whether or not the processing target signal is a luminance signal (S3041).
  • the offset information encoding unit 305 uses cIdx shown in FIG. 28A for determination of the luminance signal.
  • cIdx 0, the processing target signal is a luminance signal.
  • the offset information encoding unit 305 selects and loads context 1 (S3042).
  • the offset information encoding unit 305 determines whether or not the processing target signal is the color difference signal Cb (S3043).
  • the offset information encoding unit 305 uses cIdx for the determination of the color difference signal Cb, similarly to the determination of the luminance signal (S3041).
  • cIdx 1, the processing target signal is the color difference signal Cb.
  • the offset information encoding unit 305 selects and loads the context 2 (S3044).
  • the offset information encoding unit 305 selects and loads the context 3 (S3045).
  • the offset information encoding unit 305 encodes the offset processing ON / OFF flag sao_on_flag using the selected and loaded context (S3046).
  • FIG. 27D shows an example in which the offset process ON / OFF flag sao_on_flag is encoded and inserted into the APS, but the description is omitted because it is the same as FIG. 28D described above.
  • FIG. 28E is a flowchart illustrating an example in which three contexts are used when the offset information decoding unit 402 decodes the offset processing ON / OFF flag sao_on_flag inserted into the slice data.
  • the offset information decoding unit 402 determines whether or not the processing target signal is a luminance signal (S4021).
  • the offset information decoding unit 402 uses cIdx shown in FIG. 28A for determination of the luminance signal.
  • cIdx 0, the processing target signal is a luminance signal.
  • the offset information decoding unit 402 selects and loads context 1 (S4022).
  • the offset information decoding unit 402 determines whether or not the processing target signal is the color difference signal Cb (S4023).
  • the offset information decoding unit 402 uses cIdx to determine the color difference signal Cb, as in the determination of the luminance signal (S4021).
  • cIdx 1, the processing target signal is the color difference signal Cb.
  • the offset information decoding unit 402 selects and loads the context 2 (S4024).
  • the offset information decoding unit 402 selects and loads the context 3 (S4025).
  • the offset information decoding unit 402 decodes the offset processing ON / OFF flag sao_on_flag using the selected and loaded context (S4026).
  • FIG. 27E shows an example in which the offset processing ON / OFF flag sao_on_flag inserted in the APS is decoded, but the description is omitted because it is the same as FIG. 28E described above.
  • the image encoding device and the image decoding device can assign symbol generation probabilities according to the characteristics of each signal by using different contexts for the luminance signal, the color difference signal Cb, and the color difference signal Cr. Therefore, the image encoding device and the image decoding device can suppress the code amount of the offset processing ON / OFF flag sao_on_flag.
  • the image encoding device and the image decoding device may share the context only for the color difference signals Cb and Cr so that the number of contexts used for encoding and decoding is two (luminance signal and color difference signal).
  • the image encoding apparatus encodes information indicating whether or not to perform offset processing for each processing target region as an offset processing ON / OFF flag sao_on_flag independently from the pixel classification method sao_type_idx. Turn into. If the offset processing is not performed, the image encoding device does not encode sao_merge_left_flag or sao_merge_up_flag indicating whether or not to copy offset information from the left or upper region.
  • the image coding apparatus can further improve the throughput by unifying or simplifying arithmetic coding for each offset information.
  • Arithmetic coding includes bypass arithmetic coding in addition to context arithmetic coding described in the second embodiment.
  • Context arithmetic coding uses adaptive symbol occurrence probabilities.
  • the bypass arithmetic coding performs arithmetic coding with a symbol occurrence probability of 50%. As a result, the image encoding apparatus does not need to load and update contexts in bypass arithmetic encoding, so that the processing speed can be increased.
  • FIG. 31A is an example of a combination of types of arithmetic coding used for each syntax element of offset information.
  • the syntax for encoding and decoding offset information is the same as the syntax of the second embodiment shown in FIGS. 28A and 28B.
  • the bit assignment to the offset processing ON / OFF flag sao_on_flag and the pixel classification method sao_type_idx is the same as the assignment in the second embodiment shown in FIG.
  • syntax and bit allocation are not limited to this.
  • the offset value ⁇ code sao_offset_sign and the band offset encoding start category sao_band_position are sequentially encoded (decoded) in order to suppress the number of conditional branches due to the “if” sentence.
  • the order of encoding (decoding) is not limited to this.
  • the maximum bit amount may be allocated to the band offset.
  • the bias of the symbol generation probability of the offset processing ON / OFF flag sao_on_flag, the left offset information copy flag sao_merge_left_flag, and the upper offset information copy flag sao_merge_up_flag is large. Therefore, context arithmetic coding is used.
  • the bias in symbol generation probability of the pixel classification method sao_type_idx, the offset absolute value sao_offset, the offset value ⁇ code sao_offset_sign, and the band offset encoding start category sao_band_position is small. Therefore, bypass arithmetic coding is used.
  • the image coding apparatus uses different contexts for the luminance signal, the color difference signal Cb, and the color difference signal Cr for the offset processing ON / OFF flag sao_on_flag and the left offset information copy flag sao_merge_left_flag. . Thereby, the image coding apparatus improves the coding efficiency.
  • the image coding apparatus may share a context for each of the luminance signal, the color difference signal Cb, and the color difference signal Cr, similarly to the upper offset information copy flag sao_merge_up_flag. .
  • the number of contexts and the memory size can be reduced.
  • FIG. 31B is a table showing the objective performance of the image encoding device and the image decoding device according to the present embodiment.
  • FIG. 31B is an index based on Non-Patent Document 2 and shows that there is little deterioration in objective performance. The objective performance will be described later.
  • the operations of the offset information encoding unit 305 and the offset information decoding unit 402 are different from those of the image encoding device and the image decoding device described in the second embodiment. Others are the same as in the second embodiment. Hereinafter, the difference will be described.
  • FIG. 32 shows the configuration of an offset information encoding unit 307 that encodes offset information in the image encoding apparatus according to the present embodiment.
  • the offset information encoding unit 307 includes an arithmetic encoding control unit 3071, a context arithmetic encoding unit 3072, and a bypass arithmetic encoding unit 3073.
  • the arithmetic coding control unit 3071 switches between using context arithmetic coding and bypass arithmetic coding in accordance with the offset information.
  • the arithmetic coding control unit 3071 may be included in the control unit 110 of the image coding device 100 illustrated in FIG.
  • the context arithmetic encoding unit 3072 loads a context and performs encoding according to the offset information.
  • the bypass arithmetic encoding unit 3073 performs encoding using 50% as the symbol occurrence probability.
  • FIG. 33 shows the configuration of offset information decoding section 406 that performs decoding of offset information in the image decoding apparatus according to the present embodiment.
  • the offset information decoding unit 406 includes an arithmetic decoding control unit 4061, a context arithmetic decoding unit 4062, and a bypass arithmetic decoding unit 4063.
  • Arithmetic decoding control unit 4061 switches between context arithmetic decoding (context adaptive arithmetic decoding) and bypass arithmetic decoding depending on the offset information.
  • the arithmetic decoding control unit 4061 may be included in the control unit 210 of the image decoding device 200 shown in FIG.
  • the context arithmetic decoding unit 4062 loads the context according to the offset information and performs decoding.
  • the bypass arithmetic decoding unit 4063 performs decoding using 50% as the symbol occurrence probability.
  • FIG. 34 is a flowchart showing an example in which the offset information encoding unit 307 encodes offset information by arithmetic encoding.
  • the arithmetic encoding control unit 3071 sets context arithmetic encoding as an encoding method (S3070).
  • the context arithmetic coding unit 3072 loads the context for the offset processing ON / OFF flag sao_on_flag, and encodes the offset processing ON / OFF flag sao_on_flag using the context (S3071).
  • the arithmetic coding control unit 3071 determines whether or not the offset processing ON / OFF flag sao_on_flag is 1 (S3072).
  • sao_on_flag being 0 indicates that no offset processing of the processing target area is performed, and 1 indicates performing offset processing of the processing target area.
  • the arithmetic coding control unit 3071 determines whether or not the processing target region is the left end of the slice or tile (S3073). The copy of the offset information is only from the same slice and the same tile area. Therefore, the above determination is performed before encoding the left offset information copy flag sao_merge_left_flag.
  • the context arithmetic coding unit 3072 loads the context for the left offset information copy flag sao_merge_left_flag. Then, the context arithmetic encoding unit 3072 encodes the left offset information copy flag sao_merge_left_flag (S3074).
  • the arithmetic coding control unit 3071 determines whether or not sao_merge_left_flag is 0 (S3075).
  • sao_merge_left_flag being 0 indicates that offset information is not copied from the left area, and 1 indicates that offset information is copied from the left area.
  • the offset information encoding unit 307 may secure a memory for sao_merge_left_flag and set an initial value 0 at the time of starting the processing.
  • the arithmetic coding control unit 3071 determines whether or not the processing target region is the upper end of the slice or tile (S3076). Similar to the determination at the left end (S3073), since the offset information is copied only from the same slice and the same tile area, the above determination is performed before the upper offset information copy flag sao_merge_up_flag is encoded.
  • the context arithmetic coding unit 3072 loads the context for the upper offset information copy flag sao_merge_up_flag. Then, the context arithmetic encoding unit 3072 encodes the upper offset information copy flag sao_merge_up_flag (S3077).
  • the arithmetic encoding control unit 3071 determines whether sao_merge_up_flag is 0 (S3078).
  • sao_merge_up_flag being 0 indicates that offset information is not copied from the upper area, and 1 indicates that offset information is copied from the upper area.
  • the offset information encoding unit 307 may secure a memory for sao_merge_up_flag and set an initial value 0 at the time of starting processing.
  • the arithmetic coding control unit 3071 switches the coding method to bypass arithmetic coding (S3079). Thus, all subsequent encoding steps are performed using bypass arithmetic encoding.
  • the bypass arithmetic encoding unit 3073 encodes the pixel classification method sao_type_idx and the offset absolute value sao_offset (S3080).
  • the number of the plurality of offset absolute values sao_offset is 4 in any pixel classification method.
  • the bypass arithmetic encoding unit 3073 may encode a different number of offset absolute values for each pixel classification method.
  • the arithmetic coding control unit 3071 determines whether or not the pixel classification method is a band offset (S3081).
  • the arithmetic coding control unit 3071 uses the pixel classification method sao_type_idx for the determination.
  • 0 is assigned to the band offset as the value of sao_type_idx. Therefore, the arithmetic coding control unit 3071 determines that the pixel classification method is a band offset when sao_type_idx is 0, and determines that the pixel classification method is not a band offset when sao_type_idx is other than 0.
  • the bypass arithmetic encoding unit 3073 encodes the offset value ⁇ code sao_offset_sign and the band offset encoding start category sao_band_position (S3082).
  • the bypass arithmetic encoding unit 3073 encodes the offset value ⁇ code sao_offset_sign only in the case of the band offset. However, even in the case of an edge offset, the bypass arithmetic encoding unit 3073 may encode the offset value ⁇ code sao_offset_sign. In this case, the offset value ⁇ code sao_offset_sign is encoded in step S3080.
  • step S3080 the absolute offset value sao_offset and the offset value ⁇ sign sao_offset_sign may be integrated and encoded as an offset value.
  • FIG. 35 is a flowchart showing an example in which the offset information decoding unit 406 decodes offset information by arithmetic decoding.
  • the arithmetic decoding control unit 4061 sets context arithmetic decoding as a decoding method (S4060).
  • the context arithmetic decoding unit 4062 loads a context for the offset processing ON / OFF flag sao_on_flag, and decodes the offset processing ON / OFF flag sao_on_flag using the context (S4061).
  • the arithmetic decoding control unit 4061 determines whether or not the offset processing ON / OFF flag sao_on_flag is 1 (S4062).
  • sao_on_flag being 0 indicates that no offset processing of the processing target area is performed, and 1 indicates performing offset processing of the processing target area.
  • the arithmetic decoding control unit 4061 determines whether the processing target area is the left end of the slice or tile (S4063). The copy of the offset information is only from the same slice and the same tile area. Therefore, the above determination is made before decoding the left offset information copy flag sao_merge_left_flag.
  • the context arithmetic decoding unit 4062 loads the context for the left offset information copy flag sao_merge_left_flag. Then, the context arithmetic decoding unit 4062 decodes the left offset information copy flag sao_merge_left_flag (S4064).
  • the arithmetic decoding control unit 4061 determines whether sao_merge_left_flag is 0 (S4065).
  • sao_merge_left_flag being 0 indicates that offset information is not copied from the left area, and 1 indicates that offset information is copied from the left area.
  • the offset information decoding unit 406 may secure a memory for sao_merge_left_flag and set an initial value 0 at the time of starting the processing.
  • the arithmetic decoding control unit 4061 determines whether the processing target region is the upper end of the slice or tile (S4066). Similar to the determination at the left end (S4063), since the offset information is copied only from the same slice and the same tile area, the above determination is performed before decoding the upper offset information copy flag sao_merge_up_flag.
  • the context arithmetic decoding unit 4062 loads the context for the upper offset information copy flag sao_merge_up_flag. Then, the context arithmetic decoding unit 4062 decodes the upper offset information copy flag sao_merge_up_flag (S4067).
  • the arithmetic decoding control unit 4061 determines whether sao_merge_up_flag is 0 (S4068).
  • sao_merge_up_flag being 0 indicates that offset information is not copied from the upper area, and 1 indicates that offset information is copied from the upper area.
  • the offset information decoding unit 406 may secure a memory for sao_merge_up_flag and set an initial value 0 at the time when the process is started.
  • the arithmetic decoding control unit 4061 switches the decoding method to bypass arithmetic decoding (S4069). Thus, all subsequent decoding steps are performed using bypass arithmetic decoding.
  • the bypass arithmetic decoding unit 4063 decodes the pixel classification method sao_type_idx and the offset absolute value sao_offset (S4070).
  • the number of the plurality of offset absolute values sao_offset is 4 in any pixel classification method.
  • the bypass arithmetic decoding unit 4063 may decode a different number of offset absolute values for each pixel classification method.
  • the arithmetic decoding control unit 4061 determines whether or not the pixel classification method is a band offset (S4071).
  • the arithmetic decoding control unit 4061 uses the pixel classification method sao_type_idx for the determination.
  • 0 is assigned to the band offset as the value of sao_type_idx. Therefore, the arithmetic decoding control unit 4061 determines that the pixel classification method is a band offset when sao_type_idx is 0, and determines that the pixel classification method is not a band offset when sao_type_idx is other than 0.
  • the bypass arithmetic decoding unit 4063 decodes the offset value ⁇ code sao_offset_sign and the band offset encoding start category sao_band_position (S4072).
  • the bypass arithmetic decoding unit 4063 decodes the offset value ⁇ code sao_offset_sign only in the case of the band offset. However, even in the case of an edge offset, the bypass arithmetic decoding unit 4063 may decode the offset value ⁇ code sao_offset_sign. In this case, the offset value ⁇ code sao_offset_sign is decoded in step S4070.
  • step S4070 the offset absolute value sao_offset and the offset value ⁇ sign sao_offset_sign may be integrated and decoded as an offset value.
  • bypass arithmetic coding is used to encode and decode all parameters after the first three parameters of the offset processing ON / OFF flag sao_on_flag, the left offset information copy flag sao_merge_left_flag, and the upper offset information copy flag sao_merge_up_flag.
  • bypass arithmetic decoding is used.
  • FIG. 36 is a flowchart showing an example of the characteristics of the above encoding.
  • the context arithmetic encoding unit 3072 continuously encodes the first information and the second information by context arithmetic encoding (S511).
  • Context arithmetic coding is arithmetic coding using a variable probability.
  • the first information indicates whether SAO (sample adaptive offset) processing, which is pixel value offset processing, is performed on the first region of the image.
  • the second information indicates whether or not to use the SAO processing information for an area different from the first area for the SAO processing for the first area.
  • bypass arithmetic encoding unit 3073 encodes other information by bypass arithmetic encoding (S512).
  • Bypass arithmetic coding is arithmetic coding using a fixed probability.
  • the other information is SAO processing information for the first area, and is different from the first information and the second information.
  • FIG. 37 is a flowchart showing an example of the characteristics of the above decoding.
  • the context arithmetic decoding unit 4062 continuously decodes the first information and the second information by context arithmetic decoding (S521).
  • Context arithmetic decoding is arithmetic decoding using a variable probability.
  • the first information indicates whether SAO (sample adaptive offset) processing, which is pixel value offset processing, is performed on the first region of the image.
  • the second information indicates whether or not to use the SAO processing information for an area different from the first area for the SAO processing for the first area.
  • bypass arithmetic decoding unit 4063 decodes other information by bypass arithmetic decoding (S522).
  • Bypass arithmetic decoding is arithmetic decoding using a fixed probability.
  • the other information is SAO processing information for the first area, and is different from the first information and the second information.
  • first information or the second information may be encoded first.
  • first information or the second information may be decoded first.
  • the encoding order is the order in which information is written as a code (code) in the encoded stream
  • the decoding order is the order in which the code (code) is read from the encoded stream as information. That is, the order of encoding and decoding exemplified above with reference to a plurality of drawings corresponds to the order of information in the encoded stream. Also, the order of the syntax elements exemplified above with reference to a plurality of drawings corresponds to the order of information in the encoded stream, and corresponds to the order of encoding and decoding.
  • the image encoding device may be a device that performs only the processing shown in FIG.
  • the image decoding apparatus may be an apparatus that performs only the processing shown in FIG. Other devices may perform other processes.
  • FIG. 31B shows the result based on the test condition (see Non-Patent Document 2) formulated in the HEVC standard as the objective performance of the present embodiment.
  • BD-rate is an objective index calculated from the PSNR (Peak Signal-to-Noise Ratio) of the reconstructed image and the code amount of the encoded stream. Negative BD-rate indicates an improvement in objective performance, and positive BD-rate indicates a deterioration in objective performance. Note that the BD-rate in FIG. 31B shows the improvement or deterioration of the objective performance of the present embodiment based on a comparison with the first embodiment.
  • PSNR Peak Signal-to-Noise Ratio
  • the BD-rate is within the range of ⁇ 0.1. This indicates that the objective performance of the present embodiment is almost equivalent to that of the first embodiment. That is, in this embodiment, there is little deterioration in objective performance and throughput is improved.
  • the image encoding apparatus can encode an image with high processing efficiency.
  • the image decoding apparatus can decode an image with high processing efficiency.
  • each component may be configured by dedicated hardware or may be realized by executing a software program suitable for each component.
  • Each component may be realized by a program execution unit such as a CPU or a processor reading and executing a software program recorded on a recording medium such as a hard disk or a semiconductor memory.
  • the image encoding device and the image decoding device include a control circuit (control circuit) and a storage device (storage) electrically connected to the control circuit (accessible from the control circuit).
  • the control circuit includes at least one of dedicated hardware and a program execution unit. Further, when the control circuit includes a program execution unit, the storage device stores a software program executed by the program execution unit.
  • the software that realizes the image encoding device and the like of each of the above embodiments is the following program.
  • the program performs (i) SAO (sample adaptive offset) processing, which is pixel value offset processing, on the first region of the image by context arithmetic coding, which is arithmetic coding using a variable probability. And (ii) second information indicating whether or not to use SAO processing information for an area different from the first area in the SAO processing for the first area.
  • a context arithmetic coding step for coding, and after the first information and the second information are coded, the SAO for the first region is performed by bypass arithmetic coding, which is arithmetic coding using a fixed probability.
  • a bypass arithmetic encoding step for encoding other information which is processing information and is different from the first information and the second information.
  • This program also performs (i) SAO (sample adaptive offset) processing, which is pixel value offset processing, on the first region of the image by context arithmetic decoding, which is arithmetic decoding using a variable probability, on the computer.
  • First information indicating whether or not
  • second information indicating whether or not to use SAO processing information for an area different from the first area in the SAO processing for the first area.
  • a context arithmetic decoding step for decoding, and after the first information and the second information are decoded, information about SAO processing for the first region is performed by bypass arithmetic decoding, which is arithmetic decoding using a fixed probability.
  • An image decoding method including a bypass arithmetic decoding step of decoding other information that is different from both the first information and the second information; Good.
  • Each component may be a circuit. These circuits may constitute one circuit as a whole, or may be separate circuits. Each component may be realized by a general-purpose processor or a dedicated processor.
  • the image encoding / decoding device may include an image encoding device and an image decoding device.
  • another processing unit may execute a process executed by a specific processing unit. Further, the order in which the processes are executed may be changed, and a plurality of processes may be executed in parallel.
  • a dedicated or shared storage unit for storing various types of information may be added to the configuration.
  • the storage medium may be any medium that can record a program, such as a magnetic disk, an optical disk, a magneto-optical disk, an IC card, and a semiconductor memory.
  • the system has an image encoding / decoding device including an image encoding device using an image encoding method and an image decoding device using an image decoding method.
  • image encoding / decoding device including an image encoding device using an image encoding method and an image decoding device using an image decoding method.
  • Other configurations in the system can be appropriately changed according to circumstances.
  • FIG. 38 is a diagram showing an overall configuration of a content supply system ex100 that realizes a content distribution service.
  • a communication service providing area is divided into desired sizes, and base stations ex106, ex107, ex108, ex109, and ex110, which are fixed wireless stations, are installed in each cell.
  • This content supply system ex100 includes a computer ex111, a PDA (Personal Digital Assistant) ex112, a camera ex113, a mobile phone ex114, a game machine ex115 via the Internet ex101, the Internet service provider ex102, the telephone network ex104, and the base stations ex106 to ex110. Etc. are connected.
  • PDA Personal Digital Assistant
  • each device may be directly connected to the telephone network ex104 without going from the base station ex106, which is a fixed wireless station, to ex110.
  • the devices may be directly connected to each other via short-range wireless or the like.
  • the camera ex113 is a device that can shoot moving images such as a digital video camera
  • the camera ex116 is a device that can shoot still images and movies such as a digital camera.
  • the mobile phone ex114 is a GSM (registered trademark) (Global System for Mobile Communications) system, a CDMA (Code Division Multiple Access) system, a W-CDMA (Wideband-Code Division Multiple Access) system, or an LTE (Long Terminal Term Evolution). It is possible to use any of the above-mentioned systems, HSPA (High Speed Packet Access) mobile phone, PHS (Personal Handyphone System), or the like.
  • the camera ex113 and the like are connected to the streaming server ex103 through the base station ex109 and the telephone network ex104, thereby enabling live distribution and the like.
  • live distribution content that is shot by a user using the camera ex113 (for example, music live video) is encoded as described in each of the above embodiments (that is, in one aspect of the present invention).
  • the streaming server ex103 stream-distributes the content data transmitted to the requested client. Examples of the client include a computer ex111, a PDA ex112, a camera ex113, a mobile phone ex114, and a game machine ex115 that can decode the encoded data.
  • Each device that receives the distributed data decodes the received data and reproduces it (that is, functions as an image decoding device according to one embodiment of the present invention).
  • the captured data may be encoded by the camera ex113, the streaming server ex103 that performs data transmission processing, or may be shared with each other.
  • the decryption processing of the distributed data may be performed by the client, the streaming server ex103, or may be performed in common with each other.
  • still images and / or moving image data captured by the camera ex116 may be transmitted to the streaming server ex103 via the computer ex111.
  • the encoding process in this case may be performed by any of the camera ex116, the computer ex111, and the streaming server ex103, or may be performed in a shared manner.
  • these encoding / decoding processes are generally performed in the computer ex111 and the LSI ex500 included in each device.
  • the LSI ex500 may be configured as a single chip or a plurality of chips.
  • moving image encoding / decoding software is incorporated into some recording medium (CD-ROM, flexible disk, hard disk, etc.) that can be read by the computer ex111, etc., and encoding / decoding processing is performed using the software. May be.
  • moving image data acquired by the camera may be transmitted.
  • the moving image data at this time is data encoded by the LSI ex500 included in the mobile phone ex114.
  • the streaming server ex103 may be a plurality of servers or a plurality of computers, and may process, record, and distribute data in a distributed manner.
  • the encoded data can be received and reproduced by the client.
  • the information transmitted by the user can be received, decrypted and reproduced by the client in real time, and personal broadcasting can be realized even for a user who does not have special rights or facilities.
  • the digital broadcasting system ex200 also includes at least the moving image encoding device (image encoding device) or the moving image decoding according to each of the above embodiments. Any of the devices (image decoding devices) can be incorporated.
  • the broadcast station ex201 multiplexed data obtained by multiplexing music data and the like on video data is transmitted to a communication or satellite ex202 via radio waves.
  • This video data is data encoded by the moving image encoding method described in each of the above embodiments (that is, data encoded by the image encoding apparatus according to one aspect of the present invention).
  • the broadcasting satellite ex202 transmits a radio wave for broadcasting, and this radio wave is received by a home antenna ex204 capable of receiving satellite broadcasting.
  • the received multiplexed data is decoded and reproduced by an apparatus such as the television (receiver) ex300 or the set top box (STB) ex217 (that is, functions as an image decoding apparatus according to one embodiment of the present invention).
  • a reader / recorder ex218 that reads and decodes multiplexed data recorded on a recording medium ex215 such as a DVD or a BD, or encodes a video signal on the recording medium ex215 and, in some cases, multiplexes and writes it with a music signal. It is possible to mount the moving picture decoding apparatus or moving picture encoding apparatus described in the above embodiments. In this case, the reproduced video signal is displayed on the monitor ex219, and the video signal can be reproduced in another device or system using the recording medium ex215 on which the multiplexed data is recorded.
  • a moving picture decoding apparatus may be mounted in a set-top box ex217 connected to a cable ex203 for cable television or an antenna ex204 for satellite / terrestrial broadcasting and displayed on the monitor ex219 of the television.
  • the moving picture decoding apparatus may be incorporated in the television instead of the set top box.
  • FIG. 40 is a diagram illustrating a television (receiver) ex300 that uses the video decoding method and the video encoding method described in the above embodiments.
  • the television ex300 obtains or outputs multiplexed data in which audio data is multiplexed with video data via the antenna ex204 or the cable ex203 that receives the broadcast, and demodulates the received multiplexed data.
  • the modulation / demodulation unit ex302 that modulates multiplexed data to be transmitted to the outside, and the demodulated multiplexed data is separated into video data and audio data, or the video data and audio data encoded by the signal processing unit ex306 Is provided with a multiplexing / demultiplexing unit ex303.
  • the television ex300 also decodes the audio data and the video data, or encodes the information, the audio signal processing unit ex304, the video signal processing unit ex305 (the image encoding device or the image according to one embodiment of the present invention) A signal processing unit ex306 that functions as a decoding device), a speaker ex307 that outputs the decoded audio signal, and an output unit ex309 that includes a display unit ex308 such as a display that displays the decoded video signal. Furthermore, the television ex300 includes an interface unit ex317 including an operation input unit ex312 that receives an input of a user operation. Furthermore, the television ex300 includes a control unit ex310 that performs overall control of each unit, and a power supply circuit unit ex311 that supplies power to each unit.
  • the interface unit ex317 includes a bridge unit ex313 connected to an external device such as a reader / recorder ex218, a recording unit ex216 such as an SD card, and an external recording unit such as a hard disk.
  • a driver ex315 for connecting to a medium, a modem ex316 for connecting to a telephone network, and the like may be included.
  • the recording medium ex216 is capable of electrically recording information by using a nonvolatile / volatile semiconductor memory element to be stored.
  • Each part of the television ex300 is connected to each other via a synchronous bus.
  • the television ex300 receives a user operation from the remote controller ex220 or the like, and demultiplexes the multiplexed data demodulated by the modulation / demodulation unit ex302 by the multiplexing / demultiplexing unit ex303 based on the control of the control unit ex310 having a CPU or the like. Furthermore, in the television ex300, the separated audio data is decoded by the audio signal processing unit ex304, and the separated video data is decoded by the video signal processing unit ex305 using the decoding method described in each of the above embodiments.
  • the decoded audio signal and video signal are output from the output unit ex309 to the outside. At the time of output, these signals may be temporarily stored in the buffers ex318, ex319, etc. so that the audio signal and the video signal are reproduced in synchronization. Also, the television ex300 may read multiplexed data from recording media ex215 and ex216 such as a magnetic / optical disk and an SD card, not from broadcasting. Next, a configuration in which the television ex300 encodes an audio signal or a video signal and transmits the signal to the outside or to a recording medium will be described.
  • the television ex300 receives a user operation from the remote controller ex220 and the like, encodes an audio signal with the audio signal processing unit ex304, and converts the video signal with the video signal processing unit ex305 based on the control of the control unit ex310. Encoding is performed using the encoding method described in (1).
  • the encoded audio signal and video signal are multiplexed by the multiplexing / demultiplexing unit ex303 and output to the outside. When multiplexing, these signals may be temporarily stored in the buffers ex320, ex321, etc. so that the audio signal and the video signal are synchronized.
  • a plurality of buffers ex318, ex319, ex320, and ex321 may be provided as illustrated, or one or more buffers may be shared. Further, in addition to the illustrated example, data may be stored in the buffer as a buffer material that prevents system overflow and underflow, for example, between the modulation / demodulation unit ex302 and the multiplexing / demultiplexing unit ex303.
  • the television ex300 has a configuration for receiving AV input of a microphone and a camera, and performs encoding processing on the data acquired from them. Also good.
  • the television ex300 has been described as a configuration capable of the above-described encoding processing, multiplexing, and external output, but these processing cannot be performed, and only the above-described reception, decoding processing, and external output are possible. It may be a configuration.
  • the decoding process or the encoding process may be performed by either the television ex300 or the reader / recorder ex218,
  • the reader / recorder ex218 may share with each other.
  • FIG. 41 shows the configuration of the information reproducing / recording unit ex400 when data is read from or written to an optical disk.
  • the information reproducing / recording unit ex400 includes elements ex401, ex402, ex403, ex404, ex405, ex406, and ex407 described below.
  • the optical head ex401 irradiates a laser spot on the recording surface of the recording medium ex215 that is an optical disk to write information, and detects information reflected from the recording surface of the recording medium ex215 to read the information.
  • the modulation recording unit ex402 electrically drives a semiconductor laser built in the optical head ex401 and modulates the laser beam according to the recording data.
  • the reproduction demodulator ex403 amplifies the reproduction signal obtained by electrically detecting the reflected light from the recording surface by the photodetector built in the optical head ex401, separates and demodulates the signal component recorded on the recording medium ex215, and is necessary To play back information.
  • the buffer ex404 temporarily holds information to be recorded on the recording medium ex215 and information reproduced from the recording medium ex215.
  • the disk motor ex405 rotates the recording medium ex215.
  • the servo control unit ex406 moves the optical head ex401 to a predetermined information track while controlling the rotational drive of the disk motor ex405, and performs a laser spot tracking process.
  • the system control unit ex407 controls the entire information reproduction / recording unit ex400.
  • the system control unit ex407 uses various types of information held in the buffer ex404, and generates and adds new information as necessary.
  • the modulation recording unit ex402, the reproduction demodulation unit This is realized by recording / reproducing information through the optical head ex401 while operating the ex403 and the servo control unit ex406 in a coordinated manner.
  • the system control unit ex407 includes, for example, a microprocessor, and executes these processes by executing a read / write program.
  • the optical head ex401 has been described as irradiating a laser spot.
  • a configuration in which higher-density recording is performed using near-field light may be used.
  • FIG. 42 shows a schematic diagram of a recording medium ex215 that is an optical disk.
  • Guide grooves grooves
  • address information indicating the absolute position on the disc is recorded in advance on the information track ex230 by changing the shape of the groove.
  • This address information includes information for specifying the position of the recording block ex231 that is a unit for recording data, and the recording block is specified by reproducing the information track ex230 and reading the address information in a recording or reproducing apparatus.
  • the recording medium ex215 includes a data recording area ex233, an inner peripheral area ex232, and an outer peripheral area ex234.
  • the area used for recording user data is the data recording area ex233, and the inner circumference area ex232 and the outer circumference area ex234 arranged on the inner or outer circumference of the data recording area ex233 are used for specific purposes other than user data recording. Used.
  • the information reproducing / recording unit ex400 reads / writes encoded audio data, video data, or multiplexed data obtained by multiplexing these data with respect to the data recording area ex233 of the recording medium ex215.
  • an optical disk such as a single-layer DVD or BD has been described as an example.
  • the present invention is not limited to these, and an optical disk having a multilayer structure and capable of recording other than the surface may be used.
  • an optical disc with a multi-dimensional recording / reproducing structure such as recording information using light of different wavelengths in the same place on the disc, or recording different layers of information from various angles. It may be.
  • the car ex210 having the antenna ex205 can receive data from the satellite ex202 and the like, and the moving image can be reproduced on a display device such as the car navigation ex211 that the car ex210 has.
  • the configuration of the car navigation ex211 may include a configuration in which a GPS receiving unit is added to the configuration illustrated in FIG. 40, and the same may be applied to the computer ex111, the mobile phone ex114, and the like.
  • FIG. 43A is a diagram showing the mobile phone ex114 using the moving picture decoding method and the moving picture encoding method described in the above embodiment.
  • the mobile phone ex114 includes an antenna ex350 for transmitting and receiving radio waves to and from the base station ex110, a camera unit ex365 capable of capturing video and still images, a video captured by the camera unit ex365, a video received by the antenna ex350, and the like Is provided with a display unit ex358 such as a liquid crystal display for displaying the decrypted data.
  • the mobile phone ex114 further includes a main body unit having an operation key unit ex366, an audio output unit ex357 such as a speaker for outputting audio, an audio input unit ex356 such as a microphone for inputting audio, a captured video,
  • an audio input unit ex356 such as a microphone for inputting audio
  • a captured video In the memory unit ex367 for storing encoded data or decoded data such as still images, recorded audio, received video, still images, mails, or the like, or an interface unit with a recording medium for storing data
  • a slot ex364 is provided.
  • the mobile phone ex114 has a power supply circuit part ex361, an operation input control part ex362, and a video signal processing part ex355 with respect to a main control part ex360 that comprehensively controls each part of the main body including the display part ex358 and the operation key part ex366.
  • a camera interface unit ex363, an LCD (Liquid Crystal Display) control unit ex359, a modulation / demodulation unit ex352, a multiplexing / demultiplexing unit ex353, an audio signal processing unit ex354, a slot unit ex364, and a memory unit ex367 are connected to each other via a bus ex370. ing.
  • the power supply circuit unit ex361 starts up the mobile phone ex114 in an operable state by supplying power from the battery pack to each unit.
  • the cellular phone ex114 converts the audio signal collected by the audio input unit ex356 in the voice call mode into a digital audio signal by the audio signal processing unit ex354 based on the control of the main control unit ex360 having a CPU, a ROM, a RAM, and the like. Then, this is subjected to spectrum spread processing by the modulation / demodulation unit ex352, digital-analog conversion processing and frequency conversion processing are performed by the transmission / reception unit ex351, and then transmitted via the antenna ex350.
  • the mobile phone ex114 also amplifies the received data received via the antenna ex350 in the voice call mode, performs frequency conversion processing and analog-digital conversion processing, performs spectrum despreading processing by the modulation / demodulation unit ex352, and performs voice signal processing unit After being converted into an analog audio signal by ex354, this is output from the audio output unit ex357.
  • the text data of the e-mail input by operating the operation key unit ex366 of the main unit is sent to the main control unit ex360 via the operation input control unit ex362.
  • the main control unit ex360 performs spread spectrum processing on the text data in the modulation / demodulation unit ex352, performs digital analog conversion processing and frequency conversion processing in the transmission / reception unit ex351, and then transmits the text data to the base station ex110 via the antenna ex350.
  • almost the reverse process is performed on the received data and output to the display unit ex358.
  • the video signal processing unit ex355 compresses the video signal supplied from the camera unit ex365 by the moving image encoding method described in the above embodiments. Encode (that is, function as an image encoding device according to an aspect of the present invention), and send the encoded video data to the multiplexing / demultiplexing unit ex353.
  • the audio signal processing unit ex354 encodes the audio signal picked up by the audio input unit ex356 while the camera unit ex365 images a video, a still image, etc., and sends the encoded audio data to the multiplexing / separating unit ex353. To do.
  • the multiplexing / demultiplexing unit ex353 multiplexes the encoded video data supplied from the video signal processing unit ex355 and the encoded audio data supplied from the audio signal processing unit ex354 by a predetermined method, and is obtained as a result.
  • the multiplexed data is subjected to spread spectrum processing by the modulation / demodulation unit (modulation / demodulation circuit unit) ex352, digital-analog conversion processing and frequency conversion processing by the transmission / reception unit ex351, and then transmitted via the antenna ex350.
  • the multiplexing / separating unit ex353 separates the multiplexed data into a video data bit stream and an audio data bit stream, and performs video signal processing on the video data encoded via the synchronization bus ex370.
  • the encoded audio data is supplied to the audio signal processing unit ex354 while being supplied to the unit ex355.
  • the video signal processing unit ex355 decodes the video signal by decoding using the video decoding method corresponding to the video encoding method described in each of the above embodiments (that is, an image according to an aspect of the present invention).
  • video and still images included in the moving image file linked to the home page are displayed from the display unit ex358 via the LCD control unit ex359.
  • the audio signal processing unit ex354 decodes the audio signal, and the audio is output from the audio output unit ex357.
  • the terminal such as the mobile phone ex114 is referred to as a transmission terminal having only an encoder and a receiving terminal having only a decoder.
  • a transmission terminal having only an encoder
  • a receiving terminal having only a decoder.
  • multiplexed data in which music data or the like is multiplexed with video data is received and transmitted, but data in which character data or the like related to video is multiplexed in addition to audio data It may be video data itself instead of multiplexed data.
  • the moving picture encoding method or the moving picture decoding method shown in each of the above embodiments can be used in any of the above-described devices / systems. The described effect can be obtained.
  • multiplexed data obtained by multiplexing audio data or the like with video data is configured to include identification information indicating which standard the video data conforms to.
  • identification information indicating which standard the video data conforms to.
  • FIG. 44 is a diagram showing a structure of multiplexed data.
  • multiplexed data is obtained by multiplexing one or more of a video stream, an audio stream, a presentation graphics stream (PG), and an interactive graphics stream.
  • the video stream indicates the main video and sub-video of the movie
  • the audio stream (IG) indicates the main audio portion of the movie and the sub-audio mixed with the main audio
  • the presentation graphics stream indicates the subtitles of the movie.
  • the main video indicates a normal video displayed on the screen
  • the sub-video is a video displayed on a small screen in the main video.
  • the interactive graphics stream indicates an interactive screen created by arranging GUI components on the screen.
  • the video stream is encoded by the moving image encoding method or apparatus shown in the above embodiments, or the moving image encoding method or apparatus conforming to the conventional standards such as MPEG-2, MPEG4-AVC, and VC-1. ing.
  • the audio stream is encoded by a method such as Dolby AC-3, Dolby Digital Plus, MLP, DTS, DTS-HD, or linear PCM.
  • Each stream included in the multiplexed data is identified by PID. For example, 0x1011 for video streams used for movie images, 0x1100 to 0x111F for audio streams, 0x1200 to 0x121F for presentation graphics, 0x1400 to 0x141F for interactive graphics streams, 0x1B00 to 0x1B1F are assigned to the video stream used for the sub-picture, and 0x1A00 to 0x1A1F are assigned to the audio stream used for the sub-audio mixed with the main audio.
  • FIG. 45 is a diagram schematically showing how multiplexed data is multiplexed.
  • a video stream ex235 composed of a plurality of video frames and an audio stream ex238 composed of a plurality of audio frames are converted into PES packet sequences ex236 and ex239, respectively, and converted into TS packets ex237 and ex240.
  • the data of the presentation graphics stream ex241 and interactive graphics ex244 are converted into PES packet sequences ex242 and ex245, respectively, and further converted into TS packets ex243 and ex246.
  • the multiplexed data ex247 is configured by multiplexing these TS packets into one stream.
  • FIG. 46 shows in more detail how the video stream is stored in the PES packet sequence.
  • the first row in FIG. 46 shows a video frame sequence of the video stream.
  • the second level shows a PES packet sequence.
  • a plurality of Video Presentation Units in the video stream are divided into pictures, B pictures, and P pictures and stored in the payload of the PES packet.
  • Each PES packet has a PES header, and a PTS (Presentation Time-Stamp) that is a display time of a picture and a DTS (Decoding Time-Stamp) that is a decoding time of a picture are stored in the PES header.
  • PTS Presentation Time-Stamp
  • DTS Decoding Time-Stamp
  • FIG. 47 shows the format of TS packets that are finally written in the multiplexed data.
  • the TS packet is a 188-byte fixed-length packet composed of a 4-byte TS header having information such as a PID for identifying a stream and a 184-byte TS payload for storing data.
  • the PES packet is divided and stored in the TS payload.
  • a 4-byte TP_Extra_Header is added to a TS packet, forms a 192-byte source packet, and is written in multiplexed data.
  • TP_Extra_Header information such as ATS (Arrival_Time_Stamp) is described.
  • ATS indicates the transfer start time of the TS packet to the PID filter of the decoder.
  • Source packets are arranged in the multiplexed data as shown in the lower part of FIG. 47, and the number incremented from the head of the multiplexed data is called SPN (source packet number).
  • TS packets included in the multiplexed data include PAT (Program Association Table), PMT (Program Map Table), PCR (Program Clock Reference), and the like in addition to each stream such as video / audio / caption.
  • PAT indicates what the PID of the PMT used in the multiplexed data is, and the PID of the PAT itself is registered as 0.
  • the PMT has the PID of each stream such as video / audio / subtitles included in the multiplexed data and the attribute information of the stream corresponding to each PID, and has various descriptors related to the multiplexed data.
  • the descriptor includes copy control information for instructing permission / non-permission of copying of multiplexed data.
  • the PCR corresponds to the ATS in which the PCR packet is transferred to the decoder. Contains STC time information.
  • FIG. 48 is a diagram for explaining the data structure of the PMT in detail.
  • a PMT header describing the length of data included in the PMT is arranged at the head of the PMT.
  • a plurality of descriptors related to multiplexed data are arranged.
  • the copy control information and the like are described as descriptors.
  • a plurality of pieces of stream information regarding each stream included in the multiplexed data are arranged.
  • the stream information includes a stream descriptor in which a stream type, a stream PID, and stream attribute information (frame rate, aspect ratio, etc.) are described to identify a compression codec of the stream.
  • the multiplexed data is recorded together with the multiplexed data information file.
  • the multiplexed data information file is management information of multiplexed data, has one-to-one correspondence with multiplexed data, and includes multiplexed data information, stream attribute information, and an entry map.
  • the multiplexed data information is composed of a system rate, a reproduction start time, and a reproduction end time.
  • the system rate indicates a maximum transfer rate of multiplexed data to a PID filter of a system target decoder described later.
  • the ATS interval included in the multiplexed data is set to be equal to or less than the system rate.
  • the playback start time is the PTS of the first video frame of the multiplexed data
  • the playback end time is set by adding the playback interval for one frame to the PTS of the video frame at the end of the multiplexed data.
  • attribute information for each stream included in the multiplexed data is registered for each PID.
  • the attribute information has different information for each video stream, audio stream, presentation graphics stream, and interactive graphics stream.
  • the video stream attribute information includes the compression codec used to compress the video stream, the resolution of the individual picture data constituting the video stream, the aspect ratio, and the frame rate. It has information such as how much it is.
  • the audio stream attribute information includes the compression codec used to compress the audio stream, the number of channels included in the audio stream, the language supported, and the sampling frequency. With information. These pieces of information are used for initialization of the decoder before the player reproduces it.
  • the stream type included in the PMT is used.
  • video stream attribute information included in the multiplexed data information is used.
  • the video encoding shown in each of the above embodiments for the stream type or video stream attribute information included in the PMT.
  • FIG. 51 shows steps of the moving picture decoding method according to the present embodiment.
  • step exS100 the stream type included in the PMT or the video stream attribute information included in the multiplexed data information is acquired from the multiplexed data.
  • step exS101 it is determined whether or not the stream type or the video stream attribute information indicates multiplexed data generated by the moving picture encoding method or apparatus described in the above embodiments. To do.
  • step exS102 the above embodiments are performed. Decoding is performed by the moving picture decoding method shown in the form.
  • the conventional information Decoding is performed by a moving image decoding method compliant with the standard.
  • FIG. 52 shows a configuration of an LSI ex500 that is made into one chip.
  • the LSI ex500 includes elements ex501, ex502, ex503, ex504, ex505, ex506, ex507, ex508, and ex509 described below, and each element is connected via a bus ex510.
  • the power supply circuit unit ex505 is activated to an operable state by supplying power to each unit when the power supply is on.
  • the LSI ex500 uses the AV I / O ex509 to perform the microphone ex117 and the camera ex113 based on the control of the control unit ex501 including the CPU ex502, the memory controller ex503, the stream controller ex504, the driving frequency control unit ex512, and the like.
  • the AV signal is input from the above.
  • the input AV signal is temporarily stored in an external memory ex511 such as SDRAM.
  • the accumulated data is divided into a plurality of times as appropriate according to the processing amount and the processing speed and sent to the signal processing unit ex507, and the signal processing unit ex507 encodes an audio signal and / or video. Signal encoding is performed.
  • the encoding process of the video signal is the encoding process described in the above embodiments.
  • the signal processing unit ex507 further performs processing such as multiplexing the encoded audio data and the encoded video data according to circumstances, and outputs the result from the stream I / Oex 506 to the outside.
  • the output multiplexed data is transmitted to the base station ex107 or written to the recording medium ex215. It should be noted that data should be temporarily stored in the buffer ex508 so as to be synchronized when multiplexing.
  • the memory ex511 is described as an external configuration of the LSI ex500.
  • a configuration included in the LSI ex500 may be used.
  • the number of buffers ex508 is not limited to one, and a plurality of buffers may be provided.
  • the LSI ex500 may be made into one chip or a plurality of chips.
  • control unit ex501 includes the CPU ex502, the memory controller ex503, the stream controller ex504, the drive frequency control unit ex512, and the like, but the configuration of the control unit ex501 is not limited to this configuration.
  • the signal processing unit ex507 may further include a CPU.
  • the CPU ex502 may be configured to include a signal processing unit ex507 or, for example, an audio signal processing unit that is a part of the signal processing unit ex507.
  • the control unit ex501 is configured to include a signal processing unit ex507 or a CPU ex502 having a part thereof.
  • LSI LSI
  • IC system LSI
  • super LSI ultra LSI depending on the degree of integration
  • the method of circuit integration is not limited to LSI, and implementation with a dedicated circuit or a general-purpose processor is also possible.
  • An FPGA Field Programmable Gate Array
  • Such a programmable logic device typically loads or reads a program constituting software or firmware from a memory or the like, thereby moving the moving picture coding method or moving picture shown in each of the above embodiments.
  • An image decoding method can be performed.
  • FIG. 53 shows a configuration ex800 in the present embodiment.
  • the drive frequency switching unit ex803 sets the drive frequency high when the video data is generated by the moving image encoding method or apparatus described in the above embodiments.
  • the decoding processing unit ex801 that executes the moving picture decoding method described in each of the above embodiments is instructed to decode the video data.
  • the video data is video data compliant with the conventional standard, compared to the case where the video data is generated by the moving picture encoding method or apparatus shown in the above embodiments, Set the drive frequency low. Then, it instructs the decoding processing unit ex802 compliant with the conventional standard to decode the video data.
  • the drive frequency switching unit ex803 includes the CPU ex502 and the drive frequency control unit ex512 in FIG.
  • the decoding processing unit ex801 that executes the moving picture decoding method shown in each of the above embodiments and the decoding processing unit ex802 that complies with the conventional standard correspond to the signal processing unit ex507 in FIG.
  • the CPU ex502 identifies which standard the video data conforms to. Then, based on the signal from the CPU ex502, the drive frequency control unit ex512 sets the drive frequency. Further, based on the signal from the CPU ex502, the signal processing unit ex507 decodes the video data.
  • the identification information described in the fifth embodiment may be used.
  • the identification information is not limited to that described in the fifth embodiment, and any information that can identify which standard the video data conforms to may be used. For example, it is possible to identify which standard the video data conforms to based on an external signal that identifies whether the video data is used for a television or a disk. In some cases, identification may be performed based on such an external signal.
  • the selection of the driving frequency in the CPU ex502 may be performed based on, for example, a lookup table in which video data standards and driving frequencies are associated with each other as shown in FIG. The look-up table is stored in the buffer ex508 or the internal memory of the LSI, and the CPU ex502 can select the drive frequency by referring to the look-up table.
  • FIG. 54 shows steps for executing the method of the present embodiment.
  • the signal processing unit ex507 acquires identification information from the multiplexed data.
  • the CPU ex502 identifies whether the video data is generated by the encoding method or apparatus described in each of the above embodiments based on the identification information.
  • the CPU ex502 sends a signal for setting the drive frequency high to the drive frequency control unit ex512. Then, the drive frequency control unit ex512 sets a high drive frequency.
  • step exS203 the CPU ex502 drives the signal for setting the drive frequency low. This is sent to the frequency control unit ex512. Then, in the drive frequency control unit ex512, the drive frequency is set to be lower than that in the case where the video data is generated by the encoding method or apparatus described in the above embodiments.
  • the power saving effect can be further enhanced by changing the voltage applied to the LSI ex500 or the device including the LSI ex500 in conjunction with the switching of the driving frequency. For example, when the drive frequency is set low, it is conceivable that the voltage applied to the LSI ex500 or the device including the LSI ex500 is set low as compared with the case where the drive frequency is set high.
  • the setting method of the driving frequency may be set to a high driving frequency when the processing amount at the time of decoding is large, and to a low driving frequency when the processing amount at the time of decoding is small. It is not limited to the method.
  • the amount of processing for decoding video data compliant with the MPEG4-AVC standard is larger than the amount of processing for decoding video data generated by the moving picture encoding method or apparatus described in the above embodiments. It is conceivable that the setting of the driving frequency is reversed to that in the case described above.
  • the method for setting the drive frequency is not limited to the configuration in which the drive frequency is lowered.
  • the voltage applied to the LSIex500 or the apparatus including the LSIex500 is set high.
  • the driving of the CPU ex502 is stopped.
  • the CPU ex502 is temporarily stopped because there is room in processing. Is also possible. Even when the identification information indicates that the video data is generated by the moving image encoding method or apparatus described in each of the above embodiments, if there is a margin for processing, the CPU ex502 is temporarily driven. It can also be stopped. In this case, it is conceivable to set the stop time shorter than in the case where the video data conforms to the conventional standards such as MPEG-2, MPEG4-AVC, and VC-1.
  • a plurality of video data that conforms to different standards may be input to the above-described devices and systems such as a television and a mobile phone.
  • the signal processing unit ex507 of the LSI ex500 needs to support a plurality of standards in order to be able to decode even when a plurality of video data complying with different standards is input.
  • the signal processing unit ex507 corresponding to each standard is used individually, there is a problem that the circuit scale of the LSI ex500 increases and the cost increases.
  • a decoding processing unit for executing the moving picture decoding method shown in each of the above embodiments and a decoding conforming to a standard such as MPEG-2, MPEG4-AVC, or VC-1
  • the processing unit is partly shared.
  • An example of this configuration is shown as ex900 in FIG. 56A.
  • the moving picture decoding method shown in each of the above embodiments and the moving picture decoding method compliant with the MPEG4-AVC standard are processed in processes such as entropy coding, inverse quantization, deblocking filter, and motion compensation. Some contents are common.
  • the decoding processing unit ex902 corresponding to the MPEG4-AVC standard is shared, and for other processing contents specific to one aspect of the present invention that do not correspond to the MPEG4-AVC standard, a dedicated decoding processing unit A configuration using ex901 is conceivable.
  • a dedicated decoding processing unit ex901 is used for entropy decoding, and other dequantization, deblocking filter, and motion compensation are used. For any or all of these processes, it is conceivable to share the decoding processing unit.
  • the decoding processing unit for executing the moving picture decoding method described in each of the above embodiments is shared, and the processing content specific to the MPEG4-AVC standard As for, a configuration using a dedicated decoding processing unit may be used.
  • ex1000 in FIG. 56B shows another example in which processing is partially shared.
  • a dedicated decoding processing unit ex1001 corresponding to the processing content specific to one aspect of the present invention
  • a dedicated decoding processing unit ex1002 corresponding to the processing content specific to another conventional standard
  • a common decoding processing unit ex1003 corresponding to the processing contents common to the moving image decoding method according to the above and other conventional moving image decoding methods.
  • the dedicated decoding processing units ex1001 and ex1002 are not necessarily specialized in one aspect of the present invention or processing content specific to other conventional standards, and can execute other general-purpose processing. Also good.
  • the configuration of the present embodiment can be implemented by LSI ex500.
  • the processing content common to the moving picture decoding method according to one aspect of the present invention and the moving picture decoding method of the conventional standard reduces the circuit scale of the LSI by sharing the decoding processing unit, In addition, the cost can be reduced.
  • the image encoding method and the image decoding method according to the present invention are effective in preventing deterioration of image quality and improving processing efficiency, and for example, for various uses such as image storage, transmission, and communication. Is available.
  • the image encoding method and image decoding method according to the present invention can be used for high-resolution information display devices and imaging devices such as televisions, digital video recorders, car navigation systems, mobile phones, digital cameras, and digital video cameras. High utility value.
  • Image coding apparatus 110 210, 306, 405 Control unit 120 Coding unit 121 Subtraction unit 122 Frequency conversion unit 123 Quantization unit 124 Entropy coding unit 125, 225 Inverse quantization unit 126, 226 Inverse frequency conversion unit 127, 227 Adder 128, 228, 300, 400 Loop filtering unit 129, 229 Storage unit 130, 230 In-plane prediction unit 131, 231 Motion compensation unit 132 Motion detection unit 133, 233 Switch 141, 241 Image 142, 242 Encoded stream 151 , 251, 301, 401 Signal acquisition unit 152, 302 Offset information calculation unit 153, 253, 303, 403 Offset processing unit 154, 305, 307 Offset information encoding unit 155, 254, 304, 404 Signal output unit 200 Image Decoding Device 220 Decoding Unit 224 Entropy Decoding Unit 252, 402, 406 Offset Information Decoding Unit 3071 Arithmetic Coding Control Unit 3072 Context Arithmetic Coding Unit 3073 Bypass

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Heart & Thoracic Surgery (AREA)
  • Computing Systems (AREA)
  • Public Health (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Veterinary Medicine (AREA)
  • Animal Behavior & Ethology (AREA)
  • Vascular Medicine (AREA)
  • Anesthesiology (AREA)
  • Hematology (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Otolaryngology (AREA)
  • Chemical & Material Sciences (AREA)
  • Medicinal Chemistry (AREA)

Abstract

 画像符号化方法は、可変の確率を用いる算術符号化であるコンテキスト算術符号化によって、(i)画素値のオフセット処理であるSAO(サンプル適応オフセット)処理を画像の第1領域に対して行うか否かを示す第1情報、および、(ii)第1領域に対するSAO処理に第1領域とは別の領域に対するSAO処理の情報を用いるか否かを示す第2情報を連続して符号化するコンテキスト算術符号化ステップ(S511)と、第1情報および第2情報が符号化された後、固定の確率を用いる算術符号化であるバイパス算術符号化によって、第1領域に対するSAO処理の情報であり第1情報とも第2情報とも異なる情報である他の情報を符号化するバイパス算術符号化ステップ(S512)とを含む。

Description

画像符号化方法、画像復号方法、画像符号化装置、画像復号装置および画像符号化復号装置
 本発明は、算術符号化を用いる画像符号化方法に関する。
 算術符号化を用いる画像符号化方法に関して、非特許文献1および非特許文献2に記載の技術がある。
ISO/IEC 14496-10「MPEG-4 Part 10 Advanced Video Coding」 Frank Bossen、「Common test conditions and software reference configurations」、JCTVC-H1100、Joint Collaborative Team on Video Coding(JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 8th Meeting、San Jose、CA、USA、1-10 February、2012、http://phenix.it-sudparis.eu/jct/doc_end_user/documents/8_San%20Jose/wg11/JCTVC-H1100-v1.zip
 しかしながら、符号化の処理効率が低い場合、符号化において発生する処理遅延を抑制することは困難である。
 そこで、本発明は、高い処理効率で符号化を行うことができる画像符号化方法を提供する。
 本発明の一態様に係る画像符号化方法は、可変の確率を用いる算術符号化であるコンテキスト算術符号化によって、(i)画素値のオフセット処理であるSAO(サンプル適応オフセット)処理を画像の第1領域に対して行うか否かを示す第1情報、および、(ii)前記第1領域に対するSAO処理に前記第1領域とは別の領域に対するSAO処理の情報を用いるか否かを示す第2情報を連続して符号化するコンテキスト算術符号化ステップと、前記第1情報および前記第2情報が符号化された後、固定の確率を用いる算術符号化であるバイパス算術符号化によって、前記第1領域に対するSAO処理の情報であり前記第1情報とも前記第2情報とも異なる情報である他の情報を符号化するバイパス算術符号化ステップとを含む。
 なお、これらの包括的または具体的な態様は、システム、装置、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なCD-ROMなどの非一時的な記録媒体で実現されてもよく、システム、装置、方法、集積回路、コンピュータプログラムおよび記録媒体の任意な組み合わせで実現されてもよい。
 本発明に係る画像符号化方法は、高い処理効率で符号化を行うことができる。
図1は、実施の形態1に係る画像符号化装置の構成の一例を示すブロック図である。 図2は、実施の形態1に係る画像復号装置の構成の一例を示すブロック図である。 図3は、実施の形態1に係るエッジオフセットの一例を示す模式図である。 図4は、実施の形態1に係るエッジオフセットのカテゴリを示す模式図である。 図5は、実施の形態1に係るエッジオフセットのタイプを示す模式図である。 図6は、実施の形態1に係るバンドオフセットの一例を示す模式図である。 図7は、実施の形態1に係るバンドオフセットのカテゴリを示す模式図である。 図8は、実施の形態1に係るバンドオフセットの符号化対象情報を示す模式図である。 図9Aは、実施の形態1に係る領域の分割手順の一例を示す模式図である。 図9Bは、実施の形態1に係る領域の分割結果の一例を示す模式図である。 図10は、実施の形態1に係る画像符号化装置におけるループフィルタリング部の構成の一例を示すブロック図である。 図11は、実施の形態1に係る画像復号装置におけるループフィルタリング部の構成の一例を示すブロック図である。 図12は、実施の形態1に係る画像符号化装置におけるループフィルタリング部の動作の一例を示すフローチャートである。 図13は、実施の形態1に係る画像復号装置におけるループフィルタリング部の動作の一例を示すフローチャートである。 図14は、実施の形態1に係る画素分類方法を示すインデックス番号へのビット割り当ての一例を示す模式図である。 図15は、実施の形態1に係る符号化ストリームの一例を示す模式図である。 図16Aは、実施の形態1に係るAPS内のシンタックス(aps_sao_param)の一例を示す模式図である。 図16Bは、実施の形態1に係るAPS内のシンタックス(sao_unit_vlc)の一例を示す模式図である。 図16Cは、実施の形態1に係るAPS内のシンタックス(sao_offset_vlc)の一例を示す模式図である。 図17Aは、実施の形態1に係るスライスデータ内のシンタックス(slice_data)の一例を示す模式図である。 図17Bは、実施の形態1に係るスライスデータ内のシンタックス(sao_unit_cabac)の一例を示す模式図である。 図17Cは、実施の形態1に係るスライスデータ内のシンタックス(sao_offset_cabac)の一例を示す模式図である。 図18は、実施の形態1に係るオフセット情報を共用する領域の一例を示す模式図である。 図19は、実施の形態1に係る画素分類方法を示すインデックス番号の符号化の一例を示すフローチャートである。 図20は、実施の形態1に係る画素分類方法を示すインデックス番号の復号の一例を示すフローチャートである。 図21は、実施の形態2に係る画像符号化装置におけるループフィルタリング部の構成の一例を示すブロック図である。 図22は、実施の形態2に係る画像復号装置におけるループフィルタリング部の構成の一例を示すブロック図である。 図23は、実施の形態2に係る画像符号化装置におけるループフィルタリング部の動作の一例を示すフローチャートである。 図24は、実施の形態2に係る画像復号装置におけるループフィルタリング部の動作の一例を示すフローチャートである。 図25は、実施の形態2に係る画素分類方法を示すインデックス番号へのビット割り当ての一例を示す模式図である。 図26は、実施の形態2に係る画素分類方法を示すインデックス番号へのビット割り当ての別の例を示す模式図である。 図27Aは、実施の形態2に係るAPS内のシンタックス(sao_unit_vlc)の一例を示す模式図である。 図27Bは、実施の形態2に係るAPS内のシンタックス(sao_offset_vlc)の一例を示す模式図である。 図27Cは、実施の形態2に係るAPS内のオフセット情報へのコンテキストインデックスの割り当て例を示す模式図である。 図27Dは、実施の形態2に係るAPS内のオフセット情報の符号化の一例を示すフローチャートである。 図27Eは、実施の形態2に係るAPS内のオフセット情報の復号の一例を示すフローチャートである。 図28Aは、実施の形態2に係るスライスデータ内のシンタックス(sao_unit_cabac)の一例を示す模式図である。 図28Bは、実施の形態2に係るスライスデータ内のシンタックス(sao_offset_cabac)の一例を示す模式図である。 図28Cは、実施の形態2に係るスライスデータ内のオフセット情報へのコンテキストインデックスの割り当て例を示す模式図である。 図28Dは、実施の形態2に係るスライスデータ内のオフセット情報の符号化の一例を示すフローチャートである。 図28Eは、実施の形態2に係るスライスデータ内のオフセット情報の復号の一例を示すフローチャートである。 図29は、実施の形態2に係る画素分類方法を示すインデックス番号の符号化の一例を示すフローチャートである。 図30は、実施の形態2に係る画素分類方法を示すインデックス番号の復号の一例を示すフローチャートである。 図31Aは、実施の形態3に係るオフセット情報へのコンテキストインデックスの割り当て例を示す模式図である。 図31Bは、実施の形態3に係る画像符号化装置および画像復号装置の客観性能を示す図である。 図32は、実施の形態3に係るオフセット情報符号化部の構成の一例を示すブロック図である。 図33は、実施の形態3に係るオフセット情報復号部の構成の一例を示すブロック図である。 図34は、実施の形態3に係るオフセット情報符号化部の動作の一例を示すフローチャートである。 図35は、実施の形態3に係るオフセット情報復号部の動作の一例を示すフローチャートである。 図36は、実施の形態3に係る符号化の特徴の一例を示すフローチャートである。 図37は、実施の形態3に係る復号の特徴の一例を示すフローチャートである。 図38は、コンテンツ配信サービスを実現するコンテンツ供給システムの全体構成図である。 図39は、デジタル放送用システムの全体構成図である。 図40は、テレビの構成例を示すブロック図である。 図41は、光ディスクである記録メディアに情報の読み書きを行う情報再生/記録部の構成例を示すブロック図である。 図42は、光ディスクである記録メディアの構造例を示す図である。 図43Aは、携帯電話の一例を示す図である。 図43Bは、携帯電話の構成例を示すブロック図である。 図44は、多重化データの構成を示す図である。 図45は、各ストリームが多重化データにおいてどのように多重化されているかを模式的に示す図である。 図46は、PESパケット列に、ビデオストリームがどのように格納されるかを更に詳しく示した図である。 図47は、多重化データにおけるTSパケットとソースパケットの構造を示す図である。 図48は、PMTのデータ構成を示す図である。 図49は、多重化データ情報の内部構成を示す図である。 図50は、ストリーム属性情報の内部構成を示す図である。 図51は、映像データを識別するステップを示す図である。 図52は、各実施の形態の動画像符号化方法および動画像復号化方法を実現する集積回路の構成例を示すブロック図である。 図53は、駆動周波数を切り替える構成を示す図である。 図54は、映像データを識別し、駆動周波数を切り替えるステップを示す図である。 図55は、映像データの規格と駆動周波数を対応づけたルックアップテーブルの一例を示す図である。 図56Aは、信号処理部のモジュールを共有化する構成の一例を示す図である。 図56Bは、信号処理部のモジュールを共有化する構成の他の一例を示す図である。
 (本発明の基礎となった知見)
 本発明者は、「背景技術」の欄において記載した、算術符号化を用いる画像符号化方法に関し、課題を見出した。以下に具体的に説明する。
 H.26xと称されるITU-T規格、および、MPEG-xと称されるISO/IEC規格に代表される画像符号化方式に係る画像符号化装置は、ピクチャを予め定められた単位に分割し、その単位で符号化を行う。例えば、H.264/MPEG-4 AVC方式(非特許文献1参照)に係る画像符号化装置は、水平16画素および垂直16画素のマクロブロックと呼ばれる単位で処理を行う。
 画像符号化装置は、動き補償を行う場合、マクロブロックをサブブロック(最小で水平4画素および垂直4画素)に分割する。そして、画像符号化装置は、サブブロック毎に異なる動きベクトルを用いて動き補償を行い、原信号と予測信号との差分信号を周波数変換し、差分信号の情報を低周波数領域に集め、量子化をすることで情報を圧縮することができる。
 差分信号の情報を低周波数領域に集めるDCT等の直交変換を用いてブロック単位でピクチャを符号化するための方法では、ブロックの境界にブロック歪みと呼ばれる格子状の歪みが見られることが知られている。画像符号化装置は、デブロッキングフィルタ処理により、ブロック歪みを低減することができる。
 しかしながら、上記のデブロッキングフィルタのようなブロック境界のみを処理する方式では、ブロック歪み以外の符号化劣化を低減することが困難である。
 そこで、本発明の一態様に係る画像符号化方法は、可変の確率を用いる算術符号化であるコンテキスト算術符号化によって、(i)画素値のオフセット処理であるSAO(サンプル適応オフセット)処理を画像の第1領域に対して行うか否かを示す第1情報、および、(ii)前記第1領域に対するSAO処理に前記第1領域とは別の領域に対するSAO処理の情報を用いるか否かを示す第2情報を連続して符号化するコンテキスト算術符号化ステップと、前記第1情報および前記第2情報が符号化された後、固定の確率を用いる算術符号化であるバイパス算術符号化によって、前記第1領域に対するSAO処理の情報であり前記第1情報とも前記第2情報とも異なる情報である他の情報を符号化するバイパス算術符号化ステップとを含む。
 これにより、画質の向上のためのSAO処理の情報に関して、コンテキスト算術符号化が連続して行われる。すなわち、コンテキスト算術符号化およびバイパス算術符号化の頻繁な切り替えが抑制され、同種の処理が連続して行われる。したがって、処理効率が向上する。
 例えば、前記バイパス算術符号化ステップでは、前記第1領域に対するSAO処理がエッジに応じて行われるエッジオフセット処理であるか画素値に応じて行われるバンドオフセット処理であるかを示す第3情報、および、オフセット値の絶対値を示す第4情報を含む前記他の情報を符号化してもよい。
 これにより、コンテキスト算術符号化の後、様々な情報がバイパス算術符号化で符号化される。すなわち、同種の処理がまとめて行われる。したがって、処理効率が向上する。
 また、例えば、前記バイパス算術符号化ステップでは、前記第1領域に対するSAO処理がバンドオフセット処理である場合、前記オフセット値の正負を示す第5情報、および、前記オフセット値の適用範囲を示す第6情報を含む前記他の情報を符号化してもよい。
 これにより、コンテキスト算術符号化の後、状況に応じてさらに様々な情報がバイパス算術符号化で符号化される。したがって、処理効率が向上する。
 また、例えば、前記コンテキスト算術符号化ステップでは、前記第1領域に対するSAO処理に前記第1領域の右に隣接する右領域に対するSAO処理の情報を用いるか否かを示す情報、および、前記第1領域に対するSAO処理に前記第1領域の上に隣接する上領域に対するSAO処理の情報を用いるか否かを示す情報のうち少なくとも1つを含む前記第2情報を符号化してもよい。
 これにより、連続して行われるコンテキスト算術符号化において、上または左からの流用を示す情報が適切に符号化される。
 また、本発明の一態様に係る画像復号方法は、可変の確率を用いる算術復号であるコンテキスト算術復号によって、(i)画素値のオフセット処理であるSAO(サンプル適応オフセット)処理を画像の第1領域に対して行うか否かを示す第1情報、および、(ii)前記第1領域に対するSAO処理に前記第1領域とは別の領域に対するSAO処理の情報を用いるか否かを示す第2情報を連続して復号するコンテキスト算術復号ステップと、前記第1情報および前記第2情報が復号された後、固定の確率を用いる算術復号であるバイパス算術復号によって、前記第1領域に対するSAO処理の情報であり前記第1情報とも前記第2情報とも異なる情報である他の情報を復号するバイパス算術復号ステップとを含む画像復号方法でもよい。
 これにより、画質の向上のためのSAO処理の情報に関して、コンテキスト算術復号が連続して行われる。すなわち、コンテキスト算術復号およびバイパス算術復号の頻繁な切り替えが抑制され、同種の処理が連続して行われる。したがって、処理効率が向上する。
 例えば、前記バイパス算術復号ステップでは、前記第1領域に対するSAO処理がエッジに応じて行われるエッジオフセット処理であるか画素値に応じて行われるバンドオフセット処理であるかを示す第3情報、および、オフセット値の絶対値を示す第4情報を含む前記他の情報を復号してもよい。
 これにより、コンテキスト算術復号の後、様々な情報がバイパス算術復号で復号される。すなわち、同種の処理がまとめて行われる。したがって、処理効率が向上する。
 また、例えば、前記バイパス算術復号ステップでは、前記第1領域に対するSAO処理がバンドオフセット処理である場合、前記オフセット値の正負を示す第5情報、および、前記オフセット値の適用範囲を示す第6情報を含む前記他の情報を復号してもよい。
 これにより、コンテキスト算術復号の後、状況に応じてさらに様々な情報がバイパス算術復号で復号される。したがって、処理効率が向上する。
 また、例えば、前記コンテキスト算術復号ステップでは、前記第1領域に対するSAO処理に前記第1領域の右に隣接する右領域に対するSAO処理の情報を用いるか否かを示す情報、および、前記第1領域に対するSAO処理に前記第1領域の上に隣接する上領域に対するSAO処理の情報を用いるか否かを示す情報のうち少なくとも1つを含む前記第2情報を復号してもよい。
 これにより、連続して行われるコンテキスト算術復号において、上または左からの流用を示す情報が適切に復号される。
 また、これらの包括的または具体的な態様は、システム、装置、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なCD-ROMなどの非一時的な記録媒体で実現されてもよく、システム、装置、方法、集積回路、コンピュータプログラムまたは記録媒体の任意な組み合わせで実現されてもよい。
 以下、実施の形態について、図面を用いて詳細に説明する。なお、以下で説明する実施の形態は、いずれも包括的または具体的な例を示す。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置および接続形態、ステップ、ステップの順序などは、一例であり、本発明を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。
 また、下記ではcodingはencodingの意味で使用する場合もある。
 (実施の形態1)
 本実施の形態に係る画像符号化装置の構成を図1に示す。図1に示された画像符号化装置100は、制御部110および符号化部120を備える。符号化部120は、減算部121、周波数変換部122、量子化部123、エントロピー符号化部124、逆量子化部125、逆周波数変換部126、加算部127、ループフィルタリング部128、記憶部129、面内予測部130、動き補償部131、動き検出部132およびスイッチ133を含む。
 符号化部120は、画像141をブロック毎に符号化して、符号化ストリーム142を生成する。その際、符号化部120の減算部121は、画像141の複数の画素値で構成される画素ブロックから、予測画像の複数の画素値で構成される画素ブロックを減算する。周波数変換部122は、減算により得られた画素ブロックを複数の周波数係数で構成される係数ブロックに変換する。量子化部123は、周波数変換部122により得られた係数ブロックを量子化する。
 一方、動き検出部132は、画像141の画素ブロックを用いて動きベクトルを検出する。動き補償部131は、記憶部129の参照画像、および、動き検出部132により検出された動きベクトルを用いて、面間予測(インター予測)を行う。面内予測部130は、面内予測モードに従い、加算部127で得られた画素ブロックを用いて、面内予測(イントラ予測)を行う。スイッチ133は、面内予測または面間予測により得られた予測画像の画素ブロックを減算部121および加算部127に入力する。
 そして、エントロピー符号化部124は、ブロックのパーティション情報、予測の種別、動きベクトル、予測モード(面内予測モード)、量子化パラメータ、および、量子化された係数ブロック等に対して、エントロピー符号化を施すことにより、符号化ストリーム142を生成する。
 また、逆量子化部125は、量子化された係数ブロックを逆量子化する。そして、逆周波数変換部126は、逆量子化された係数ブロックを画素ブロックに変換する。そして、加算部127は、逆周波数変換部126により得られた画素ブロックに、予測画像の画素ブロックを加算する。ループフィルタリング部128は、加算部127で得られた画素ブロックから歪みを抑制し、画素ブロックを参照画像として記憶部129に格納する。
 また、制御部110は、符号化部120を制御する。
 画像符号化装置100は、上記の動作によって、画像141を符号化する。そして、画像符号化装置100は、周波数変換、量子化、面内予測、面間予測、エントロピー符号化およびループフィルタリング等の様々な処理によって、符号化ストリーム142のデータ量を低減させる。
 図1に示された画像符号化装置100に対応する画像復号装置200の構成を図2に示す。図2に示された画像復号装置200は、制御部210および復号部220を備える。復号部220は、エントロピー復号部224、逆量子化部225、逆周波数変換部226、加算部227、ループフィルタリング部228、記憶部229、面内予測部230、動き補償部231およびスイッチ233を含む。
 復号部220は、符号化ストリーム242に含まれる画像241をブロック毎に復号する。その際、復号部220のエントロピー復号部224は、符号化ストリーム242に対して、エントロピー復号を施すことにより、ブロックのパーティション情報、予測の種別、動きベクトル、面内予測モード、量子化パラメータ、および、量子化された係数ブロック等を取得する。
 そして、制御部210は、復号部220の動作を制御する。
 復号部220の逆量子化部225は、量子化された係数ブロックを逆量子化する。逆周波数変換部226は、逆量子化された係数ブロックを画素ブロックに変換する。
 加算部227は、逆周波数変換部226により得られた画素ブロックに予測画像の画素ブロックを加算する。ループフィルタリング部228は、加算部227により得られた画素ブロックから歪みを抑制する。その後、ループフィルタリング部228は、画素ブロックで構成される参照画像を記憶部229に格納する。また、ループフィルタリング部228は、画素ブロックで構成される画像241を出力する。
 予測の種別が面内予測である場合、面内予測部230が、面内予測モードに従い、加算部227で得られた画素ブロックを用いて面内予測を行う。予測の種別が面間予測である場合、動き補償部231が、動きベクトル、および、記憶部229の参照画像を用いて、面間予測を行う。スイッチ233は、面内予測または面間予測により得られた予測画像の画素ブロックを加算部227に入力する。
 画像復号装置200は、上記のように、画像符号化装置100に対応する動作によって、符号化ストリーム242に含まれる画像241をブロック毎に復号する。
 ここで、ループフィルタリング処理について、さらに詳しく説明する。ループフィルタリング処理は、再構成信号の符号化劣化を低減するための処理であり、H.264/MPEG-4 AVC方式(非特許文献1参照)では、マクロブロック境界に発生するブロック状の歪みを低減するデブロッキングフィルタ処理が行われる。
 ただし、マクロブロック内に生じる符号化劣化については、デブロッキングフィルタ処理では解消されない。そのため、本実施の形態では、符号化劣化を低減するためのオフセット処理が行われる。オフセット処理は、再構成信号の処理対象ブロック内に含まれる画素にオフセット値を加算することにより、原信号に対する歪みを軽減する。
 また、オフセット処理は、処理対象ブロック内の画素を複数カテゴリに分類し、カテゴリ毎に共通のオフセット値を使用する。画素分類方法には、分類対象画素とその隣接画素との比較により行われるエッジオフセットの画素分類方法と、分類対象画素の画素値により行われるバンドオフセットの画素分類方法とがある。エッジオフセットは、エッジに応じて行われるオフセットであり、バンドオフセットは、画素値に応じて行われるオフセットである。
 以下では、エッジオフセットの画素分類方法を用いることを、画素分類方法がエッジオフセットである、あるいは、画素分類方法にエッジオフセットを用いると表現する場合がある。また、同様に、バンドオフセットの画素分類方法を用いることを、画素分類方法がバンドオフセットである、あるいは、画素分類方法にバンドオフセットを用いると表現する場合がある。
 図3は、エッジオフセットによる画素分類方法の例を示した模式図である。エッジオフセットでは、分類対象画素cとその左右の隣接画素c1、c2との大小関係により分類を行う。
 図4は、エッジオフセットにより処理対象ブロックを5つのカテゴリに分類する例を示した模式図である。例えば、cの画素値がc1の画素値よりも大きく、c2の画素値と等しい場合、対象画素はカテゴリ3に分類され、カテゴリ3に割り当てられているオフセット値Offset[3]が加算される。
 また、図5に示すように、エッジオフセットにおいて、分類対象画素と比較される画素は、左右隣接画素(EO(0))、上下隣接画素(EO(1))、斜め隣接画素(EO(2)あるいはEO(3))、あるいはそれらの組合せ(EO(4)あるいはEO(5))などである。
 図6は、バンドオフセットによる画素分類方法の例を示した模式図である。ここで、処理対象画素値の取り得る階調が均等にM分割されている。Mは例えば32である。分割された階調区分がカテゴリとなる。処理対象画素は、その画素値が含まれるカテゴリに分類される。
 図7は、バンドオフセットにより処理対象ブロックを16のクラスに分類した例を示した模式図である。例えば、cの画素値が、R9以上R10未満の場合、処理対象画素はカテゴリ9に分類され、カテゴリ9に割り当てられているオフセット値Offset[9]が加算される。
 また、全てのカテゴリに対してオフセット値を割り当てる必要はなく、図8に示すように、画像符号化装置100は、オフセット効果の高いカテゴリに対するオフセット値のみを符号化できる。その際、画像符号化装置100は、符号化したオフセット値のカテゴリを示すカテゴリインデックス番号も合わせて符号化する。
 また、SAO(サンプル適応オフセット:Sample Adaptive Offset)は、図9Aに示すように、階層的にブロックを分割することで得られる処理対象領域単位に、最適な画素分類方法およびオフセット値を決定する。分割パターンの一例を図9Bに示す。
 図10は、本実施の形態に係る画像符号化装置100におけるループフィルタリング部128の構成の一例を示すブロック図である。
 ループフィルタリング部128は、信号取得部151、オフセット情報算出部152、オフセット処理部153、オフセット情報符号化部154、および、信号出力部155を含む。
 信号取得部151は、再構成済みの処理対象領域の画素信号を取得する。
 オフセット情報算出部152は、オフセット処理に使用する分割パターン、画素分類方法およびオフセット値などのオフセット情報を算出する。
 オフセット処理部153は、オフセット情報を用いて、処理対象領域内の画素をカテゴリに分類し、カテゴリ毎にオフセット処理を行う。
 オフセット情報符号化部154は、オフセット情報を図1に示すエントロピー符号化部124へ出力する。なお、オフセット情報符号化部154が、オフセット情報を符号化してもよい。また、オフセット情報符号化部154は、エントロピー符号化部124に含まれてもよい。
 信号出力部155は、オフセット処理が行われた処理対象領域の画素信号を出力する。
 図11は、本実施の形態に係る画像復号装置200におけるループフィルタリング部228の構成の一例を示すブロック図である。
 ループフィルタリング部228は、信号取得部251、オフセット情報復号部252、オフセット処理部253、および、信号出力部254を含む。
 信号取得部251は、再構成済みの処理対象領域の画素信号を取得する。
 オフセット情報復号部252は、オフセット処理に使用する分割パターン、画素分類方法およびオフセット値などのオフセット情報を取得する。なお、オフセット情報復号部252が、オフセット情報を復号してもよい。また、オフセット情報復号部252は、エントロピー復号部224に含まれてもよい。
 オフセット処理部253は、オフセット情報を用いて、処理対象領域内の画素をカテゴリに分類し、カテゴリ毎にオフセット処理を行う。
 信号出力部254は、オフセット処理が行われた処理対象領域の画素信号を出力する。
 図12は、主に、図1に示された画像符号化装置100のうち、図10に示されたループフィルタリング部128の動作を示すフローチャートである。
 まず、信号取得部151は、加算部127から再構成済みの処理対象領域の画素信号を取得する(S151)。次に、オフセット情報算出部152は、オフセット処理に使用する分割パターン、画素分類方法およびオフセット値などのオフセット情報を算出する(S152)。次に、オフセット処理部153は、オフセット情報に基づき、領域を分割し、分割領域の画素をカテゴリに分類し、カテゴリ毎にオフセット値を加算する(S153)。
 次に、オフセット情報符号化部154は、分割パターン、画素分類方法、カテゴリインデックス番号およびオフセット値などのオフセット情報をエントロピー符号化部124へ出力する。エントロピー符号化部124はオフセット情報を符号化して、符号化されたオフセット情報を符号化ストリームへ挿入する(S154)。なお、オフセット情報符号化部154がオフセット情報を符号化して、符号化されたオフセット情報を符号化ストリームへ挿入してもよい。
 次に、信号出力部155は、オフセット済みの処理対象領域の画素信号を記憶部129へ出力する(S155)。
 図13は、主に、図2に示された画像復号装置200のうち、図11に示されたループフィルタリング部228の動作を示すフローチャートである。
 まず、信号取得部251は、加算部227から再構成済みの処理対象領域の画素信号を取得する(S251)。
 次に、エントロピー復号部224は、符号化ストリームから分割パターン、画素分類方法、カテゴリインデックス番号およびオフセット値などのオフセット情報を復号し、オフセット情報復号部252は、復号されたオフセット情報を取得する(S252)。なお、オフセット情報復号部252が、符号化ストリームからオフセット情報を復号してもよい。
 次に、オフセット処理部253は、オフセット情報に基づき、領域を分割し、分割領域の画素をカテゴリに分類し、カテゴリ毎にオフセット値を加算する(S253)。次に、信号出力部254は、オフセット済みの処理対象領域の画素信号を記憶部229へ出力する(S254)。
 ここで、オフセット情報符号化部154およびオフセット情報復号部252におけるオフセット情報の符号化および復号について、さらに詳しく説明する。オフセット処理における画素分類方法には、一例として、エッジオフセットにEO(0)、EO(1)、EO(2)およびEO(3)、バンドオフセットにBO(0)の5種類がある。
 上記の各画素分類方法を示すインデックス番号の割り当ての一例を図14に示す。図14では、小さな値は小さなビット長になり、大きな値は大きなビット長になるように、インデックス番号が2値化され、最大ビット長は5ビットに指定されている。しかし、割り当て方法はこれに限定されない。例えば、最大ビット長が指定されずに全てのインデックス番号で最後尾が0になるようにビットが割り当てられてもよい。
 また、処理対象ブロックに対して、オフセット処理を行わないことを示す情報がインデックス番号の0番に割り当てられている。
 実施の形態1に係る画像符号化装置100は、動画像を符号化することで符号化ストリームを生成する。符号化ストリームは、図15に示すように、SPS(Sequence Parameter Set)およびPPS(Picture Parameter Set)などのヘッダ部分と、符号化された画像データであるピクチャデータとを含んでいる。
 ピクチャデータは、さらに、スライスヘッダ(SH)と、スライスデータとを含んでいる。スライスデータは、スライスに含まれる符号化された画像データを含んでいる。スライスデータは、さらに、ブロックヘッダ(BH)と、ブロックデータとを含んでいる。ブロックデータは、ブロックに含まれる符号化された画像データを含んでいる。
 また、符号化ストリームは、上記とは別に1つあるいは複数のスライスで使用するパラメータを格納したAPS(Adaptation Parameter Set)を含んでいる。APSにはインデックス番号aps_idxが割り当てられており、画像符号化装置100は、使用するAPSを呼び出すためのインデックス番号aps_idxをスライスヘッダに挿入することができる。
 オフセット情報は、オフセット情報符号化部154(またはエントロピー符号化部124)において、符号化され、SPS、PPS、SH、スライスデータ、BH、ブロックデータおよびAPSのいずれかに挿入される。また、オフセット情報は、オフセット情報復号部252(またはエントロピー復号部224)において、SPS、PPS、SH、スライスデータ、BH、ブロックデータおよびAPSのいずれかから取得され、復号される。
 オフセット情報をAPSに挿入する例を図16A、図16Bおよび図16Cに示す。画像符号化装置100は、スライス内にある全てのブロックのオフセット情報を一括してAPSに挿入することができ、画像復号装置200は、APSからオフセット情報を一括して取得できる。
 また、オフセット情報をスライスデータに挿入する例を図17A、図17Bおよび図17Cに示す。画像符号化装置100は、オフセット情報をスライスデータにおけるブロック単位に挿入でき、画像復号装置200は、オフセット情報をスライスデータにおけるブロック単位に取得できる。
 本実施の形態において、画像符号化装置100(画像復号装置200)は、図18に示すように複数の処理対象領域でオフセット情報を共用することができる。図18の実線はオフセット処理の処理対象領域区分の境界であり、点線は、共通のオフセット情報を使用する領域区分の境界である。ここで、画像符号化装置100は、符号化ストリームへ、オフセット値などを示すオフセット情報ではなく、オフセット値などを共用することを示す情報を挿入することで、オフセット処理によるビット量の増加を抑制することができる。
 例えば、画像符号化装置100は、図16Aのsao_one_luma_unit_flag、sao_one_cr_unit_flagおよびsao_one_cb_unit_flagのように、スライス内の全てのブロックでオフセット情報を共用することを示すフラグを符号化してもよい。また、画像符号化装置100は、図16Aのsao_repeat_row_flagのように1ライン分のオフセット情報を1つ上のラインからコピーすることを示すフラグを符号化してもよい。
 また、画像符号化装置100は、図16BのsaoRunおよびsao_run_diffのようにオフセット情報を共有する処理対象領域の数を示すパラメータを符号化してもよい。また、画像符号化装置100は、図16Bおよび図17Bのように、左あるいは上の領域からオフセット情報をコピーすることを示すsao_merge_left_flagあるいはsao_merge_up_flagを符号化してもよい。
 図19は、オフセット情報符号化部154がオフセット情報のうち画素分類方法を示すインデックス番号を符号化する動作を示すフローチャートである。
 まず、オフセット情報符号化部154は、オフセット処理を行ったか否かを判定する(S1541)。オフセット情報算出部152は、分割パターン、画素分類方法、カテゴリインデックス番号およびオフセット値などのオフセット情報を算出する。オフセット情報算出部152は、符号化劣化の補正量に対して、オフセット情報に要するビット量が大きくなった場合、オフセット処理を行わないと判定する。この場合、オフセット処理部153は、オフセット処理を行わない。
 ここでは、オフセット情報符号化部154は、オフセット情報算出部152またはオフセット処理部153から、オフセット処理を行ったか否かに関する情報を取得する。オフセット処理が行われなかった場合(S1541でNo)、オフセット情報符号化部154は、画素分類方法を示すインデックス番号を0として符号化する(S1542)。
 オフセット処理が行われた場合(S1541でYes)、オフセット情報符号化部154は、画素分類方法がエッジオフセットEO(0)であるか否かを判定する(S1543)。画素分類方法がエッジオフセットEO(0)である場合(S1543でYes)、オフセット情報符号化部154は、画素分類方法を示すインデックス番号を1として符号化する(S1544)。
 画素分類方法がエッジオフセットEO(0)でない場合(S1543でNo)、オフセット情報符号化部154は、画素分類方法がエッジオフセットEO(1)であるか否かを判定する(S1545)。画素分類方法がエッジオフセットEO(1)である場合(S1545でYes)、オフセット情報符号化部154は、画素分類方法を示すインデックス番号を2として符号化する(S1546)。
 画素分類方法がエッジオフセットEO(1)でない場合(S1545でNo)、オフセット情報符号化部154は、画素分類方法がエッジオフセットEO(2)であるか否かを判定する(S1547)。画素分類方法がエッジオフセットEO(2)である場合(S1547でYes)、オフセット情報符号化部154は、画素分類方法を示すインデックス番号を3として符号化する(S1548)。
 画素分類方法がエッジオフセットEO(2)でない場合(S1547でNo)、オフセット情報符号化部154は、画素分類方法がエッジオフセットEO(3)であるか否かを判定する(S1549)。画素分類方法がエッジオフセットEO(3)である場合(S1549でYes)、オフセット情報符号化部154は、画素分類方法を示すインデックス番号を4として符号化する(S1550)。
 画素分類方法がエッジオフセットEO(3)でない場合(S1549でNo)、オフセット情報符号化部154は、画素分類方法を示すインデックス番号を5として符号化する(S1551)。
 図20は、オフセット情報復号部252がオフセット情報のうち画素分類方法を示すインデックス番号を復号する動作、および、オフセット処理部253がオフセット処理を行う動作を示すフローチャートである。
 まず、オフセット処理部253は、オフセット情報復号部252が復号したインデックス番号が0であるか否かを判定する(S2521)。インデックス番号が0である場合(S2521でYes)、オフセット処理部253はオフセット処理を行わない(S2522)。
 インデックス番号が0でない場合(S2521でNo)、オフセット処理部253は、オフセット情報復号部252が復号したインデックス番号が1であるか否かを判定する(S2523)。インデックス番号が1である場合(S2523でYes)、オフセット処理部253は、エッジオフセットEO(0)を行う(S2524)。
 インデックス番号が1でない場合(S2523でNo)、オフセット処理部253は、オフセット情報復号部252が復号したインデックス番号が2であるか否かを判定する(S2525)。インデックス番号が2である場合(S2525でYes)、オフセット処理部253は、エッジオフセットEO(1)を行う(S2526)。
 インデックス番号が2でない場合(S2525でNo)、オフセット処理部253は、オフセット情報復号部252が復号したインデックス番号が3であるか否かを判定する(S2527)。インデックス番号が3である場合(S2527でYes)、オフセット処理部253は、エッジオフセットEO(2)を行う(S2528)。
 インデックス番号が3でない場合(S2527でNo)、オフセット処理部253は、オフセット情報復号部252が復号したインデックス番号が4であるか否かを判定する(S2529)。インデックス番号が4である場合(S2529でYes)、オフセット処理部253は、エッジオフセットEO(3)を行う(S2530)。
 インデックス番号が4でない場合(S2529でNo)、オフセット処理部253は、バンドオフセットBO(0)を行う(S2531)。
 以上により、画像符号化装置100および画像復号装置200は、再構成済みの画像信号に、原信号と再構成済みの画像信号との差を補うためのオフセット値を加算する。これにより、原信号に近い再構成信号を生成することが可能となる。
 (実施の形態2)
 実施の形態1では、オフセット情報を複数の領域で共用することが可能である。しかし、低処理遅延あるいは低メモリ量を考慮すると、共用対象領域は近傍の領域に限定される。例えば、共用対象領域を左と上に隣接する領域のみに限定すれば、処理遅延は低減する。また、共用対象領域を左に隣接する領域のみに限定すれば、処理済みの領域のオフセット情報を格納するためのメモリ量が抑制される。
 一方、共用対象領域の限定によって、大きな領域でオフセット情報を共用することが困難になる。そのため、オフセット情報そのものの符号化の頻度が上昇し、ビット量が増加する。ここで、図16Cあるいは図17Cに示すようにバンドオフセットではパラメータとしてバンドオフセット符号化開始カテゴリsao_band_positionが符号化される。そのため、エッジオフセットよりもビット量が大きい。したがって、ビット量の増加の観点からはエッジオフセットを使用する方が有利である。
 そこで、本実施の形態に係る画像符号化装置は、エッジオフセットに対するバンドオフセットの不利を改善するため、バンドオフセットの使用時に要するビット量を削減する。なお、バンドオフセット符号化開始カテゴリsao_band_positionは、オフセット値の適用範囲を示す情報の例である。
 以下、本実施の形態に係る画像符号化装置、および、画像符号化装置に対応する画像復号装置について説明する。
 図21は、本実施の形態に係る画像符号化装置のループフィルタリング部の構成を示すブロック図である。本実施の形態に係る画像符号化装置のその他の構成は、図1に示された画像符号化装置100の構成と同様である。図22は、本実施の形態に係る画像復号装置のループフィルタリング部の構成を示すブロック図である。本実施の形態に係る画像復号装置のその他の構成は、図2に示された画像復号装置200の構成と同様である。
 図23は、図21に示されたループフィルタリング部300(画像符号化装置のループフィルタリング部)の動作を示すフローチャートである。図24は、図22に示されたループフィルタリング部400(画像復号装置のループフィルタリング部)の動作を示すフローチャートである。
 まず、図21に示されたループフィルタリング部300(画像符号化装置のループフィルタリング部)の構成および動作を説明する。ループフィルタリング部300は、信号取得部301、オフセット情報算出部302、オフセット処理部303、信号出力部304、オフセット情報符号化部305および制御部306を備える。実施の形態1との重複部分の説明を省略し、相違点について、すなわち、図21の制御部306、図21のオフセット情報符号化部305、および、図23のステップS304について説明する。
 制御部306は、画素分類方法がバンドオフセットである場合、バンドオフセットのオフセット情報のビット量が小さくなるようにオフセット情報符号化部305を制御する。
 オフセット情報符号化部305は、画素分類方法がバンドオフセットであることを示すインデックス番号の数値が小さくなるように符号化を行う。
 図23のステップS304において、オフセット情報符号化部305は、画素分類方法にインデックス番号を割り当てて、オフセット情報を符号化する。この時、オフセット情報符号化部305は、バンドオフセットBO(0)を示すインデックス番号が4つのエッジオフセットEO(0)、EO(1)、EO(2)およびEO(3)よりも小さくなるように、インデックス番号を割り当てる。そして、オフセット情報符号化部305は、符号化されたオフセット情報を符号化ストリームへ挿入する。
 次に、図22に示されたループフィルタリング部400(画像復号装置のループフィルタリング部)の構成および動作を説明する。ループフィルタリング部400は、信号取得部401、オフセット情報復号部402、オフセット処理部403、信号出力部404および制御部405を備える。実施の形態1との重複部分の説明を省略し、相違点について、すなわち、図22の制御部405、図22のオフセット情報復号部402、および、図24のステップS402について説明する。
 制御部405は、画素分類方法がバンドオフセットである場合、小さいビット量でバンドオフセットのオフセット情報が復号されるようにオフセット情報復号部402を制御する。
 オフセット情報復号部402は、数値の小さいインデックス番号を画素分類方法がバンドオフセットであることを示すインデックス番号として復号する。
 図24のステップS402において、オフセット情報復号部402は、画素分類方法にインデックス番号を割り当てて、オフセット情報を復号する。この時、オフセット情報復号部402は、バンドオフセットBO(0)を示すインデックス番号が4つのエッジオフセットEO(0)、EO(1)、EO(2)およびEO(3)よりも小さくなるように、インデックス番号を割り当てる。
 ここで、オフセット情報符号化部305およびオフセット情報復号部402におけるオフセット情報の符号化および復号について、さらに詳しく説明する。オフセット処理における画素分類方法には、実施の形態1と同様に、エッジオフセットEO(0)、EO(1)、EO(2)およびEO(3)、および、バンドオフセットBO(0)が採用される。この場合、画素分類方法を示すインデックス番号に対応する最小ビット量と最大ビット量との差は、オフセット処理をしない場合のインデックス番号0を除いて、3ビットである。
 実施の形態1では、図14のように、バンドオフセットに最大ビット量が割り当てられている。バンドオフセットのカテゴリ数が32である場合、sao_band_positionを含めて最大で8ビットおよび最小で5ビットの差が、バンドオフセットとエッジオフセットとの間で発生する。
 このため、本実施の形態では、図25のようにバンドオフセットを示すインデックス番号に対して、エッジオフセットよりも小さなビットが割り当てられる。これにより、バンドオフセットとエッジオフセットとのビット量の差は最大で4ビットおよび最小で2ビットとなり、エッジオフセットに対するバンドオフセットの不利は改善される。
 なお、図26のように、オフセット処理ON/OFFフラグ(オフセット処理フラグ)は、sao_on_flagとして、画素分類方法を示すインデックス番号sao_type_idxから独立していてもよい。
 図26では、バンドオフセットをインデックス番号の0番に割り当てている。そして、小さな値は小さなビット長になり、大きな値は大きなビット長になるように、インデックス番号が2値化され、最大ビット長は4ビットに指定されている。しかし、割り当て方法は、これに限定されない。例えば、最大ビット長が指定されずに全てのインデックス番号で最後尾が0になるようにビットが割り当てられてもよい。以降、図26のビット割り当てを前提に説明する。
 オフセット情報をAPSに挿入する例を図27Aおよび図27Bに示す。画素分類方法を示すインデックスから独立したオフセット処理ON/OFFフラグsao_on_flagが、図27Aのsao_unit_vlc内に新たに設けられている。また、図27Bのsao_offset_vlc内のsao_type_idxにおいて、バンドオフセットへ最小のビットが割り当てられる。
 図27Cは、APS内のオフセット情報のコンテキストの一例を示す図である。図27Dは、APS内のオフセット情報の符号化の一例を示すフローチャートである。図27Eは、APS内のオフセット情報の復号の一例を示すフローチャートである。
 また、オフセット情報をスライスデータに挿入する例を図28Aおよび図28Bに示す。図28Aのsao_unit_cabac内にオフセット処理ON/OFFフラグsao_on_flagが新たに設けられている。また、図28Bのsao_offset_cabac内のsao_type_idxにおいて、バンドオフセットへ最小のビットが割り当てられる。
 図28Cは、スライスデータ内のオフセット情報のコンテキストの一例を示す模式図である。図28Dは、スライスデータ内のオフセット情報の符号化の一例を示すフローチャートである。図28Eは、スライスデータ内のオフセット情報の復号の一例を示すフローチャートである。
 図29は、オフセット情報符号化部305がオフセット情報のうち画素分類方法を示すインデックス番号を符号化する動作を示すフローチャートである。
 まず、オフセット情報符号化部305は、オフセット処理を行ったか否かを判定する(S3051)。オフセット情報算出部302は、分割パターン、画素分類方法、カテゴリインデックス番号およびオフセット値などのオフセット情報を算出する。オフセット情報算出部302は、符号化劣化の補正量に対して、オフセット情報に要するビット量が大きくなった場合、オフセット処理を行わないと判定する。この場合、オフセット処理部303は、オフセット処理を行わない。
 ここでは、オフセット情報符号化部305は、オフセット情報算出部302またはオフセット処理部303から、オフセット処理を行ったか否かに関する情報を取得する。オフセット処理が行われなかった場合(S3051でNo)、オフセット情報符号化部305は、オフセット処理ON/OFFフラグを0として符号化する(S3052)。
 オフセット処理が行われた場合(S3051でYes)、オフセット情報符号化部305は、オフセット処理ON/OFFフラグを1として符号化する(S3053)。そして、オフセット情報符号化部305は、画素分類方法がバンドオフセットBO(0)であるか否かを判定する(S3054)。
 画素分類方法がバンドオフセットBO(0)である場合(S3054でYes)、オフセット情報符号化部305は、画素分類方法を示すインデックス番号を0として符号化する(S3055)。画素分類方法がバンドオフセットBO(0)でない場合(S3054でNo)、オフセット情報符号化部305は、画素分類方法がエッジオフセットEO(0)であるか否かを判定する(S3056)。
 画素分類方法がエッジオフセットEO(0)である場合(S3056でYes)、オフセット情報符号化部305は、画素分類方法を示すインデックス番号を1として符号化する(S3057)。画素分類方法がエッジオフセットEO(0)でない場合(S3056でNo)、オフセット情報符号化部305は、画素分類方法がエッジオフセットEO(1)であるか否かを判定する(S3058)。
 画素分類方法がエッジオフセットEO(1)である場合(S3058でYes)、オフセット情報符号化部305は、画素分類方法を示すインデックス番号を2として符号化する(S3059)。画素分類方法がエッジオフセットEO(1)でない場合(S3058でNo)、オフセット情報符号化部305は、画素分類方法がエッジオフセットEO(2)であるか否かを判定する(S3060)。
 画素分類方法がエッジオフセットEO(2)である場合(S3060でYes)、オフセット情報符号化部305は、画素分類方法を示すインデックス番号を3として符号化する(S3061)。画素分類方法がエッジオフセットEO(2)でない場合(S3060でNo)、オフセット情報符号化部305は、画素分類方法を示すインデックス番号を4として符号化する(S3062)。
 図30は、オフセット情報復号部402がオフセット情報のうち画素分類方法を示すインデックス番号を復号する動作、および、オフセット処理部403がオフセット処理を行う動作を示すフローチャートである。
 まず、オフセット処理部403は、オフセット情報復号部402が復号したオフセット処理ON/OFFフラグが0であるか否かを判定する(S4021)。オフセット処理ON/OFFフラグが0である場合(S4021でYes)、オフセット処理部403はオフセット処理を行わない(S4022)。
 オフセット処理ON/OFFフラグが0でない場合(S4021でNo)、オフセット情報復号部402は、インデックス番号を復号する(S4023)。そして、オフセット処理部403は、オフセット情報復号部402が復号したインデックス番号が0であるか否かを判定する(S4024)。
 インデックス番号が0である場合(S4024でYes)、オフセット処理部403は、バンドオフセットBO(0)を行う(S4025)。インデックス番号が0でない場合(S4024でNo)、オフセット処理部403は、オフセット情報復号部402が復号したインデックス番号が1であるか否かを判定する(S4026)。
 インデックス番号が1である場合(S4026でYes)、オフセット処理部403は、エッジオフセットEO(0)を行う(S4027)。インデックス番号が1でない場合(S4026でNo)、オフセット処理部403は、オフセット情報復号部402が復号したインデックス番号が2であるか否かを判定する(S4028)。
 インデックス番号が2である場合(S4028でYes)、オフセット処理部403は、エッジオフセットEO(1)を行う(S4029)。インデックス番号が2でない場合(S4028でNo)、オフセット処理部403は、オフセット情報復号部402が復号したインデックス番号が3であるか否かを判定する(S4030)。
 インデックス番号が3である場合(S4030でYes)、オフセット処理部403は、エッジオフセットEO(2)を行う(S4031)。インデックス番号が3でない場合(S4030でNo)、オフセット処理部403は、エッジオフセットEO(3)を行う(S4032)。
 以上により、画像符号化装置および画像復号装置は、バンドオフセットとエッジオフセットのオフセット情報の符号化に要するビット量の差分を小さくする。これにより、画像符号化装置および画像復号装置は、処理対象領域毎に適切なオフセット処理を行うことができる。したがって、符号化効率および主観画質が向上する。
 なお、画像符号化装置および画像復号装置は、輝度信号に対してオフセット処理を行う場合、エッジオフセットのインデックス番号に小さなビット量を割り当ててもよい。そして、画像符号化装置および画像復号装置は、色差信号に対してオフセット処理を行う場合、バンドオフセットのインデックス番号に小さなビット量を割り当ててもよい。これにより、処理される信号の特徴に適した画素分類方法が使用されやすくなる。したがって、符号化効率および主観画質がさらに向上する。
 また、画像符号化装置および画像復号装置は、周波数変換係数を参照し、低周波成分の小さい処理対象領域では、エッジオフセットのインデックス番号に小さなビット量を割り当ててもよい。そして、画像符号化装置および画像復号装置は、低周波成分の大きな処理対象領域では、バンドオフセットのインデックス番号に小さなビット量を割り当ててもよい。これにより、処理される信号の特徴に適した画素分類方法が使用されやすくなる。したがって、符号化効率および主観画質がさらに向上する。
 また、上記低周波成分の多寡の判定には、閾値が用いられてもよいし、この閾値が符号化されてもよい。
 ここで、オフセット情報符号化部305およびオフセット情報復号部402において、オフセット情報の符号化および復号を行う方法として算術符号化について説明する。算術符号化では、画像符号化装置は、まず、符号化対象信号を多値信号から2値信号(bin、0または1の信号)に変換(2値化)し、2値信号を算術符号化して符号列を生成する。算術符号化には、適応的なシンボル発生確率を用いて算術符号化するコンテキスト算術符号化(コンテキスト適応算術符号化)がある。
 コンテキスト算術符号化において、画像符号化装置は、符号化対象の信号毎にコンテキストを選択し、コンテキストに対応してシンボル発生確率を特定する。より具体的には、コンテキスト算術符号化において、画像符号化装置は、最初にコンテキストをロードし、そのコンテキストに対するシンボル発生確率に基づいて対象信号の算術符号化を行う。そして、画像符号化装置は、符号化した対象信号の値に応じてコンテキストに対応するシンボル発生確率を更新する。
 輝度信号、色差信号Cbおよび色差信号Crにおいて、オフセット処理ON/OFFフラグsao_on_flagの符号化には、共通のコンテキストが使用されてもよいし、図27Cまたは図28Cのようにそれぞれの信号でコンテキストが切り替えられてもよい。
 図28Dは、オフセット情報符号化部305が、オフセット処理ON/OFFフラグsao_on_flagを符号化しスライスデータに挿入する場合に3つのコンテキストを使用する例を示すフローチャートである。
 まず、オフセット情報符号化部305は、処理対象信号が輝度信号であるか否かを判定する(S3041)。オフセット情報符号化部305は、輝度信号の判定に、図28Aに示されるcIdxを用いる。ここでは、cIdx=0の場合、処理対象信号は輝度信号である。
 処理対象信号が輝度信号である場合(S3041でYes)、オフセット情報符号化部305は、コンテキスト1を選択し、ロードする(S3042)。処理対象信号が輝度信号でない場合(S3041でNo)、オフセット情報符号化部305は、処理対象信号が色差信号Cbであるか否かを判定する(S3043)。オフセット情報符号化部305は、色差信号Cbの判定に、輝度信号の判定(S3041)と同様、cIdxを用いる。ここでは、cIdx=1の場合、処理対象信号は色差信号Cbである。
 処理対象信号が色差信号Cbである場合(S3043でYes)、オフセット情報符号化部305は、コンテキスト2を選択し、ロードする(S3044)。処理対象信号が色差信号Cbでない場合(S3043でNo)、オフセット情報符号化部305は、コンテキスト3を選択し、ロードする(S3045)。
 そして、オフセット情報符号化部305は、選択されロードされたコンテキストを用いて、オフセット処理ON/OFFフラグsao_on_flagを符号化する(S3046)。
 なお、図27Dのフローチャートは、オフセット処理ON/OFFフラグsao_on_flagが符号化され、APSに挿入される場合の例を示しているが、上記の図28Dと同じであるため、説明を省略する。
 図28Eは、オフセット情報復号部402が、スライスデータに挿入されたオフセット処理ON/OFFフラグsao_on_flagを復号する場合に3つのコンテキストを使用する例を示すフローチャートである。
 まず、オフセット情報復号部402は、処理対象信号が輝度信号であるか否かを判定する(S4021)。オフセット情報復号部402は、輝度信号の判定に、図28Aに示されるcIdxを用いる。ここでは、cIdx=0の場合、処理対象信号は輝度信号である。
 処理対象信号が輝度信号である場合(S4021でYes)、オフセット情報復号部402は、コンテキスト1を選択し、ロードする(S4022)。処理対象信号が輝度信号でない場合(S4021でNo)、オフセット情報復号部402は、処理対象信号が色差信号Cbであるか否かを判定する(S4023)。オフセット情報復号部402は、色差信号Cbの判定に、輝度信号の判定(S4021)と同様、cIdxを用いる。ここでは、cIdx=1の場合、処理対象信号は色差信号Cbである。
 処理対象信号が色差信号Cbである場合(S4023でYes)、オフセット情報復号部402は、コンテキスト2を選択し、ロードする(S4024)。処理対象信号が色差信号Cbでない場合(S4023でNo)、オフセット情報復号部402は、コンテキスト3を選択し、ロードする(S4025)。
 そして、オフセット情報復号部402は、選択されロードされたコンテキストを用いて、オフセット処理ON/OFFフラグsao_on_flagを復号する(S4026)。
 なお、図27Eのフローチャートは、APSに挿入されたオフセット処理ON/OFFフラグsao_on_flagが復号される場合の例を示しているが、上記の図28Eと同じであるため、説明を省略する。
 以上により、画像符号化装置および画像復号装置は、輝度信号、色差信号Cbおよび色差信号Crでそれぞれ異なるコンテキストを使用することによって、各信号の特徴に応じてシンボル発生確率を割り当てることができる。そのため、画像符号化装置および画像復号装置は、オフセット処理ON/OFFフラグsao_on_flagの符号量を抑制することができる。
 なお、画像符号化装置および画像復号装置は、色差信号CbおよびCrのみコンテキストを共用することで、符号化および復号に用いられるコンテキストの数を2つ(輝度信号および色差信号)にしてもよい。
 (実施の形態3)
 実施の形態2では、画像符号化装置は、処理対象領域毎にオフセット処理を行うか否かを示す情報をオフセット処理ON/OFFフラグsao_on_flagとして画素分類方法sao_type_idxから独立してオフセット情報の先頭で符号化する。そして、画像符号化装置は、オフセット処理を行わない場合、左あるいは上の領域からオフセット情報をコピーするか否かを示すsao_merge_left_flagあるいはsao_merge_up_flagの符号化を行わない。
 これにより、ビット量を抑制することが可能である。本実施の形態に係る画像符号化装置は、さらに、各オフセット情報に対する算術符号化の統一化あるいは簡略化を行うことにより、スループットを改善できる。
 算術符号化には、実施の形態2で説明したコンテキスト算術符号化の他にバイパス算術符号化がある。コンテキスト算術符号化は、適応的なシンボル発生確率を使用する。一方、バイパス算術符号化は、シンボル発生確率を50%として算術符号化を行う。これにより、画像符号化装置は、バイパス算術符号化において、コンテキストのロードおよび更新を行わなくてもよいため、処理の高速化が可能となる。
 図31Aは、オフセット情報の各シンタックス要素に使用される算術符号化の種類の組合せの一例である。
 ここでは、オフセット情報の符号化および復号についてのシンタックスは、図28Aおよび図28Bに示された実施の形態2のシンタックスと同じである。また、オフセット処理ON/OFFフラグsao_on_flagおよび画素分類方法sao_type_idxへのビットの割り当ては、図26に示された実施の形態2における割り当てと同じである。しかし、シンタックスおよびビットの割り当ては、これに限られない。
 例えば、図28Bにおいて、if文による条件分岐数を抑制するために、オフセット値±符号sao_offset_signおよびバンドオフセット符号化開始カテゴリsao_band_positionが連続して符号化(復号)される。しかし、符号化(復号)の順序は、これに限定されない。また、図26に示された画素分類方法sao_type_idxへのビットの割り当てに関して、バンドオフセットに最大のビット量が割り当てられてもよい。
 オフセット処理ON/OFFフラグsao_on_flag、左側オフセット情報コピーフラグsao_merge_left_flag、および、上側オフセット情報コピーフラグsao_merge_up_flagのシンボル発生確率の偏りは大きい。そのため、コンテキスト算術符号化が使用される。
 一方、画素分類方法sao_type_idx、オフセット絶対値sao_offset、オフセット値±符号sao_offset_sign、および、バンドオフセット符号化開始カテゴリsao_band_positionのシンボル発生確率の偏りは小さい。そのため、バイパス算術符号化が使用される。
 なお、実施の形態2に係る画像符号化装置は、オフセット処理ON/OFFフラグsao_on_flag、および、左側オフセット情報コピーフラグsao_merge_left_flagについて、輝度信号、色差信号Cbおよび色差信号Crのそれぞれで異なるコンテキストを使用する。これにより、画像符号化装置は、符号化効率を向上させる。
 一方、上記のオフセット情報に関して、本実施の形態に係る画像符号化装置は、上側オフセット情報コピーフラグsao_merge_up_flagと同様に、輝度信号、色差信号Cbおよび色差信号Crのそれぞれでコンテキストを共用してもよい。これにより、コンテキストの数の削減、および、メモリサイズの削減が、可能である。
 図31Bは、本実施の形態に係る画像符号化装置および画像復号装置の客観性能を示す表である。図31Bは、非特許文献2に基づく指標であり、客観性能の劣化が少ないことを示している。客観性能については後述する。
 本実施の形態では、実施の形態2で説明した画像符号化装置および画像復号装置と比較して、オフセット情報符号化部305およびオフセット情報復号部402の動作が異なる。その他は実施の形態2と同様である。以降、差異について説明する。
 本実施の形態に係る画像符号化装置においてオフセット情報の符号化を行うオフセット情報符号化部307の構成を図32に示す。オフセット情報符号化部307は、算術符号化制御部3071、コンテキスト算術符号化部3072およびバイパス算術符号化部3073を含む。
 算術符号化制御部3071は、オフセット情報に応じて、コンテキスト算術符号化およびバイパス算術符号化のどちらを使用するかを切り替える。なお、算術符号化制御部3071は、図1に示された画像符号化装置100の制御部110に含まれてもよい。コンテキスト算術符号化部3072は、オフセット情報に応じて、コンテキストをロードし、符号化を行う。バイパス算術符号化部3073は、シンボル発生確率に50%を用いて、符号化を行う。
 本実施の形態に係る画像復号装置においてオフセット情報の復号を行うオフセット情報復号部406の構成を図33に示す。オフセット情報復号部406は、算術復号制御部4061、コンテキスト算術復号部4062およびバイパス算術復号部4063を含む。
 算術復号制御部4061は、オフセット情報に応じて、コンテキスト算術復号(コンテキスト適応算術復号)およびバイパス算術復号のどちらを使用するかを切り替える。なお、算術復号制御部4061は、図2に示された画像復号装置200の制御部210に含まれてもよい。コンテキスト算術復号部4062は、オフセット情報に応じて、コンテキストをロードし、復号を行う。バイパス算術復号部4063は、シンボル発生確率に50%を用いて、復号を行う。
 図34は、オフセット情報符号化部307が算術符号化によりオフセット情報を符号化する例を示すフローチャートである。
 まず、オフセット情報符号化部307で処理が開始される時点で、算術符号化制御部3071は、符号化方法としてコンテキスト算術符号化を設定する(S3070)。
 次に、コンテキスト算術符号化部3072は、オフセット処理ON/OFFフラグsao_on_flag用のコンテキストをロードし、そのコンテキストを用いて、オフセット処理ON/OFFフラグsao_on_flagを符号化する(S3071)。
 次に、算術符号化制御部3071は、オフセット処理ON/OFFフラグsao_on_flagが1であるか否かを判定する(S3072)。ここで、sao_on_flagが0であることは、処理対象領域のオフセット処理を行わないことを示し、1であることは、処理対象領域のオフセット処理を行うことを示す。
 オフセット処理ON/OFFフラグsao_on_flagが1である場合(S3072でYes)、算術符号化制御部3071は、処理対象領域がスライスまたはタイルの左端であるか否かを判定する(S3073)。オフセット情報のコピーは、同じスライスかつ同じタイルの領域からのみである。そのため、左側オフセット情報コピーフラグsao_merge_left_flagの符号化前に、上記の判定が行われる。
 処理対象領域が左端でない場合(S3073でNo)、コンテキスト算術符号化部3072は、左側オフセット情報コピーフラグsao_merge_left_flag用のコンテキストをロードする。そして、コンテキスト算術符号化部3072は、左側オフセット情報コピーフラグsao_merge_left_flagを符号化する(S3074)。
 左端の場合(S3073でYes)、または、sao_merge_left_flagの符号化(S3074)の後、算術符号化制御部3071は、sao_merge_left_flagが0であるか否かを判定する(S3075)。ここで、sao_merge_left_flagが0であることは、左の領域からオフセット情報をコピーしないことを示し、1であることは、左の領域からオフセット情報をコピーすることを示す。
 なお、sao_merge_left_flagの符号化(S3074)が行われない場合、sao_merge_left_flagの値が存在しない。この場合、sao_merge_left_flagの値は0として処理される。また、オフセット情報符号化部307は、処理を開始する時点で、sao_merge_left_flag用のメモリを確保し、初期値0を設定してもよい。
 次に、sao_merge_left_flagが0である場合(S3075でYes)、算術符号化制御部3071は、処理対象領域がスライスまたはタイルの上端であるか否かを判定する(S3076)。左端の判定(S3073)と同様に、オフセット情報のコピーは、同じスライスかつ同じタイルの領域からのみであるため、上側オフセット情報コピーフラグsao_merge_up_flagの符号化前に、上記の判定が行われる。
 処理対象領域が上端でない場合(S3076でNo)、コンテキスト算術符号化部3072は、上側オフセット情報コピーフラグsao_merge_up_flag用のコンテキストをロードする。そして、コンテキスト算術符号化部3072は、上側オフセット情報コピーフラグsao_merge_up_flagを符号化する(S3077)。
 上端の場合(S3076でYes)、または、sao_merge_up_flagの符号化(S3077)の後、算術符号化制御部3071は、sao_merge_up_flagが0であるか否かを判定する(S3078)。ここで、sao_merge_up_flagが0であることは、上の領域からオフセット情報をコピーしないことを示し、1であることは、上の領域からオフセット情報をコピーすることを示す。
 なお、sao_merge_up_flagの符号化(S3077)が行われない場合、sao_merge_up_flagの値が存在しない。この場合、sao_merge_up_flagの値は0として処理される。また、オフセット情報符号化部307は、処理を開始する時点で、sao_merge_up_flag用のメモリを確保し、初期値0を設定してもよい。
 次に、sao_merge_up_flagが0である場合(S3078でYes)、算術符号化制御部3071は、符号化方法をバイパス算術符号化に切り替える(S3079)。これにより、以降の符号化ステップは全てバイパス算術符号化を使用して行われる。
 次に、バイパス算術符号化部3073は、画素分類方法sao_type_idx、および、オフセット絶対値sao_offsetを符号化する(S3080)。ここで、本実施の形態において、複数のオフセット絶対値sao_offsetの個数は、いずれの画素分類方法でも同じ4である。しかし、バイパス算術符号化部3073は、画素分類方法毎に異なる個数のオフセット絶対値を符号化してもよい。
 次に、算術符号化制御部3071は、画素分類方法がバンドオフセットであるか否かを判定する(S3081)。ここで、算術符号化制御部3071は、判定に、画素分類方法sao_type_idxを使用する。
 本実施の形態では、sao_type_idxの値として、バンドオフセットに0が割り当てられている。そのため、算術符号化制御部3071は、sao_type_idxが0である場合、画素分類方法がバンドオフセットであると判定し、sao_type_idxが0以外である場合、画素分類方法がバンドオフセットではないと判定する。
 画素分類方法がバンドオフセットである場合(S3081でYes)、バイパス算術符号化部3073は、オフセット値±符号sao_offset_sign、および、バンドオフセット符号化開始カテゴリsao_band_positionを符号化する(S3082)。
 なお、本実施の形態では、バンドオフセットの場合のみ、バイパス算術符号化部3073は、オフセット値±符号sao_offset_signを符号化する。しかし、エッジオフセットの場合にも、バイパス算術符号化部3073は、オフセット値±符号sao_offset_signを符号化してよい。この場合、オフセット値±符号sao_offset_signは、ステップS3080で符号化される。
 また、この場合、ステップS3080において、オフセット絶対値sao_offsetとオフセット値±符号sao_offset_signとが、統合され、オフセット値として符号化されてもよい。
 図35は、オフセット情報復号部406が算術復号によりオフセット情報を復号する例を示すフローチャートである。
 まず、オフセット情報復号部406で処理が開始される時点で、算術復号制御部4061は、復号方法としてコンテキスト算術復号を設定する(S4060)。
 次に、コンテキスト算術復号部4062は、オフセット処理ON/OFFフラグsao_on_flag用のコンテキストをロードし、そのコンテキストを用いて、オフセット処理ON/OFFフラグsao_on_flagを復号する(S4061)。
 次に、算術復号制御部4061は、オフセット処理ON/OFFフラグsao_on_flagが1であるか否かを判定する(S4062)。ここで、sao_on_flagが0であることは、処理対象領域のオフセット処理を行わないことを示し、1であることは、処理対象領域のオフセット処理を行うことを示す。
 次に、sao_on_flagが1である場合(S4062でYes)、算術復号制御部4061は、処理対象領域がスライスまたはタイルの左端であるか否かを判定する(S4063)。オフセット情報のコピーは、同じスライスかつ同じタイルの領域からのみである。そのため、左側オフセット情報コピーフラグsao_merge_left_flagの復号前に、上記の判定が行われる。
 処理対象領域が左端でない場合(S4063でNo)、コンテキスト算術復号部4062は、左側オフセット情報コピーフラグsao_merge_left_flag用のコンテキストをロードする。そして、コンテキスト算術復号部4062は、左側オフセット情報コピーフラグsao_merge_left_flagを復号する(S4064)。
 左端の場合(S4063でYes)、または、sao_merge_left_flagの復号(S4064)の後、算術復号制御部4061は、sao_merge_left_flagが0であるか否かを判定する(S4065)。ここで、sao_merge_left_flagが0であることは、左の領域からオフセット情報をコピーしないことを示し、1であることは、左の領域からオフセット情報をコピーすることを示す。
 なお、sao_merge_left_flagの復号(S4064)が行われない場合、sao_merge_left_flagの値が存在しない。この場合、sao_merge_left_flagの値は0として処理される。また、オフセット情報復号部406は、処理を開始する時点で、sao_merge_left_flag用のメモリを確保し、初期値0を設定してもよい。
 次に、sao_merge_left_flagが0である場合(S4065でYes)、算術復号制御部4061は、処理対象領域がスライスまたはタイルの上端であるか否かを判定する(S4066)。左端の判定(S4063)と同様に、オフセット情報のコピーは、同じスライスかつ同じタイルの領域からのみであるため、上側オフセット情報コピーフラグsao_merge_up_flagの復号前に、上記の判定が行われる。
 処理対象領域が上端でない場合(S4066でNo)、コンテキスト算術復号部4062は、上側オフセット情報コピーフラグsao_merge_up_flag用のコンテキストをロードする。そして、コンテキスト算術復号部4062は、上側オフセット情報コピーフラグsao_merge_up_flagを復号する(S4067)。
 上端の場合(S4066でYes)、または、sao_merge_up_flagの復号(S4067)の後、算術復号制御部4061は、sao_merge_up_flagが0であるか否かを判定する(S4068)。ここで、sao_merge_up_flagが0であることは、上の領域からオフセット情報をコピーしないことを示し、1であることは、上の領域からオフセット情報をコピーすることを示す。
 なお、sao_merge_up_flagの復号(S4067)が行われない場合、sao_merge_up_flagの値が存在しない。この場合、sao_merge_up_flagの値は0として処理される。また、オフセット情報復号部406は、処理が開始される時点で、sao_merge_up_flag用のメモリを確保し、初期値0を設定してもよい。
 次に、sao_merge_up_flagが0である場合(S4068でYes)、算術復号制御部4061は、復号方法をバイパス算術復号に切り替える(S4069)。これにより、以降の復号ステップは全てバイパス算術復号を使用して行われる。
 次に、バイパス算術復号部4063は、画素分類方法sao_type_idx、および、オフセット絶対値sao_offsetを復号する(S4070)。ここで、本実施の形態において、複数のオフセット絶対値sao_offsetの個数は、いずれの画素分類方法でも同じ4である。しかし、バイパス算術復号部4063は、画素分類方法毎に異なる個数のオフセット絶対値を復号してもよい。
 次に、算術復号制御部4061は、画素分類方法がバンドオフセットであるか否かを判定する(S4071)。ここで、算術復号制御部4061は、判定に画素分類方法sao_type_idxを使用する。
 本実施の形態では、sao_type_idxの値として、バンドオフセットに0が割り当てられている。そのため、算術復号制御部4061は、sao_type_idxが0である場合、画素分類方法がバンドオフセットであると判定し、sao_type_idxが0以外の場合、画素分類方法がバンドオフセットではないと判定する。
 画素分類方法がバンドオフセットである場合(S4071でYes)、バイパス算術復号部4063は、オフセット値±符号sao_offset_signおよびバンドオフセット符号化開始カテゴリsao_band_positionを復号する(S4072)。
 なお、本実施の形態では、バンドオフセットの場合のみ、バイパス算術復号部4063は、オフセット値±符号sao_offset_signを復号する。しかし、エッジオフセットの場合にも、バイパス算術復号部4063は、オフセット値±符号sao_offset_signを復号してもよい。この場合、オフセット値±符号sao_offset_signは、ステップS4070で復号される。
 また、この場合、ステップS4070において、オフセット絶対値sao_offsetとオフセット値±符号sao_offset_signとが、統合され、オフセット値として復号されてもよい。
 以上のように、オフセット処理ON/OFFフラグsao_on_flag、左側オフセット情報コピーフラグsao_merge_left_flag、および、上側オフセット情報コピーフラグsao_merge_up_flagの先頭の3つのパラメータの後の全てのパラメータの符号化および復号にバイパス算術符号化およびバイパス算術復号が使用される。これにより、画像符号化装置および画像復号装置は、コンテキストのロードおよび更新を随所に行わなくてもよい。したがって、スループットが改善される。
 図36は、上記の符号化の特徴の一例を示すフローチャートである。まず、コンテキスト算術符号化部3072は、コンテキスト算術符号化によって、第1情報および第2情報を連続して符号化する(S511)。コンテキスト算術符号化は、可変の確率を用いる算術符号化である。第1情報は、画素値のオフセット処理であるSAO(サンプル適応オフセット)処理を画像の第1領域に対して行うか否かを示す。第2情報は、第1領域に対するSAO処理に第1領域とは別の領域に対するSAO処理の情報を用いるか否かを示す。
 次に、バイパス算術符号化部3073は、第1情報および第2情報が符号化された後、バイパス算術符号化によって、他の情報を符号化する(S512)。バイパス算術符号化は、固定の確率を用いる算術符号化である。他の情報は、第1領域に対するSAO処理の情報であり第1情報とも第2情報とも異なる情報である。
 図37は、上記の復号の特徴の一例を示すフローチャートである。まず、コンテキスト算術復号部4062は、コンテキスト算術復号によって、第1情報および第2情報を連続して復号する(S521)。コンテキスト算術復号は、可変の確率を用いる算術復号である。第1情報は、画素値のオフセット処理であるSAO(サンプル適応オフセット)処理を画像の第1領域に対して行うか否かを示す。第2情報は、第1領域に対するSAO処理に第1領域とは別の領域に対するSAO処理の情報を用いるか否かを示す。
 次に、バイパス算術復号部4063は、第1情報および第2情報が復号された後、バイパス算術復号によって、他の情報を復号する(S522)。バイパス算術復号は、固定の確率を用いる算術復号である。他の情報は、第1領域に対するSAO処理の情報であり第1情報とも第2情報とも異なる情報である。
 なお、第1情報および第2情報のどちらが先に符号化されてもよい。同様に、第1情報および第2情報のどちらが先に復号されてもよい。
 また、符号化の順序は、符号化ストリームに情報を符号(コード)として書き込む順序であり、復号の順序は、符号化ストリームから符号(コード)を情報として読み込む順序である。すなわち、複数の図面を用いて上記に例示された符号化および復号の順序は、符号化ストリーム内の情報の順序に対応する。また、複数の図面を用いて上記に例示されたシンタックス要素の順序は、符号化ストリーム内の情報の順序に対応し、符号化および復号の順序に対応する。
 また、画像符号化装置は、図36に示された処理のみを行う装置でもよい。同様に、画像復号装置は、図37に示された処理のみを行う装置でもよい。その他の装置が、その他の処理を行ってもよい。
 図31Bは、HEVC規格で策定されているテスト条件(非特許文献2参照)に基づく結果を本実施の形態の客観性能として示す。
 図31BのConfigurationは、符号化のパラメータ設定条件である。BD-rateは、再構成画像のPSNR(Peak Signal-to-Noise Ratio)および符号化ストリームの符号量から算出される客観指標である。負のBD-rateは客観性能の改善を示し、正のBD-rateは客観性能の劣化を示す。なお、図31BのBD-rateは、実施の形態1との比較に基づいて本実施の形態の客観性能の改善または劣化を示す。
 図31Bの通り、BD-rateは、±0.1の範囲内に収まっている。これは、本実施の形態の客観性能が実施の形態1とほぼ同等であることを示す。すなわち、本実施の形態では、客観性能の劣化が少なく、スループットが改善されている。
 以上のように、本実施の形態に係る画像符号化装置は、高い処理効率で画像を符号化することができる。また、本実施の形態に係る画像復号装置は、高い処理効率で画像を復号することができる。
 なお、上記各実施の形態において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、CPUまたはプロセッサなどのプログラム実行部が、ハードディスクまたは半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。
 言い換えると、画像符号化装置および画像復号装置は、制御回路(control circuitry)と、当該制御回路に電気的に接続された(当該制御回路からアクセス可能な)記憶装置(storage)とを備える。制御回路は、専用のハードウェア及びプログラム実行部の少なくとも一方を含む。また、記憶装置は、制御回路がプログラム実行部を含む場合には、当該プログラム実行部により実行されるソフトウェアプログラムを記憶する。
 ここで、上記各実施の形態の画像符号化装置などを実現するソフトウェアは、次のようなプログラムである。
 すなわち、このプログラムは、コンピュータに、可変の確率を用いる算術符号化であるコンテキスト算術符号化によって、(i)画素値のオフセット処理であるSAO(サンプル適応オフセット)処理を画像の第1領域に対して行うか否かを示す第1情報、および、(ii)前記第1領域に対するSAO処理に前記第1領域とは別の領域に対するSAO処理の情報を用いるか否かを示す第2情報を連続して符号化するコンテキスト算術符号化ステップと、前記第1情報および前記第2情報が符号化された後、固定の確率を用いる算術符号化であるバイパス算術符号化によって、前記第1領域に対するSAO処理の情報であり前記第1情報とも前記第2情報とも異なる情報である他の情報を符号化するバイパス算術符号化ステップとを含む画像符号化方法を実行させる。
 また、このプログラムは、コンピュータに、可変の確率を用いる算術復号であるコンテキスト算術復号によって、(i)画素値のオフセット処理であるSAO(サンプル適応オフセット)処理を画像の第1領域に対して行うか否かを示す第1情報、および、(ii)前記第1領域に対するSAO処理に前記第1領域とは別の領域に対するSAO処理の情報を用いるか否かを示す第2情報を連続して復号するコンテキスト算術復号ステップと、前記第1情報および前記第2情報が復号された後、固定の確率を用いる算術復号であるバイパス算術復号によって、前記第1領域に対するSAO処理の情報であり前記第1情報とも前記第2情報とも異なる情報である他の情報を復号するバイパス算術復号ステップとを含む画像復号方法を実行させてもよい。
 また、各構成要素は、回路であってもよい。これらの回路は、全体として1つの回路を構成してもよいし、それぞれ別々の回路であってもよい。また、各構成要素は、汎用的なプロセッサで実現されてもよいし、専用のプロセッサで実現されてもよい。
 以上、一つまたは複数の態様に係る画像符号化装置などについて、実施の形態に基づいて説明したが、本発明は、この実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、一つまたは複数の態様の範囲内に含まれてもよい。
 例えば、画像符号化復号装置が、画像符号化装置および画像復号装置を備えてもよい。また、特定の処理部が実行する処理を別の処理部が実行してもよい。また、処理を実行する順序が変更されてもよいし、複数の処理が並行して実行されてもよい。また、各種情報を記憶するための専用または共用の記憶部が構成に追加されてもよい。
 (実施の形態4)
 上記各実施の形態で示した動画像符号化方法(画像符号化方法)または動画像復号化方法(画像復号方法)の構成を実現するためのプログラムを記憶メディアに記録することにより、上記各実施の形態で示した処理を独立したコンピュータシステムにおいて簡単に実施することが可能となる。記憶メディアは、磁気ディスク、光ディスク、光磁気ディスク、ICカード、半導体メモリ等、プログラムを記録できるものであればよい。
 さらにここで、上記各実施の形態で示した動画像符号化方法(画像符号化方法)や動画像復号化方法(画像復号方法)の応用例とそれを用いたシステムを説明する。当該システムは、画像符号化方法を用いた画像符号化装置、及び画像復号方法を用いた画像復号装置からなる画像符号化復号装置を有することを特徴とする。システムにおける他の構成について、場合に応じて適切に変更することができる。
 図38は、コンテンツ配信サービスを実現するコンテンツ供給システムex100の全体構成を示す図である。通信サービスの提供エリアを所望の大きさに分割し、各セル内にそれぞれ固定無線局である基地局ex106、ex107、ex108、ex109、ex110が設置されている。
 このコンテンツ供給システムex100は、インターネットex101にインターネットサービスプロバイダex102および電話網ex104、および基地局ex106からex110を介して、コンピュータex111、PDA(Personal Digital Assistant)ex112、カメラex113、携帯電話ex114、ゲーム機ex115などの各機器が接続される。
 しかし、コンテンツ供給システムex100は図38のような構成に限定されず、いずれかの要素を組合せて接続するようにしてもよい。また、固定無線局である基地局ex106からex110を介さずに、各機器が電話網ex104に直接接続されてもよい。また、各機器が近距離無線等を介して直接相互に接続されていてもよい。
 カメラex113はデジタルビデオカメラ等の動画撮影が可能な機器であり、カメラex116はデジタルカメラ等の静止画撮影、動画撮影が可能な機器である。また、携帯電話ex114は、GSM(登録商標)(Global System for Mobile Communications)方式、CDMA(Code Division Multiple Access)方式、W-CDMA(Wideband-Code Division Multiple Access)方式、若しくはLTE(Long Term Evolution)方式、HSPA(High Speed Packet Access)の携帯電話機、またはPHS(Personal Handyphone System)等であり、いずれでも構わない。
 コンテンツ供給システムex100では、カメラex113等が基地局ex109、電話網ex104を通じてストリーミングサーバex103に接続されることで、ライブ配信等が可能になる。ライブ配信では、ユーザがカメラex113を用いて撮影するコンテンツ(例えば、音楽ライブの映像等)に対して上記各実施の形態で説明したように符号化処理を行い(即ち、本発明の一態様に係る画像符号化装置として機能する)、ストリーミングサーバex103に送信する。一方、ストリーミングサーバex103は要求のあったクライアントに対して送信されたコンテンツデータをストリーム配信する。クライアントとしては、上記符号化処理されたデータを復号化することが可能な、コンピュータex111、PDAex112、カメラex113、携帯電話ex114、ゲーム機ex115等がある。配信されたデータを受信した各機器では、受信したデータを復号化処理して再生する(即ち、本発明の一態様に係る画像復号装置として機能する)。
 なお、撮影したデータの符号化処理はカメラex113で行っても、データの送信処理をするストリーミングサーバex103で行ってもよいし、互いに分担して行ってもよい。同様に配信されたデータの復号化処理はクライアントで行っても、ストリーミングサーバex103で行ってもよいし、互いに分担して行ってもよい。また、カメラex113に限らず、カメラex116で撮影した静止画像および/または動画像データを、コンピュータex111を介してストリーミングサーバex103に送信してもよい。この場合の符号化処理はカメラex116、コンピュータex111、ストリーミングサーバex103のいずれで行ってもよいし、互いに分担して行ってもよい。
 また、これら符号化・復号化処理は、一般的にコンピュータex111や各機器が有するLSIex500において処理する。LSIex500は、ワンチップであっても複数チップからなる構成であってもよい。なお、動画像符号化・復号化用のソフトウェアをコンピュータex111等で読み取り可能な何らかの記録メディア(CD-ROM、フレキシブルディスク、ハードディスクなど)に組み込み、そのソフトウェアを用いて符号化・復号化処理を行ってもよい。さらに、携帯電話ex114がカメラ付きである場合には、そのカメラで取得した動画データを送信してもよい。このときの動画データは携帯電話ex114が有するLSIex500で符号化処理されたデータである。
 また、ストリーミングサーバex103は複数のサーバや複数のコンピュータであって、データを分散して処理したり記録したり配信するものであってもよい。
 以上のようにして、コンテンツ供給システムex100では、符号化されたデータをクライアントが受信して再生することができる。このようにコンテンツ供給システムex100では、ユーザが送信した情報をリアルタイムでクライアントが受信して復号化し、再生することができ、特別な権利や設備を有さないユーザでも個人放送を実現できる。
 なお、コンテンツ供給システムex100の例に限らず、図39に示すように、デジタル放送用システムex200にも、上記各実施の形態の少なくとも動画像符号化装置(画像符号化装置)または動画像復号化装置(画像復号装置)のいずれかを組み込むことができる。具体的には、放送局ex201では映像データに音楽データなどが多重化された多重化データが電波を介して通信または衛星ex202に伝送される。この映像データは上記各実施の形態で説明した動画像符号化方法により符号化されたデータである(即ち、本発明の一態様に係る画像符号化装置によって符号化されたデータである)。これを受けた放送衛星ex202は、放送用の電波を発信し、この電波を衛星放送の受信が可能な家庭のアンテナex204が受信する。受信した多重化データを、テレビ(受信機)ex300またはセットトップボックス(STB)ex217等の装置が復号化して再生する(即ち、本発明の一態様に係る画像復号装置として機能する)。
 また、DVD、BD等の記録メディアex215に記録した多重化データを読み取り復号化する、または記録メディアex215に映像信号を符号化し、さらに場合によっては音楽信号と多重化して書き込むリーダ/レコーダex218にも上記各実施の形態で示した動画像復号化装置または動画像符号化装置を実装することが可能である。この場合、再生された映像信号はモニタex219に表示され、多重化データが記録された記録メディアex215により他の装置やシステムにおいて映像信号を再生することができる。また、ケーブルテレビ用のケーブルex203または衛星/地上波放送のアンテナex204に接続されたセットトップボックスex217内に動画像復号化装置を実装し、これをテレビのモニタex219で表示してもよい。このときセットトップボックスではなく、テレビ内に動画像復号化装置を組み込んでもよい。
 図40は、上記各実施の形態で説明した動画像復号化方法および動画像符号化方法を用いたテレビ(受信機)ex300を示す図である。テレビex300は、上記放送を受信するアンテナex204またはケーブルex203等を介して映像データに音声データが多重化された多重化データを取得、または出力するチューナex301と、受信した多重化データを復調する、または外部に送信する多重化データに変調する変調/復調部ex302と、復調した多重化データを映像データと、音声データとに分離する、または信号処理部ex306で符号化された映像データ、音声データを多重化する多重/分離部ex303を備える。
 また、テレビex300は、音声データ、映像データそれぞれを復号化する、またはそれぞれの情報を符号化する音声信号処理部ex304、映像信号処理部ex305(本発明の一態様に係る画像符号化装置または画像復号装置として機能する)を有する信号処理部ex306と、復号化した音声信号を出力するスピーカex307、復号化した映像信号を表示するディスプレイ等の表示部ex308を有する出力部ex309とを有する。さらに、テレビex300は、ユーザ操作の入力を受け付ける操作入力部ex312等を有するインタフェース部ex317を有する。さらに、テレビex300は、各部を統括的に制御する制御部ex310、各部に電力を供給する電源回路部ex311を有する。インタフェース部ex317は、操作入力部ex312以外に、リーダ/レコーダex218等の外部機器と接続されるブリッジex313、SDカード等の記録メディアex216を装着可能とするためのスロット部ex314、ハードディスク等の外部記録メディアと接続するためのドライバex315、電話網と接続するモデムex316等を有していてもよい。なお記録メディアex216は、格納する不揮発性/揮発性の半導体メモリ素子により電気的に情報の記録を可能としたものである。テレビex300の各部は同期バスを介して互いに接続されている。
 まず、テレビex300がアンテナex204等により外部から取得した多重化データを復号化し、再生する構成について説明する。テレビex300は、リモートコントローラex220等からのユーザ操作を受け、CPU等を有する制御部ex310の制御に基づいて、変調/復調部ex302で復調した多重化データを多重/分離部ex303で分離する。さらにテレビex300は、分離した音声データを音声信号処理部ex304で復号化し、分離した映像データを映像信号処理部ex305で上記各実施の形態で説明した復号化方法を用いて復号化する。復号化した音声信号、映像信号は、それぞれ出力部ex309から外部に向けて出力される。出力する際には、音声信号と映像信号が同期して再生するよう、バッファex318、ex319等に一旦これらの信号を蓄積するとよい。また、テレビex300は、放送等からではなく、磁気/光ディスク、SDカード等の記録メディアex215、ex216から多重化データを読み出してもよい。次に、テレビex300が音声信号や映像信号を符号化し、外部に送信または記録メディア等に書き込む構成について説明する。テレビex300は、リモートコントローラex220等からのユーザ操作を受け、制御部ex310の制御に基づいて、音声信号処理部ex304で音声信号を符号化し、映像信号処理部ex305で映像信号を上記各実施の形態で説明した符号化方法を用いて符号化する。符号化した音声信号、映像信号は多重/分離部ex303で多重化され外部に出力される。多重化する際には、音声信号と映像信号が同期するように、バッファex320、ex321等に一旦これらの信号を蓄積するとよい。なお、バッファex318、ex319、ex320、ex321は図示しているように複数備えていてもよいし、1つ以上のバッファを共有する構成であってもよい。さらに、図示している以外に、例えば変調/復調部ex302や多重/分離部ex303の間等でもシステムのオーバフロー、アンダーフローを避ける緩衝材としてバッファにデータを蓄積することとしてもよい。
 また、テレビex300は、放送等や記録メディア等から音声データ、映像データを取得する以外に、マイクやカメラのAV入力を受け付ける構成を備え、それらから取得したデータに対して符号化処理を行ってもよい。なお、ここではテレビex300は上記の符号化処理、多重化、および外部出力ができる構成として説明したが、これらの処理を行うことはできず、上記受信、復号化処理、外部出力のみが可能な構成であってもよい。
 また、リーダ/レコーダex218で記録メディアから多重化データを読み出す、または書き込む場合には、上記復号化処理または符号化処理はテレビex300、リーダ/レコーダex218のいずれで行ってもよいし、テレビex300とリーダ/レコーダex218が互いに分担して行ってもよい。
 一例として、光ディスクからデータの読み込みまたは書き込みをする場合の情報再生/記録部ex400の構成を図41に示す。情報再生/記録部ex400は、以下に説明する要素ex401、ex402、ex403、ex404、ex405、ex406、ex407を備える。光ヘッドex401は、光ディスクである記録メディアex215の記録面にレーザスポットを照射して情報を書き込み、記録メディアex215の記録面からの反射光を検出して情報を読み込む。変調記録部ex402は、光ヘッドex401に内蔵された半導体レーザを電気的に駆動し記録データに応じてレーザ光の変調を行う。再生復調部ex403は、光ヘッドex401に内蔵されたフォトディテクタにより記録面からの反射光を電気的に検出した再生信号を増幅し、記録メディアex215に記録された信号成分を分離して復調し、必要な情報を再生する。バッファex404は、記録メディアex215に記録するための情報および記録メディアex215から再生した情報を一時的に保持する。ディスクモータex405は記録メディアex215を回転させる。サーボ制御部ex406は、ディスクモータex405の回転駆動を制御しながら光ヘッドex401を所定の情報トラックに移動させ、レーザスポットの追従処理を行う。システム制御部ex407は、情報再生/記録部ex400全体の制御を行う。上記の読み出しや書き込みの処理はシステム制御部ex407が、バッファex404に保持された各種情報を利用し、また必要に応じて新たな情報の生成・追加を行うと共に、変調記録部ex402、再生復調部ex403、サーボ制御部ex406を協調動作させながら、光ヘッドex401を通して、情報の記録再生を行うことにより実現される。システム制御部ex407は例えばマイクロプロセッサで構成され、読み出し書き込みのプログラムを実行することでそれらの処理を実行する。
 以上では、光ヘッドex401はレーザスポットを照射するとして説明したが、近接場光を用いてより高密度な記録を行う構成であってもよい。
 図42に光ディスクである記録メディアex215の模式図を示す。記録メディアex215の記録面には案内溝(グルーブ)がスパイラル状に形成され、情報トラックex230には、予めグルーブの形状の変化によってディスク上の絶対位置を示す番地情報が記録されている。この番地情報はデータを記録する単位である記録ブロックex231の位置を特定するための情報を含み、記録や再生を行う装置において情報トラックex230を再生し番地情報を読み取ることで記録ブロックを特定することができる。また、記録メディアex215は、データ記録領域ex233、内周領域ex232、外周領域ex234を含んでいる。ユーザデータを記録するために用いる領域がデータ記録領域ex233であり、データ記録領域ex233より内周または外周に配置されている内周領域ex232と外周領域ex234は、ユーザデータの記録以外の特定用途に用いられる。情報再生/記録部ex400は、このような記録メディアex215のデータ記録領域ex233に対して、符号化された音声データ、映像データまたはそれらのデータを多重化した多重化データの読み書きを行う。
 以上では、1層のDVD、BD等の光ディスクを例に挙げ説明したが、これらに限ったものではなく、多層構造であって表面以外にも記録可能な光ディスクであってもよい。また、ディスクの同じ場所にさまざまな異なる波長の色の光を用いて情報を記録したり、さまざまな角度から異なる情報の層を記録したりなど、多次元的な記録/再生を行う構造の光ディスクであってもよい。
 また、デジタル放送用システムex200において、アンテナex205を有する車ex210で衛星ex202等からデータを受信し、車ex210が有するカーナビゲーションex211等の表示装置に動画を再生することも可能である。なお、カーナビゲーションex211の構成は例えば図40に示す構成のうち、GPS受信部を加えた構成が考えられ、同様なことがコンピュータex111や携帯電話ex114等でも考えられる。
 図43Aは、上記実施の形態で説明した動画像復号化方法および動画像符号化方法を用いた携帯電話ex114を示す図である。携帯電話ex114は、基地局ex110との間で電波を送受信するためのアンテナex350、映像、静止画を撮ることが可能なカメラ部ex365、カメラ部ex365で撮像した映像、アンテナex350で受信した映像等が復号化されたデータを表示する液晶ディスプレイ等の表示部ex358を備える。携帯電話ex114は、さらに、操作キー部ex366を有する本体部、音声を出力するためのスピーカ等である音声出力部ex357、音声を入力するためのマイク等である音声入力部ex356、撮影した映像、静止画、録音した音声、または受信した映像、静止画、メール等の符号化されたデータもしくは復号化されたデータを保存するメモリ部ex367、又は同様にデータを保存する記録メディアとのインタフェース部であるスロット部ex364を備える。
 さらに、携帯電話ex114の構成例について、図43Bを用いて説明する。携帯電話ex114は、表示部ex358及び操作キー部ex366を備えた本体部の各部を統括的に制御する主制御部ex360に対して、電源回路部ex361、操作入力制御部ex362、映像信号処理部ex355、カメラインタフェース部ex363、LCD(Liquid Crystal Display)制御部ex359、変調/復調部ex352、多重/分離部ex353、音声信号処理部ex354、スロット部ex364、メモリ部ex367がバスex370を介して互いに接続されている。
 電源回路部ex361は、ユーザの操作により終話及び電源キーがオン状態にされると、バッテリパックから各部に対して電力を供給することにより携帯電話ex114を動作可能な状態に起動する。
 携帯電話ex114は、CPU、ROM、RAM等を有する主制御部ex360の制御に基づいて、音声通話モード時に音声入力部ex356で収音した音声信号を音声信号処理部ex354でデジタル音声信号に変換し、これを変調/復調部ex352でスペクトラム拡散処理し、送信/受信部ex351でデジタルアナログ変換処理および周波数変換処理を施した後にアンテナex350を介して送信する。また携帯電話ex114は、音声通話モード時にアンテナex350を介して受信した受信データを増幅して周波数変換処理およびアナログデジタル変換処理を施し、変調/復調部ex352でスペクトラム逆拡散処理し、音声信号処理部ex354でアナログ音声信号に変換した後、これを音声出力部ex357から出力する。
 さらにデータ通信モード時に電子メールを送信する場合、本体部の操作キー部ex366等の操作によって入力された電子メールのテキストデータは操作入力制御部ex362を介して主制御部ex360に送出される。主制御部ex360は、テキストデータを変調/復調部ex352でスペクトラム拡散処理をし、送信/受信部ex351でデジタルアナログ変換処理および周波数変換処理を施した後にアンテナex350を介して基地局ex110へ送信する。電子メールを受信する場合は、受信したデータに対してこのほぼ逆の処理が行われ、表示部ex358に出力される。
 データ通信モード時に映像、静止画、または映像と音声を送信する場合、映像信号処理部ex355は、カメラ部ex365から供給された映像信号を上記各実施の形態で示した動画像符号化方法によって圧縮符号化し(即ち、本発明の一態様に係る画像符号化装置として機能する)、符号化された映像データを多重/分離部ex353に送出する。また、音声信号処理部ex354は、映像、静止画等をカメラ部ex365で撮像中に音声入力部ex356で収音した音声信号を符号化し、符号化された音声データを多重/分離部ex353に送出する。
 多重/分離部ex353は、映像信号処理部ex355から供給された符号化された映像データと音声信号処理部ex354から供給された符号化された音声データを所定の方式で多重化し、その結果得られる多重化データを変調/復調部(変調/復調回路部)ex352でスペクトラム拡散処理をし、送信/受信部ex351でデジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex350を介して送信する。
 データ通信モード時にホームページ等にリンクされた動画像ファイルのデータを受信する場合、または映像およびもしくは音声が添付された電子メールを受信する場合、アンテナex350を介して受信された多重化データを復号化するために、多重/分離部ex353は、多重化データを分離することにより映像データのビットストリームと音声データのビットストリームとに分け、同期バスex370を介して符号化された映像データを映像信号処理部ex355に供給するとともに、符号化された音声データを音声信号処理部ex354に供給する。映像信号処理部ex355は、上記各実施の形態で示した動画像符号化方法に対応した動画像復号化方法によって復号化することにより映像信号を復号し(即ち、本発明の一態様に係る画像復号装置として機能する)、LCD制御部ex359を介して表示部ex358から、例えばホームページにリンクされた動画像ファイルに含まれる映像、静止画が表示される。また音声信号処理部ex354は、音声信号を復号し、音声出力部ex357から音声が出力される。
 また、上記携帯電話ex114等の端末は、テレビex300と同様に、符号化器・復号化器を両方持つ送受信型端末の他に、符号化器のみの送信端末、復号化器のみの受信端末という3通りの実装形式が考えられる。さらに、デジタル放送用システムex200において、映像データに音楽データなどが多重化された多重化データを受信、送信するとして説明したが、音声データ以外に映像に関連する文字データなどが多重化されたデータであってもよいし、多重化データではなく映像データ自体であってもよい。
 このように、上記各実施の形態で示した動画像符号化方法あるいは動画像復号化方法を上述したいずれの機器・システムに用いることは可能であり、そうすることで、上記各実施の形態で説明した効果を得ることができる。
 また、本発明はかかる上記実施の形態に限定されるものではなく、本発明の範囲を逸脱することなく種々の変形または修正が可能である。
 (実施の形態5)
 上記各実施の形態で示した動画像符号化方法または装置と、MPEG-2、MPEG4-AVC、VC-1など異なる規格に準拠した動画像符号化方法または装置とを、必要に応じて適宜切替えることにより、映像データを生成することも可能である。
 ここで、それぞれ異なる規格に準拠する複数の映像データを生成した場合、復号する際に、それぞれの規格に対応した復号方法を選択する必要がある。しかしながら、復号する映像データが、どの規格に準拠するものであるか識別できないため、適切な復号方法を選択することができないという課題を生じる。
 この課題を解決するために、映像データに音声データなどを多重化した多重化データは、映像データがどの規格に準拠するものであるかを示す識別情報を含む構成とする。上記各実施の形態で示す動画像符号化方法または装置によって生成された映像データを含む多重化データの具体的な構成を以下説明する。多重化データは、MPEG-2トランスポートストリーム形式のデジタルストリームである。
 図44は、多重化データの構成を示す図である。図44に示すように多重化データは、ビデオストリーム、オーディオストリーム、プレゼンテーショングラフィックスストリーム(PG)、インタラクティブグラフィックスストリームのうち、1つ以上を多重化することで得られる。ビデオストリームは映画の主映像および副映像を、オーディオストリーム(IG)は映画の主音声部分とその主音声とミキシングする副音声を、プレゼンテーショングラフィックスストリームは、映画の字幕をそれぞれ示している。ここで主映像とは画面に表示される通常の映像を示し、副映像とは主映像の中に小さな画面で表示する映像のことである。また、インタラクティブグラフィックスストリームは、画面上にGUI部品を配置することにより作成される対話画面を示している。ビデオストリームは、上記各実施の形態で示した動画像符号化方法または装置、従来のMPEG-2、MPEG4-AVC、VC-1などの規格に準拠した動画像符号化方法または装置によって符号化されている。オーディオストリームは、ドルビーAC-3、Dolby Digital Plus、MLP、DTS、DTS-HD、または、リニアPCMのなどの方式で符号化されている。
 多重化データに含まれる各ストリームはPIDによって識別される。例えば、映画の映像に利用するビデオストリームには0x1011が、オーディオストリームには0x1100から0x111Fまでが、プレゼンテーショングラフィックスには0x1200から0x121Fまでが、インタラクティブグラフィックスストリームには0x1400から0x141Fまでが、映画の副映像に利用するビデオストリームには0x1B00から0x1B1Fまで、主音声とミキシングする副音声に利用するオーディオストリームには0x1A00から0x1A1Fが、それぞれ割り当てられている。
 図45は、多重化データがどのように多重化されるかを模式的に示す図である。まず、複数のビデオフレームからなるビデオストリームex235、複数のオーディオフレームからなるオーディオストリームex238を、それぞれPESパケット列ex236およびex239に変換し、TSパケットex237およびex240に変換する。同じくプレゼンテーショングラフィックスストリームex241およびインタラクティブグラフィックスex244のデータをそれぞれPESパケット列ex242およびex245に変換し、さらにTSパケットex243およびex246に変換する。多重化データex247はこれらのTSパケットを1本のストリームに多重化することで構成される。
 図46は、PESパケット列に、ビデオストリームがどのように格納されるかをさらに詳しく示している。図46における第1段目はビデオストリームのビデオフレーム列を示す。第2段目は、PESパケット列を示す。図46の矢印yy1,yy2,yy3,yy4に示すように、ビデオストリームにおける複数のVideo Presentation UnitであるIピクチャ、Bピクチャ、Pピクチャは、ピクチャ毎に分割され、PESパケットのペイロードに格納される。各PESパケットはPESヘッダを持ち、PESヘッダには、ピクチャの表示時刻であるPTS(Presentation Time-Stamp)やピクチャの復号時刻であるDTS(Decoding Time-Stamp)が格納される。
 図47は、多重化データに最終的に書き込まれるTSパケットの形式を示している。TSパケットは、ストリームを識別するPIDなどの情報を持つ4ByteのTSヘッダとデータを格納する184ByteのTSペイロードから構成される188Byte固定長のパケットであり、上記PESパケットは分割されTSペイロードに格納される。BD-ROMの場合、TSパケットには、4ByteのTP_Extra_Headerが付与され、192Byteのソースパケットを構成し、多重化データに書き込まれる。TP_Extra_HeaderにはATS(Arrival_Time_Stamp)などの情報が記載される。ATSは当該TSパケットのデコーダのPIDフィルタへの転送開始時刻を示す。多重化データには図47下段に示すようにソースパケットが並ぶこととなり、多重化データの先頭からインクリメントする番号はSPN(ソースパケットナンバー)と呼ばれる。
 また、多重化データに含まれるTSパケットには、映像・音声・字幕などの各ストリーム以外にもPAT(Program Association Table)、PMT(Program Map Table)、PCR(Program Clock Reference)などがある。PATは多重化データ中に利用されるPMTのPIDが何であるかを示し、PAT自身のPIDは0で登録される。PMTは、多重化データ中に含まれる映像・音声・字幕などの各ストリームのPIDと各PIDに対応するストリームの属性情報を持ち、また多重化データに関する各種ディスクリプタを持つ。ディスクリプタには多重化データのコピーを許可・不許可を指示するコピーコントロール情報などがある。PCRは、ATSの時間軸であるATC(Arrival Time Clock)とPTS・DTSの時間軸であるSTC(System Time Clock)の同期を取るために、そのPCRパケットがデコーダに転送されるATSに対応するSTC時間の情報を持つ。
 図48はPMTのデータ構造を詳しく説明する図である。PMTの先頭には、そのPMTに含まれるデータの長さなどを記したPMTヘッダが配置される。その後ろには、多重化データに関するディスクリプタが複数配置される。上記コピーコントロール情報などが、ディスクリプタとして記載される。ディスクリプタの後には、多重化データに含まれる各ストリームに関するストリーム情報が複数配置される。ストリーム情報は、ストリームの圧縮コーデックなどを識別するためストリームタイプ、ストリームのPID、ストリームの属性情報(フレームレート、アスペクト比など)が記載されたストリームディスクリプタから構成される。ストリームディスクリプタは多重化データに存在するストリームの数だけ存在する。
 記録媒体などに記録する場合には、上記多重化データは、多重化データ情報ファイルと共に記録される。
 多重化データ情報ファイルは、図49に示すように多重化データの管理情報であり、多重化データと1対1に対応し、多重化データ情報、ストリーム属性情報とエントリマップから構成される。
 多重化データ情報は図49に示すようにシステムレート、再生開始時刻、再生終了時刻から構成されている。システムレートは多重化データの、後述するシステムターゲットデコーダのPIDフィルタへの最大転送レートを示す。多重化データ中に含まれるATSの間隔はシステムレート以下になるように設定されている。再生開始時刻は多重化データの先頭のビデオフレームのPTSであり、再生終了時刻は多重化データの終端のビデオフレームのPTSに1フレーム分の再生間隔を足したものが設定される。
 ストリーム属性情報は図50に示すように、多重化データに含まれる各ストリームについての属性情報が、PID毎に登録される。属性情報はビデオストリーム、オーディオストリーム、プレゼンテーショングラフィックスストリーム、インタラクティブグラフィックスストリーム毎に異なる情報を持つ。ビデオストリーム属性情報は、そのビデオストリームがどのような圧縮コーデックで圧縮されたか、ビデオストリームを構成する個々のピクチャデータの解像度がどれだけであるか、アスペクト比はどれだけであるか、フレームレートはどれだけであるかなどの情報を持つ。オーディオストリーム属性情報は、そのオーディオストリームがどのような圧縮コーデックで圧縮されたか、そのオーディオストリームに含まれるチャンネル数は何であるか、何の言語に対応するか、サンプリング周波数がどれだけであるかなどの情報を持つ。これらの情報は、プレーヤが再生する前のデコーダの初期化などに利用される。
 本実施の形態においては、上記多重化データのうち、PMTに含まれるストリームタイプを利用する。また、記録媒体に多重化データが記録されている場合には、多重化データ情報に含まれる、ビデオストリーム属性情報を利用する。具体的には、上記各実施の形態で示した動画像符号化方法または装置において、PMTに含まれるストリームタイプ、または、ビデオストリーム属性情報に対し、上記各実施の形態で示した動画像符号化方法または装置によって生成された映像データであることを示す固有の情報を設定するステップまたは手段を設ける。この構成により、上記各実施の形態で示した動画像符号化方法または装置によって生成した映像データと、他の規格に準拠する映像データとを識別することが可能になる。
 また、本実施の形態における動画像復号化方法のステップを図51に示す。ステップexS100において、多重化データからPMTに含まれるストリームタイプ、または、多重化データ情報に含まれるビデオストリーム属性情報を取得する。次に、ステップexS101において、ストリームタイプ、または、ビデオストリーム属性情報が上記各実施の形態で示した動画像符号化方法または装置によって生成された多重化データであることを示しているか否かを判断する。そして、ストリームタイプ、または、ビデオストリーム属性情報が上記各実施の形態で示した動画像符号化方法または装置によって生成されたものであると判断された場合には、ステップexS102において、上記各実施の形態で示した動画像復号方法により復号を行う。また、ストリームタイプ、または、ビデオストリーム属性情報が、従来のMPEG-2、MPEG4-AVC、VC-1などの規格に準拠するものであることを示している場合には、ステップexS103において、従来の規格に準拠した動画像復号方法により復号を行う。
 このように、ストリームタイプ、または、ビデオストリーム属性情報に新たな固有値を設定することにより、復号する際に、上記各実施の形態で示した動画像復号化方法または装置で復号可能であるかを判断することができる。従って、異なる規格に準拠する多重化データが入力された場合であっても、適切な復号化方法または装置を選択することができるため、エラーを生じることなく復号することが可能となる。また、本実施の形態で示した動画像符号化方法または装置、または、動画像復号方法または装置を、上述したいずれの機器・システムに用いることも可能である。
 (実施の形態6)
 上記各実施の形態で示した動画像符号化方法および装置、動画像復号化方法および装置は、典型的には集積回路であるLSIで実現される。一例として、図52に1チップ化されたLSIex500の構成を示す。LSIex500は、以下に説明する要素ex501、ex502、ex503、ex504、ex505、ex506、ex507、ex508、ex509を備え、各要素はバスex510を介して接続している。電源回路部ex505は電源がオン状態の場合に各部に対して電力を供給することで動作可能な状態に起動する。
 例えば符号化処理を行う場合には、LSIex500は、CPUex502、メモリコントローラex503、ストリームコントローラex504、駆動周波数制御部ex512等を有する制御部ex501の制御に基づいて、AV I/Oex509によりマイクex117やカメラex113等からAV信号を入力する。入力されたAV信号は、一旦SDRAM等の外部のメモリex511に蓄積される。制御部ex501の制御に基づいて、蓄積したデータは処理量や処理速度に応じて適宜複数回に分けるなどされ信号処理部ex507に送られ、信号処理部ex507において音声信号の符号化および/または映像信号の符号化が行われる。ここで映像信号の符号化処理は上記各実施の形態で説明した符号化処理である。信号処理部ex507ではさらに、場合により符号化された音声データと符号化された映像データを多重化するなどの処理を行い、ストリームI/Oex506から外部に出力する。この出力された多重化データは、基地局ex107に向けて送信されたり、または記録メディアex215に書き込まれたりする。なお、多重化する際には同期するよう、一旦バッファex508にデータを蓄積するとよい。
 なお、上記では、メモリex511がLSIex500の外部の構成として説明したが、LSIex500の内部に含まれる構成であってもよい。バッファex508も1つに限ったものではなく、複数のバッファを備えていてもよい。また、LSIex500は1チップ化されてもよいし、複数チップ化されてもよい。
 また、上記では、制御部ex501が、CPUex502、メモリコントローラex503、ストリームコントローラex504、駆動周波数制御部ex512等を有するとしているが、制御部ex501の構成は、この構成に限らない。例えば、信号処理部ex507がさらにCPUを備える構成であってもよい。信号処理部ex507の内部にもCPUを設けることにより、処理速度をより向上させることが可能になる。また、他の例として、CPUex502が信号処理部ex507、または信号処理部ex507の一部である例えば音声信号処理部を備える構成であってもよい。このような場合には、制御部ex501は、信号処理部ex507、またはその一部を有するCPUex502を備える構成となる。
 なお、ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。
 また、集積回路化の手法はLSIに限るものではなく、専用回路または汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。このようなプログラマブル・ロジック・デバイスは、典型的には、ソフトウェア又はファームウェアを構成するプログラムを、ロードする又はメモリ等から読み込むことで、上記各実施の形態で示した動画像符号化方法、又は動画像復号化方法を実行することができる。
 さらには、半導体技術の進歩または派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適応等が可能性としてありえる。
 (実施の形態7)
 上記各実施の形態で示した動画像符号化方法または装置によって生成された映像データを復号する場合、従来のMPEG-2、MPEG4-AVC、VC-1などの規格に準拠する映像データを復号する場合に比べ、処理量が増加することが考えられる。そのため、LSIex500において、従来の規格に準拠する映像データを復号する際のCPUex502の駆動周波数よりも高い駆動周波数に設定する必要がある。しかし、駆動周波数を高くすると、消費電力が高くなるという課題が生じる。
 この課題を解決するために、テレビex300、LSIex500などの動画像復号化装置は、映像データがどの規格に準拠するものであるかを識別し、規格に応じて駆動周波数を切替える構成とする。図53は、本実施の形態における構成ex800を示している。駆動周波数切替え部ex803は、映像データが、上記各実施の形態で示した動画像符号化方法または装置によって生成されたものである場合には、駆動周波数を高く設定する。そして、上記各実施の形態で示した動画像復号化方法を実行する復号処理部ex801に対し、映像データを復号するよう指示する。一方、映像データが、従来の規格に準拠する映像データである場合には、映像データが、上記各実施の形態で示した動画像符号化方法または装置によって生成されたものである場合に比べ、駆動周波数を低く設定する。そして、従来の規格に準拠する復号処理部ex802に対し、映像データを復号するよう指示する。
 より具体的には、駆動周波数切替え部ex803は、図52のCPUex502と駆動周波数制御部ex512から構成される。また、上記各実施の形態で示した動画像復号化方法を実行する復号処理部ex801、および、従来の規格に準拠する復号処理部ex802は、図52の信号処理部ex507に該当する。CPUex502は、映像データがどの規格に準拠するものであるかを識別する。そして、CPUex502からの信号に基づいて、駆動周波数制御部ex512は、駆動周波数を設定する。また、CPUex502からの信号に基づいて、信号処理部ex507は、映像データの復号を行う。ここで、映像データの識別には、例えば、実施の形態5で記載した識別情報を利用することが考えられる。識別情報に関しては、実施の形態5で記載したものに限られず、映像データがどの規格に準拠するか識別できる情報であればよい。例えば、映像データがテレビに利用されるものであるか、ディスクに利用されるものであるかなどを識別する外部信号に基づいて、映像データがどの規格に準拠するものであるか識別可能である場合には、このような外部信号に基づいて識別してもよい。また、CPUex502における駆動周波数の選択は、例えば、図55のような映像データの規格と、駆動周波数とを対応付けたルックアップテーブルに基づいて行うことが考えられる。ルックアップテーブルを、バッファex508や、LSIの内部メモリに格納しておき、CPUex502がこのルックアップテーブルを参照することにより、駆動周波数を選択することが可能である。
 図54は、本実施の形態の方法を実施するステップを示している。まず、ステップexS200では、信号処理部ex507において、多重化データから識別情報を取得する。次に、ステップexS201では、CPUex502において、識別情報に基づいて映像データが上記各実施の形態で示した符号化方法または装置によって生成されたものであるか否かを識別する。映像データが上記各実施の形態で示した符号化方法または装置によって生成されたものである場合には、ステップexS202において、駆動周波数を高く設定する信号を、CPUex502が駆動周波数制御部ex512に送る。そして、駆動周波数制御部ex512において、高い駆動周波数に設定される。一方、従来のMPEG-2、MPEG4-AVC、VC-1などの規格に準拠する映像データであることを示している場合には、ステップexS203において、駆動周波数を低く設定する信号を、CPUex502が駆動周波数制御部ex512に送る。そして、駆動周波数制御部ex512において、映像データが上記各実施の形態で示した符号化方法または装置によって生成されたものである場合に比べ、低い駆動周波数に設定される。
 さらに、駆動周波数の切替えに連動して、LSIex500またはLSIex500を含む装置に与える電圧を変更することにより、省電力効果をより高めることが可能である。例えば、駆動周波数を低く設定する場合には、これに伴い、駆動周波数を高く設定している場合に比べ、LSIex500またはLSIex500を含む装置に与える電圧を低く設定することが考えられる。
 また、駆動周波数の設定方法は、復号する際の処理量が大きい場合に、駆動周波数を高く設定し、復号する際の処理量が小さい場合に、駆動周波数を低く設定すればよく、上述した設定方法に限らない。例えば、MPEG4-AVC規格に準拠する映像データを復号する処理量の方が、上記各実施の形態で示した動画像符号化方法または装置により生成された映像データを復号する処理量よりも大きい場合には、駆動周波数の設定を上述した場合の逆にすることが考えられる。
 さらに、駆動周波数の設定方法は、駆動周波数を低くする構成に限らない。例えば、識別情報が、上記各実施の形態で示した動画像符号化方法または装置によって生成された映像データであることを示している場合には、LSIex500またはLSIex500を含む装置に与える電圧を高く設定し、従来のMPEG-2、MPEG4-AVC、VC-1などの規格に準拠する映像データであることを示している場合には、LSIex500またはLSIex500を含む装置に与える電圧を低く設定することも考えられる。また、他の例としては、識別情報が、上記各実施の形態で示した動画像符号化方法または装置によって生成された映像データであることを示している場合には、CPUex502の駆動を停止させることなく、従来のMPEG-2、MPEG4-AVC、VC-1などの規格に準拠する映像データであることを示している場合には、処理に余裕があるため、CPUex502の駆動を一時停止させることも考えられる。識別情報が、上記各実施の形態で示した動画像符号化方法または装置によって生成された映像データであることを示している場合であっても、処理に余裕があれば、CPUex502の駆動を一時停止させることも考えられる。この場合は、従来のMPEG-2、MPEG4-AVC、VC-1などの規格に準拠する映像データであることを示している場合に比べて、停止時間を短く設定することが考えられる。
 このように、映像データが準拠する規格に応じて、駆動周波数を切替えることにより、省電力化を図ることが可能になる。また、電池を用いてLSIex500またはLSIex500を含む装置を駆動している場合には、省電力化に伴い、電池の寿命を長くすることが可能である。
 (実施の形態8)
 テレビや、携帯電話など、上述した機器・システムには、異なる規格に準拠する複数の映像データが入力される場合がある。このように、異なる規格に準拠する複数の映像データが入力された場合にも復号できるようにするために、LSIex500の信号処理部ex507が複数の規格に対応している必要がある。しかし、それぞれの規格に対応する信号処理部ex507を個別に用いると、LSIex500の回路規模が大きくなり、また、コストが増加するという課題が生じる。
 この課題を解決するために、上記各実施の形態で示した動画像復号方法を実行するための復号処理部と、従来のMPEG-2、MPEG4-AVC、VC-1などの規格に準拠する復号処理部とを一部共有化する構成とする。この構成例を図56Aのex900に示す。例えば、上記各実施の形態で示した動画像復号方法と、MPEG4-AVC規格に準拠する動画像復号方法とは、エントロピー符号化、逆量子化、デブロッキング・フィルタ、動き補償などの処理において処理内容が一部共通する。共通する処理内容については、MPEG4-AVC規格に対応する復号処理部ex902を共有し、MPEG4-AVC規格に対応しない、本発明の一態様に特有の他の処理内容については、専用の復号処理部ex901を用いるという構成が考えられる。特に、本発明の一態様は、エントロピー復号に特徴を有していることから、例えば、エントロピー復号については専用の復号処理部ex901を用い、それ以外の逆量子化、デブロッキング・フィルタ、動き補償のいずれか、または、全ての処理については、復号処理部を共有することが考えられる。復号処理部の共有化に関しては、共通する処理内容については、上記各実施の形態で示した動画像復号化方法を実行するための復号処理部を共有し、MPEG4-AVC規格に特有の処理内容については、専用の復号処理部を用いる構成であってもよい。
 また、処理を一部共有化する他の例を図56Bのex1000に示す。この例では、本発明の一態様に特有の処理内容に対応した専用の復号処理部ex1001と、他の従来規格に特有の処理内容に対応した専用の復号処理部ex1002と、本発明の一態様に係る動画像復号方法と他の従来規格の動画像復号方法とに共通する処理内容に対応した共用の復号処理部ex1003とを用いる構成としている。ここで、専用の復号処理部ex1001、ex1002は、必ずしも本発明の一態様、または、他の従来規格に特有の処理内容に特化したものではなく、他の汎用処理を実行できるものであってもよい。また、本実施の形態の構成を、LSIex500で実装することも可能である。
 このように、本発明の一態様に係る動画像復号方法と、従来の規格の動画像復号方法とで共通する処理内容について、復号処理部を共有することにより、LSIの回路規模を小さくし、かつ、コストを低減することが可能である。
 本発明に係る画像符号化方法および画像復号方法は、画質の劣化を防止するとともに、処理効率を向上させることができるという効果を奏し、例えば、画像の蓄積、伝送および通信などの様々な用途に利用可能である。例えば、本発明に係る画像符号化方法および画像復号方法は、テレビ、デジタルビデオレコーダー、カーナビゲーション、携帯電話、デジタルカメラおよびデジタルビデオカメラ等の高解像度の情報表示機器および撮像機器に利用可能であり、利用価値が高い。
  100 画像符号化装置
  110、210、306、405 制御部
  120 符号化部
  121 減算部
  122 周波数変換部
  123 量子化部
  124 エントロピー符号化部
  125、225 逆量子化部
  126、226 逆周波数変換部
  127、227 加算部
  128、228、300、400 ループフィルタリング部
  129、229 記憶部
  130、230 面内予測部
  131、231 動き補償部
  132 動き検出部
  133、233 スイッチ
  141、241 画像
  142、242 符号化ストリーム
  151、251、301、401 信号取得部
  152、302 オフセット情報算出部
  153、253、303、403 オフセット処理部
  154、305、307 オフセット情報符号化部
  155、254、304、404 信号出力部
  200 画像復号装置
  220 復号部
  224 エントロピー復号部
  252、402、406 オフセット情報復号部
  3071 算術符号化制御部
  3072 コンテキスト算術符号化部
  3073 バイパス算術符号化部
  4061 算術復号制御部
  4062 コンテキスト算術復号部
  4063 バイパス算術復号部

Claims (13)

  1.  可変の確率を用いる算術符号化であるコンテキスト算術符号化によって、(i)画素値のオフセット処理であるSAO(サンプル適応オフセット)処理を画像の第1領域に対して行うか否かを示す第1情報、および、(ii)前記第1領域に対するSAO処理に前記第1領域とは別の領域に対するSAO処理の情報を用いるか否かを示す第2情報を連続して符号化するコンテキスト算術符号化ステップと、
     前記第1情報および前記第2情報が符号化された後、固定の確率を用いる算術符号化であるバイパス算術符号化によって、前記第1領域に対するSAO処理の情報であり前記第1情報とも前記第2情報とも異なる情報である他の情報を符号化するバイパス算術符号化ステップとを含む
     画像符号化方法。
  2.  前記バイパス算術符号化ステップでは、前記第1領域に対するSAO処理がエッジに応じて行われるエッジオフセット処理であるか画素値に応じて行われるバンドオフセット処理であるかを示す第3情報、および、オフセット値の絶対値を示す第4情報を含む前記他の情報を符号化する
     請求項1に記載の画像符号化方法。
  3.  前記バイパス算術符号化ステップでは、前記第1領域に対するSAO処理がバンドオフセット処理である場合、前記オフセット値の正負を示す第5情報、および、前記オフセット値の適用範囲を示す第6情報を含む前記他の情報を符号化する
     請求項2に記載の画像符号化方法。
  4.  前記コンテキスト算術符号化ステップでは、前記第1領域に対するSAO処理に前記第1領域の右に隣接する右領域に対するSAO処理の情報を用いるか否かを示す情報、および、前記第1領域に対するSAO処理に前記第1領域の上に隣接する上領域に対するSAO処理の情報を用いるか否かを示す情報のうち少なくとも1つを含む前記第2情報を符号化する
     請求項1~3のいずれか1項に記載の画像符号化方法。
  5.  可変の確率を用いる算術復号であるコンテキスト算術復号によって、(i)画素値のオフセット処理であるSAO(サンプル適応オフセット)処理を画像の第1領域に対して行うか否かを示す第1情報、および、(ii)前記第1領域に対するSAO処理に前記第1領域とは別の領域に対するSAO処理の情報を用いるか否かを示す第2情報を連続して復号するコンテキスト算術復号ステップと、
     前記第1情報および前記第2情報が復号された後、固定の確率を用いる算術復号であるバイパス算術復号によって、前記第1領域に対するSAO処理の情報であり前記第1情報とも前記第2情報とも異なる情報である他の情報を復号するバイパス算術復号ステップとを含む
     画像復号方法。
  6.  前記バイパス算術復号ステップでは、前記第1領域に対するSAO処理がエッジに応じて行われるエッジオフセット処理であるか画素値に応じて行われるバンドオフセット処理であるかを示す第3情報、および、オフセット値の絶対値を示す第4情報を含む前記他の情報を復号する
     請求項5に記載の画像復号方法。
  7.  前記バイパス算術復号ステップでは、前記第1領域に対するSAO処理がバンドオフセット処理である場合、前記オフセット値の正負を示す第5情報、および、前記オフセット値の適用範囲を示す第6情報を含む前記他の情報を復号する
     請求項6に記載の画像復号方法。
  8.  前記コンテキスト算術復号ステップでは、前記第1領域に対するSAO処理に前記第1領域の右に隣接する右領域に対するSAO処理の情報を用いるか否かを示す情報、および、前記第1領域に対するSAO処理に前記第1領域の上に隣接する上領域に対するSAO処理の情報を用いるか否かを示す情報のうち少なくとも1つを含む前記第2情報を復号する
     請求項5~7のいずれか1項に記載の画像復号方法。
  9.  制御回路と、
     前記制御回路に電気的に接続される記憶装置とを備え、
     前記制御回路は、
     可変の確率を用いる算術符号化であるコンテキスト算術符号化によって、(i)画素値のオフセット処理であるSAO(サンプル適応オフセット)処理を画像の第1領域に対して行うか否かを示す第1情報、および、(ii)前記第1領域に対するSAO処理に前記第1領域とは別の領域に対するSAO処理の情報を用いるか否かを示す第2情報を連続して符号化するコンテキスト算術符号化ステップと、
     前記第1情報および前記第2情報が符号化された後、固定の確率を用いる算術符号化であるバイパス算術符号化によって、前記第1領域に対するSAO処理の情報であり前記第1情報とも前記第2情報とも異なる情報である他の情報を符号化するバイパス算術符号化ステップとを実行する
     画像符号化装置。
  10.  制御回路と、
     前記制御回路に電気的に接続される記憶装置とを備え、
     前記制御回路は、
     可変の確率を用いる算術復号であるコンテキスト算術復号によって、(i)画素値のオフセット処理であるSAO(サンプル適応オフセット)処理を画像の第1領域に対して行うか否かを示す第1情報、および、(ii)前記第1領域に対するSAO処理に前記第1領域とは別の領域に対するSAO処理の情報を用いるか否かを示す第2情報を連続して復号するコンテキスト算術復号ステップと、
     前記第1情報および前記第2情報が復号された後、固定の確率を用いる算術復号であるバイパス算術復号によって、前記第1領域に対するSAO処理の情報であり前記第1情報とも前記第2情報とも異なる情報である他の情報を復号するバイパス算術復号ステップとを実行する
     画像復号装置。
  11.  請求項9に記載の画像符号化装置と、
     請求項10に記載の画像復号装置とを備える
     画像符号化復号装置。
  12.  請求項1に記載の画像符号化方法をコンピュータに実行させるためのプログラム。
  13.  請求項5に記載の画像復号方法をコンピュータに実行させるためのプログラム。
PCT/JP2013/003452 2012-06-08 2013-05-31 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置および画像符号化復号装置 WO2013183268A1 (ja)

Priority Applications (12)

Application Number Priority Date Filing Date Title
PL13800830T PL2860973T3 (pl) 2012-06-08 2013-05-31 Sposób kodowania obrazów, sposób dekodowania obrazów, urządzenie do kodowania obrazów, urządzenie do dekodowania obrazów oraz urządzenie kodujące i urządzenie dekodujące
CN201380002016.XA CN103636209B (zh) 2012-06-08 2013-05-31 图像解码方法和图像解码装置
AU2013272989A AU2013272989B2 (en) 2012-06-08 2013-05-31 Image coding method, image decoding method, image coding apparatus, image decoding apparatus, and image coding and decoding apparatus
RU2013157586A RU2628315C2 (ru) 2012-06-08 2013-05-31 Способ кодирования изображений, способ декодирования изображений, устройство кодирования изображений, устройство декодирования изображений и устройство кодирования и декодирования изображений
JP2013551817A JP6132161B2 (ja) 2012-06-08 2013-05-31 画像符号化方法、画像復号方法、画像符号化装置および画像復号装置
KR1020137034152A KR101886472B1 (ko) 2012-06-08 2013-05-31 화상 부호화 방법, 화상 복호 방법, 화상 부호화 장치, 화상 복호 장치 및 화상 부호화 복호 장치
ES13800830T ES2781573T3 (es) 2012-06-08 2013-05-31 Procedimiento de codificación de imágenes, procedimiento de decodificación de imágenes, dispositivo de codificación de imágenes, dispositivo de decodificación de imágenes, y dispositivo de codificación y decodificación de imágenes
CA2840063A CA2840063C (en) 2012-06-08 2013-05-31 Image coding method, image decoding method, image coding apparatus, image decoding apparatus, and image coding and decoding apparatus
MX2013014752A MX2013014752A (es) 2012-06-08 2013-05-31 Metodo de codificacion de imagenes, metodo de decodificacion de imagenes, aparato de codificacion de imagenes, aparato de decodificacion de imagenes y aparato de codificacion y decodificacion de imagenes.
EP13800830.5A EP2860973B1 (en) 2012-06-08 2013-05-31 Image encoding method, image decoding method, image encoding device, image decoding device, and image encoding and decoding device
BR112013033374-0A BR112013033374B1 (pt) 2012-06-08 2013-05-31 Método de codificação de imagem, método de decodificação de imagem, aparelho de codificação de imagem, aparelho de decodificação de imagem e aparelho de codificação e decodificação de imagem
ZA2013/09740A ZA201309740B (en) 2012-06-08 2013-12-23 Image encoding method,image decoding method,image encoding apparatus,image decoding apparatus ,and image encoding and decoding apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201261657183P 2012-06-08 2012-06-08
US61/657,183 2012-06-08

Publications (1)

Publication Number Publication Date
WO2013183268A1 true WO2013183268A1 (ja) 2013-12-12

Family

ID=49711674

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/003452 WO2013183268A1 (ja) 2012-06-08 2013-05-31 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置および画像符号化復号装置

Country Status (15)

Country Link
US (6) US9305367B2 (ja)
EP (1) EP2860973B1 (ja)
JP (1) JP6132161B2 (ja)
KR (1) KR101886472B1 (ja)
CN (2) CN103636209B (ja)
AU (1) AU2013272989B2 (ja)
CA (1) CA2840063C (ja)
ES (1) ES2781573T3 (ja)
MX (1) MX2013014752A (ja)
MY (1) MY169635A (ja)
PL (1) PL2860973T3 (ja)
RU (1) RU2628315C2 (ja)
TW (1) TWI573437B (ja)
WO (1) WO2013183268A1 (ja)
ZA (1) ZA201309740B (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017188765A (ja) * 2016-04-05 2017-10-12 富士通株式会社 画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法、画像復号プログラムおよび画像伝送システム
JP2019024219A (ja) * 2012-06-28 2019-02-14 キヤノン株式会社 符号化ビデオデータのサンプル適応オフセットデータを復号するための方法、プログラム、コンピュータ可読記憶媒体、およびビデオデコーダ
EP3445052A1 (en) 2017-08-10 2019-02-20 Fujitsu Limited Video encoding apparatus and video encoding method
JP2020010409A (ja) * 2012-07-02 2020-01-16 ソニー株式会社 画像処理装置及び画像処理方法

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103636209B (zh) * 2012-06-08 2017-09-26 太阳专利托管公司 图像解码方法和图像解码装置
DK2854398T3 (en) 2012-06-11 2018-01-08 Samsung Electronics Co Ltd Method of encoding videos that share SAO parameters by color component
US10623759B2 (en) 2012-06-13 2020-04-14 Sony Corporation Decoupling enhancements in sample adaptive offset (SAO) for high efficiency video encoder (HEVC)
AU2013273686B2 (en) * 2012-06-27 2017-03-02 Sun Patent Trust Image coding method, image decoding method, image coding apparatus, image decoding apparatus, and image coding and decoding apparatus
MY171481A (en) 2012-07-16 2019-10-15 Samsung Electronics Co Ltd Video encoding method and video encoding apparatus and video decoding method and video decoding apparatus for signaling sao parameters
KR102164698B1 (ko) * 2013-03-25 2020-10-14 광운대학교 산학협력단 입력 버퍼를 재사용하는 샘플 적응적 오프셋 처리 장치 및 샘플 적응적 오프셋 처리 장치의 동작 방법
EP2996269A1 (en) 2014-09-09 2016-03-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio splicing concept
DE112016001701T5 (de) * 2015-04-13 2018-01-04 Semiconductor Energy Laboratory Co., Ltd. Decoder, Empfänger und elektronisches Gerät
CN110114803B (zh) * 2016-12-28 2023-06-27 松下电器(美国)知识产权公司 三维模型分发方法、三维模型接收方法、三维模型分发装置以及三维模型接收装置
EP3750320B1 (en) * 2018-02-09 2023-11-08 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Adaptive in-loop filter with multiple feature-based classifications
US11003811B2 (en) 2018-02-09 2021-05-11 International Business Machines Corporation Generating samples of outcomes from a quantum simulator
CN112150585B (zh) * 2019-06-11 2024-10-15 腾讯科技(深圳)有限公司 动画数据编码、解码方法、装置、存储介质和计算机设备
CN111103829B (zh) * 2019-12-11 2024-05-17 旋智电子科技(上海)有限公司 一种电机控制装置和方法
US11368715B2 (en) * 2019-12-27 2022-06-21 Qualcomm Incorporated Block-based delta pulse code modulation for video coding

Family Cites Families (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US510203A (en) * 1893-12-05 Nathan smith
US5150203A (en) * 1990-12-26 1992-09-22 The Grass Valley Group, Inc. Variable chrominance filtering for encoding television signals
US6917644B2 (en) * 1996-04-25 2005-07-12 Sirf Technology, Inc. Spread spectrum receiver with multi-path correction
JP3413720B2 (ja) * 1998-06-26 2003-06-09 ソニー株式会社 画像符号化方法及び装置、並びに画像復号方法及び装置
US6856701B2 (en) * 2001-09-14 2005-02-15 Nokia Corporation Method and system for context-based adaptive binary arithmetic coding
JP3748545B2 (ja) * 2002-09-19 2006-02-22 株式会社ナムコ プログラム、情報記憶媒体及び画像生成装置
US20050206741A1 (en) * 2004-03-19 2005-09-22 Raber Gregory W Law enforcement vehicle surveillance system
US20070071090A1 (en) 2005-06-21 2007-03-29 National Chiao Tung University Method for performing context adaptive binary arithmetic coding with stochastic bit reshuffling for fine granularity scalability
EP1913778A4 (en) 2005-07-08 2010-04-28 Lg Electronics Inc METHOD FOR MODELING THE CODING OF INFORMATION OF A VIDEO SIGNAL FOR COMPRESSING / DECOMPRESSING THE INFORMATION
RU2371881C1 (ru) 2005-07-08 2009-10-27 ЭлДжи ЭЛЕКТРОНИКС ИНК. Способ моделирования информации кодирования видеосигнала для компрессии/декомпрессии информации
KR101158439B1 (ko) 2005-07-08 2012-07-13 엘지전자 주식회사 영상 신호의 코딩정보를 압축/해제하기 위해 모델링하는 방법
KR100878826B1 (ko) 2005-07-08 2009-01-14 엘지전자 주식회사 영상 신호의 코딩정보를 압축/해제하기 위해 모델링하는방법
US20080123977A1 (en) 2005-07-22 2008-05-29 Mitsubishi Electric Corporation Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program
US8509551B2 (en) 2005-07-22 2013-08-13 Mitsubishi Electric Corporation Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recording with image encoding program and computer readable recording medium recorded with image decoding program
RU2368095C1 (ru) * 2005-07-22 2009-09-20 Мицубиси Электрик Корпорейшн Кодер изображения и декодер изображения, способ кодирования изображения и способ декодирования изображения, программа кодирования изображения и программа декодирования изображения и компьютерно-считываемый носитель записи, на котором записана программа кодирования изображения, и компьютерно-считываемый носитель записи, на котором записана программа декодирования изображения
US8488889B2 (en) 2005-07-22 2013-07-16 Mitsubishi Electric Corporation Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program
US20080123947A1 (en) 2005-07-22 2008-05-29 Mitsubishi Electric Corporation Image encoding device, image decoding device, image encoding method, image decoding method, image encoding program, image decoding program, computer readable recording medium having image encoding program recorded therein
US20080130990A1 (en) 2005-07-22 2008-06-05 Mitsubishi Electric Corporation Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program
US20080130988A1 (en) 2005-07-22 2008-06-05 Mitsubishi Electric Corporation Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program
US20080137744A1 (en) 2005-07-22 2008-06-12 Mitsubishi Electric Corporation Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program
US20080130989A1 (en) 2005-07-22 2008-06-05 Mitsubishi Electric Corporation Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program
US20080165849A1 (en) 2005-07-22 2008-07-10 Mitsubishi Electric Corporation Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program
US20090034857A1 (en) 2005-07-22 2009-02-05 Mitsubishi Electric Corporation Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program
US20090123066A1 (en) 2005-07-22 2009-05-14 Mitsubishi Electric Corporation Image encoding device, image decoding device, image encoding method, image decoding method, image encoding program, image decoding program, computer readable recording medium having image encoding program recorded therein,
CA2610276C (en) 2005-07-22 2013-01-29 Mitsubishi Electric Corporation Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program
CN100466739C (zh) 2005-10-12 2009-03-04 华为技术有限公司 Cabac解码系统及方法
JP2007142637A (ja) * 2005-11-16 2007-06-07 Matsushita Electric Ind Co Ltd 画像情報符号化装置
US8189038B2 (en) 2005-12-21 2012-05-29 International Business Machines Corporation Stereographic projection apparatus with passive eyewear utilizing a continuously variable polarizing element
US7656326B2 (en) 2006-06-08 2010-02-02 Via Technologies, Inc. Decoding of context adaptive binary arithmetic codes in computational core of programmable graphics processing unit
JP4878262B2 (ja) 2006-10-31 2012-02-15 キヤノン株式会社 エントロピー符号化装置
US7710296B2 (en) 2007-09-19 2010-05-04 Texas Instruments Incorporated N-bin arithmetic coding for context adaptive binary arithmetic coding
US20090154567A1 (en) 2007-12-13 2009-06-18 Shaw-Min Lei In-loop fidelity enhancement for video compression
US8195001B2 (en) 2008-04-09 2012-06-05 Intel Corporation In-loop adaptive wiener filter for video coding and decoding
US8138956B2 (en) 2008-06-02 2012-03-20 Mediatek Inc. CABAC encoder and CABAC encoding method
US8548041B2 (en) 2008-09-25 2013-10-01 Mediatek Inc. Adaptive filter
US8270807B2 (en) * 2009-07-13 2012-09-18 Panasonic Corporation Recording medium, playback device, and integrated circuit
KR101457418B1 (ko) 2009-10-23 2014-11-04 삼성전자주식회사 계층적 부호화 단위의 크기에 따른 비디오 부호화 방법과 그 장치, 및 비디오 복호화 방법과 그 장치
CN101771879B (zh) 2010-01-28 2011-08-17 清华大学 基于cabac的并行归一化编码实现电路及编码方法
US8660174B2 (en) 2010-06-15 2014-02-25 Mediatek Inc. Apparatus and method of adaptive offset for video coding
US9094658B2 (en) 2010-05-10 2015-07-28 Mediatek Inc. Method and apparatus of adaptive loop filtering
US9456111B2 (en) 2010-06-15 2016-09-27 Mediatek Inc. System and method for content adaptive clipping
KR20120012385A (ko) 2010-07-31 2012-02-09 오수미 인트라 예측 부호화 장치
US8902988B2 (en) 2010-10-01 2014-12-02 Qualcomm Incorporated Zero-out of high frequency coefficients and entropy coding retained coefficients using a joint context model
US9055305B2 (en) 2011-01-09 2015-06-09 Mediatek Inc. Apparatus and method of sample adaptive offset for video coding
US9813738B2 (en) 2010-10-05 2017-11-07 Hfi Innovation Inc. Method and apparatus of adaptive loop filtering
US8861617B2 (en) 2010-10-05 2014-10-14 Mediatek Inc Method and apparatus of region-based adaptive loop filtering
BR112013011053A8 (pt) * 2010-11-10 2016-08-23 Sony Corp Dispositivo e método de processamento de imagem
PT2645715T (pt) 2010-11-25 2020-01-29 Lg Electronics Inc Método para sinalizar informação de imagem, e método para descodificar informação de imagem utilizando a mesma
CN103392338A (zh) 2011-01-03 2013-11-13 联发科技股份有限公司 基于滤波单元的回路滤波方法
US9161041B2 (en) 2011-01-09 2015-10-13 Mediatek Inc. Apparatus and method of efficient sample adaptive offset
US9008170B2 (en) * 2011-05-10 2015-04-14 Qualcomm Incorporated Offset type and coefficients signaling method for sample adaptive offset
US20120294353A1 (en) 2011-05-16 2012-11-22 Mediatek Inc. Apparatus and Method of Sample Adaptive Offset for Luma and Chroma Components
US10484693B2 (en) * 2011-06-22 2019-11-19 Texas Instruments Incorporated Method and apparatus for sample adaptive offset parameter estimation for image and video coding
US20130003829A1 (en) * 2011-07-01 2013-01-03 Kiran Misra System for initializing an arithmetic coder
US10070152B2 (en) * 2011-08-24 2018-09-04 Texas Instruments Incorporated Sample adaptive offset (SAO) parameter signaling
US9277194B2 (en) * 2011-11-08 2016-03-01 Texas Instruments Incorporated Method and apparatus for image and video coding using hierarchical sample adaptive band offset
US20130114686A1 (en) * 2011-11-08 2013-05-09 Sharp Laboratories Of America, Inc. Video decoder with enhanced cabac motion vector decoding
US9503717B2 (en) * 2012-01-09 2016-11-22 Texas Instruments Incorporated Context adaptive binary arithmetic coding (CABAC) with scalable throughput and coding efficiency
KR101638720B1 (ko) 2012-05-29 2016-07-20 미디어텍 인크. 샘플 어댑티브 오프셋 정보를 부호화하는 방법 및 장치
CN103636209B (zh) * 2012-06-08 2017-09-26 太阳专利托管公司 图像解码方法和图像解码装置
AU2012203828B2 (en) 2012-06-28 2015-12-10 Canon Kabushiki Kaisha Method, apparatus and system for encoding and decoding a sample adaptive offset data of encoded video data
CN107172437B (zh) 2012-07-02 2020-04-24 索尼公司 对于高效率视频编码器的采样自适应偏移的解耦增强
MY171481A (en) 2012-07-16 2019-10-15 Samsung Electronics Co Ltd Video encoding method and video encoding apparatus and video decoding method and video decoding apparatus for signaling sao parameters

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
BENJAMIN BROSS ET AL.: "High efficiency video coding (HEVC) text specification draft 7", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT- VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/ WG11 JCTVC-I1003_D1, ITU-T, 16 May 2012 (2012-05-16), pages 45, 174 - 175, XP030112373 *
CHIH-WEI HSU ET AL.: "Non-CEl: Decoupling SAO on/off from SAO type with neighbor-based contexts", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11 JCTVC-I0199, ITU-T, 27 April 2012 (2012-04-27), pages 1 - 5, XP030052783 *
E. MAANI ET AL.: "SAO Type Coding Simplification", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11 JCTVC-I0246, ITU-T, 28 April 2012 (2012-04-28), pages 1 - 4, XP030052835 *
FRANK BOSSEN: "Common test conditions and software reference configurations", JCTVC-H1100, JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11 8TH MEETING, 1 February 2012 (2012-02-01)
See also references of EP2860973A4

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019024219A (ja) * 2012-06-28 2019-02-14 キヤノン株式会社 符号化ビデオデータのサンプル適応オフセットデータを復号するための方法、プログラム、コンピュータ可読記憶媒体、およびビデオデコーダ
JP2020010393A (ja) * 2012-06-28 2020-01-16 キヤノン株式会社 符号化ビデオデータのサンプル適応オフセットデータを復号するための方法、プログラム、コンピュータ可読記憶媒体、およびビデオデコーダ
JP2021040332A (ja) * 2012-06-28 2021-03-11 キヤノン株式会社 ビデオデータのサンプル適応オフセットデータを復号するための方法、プログラム、コンピュータ可読記憶媒体、およびビデオデコーダ
JP6992147B2 (ja) 2012-06-28 2022-01-13 キヤノン株式会社 ビデオデータのサンプル適応オフセットデータを復号するための方法
JP2020010409A (ja) * 2012-07-02 2020-01-16 ソニー株式会社 画像処理装置及び画像処理方法
JP2017188765A (ja) * 2016-04-05 2017-10-12 富士通株式会社 画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法、画像復号プログラムおよび画像伝送システム
EP3445052A1 (en) 2017-08-10 2019-02-20 Fujitsu Limited Video encoding apparatus and video encoding method
JP2019036772A (ja) * 2017-08-10 2019-03-07 富士通株式会社 動画像符号化装置、動画像符号化方法、及び動画像符号化プログラム
US11223829B2 (en) 2017-08-10 2022-01-11 Fujitsu Limited Video encoding apparatus and video encoding method with block shape based filtering

Also Published As

Publication number Publication date
RU2013157586A (ru) 2016-08-10
US20190141330A1 (en) 2019-05-09
US20200405923A1 (en) 2020-12-31
US10212425B2 (en) 2019-02-19
JPWO2013183268A1 (ja) 2016-01-28
US20220295067A1 (en) 2022-09-15
CA2840063A1 (en) 2013-12-12
KR20150018345A (ko) 2015-02-23
EP2860973B1 (en) 2020-03-04
TW201404168A (zh) 2014-01-16
US20160156909A1 (en) 2016-06-02
KR101886472B1 (ko) 2018-08-07
US11375195B2 (en) 2022-06-28
US11849116B2 (en) 2023-12-19
ES2781573T3 (es) 2020-09-03
US20130336592A1 (en) 2013-12-19
EP2860973A1 (en) 2015-04-15
JP6132161B2 (ja) 2017-05-24
CN107707925A (zh) 2018-02-16
CN103636209B (zh) 2017-09-26
BR112013033374A2 (pt) 2017-06-13
TWI573437B (zh) 2017-03-01
AU2013272989A2 (en) 2014-02-13
RU2628315C2 (ru) 2017-08-15
CA2840063C (en) 2018-09-18
ZA201309740B (en) 2015-05-27
US9305367B2 (en) 2016-04-05
MX2013014752A (es) 2014-03-06
AU2013272989A1 (en) 2014-01-23
PL2860973T3 (pl) 2020-08-24
US10812800B2 (en) 2020-10-20
AU2013272989B2 (en) 2017-05-25
CN107707925B (zh) 2020-08-18
CN103636209A (zh) 2014-03-12
US20240073422A1 (en) 2024-02-29
EP2860973A4 (en) 2016-05-11
MY169635A (en) 2019-04-24

Similar Documents

Publication Publication Date Title
JP6216021B2 (ja) フィルタ方法及び画像処理システム
JP6365957B2 (ja) 画像符号化方法および画像符号化装置
JP6132161B2 (ja) 画像符号化方法、画像復号方法、画像符号化装置および画像復号装置
JP6384690B2 (ja) 画像符号化方法、画像符号化装置、画像復号方法及び画像復号装置
JP5559918B2 (ja) 画像を復号する装置、システム及び画像視聴方法
WO2013073184A1 (ja) 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、および画像符号化復号装置

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2013551817

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: MX/A/2013/014752

Country of ref document: MX

ENP Entry into the national phase

Ref document number: 2840063

Country of ref document: CA

ENP Entry into the national phase

Ref document number: 20137034152

Country of ref document: KR

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 2013272989

Country of ref document: AU

Date of ref document: 20130531

Kind code of ref document: A

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

Ref document number: 13800830

Country of ref document: EP

Kind code of ref document: A1

REG Reference to national code

Ref country code: BR

Ref legal event code: B01A

Ref document number: 112013033374

Country of ref document: BR

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2013157586

Country of ref document: RU

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 112013033374

Country of ref document: BR

Kind code of ref document: A2

Effective date: 20131224