WO2012153771A1 - 画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法及び画像復号プログラム - Google Patents

画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法及び画像復号プログラム Download PDF

Info

Publication number
WO2012153771A1
WO2012153771A1 PCT/JP2012/061896 JP2012061896W WO2012153771A1 WO 2012153771 A1 WO2012153771 A1 WO 2012153771A1 JP 2012061896 W JP2012061896 W JP 2012061896W WO 2012153771 A1 WO2012153771 A1 WO 2012153771A1
Authority
WO
WIPO (PCT)
Prior art keywords
block
image
unit
pattern
pixel
Prior art date
Application number
PCT/JP2012/061896
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
Application filed by シャープ株式会社 filed Critical シャープ株式会社
Publication of WO2012153771A1 publication Critical patent/WO2012153771A1/ja

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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding

Definitions

  • the present invention relates to an image encoding device, an image encoding method, an image encoding program, an image decoding device, an image decoding method, and an image decoding program.
  • Texture image texture map; sometimes referred to as “reference image”, “planar image”, or “color image” means the color and density (“brightness”) of the subject and background contained in the subject space Is an image signal composed of signal values for each pixel of an image arranged on a two-dimensional plane.
  • a distance image (sometimes referred to as a “depth map”) is a signal value corresponding to the distance from the viewpoint (imaging device, etc.) of the subject and background viewpoint pixels contained in the three-dimensional subject space. (It may be called “depth value” or “depth value”), and is an image signal composed of signal values for each pixel arranged in a two-dimensional plane.
  • the pixels constituting the distance image correspond to the pixels constituting the texture image.
  • Distance images are often used together with texture images corresponding to them, and have been encoded independently of texture images.
  • an image block including an image of a moving subject is detected, and the subject is detected from a plurality of patterns determined in advance in the detected image block.
  • a pattern corresponding to a region including an image is selected.
  • one image block (macroblock) is divided into sub-blocks having a smaller number of pixels.
  • the image is classified into sub-blocks that include moving subject images and sub-blocks that do not include such images.
  • Non-Patent Document 1 a code indicating the selected pattern is used as an encoded output.
  • Non-Patent Document 3 a code indicating a motion vector corresponding to each of the further divided sub-blocks is used as an encoded output. For this reason, the encoding methods described in Non-Patent Documents 1-3 have a problem in that the efficiency is lowered.
  • the present invention has been made in view of the above points, and is an image encoding device, an image encoding method, an image encoding program, an image decoding device, an image decoding method, and an image that can encode or decode a texture image with high efficiency.
  • a decryption program is provided.
  • the present invention has been made to solve the above problems, and one aspect of the present invention is an image encoding apparatus that encodes a texture image composed of luminance values for each pixel for each block.
  • a screen storage unit that stores a texture image encoded as a reference image, a pixel that takes a first signal value, and a pixel that takes a second signal value, and the distribution of pixels that take the first signal value differs
  • a code book for storing a plurality of pattern blocks; a pattern determination unit for selecting a pattern block from the code book based on a block of a distance image including a depth value for each pixel representing a distance from a viewpoint to a subject; and the pattern determination.
  • a motion region for performing motion prediction on the block of the texture image based on the pattern block selected by the unit and the reference image read from the screen storage unit.
  • An image coding apparatus characterized in that it comprises a prediction unit.
  • Another aspect of the present invention is the above-described image encoding device, wherein the motion region prediction unit is located at the same position as the pixel that takes the first signal value in the pattern block selected by the pattern determination unit. It is characterized by performing motion prediction on a pixel.
  • the image encoding apparatus described above and a reference image block obtained by reading out a motion area, which is an area representing an image of a moving subject from the texture image block, from the screen storage unit. Based on the distribution of pixels that take the first signal value of the pattern block selected by the pattern determination unit, the motion region determined by the motion region determination unit, the motion region determined by the motion region determination unit It is characterized by comprising a motion prediction determining unit that determines whether or not to make the prediction unit perform motion prediction.
  • the pattern determination unit is configured to detect a pixel whose depth value for each pixel included in the block of the distance image exceeds a preset threshold value.
  • the pattern block is selected based on a distribution and a distribution of pixels having the first signal value.
  • Another aspect of the present invention includes a screen storage unit that stores a texture image encoded in the past as a reference image, a pixel that takes a first signal value, and a pixel that takes a second signal value
  • An image encoding method in an image encoding apparatus comprising: a code book for storing a plurality of pattern blocks having different distributions of pixels taking a first signal value, and encoding a texture image having luminance values for each pixel for each block.
  • the image encoding device includes: a first step of selecting a pattern block from the code book based on a block of a distance image including a depth value for each pixel representing a distance from a viewpoint to a subject; and the image encoding device. Performs motion prediction on the texture image block based on the selected pattern block and the reference image read from the screen storage unit.
  • An image encoding method characterized by having a process.
  • Another aspect of the present invention includes a screen storage unit that stores a texture image encoded in the past as a reference image, a pixel that takes a first signal value, and a pixel that takes a second signal value
  • a computer comprising a code book for storing a plurality of pattern blocks having different distributions of pixels taking a first signal value, and comprising an image encoding device for encoding a texture image composed of luminance values for each pixel for each block;
  • An image encoding program for executing a procedure for performing motion prediction on a block of the texture image.
  • an image decoding apparatus that decodes a texture image including luminance values for each pixel for each block, a screen storage unit that stores a texture image decoded in the past as a reference image, A codebook that stores a plurality of pattern blocks each having a distribution of pixels having the first signal value, and a distance from the viewpoint to the subject.
  • a pattern determining unit that selects a pattern block from the code book based on a block of a distance image that includes a depth value for each pixel to be represented, a pattern block selected by the pattern determining unit, and a reference image read from the screen storage unit
  • An image decoding apparatus comprising: a motion region prediction unit that performs motion prediction on the texture image block.
  • Another aspect of the present invention is the image decoding device described above, wherein the motion region prediction unit is a pixel at the same position as a pixel that takes a first signal value in the pattern block selected by the pattern determination unit It is characterized in that motion prediction is performed on
  • Another aspect of the present invention is the above-described image decoding device, wherein the pattern determination unit distributes pixels whose depth value for each pixel included in the block of the distance image exceeds a preset threshold value.
  • the pattern block is selected based on the distribution of pixels having the first signal value.
  • Another aspect of the present invention includes a screen storage unit that stores a previously decoded texture image as a reference image, a pixel that takes a first signal value, and a pixel that takes a second signal value.
  • An image decoding method in an image decoding apparatus comprising: a codebook storing a plurality of pattern blocks having different pixel distributions having a signal value of 1; and decoding a texture image composed of luminance values for each pixel for each block.
  • Another aspect of the present invention includes a screen storage unit that stores a previously decoded texture image as a reference image, a pixel that takes a first signal value, and a pixel that takes a second signal value. And a codebook storing a plurality of pattern blocks having different distributions of pixels having a signal value of 1, and a computer having an image decoding apparatus that decodes a texture image composed of luminance values for each pixel for each block from a viewpoint.
  • a texture image can be encoded or decoded with high efficiency.
  • FIG. 1 is a schematic diagram illustrating a three-dimensional image capturing system according to the present embodiment.
  • This image capturing system includes an image capturing device 31, an image capturing device 32, an image pre-processing unit 41, and an image encoding device 1.
  • the imaging device 31 and the imaging device 32 are set at different positions (viewpoints) and take images of subjects included in the same visual field at predetermined time intervals.
  • the imaging device 31 and the imaging device 32 output the captured images to the image preprocessing unit 41, respectively.
  • the image pre-processing unit 41 determines an image input from one of the imaging device 31 and the imaging device 32, for example, the imaging device 31, as a texture image.
  • the image preprocessing unit 41 calculates the parallax between the texture image and the image input from the other imaging device 32 for each pixel, and generates a distance image based on the calculated parallax.
  • a depth value representing the distance from the viewpoint to the subject is determined for each pixel.
  • MPEG Moving Picture Experts Group
  • ISO / IEC International Electrotechnical Commission
  • the distance image represents light and shade using the depth value for each pixel. Further, the closer the distance from the viewpoint to the subject, the greater the depth value, and thus a higher-brightness (brighter) image is configured.
  • the image preprocessing unit 41 outputs the texture image and the generated distance image to the image encoding device 1.
  • the number of imaging devices provided in the image capturing system is not limited to two, and may be three or more.
  • the texture image and the distance image input to the image encoding device 1 may not be based on images captured by the imaging device 31 and the imaging device 32, and may be images synthesized in advance.
  • FIG. 2 is a schematic diagram illustrating a configuration of the image encoding device 1 according to the present embodiment.
  • the image encoding apparatus 1 includes a texture image input unit 100, a screen storage unit 101, a code book 102, a type determination unit 103, a switch 1041, a switch 1042, a switch 1043, a switch 1044, a motion prediction unit 105, a motion region prediction unit 106, Intra-screen prediction unit 107, subtraction unit 108, arrangement unit 109, encoding control unit 110, DCT unit 111, inverse DCT unit 112, inverse arrangement unit 113, addition unit 114, variable length encoding unit 115, and distance image encoding unit 12 is comprised.
  • the texture image input unit 100 receives a texture image from the outside of the image encoding device 1 for each frame, and extracts a block (texture image block) from the input texture image.
  • the texture image input unit 100 outputs the extracted texture image block to the type determination unit 103, the motion prediction unit 105, the motion region prediction unit 106, the in-screen prediction unit 107, the subtraction unit 108, and the encoding control unit 110.
  • the texture image block includes a predetermined number of pixels (for example, 16 pixels in the horizontal direction ⁇ 16 pixels in the vertical direction).
  • the texture image input unit 100 shifts the position of the block from which the texture image block is extracted in the raster scan order so that the blocks do not overlap. That is, the texture image input unit 100 sequentially moves the block from which the texture image block is extracted from the upper left end of the frame to the right by the number of pixels in the horizontal direction. After the right end of the block from which the texture image block is extracted reaches the right end of the frame, the texture image input unit 100 moves the block downward by the number of pixels in the vertical direction and to the left end of the frame. The texture image input unit 100 moves the block from which the texture image block is extracted in this way until it reaches the lower right of the frame.
  • the screen storage unit 101 arranges the reference image block input from the adding unit 114 at the position of the block in the corresponding frame and stores it as a reference image.
  • This reference image block is an image block obtained by encoding a texture image block in the past.
  • An image signal of a frame configured by arranging reference image blocks in this way is referred to as a reference image.
  • the screen storage unit 101 stores a reference image of a past frame for a preset number of frames (for example, 5 frames) from the present, and deletes a reference image of a past frame before that.
  • the code book 102 stores a plurality of pattern blocks and an array pattern in association with each pattern block.
  • the pattern block is a data block including the same number of pixels as the texture image block, and the signal value corresponding to a part of the pixels is a predetermined first signal value (for example, 1), The signal values corresponding to the other pixels are different from the signal value 1 (for example, 0).
  • the pattern blocks stored in the code book 102 have different pixel areas occupied by signal value 1 or signal value 0.
  • FIG. 3 is a conceptual diagram illustrating an example of a pattern block according to the present embodiment.
  • FIG. 3 shows eight pattern blocks 301-308.
  • Each pattern block includes 256 pixels (16 pixels in the horizontal direction ⁇ 16 pixels in the vertical direction), the white portion indicates the portion occupied by the pixel (64 pixels) indicating the signal value 1, and the solid portion indicates the signal value 0.
  • a portion occupied by the illustrated pixel (192 pixels) is shown.
  • the pixels on the left four columns take a signal value 1, and the pixels on the right 12 columns take a signal value 0.
  • the pixels in the left 12 columns take a signal value 0 and the pixels in the right 4 columns take a signal value 1.
  • the pixels in the upper four rows take a signal value of 1 and the pixels in the lower 12 rows take a signal value of 0.
  • the pixels in the upper 12 rows have a signal value of 0, and pixels in the lower 4 rows have a signal value of 1.
  • pixels below the line crossing the eighth line from the lower left end to the lower right end take a signal value of 1, and pixels above the line take a signal value of 0.
  • pixels below the line crossing the eighth row from the lower left end to the lower right end take a signal value 1, and pixels above the line take a signal value 0.
  • the pixel on the left side of the line crossing the lower left end from the eighth column from the upper left end takes a signal value of 1
  • the pixel on the right side of the line takes a signal value of 0.
  • the pixel to the right of the line crossing the lower right end from the eighth column from the upper right end takes a signal value of 1
  • the pixel to the left of the line takes a signal value of 0.
  • An arrangement pattern is a data pattern that associates coordinates before arrangement of each pixel having a signal value 1 included in each pattern block with coordinates after arrangement arranged by the arrangement unit 109 and stores the coordinates before arrangement in the order of reading the coordinates.
  • FIG. 4 is a diagram illustrating an example of an arrangement pattern according to the present embodiment.
  • each row in the leftmost column shows a pattern block.
  • the second row in the leftmost column of FIG. 4 shows a pattern block 301, followed by a pattern block 305.
  • 4, q 1 , q 2 , q 3 ,... Q 63 , q 64 indicate the order in which the array unit 109 reads the pixels at the coordinates before the array.
  • the upper row shows the coordinates before arrangement of the pixels having the signal value 1 included in each pattern block
  • the lower row shows the coordinates after arrangement.
  • the array unit 109 reads out pixels in the order of coordinates (1, 1), (2, 1), (3, 1)... (2, 16), (1, 16). It shows that these coordinates correspond to coordinates (1, 1), (2, 1), (3, 1)... (2, 8), (1, 8) after arrangement.
  • the array unit 109 reads out pixels in the order of coordinates (16, 16), (15, 16), (15, 15)... (2, 8), (1, 8). It shows that these coordinates correspond to coordinates (1, 1), (2, 1), (3, 1)... (2, 8), (1, 8) after arrangement.
  • FIG. 5 is a conceptual diagram showing an example of the coordinates of pixels before and after the arrangement in the present embodiment.
  • the left side of FIG. 5 shows a pattern block 301.
  • a broken-line arrow that passes through pixels that are spatially adjacent from the upper left end of the pattern block 301 and goes to the lower left end indicates the order q 1 , q 2 , q 3 ,. 63 shows a q 64.
  • the right side of FIG. 5 shows an arrangement destination block that is an arrangement destination.
  • the array destination block includes 64 pixels (8 pixels in the horizontal direction ⁇ 8 pixels in the vertical direction).
  • Dotted arrows that pass through spatially adjacent pixels in order from the upper left end of the arrangement destination block and go to the lower left end are the order q 1 , q 2 , q for arranging the coordinates after arrangement for each pixel read by the arrangement unit 109 3 ,... Q 63 , q 64 are shown.
  • the accuracy of the spatial frequency of the frequency domain signal obtained by performing DCT processing described later can be made equal in the horizontal direction and the vertical direction. Further, even in the arrangement destination block, by sequentially setting the arranged pixels to pixels that are spatially adjacent to each other, it is possible to maintain a component with little spatial variation for each pixel.
  • FIG. 6 is a conceptual diagram illustrating another example of the coordinates of pixels before and after the arrangement in the present embodiment.
  • the left side of FIG. 6 shows a pattern block 309.
  • a broken-line arrow that passes through pixels that are spatially adjacent to each other from the lower right end of the pattern block 309 and goes to the lower left end indicates an order q 1 , q 2 , q 3 ,.
  • 63 shows a q 64.
  • the right side of FIG. 6 shows an arrangement destination block (64 pixels, 8 pixels in the horizontal direction ⁇ 8 pixels in the vertical direction) as an arrangement destination.
  • a broken line arrow that passes through pixels that are spatially adjacent to each other from the upper left end of the arrangement destination block and goes to the lower left end indicates the order q 1 , q 2 in which the arrangement unit 109 arranges the pixels at the coordinates before arrangement at the coordinates after arrangement. , Q 3 ,... Q 63 , q 64 .
  • the number of pixels having a signal value 1 included in one pattern block is not limited to 64, and may be larger or smaller than that number. For example, it may be an integer a times a square value b 2 of a certain integer b (b is 2 or larger than 2).
  • FIG. 7 is a conceptual diagram illustrating another example of the pattern block according to the present embodiment.
  • FIG. 7 shows eight pattern blocks 321 to 324 and 331 to 334.
  • Each pattern block includes 256 pixels (16 pixels in the horizontal direction ⁇ 16 pixels in the vertical direction).
  • the white portion indicates the portion occupied by the pixel indicating the signal value 1, and the solid portion indicates the pixel indicating the signal value 0.
  • pattern block 321-324 a 128 number of pixels, each taking a signal value 1 (2 2 ⁇ 8).
  • pattern block 331-334 the number of pixels, each taking a signal value 1 is 192 (two 3 ⁇ 8).
  • the pixels on the left 8 columns take the signal value 1, and the pixels on the right 8 columns take the signal value 0.
  • the pixels on the left 8 columns take the signal value 0, and the pixels on the right 8 columns take the signal value 1.
  • the pixels in the upper 8 rows take a signal value of 1 and the pixels in the lower 8 rows take a signal value of 0.
  • the pixels in the upper 8 rows have a signal value of 0, and the pixels in the lower 8 rows have a signal value of 1.
  • the pixels on the left 12 columns take the signal value 1, and the pixels on the right 4 columns take the signal value 0.
  • the pixels on the left four columns take a signal value 0 and the pixels on the right 12 columns take a signal value 1.
  • pixels in the upper 12 rows take a signal value of 1 and pixels in the lower 4 rows take a signal value of 0.
  • the pixels on the upper four rows take a signal value of 0, and the pixels on the lower 12 rows take a signal value of 1.
  • the array pattern includes information indicating the array destination block in addition to the coordinates of the array destination, corresponding to the coordinates of the coordinates before the array of the pixels having the signal value 1 included in the pattern block.
  • FIG. 8 is a diagram illustrating another example of the arrangement pattern according to the present embodiment. In FIG. 8, each row in the leftmost column shows a pattern block. The second row in the leftmost column of FIG. 8 shows a pattern block 321 followed by a pattern block 331.
  • the arrangement unit 109 includes coordinates (1, 1), (2, 1), (3, 1)... (2, 8), (1, 8), (1, 9), Pixels are read in the order of (2, 9)... (2, 16), (1, 16), and (1, 1), (2, 1), (3, 1) ... (2, 8), (1, 8), (1, 1), (1, 2) ... (2, 8), (1, 8) of the destination block 2 It shows that an arrangement
  • the array unit 109 includes coordinates (1, 1), (2, 1), (3, 1), (6, 10), (6, 9), (6, 8), (6, 7) ...
  • FIG. 9 is a conceptual diagram illustrating another example of the coordinates of pixels before and after the arrangement in the present embodiment.
  • the left side of FIG. 9 shows a pattern block 321.
  • a broken-line arrow that passes through pixels adjacent spatially from the upper left end of the pattern block 321 sequentially toward the lower left end indicates the order q 1 , q 2 , q 3 ,.
  • 63 shows a q 64, q 65, q 66 , ... q 127, q 128.
  • the upper right and lower right in FIG. 9 show the arrangement destination block 421 that is the arrangement destination.
  • each array destination block includes 64 pixels (8 pixels in the horizontal direction ⁇ 8 pixels in the vertical direction).
  • the broken-line arrows proceeding from the upper left end of each array destination block to the lower left end through the pixels that are spatially adjacent to each other, and the pixels arranged by the array unit 109 are arranged at the coordinates after arrangement. indicate the order q 1, q 2, q 3 , ... q 63, q 64, q 65, q 66, ... q 127, q 128.
  • FIG. 10 is a conceptual diagram illustrating another example of the coordinates of pixels before and after the arrangement in the present embodiment.
  • the left side of FIG. 10 shows a pattern block 331.
  • a broken-line arrow that passes through pixels that are spatially adjacent to each other from the upper left end of the pattern block 331 and goes to the lower right end indicates the order q 1 , q 2 , q 3 ,. 63, q 64, q 65, q 66, ... q 127, q 128, q 129, q 130, showing a ... q 191, q 192.
  • each array destination block includes 64 pixels (8 pixels in the horizontal direction ⁇ 8 pixels in the vertical direction).
  • Dotted arrows that pass through spatially adjacent pixels in order from the upper left end of each array destination block, and the broken arrows directed to the lower left end indicate the order q 1 , q 2 in which the pixels at the coordinates read by the arrangement unit 109 are arranged in the coordinates after arrangement. shows q 3, ... q 63, q 64, q 65, q 66, ... q 127, q 128, q 129, q 130, ... q 191, q 192.
  • FIG. 11 is a diagram illustrating another example of the arrangement destination block in the present embodiment. 11 shows the arrangement destination block 402, the upper right of FIG. 11 shows the arrangement destination block 403, the lower left of FIG. 11 shows the arrangement destination block 404, and the lower right of FIG. 11 shows the arrangement destination block 405.
  • Each of the arrangement destination blocks 402 to 405 includes 64 pixels (8 pixels in the horizontal direction ⁇ 8 pixels in the vertical direction).
  • the dashed arrows from the upper left end to the lower right end indicate the order q 1 , q 2 , q 3 , q 4 , q 5 in which the pixels at the coordinates read by the arrangement unit 109 are arranged in the coordinates after arrangement. , ... q 15, q 16, q 17, q 18, showing a ... q 64.
  • the arrow advances from the upper left end of the initially arranged block 402 to the next pixel to the right, reaches the fourth column, and then proceeds to the same column in the next row, and then proceeds to the next left pixel. After reaching the leftmost column, the process proceeds to the next pixel on the right again.
  • the process proceeds to the fifth column of the uppermost row and sequentially proceeds to the pixel on the right. That is, in the arrangement destination block 402, the order after arrangement is adjacent in units of sub-blocks composed of 4 pixels in the horizontal direction ⁇ 4 pixels in the vertical direction.
  • the dashed arrows from the upper left end to the lower right end indicate the order q 1 , q 2 , q 3 , q 4 , q 5 in which the pixels at the coordinates read by the arrangement unit 109 are arranged in the coordinates after arrangement. ,... Q 64 .
  • This arrow reaches the second column on the right side from the upper left end of the block 403 that is initially arranged, and then proceeds to the leftmost column of the next row, and then proceeds to the left side. Thereafter, the process proceeds to the third column in the top row, and sequentially proceeds to the pixel on the right side again. That is, in the arrangement destination block 403, the arrangement order is adjacent in units of sub-blocks each composed of 2 pixels in the horizontal direction and 2 pixels in the vertical direction.
  • a broken-line arrow from the upper left corner to the pixel in the fourth column from the lower right row indicates the order q 1 , q 2 , and the arrangement order of the pixels at the coordinates read by the arrangement unit 109 to the coordinates after the arrangement.
  • q 3 q 4, q 5 , q 6, ... q 31, q 32, q 33, q 34, showing a ... q 64.
  • the arrow advances from the upper left end of the initially arranged block 402 to the next pixel to the right, reaches the fourth column, and then proceeds to the same column in the next row, and then proceeds to the next left pixel.
  • the process After reaching the leftmost column, the process proceeds to the same column in the next row and sequentially proceeds to the next pixel on the right again. Then, after reaching the lower left end of the block, the process proceeds to the fifth column of the top row, and sequentially proceeds to the pixel on the left. That is, in the arrangement destination block 402, the arrangement order in the coordinates after the arrangement is adjacent in units of sub-blocks composed of 4 pixels in the horizontal direction ⁇ 8 pixels in the vertical direction. In the arrangement destination block 405, a broken-line arrow from the upper left corner to the pixel in the second column from the lowermost right indicates the order q 1 , q 2 , and the arrangement order of the pixels at the coordinates read by the arrangement unit 109 to the coordinates after the arrangement.
  • the type determining unit 103 receives the texture image block from the texture image input unit 100 and the distance image block from the distance image encoding unit 12.
  • the frame and coordinates of the input distance image block are the same as the input texture image block.
  • the type determination unit 103 further reads a reference image block corresponding to the input texture image block from the screen storage unit 101, and reads a pattern block corresponding to the input distance image block.
  • the type determination unit 103 calculates a motion region signal in the texture image block based on the input texture image block, the read reference image block, and the read pattern block.
  • the type determination unit 103 collates the calculated motion region signal with the read pattern block, and outputs the collated pattern block to the motion region prediction unit 106.
  • the type determination unit 103 outputs a pattern block signal indicating the matched pattern block to the arrangement unit 109 and the reverse arrangement unit 113.
  • the type determining unit 103 determines the type of the texture image based on the input texture image block, distance image block, read reference image block, and pattern block.
  • the type determination unit 103 outputs a type signal indicating the determined type to the switch 1041, the switch 1042, the switch 1043, and the variable length encoding unit 115.
  • FIG. 12 is a schematic diagram illustrating a configuration of the type determination unit 103 according to the present embodiment.
  • the type determination unit 103 includes a motion region determination unit 1031, a pattern determination unit 1032, and a motion prediction determination unit 1033.
  • the motion region determination unit 1031 determines a motion region in the texture image block input from the texture image input unit 100 based on the reference image block read from the screen storage unit 101.
  • the moving area is an area where the position where the image is displayed changes with time.
  • the motion region determining unit 1031 determines the motion region as the pixel corresponding to the luminance value C (x, y) of the pixel at the coordinate (x, y) included in the texture image block and the corresponding pixel (x , Y), it is determined whether or not the coordinate (x, y) is a motion region based on the luminance value R (x, y) of the pixel.
  • the motion region determination unit 1031 calculates the motion region information M (x, y) based on the absolute value of the difference between the brightness value C (x, y) and the brightness value R (x, y), for example, by the formula ( 1).
  • B is a 3 ⁇ 3 matrix indicating the closing process.
  • the closing process is a process for performing an expansion process on the image signal and performing a contraction process on the generated signal.
  • the expansion process is a process for determining the maximum luminance value among the luminance values of the pixels adjacent to the target pixel as the luminance value of the target pixel.
  • the contraction process is a process for determining the minimum luminance value among the luminance values of the pixels adjacent to the target pixel as the luminance value of the target pixel. Therefore, the closing process removes a fine structure that is a component having a spatial frequency equivalent to the pixel interval from the texture image block and the reference image block, and smoothes the signal value.
  • T ( ⁇ ) is a function that gives 1 when ⁇ is larger than a preset threshold, for example, 2 and gives 0 when ⁇ is equal to or smaller than the preset threshold.
  • indicates the absolute value of. That is, the motion area information M (x, y) indicates whether or not the pixel in the coordinates is a motion area.
  • a reference image from which the motion region determination unit 1031 reads out a reference image block, and the reference image stored in the screen storage unit 101 is a reference image in a frame earlier than the encoding target frame (for example, one frame past). It is.
  • the motion region determination unit 1031 determines whether the size (number of pixels) of the motion region included in the reference image block is smaller than a preset threshold value TSMB .
  • the threshold value T SMB is, for example, 8 when the number of pixels included in the reference image block is 256.
  • the motion region determination unit 1031 determines that the texture image block type is SMB (Static Macroblock).
  • the motion region determination unit 1031 outputs a type signal indicating that the type of the texture image block is SMB to the motion prediction determination unit 1033.
  • Motion region determining unit 1031 determines the size of the movement area or equal to the threshold T SMB, when it is determined that the threshold value T SMB greater than the type of the texture image block and non-SMB. At this time, the motion region determination unit 1031 outputs a type signal indicating that the type of the texture image block is non-SMB to the pattern determination unit 1032. In addition, the motion region determination unit 1031 outputs the motion region information to the motion prediction determination unit 1033.
  • the pattern determining unit 1032 receives a type signal indicating that the type of the texture image block is non-SMB from the motion region determining unit 1031, and receives the distance image block from the distance image encoding unit 12.
  • the pattern determination unit 1032 determines a pattern block corresponding to the input distance image block among the read pattern blocks.
  • the pattern determination unit 1032 binarizes the distance value V (x, y) for each coordinate (x, y) included in the distance image block using, for example, Expression (2), and binarized distance pattern N (x, y) is calculated.
  • U ( ⁇ ) gives 1 when ⁇ is larger than a preset threshold value (for example, 0), and gives 0 when ⁇ is smaller than or equal to the threshold value.
  • min (V (x, y)) is the minimum value of the distance values included in the distance image block. That is, the pattern determination unit 1032 determines the value in the coordinate having a distance value larger than the threshold value as 1 for the binarized distance pattern N (x, y), and the distance value is equal to or smaller than the threshold value. The value at the coordinates is determined to be 0.
  • the pattern determination unit 1032 selects a pattern block that most closely approximates the binarized distance pattern N (x, y) from the pattern blocks stored in the code book 102. When selecting the most similar pattern block, the pattern determination unit 1032 calculates, for example, an index value D n shown in Expression (3) for each pattern block n.
  • the numerical value 16 in the first sum symbol is the number of pixels in the horizontal direction of the pattern block in this example.
  • the numerical value 16 in the later sum symbol is the number of pixels in the vertical direction of the pattern block in this example.
  • P n (x, y) indicates a signal value at each coordinate (x, y) of the pattern block n. In this example, P n (x, y) is either 1 as the first signal value and 0 as the other signal value.
  • the pattern determination unit 1032 selects a pattern block n that minimizes the index value D n.
  • the pattern determination unit 1032 Since the binarized distance pattern N (x, y) also has a signal value of 1 or 0 at each coordinate (x, y), the pattern determination unit 1032 has a plurality of pattern blocks n that minimize the index value D n. You may select one. In such a case, for example, one pattern block having the smallest (or largest) number is selected from the plurality of selected pattern blocks.
  • Pattern determining unit 1032 determines whether the minimum value of the index value D n is smaller than a preset threshold value sigma d.
  • the threshold ⁇ d is, for example, 64 when the number of pixels included in the reference image block is 256. If the pattern determination unit 1032 determines that the minimum value of the index value D n is smaller than a preset threshold value ⁇ n , the pattern determination unit 1032 determines that the texture image block type is AMB (Active Macroblock). The pattern determination unit 1032 outputs a type signal indicating that the type of the texture image block is AMB to the motion prediction determination unit 1033.
  • AMB Active Macroblock
  • Pattern determining unit 1032 when the minimum value of the index value D n is determining that equal or threshold sigma and d is greater than a preset threshold sigma d, the selected pattern block P n (x, y) and the pattern block The indicated pattern block signal is output to the motion prediction determination unit 1033.
  • the motion prediction determination unit 1033 receives from the motion region determination unit 1031 a type signal or motion region information M (x, y) indicating that the texture image block type is SMB.
  • the motion prediction determination unit 1033 receives from the pattern determination unit 1032 a type signal indicating that the type of the texture image block is AMB, or the selected pattern block P n (x, y) and the pattern block signal.
  • the motion prediction determination unit 1033 determines whether or not the input motion region information M (x, y) is similar to the selected pattern block P n (x, y). When making this determination, the motion prediction determination unit 1033 calculates, for example, an index value E shown in Expression (4).
  • the motion prediction determination unit 1033 determines whether the calculated index value E is smaller than a preset threshold value ⁇ e .
  • the threshold ⁇ e is, for example, 16 when the number of pixels included in the reference image block is 256.
  • the motion prediction determination unit 1033 determines that the motion region information M (x, y) and the pattern block P n (x, y) are similar, that is, the calculated index value E is smaller than a preset threshold value ⁇ e.
  • the texture image block type is determined to be RMB (Active-Region Macroblock). That is, the selected pattern block is in a state where the region where the signal value is 1 and the motion region are approximated.
  • the motion prediction determination unit 1033 outputs the selected pattern block to the motion region prediction unit 106.
  • the motion prediction determination unit 1033 outputs the input pattern block signal to the arrangement unit 109 and the reverse arrangement unit 113.
  • Motion prediction determination unit 1033 the motion area information M (x, y) and the pattern block P n (x, y) is not similar, that is equal to the threshold value sigma e the calculated index value E is set in advance, or the threshold sigma e If it is determined that the texture image block type is AMB, the texture image block type is determined to be AMB.
  • the motion prediction determination unit 1033 outputs a type signal indicating the type of the texture image block to the switch 1041, the switch 1042, the switch 1043, and the variable length encoding unit 115.
  • the switch 1043 when the type signal input from the type determination unit 103 indicates RMB, the switch 1043 is in a state where the reference signal block can be read from the screen storage unit 101 to the motion region prediction unit 106 when the switch is brought down to the contact a. To. When the type signal input from the type determination unit 103 indicates AMB or SMB, the switch 1043 moves the switch to the contact point b so that the reference signal block can be read from the screen storage unit 101 to the motion prediction unit 105.
  • the motion prediction unit 105 receives the texture image block from the texture image input unit 100 and reads the reference image block constituting the reference image from the screen storage unit 101.
  • the motion prediction unit 105 detects a difference between the coordinates of the input distance image block and the coordinates of the corresponding reference image block as a motion vector.
  • the motion prediction unit 105 is, for example, ITU-T H.264. The method described in the H.264 standard is used.
  • the motion prediction unit 105 sets the position at which the reference image block is read from the frame of the past reference image stored in the screen storage unit 101 as one pixel in the horizontal direction or the vertical direction within a preset range from the position of the texture image block. Move them one by one.
  • the motion prediction unit 105 indicates an index value indicating the similarity between the signal value for each pixel included in the texture image block and the signal for each pixel included in the read reference image block, for example, SAD (Sum of Absolute Difference; absolute value). Sum). The smaller the SAD value, the more similar the signal value for each pixel included in the texture image block and the signal value for each pixel included in the read reference image block.
  • the motion prediction unit 105 determines a reference image block that minimizes SAD as a reference image block corresponding to a texture image block.
  • the motion prediction unit 105 calculates a motion vector based on the input texture image block coordinates and the determined reference image block coordinates.
  • the motion prediction unit 105 performs motion prediction based on the determined reference image block, and generates a motion predicted image block.
  • the motion prediction unit 105 generates a motion prediction image block, for example, by matching the coordinates of the determined reference image block with the coordinates of the texture image block.
  • the motion prediction unit 105 outputs the generated motion prediction image block to the switch 1044 and the encoding control unit 110, and outputs a motion vector signal indicating a motion vector to the encoding control unit 110.
  • the motion region prediction unit 106 receives a texture image block from the texture image input unit 100 and receives a pattern block from the type determination unit 103.
  • the motion region prediction unit 106 extracts a signal value of a pixel having a signal value 1 in the pattern block among the input texture image blocks as a texture image pattern.
  • the motion region prediction unit 106 reads the reference image block constituting the reference image from the screen storage unit 101.
  • the motion region prediction unit 106 sets the position where the reference image block is read from the frame of the past reference image stored in the screen storage unit 101 in the horizontal direction or the vertical direction within the range set in advance from the position of the texture image block. Move one pixel at a time in the direction.
  • the motion region prediction unit 106 extracts a signal value of a pixel having a signal value 1 in the pattern block among the read reference image blocks as a reference image pattern.
  • the motion region prediction unit 106 detects a difference between the coordinates of the input texture image pattern and the coordinates of the corresponding reference image pattern as a motion vector.
  • the motion region prediction unit 106 calculates an index value indicating the similarity between the signal value for each pixel included in the texture image pattern and the signal for each pixel included in the reference image pattern, for example, SAD.
  • the motion region prediction unit 106 determines a reference image pattern that minimizes SAD as a reference image pattern corresponding to a texture image pattern.
  • the motion region prediction unit 106 calculates a motion vector based on the coordinates of the texture image pattern and the determined reference image pattern.
  • the motion region prediction unit 106 performs motion prediction based on the determined reference image pattern, and generates a motion region prediction image pattern.
  • the motion region prediction unit 106 generates a motion region prediction image pattern, for example, by matching the coordinates of the determined reference image pattern with the coordinates of the texture image pattern.
  • the motion region prediction unit 106 inserts a zero signal by adding the luminance value of each pixel of the generated motion region prediction image pattern to the zero image block in which the luminance value of the pixels of the entire block is 0, thereby moving the motion region prediction image Generate a block.
  • the motion region prediction unit 106 outputs the generated motion region prediction image block to the switch 1044 and the encoding control unit 110, and outputs a motion vector signal indicating a motion vector to the encoding control unit 110.
  • the in-screen prediction unit 107 receives a texture image block from the texture image input unit 100.
  • the intra-screen prediction unit 107 is a reference image stored in the screen storage unit 101, and a reference image block that has already been encoded among the reference images of the frame input at the same time as the input texture image block. read out.
  • the intra-screen prediction unit 107 reads a reference image block corresponding to a block adjacent to the left side or the upper side of the input texture image block.
  • the intra-screen prediction unit 107 performs intra-screen prediction on the read reference image block, and generates an intra-screen prediction image block.
  • the in-screen prediction unit 107 performs, for example, ITU-TH. The method described in the H.264 standard is used.
  • the intra prediction unit 107 outputs the generated intra prediction image block to the switch 1044 and the encoding control unit 110.
  • the encoding control unit 110 receives a texture image block from the texture image input unit 100.
  • the encoding control unit 110 receives the motion prediction image block and the motion vector signal from the motion prediction unit 105. In this case, the encoding control unit 110 calculates a motion prediction residual signal based on the texture image block and the motion prediction image block.
  • the coding control unit 110 receives the motion region prediction image block and the motion vector signal from the motion region prediction unit 106. That is, the encoding control unit 110 is not input from the motion prediction unit 105 or the motion region prediction unit 106 at the same time, and either one is input. In this case, the encoding control unit 110 calculates a motion region prediction residual signal based on the texture image block and the motion region prediction image block.
  • the encoding control unit 110 receives an intra-screen prediction image block from the intra-screen prediction unit 107.
  • the encoding control unit 110 calculates an intra prediction residual signal based on the texture image block and the intra prediction image block.
  • the encoding control unit 110 based on the calculated magnitude of the motion prediction residual signal and the magnitude of the intra prediction prediction signal, for example, the prediction method with the smaller prediction residual signal (either motion prediction or intra prediction). ). Or, based on the calculated magnitude of the motion region prediction residual signal and the size of the prediction residual signal in the screen, the encoding control unit 110, for example, uses a prediction method (motion region prediction or in-screen that has a smaller prediction residual signal). One of the predictions).
  • the encoding control unit 110 outputs a prediction method signal indicating the determined prediction method to the switch 1044 and the variable length encoding unit 115. When the determined prediction method is motion prediction or motion region prediction, a motion vector signal is output to the variable length encoding unit 115.
  • the encoding control unit 110 may determine a prediction method that minimizes the cost calculated using a known cost function for each prediction method.
  • the encoding control unit 110 calculates the information amount of the motion prediction residual signal based on the motion prediction residual signal, and calculates the motion prediction cost based on the motion prediction residual signal and the information amount.
  • the encoding control unit 110 calculates an information amount of the motion region prediction residual signal based on the motion region prediction residual signal, and calculates a motion region prediction cost based on the motion region prediction residual signal and the information amount.
  • the encoding control unit 110 calculates the information amount of the intra prediction residual signal based on the intra prediction residual signal, and calculates the intra prediction cost based on the intra prediction residual signal and the information amount.
  • the switch 1044 receives a motion prediction image block from the motion prediction unit 105, receives a motion region prediction image block from the motion region prediction unit 106, and receives an intra prediction image block from the intra prediction unit 107, and performs coding control.
  • the prediction scheme signal is input from the unit 110.
  • the switch 1044 does not receive the motion prediction image block or the motion region prediction image block at the same time due to the action of the switch 1043, and either one is input.
  • the switch 1044 turns the switch to c and outputs the motion prediction image block to the subtraction unit 108 and the addition unit 114 as a prediction image block.
  • the switch 1044 When the input prediction method signal indicates motion region prediction, the switch 1044 turns the switch to c and outputs the motion region prediction image block to the subtraction unit 108 and the addition unit 114 as a prediction image block.
  • the switch 1044 turns the switch to d and outputs the intra prediction image block to the subtraction unit 108 and the addition unit 114 as a prediction image block.
  • the subtracting unit 108 subtracts the luminance values of the pixels constituting the predicted image block input from the switch 1044 from the luminance values of the pixels constituting the texture image block input from the texture image input unit 100, respectively, and generates a residual signal block Is generated.
  • the subtractor 108 outputs the generated residual signal block to the switch 1041.
  • the switch 1041 outputs the residual signal block input from the subtraction unit 108 to the arrangement unit 109 when the type signal input from the type determination unit 103 indicates RMB.
  • the switch 1041 outputs the residual signal block input from the subtraction unit 108 to the DCT unit 111 when the type signal input from the type determination unit 103 indicates AMB or SMB.
  • the array unit 109 receives the residual signal block from the switch 1041 and receives the pattern block signal from the type determining unit 103.
  • the array unit 109 reads an array pattern corresponding to the pattern block indicated by the input pattern block signal from the code book 102.
  • the arrangement unit 109 reads the luminance value of the pixel at the coordinates before arrangement indicated by the read arrangement pattern from the residual signal block, and arranges the luminance value at the pixel after arrangement to generate an arrangement destination block.
  • the order in which the array unit 109 reads and arranges the luminance values follows the order of the coordinates before and after the arrangement indicated by the arrangement pattern.
  • the array unit 109 outputs the generated array destination block to the DCT unit 111.
  • the DCT unit 111 receives the residual signal block from the switch 1041 or the array destination block from the array unit 109.
  • the DCT unit 111 performs a two-dimensional DCT (Discrete Cosine Transform) on the luminance values of the pixels constituting the residual signal block or the array destination block, and converts them into frequency domain signals.
  • the DCT unit 111 outputs the converted frequency domain signal to the inverse DCT unit 112 and the variable length coding unit 115.
  • the inverse DCT unit 112 performs a two-dimensional inverse DCT (Inverse Discrete Cosine Transform) on the frequency domain signal input from the DCT unit 110 to convert it into a residual signal block.
  • the inverse DCT unit 112 outputs the converted residual signal block to the switch 1042.
  • the switch 1042 falls the contact point to a, and outputs the residual signal block input from the inverse DCT unit 112 to the inverse array unit 113 as an array destination block.
  • the switch 1042 falls the contact to b, and outputs the residual signal block input from the inverse DCT unit 112 to the addition unit 114.
  • the reverse arrangement unit 113 receives the arrangement destination block from the switch 1042 and the pattern block signal from the type determination unit 103.
  • the reverse arrangement unit 113 reads an arrangement pattern corresponding to the pattern block indicated by the input pattern block signal from the code book 102.
  • the reverse arrangement unit 113 reads the luminance value of the pixel at the coordinate after the arrangement indicated by the read arrangement pattern from the residual signal block, and arranges it in the pixel before the arrangement to generate a residual signal block.
  • the reverse arrangement unit 113 refers to the arrangement pattern in reverse to the arrangement unit 109.
  • the reverse arrangement unit 113 reads the luminance values, and the arrangement order follows the order of the coordinates after the arrangement and the coordinates before the arrangement indicated by the arrangement pattern.
  • the inverse arrangement unit 113 outputs the generated residual signal block to the addition unit 114.
  • the adding unit 114 adds the luminance value of the pixel constituting the prediction signal block input from the switch 1044 and the luminance value of the pixel constituting the residual signal block input from the switch 1042 or the inverse array unit 113, respectively. A reference signal block is generated. The adding unit 114 outputs the generated reference signal block to the screen storage unit 101.
  • the variable length coding unit 115 receives a type signal from the type determination unit 103, a prediction scheme signal and a motion vector signal (only when applicable) from the coding control unit 110, and a frequency domain signal from the DCT unit 111.
  • the variable length coding unit 115 performs Hadamard transform on the input frequency domain signal, compresses and encodes the signal generated by the conversion so as to have a smaller amount of information (variable length coding), and compresses the residual. Generate a signal.
  • the variable length coding unit 115 performs entropy coding.
  • the variable length coding unit 115 outputs the compressed residual signal, the input type signal, the motion vector signal, and the prediction method signal to the outside of the image coding apparatus 1 as a texture image code.
  • the distance image encoding unit 12 receives a distance image for each frame from the outside of the image encoding device 1, and a known image encoding method for each block constituting each frame, for example, ITU-T H.264. The encoding is performed using the encoding method described in the H.264 standard.
  • the distance image encoding unit 12 outputs the distance image code generated by encoding to the outside of the image encoding device 1.
  • the distance image encoding unit 12 outputs the reference signal block generated in the encoding process to the type determining unit 103 as a distance image block.
  • the reference signal block generated in the encoding process can generate a decoded distance image based on the distance image code. Therefore, it is not necessary for the pattern determination unit 1032 included in the type determination unit 103 and the pattern determination unit 2032 described later to output a code indicating the pattern block, and the texture image block can be encoded or decoded with high efficiency.
  • FIG. 13 is a flowchart showing an image encoding process performed by the image encoding device 1 according to the present embodiment.
  • the texture image input unit 100 receives a texture image for each frame from the outside of the image encoding device 1.
  • the distance image encoding unit 12 receives a distance image for each frame from the outside of the image encoding device 1 and encodes each block constituting each frame using a known image encoding method. Thereafter, the process proceeds to step S202.
  • Step S202 The texture image input unit 100 extracts a texture image block from the input texture image, and uses the extracted texture image block as a type determination unit 103, a motion prediction unit 105, a motion region prediction unit 106, and an in-screen prediction unit. 107, and output to the subtraction unit 108 and the encoding control unit 110.
  • the distance image encoding unit 12 outputs the reference signal block generated in the process of encoding the distance image block to the type determining unit 103 as a distance image block. Thereafter, the processing up to step S247 is repeated for each block in the frame.
  • the type determination unit 103 receives a texture image block from the texture image input unit 100 and receives a distance image block from the distance image encoding unit 12.
  • the type determination unit 103 reads a reference image block corresponding to the input texture image block from the screen storage unit 101, and reads a pattern block corresponding to the input distance image block.
  • the type determination unit 103 calculates a motion region signal in the texture image block based on the input texture image block, the read reference image block, and the read pattern block.
  • the type determination unit 103 collates the calculated motion region signal with the read pattern block, and outputs the collated pattern block to the motion region prediction unit 106.
  • the type determination unit 103 outputs a pattern block signal indicating the matched pattern block to the arrangement unit 109 and the reverse arrangement unit 113.
  • the type determining unit 103 determines the type of the texture image based on the input texture image block, distance image block, read reference image block, and pattern block.
  • the type determination unit 103 outputs a type signal indicating the determined type to the switch 1041, the switch 1042, the switch 1043, and the variable length encoding unit 115. Thereafter, the process proceeds to step S204. Note that the type determination process performed by the type determination unit 103 in step S203 will be described later with reference to FIG.
  • Step S204 The switch 1041, the switch 1042, and the switch 1043 determine whether the type signal input from the type determining unit 103 indicates RMB, AMB, or SMB.
  • the switch 1041 outputs the residual signal block input from the subtraction unit 108 to the arrangement unit 109.
  • the switch 1042 outputs the residual signal block input from the inverse DCT unit 112 to the inverse arrangement unit 113 as an arrangement destination block, and the switch 1043 transmits the reference signal block from the screen storage unit 101 to the motion region prediction unit 106. Is ready to be read. Thereafter, the process proceeds to step S205.
  • the switch 1041 When the switch 1041, the switch 1042, and the switch 1043 determine that the type signal indicates AMB or SMB (N in step S204), the switch 1041 outputs the residual signal block input from the subtraction unit 108 to the DCT unit 111. . At this time, the switch 1042 outputs the residual signal block input from the inverse DCT unit 112 to the adding unit 114, and the switch 1043 sets the state in which the reference signal block can be read from the screen storage unit 101 to the motion prediction unit 105. . Thereafter, the process proceeds to step S206.
  • the motion region prediction unit 106 receives a texture image block from the texture image input unit 100 and receives a pattern block from the type determination unit 103.
  • the motion region prediction unit 106 extracts a signal value of a pixel having a signal value 1 in the pattern block among the input texture image blocks as a texture image pattern.
  • the motion region prediction unit 106 reads the reference image block constituting the reference image from the screen storage unit 101.
  • a signal value of a pixel having a signal value of 1 is extracted as a reference image pattern.
  • the motion region prediction unit 106 detects a difference between the coordinates of the input texture image pattern and the coordinates of the corresponding reference image pattern as a motion vector.
  • the motion region prediction unit 106 performs motion prediction based on the extracted reference image pattern, and generates a motion region prediction image block.
  • the motion region prediction unit 106 outputs the generated motion region prediction image block to the switch 1044 and the encoding control unit 110, and outputs a motion vector signal indicating a motion vector to the encoding control unit 110. Thereafter, the process proceeds to step S207.
  • Step S ⁇ b> 206 The motion prediction unit 105 receives a texture image block from the texture image input unit 100, and reads a reference image block constituting a reference image from the screen storage unit 101. The motion prediction unit 105 determines the reference image block that minimizes the index value with the texture image block as the reference image block corresponding to the texture image block. The motion prediction unit 105 performs motion prediction based on the determined reference image block, and generates a motion predicted image block. The motion prediction unit 105 outputs the generated motion prediction image block to the switch 1044 and the encoding control unit 110, and outputs a motion vector signal indicating a motion vector to the encoding control unit 110. Thereafter, the process proceeds to step S227.
  • Step S207 The in-screen prediction unit 107 receives a texture image block from the texture image input unit 100.
  • the intra-screen prediction unit 107 reads a reference image block that has already been encoded from the reference image stored in the screen storage unit 101.
  • the intra-screen prediction unit 107 performs intra-screen prediction on the read reference image block, and generates an intra-screen prediction image block.
  • the intra prediction unit 107 outputs the generated intra prediction image block to the switch 1044 and the encoding control unit 110. Thereafter, the process proceeds to step S208.
  • the encoding control unit 110 receives a texture image block from the texture image input unit 100, and receives a motion region prediction image block and a motion vector signal from the motion region prediction unit 106.
  • the encoding control unit 110 receives an intra-screen prediction image block from the intra-screen prediction unit 107.
  • the encoding control unit 110 calculates a motion region prediction residual signal based on the texture image block and the motion region prediction image block, and calculates an intra-screen prediction residual signal based on the texture image block and the intra-screen prediction image block.
  • the encoding control unit 110 determines, for example, a prediction method having a smaller prediction residual signal based on the calculated magnitude of the motion region prediction residual signal and the magnitude of the intra prediction prediction signal.
  • the encoding control unit 110 outputs a prediction method signal indicating the determined prediction method to the switch 1044 and the variable length encoding unit 115.
  • the determined prediction method is motion region prediction
  • the motion vector signal is output to the variable length coding unit 115.
  • the switch 1044 receives a motion region prediction image block from the motion region prediction unit 106, receives an intra-screen prediction image block from the intra-screen prediction unit 107, and receives a prediction method signal from the encoding control unit 110.
  • the switch 1044 outputs either the motion region prediction image block or the intra-screen prediction image block input based on the input prediction method signal to the subtraction unit 108 and the addition unit 114 as a prediction image block. Thereafter, the process proceeds to step S209.
  • Step S209 The subtraction unit 108 subtracts the luminance values of the pixels constituting the predicted image block input from the switch 1044 from the luminance values of the pixels constituting the texture image block input from the texture image input unit 100, Generate a residual signal block.
  • the subtraction unit 108 outputs the generated residual signal block to the switch 1041.
  • the switch 1041 outputs the residual signal block input from the subtraction unit 108 to the arrangement unit 109. Thereafter, the process proceeds to step S210.
  • Step S ⁇ b> 210) The array unit 109 receives the residual signal block from the switch 1041 and receives the pattern block signal from the type determining unit 103.
  • the array unit 109 reads an array pattern corresponding to the pattern block indicated by the input pattern block signal from the code book 102.
  • the arrangement unit 109 reads the luminance value of the pixel at the coordinates before arrangement indicated by the read arrangement pattern from the residual signal block, and arranges the luminance value at the pixel after arrangement to generate an arrangement destination block.
  • the order in which the array unit 109 reads and arranges the luminance values follows the order of the coordinates before and after the arrangement indicated by the arrangement pattern.
  • the array unit 109 outputs the generated array destination block to the DCT unit 111. Then, it progresses to step S211.
  • the DCT unit 111 receives an array destination block from the array unit 109.
  • the DCT unit 111 performs two-dimensional DCT on the luminance values of the pixels constituting the residual signal block and converts them into frequency domain signals.
  • the DCT unit 111 outputs the converted frequency domain signal to the inverse DCT unit 112 and the variable length coding unit 115. Thereafter, the process proceeds to step S212.
  • the variable length coding unit 115 receives the prediction scheme signal and the motion vector signal (only when applicable) from the coding control unit 110, and the frequency domain signal from the DCT unit 111.
  • the variable length coding unit 115 performs Hadamard transform on the input frequency domain signal, and compresses and encodes the signal generated by the conversion so as to have a smaller amount of information, thereby generating a compression residual signal.
  • the variable length coding unit 115 outputs the compressed residual signal, the input motion vector signal, and the prediction method signal to the outside of the image coding apparatus 1 as a texture image code. Thereafter, the process proceeds to step S213.
  • Step S213 The inverse DCT unit 112 performs two-dimensional inverse DCT on the frequency domain signal input from the DCT unit 110 to convert it into a residual signal block.
  • the inverse DCT unit 112 outputs the converted residual signal block to the switch 1042.
  • the switch 1042 outputs the residual signal block input from the inverse DCT unit 112 to the inverse array unit 113 as an array destination block. Thereafter, the process proceeds to step S214.
  • the reverse arrangement unit 113 receives an arrangement destination block from the switch 1042 and a pattern block signal from the type determination unit 103.
  • the reverse arrangement unit 113 reads an arrangement pattern corresponding to the pattern block indicated by the input pattern block signal from the code book 102.
  • the reverse arrangement unit 113 reads the luminance value of the pixel at the coordinate after the arrangement indicated by the read arrangement pattern from the residual signal block, and arranges it in the pixel before the arrangement to generate a residual signal block.
  • the inverse arrangement unit 113 outputs the generated residual signal block to the addition unit 114. Thereafter, the process proceeds to step S245.
  • Step S227) The in-screen prediction unit 107 receives a texture image block from the texture image input unit 100.
  • the intra-screen prediction unit 107 reads a reference image block that has already been encoded from the reference image stored in the screen storage unit 101.
  • the intra-screen prediction unit 107 performs intra-screen prediction on the read reference image block, and generates an intra-screen prediction image block.
  • the intra prediction unit 107 outputs the generated intra prediction image block to the switch 1044 and the encoding control unit 110. Thereafter, the process proceeds to step S228.
  • the encoding control unit 110 receives a texture image block from the texture image input unit 100, and receives a motion prediction image block and a motion vector signal from the motion prediction unit 105.
  • the encoding control unit 110 receives an intra-screen prediction image block from the intra-screen prediction unit 107.
  • the encoding control unit 110 calculates a motion prediction residual signal based on the texture image block and the motion prediction image block, and calculates an intra prediction residual signal based on the texture image block and the intra prediction image block.
  • the encoding control unit 110 determines, for example, a prediction method with a smaller prediction residual signal based on the calculated magnitude of the motion prediction residual signal and the magnitude of the intra prediction prediction signal.
  • the encoding control unit 110 outputs a prediction method signal indicating the determined prediction method to the switch 1044 and the variable length encoding unit 115.
  • the motion vector signal is output to the variable length coding unit 115.
  • the switch 1044 receives a motion prediction image block from the motion prediction unit 105, receives an intra prediction image block from the intra prediction unit 107, and receives a prediction method signal from the encoding control unit 110.
  • the switch 1044 outputs either the motion prediction image block or the intra prediction image block input based on the input prediction method signal to the subtraction unit 109 and the addition unit 114 as a prediction image block. Thereafter, the process proceeds to step S229.
  • Step S229) The subtraction unit 108 subtracts the luminance values of the pixels constituting the prediction image block input from the switch 1044 from the luminance values of the pixels constituting the texture image block input from the texture image input unit 100, Generate a residual signal block.
  • the subtractor 108 outputs the generated residual signal block to the switch 1041.
  • the switch 1041 outputs the residual signal block input from the subtraction unit 108 to the DCT unit 111.
  • step S231 The DCT unit 111 receives the residual signal block from the switch 1041.
  • the DCT unit 111 performs two-dimensional DCT on the luminance values of the pixels constituting the residual signal block and converts them into frequency domain signals.
  • the DCT unit 111 outputs the converted frequency domain signal to the inverse DCT unit 112 and the variable length coding unit 115. Thereafter, the process proceeds to step S232.
  • the variable length encoding unit 115 receives the type signal from the type determining unit 103, the prediction method signal and the motion vector signal (only when applicable) from the encoding control unit 110, and the frequency domain signal from the DCT unit 111. Entered.
  • the variable length coding unit 115 performs Hadamard transform on the input frequency domain signal, compresses and encodes the signal generated by the conversion so as to have a smaller amount of information (variable length coding), and compresses the residual. Generate a signal.
  • the variable length coding unit 115 outputs the compressed residual signal, the input type signal, the motion vector signal, and the prediction method signal to the outside of the image coding apparatus 1 as a texture image code. Thereafter, the process proceeds to step S233.
  • Step S233 The inverse DCT unit 112 performs two-dimensional inverse DCT on the frequency domain signal input from the DCT unit 110 to convert it into a residual signal block.
  • the inverse DCT unit 112 outputs the converted residual signal block to the switch 1042.
  • the switch 1042 outputs the residual signal block input from the inverse DCT unit 112 to the adding unit 114. Thereafter, the process proceeds to step S245.
  • Step S245 The adding unit 114 calculates the luminance value of the pixel constituting the prediction signal block input from the switch 1044 and the luminance value of the pixel constituting the residual signal block input from the switch 1042 or the reverse arrangement unit 113, respectively. Addition to generate a reference signal block. The adding unit 114 outputs the generated reference signal block to the screen storage unit 101. Thereafter, the process proceeds to step S246. (Step S246) The screen storage unit 101 stores the reference image block input from the adder unit 114 by arranging it at the position of that block in the corresponding frame. Thereafter, the process proceeds to step S247.
  • Step S247 The texture image input unit 100 determines whether or not there is a region from which a texture image block has not been extracted in the texture image of the input frame.
  • the blocks where the texture image input unit 100 extracts the texture image block are not overlapped in the raster scan order.
  • the distance image coding unit 12 shifts the position of the reference signal block to the position of the block from which the texture image block is extracted. Thereafter, the process returns to step S202. If the texture image input unit 100 determines that there is no region from which texture image blocks have not been extracted, the texture image input unit 100 ends the process of encoding the texture image of the input frame.
  • FIG. 14 is a flowchart showing a type determination process performed by the type determination unit 103 according to the present embodiment.
  • the motion region determination unit 1031 calculates motion region information M (x, y) based on the reference image block read from the screen storage unit 101 in the texture image block input from the texture image input unit 100. To do.
  • the motion region determination unit 1031 uses, for example, Equation (1). Thereafter, the process proceeds to step S302.
  • Step S302 The motion region determination unit 1031 determines whether or not the size of the motion region included in the reference image block is smaller than a preset threshold value T SMB .
  • the process proceeds to step S303.
  • the motion region determination unit 1031 outputs a type signal indicating that the type of the texture image block is non-SMB to the pattern determination unit 1032.
  • the motion region determination unit 1031 outputs the motion region information M (x, y) to the motion prediction determination unit 1033. Thereafter, the process proceeds to step S304.
  • Step S303 The motion region determination unit 1031 determines that the texture image block type is SMB, and outputs a type signal indicating that the texture image block type is SMB to the motion prediction determination unit 1033.
  • the motion prediction determination unit 1033 outputs a type signal indicating the type of the texture image block to the switch 1041, the switch 1042, the switch 1043, and the variable length encoding unit 115. Thereafter, the process proceeds to step S204.
  • the pattern determining unit 1032 receives a pattern signal indicating that the texture image is non-SMB from the motion region determining unit 1031 and reads the pattern block P n (x, y) from the code book 102.
  • the pattern determination unit 1032 determines whether there is a pattern block P n (x, y) similar to the input distance image block among the read pattern blocks P n (x, y). Therefore, the pattern determination unit 1032 binarizes the distance image block input from the distance image encoding unit 12 using, for example, Equation (2), and calculates a binarized distance pattern N (x, y).
  • the pattern determination unit 1032 calculates an index value between the calculated binarized distance pattern N (x, y) and each read pattern block P n (x, y) using, for example, the equation (3). . Pattern determining unit 1032 selects the index value is smallest pattern block P n (x, y) of the distance image pattern block block approximation P n (x, y) as a. Then, the pattern determination unit 1032 determines whether or not there is a pattern block P n (x, y) similar to the distance image block, based on whether or not the threshold with which the minimum index value is set in advance is small.
  • Pattern determining unit 1032 the read pattern block P n (x, y) pattern block similar to the inputted range image blocks of the P n (x, y) when it is determined that there exists (step S304 Y), selected
  • the pattern block signal indicating the pattern block P n (x, y) and the pattern block P n (x, y) is output to the motion prediction determination unit 1033. Thereafter, the process proceeds to step S306.
  • the pattern determination unit 1032 determines that there is no pattern block P n (x, y) similar to the input distance image block among the read pattern blocks P n (x, y) (step S304 N), Proceed to step S305.
  • Step S305 The pattern determination unit 1032 determines that the texture image block type is AMB, and outputs a type signal indicating that the texture image block type is AMB to the motion prediction determination unit 1033.
  • the motion prediction determination unit 1033 outputs a type signal indicating the type of the texture image block to the switch 1041, the switch 1042, the switch 1043, and the variable length encoding unit 115. Thereafter, the process proceeds to step S204.
  • the motion prediction determination unit 1033 receives a type signal or motion region information indicating that the type of the texture image block is SMB from the motion region determination unit 1031.
  • the motion prediction determination unit 1033 receives from the motion prediction determination unit 1033 the type signal indicating that the type of the texture image block is AMB, or the selected pattern block P n (x, y) and the pattern block signal.
  • the motion prediction determination unit 1033 determines whether or not the input motion region information M (x, y) is similar to the selected pattern block P n (x, y).
  • the motion prediction determination unit 1033 calculates the index value E shown in Expression (4), and determines whether or not the calculated index value E is smaller than a preset threshold value ⁇ e .
  • step S306 Y When the motion prediction determination unit 1033 determines that the input motion region information M (x, y) is similar to the selected pattern block P n (x, y) (step S306 Y), the process proceeds to step S308. . When the motion prediction determination unit 1033 determines that the input motion region information M (x, y) is not similar to the selected pattern block P n (x, y) (step S306 N), the process proceeds to step S307. .
  • Step S307 The motion prediction determination unit 1033 determines that the type of the texture image block is AMB, and sends a type signal indicating that the type of the texture image block is AMB to the switch 1041, the switch 1042, the switch 1043, and the variable length coding unit. 115. Thereafter, the process proceeds to step S204.
  • Step S308 The motion prediction determination unit 1033 determines that the type of the texture image block is RMB, and sets a type signal indicating that the type of the texture image block is RMB as a switch 1041, a switch 1042, a switch 1043, and a variable length coding unit. 115. Also, the motion prediction determination unit 1033 outputs the selected pattern block to the motion region prediction unit 106 and outputs the input pattern block signal to the arrangement unit 109 and the inverse arrangement unit 113. Thereafter, the process proceeds to step S204.
  • FIG. 15 is a schematic diagram illustrating a configuration of the image decoding device 2 according to the present embodiment.
  • the image decoding apparatus 2 includes a screen storage unit 201, a code book 202, a pattern determination unit 2032, a switch 2042, a switch 2043, a switch 2044, a motion prediction unit 205, a motion region prediction unit 206, an in-screen prediction unit 207, and an inverse DCT unit 212. , An inverse arrangement unit 213, an addition unit 214, a variable length decoding unit 215, and a distance image decoding unit 23.
  • the screen storage unit 201 arranges the reference image block input from the addition unit 214 at the position of the block in the corresponding frame and stores it as a reference image.
  • the screen storage unit 201 stores reference images having a preset number of frames from the present time.
  • the code book 202 stores a plurality of pattern blocks and an array pattern in association with each pattern block. The pattern blocks and arrangement patterns stored in the code book 202 may be the same as those in the code book 102.
  • the pattern determining unit 2032 receives the distance image block decoded from the distance image decoding unit 23.
  • the pattern determination unit 2032 determines a pattern block corresponding to the input distance image block among the read pattern blocks.
  • the pattern determination unit 2032 binarizes the distance value V (x, y) for each coordinate (x, y) included in the distance image block using, for example, Expression (2), and binarizes the distance pattern.
  • N (x, y) is calculated.
  • the pattern determination unit 2032 selects a pattern block that most closely approximates the binarized distance pattern N (x, y) from the pattern blocks stored in the code book 202.
  • the pattern determination unit 2032 calculates, for example, the index value D n shown in Equation (3) for each pattern block n, and selects the pattern block that minimizes the calculated index value D n. To do.
  • the pattern determination unit 2032 outputs the selected pattern block to the motion region prediction unit 206 and outputs a pattern block signal corresponding to the selected pattern block to the inverse arrangement unit 213.
  • the switch 2043 brings the contact point down to a so that the reference signal block can be read from the screen storage unit 201 to the motion region prediction unit 206.
  • the switch 2043 brings the contact point down to b so that the reference signal block can be read from the screen storage unit 201 to the motion prediction unit 205.
  • the motion prediction unit 205 receives the motion vector signal from the variable length decoding unit 215.
  • the motion prediction unit 205 reads a reference image block having coordinates corresponding to the motion vector indicated by the input motion vector signal from the reference image stored in the screen storage unit 201.
  • the motion prediction unit 205 performs motion prediction on the read reference image block based on the motion vector, and generates a motion predicted image block.
  • the motion prediction unit 205 generates a motion prediction image block by moving each coordinate of the read reference image block based on the coordinate value indicated by the motion vector.
  • the motion prediction unit 205 outputs the generated motion prediction image block to the switch 2044.
  • the motion region prediction unit 206 receives the motion vector signal from the variable length decoding unit 215.
  • the motion region prediction unit 206 reads a reference image block having coordinates corresponding to the motion vector indicated by the input motion vector signal, from the reference image stored in the screen storage unit 201.
  • the motion region prediction unit 206 extracts a signal value of a pixel having a signal value 1 in the pattern block among the read reference image blocks as a reference image pattern.
  • the motion region prediction unit 206 performs motion prediction on the extracted reference image pattern based on the motion vector, and generates a motion region prediction image pattern.
  • the motion region prediction unit 206 generates a motion region prediction image pattern by moving each coordinate of the determined reference image pattern based on the coordinates indicated by the motion vector, for example.
  • the motion region prediction unit 206 inserts a zero signal by adding the luminance value of each pixel of the generated motion region prediction image pattern to the zero image block in which the luminance value of the pixels of the entire block is zero, thereby moving the motion region prediction image Generate a block.
  • the motion region prediction unit 206 outputs the generated motion region prediction image block to the switch 2044.
  • the intra-screen prediction unit 207 reads a reference image block that is a reference image stored in the screen storage unit 201 and is decoded from among the reference images of the current frame to be processed. For example, the intra-screen prediction unit 207 reads a reference image block corresponding to a block adjacent to the left side or above the texture image block to be processed. The intra-screen prediction unit 207 performs intra-screen prediction on the read reference image block, and generates an intra-screen prediction image block. The intra-screen prediction unit 207 performs, for example, ITU-T H.264 in order to perform intra-screen prediction. The method described in the H.264 standard is used. The intra-screen prediction unit 207 outputs the generated intra-screen prediction image block to the switch 2044.
  • the switch 2044 receives a motion prediction image block from the motion prediction unit 205, receives a motion region prediction image block from the motion region prediction unit 206, receives an intra screen prediction image block from the intra screen prediction unit 207, and performs variable-length decoding.
  • the prediction method signal is input from the unit 215.
  • the switch 2044 falls the contact point to c, and outputs either the input motion prediction image block or intra prediction image block to the addition unit 214.
  • the switch 2044 does not input the motion prediction image block or the motion region prediction image block at the same time, and inputs either one.
  • the switch 2044 brings the contact point down to d, and either the input motion region prediction image block or intra prediction image block is input to the adding unit 214 as a prediction image block. Output.
  • the inverse DCT unit 212 performs a two-dimensional inverse DCT on the frequency domain signal input from the variable length decoding unit 215 to convert it into a residual signal block.
  • the inverse DCT unit 212 outputs the converted residual signal block to the switch 2042.
  • the switch 2042 falls the contact point to a, and outputs the residual signal block input from the inverse DCT unit 212 to the inverse array unit 213 as an array destination block. To do.
  • the switch 2042 falls the contact to b and outputs the residual signal block input from the inverse DCT unit 212 to the addition unit 214.
  • the reverse arrangement unit 213 receives the arrangement destination block from the switch 2042 and the pattern block signal from the pattern determination unit 2032.
  • the reverse array unit 213 reads an array pattern corresponding to the pattern block indicated by the input pattern block signal from the code book 202.
  • the reverse arrangement unit 213 reads the luminance value of the pixel at the coordinate after the arrangement indicated by the read arrangement pattern from the residual signal block, and arranges it in the pixel before the arrangement to generate a residual signal block.
  • the reverse arrangement unit 213 reads the luminance values, and the arrangement order follows the order of the coordinates after the arrangement and the coordinates before the arrangement indicated by the arrangement pattern.
  • the inverse arrangement unit 213 outputs the generated residual signal block to the addition unit 214.
  • the adding unit 214 adds the luminance value of the pixel constituting the prediction signal block input from the switch 2044 and the luminance value of the pixel constituting the residual signal block input from the switch 2042 or the inverse array unit 213, respectively.
  • a reference signal block is generated.
  • the adding unit 214 outputs the generated reference signal block to the screen storage unit 201, and outputs the reference signal block to the outside of the image decoding device 2 as a decoded texture image block.
  • the variable length decoding unit 215 extracts a compression residual signal, a type signal, a motion vector signal, and a prediction method signal from the texture image code input from the outside of the image decoding device 2.
  • the variable length decoding unit 215 performs decoding (variable length decoding) on the extracted compressed residual signal by performing processing opposite to the compression coding performed by the variable length coding unit 115 (variable length decoding).
  • Generate a Hadamard transform signal with many For example, when the variable length coding unit 115 performs entropy coding, the variable length decoding unit 215 performs entropy decoding.
  • the variable length decoding unit 215 performs a Hadamard transform on the generated Hadamard transform signal to generate a frequency domain signal.
  • the Hadamard transform performed by the variable length decoding unit 215 is an inverse operation of the Hadamard transform performed by the variable length coding unit 115.
  • the variable length decoding unit 215 outputs the generated frequency domain signal to the inverse DCT unit 212, and outputs the extracted motion vector signal to the motion prediction unit 205 and the motion region prediction unit 206.
  • the variable length decoding unit 215 outputs the extracted type signal to the switch 2042 and the switch 2043.
  • the variable length decoding unit 215 outputs the extracted prediction method signal to the switch 2044.
  • the distance image decoding unit 23 is a known image decoding method for each block based on the distance image code input from the outside of the image decoding device 2, such as ITU-T H.264. Decoding is performed using a decoding method described in the H.264 standard. The distance image decoding unit 23 outputs the distance image block generated by decoding to the outside of the pattern determination unit 2032 and the image decoding device 2.
  • FIG. 16 is a flowchart showing an image decoding process performed by the image decoding apparatus 2 according to this embodiment.
  • the image decoding apparatus 2 repeats the processing from step S402 to S434 for each block in the frame.
  • the variable length decoding unit 215 extracts a compression residual signal, a type signal, a motion vector signal, and a prediction method signal from the texture image code input from the outside of the image decoding device 2, respectively.
  • the variable length decoding unit 215 performs decoding (variable length decoding) on the extracted compressed residual signal by performing processing opposite to the compression coding performed by the variable length coding unit 115 (variable length decoding).
  • variable length decoding unit 215 performs a Hadamard transform on the generated Hadamard transform signal to generate a frequency domain signal.
  • the variable length decoding unit 215 outputs the generated frequency domain signal to the inverse DCT unit 212, and outputs the extracted motion vector signal to the motion prediction unit 205 and the motion region prediction unit 206.
  • the variable length decoding unit 215 outputs the extracted type signal to the switch 2042 and the switch 2043.
  • the variable length decoding unit 215 outputs the extracted prediction method signal to the switch 2044.
  • the distance image decoding unit 23 performs decoding using a known image decoding method for each block based on the distance image code input from the outside of the image decoding device 2.
  • the distance image decoding unit 12 outputs the distance image signal block generated by decoding to the outside of the pattern determination unit 2032 and the image decoding device 2. Thereafter, the process proceeds to step S403.
  • Step S403 Both the switch 2042 and the switch 2043 determine whether the type signal input from the variable length decoding unit 215 indicates RMB, AMB, or SMB.
  • the switch 2042 and the switch 2043 determine that the type signal input from the variable length decoding unit 215 indicates RMB (Y in step S403)
  • the process proceeds to step S404.
  • the switch 2042 and the switch 2043 determine that the type signal input from the variable length decoding unit 215 indicates AMB or SMB (N in step S403), the process proceeds to step S424.
  • Step S404 The switch 2044 determines whether the prediction method signal input from the variable length decoding unit 215 indicates intra prediction or motion region prediction. When the switch 2044 determines that the prediction method signal input from the variable length decoding unit 215 indicates intra prediction (Y in step S404), the switch 2044 proceeds to step S407. When the switch 2044 determines that the prediction scheme signal input from the variable length decoding unit 215 indicates motion region prediction (N in step S404), the switch 2044 proceeds to step S405.
  • the motion region prediction unit 206 receives the motion vector signal from the variable length decoding unit 215.
  • the motion region prediction unit 206 reads a reference image block having coordinates corresponding to the motion vector indicated by the input motion vector signal, from the reference image stored in the screen storage unit 201.
  • the motion region prediction unit 206 extracts a signal value of a pixel having a signal value 1 in the pattern block among the read reference image blocks as a reference image pattern.
  • the motion region prediction unit 206 performs motion prediction on the extracted reference image pattern based on the motion vector, and generates a motion region prediction image pattern.
  • the motion region prediction unit 206 inserts a zero signal by adding the luminance value of each pixel of the generated motion region prediction image pattern to the zero image block in which the luminance value of the pixels of the entire block is zero, thereby moving the motion region prediction image Generate a block.
  • the motion region prediction unit 206 outputs the generated motion region prediction image block to the switch 2044. Thereafter, the process proceeds to step S408.
  • Step S407 The intra-screen prediction unit 207 reads a reference image block that is a reference image stored in the screen storage unit 201 and is decoded from the reference images of the current frame to be processed.
  • the intra-screen prediction unit 207 performs intra-screen prediction on the read reference image block, and generates an intra-screen prediction image block.
  • the intra-screen prediction unit 207 outputs the generated intra-screen prediction image block to the switch 2044. Thereafter, the process proceeds to step S408.
  • Step S ⁇ b> 408 The inverse DCT unit 212 performs two-dimensional inverse DCT on the frequency domain signal input from the variable length decoding unit 215 to convert it into a residual signal block.
  • the inverse DCT unit 212 outputs the converted residual signal block to the switch 2042. Thereafter, the process proceeds to step S409.
  • Step S409 The reverse arrangement unit 213 receives the arrangement destination block from the switch 2042, and receives the pattern block signal from the pattern determination unit 2032.
  • the reverse array unit 213 reads an array pattern corresponding to the pattern block indicated by the input pattern block signal from the code book 202.
  • the reverse arrangement unit 213 reads the luminance value of the pixel at the coordinate after the arrangement indicated by the read arrangement pattern from the residual signal block, and arranges it in the pixel before the arrangement to generate a residual signal block.
  • the reverse arrangement unit 213 reads the luminance values, and the arrangement order follows the order of the coordinates after the arrangement and the coordinates before the arrangement indicated by the arrangement pattern.
  • the inverse arrangement unit 213 outputs the generated residual signal block to the addition unit 214. Thereafter, the process proceeds to step S432.
  • Step S424 The switch 2044 determines whether the prediction method signal input from the variable length decoding unit 215 indicates intra prediction or motion prediction. When the switch 2044 determines that the prediction method signal input from the variable length decoding unit 215 indicates intra prediction (Y in step S424), the switch 2044 proceeds to step S427. When the switch 2044 determines that the prediction method signal input from the variable length decoding unit 215 indicates motion prediction (N in step S424), the switch 2044 proceeds to step S426.
  • Step S426) The motion prediction unit 205 receives the motion vector signal from the variable length decoding unit 215.
  • the motion prediction unit 205 reads a reference image block having coordinates corresponding to the motion vector indicated by the input motion vector signal from the reference image stored in the screen storage unit 201.
  • the motion prediction unit 205 performs motion prediction on the read reference image block based on the motion vector, and generates a motion predicted image block.
  • the motion prediction unit 205 outputs the generated motion prediction image block to the switch 2044. Thereafter, the process proceeds to step S428.
  • Step S427 The intra-screen prediction unit 207 reads a reference image block that is a reference image stored in the screen storage unit 201 and is decoded from among the reference images of the current frame to be processed.
  • the intra-screen prediction unit 207 performs intra-screen prediction on the read reference image block, and generates an intra-screen prediction image block.
  • the intra-screen prediction unit 207 outputs the generated intra-screen prediction image block to the switch 2044. Thereafter, the process proceeds to step S428.
  • Step S428 The inverse DCT unit 212 performs two-dimensional inverse DCT on the frequency domain signal input from the variable length decoding unit 215 to convert it into a residual signal block.
  • the inverse DCT unit 212 outputs the converted residual signal block to the switch 2042. Thereafter, the process proceeds to step S432.
  • Step S432 The adder 214 calculates the luminance value of the pixel constituting the prediction signal block inputted from the switch 2044 and the luminance value of the pixel constituting the residual signal block inputted from the switch 2042 or the reverse arrangement unit 213, respectively. Addition to generate a reference signal block.
  • the adding unit 214 outputs the generated reference signal block to the screen storage unit 201, and outputs the reference signal block to the outside of the image decoding device 2 as a decoded texture image block. Thereafter, the process proceeds to step S433.
  • Step S433 The screen storage unit 201 arranges the reference image block input from the addition unit 214 at the position of the block in the corresponding frame and stores it as a reference image. Thereafter, the process proceeds to step S434.
  • Step S434 The image decoding apparatus 2 determines whether there is an area in which the reference image block of the input frame has not been decoded yet. When the image decoding apparatus 2 determines that there is an area where the reference image block has not been decoded yet, the position of the block for decoding the reference image block is shifted in the raster scan order so that the blocks do not overlap. The distance image decoding unit 23 shifts the position of the distance image block to the position of the block for decoding the reference image block. Then, it returns to step S402. When the image decoding device 2 determines that there is no region from which the reference image block has not yet been extracted, the image decoding device 2 ends the process of decoding the texture image of the input frame.
  • FIG. 17 is a conceptual diagram illustrating an example of a texture image according to the present embodiment.
  • FIG. 17 shows a texture image t1 input by the texture image input unit 100 as an encoding target.
  • a rectangular portion shown at the lower right of the center of the texture image t1 indicates a texture image block u1 extracted by the texture image input unit 100.
  • FIG. 18 is a conceptual diagram illustrating an example of a reference image according to the present embodiment.
  • FIG. 18 shows an encoded or decoded reference image r0.
  • the reference image r0 is a reference image generated in the process of encoding the texture image t0 that is one frame past the texture image t1.
  • a rectangular portion shown at a substantially central portion of the reference image r0 indicates a reference image block v0.
  • the coordinates of the reference image block v0 are the same as the coordinates of the texture image block u1.
  • FIG. 19 is a conceptual diagram showing an example of motion region information according to the present embodiment.
  • FIG. 19 shows the motion area information m.
  • the motion region information m is generated by the motion region determination unit 1031 based on the texture image block u1 and the reference image block v0.
  • FIG. 20 is a conceptual diagram illustrating an example of a distance image according to the present embodiment.
  • FIG. 20 shows the distance image d1 decoded by the distance image encoding unit 12.
  • the distance image d1 indicates distance information from the viewpoint of the subject indicated by the texture image t1.
  • FIG. 21 is a conceptual diagram illustrating an example of a distance image block according to the present embodiment.
  • FIG. 21 shows a binarized distance pattern n1 calculated by the pattern determining unit 1032 or the pattern determining unit 2032 of the type determining unit 103 based on the distance image block.
  • FIG. 22 is a conceptual diagram illustrating another example of the texture image according to the present embodiment.
  • FIG. 22 shows the texture image t1 and the texture image block u1 described above.
  • the region p1 included in the texture image block u1 is a region occupied by the signal value 1 included in the pattern block that the motion prediction determination unit 1033 of the type determination unit 103 determines to be similar to the motion region m.
  • This pattern block is the pattern block 306 in FIG.
  • FIG. 23 is a conceptual diagram illustrating another example of the reference image according to the present embodiment.
  • FIG. 23 shows the reference image r1 described above.
  • the above-described region p1 is shown at the lower right of the center of the reference image r1.
  • the region p1 is a region occupied by pixels extracted by the motion region prediction unit 106 or the motion region prediction unit 206 as a texture image pattern.
  • a region p0 shown on the right side of the region p1 is a region that the motion region prediction unit 106 or the motion region prediction unit 206 extracts as a reference image pattern from the reference image r1.
  • An arrow from the region p0 to the region p1 indicates a motion vector detected by the motion region prediction unit 106 or decoded by the motion region prediction unit 206.
  • a screen storage unit that stores a reference image of a frame encoded in the past; And a codebook that stores a plurality of pattern blocks each including a pixel having a first signal value and a pixel having another signal value and having different distributions of the pixels having the first signal value.
  • a motion area which is an area representing an image of the subject moving from the block, is determined based on the block of the reference image read out from the screen storage unit, and a distance image composed of a depth value for each pixel representing the distance from the viewpoint to the subject.
  • a pattern block is read from the codebook, and based on the block of the texture image and the block of the read reference image Among the pixels included in the calculated predicted image block, determining a motion region prediction signal composed of signal values of the pixels of the first signal value identical coordinates and pixel taking of the read pattern blocks.
  • a screen storage unit that stores a reference image of a frame decoded in the past, a pixel that takes a first signal value, and other A code book for storing a plurality of pattern blocks having different pixel distributions, each pixel having a signal value, and having a depth value for each pixel representing a distance from the viewpoint to the subject.
  • the pattern block corresponding to the motion region where the luminance value changes significantly due to the movement of the subject between the screens (frames) in the coding of the texture image can be selected based on the distance image. Is spared. Therefore, according to this embodiment, a texture image can be encoded or decoded with high efficiency. Further, in the present embodiment, encoding is performed using a predicted image generated based on a pixel having the first signal value among pixels included in the pattern block, and therefore, the amount of information to be encoded, and thus input / output information The amount can be reduced. Therefore, according to this embodiment, a texture image can be efficiently encoded or decoded.
  • encoding is performed using a predicted image generated based on a pixel having the first signal value among pixels included in the pattern block, and therefore, the amount of information to be encoded, and thus input / output information The amount can be reduced. Therefore, according to this embodiment, a texture image can be encoded or decoded with high efficiency.
  • the sizes of the texture image block, the distance image block, the predicted image block, and the reference image block have been described as being 16 pixels in the horizontal direction ⁇ 16 pixels in the vertical direction, but the present invention is not limited thereto.
  • This size is, for example, horizontal 8 pixels ⁇ vertical 8 pixels, horizontal 4 pixels ⁇ vertical 4 pixels, horizontal 32 pixels ⁇ vertical 32 pixels, horizontal 16 pixels ⁇ vertical 8 pixels, horizontal 8 Of the pixels x 16 pixels in the vertical direction, 8 pixels in the horizontal direction x 4 pixels in the vertical direction, 4 pixels in the horizontal direction x 8 pixels in the vertical direction, 32 pixels in the horizontal direction x 16 pixels in the vertical direction, 16 pixels in the horizontal direction x 32 pixels in the vertical direction Either is acceptable.
  • the switch 1041, the switch 1042, the switch 1043, the switch 1044, the motion prediction unit 105, the motion region prediction unit 106, the intra-screen prediction unit 107, and the subtraction unit 108 for example, the switch 1041, the switch 1042, the switch 1043, the switch 1044, the motion prediction unit 105, the motion region prediction unit 106, the intra-screen prediction unit 107, and the subtraction unit 108.
  • Coding control unit 110 DCT unit 111, inverse DCT unit 112, inverse arrangement unit 113, addition unit 114, variable length coding unit 115 and distance image coding unit 12, part of the image decoding device 2, for example, pattern Determination unit 2032, switch 2042, switch 2043, switch 2044, motion prediction unit 205, motion region prediction unit 206, intra-screen prediction unit 207, inverse DCT unit 212, inverse arrangement unit 213, addition unit 214, variable length decoding unit 215,
  • the distance image decoding unit 23 may be realized by a computer.
  • the program for realizing the control function may be recorded on a computer-readable recording medium, and the program recorded on the recording medium may be read by a computer system and executed.
  • the “computer system” is a computer system built in the image encoding device 1 or the image decoding device 2 and includes an OS and hardware such as peripheral devices.
  • the “computer-readable recording medium” refers to a storage device such as a flexible medium, a magneto-optical disk, a portable medium such as a ROM or a CD-ROM, and a hard disk incorporated in a computer system.
  • the “computer-readable recording medium” is a medium that dynamically holds a program for a short time, such as a communication line when transmitting a program via a network such as the Internet or a communication line such as a telephone line,
  • a volatile memory inside a computer system serving as a server or a client may be included and a program that holds a program for a certain period of time.
  • the program may be a program for realizing a part of the functions described above, and may be a program capable of realizing the functions described above in combination with a program already recorded in a computer system.
  • LSI Large Scale Integration
  • Each functional block of the image encoding device 1 or the image decoding device 2 may be individually made into a processor, or a part or all of them may be integrated into a processor.
  • the method of circuit integration is not limited to LSI, and may be realized by a dedicated circuit or a general-purpose processor. Further, in the case where an integrated circuit technology that replaces LSI appears due to progress in semiconductor technology, an integrated circuit based on the technology may be used.
  • the image encoding device, the image encoding method, the image encoding program, the image decoding device, the image decoding method, and the image decoding program according to the present invention compress the information amount of the image signal representing a three-dimensional image. For example, it is suitable for storage and transmission of image content.
  • Image encoding device 100 ... texture image input unit, 101: Screen storage unit, 102 ... code book, 103 ... type determination unit, 1031 ... Motion region determination unit, 1032 ... Pattern determining unit, 1033 ... motion prediction determination unit 1041 ... switch, 1042 ... switch, 1043 ... switch, 1044 ... switch, 105 ... a motion prediction unit, 106 ... a motion region prediction unit, 107: In-screen prediction unit, 108 ... subtraction unit, 109 ... array part, 110: Encoding control unit, 111 ... DCT section, 112 ... Inverse DCT section, 113 ... reverse arrangement part, 114 ... addition part, 12 ... Distance image encoding unit 2 ...
  • Image decoding device 201 ... screen storage unit, 202 ... code book, 2032 ... pattern determination unit, 2042 ... switch, 2043 ... switch, 2044 ... switch, 205 ... a motion prediction unit, 206: Motion region prediction unit, 207 ... In-screen prediction unit, 212 ... Inverse DCT section, 213 ... reverse arrangement part, 214 ... Adder, 215 ... Variable length decoding unit, 23: Distance image decoding unit

