WO2013065673A1 - 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 - Google Patents

動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 Download PDF

Info

Publication number
WO2013065673A1
WO2013065673A1 PCT/JP2012/078012 JP2012078012W WO2013065673A1 WO 2013065673 A1 WO2013065673 A1 WO 2013065673A1 JP 2012078012 W JP2012078012 W JP 2012078012W WO 2013065673 A1 WO2013065673 A1 WO 2013065673A1
Authority
WO
WIPO (PCT)
Prior art keywords
tile
filter
unit
decoded image
frame
Prior art date
Application number
PCT/JP2012/078012
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 KR1020207023042A priority Critical patent/KR102272561B1/ko
Application filed by 三菱電機株式会社 filed Critical 三菱電機株式会社
Priority to KR1020167007203A priority patent/KR101893664B1/ko
Priority to EP12845564.9A priority patent/EP2775715A4/en
Priority to BR112014009569-8A priority patent/BR112014009569B1/pt
Priority to KR1020147014571A priority patent/KR20140092862A/ko
Priority to IN2948CHN2014 priority patent/IN2014CN02948A/en
Priority to KR1020187024061A priority patent/KR102145782B1/ko
Priority to CN201280053518.0A priority patent/CN103907348A/zh
Priority to US14/350,732 priority patent/US9986235B2/en
Publication of WO2013065673A1 publication Critical patent/WO2013065673A1/ja
Priority to US15/880,260 priority patent/US10523935B2/en
Priority to US16/688,475 priority patent/US10708586B2/en
Priority to US16/890,468 priority patent/US11051014B2/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/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • 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/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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
    • 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/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction

Definitions

  • the present invention relates to a moving picture coding apparatus and a moving picture coding method for compressing and coding an image and transmitting the same, a moving picture decoding apparatus for decoding an image from coded data transmitted by the moving picture coding apparatus, and a moving picture decoding apparatus It relates to the method.
  • a square block called an input video frame by a name such as a macro block (MB) or a coding unit (CU)
  • MB macro block
  • CU coding unit
  • intra-frame prediction, inter-frame prediction, orthogonal transformation of prediction error signal, quantization, entropy coding processing and the like are performed.
  • processing for determining loop filter parameters, processing for filtering the local decoded image using the loop filter And the entropy coding process is performed.
  • the encoding process of each coding unit is premised on processing the coding units in raster scan order, and the encoding process of a certain coding unit requires the encoding result of the previous coding unit in raster scan order. Specifically, when performing inter-frame prediction, a local decoded image of an adjacent coding unit is used as a pixel reference. Also, in the entropy coding process, when estimating the probability of occurrence of a symbol, a probability transition model is shared with the previous coding unit in raster scan order, and adjacent macroblocks for switching the probability model.
  • Non-Patent Document 1 in order to solve the above problems, a structure called a tile is used.
  • the tile is a rectangular area made up of a plurality of coding units, as shown in FIG.
  • Parallel processing at the tile level is possible by eliminating the dependency on coding units belonging to different tiles.
  • the tiles have the following characteristics.
  • the image division into tiles is performed in units of coding units.
  • the width of each row and each column is nonuniform grid shape. That is, vertically adjacent tiles have equal left and right coordinates, and horizontally adjacent tiles have equal upper and lower coordinates.
  • Each coding unit is processed within the tile in a closed raster scan order. Also, it is possible to perform slice division in the tile.
  • the coding unit to be processed first in the tile starts entropy coding from the initial state.
  • (5) In the processing of intraframe prediction, interframe prediction, and entropy coding / decoding, when referring to locally decoded images of adjacent coding units and coding modes, adjacent coding units are different tiles. If it belongs, processing of the screen edge is performed without referring to the adjacent coding unit.
  • the loop filter process is performed on the entire screen after processing of all the tiles is completed and a decoded image for the entire screen is created.
  • JCT VC-F 335 Tiles
  • JCT-VC Joint Collaborative Team on Video Coding
  • the conventional moving picture coding apparatus is configured as described above, parallel processing is possible for intra-frame / inter-frame prediction, orthogonal transformation / quantization of prediction error signal, and entropy coding.
  • the loop filter process is performed on the entire screen.
  • the tile boundary filtering process it is necessary to refer to locally decoded images of both tiles adjacent to the boundary, so both tiles must have been processed, and parallel processing at tile level is required. There was a problem that processing could not be performed.
  • the present invention has been made to solve the above-described problems, and a moving picture coding apparatus, a moving picture decoding apparatus, a moving picture coding method, and a moving picture which can perform loop filter processing in parallel at tile level.
  • the purpose is to obtain an image decoding method.
  • a moving picture coding apparatus comprises: a division control means for outputting division control information for instructing a division state of an input image; and a rectangular area of a predetermined size according to the division control information outputted from the division control means Tile distribution with reference to the locally decoded image stored in the image memory, and tile distribution means for dividing the tile into tiles and distributing the divided tiles, an image memory for storing the locally decoded image after the filtering process, and One or more tile codes for generating a locally decoded image from the coded bit data as well as outputting coded bit data which is the coding result by performing predictive difference coding processing on the tiles distributed by the means.
  • Filter and tile-by-tile filter suitable for filtering the locally decoded image generated by the tile coding unit One or more tile filter means for performing the filtering process on the local decoded image using the filter, and local decoding after the filtering process by the one or more tile filter means according to the division control information output from the division control means
  • a local decoded image storage unit that combines the images to generate a frame-by-frame local decoded image and stores the local decoded image in an image memory; and the multiplexing unit includes encoded bit data output from the tile encoding unit
  • the filter parameter indicating the tile-based filter determined by the tile filter means and the division control information output from the division control means are multiplexed to generate a bit stream.
  • the division control means for outputting division control information for instructing the division state of the input image, and the input image is divided into tiles which are rectangular areas of a predetermined size according to the division control information outputted from the division control means
  • tile distribution means for distributing tiles after division, and by performing prediction differential encoding processing on the tiles distributed by the tile distribution means with reference to the locally decoded image stored in the image memory
  • One or more tile coding means for outputting coded bit data which is a coding result and generating a local decoded image from the coded bit data is provided, and one or more tile filter means are provided by the tile coding means Determine a tile-based filter suitable for the filtering process of the generated local decoded image, and use the filter to execute the local decoding Since it is configured to perform filtering processing on the image, there is an effect that it is possible to perform parallel processing of the loop filter at the tile level.
  • FIG. 1 is a block diagram showing a moving picture coding apparatus according to a first embodiment of the present invention.
  • the encoding control unit 1 executes processing for outputting tile division control information (division control information) for instructing a division state when dividing an input image represented by a video signal into tiles which are rectangular areas of a predetermined size.
  • tile division control information division control information
  • the encoding control unit 1 is a filter parameter sharing flag indicating whether or not the filter used in the filtering process of the locally decoded image in units of tiles generated by the tile encoding units 5-1 to 5-N is shared by each tile Implement processing to output (filter sharing flag).
  • the coding control unit 1 constitutes a division control unit.
  • the tile division control unit 2 performs processing of controlling division of the input image in the parallel processing start unit 3 so that the tile division control information output from the encoding control unit 1 matches the designated division state.
  • the parallel processing start unit 3 divides the input image represented by the video signal into tiles of a predetermined size, and distributes the divided tiles to the tile encoding units 5-1 to 5-N. Perform the process.
  • the tile division control unit 2 and the parallel processing start unit 3 constitute tile distribution means.
  • the motion compensation prediction frame memory 4 is a recording medium for storing the locally decoded image after the filtering process.
  • the motion compensation prediction frame memory 4 constitutes an image memory.
  • the tile encoding device 5 has N tile encoding units 5-1 to 5-N implemented, and the N tile encoding units 5-1 to 5-N independently perform prediction differential encoding processing. carry out. N is an integer of 1 or more.
  • the tile coding units 5-1 to 5-N refer to the local decoded image after filtering processing stored in the motion compensation prediction frame memory 4 and perform predictive difference coding on the tiles distributed by the parallel processing start unit 3
  • the bit sequence data (coding bit data) which is the coding result and the coding parameter
  • the coding parameter is a parameter used when performing the prediction differential coding process, coding While outputting a mode, a prediction differential coding parameter, an intra prediction parameter, and an inter prediction parameter
  • a process of generating a tile local decoded image is performed.
  • the tile encoding units 5-1 to 5-N constitute tile encoding means.
  • the loop filter control unit 6 When the filter parameter sharing flag output from the encoding control unit 1 indicates that the filter is shared by each tile, the loop filter control unit 6 generates the tiles generated by the tile encoding units 5-1 to 5-N. A local decoded image in frame units is obtained from the local decoded image, a filter in frame units suitable for the local decoded image in frame units is determined, and a process of outputting a filter parameter indicating the filter to the tile loop filter device 7 is performed. Further, the loop filter control unit 6 performs variable length coding on the filter parameter indicating the filter in frame units, and outputs the coded data of the filter parameter to the parallel processing end unit 8. The loop filter control unit 6 constitutes a frame unit filter determination unit.
  • the tile loop filter device 7 implements N tile loop filter units 7-1 to 7-N, and the N tile loop filter units 7-1 to 7-N independently perform filtering processing.
  • N is an integer of 1 or more.
  • the tile loop filter units 7-1 to 7-N indicate that the filter parameter sharing flag output from the encoding control unit 1 indicates that the filters are not shared in each tile.
  • Determine a tile-based filter suitable for filtering the tile local decoded image generated by N perform filtering on the tile local decoded image using the filter, and change the filter parameter indicating the tile-based filter
  • a long encoding process is performed to multiplex the encoded data of the filter parameter into the bit sequence data output from the tile encoding units 5-1 to 5-N.
  • the tile encoding unit 5-1 through the frame unit filter indicated by the filter parameter output from the loop filter control unit 6 are used.
  • a filtering process of the tile local decoded image generated by 5-N is performed, and a process of outputting the bit series data output from the tile encoding units 5-1 to 5-N as it is.
  • the tile loop filter units 7-1 to 7-N constitute tile filter means.
  • the parallel processing end unit 8 combines the tile local decoded images after the filtering processing by the tile loop filter units 7-1 to 7-N according to the tile division control information output from the encoding control unit 1 and generates a local decoded image in frame units. Processing for storing the local decoded image in the motion compensation prediction frame memory 4 and outputting the bit sequence data output from the tile loop filter units 7-1 to 7-N to the variable length code multiplexing unit 9 Conduct.
  • the parallel processing end unit 8 indicates that the filter parameter sharing flag output from the encoding control unit 1 makes the filter common to each tile, the filter in frame unit output from the loop filter control unit 6 is used. A process of outputting the encoded data of the filter parameter shown to the variable-length code multiplexing unit 9 is performed.
  • the parallel processing end unit 8 constitutes a local decoded image storage unit.
  • variable-length code multiplexing unit 9 When the variable-length code multiplexing unit 9 indicates that the filter parameter sharing flag output from the encoding control unit 1 does not make the filter common to each tile, bit sequence data output from the parallel processing end unit 8; A process of generating a bit stream by multiplexing the tile division control information and the filter parameter sharing flag output from the encoding control unit 1 is performed. On the other hand, when the filter parameter sharing flag indicates that the filters should be shared in each tile, the bit sequence data output from the parallel processing end unit 8 and the encoded data of the filter parameter indicating the filter in frame units, and encoding The tile division control information and the filter parameter sharing flag output from the control unit 1 are multiplexed to generate a bit stream.
  • the variable-length code multiplexing unit 9 constitutes a multiplexing means.
  • a coding control unit 1 a tile division control unit 2, a parallel processing start unit 3, a motion compensation prediction frame memory 4, a tile coding device 5, and a loop filter control, which are components of a moving picture coding device.
  • Each of the unit 6, the tile loop filter unit 7, the parallel processing end unit 8 and the variable-length code multiplexing unit 9 is configured by dedicated hardware (for example, a semiconductor integrated circuit on which a CPU is mounted, a one-chip microcomputer, etc.)
  • the coding control unit 1, the tile division control unit 2, the parallel processing start unit 3, the tile coding device 5, and the loop filter are assumed.
  • FIG. 2 is a flowchart showing the contents of processing (moving picture coding method) of the moving picture coding apparatus according to the first embodiment of the present invention.
  • the tile coding control unit 21 determines a coding block size which is a size of a coding target block, and selects a block division unit from among one or more selectable intra coding modes and inter coding modes. A process of determining the coding mode with the highest coding efficiency for the current block to be coded output from 22 is performed.
  • the tile coding control unit 21 uses the intra prediction parameter to be used when performing the intra prediction process on the current block in the intra coding mode.
  • the process of determining the inter prediction parameter to be used when performing the inter prediction process on the current block in the inter coding mode is determined. carry out. Further, the tile coding control unit 21 performs processing of determining prediction difference coding parameters to be provided to the transform / quantization unit 27, the inverse quantization / inverse transform unit 28, and the variable length coding unit 31.
  • the coding mode, the prediction difference coding parameter, the intra prediction parameter, or the inter prediction parameter determined by the tile coding control unit 21 will be collectively referred to as a coding parameter.
  • the block division unit 22 divides the tile distributed by the parallel processing start unit 3 into blocks of the coding block size (blocks of prediction processing units) determined by the tile coding control unit 21 and generates blocks of prediction processing units. A process of outputting a certain encoding target block is performed.
  • the changeover switch 23 outputs the coding target block output from the block division unit 22 to the intra prediction unit 24 and performs tile coding. If the coding mode determined by the control unit 21 is the inter coding mode, a process of outputting the coding target block output from the block division unit 22 to the motion compensation prediction unit 25 is performed.
  • the intra prediction unit 24 uses the intra prediction parameter determined by the tile coding control unit 21 while referring to the locally decoded image stored in the tile local decoded image memory 30, and outputs the coding output from the changeover switch 23 The intra prediction process is performed on the target block to generate an intra predicted image.
  • locally decoded images stored in the tile local decoded image memory 30 are only locally decoded images of blocks belonging to the same tile, in the intra prediction processing in the intra prediction unit 24, local decoding of blocks belonging to different tiles No image reference is made. If the block at the reference position is a block belonging to a different tile, intra prediction processing is performed in which pixel reference is unnecessary.
  • the motion compensation prediction unit 25 compares the coding target block output from the changeover switch 23 with the locally decoded image after filtering processing stored in the motion compensation prediction frame memory 4 to search for a motion vector, and The inter prediction process (motion compensation prediction process) is performed on the current block to be encoded using the inter prediction parameter determined by the tile coding control unit 21 to generate an inter prediction image.
  • the subtraction unit 26 subtracts the intra prediction image generated by the intra prediction unit 24 or the inter prediction image generated by the motion compensation prediction unit 25 from the encoding target block output from the block division unit 22, and A process of outputting a prediction difference signal (difference image) which is a subtraction result to the conversion / quantization unit 27 is performed.
  • the transform / quantization unit 27 refers to the prediction difference coding parameter determined by the tile coding control unit 21 and performs orthogonal transformation processing (for example, DCT (discrete cosine transform) on the prediction difference signal output from the subtraction unit 26. And orthogonal transformation processing such as KL transformation or the like in which a basic design is made on a specific learning sequence in advance to calculate transformation coefficients, and referring to the prediction difference encoding parameter, the transformation coefficients are calculated A process of quantizing and outputting compressed data (quantized coefficients of a difference image) which is a transform coefficient after quantization to the inverse quantization / inverse transform unit 28 and the variable-length coding unit 31 is performed.
  • orthogonal transformation processing for example, DCT (discrete cosine transform)
  • KL transformation or the like in which a basic design is made on a specific learning sequence in advance to calculate transformation coefficients, and referring to the prediction difference encoding parameter, the transformation coefficients are calculated
  • the inverse quantization / inverse transform unit 28 dequantizes the compressed data output from the transform / quantization unit 27 with reference to the prediction differential coding parameter determined by the tile coding control unit 21 and also predicts the same.
  • An inverse orthogonal transformation process is performed on the transform coefficient, which is compressed data after inverse quantization, with reference to the differential encoding parameter to calculate a local decoded predictive differential signal corresponding to the predictive differential signal output from the subtractor 26.
  • the addition unit 29 adds the locally decoded prediction difference signal calculated by the inverse quantization / inverse conversion unit 28, the intra prediction image generated by the intra prediction unit 24, or the inter prediction image generated by the motion compensation prediction unit 25. Are added to each other to calculate a locally decoded image corresponding to the encoding target block output from the block division unit 22.
  • the tile local decoded image memory 30 is a recording medium for storing the local decoded image calculated by the adding unit 29.
  • a locally decoded image for one tile stored inside is output to the tile loop filter unit 7-n.
  • the variable-length coding unit 31 receives the compressed data output from the transform / quantization unit 27, the coding parameter output from the tile coding control unit 21, and the motion vector output from the motion compensation prediction unit 25 (coding The variable length coding is performed when the mode is the inter coding mode), and the bit sequence data as the coding result is output to the tile loop filter unit 7-n.
  • the tile loop filter control unit 41 is generated by the tile encoding unit 5-n when the filter parameter sharing flag output from the encoding control unit 1 indicates that the filters are not shared in each tile.
  • a tile-based filter suitable for filtering the tile local decoded image is determined, and a process of outputting a filter parameter indicating the filter to the loop filter implementation unit 42 and the variable length coding unit 43 is performed.
  • the loop filter implementation unit 42 indicates a tile unit indicated by the filter parameter output from the tile loop filter control unit 41.
  • the filtering process is performed on the tile local decoded image output from the tile encoding unit 5-n using the filter of and the encoding parameter output from the tile encoding unit 5-n.
  • the filter parameter sharing flag indicates that the filters should be shared in each tile
  • the filter in the frame unit indicated by the filter parameter output from the loop filter control unit 6 and the tile encoding unit 5-n are output.
  • the filtering process is performed on the tile local decoded image output from the tile coding unit 5-n using the coding parameter.
  • variable-length encoding unit 43 outputs the tile-based filter output from the tile loop filter control unit 41.
  • the filter parameters shown are variable-length encoded, and the encoded data of the filter parameters is multiplexed into bit series data output from the tile encoding unit 5-n, and output to the parallel processing end unit 8.
  • processing is performed to output the bit series data output from the tile encoding unit 5-n to the parallel processing end unit 8 as it is.
  • FIG. 6 is a block diagram showing a moving picture decoding apparatus in accordance with Embodiment 1 of the present invention.
  • the variable-length code separation unit 51 receives a bit stream generated by the moving picture coding apparatus shown in FIG. 1, bit sequence data in frame units multiplexed into the bit stream (bit sequence in tile units) Data containing data), tile division control information indicating the division state of the input image, a filter sharing flag indicating whether to make the filter common to each tile, and a code of a filter parameter indicating a filter in frame units A process is performed to separate the conversion data (when the filter parameter sharing flag indicates that the filter is common to each tile).
  • the variable-length code separation unit 51 constitutes a separation means.
  • Parallel processing start unit 52 divides bit sequence data in frame units output from variable length code separation unit 51 into bit sequence data in tile units, and tile bit sequence data in tile units is divided into tile decoding units 54-1 to 54-N. Implement the process of distributing to The parallel processing start unit 52 constructs an encoded bit data distribution unit.
  • the motion compensation prediction frame memory 53 is a recording medium for storing the decoded image after the filtering process.
  • the motion compensation prediction frame memory 53 constitutes an image memory.
  • the tile decoding device 54 implements N tile decoding units 54-1 to 54-N, and the N tile decoding units 54-1 to 54-N independently perform prediction differential decoding processing.
  • N is an integer of 1 or more.
  • the tile decoding units 54-1 to 54-N refer to the decoded image after filtering processing stored in the motion compensation prediction frame memory 53, and predict the bit series data in tile units distributed by the parallel processing start unit 52.
  • a tile-decoded image (a decoded image in tile units) is generated, and the coding parameter (multiplexed in bit sequence data) used when performing the prediction differential decoding process is generated.
  • a process of outputting the coding parameter) to tile loop filter units 56-1 to 56-N is performed.
  • tile decoding units 54-1 to 54-N constitute tile decoding means.
  • the filter parameter decoding unit 55 uses the encoded data output from the filter parameter decoding unit 55 as a frame unit. A filter parameter indicating the filter of (1) is decoded, and the filter parameter is output to tile loop filter units 56-1 to 56-N.
  • the tile loop filter device 56 implements N tile loop filter units 56-1 to 56-N, and the N tile loop filter units 56-1 to 56-N independently perform the filtering process.
  • N is an integer of 1 or more.
  • the tile loop filter units 56-1 to 56-N indicate that the filter parameter sharing flags separated by the variable-length code separation unit 51 indicate that the filters are not shared among the tiles.
  • a filter parameter indicating a tile unit filter is decoded from the encoded data output from N, and tile decoding is performed by tile decoding units 54-1 to 54-N using the tile unit filter indicated by the filter parameter Implement processing to implement filtering processing on the image.
  • the tile decoding units 54-1 to 54 use the frame unit filter indicated by the filter parameter output from the filter parameter decoding unit 55. Perform processing to execute filtering processing on the tiled decoded image generated by -N.
  • the tile loop filter units 56-1 to 56-N constitute tile filter means.
  • the tile division control unit 57 recognizes the tile division state from the tile division control information separated by the variable-length code separation unit 51, and obtains the decoded image corresponding to the original input image in the parallel processing end unit 58. A process of controlling the arrangement of each tile decoded image is performed. Under control of the tile division control unit 57, the parallel processing end unit 58 combines the tile decoded images after the filtering processing by the tile loop filter units 56-1 to 56-N to generate a decoded image in frame units, and decodes the decoded image A process of storing the image in the motion compensation prediction frame memory 53 is performed.
  • the tile division control unit 57 and the parallel processing end unit 58 constitute a decoded image storage unit.
  • FIG. 6 is a flowchart showing the processing content (moving picture decoding method) of the moving picture decoding apparatus in accordance with Embodiment 1 of the present invention.
  • the variable-length decoding unit 61 uses the bit sequence data in tile units distributed by the parallel processing start unit 52 to compress data related to a decoding target block (block corresponding to a coding target block) which is a block of prediction processing unit.
  • tile-based filter that performs variable-length decoding on the motion vector (when the coding mode is the inter coding mode) and that is multiplexed into the coding parameters after variable-length decoding and bit sequence data in tile units
  • the tile loop filter unit 56-n encodes the encoded data of the filter parameter indicating And it carries out a process of outputting.
  • the changeover switch 62 outputs the intra prediction parameter variable-length decoded by the variable-length decoding unit 61 to the intra prediction unit 63
  • the coding mode variable-length decoded by the variable-length decoding unit 61 is the inter coding mode, processing for outputting the inter prediction parameter and motion vector variable-length decoded by the variable-length decoding unit 61 to the motion compensation unit 64 carry out.
  • the intra prediction unit 63 performs the intra prediction process on the block to be decoded using the intra prediction parameter output from the changeover switch 62 while referring to the decoded image stored in the tile decoded image memory 67, thereby generating an intra predicted image Implement the process to generate
  • the motion compensation unit 64 refers to the decoded image after filtering processing stored in the motion compensation prediction frame memory 53, and uses the motion vector and the inter prediction parameter output from the changeover switch 62 to perform inter prediction on the current block A process is performed to generate an inter predicted image.
  • the inverse quantization / inverse transform unit 65 dequantizes the compressed data subjected to the variable length decoding by the variable length decoding unit 61 with reference to the prediction differential encoding parameter subjected to the variable length decoding by the variable length decoding unit 61, An inverse orthogonal transformation process is performed on the transform coefficient which is compressed data after inverse quantization with reference to the prediction difference encoding parameter, and a process of calculating a decoded prediction difference signal is performed.
  • the addition unit 66 adds the decoded prediction difference signal calculated by the inverse quantization / inverse conversion unit 65 and the intra prediction image generated by the intra prediction unit 63 or the inter prediction image generated by the motion compensation unit 64. Then, a process of calculating a decoded image is performed.
  • the tile decoded image memory 67 is a recording medium for storing the decoded image calculated by the adding unit 66.
  • a decoded image of one tile stored is output to the outside of the tile decoding unit 54-n.
  • the tile filter parameter decoding unit 71 is separated by the variable-length code separation unit 51 when the filter parameter sharing flag separated by the variable-length code separation unit 51 indicates that the filter is not shared in each tile.
  • a process of decoding encoded data of a filter parameter indicating a tile-based filter and outputting a filter parameter as a decoding result to the loop filter implementation unit 72 is performed.
  • the loop filter implementation unit 72 indicates the tile indicated by the filter parameter decoded by the tile filter parameter decoding unit 71.
  • the filtering process is performed on the tile-decoded image output from the tile decoding unit 54-n using the filter of the unit and the encoding parameter that is variable-length decoded by the variable-length decoding unit 61 of the tile decoding unit 54-n.
  • the filter parameter sharing flag indicates that the filters should be shared in each tile
  • the filter in frame units indicated by the filter parameter output from the filter parameter decoding unit 55 and the variable length decoding unit of the tile decoding unit 54-n
  • the filtering process is performed on the tile-decoded image output from the tile decoding unit 54-n using the coding parameter that has been variable-length decoded by the L.S.
  • motion compensated prediction is performed between adjacent frames using each frame image of video as an input image, and compression processing by orthogonal transformation and quantization is performed on the obtained prediction difference signal, and then, A video encoding apparatus that performs variable-length coding to generate a bitstream and a video decoding apparatus that decodes a bitstream output from the video encoding apparatus will be described.
  • the moving picture coding apparatus shown in FIG. 1 This is characterized in that parallel processing at tile level is made possible in coding processing. At the same time, it is characterized in that in the decoding process, an encoding result that enables parallel processing at the tile level is output.
  • the amount of processing In the coding process of the video signal, the amount of processing generally increases in proportion to the spatial, temporal and luminance level resolution of the input video.
  • the temporal, spatial and luminance level resolutions of video signals tend to increase, and existing moving image encoding devices and moving image decoding devices are at a predetermined speed. It is conceivable that it becomes impossible to perform encoding processing and decoding processing.
  • an input image is spatially divided and given to a plurality of encoding units, and the processing time is reduced by operating the plurality of encoding units in parallel. Is considered. In this case, also on the decoding side, it is possible to reduce the processing time by giving divided and encoded data to different decoding units, and the plurality of decoding units performing decoding processing in parallel.
  • the input image is divided into rectangular areas called tiles, and parallelization of prediction differential coding processing at the tile level is performed.
  • the filter coefficient derivation and the filtering process can be parallelized, and it is possible to switch whether or not to parallelize the filter coefficient derivation.
  • the image frame is an arbitrary video signal such as a monochrome image signal or an infrared image signal, which is composed of horizontal and vertical two-dimensional digital sample (pixel) columns.
  • the gradation of each pixel may be 8 bits, or may be gradation such as 10 bits or 12 bits.
  • the video signal of the input image is assumed to be a YUV signal, and two color difference components U and V are subsampled with respect to the luminance component Y 4: 2: 0
  • a processing data unit corresponding to each frame of the video signal is referred to as a "picture".
  • picture is described as a video frame signal which is sequentially scanned (progressive scan), but when the video signal is an interlace signal, “picture” is a unit forming a video frame. It may be a field image signal.
  • the encoding control unit 1 controls the tile division control information 2, which instructs the division state when dividing the input image indicated by the video signal into tiles of a predetermined size, to the tile division control unit 2, the parallel processing end unit 8, and the variable length code. It is output to the multiplexing unit 9. Also, the encoding control unit 1 performs filter parameter sharing indicating whether or not the filter used in the filtering process of the locally decoded image in units of tiles generated by the tile encoding units 5-1 to 5-N is shared by each tile.
  • the tile division control unit 2, the loop filter control unit 6, the tile loop filter units 7-1 to 7-N, and the variable in the case of common to each tile: flag of ON, not common to each tile: flag of OFF) It is output to the long code multiplexing unit 9.
  • the tile division control unit 2 When the tile division control unit 2 receives tile division control information from the encoding control unit 1, the tile division control unit 2 divides the input image in the parallel processing start unit 3 so that the tile division control information matches the designated division state. Control.
  • the parallel processing start unit 3 receives the video signal indicating the input image, the parallel processing start unit 3 divides the input image into tiles of a predetermined size under the instruction of the tile division control unit 2, and the tile after division is divided into tile coding units 5- It is distributed to 1 to 5-N (step ST1 in FIG. 2).
  • information that controls tile division can be expressed in various ways. For example, tile division is specified according to information indicating how many LCUs the tile has as the smallest unit of the largest CU (Largest CU: LCU). Think about it.
  • FIG. 11 is an explanatory view showing an example of LCU division and tile division of an image.
  • the input image is divided into LCUs arranged in a grid, starting from the upper left. This division is uniquely determined by specifying the height and width of the image and the length of one side of the LCU. Since tile division is performed with LCU as a minimum unit, the width and height of each tile can be represented by the number of LCUs included in the horizontal and vertical sides. Therefore, ColumnWidthArray [] and RowHeightArray [], which are series of two integers, are given as tile division control information.
  • ColumnWidthArray [] is a value in which the width of tiles aligned in the horizontal direction is represented by the number of LCUs, arranged in order from the right.
  • RowHeightArray [] is a value in which the heights of tiles aligned in the vertical direction are represented by the number of LCUs, arranged in order from the top.
  • the tile division control information must also be information that can express such a division state. For example, it is exemplified to represent by the coordinates of the top left pixel or LCU of the tile, and the information of the width and height of the tile. Further, the tile division state may maintain the same division state in the whole sequence, may be changed in frame units, or may be switched for each picture type such as intra picture, inter picture or the like. When the same tile division state is used throughout the sequence, the tile division information may be multiplexed by the header of the sequence, and when switching in the middle of the sequence, the tile division information may be multiplexed into the picture header of the picture immediately after switching.
  • the moving picture coding apparatus shown in FIG. 1 can also operate not to perform parallel processing at any tile level.
  • the tile division control information may be specified such that the number of tiles is one and the size of the tiles matches the size of the input image, and the tile coding parallel flag or tile loop filter The parallel flag may turn off all parallel processing. Further, another flag may be multiplexed to tile division control information, and the execution / non-execution of parallel processing may be switched by the flag.
  • the parallel processing start unit 3 divides the input image into tiles of a predetermined size and distributes the divided tiles to the tile encoding units 5-1 to 5-N as described above, but the number of tiles that can be simultaneously processed in parallel Since the number of tile encoding units 5-1 to 5-N is the upper limit, one tile encoding unit is used if the number of tiles is larger than the number of tile encoding units 5-1 to 5-N. Output multiple tiles for 5-n. For example, when the number of tiles is 7 and the number of tile encoding units is 3, the tile encoding unit 5-1 processes the tiles 1 to 3 and the tile encoding unit 5-2 processes the tiles 4 to 5 The processing of tiles 6 to 7 is assigned to the tile coding unit 5-3. In addition, even when the number of divisions of tiles is less than the number of tile encoding units, control may be performed to assign a plurality of tiles to one tile encoding unit.
  • step ST2 When the filter parameter sharing flag output from the encoding control unit 1 is OFF (step ST2), the processing of the tile encoding unit 5-n and the tile loop filter unit 7-n is continuously performed (step ST3, ST4). At this time, the processing of the tile encoding unit 5-n and the tile loop filter unit 7-n is repeatedly performed by the number of tiles (steps ST5 and ST6), and the processing of each loop is independent. It is possible to execute in parallel as many as the number of encoding units 5-n. When the filter parameter sharing flag is OFF, tile encoding processing and tile loop filter processing can be performed together in parallel, so that the parallelism of the encoding processing can be further improved. In addition, since the filter parameters are localized, the image quality can be improved when the nature of the image is greatly different for each screen area. The details of the processing contents of the tile encoding unit 5-n and the tile loop filter unit 7-n will be described later.
  • the tile encoding unit 5-n performs tile encoding processing until the encoding processing of all tiles is completed.
  • steps ST8 to ST10 are repeatedly executed (steps ST8 to ST10), and when the encoding process of all the tiles is completed, the loop filter control unit 6 is the entire screen from the tile local decoded image generated by the tile encoding unit 5-n.
  • Obtain a local decoded image in frame units determine a filter in frame units suitable for the local decoded image in frame units, and output a filter parameter indicating the filter to tile loop filter unit 7-n and parallel processing end unit 8 ( Step ST11). Details of processing contents of the loop filter control unit 6 will be described later.
  • the tile loop filter unit 7-n When the tile loop filter unit 7-n receives the filter parameter from the loop filter control unit 6, the tile loop filter unit 7-n repeatedly executes the filtering process of the tile local decoded image until the filtering process of all tile local decoded images is completed (step ST12 to ST12) ST14).
  • the filter parameter sharing flag When the filter parameter sharing flag is ON, the filter parameter is shared by all tiles, so that the code amount of the filter parameter can be suppressed as compared with the case where the filter parameter sharing flag is OFF. Further, designing the filter parameters using the locally decoded image of the entire frame is effective, for example, when the image quality is improved. However, if the filter parameter sharing flag is ON, parallel processing of the tile encoding unit 5-n and tile loop filter unit 7-n needs to be synchronized once, so the parallel performance of the encoding processing is degraded. . In the moving picture decoding apparatus described later, the parallel performance does not deteriorate even when decoding the bit stream created when the filter parameter sharing flag is ON.
  • the parallel processing end unit 8 controls the tile loop filter units 7-1 to 7-7 according to the tile division control information output from the encoding control unit 1.
  • the tile local decoded image after the filtering process by -N is combined to generate a local decoded image in frame units, and the local decoded image is stored in the motion compensated prediction frame memory 4 and the tile loop filter units 7-1 to 7-
  • the bit sequence data output from N is output to the variable-length code multiplexing unit 9.
  • the parallel processing end unit 8 outputs the encoded data of the filter parameter indicating the filter in frame units output from the loop filter control unit 6. It is output to the variable-length code multiplexing unit 9.
  • variable-length code multiplexing unit 9 When the filter parameter sharing flag output from the encoding control unit 1 is OFF, the variable-length code multiplexing unit 9 outputs the bit series data output from the parallel processing end unit 8 (tile encoding units 5-1 to 5 The bit sequence data generated by -N, the tile division control information output from the encoding control unit 1, and the filter parameter sharing flag are multiplexed by a predetermined method to generate a bit stream (step ST7).
  • the filter parameter sharing flag when the filter parameter sharing flag is ON, the bit sequence data (bit sequence data generated by the tile encoding units 5-1 to 5-N) output from the parallel processing end unit 8 and the encoding control unit
  • the tile division control information and filter parameter sharing flag output from 1 and the encoded data of the filter parameter indicating the frame unit filter output from the loop filter control unit 6 are multiplexed by a predetermined method to generate a bit stream To do (step ST15).
  • the tile encoding device 5 implements N tile encoding units 5-1 to 5-N, and the N tile encoding units 5-1 to 5-N independently perform prediction differential encoding processing (Prediction differential encoding processing without any information reference between tiles) is performed.
  • the tile coding control unit 21 of the tile coding unit 5-n determines the size of the largest coding block (LCU) and the upper limit of the number of division layers, and determines the image area of each LCU in a specific order as shown in FIG.
  • the processing of steps ST21 to ST31 is performed.
  • the tile coding control unit 21 outputs, to the block division unit 22, an instruction to divide into coding target blocks having a coding block size hierarchically up to the upper limit of the number of division layers determined above.
  • the coding mode for each coding target block is determined (step ST21 in FIG. 4).
  • the block division unit 22 divides the tile distributed by the parallel processing start unit 3 into blocks of coding block size (blocks of prediction processing unit) under the instruction of the tile coding control unit 21 and Output a block to be encoded, which is a block.
  • FIG. 12 is an explanatory view showing an example in which the largest coding block is hierarchically divided into a plurality of coding target blocks.
  • the largest coding block is a coding target block in which the luminance component described as “the 0th hierarchy” has a size of (L 0 , M 0 ).
  • the coding target block is obtained by hierarchically dividing to a predetermined depth separately defined in the quadtree structure.
  • the block to be encoded is an image area of size (L n , M n ).
  • the coding block size determined by the tile coding control unit 21 is defined as the size (L n , M n ) of the luminance component of the coding target block.
  • the size of all color components is (L n , M n ), but 4: 2
  • the coding block size of the corresponding chrominance component is (L n / 2, M n / 2).
  • the encoding mode m (B n ) may be configured to use an individual mode for each color component, or may be common to all color components. It may be configured to use the mode. The following description will be made on the assumption that the coding mode for the luminance component of the YUV signal and the coding block of the 4: 2: 0 format is indicated unless otherwise specified.
  • the coding mode m (B n ) includes one or more intra coding modes (collectively referred to as “INTRA”) and one or more inter coding modes (collectively, “INTER”). And the tile coding control unit 21 selects the coding mode with the highest coding efficiency for the current block B n out of all the coding modes available for the picture or a subset thereof. Choose Furthermore, as shown in FIG. 13, the block to be encoded B n is divided by the block division unit 22 into one or more prediction processing units (partitions).
  • the partition belonging to the encoding target block B n P i n i is the partition number in the n layer
  • Partition P i n is the prediction processing is carried out all in accordance with the coding mode m (B n), for each encoding target block B n to partition P i n, the prediction parameters are selected.
  • the tile coding control unit 21 generates, for example, a block division state as illustrated in FIG. 13 for the largest coding block, and specifies a coding target block.
  • the hatched part in FIG. 13A shows the distribution of partitions after division
  • FIG. 13B shows the situation where coding mode m (Bn) is allocated by hierarchical division in a quadtree graph .
  • the nodes enclosed by ⁇ in FIG. 13B are nodes to which the coding mode m (B n ) is assigned (coding target block).
  • the changeover switch 23 is output from the block division unit 22.
  • the coding target block B n is output to the intra prediction unit 24.
  • the coding mode m (B n ) determined by the tile coding control unit 21 is the inter coding mode (m (B n ) ⁇ INTER)
  • the coding output from the block division unit 22 The target block B n is output to the motion compensation prediction unit 25.
  • the intra prediction unit 24 determines that the coding mode m (B n ) determined by the tile coding control unit 21 is the intra coding mode (in the case where m (B n ) ⁇ INTRA) and the coding target is selected from the changeover switch 23
  • block B n is received (step ST22)
  • coding is performed using the intra prediction parameter determined by the tile coding control unit 21 while referring to the locally decoded image stored in the tile local decoded image memory 30. and implementing intra prediction process for each partition P i n in the target block B n, it generates an intra prediction image P INTRAi n (step ST23).
  • the intra prediction processing at the tile end is a screen end where reference to adjacent pixels is unnecessary. Perform the same process as intra prediction of.
  • intra prediction parameters used for generating the intra prediction image P INTRAi n is tiled coding It is output from the control unit 21 to the variable-length coding unit 31 and multiplexed into a bit stream.
  • the motion compensation prediction unit 25 performs coding from the changeover switch 23 when the coding mode m (B n ) determined by the tile coding control unit 21 is the inter coding mode (when m (B n ) ⁇ INTER).
  • the motion by comparing each partition P i n and the local decoded image after the filtering process stored in the motion compensated prediction frame memory 4 of the encoding target block B n searching a vector, its using the motion vectors and the inter prediction parameters determined by the tile encoding control unit 21, to implement the inter-prediction processing for each partition P i n in the encoding target block B n, inter generating a predicted image P INTERi n (step ST24).
  • control unit 21 outputs the motion vector to the variable length coding unit 31 to be multiplexed into a bit stream, and the motion vector is output from the motion compensation prediction unit 25 to the variable length coding unit 31 to be multiplexed into the bit stream.
  • Subtracting unit 26 receives the encoding target block B n from the block dividing unit 22 from its partition P i n in the encoding target block B n, the intra prediction image P INTRAi n generated by the intra prediction unit 24, or subtracts the inter prediction image P INTERi n generated by the motion compensation prediction unit 25, and outputs the prediction difference signal e i n a subtraction result to the transform and quantization unit 27 (step ST25).
  • Transform and quantization unit 27 receives the prediction difference signal e i n from the subtracting unit 26, with reference to the predictive differential coding parameters determined by the tile encoding control unit 21, for the prediction difference signal e i n
  • An orthogonal transformation process (for example, an orthogonal transformation process such as a discrete cosine transformation (DCT) or a KL transformation in which a basic learning design is previously performed on a specific learning sequence) is performed to calculate transformation coefficients.
  • the transform / quantization unit 27 quantizes the transform coefficient with reference to the prediction differential encoding parameter, and performs inverse quantization / inverse transform unit 28 and variable length of the compressed data which is the transform coefficient after quantization. It is output to the encoding unit 31 (step ST26).
  • the inverse quantization / inverse transform unit 28 When the inverse quantization / inverse transform unit 28 receives the compressed data from the transform / quantization unit 27, the inverse quantization / inverse transform unit 28 dequantizes the compressed data with reference to the prediction differential encoding parameter determined by the tile encoding control unit 21. Do. Further, the inverse quantization / inverse transform unit 28 refers to the prediction differential encoding parameter to perform inverse orthogonal transform processing (for example, inverse DCT, inverse KL transformation, etc.) on transform coefficients that are compressed data after inverse quantization. was performed, and calculates a local decoded prediction difference signal corresponding to the prediction difference signal e i n output from the subtraction unit 26 (step ST29).
  • inverse orthogonal transform processing for example, inverse DCT, inverse KL transformation, etc.
  • Addition unit 29 when the inverse quantization and inverse transform unit 28 receives the local decoded prediction difference signal, and the local decoded prediction difference signal or intra prediction image P INTRAi n, generated by the intra prediction unit 24, a motion compensation by adding the inter prediction image P INTERi n generated by the prediction unit 25, a local decoded partition image, or as a collection of the local decoded partition image, the encoding target block B n output from the block dividing unit 22 A corresponding local decoded image is calculated (step ST30).
  • the addition unit 29 stores the locally decoded image in the tile locally decoded image memory 30. This local decoded image becomes an image signal for subsequent intra prediction in the current tile.
  • variable-length coding unit 31 performs tile coding with the compressed data output from the transform / quantization unit 27.
  • the coding mode m (B n ) output from the control unit 21 and the intra prediction parameter (when the coding mode is the intra coding mode) or the inter prediction parameter (coding) output from the tile coding control unit 21 If the mode is the inter coding mode) and the motion vector (if the coding mode is the inter coding mode) output from the motion compensation prediction unit 25 are subjected to variable length coding, the coding results are The bit series data shown is generated (step ST31).
  • variable length coding unit 31 When, for example, context adaptive arithmetic coding is used as a variable length coding method, the internal state of the variable length coding unit 31 is updated according to the progress of coding. As the initial value of the state, a predetermined fixed value or a value output from the parallel processing start unit 3 of FIG. 1 is used, and no handover of the state between tiles is performed.
  • the tile coding unit 5-n reference is not made to the coding parameters of the blocks belonging to tiles different from the current tile and the local decoded image in any processing including the above-mentioned intra prediction and variable length code. .
  • the reference process at the tile end is replaced with a process that does not require any reference. It is necessary to make the moving image encoding device and the moving image decoding device coincide with what kind of processing, but the same processing may be fixedly performed on the encoding side and the decoding side, or the processing content Signaling may be signaled.
  • the processes of the tile encoding units 5-1 to 5-N are independent for each tile and can be executed in parallel.
  • the modules sequentially code the respective tiles. Implement the conversion process. Also, even between tiles encoded in the same module, the independence between the tiles is maintained, and the output bit sequence is operated to be equal to the case of parallel processing.
  • the tile coding unit 5-n may process the current tile by dividing it into one or more structures called slices.
  • a slice is a structure that further divides a tile, and includes one or more LCUs that are processed consecutively, or a coding block smaller than the LCU.
  • parameters and modes defined independently for each slice can be used.
  • processing such as prohibiting reference to information of blocks belonging to a slice different from the current slice or initializing the internal state of entropy coding in the block at the beginning of a slice can be performed.
  • Slices like tiles, have the effect of facilitating parallel processing.
  • data can be used for packetization, such as packetizing a bit sequence output by processing of one slice. There is also an advantage in terms of error tolerance.
  • variable length coding control information when the variable length coding control information is multiplexed in the slice header, and the variable length coding control information indicates that context switching is not performed, context switching is performed in the slice. Perform adaptive arithmetic coding without doing.
  • variable-length coding processing control information indicates that context switching and adaptive processing are not limited, arithmetic coding is performed on the slice without performing context switching and adaptive processing.
  • context switching and adaptive processing can be omitted as appropriate, and variable-length coding can be performed. For tiles that are determined to be longer than the other tiles, the time required for coding is longer.
  • the tile encoding process can be performed at high speed by limiting the encoding process as described above in the slice to be processed next, and the difference in the encoding process time with other tiles can be shortened. Therefore, tile parallelism can be improved.
  • context adaptive arithmetic coding has been described as an example, but it is possible to perform variable length coding even if some of the processing is removed for any other variable length coding method, as long as variable length coding is possible. The same effect is obtained.
  • the tile loop filter unit 7-n performs filter design and filtering processing for correcting coding distortion included in the local decoded image.
  • one or more types of different loop filters deblocking filter for mitigating block boundary discontinuity, variation of DC component due to quantization error, SAO (Sample Adaptive Offset) for correcting edge discontinuity
  • SAO Sample Adaptive Offset
  • the filter in frame units indicated by the filter parameter output from the loop filter control unit 6 is used.
  • the tile loop filter control unit 41 determines a tile-based filter suitable for the tile local decoded image output from the tile encoding unit 5-n, and uses the filter .
  • ALF Adaptive Loop Filter
  • ALF is a method of dividing a screen into a fixed number of filter definition areas and defining a filter that minimizes an error between a locally decoded image and an input image for each filter definition area.
  • the filter parameters in the ALF are information indicating the shape of the divided area, the shape of the filter defined in each area, and the filter coefficient.
  • the number of filter definition regions is 16 and a region division method is used in which a processing unit rectangle (frame or tile) is divided into 4 ⁇ 4 rectangular regions.
  • the loop filter control unit 6 of FIG. 1 divides the locally decoded image for one frame into 4 ⁇ 4 16 filter definition regions. (See FIG. 14 (a)), and determine the filter shape and the filter coefficient for each filter definition area. Further, relative position information in each tile of each filter definition area is obtained, and the relative position information and the filter shape / filter coefficient information are output as filter parameters to each tile.
  • the loop filter implementation unit 42 of the tile loop filter unit 7-n is based on the relative position and the filter shape / filter coefficient information Perform the filtering process.
  • the tile loop filter control unit 41 divides the filter definition area independently for each tile, and determines the filter shape / filter coefficient for each filter definition area (FIG. 14).
  • the filter definition area information and the filter shape / filter coefficient information are output to the loop filter implementation unit 42 as filter parameters.
  • the loop filter implementation unit 42 performs the filtering process based on the filter definition area information and the filter shape / filter coefficient information.
  • variable-length coding unit 43 When the filter parameter sharing flag is OFF, the variable-length coding unit 43 performs variable-length coding on the filter definition area information and the filter shape / filter coefficient information output from the tile loop filter control unit 41, and outputs the coding result
  • the bit sequence data output from the tile encoding unit 5-n is multiplexed and output to the parallel processing end unit 8.
  • the filter parameter sharing flag is ON, the bit sequence data output from the tile encoding unit 5-n is output to the parallel processing end unit 8 as it is.
  • the filter parameter sharing flag when the filter parameter sharing flag is ON, at most one set of filter parameters is defined in the frame, but when the filter parameter sharing flag is OFF, at most one set is defined for each tile.
  • the filter parameter sharing flag When the filter parameter sharing flag is ON, the filter parameter is multiplexed as a picture header on the bit stream, for example, as shown in FIG. 15 (a).
  • the filter parameter sharing flag When the filter parameter sharing flag is OFF, the filter parameter set defined for each tile is multiplexed at the start position of each tile data as a tile header, for example, as shown in FIG. Be
  • the loop filter implementation unit 42 uses the filter indicated by the filter parameter output from the loop filter control unit 6 or the tile loop filter control unit 41 to perform the filtering process on the tile local decoded image.
  • filtering is performed without reference to pixels of tiles different from the current tile.
  • the filter shape is changed so as not to refer to the outside of the filter boundary at the filter boundary, as shown in FIG.
  • FIG. 16C filtering processing is performed that does not refer to pixels in a tile different from the current tile, by copying pixels in the vicinity of the filter boundary.
  • the filtering method that does not require pixel reference between different tiles needs to be matched between the video encoding device and the video decoding device, but the encoding side and the decoding side may perform the same technique in a fixed manner, A signal indicating processing content may be signaled. Even when the filter parameter sharing flag is ON and the same tile is used in the tile adjacent to the current tile, pixel reference across tiles is not performed. By not performing pixel reference across tiles, parallelization of loop filter processing of tile encoding unit 7-n becomes possible, and in decoding of a bit stream created by tile encoding unit 7-n, Parallelization of loop filter processing becomes possible.
  • variable-length code separation unit 51 separates the filter parameter sharing flag multiplexed in the bit stream, and converts the filter parameter sharing flag. It outputs to the filter parameter decoding unit 55 and the tile loop filter unit 56-n. Also, the variable-length code separation unit 51 separates tile division control information multiplexed in the bit stream, and outputs the tile division control information to the tile division control unit 57, and the filter parameter sharing flag is ON.
  • variable-length code separation unit 51 separates bit sequence data multiplexed in a bit stream by the number of tiles, and outputs the bit sequence data to the parallel processing start unit 52 (step ST41 in FIG. 7). .
  • the tile division control unit 57 grasps the tile division state from the tile division control information (step ST42), and the decoded image corresponding to the original input image is The arrangement of tile decoded images in the parallel processing end unit 58 described later is controlled so as to be obtained.
  • the parallel processing start section 52 divides the bit series data in tile units into bit series data in tile units. Are distributed to the tile decoding units 54-1 to 54-N.
  • the filter parameter decoding unit 55 uses the frame-based filter from the encoded data output from the variable-length code separation unit 51.
  • the filter parameter shown is decoded, and the filter parameter is output to the tile loop filter unit 56-n (step ST44).
  • the process of the tile decoding unit 54-n and the process of the tile loop filter unit 56-n are continuously performed (steps ST45 and ST46), and these two processes are repeatedly performed on all tiles (step ST47, ST 48).
  • the processes in the loop of steps ST45 to ST48 can be executed in parallel because they are independent for each tile as described later. Unlike the moving picture coding apparatus shown in FIG. 1, regardless of the ON / OFF state of the filter parameter sharing flag, the processes of steps ST45 to ST48 can be collectively parallelized.
  • the parallel processing end unit 58 performs filtering processing by the tile loop filter units 56-1 to 56-N under the control of the tile division control unit 57.
  • a subsequent tile decoded image is combined to generate a frame-based decoded image, and the decoded image is stored in the motion compensation prediction frame memory 53, and the decoded image is output to the outside as a reproduced image.
  • the tile decoding device 54 has implemented N tile decoding units 54-1 to 54-N, and the N tile decoding units 54-1 to 54-N independently perform prediction differential decoding processing (between tiles The prediction differential decoding process which does not perform any information reference is performed.
  • variable length decoding unit 61 of the tile decoding unit 54-n receives bit series data in tile units distributed by the parallel processing start unit 52, the maximum code is obtained in the same manner as the tile encoding control unit 21 of FIG. Determine the size of the integrated block (LCU) and the upper limit of the number of division layers.
  • the variable length decoding unit 61 determines the size of the largest coding block and the upper limit of the number of division layers, it decodes the coding mode m (B n ) assigned to the largest coding block from bit series data in tile units.
  • the information indicating the division state of the largest coding block included in the coding mode m (B n ) is decoded (step ST51 in FIG. 9).
  • the variable-length decoding unit 61 decodes the information indicating the division state of the largest encoded block
  • the decoding target block hierarchical code of the moving picture encoding device in FIG.
  • the block corresponding to the conversion target block is identified (step ST52).
  • the variable-length decoding unit 61 decodes the block to be decoded from bit series data in tile units. Decode intra prediction parameters for each of one or more partitions contained in.
  • the coding mode m (B n ) assigned to the block to be decoded (the block to be encoded) is the inter coding mode, decoding is performed for each block to be decoded or its decoding from bit series data in tile units. Inter prediction parameters and motion vectors are decoded for each of one or more partitions included in the target block (step ST53).
  • the variable-length decoding unit 61 further divides the partition serving as the prediction processing unit into one or more partitions serving as the conversion processing unit based on the information of the transform block size included in the prediction differential coding parameter, and performs tile unit From bit series data, compressed data (transformed and quantized transform coefficients) is decoded for each partition serving as a transform processing unit (step ST53). If the filter parameter sharing flag is OFF, the encoded data of the filter parameter indicating the filter in tile units is multiplexed with the bit sequence data in tile units since the variable length decoding unit 61 is OFF. It is separated and output to the tile loop filter unit 56-n. The variable-length decoding unit 61 also outputs the coding parameter to the tile loop filter unit 56-n.
  • variable-length decoding unit 61 If the coding mode m (B n ) variable-length decoded by the variable-length decoding unit 61 is the intra coding mode (if m (B n ) ⁇ INTRA), the change-over switch 62 operates the variable-length decoding unit 61 The intra prediction parameter subjected to the variable length decoding is output to the intra prediction unit 63. On the other hand, if the coding mode m (B n ) variable-length decoded by the variable-length decoding unit 61 is the inter coding mode (if m (B n ) ⁇ INTER), the variable-length decoding unit 61 The calculated inter prediction parameter and motion vector are output to the motion compensation unit 64.
  • the initial value of the internal state of the variable length decoding unit 61 is The same value as the variable-length coding unit 31 of FIG. 3 is used, and handover between tiles is not performed.
  • the intra prediction unit 63 performs the intra prediction from the changeover switch 62 when the coding mode m (B n ) variable-length decoded by the variable-length decoding unit 61 is the intra coding mode (m (B n ) ⁇ INTRA).
  • the intra prediction parameter output from the changeover switch 62 is referred to while referring to the decoded image stored in the tile decoded image memory 67 in the same procedure as the intra prediction unit 24 in FIG. used, to implement the intra prediction process for each partition P i n the decoding target block B n, it generates an intra prediction image P INTRAi n (step ST55).
  • the motion compensation unit 64 determines that the coding mode m (B n ) variable-length decoded by the variable-length decoding unit 61 is the inter coding mode (when m (B n ) ⁇ INTER), and the inter prediction
  • the motion compensated prediction frame memory 53 uses the motion vector and the inter prediction parameter output from the changeover switch 62 while referring to the decoded image after filtering processing stored in the memory , by carrying out inter-prediction process for the current block B n or partition P i n generates an inter prediction image P INTERi n (step ST56).
  • the motion compensation unit 64 for all the partitions P i n the decoding target block B n, if the common reference picture indication index and the common inter prediction mode is determined, its reference picture indication index a common reference picture in all the partitions P i n that indicates, by using the motion vector for each partition P i n, to implement inter-prediction process generates an inter prediction image P INTERi n with respect to the partition P i n.
  • the predictive difference encoding is performed in the same procedure as the inverse quantization / inverse transform unit 28 in FIG.
  • the compressed data is dequantized, and with reference to the prediction differential coding parameters, the inverse orthogonal transformation processing is performed on the transform coefficients which are the compressed data after the dequantization, as shown in FIG.
  • the decoded prediction difference signal corresponding to the prediction difference signal output from the subtraction unit 26 of is calculated (step ST57).
  • Addition unit 66 decodes the prediction difference signal calculated by the inverse quantization and inverse transform unit 65, an intra prediction image P INTRAi n generated by the intra prediction unit 63 or, inter prediction generated by the motion compensation section 64 by adding the image P INTERi n, as a collection of one or more of the decoded partition image included in the decoding target block, and stores the decoded image into tiles decoded image memory 67 (step ST58). This decoded image becomes an image signal for the subsequent intra prediction.
  • the tile decoding unit 54-n does not refer to the decoding parameter and the decoded image of a block different from the current tile in any process including the above-described intra prediction and variable length decoding.
  • the reference process at the tile end is replaced with a process that does not require the same reference as the encoding side. Therefore, the processing of the tile decoding unit 54-n is independent for each tile and can be executed in parallel.
  • the tile decoding unit 54-n when the inside of the tile is divided into slices on the encoding side as described above, the current tile is divided into slices based on the slice division information multiplexed in the bit stream.
  • the decoding process is performed in accordance with parameters and mode information defined independently for each slice.
  • variable length coding control information multiplexed in a slice header is decoded, and the variable length coding control information is restricted so as not to switch contexts. If it indicates, adaptive arithmetic decoding is performed without performing context switching in the slice.
  • variable-length coding process control information indicates that context switching and adaptive processing are not limited
  • arithmetic decoding is performed on the slice without performing context switching and adaptive processing.
  • the processing contents of the tile loop filter units 56-1 to 56-N in the tile loop filter device 56 will be described in detail.
  • the tile filter parameter decoding unit 71 of the tile loop filter unit 56-n is the code of the filter parameter output from the tile decoding unit 54-n.
  • the filter parameter indicating the filter in tile units is decoded from the quantization data, and the filter parameter as the decoding result is output to the loop filter implementation unit 72.
  • the loop filter implementation unit 72 receives the filter parameter from the tile filter parameter decoding unit 71, and the filter in tile units indicated by the filter parameter The filtering process is performed on the tile-decoded image output from the tile decoding unit 54-n using the coding parameter that is variable-length decoded by the variable-length decoding unit 61 of the tile decoding unit 54-n.
  • the filter parameter sharing flag separated by the variable-length code separation unit 51 is ON, when the filter parameter is received from the filter parameter decoding unit 55, the filter and tile decoding unit in frame unit indicated by the filter parameter The filtering process is performed on the tile-decoded image output from the tile decoding unit 54-n using the coding parameter that has been variable-length decoded by the n variable-length decoding units 61.
  • the loop filter implementation unit 72 performs the same processing as the loop filter implementation unit 42 of FIG. 5. That is, in order to perform a filtering process that does not perform pixel reference across different tiles, the process of the tile loop filter unit 45-n is independent for each tile and can be executed in parallel.
  • the encoding control unit 1 that outputs division control information that instructs the division state of the input image, and the division control information output from the encoding control unit 1 Therefore, the input image is divided into tiles, which are rectangular areas of a predetermined size, and the parallel processing start unit 3 that distributes the divided tiles and the local decoded image stored in the motion compensation prediction frame memory 4 are referred to in parallel.
  • N pieces of encoded bit data which are the encoding result are output, and N local decoded images are generated from the encoded bit data
  • Tile encoding units 5-1 to 5-N, and N tile loop filter units 7-1 to 7-N are locally decoded images generated by the tile encoding units 5-1 to 5-N. Since the tile-by-tile filter suitable for the filtering process of is determined and the filtering process is performed on the locally decoded image using the filter, the loop filter process can be performed in parallel at the tile level. Play.
  • a moving picture coding apparatus will be described in which a switching function of performing / not performing parallel processing at tile level is added to the moving picture coding apparatus according to the first embodiment.
  • a moving picture decoding apparatus capable of decoding a moving picture from a bit stream generated by the moving picture coding apparatus will be described.
  • FIG. 17 is a block diagram showing a moving picture coding apparatus according to a second embodiment of the present invention.
  • the encoding control unit 81 instructs tile division control information for dividing an input image represented by the video signal into tiles of a predetermined size as in the encoding control unit 1 of FIG. Perform the process of outputting information). Further, the encoding control unit 81 outputs an encoding parallel flag (division flag) indicating whether or not the input image is divided and parallelized, and the filter used for the filtering process is classified according to the type of filtering process A process of outputting a filter parameter sharing flag (filter sharing flag) # 1 to M indicating whether or not to make common is performed.
  • the coding control unit 81 carries out a process of outputting loop filter parallel flags # 1 to M indicating the connection relationship between the processing unit of the former stage and the processing unit of the latter stage.
  • the coding control unit 81 constitutes a division control unit.
  • the tile division control unit 82 controls the division of the input image in the parallel processing start unit 83 so that the tile division control information output from the encoding control unit 81 matches the designated division state.
  • the parallel processing start unit 83 indicates that the encoding parallel flag output from the encoding control unit 81 divides and parallelizes the input image
  • the video signal indicates under the instruction of the tile division control unit 2.
  • the input image is divided into tiles of a predetermined size, and the divided tiles are distributed to tile encoding units 85-1 to 85-N.
  • the encoding parallel flag indicates that the input image is not divided and not parallelized, the input image, which is an image in units of frames, is transmitted to the frame encoding unit 86 without dividing the input image indicated by the video signal. Implement the process to output.
  • the tile division control unit 82 and the parallel processing start unit 83 constitute tile distribution means.
  • the motion compensation prediction frame memory 84 is a recording medium for storing the locally decoded image after the filtering process.
  • the motion compensation prediction frame memory 84 constitutes an image memory.
  • the tile coding device 85 has N tile coding units 85-1 to 85-N mounted, and the N tile coding units 85-1 to 85-N independently perform prediction differential coding processing. carry out. N is an integer of 1 or more. Similar to the tile coding units 5-1 to 5-N in FIG. 1, the tile coding units 85-1 to 85-N refer to the locally decoded image after filtering processing stored in the motion compensation prediction frame memory 84.
  • the tile encoding units 85-1 to 85-N constitute tile encoding means.
  • the frame encoding unit 86 refers to the locally decoded image after filtering processing stored in the motion compensation prediction frame memory 84, and predicts the difference with respect to the input image (frame unit image not divided by the parallel processing start unit 83). By performing the encoding process, a process of generating a frame local decoded image (local decoded image) is performed while outputting bit sequence data and an encoding parameter that are the encoding result.
  • the frame coding unit 86 constitutes a frame coding unit.
  • the loop filter control units 87-1 to 87-M indicate that the filter parameter sharing flags # 1 to M output from the encoding control unit 81 indicate that the filters are shared by the tiles, the parallel processing switching unit 90- A local decoded image in frame units is obtained from the tile local decoded image output from 1 to 90-M, and a filter in frame units suitable for the local decoded image in frame units is determined, and a filter parameter indicating the filter is tile loop filter A process of outputting to the devices 88-1 to 88-M is performed. Also, the loop filter control units 87-1 to 87-M perform variable length coding on the filter parameter indicating the filter in units of frames, and output the coded data of the filter parameter to the parallel processing end unit 91.
  • M is an integer of 1 or more.
  • a tile-based filter suitable for filtering the tile local decoded image output from the parallel processing switching unit 90-m is determined, and the filtering process is performed on the tile local decoded image using the filter, and the tile A filter parameter indicating a unit filter is subjected to variable length coding, and the coding result is multiplexed into bit series data output from the parallel processing switching units 90-1 to 90-M.
  • the filter parameter sharing flag #m indicates that the filters are shared in each tile, the parallel processing switching unit is used by using the frame unit filter indicated by the filter parameter output from the loop filter control unit 87-m.
  • a filtering process of the tile local decoded image output from 90-m is performed, and a process of outputting the bit series data output from the parallel processing switching unit 90-m as it is.
  • the tile loop filter units 88-1-1 to 88-1-N, 88-2-1 to 88-2-N, ..., 88-M-1 to 88-MN use tile filter means. Configured.
  • the frame loop filter unit 89-m When the tile local decoded image is output from the parallel processing switching unit 90-m, the frame loop filter unit 89-m performs filtering processing on the frame local decoded image (local decoded image in frame unit) obtained from the tile local decoded image.
  • a suitable frame unit filter is determined and the frame local decoded image is output from the parallel processing switching unit 90-m, a frame unit filter suitable for the frame local decoded image is determined, and using the frame unit filter, The filtering process is performed on the frame local decoded image, and variable length coding is performed on the filter parameter indicating the frame unit filter, and the coding result is used as bit sequence data output from the parallel processing switching units 90-1 to 90-M.
  • the frame loop filter units 89-1 to 89-M constitute frame filter means.
  • the parallel processing switching unit 90-m executes processing to control the connection relationship between the processing unit of the preceding stage and the processing unit of the subsequent stage in accordance with the loop filter parallel flag #m output from the encoding control unit 81.
  • the filter parameter sharing flag # 1 to # output from the encoding control unit 81 Among M, for example, when the filter parameter sharing flag #x indicates that the filter is shared in each tile, the locally decoded image, the encoding parameter, and the bit series data output from the processing unit in the previous stage are tile loop filters
  • the frame loop filter unit 89-x is output instead of the unit 88-x-n.
  • the parallel processing end unit 91 outputs the filter parameter sharing flag output from the encoding control unit 81 when the encoding parallel flag output from the encoding control unit 81 indicates that the input image is to be divided and parallelized. If #M indicates that the filter is not common to each tile, filtering processing by tile loop filter units 88 -M-1 to 88 -MN according to the tile division control information output from encoding control unit 81 The subsequent tile local decoded images are combined to generate a frame-based local decoded image, and the local decoded image is stored in the motion compensated prediction frame memory 84, and the tile loop filter units 88-M-1 to 88-MN are used.
  • a process of outputting the bit series data output from the variable length code multiplexing unit 92 to the variable length code multiplexing unit 92 is performed.
  • the filter parameter sharing flag #M output from the encoding control unit 81 indicates that the filter is shared among the tiles. If so, the frame local decoded image after the filtering processing by the frame loop filter unit 88-M is stored in the motion compensated prediction frame memory 84, and the bit sequence data output from the frame loop filter unit 88-M is variable length code The processing to be output to the multiplexing unit 92 is performed.
  • the frame local decoded image after the filtering processing by the frame loop filter unit 88-M is stored in the motion compensation prediction frame memory 84.
  • the bit sequence data output from the frame loop filter unit 88-M is output to the variable-length code multiplexing unit 92.
  • the parallel processing end unit 91 constructs a local decoded image storage unit.
  • Variable-length code multiplexing section 92 receives the bit series data output from parallel processing end section 91, the tile division control information output from encoding control section 81, the encoding parallel flag, loop filter parallel flag # 1 to M A bit stream is generated by multiplexing filter parameter sharing flags # 1 to M and coded data of filter parameters indicating a filter determined by tile loop filter unit 88-mn or frame loop filter unit 89-m. Perform the process.
  • the variable-length code multiplexing unit 92 constitutes a multiplexing means.
  • a coding control unit 81 In the example of FIG. 17, a coding control unit 81, a tile division control unit 82, a parallel processing start unit 83, a motion compensation prediction frame memory 84, a tile coding unit 85, and a frame coding, which are components of a moving picture coding apparatus.
  • each of the parallel processing end unit 91 and the variable-length code multiplexing unit 92 is configured by dedicated hardware (for example, a semiconductor integrated circuit on which a CPU is mounted, a one-chip microcomputer, etc.)
  • a program describing the processing contents of the parallel processing end unit 91 and the variable-length code multiplexing unit 92 is stored in the memory of the computer, and
  • FIG. 18 is a block diagram showing a moving picture decoding apparatus according to a second embodiment of the present invention.
  • the variable-length code separation unit 101 receives a bit stream generated by the moving picture coding apparatus shown in FIG. 17, the bit sequence data multiplexed in the bit stream, tile division control information, and a code A process is performed to separate the coded parallel flag, the loop filter parallel flag # 1 to M, the filter parameter sharing flag # 1 to M, and the encoded data of the filter parameter.
  • the variable-length code separation unit 101 constitutes separation means.
  • the parallel processing start unit 102 indicates that the encoding parallel flag separated by the variable length code separation unit 101 divides and parallelizes the input image
  • the frame unit output from the variable length code separation unit 101 A process of dividing bit series data into bit series data in tile units and distributing bit series data in tile units to tile decoding units 104-1 to 104-N is performed.
  • the encoding parallel flag indicates that the input image is not divided and not parallelized
  • processing is performed to output the bit sequence data in units of frames output from the variable length code separation unit 101 to the frame decoding unit 105.
  • the parallel processing start unit 102 constructs a coded bit data distribution unit.
  • the motion compensation prediction frame memory 103 is a recording medium for storing the decoded image after the filtering process.
  • the motion compensation prediction frame memory 103 constitutes an image memory.
  • the tile decoding device 104 implements N tile decoding units 104-1 to 104-N, and the N tile decoding units 104-1 to 104-N independently perform prediction differential decoding processing.
  • N is an integer of 1 or more. Similar to the tile decoding units 54-1 to 54-N in FIG.
  • the tile decoding units 104-1 to 104-N refer to the decoded image after filtering processing stored in the motion compensation prediction frame memory 103,
  • a tile-decoded image (a tile-based decoded image) is generated by performing a prediction difference decoding process on tile-based bit sequence data distributed by the parallel processing start unit 102, and the tile-decoded image and the prediction difference decoding process
  • a processing is performed to output the coding parameter (coding parameter multiplexed to the bit sequence data) used when performing the processing to the parallel processing switching unit 110-1.
  • processing is performed to output, to the parallel processing switching unit 110-1, encoded data of filter parameters indicating a tile-based filter multiplexed in bit sequence data.
  • the tile decoding units 104-1 to 104-N constitute tile decoding means.
  • the frame decoding unit 105 refers to the locally decoded image after filtering processing stored in the motion compensation prediction frame memory 103, and performs prediction difference decoding processing on bit series data in units of frames output from the parallel processing start unit 102. By doing this, a frame decoded image (a frame-by-frame decoded image) is generated, and the frame decoded image and a coding parameter (code multiplexed to bit sequence data) used when performing predictive differential decoding processing are generated. Processing for outputting the conversion parameter) to the parallel processing switching unit 110-1. In addition, processing is performed to output, to the parallel processing switching unit 110-1, encoded data of filter parameters indicating a filter in units of frames multiplexed into bit sequence data.
  • the frame decoding unit 105 constitutes a frame decoding unit.
  • the filter parameter decoding units 106-1 to 106-M are variable length code separation units. A process of decoding a filter parameter indicating a filter in a frame unit from encoded data # 1 to M of the filter parameter separated by 101, and outputting the filter parameter to tile loop filter devices 107-1 to 107-M is performed .
  • M is an integer of 1 or more.
  • the filter parameter indicating the tile unit filter is decoded from the encoded data of the filter parameter output from the parallel processing switching unit 110-m
  • the filtering process is performed on the tile decoded image using a tile-by-tile filter.
  • the filter parameter indicating the frame unit filter is selected from the encoded data of the filter parameter output from the parallel processing switching unit 110-m. Decoding and filtering on tile-decoded images are performed using frame-based filters.
  • the tile loop filter units 107-1-1 to 107-1-N, 107-2-1 to 107-2-N,..., 107-M-1 to 107-MN use tile filter means. Configured.
  • the frame loop filter unit 108-m is a filter that indicates a frame-based filter from encoded data of filter parameters output from the parallel processing switching unit 110-m.
  • the parameters are decoded, and filtering processing is performed on the frame decoded image using a frame-based filter.
  • the frame loop filter units 108-1 to 108-M constitute frame filter means.
  • the tile division control unit 109 recognizes the tile division state from the tile division control information separated by the variable-length code separation unit 101, and obtains the decoded image corresponding to the original input image in the parallel processing end unit 111. A process of controlling the arrangement of each tile decoded image is performed.
  • the parallel processing switching unit 110-m executes processing to control the connection relationship between the processing unit of the former stage and the processing unit of the latter stage according to the loop filter parallel flag #m separated by the variable length code separation unit 101.
  • the filter parameter sharing flag # separated by the variable-length code separation unit 101 Among 1 to M, for example, when the filter parameter sharing flag #x indicates that the filter is shared by each tile, the decoded image, the encoding parameter, and the encoded data of the filter parameter output from the processing unit of the preceding stage Are output not to the tile loop filter unit 107-x-n but to the frame loop filter unit 108-x.
  • the parallel processing end unit 111 Under control of the tile division control unit 109, the parallel processing end unit 111 combines the tile decoded images after the filtering processing by the tile loop filter units 107-M-1 to 107-MN to generate a decoded image in frame units. And stores the decoded image in the motion compensated prediction frame memory 103.
  • the tile division control unit 109 and the parallel processing end unit 111 constitute a decoded image storage unit.
  • variable-length code separation unit 101 the parallel processing start unit 102, the motion compensation prediction frame memory 103, the tile decoding unit 104, the frame decoding unit 105, and the filter parameter decoding unit 106 which are components of the moving picture decoding apparatus.
  • -1 to 106-M tile loop filter devices 107-1 to 107-M, frame loop filter units 108-1 to 108-M, tile division control unit 109, parallel processing switching units 110-1 to 110-M, and parallel
  • each of the processing end units 111 is configured by dedicated hardware (for example, a semiconductor integrated circuit on which a CPU is mounted, a one-chip microcomputer, etc.), the moving image decoding apparatus is a computer.
  • variable-length code separation unit 101 When configured, variable-length code separation unit 101, parallel processing start unit 102, tile decoding device 104, frame decoding 105, filter parameter decoding units 106-1 to 106-M, tile loop filter devices 107-1 to 107-M, frame loop filter units 108-1 to 108-M, tile division control unit 109, parallel processing switching unit 110-
  • a program in which the processing contents of 1 to 110-M and the parallel processing end unit 111 are described may be stored in the memory of the computer, and the CPU of the computer may execute the program stored in the memory.
  • the tile loop filter device 7 is shown to have a one-stage configuration, but in the third embodiment, tile loop filter devices 88-1 to 88- that realize different types of loop filters are used.
  • M is connected in multiple stages.
  • SAO deblocking filter
  • ALF ALF
  • encoding processing and all filtering processing are not performed between tiles if the image is divided into tiles. It must be carried out in a manner.
  • the third embodiment it is possible to switch between dividing the input image and performing parallel processing in units of tiles or processing in units of frames without parallelization. In addition, it is possible to switch whether to perform tile-based filtering processing or frame-based filtering processing for each loop filter.
  • the encoding control unit 81 performs tile division control unit 82 on tile division control information for instructing a division state when dividing an input image represented by a video signal into tiles of a predetermined size. , And the parallel processing end unit 91 and the variable length code multiplexing unit 92. Also, the encoding control unit 81 outputs to the parallel processing start unit 83 an encoding parallel flag indicating whether or not the input image is divided and parallelized, and a filter used for the filtering processing according to the type of filtering processing.
  • Filter parameter sharing flags # 1 to M (in the case of common to each tile: flag of ON, not common to each tile: flag of OFF) indicating whether to make each tile common or not to the loop filter control unit 87-1 Through 87-M, tile loop filter devices 88-1 through 88-M, and variable-length code multiplexer 91. Further, the coding control unit 81 outputs, to the parallel processing switching units 90-1 to 90-M, the loop filter parallel flags # 1 to M indicating the connection relationship between the processing units of the former stage and the processing units of the latter stage.
  • the tile division control unit 82 When the tile division control unit 82 receives tile division control information from the encoding control unit 81, the tile division control unit 82 divides the input image in the parallel processing start unit 83 so that the tile division control information matches the designated division state. Control. If the parallel processing start unit 83 indicates that the encoding parallel flag output from the encoding control unit 81 divides and parallelizes the input image, the video signal is an instruction under the instruction of the tile division control unit 82. The input image to be shown is divided into tiles of a predetermined size, and the tiles after division are distributed to tile coding units 85-1 to 85-N.
  • the encoding parallel flag indicates that the input image is not divided and not parallelized
  • the input image which is an image in units of frames
  • the frame encoding unit 86 without dividing the input image indicated by the video signal. Output.
  • tile encoding units 85-1 to 85-N receive tiles from parallel processing start unit 83, tile local decoded images are generated in the same procedure as tile encoding units 5-1 to 5-N in FIG. . That is, the tile coding units 85-1 to 85-N refer to the locally decoded image after filtering processing stored in the motion compensation prediction frame memory 84, and predict the tiles distributed by the parallel processing start unit 83. By performing the differential encoding process, the bit sequence data and the encoding parameter that are the encoding result are output, and the tile local decoded image is generated.
  • the frame encoding unit 86 When the frame encoding unit 86 receives an input image that is a frame unit image from the parallel processing start unit 83, the frame encoding unit 86 refers to the locally decoded image after filtering processing stored in the motion compensated prediction frame memory 84, By performing prediction differential encoding processing on an image, the bit sequence data and encoding parameters that are the encoding result are output, and a frame local decoded image is generated. It differs from tile encoding units 85-1 to 85-N in that the unit of processing for encoding processing is in units of frames, but the encoding processing itself is similar to that for tile encoding units 85-1 to 85-N. Therefore, the detailed description is omitted.
  • the parallel processing switching unit 90-m controls the connection relationship between the processing unit of the former stage and the processing unit of the latter stage according to the loop filter parallel flag #m output from the encoding control unit 81. If the input image is not divided and not parallelized, the parallel processing start unit 83 does not divide the input image, and the frame encoding unit 86 performs encoding processing in units of frames. The output signal (frame local decoded image, bit sequence data, coding parameter) of the unit 86 (or the frame loop filter unit of the former stage) is transmitted to the frame loop filter unit of the latter stage.
  • the tile encoding unit 85 performs filtering processing in units of tiles.
  • the output signal (tile local decoded image, bit sequence data, coding parameter) of -1 to 85-N (or the tile loop filter unit of the former stage) is transmitted to the tile loop filter unit of the latter stage.
  • frame-by-frame filtering processing is performed in the (m ⁇ 1) -th stage loop filter
  • the frame local decoded image output from the previous frame loop filter unit is divided into tile local decoded images, and the tile local decoded image is generated.
  • the decoded image, bit sequence data, and coding parameters are transmitted to the tile loop filter unit in the subsequent stage.
  • the loop filter control unit 87-m When the filter parameter sharing flag #m output from the encoding control unit 81 is ON, the loop filter control unit 87-m generates a frame local decoded image from the tile local decoded image output from the parallel processing switching unit 90-m To determine a frame-by-frame filter suitable for the frame local decoded image. When the frame local decoded image is output from the parallel processing switching unit 90-m, a frame-based filter suitable for the frame local decoded image is determined. When the loop filter control unit 87-m determines a filter in frame units, it outputs a filter parameter indicating the filter to the tile loop filter device 88-m. Also, the loop filter control unit 87-m performs variable length coding on the filter parameter indicating the filter in frame units, and outputs the coded data of the filter parameter to the parallel processing end unit 91.
  • the tile loop filter unit 88-mn upon receiving the tile local decoded image from the parallel processing switching unit 90-m, is output from the encoding control unit 81 in the same manner as the tile loop filter unit 7-n in FIG. If the filter parameter sharing flag #m is OFF, the tile-based filter suitable for the filtering process of the tile local decoded image is determined based on the coding parameter output from the parallel processing switching unit 90-m, and the filter The filtering process is performed on the tile local decoded image, and the tile local decoded image after the filtering process is output to the parallel processing switching unit or the parallel processing end unit 91 in the subsequent stage.
  • the tile loop filter unit 88-m-n performs variable length coding on the filter parameter indicating the filter in tile units, and converts the coded data of the filter parameter into bit sequence data output from the parallel processing switching unit 90-m. It multiplexes and outputs to the parallel processing switching part or parallel processing end part 91 of the latter stage.
  • the parallel processing switching unit 90-m provides the frame local decoded image to the frame loop filter unit 89-m, and supplies the tile local decoded image to the tile loop filter unit 88-mn. Since this is not the case, filter processing of tile local decoded image is performed using a frame-by-frame filter Not with.
  • the coding control unit 81 outputs the coding parallel flag.
  • a situation where the function of the frame loop filter unit 89-m is stopped or the like can be considered without using it (configuration similar to the first embodiment).
  • the frame loop filter unit 89-m When the frame loop filter unit 89-m receives the tile local decoded image from the parallel processing switching unit 90-m, the frame loop filter unit 89-m obtains the frame local decoded image from the tile local decoded image, and outputs the frame local decoded image from the parallel processing switching unit 90-m. Based on the coding parameter, a frame-based filter suitable for filtering processing of the frame local decoded image is determined. When the frame local decoded image is output from the parallel processing switching unit 90-m, a frame-based filter suitable for the frame local decoded image is determined based on the encoding parameter.
  • the frame loop filter unit 89-m determines the frame unit filter, it performs filtering processing on the frame local decoded image using the frame unit filter, and performs parallel processing of the frame local decoded image after the filtering processing It is output to the switching unit or parallel processing end unit 91.
  • the frame loop filter unit 89-m performs variable-length coding on the filter parameter indicating the filter in frame units, and multiplexes the encoded data of the filter parameter into the bit series data output from the parallel processing switching unit 90-m. The data is output to the parallel processing switching unit or parallel processing end unit 91 in the subsequent stage.
  • the parallel processing end unit 91 uses the filter parameter sharing output from the encoding control unit 81 when the encoding parallel flag output from the encoding control unit 81 indicates that the input image is divided and parallelized. If the flag #M is OFF, the tile local decoded image after the filtering process by the tile loop filter units 88-M-1 to 88-MN is combined according to the tile division control information output from the encoding control unit 81. The local decoded image is generated in frame units, and the local decoded image is stored in the motion compensated prediction frame memory 84, and the bit sequence data output from the tile loop filter units 88-M-1 to 88-MN is used. It is output to the variable-length code multiplexing unit 92.
  • the frame loop filter unit 88 when the encoding parallel flag indicates that the input image is divided and parallelized, the frame loop filter unit 88 if the filter parameter sharing flag #M output from the encoding control unit 81 is ON. As well as storing the frame local decoded image after the filtering processing by ⁇ M in the motion compensation prediction frame memory 84, the bit sequence data output from the frame loop filter unit 88 -M is output to the variable length code multiplexing unit 92. On the other hand, when the encoding parallel flag indicates that the input image is not divided and not parallelized, the frame local decoded image after the filtering processing by the frame loop filter unit 88-M is stored in the motion compensation prediction frame memory 84. The bit sequence data output from the frame loop filter unit 88 -M is output to the variable-length code multiplexing unit 92.
  • the variable-length code multiplexing unit 92 includes the bit sequence data output from the parallel processing end unit 91, the tile division control information output from the encoding control unit 81, the encoding parallel flag, and the loop filter parallel flag # 1 to M. And the filter parameter sharing flags # 1 to M to generate a bit stream.
  • variable-length code separation unit 101 receives a bit stream generated by the moving picture coding apparatus shown in FIG. 17, the bit-sequence data multiplexed in the bit stream, tile division control information, and encoding parallel flag are input. , Loop filter parallel flags # 1 to M, filter parameter sharing flags # 1 to M, and encoded data of filter parameters are separated and output.
  • the parallel processing start unit 102 indicates that the encoding parallel flag separated by the variable length code separation unit 101 divides and parallelizes the input image
  • the frame unit output from the variable length code separation unit 101 Is divided into tile series bit series data, and tile series bit series data is distributed to tile decoding units 104-1 to 104-N.
  • the encoding parallel flag indicates that the input image is not divided and not parallelized
  • the bit sequence data in units of frames output from the variable length code separation unit 101 is output to the frame decoding unit 105.
  • the tile decoding units 104-1 to 104-N receive the bit sequence data in tile units from the parallel processing start unit 102, the tile decoding units 104-1 to 104-N are processed in the same manner as the tile decoding units 54-1 to 54-N in FIG. Generate That is, the tile decoding units 104-1 to 104-N refer to the decoded image after filtering processing stored in the motion compensation prediction frame memory 103, and the bit sequence of tile unit distributed by the parallel processing start unit 102.
  • a tile decoded image is generated, and the tile decoded image and a coding parameter (multiplexed in bit sequence data) used in performing the prediction differential decoding process are generated.
  • the coding parameter is output to the parallel processing end unit 111.
  • processing is performed to output, to the parallel processing switching unit 110-1, encoded data of filter parameters indicating a tile-based filter multiplexed in bit sequence data.
  • frame decoding section 105 When receiving bit series data in frame units from parallel processing start section 102, frame decoding section 105 refers to the locally decoded image after filtering processing stored in motion compensated prediction frame memory 103, and selects bits in that frame A frame decoded image is generated by performing a prediction differential decoding process on sequence data, and a coding parameter (a code multiplexed with bit sequence data) used when performing the frame decoded image and the prediction differential decoding process Optimization parameter) is output to the parallel processing end unit 111. In addition, processing is performed to output, to the parallel processing switching unit 110-1, encoded data of filter parameters indicating a filter in units of frames multiplexed into bit sequence data.
  • the parallel processing switching unit 100-m controls the connection relationship between the processing unit of the former stage and the processing unit of the latter stage according to the loop filter parallel flag #m separated by the variable length code separation unit 101. If the flag indicates that the input image is not divided and not parallelized, the parallel processing start unit 102 does not divide the bit sequence data in frame units into bit sequence data in tile units, and the frame decoding unit 105 performs frame units
  • the frame decoding unit 105 (or the frame loop filter unit at the previous stage) (frame decoded image, coding parameter, encoded data of filter parameter indicating a filter in frame units) Transmit to the loop filter unit.
  • the tile decoding unit 104- performs filtering processing in units of tiles. Transmit the output signal (tiled local decoded image, coding parameter, coded data of filter parameter indicating filter in tile unit) from 1 to 104-N (or previous tile loop filter unit) to the tile loop filter unit of the latter stage Do.
  • the frame decoded image output from the previous frame loop filter unit is divided into tile decoded images, and the tile decoded image,
  • the encoded data and the encoded data of the filter parameter indicating the filter in tile units are transmitted to the tile loop filter unit in the subsequent stage.
  • the m-th stage loop filter performs the frame-by-frame filtering process.
  • An output signal of tile decoding units 104-1 to 104-N (or a tile loop filter unit of the previous stage) (a tile local decoded image, a coding parameter, coded data of a filter parameter indicating a filter in a tile unit), or
  • An output signal (a frame decoded image, an encoding parameter, and encoded data of a filter parameter indicating a filter in a frame unit) of the preceding frame loop filter unit is transmitted to the subsequent frame loop filter unit.
  • the filter parameter decoding unit 106-m uses the encoded data #m of the filter parameter separated by the variable length code separation unit 101.
  • the filter parameter indicating the frame-based filter is decoded, and the filter parameter is output to the tile loop filter device 107-m.
  • the tile loop filter unit 107-m-n receives a tile decoded image from the parallel processing switching unit 110-m, parallel processing is performed if the filter parameter sharing flag #m separated by the variable length code separation unit 101 is OFF.
  • the filter parameter indicating the filter in tile units is decoded from the encoded data of the filter parameter output from the switching unit 110-m, and the filtering process is performed on the tile decoded image using the filter in tile units. If the filter parameter sharing flag #m is ON, the filtering process is performed on the tile-decoded image using the filter in units of frames indicated by the filter parameter output from the filter parameter decoding unit 106-m.
  • the parallel processing switching unit 110-m even when the encoding parallel flag indicates that the input image is divided and parallelized, the parallel processing switching unit 110-m generates a frame decoded image when the filter parameter sharing flag #m is ON.
  • the frame loop filter unit 108-m does not give the tiled decoded image to the tile loop filter unit 107-m-n, so under this circumstance, filtering of the tiled decoded image is performed using the frame-based filter. It will not be implemented.
  • the tile loop filter unit 107-m-n performs filtering processing of tile-decoded images using frame-based filters, for example, the coding side does not use the function of outputting the coding parallel flag.
  • the situation where the function of the frame loop filter unit 108-m is stopped can be considered (configuration similar to that of the first embodiment).
  • the frame loop filter unit 108-m uses the encoded data of the filter parameter output from the parallel processing switching unit 110-m as a filter parameter indicating a filter in frame units. Are decoded, and a filtering process is performed on the frame decoded image using a frame-based filter.
  • the tile division control unit 109 grasps the tile division state from the tile division control information separated by the variable length code separation unit 101, and the parallel processing end unit 111 so that a decoded image corresponding to the original input image can be obtained.
  • a parallel processing end unit 111 is a filter separated by the variable-length code separation unit 101 when the encoding parallel flag separated by the variable-length code separation unit 101 indicates that the input image is divided and parallelized. If the parameter sharing flag #M is OFF, under the control of the tile division control unit 109, the tile decoded image after the filtering processing by the tile loop filter units 107-M-1 to 107-MN is combined and frame united.
  • the decoded image is stored in the motion compensation prediction frame memory 103.
  • the filter parameter sharing flag #M is ON, the frame after the filtering process by the frame loop filter unit 108-M
  • the decoded image is stored in the motion compensation prediction frame memory 103.
  • the frame decoded image after filtering processing by the frame loop filter unit 108 -M is stored in the motion compensation prediction frame memory 103.
  • the third embodiment it is possible to switch whether to divide the input image and perform parallel processing in units of tiles or to perform processing in units of frames without parallelization, and to use a loop filter Since it is possible to switch between tile-by-tile filtering and frame-by-frame filtering each time, even if different types of loop filters are connected in multiple stages to improve the overall filter performance, An effect of speeding up the processing can be achieved.
  • the present invention allows free combination of each embodiment, or modification of any component of each embodiment, or omission of any component in each embodiment. .
  • a moving picture coding apparatus, a moving picture decoding apparatus, a moving picture coding method, and a moving picture decoding method generate a locally decoded image in tile units and determine a filter in tile units suitable for the locally decoded image. And the tile is used to perform the filtering process of the locally decoded image, and the loop filter process can be performed in parallel at the tile level.
  • the present invention can be applied to an image coding method, and a moving picture decoding apparatus and a moving picture decoding method for decoding an image from coded data transmitted by a moving picture coding apparatus.
  • 1 encoding control unit 2 tile division control unit (tile distribution unit) 3 parallel processing start unit (tile distribution unit) 4 motion compensation prediction frame memory (image memory) 5 tile encoding device 5-1 to 5-N tile encoding unit (tile encoding unit), 6 loop filter control unit (frame unit filter determining unit), 7 tile loop filter apparatus, 7-1 to 7-N tile loop filter unit (tile Filter means), 8 Parallel processing end unit (local decoded image storage means), 9 variable length code multiplexing unit (multiplexing means), 21 tile coding control unit, 22 block division unit, 23 changeover switch, 24 intra prediction unit , 25 motion compensation prediction unit, 26 subtraction unit, 27 transformation / quantization unit, 28 inverse quantization / inversion unit, 29 addition unit, 30 tiles Partially decoded image memory, 31 variable length coding unit, 41 tile loop filter control unit, 42 loop filter implementation unit, 43 variable length coding unit, 51 variable length code separation unit (separation unit), 52 parallel processing start unit (code Block data distribution means), 53 motion compensated prediction frame
  • tile loop filter section (tile filter means), 89-1 to 89-M frame loop filter section Filter unit), 90-1 to 90-M parallel processing switching unit, 91 parallel processing end unit (local decoded image storage unit), 92 variable length code multiplexing unit (multiplexing unit), 101 variable length code separation unit (separation Means), 102 Parallel processing start unit (coded bit data distribution unit), 103 motion compensation prediction frame memory (image memory), 104 tile decoding device, 104-1 to 104-N tile decoding unit (tile decoding unit), 105 Frame decoding unit (frame decoding unit), 106-1 to 106-M filter parameter decoding unit, 107-1 to 107-M tile loop filter apparatus, 107-1-1 to 107-1-N, 107-2-1 107107-2-N, ..., 107-M-1 to 107-MN tile loop filter section (tile filter means), 108- ⁇ 108-M frame loop filter unit (frame filter means), 109 tile dividing unit (decode

Landscapes

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

Abstract

 入力画像を所定サイズのタイルに分割し、分割後のタイルを分配する並列処理開始部3と、並列処理開始部3により分配されたタイルに対する予測差分符号化処理を実施して、局所復号画像を生成するN個のタイル符号化部5-1~5-Nとを設け、N個のタイルループフィルタ部7-1~7-Nが、タイル符号化部5-1~5-Nにより生成された局所復号画像のフィルタリング処理に適するタイル単位のフィルタを決定し、そのフィルタを用いて、その局所復号画像に対するフィルタリング処理を実施する。

Description

動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法
 この発明は、画像を圧縮符号化して伝送する動画像符号化装置及び動画像符号化方法と、動画像符号化装置により伝送された符号化データから画像を復号する動画像復号装置及び動画像復号方法とに関するものである。
 従来、MPEG(Moving Picture Experts Group)や「ITU-T H.26x」などの国際標準映像符号化方式では、入力映像フレームをマクロブロック(MB)、コーディングユニット(CU)などの名称で呼ばれる正方ブロックに分割し、ブロック毎に、フレーム内予測、フレーム間予測、予測誤差信号の直交変換、量子化、エントロピー符号化処理などを実施している。
 また、全てのマクロブロックの処理が完了して、画面一枚分の局所復号画像が作成された後に、ループフィルタのパラメータを決定する処理、そのループフィルタを用いて、局所復号画像をフィルタリングする処理や、エントロピー符号化処理を実施している。
 ここで、各コーディングユニットの符号化処理は、コーディングユニットをラスタスキャン順に処理することを前提としており、あるコーディングユニットの符号化処理では、ラスタスキャン順に前のコーディングユニットの符号化結果を必要とする。
 具体的には、フレーム間予測を行う場合、隣接しているコーディングユニットの局所復号画像を画素参照として使用する。
 また、エントロピー符号化処理では、シンボルの生起確率を推定する際、確率遷移モデルをラスタスキャン順に前のコーディングユニットと共有しており、また、確率モデルの切り替えのために、隣接しているマクロブロックのモード情報を参照する必要がある。
 よって、あるコーディングユニットの符号化処理を進めるためには、ラスタスキャン順で前のコーディングユニットの処理の一部または全部が完了していなければならない。
 このようなコーディングユニット間の依存性が、符号化処理及び復号処理の並列化の障害となっている。
 以下の非特許文献1では、上記の問題を解決するために、タイルと呼ばれる構造体を用いている。
 ここで、タイルは、図11に示すように、複数のコーディングユニットからなる矩形領域である。異なるタイルに属するコーディングユニットとの依存性を無くすことで、タイルレベルでの並列処理が可能になる。
 具体的には、タイルは、以下に示すような特徴を有している。
(1)画像のタイルによる分割は、コーディングユニット単位で行われる。
(2)画像のタイルによる分割は、各行・各列の幅が非均一な格子状となる。即ち、縦方向に隣接しているタイルは、左右両端の座標が等しく、横方向に隣接しているタイルは上下両端の座標が等しい。
(3)各コーディングユニットはタイル内で閉じたラスタスキャン順に処理される。また、タイル内でスライス分割を行うことが可能である。
(4)タイル内で最初に処理されるコーディングユニットは、エントロピー符号化が初期状態から開始される。
(5)フレーム内予測、フレーム間予測、エントロピー符号化・復号の処理において、隣接しているコーディングユニットの局所復号画像及び符号化モードの参照を行う際、隣接しているコーディングユニットが異なるタイルに属している場合、隣接しているコーディングユニットの参照を行わずに、画面端の処理を実施する。
(6)ループフィルタ処理は、全てのタイルの処理が完了して、画面全体分の復号画像が作成された後に、画面全体に対して実施する。
 以上より、あるタイルに属するコーディングユニットの符号化処理では、予測・予測誤差信号の直交変換・量子化・エントロピー符号化の処理において、同じタイル内に属するコーディングユニットの結果のみを必要とする。
 よって、符号化処理のうち、フレーム内/フレーム間予測、予測誤差信号の直交変換・量子化、エントロピー符号化の処理をタイルレベルで並列処理することが可能になる。
 また、タイルを用いて作成されたビットストリームの復号処理では、エントロピー復号、予測誤差信号の逆量子化・逆変換、フレーム内/フレーム間予測の処理をタイルレベルでの並列処理が可能になる。
Arild Fuldseth,Michael Horowitz,Shilin Xu,Andrew Segall,Minhua Zhou,"JCTVC-F335: Tiles",Joint Collaborative Team on Video Coding(JCT-VC)of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 6th Meeting: Torino,IT,14-22July,2011
 従来の動画像符号化装置は以上のように構成されているので、フレーム内/フレーム間予測、予測誤差信号の直交変換・量子化、エントロピー符号化の処理については並列処理が可能であるが、ループフィルタの処理は画面全体に対して行われる。この場合、タイル境界のフィルタリング処理では、境界に隣接している両方のタイルの局所復号画像を参照する必要があるため、両方のタイルの処理が完了していなければならず、タイルレベルでの並列処理を行うことができない課題があった。
 この発明は上記のような課題を解決するためになされたもので、ループフィルタの処理をタイルレベルで並列に行うことができる動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法を得ることを目的とする。
 この発明に係る動画像符号化装置は、入力画像の分割状態を指示する分割制御情報を出力する分割制御手段と、分割制御手段から出力された分割制御情報にしたがって入力画像を所定サイズの矩形領域であるタイルに分割し、分割後のタイルを分配するタイル分配手段と、フィルタリング処理後の局所復号画像を記憶する画像メモリと、画像メモリに記憶されている局所復号画像を参照して、タイル分配手段により分配されたタイルに対する予測差分符号化処理を実施することで、その符号化結果である符号化ビットデータを出力するとともに、その符号化ビットデータから局所復号画像を生成する1以上のタイル符号化手段と、タイル符号化手段により生成された局所復号画像のフィルタリング処理に適するタイル単位のフィルタを決定し、そのフィルタを用いて、上記局所復号画像に対するフィルタリング処理を実施する1以上のタイルフィルタ手段と、分割制御手段から出力された分割制御情報にしたがって1以上のタイルフィルタ手段によるフィルタリング処理後の局所復号画像を組み合わせてフレーム単位の局所復号画像を生成し、その局所復号画像を画像メモリに格納する局所復号画像格納手段とを設け、多重化手段が、タイル符号化手段から出力された符号化ビットデータ、タイルフィルタ手段により決定されたタイル単位のフィルタを示すフィルタパラメータ及び分割制御手段から出力された分割制御情報を多重化してビットストリームを生成するようにしたものである。
 この発明によれば、入力画像の分割状態を指示する分割制御情報を出力する分割制御手段と、分割制御手段から出力された分割制御情報にしたがって入力画像を所定サイズの矩形領域であるタイルに分割し、分割後のタイルを分配するタイル分配手段と、画像メモリに記憶されている局所復号画像を参照して、タイル分配手段により分配されたタイルに対する予測差分符号化処理を実施することで、その符号化結果である符号化ビットデータを出力するとともに、その符号化ビットデータから局所復号画像を生成する1以上のタイル符号化手段とを設け、1以上のタイルフィルタ手段が、タイル符号化手段により生成された局所復号画像のフィルタリング処理に適するタイル単位のフィルタを決定し、そのフィルタを用いて、その局所復号画像に対するフィルタリング処理を実施するように構成したので、ループフィルタの処理をタイルレベルで並列に行うことができる効果がある。
この発明の実施の形態1による動画像符号化装置を示す構成図である。 この発明の実施の形態1による動画像符号化装置の処理内容(動画像符号化方法)を示すフローチャートである。 この発明の実施の形態1による動画像符号化装置のタイル符号化部5-n(n=1,2,・・・,N)を示す構成図である。 この発明の実施の形態1による動画像符号化装置のタイル符号化部5-n(n=1,2,・・・,N)の処理内容を示すフローチャートである。 この発明の実施の形態1による動画像符号化装置のタイルループフィルタ部7-n(n=1,2,・・・,N)を示す構成図である。 この発明の実施の形態1による動画像復号装置を示す構成図である。 この発明の実施の形態1による動画像復号装置の処理内容(動画像復号方法)を示すフローチャートである。 この発明の実施の形態1による動画像復号装置のタイル復号部54-n(n=1,2,・・・,N)を示す構成図である。 この発明の実施の形態1による動画像復号装置のタイル復号部54-n(n=1,2,・・・,N)の処理内容を示すフローチャートである。 この発明の実施の形態1による動画像復号装置のタイルループフィルタ部56-n(n=1,2,・・・,N)を示す構成図である。 画像のLCU分割及びタイル分割の一例を示す説明図である。 最大符号化ブロックが階層的に複数の符号化対象ブロックに分割される例を示す説明図である。 分割後のパーティションの分布や、階層分割後のパーティションに符号化モードm(B)が割り当てられる状況を4分木グラフで示す説明図である。 タイルとフィルタ定義領域を示す説明図である。 フィルタパラメータが多重化されているビットストリームを示す説明図である。 フィルタ境界でのフィルタリング処理を示す説明図である。 この発明の実施の形態2による動画像符号化装置を示す構成図である。 この発明の実施の形態2による動画像復号装置を示す構成図である。 格子状配置でない自由なタイル分割の一例を示す説明図である。
 以下、この発明をより詳細に説明するために、この発明を実施するための形態について、添付の図面に従って説明する。
実施の形態1.
 図1はこの発明の実施の形態1による動画像符号化装置を示す構成図である。
 図1において、符号化制御部1は映像信号が示す入力画像を所定サイズの矩形領域であるタイルに分割する際の分割状態を指示するタイル分割制御情報(分割制御情報)を出力する処理を実施する。
 また、符号化制御部1はタイル符号化部5-1~5-Nにより生成されたタイル単位の局所復号画像のフィルタリング処理に用いるフィルタを各タイルで共通させるか否かを示すフィルタパラメータ共有フラグ(フィルタ共有フラグ)を出力する処理を実施する。
 なお、符号化制御部1は分割制御手段を構成している。
 タイル分割制御部2は符号化制御部1から出力されたタイル分割制御情報が指示している分割状態と一致するように、並列処理開始部3における入力画像の分割を制御する処理を実施する。
 並列処理開始部3はタイル分割制御部2の指示の下、映像信号が示す入力画像を所定サイズのタイルに分割し、分割後のタイルをタイル符号化部5-1~5-Nに分配する処理を実施する。
 なお、タイル分割制御部2及び並列処理開始部3からタイル分配手段が構成されている。
 動き補償予測フレームメモリ4はフィルタリング処理後の局所復号画像を記憶する記録媒体である。なお、動き補償予測フレームメモリ4は画像メモリを構成している。
 タイル符号化装置5はN個のタイル符号化部5-1~5-Nを実装しており、N個のタイル符号化部5-1~5-Nが独立して予測差分符号化処理を実施する。Nは1以上の整数である。
 タイル符号化部5-1~5-Nは動き補償予測フレームメモリ4に記憶されているフィルタリング処理後の局所復号画像を参照して、並列処理開始部3により分配されたタイルに対する予測差分符号化処理を実施することで、その符号化結果であるビット系列データ(符号化ビットデータ)及び符号化パラメータ(符号化パラメータは予測差分符号化処理を実施する際に用いられたパラメータであり、符号化モード、予測差分符号化パラメータ、イントラ予測パラメータ、インター予測パラメータが該当する)を出力するとともに、タイル局所復号画像(局所復号画像)を生成する処理を実施する。なお、タイル符号化部5-1~5-Nはタイル符号化手段を構成している。
 ループフィルタ制御部6は符号化制御部1から出力されたフィルタパラメータ共有フラグが各タイルでフィルタを共通させる旨を示している場合、タイル符号化部5-1~5-Nにより生成されたタイル局所復号画像からフレーム単位の局所復号画像を得て、フレーム単位の局所復号画像に適するフレーム単位のフィルタを決定し、そのフィルタを示すフィルタパラメータをタイルループフィルタ装置7に出力する処理を実施する。
 また、ループフィルタ制御部6はフレーム単位のフィルタを示すフィルタパラメータを可変長符号化し、そのフィルタパラメータの符号化データを並列処理終了部8に出力する処理を実施する。
 なお、ループフィルタ制御部6はフレーム単位フィルタ決定手段を構成している。
 タイルループフィルタ装置7はN個のタイルループフィルタ部7-1~7-Nを実装しており、N個のタイルループフィルタ部7-1~7-Nが独立してフィルタリング処理を実施する。Nは1以上の整数である。
 タイルループフィルタ部7-1~7-Nは符号化制御部1から出力されたフィルタパラメータ共有フラグが各タイルでフィルタを共通させない旨を示している場合、タイル符号化部5-1~5-Nにより生成されたタイル局所復号画像のフィルタリング処理に適するタイル単位のフィルタを決定し、そのフィルタを用いて、タイル局所復号画像に対するフィルタリング処理を実施するとともに、タイル単位のフィルタを示すフィルタパラメータを可変長符号化し、そのフィルタパラメータの符号化データをタイル符号化部5-1~5-Nから出力されたビット系列データに多重化する処理を実施する。
 一方、フィルタパラメータ共有フラグが各タイルでフィルタを共通させる旨を示している場合、ループフィルタ制御部6から出力されたフィルタパラメータが示すフレーム単位のフィルタを用いて、タイル符号化部5-1~5-Nにより生成されたタイル局所復号画像のフィルタリング処理を実施するとともに、タイル符号化部5-1~5-Nから出力されたビット系列データをそのまま出力する処理を実施する。
 なお、タイルループフィルタ部7-1~7-Nはタイルフィルタ手段を構成している。
 並列処理終了部8は符号化制御部1から出力されたタイル分割制御情報にしたがってタイルループフィルタ部7-1~7-Nによるフィルタリング処理後のタイル局所復号画像を組み合わせてフレーム単位の局所復号画像を生成し、その局所復号画像を動き補償予測フレームメモリ4に格納するとともに、タイルループフィルタ部7-1~7-Nから出力されたビット系列データを可変長符号多重化部9に出力する処理を実施する。
 また、並列処理終了部8は符号化制御部1から出力されたフィルタパラメータ共有フラグが各タイルでフィルタを共通させる旨を示している場合、ループフィルタ制御部6から出力されたフレーム単位のフィルタを示すフィルタパラメータの符号化データを可変長符号多重化部9に出力する処理を実施する。
 なお、並列処理終了部8は局所復号画像格納手段を構成している。
 可変長符号多重化部9は符号化制御部1から出力されたフィルタパラメータ共有フラグが各タイルでフィルタを共通させない旨を示している場合、並列処理終了部8から出力されたビット系列データと、符号化制御部1から出力されたタイル分割制御情報及びフィルタパラメータ共有フラグとを多重化してビットストリームを生成する処理を実施する。
 一方、フィルタパラメータ共有フラグが各タイルでフィルタを共通させる旨を示している場合、並列処理終了部8から出力されたビット系列データ及びフレーム単位のフィルタを示すフィルタパラメータの符号化データと、符号化制御部1から出力されたタイル分割制御情報及びフィルタパラメータ共有フラグとを多重化してビットストリームを生成する処理を実施する。
 なお、可変長符号多重化部9は多重化手段を構成している。
 図1の例では、動画像符号化装置の構成要素である符号化制御部1、タイル分割制御部2、並列処理開始部3、動き補償予測フレームメモリ4、タイル符号化装置5、ループフィルタ制御部6、タイルループフィルタ装置7、並列処理終了部8及び可変長符号多重化部9のそれぞれが専用のハードウェア(例えば、CPUを実装している半導体集積回路や、ワンチップマイコンなど)で構成されているものを想定しているが、動画像符号化装置がコンピュータで構成される場合、符号化制御部1、タイル分割制御部2、並列処理開始部3、タイル符号化装置5、ループフィルタ制御部6、タイルループフィルタ装置7、並列処理終了部8及び可変長符号多重化部9の処理内容を記述しているプログラムをコンピュータのメモリに格納し、当該コンピュータのCPUが当該メモリに格納されているプログラムを実行するようにしてもよい。
 図2はこの発明の実施の形態1による動画像符号化装置の処理内容(動画像符号化方法)を示すフローチャートである。
 図3はこの発明の実施の形態1による動画像符号化装置のタイル符号化部5-n(n=1,2,・・・,N)を示す構成図である。
 図3において、タイル符号化制御部21は符号化対象ブロックのサイズである符号化ブロックサイズを決定するとともに、選択可能な1以上のイントラ符号化モード及びインター符号化モードの中から、ブロック分割部22から出力される符号化対象ブロックに対する符号化効率が最も高い符号化モードを決定する処理を実施する。
 また、タイル符号化制御部21は符号化効率が最も高い符号化モードがイントラ符号化モードである場合、そのイントラ符号化モードで符号化対象ブロックに対するイントラ予測処理を実施する際に用いるイントラ予測パラメータを決定し、符号化効率が最も高い符号化モードがインター符号化モードである場合、そのインター符号化モードで符号化対象ブロックに対するインター予測処理を実施する際に用いるインター予測パラメータを決定する処理を実施する。
 さらに、タイル符号化制御部21は変換・量子化部27、逆量子化・逆変換部28及び可変長符号化部31に与える予測差分符号化パラメータを決定する処理を実施する。
 以降、タイル符号化制御部21により決定された符号化モード、予測差分符号化パラメータ、イントラ予測パラメータ又はインター予測パラメータをまとめて符号化パラメータと称する。タイル符号化制御部21は符号化パラメータをタイルループフィルタ部7-n(n=1,2,・・・,N)に出力する処理を実施する。
 ブロック分割部22は並列処理開始部3により分配されたタイルをタイル符号化制御部21により決定された符号化ブロックサイズのブロック(予測処理単位のブロック)に分割して、予測処理単位のブロックである符号化対象ブロックを出力する処理を実施する。
 切換スイッチ23はタイル符号化制御部21により決定された符号化モードがイントラ符号化モードであれば、ブロック分割部22から出力された符号化対象ブロックをイントラ予測部24に出力し、タイル符号化制御部21により決定された符号化モードがインター符号化モードであれば、ブロック分割部22から出力された符号化対象ブロックを動き補償予測部25に出力する処理を実施する。
 イントラ予測部24はタイル局所復号画像メモリ30に格納されている局所復号画像を参照しながら、タイル符号化制御部21により決定されたイントラ予測パラメータを用いて、切換スイッチ23から出力された符号化対象ブロックに対するイントラ予測処理を実施してイントラ予測画像を生成する処理を実施する。
 なお、タイル局所復号画像メモリ30に格納されている局所復号画像は、同じタイルに属するブロックの局所復号画像のみであるため、イントラ予測部24におけるイントラ予測処理では、異なるタイルに属するブロックの局所復号画像の参照は行わない。参照位置のブロックが異なるタイルに属するブロックである場合は、画素参照が不要なイントラ予測処理を実施する。
 動き補償予測部25は切換スイッチ23から出力された符号化対象ブロックと動き補償予測フレームメモリ4に格納されているフィルタリング処理後の局所復号画像を比較して動きベクトルを探索し、その動きベクトルとタイル符号化制御部21により決定されたインター予測パラメータを用いて、その符号化対象ブロックに対するインター予測処理(動き補償予測処理)を実施してインター予測画像を生成する処理を実施する。
 減算部26はブロック分割部22より出力された符号化対象ブロックから、イントラ予測部24により生成されたイントラ予測画像、または、動き補償予測部25により生成されたインター予測画像を減算して、その減算結果である予測差分信号(差分画像)を変換・量子化部27に出力する処理を実施する。
 変換・量子化部27はタイル符号化制御部21により決定された予測差分符号化パラメータを参照して、減算部26から出力された予測差分信号に対する直交変換処理(例えば、DCT(離散コサイン変換)や、予め特定の学習系列に対して基底設計がなされているKL変換等の直交変換処理)を実施して変換係数を算出するとともに、その予測差分符号化パラメータを参照して、その変換係数を量子化し、量子化後の変換係数である圧縮データ(差分画像の量子化係数)を逆量子化・逆変換部28及び可変長符号化部31に出力する処理を実施する。
 逆量子化・逆変換部28はタイル符号化制御部21により決定された予測差分符号化パラメータを参照して、変換・量子化部27から出力された圧縮データを逆量子化するとともに、その予測差分符号化パラメータを参照して、逆量子化後の圧縮データである変換係数に対する逆直交変換処理を実施して、減算部26から出力された予測差分信号に相当する局所復号予測差分信号を算出する処理を実施する。
 加算部29は逆量子化・逆変換部28により算出された局所復号予測差分信号と、イントラ予測部24により生成されたイントラ予測画像、または、動き補償予測部25により生成されたインター予測画像とを加算して、ブロック分割部22から出力された符号化対象ブロックに相当する局所復号画像を算出する処理を実施する。
 タイル局所復号画像メモリ30は加算部29により算出された局所復号画像を格納する記録媒体である。タイルに属する全てのコーディングユニット(CU)の符号化処理が終了した時点で、内部に格納されているタイル1つ分の局所復号画像がタイルループフィルタ部7-nに出力される。
 可変長符号化部31は変換・量子化部27から出力された圧縮データと、タイル符号化制御部21から出力された符号化パラメータと、動き補償予測部25から出力された動きベクトル(符号化モードがインター符号化モードである場合)とを可変長符号化し、その符号化結果であるビット系列データをタイルループフィルタ部7-nに出力する処理を実施する。
 なお、図4はこの発明の実施の形態1による動画像符号化装置のタイル符号化部5-n(n=1,2,・・・,N)の処理内容を示すフローチャートである。
 図5はこの発明の実施の形態1による動画像符号化装置のタイルループフィルタ部7-n(n=1,2,・・・,N)を示す構成図である。
 図5において、タイルループフィルタ制御部41は符号化制御部1から出力されたフィルタパラメータ共有フラグが各タイルでフィルタを共通させない旨を示している場合、タイル符号化部5-nにより生成されたタイル局所復号画像のフィルタリング処理に適するタイル単位のフィルタを決定し、そのフィルタを示すフィルタパラメータをループフィルタ実施部42及び可変長符号化部43に出力する処理を実施する。
 ループフィルタ実施部42は符号化制御部1から出力されたフィルタパラメータ共有フラグが各タイルでフィルタを共通させない旨を示している場合、タイルループフィルタ制御部41から出力されたフィルタパラメータが示すタイル単位のフィルタとタイル符号化部5-nから出力された符号化パラメータを用いて、タイル符号化部5-nから出力されたタイル局所復号画像に対するフィルタリング処理を実施する。
 一方、フィルタパラメータ共有フラグが各タイルでフィルタを共通させる旨を示している場合、ループフィルタ制御部6から出力されたフィルタパラメータが示すフレーム単位のフィルタとタイル符号化部5-nから出力された符号化パラメータを用いて、タイル符号化部5-nから出力されたタイル局所復号画像に対するフィルタリング処理を実施する。
 可変長符号化部43は符号化制御部1から出力されたフィルタパラメータ共有フラグが各タイルでフィルタを共通させない旨を示している場合、タイルループフィルタ制御部41から出力されたタイル単位のフィルタを示すフィルタパラメータを可変長符号化し、そのフィルタパラメータの符号化データをタイル符号化部5-nから出力されたビット系列データに多重化して並列処理終了部8に出力する処理を実施する。
 一方、フィルタパラメータ共有フラグが各タイルでフィルタを共通させる旨を示している場合、タイル符号化部5-nから出力されたビット系列データをそのまま並列処理終了部8に出力する処理を実施する。
 図6はこの発明の実施の形態1による動画像復号装置を示す構成図である。
 図6において、可変長符号分離部51は図1の動画像符号化装置により生成されたビットストリームを入力すると、そのビットストリームに多重化されているフレーム単位のビット系列データ(タイル単位のビット系列データが纏まっているデータ)と、入力画像の分割状態を指示するタイル分割制御情報と、各タイルでフィルタを共通させるか否かを示すフィルタ共有フラグと、フレーム単位のフィルタを示すフィルタパラメータの符号化データ(フィルタパラメータ共有フラグが各タイルでフィルタを共通させる旨を示している場合)とを分離する処理を実施する。なお、可変長符号分離部51は分離手段を構成している。
 並列処理開始部52は可変長符号分離部51から出力されたフレーム単位のビット系列データをタイル単位のビット系列データに分割し、タイル単位のビット系列データをタイル復号部54-1~54-Nに分配する処理を実施する。なお、並列処理開始部52は符号化ビットデータ分配手段を構成している。
 動き補償予測フレームメモリ53はフィルタリング処理後の復号画像を記憶する記録媒体である。なお、動き補償予測フレームメモリ53は画像メモリを構成している。
 タイル復号装置54はN個のタイル復号部54-1~54-Nを実装しており、N個のタイル復号部54-1~54-Nが独立して予測差分復号処理を実施する。Nは1以上の整数である。
 タイル復号部54-1~54-Nは動き補償予測フレームメモリ53に記憶されているフィルタリング処理後の復号画像を参照して、並列処理開始部52により分配されたタイル単位のビット系列データに対する予測差分復号処理を実施することで、タイル復号画像(タイル単位の復号画像)を生成するとともに、その予測差分復号処理を実施する際に用いている符号化パラメータ(ビット系列データに多重化されている符号化パラメータ)をタイルループフィルタ部56-1~56-Nに出力する処理を実施する。
 また、タイル単位のフィルタを示すフィルタパラメータの符号化データがビット系列データに多重化されている場合、そのフィルタパラメータの符号化データをタイルループフィルタ部56-1~56-Nに出力する処理を実施する。
 なお、タイル復号部54-1~54-Nはタイル復号手段を構成している。
 フィルタパラメータ復号部55は可変長符号分離部51により分離されたフィルタパラメータ共有フラグが各タイルでフィルタを共通させる旨を示している場合、フィルタパラメータ復号部55から出力された符号化データからフレーム単位のフィルタを示すフィルタパラメータを復号し、そのフィルタパラメータをタイルループフィルタ部56-1~56-Nに出力する処理を実施する。
 タイルループフィルタ装置56はN個のタイルループフィルタ部56-1~56-Nを実装しており、N個のタイルループフィルタ部56-1~56-Nが独立してフィルタリング処理を実施する。Nは1以上の整数である。
 タイルループフィルタ部56-1~56-Nは可変長符号分離部51により分離されたフィルタパラメータ共有フラグが各タイルでフィルタを共通させない旨を示している場合、タイル復号部54-1~54-Nから出力された符号化データからタイル単位のフィルタを示すフィルタパラメータを復号し、そのフィルタパラメータが示すタイル単位のフィルタを用いて、タイル復号部54-1~54-Nにより生成されたタイル復号画像に対するフィルタリング処理を実施する処理を実施する。
 一方、フィルタパラメータ共有フラグが各タイルでフィルタを共通させる旨を示している場合、フィルタパラメータ復号部55から出力されたフィルタパラメータが示すフレーム単位のフィルタを用いて、タイル復号部54-1~54-Nにより生成されたタイル復号画像に対するフィルタリング処理を実施する処理を実施する。
 なお、タイルループフィルタ部56-1~56-Nはタイルフィルタ手段を構成している。
 タイル分割制御部57は可変長符号分離部51により分離されたタイル分割制御情報からタイルの分割状態を把握し、元の入力画像に相当する復号画像が得られるように、並列処理終了部58における各タイル復号画像の配置を制御する処理を実施する。
 並列処理終了部58はタイル分割制御部57の制御の下で、タイルループフィルタ部56-1~56-Nによるフィルタリング処理後のタイル復号画像を組み合わせてフレーム単位の復号画像を生成し、その復号画像を動き補償予測フレームメモリ53に格納する処理を実施する。
 なお、タイル分割制御部57及び並列処理終了部58から復号画像格納手段が構成されている。
 図6の例では、動画像復号装置の構成要素である可変長符号分離部51、並列処理開始部52、動き補償予測フレームメモリ53、タイル復号装置54、フィルタパラメータ復号部55、タイルループフィルタ装置56、タイル分割制御部57及び並列処理終了部58のそれぞれが専用のハードウェア(例えば、CPUを実装している半導体集積回路や、ワンチップマイコンなど)で構成されているものを想定しているが、動画像復号装置がコンピュータで構成される場合、可変長符号分離部51、並列処理開始部52、タイル復号装置54、フィルタパラメータ復号部55、タイルループフィルタ装置56、タイル分割制御部57及び並列処理終了部58の処理内容を記述しているプログラムをコンピュータのメモリに格納し、当該コンピュータのCPUが当該メモリに格納されているプログラムを実行するようにしてもよい。
 図7はこの発明の実施の形態1による動画像復号装置の処理内容(動画像復号方法)を示すフローチャートである。
 図8はこの発明の実施の形態1による動画像復号装置のタイル復号部54-n(n=1,2,・・・,N)を示す構成図である。
 図8において、可変長復号部61は並列処理開始部52により分配されたタイル単位のビット系列データから予測処理単位のブロックである復号対象ブロック(符号化対象ブロックに相当するブロック)に係る圧縮データと、符号化パラメータ(符号化モード、イントラ予測パラメータ(符号化モードがイントラ符号化モードである場合)、インター予測パラメータ(符号化モードがインター符号化モードである場合)、予測差分符号化パラメータ)と、動きベクトル(符号化モードがインター符号化モードである場合)とを可変長復号するとともに、可変長復号後の符号化パラメータ及びタイル単位のビット系列データに多重化されているタイル単位のフィルタを示すフィルタパラメータの符号化データをタイルループフィルタ部56-nに出力する処理を実施する。
 切換スイッチ62は可変長復号部61により可変長復号された符号化モードがイントラ符号化モードであれば、可変長復号部61により可変長復号されたイントラ予測パラメータをイントラ予測部63に出力し、可変長復号部61により可変長復号された符号化モードがインター符号化モードであれば、可変長復号部61により可変長復号されたインター予測パラメータ及び動きベクトルを動き補償部64に出力する処理を実施する。
 イントラ予測部63はタイル復号画像メモリ67に格納されている復号画像を参照しながら、切換スイッチ62から出力されたイントラ予測パラメータを用いて、復号対象ブロックに対するイントラ予測処理を実施してイントラ予測画像を生成する処理を実施する。
 動き補償部64は動き補償予測フレームメモリ53に格納されているフィルタリング処理後の復号画像を参照しながら、切換スイッチ62から出力された動きベクトルとインター予測パラメータを用いて、復号対象ブロックに対するインター予測処理を実施してインター予測画像を生成する処理を実施する。
 逆量子化・逆変換部65は可変長復号部61により可変長復号された予測差分符号化パラメータを参照して、可変長復号部61により可変長復号された圧縮データを逆量子化するとともに、その予測差分符号化パラメータを参照して、逆量子化後の圧縮データである変換係数に対する逆直交変換処理を実施して、復号予測差分信号を算出する処理を実施する。
 加算部66は逆量子化・逆変換部65により算出された復号予測差分信号と、イントラ予測部63により生成されたイントラ予測画像、または、動き補償部64により生成されたインター予測画像とを加算して、復号画像を算出する処理を実施する。
 タイル復号画像メモリ67は加算部66により算出された復号画像を格納する記録媒体である。
 タイルに属する全てのコーディングユニット(CU)の復号処理が終了した時点で、格納されているタイル1つ分の復号画像がタイル復号部54-nの外部に出力される。
 なお、図9はこの発明の実施の形態1による動画像復号装置のタイル復号部54-n(n=1,2,・・・,N)の処理内容を示すフローチャートである。
 図10はこの発明の実施の形態1による動画像復号装置のタイルループフィルタ部56-n(n=1,2,・・・,N)を示す構成図である。
 図10において、タイルフィルタパラメータ復号部71は可変長符号分離部51により分離されたフィルタパラメータ共有フラグが各タイルでフィルタを共通させない旨を示している場合、可変長符号分離部51により分離されたタイル単位のフィルタを示すフィルタパラメータの符号化データを復号し、その復号結果であるフィルタパラメータをループフィルタ実施部72に出力する処理を実施する。
 ループフィルタ実施部72は可変長符号分離部51により分離されたフィルタパラメータ共有フラグが各タイルでフィルタを共通させない旨を示している場合、タイルフィルタパラメータ復号部71により復号されたフィルタパラメータが示すタイル単位のフィルタとタイル復号部54-nの可変長復号部61により可変長復号された符号化パラメータを用いて、タイル復号部54-nから出力されたタイル復号画像に対するフィルタリング処理を実施する。
 一方、フィルタパラメータ共有フラグが各タイルでフィルタを共通させる旨を示している場合、フィルタパラメータ復号部55から出力されたフィルタパラメータが示すフレーム単位のフィルタとタイル復号部54-nの可変長復号部61により可変長復号された符号化パラメータを用いて、タイル復号部54-nから出力されたタイル復号画像に対するフィルタリング処理を実施する。
 次に動作について説明する。
 この実施の形態1では、映像の各フレーム画像を入力画像として、近接フレーム間で動き補償予測を実施して、得られた予測差分信号に対して直交変換・量子化による圧縮処理を施し、その後、可変長符号化を行ってビットストリームを生成する動画像符号化装置と、その動画像符号化装置から出力されるビットストリームを復号する動画像復号装置について説明する。
 最初に、図1の動画像符号化装置の動作を説明するが、図1の動画像符号化装置は、入力画像をタイルと呼ばれる矩形領域に分割して、タイル間の処理の依存性を無くすことで、符号化処理において、タイルレベルでの並列処理を可能とすることを特徴としている。
 同時に、復号処理において、タイルレベルでの並列処理が可能となる符号化結果を出力することを特徴としている。
 映像信号の符号化処理は、一般に入力映像の空間・時間・輝度レベル解像度に比例して処理量が増加する。
 撮像装置、記憶装置及び伝送装置などの進化に伴って、映像信号の時間・空間・輝度レベル解像度は増加する傾向にあり、既存の動画像符号化装置、動画像復号装置では、所定の速度で符号化処理や復号処理を行うことが不可能になることが考えられる。
 このような状況に対応する解の一つとして、入力画像を空間的に分割して、複数の符号化部に与え、複数の符号化部を並列に動作させることで、処理時間を低減させることが考えられる。この場合、復号側においても、分割されて符号化されたデータをそれぞれ異なる復号部に与え、複数の復号部が復号処理を並列処理することで、処理時間を低減させることが可能となる。
 ここで、より高速に並列処理を実行するには、並列的に動作している符号部・復号部間での情報の参照はなるべく減らすことが望ましい。これには、フレーム内予測のための画素の参照、動きベクトル予測のための動きベクトル情報の参照、その他エントロピー符号化のための近接領域の符号化パラメータ情報の参照、エントロピー符号化におけるシンボル生起確率推定モデルの状態が含まれる。
 ある領域の符号化を行う際に、近接領域が別の符号化部で並列的に処理されていた場合、これらの情報の参照を行うためには処理の同期が必要になるため、並列性能を高めるためには好ましくない。
 また、上記の情報以外にも、画面のフィルタリング処理を行う場合に近接領域の画素参照が必要になる。よって、フィルタリング処理も含めた並列性能を高めるためには、フィルタリング処理においても、別の符号化部・復号部で並列的に処理されている近接領域の画素参照を行うべきではない。
 この実施の形態1では、このような動画像符号化の並列処理に求められる機能を実現するために、入力画像をタイルと呼ばれる矩形領域に分割し、タイルレベルで予測差分符号化処理の並列化を可能にするとともに、フィルタ係数導出およびフィルタリング処理の並列化を可能にし、かつ、フィルタ係数導出を並列化するか否かを切り替えられる構成をとっている。
 図1の動画像符号化装置が処理対象とする映像信号フォーマットは、輝度信号と2つの色差信号からなるYUV信号や、ディジタル撮像素子から出力されるRGB信号等の任意の色空間のカラー映像信号のほか、モノクロ画像信号や赤外線画像信号など、映像フレームが水平・垂直2次元のディジタルサンプル(画素)列から構成される任意の映像信号とする。
 ただし、各画素の諧調は、8ビットでもよいし、10ビットや12ビットなどの諧調でもよい。
 以下の説明では、便宜上、特に断らない限り、入力画像の映像信号はYUV信号であるとし、かつ、2つの色差成分U,Vが輝度成分Yに対して、サブサンプルされた4:2:0フォーマットの信号を扱う場合について述べる。
 また、映像信号の各フレームに対応する処理データ単位を「ピクチャ」と称する。
 この実施の形態1では、「ピクチャ」は順次走査(プログレッシブスキャン)された映像フレーム信号として説明を行うが、映像信号がインタレース信号である場合、「ピクチャ」は映像フレームを構成する単位であるフィールド画像信号であってもよい。
 まず、符号化制御部1は、映像信号が示す入力画像を所定サイズのタイルに分割する際の分割状態を指示するタイル分割制御情報をタイル分割制御部2、並列処理終了部8及び可変長符号多重化部9に出力する。
 また、符号化制御部1は、タイル符号化部5-1~5-Nにより生成されたタイル単位の局所復号画像のフィルタリング処理に用いるフィルタを各タイルで共通させるか否かを示すフィルタパラメータ共有フラグ(各タイルで共通させる場合:ONのフラグ、各タイルで共通させない場合:OFFのフラグ)をタイル分割制御部2、ループフィルタ制御部6、タイルループフィルタ部7-1~7-N及び可変長符号多重化部9に出力する。
 タイル分割制御部2は、符号化制御部1からタイル分割制御情報を受けると、そのタイル分割制御情報が指示している分割状態と一致するように、並列処理開始部3における入力画像の分割を制御する。
 並列処理開始部3は、入力画像を示す映像信号を入力すると、タイル分割制御部2の指示の下、その入力画像を所定サイズのタイルに分割し、分割後のタイルをタイル符号化部5-1~5-Nに分配する(図2のステップST1)。
 ここで、タイル分割を制御する情報は様々な表現が考えられるが、例えば、タイルを最大サイズのCU(Largest CU:LCU)を最小単位として、LCUをいくつ含むかという情報によってタイル分割を指定することを考える。
 図11は画像のLCU分割及びタイル分割の一例を示す説明図である。
 入力画像は、図11に示すように、左上を始点として、格子状に並ぶLCUに分割される。画像の高さと幅及びLCUの一辺の長さを指定すると、この分割は一意に定まる。
 タイル分割は、LCUを最小単位として行われるため、各タイルの幅及び高さは、横及び縦の辺に含まれるLCUの数で表すことができる。
 よって、タイル分割制御情報として、2つの整数の系列であるColumnWidthArray[],RowHeightArray[]を与える。
 ColumnWidthArray[]は、横方向に並ぶタイルの幅をLCUの数で表現した値を、右から順に並べたものである。
 また、RowHeightArray[]は、上下方向に並ぶタイルの高さをLCUの数で表現した値を、上から順に並べたものである。
 例えば、ColumnWidthArray[]={4, 3, 6, 4, 6}、RowHeightArray[]={3, 3, 4, 5}と指定された場合、図11のようにタイル分割される。
 また、入力画像のLCU分割は、画像サイズとLCUの一辺の長さから一意に決定されるため、最も右の列の幅と、最も下の行の高さは指定しなくとも、その他の行や列の情報から一意に定めることが可能となる。
 よって、これらの情報は省略が可能であり、その場合、ColumnWidthArray[]={4, 3, 6, 4}、RowHeightArray[]={3, 3, 4}と指定すればよい。
 上記では、図11に示されるように、フレームを格子状に分割するタイルの例を説明したが、図19に示すような、格子状配置でないより自由なタイル分割も可能である。このような場合、タイル分割制御情報もこのような分割状態を表現できる情報でなければならない。例えば、タイルの最も左上の画素またはLCUの座標、タイルの幅及び高さの情報により表現することが例として挙げられる。
 またタイル分割状態は、シーケンス全体で同じ分割状態を維持してもよいし、フレーム単位で変更してもよいし、またはイントラピクチャ、インターピクチャなどのピクチャ種ごとに切り替えてもよい。シーケンス全体で同じタイル分割状態を用いる場合は、タイル分割情報はシーケンスのヘッダで多重化すればよく、シーケンスの途中で切り替える場合は、切り替わった直後のピクチャのピクチャヘッダに多重化すればよい。
 なお、図1の動画像符号化装置は、あらゆるタイルレベルでの並列処理を行わないという動作も可能である。
 この場合、タイルの数が1つであり、かつ、タイルのサイズが入力画像のサイズと一致するようにタイル分割制御情報を指定してもよいし、また、タイル符号化並列フラグやタイルループフィルタ並列フラグによって、全ての並列処理をOFFにしてもよい。
 また、別のフラグをタイル分割制御情報に多重化し、そのフラグで並列処理の実施/不実施を切り替えるようにしてもよい。
 以下では、タイルレベルでの並列処理を行う場合について説明するが、並列処理を行わない場合の動作はフレーム全体が1つのタイルである場合の動作と同等である。
 並列処理開始部3は、上述したように、入力画像を所定サイズのタイルに分割し、分割後のタイルをタイル符号化部5-1~5-Nに分配するが、同時に並列処理できるタイル数は、タイル符号化部5-1~5-Nの個数が上限となるため、タイル数がタイル符号化部5-1~5-Nの個数よりも多い場合には、一つのタイル符号化部5-nに対して、複数のタイルを出力する。
 例えば、タイル数が7で、タイル符号化部の個数が3である場合、タイル1~3の処理をタイル符号化部5-1、タイル4~5の処理をタイル符号化部5-2、タイル6~7の処理をタイル符号化部5-3に割り当てるようにする。
 また、タイルの分割数がタイル符号化部の個数に満たない場合でも、1つのタイル符号化部に対して、複数のタイルを割り当てるように制御してもよい。
 符号化制御部1から出力されるフィルタパラメータ共有フラグがOFFである場合(ステップST2)、タイル符号化部5-n及びタイルループフィルタ部7-nの処理が続けて行われることになる(ステップST3,ST4)。
 このとき、タイル符号化部5-n及びタイルループフィルタ部7-nの処理は、タイルの数だけ繰り返し実行され(ステップST5,ST6)、かつ、各ループの処理は独立しているため、タイル符号化部5-nの個数だけ並列的に実行することが可能である。
 フィルタパラメータ共有フラグがOFFである場合、タイルの符号化処理とタイルのループフィルタ処理をまとめて並列化することが可能であるため、より符号化処理の並列性を向上させることが可能となる。また、フィルタパラメータが局所化されるため、画面領域毎に、画像の性質が大きく異なる場合に画質向上につながる。
 なお、タイル符号化部5-n及びタイルループフィルタ部7-nの処理内容の詳細については後述する。
 一方、符号化制御部1から出力されるフィルタパラメータ共有フラグがONである場合(ステップST2)、タイル符号化部5-nは、全てのタイルの符号化処理が終了するまでタイルの符号化処理を繰り返し実行し(ステップST8~ST10)、全てのタイルの符号化処理が終了すると、ループフィルタ制御部6が、タイル符号化部5-nにより生成されたタイル局所復号画像から、画面全体であるフレーム単位の局所復号画像を得て、フレーム単位の局所復号画像に適するフレーム単位のフィルタを決定し、そのフィルタを示すフィルタパラメータをタイルループフィルタ部7-n及び並列処理終了部8に出力する(ステップST11)。ループフィルタ制御部6の処理内容の詳細については後述する。
 タイルループフィルタ部7-nは、ループフィルタ制御部6からフィルタパラメータを受けると、全てのタイル局所復号画像のフィルタリング処理が終了するまで、タイル局所復号画像のフィルタリング処理を繰り返し実行する(ステップST12~ST14)。
 フィルタパラメータ共有フラグがONである場合、フィルタパラメータが全てのタイルで共有されるため、フィルタパラメータ共有フラグがOFFの場合と比較して、フィルタパラメータの符号量を抑えることが可能になる。またフレーム全体の局所復号画像を用いてフィルタパラメータを設計した場合の方が画質が向上する場合などに有効になる。
 ただし、フィルタパラメータ共有フラグがONである場合、タイル符号化部5-nとタイルループフィルタ部7-nの間で並列処理を一旦同期させる必要があるため、符号化処理の並列性能は低下する。
 後述する動画像復号装置においては、フィルタパラメータ共有フラグがONの際に作成されたビットストリームを復号する場合でも並列性能が低下しない。
 並列処理終了部8は、タイルループフィルタ部7-1~7-Nのフィルタリング処理が完了すると、符号化制御部1から出力されたタイル分割制御情報にしたがって、タイルループフィルタ部7-1~7-Nによるフィルタリング処理後のタイル局所復号画像を組み合わせてフレーム単位の局所復号画像を生成し、その局所復号画像を動き補償予測フレームメモリ4に格納するとともに、タイルループフィルタ部7-1~7-Nから出力されたビット系列データを可変長符号多重化部9に出力する。
 また、並列処理終了部8は、符号化制御部1から出力されたフィルタパラメータ共有フラグがONである場合、ループフィルタ制御部6から出力されたフレーム単位のフィルタを示すフィルタパラメータの符号化データを可変長符号多重化部9に出力する。
 可変長符号多重化部9は、符号化制御部1から出力されたフィルタパラメータ共有フラグがOFFである場合、並列処理終了部8から出力されたビット系列データ(タイル符号化部5-1~5-Nにより生成されたビット系列データ)と、符号化制御部1から出力されたタイル分割制御情報及びフィルタパラメータ共有フラグとを所定の方式で多重化してビットストリームを生成する(ステップST7)。
 一方、フィルタパラメータ共有フラグがONである場合、並列処理終了部8から出力されたビット系列データ(タイル符号化部5-1~5-Nにより生成されたビット系列データ)と、符号化制御部1から出力されたタイル分割制御情報及びフィルタパラメータ共有フラグと、ループフィルタ制御部6から出力されたフレーム単位のフィルタを示すフィルタパラメータの符号化データとを所定の方式で多重化してビットストリームを生成する(ステップST15)。
 次に、タイル符号化装置5におけるタイル符号化部5-1~5-Nの処理内容を詳細に説明する。
 タイル符号化装置5は、N個のタイル符号化部5-1~5-Nを実装しており、N個のタイル符号化部5-1~5-Nが独立して予測差分符号化処理(タイル間のいかなる情報参照も行わない予測差分符号化処理)を実施する。
 タイル符号化部5-nのタイル符号化制御部21は、最大符号化ブロック(LCU)のサイズ及び分割階層数の上限を決定し、各LCUの画像領域に対して特定の順序で図4のステップST21~ST31の処理を実施する。
 まず、タイル符号化制御部21は、上記で定めた分割階層数の上限に至るまで、階層的に符号化ブロックサイズを有する符号化対象ブロックに分割する指示をブロック分割部22に出力するとともに、各符号化対象ブロックに対する符号化モードを決定する(図4のステップST21)。
 ブロック分割部22は、タイル符号化制御部21の指示の下、並列処理開始部3により分配されたタイルを符号化ブロックサイズのブロック(予測処理単位のブロック)に分割して、予測処理単位のブロックである符号化対象ブロックを出力する。
 ここで、図12は最大符号化ブロックが階層的に複数の符号化対象ブロックに分割される例を示す説明図である。
 図12において、最大符号化ブロックは、「第0階層」と記されている輝度成分が(L,M)のサイズを有する符号化対象ブロックである。
 LCUサイズのブロックを出発点として、4分木構造で別途定める所定の深さまで、階層的に分割を行うことによって符号化対象ブロックを得るようにしている。
 深さnにおいては、符号化対象ブロックはサイズ(L,M)の画像領域である。
 ただし、LとMは、同じであってもよいし、異なっていてもよいが、図12では、L=Mのケースを示している。
 以降、タイル符号化制御部21により決定される符号化ブロックサイズは、符号化対象ブロックの輝度成分におけるサイズ(L,M)と定義する。
 4分木分割を行うため、常に、(Ln+1,Mn+1)=(L/2,M/2)が成立する。
 なお、RGB信号など、全ての色成分が同一サンプル数を有するカラー映像信号(4:4:4フォーマット)では、全ての色成分のサイズが(L,M)になるが、4:2:0フォーマットを扱う場合、対応する色差成分の符号化ブロックサイズは(L/2,M/2)になる。
 以降、第n階層の符号化対象ブロックをBで表し、符号化対象ブロックBで選択可能な符号化モードをm(B)で表すものとする。
 複数の色成分からなるカラー映像信号の場合、符号化モードm(B)は、色成分毎に、それぞれ個別のモードを用いるように構成されてもよいし、すべての色成分に対し共通のモードを用いるように構成されてもよい。以降、特に断らない限り、YUV信号、4:2:0フォーマットの符号化ブロックの輝度成分に対する符号化モードを指すものとして説明を行う。
 符号化モードm(B)には、1つないし複数のイントラ符号化モード(総称して「INTRA」と称する)と、1つないし複数のインター符号化モード(総称して、「INTER」と称する)とがあり、タイル符号化制御部21は、当該ピクチャで利用可能な全ての符号化モード、または、そのサブセットの中から、符号化対象ブロックBに対する符号化効率が最も高い符号化モードを選択する。
 さらに、符号化対象ブロックBは、図13に示すように、ブロック分割部22によって、1つないし複数の予測処理単位(パーティション)に分割される。
 以降、符号化対象ブロックBに属するパーティションをP (iは、第n階層におけるパーティション番号)と表記する。
 符号化対象ブロックBのパーティション分割が、どのようになされているかは、符号化モードm(B)の中に情報として含まれる。
 パーティションP は、すべて符号化モードm(B)に従って予測処理が行われるが、符号化対象ブロックBないしパーティションP 毎に、予測パラメータが選択される。
 タイル符号化制御部21は、最大符号化ブロックに対して、例えば、図13に示すようなブロック分割状態を生成して、符号化対象ブロックを特定する。
 図13(a)の斜線部分は、分割後のパーティションの分布を示しており、図13(b)は階層分割によって符号化モードm(Bn)が割り当てられる状況を4分木グラフで示している。
 図13(b)の□で囲まれているノードは、符号化モードm(B)が割り当てられたノード(符号化対象ブロック)である。
 切換スイッチ23は、タイル符号化制御部21により決定された符号化モードm(B)がイントラ符号化モードである場合(m(B)∈INTRAの場合)、ブロック分割部22から出力された符号化対象ブロックBをイントラ予測部24に出力する。
 一方、タイル符号化制御部21により決定された符号化モードm(B)がインター符号化モードである場合(m(B)∈INTERの場合)、ブロック分割部22から出力された符号化対象ブロックBを動き補償予測部25に出力する。
 イントラ予測部24は、タイル符号化制御部21により決定された符号化モードm(B)がイントラ符号化モードであり(m(B)∈INTRAの場合)、切換スイッチ23から符号化対象ブロックBを受けると(ステップST22)、タイル局所復号画像メモリ30に格納されている局所復号画像を参照しながら、タイル符号化制御部21により決定されたイントラ予測パラメータを用いて、その符号化対象ブロックB内の各パーティションP に対するイントラ予測処理を実施して、イントラ予測画像PINTRAi を生成する(ステップST23)。
 なお、タイル局所復号画像メモリ30に格納されている局所復号画像は、カレントタイルに属するブロックの局所復号画像のみであるため、タイル端におけるイントラ予測処理は、隣接画素の参照が不要な画面端でのイントラ予測と同様の処理を行う。
 また、図6の動画像復号装置がイントラ予測画像PINTRAi と全く同じイントラ予測画像を生成する必要があるため、イントラ予測画像PINTRAi の生成に用いられたイントラ予測パラメータは、タイル符号化制御部21から可変長符号化部31に出力されて、ビットストリームに多重化される。
 動き補償予測部25は、タイル符号化制御部21により決定された符号化モードm(B)がインター符号化モードであり(m(B)∈INTERの場合)、切換スイッチ23から符号化対象ブロックBを受けると(ステップST22)、その符号化対象ブロックB内の各パーティションP と動き補償予測フレームメモリ4に格納されているフィルタリング処理後の局所復号画像を比較して動きベクトルを探索し、その動きベクトルとタイル符号化制御部21により決定されたインター予測パラメータを用いて、その符号化対象ブロックB内の各パーティションP に対するインター予測処理を実施して、インター予測画像PINTERi を生成する(ステップST24)。
 なお、図6の動画像復号装置がインター予測画像PINTERi と全く同じインター予測画像を生成する必要があるため、インター予測画像PINTERi の生成に用いられたインター予測パラメータは、タイル符号化制御部21から可変長符号化部31に出力されて、ビットストリームに多重化され、その動きベクトルは、動き補償予測部25から可変長符号化部31に出力されて、ビットストリームに多重化される。
 減算部26は、ブロック分割部22から符号化対象ブロックBを受けると、その符号化対象ブロックB内のパーティションP から、イントラ予測部24により生成されたイントラ予測画像PINTRAi 、または、動き補償予測部25により生成されたインター予測画像PINTERi を減算して、その減算結果である予測差分信号e を変換・量子化部27に出力する(ステップST25)。
 変換・量子化部27は、減算部26から予測差分信号e を受けると、タイル符号化制御部21により決定された予測差分符号化パラメータを参照して、その予測差分信号e に対する直交変換処理(例えば、DCT(離散コサイン変換)や、予め特定の学習系列に対して基底設計がなされているKL変換等の直交変換処理)を実施して、その変換係数を算出する。
 また、変換・量子化部27は、その予測差分符号化パラメータを参照して、その変換係数を量子化し、量子化後の変換係数である圧縮データを逆量子化・逆変換部28及び可変長符号化部31に出力する(ステップST26)。
 逆量子化・逆変換部28は、変換・量子化部27から圧縮データを受けると、タイル符号化制御部21により決定された予測差分符号化パラメータを参照して、その圧縮データを逆量子化する。
 また、逆量子化・逆変換部28は、その予測差分符号化パラメータを参照して、逆量子化後の圧縮データである変換係数に対する逆直交変換処理(例えば、逆DCT、逆KL変換など)を実施して、減算部26から出力された予測差分信号e に相当する局所復号予測差分信号を算出する(ステップST29)。
 加算部29は、逆量子化・逆変換部28から局所復号予測差分信号を受けると、その局所復号予測差分信号と、イントラ予測部24により生成されたイントラ予測画像PINTRAi 、または、動き補償予測部25により生成されたインター予測画像PINTERi とを加算して、局所復号パーティション画像、あるいは、その局所復号パーティション画像の集まりとして、ブロック分割部22から出力された符号化対象ブロックBに相当する局所復号画像を算出する(ステップST30)。
 なお、加算部29は、その局所復号画像をタイル局所復号画像メモリ30に格納する。この局所復号画像が、カレントタイルにおける以降のイントラ予測用の画像信号になる。
 可変長符号化部31は、全ての符号化対象ブロックBに対するステップST22~ST30の処理が完了すると(ステップST27,ST28)、変換・量子化部27から出力された圧縮データと、タイル符号化制御部21から出力された符号化モードm(B)と、タイル符号化制御部21から出力されたイントラ予測パラメータ(符号化モードがイントラ符号化モードである場合)又はインター予測パラメータ(符号化モードがインター符号化モードである場合)と、動き補償予測部25から出力された動きベクトル(符号化モードがインター符号化モードである場合)とを可変長符号化して、それらの符号化結果を示すビット系列データを生成する(ステップST31)。
 なお、可変長符号化の手法として、例えば、コンテキスト適応型算術符号化などを用いた場合、可変長符号化部31の内部の状態を符号化の進行に合わせて更新していくが、この内部状態の初期値は、所定の固定値もしくは図1の並列処理開始部3から出力される値を使用するものとして、タイル間での状態の引継ぎは行わないようにする。
 また、タイル符号化部5-nの動作においては、上記のイントラ予測や可変長符号を含む如何なる処理においても、カレントタイルと異なるタイルに属するブロックの符号化パラメータ、局所復号画像の参照を行わない。タイル端での参照処理は、何らかの参照が不要な処理に置き換えられる。
 どのような処理に置き換えられるかは、動画像符号化装置と動画像復号装置で一致させる必要があるが、符号化側と復号側で固定的に同じ処理を行ってもよいし、処理内容を示す信号をシグナリングしてもよい。
 以上よりタイル符号化部5-1~5-Nの処理は各タイルで独立しており、並列実行可能である。
 また、タイル符号化部5-1~5-Nの一つのモジュールに対して、並列処理開始部3から複数のタイルが出力された場合、当該モジュールは、それぞれのタイルに対して逐次的に符号化処理を実施する。また、同じモジュールで符号化されたタイル同士であっても、タイル間の独立性は維持し、出力されるビット系列が、並列的に処理した場合と等しくなるように動作する。
 また、タイル符号化部5-nでは、カレントタイルをスライスと呼ばれる1つ以上の構造体に分割して処理を行なっても良い。スライスは、タイルを更に分割する構造体であり、連続して処理される1つ以上のLCU、またはLCUよりも小さな符号化ブロックが含まれる。同じスライスの内部では、スライス毎に独立して定められたパラメータやモードを用いることができる。またタイルと同様に、カレントスライスと異なるスライスに属するブロックの情報の参照を禁止したり、スライスの先頭のブロックでエントロピー符号化の内部状態を初期化するなどの処理を行うことができる。スライスは、タイルと同様に並列処理を容易にする効果がある。また1スライスの処理により出力されるビット系列をパケット化するなど、データをパケッタイズに利用できる。またエラー耐性の面でも利点がある。
 タイル内をスライスに分割する場合、スライスの分割情報、各スライス独立のパラメータやモード情報及びスライス間を跨いだ情報参照を行うかどうかを示すフラグなどの情報はビットストリームに多重化され復号側に伝送される。
 可変長符号化の手法として前記コンテキスト適応型算術符号化を用いる場合、コンテキスト適応算術符号化処理の演算が複雑であるため処理速度のボトルネックとなる場合がある。タイル符号化処理の並列処理性を向上させるためは、すべてのタイルの符号化が同時に終了することが望ましいため、スライス単位にコンテキスト適応算術符号化の処理の一部を制限するよう構成する。
 具体的には、スライスヘッダに可変長符号化処理制御情報を多重化し、前記可変長符号化処理制御情報がコンテキスト切り替えを行わないよう制限することを示す場合には、当該スライスにおいてはコンテキスト切り替えを行わないで適応算術符号化を行う。同様に前記可変長符号化処理制御情報がコンテキスト切り替えおよび適応処理を行わないよう制限することを示す場合には、当該スライスにおいてはコンテキスト切り替えおよび適応処理を行わずに算術符号化を行う。このように構成することで、コンテキスト切り替えや適応処理を適宜省略して可変長符号化処理が行えるため、符号化に要する時間が他のタイルに比べて長くなっていると判断されたタイルについては、次に処理するスライスにおいて上記のように符号化処理に制限を加えることにより高速にタイルの符号化処理を行うことができ、他のタイルとの符号化処理時間の差を短縮することができるため、タイルの並列処理性を向上させることができる。
 ここではコンテキスト適応算術符号化を例に説明したが、他のいかなる可変長符号化手法であっても、その一部の処理を取り除いてもなお可変長符号化が可能であれば同様の手段によって同様の効果が得られる。
 次に、タイルループフィルタ装置7におけるタイルループフィルタ部7-1~7-Nの処理内容を詳細に説明する。
 タイルループフィルタ部7-nでは、局所復号画像に含まれている符号化歪を補正するフィルタの設計やフィルタリング処理を行う。
 ここで、ループフィルタ処理は、異なる1種以上のループフィルタ(ブロック境界の不連続を緩和するデブロッキングフィルタ、量子化誤差による直流成分の変動、エッジの不連続を補正するSAO(Sample Adaptive Offset)、入力画像との誤差を最小にするフィルタを都度設計する適応型ループフィルタなど)を、入力された局所復号画像に対して直列的に実施するフィルタリング処理である。このとき、いずれのフィルタリング処理においても、タイルを跨いだ画素や、その他の情報の参照を行わないフィルタリング処理を実施する。
 図1の符号化制御部1から出力されたフィルタパラメータ共有フラグがONである場合、ループフィルタ制御部6から出力されるフィルタパラメータが示すフレーム単位のフィルタを使用する。
 一方、フィルタパラメータ共有フラグがOFFである場合、タイルループフィルタ制御部41が、タイル符号化部5-nから出力されるタイル局所復号画像に適するタイル単位のフィルタを決定し、そのフィルタを使用する。
 以下、タイル符号化部5-nが用いるフィルタが適応型ループフィルタ(ALF:Adaptive Loop Filter)である例を説明する。
 ALFは、画面を一定数のフィルタ定義領域に分割し、かつ、フィルタ定義領域毎に局所復号画像と入力画像の誤差が最小となるようなフィルタを定義する手法である。
 ALFにおけるフィルタパラメータは、分割領域の形状、各領域に定義されたフィルタの形状及びフィルタ係数を示す情報となる。
 ここでは、説明の便宜上、フィルタ定義領域数を16として、処理単位の矩形(フレーム又はタイル)を4×4の矩形領域に分割する領域分割手法を用いた場合を考える。
 図1のループフィルタ制御部6は、符号化制御部1から出力されたフィルタパラメータ共有フラグがONである場合、フレーム1枚分の局所復号画像を4×4の16個のフィルタ定義領域に分割し(図14(a)を参照)、各々のフィルタ定義領域毎にフィルタ形状及びフィルタ係数を決定する。
 また、各フィルタ定義領域の各タイル内での相対位置情報を求め、その相対位置情報及びフィルタ形状/フィルタ係数情報をフィルタパラメータとして各タイルに出力する。
 タイルループフィルタ部7-nのループフィルタ実施部42は、ループフィルタ制御部6からフィルタ定義領域の相対位置及びフィルタ形状/フィルタ係数情報を受けると、その相対位置及びフィルタ形状/フィルタ係数情報に基づいてフィルタリング処理を実施する。
 図14の例では、フィルタパラメータ共有フラグがOFFである場合、各タイルに対して16種類のフィルタの設計が可能であるため、フレーム全体としては144種類のフィルタが設計されることになる。
 したがって、例えば、画像の特性が局所的に大きく変化しているような画像に対しては画質への改善効果が大きくなる利点が考えられる。
 一方、個々のタイル対して、16種類のフィルタを設計することが、画質改善上オーバスペックであり、むしろフィルタパラメータの符号量の増加が問題になることも考えられる。
 このような場合は、フィルタパラメータ共有フラグをONにすることで、フィルタパラメータの符号量を削減し、効率的にループフィルタ処理を行うことが可能となる。
 タイルループフィルタ制御部41は、フィルタパラメータ共有フラグがOFFである場合、タイル毎に独立してフィルタ定義領域の分割を行い、各フィルタ定義領域に対してフィルタ形状/フィルタ係数を決定し(図14(b)を参照)、フィルタ定義領域情報及びフィルタ形状/フィルタ係数情報をフィルタパラメータとしてループフィルタ実施部42に出力する。
 ループフィルタ実施部42は、タイルループフィルタ制御部41からフィルタ定義領域情報及びフィルタ形状/フィルタ係数情報を受けると、そのフィルタ定義領域情報及びフィルタ形状/フィルタ係数情報に基づいてフィルタリング処理を実施する。
 可変長符号化部43は、フィルタパラメータ共有フラグがOFFである場合、タイルループフィルタ制御部41から出力されたフィルタ定義領域情報及びフィルタ形状/フィルタ係数情報を可変長符号化し、その符号化結果をタイル符号化部5-nから出力されたビット系列データに多重化して並列処理終了部8に出力する。
 一方、フィルタパラメータ共有フラグがONである場合、タイル符号化部5-nから出力されたビット系列データをそのまま並列処理終了部8に出力する。
 以上より、フィルタパラメータ共有フラグがONである場合は、フィルタパラメータがフレームに最大1セット定義されるが、フィルタパラメータ共有フラグがOFFである場合は、タイル毎に最大1セット定義される。
 フィルタパラメータ共有フラグがONである場合、フィルタパラメータは、ビットストリーム上では、例えば、図15(a)に示すように、ピクチャのヘッダとして多重化される。
 フィルタパラメータ共有フラグがOFFである場合、タイル毎に定義されるフィルタパラメータセットは、ビットストリーム上では、例えば、図15(b)に示すように、タイルのヘッダとして各タイルデータの先頭位置に多重化される。
 ループフィルタ実施部42は、上述したように、ループフィルタ制御部6又はタイルループフィルタ制御部41から出力されるフィルタパラメータが示すフィルタを用いて、タイル局所復号画像に対するフィルタリング処理を実施する。
 この際、タイル境界においては、カレントタイルと異なるタイルの画素を参照しないフィルタリングを実施する。
 例えば、図16(a)に示すフィルタ形状の線形フィルタを用いる場合、フィルタ境界では、図16(b)に示すように、フィルタ境界の外部を参照しないようにフィルタ形状を変更する。
 あるいは、図16(c)に示すように、フィルタ境界付近の画素をコピーするような処理によって、カレントタイルと異なるタイルの画素を参照しないフィルタリング処理を実施する。
 異なるタイル間の画素参照が不要なフィルタリング手法は、動画像符号化装置と動画像復号装置で一致させる必要があるが、符号化側と復号側で固定的に同じ手法を行ってもよいし、処理内容を示す信号をシグナリングしてもよい。
 フィルタパラメータ共有フラグがONであり、カレントタイルと隣接するタイルで同じフィルタパラメータを用いる場合でも、タイルを跨いだ画素参照は行わない。
 タイルを跨いだ画素参照を行わないことで、タイル符号化部7-nのループフィルタ処理の並列化が可能になるとともに、このタイル符号化部7-nで作成されたビットストリームの復号において、ループフィルタ処理の並列化が可能になる。
 次に、図6の動画像復号装置の処理内容を具体的に説明する。
 可変長符号分離部51は、図1の動画像符号化装置により生成されたビットストリームを入力すると、そのビットストリームに多重化されているフィルタパラメータ共有フラグを分離して、そのフィルタパラメータ共有フラグをフィルタパラメータ復号部55及びタイルループフィルタ部56-nに出力する。
 また、可変長符号分離部51は、ビットストリームに多重化されているタイル分割制御情報を分離して、そのタイル分割制御情報をタイル分割制御部57に出力し、そのフィルタパラメータ共有フラグがONであれば、ビットストリームに多重化されているフレーム単位のフィルタを示すフィルタパラメータの符号化データを分離して、そのフィルタパラメータの符号化データをフィルタパラメータ復号部55に出力する。
 また、可変長符号分離部51は、タイルの個数だけビットストリームに多重化されているビット系列データを分離して、そのビット系列データを並列処理開始部52に出力する(図7のステップST41)。
 タイル分割制御部57は、可変長符号分離部51からタイル分割制御情報を受けると、そのタイル分割制御情報からタイルの分割状態を把握し(ステップST42)、元の入力画像に相当する復号画像が得られるように、後述する並列処理終了部58における各タイル復号画像の配置を制御する。
 並列処理開始部52は、可変長符号分離部51からタイルの個数分のビット系列データ(フレーム単位のビット系列データ)を受けると、タイル単位のビット系列データに分割し、タイル単位のビット系列データをタイル復号部54-1~54-Nに分配する。
 フィルタパラメータ復号部55は、可変長符号分離部51から出力されたフィルタパラメータ共有フラグがONである場合(ステップST43)、可変長符号分離部51から出力された符号化データからフレーム単位のフィルタを示すフィルタパラメータを復号し、そのフィルタパラメータをタイルループフィルタ部56-nに出力する(ステップST44)。
 タイル復号部54-nの処理とタイルループフィルタ部56-nの処理は連続して行われ(ステップST45,ST46)、これら2つの処理が全てのタイルに対して繰り返し実行される(ステップST47,ST48)。
 ステップST45~ST48のループ内の処理は、後述するように、各タイルで独立しているため並列的に実行することができる。
 図1の動画像符号化装置と異なり、フィルタパラメータ共有フラグのON/OFFに関わらず、ステップST45~ST48の処理をまとめて並列化することが可能である。
 並列処理終了部58は、全てのタイルの復号処理とループフィルタ処理が完了すると(ステップ47)、タイル分割制御部57の制御の下で、タイルループフィルタ部56-1~56-Nによるフィルタリング処理後のタイル復号画像を組み合わせてフレーム単位の復号画像を生成し、その復号画像を動き補償予測フレームメモリ53に格納するとともに、その復号画像を再生画像として外部に出力する。
 次に、タイル復号装置54におけるタイル復号部54-1~54-Nの処理内容を詳細に説明する。
 タイル復号装置54は、N個のタイル復号部54-1~54-Nを実装しており、N個のタイル復号部54-1~54-Nが独立して予測差分復号処理(タイル間のいかなる情報参照も行わない予測差分復号処理)を実施する。
 タイル復号部54-nの可変長復号部61は、並列処理開始部52により分配されたタイル単位のビット系列データを入力すると、図3のタイル符号化制御部21と同様の方法で、最大符号化ブロック(LCU)のサイズと分割階層数の上限を決定する。
 可変長復号部61は、最大符号化ブロックのサイズと分割階層数の上限を決定すると、タイル単位のビット系列データから最大符号化ブロックに割り当てられている符号化モードm(B)を復号し、その符号化モードm(B)に含まれている最大符号化ブロックの分割状態を示す情報を復号する(図9のステップST51)。
 可変長復号部61は、最大符号化ブロックの分割状態を示す情報を復号すると、その分割状態に基づいて、階層的に分割されている復号対象ブロック(図1の動画像符号化装置の「符号化対象ブロック」に相当するブロック)を特定する(ステップST52)。
 可変長復号部61は、復号対象ブロック(符号化対象ブロック)に割り当てられている符号化モードm(B)がイントラ符号化モードである場合、タイル単位のビット系列データから、その復号対象ブロックに含まれている1つ以上のパーティション毎にイントラ予測パラメータを復号する。
 一方、復号対象ブロック(符号化対象ブロック)に割り当てられている符号化モードm(B)がインター符号化モードである場合、タイル単位のビット系列データから、復号対象ブロック毎、あるいは、その復号対象ブロックに含まれている1つ以上のパーティション毎にインター予測パラメータ及び動きベクトルを復号する(ステップST53)。
 可変長復号部61は、予測処理単位となるパーティションを、更に予測差分符号化パラメータに含まれる変換ブロックサイズの情報に基づき、変換処理単位となる1つないし複数のパーティションに分割し、タイル単位のビット系列データから、変換処理単位となるパーティション毎に圧縮データ(変換・量子化後の変換係数)を復号する(ステップST53)。
 可変長復号部61は、フィルタパラメータ共有フラグがOFFであるために、タイル単位のフィルタを示すフィルタパラメータの符号化データがタイル単位のビット系列データに多重化されている場合、その符号化データを分離してタイルループフィルタ部56-nに出力する。
 また、可変長復号部61は、符号化パラメータをタイルループフィルタ部56-nに出力する。
 切換スイッチ62は、可変長復号部61により可変長復号された符号化モードm(B)がイントラ符号化モードであれば(m(B)∈INTRAの場合)、可変長復号部61により可変長復号されたイントラ予測パラメータをイントラ予測部63に出力する。
 一方、可変長復号部61により可変長復号された符号化モードm(B)がインター符号化モードであれば(m(B)∈INTERの場合)、可変長復号部61により可変長復号されたインター予測パラメータ及び動きベクトルを動き補償部64に出力する。
 なお、入力されたビット系列データがコンテキスト適応型算術符号など、過去のブロックの符号化結果により内部状態が変化する符号化方式を用いている場合、可変長復号部61の内部状態の初期値は、図3の可変長符号化部31と同様の値を使用し、タイル間の引継ぎを行わない。
 イントラ予測部63は、可変長復号部61により可変長復号された符号化モードm(B)がイントラ符号化モードであり(m(B)∈INTRAの場合)、切換スイッチ62からイントラ予測パラメータを受けると(ステップST54)、図3のイントラ予測部24と同様の手順で、タイル復号画像メモリ67に格納されている復号画像を参照しながら、切換スイッチ62から出力されたイントラ予測パラメータを用いて、復号対象ブロックB内の各パーティションP に対するイントラ予測処理を実施して、イントラ予測画像PINTRAi を生成する(ステップST55)。
 動き補償部64は、可変長復号部61により可変長復号された符号化モードm(B)がインター符号化モードであり(m(B)∈INTERの場合)、切換スイッチ62からインター予測パラメータ及び動きベクトルを受けると(ステップST54)、動き補償予測フレームメモリ53に格納されているフィルタリング処理後の復号画像を参照しながら、切換スイッチ62から出力された動きベクトルとインター予測パラメータを用いて、復号対象ブロックB又はパーティションP に対するインター予測処理を実施してインター予測画像PINTERi を生成する(ステップST56)。
 ただし、動き補償部64は、復号対象ブロックB内の全てのパーティションP に対して、共通のインター予測モードと共通の参照画像指示インデックスが決定されている場合、その参照画像指示インデックスが示す全てのパーティションP で共通の参照画像と、パーティションP 毎の動きベクトルとを用いて、当該パーティションP に対するインター予測処理を実施してインター予測画像PINTERi を生成する。
 逆量子化・逆変換部65は、可変長復号部61から圧縮データ及び予測差分符号化パラメータを受けると、図3の逆量子化・逆変換部28と同様の手順で、その予測差分符号化パラメータを参照して、その圧縮データを逆量子化するとともに、その予測差分符号化パラメータを参照して、逆量子化後の圧縮データである変換係数に対する逆直交変換処理を実施して、図3の減算部26から出力された予測差分信号に相当する復号予測差分信号を算出する(ステップST57)。
 加算部66は、逆量子化・逆変換部65により算出された復号予測差分信号と、イントラ予測部63により生成されたイントラ予測画像PINTRAi 、または、動き補償部64により生成されたインター予測画像PINTERi とを加算して、復号対象ブロック内に含まれる1つないし複数の復号パーティション画像の集まりとして、復号画像をタイル復号画像メモリ67に格納する(ステップST58)。
 この復号画像が、以降のイントラ予測用の画像信号になる。
 タイル復号部54-nにおいては、上記のイントラ予測や可変長復号を含む如何なる処理においても、カレントタイルと異なるブロックの復号パラメータ及び復号画像の参照を行わない。タイル端における参照処理は、符号化側と同様の参照が不要な処理に置き換えられる。よって、タイル復号部54-nの処理は各タイルで独立しており、並列実行可能である。
 また、タイル復号部54-nにおいては、上述のように符号化側でタイル内がスライスに分割されていた場合、ビットストリームに多重化されているスライス分割情報に基づいてカレントタイルをスライスに分割し、スライス毎に独立して定義されたパラメータおよびモード情報に従い復号処理を行う。
 また、可変長復号手段としてコンテキスト適応算術復号を用いる場合、スライスヘッダに多重化された可変長符号化処理制御情報を復号し、前記可変長符号化処理制御情報がコンテキスト切り替えを行わないよう制限することを示す場合には、当該スライスにおいてはコンテキスト切り替えを行わないで適応算術復号を行う。同様に前記可変長符号化処理制御情報がコンテキスト切り替えおよび適応処理を行わないよう制限することを示す場合には、当該スライスにおいてはコンテキスト切り替えおよび適応処理を行わずに算術復号を行う。このように構成することで、本発明による符号化手段によって生成されたビットストリームを好適に復号することができる。ここではコンテキスト適応算術復号を例に説明したが、他のいかなる可変長復号手法であっても、その一部の処理を取り除いてもなお可変長復号が可能であれば同様の手段によって同様の効果が得られる。
 次に、タイルループフィルタ装置56におけるタイルループフィルタ部56-1~56-Nの処理内容を詳細に説明する。
 タイルループフィルタ部56-nのタイルフィルタパラメータ復号部71は、可変長符号分離部51により分離されたフィルタパラメータ共有フラグがOFFである場合、タイル復号部54-nから出力されたフィルタパラメータの符号化データからタイル単位のフィルタを示すフィルタパラメータを復号し、その復号結果であるフィルタパラメータをループフィルタ実施部72に出力する。
 ループフィルタ実施部72は、可変長符号分離部51により分離されたフィルタパラメータ共有フラグがOFFであるために、タイルフィルタパラメータ復号部71からフィルタパラメータを受けると、そのフィルタパラメータが示すタイル単位のフィルタとタイル復号部54-nの可変長復号部61により可変長復号された符号化パラメータを用いて、タイル復号部54-nから出力されたタイル復号画像に対するフィルタリング処理を実施する。
 一方、可変長符号分離部51により分離されたフィルタパラメータ共有フラグがONであるために、フィルタパラメータ復号部55からフィルタパラメータを受けると、そのフィルタパラメータが示すフレーム単位のフィルタとタイル復号部54-nの可変長復号部61により可変長復号された符号化パラメータを用いて、タイル復号部54-nから出力されたタイル復号画像に対するフィルタリング処理を実施する。
 ループフィルタ実施部72は、図5のループフィルタ実施部42と等しい処理を行うものである。即ち、異なるタイルを跨いだ画素参照を行わないフィルタリング処理を行うため、タイルループフィルタ部45-nの処理は各タイルで独立しており、並列実行可能である。
 以上で明らかなように、この実施の形態1によれば、入力画像の分割状態を指示する分割制御情報を出力する符号化制御部1と、符号化制御部1から出力された分割制御情報にしたがって入力画像を所定サイズの矩形領域であるタイルに分割し、分割後のタイルを分配する並列処理開始部3と、動き補償予測フレームメモリ4に記憶されている局所復号画像を参照して、並列処理開始部3により分配されたタイルに対する予測差分符号化処理を実施することで、その符号化結果である符号化ビットデータを出力するとともに、その符号化ビットデータから局所復号画像を生成するN個のタイル符号化部5-1~5-Nとを設け、N個のタイルループフィルタ部7-1~7-Nが、タイル符号化部5-1~5-Nにより生成された局所復号画像のフィルタリング処理に適するタイル単位のフィルタを決定し、そのフィルタを用いて、その局所復号画像に対するフィルタリング処理を実施するように構成したので、ループフィルタの処理をタイルレベルで並列に行うことができる効果を奏する。
実施の形態2.
 この実施の形態2では、上記実施の形態1における動画像符号化装置に対して、タイルレベルでの並列処理の実施/不実施の切り替え機能を追加している動画像符号化装置について説明する。
 また、当該動画像符号化装置により作成されたビットストリームから動画像を復号することが可能な動画像復号装置について説明する。
 図17はこの発明の実施の形態2による動画像符号化装置を示す構成図である。
 図17において、符号化制御部81は図1の符号化制御部1と同様に、映像信号が示す入力画像を所定サイズのタイルに分割する際の分割状態を指示するタイル分割制御情報(分割制御情報)を出力する処理を実施する。
 また、符号化制御部81は入力画像を分割して並列化するか否かを示す符号化並列フラグ(分割フラグ)を出力するとともに、フィルタリング処理の種類別に、当該フィルタリング処理に用いるフィルタを各タイルで共通させるか否かを示すフィルタパラメータ共有フラグ(フィルタ共有フラグ)#1~Mを出力する処理を実施する。
 さらに、符号化制御部81は前段の処理部と後段の処理部の接続関係を示すループフィルタ並列フラグ#1~Mを出力する処理を実施する。
 なお、符号化制御部81は分割制御手段を構成している。
 タイル分割制御部82は符号化制御部81から出力されたタイル分割制御情報が指示している分割状態と一致するように、並列処理開始部83における入力画像の分割を制御する処理を実施する。
 並列処理開始部83は符号化制御部81から出力された符号化並列フラグが入力画像を分割して並列化する旨を示している場合、タイル分割制御部2の指示の下、映像信号が示す入力画像を所定サイズのタイルに分割し、分割後のタイルをタイル符号化部85-1~85-Nに分配する処理を実施する。
 一方、符号化並列フラグが入力画像を分割して並列化しない旨を示している場合、映像信号が示す入力画像を分割せずに、フレーム単位の画像である入力画像をフレーム符号化部86に出力する処理を実施する。
 なお、タイル分割制御部82及び並列処理開始部83からタイル分配手段が構成されている。
 動き補償予測フレームメモリ84はフィルタリング処理後の局所復号画像を記憶する記録媒体である。なお、動き補償予測フレームメモリ84は画像メモリを構成している。
 タイル符号化装置85はN個のタイル符号化部85-1~85-Nを実装しており、N個のタイル符号化部85-1~85-Nが独立して予測差分符号化処理を実施する。Nは1以上の整数である。
 タイル符号化部85-1~85-Nは図1のタイル符号化部5-1~5-Nと同様に、動き補償予測フレームメモリ84に記憶されているフィルタリング処理後の局所復号画像を参照して、並列処理開始部83により分配されたタイルに対する予測差分符号化処理を実施することで、その符号化結果であるビット系列データ及び符号化パラメータを出力するとともに、タイル局所復号画像(局所復号画像)を生成する処理を実施する。なお、タイル符号化部85-1~85-Nはタイル符号化手段を構成している。
 フレーム符号化部86は動き補償予測フレームメモリ84に記憶されているフィルタリング処理後の局所復号画像を参照して、入力画像(並列処理開始部83により分割されていないフレーム単位の画像)に対する予測差分符号化処理を実施することで、その符号化結果であるビット系列データ及び符号化パラメータを出力するとともに、フレーム局所復号画像(局所復号画像)を生成する処理を実施する。なお、フレーム符号化部86はフレーム符号化手段を構成している。
 ループフィルタ制御部87-1~87-Mは符号化制御部81から出力されたフィルタパラメータ共有フラグ#1~Mが各タイルでフィルタを共通させる旨を示している場合、並列処理切替部90-1~90-Mから出力されたタイル局所復号画像からフレーム単位の局所復号画像を得て、フレーム単位の局所復号画像に適するフレーム単位のフィルタを決定し、そのフィルタを示すフィルタパラメータをタイルループフィルタ装置88-1~88-Mに出力する処理を実施する。
 また、ループフィルタ制御部87-1~87-Mはフレーム単位のフィルタを示すフィルタパラメータを可変長符号化し、そのフィルタパラメータの符号化データを並列処理終了部91に出力する処理を実施する。
 タイルループフィルタ装置88-1~87-Mは互いに異なる種類のフィルタリング処理を実施するフィルタ装置であって、N個のタイルループフィルタ部88-m-1~88-m-N(m=1,2,・・・,M)を実装しており、N個のタイルループフィルタ部88-m-1~88-m-Nが独立してフィルタリング処理を実施する。Mは1以上の整数である。
 タイルループフィルタ部88-m-n(n=1,2,・・・,N)は符号化制御部81から出力されたフィルタパラメータ共有フラグ#mが各タイルでフィルタを共通させない旨を示している場合、並列処理切替部90-mから出力されたタイル局所復号画像のフィルタリング処理に適するタイル単位のフィルタを決定し、そのフィルタを用いて、タイル局所復号画像に対するフィルタリング処理を実施するとともに、タイル単位のフィルタを示すフィルタパラメータを可変長符号化し、その符号化結果を並列処理切替部90-1~90-Mから出力されたビット系列データに多重化する処理を実施する。
 一方、フィルタパラメータ共有フラグ#mが各タイルでフィルタを共通させる旨を示している場合、ループフィルタ制御部87-mから出力されたフィルタパラメータが示すフレーム単位のフィルタを用いて、並列処理切替部90-mから出力されたタイル局所復号画像のフィルタリング処理を実施するとともに、並列処理切替部90-mから出力されたビット系列データをそのまま出力する処理を実施する。
 なお、タイルループフィルタ部88-1-1~88-1-N,88-2-1~88-2-N,・・・,88-M-1~88-M-Nはタイルフィルタ手段を構成している。
 フレームループフィルタ部89-mは並列処理切替部90-mからタイル局所復号画像が出力された場合、そのタイル局所復号画像から得られるフレーム局所復号画像(フレーム単位の局所復号画像)のフィルタリング処理に適するフレーム単位のフィルタを決定し、並列処理切替部90-mからフレーム局所復号画像が出力された場合、そのフレーム局所復号画像に適するフレーム単位のフィルタを決定し、フレーム単位のフィルタを用いて、フレーム局所復号画像に対するフィルタリング処理を実施するとともに、フレーム単位のフィルタを示すフィルタパラメータを可変長符号化し、その符号化結果を並列処理切替部90-1~90-Mから出力されたビット系列データに多重化する処理を実施する。なお、フレームループフィルタ部89-1~89-Mはフレームフィルタ手段を構成している。
 並列処理切替部90-mは符号化制御部81から出力されたループフィルタ並列フラグ#mにしたがって前段の処理部と後段の処理部との接続関係を制御する処理を実施する。
 これにより、符号化制御部81から出力された符号化並列フラグが入力画像を分割して並列化する旨を示している場合でも、符号化制御部81から出力されたフィルタパラメータ共有フラグ#1~Mのうち、例えば、フィルタパラメータ共有フラグ#xが各タイルでフィルタを共通させる旨を示している場合、前段の処理部から出力された局所復号画像、符号化パラメータ及びビット系列データをタイルループフィルタ部88-x-nではなく、フレームループフィルタ部89-xに出力するようになる。
 並列処理終了部91は符号化制御部81から出力された符号化並列フラグが入力画像を分割して並列化する旨を示している場合において、符号化制御部81から出力されたフィルタパラメータ共有フラグ#Mが各タイルでフィルタを共通させない旨を示していれば、符号化制御部81から出力されたタイル分割制御情報にしたがってタイルループフィルタ部88-M-1~88-M-Nによるフィルタリング処理後のタイル局所復号画像を組み合わせてフレーム単位の局所復号画像を生成し、その局所復号画像を動き補償予測フレームメモリ84に格納するとともに、タイルループフィルタ部88-M-1~88-M-Nから出力されたビット系列データを可変長符号多重化部92に出力する処理を実施する。
 また、符号化並列フラグが入力画像を分割して並列化する旨を示している場合において、符号化制御部81から出力されたフィルタパラメータ共有フラグ#Mが各タイルでフィルタを共通させる旨を示していれば、フレームループフィルタ部88-Mによるフィルタリング処理後のフレーム局所復号画像を動き補償予測フレームメモリ84に格納するとともに、フレームループフィルタ部88-Mから出力されたビット系列データを可変長符号多重化部92に出力する処理を実施する。
 一方、符号化並列フラグが入力画像を分割して並列化しない旨を示している場合、フレームループフィルタ部88-Mによるフィルタリング処理後のフレーム局所復号画像を動き補償予測フレームメモリ84に格納するとともに、フレームループフィルタ部88-Mから出力されたビット系列データを可変長符号多重化部92に出力する処理を実施する。
 なお、並列処理終了部91は局所復号画像格納手段を構成している。
 可変長符号多重化部92は並列処理終了部91から出力されたビット系列データと、符号化制御部81から出力されたタイル分割制御情報、符号化並列フラグ、ループフィルタ並列フラグ#1~M及びフィルタパラメータ共有フラグ#1~Mと、タイルループフィルタ部88-m-n又はフレームループフィルタ部89-mにより決定されたフィルタを示すフィルタパラメータの符号化データとを多重化してビットストリームを生成する処理を実施する。
 なお、可変長符号多重化部92は多重化手段を構成している。
 図17の例では、動画像符号化装置の構成要素である符号化制御部81、タイル分割制御部82、並列処理開始部83、動き補償予測フレームメモリ84、タイル符号化装置85、フレーム符号化部86、ループフィルタ制御部87-1~87-M、タイルループフィルタ装置88-1~88-M、フレームループフィルタ部89-1~89-M、並列処理切替部90-1~90-M、並列処理終了部91及び可変長符号多重化部92のそれぞれが専用のハードウェア(例えば、CPUを実装している半導体集積回路や、ワンチップマイコンなど)で構成されているものを想定しているが、動画像符号化装置がコンピュータで構成される場合、符号化制御部81、タイル分割制御部82、並列処理開始部83、タイル符号化装置85、フレーム符号化部86、ループフィルタ制御部87-1~87-M、タイルループフィルタ装置88-1~88-M、フレームループフィルタ部89-1~89-M、並列処理切替部90-1~90-M、並列処理終了部91及び可変長符号多重化部92の処理内容を記述しているプログラムをコンピュータのメモリに格納し、当該コンピュータのCPUが当該メモリに格納されているプログラムを実行するようにしてもよい。
 図18はこの発明の実施の形態2による動画像復号装置を示す構成図である。
 図18において、可変長符号分離部101は図17の動画像符号化装置により生成されたビットストリームを入力すると、そのビットストリームに多重化されているビット系列データと、タイル分割制御情報と、符号化並列フラグと、ループフィルタ並列フラグ#1~Mと、フィルタパラメータ共有フラグ#1~Mと、フィルタパラメータの符号化データとを分離する処理を実施する。なお、可変長符号分離部101は分離手段を構成している。
 並列処理開始部102は可変長符号分離部101により分離された符号化並列フラグが入力画像を分割して並列化する旨を示している場合、可変長符号分離部101から出力されたフレーム単位のビット系列データをタイル単位のビット系列データに分割し、タイル単位のビット系列データをタイル復号部104-1~104-Nに分配する処理を実施する。
 一方、符号化並列フラグが入力画像を分割して並列化しない旨を示している場合、可変長符号分離部101から出力されたフレーム単位のビット系列データをフレーム復号部105に出力する処理を実施する。なお、並列処理開始部102は符号化ビットデータ分配手段を構成している。
 動き補償予測フレームメモリ103はフィルタリング処理後の復号画像を記憶する記録媒体である。なお、動き補償予測フレームメモリ103は画像メモリを構成している。
 タイル復号装置104はN個のタイル復号部104-1~104-Nを実装しており、N個のタイル復号部104-1~104-Nが独立して予測差分復号処理を実施する。Nは1以上の整数である。
 タイル復号部104-1~104-Nは図6のタイル復号部54-1~54-Nと同様に、動き補償予測フレームメモリ103に記憶されているフィルタリング処理後の復号画像を参照して、並列処理開始部102により分配されたタイル単位のビット系列データに対する予測差分復号処理を実施することで、タイル復号画像(タイル単位の復号画像)を生成するとともに、そのタイル復号画像と予測差分復号処理を実施する際に用いている符号化パラメータ(ビット系列データに多重化されている符号化パラメータ)を並列処切替部110-1に出力する処理を実施する。
 また、ビット系列データに多重化されているタイル単位のフィルタを示すフィルタパラメータの符号化データを並列処理切替部110-1に出力する処理を実施する。
 なお、タイル復号部104-1~104-Nはタイル復号手段を構成している。
 フレーム復号部105は動き補償予測フレームメモリ103に記憶されているフィルタリング処理後の局所復号画像を参照して、並列処理開始部102から出力されたフレーム単位のビット系列データに対する予測差分復号処理を実施することで、フレーム復号画像(フレーム単位の復号画像)を生成するとともに、そのフレーム復号画像と予測差分復号処理を実施する際に用いている符号化パラメータ(ビット系列データに多重化されている符号化パラメータ)を並列処切替部110-1に出力する処理を実施する。
 また、ビット系列データに多重化されているフレーム単位のフィルタを示すフィルタパラメータの符号化データを並列処理切替部110-1に出力する処理を実施する。
 なお、フレーム復号部105はフレーム復号手段を構成している。
 フィルタパラメータ復号部106-1~106-Mは可変長符号分離部101により分離されたフィルタパラメータ共有フラグ#1~Mが各タイルでフィルタを共通させる旨を示している場合、可変長符号分離部101により分離されたフィルタパラメータの符号化データ#1~Mからフレーム単位のフィルタを示すフィルタパラメータを復号し、そのフィルタパラメータをタイルループフィルタ装置107-1~107-Mに出力する処理を実施する。
 タイルループフィルタ装置107-1~107-Mは互いに異なる種類のフィルタリング処理を実施するフィルタ装置であって、N個のタイルループフィルタ部107-m-1~107-m-N(m=1,2,・・・,M)を実装しており、N個のタイルループフィルタ部107-m-1~107-m-Nが独立してフィルタリング処理を実施する。Mは1以上の整数である。
 タイルループフィルタ部107-m-n(n=1,2,・・・,N)は並列処理切替部110-mからタイル復号画像が出力されると、可変長符号分離部101により分離されたフィルタパラメータ共有フラグ#mが各タイルでフィルタを共通させない旨を示している場合、並列処理切替部110-mから出力されたフィルタパラメータの符号化データからタイル単位のフィルタを示すフィルタパラメータを復号し、タイル単位のフィルタを用いて、タイル復号画像に対するフィルタリング処理を実施する。
 一方、フィルタパラメータ共有フラグ#mが各タイルでフィルタを共通させる旨を示している場合、並列処理切替部110-mから出力されたフィルタパラメータの符号化データからフレーム単位のフィルタを示すフィルタパラメータを復号し、フレーム単位のフィルタを用いて、タイル復号画像に対するフィルタリング処理を実施する。
 なお、タイルループフィルタ部107-1-1~107-1-N,107-2-1~107-2-N,・・・,107-M-1~107-M-Nはタイルフィルタ手段を構成している。
 フレームループフィルタ部108-mは並列処理切替部110-mからフレーム復号画像が出力されると、並列処理切替部110-mから出力されたフィルタパラメータの符号化データからフレーム単位のフィルタを示すフィルタパラメータを復号し、フレーム単位のフィルタを用いて、フレーム復号画像に対するフィルタリング処理を実施する。なお、フレームループフィルタ部108-1~108-Mはフレームフィルタ手段を構成している。
 タイル分割制御部109は可変長符号分離部101により分離されたタイル分割制御情報からタイルの分割状態を把握し、元の入力画像に相当する復号画像が得られるように、並列処理終了部111における各タイル復号画像の配置を制御する処理を実施する。
 並列処理切替部110-mは可変長符号分離部101により分離されたループフィルタ並列フラグ#mにしたがって前段の処理部と後段の処理部との接続関係を制御する処理を実施する。
 これにより、可変長符号分離部101により分離された符号化並列フラグが入力画像を分割して並列化する旨を示している場合でも、可変長符号分離部101により分離されたフィルタパラメータ共有フラグ#1~Mのうち、例えば、フィルタパラメータ共有フラグ#xが各タイルでフィルタを共通させる旨を示している場合、前段の処理部から出力された復号画像、符号化パラメータ及びフィルタパラメータの符号化データをタイルループフィルタ部107-x-nではなく、フレームループフィルタ部108-xに出力するようになる。
 並列処理終了部111はタイル分割制御部109の制御の下で、タイルループフィルタ部107-M-1~107-M-Nによるフィルタリング処理後のタイル復号画像を組み合わせてフレーム単位の復号画像を生成し、その復号画像を動き補償予測フレームメモリ103に格納する処理を実施する。
 なお、タイル分割制御部109及び並列処理終了部111から復号画像格納手段が構成されている。
 図18の例では、動画像復号装置の構成要素である可変長符号分離部101、並列処理開始部102、動き補償予測フレームメモリ103、タイル復号装置104、フレーム復号部105、フィルタパラメータ復号部106-1~106-M、タイルループフィルタ装置107-1~107-M、フレームループフィルタ部108-1~108-M、タイル分割制御部109、並列処理切替部110-1~110-M及び並列処理終了部111のそれぞれが専用のハードウェア(例えば、CPUを実装している半導体集積回路や、ワンチップマイコンなど)で構成されているものを想定しているが、動画像復号装置がコンピュータで構成される場合、可変長符号分離部101、並列処理開始部102、タイル復号装置104、フレーム復号部105、フィルタパラメータ復号部106-1~106-M、タイルループフィルタ装置107-1~107-M、フレームループフィルタ部108-1~108-M、タイル分割制御部109、並列処理切替部110-1~110-M及び並列処理終了部111の処理内容を記述しているプログラムをコンピュータのメモリに格納し、当該コンピュータのCPUが当該メモリに格納されているプログラムを実行するようにしてもよい。
実施の形態3.
 上記実施の形態1では、タイルループフィルタ装置7が1段構成であるものを示したが、この実施の形態3では、互いに異なる種類のループフィルタを実現するタイルループフィルタ装置88-1~88-Mが多段に接続されている点で相違している。
 例えば、画像に施すループフィルタとして、デブロッキングフィルタ、SAO、ALFが定義されている場合、画像がタイルに分割されていれば、符号化処理及び全てのフィルタリング処理を、タイル間で参照を行わない手法で実施しなければならない。
 ただし、ループフィルタの種類によっては、タイル単位でフィルタリング処理を行うよりも、フレーム単位でフィルタリング処理を行う方が、都合がよい場合もある。
 例えば、ALFの場合、フレーム1枚分の画像でもH/Wで高速に処理が可能であるため並列処理が不要であるが、デブロッキングフィルタの場合、H/Wでの高速処理が困難であるため並列処理が不可欠であるという状況が考えられる。
 このような状況下では、画質の観点から、並列化が不要なループフィルタはタイル間を跨いだ画素参照を行うフィルタリング処理を施すことが望ましい。
 また、予測差分符号化処理や復号処理は並列化の必要性があるが、ループフィルタ処理は並列化の必要性がない場合、あるいは、その逆で、予測差分符号化処理や復号処理は並列化の必要性がないが、ループフィルタ処理は並列化の必要性がある場合がある。
 このような状況に対処するには、予測差分符号化処理・復号処理と各種のループフィルタ処理は、それぞれ独立に並列化のためのタイル間を跨る参照を行うか否かを切り替えられるような手法が有効となる。
 この実施の形態3では、入力画像を分割して、タイル単位の並列化処理を行うか、並列化しないでフレーム単位で処理を行うかを切り替えられるようにしている。
 また、ループフィルタ毎に、タイル単位のフィルタリング処理を行うか、フレーム単位のフィルタリング処理を行うかを切り替えられるようにしている。
 最初に、動画像符号化装置の処理内容を説明する。
 符号化制御部81は、図1の符号化制御部1と同様に、映像信号が示す入力画像を所定サイズのタイルに分割する際の分割状態を指示するタイル分割制御情報をタイル分割制御部82、並列処理終了部91及び可変長符号多重化部92に出力する。
 また、符号化制御部81は、入力画像を分割して並列化するか否かを示す符号化並列フラグを並列処理開始部83に出力するとともに、フィルタリング処理の種類別に、当該フィルタリング処理に用いるフィルタを各タイルで共通させるか否かを示すフィルタパラメータ共有フラグ#1~M(各タイルで共通させる場合:ONのフラグ、各タイルで共通させない場合:OFFのフラグ)をループフィルタ制御部87-1~87-M、タイルループフィルタ装置88-1~88-M及び可変長符号多重化部91に出力する。
 さらに、符号化制御部81は、前段の処理部と後段の処理部の接続関係を示すループフィルタ並列フラグ#1~Mを並列処理切替部90-1~90-Mに出力する。
 タイル分割制御部82は、符号化制御部81からタイル分割制御情報を受けると、そのタイル分割制御情報が指示している分割状態と一致するように、並列処理開始部83における入力画像の分割を制御する。
 並列処理開始部83は、符号化制御部81から出力された符号化並列フラグが入力画像を分割して並列化する旨を示している場合、タイル分割制御部82の指示の下、映像信号が示す入力画像を所定サイズのタイルに分割し、分割後のタイルをタイル符号化部85-1~85-Nに分配する。
 一方、符号化並列フラグが入力画像を分割して並列化しない旨を示している場合、映像信号が示す入力画像を分割せずに、フレーム単位の画像である入力画像をフレーム符号化部86に出力する。
 タイル符号化部85-1~85-Nは、並列処理開始部83からタイルを受けると、図1のタイル符号化部5-1~5-Nと同様の手順でタイル局所復号画像を生成する。
 即ち、タイル符号化部85-1~85-Nは、動き補償予測フレームメモリ84に記憶されているフィルタリング処理後の局所復号画像を参照して、並列処理開始部83により分配されたタイルに対する予測差分符号化処理を実施することで、その符号化結果であるビット系列データ及び符号化パラメータを出力するとともに、タイル局所復号画像を生成する。
 フレーム符号化部86は、並列処理開始部83からフレーム単位の画像である入力画像を受けると、動き補償予測フレームメモリ84に記憶されているフィルタリング処理後の局所復号画像を参照して、その入力画像に対する予測差分符号化処理を実施することで、その符号化結果であるビット系列データ及び符号化パラメータを出力するとともに、フレーム局所復号画像を生成する。
 符号化処理の処理単位がフレーム単位である点で、タイル符号化部85-1~85-Nと相違しているが、符号化処理自体はタイル符号化部85-1~85-Nと同様であるため詳細な説明を省略する。
 並列処理切替部90-mは、符号化制御部81から出力されたループフィルタ並列フラグ#mにしたがって前段の処理部と後段の処理部との接続関係を制御するが、例えば、符号化並列フラグが入力画像を分割して並列化しない旨を示している場合、並列処理開始部83が入力画像を分割せずに、フレーム符号化部86がフレーム単位の符号化処理を行うので、フレーム符号化部86(または、前段のフレームループフィルタ部)の出力信号(フレーム局所復号画像、ビット系列データ、符号化パラメータ)を後段のフレームループフィルタ部に伝送する。
 一方、符号化並列フラグが入力画像を分割して並列化する旨を示している場合において、フィルタパラメータ共有フラグ#mがOFFであれば、タイル単位のフィルタリング処理を行うため、タイル符号化部85-1~85-N(または、前段のタイルループフィルタ部)の出力信号(タイル局所復号画像、ビット系列データ、符号化パラメータ)を後段のタイルループフィルタ部に伝送する。
 ただし、m-1段目のループフィルタで、フレーム単位のフィルタリング処理が行われている場合、前段のフレームループフィルタ部から出力されたフレーム局所復号画像をタイル局所復号画像に分割し、そのタイル局所復号画像、ビット系列データ及び符号化パラメータを後段のタイルループフィルタ部に伝送する。
 符号化並列フラグが入力画像を分割して並列化する旨を示している場合でも、フィルタパラメータ共有フラグ#mがONであれば、m段目のループフィルタでは、フレーム単位のフィルタリング処理を行うため、タイル符号化部85-1~85-N(または、前段のタイルループフィルタ部)の出力信号(タイル局所復号画像、ビット系列データ、符号化パラメータ)、あるいは、前段のフレームループフィルタ部の出力信号(フレーム局所復号画像、ビット系列データ、符号化パラメータ)を後段のフレームループフィルタ部に伝送する。
 ループフィルタ制御部87-mは、符号化制御部81から出力されたフィルタパラメータ共有フラグ#mがONである場合、並列処理切替部90-mから出力されたタイル局所復号画像からフレーム局所復号画像を得て、そのフレーム局所復号画像に適するフレーム単位のフィルタを決定する。並列処理切替部90-mからフレーム局所復号画像が出力された場合、そのフレーム局所復号画像に適するフレーム単位のフィルタを決定する。
 ループフィルタ制御部87-mは、フレーム単位のフィルタを決定すると、そのフィルタを示すフィルタパラメータをタイルループフィルタ装置88-mに出力する。
 また、ループフィルタ制御部87-mは、フレーム単位のフィルタを示すフィルタパラメータを可変長符号化し、そのフィルタパラメータの符号化データを並列処理終了部91に出力する。
 タイルループフィルタ部88-m-nは、並列処理切替部90-mからタイル局所復号画像を受けると、図1のタイルループフィルタ部7-nと同様に、符号化制御部81から出力されたフィルタパラメータ共有フラグ#mがOFFであれば、並列処理切替部90-mから出力された符号化パラメータに基づいて、そのタイル局所復号画像のフィルタリング処理に適するタイル単位のフィルタを決定し、そのフィルタを用いて、タイル局所復号画像に対するフィルタリング処理を実施し、フィルタリング処理後のタイル局所復号画像を後段の並列処理切替部又は並列処理終了部91に出力する。
 また、タイルループフィルタ部88-m-nは、タイル単位のフィルタを示すフィルタパラメータを可変長符号化し、そのフィルタパラメータの符号化データを並列処理切替部90-mから出力されたビット系列データに多重化して後段の並列処理切替部又は並列処理終了部91に出力する。
 なお、符号化制御部81から出力されたフィルタパラメータ共有フラグ#mがONであれば、ループフィルタ制御部87-mから出力されたフィルタパラメータが示すフレーム単位のフィルタを用いて、並列処理切替部90-mから出力されたタイル局所復号画像のフィルタリング処理を実施するが、この実施の形態2では、符号化並列フラグが入力画像を分割して並列化する旨を示している場合でも、フィルタパラメータ共有フラグ#mがONである場合、並列処理切替部90-mがフレーム局所復号画像をフレームループフィルタ部89-mに与えて、タイル局所復号画像をタイルループフィルタ部88-m-nに与えないので、この状況下では、フレーム単位のフィルタを用いて、タイル局所復号画像のフィルタリング処理を実施することはない。
 タイルループフィルタ部88-m-nが、フレーム単位のフィルタを用いて、タイル局所復号画像のフィルタリング処理を実施する状況としては、例えば、符号化制御部81が符号化並列フラグを出力する機能を使用せずに、フレームループフィルタ部89-mの機能を停止している状況などが考えられる(実施の形態1と類似の構成)。
 フレームループフィルタ部89-mは、並列処理切替部90-mからタイル局所復号画像を受けると、そのタイル局所復号画像からフレーム局所復号画像を得て、並列処理切替部90-mから出力された符号化パラメータに基づいて、そのフレーム局所復号画像のフィルタリング処理に適するフレーム単位のフィルタを決定する。並列処理切替部90-mからフレーム局所復号画像が出力された場合、その符号化パラメータに基づいて、そのフレーム局所復号画像に適するフレーム単位のフィルタを決定する。
 フレームループフィルタ部89-mは、フレーム単位のフィルタを決定すると、フレーム単位のフィルタを用いて、そのフレーム局所復号画像に対するフィルタリング処理を実施し、フィルタリング処理後のフレーム局所復号画像を後段の並列処理切替部又は並列処理終了部91に出力する。
 また、フレームループフィルタ部89-mは、フレーム単位のフィルタを示すフィルタパラメータを可変長符号化し、そのフィルタパラメータの符号化データを並列処理切替部90-mから出力されたビット系列データに多重化して後段の並列処理切替部又は並列処理終了部91に出力する。
 並列処理終了部91は、符号化制御部81から出力された符号化並列フラグが入力画像を分割して並列化する旨を示している場合において、符号化制御部81から出力されたフィルタパラメータ共有フラグ#MがOFFであれば、符号化制御部81から出力されたタイル分割制御情報にしたがってタイルループフィルタ部88-M-1~88-M-Nによるフィルタリング処理後のタイル局所復号画像を組み合わせてフレーム単位の局所復号画像を生成し、その局所復号画像を動き補償予測フレームメモリ84に格納するとともに、タイルループフィルタ部88-M-1~88-M-Nから出力されたビット系列データを可変長符号多重化部92に出力する。
 また、符号化並列フラグが入力画像を分割して並列化する旨を示している場合において、符号化制御部81から出力されたフィルタパラメータ共有フラグ#MがONであれば、フレームループフィルタ部88-Mによるフィルタリング処理後のフレーム局所復号画像を動き補償予測フレームメモリ84に格納するとともに、フレームループフィルタ部88-Mから出力されたビット系列データを可変長符号多重化部92に出力する。
 一方、符号化並列フラグが入力画像を分割して並列化しない旨を示している場合、フレームループフィルタ部88-Mによるフィルタリング処理後のフレーム局所復号画像を動き補償予測フレームメモリ84に格納するとともに、フレームループフィルタ部88-Mから出力されたビット系列データを可変長符号多重化部92に出力する。
 可変長符号多重化部92は、並列処理終了部91から出力されたビット系列データと、符号化制御部81から出力されたタイル分割制御情報、符号化並列フラグ、ループフィルタ並列フラグ#1~M及びフィルタパラメータ共有フラグ#1~Mとを多重化してビットストリームを生成する。
 次に、動画像復号装置の処理内容を説明する。
 可変長符号分離部101は、図17の動画像符号化装置により生成されたビットストリームを入力すると、そのビットストリームに多重化されているビット系列データと、タイル分割制御情報と、符号化並列フラグと、ループフィルタ並列フラグ#1~Mと、フィルタパラメータ共有フラグ#1~Mと、フィルタパラメータの符号化データとを分離して出力する。
 並列処理開始部102は、可変長符号分離部101により分離された符号化並列フラグが入力画像を分割して並列化する旨を示している場合、可変長符号分離部101から出力されたフレーム単位のビット系列データをタイル単位のビット系列データに分割し、タイル単位のビット系列データをタイル復号部104-1~104-Nに分配する。
 一方、符号化並列フラグが入力画像を分割して並列化しない旨を示している場合、可変長符号分離部101から出力されたフレーム単位のビット系列データをフレーム復号部105に出力する。
 タイル復号部104-1~104-Nは、並列処理開始部102からタイル単位のビット系列データを受けると、図6のタイル復号部54-1~54-Nと同様の手順でタイル復号画像を生成する。
 即ち、タイル復号部104-1~104-Nは、動き補償予測フレームメモリ103に記憶されているフィルタリング処理後の復号画像を参照して、並列処理開始部102により分配されたタイル単位のビット系列データに対する予測差分復号処理を実施することで、タイル復号画像を生成するとともに、そのタイル復号画像及び予測差分復号処理を実施する際に用いている符号化パラメータ(ビット系列データに多重化されている符号化パラメータ)を並列処理終了部111に出力する。
 また、ビット系列データに多重化されているタイル単位のフィルタを示すフィルタパラメータの符号化データを並列処理切替部110-1に出力する処理を実施する。
 フレーム復号部105は、並列処理開始部102からフレーム単位のビット系列データを受けると、動き補償予測フレームメモリ103に記憶されているフィルタリング処理後の局所復号画像を参照して、そのフレーム単位のビット系列データに対する予測差分復号処理を実施することでフレーム復号画像を生成し、そのフレーム復号画像及び予測差分復号処理を実施する際に用いている符号化パラメータ(ビット系列データに多重化されている符号化パラメータ)を並列処理終了部111に出力する。
 また、ビット系列データに多重化されているフレーム単位のフィルタを示すフィルタパラメータの符号化データを並列処理切替部110-1に出力する処理を実施する。
 並列処理切替部100-mは、可変長符号分離部101により分離されたループフィルタ並列フラグ#mにしたがって前段の処理部と後段の処理部との接続関係を制御するが、例えば、符号化並列フラグが入力画像を分割して並列化しない旨を示している場合、並列処理開始部102がフレーム単位のビット系列データをタイル単位のビット系列データに分割せずに、フレーム復号部105がフレーム単位の復号処理を行うので、フレーム復号部105(または、前段のフレームループフィルタ部)の出力信号(フレーム復号画像、符号化パラメータ、フレーム単位のフィルタを示すフィルタパラメータの符号化データ)を後段のフレームループフィルタ部に伝送する。
 一方、符号化並列フラグが入力画像を分割して並列化する旨を示している場合において、フィルタパラメータ共有フラグ#mがOFFであれば、タイル単位のフィルタリング処理を行うため、タイル復号部104-1~104-N(または、前段のタイルループフィルタ部)の出力信号(タイル局所復号画像、符号化パラメータ、タイル単位のフィルタを示すフィルタパラメータの符号化データ)を後段のタイルループフィルタ部に伝送する。
 ただし、m-1段目のループフィルタで、フレーム単位のフィルタリング処理が行われている場合、前段のフレームループフィルタ部から出力されたフレーム復号画像をタイル復号画像に分割し、そのタイル復号画像、符号化パラメータ及びタイル単位のフィルタを示すフィルタパラメータの符号化データを後段のタイルループフィルタ部に伝送する。
 符号化並列フラグが入力画像を分割して並列化する旨を示している場合でも、フィルタパラメータ共有フラグ#mがONであれば、m段目のループフィルタでは、フレーム単位のフィルタリング処理を行うため、タイル復号部104-1~104-N(または、前段のタイルループフィルタ部)の出力信号(タイル局所復号画像、符号化パラメータ、タイル単位のフィルタを示すフィルタパラメータの符号化データ)、あるいは、前段のフレームループフィルタ部の出力信号(フレーム復号画像、符号化パラメータ、フレーム単位のフィルタを示すフィルタパラメータの符号化データ)を後段のフレームループフィルタ部に伝送する。
 フィルタパラメータ復号部106-mは、可変長符号分離部101により分離されたフィルタパラメータ共有フラグ#nがONである場合、可変長符号分離部101により分離されたフィルタパラメータの符号化データ#mからフレーム単位のフィルタを示すフィルタパラメータを復号し、そのフィルタパラメータをタイルループフィルタ装置107-mに出力する。
 タイルループフィルタ部107-m-nは、並列処理切替部110-mからタイル復号画像を受けると、可変長符号分離部101により分離されたフィルタパラメータ共有フラグ#mがOFFであれば、並列処理切替部110-mから出力されたフィルタパラメータの符号化データからタイル単位のフィルタを示すフィルタパラメータを復号し、タイル単位のフィルタを用いて、そのタイル復号画像に対するフィルタリング処理を実施する。
 なお、フィルタパラメータ共有フラグ#mがONであれば、フィルタパラメータ復号部106-mから出力されたフィルタパラメータが示すフレーム単位のフィルタを用いて、タイル復号画像に対するフィルタリング処理を実施するが、この実施の形態2では、符号化並列フラグが入力画像を分割して並列化する旨を示している場合でも、フィルタパラメータ共有フラグ#mがONである場合、並列処理切替部110-mがフレーム復号画像をフレームループフィルタ部108-mに与えて、タイル復号画像をタイルループフィルタ部107-m-nに与えないので、この状況下では、フレーム単位のフィルタを用いて、タイル復号画像のフィルタリング処理を実施することはない。
 タイルループフィルタ部107-m-nが、フレーム単位のフィルタを用いて、タイル復号画像のフィルタリング処理を実施する状況としては、例えば、符号化側が符号化並列フラグを出力する機能を使用せずに、フレームループフィルタ部108-mの機能を停止している状況などが考えられる(実施の形態1と類似の構成)。
 フレームループフィルタ部108-mは、並列処理切替部110-mからフレーム復号画像を受けると、並列処理切替部110-mから出力されたフィルタパラメータの符号化データからフレーム単位のフィルタを示すフィルタパラメータを復号し、フレーム単位のフィルタを用いて、そのフレーム復号画像に対するフィルタリング処理を実施する。
 タイル分割制御部109は、可変長符号分離部101により分離されたタイル分割制御情報からタイルの分割状態を把握し、元の入力画像に相当する復号画像が得られるように、並列処理終了部111における各タイル復号画像の配置を制御する処理を実施する。
 並列処理終了部111は、可変長符号分離部101により分離された符号化並列フラグが入力画像を分割して並列化する旨を示している場合において、可変長符号分離部101により分離されたフィルタパラメータ共有フラグ#MがOFFであれば、タイル分割制御部109の制御の下で、タイルループフィルタ部107-M-1~107-M-Nによるフィルタリング処理後のタイル復号画像を組み合わせてフレーム単位の復号画像を生成し、その復号画像を動き補償予測フレームメモリ103に格納する。
 また、符号化並列フラグが入力画像を分割して並列化する旨を示している場合において、そのフィルタパラメータ共有フラグ#MがONであれば、フレームループフィルタ部108-Mによるフィルタリング処理後のフレーム復号画像を動き補償予測フレームメモリ103に格納する。
 一方、符号化並列フラグが入力画像を分割して並列化しない旨を示している場合、フレームループフィルタ部108-Mによるフィルタリング処理後のフレーム復号画像を動き補償予測フレームメモリ103に格納する。
 以上で明らかなように、この実施の形態3によれば、入力画像を分割してタイル単位の並列化処理を行うか、並列化しないでフレーム単位で処理を行うかを切り替えられるとともに、ループフィルタ毎に、タイル単位のフィルタリング処理を行うか、フレーム単位のフィルタリング処理を行うかを切り替えられるように構成したので、異なる種類のループフィルタを多段に接続して、全体のフィルタ性能を高める場合でも、処理の高速化を図ることができる効果を奏する。
 なお、本願発明はその発明の範囲内において、各実施の形態の自由な組み合わせ、あるいは各実施の形態の任意の構成要素の変形、もしくは各実施の形態において任意の構成要素の省略が可能である。
 この発明に係る動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法は、タイル単位の局所復号画像を生成して、その局所復号画像に適するタイル単位のフィルタを決定し、そのタイルを用いて局所復号画像のフィルタリング処理を実施し、ループフィルタの処理をタイルレベルで並列に行うことができるようにしたため、画像を圧縮符号化して伝送する動画像符号化装置及び動画像符号化方法と、動画像符号化装置により伝送された符号化データから画像を復号する動画像復号装置及び動画像復号方法に適用することができる。
 1 符号化制御部(分割制御手段)、2 タイル分割制御部(タイル分配手段)、3 並列処理開始部(タイル分配手段)、4 動き補償予測フレームメモリ(画像メモリ)、5 タイル符号化装置、5-1~5-N タイル符号化部(タイル符号化手段)、6 ループフィルタ制御部(フレーム単位フィルタ決定手段)、7 タイルループフィルタ装置、7-1~7-N タイルループフィルタ部(タイルフィルタ手段)、8 並列処理終了部(局所復号画像格納手段)、9 可変長符号多重化部(多重化手段)、21 タイル符号化制御部、22 ブロック分割部、23 切換スイッチ、24 イントラ予測部、25 動き補償予測部、26 減算部、27 変換・量子化部、28 逆量子化・逆変換部、29 加算部、30 タイル局所復号画像メモリ、31 可変長符号化部、41 タイルループフィルタ制御部、42 ループフィルタ実施部、43 可変長符号化部、51 可変長符号分離部(分離手段)、52 並列処理開始部(符号化ビットデータ分配手段)、53 動き補償予測フレームメモリ(画像メモリ)、54 タイル復号装置、54-1~54-N タイル復号部(タイル復号手段)、55 フィルタパラメータ復号部、56 タイルループフィルタ装置、56-1~56-N タイルループフィルタ部(タイルフィルタ手段)、57 タイル分割制御部(復号画像格納手段)、58 並列処理終了部(復号画像格納手段)、61 可変長復号部、62 切換スイッチ、63 イントラ予測部、64 動き補償部、65 逆量子化・逆変換部、66 加算部、67 タイル復号画像メモリ、71 タイルフィルタパラメータ復号部、72 ループフィルタ実施部、81 符号化制御部(分割制御手段)、82 タイル分割制御部(タイル分配手段)、83 並列処理開始部(タイル分配手段)、84 動き補償予測フレームメモリ(画像メモリ)、85 タイル符号化装置、85-1~85-N タイル符号化部(タイル符号化手段)、86 フレーム符号化部(フレーム符号化手段)、87-1~87-M ループフィルタ制御部、88-1~87-M タイルループフィルタ装置、88-1-1~88-1-N,88-2-1~88-2-N,・・・,88-M-1~88-M-N タイルループフィルタ部(タイルフィルタ手段)、89-1~89-M フレームループフィルタ部(フレームフィルタ手段)、90-1~90-M 並列処理切替部、91 並列処理終了部(局所復号画像格納手段)、92 可変長符号多重化部(多重化手段)、101 可変長符号分離部(分離手段)、102 並列処理開始部(符号化ビットデータ分配手段)、103 動き補償予測フレームメモリ(画像メモリ)、104 タイル復号装置、104-1~104-N タイル復号部(タイル復号手段)、105 フレーム復号部(フレーム復号手段)、106-1~106-M フィルタパラメータ復号部、107-1~107-M タイルループフィルタ装置、107-1-1~107-1-N,107-2-1~107-2-N,・・・,107-M-1~107-M-N タイルループフィルタ部(タイルフィルタ手段)、108-1~108-M フレームループフィルタ部(フレームフィルタ手段)、109 タイル分割制御部(復号画像格納手段)、110-1~110-M 並列処理切替部、111 並列処理終了部(復号画像格納手段)。

Claims (10)

  1.  入力画像の分割状態を指示する分割制御情報を出力する分割制御手段と、上記分割制御手段から出力された分割制御情報にしたがって入力画像を所定サイズの矩形領域であるタイルに分割し、分割後のタイルを分配するタイル分配手段と、フィルタリング処理後の局所復号画像を記憶する画像メモリと、上記画像メモリに記憶された局所復号画像を参照して、上記タイル分配手段により分配されたタイルに対する予測差分符号化処理を実施し、その符号化結果である符号化ビットデータを出力するとともに、上記符号化ビットデータから局所復号画像を生成する1以上のタイル符号化手段と、上記タイル符号化手段により生成された局所復号画像のフィルタリング処理に対応したタイル単位のフィルタを決定し、上記フィルタを用いて、上記局所復号画像に対するフィルタリング処理を実施する1以上のタイルフィルタ手段と、上記分割制御手段から出力された分割制御情報にしたがって1以上のタイルフィルタ手段によるフィルタリング処理後の局所復号画像を組み合わせてフレーム単位の局所復号画像を生成し、上記局所復号画像を上記画像メモリに格納する局所復号画像格納手段と、上記タイル符号化手段から出力された符号化ビットデータ、上記タイルフィルタ手段により決定されたタイル単位のフィルタを示すフィルタパラメータ及び上記分割制御手段から出力された分割制御情報を多重化してビットストリームを生成する多重化手段とを備えた動画像符号化装置。
  2.  分割制御手段から、1以上のタイル符号化手段により生成された局所復号画像のフィルタリング処理に用いるフィルタを各タイルで共通させるか否かを示すフィルタ共有フラグが出力される場合において、上記フィルタ共有フラグが各タイルでフィルタを共通させる旨を示していれば、各タイルで共通であるフレーム単位のフィルタを決定するフレーム単位フィルタ決定手段を設け、
     1以上のタイルフィルタ手段は、上記フィルタ共有フラグが各タイルでフィルタを共通させない旨を示していれば、タイル単位のフィルタを用いて、上記タイル符号化手段により生成された局所復号画像に対するフィルタリング処理を実施し、上記フィルタ共有フラグが各タイルでフィルタを共通させる旨を示していれば、上記フレーム単位フィルタ決定手段により決定されたフレーム単位のフィルタを用いて、上記タイル符号化手段により生成された局所復号画像に対するフィルタリング処理を実施し、
     多重化手段は、上記分割制御手段から出力されたフィルタ共有フラグをビットストリームに多重化するとともに、上記フィルタ共有フラグが各タイルでフィルタを共通させない旨を示していれば、上記タイルフィルタ手段により決定されたタイル単位のフィルタを示すフィルタパラメータを多重化し、上記フィルタ共有フラグが各タイルでフィルタを共通させる旨を示していれば、上記フレーム単位フィルタ決定手段により決定されたフレーム単位のフィルタを示すフィルタパラメータを多重化する
     ことを特徴とする請求項1記載の動画像符号化装置。
  3.  入力画像の分割状態を指示する分割制御情報を出力するとともに、上記入力画像を分割するか否かを示す分割フラグを出力する分割制御手段と、上記分割制御手段から出力された分割フラグが分割する旨を示している場合、上記分割制御手段から出力された分割制御情報にしたがって入力画像を所定サイズの矩形領域であるタイルに分割して、分割後のタイルを分配し、上記分割フラグが分割しない旨を示している場合、上記入力画像を分割せずに出力するタイル分配手段と、フィルタリング処理後の局所復号画像を記憶する画像メモリと、上記画像メモリに記憶されている局所復号画像を参照して、上記タイル分配手段により分配されたタイルに対する予測差分符号化処理を実施し、その符号化結果である符号化ビットデータを出力するとともに、上記符号化ビットデータから局所復号画像を生成する1以上のタイル符号化手段と、上記画像メモリに記憶されている局所復号画像を参照して、上記タイル分配手段から出力された入力画像に対する予測差分符号化処理を実施し、その符号化結果である符号化ビットデータを出力するとともに、上記符号化ビットデータから局所復号画像を生成するフレーム符号化手段と、上記タイル符号化手段により生成された局所復号画像のフィルタリング処理に適するタイル単位のフィルタを決定し、上記フィルタを用いて、上記局所復号画像に対するフィルタリング処理を実施する1以上のタイルフィルタ手段と、上記フレーム符号化手段により生成された局所復号画像のフィルタリング処理に適するフレーム単位のフィルタを決定し、上記フィルタを用いて、上記局所復号画像に対するフィルタリング処理を実施するフレームフィルタ手段と、上記分割制御手段から出力された分割フラグが分割する旨を示している場合、上記分割制御手段から出力された分割制御情報にしたがって1以上のタイルフィルタ手段によるフィルタリング処理後の局所復号画像を組み合わせてフレーム単位の局所復号画像を生成して、上記局所復号画像を上記画像メモリに格納し、上記分割フラグが分割しない旨を示している場合、上記フレームフィルタ手段によるフィルタリング処理後の局所復号画像を上記画像メモリに格納する局所復号画像格納手段と、上記タイル符号化手段又は上記フレームフィルタ手段から出力された符号化ビットデータ、上記タイルフィルタ手段又は上記フレームフィルタ手段により決定されたフィルタを示すフィルタパラメータ、上記分割制御手段から出力された分割制御情報及び分割フラグを多重化してビットストリームを生成する多重化手段とを備えた動画像符号化装置。
  4.  分割制御手段は、タイルフィルタ手段及びフレームフィルタ手段が複数の種類のフィルタリング処理を実施する機能を備えている場合、フィルタリング処理の種類別に、当該フィルタリング処理に用いるフィルタを各タイルで共通させるか否かを示すフィルタ共有フラグを出力し、
     上記分割制御手段から出力された分割フラグが分割する旨を示している場合でも、上記分割制御手段から出力されたフィルタ共有フラグが或る種類のフィルタリング処理について、各タイルでフィルタを共通させる旨を示している場合、当該フィルタリング処理については、タイルフィルタ手段の代わりに、フレームフィルタ手段がフレーム単位のフィルタを用いて、局所復号画像に対するフィルタリング処理を実施し、
     多重化手段は、上記分割制御手段から出力されたフィルタリング処理の種類別のフィルタ共有フラグをビットストリームに多重化する
     ことを特徴とする請求項3記載の動画像符号化装置。
  5.  ビットストリームに多重化された符号化ビットデータ、所定サイズの矩形領域であるタイル単位のフィルタを示すフィルタパラメータ及び入力画像の分割状態を指示する分割制御情報を分離する分離手段と、上記分離手段により分離された分割制御情報にしたがって上記符号化ビットデータをタイル単位の符号化ビットデータに分割し、分割後の符号化ビットデータを分配する符号化ビットデータ分配手段と、フィルタリング処理後の復号画像を記憶する画像メモリと、上記画像メモリに記憶されている復号画像を参照して、上記符号化ビットデータ分配手段により分配された符号化ビットデータに対する予測差分復号処理を実施し、タイル単位の復号画像を生成する1以上のタイル復号手段と、上記分離手段により分離されたフィルタパラメータが示すタイル単位のフィルタを用いて、上記タイル復号手段により生成された復号画像に対するフィルタリング処理を実施する1以上のタイルフィルタ手段と、上記分離手段により分離された分割制御情報にしたがって1以上のタイルフィルタ手段によるフィルタリング処理後の復号画像を組み合わせてフレーム単位の復号画像を生成し、上記復号画像を上記画像メモリに格納する復号画像格納手段とを備えた動画像復号装置。
  6.  分離手段は、各タイルでフィルタを共通させるか否かを示すフィルタ共有フラグがビットストリームに多重化されている場合、上記フィルタ共有フラグを分離するとともに、タイル単位のフィルタを示すフィルタパラメータ又はフレーム単位のフィルタを示すフィルタパラメータを分離し、
     1以上のタイルフィルタ手段は、上記分離手段により分離されたフィルタ共有フラグが各タイルでフィルタを共通させない旨を示していれば、上記分離手段により分離されたフィルタパラメータが示すタイル単位のフィルタを用いて、上記タイル復号手段により生成されたタイル単位の復号画像に対するフィルタリング処理を実施し、上記フィルタ共有フラグが各タイルでフィルタを共通させる旨を示していれば、上記分離手段により分離されたフィルタパラメータが示すフレーム単位のフィルタを用いて、上記タイル復号手段により生成されたタイル単位の復号画像に対するフィルタリング処理を実施する
     ことを特徴とする請求項5記載の動画像復号装置。
  7.  ビットストリームに多重化された符号化ビットデータ、タイル単位のフィルタを示すフィルタパラメータ又はフレーム単位のフィルタを示すフィルタパラメータ、入力画像の分割状態を指示する分割制御情報及び入力画像を分割するか否かを示す分割フラグを分離する分離手段と、上記分離手段により分離された分割フラグが分割する旨を示している場合、上記分離手段により分離された分割制御情報にしたがって上記符号化ビットデータをタイル単位の符号化ビットデータに分割して、分割後の符号化ビットデータを分配し、上記分割フラグが分割しない旨を示している場合、上記分離手段により分離された符号化ビットデータを分割せずにフレーム単位の符号化ビットデータを出力する符号化ビットデータ分配手段と、フィルタリング処理後の復号画像を記憶する画像メモリと、上記画像メモリに記憶された復号画像を参照して、上記符号化ビットデータ分配手段により分配されたタイル単位の符号化ビットデータに対する予測差分復号処理を実施し、タイル単位の復号画像を生成する1以上のタイル復号手段と、上記画像メモリに記憶された復号画像を参照して、上記分離手段から出力されたフレーム単位の符号化ビットデータに対する予測差分復号処理を実施し、フレーム単位の復号画像を生成するフレーム復号手段と、上記分離手段により分離されたフィルタパラメータが示すタイル単位のフィルタを用いて、上記タイル復号手段により生成された復号画像に対するフィルタリング処理を実施する1以上のタイルフィルタ手段と、上記分離手段により分離されたフィルタパラメータが示すフレーム単位のフィルタを用いて、上記フレーム復号手段により生成された復号画像に対するフィルタリング処理を実施するフレームフィルタ手段と、上記分離手段により分離された分割フラグが分割する旨を示している場合、上記分離手段により分離された分割制御情報にしたがって1以上のタイルフィルタ手段によるフィルタリング処理後の復号画像を組み合わせてフレーム単位の復号画像を生成して、上記復号画像を上記画像メモリに格納し、上記分割フラグが分割しない旨を示している場合、上記フレームフィルタ手段によるフィルタリング処理後の復号画像を上記画像メモリに格納する復号画像格納手段とを備えた動画像復号装置。
  8.  分離手段は、タイルフィルタ手段及びフレームフィルタ手段が複数の種類のフィルタリング処理を実施する機能を備えている場合、ビットストリームから各タイルでフィルタを共通させるか否かを示すフィルタリング処理の種類別のフィルタ共有フラグを分離し、
     上記分離手段により分離された分割フラグが分割する旨を示している場合でも、上記分離手段により分離されたフィルタ共有フラグが或る種類のフィルタリング処理について、各タイルでフィルタを共通させる旨を示している場合、当該フィルタリング処理については、タイルフィルタ手段の代わりに、フレームフィルタ手段がフレーム単位のフィルタを用いて、フレーム復号手段により生成された復号画像に対するフィルタリング処理を実施する
     ことを特徴とする請求項7記載の動画像復号装置。
  9.  分割制御手段が、入力画像の分割状態を指示する分割制御情報を出力する分割制御処理ステップと、タイル分配手段が、上記分割制御処理ステップで出力された分割制御情報にしたがって入力画像を所定サイズの矩形領域であるタイルに分割し、分割後のタイルを分配するタイル分配処理ステップと、1以上のタイル符号化手段が、画像メモリに記憶されたフィルタリング処理後の局所復号画像を参照して、上記タイル分配処理ステップで分配されたタイルに対する予測差分符号化処理を実施し、その符号化結果である符号化ビットデータを出力するとともに、上記符号化ビットデータから局所復号画像を生成するタイル符号化処理ステップと、1以上のタイルフィルタ手段が、上記タイル符号化処理ステップで生成された局所復号画像のフィルタリング処理に対応したタイル単位のフィルタを決定し、上記フィルタを用いて、上記局所復号画像に対するフィルタリング処理を実施するタイルフィルタ処理ステップと、局所復号画像格納手段が、上記分割制御処理ステップで出力された分割制御情報にしたがって上記タイルフィルタ処理ステップでのフィルタリング処理後の局所復号画像を組み合わせてフレーム単位の局所復号画像を生成し、上記局所復号画像を上記画像メモリに格納する局所復号画像格納処理ステップと、多重化手段が、上記タイル符号化処理ステップで出力された符号化ビットデータ、上記タイルフィルタ処理ステップで決定されたタイル単位のフィルタを示すフィルタパラメータ及び上記分割制御処理ステップで出力された分割制御情報を多重化してビットストリームを生成する多重化処理ステップとを備えた動画像符号化方法。
  10.  分離手段が、ビットストリームに多重化された符号化ビットデータ、所定サイズの矩形領域であるタイル単位のフィルタを示すフィルタパラメータ及び入力画像の分割状態を指示する分割制御情報を分離する分離処理ステップと、符号化ビットデータ分配手段が、上記分離処理ステップで分離された分割制御情報にしたがって上記符号化ビットデータをタイル単位の符号化ビットデータに分割し、分割後の符号化ビットデータを分配する符号化ビットデータ分配処理ステップと、1以上のタイル復号手段が、画像メモリに記憶されているフィルタリング処理後の復号画像を参照して、上記符号化ビットデータ分配処理ステップで分配された符号化ビットデータに対する予測差分復号処理を実施し、タイル単位の復号画像を生成するタイル復号処理ステップと、1以上のタイルフィルタ手段が、上記分離処理ステップで分離されたフィルタパラメータが示すタイル単位のフィルタを用いて、上記タイル復号処理ステップで生成された復号画像に対するフィルタリング処理を実施するタイルフィルタ処理ステップと、復号画像格納手段が、上記分離処理ステップで分離された分割制御情報にしたがって上記タイルフィルタ処理ステップでのフィルタリング処理後の復号画像を組み合わせてフレーム単位の復号画像を生成し、上記復号画像を上記画像メモリに格納する復号画像格納処理ステップとを備えた動画像復号方法。
PCT/JP2012/078012 2011-10-31 2012-10-30 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 WO2013065673A1 (ja)

Priority Applications (12)

Application Number Priority Date Filing Date Title
IN2948CHN2014 IN2014CN02948A (ja) 2011-10-31 2012-10-30
KR1020167007203A KR101893664B1 (ko) 2011-10-31 2012-10-30 동화상 복호 장치
EP12845564.9A EP2775715A4 (en) 2011-10-31 2012-10-30 DEVICES AND METHODS FOR ENCODING AND DECODING MOVING IMAGES
BR112014009569-8A BR112014009569B1 (pt) 2011-10-31 2012-10-30 Dispositivo e método de decodificação de vídeo
KR1020147014571A KR20140092862A (ko) 2011-10-31 2012-10-30 동화상 복호 장치 및 동화상 복호 방법
KR1020207023042A KR102272561B1 (ko) 2011-10-31 2012-10-30 동화상 복호 장치
KR1020187024061A KR102145782B1 (ko) 2011-10-31 2012-10-30 동화상 부호화 장치, 동화상 부호화 방법 및 컴퓨터 독취 가능한 기억 매체
CN201280053518.0A CN103907348A (zh) 2011-10-31 2012-10-30 运动图像编码装置、运动图像解码装置、运动图像编码方法以及运动图像解码方法
US14/350,732 US9986235B2 (en) 2011-10-31 2012-10-30 Video decoding device and video decoding method
US15/880,260 US10523935B2 (en) 2011-10-31 2018-01-25 Video decoding device and video decoding method
US16/688,475 US10708586B2 (en) 2011-10-31 2019-11-19 Video decoding device and video decoding method
US16/890,468 US11051014B2 (en) 2011-10-31 2020-06-02 Video decoding device and video decoding method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2011239105 2011-10-31
JP2011-239105 2011-10-31

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US14/350,732 A-371-Of-International US9986235B2 (en) 2011-10-31 2012-10-30 Video decoding device and video decoding method
US15/880,260 Division US10523935B2 (en) 2011-10-31 2018-01-25 Video decoding device and video decoding method

Publications (1)

Publication Number Publication Date
WO2013065673A1 true WO2013065673A1 (ja) 2013-05-10

Family

ID=48192020

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/078012 WO2013065673A1 (ja) 2011-10-31 2012-10-30 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法

Country Status (8)

Country Link
US (4) US9986235B2 (ja)
EP (1) EP2775715A4 (ja)
JP (2) JPWO2013065673A1 (ja)
KR (4) KR102145782B1 (ja)
CN (1) CN103907348A (ja)
BR (1) BR112014009569B1 (ja)
IN (1) IN2014CN02948A (ja)
WO (1) WO2013065673A1 (ja)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015040824A1 (ja) * 2013-09-20 2015-03-26 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 送信方法、受信方法、送信装置及び受信装置
JP2015061316A (ja) * 2013-09-20 2015-03-30 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 送信方法、受信方法、送信装置及び受信装置
JPWO2013111593A1 (ja) * 2012-01-27 2015-05-11 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 画像符号化方法、画像復号方法、画像符号化装置及び画像復号装置
WO2015185742A1 (en) * 2014-06-05 2015-12-10 France Brevets System for video sequence coding using enlarged coding zones
WO2015194394A1 (ja) * 2014-06-20 2015-12-23 ソニー株式会社 画像符号化装置および方法、並びに画像復号装置および方法
JP2016529789A (ja) * 2013-07-15 2016-09-23 ソニー株式会社 インタラクティビティのための動き制約タイルセットseiメッセージの拡張
WO2018061589A1 (ja) * 2016-09-27 2018-04-05 株式会社ドワンゴ 画像符号化装置、画像符号化方法、及び画像符号化プログラム、並びに、画像復号装置、画像復号方法、及び画像復号プログラム
JP2022515946A (ja) * 2019-11-28 2022-02-24 ウキョン インフォメーション テクノロジー カンパニー リミテッド 並列フォレンジックマーキング装置及び方法
US20220329871A1 (en) * 2019-09-20 2022-10-13 Nokia Technologies Oy An Apparatus, A Method and a Computer Program for Volumetric Video
US12047604B2 (en) 2019-03-19 2024-07-23 Nokia Technologies Oy Apparatus, a method and a computer program for volumetric video

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101907122B1 (ko) * 2009-07-07 2018-10-12 톰슨 라이센싱 영역 기반 필터에 대해서 협력적 분할 부호화하는 방법 및 장치
CN103718553B (zh) * 2011-08-11 2017-03-01 太阳专利托管公司 图像编码方法、图像解码方法、图像编码装置、图像解码装置及图像编码解码装置
JP6080405B2 (ja) * 2012-06-29 2017-02-15 キヤノン株式会社 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム
US9241163B2 (en) * 2013-03-15 2016-01-19 Intersil Americas LLC VC-2 decoding using parallel decoding paths
US20150003520A1 (en) * 2013-06-26 2015-01-01 Texas Instruments Incorporated Hevc video encoder and decoder for multi-core
KR102571062B1 (ko) * 2016-05-10 2023-08-25 삼성전자주식회사 영상을 부호화/복호화 하는 방법 및 그 장치
JP2018107500A (ja) * 2016-12-22 2018-07-05 キヤノン株式会社 符号化装置、符号化方法及びプログラム、復号装置、復号方法及びプログラム
KR101895294B1 (ko) * 2017-03-03 2018-09-05 주식회사 칩스앤미디어 프리 스캔을 이용한 블록 기반 동영상 복호화 방법 및 그 장치
EP3606077A4 (en) 2017-03-22 2021-01-06 Industry - University Cooperation Foundation Hanyang University LOOP FILTERING PROCESS ACCORDING TO AN ADAPTIVE PIXEL CLASSIFICATION STANDARD
WO2019009590A1 (ko) * 2017-07-03 2019-01-10 김기백 추가 영역을 포함하는 분할 단위를 이용한 영상 복호화 방법 및 장치
CN116248863A (zh) 2017-07-03 2023-06-09 汉阳大学校产学协力团 利用包含追加区域的分割单位的影像解码方法以及装置
US11044490B2 (en) * 2017-09-28 2021-06-22 Sharp Kabushiki Kaisha Motion compensation filter apparatus, image decoding apparatus, and video coding apparatus
CN107846263B (zh) * 2017-11-01 2020-07-14 南京莱斯电子设备有限公司 一种基于分段计算的信源二进制算术编码方法和编码系统
CN109076224B (zh) * 2017-12-29 2021-05-07 深圳市大疆创新科技有限公司 视频解码器及其制造方法,数据处理电路、系统和方法
US10491897B2 (en) * 2018-04-13 2019-11-26 Google Llc Spatially adaptive quantization-aware deblocking filter
WO2019243534A1 (en) 2018-06-21 2019-12-26 Telefonaktiebolaget Lm Ericsson (Publ) Tile shuffling for 360 degree video decoding
CN118590646A (zh) * 2018-06-21 2024-09-03 瑞典爱立信有限公司 灵活图块分区
CN112640455B (zh) 2018-06-21 2024-06-14 瑞典爱立信有限公司 视频编码中具有子图块的图块分区
TWI692939B (zh) * 2018-08-14 2020-05-01 鈺創科技股份有限公司 過濾訊號的數位濾波器
KR102432406B1 (ko) * 2018-09-05 2022-08-12 엘지전자 주식회사 비디오 신호의 부호화/복호화 방법 및 이를 위한 장치
US11064194B2 (en) * 2019-10-31 2021-07-13 Western Digital Technologies, Inc. Encoding digital videos using controllers of data storage devices
US12058335B2 (en) 2019-11-22 2024-08-06 Lg Electronics Inc. Image coding method based on entry point-related information in video or image coding system
CN114930814A (zh) 2019-12-24 2022-08-19 韩国电子通信研究院 图像编码/解码方法以及装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7330596B2 (en) * 2002-07-17 2008-02-12 Ricoh Company, Ltd. Image decoding technique for suppressing tile boundary distortion
US8254707B2 (en) * 2005-12-07 2012-08-28 Sony Corporation Encoding device, encoding method, encoding program, decoding device, decoding method, and decoding program in interlace scanning
JP2007251553A (ja) * 2006-03-15 2007-09-27 Matsushita Electric Ind Co Ltd リアルタイム処理装置及びその方法
JP4956550B2 (ja) * 2006-11-30 2012-06-20 株式会社エヌ・ティ・ティ・ドコモ 動画像符号化装置、動画像符号化方法、動画像符号化プログラム、動画像復号化装置、動画像復号化方法及び動画像復号化プログラム
US8019167B2 (en) * 2007-01-03 2011-09-13 Human Monitoring Ltd. Compressing high resolution images in a low resolution video
WO2008120577A1 (ja) * 2007-03-29 2008-10-09 Kabushiki Kaisha Toshiba 画像符号化及び復号化の方法及び装置
EP2252063A4 (en) * 2008-03-07 2012-09-12 Toshiba Kk DEVICE FOR DYNAMIC IMAGE CODING / DECODING
JP4539755B2 (ja) * 2008-04-11 2010-09-08 ソニー株式会社 情報処理システム及び情報処理方法、並びにプログラム
US20100225655A1 (en) * 2009-03-06 2010-09-09 Microsoft Corporation Concurrent Encoding/Decoding of Tiled Data
JP5344238B2 (ja) 2009-07-31 2013-11-20 ソニー株式会社 画像符号化装置および方法、記録媒体、並びにプログラム
US8767824B2 (en) 2011-07-11 2014-07-01 Sharp Kabushiki Kaisha Video decoder parallelization for tiles
US8913656B2 (en) * 2011-10-14 2014-12-16 Mediatek Inc. Method and apparatus for in-loop filtering
US9584819B2 (en) * 2011-10-24 2017-02-28 Qualcomm Incorporated Grouping of tiles for video coding
US20130107973A1 (en) * 2011-10-28 2013-05-02 Qualcomm Incorporated Loop filtering control over tile boundaries

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
ARILD FULDSETH ET AL.: "Tiles", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11 5TH MEETING, 16 March 2011 (2011-03-16), GENEVA, CH, XP030048513 *
ARILD FULDSETH; MICHAEL HOROWITZ; SHILIN XU; ANDREW SEGALL; MINHUA ZHOU: "JCTVC-F335: Tiles", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16WP3 AND ISO/IEC JTC1/SC29/WG11 6TH MEETING: TORINO, IT, 14 July 2011 (2011-07-14)
See also references of EP2775715A4
TOMOO YAMAKAGE ET AL.: "CE12: Deblocking filter parameter adjustment in slice level", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11 6TH MEETING, 14 July 2011 (2011-07-14), TORINO, XP055147612 *

Cited By (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9774870B2 (en) 2012-01-27 2017-09-26 Sun Patent Trust Encoding method, decoding method, encoding apparatus, and decoding apparatus
US11375210B2 (en) 2012-01-27 2022-06-28 Sun Patent Trust Encoding method, decoding method, encoding apparatus, and decoding apparatus
JPWO2013111593A1 (ja) * 2012-01-27 2015-05-11 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 画像符号化方法、画像復号方法、画像符号化装置及び画像復号装置
US10701372B2 (en) 2012-01-27 2020-06-30 Sun Patent Trust Encoding method, decoding method, encoding apparatus, and decoding apparatus
US11765364B2 (en) 2012-01-27 2023-09-19 Sun Patent Trust Encoding method, decoding method, encoding apparatus, and decoding apparatus
US12101491B2 (en) 2012-01-27 2024-09-24 Sun Patent Trust Encoding method, decoding method, encoding apparatus, and decoding apparatus
US10212431B2 (en) 2012-01-27 2019-02-19 Sun Patent Trust Encoding method, decoding method, encoding apparatus, and decoding apparatus
JP2017055433A (ja) * 2012-01-27 2017-03-16 サン パテント トラスト 復号方法及び復号装置
US10368078B2 (en) 2013-07-15 2019-07-30 Sony Corporation Extensions of motion-constrained tile sets SEI message for interactivity
JP2016529789A (ja) * 2013-07-15 2016-09-23 ソニー株式会社 インタラクティビティのための動き制約タイルセットseiメッセージの拡張
US10841592B2 (en) 2013-07-15 2020-11-17 Sony Corporation Extensions of motion-constrained tile sets sei message for interactivity
US11553190B2 (en) 2013-07-15 2023-01-10 Sony Corporation Extensions of motion-constrained tile sets SEI message for interactivity
US12010395B2 (en) 2013-09-20 2024-06-11 Panasonic Intellectual Property Corporation Of America Transmission method, reception method, transmitting apparatus, and receiving apparatus
WO2015040824A1 (ja) * 2013-09-20 2015-03-26 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 送信方法、受信方法、送信装置及び受信装置
CN109905748A (zh) * 2013-09-20 2019-06-18 松下电器(美国)知识产权公司 图像编码方法及装置、图像解码方法及装置
CN109905748B (zh) * 2013-09-20 2022-05-10 松下电器(美国)知识产权公司 图像编码方法及装置、图像解码方法及装置
US10499113B2 (en) 2013-09-20 2019-12-03 Panasonic Intellectual Property Corporation Of America Transmission method, reception method, transmitting apparatus, and receiving apparatus
JP2018057011A (ja) * 2013-09-20 2018-04-05 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 送信方法、受信方法、送信装置及び受信装置
JP2015061316A (ja) * 2013-09-20 2015-03-30 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 送信方法、受信方法、送信装置及び受信装置
JP6271074B1 (ja) * 2013-09-20 2018-01-31 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 送信方法、受信方法、送信装置及び受信装置
FR3022063A1 (fr) * 2014-06-05 2015-12-11 France Brevets Systeme de codage de sequence video utilisant des zones de codage elargies
WO2015185742A1 (en) * 2014-06-05 2015-12-10 France Brevets System for video sequence coding using enlarged coding zones
JPWO2015194394A1 (ja) * 2014-06-20 2017-04-20 ソニー株式会社 画像符号化装置および方法、並びに画像復号装置および方法
US11095879B2 (en) 2014-06-20 2021-08-17 Sony Corporation Image encoding device and method, and image decoding device and method
JP2020174400A (ja) * 2014-06-20 2020-10-22 ソニー株式会社 画像復号装置および方法
US10701354B2 (en) 2014-06-20 2020-06-30 Sony Corporation Image encoding device and method, and image decoding device and method
US11627309B2 (en) 2014-06-20 2023-04-11 Sony Group Corporation Image encoding device and method, and image decoding device and method
JP2019195209A (ja) * 2014-06-20 2019-11-07 ソニー株式会社 画像復号装置および方法
US12063357B2 (en) 2014-06-20 2024-08-13 Sony Group Corporation Image encoding device and method, and image decoding device and method
WO2015194394A1 (ja) * 2014-06-20 2015-12-23 ソニー株式会社 画像符号化装置および方法、並びに画像復号装置および方法
WO2018061589A1 (ja) * 2016-09-27 2018-04-05 株式会社ドワンゴ 画像符号化装置、画像符号化方法、及び画像符号化プログラム、並びに、画像復号装置、画像復号方法、及び画像復号プログラム
US12047604B2 (en) 2019-03-19 2024-07-23 Nokia Technologies Oy Apparatus, a method and a computer program for volumetric video
US20220329871A1 (en) * 2019-09-20 2022-10-13 Nokia Technologies Oy An Apparatus, A Method and a Computer Program for Volumetric Video
US12069314B2 (en) * 2019-09-20 2024-08-20 Nokia Technologies Oy Apparatus, a method and a computer program for volumetric video
JP2022515946A (ja) * 2019-11-28 2022-02-24 ウキョン インフォメーション テクノロジー カンパニー リミテッド 並列フォレンジックマーキング装置及び方法

Also Published As

Publication number Publication date
KR102145782B1 (ko) 2020-08-19
BR112014009569A2 (pt) 2017-04-18
US20140247875A1 (en) 2014-09-04
US11051014B2 (en) 2021-06-29
US20180152702A1 (en) 2018-05-31
JPWO2013065673A1 (ja) 2015-04-02
KR102272561B1 (ko) 2021-07-02
US10708586B2 (en) 2020-07-07
BR112014009569B1 (pt) 2022-07-05
US10523935B2 (en) 2019-12-31
KR20140092862A (ko) 2014-07-24
KR20160038062A (ko) 2016-04-06
JP2016029821A (ja) 2016-03-03
KR101893664B1 (ko) 2018-08-30
EP2775715A4 (en) 2015-09-23
IN2014CN02948A (ja) 2015-07-03
KR20200097817A (ko) 2020-08-19
US20200296361A1 (en) 2020-09-17
KR20180097775A (ko) 2018-08-31
CN103907348A (zh) 2014-07-02
US9986235B2 (en) 2018-05-29
EP2775715A1 (en) 2014-09-10
US20200092549A1 (en) 2020-03-19

Similar Documents

Publication Publication Date Title
WO2013065673A1 (ja) 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法
JP6615287B2 (ja) 画像復号装置
KR101728285B1 (ko) 화상 부호화 장치, 화상 부호화 방법, 화상 복호 장치, 화상 복호 방법 및 기억 매체
KR101914018B1 (ko) 동화상 복호 장치, 동화상 복호 방법, 동화상 부호화 장치, 동화상 부호화 방법 및 기록 매체
KR102024516B1 (ko) 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법, 화상 복호 방법 및 기억 매체
EP2685720B1 (en) Video encoding device, video decoding device, video encoding method, and video decoding method
WO2013065402A1 (ja) 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法
KR101538248B1 (ko) 화상 부호화 장치
JPWO2015034061A1 (ja) 動画像符号化装置、動画像トランスコード装置、動画像符号化方法、動画像トランスコード方法及び動画像ストリーム伝送システム
JP2012080213A (ja) 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法
JP2014197795A (ja) 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法

Legal Events

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

Ref document number: 12845564

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2013541779

Country of ref document: JP

Kind code of ref document: A

REEP Request for entry into the european phase

Ref document number: 2012845564

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2012845564

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 14350732

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 20147014571

Country of ref document: KR

Kind code of ref document: A

REG Reference to national code

Ref country code: BR

Ref legal event code: B01A

Ref document number: 112014009569

Country of ref document: BR

ENP Entry into the national phase

Ref document number: 112014009569

Country of ref document: BR

Kind code of ref document: A2

Effective date: 20140417