Landscapes

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

Abstract

 画素毎の輝度値からなるテクスチャ画像をブロック毎に符号化する際、過去に符号化したテクスチャ画像を参照画像として記憶する画面記憶部と、第1の信号値をとる画素と第2の信号値をとる画素からなり、前記第1の信号値をとる画素の分布が異なる複数個のパターンブロックを記憶するコードブックとを用い、パターン決定部は視点から被写体までの距離を表す画素毎の深度値からなる距離画像のブロックに基づきパターンブロックを前記コードブックから選択し、動き領域予測部は前記パターン決定部が選択したパターンブロックと前記画面記憶部から読み出した参照画像に基づいて前記テクスチャ画像のブロックに対して動き予測を行う。

Description

画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法及び画像復号プログラム
 本発明は、画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法及び画像復号プログラムに関する。
 本願は、2011年5月10日に、日本に出願された特願2011-105183号に基づき優先権を主張し、その内容をここに援用する。
 被写体の三次元形状を記録又は送受信するために、テクスチャ画像と距離画像を用いる方法が提案されていた。テクスチャ画像(texture map;「基準画像」、「平面画像」、又は「カラー画像」と言うことがある)とは、被写空間に含まれる被写体や背景の色彩や濃度(「輝度」と言うことがある)を表す信号のことであって、二次元平面に配置された画像の画素毎の信号値からなる画像信号である。距離画像(depth map;「デプスマップ」と言うことがある)とは、三次元の被写空間に含まれる被写体及び背景の視点画素毎の視点(撮影装置等)からの距離に対応する信号値(「深度値」、「デプス値(depth)」と言うことがある)であって、二次元平面に配置された画素毎の信号値からなる画像信号である。距離画像を構成する画素は、テクスチャ画像を構成する画素と対応する。
 距離画像は、それと対応するテクスチャ画像とともに利用されることが多く、テクスチャ画像とは独立に符号化されてきた。例えば、非特許文献1及び非特許文献2に記載の符号化方式では、移動する被写体の画像を含む画像ブロックを検知し、検知した画像ブロックにおいて予め定めた複数のパターンの中から、その被写体の画像を含む領域に対応するパターンを選択する。また、例えば非特許文献3に記載の符号化方式では、1つの画像ブロック(マクロブロック)を、より画素数が少ないサブブロックに分割する。その符号化方式では、移動する被写体の画像を含むサブブロックと、そのような画像を含まないサブブロックに分類する。
Kwak-Wai Wong, Kin-Man Lam and Wan-Chi Siu,"An Efficient Low Bit-Rate Video-Coding Algorithm Focusing on Moving Regions",IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY,The Institute of Electrical and Electronics Engineers Incorporated、Oct. 2001、Vol.11,No.10,p.1128-1134 Manoranjan Paul, Manzur Murshed and Laurence Dooley,"Impact of Macroblock Classification on Low Bit Rate Video Coding Focusing on Moving Objects",Proceedings of the Intetnational Conference on Computer and Information Technology (ICCIT‘02),Dhaka, Bangladesh,26-28 December 2002,p.465-470 TELECOMMUNICATION STANDARIZATION SECTOR OF ITU,Intra prediction process,"ITU-T Recommendation H.264 Advanced video coding for generic audio visual services",INTERNATIONAL TELECOMMUNICATION UNION,2003.5,p.100-110
 しかしながら、非特許文献1又は非特許文献2に記載の符号化方式では、選択したパターンを示す符号を符号化出力とする。非特許文献3に記載の符号化方式では、さらに分割されたサブブロック各々に対応する動きベクトルを示す符号を符号化出力とする。そのため、非特許文献1-3に記載の符号化方式では、いずれも能率が低下していた問題点があった。
 本発明は上記の点に鑑みてなされたものであり、テクスチャ画像を高い能率で符号化又は復号できる画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法及び画像復号プログラムを提供する。
(1)本発明は上記の課題を解決するためになされたものであり、本発明の一態様は、画素毎の輝度値からなるテクスチャ画像をブロック毎に符号化する画像符号化装置において、過去に符号化したテクスチャ画像の参照画像として記憶する画面記憶部と、第1の信号値をとる画素と第2の信号値をとる画素からなり、前記第1の信号値をとる画素の分布が異なる複数個のパターンブロックを記憶するコードブックと、視点から被写体までの距離を表す画素毎の深度値からなる距離画像のブロックに基づきパターンブロックを前記コードブックから選択するパターン決定部と、前記パターン決定部が選択したパターンブロックと前記画面記憶部から読み出した参照画像に基づいて前記テクスチャ画像のブロックに対して動き予測を行う動き領域予測部とを備えることを特徴とする画像符号化装置である。
(2)本発明のその他の態様は、上述の画像符号化装置であって、前記動き領域予測部は、前記パターン決定部が選択したパターンブロックにおける第1の信号値をとる画素と同一位置の画素に対して動き予測を行うことを特徴とする。
(3)本発明のその他の態様は、上述の画像符号化装置であって、前記テクスチャ画像のブロックから被写体が動く画像を表す領域である動き領域を前記画面記憶部から読み出した参照画像のブロックに基づいて決定する動き領域決定部と、前記動き領域決定部が決定した動き領域と、前記パターン決定部が選択したパターンブロックの前記第1の信号値をとる画素の分布に基づき、前記動き領域予測部に動き予測を行わせるか否かを決定する動き予測決定部を備えることを特徴とする。
(4)本発明のその他の態様は、上述の画像符号化装置であって、前記パターン決定部は、前記距離画像のブロックに含まれる画素毎の深度値が予め設定された閾値を超える画素の分布と前記第1の信号値をとる画素の分布に基づき、前記パターンブロックを選択することを特徴とする。
(5)本発明のその他の態様は、過去に符号化したテクスチャ画像を参照画像として記憶する画面記憶部と、第1の信号値をとる画素と第2の信号値をとる画素からなり、前記第1の信号値をとる画素の分布が異なる複数個のパターンブロックを記憶するコードブックを備え、画素毎の輝度値からなるテクスチャ画像をブロック毎に符号化する画像符号化装置における画像符号化方法において、前記画像符号化装置は、視点から被写体までの距離を表す画素毎の深度値からなる距離画像のブロックに基づきパターンブロックを前記コードブックから選択する第1の過程と、前記画像符号化装置は、選択された前記パターンブロックと前記画面記憶部から読み出した参照画像に基づいて前記テクスチャ画像のブロックに対して動き予測を行う第2の過程とを有することを特徴とする画像符号化方法である。
(6)本発明のその他の態様は、過去に符号化したテクスチャ画像を参照画像として記憶する画面記憶部と、第1の信号値をとる画素と第2の信号値をとる画素からなり、前記第1の信号値をとる画素の分布が異なる複数個のパターンブロックを記憶するコードブックを備え、画素毎の輝度値からなるテクスチャ画像をブロック毎に符号化する画像符号化装置が備えるコンピュータに、視点から被写体までの距離を表す画素毎の深度値からなる距離画像のブロックに基づきパターンブロックを前記コードブックから選択する手順、選択された前記パターンブロックと前記画面記憶部から読み出した参照画像に基づいて前記テクスチャ画像のブロックに対して動き予測を行う手順を実行させるための画像符号化プログラムである。
(7)本発明のその他の態様は、画素毎の輝度値からなるテクスチャ画像をブロック毎に復号する画像復号装置において、過去に復号したテクスチャ画像を参照画像として記憶する画面記憶部と、第1の信号値をとる画素と第2の信号値をとる画素からなり、前記第1の信号値をとる画素の分布が異なる複数個のパターンブロックを記憶するコードブックと、視点から被写体までの距離を表す画素毎の深度値からなる距離画像のブロックに基づきパターンブロックを前記コードブックから選択するパターン決定部と、前記パターン決定部が選択したパターンブロックと前記画面記憶部から読み出した参照画像に基づいて前記テクスチャ画像のブロックに対して動き予測を行う動き領域予測部とを備えることを特徴とする画像復号装置である。
(8)本発明のその他の態様は、上述の画像復号装置であって、前記動き領域予測部は、前記パターン決定部が選択したパターンブロックにおける第1の信号値をとる画素と同一位置の画素に対して動き予測を行うことを特徴とする。
(9)本発明のその他の態様は、上述の画像復号装置であって、前記パターン決定部は、前記距離画像のブロックに含まれる画素毎の深度値が予め設定された閾値を超える画素の分布と前記第1の信号値をとる画素の分布に基づき、前記パターンブロックを選択することを特徴とする。
(10)本発明のその他の態様は、過去に復号したテクスチャ画像を参照画像として記憶する画面記憶部と、第1の信号値をとる画素と第2の信号値をとる画素からなり、前記第1の信号値をとる画素の分布が異なる複数個のパターンブロックを記憶するコードブックとを備え、画素毎の輝度値からなるテクスチャ画像をブロック毎に復号する画像復号装置における画像復号方法において、前記画像復号装置が、視点から被写体までの距離を表す画素毎の深度値からなる距離画像のブロックに基づきパターンブロックを前記コードブックから選択する第1の過程と、前記画像復号装置が、前記選択したパターンブロックと前記画面記憶部から読み出した参照画像に基づいて前記テクスチャ画像のブロックに対して動き予測を行う第2の過程とを有することを特徴とする画像復号方法である。
(11)本発明のその他の態様は、過去に復号したテクスチャ画像を参照画像として記憶する画面記憶部と、第1の信号値をとる画素と第2の信号値をとる画素からなり、前記第1の信号値をとる画素の分布が異なる複数個のパターンブロックを記憶するコードブックとを備え、画素毎の輝度値からなるテクスチャ画像をブロック毎に復号する画像復号装置が備えるコンピュータに、視点から被写体までの距離を表す画素毎の深度値からなる距離画像のブロックに基づきパターンブロックを前記コードブックから選択する手順、前記選択したパターンブロックと前記画面記憶部から読み出した参照画像に基づいて前記テクスチャ画像のブロックに対して動き予測を行う手順を実行させるための画像復号プログラムである。
 本発明によれば、テクスチャ画像を高い能率で符号化又は復号できる。
本実施形態に係る3次元画像撮影システムを示す概略図である。 本実施形態に係る画像符号化装置の構成を示す概略図である。 本実施形態に係るパターンブロックの一例を示す概念図である。 本実施形態に係る配列パターンの一例を示す図である。 本実施形態における配列前後の画素の座標の一例を示す概念図である。 本実施形態における配列前後の画素の座標のその他の例を示す概念図である。 本実施形態に係るパターンブロックのその他の例を示す概念図である。 本実施形態に係る配列パターンのその他の例を示す図である。 本実施形態における配列前後の画素の座標のその他の例を示す概念図である。 本実施形態における配列前後の画素の座標のその他の例を示す概念図である。 本実施形態における配列先ブロックのその他の例を示す図である。 本実施形態に係る型判定部の構成を示す概略図である。 本実施形態に係る画像符号化装置が行う画像符号化処理を示すフローチャートである。 本実施形態に係る型判定部が行う型判定処理を示すフローチャートである。 本実施形態に係る画像復号装置の構成を示す概略図である。 本実施形態に係る画像復号装置が行う画像復号処理を示すフローチャートである。 本実施形態に係るテクスチャ画像の一例を示す概念図である。 本実施形態に係る参照画像の一例を示す概念図である。 本実施形態に係る動き領域情報の一例を示す概念図である。 本実施形態に係る距離画像の一例を示す概念図である。 本実施形態に係る距離画像ブロックの一例を示す概念図である。 本実施形態に係るテクスチャ画像のその他の例を示す概念図である。 本実施形態に係る参照画像のその他の例を示す概念図である。
 以下、図面を参照しながら本発明の実施形態について説明する。
 図1は、本実施形態に係る3次元画像撮影システムを示す概略図である。
 この画像撮影システムは、撮影装置31、撮影装置32、画像前置処理部41及び画像符号化装置1を含んで構成される。
 撮影装置31及び撮影装置32は、互いに異なる位置(視点)に設置され同一の視野に含まれる被写体の画像を予め定めた時間間隔で撮影する。撮影装置31及び撮影装置32は、撮影した画像をそれぞれ画像前置処理部41に出力する。
 画像前置処理部41は、撮影装置31及び撮影装置32のいずれか一方、例えば撮影装置31から入力された画像をテクスチャ画像と定める。画像前置処理部41は、テクスチャ画像と、その他の撮影装置32から入力された画像との視差を画素毎に算出し、算出した視差に基づき距離画像を生成する。距離画像では、画素毎に、視点から被写体までの距離を表す深度値が定められている。例えば、国際標準化機構/国際電機標準会議(ISO/IEC)のワーキンググループであるMPEG(Moving Picture Experts Group)が定めた国際規格MPEC-C part3では、深度値を8ビット(256階層)で表すことを規定している。即ち、距離画像は、画素ごとの深度値を用いて濃淡を表す。また、視点から被写体までの距離が近いほど、深度値がより大きくなるため、より高い輝度の(より明るい)画像を構成する。
 画像前置処理部41は、テクスチャ画像と生成した距離画像を画像符号化装置1に出力する。
 なお、本実施形態では、画像撮影システムが備える撮影装置の数は2台に限らず、3台以上であってもよい。また、画像符号化装置1が入力されるテクスチャ画像及び距離画像は、撮影装置31及び撮影装置32が撮影した画像に基づくものでなくともよく、予め合成された画像であってもよい。
 図2は、本実施形態に係る画像符号化装置1の構成を示す概略図である。
 画像符号化装置1は、テクスチャ画像入力部100、画面記憶部101、コードブック102、型判定部103、スイッチ1041、スイッチ1042、スイッチ1043、スイッチ1044、動き予測部105、動き領域予測部106、画面内予測部107、減算部108、配列部109、符号化制御部110、DCT部111、逆DCT部112、逆配列部113、加算部114、可変長符号化部115及び距離画像符号化部12を含んで構成される。
 テクスチャ画像入力部100は、画像符号化装置1の外部からテクスチャ画像をフレーム毎に入力され、入力されたテクスチャ画像からブロック(テクスチャ画像ブロック)を抽出する。
 テクスチャ画像入力部100は、抽出したテクスチャ画像ブロックを型判定部103、動き予測部105、動き領域予測部106、画面内予測部107、減算部108及び符号化制御部110に出力する。
 テクスチャ画像ブロックは、予め定めた数の画素(例えば、水平方向16画素×垂直方向16画素)からなる。
 テクスチャ画像入力部100は、ラスタースキャンの順序でテクスチャ画像ブロックを抽出するブロックの位置を、各ブロックが重ならないようにシフトさせる。即ち、テクスチャ画像入力部100は、テクスチャ画像ブロックを抽出するブロックをフレームの左上端から順次水平方向の画素数だけ右に移動させる。テクスチャ画像入力部100は、テクスチャ画像ブロックを抽出するブロックの右端がフレームの右端に達した後、そのブロックを垂直方向の画素数だけ下で、かつフレームの左端に移動させる。テクスチャ画像入力部100は、このようにしてテクスチャ画像ブロックを抽出するブロックがフレームの右下に達するまで移動させる。
 画面記憶部101は、加算部114から入力された参照画像ブロックを、対応するフレームにおけるそのブロックの位置に配置して参照画像として記憶する。この参照画像ブロックは、過去にテクスチャ画像ブロックを符号化した画像ブロックである。このように参照画像ブロックを配置して構成したフレームの画像信号を参照画像と呼ぶ。画面記憶部101は、現在から予め設定されたフレーム数(例えば5フレーム)過去のフレームの参照画像を記憶し、それ以前の過去のフレームの参照画像を削除する。
 コードブック102は、複数のパターンブロックと、配列パターンを各パターンブロックに対応づけて記憶する。
 パターンブロックとは、それぞれテクスチャ画像ブロックと同じ数の画素を含むデータブロックであって、その画素の一部の画素に対応する信号値は予め定めた第1の信号値(例えば1)であり、その他の画素に対応する信号値は、信号値1とは異なる値(例えば0)である。コードブック102に記憶されるパターンブロックは、互いに信号値1又は信号値0が占める画素の領域が異なる。
 図3は、本実施形態に係るパターンブロックの一例を示す概念図である。
 図3は、8個のパターンブロック301~308を示す。各パターンブロックにおいて、256画素(水平方向16画素×垂直方向16画素)を含み、白抜きの部分は信号値1を示す画素(64画素)が占める部分を示し、塗りつぶしの部分は信号値0を示す画素(192画素)が占める部分を示す。
 パターンブロック301において、左側4列の画素は信号値1をとり、右側12列の画素は信号値0をとる画素である。パターンブロック302において、左側12列の画素は信号値0をとり、右側4列の画素は信号値1をとる。パターンブロック303において、上側4行の画素は信号値1をとり、下側12行の画素は信号値0をとる。パターンブロック304において、上側12行の画素は信号値0をとり、下側4行の画素は信号値1をとる。
 パターンブロック305において、左下端から8行目から右下端を横切る線より下側の画素は信号値1をとり、その線より上側の画素は信号値0をとる。パターンブロック306において、左下端から右下端から8行目を横切る線より下側の画素は信号値1をとり、その線より上側の画素は信号値0をとる。パターンブロック307において、左上端から8列目より左下端を横切る線より左側の画素は信号値1をとり、その線より右側の画素は信号値0をとる。パターンブロック308において、右上端から8列目より右下端を横切る線より右の画素は信号値1をとり、その線より左の画素は信号値0をとる。
 配列パターンとは、各パターンブロックに含まれる信号値1をとる各画素の配列前の座標と配列部109が配列する配列後の座標を対応付け、配列前の座標を読み取る順に記憶するデータパターンである。
 図4は、本実施形態に係る配列パターンの一例を示す図である。
 図4において、最左列の各行はパターンブロックを示す。図4の最左列の第2行はパターンブロック301を示し、その後にパターンブロック305を示す。図4の最上行のq、q、q、…q63、q64は、配列部109がその配列前の座標の画素を読み取る順序を示す。各パターンブロックに対応する2つの行のうち、上の行が、各パターンブロックが含む信号値1をとる画素の配列前の座標を示し、下の行が、配列後の座標を示す。
 図4のパターンブロック301において、配列部109は、座標(1、1)、(2、1)、(3、1)…(2、16)、(1,16)の順で画素を読み出し、これらの座標が配列後の座標(1、1)、(2、1)、(3、1)…(2、8)、(1、8)に各々対応することを示す。
 図4のパターンブロック301において、配列部109は、座標(16、16)、(15、16)、(15、15)…(2、8)、(1,8)の順で画素を読み出し、これらの座標が配列後の座標(1、1)、(2、1)、(3、1)…(2、8)、(1、8)に各々対応することを示す。
 図5は、本実施形態における配列前後の画素の座標の一例を示す概念図である。
 図5の左側はパターンブロック301を示す。パターンブロック301の左上端から順次空間的に隣り合う画素を通り、左下端に向かう破線の矢印は、配列部109が配列前の座標の画素を読み取る順序q、q、q、…q63、q64を示す。読み取る画素の順序を順次空間的に隣り合う画素とすることで、画素毎の空間的な変動の少ない成分を維持することができる。
 図5の右側は配列先となる配列先ブロックを示す。この例では、配列先ブロックは、64画素(水平方向8画素×垂直方向8画素)を含む。配列先ブロックの左上端から順次空間的に隣り合う画素を通り、左下端に向かう破線の矢印は、配列部109が読み取った画素毎に配置後の座標を配置する順序q、q、q、…q63、q64を示す。配列先ブロックにおいて水平方向と垂直方向とで画素数を等しくすることで、後述するDCT処理を行って得られる周波数領域信号の空間周波数の精度を水平方向と垂直方向で等しくすることができる。また、配列先ブロックでも、配列後の画素を順次空間的に隣り合う画素とすることで、画素毎の空間的な変動の少ない成分を維持することができる。
 図6は、本実施形態における配列前後の画素の座標のその他の例を示す概念図である。
 図6の左側はパターンブロック309を示す。パターンブロック309の右下端から順次空間的に隣り合う画素を通り、左下端に向かう破線の矢印は、配列部109が配列前の座標の画素を読み取る順序q、q、q、…q63、q64を示す。
 図6の右側は配列先となる配列先ブロック(64画素、水平方向8画素×垂直方向8画素)を示す。配列先ブロックの左上端から順次空間的に隣り合う画素を通り、左下端に向かう破線の矢印は、配列部109が配列前の座標の画素を配列後の座標に配列する順序q、q、q、…q63、q64を示す。
 1個のパターンブロックに含まれる信号値1をとる画素数は、64個に限られず、その個数よりも多くても少なくてもよい。例えば、ある整数b(bは2又は2よりも大きい)の二乗値bの整数a倍であってもよい。
 図7は、本実施形態に係るパターンブロックのその他の例を示す概念図である。
 図7は、8個のパターンブロック321~324、331~334を示す。各パターンブロックにおいて、256画素(水平方向16画素×垂直方向16画素)を含み、白抜きの部分は信号値1を示す画素が占める部分を示し、塗りつぶしの部分は信号値0を示す画素が占める部分を示す。パターンブロック321~324において、各々信号値1をとる画素の数は128個(2×8個)である。パターンブロック331~334において、各々信号値1をとる画素の数は192個(3×8個)である。
 パターンブロック321において、左側8列の画素は信号値1をとり、右側8列の画素は信号値0をとる画素である。パターンブロック322において、左側8列の画素は信号値0をとり、右側8列の画素は信号値1をとる。パターンブロック323において、上側8行の画素は信号値1をとり、下側8行の画素は信号値0をとる。パターンブロック324において、上側8行の画素は信号値0をとり、最下行から下側8行の画素は信号値1をとる。
 パターンブロック331において、左側12列の画素は信号値1をとり、右側4列の画素は信号値0をとる画素である。パターンブロック332において、左側4列の画素は信号値0をとり、右側12列の画素は信号値1をとる。パターンブロック333において、上側12行の画素は信号値1をとり、下側4行の画素は信号値0をとる。パターンブロック334において、上側4行の画素は信号値0をとり、下側12行の画素は信号値1をとる。
 このように、信号値1をとる画素数が、整数値8の二乗値の整数倍の場合には、配列先ブロックとして水平方向の画素数と垂直方向の画素数が等しい配列先ブロックを、複数個用いてもよい。従って、配列パターンは、パターンブロックに含まれる信号値1をとる画素の配列前の座標の座標に対応して、配列先の座標の他、配列先の配列先ブロックを示す情報を含む。
 図8は、本実施形態に係る配列パターンのその他の例を示す図である。
 図8において、最左列の各行はパターンブロックを示す。図8の最左列の第2行はパターンブロック321を示し、その後にパターンブロック331を示す。図8の最上行のq、q、q、…q63、q64、q65、q66、…q127、q128、q129、q130、…q191、q192は、配列部109がその配列前の座標の画素を読み取る順序を示す。各パターンブロックに対応する2つの行のうち、上の行が、各パターンブロックが含む信号値1をとる画素の配列前の座標を示し、下の行が、配列後の配列先ブロックと座標を示す。例えば、1、1、1とは、配列先ブロック1の座標(1、1)を示す。-印は該当するデータが存在しないことを示す。
 図8のパターンブロック321において、配列部109は、座標(1、1)、(2、1)、(3、1)…(2、8)、(1、8)、(1、9)、(2、9)…(2、16)、(1、16)の順で画素を読み出し、これらの配列前の座標に、各々配列先ブロック1の(1、1)、(2、1)、(3、1)…(2、8)、(1、8)、配列先ブロック2の(1、1)、(1、2)…(2、8)、(1、8)に配列後の配列先ブロック及び座標が対応することを示す。
 図8のパターンブロック331において、配列部109は、座標(1、1)、(2、1)、(3、1)…(6、10)、(6、9)、(6、8)、(6、7)…(11、7)、(11、8)、(11、9)、(11、10)…(16、2)、(16、1)の順で画素を読み出し、これらの配列前の座標に、各々配列先ブロック1の(1、1)、(2、1)、(3、1)…(2、8)、(1、8)、配列先ブロック2の(1、1)、(1、2)…(2、8)、(1、8)、配列先ブロック3の(1、1)、(1、2)…(2、8)、(1、8)に配列後の配列先ブロック及び座標が対応することを示す。
 図9は、本実施形態における配列前後の画素の座標のその他の例を示す概念図である。
 図9の左側はパターンブロック321を示す。パターンブロック321の左上端から順次空間的に隣り合う画素を通り、左下端に向かう破線の矢印は、配列部109が配列前の座標の画素を読み取る順序q、q、q、…q63、q64、q65、q66、…q127、q128を示す。図9の右上及び右下は配列先となる配列先ブロック421をそれぞれ示す。この例では、各配列先ブロックは、64画素(水平方向8画素×垂直方向8画素)を含む。各配列先ブロックの左上端から順次空間的に隣り合う画素を通って左下端に向かい、次の配列先ブロックに進む破線の矢印は、配列部109が読み取った画素を配置後の座標に配置する順序q、q、q、…q63、q64、q65、q66、…q127、q128を示す。 各配列先ブロックにおいて水平方向と垂直方向とで画素数を等しくすることで、後述するDCT処理を行って得られる周波数領域信号の空間周波数の精度を水平方向と垂直方向で等しくすることができる。
 図10は、本実施形態における配列前後の画素の座標のその他の例を示す概念図である。
 図10の左側はパターンブロック331を示す。パターンブロック331の左上端から順次空間的に隣り合う画素を通り、右下端に向かう破線の矢印は、配列部109が配列前の座標の画素を読み取る順序q、q、q、…q63、q64、q65、q66、…q127、q128、q129、q130、…q191、q192を示す。
 図10の右上、右中央及び右下は配列先となる配列先ブロック431をそれぞれ示す。この例では、各配列先ブロックは、64画素(水平方向8画素×垂直方向8画素)を含む。各配列先ブロックの左上端から順次空間的に隣り合う画素を通り、左下端に向かう破線の矢印は、配列部109が読み取った座標の画素を配列後の座標に配列する順序q、q、q、…q63、q64、q65、q66、…q127、q128、q129、q130、…q191、q192を示す。
 図5、6、9及び10に示す例では、読み取った座標の画素を配列先ブロックにおいて配列後の座標に配列する順序は全体として順次空間的に隣り合っているが、本実施形態ではこれに限られない。例えば、その配列する順序は、配列先ブロックを構成するサブブロック単位で隣り合っていてもよい。
 図11は、本実施形態における配列先ブロックのその他の例を示す図である。
 図11の左上は配列先ブロック402を示し、図11の右上は配列先ブロック403を示し、図11の左下は配列先ブロック404を示し、図11の右下は配列先ブロック405を示す。配列先ブロック402-405は、各々64画素(水平方向8画素×垂直方向8画素)を含む。
 配列先ブロック402において、左上端から右下端に向かう破線の矢印は、配列部109が読み取った座標の画素を配列後の座標に配列する順序q、q、q、q、q、…q15、q16、q17、q18、…q64を示す。この矢印は、当初配列先のブロック402の左上端から順次右隣の画素に進み第4列に達した後、次行の同じ列に進み、順次左隣の画素に進む。最左列に達した後、再度順次右隣の画素に進む。そして、第4行の第4列に達した後、最上行の第5列に進み、順次右隣の画素に進む。即ち、配列先ブロック402において、配列後の順序は、水平方向4画素×垂直方向4画素からなるサブブロック単位で隣り合う。
 配列先ブロック403において、左上端から右下端に向かう破線の矢印は、配列部109が読み取った座標の画素を配列後の座標に配列する順序q、q、q、q、q、…q64を示す。この矢印は、当初配列先のブロック403の左上端から右隣の第2列に達した後、次行の最左列に進み、その後左隣に進む。その後、最上行の第3列に進み、再度順次右隣の画素に進む。即ち、配列先ブロック403において、配列後の順序は、水平方向2画素×垂直方向2画素からなるサブブロック単位で隣り合う。
 配列先ブロック404において、左上端から最下行右から第4列目の画素に向かう破線の矢印は、配列部109が読み取った座標の画素を配列後の座標に配列する順序q、q、q、q、q、q、…q31、q32、q33、q34、…q64を示す。この矢印は、当初配列先のブロック402の左上端から順次右隣の画素に進み第4列に達した後、次行の同じ列に進み、順次左隣の画素に進む。最左列に達した後、次行の同じ列に進み、再度順次右隣の画素に進む。そして、ブロックの左下端に達した後、最上行の第5列に進み、順次左隣の画素に進む。即ち、配列先ブロック402において、配列後の座標に配列する順序は、水平方向4画素×垂直方向8画素からなるサブブロック単位で隣り合う。
 配列先ブロック405において、左上端から最下行右から第2列目の画素に向かう破線の矢印は、配列部109が読み取った座標の画素を配列後の座標に配列する順序q、q、q、q、…q15、q16、q17、q18、…q64を示す。この矢印は、当初配列先のブロック403の左上端から右隣の第2列に達した後、次行の同じ列に進み、左隣の画素に進む。そして、ブロックの左下端に達した後、最上行の第3列に進み、右隣の画素に進む。即ち、配列先ブロック403において、配列後の座標に配列する順序は、水平方向2画素×垂直方向8画素からなるサブブロック単位で隣り合う。
 図2に戻り、型判定部103は、テクスチャ画像入力部100からテクスチャ画像ブロックが入力され、距離画像符号化部12から距離画像ブロックが入力される。入力された距離画像ブロックのフレーム及び座標は、入力されたテクスチャ画像ブロックと同一である。
 型判定部103は、入力されたテクスチャ画像ブロックに対応する参照画像ブロックをさらに画面記憶部101から読み出し、入力された距離画像ブロックに対応するパターンブロックを読み出す。
 型判定部103は、入力されたテクスチャ画像ブロック、読み出した参照画像ブロック及び読み出したパターンブロックに基づき、そのテクスチャ画像ブロックにおける動き領域信号を算出する。
 型判定部103は、算出した動き領域信号と読み出したパターンブロックと照合し、照合したパターンブロックを動き領域予測部106に出力する。型判定部103は、照合したパターンブロックを示すパターンブロック信号を配列部109及び逆配列部113に出力する。
 型判定部103は、入力されたテクスチャ画像ブロック、距離画像ブロック、読み出した参照画像ブロック及びパターンブロックに基づき、そのテクスチャ画像の型を判定する。
 型判定部103は、判定した型を示す型信号をスイッチ1041、スイッチ1042、スイッチ1043及び可変長符号化部115に出力する。
 ここで、型判定部103の構成及び機能について説明する。
 図12は、本実施形態に係る型判定部103の構成を示す概略図である。
 型判定部103は、動き領域決定部1031、パターン決定部1032及び動き予測決定部1033を含んで構成される。
 動き領域決定部1031は、テクスチャ画像入力部100から入力されたテクスチャ画像ブロックにおいて、画面記憶部101から読み出した参照画像ブロックに基づいて、動き領域を決定する。
 動き領域とは、時間経過により画像が表示される位置が変化する領域である。動き領域決定部1031は、動き領域を、テクスチャ画像ブロックに含まれる座標(x,y)における画素の輝度値C(x,y)と参照画像ブロックに含まれる画素であって対応する座標(x,y)における画素の輝度値R(x,y)に基づいて座標(x,y)が動き領域か否かを判定する。ここで、動き領域決定部1031は、例えば輝度値C(x,y)と輝度値R(x,y)との差分の絶対値に基づき、動き領域情報M(x,y)を、式(1)を用いて算出する。
Figure JPOXMLDOC01-appb-M000001
 式(1)において、Bはクロージング処理を示す3行×3列の行列である。クロージング処理とは、画像信号に対して膨張処理を行い、生成された信号に対して収縮処理を行う処理である。膨張処理とは、注目画素に隣接する画素の輝度値のうち最大となる輝度値を、注目画素の輝度値と定める処理である。収縮処理とは、注目画素に隣接する画素の輝度値のうち最小となる輝度値を、注目画素の輝度値と定める処理である。従って、クロージング処理は、テクスチャ画像ブロック及び参照画像ブロックのうち画素間隔と同程度の空間周波数の成分である微細構造を除去して、その信号値を平滑化する。
 式(1)において、T(ν)は、νが予め設定された閾値、例えば2よりも大きい場合1を与え、νが予め設定された閾値と等しい又は小さい場合0を与える関数である。|…|は、…の絶対値を示す。即ち、動き領域情報M(x,y)は、座標における画素が動き領域であるか否かを示す。
 動き領域決定部1031が参照画像ブロックを読み出す参照画像であって、画面記憶部101に記憶されている参照画像は、符号化対象のフレームよりも過去のフレーム(例えば、1フレーム過去)の参照画像である。
 次に、動き領域決定部1031は、参照画像ブロックに含まれる動き領域の大きさ(画素数)が、予め設定された閾値TSMBよりも小さいか否か判断する。閾値TSMBは、参照画像ブロックに含まれる画素数が256個の場合、例えば8である。
 動き領域決定部1031は、その動き領域の大きさが閾値TSMBよりも小さいと判断したとき、そのテクスチャ画像ブロックの型をSMB(Static Macrobrock;静的マクロブロック)と判定する。このとき、動き領域決定部1031は、テクスチャ画像ブロックの型がSMBであることを示す型信号を動き予測決定部1033に出力する。
 動き領域決定部1031は、その動き領域の大きさが閾値TSMBと等しい又は、閾値TSMBより大きいと判断したとき、そのテクスチャ画像ブロックの型が非SMBと判定する。このとき、動き領域決定部1031は、テクスチャ画像ブロックの型が非SMBであることを示す型信号をパターン決定部1032に出力する。また、動き領域決定部1031は、動き領域情報を動き予測決定部1033に出力する。
 パターン決定部1032は、動き領域決定部1031からテクスチャ画像ブロックの型が非SMBであることを示す型信号を入力され、距離画像符号化部12から距離画像ブロックを入力される。パターン決定部1032は、読み出したパターンブロックのうち、入力された距離画像ブロックに対応するパターンブロックを決定する。
 ここで、パターン決定部1032は、距離画像ブロックに含まれる座標(x,y)毎の距離値V(x,y)を、例えば式(2)を用いて二値化し、二値化距離パターンN(x,y)を算出する。
Figure JPOXMLDOC01-appb-M000002
 式(2)において、U(ν)は、νが予め設定した閾値(例えば0)より大きい場合に1を与え、νがその閾値又はその閾値よりも小さい場合に0を与える。min(V(x,y))は、距離画像ブロックに含まれる距離値の最小値である。
 即ち、パターン決定部1032は、二値化距離パターンN(x,y)を、その閾値よりも距離値が大きい座標における値を1と決定し、その閾値と距離値が等しい又は距離値が小さい座標における値を0と決定する。
 パターン決定部1032は、コードブック102に記憶されたパターンブロックから二値化距離パターンN(x,y)に最も近似するパターンブロックを選択する。パターン決定部1032は、最も近似するパターンブロックを選択する際、パターンブロックn毎に例えば式(3)に示す指標値Dを算出する。
Figure JPOXMLDOC01-appb-M000003
 式(3)において、最初の和の記号における数値16は、この例におけるパターンブロックの水平方向の画素数である。後の和の記号における数値16は、この例におけるパターンブロックの垂直方向の画素数である。P(x,y)は、パターンブロックnの各座標(x,y)における信号値を示す。この例では、P(x,y)は、第1の信号値として1、とその他の信号値として0のいずれかである。
 そして、パターン決定部1032は、指標値Dを最小とするパターンブロックnを選択する。二値化距離パターンN(x,y)も、各座標(x,y)における信号値が1又は0をとるため、パターン決定部1032は、指標値Dを最小とするパターンブロックnを複数個選択する場合がある。そのような場合には、例えば、選択された複数個のパターンブロックの中から最も番号が小さい(又は大きい)パターンブロックを1個選択する。
 パターン決定部1032は、指標値Dの最小値が予め設定された閾値σよりも小さいか否か判断する。閾値σは、参照画像ブロックに含まれる画素数が256個の場合、例えば64である。
 パターン決定部1032は、指標値Dの最小値が予め設定された閾値σよりも小さいと判断した場合、テクスチャ画像ブロックの型をAMB(Active Macrobrock;活性マクロブロック)と判定する。パターン決定部1032は、テクスチャ画像ブロックの型がAMBであることを示す型信号を動き予測決定部1033に出力する。
 パターン決定部1032は、指標値Dの最小値が予め設定された閾値σと等しい又は閾値σより大きいと判断した場合、選択したパターンブロックP(x,y)とそのパターンブロックを示すパターンブロック信号を動き予測決定部1033に出力する。
 動き予測決定部1033は、動き領域決定部1031からテクスチャ画像ブロックの型がSMBであることを示す型信号又は動き領域情報M(x,y)を入力される。動き予測決定部1033は、パターン決定部1032からテクスチャ画像ブロックの型がAMBであることを示す型信号又は選択したパターンブロックP(x,y)並びにパターンブロック信号を入力される。
 動き予測決定部1033は、入力された動き領域情報M(x,y)と選択したパターンブロックP(x,y)が類似しているか否かを判断する。動き予測決定部1033は、この判断を行う際、例えば式(4)に示す指標値Eを算出する。
Figure JPOXMLDOC01-appb-M000004
 式(4)において、最初の和の記号における数値16は、この例におけるパターンブロックの水平方向の画素数である。後の和の記号における数値16は、この例におけるパターンブロックの垂直方向の画素数である。
 ここで、動き予測決定部1033は、算出した指標値Eが予め設定した閾値σよりも小さいか否か判断する。閾値σは、参照画像ブロックに含まれる画素数が256個の場合、例えば16である。
 動き予測決定部1033は、動き領域情報M(x,y)とパターンブロックP(x,y)が類似する、つまり算出した指標値Eが予め設定した閾値σよりも小さいと判断したとき、テクスチャ画像ブロックの型がRMB(Active-Region Macrobrock;動き領域マクロブロック)と判定する。即ち、選択したパターンブロックが信号値1をとる領域と動き領域が近似する状態であることを示す。このとき、動き予測決定部1033は、選択したパターンブロックを動き領域予測部106に出力する。また、動き予測決定部1033は、入力されたパターンブロック信号を配列部109及び逆配列部113に出力する。
 動き予測決定部1033は、動き領域情報M(x,y)とパターンブロックP(x,y)が類似しない、つまり算出した指標値Eが予め設定した閾値σと等しい、又は閾値σよりも大きいと判断したとき、テクスチャ画像ブロックの型がAMBと判定する。
 動き予測決定部1033は、テクスチャ画像ブロックの型を示す型信号をスイッチ1041、スイッチ1042、スイッチ1043及び可変長符号部115に出力する。
 図2に戻り、スイッチ1043は、型判定部103から入力された型信号がRMBを示す場合、スイッチを接点aに倒し、画面記憶部101から動き領域予測部106に参照信号ブロックを読み出せる状態にする。スイッチ1043は、型判定部103から入力された型信号がAMB又はSMBを示す場合、スイッチを接点bに倒し、画面記憶部101から動き予測部105に参照信号ブロックを読み出せる状態にする。
 動き予測部105は、テクスチャ画像入力部100からテクスチャ画像ブロックが入力され、画面記憶部101から参照画像を構成する参照画像ブロックを読み出す。動き予測部105は、入力された距離画像ブロックの座標と対応する参照画像ブロックとの座標との差分を動きベクトルとして検出する。動き予測部105は、動きベクトルを検出するために、例えばITU-T H.264規格書に記載されている方法を用いる。
 動き予測部105は、画面記憶部101に記憶されている過去の参照画像のフレームから参照画像ブロックを読み出す位置を、テクスチャ画像ブロックの位置から予め設定した範囲内において水平方向又は垂直方向に1画素ずつ移動させる。動き予測部105は、テクスチャ画像ブロックに含まれる画素毎の信号値と読み出した参照画像ブロックに含まれる画素毎の信号との類似性を示す指標値、例えば、SAD(Sum of Absolute Difference;絶対値和)を算出する。SADの値が小さいほど、テクスチャ画像ブロックに含まれる画素毎の信号値と読み出した参照画像ブロックに含まれる画素毎の信号値とが類似するという関係がある。そこで、動き予測部105は、SADを最小とする参照画像ブロックを、テクスチャ画像ブロックと対応する参照画像ブロックと定める。動き予測部105は、入力されたテクスチャ画像ブロックの座標と定めた参照画像ブロックの座標に基づき動きベクトルを算出する。
 動き予測部105は、定めた参照画像ブロックに基づき動き予測を行い、動き予測画像ブロックを生成する。動き予測部105は、動き予測において、例えば、定めた参照画像ブロックの座標をテクスチャ画像ブロックの座標に合わせることによって動き予測画像ブロックを生成する。
 動き予測部105は、生成した動き予測画像ブロックをスイッチ1044と符号化制御部110に出力し、動きベクトルを示す動きベクトル信号を符号化制御部110に出力する。
 動き領域予測部106は、テクスチャ画像入力部100からテクスチャ画像ブロックを入力され、型判定部103からパターンブロックが入力される。動き領域予測部106は、入力されたテクスチャ画像ブロックのうちパターンブロックにおいて信号値1をとる画素の信号値をテクスチャ画像パターンとして抽出する。
 動き領域予測部106は、画面記憶部101から参照画像を構成する参照画像ブロックを読み出す。ここで、動き領域予測部106は、画面記憶部101に記憶されている過去の参照画像のフレームから参照画像ブロックを読み出す位置を、テクスチャ画像ブロックの位置から予め設定した範囲内において水平方向又は垂直方向に1画素ずつ移動させる。
 動き領域予測部106は、読み出した参照画像ブロックのうちパターンブロックにおいて信号値1をとる画素の信号値を参照画像パターンとして抽出する。動き領域予測部106は、入力されたテクスチャ画像パターンの座標と対応する参照画像パターンとの座標との差分を動きベクトルとして検出する。
 ここで、動き領域予測部106は、テクスチャ画像パターンに含まれる画素毎の信号値と参照画像パターンに含まれる画素毎の信号との類似性を示す指標値、例えば、SADを算出する。動き領域予測部106は、SADを最小とする参照画像パターンを、テクスチャ画像パターンと対応する参照画像パターンと定める。動き領域予測部106は、テクスチャ画像パターンの座標と定めた参照画像パターンの座標に基づき動きベクトルを算出する。
 動き領域予測部106は、定めた参照画像パターンに基づき動き予測を行い、動き領域予測画像パターンを生成する。動き領域予測部106は、動き予測において、例えば、定めた参照画像パターンの座標をテクスチャ画像パターンの座標に合わせることによって動き領域予測画像パターンを生成する。動き領域予測部106は、ブロック全体の画素における輝度値を0としたゼロ画像ブロックに生成した動き領域予測画像パターンの各画素の輝度値を加算することによりゼロ信号を挿入して動き領域予測画像ブロックを生成する。
 動き領域予測部106は、生成した動き領域予測画像ブロックをスイッチ1044と符号化制御部110に出力し、動きベクトルを示す動きベクトル信号を符号化制御部110に出力する。
 画面内予測部107は、テクスチャ画像入力部100からテクスチャ画像ブロックを入力される。画面内予測部107は、画面記憶部101に記憶された参照画像であって、入力されたテクスチャ画像ブロックと同時刻に入力されたフレームの参照画像のうち既に符号化を行った参照画像ブロックを読み出す。画面内予測部107は、例えば、入力されたテクスチャ画像ブロックの左側又は上に隣接するブロックに対応する参照画像ブロックを読み出す。画面内予測部107は、読み出した参照画像ブロックに画面内予測を行い、画面内予測画像ブロックを生成する。画面内予測部107は、画面内予測を行うために、例えばITU-T H.264規格書に記載されている方法を用いる。
 画面内予測部107は、生成した画面内予測画像ブロックをスイッチ1044及び符号化制御部110に出力する。
 符号化制御部110は、テクスチャ画像入力部100からテクスチャ画像ブロックが入力される。符号化制御部110は、動き予測部105から動き予測画像ブロック及び動きベクトル信号が入力される。この場合、符号化制御部110は、テクスチャ画像ブロックと動き予測画像ブロックに基づき動き予測残差信号を算出する。
もしくは、符号化制御部110は、動き領域予測部106から動き領域予測画像ブロック及び動きベクトル信号が入力される。つまり、符号化制御部110は、動き予測部105又は動き領域予測部106からは同時に入力されず、何れか一方が入力される。この場合、符号化制御部110は、テクスチャ画像ブロックと動き領域予測画像ブロックに基づき動き領域予測残差信号を算出する。
符号化制御部110は、画面内予測部107から画面内予測画像ブロックが入力される。符号化制御部110は、テクスチャ画像ブロックと画面内予測画像ブロックに基づき画面内予測残差信号を算出する。
 符号化制御部110は、算出した動き予測残差信号の大きさと画面内予測残差信号の大きさに基づき、例えば予測残差信号が小さいほうの予測方式(動き予測又は画面内予測のいずれか)を決定する。又は、符号化制御部110は、算出した動き領域予測残差信号の大きさと画面内予測残差信号の大きさに基づき、例えば予測残差信号が小さいほうの予測方式(動き領域予測又は画面内予測のいずれか)を決定する。
 符号化制御部110は、決定した予測方式を示す予測方式信号をスイッチ1044及び可変長符号化部115に出力する。決定した予測方式が動き予測又は動き領域予測の場合には、動きベクトル信号を可変長符号化部115に出力する。
 なお、符号化制御部110は、各予測方式について公知のコスト関数を用いて算出したコストが最小となる予測方式を決定してもよい。ここで、符号化制御部110は、動き予測残差信号に基づき動き予測残差信号の情報量を算出し、動き予測残差信号とその情報量に基づいて動き予測コストを算出する。符号化制御部110は、動き領域予測残差信号に基づき動き領域予測残差信号の情報量を算出し、動き領域予測残差信号とその情報量に基づいて動き領域予測コストを算出する。符号化制御部110は、画面内予測残差信号に基づき画面内予測残差信号の情報量を算出し、画面内予測残差信号とその情報量に基づいて画面内予測コストを算出する。
 スイッチ1044は、動き予測部105から動き予測画像ブロックが入力され、動き領域予測部106から動き領域予測画像ブロックが入力され、画面内予測部107から画面内予測画像ブロックを入力され、符号化制御部110から予測方式信号を入力される。ここで、スイッチ1044は、スイッチ1043の作用により動き予測画像ブロック又は動き領域予測画像ブロックは同時に入力されず、何れか一方が入力される。
 スイッチ1044は、入力された予測方式信号が動き予測を示す場合、スイッチをcに倒し、動き予測画像ブロックを予測画像ブロックとして減算部108及び加算部114に出力する。スイッチ1044は、入力された予測方式信号が動き領域予測を示す場合、スイッチをcに倒し、動き領域予測画像ブロックを予測画像ブロックとして減算部108及び加算部114に出力する。スイッチ1044は、入力された予測方式信号が画面内予測を示す場合、スイッチをdに倒し、画面内予測画像ブロックを予測画像ブロックとして減算部108及び加算部114に出力する。
 減算部108は、テクスチャ画像入力部100から入力されたテクスチャ画像ブロックを構成する画素の輝度値からスイッチ1044から入力された予測画像ブロックを構成する画素の輝度値を各々減算し、残差信号ブロックを生成する。減算部108は生成した残差信号ブロックをスイッチ1041に出力する。
 スイッチ1041は、型判定部103から入力された型信号がRMBを示す場合、減算部108から入力された残差信号ブロックを配列部109に出力する。スイッチ1041は、型判定部103から入力された型信号がAMB又はSMBを示す場合、減算部108から入力された残差信号ブロックをDCT部111に出力する。
 配列部109は、スイッチ1041から残差信号ブロックが入力され、型判定部103からパターンブロック信号が入力される。配列部109は、入力されたパターンブロック信号が示すパターンブロックに対応する配列パターンをコードブック102から読み取る。配列部109は、読み取った配列パターンが示す配列前の座標の画素の輝度値を残差信号ブロックから読み取り、配列後の画素に配列して配列先ブロックを生成する。配列部109が輝度値を読み取り、配列する順序は配列パターンが示す配列前の座標及び配列後の座標の順序に従う。配列部109は、生成した配列先ブロックをDCT部111に出力する。
 DCT部111は、スイッチ1041から残差信号ブロック又は配列部109から配列先ブロックが入力される。DCT部111は、残差信号ブロック又は配列先ブロックを構成する画素の輝度値に2次元DCT(Discrete Cosine Transform;離散コサイン変換)を行って周波数領域信号に変換する。DCT部111は、変換した周波数領域信号を逆DCT部112及び可変長符号化部115に出力する。
 逆DCT部112は、DCT部110から入力された周波数領域信号に2次元逆DCT(Inverse Discrete Cosine Transform;離散コサイン逆変換)を行って残差信号ブロックに変換する。逆DCT部112は、変換した残差信号ブロックをスイッチ1042に出力する。
 スイッチ1042は、型判定部103から入力された型信号がRMBを示す場合、接点をaに倒し、逆DCT部112から入力された残差信号ブロックを配列先ブロックとして逆配列部113に出力する。スイッチ1042は、型判定部103から入力された型信号がAMB又はSMBを示す場合、接点をbに倒し、逆DCT部112から入力された残差信号ブロックを加算部114に出力する。
 逆配列部113は、スイッチ1042から配列先ブロックを入力され、型判定部103からパターンブロック信号を入力される。逆配列部113は、入力されたパターンブロック信号が示すパターンブロックに対応する配列パターンをコードブック102から読み取る。逆配列部113は、読み取った配列パターンが示す配列後の座標の画素の輝度値を残差信号ブロックから読み取り、配列前の画素に配列して残差信号ブロックを生成する。即ち、逆配列部113では、配列パターンを配列部109とは逆に参照する。逆配列部113が輝度値を読み取り、配列する順序は配列パターンが示す配列後の座標及び配列前の座標の順序に従う。逆配列部113は、生成した残差信号ブロックを加算部114に出力する。
 加算部114は、スイッチ1044から入力された予測信号ブロックを構成する画素の輝度値とスイッチ1042又は逆配列部113から入力された残差信号ブロックを構成する画素の輝度値を各々加算して、参照信号ブロックを生成する。加算部114は、生成した参照信号ブロックを画面記憶部101に出力する。
 可変長符号化部115は、型判定部103から型信号が、符号化制御部110から予測方式信号及び動きベクトル信号(該当する場合のみ)が、DCT部111から周波数領域信号が入力される。可変長符号化部115は、入力された周波数領域信号をアダマール変換し、変換して生成された信号を、より少ない情報量となるように圧縮符号化(可変長符号化)して圧縮残差信号を生成する。この圧縮符号化の一例として、可変長符号化部115は、エントロピー符号化を行う。可変長符号化部115は、圧縮残差信号、入力された型信号、動きベクトル信号及び予測方式信号をテクスチャ画像符号として画像符号化装置1の外部に出力する。
 距離画像符号化部12は、画像符号化装置1の外部から距離画像をフレーム毎に入力され、各フレームを構成するブロック毎に公知の画像符号化方法、例えばITU-T H.264規格書に記載された符号化方法を用いて符号化する。距離画像符号化部12は、符号化して生成した距離画像符号を画像符号化装置1の外部に出力する。距離画像符号化部12は、符号化の過程で生成した参照信号ブロックを距離画像ブロックとして型判定部103に出力する。この符号化の過程で生成した参照信号ブロックは、距離画像符号に基づいて復号距離画像を生成することができる。そのため、型判定部103が備えるパターン決定部1032及び後述するパターン決定部2032がパターンブロックを示す符号を出力する必要がなくなり、テクスチャ画像ブロックを高い能率で符号化又は復号することができる。
 次に、本実施形態に係る画像符号化装置1が行う画像符号化処理について説明する。
 図13は、本実施形態に係る画像符号化装置1が行う画像符号化処理を示すフローチャートである。
(ステップS201)テクスチャ画像入力部100は、画像符号化装置1の外部からテクスチャ画像をフレーム毎に入力される。
 距離画像符号化部12は、画像符号化装置1の外部から距離画像をフレーム毎に入力され、各フレームを構成するブロック毎に公知の画像符号化方法を用いて符号化する。その後、ステップS202に進む。
(ステップS202)テクスチャ画像入力部100は、入力されたテクスチャ画像からテクスチャ画像ブロックを抽出し、抽出したテクスチャ画像ブロックを型判定部103、動き予測部105、動き領域予測部106、画面内予測部107、減算部108及び符号化制御部110に出力する。
 距離画像符号化部12は、距離画像ブロックを符号化する過程で生成した参照信号ブロックを距離画像ブロックとして型判定部103に出力する。
 以下、ステップS247までの処理をフレーム内のブロック毎に繰り返す。
(ステップS203)型判定部103は、テクスチャ画像入力部100からテクスチャ画像ブロックが入力され、距離画像符号化部12から距離画像ブロックが入力される。型判定部103は、入力されたテクスチャ画像ブロックに対応する参照画像ブロックを画面記憶部101から読み出し、入力された距離画像ブロックに対応するパターンブロックを読み出す。
 型判定部103は、入力されたテクスチャ画像ブロック、読み出した参照画像ブロック及び読み出したパターンブロックに基づき、そのテクスチャ画像ブロックにおける動き領域信号を算出する。型判定部103は、算出した動き領域信号と読み出したパターンブロックと照合し、照合したパターンブロックを動き領域予測部106に出力する。型判定部103は、照合したパターンブロックを示すパターンブロック信号を配列部109及び逆配列部113に出力する。
 型判定部103は、入力されたテクスチャ画像ブロック、距離画像ブロック、読み出した参照画像ブロック及びパターンブロックに基づき、そのテクスチャ画像の型を判定する。
 型判定部103は、判定した型を示す型信号をスイッチ1041、スイッチ1042、スイッチ1043及び可変長符号化部115に出力する。その後、ステップS204に進む。
なお、ステップS203において型判定部103が行う型判定処理については図14を用いて後述する。
(ステップS204)スイッチ1041、スイッチ1042、スイッチ1043は型判定部103から入力された型信号がRMBを示すか、AMB又はSMBを示すかを判断する。
 スイッチ1041、スイッチ1042及びスイッチ1043が、型信号がRMBを示すと判断した場合(ステップS204 Y)、スイッチ1041は、減算部108から入力された残差信号ブロックを配列部109に出力する。このとき、スイッチ1042は、逆DCT部112から入力された残差信号ブロックを配列先ブロックとして逆配列部113に出力し、スイッチ1043は、画面記憶部101から動き領域予測部106に参照信号ブロックを読み出せる状態にする。その後、ステップS205に進む。
 スイッチ1041、スイッチ1042及びスイッチ1043が、型信号がAMB又はSMBを示すと判断した場合(ステップS204 N)、スイッチ1041は、減算部108から入力された残差信号ブロックをDCT部111に出力する。このとき、スイッチ1042は、逆DCT部112から入力された残差信号ブロックを加算部114に出力し、スイッチ1043は、画面記憶部101から動き予測部105に参照信号ブロックを読み出せる状態にする。その後、ステップS206に進む。
(ステップS205)動き領域予測部106は、テクスチャ画像入力部100からテクスチャ画像ブロックが入力され、型判定部103からパターンブロックが入力される。動き領域予測部106は、入力されたテクスチャ画像ブロックのうちパターンブロックにおいて信号値1をとる画素の信号値をテクスチャ画像パターンとして抽出する。
 動き領域予測部106は、画面記憶部101から参照画像を構成する参照画像ブロックを読み出す。信号値1をとる画素の信号値を参照画像パターンとして抽出する。動き領域予測部106は、入力されたテクスチャ画像パターンの座標と対応する参照画像パターンとの座標との差分を動きベクトルとして検出する。
 動き領域予測部106は、抽出した参照画像パターンに基づき動き予測を行い、動き領域予測画像ブロックを生成する。
 動き領域予測部106は、生成した動き領域予測画像ブロックをスイッチ1044と符号化制御部110に出力し、動きベクトルを示す動きベクトル信号を符号化制御部110に出力する。その後、ステップS207に進む。
(ステップS206)動き予測部105は、テクスチャ画像入力部100からテクスチャ画像ブロックが入力され、画面記憶部101から参照画像を構成する参照画像ブロックを読み出す。動き予測部105は、テクスチャ画像ブロックとの指標値を最小とする参照画像ブロックを、テクスチャ画像ブロックと対応する参照画像ブロックと定める。動き予測部105は、定めた参照画像ブロックに基づき動き予測を行い、動き予測画像ブロックを生成する。動き予測部105は、生成した動き予測画像ブロックをスイッチ1044と符号化制御部110に出力し、動きベクトルを示す動きベクトル信号を符号化制御部110に出力する。その後、ステップS227に進む。
(ステップS207)画面内予測部107は、テクスチャ画像入力部100からテクスチャ画像ブロックが入力される。画面内予測部107は、画面記憶部101に記憶された参照画像から既に符号化を行った参照画像ブロックを読み出す。画面内予測部107は、読み出した参照画像ブロックに対して画面内予測を行い、画面内予測画像ブロックを生成する。
 画面内予測部107は、生成した画面内予測画像ブロックをスイッチ1044及び符号化制御部110に出力する。その後、ステップS208に進む。
(ステップS208)符号化制御部110は、テクスチャ画像入力部100からテクスチャ画像ブロックが入力され、動き領域予測部106から動き領域予測画像ブロック及び動きベクトル信号が入力される。符号化制御部110は、画面内予測部107から画面内予測画像ブロックが入力される。符号化制御部110は、テクスチャ画像ブロックと動き領域予測画像ブロックに基づき動き領域予測残差信号を算出し、テクスチャ画像ブロックと画面内予測画像ブロックに基づき画面内予測残差信号を算出する。
 符号化制御部110は、算出した動き領域予測残差信号の大きさと画面内予測残差信号の大きさに基づき、例えば予測残差信号が小さいほうの予測方式を決定する。符号化制御部110は、決定した予測方式を示す予測方式信号をスイッチ1044及び可変長符号化部115に出力する。決定した予測方式が動き領域予測の場合には、動きベクトル信号を可変長符号化部115に出力する。
 スイッチ1044は、動き領域予測部106から動き領域予測画像ブロックが入力され、画面内予測部107から画面内予測画像ブロックが入力され、符号化制御部110から予測方式信号を入力される。
 スイッチ1044は、入力された予測方式信号に基づき入力された動き領域予測画像ブロックと画面内予測画像ブロックのいずれかを予測画像ブロックとして減算部108及び加算部114に出力する。その後、ステップS209に進む。
(ステップS209)減算部108は、テクスチャ画像入力部100から入力されたテクスチャ画像ブロックを構成する画素の輝度値からスイッチ1044から入力された予測画像ブロックを構成する画素の輝度値を各々減算し、残差信号ブロックを生成する。減算部108は生成した残差信号ブロックをスイッチ1041に出力する。スイッチ1041は、減算部108から入力された残差信号ブロックを配列部109に出力する。その後、ステップS210に進む。
(ステップS210)配列部109は、スイッチ1041から残差信号ブロックが入力され、型判定部103からパターンブロック信号を入力される。配列部109は、入力されたパターンブロック信号が示すパターンブロックに対応する配列パターンをコードブック102から読み取る。配列部109は、読み取った配列パターンが示す配列前の座標の画素の輝度値を残差信号ブロックから読み取り、配列後の画素に配列して配列先ブロックを生成する。配列部109が輝度値を読み取り、配列する順序は配列パターンが示す配列前の座標及び配列後の座標の順序に従う。配列部109は、生成した配列先ブロックをDCT部111に出力する。その後、ステップS211に進む。
(ステップS211)DCT部111は、配列部109から配列先ブロックが入力される。DCT部111は、残差信号ブロックを構成する画素の輝度値に2次元DCTを行って周波数領域信号に変換する。DCT部111は、変換した周波数領域信号を逆DCT部112及び可変長符号化部115に出力する。その後、ステップS212に進む。
(ステップS212)可変長符号化部115は、符号化制御部110から予測方式信号及び動きベクトル信号(該当する場合のみ)を、DCT部111から周波数領域信号を入力される。可変長符号化部115は、入力された周波数領域信号をアダマール変換し、変換して生成された信号を、より少ない情報量となるように圧縮符号化して圧縮残差信号を生成する。可変長符号化部115は、圧縮残差信号、入力された動きベクトル信号及び予測方式信号をテクスチャ画像符号として画像符号化装置1の外部に出力する。その後、ステップS213に進む。
(ステップS213)逆DCT部112は、DCT部110から入力された周波数領域信号に2次元逆DCTを行って残差信号ブロックに変換する。逆DCT部112は、変換した残差信号ブロックをスイッチ1042に出力する。
 スイッチ1042は、逆DCT部112から入力された残差信号ブロックを配列先ブロックとして逆配列部113に出力する。その後、ステップS214に進む。
(ステップS214)逆配列部113は、スイッチ1042から配列先ブロックが入力され、型判定部103からパターンブロック信号を入力される。逆配列部113は、入力されたパターンブロック信号が示すパターンブロックに対応する配列パターンをコードブック102から読み取る。逆配列部113は、読み取った配列パターンが示す配列後の座標の画素の輝度値を残差信号ブロックから読み取り、配列前の画素に配列して残差信号ブロックを生成する。逆配列部113は、生成した残差信号ブロックを加算部114に出力する。その後、ステップS245に進む。
(ステップS227)画面内予測部107は、テクスチャ画像入力部100からテクスチャ画像ブロックを入力される。画面内予測部107は、画面記憶部101に記憶された参照画像から既に符号化を行った参照画像ブロックを読み出す。画面内予測部107は、読み出した参照画像ブロックに対して画面内予測を行い、画面内予測画像ブロックを生成する。
 画面内予測部107は、生成した画面内予測画像ブロックをスイッチ1044及び符号化制御部110に出力する。その後、ステップS228に進む。
(ステップS228)符号化制御部110は、テクスチャ画像入力部100からテクスチャ画像ブロックが入力され、動き予測部105から動き予測画像ブロック及び動きベクトル信号が入力される。符号化制御部110は、画面内予測部107から画面内予測画像ブロックが入力される。符号化制御部110は、テクスチャ画像ブロックと動き予測画像ブロックに基づき動き予測残差信号を算出し、テクスチャ画像ブロックと画面内予測画像ブロックに基づき画面内予測残差信号を算出する。
 符号化制御部110は、算出した動き予測残差信号の大きさと画面内予測残差信号の大きさに基づき、例えば予測残差信号が小さいほうの予測方式を決定する。符号化制御部110は、決定した予測方式を示す予測方式信号をスイッチ1044及び可変長符号化部115に出力する。決定した予測方式が動き予測の場合には、動きベクトル信号を可変長符号化部115に出力する。
 スイッチ1044は、動き予測部105から動き予測画像ブロックが入力され、画面内予測部107から画面内予測画像ブロックが入力され、符号化制御部110から予測方式信号が入力される。
 スイッチ1044は、入力された予測方式信号に基づき入力された動き予測画像ブロックと画面内予測画像ブロックのいずれかを予測画像ブロックとして減算部109及び加算部114に出力する。その後、ステップS229に進む。
(ステップS229)減算部108は、テクスチャ画像入力部100から入力されたテクスチャ画像ブロックを構成する画素の輝度値からスイッチ1044から入力された予測画像ブロックを構成する画素の輝度値を各々減算し、残差信号ブロックを生成する。減算部108は生成した残差信号ブロックをスイッチ1041に出力する。
 スイッチ1041は、減算部108から入力された残差信号ブロックをDCT部111に出力する。その後、ステップS231に進む。
(ステップS231)DCT部111は、スイッチ1041から残差信号ブロックが入力される。DCT部111は、残差信号ブロックを構成する画素の輝度値に2次元DCTを行って周波数領域信号に変換する。DCT部111は、変換した周波数領域信号を逆DCT部112及び可変長符号化部115に出力する。その後、ステップS232に進む。
(ステップS232)可変長符号化部115は、型判定部103から型信号を、符号化制御部110から予測方式信号及び動きベクトル信号(該当する場合のみ)を、DCT部111から周波数領域信号を入力される。可変長符号化部115は、入力された周波数領域信号をアダマール変換し、変換して生成された信号を、より少ない情報量となるように圧縮符号化(可変長符号化)して圧縮残差信号を生成する。可変長符号化部115は、圧縮残差信号、入力された型信号、動きベクトル信号及び予測方式信号をテクスチャ画像符号として画像符号化装置1の外部に出力する。その後、ステップS233に進む。
(ステップS233)逆DCT部112は、DCT部110から入力された周波数領域信号に2次元逆DCTを行って残差信号ブロックに変換する。逆DCT部112は、変換した残差信号ブロックをスイッチ1042に出力する。
 スイッチ1042は、逆DCT部112から入力された残差信号ブロックを加算部114に出力する。その後、ステップS245に進む。
(ステップS245)加算部114は、スイッチ1044から入力された予測信号ブロックを構成する画素の輝度値とスイッチ1042又は逆配列部113から入力された残差信号ブロックを構成する画素の輝度値を各々加算して、参照信号ブロックを生成する。加算部114は、生成した参照信号ブロックを画面記憶部101に出力する。その後、ステップS246に進む。
(ステップS246)画面記憶部101は、加算部114から入力された参照画像ブロックを、対応するフレームにおけるそのブロックの位置に配置して記憶する。その後、ステップS247に進む。
(ステップS247)テクスチャ画像入力部100は、入力したフレームのテクスチャ画像においてテクスチャ画像ブロックを未抽出の領域の有無を判断する。
 テクスチャ画像入力部100は、テクスチャ画像ブロックを未抽出の領域があると判断した場合、テクスチャ画像入力部100がテクスチャ画像ブロックを抽出するブロックの位置を、ラスタースキャンの順序で、各ブロックが重ならないようにシフトさせる。また、距離画像符号化部12は参照信号ブロックの位置を、テクスチャ画像ブロックを抽出するブロックの位置にシフトさせる。その後、ステップS202に戻る。
 テクスチャ画像入力部100は、テクスチャ画像ブロックを未抽出の領域がないと判断した場合、入力したフレームのテクスチャ画像を符号化する処理を終了する。
 次に、本実施形態に係る型判定部103が行う型判定処理について説明する。
 図14は、本実施形態に係る型判定部103が行う型判定処理を示すフローチャートである。
(ステップS301)動き領域決定部1031は、テクスチャ画像入力部100から入力されたテクスチャ画像ブロックにおいて、画面記憶部101から読み出した参照画像ブロックに基づいて、動き領域情報M(x,y)を算出する。動き領域情報M(x,y)を算出する際、動き領域決定部1031は、例えば式(1)を用いる。その後、ステップS302に進む。
(ステップS302)動き領域決定部1031は、参照画像ブロックに含まれる動き領域の大きさが、予め設定された閾値TSMBよりも小さいか否か判断する。
 動き領域決定部1031は、その動き領域の大きさが、予め設定された閾値TSMBよりも小さいと判断したとき(ステップS302 Y)、ステップS303に進む。動き領域決定部1031は、その動き領域の大きさが、予め設定された閾値TSMBと等しい又は閾値TSMBよりも大きいと判断したとき(ステップS302 N)、テクスチャ画像ブロックの型が非SMBと判定する。このとき、動き領域決定部1031は、テクスチャ画像ブロックの型が非SMBであることを示す型信号をパターン決定部1032に出力する。また、動き領域決定部1031は、動き領域情報M(x,y)を動き予測決定部1033に出力する。その後、ステップS304に進む。
(ステップS303)動き領域決定部1031は、テクスチャ画像ブロックの型がSMBであると判定し、テクスチャ画像ブロックの型がSMBであることを示す型信号を動き予測決定部1033に出力する。動き予測決定部1033は、テクスチャ画像ブロックの型を示す型信号をスイッチ1041、スイッチ1042、スイッチ1043及び可変長符号部115に出力する。その後、ステップS204に進む。
(ステップS304)パターン決定部1032は、動き領域決定部1031からテクスチャ画像の非SMBであることを示す型信号が入力され、コードブック102からパターンブロックP(x,y)を読み取る。
 パターン決定部1032は、読み取ったパターンブロックP(x,y)のうち入力された距離画像ブロックと類似するパターンブロックP(x,y)が存在するか否か判断する。
 そこで、パターン決定部1032は、距離画像符号化部12から入力された距離画像ブロックを、例えば式(2)を用いて二値化し、二値化距離パターンN(x,y)を算出する。パターン決定部1032は、算出した二値化距離パターンN(x,y)と読み取った各パターンブロックP(x,y)との間で、例えば式(3)を用いて指標値を算出する。パターン決定部1032は、指標値が最小となるパターンブロックP(x,y)を、距離画像ブロックと近似するパターンブロックP(x,y)として選択する。そして、パターン決定部1032は、その最小の指標値が予め設定された閾値が小さいか否かをもって、距離画像ブロックと類似するパターンブロックP(x,y)が存在するか否か判断する。
パターン決定部1032は、読み取ったパターンブロックP(x,y)のうち入力された距離画像ブロックと類似するパターンブロックP(x,y)が存在すると判断したとき(ステップS304 Y)、選択したパターンブロックP(x,y)とそのパターンブロックP(x,y)を示すパターンブロック信号を動き予測決定部1033に出力する。その後、ステップS306に進む。
 パターン決定部1032は、読み取ったパターンブロックP(x,y)のうち入力された距離画像ブロックと類似するパターンブロックP(x,y)が存在しないと判断したとき(ステップS304 N)、ステップS305に進む。
(ステップS305)パターン決定部1032は、テクスチャ画像ブロックの型をAMBと判定し、テクスチャ画像ブロックの型がAMBであることを示す型信号を動き予測決定部1033に出力する。動き予測決定部1033は、テクスチャ画像ブロックの型を示す型信号をスイッチ1041、スイッチ1042、スイッチ1043及び可変長符号部115に出力する。その後、ステップS204に進む。
(ステップS306)動き予測決定部1033は、動き領域決定部1031からテクスチャ画像ブロックの型がSMBであることを示す型信号又は動き領域情報が入力される。動き予測決定部1033は、動き予測決定部1033からテクスチャ画像ブロックの型がAMBであることを示す型信号又は選択したパターンブロックP(x,y)並びにパターンブロック信号が入力される。
 動き予測決定部1033は、入力された動き領域情報M(x,y)と選択したパターンブロックP(x,y)が類似しているか否かを判断する。この判断を行う際、動き予測決定部1033は、式(4)に示す指標値Eを算出し、算出した指標値Eが予め設定した閾値σよりも小さいか否か判断する。
 動き予測決定部1033は、入力された動き領域情報M(x,y)と選択したパターンブロックP(x,y)が類似していると判断したとき(ステップS306 Y)、ステップS308に進む。
 動き予測決定部1033は、入力された動き領域情報M(x,y)と選択したパターンブロックP(x,y)が類似していないと判断したとき(ステップS306 N)、ステップS307に進む。
(ステップS307)動き予測決定部1033は、テクスチャ画像ブロックの型がAMBと判定し、テクスチャ画像ブロックの型がAMBであることを示す型信号をスイッチ1041、スイッチ1042、スイッチ1043及び可変長符号部115に出力する。その後、ステップS204に進む。
(ステップS308)動き予測決定部1033は、テクスチャ画像ブロックの型をRMBと判定し、テクスチャ画像ブロックの型をRMBであることを示す型信号をスイッチ1041、スイッチ1042、スイッチ1043及び可変長符号部115に出力する。また、動き予測決定部1033は、選択したパターンブロックを動き領域予測部106に出力し、入力されたパターンブロック信号を配列部109及び逆配列部113に出力する。その後、ステップS204に進む。
 次に、本実施形態に係る画像復号装置2の構成及び機能について説明する。
 図15は、本実施形態に係る画像復号装置2の構成を示す概略図である。
 画像復号装置2は、画面記憶部201、コードブック202、パターン決定部2032、スイッチ2042、スイッチ2043、スイッチ2044、動き予測部205、動き領域予測部206、画面内予測部207、逆DCT部212、逆配列部213、加算部214、可変長復号部215及び距離画像復号部23を含んで構成される。
 画面記憶部201は、加算部214から入力された参照画像ブロックを、対応するフレームにおけるそのブロックの位置に配置して参照画像として記憶する。画面記憶部201は、現在から予め設定されたフレーム数の参照画像を記憶する。
 コードブック202は、複数のパターンブロックと、配列パターンを各パターンブロックに対応づけて記憶する。コードブック202が記憶するパターンブロックと配列パターンは、コードブック102と同様であってもよい。
 パターン決定部2032は、距離画像復号部23から復号された距離画像ブロックが入力される。パターン決定部2032は、読み出したパターンブロックのうち、入力された距離画像ブロックに対応するパターンブロックを決定する。
 ここで、パターン決定部2032は、距離画像ブロックに含まれる座標(x,y)毎の距離値V(x,y)を、例えば式(2)を用いて二値化し、二値化距離パターンN(x,y)を算出する。パターン決定部2032は、コードブック202に記憶されたパターンブロックから二値化距離パターンN(x,y)に最も近似するパターンブロックを選択する。パターン決定部2032は、最も近似するパターンブロックを選択する際、パターンブロックn毎に例えば式(3)に示す指標値Dを算出し、算出した指標値Dを最小とするパターンブロックを選択する。
 パターン決定部2032は、選択したパターンブロックを動き領域予測部206に出力し、選択したパターンブロックに対応するパターンブロック信号を逆配列部213に出力する。
 スイッチ2043は、可変長復号部215から入力された型信号がRMBを示す場合、接点をaに倒し、画面記憶部201から動き領域予測部206に参照信号ブロックを読み出せる状態にする。スイッチ2043は、可変長復号部215から入力された型信号がAMB又はSMBを示す場合、接点をbに倒し、画面記憶部201から動き予測部205に参照信号ブロックを読み出せる状態にする。
 動き予測部205は、可変長復号部215から動きベクトル信号が入力される。動き予測部205は、画面記憶部201に記憶された参照画像から、入力された動きベクトル信号が示す動きベクトルに対応する座標の参照画像ブロックを読み出す。
 動き予測部205は、読み出した参照画像ブロックを動きベクトルに基づいて動き予測を行い、動き予測画像ブロックを生成する。動き予測部205は、動き予測において、例えば、読み取った参照画像ブロックの各座標を動きベクトルが示す座標値に基づいて移動させて動き予測画像ブロックを生成する。
 動き予測部205は、生成した動き予測画像ブロックをスイッチ2044に出力する。
 動き領域予測部206は、可変長復号部215から動きベクトル信号が入力される。動き領域予測部206は、画面記憶部201に記憶された参照画像から、入力された動きベクトル信号が示す動きベクトルに対応する座標の参照画像ブロックを読み出す。
 動き領域予測部206は、読み出した参照画像ブロックのうちパターンブロックにおいて信号値1をとる画素の信号値を参照画像パターンとして抽出する。
 動き領域予測部206は、抽出した参照画像パターンを動きベクトルに基づき動き予測を行い、動き領域予測画像パターンを生成する。動き領域予測部206は、動き予測において、例えば、定めた参照画像パターンの各座標を動きベクトルが示す座標に基づいて移動させて動き領域予測画像パターンを生成する。動き領域予測部206は、ブロック全体の画素における輝度値がゼロであるゼロ画像ブロックに生成した動き領域予測画像パターンの各画素の輝度値を加算することによりゼロ信号を挿入して動き領域予測画像ブロックを生成する。
 動き領域予測部206は、生成した動き領域予測画像ブロックをスイッチ2044に出力する。
 画面内予測部207は、画面記憶部201に記憶された参照画像であって、処理対象の現在のフレームの参照画像のうち復号された参照画像ブロックを読み出す。画面内予測部207は、例えば、処理対象のテクスチャ画像ブロックの左側又は上に隣接するブロックに対応する参照画像ブロックを読み出す。画面内予測部207は、読み出した参照画像ブロックに画面内予測を行い、画面内予測画像ブロックを生成する。画面内予測部207は、画面内予測を行うために、例えばITU-T H.264規格書に記載されている方法を用いる。
 画面内予測部207は、生成した画面内予測画像ブロックをスイッチ2044に出力する。
 スイッチ2044は、動き予測部205から動き予測画像ブロックを入力され、動き領域予測部206から動き領域予測画像ブロックを入力され、画面内予測部207から画面内予測画像ブロックを入力され、可変長復号部215から予測方式信号を入力される。
 スイッチ2044は、入力された予測方式信号が動き予測又は動き領域予測を示す場合、接点をcに倒し、入力された動き予測画像ブロックと画面内予測画像ブロックのいずれかを加算部214に出力する。ここで、スイッチ2044は、スイッチ2043の作用のため、動き予測画像ブロック又は動き領域予測画像ブロックは同時に入力されず、何れか一方が入力される。スイッチ2044は、入力された予測方式信号が画面内予測を示す場合、接点をdに倒し、入力された動き領域予測画像ブロックと画面内予測画像ブロックのいずれかを予測画像ブロックとして加算部214に出力する。
 逆DCT部212は、可変長復号部215から入力された周波数領域信号に2次元逆DCTを行って残差信号ブロックに変換する。逆DCT部212は、変換した残差信号ブロックをスイッチ2042に出力する。
 スイッチ2042は、可変長復号部215から入力された型信号がRMBを示す場合、接点をaに倒し、逆DCT部212から入力された残差信号ブロックを配列先ブロックとして逆配列部213に出力する。スイッチ2042は、可変長復号部215から入力された型信号がAMB又はSMBを示す場合、接点をbに倒し、逆DCT部212から入力された残差信号ブロックを加算部214に出力する。
 逆配列部213は、スイッチ2042から配列先ブロックを入力され、パターン決定部2032からパターンブロック信号を入力される。逆配列部213は、入力されたパターンブロック信号が示すパターンブロックに対応する配列パターンをコードブック202から読み取る。逆配列部213は、読み取った配列パターンが示す配列後の座標の画素の輝度値を残差信号ブロックから読み取り、配列前の画素に配列して残差信号ブロックを生成する。逆配列部213が輝度値を読み取り、配列する順序は配列パターンが示す配列後の座標及び配列前の座標の順序に従う。逆配列部213は、生成した残差信号ブロックを加算部214に出力する。
 加算部214は、スイッチ2044から入力された予測信号ブロックを構成する画素の輝度値とスイッチ2042又は逆配列部213から入力された残差信号ブロックを構成する画素の輝度値を各々加算して、参照信号ブロックを生成する。加算部214は、生成した参照信号ブロックを画面記憶部201に出力し、その参照信号ブロックを復号されたテクスチャ画像ブロックとして画像復号装置2の外部に出力する。
 可変長復号部215は、画像復号装置2の外部から入力されたテクスチャ画像符号から圧縮残差信号、型信号、動きベクトル信号及び予測方式信号をそれぞれ抽出する。
 可変長復号部215は、抽出した圧縮残差信号を可変長符号化部115が行った圧縮符号化とは逆の処理を行って復号(可変長復号)し、圧縮残差信号よりも情報量の多いアダマール変換信号を生成する。例えば、可変長符号化部115がエントロピー符号化を行った場合、可変長復号部215はエントロピー復号を行う。可変長復号部215は生成したアダマール変換信号をアダマール変換して周波数領域信号を生成する。可変長復号部215が行うアダマール変換は、可変長符号化部115が行うアダマール変換の逆演算である。
 可変長復号部215は、生成した周波数領域信号を逆DCT部212に出力し、抽出した動きベクトル信号を動き予測部205及び動き領域予測部206に出力する。
 可変長復号部215は、抽出した型信号をスイッチ2042及びスイッチ2043に出力する。可変長復号部215は、抽出した予測方式信号をスイッチ2044に出力する。
 距離画像復号部23は、画像復号装置2の外部から入力された距離画像符号に基づきブロック毎に公知の画像復号方法、例えばITU-T H.264規格書に記載された復号方法を用いて復号する。距離画像復号部23は、復号して生成した距離画像ブロックをパターン決定部2032及び画像復号装置2の外部に出力する。
 次に、本実施形態に係る画像復号処理について説明する。
 図16は、本実施形態に係る画像復号装置2が行う画像復号処理を示すフローチャートである。
(ステップS401)画像復号装置2は、ステップS402-S434までの処理をフレーム内のブロック毎に繰り返す。
(ステップS402)可変長復号部215は、画像復号装置2の外部から入力されたテクスチャ画像符号から圧縮残差信号、型信号、動きベクトル信号及び予測方式信号をそれぞれ抽出する。可変長復号部215は、抽出した圧縮残差信号を可変長符号化部115が行った圧縮符号化とは逆の処理を行って復号(可変長復号)し、圧縮残差信号よりも情報量の多いアダマール変換信号を生成する。可変長復号部215は生成したアダマール変換信号をアダマール変換して周波数領域信号を生成する。可変長復号部215は、生成した周波数領域信号を逆DCT部212に出力し、抽出した動きベクトル信号を動き予測部205及び動き領域予測部206に出力する。可変長復号部215は、抽出した型信号をスイッチ2042及びスイッチ2043に出力する。可変長復号部215は、抽出した予測方式信号をスイッチ2044に出力する。
 距離画像復号部23は、画像復号装置2の外部から入力された距離画像符号に基づきブロック毎に公知の画像復号方法を用いて復号する。距離画像復号部12は、復号して生成した距離画像信号ブロックをパターン決定部2032及び画像復号装置2の外部に出力する。その後、ステップS403に進む。
(ステップS403)スイッチ2042及びスイッチ2043は、ともに可変長復号部215から入力された型信号がRMBを示すか、AMBもしくはSMBを示すか判断する。
 スイッチ2042及びスイッチ2043が可変長復号部215から入力された型信号がRMBを示すと判断したとき(ステップS403 Y)、ステップS404に進む。
 スイッチ2042及びスイッチ2043が可変長復号部215から入力された型信号がAMB又はSMBを示すと判断したとき(ステップS403 N)、ステップS424に進む。
(ステップS404)スイッチ2044は、可変長復号部215から入力された予測方式信号が画面内予測を示すか、動き領域予測を示すか判断する。
 スイッチ2044は、可変長復号部215から入力された予測方式信号が画面内予測を示すと判断したとき(ステップS404 Y)、ステップS407に進む。
 スイッチ2044は、可変長復号部215から入力された予測方式信号が動き領域予測を示すと判断したとき(ステップS404 N)、ステップS405に進む。
(ステップS405)動き領域予測部206は、可変長復号部215から動きベクトル信号が入力される。動き領域予測部206は、画面記憶部201に記憶された参照画像から、入力された動きベクトル信号が示す動きベクトルに対応する座標の参照画像ブロックを読み出す。
 動き領域予測部206は、読み出した参照画像ブロックのうちパターンブロックにおいて信号値1をとる画素の信号値を参照画像パターンとして抽出する。
 動き領域予測部206は、抽出した参照画像パターンを動きベクトルに基づき動き予測を行い、動き領域予測画像パターンを生成する。動き領域予測部206は、ブロック全体の画素における輝度値がゼロであるゼロ画像ブロックに生成した動き領域予測画像パターンの各画素の輝度値を加算することによりゼロ信号を挿入して動き領域予測画像ブロックを生成する。
 動き領域予測部206は、生成した動き領域予測画像ブロックをスイッチ2044に出力する。その後、ステップS408に進む。
(ステップS407)画面内予測部207は、画面記憶部201に記憶された参照画像であって、処理対象の現在のフレームの参照画像のうち復号された参照画像ブロックを読み出す。画面内予測部207は、読み出した参照画像ブロックに画面内予測を行い、画面内予測画像ブロックを生成する。
 画面内予測部207は、生成した画面内予測画像ブロックをスイッチ2044に出力する。その後、ステップS408に進む。
(ステップS408)逆DCT部212は、可変長復号部215から入力された周波数領域信号に2次元逆DCTを行って残差信号ブロックに変換する。逆DCT部212は、変換した残差信号ブロックをスイッチ2042に出力する。その後、ステップS409に進む。
(ステップS409)逆配列部213は、スイッチ2042から配列先ブロックを入力され、パターン決定部2032からパターンブロック信号を入力される。逆配列部213は、入力されたパターンブロック信号が示すパターンブロックに対応する配列パターンをコードブック202から読み取る。逆配列部213は、読み取った配列パターンが示す配列後の座標の画素の輝度値を残差信号ブロックから読み取り、配列前の画素に配列して残差信号ブロックを生成する。逆配列部213が輝度値を読み取り、配列する順序は配列パターンが示す配列後の座標及び配列前の座標の順序に従う。逆配列部213は、生成した残差信号ブロックを加算部214に出力する。その後、ステップS432に進む。
(ステップS424)スイッチ2044は、可変長復号部215から入力された予測方式信号が画面内予測を示すか、動き予測を示すか判断する。
 スイッチ2044は、可変長復号部215から入力された予測方式信号が画面内予測を示すと判断したとき(ステップS424 Y)、ステップS427に進む。
 スイッチ2044は、可変長復号部215から入力された予測方式信号が動き予測を示すと判断したとき(ステップS424 N)、ステップS426に進む。
(ステップS426)動き予測部205は、可変長復号部215から動きベクトル信号が入力される。動き予測部205は、画面記憶部201に記憶された参照画像から、入力された動きベクトル信号が示す動きベクトルに対応する座標の参照画像ブロックを読み出す。
 動き予測部205は、読み出した参照画像ブロックを動きベクトルに基づいて動き予測を行い、動き予測画像ブロックを生成する。動き予測部205は、生成した動き予測画像ブロックをスイッチ2044に出力する。その後、ステップS428に進む。
(ステップS427)画面内予測部207は、画面記憶部201に記憶された参照画像であって、処理対象の現在のフレームの参照画像のうち復号された参照画像ブロックを読み出す。画面内予測部207は、読み出した参照画像ブロックに画面内予測を行い、画面内予測画像ブロックを生成する。
 画面内予測部207は、生成した画面内予測画像ブロックをスイッチ2044に出力する。その後、ステップS428に進む。
(ステップS428)逆DCT部212は、可変長復号部215から入力された周波数領域信号に2次元逆DCTを行って残差信号ブロックに変換する。逆DCT部212は、変換した残差信号ブロックをスイッチ2042に出力する。その後、ステップS432に進む。
(ステップS432)加算部214は、スイッチ2044から入力された予測信号ブロックを構成する画素の輝度値とスイッチ2042又は逆配列部213から入力された残差信号ブロックを構成する画素の輝度値を各々加算して、参照信号ブロックを生成する。加算部214は、生成した参照信号ブロックを画面記憶部201に出力し、その参照信号ブロックを復号されたテクスチャ画像ブロックとして画像復号装置2の外部に出力する。その後、ステップS433に進む。
(ステップS433)画面記憶部201は、加算部214から入力された参照画像ブロックを、対応するフレームにおけるそのブロックの位置に配置して参照画像として記憶する。その後、ステップS434に進む。
(ステップS434)画像復号装置2は、入力したフレームのうち参照画像ブロックを、まだ復号されていない領域の有無を判断する。
 画像復号装置2、参照画像ブロックをまだ復号されていない領域があると判断した場合、参照画像ブロックを復号するブロックの位置を、ラスタースキャンの順序で、各ブロックが重ならないようにシフトさせる。また、距離画像復号部23は距離画像ブロックの位置を、参照画像ブロックを復号するブロックの位置にシフトさせる。その後、ステップS402に戻る。
 画像復号装置2は、参照画像ブロックをまだ抽出していない領域がないと判断した場合、入力したフレームのテクスチャ画像を復号する処理を終了する。
 次に、上述の画像符号化処理又は画像復号処理の処理対象又は処理対象となる画像信号を示す画像の例について説明する。
 図17は、本実施形態に係るテクスチャ画像の一例を示す概念図である。
 図17は、テクスチャ画像入力部100が符号化の対象として入力されるテクスチャ画像t1を示す。テクスチャ画像t1の中央部右下に示す矩形の部分は、テクスチャ画像入力部100が抽出するテクスチャ画像ブロックu1を示す。
 図18は、本実施形態に係る参照画像の一例を示す概念図である。
 図18は、符号化済又は復号された参照画像r0を示す。参照画像r0は、テクスチャ画像t1よりも1フレーム分過去のテクスチャ画像t0を符号化する過程で生成された参照画像である。
 参照画像r0のほぼ中央部に示す矩形の部分は、参照画像ブロックv0を示す。参照画像ブロックv0の座標は、テクスチャ画像ブロックu1の座標と同様である。
 図19は、本実施形態に係る動き領域情報の一例を示す概念図である。
 図19は、動き領域情報mを示す。動き領域情報mは、動き領域決定部1031がテクスチャ画像ブロックu1と参照画像ブロックv0に基づいて生成したものである。
 図20は、本実施形態に係る距離画像の一例を示す概念図である。
 図20は、距離画像符号化部12が復号する距離画像d1を示す。距離画像d1は、テクスチャ画像t1が示す被写体の視点からの距離情報を示す。距離画像d1の中央部右下に示す矩形の部分は、型判定部103のパターン決定部1032又はパターン決定部2032が距離画像符号化部12から入力される距離画像ブロックe1を示す。
 図21は、本実施形態に係る距離画像ブロックの一例を示す概念図である。
 図21は、型判定部103のパターン決定部1032又はパターン決定部2032が距離画像ブロックに基づいて算出した二値化距離パターンn1を示す。
 図22は、本実施形態に係るテクスチャ画像のその他の例を示す概念図である。
 図22は、上述のテクスチャ画像t1とテクスチャ画像ブロックu1を示す。
テクスチャ画像ブロックu1に含まれる領域p1は、型判定部103の動き予測決定部1033が動き領域mと類似すると判定したパターンブロックに含まれる信号値1が占める領域である。このパターンブロックは、図3のパターンブロック306である。
 図23は、本実施形態に係る参照画像のその他の例を示す概念図である。
 図23は、上述の参照画像r1を示す。参照画像r1の中央部右下に上述の領域p1を示す。この領域p1は、動き領域予測部106又は動き領域予測部206がテクスチャ画像パターンとして抽出する画素が占める領域である。領域p1の右側に示される領域p0は、動き領域予測部106又は動き領域予測部206が参照画像r1から参照画像パターンとして抽出する領域である。領域p0から領域p1に向かう矢印は、動き領域予測部106が検出又は動き領域予測部206が復号する動きベクトルを示す。
 このように、本実施形態によれば、画素毎の輝度値からなるテクスチャ画像をブロック毎に符号化する画像符号化装置1において、過去に符号化したフレームの参照画像を記憶する画面記憶部と、第1の信号値をとる画素とその他の信号値をとる画素からなり、前記第1の信号値をとる画素の分布が異なる複数個のパターンブロックを記憶するコードブックとを備え、前記テクスチャ画像のブロックから被写体が動く画像を表す領域である動き領域を前記画面記憶部から読み出した参照画像のブロックに基づいて決定し、視点から被写体までの距離を表す画素毎の深度値からなる距離画像のブロックに基づきパターンプロックを前記コードブックから読み出し、前記テクスチャ画像のブロックと前記読み出した参照画像のブロックに基づいて算出した予測画像ブロックに含まれる画素のうち、前記読み出したパターンブロックの前記第1の信号値をとる画素と同一の座標の画素の信号値からなる動き領域予測信号を定める。
 また、画素毎の輝度値からなるテクスチャ画像をブロック毎に復号する画像復号装置2において、過去に復号したフレームの参照画像を記憶する画面記憶部と、第1の信号値をとる画素とその他の信号値をとる画素からなり、前記第1の信号値をとる画素の分布が異なる複数個のパターンブロックを記憶するコードブックとを備え、視点から被写体までの距離を表す画素毎の深度値からなる距離画像のブロックに基づきパターンブロックを前記コードブックから読み出し、入力された動きベクトル符号に対応する参照画像のブロックを前記画面記憶部から読み出し、前記読み出した参照画像のブロックに基づいて算出した予測画像ブロックに含まれる画素のうち、前記読み出したパターンブロックの前記第1の信号値をとる画素と同一の座標の画素の信号値からなる動き領域予測信号を定める。
 これにより、テクスチャ画像の符号化において画面(フレーム)間で被写体が動くことにより輝度値の変化の著しい動き領域に対応するパターンブロックを、距離画像に基づき選択できるためパターンブロックを表す符号の入出力が免れる。そのため、本実施形態によればテクスチャ画像を高い効率で符号化又は復号できる。
 また、本実施形態ではパターンブロックに含まれる画素のうち第1の信号値をとる画素に基づき生成した予測画像を用いて符号化するため、符号化の対象となる情報量ひいては入出力される情報量を削減できる。従って、本実施形態によればテクスチャ画像を効率よく符号化又は復号できる。
 また、本実施形態ではパターンブロックに含まれる画素のうち第1の信号値をとる画素に基づき生成した予測画像を用いて符号化するため、符号化の対象となる情報量ひいては入出力される情報量を削減できる。従って、本実施形態によればテクスチャ画像を高い効率で符号化又は復号できる。
 上述の実施形態において、テクスチャ画像ブロック、距離画像ブロック、予測画像ブロック及び参照画像ブロックの大きさを、水平方向16画素×垂直方向16画素として説明したが、これには限られない。この大きさは、例えば、水平方向8画素×垂直方向8画素、水平方向4画素×垂直方向4画素、水平方向32画素×垂直方向32画素、水平方向16画素×垂直方向8画素、水平方向8画素×垂直方向16画素、水平方向8画素×垂直方向4画素、水平方向4画素×垂直方向8画素、水平方向32画素×垂直方向16画素、水平方向16画素×垂直方向32画素、のうち、いずれでもよい。
 なお、上述した実施形態における画像符号化装置1の一部、例えば、スイッチ1041、スイッチ1042、スイッチ1043、スイッチ1044、動き予測部105、動き領域予測部106、画面内予測部107、減算部108、符号化制御部110、DCT部111、逆DCT部112、逆配列部113、加算部114、可変長符号化部115及び距離画像符号化部12、画像復号装置2の一部、例えば、パターン決定部2032、スイッチ2042、スイッチ2043、スイッチ2044、動き予測部205、動き領域予測部206、画面内予測部207、逆DCT部212、逆配列部213、加算部214、可変長復号部215及び距離画像復号部23をコンピュータで実現するようにしても良い。その場合、この制御機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現しても良い。なお、ここでいう「コンピュータシステム」とは、画像符号化装置1又は画像復号装置2に内蔵されたコンピュータシステムであって、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでも良い。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
 また、上述した実施形態における画像符号化装置1又は画像復号装置2の一部、または全部を、LSI(Large Scale Integration)等の集積回路として実現しても良い。画像符号化装置1又は画像復号装置2の各機能ブロックは個別にプロセッサ化してもよいし、一部、または全部を集積してプロセッサ化しても良い。また、集積回路化の手法はLSIに限らず専用回路、または汎用プロセッサで実現しても良い。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いても良い。
 以上、図面を参照してこの発明の一実施形態について詳しく説明してきたが、具体的な構成は上述のものに限られることはなく、この発明の要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。
 以上のように、本発明における画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法、及び画像復号プログラムは、三次元の画像を表す画像信号の情報量を圧縮するために有用であり、例えば、画像コンテンツの保存や伝送に適している。
1…画像符号化装置、
100…テクスチャ画像入力部、
101…画面記憶部、
102…コードブック、
103…型判定部、
1031…動き領域決定部、
1032…パターン決定部、
1033…動き予測決定部
1041…スイッチ、
1042…スイッチ、
1043…スイッチ、
1044…スイッチ、
105…動き予測部、
106…動き領域予測部、
107…画面内予測部、
108…減算部、
109…配列部、
110…符号化制御部、
111…DCT部、
112…逆DCT部、
113…逆配列部、
114…加算部、
12…距離画像符号化部
2…画像復号装置、
201…画面記憶部、
202…コードブック、
2032…パターン決定部、
2042…スイッチ、
2043…スイッチ、
2044…スイッチ、
205…動き予測部、
206…動き領域予測部、
207…画面内予測部、
212…逆DCT部、
213…逆配列部、
214…加算部、
215…可変長復号部、
23…距離画像復号部

Claims (11)

  1. 画素毎の輝度値からなるテクスチャ画像をブロック毎に符号化する画像符号化装置において、
     過去に符号化したテクスチャ画像を参照画像として記憶する画面記憶部と、
     第1の信号値をとる画素と第2の信号値をとる画素からなり、前記第1の信号値をとる画素の分布が異なる複数個のパターンブロックを記憶するコードブックと、
     視点から被写体までの距離を表す画素毎の深度値からなる距離画像のブロックに基づきパターンブロックを前記コードブックから選択するパターン決定部と、
     前記パターン決定部が選択したパターンブロックと前記画面記憶部から読み出した参照画像に基づいて前記テクスチャ画像のブロックに対して動き予測を行う動き領域予測部とを備える
     ことを特徴とする画像符号化装置。
  2. 前記動き領域予測部は、前記パターン決定部が選択したパターンブロックにおける第1の信号値をとる画素と同一位置の画素に対して動き予測を行うことを特徴とする請求項1に記載の画像符号化装置。
  3. 前記テクスチャ画像のブロックから被写体が動く画像を表す領域である動き領域を前記画面記憶部から読み出した参照画像のブロックに基づいて決定する動き領域決定部と、
     前記動き領域決定部が決定した動き領域と、前記パターン決定部が選択したパターンブロックの前記第1の信号値をとる画素の分布に基づき、前記動き領域予測部に動き予測を行わせるか否かを決定する動き予測決定部を備える
     ことを特徴とする請求項1に記載の画像符号化装置。
  4. 前記パターン決定部は、
     前記距離画像のブロックに含まれる画素毎の深度値が予め設定された閾値を超える画素の分布と前記第1の信号値をとる画素の分布に基づき、前記パターンブロックを選択する
     ことを特徴とする請求項1に記載の画像符号化装置。
  5. 過去に符号化したテクスチャ画像を参照画像として記憶する画面記憶部と、第1の信号値をとる画素と第2の信号値をとる画素からなり、前記第1の信号値をとる画素の分布が異なる複数個のパターンブロックを記憶するコードブックを備え、画素毎の輝度値からなるテクスチャ画像をブロック毎に符号化する画像符号化装置における画像符号化方法において、
     前記画像符号化装置は、視点から被写体までの距離を表す画素毎の深度値からなる距離画像のブロックに基づきパターンブロックを前記コードブックから選択する第1の過程と、
     前記画像符号化装置は、選択された前記パターンブロックと前記画面記憶部から読み出した参照画像に基づいて前記テクスチャ画像のブロックに対して動き予測を行う第2の過程
     とを有することを特徴とする画像符号化方法。
  6. 過去に符号化したテクスチャ画像を参照画像として記憶する画面記憶部と、第1の信号値をとる画素と第2の信号値をとる画素からなり、前記第1の信号値をとる画素の分布が異なる複数個のパターンブロックを記憶するコードブックを備え、画素毎の輝度値からなるテクスチャ画像をブロック毎に符号化する画像符号化装置が備えるコンピュータに、
     視点から被写体までの距離を表す画素毎の深度値からなる距離画像のブロックに基づきパターンブロックを前記コードブックから選択する手順、
     選択された前記パターンブロックと前記画面記憶部から読み出した参照画像に基づいて前記テクスチャ画像のブロックに対して動き予測を行う手順
     を実行させるための画像符号化プログラム。
  7. 画素毎の輝度値からなるテクスチャ画像をブロック毎に復号する画像復号装置において、
     過去に復号したテクスチャ画像を参照画像として記憶する画面記憶部と、
     第1の信号値をとる画素と第2の信号値をとる画素からなり、前記第1の信号値をとる画素の分布が異なる複数個のパターンブロックを記憶するコードブックと、
     視点から被写体までの距離を表す画素毎の深度値からなる距離画像のブロックに基づきパターンブロックを前記コードブックから選択するパターン決定部と、
     前記パターン決定部が選択したパターンブロックと前記画面記憶部から読み出した参照画像に基づいて前記テクスチャ画像のブロックに対して動き予測を行う動き領域予測部とを備える
     ことを特徴とする画像復号装置。
  8. 前記動き領域予測部は、前記パターン決定部が選択したパターンブロックにおける第1の信号値をとる画素と同一位置の画素に対して動き予測を行う
    ことを特徴とする請求項7に記載の画像復号装置。
  9. 前記パターン決定部は、
     前記距離画像のブロックに含まれる画素毎の深度値が予め設定された閾値を超える画素の分布と前記第1の信号値をとる画素の分布に基づき、前記パターンブロックを選択する
     ことを特徴とする請求項8に記載の画像復号装置。
  10. 過去に復号したテクスチャ画像を参照画像として記憶する画面記憶部と、第1の信号値をとる画素と第2の信号値をとる画素からなり、前記第1の信号値をとる画素の分布が異なる複数個のパターンブロックを記憶するコードブックとを備え、画素毎の輝度値からなるテクスチャ画像をブロック毎に復号する画像復号装置における画像復号方法において、
     前記画像復号装置が、視点から被写体までの距離を表す画素毎の深度値からなる距離画像のブロックに基づきパターンブロックを前記コードブックから選択する第1の過程と、
     前記画像復号装置が、前記選択したパターンブロックと前記画面記憶部から読み出した参照画像に基づいて前記テクスチャ画像のブロックに対して動き予測を行う第2の過程とを有する
     ことを特徴とする画像復号方法。
  11. 過去に復号したテクスチャ画像を参照画像として記憶する画面記憶部と、第1の信号値をとる画素と第2の信号値をとる画素からなり、前記第1の信号値をとる画素の分布が異なる複数個のパターンブロックを記憶するコードブックとを備え、画素毎の輝度値からなるテクスチャ画像をブロック毎に復号する画像復号装置が備えるコンピュータに、
     視点から被写体までの距離を表す画素毎の深度値からなる距離画像のブロックに基づきパターンブロックを前記コードブックから選択する手順、
     前記選択したパターンブロックと前記画面記憶部から読み出した参照画像に基づいて前記テクスチャ画像のブロックに対して動き予測を行う手順
     を実行させるための画像復号プログラム。
PCT/JP2012/061896 2011-05-10 2012-05-09 画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法及び画像復号プログラム WO2012153771A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2011105183A JP2014140089A (ja) 2011-05-10 2011-05-10 画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法及び画像復号プログラム
JP2011-105183 2011-05-10

Publications (1)

Publication Number Publication Date
WO2012153771A1 true WO2012153771A1 (ja) 2012-11-15

Family

ID=47139247

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/061896 WO2012153771A1 (ja) 2011-05-10 2012-05-09 画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法及び画像復号プログラム

Country Status (2)

Country Link
JP (1) JP2014140089A (ja)
WO (1) WO2012153771A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104427291A (zh) * 2013-08-19 2015-03-18 华为技术有限公司 一种图像处理方法及设备
US10523879B2 (en) 2018-05-07 2019-12-31 Apple Inc. Creative camera

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6743893B2 (ja) * 2016-08-10 2020-08-19 ソニー株式会社 画像処理装置および画像処理方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002058031A (ja) * 2000-08-08 2002-02-22 Nippon Telegr & Teleph Corp <Ntt> 画像符号化方法及び装置、並びに、画像復号化方法及び装置
JP2007036800A (ja) * 2005-07-28 2007-02-08 Nippon Telegr & Teleph Corp <Ntt> 映像符号化方法、映像復号方法、映像符号化プログラム、映像復号プログラム及びそれらのプログラムを記録したコンピュータ読み取り可能な記録媒体
WO2010087955A1 (en) * 2009-01-30 2010-08-05 Thomson Licensing Coding of depth maps

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002058031A (ja) * 2000-08-08 2002-02-22 Nippon Telegr & Teleph Corp <Ntt> 画像符号化方法及び装置、並びに、画像復号化方法及び装置
JP2007036800A (ja) * 2005-07-28 2007-02-08 Nippon Telegr & Teleph Corp <Ntt> 映像符号化方法、映像復号方法、映像符号化プログラム、映像復号プログラム及びそれらのプログラムを記録したコンピュータ読み取り可能な記録媒体
WO2010087955A1 (en) * 2009-01-30 2010-08-05 Thomson Licensing Coding of depth maps

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104427291A (zh) * 2013-08-19 2015-03-18 华为技术有限公司 一种图像处理方法及设备
JP2016527791A (ja) * 2013-08-19 2016-09-08 華為技術有限公司Huawei Technologies Co.,Ltd. 画像処理方法及び装置
CN104427291B (zh) * 2013-08-19 2018-09-28 华为技术有限公司 一种图像处理方法及设备
US10523879B2 (en) 2018-05-07 2019-12-31 Apple Inc. Creative camera

Also Published As

Publication number Publication date
JP2014140089A (ja) 2014-07-31

Similar Documents

Publication Publication Date Title
JP6072678B2 (ja) 画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法及び画像復号プログラム
US11412137B2 (en) Image data encoding/decoding method and apparatus
KR102576194B1 (ko) 인터 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
KR20210133192A (ko) 영상 부호화 또는 복호화하기 위한 장치 및 방법
US20190253624A1 (en) Image data encoding/decoding method and apparatus
KR102658929B1 (ko) 인터 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
TW201220855A (en) Image encoding method and apparatus, image decoding method and apparatus, and programs therefor
CN103404150A (zh) 图像编码方法、图像解码方法、图像编码装置、图像解码装置、图像编码程序及图像解码程序
US11778331B2 (en) Image data encoding/decoding method and apparatus
JP7224280B2 (ja) 画像データ符号化/復号化方法及び装置
KR20180079314A (ko) 그래프 기반 리프팅 변환을 이용하여 비디오 신호를 인코딩, 디코딩하는 방법 및 장치
JP7156471B2 (ja) 動画像復号装置、動画像復号方法及び動画像復号用コンピュータプログラム
WO2012153771A1 (ja) 画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法及び画像復号プログラム
Sha et al. Novel image set compression algorithm using rate-distortion optimized multiple reference image selection
JP6248783B2 (ja) 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム
WO2012128209A1 (ja) 画像符号化装置、画像復号装置、プログラムおよび符号化データ
CN111869211B (zh) 图像编码装置和方法
KR102356317B1 (ko) 화면 내 예측 부호화 또는 복호화 방법 및 장치
WO2012153440A1 (ja) 予測ベクトル生成方法、予測ベクトル生成装置、予測ベクトル生成プログラム、画像符号化方法、画像符号化装置、画像符号化プログラム、画像復号方法、画像復号装置、及び画像復号プログラム
KR20230166617A (ko) 영상의 압축 영역에서 딥러닝 행동 인식 방법 및 이를 위한 장치
BR122023022608A2 (pt) Aparelho de decodificação para decodificação de imagens, aparelho de codificação de imagem para codificação de imagens e aparelho para transmissão de dados para uma informação de imagem
BR112021010422A2 (pt) Método de codificação de imagem baseado em transformada secundária e dispositivo para o mesmo
BR112021010422B1 (pt) Método de decodificação de imagem realizado por um aparelho de decodificação, método de codificação de imagem realizado por um aparelho de codificação de imagem e meio de armazenamento legível por computador não transitório
BR122022006273B1 (pt) Método e aparelho de decodificação de imagem, método e aparelho de codificação de imagem, meio de armazenamento legível por computador não transitório, método e aparelho de transmissão de dados para uma imagem
WO2012128211A1 (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: 12782938

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12782938

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP