WO2006028125A1 - 立体視画像生成装置 - Google Patents

立体視画像生成装置 Download PDF

Info

Publication number
WO2006028125A1
WO2006028125A1 PCT/JP2005/016408 JP2005016408W WO2006028125A1 WO 2006028125 A1 WO2006028125 A1 WO 2006028125A1 JP 2005016408 W JP2005016408 W JP 2005016408W WO 2006028125 A1 WO2006028125 A1 WO 2006028125A1
Authority
WO
WIPO (PCT)
Prior art keywords
pixel
value
image
variable
eye image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/JP2005/016408
Other languages
English (en)
French (fr)
Inventor
Kazunari Era
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to EP05782234.8A priority Critical patent/EP1788824B1/en
Priority to AU2005280997A priority patent/AU2005280997B2/en
Priority to CN2005800303499A priority patent/CN101015220B/zh
Priority to US11/660,953 priority patent/US7945088B2/en
Priority to CA2577744A priority patent/CA2577744C/en
Publication of WO2006028125A1 publication Critical patent/WO2006028125A1/ja
Priority to NO20071308A priority patent/NO340431B1/no
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three-dimensional [3D] modelling for computer graphics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/261Image signal generators with monoscopic-to-stereoscopic image conversion

Definitions

  • the present invention relates to a technique for generating an image that is perceived as a solid by an observer.
  • Patent Document 1 Japanese Patent Application Laid-Open No. 2002-123842 (paragraph 0033 and FIG. 7)
  • each adjacent pixel in the original image may be moved in different directions. This is a phenomenon called pixel crossing, which causes image quality degradation such as image distortion. In particular, pixel crossing is likely to occur at locations where multiple subjects overlap in the original image. Quality degradation is a very serious problem.
  • the present invention has been made in view of such circumstances, and an object thereof is to generate a stereoscopic image having a natural stereoscopic effect while suppressing deterioration in image quality.
  • a stereoscopic image generation apparatus is an apparatus that generates, from an original image, a stereoscopic image in which a right-eye image and a left-eye image are combined.
  • the pixel value storage means for storing the pixel value for each of the plurality of pixels constituting the pixel image, and the difference between the pixel value of each pixel constituting the original image and the pixel value of the pixel adjacent to the pixel is calculated, and this difference is calculated.
  • Determination means for determining a depth value of each pixel on the basis thereof, and stereoscopic means for generating a stereoscopic image based on the depth value of each pixel determined by the determination means. For example, the depth value of each pixel is determined according to the size of the pixel value of the pixel and the pixel value of a pixel adjacent to the pixel in the row direction (X direction) or the column direction (Y direction). .
  • the depth value of a pixel is determined directly from the pixel value of one pixel.
  • the depth value of each pixel is determined according to the relationship between the pixel values of adjacent pixels. Therefore, according to the present invention, it is possible to generate a stereoscopic image having a natural standing feeling as compared with the conventional configuration.
  • each pixel constituting the original image includes a plurality of sub-pixels having different display colors, and sub-pixel storage for storing the gradation value of each sub-pixel for each pixel. And a calculation means for calculating a pixel value for each pixel based on a gradation value of each sub-pixel stored in the sub-pixel storage means, wherein the pixel value storage means is determined by the calculation means.
  • the calculated pixel value is stored for each pixel. According to this aspect, since the pixel value for each pixel is calculated based on the gradation value of each sub-pixel, a natural stereoscopic image can be obtained even when a color image having a plurality of color forces is used as the original image. Can be generated.
  • the calculating means binarizes the gradation value of each sub-pixel belonging to one pixel, and weights each binarized gradation value for each display color.
  • the pixel value of the pixel is calculated based on the added value. According to this aspect, since the pixel value is calculated based on a numerical value obtained by weighting the gradation value of each sub-pixel for each display color, a stereoscopic image suitable for human visual characteristics with different sensitivity to each color is generated. Can be made.
  • the human visual characteristic shows the characteristic that the sensitivity to green is maximum and the sensitivity to blue is minimum. Therefore, when each pixel includes a red sub-pixel, a green sub-pixel, and a blue sub-pixel, the calculation means calculates a gradation value obtained by binarizing the green sub-pixel for each pixel and the first sub-pixel. A multiplication value of a weight value of 1, a multiplication value of a binarized gradation value for a red sub-pixel and a second weight value smaller than the first weight value, and a blue sub-pixel The binarized gradation value and a multiplication value of the third weight value smaller than the second weight value are added, and the pixel value of the pixel is calculated based on the addition value.
  • a depth value storage means for storing a depth value
  • the determination means selects each of a plurality of pixels constituting the original image in order along the arrangement. And the difference between the pixel value of the pixel selected by the selection means and the pixel value of the pixel adjacent to the pixel.
  • the changing means when the difference changes from positive to negative, reduces the depth value predetermined value of the selected pixel after the change, while when the difference changes from negative to positive.
  • the predetermined value is added to the depth value of the pixel selected after the change has occurred.
  • the apparatus includes a threshold storage unit that stores a threshold, and the determination unit includes a counting unit that counts the number of times the difference codes calculated by the difference calculation unit continuously match.
  • the changing means compares the count value obtained by the counting means with the threshold value stored in the threshold value storage means, and if the count value exceeds the threshold value, Change the bounds.
  • the depth value is changed based on the result of comparison between the count value by the counting means and the threshold value. For example, when the count value by the counting means exceeds the threshold value, the depth value is changed.
  • the apparatus includes a threshold storage unit that stores a threshold
  • the determination unit includes a counting unit that counts the number of times the difference codes calculated by the difference calculation unit continuously match.
  • the changing means compares the count value obtained by the counting means with the threshold value stored in the threshold value storage means, and if the count value exceeds the threshold value, Change the bounds.
  • the depth value is changed based on the result of comparison between the count value by the counting means and the threshold value. For example, when the
  • an acquisition unit that acquires an initial value input from an input device
  • the changing unit is a first pixel among a plurality of pixels that array the initial value acquired by the acquisition unit in the predetermined direction. Since the depth value of each pixel can be adjusted as a whole of the original image, a variety of stereoscopic views corresponding to the input from the input device can be obtained. An image is generated.
  • gradation value storage means for storing the gradation value of each pixel constituting the original image
  • the three-dimensionalization means includes a level of each pixel belonging to each row of the left-eye image.
  • Grading force Generates the image for the left eye so that the gradation value of the pixel located in the original image is separated by the number of pixels corresponding to the depth value of the pixel from one pixel in the row direction.
  • the tone value of each pixel belonging to each row of the right-eye image is shifted from the pixel to the other in the row direction, and the pixel located at a position separated by the number of pixels corresponding to the depth value of the pixel.
  • Generating means for generating a right-eye image so that the gradation value becomes the same, and combining the left-eye image and right-eye image generated by the generating means
  • Synthesizing means for generating an image In the configuration in which the pixels of the original image are moved according to the depth value, there is a problem that the pixel is likely to be lost.
  • the original image is used as each pixel constituting the left-eye image and the right-eye image. Since a pixel at a position corresponding to the depth value is selected from the inner key, such a loss can be prevented.
  • the stereoscopic display means is configured such that the pixel value of each pixel belonging to each row of the left-eye image has a depth value of the pixel toward one side in the pixel power running direction of the original image.
  • a left-eye image is generated so that the pixel values of pixels located at positions separated by the number of pixels corresponding to the The pixel value of each pixel belonging to each row of the image In the original image, the pixel value of the pixel located at a position away from the pixel by the number of pixels corresponding to the depth value of the pixel is directed to the other in the row direction.
  • the generation unit executes the generation process of the left-eye image and the right-eye image a plurality of times, while the generation process is performed in the immediately preceding generation process in each generation process other than the first time.
  • the left-eye image and the right-eye image are generated using the left-eye image and the right-eye image as original images, and the combining means combines the left-eye image and the right-eye image generated by a plurality of generation processes. To generate a stereoscopic image.
  • the generation of the image for the left eye and the image for the right eye is executed in stages, the number of missing pixels is small compared to the case where a stereoscopic image is generated by a single three-dimensional process. ⁇ A natural stereoscopic image can be generated.
  • Another aspect of the present invention that focuses on the specific contents of the three-dimensional means includes a gradation value storage means for storing the gradation value of each pixel constituting the original image, and a plurality of pieces constituting the original image.
  • Calculation means for calculating a depth value for each of the pixels, and three-dimensional means for generating a stereoscopic image based on the depth value of each pixel calculated by the calculation means.
  • the image in which the gradation value of each pixel belonging to each row of the image for the left eye is located at a position away from the original image by the number of pixels corresponding to the depth value of the pixel is directed to one of the pixels in the row direction.
  • a left-eye image is generated so as to have an original gradation value, and the gradation value of each pixel belonging to each row of the right-eye image is determined from the original image to the other of the pixels in the row direction.
  • the right-eye image is generated so that the gradation value of the pixel located at a position separated by the number of pixels corresponding to the depth value is obtained.
  • the method for calculating the depth value is arbitrary. That is, in addition to the method of determining the depth value of each pixel according to the size of the pixel values of adjacent pixels, various known methods are employed.
  • the stereoscopic image generation apparatus is realized by hardware such as a DSP (Digital Signal Processor) dedicated to image processing, a personal computer, etc. It is also realized by the cooperation between the computer and the program.
  • This program is applied to a computer having pixel value storage means for storing a pixel value for each of a plurality of pixels constituting the original image, and to the pixel value of each pixel constituting the original image and the pixel.
  • a determination process for determining the depth value of the pixel based on the magnitude of the pixel value of the pixel adjacent in the direction, and a body for generating a stereoscopic image based on the depth value of each pixel determined by the determination process The process is executed.
  • This program also provides the same operations and effects as described above for the stereoscopic image generating apparatus of the present invention.
  • the program according to the present invention is provided to a user in a form stored in a portable recording medium such as a CD-ROM and installed in a computer, and is also supported in a form distributed via a network. Server device provided and installed on computer.
  • the present invention is also applicable to a display device that displays an image and a playback device that plays back an image recorded on a recording medium. That is, the display device includes a pixel value storage unit that stores a pixel value for each of a plurality of pixels constituting the original image, a pixel value of each pixel constituting the original image, and a pixel value of a pixel adjacent to the pixel. Determining means for determining the depth value of each pixel based on the size of the image, a stereoscopic means for generating a stereoscopic image based on the depth value of each pixel determined by the determining means, and a stereoscopic means Display means for generating the generated stereoscopic image.
  • the reproducing apparatus includes a reading unit that reads an original image from various recording media such as an optical disc, a pixel value of each pixel that constitutes the original image read by the reading unit, and a pixel value of a pixel adjacent to the pixel.
  • Determining means for determining the depth value of each pixel based on the size of the image, and stereoscopic means for generating and outputting a stereoscopic image based on the depth value of each pixel determined by the determining means.
  • FIG. 1 is a block diagram showing a configuration of a stereoscopic image generating apparatus according to a first embodiment of the present invention.
  • FIG. 2 is a diagram showing a configuration of an original image.
  • FIG. 3 is a diagram showing a data structure of original image data.
  • FIG. 4 is a diagram showing a state in which original image data is read into a RAM.
  • FIG. 5 is a diagram for explaining the contents of a pixel value calculation process.
  • FIG. 6 is a table showing the correspondence between sub-pixel values and pixel values for each display color.
  • FIG. 7 is a table showing a correspondence between a bit string that also has a sub-pixel value for each display color and a pixel value.
  • FIG. 8 is a diagram for explaining the contents of a depth value determination process.
  • FIG. 9 is a diagram for explaining the contents of a three-dimensional blur process.
  • FIG. 10 is a flowchart showing specific contents of stereoscopic image generation processing.
  • FIG. 11 is a flowchart showing specific contents of stereoscopic image generation processing.
  • FIG. 12 is a flowchart showing specific contents of stereoscopic image generation processing.
  • FIG. 13 is a flowchart showing specific contents of stereoscopic image generation processing.
  • FIG. 14 is a diagram for explaining the operation of the stereoscopic image generating apparatus according to the second embodiment of the present invention.
  • D stereoscopic image generation device, 10 ?? CPU, 21 ?? RAM, 23 ?? RAM, 30 ?? storage device, 40 ?? display device, 45 .... input device, IMG0 ?? original image , Pix: Pixel, Ps: Sub-pixel, Dg: Original image data, D: Pixel data, U (Ur, Ug, Ub) ... Unit data, G: Pixel value, Gsub: Sub-pixel value .
  • FIG. 1 is a block diagram showing the configuration of the stereoscopic image generating apparatus D according to the first embodiment of the present invention.
  • the CPU 10 shown in the figure is means for centrally controlling each part of the stereoscopic image generating apparatus D, and realizes various functions by executing various calculations and control of each part according to a program.
  • the ROM 21 is a memory for storing a program executed by the CPU 10
  • the RAM 23 is a memory used as a work area by the CPU 10.
  • the storage device 30 is a means for storing a program executed by the CPU 10 and various data used in executing this program.
  • a hard disk device with a built-in magnetic disk or a disk device that accommodates a recording medium such as a CD-ROM is used as the storage device 30.
  • the storage device 30 includes a stereoscopic image generation device D.
  • An OS Operating System
  • image processing program application program for processing images
  • This image processing program executes processing (hereinafter referred to as “stereoscopic image generation processing”) on the CPU 10 to generate stereoscopic image data representing a stereoscopic image from original image data indicating the content of the original image as the material.
  • the stereoscopic image is an image in which a left-eye image that should be viewed by the user's left eye and a right-eye image that should be viewed by the user's right eye are combined.
  • the left-eye image and the right-eye image have parallax.
  • a stereoscopic image generated by the CPU 10 executing the image processing program is displayed on the display device 40.
  • the display device 40 is means for displaying various images under the control of the CPU 10, and includes a display device such as a CRT (Cathode Ray Tube) or a liquid crystal display panel.
  • the display device 40 in the present embodiment displays the stereoscopic image so that the left-eye image of the stereoscopic image is visually recognized only by the user's left eye, while the right-eye image is visually recognized only by the user's right eye.
  • a method for realizing such a display for example, a method in which a user wears polarized glasses, or a method in which a part of the user's visual field is blocked using a mechanism such as a lenticular lens or a parallax noria.
  • Various methods proposed in the past are used.
  • extra-color (complementary) glasses with a pair of lenses that selectively transmit light in different frequency bands for example, blue light and red light
  • FIG. 2 is a diagram showing the configuration of the original image.
  • the original image IMG0 also includes a plurality of pixel Pix forces arranged in a matrix of H rows and XW columns in the row direction (X direction) and the column direction (Y direction) (H and W is a natural number.
  • One pixel Pix is composed of three sub-pixels Ps (Ps-r, Ps-g, and Ps-b) each having a different display color.
  • each pixel Pix includes a blue (B) sub-pixel Ps-b, a green (G) sub-pixel Ps-g, and a red (R) sub-pixel Ps-r in the row direction (X direction).
  • the structure is arranged in this order from the negative side to the positive side.
  • Such original image data indicating the original image IMGO is stored in the storage device 30.
  • the original image data Dg is a set of a plurality (H XW) of pixel data D each specifying the gradation value of one pixel Pix.
  • the letter [i, j] attached to each pixel data D in the figure is the jth when the pixel data D belongs to the i-th row (i is an integer satisfying 0 ⁇ i ⁇ (H—1)). (j is an integer satisfying 0 ⁇ j ⁇ (W-1)) It indicates that the pixel data D of the pixel Pix in the column. As shown in FIG.
  • one pixel data D includes three unit data U (Ur, Ug and Ub) corresponding to the display color of each sub-pixel Ps. That is, the unit data Ub is the gradation value of the blue sub-pixel Ps-b, the unit data Ug is the gradation value of the green sub-pixel Ps-g, and the unit data Ur is the red sub-pixel Ps-r. This data indicates the gradation value.
  • the data length of one unit data U is 8 bits (therefore, pixel data D is 24 bits). Therefore, each unit data U is a numerical value indicating any one of 256 gradations from “0” to “255”. However, the data length of each unit data U and the number of gradations indicated by this unit data U are arbitrarily changed. For example, pixel data D (16 bits) in which each of blue unit data Ub and red unit data Ur is 5 bits and green unit data Ug is 6 bits may be adopted.
  • FIG. 4 is a diagram showing a state (memory map) in which the original image data Dg is stored in the RAM 23.
  • the original image data Dg is stored in a continuous area of the RAM 23 starting from the address ADO.
  • each pixel data D constituting the original image data Dg is stored in the RAM 23 in the order of arrangement of the pixels Pix in the original image IMGO.
  • each unit data U included in one pixel data D is stored in the order of arrangement of the sub-pixels Ps in areas where addresses are different from each other.
  • the unit data Ub corresponding to the blue sub-pixel Ps-b among the pixels Pix in the 0th column belonging to the 0th row is stored at the address “ADO”, and the green sub-pixel Ps among the pixels Pix is stored.
  • Unit data Ug corresponding to -g is stored at address ⁇ AD0 + 1 ''
  • unit data Ur corresponding to red sub-pixel Ps-r of the same pixel Pix is stored at address ⁇ ADO + 2 ''! / It ’s a hard time.
  • the unit data Ub of the blue sub-pixel Ps-b among the pixels Pix of the j-th column belonging to the i-th row is the address “ADO + (i * W + j) * 3 ”
  • the unit data Ug of the green sub-pixel Ps-g in the same pixel Pix is stored at the address “AD0 + (i * W + j) * 3 + 1”, and the red sub-pixel Ps-
  • the unit data Ur of r will be stored in the address “AD0 + (i * W + j) * 3 + 2”.
  • the input device 45 shown in FIG. 1 is a device that includes an operator for inputting characters and symbols, and outputs a signal corresponding to an operation by the user to the CPU 10.
  • the user can change various variables applied in the stereoscopic image generation process by appropriately operating the input device 45.
  • This stereoscopic image generation process is a process for calculating a pixel value G for each pixel Pix (hereinafter referred to as “pixel value calculation process”) and a depth for each pixel Pix based on the pixel value G of each pixel Pix.
  • the process of determining the value Z hereinafter referred to as “depth value determination process”
  • the process of generating a stereoscopic image having a parallax corresponding to this depth value hereinafter referred to as “stereoscopic process” t ⁇ ⁇ ) are roughly divided. Is done. These processes are executed for each pixel Pix constituting the original image IMG0.
  • the CPU 10 selects each row constituting the original image IMG0 in order from the 0th row force toward the (H-1) row as shown by the broken line in FIG.
  • the pixel Pix in each column belonging to the selected row is selected in order by force in the 0th column and the (W-1) th column.
  • the CPU 10 executes each process on the selected pixel Pix (hereinafter, particularly referred to as “target pixel P”).
  • target pixel P the contents will be described for each of these processes.
  • This pixel value calculation process is a process for calculating the pixel value G for each unit data U force pixel Pix included in the pixel data D of each pixel Pix.
  • the CPU 10 calculates a numerical value (hereinafter referred to as “sub-pixel value”) Gsub obtained by binarizing the gradation value indicated by the unit data U of each display color corresponding to the target pixel P.
  • Each sub-pixel value Gsub is weighted by a weight value selected separately for each display color. More specifically, as shown in FIG.
  • the CPU 10 compares the gradation value indicated by the unit data Ug of the green sub-pixel Ps-g in the target pixel P with the threshold value TH stored in the RAM 23, and When the gradation value is greater than the threshold TH, “4” is displayed. When the gradation value is smaller than the threshold TH, “0” is displayed. Select as sub-pixel value Gsub-g.
  • the CPU 10 also sets “2” when the gradation value of the red unit data Ur is larger than the threshold value TH, and “0” when the gradation value is smaller than the threshold value TH, and the red sub-pixel value Gsub. Select as -r.
  • the CPU 10 calculates the numerical factor by calculating the sub-pixel values Gsub (Gsub-g, Gsub-r and Gsu bb) of each display color, and this added value factor Is multiplied by the step value STEP to calculate the pixel value G of the target pixel P.
  • This step value STEP is arbitrarily updated by the user operating the input device 45. Assuming that the step value STEP is “8”, as shown in FIG.
  • the pixel values G calculated by the above procedure are “0”, “8”, “16”, “24”, “ The value is any one of “32”, “40”, “48”, and “56”.
  • the threshold value TH is also changed as appropriate according to the content of the operation on the input device 45.
  • the pixel value calculation process can be grasped as follows from another viewpoint. That is, CPU10 calculates a sub-pixel value Gsub that is either “0” or “1” for each display color according to the comparison result between the gradation value of the unit data U of each display color and the threshold value TH. . For example, when the gradation value of the blue unit data Ub is greater than the threshold value TH, “1” is calculated as the blue sub-pixel value Gsub-b, and “0” is calculated as the blue sub-pixel value Gsub-b. (Refer to Fig.
  • the CPU 10 applies the green sub-pixel value Gsub-g, the red sub-pixel value Gsub-r, and the blue sub-pixel value Gsub-b to the lowest power and the lowest power.
  • a bit string (corresponding to the numerical value factor) arranged in this order is generated, and the step value STEP is multiplied to this bit string.
  • the force that maximizes the green weight value and minimizes the blue weight value is as follows.
  • the cones of each color that exist in the human retina The average ratio is about 59% for green cones, followed by about 30% for red cones, and about 11% for blue cones.
  • human vision has the property that perception of green is more sensitive than perception of red or blue. Therefore, in this embodiment, the green weight value is maximized, the blue weight value is minimized, and the red weight value is an intermediate value so as to match the ratio of the cones of these colors. .
  • the pixel value G Based on these weight values, the pixel value G
  • This depth value determination process is a process of calculating a depth value Z that determines the depth perceived by the observer based on the pixel value G.
  • the CPU 10 assigns each pixel Pix belonging to the row selected as the processing target (hereinafter referred to as “selected row”) to the first pixel power (W-1) column in order and focuses on the target pixel P in turn. Select as.
  • the variable Zx is stored in the RAM 23.
  • the CPU 10 assigns a variable Zx stored in the RAM 23 as the depth value Z of the target pixel P selected as the processing target.
  • This variable Zx is sequentially updated from the initial value Z0 according to the change in the pixel value G when each pixel Pix in the selected row is selected in order. Further details are as follows.
  • the CPU 10 decreases the force by which the pixel value G of the pixel of interest P in the j-th column belonging to the selected row is increased with respect to the pixel value G of the pixel Pk of the (j 1) -th column in the same row. It is determined whether or not. Then, when an increase in the pixel value G is detected, the CPU 10 sets “RAISE_UP” indicating the increase (hereinafter referred to as “rising of the pixel value G”) to the variable which stored in the RAM 23, and If a decrease in value G is detected, “FALL_DOWN” indicating the decrease (hereinafter referred to as “falling pixel value G”) is set in the variable which.
  • the CPU 10 maintains the variable which is the immediately preceding content (does not change the variable which). That is, the variable which increases the pixel value G during the depth value determination process! It is a variable that indicates whether or not to decrease.
  • FIG. 8 shows the pixel value G of each pixel Pix from the 0th column to the 18th column belonging to the selected row.
  • the depth value determination process for each selected row is When started (that is, when the pixel Pix in the 0th column is selected as the pixel of interest P), the initial value of the variable which is “RAISE_UP”.
  • the rising edge of the pixel value G detected for each pixel of interest P is indicated by an upward arrow “ ⁇ ”, and the falling edge of the pixel value G is indicated by a downward arrow “ ⁇ ”.
  • the sign “-” indicates that there is no change in the pixel value G.
  • the pixel value G “32” of the pixel Pix in the seventh column is decreased from the pixel value G “48” of the pixel Pix immediately before (pixel Pix in the sixth column). (Falling down). Therefore, when the pixel Pix in the seventh column is selected as the pixel of interest P, the variable which is changed from “RAISE_UP” to “FALL_DOWN”. The pixel value G of each pixel Pix in the 8th and 9th columns that follows this falls from the pixel value G of the pixel Pix in the previous column! / The variable which is maintained at “FALL_DOWN” at the stage selected as pixel P.
  • the pixel value G “16” of the pixel Pix in the 10th column is greater than the pixel value G “8” of the pixel Pix in the 9th column!
  • the CPU 10 increases or decreases the variable Zx by the step value PLX when the variable which changes (that is, when it changes from “RAISE_UP” to “FALL_DOWN” and from “FALL_DOWN” to “RAISE_UP”). . More specifically, as shown in FIG. 8, when the variable which is changed from “RAISE_UP” to “FALL_DOWN”, the variable Zx is decreased by the step value PLX, while the variable which is “FALL_DOWN”. If changed from “RAISE_UP” to “Z”, the variable Zx is increased by the step value PLX. For example, in the example of FIG.
  • the CPU 10 since the variable which changes from “RAISE_UP” to “FALL_D 0 leakage” at the stage when the pixel Pix in the seventh column is selected, the CPU 10 sets the variable Zx at this stage. Decrease by step value PLX. Further, since the variable which has changed from “FALL_DOWN” to “RAISE_UP” at the stage when the pixel Pix in the 10th column is selected, the CPU 10 increases the variable Zx by the step value PLX at this stage.
  • the step value PLX is a variable that specifies the variation width of the variable Zx (and hence the depth value Z). The value of this step value PLX is appropriately selected by the CPU 10 according to the operation of the input device 45.
  • the pixel value G of each pixel Pix from the first column to the fourth column is “16” ⁇ “24” ⁇ “32” ⁇ “40”! Standing up continuously.
  • the pixel value G of the pixel Pix in the fifth column is “48”, and it rises from the pixel value G “40” of the pixel Pix on the left (fourth column) to the left.
  • the variable Zx after this change is specified as the depth value Z of the pixel Pix in the fifth column.
  • the threshold value N is set.
  • the CPU 10 steps the variable Zx stored in the RAM 23. Decrease by the value PLX.
  • the pixel value G of each pixel Pix from the thirteenth column pixel Pix to the seventeenth column is “32” ⁇ “24” ⁇ “16” ⁇ “8” ⁇ “0” t Therefore, the CPU 10 has fallen continuously for a total of 5 times, so the CPU 10 is in a stage where the pixel Pix in the 17th column is selected as the target pixel P (i.e., the number of consecutive reductions reaches ⁇ 5 times '').
  • This changed variable Zx is specified as the depth value Z of the pixel Pix in the 17th column.
  • the variable Zx assigned as the depth value Z of each pixel Pix is updated according to the change of the pixel value G of each pixel Pix (especially according to the number of times the change continues). It's like!
  • the depth value for each pixel Pix is changed. It is determined.
  • the numerical value of the threshold N is appropriately updated by the CP UIO according to the content of the operation on the input device 45. Further, in the present embodiment, a configuration in which the threshold value for the continuous increase number and the threshold value for the continuous decrease number are set to a common numerical value N is exemplified, but these may be set as separate numerical values.
  • a left-eye image and a right-eye image having a parallax corresponding to the depth value Z of each pixel Pix are generated, and the stereoscopic image is synthesized by combining the left-eye image and the right-eye image. It is a process to generate.
  • the pixel data D of the pixel Pix belonging to the i-th LFx column of the image IMG0 is selected as the pixel data of the j-th column pixel Pix belonging to the i-th row of the left-eye image.
  • variable RTx in this case is “j + 2”, as shown in the figure, the pixel data D [i, j + of the pixel Pix in the (j + 2) -th column of the original image IMG0 2] Force Selected as pixel data Dr [i, j] for the pixel Pix belonging to the i-th row and j-th column in the right-eye image.
  • the above processing is executed for all the pixels Pix belonging to the selected row, and the same processing is repeated for all the rows of the original image IMG0, whereby the image data of the left eye image (hereinafter referred to as “left eye image data”).
  • left eye image data hereinafter referred to as “left eye image data”.
  • T, U) and right-eye image data hereinafter, “right-eye image data” are generated and placed in the same manner as in FIG.
  • each pixel Pix of the original image IMG0 corresponds to the depth value Z.
  • a method of generating a left-eye image and a right-eye image by moving the same number of pixels in the row direction is also employed.
  • Pixel Pix may be missing. Although the missing pixels Pix can be corrected by various image processing such as blurring processing, the image processing load may be excessive in this case.
  • the pixel data D of any pixel Pix of the original image IMG0 is assigned to each pixel Pix constituting the left-eye image and the right-eye image. Problems such as omissions are suppressed. Therefore, there is an advantage that the image for the left eye and the image for the right eye can be generated with a very small processing load.
  • the CPU 10 When the left-eye image and the right-eye image are generated by the above procedure, the CPU 10 generates a stereoscopic image by synthesizing these images.
  • the polarization direction is different between the right eye part and the left eye part of the display device 40 in which polarizing plates having different polarization directions are attached to the even-numbered scanning lines and the odd-numbered scanning lines on the display surface.
  • each pixel Pix belonging to an odd row in the left eye image and each pixel Pix belonging to an even row in the right eye image are displayed.
  • synthesizing a stereoscopic image is generated.
  • the mechanism for visually recognizing the stereoscopic image is arbitrary as described above. Therefore, the method for synthesizing the left-eye image and the right-eye image is appropriately selected according to the mechanism for visually recognizing the stereoscopic image.
  • the CPU 10 When the user operates the input device 45 and gives an instruction to start the image processing program, the CPU 10 reads the image processing program from the storage device 30 into the RAM 23 and sequentially executes it.
  • the specific contents of the image processing program will be described with reference to FIGS. 10 to 13, the process from step Sbl to step Sb8 corresponds to the pixel value calculation process, the process from step Scl to step Scl4 corresponds to the depth value determination process, and the process from step Sdl to step Sd7. Corresponds to the three-dimensional processing.
  • the CPU 10 when the image processing program is started, the CPU 10 first sets the variable s. rcp, variable pLEFT, variable pRIGHT and variable Z0 are initialized (step Sal).
  • the variable src p is the leading address of the area where the pixel data D of the target pixel P in the original image IMG0 is stored (that is, the unit data Ub of the blue sub-pixel Ps-b of the target pixel P is stored). Variable).
  • the CPU 10 since the pixel Pix in the 0th row and the 0th column is selected as the target pixel P in order from the pixel 0 in the 0th row, in step Sal, the CPU 10
  • the srcp is the start address ADO of the area where the original image data Dg is stored in the RAM 23 (that is, the unit data Ub of the blue sub-pixel Ps-b among the pixels Pix in the 0th column belonging to the 0th row) Initialize to the address to be stored.
  • the variable pLEFT is a variable indicating the start address of the area in which the pixel data D1 of the target pixel P in the left-eye image is stored, and the variable pRIGHT is stored with the pixel data Dr of the target pixel P in the right-eye image. This variable indicates the start address of the area to be stored.
  • step Sal the CPU 10 substitutes the start address ADleft of the area where the left-eye image data is stored into the variable pLEFT, and substitutes the start address ADright of the area where the right-eye image data is stored into the variable pRIGHT.
  • the variable Z0 is a variable indicating the initial value of the depth value Z used in the depth value determination process.
  • the CPU 10 initializes the variable Z0 to the numerical value “2”. The initial value of the variable Z0 is appropriately changed by the CPU 10 according to the operation of the input device 45 by the user.
  • the CPU 10 initializes a variable i specifying any row of the original image IMG0 to “0” (step Sbl), and determines whether or not the variable i is less than the total number of rows H of the original image IMG0. (Step Sb2). Here, if it is determined that the variable i is less than the total number of rows H (that is, processing has not been completed for all rows of pixels Pix), the CPU 10 sets various variables related to processing executed for each row. Initialization (step Sb3). In step Sb3, a variable falldown_CNT indicating the number of consecutive decreases, a variable raiseup_CNT indicating the number of consecutive increases, and a force S “0” are initialized. Further, as described with reference to FIG.
  • the CPU 10 initializes a variable j for designating a column of the original image IMG0 to “0” (step Sb4), and determines whether or not the variable j is less than the total number of columns W of the original image IMG0. (Step Sb5). Here, if it is determined that the variable j is greater than or equal to the total number of columns W (that is, processing has been completed for all the pixels Pix belonging to the selected row), the CPU 10 increments the variable i by “1”. After that (step Sb6), the process proceeds to step Sb2. Incrementing this variable i means changing the selected line to be processed to the next line! / Speak.
  • step Sb5 if it is determined in step Sb5 that the variable j is less than the total number of columns W (that is, processing has not been completed for all the pixels Pix belonging to the selected row), the CPU 10
  • the numerical value calculated by the procedure in Fig. 5 from the unit data U of each display color of the pixel P is substituted into the variable factor (step Sb7). That is, the blue unit data Ub stored at the address indicated by the variable srcp, the green unit data Ug stored at the address “srcp + l”, and the red unit data stored at the address “srcp + 2”
  • the variable factor is calculated from Ur.
  • the CPU 10 substitutes the pixel value G, which is a product of the variable factor and the step value STEP, into the variable gray (step Sb8).
  • the pixel value G of the target pixel P is calculated by the above procedure.
  • the CPU 10 determines whether or not the variable j force S is “0”, that is, the pixel Pix of which the target pixel P belongs to the first column (0th column) of the selected row. Determine whether a force is present (step Scl). If it is determined that the variable j is “0”, the CPU 10 assigns the pixel value G assigned to the variable gray to the variable prev.
  • This variable prev is a variable indicating the pixel value G of the pixel Pix located on the left side of the target pixel P.
  • this pixel Pix is selected as the target pixel P (that is, when the variable j is “0”). Then, the pixel value G of the target pixel P is assigned to the variable prev! /, (Step Sc2).
  • step Sc3 a process for detecting a decrease in the pixel value G and updating the variable Zx according to the result is executed (from step Sc3 to step Sc8). That is, the CPU 10 first determines whether or not the value of the variable prev is larger than the value of the variable gray (step Sc3). As described above, the pixel value G of the target pixel P is assigned to the variable gray, and the variable prev Since the pixel value G of the adjacent pixel Pix is substituted, in step Sc3, it is determined whether or not the pixel value G of the target pixel P is decreased compared to the pixel value G of the left adjacent pixel Pix. Will be determined. If the pixel Pix located in the first column of the selected row is the target pixel P, the variable prev and the variable gray are equal, and therefore the determination result in step Sc3 is “NoJ”.
  • step Sc3 when it is determined that the variable prev is larger than the variable gray (that is, the pixel value G of the pixel of interest P is smaller than the pixel value G of the pixel Pix on the left side! / CPU10 determines whether variable "RAISE_UP" is set to variable! /, Or not (step Sc4) 0 where variable "RAISE_UP” is set to variable In this case (that is, when the pixel value G starts to increase at the current pixel of interest P), the CPU 10 subtracts the variable Zx by the step value PLX (step Sc5). Furthermore, the CPU 10 assigns “FALL_DOWN” indicating that the pixel value G is decreasing to the variable which, and sets “0” to the variable falldown_CNT indicating the number of continuous decreases (step Sc5).
  • step Sc4 determines whether or not the continuously decreasing variable falldown_CNT exceeds the threshold N (step Sc7). If it is determined that the variable f alldo Wn _CNT exceeds the threshold N (that is, if the number of consecutive reductions is equal to or greater than (N + 1) times), the CPU 10 subtracts the variable Zx by the step value PLX, and Is cleared to “0” (step Sc8).
  • variable Zx decreases because the number of consecutive decreases exceeds N times, the force at that time is counted again.
  • the variable Zx does not decrease until the number of consecutive decreases exceeds N times.
  • the CPU 10 does not execute step Sc8.
  • step Sc9 determines whether or not the variable prev is smaller than the variable gray (step Sc9). To this step Sc9 Oh! Thus, it is determined whether or not the pixel value G of the target pixel P is increased compared to the pixel value G of the pixel Pix on the left side. If the pixel Pix located in the first column of the selected row is the target pixel P, the variable prev and the variable gray are equal, and therefore the determination result in step Sc9 is “No”.
  • step Sc9 If it is determined in step Sc9 that the variable prev is smaller than the variable gray (that is, the pixel value G of the target pixel P is increased more than the pixel value G of the pixel Pix on the left side! / CPU 10 determines whether or not “FALL_DOWN” is set in variable which (step SclO). If it is determined that “FALL_DOWN” is set to!
  • the CPU 10 In addition to adding the step value PLX to, “R AISE.UPJ indicating that the pixel value G is increasing is substituted into the variable which, and then the variable raiseup_CNT indicating the number of continuous increases is set to“ 0 ”(Step Sell ).
  • step SclO determines whether or not this variable raiseup_CNT exceeds the threshold N (step Scl3).
  • step Scl4 If it is determined that the variable rai S eU p_CNT exceeds the threshold N (that is, if the number of consecutive increases is (N + 1) or more), the CPU 10 adds the step value PLX to the variable Zx and the variable raise Clear up_CNT to “0” (step Scl4). Therefore, once the variable Zx increases because the number of continuous increases exceeds N, the variable Zx does not increase until the number of continuous increases counted again at that time exceeds N. On the other hand, if it is determined that the variable raiseup_CNT is less than or equal to the threshold value N, the process of step Scl4 is not executed.
  • step Sdl force is also step Sd7). That is, CPU 10 first assigns a value obtained by subtracting variable Zx at the current stage from variable j to variable LFx. In addition, a value obtained by adding the variable j and the variable Zx is substituted into the variable RTx (step Sdl). As described with reference to FIG.
  • variable LFx and the variable RTx are variables that specify the pixels Pix adopted in the left-eye image and the right-eye image in the original image IMG0. That is, at that time, the numerical value assigned to the variable Zx is selected as the depth value Z of the pixel of interest P.
  • the CPU 10 stores the pixel specified by the variable LFx in the original image IMG0 at the address where the pixel data D1 of the pixel Pix in the j-th column belonging to the i-th row in the left-eye image is stored.
  • Substitute the address where pixel data D of Pix is stored (step Sd2). More specifically, the original image data Dg is stored in the address “pLEFT” where the unit data Ub of the blue sub-pixel Ps-b among the pixels Pix in the i-th row and j-th column of the left-eye image is stored.
  • the address “lineP + LFx * 3” of the area where is stored is substituted.
  • a DO + i * W * 3 is assigned to the variable lineP in step Sb2 !
  • the address assigned to the address "pLEFT” is "A DO + i * W * 3 + LFx * 3 ”, that is,“ ADO + (i * W + LFx) * 3 ”.
  • this address "AD0 + (i * W + LFx) * 3” stores pixel data D of pixel Pix that is separated from the target pixel P by the number of pixels of variable LFx in the row direction. Address.
  • the address “pLEFT” in which the unit data Ub of the blue sub-pixel Ps-b among the pixels Pix in the i-th row and j-th column of the left-eye image is stored is the target pixel P in the original image IMG0. Therefore, the address “lineP + LFx * 3” where the blue unit data Ub of the pixel Pix at the position separated by the variable LFx in the row direction is stored is substituted.
  • the unit data Ug corresponding to green is stored at the address obtained by incrementing the address of the unit data Ub corresponding to blue by “1”, so that it is stored in the j-th column of the i-th row of the left-eye image.
  • the address “pLEFT + l” where the unit data Ug of the green sub-pixel Ps-g is stored is the pixel located in the original image IMG 0 at a position separated from the target pixel P by the variable LFx in the row direction.
  • the address “lineP + LFx * 3 + l” where the green unit data Ug of Pix is stored is substituted.
  • the address “lineP + LFx * 3 + 2” is assigned to the address “pLEFT + 2” where the unit data Ur of the red sub-pixel Ps-r is stored.
  • Step Sd3 the same processing as step Sd2 is executed based on the variable RTx. That is, the CPU 10 stores the original image IMG0 for the address “pRIGHT” in which the unit data Ub of the blue sub-pixel Ps-b is stored in the pixel Pix in the i-th row and j-th column of the right-eye image. Substitute the address “lineP + RTx * 3” where the blue unit data Ub of the pixel Pix at the position separated by the variable RTx in the row direction from the target pixel P is stored.
  • the address “lineP + RTx * 3 + 1” of the original image data Dg is assigned to the address “pRIGHT + l” corresponding to the green subpixel Ps-g in the right-eye image, and the red subpixel Ps ⁇
  • the address “lineP + RTx * 3 + 2” of the original image data Dg is assigned to the address “pRIGHT + 2” corresponding to r.
  • the CPU 10 substitutes the value of the variable gray calculated in step Sb8 for the variable prev (step Sd4). This process is performed by using the pixel value G of the next pixel of interest P (the pixel Pix right next to the pixel of interest P that is currently selected) as the current pixel of interest in step Sc3 or step Sc9. This is for comparison with the pixel value G of the pixel P. Further, the CPU 10 updates each variable stored in the RAM 23 (step Sd5). That is, the CPU 10 first increments the variable srcp by “3”. As a result, the variable srcp indicates the address of the pixel data D of the target pixel P selected next in the original image IMG0.
  • the CPU 10 increments the variable pLEFT and the variable pRIGHT by “3”.
  • the variable pLEFT and the variable pRIGHT indicate the start addresses of the areas in which the pixel data D1 and the pixel data Dr of the pixel of interest P to be selected next in the left-eye image and the right-eye image are stored, respectively.
  • the CPU 10 increments the variable j indicating the number of columns of the target pixel P by “1”, thereby selecting the pixel Pix on the right side of the current target pixel P as the next target pixel P.
  • the CPU 10 shifts the processing to step Sb5 in FIG. 10 and repeats the same processing for the new target pixel P.
  • step Sb5 when the process is executed for all the pixels Pix belonging to a certain selected row, the result of determination in step Sb5 is “No”, and the variable i is incremented by “1” (step Sb6). Therefore, the selected row to be processed is changed to the next row.
  • step Sd2 When the above-described processing is executed for all the pixels Pix in all rows, the result of determination in step S b2 is “No”. In this case, the CPU 10 executes step Sd2 and step Sd2.
  • the left-eye image and right-eye image generated in step Sd3 are combined to generate a stereoscopic image (step Sd6), and this stereoscopic image is displayed on the display device 40 (step Sd7).
  • the user can perceive a stereoscopic effect corresponding to the depth value specified for each pixel Pix by visually recognizing the left-eye image of the stereoscopic image with the left eye and visually recognizing the right-eye image with the right eye. it can.
  • the target pixel according to the size of the pixel value G of the target pixel P and the pixel value G of the pixel Pix adjacent to the target pixel P in the row direction. Since the depth value Z of P is determined, it is possible to generate a stereoscopic image that allows the user to perceive a natural stereoscopic effect. That is, first, since the depth value Z is changed when the increase or decrease of the pixel value G of each pixel Pix continues for the number of times exceeding the threshold value N, the pixel value G is within a range not exceeding the threshold value N. Even if increases or decreases, the depth value Z of each pixel Pix in that region is a common value.
  • the depth value Z of each pixel Pix is increased or decreased by the step value PLX according to the change of the pixel value G.
  • the range power of the numerical value of the depth value Z of each pixel Pix is compared with the conventional configuration in which the depth value of the pixel Pix is set directly from the gradation value of each pixel Pi X. It is suppressed to a narrow range. Therefore, it is possible to effectively prevent a situation in which only a specific portion of the subject of the original image IMG0 is perceived as being extremely popped out (or retracted) or image distortion due to pixel crossing occurs. However, it is not necessary for the user to input various parameters for each original image IMG0 when acquiring such a natural stereoscopic image.
  • the initial value Z0 of the variable Zx indicating the depth value Z is a numerical value that characterizes the overall stereoscopic effect (depth feeling) of the stereoscopic image.
  • the subject of the stereoscopic image is perceived on the back side (the front side).
  • the depth value Z of the image IMG0 becomes smaller as a whole, the subject of the stereoscopic image is perceived on the near side (or the far side).
  • the user can arbitrarily select the initial value Z0, there is an advantage that a variety of stereoscopic images according to the user's preference can be generated.
  • the configuration of the stereoscopic image generating apparatus D according to the second embodiment of the present invention will be described.
  • the configuration in which the stereoscopic image is generated from the depth value Z of each pixel Pix by one stereoscopic processing is illustrated.
  • the three-dimensional color process is executed stepwise over a plurality of times.
  • the same elements as those in the first embodiment are denoted by the same reference numerals, and the description thereof is omitted as appropriate.
  • FIG. 14 is a diagram showing an outline of the operation of the stereoscopic image generating apparatus D according to the present embodiment.
  • the first implementation is performed up to the stage where the left-eye image IMG1 and the right-eye image IMG2 are generated from the single original image IMG0 by the stereoscopic image generation process (first stage).
  • a stereoscopic image generation process is further executed with each of the left-eye image IMG1 and the right-eye image IMG2 as a new original image. That is, as shown in FIG.
  • the CPU 10 executes the second-stage stereoscopic image generation process using the first image IMG1 generated as the left-eye image from the original image IMG0 as a new original image, thereby performing the left-eye processing.
  • the second-stage stereoscopic image generation process using the second image IMG2 generated from the original image IMG0 as the right-eye image as the new original image
  • the left eye image IMGL 2 and the right eye image IMGR2 are generated.
  • the final stereoscopic image is generated by combining the left-eye image IMGL1 generated from the first image IMG1 and the right-eye image IMGR2 generated from the second image IMG2.
  • the right-eye image IMGR1 generated from the first image IMG1 and the left-eye image IMGL2 generated from the second image IMG2 are discarded.
  • the right-eye image IMGR1 and the left-eye image IMGL2 are used to provide a stereoscopic image (for example, a stereoscopic image that enables stereoscopic viewing with 4 viewpoints). ).
  • the CPU 10 generates the first image IMG1 as the left-eye image and the second image IMG2 as the right-eye image by the stereoscopic image generation processing shown in FIGS. 10 to 13 in the same procedure as in the first embodiment.
  • a second-stage stereoscopic image generation process using the first image IMG1 as an original image is executed.
  • the CPU 10 substitutes the start address (A Dleft) of the area where the image data of the first image IMG1 is stored in the variable srcp in step Sal in FIG. 10, and then generates the second-stage stereoscopic image.
  • a left-eye image IMGL1 and a right-eye image IMGR1 are generated.
  • the CPU 10 substitutes the start address (ADright) of the area where the image data of the second image IMG2 is stored in the variable srcp in step Sal of FIG. To generate a left-eye image IMGL2 and a right-eye image IMG R2.
  • the CPU 10 generates a stereoscopic image by synthesizing the left-eye image IMG L1 generated from the first image IMG1 and the right-eye image IMGR2 generated from the second image IMG2 (step Sd6).
  • the stereoscopic image is displayed on the display device 40 (step Sd7).
  • the step value PLX which is the change width of the variable Zx
  • the position of each pixel Pix adopted for the left-eye image and the right-eye image in the original image IMG0 is significantly different, and pixel Pix defects due to pixel crossing may occur.
  • This deficiency can be solved by setting the step value PLX to a small value. In this case, however, the variation in the depth value Z of each pixel Pix is suppressed to a very narrow range, and thus the stereoscopic effect perceived by the user.
  • the stereoscopic image generation process is executed twice, which is sufficient. There is an advantage that a stereoscopic image having a stereoscopic effect can be generated.
  • the pixel value G is calculated by binarizing and adding the unit data U of each pixel Pix.
  • the method of calculating the pixel value G The elements that form the basis of the calculation are not limited to this. For example, some or all arbitrarily selected from various factors such as the contents of each sub-pixel indicated by the unit data U (RGB elements), the luminance of each pixel, the saturation of each pixel, and the brightness of each pixel The pixel value G may be calculated from these elements.
  • the “pixel value” in the present invention is a numerical value corresponding to the display content of each pixel.
  • the configuration for calculating the force pixel value G that illustrates the configuration for calculating the unit data U force pixel value G of each pixel Pix is not necessarily required.
  • the pixel value G is stored in advance for each pixel Pix of the original image IMG0, the calculation of the pixel value G in the stereoscopic image generation process becomes unnecessary.
  • a color image having a plurality of color powers has been described as an example.
  • the gradation value of each pixel Pk is directly used as the pixel value. May be adopted as G.
  • the presence or absence of the process for calculating the pixel value G is not questioned, and the pixel value G is
  • the left-eye image and the right-eye image are used in the stereoscopic image processing.
  • the pixel data of the original image was used in creating the image, but the pixel gradation value is directly used as the pixel value G as in the case of displaying a monochrome image, the pixel value G of each pixel itself is used as the left eye. It will be used when creating images for the eye and for the right eye.
  • variable Zx is increased or decreased when the variable which changes and when the number of continuous increases or the number of continuous decreases exceeds a threshold value N.
  • the variable Zx may be increased or decreased only in one of the cases.
  • the variable Zx is increased or decreased only when the number of consecutive increases or decreases exceeds the threshold N regardless of the change of the variable which.
  • the condition for increasing or decreasing the variable Zx in the present invention is not limited to this.
  • a configuration in which the depth value Z of each pixel is determined according to the pixel value G of each pixel adjacent to each other is sufficient.
  • the configuration in which the original image data Dg is stored in advance in the storage device 30 is exemplified.
  • the method for acquiring the original image and the acquisition destination thereof are as follows. Is optional.
  • the configuration may be such that the original image data Dg is acquired from a recording medium such as a video tape or DVD (Digital Versatile Disk) and used for the stereoscopic image generation processing, and other communication terminals connected via a network.
  • the original image data Dg may be received from and used for the stereoscopic image generation process.
  • the original image is not limited to a still image, and may be a moving image in which a plurality of images are arranged in time series. The format of this moving image is arbitrary. 1S For example, the data compressed by moving picture compression technology such as MPEG (Moving Picture Experts Group) is used. When moving images are to be processed, the processing shown in FIGS. 10 to 13 is executed for each image constituting the moving images.
  • MPEG Motion Picture Experts Group
  • each of the sub-pixels Ps constituting one pixel Pix is “blue (B)” from the negative side in the row direction toward the positive side.
  • the configuration in which “green (G)” ⁇ “red (R)” is arranged in the order is exemplified, but it is needless to say that the arrangement of the sub-pixels Ps is not limited to this.
  • the configuration of each embodiment And operations apply as well.
  • the depth value of the target pixel P according to the size of the pixel value G of the target pixel P and the pixel value G of the pixel Pix adjacent to the target pixel P in the row direction.
  • Force illustrating the configuration to calculate Z The positional relationship between the pixel Pix and the target pixel P that are referred to for calculating the depth value Z is not limited to this.
  • the depth value Z of the target pixel Pix is calculated according to the size of the pixel value G of the pixel Pix adjacent to the target pixel P in the column direction (Y direction) and the pixel value G of the target pixel Pix. Also good.
  • the processing contents in this configuration are the same as in the first embodiment.
  • each pixel Pix is assigned to each row.
  • the configuration in which the pixel value G is calculated is shown as an example.
  • the row selected next to the row to which the target pixel P belongs (or the row selected immediately before it) is displayed.
  • the stereoscopic image generation apparatus is realized by the CPU executing the image processing program as shown in each embodiment, and also by hardware such as a DSP dedicated to image processing. Realized.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
  • Image Processing (AREA)
  • Image Generation (AREA)
  • Ultra Sonic Daignosis Equipment (AREA)
  • Apparatus For Radiation Diagnosis (AREA)

Abstract

 本発明は、画質の劣化を抑制しつつ自然な立体感の立体視画像を生成することを目的とする。  本発明の立体視画像生成装置において、RAM23には原画像IMG0を構成する複数の画素Pixの各々について画素値Gが記憶される。CPU10は、各画素Pixの画素値Gとその画素Pixに対して行方向に隣接する画素Pixの画素値Gとの大小に基づいて各画素Pixの奥行き値Zを決定し、この奥行き値Zに基づいて立体視画像を生成する。  

Description

明 細 書
立体視画像生成装置
技術分野
[0001] 本発明は、観察者に立体として知覚される画像を生成するための技術に関する。
背景技術
[0002] 相互に視差を有する 2つの画像のうち一方を左目に視認させるとともに他方を右目 に視認させると、観察者にその画像を立体として知覚させることができる。このような 視差を有する画像 (以下「立体視画像」 t ヽぅ)を素材となる平面画像 (以下「原画像」 、う)力も生成するための技術が従来力も提案されて 、る(例えば特許文献 1参照) 。この技術においては、原画像の各画素の彩度が被写体の奥行き値として選定され 、この奥行き値に応じた距離だけ各被写体の画素を左右に移動させた一対の画像を 合成することによって立体視画像が生成される。
特許文献 1 :特開 2002— 123842号公報(段落 0033および図 7)
発明の開示
発明が解決しょうとする課題
[0003] し力しながら、この方法においては、各画素の彩度に応じてその画素の移動量が決 定されるため、利用者によって自然な立体感が知覚される立体視画像を必ずしも生 成することができないという問題があった。例えば、光の照射によって局所的に高階 調 、階調)となった被写体や影によって局所的に低階調 (濃 、階調)となった被 写体が原画像に含まれて 、る場合、ひとつの被写体を構成する総ての画素の奥行き 値は本来ならば略同一となるべきであるにも関わらず、光や影が存在する部分とそれ 以外の部分とで奥行き値が相違することになる。このため、観察者は、被写体の一部 だけが局所的に飛び出す (あるいは引っ込む)といった不自然な立体感を知覚するこ とになる。さらに、各画素の奥行き値によっては、原画像にて隣接する各画素が互い に異なる方向に移動させられる場合がある。これは画素クロス (ピクセルクロス)と称さ れる現象であり、これにより画像の歪みといった画質の劣化が引き起こされる。特に、 原画像のうち複数の被写体が重なり合う箇所では画素クロスが発生し易いため、画 質の劣化は 、つそう深刻な問題となる。
[0004] 本発明は、このような事情に鑑みてなされたものであり、その目的は、画質の劣化を 抑制しつつ自然な立体感の立体視画像を生成することにある。
課題を解決するための手段
[0005] この課題を解決するために、本発明に係る立体視画像生成装置は、右目用画像と 左目用画像とが合成された立体視画像を原画像から生成する装置であって、原画像 を構成する複数の画素の各々について画素値を記憶する画素値記憶手段と、原画 像を構成する各画素の画素値とその画素に隣接する画素の画素値との差分を算出 し、この差分に基づいて各画素の奥行き値を決定する決定手段と、前記決定手段が 決定した各画素の奥行き値に基づいて立体視画像を生成する立体ィヒ手段とを具備 する。例えば、各画素の奥行き値は、当該画素の画素値と、この画素に対して行方 向(X方向)または列方向(Y方向)に隣接する画素の画素値との大小に応じて決定さ れる。
すなわち、特許文献 1に記載された従来の構成においては、ひとつの画素の画素 値から直接的にその画素の奥行き値が決定されるのに対し、本発明の立体視画像 生成装置においては、互いに隣接する画素の画素値の関係に応じて各画素の奥行 き値が決定される。したがって、本発明によれば、従来の構成と比較して、自然な立 体感をもった立体視画像を生成することができる。
[0006] 本発明の望ましい態様において、原画像を構成する各画素は各々の表示色が相 違する複数のサブ画素を含み、各サブ画素の階調値を画素ごとに記憶するサブ画 素記憶手段と、前記サブ画素記憶手段に記憶された各サブ画素の階調値に基づ 、 て画素ごとの画素値を算定する算定手段とを具備し、前記画素値記憶手段は、前記 算定手段によって算定された画素値を画素ごとに記憶する。この態様によれば、各 サブ画素の階調値に基づいて画素ごとの画素値が算定されるから、複数色力 なる カラー画像が原画像とされる場合であっても自然な立体視画像を生成することができ る。
さらに望ましい態様において、前記算定手段は、ひとつの画素に属する各サブ画 素の階調値を 2値ィ匕し、 2値化された各階調値を表示色ごとに重み付けしたうえでカロ 算し、この加算値に基づいて当該画素の画素値を算定する。この態様によれば、各 サブ画素の階調値を表示色ごとに重み付けした数値に基づいて画素値が算定され るから、各色に対する感度が相違する人間の視覚特性に適合した立体視画像を生 成することができる。
より具体的には、人間の視覚特性は、緑色に対する感度が最大で青色に対する感 度が最小となる特性を示す。そこで、各画素が赤色のサブ画素と緑色のサブ画素と 青色のサブ画素とを含む場合、前記算定手段は、各画素について、緑色のサブ画 素について 2値ィヒされた階調値と第 1の重み値との乗算値と、赤色のサブ画素につ いて 2値化された階調値と前記第 1の重み値よりも小さい第 2の重み値との乗算値と、 青色のサブ画素について 2値化された階調値と前記第 2の重み値よりも小さい第 3の 重み値との乗算値とを加算し、この加算値に基づいて当該画素の画素値を算定する 本発明の他の態様にぉ 、て、奥行き値を記憶する奥行き値記憶手段を具備し、前 記決定手段は、原画像を構成する複数の画素の各々をその配列に沿って順番に選 択する選択手段と、前記選択手段が選択した画素の画素値と当該画素に隣接する 画素の画素値との差分を順次算出する差分算出手段と、差分算出手段にて算出さ れた差分に基づ 、て、前記奥行き値記憶手段に記憶された奥行き値を変更する変 更手段とを有し、前記立体化手段は、前記選択手段が画素を選択したときに前記記 憶手段に記憶されている奥行き値に基づいて当該画素に対する立体ィヒ処理を実行 する。
望ましい態様において、前記変更手段は、前記差分が正力 負に変化した場合は 、当該変化以降に選択された画素の奥行き値力 所定値を減ずる一方、前記差分 が負から正に変化した場合は、当該変化が発生した以降に選択された画素の奥行き 値に前記所定値を加算する。
他の望ましい態様において、閾値を記憶する閾値記憶手段を具備し、前記決定手 段は、前記差分算出手段にて算出された差分の符号が連続して一致する回数を計 数する計数手段とを有し、前記変更手段は、前記計数手段による計数値と前記閾値 記憶手段に記憶された閾値とを比較し、前記計数値が閾値を越えた場合に前記奥 行き値を変更する。これらの態様によれば、計数手段による計数値と閾値との比較の 結果に基づいて奥行き値が変更されるから、例えば、計数手段による計数値が閾値 を越えた場合に奥行き値を変更することにより、立体感の自然さを維持しながら奥行 き値の変動の範囲を抑制することができる。
また、入力装置から入力された初期値を取得する取得手段を具備し、前記変更手 段は、前記取得手段が取得した初期値を、前記所定の方向に配列する複数の画素 のうち最初の画素が前記選択手段によって選択されるときの奥行き値とする構成によ れば、各画素の奥行き値を原画像の全体として調整することができるから、入力装置 からの入力に応じた多様な立体視画像が生成される。
本発明の他の態様にぉ 、て、原画像を構成する各画素の階調値を記憶する階調 値記憶手段を具備し、立体化手段は、左目用画像の各行に属する各画素の階調値 力 原画像のうち、その画素から行方向の一方に向力つて当該画素の奥行き値に応 じた画素数だけ離れた位置にある画素の階調値となるように左目用画像を生成し、 右目用画像の各行に属する各画素の階調値力 原画像のうち、その画素から行方 向の他方に向力つて当該画素の奥行き値に応じた画素数だけ離れた位置にある画 素の階調値となるように右目用画像を生成する生成手段と、生成手段が生成した左 目用画像および右目用画像を合成することにより立体視
画像を生成する合成手段とを具備する。原画像の画素を奥行き値に応じて移動させ る構成においては画素の欠落が生じ易いという問題がある力 本態様によれば、左 目用画像および右目用画像を構成する各画素として、原画像のなカゝから奥行き値に 応じた位置にある画素が採択されるから、このような欠落の発生を防止することができ る。
もっとも、左目用画像および右目用画像を生成するために原画像の各画素の階調 値を使用する必要は必ずしもなぐ例えば、原画像の各画素の画素値を使用すること によって左目用画像および右目用画像を生成してもよい。すなわち、本発明の他の 態様において、立体ィ匕手段は、左目用画像の各行に属する各画素の画素値が、原 画像のうち、その画素力 行方向の一方に向かって当該画素の奥行き値に応じた画 素数だけ離れた位置にある画素の画素値となるように左目用画像を生成し、右目用 画像の各行に属する各画素の画素値力 原画像のうち、その画素から行方向の他方 に向力つて当該画素の奥行き値に応じた画素数だけ離れた位置にある画素の画素 値となるように右目用画像を生成する生成手段と、生成手段が生成した左目用画像 および右目用画像を合成することにより立体視画像を生成する合成手段とを有する。
[0009] これらの態様において、生成手段は、左目用画像および右目用画像の生成処理を 複数回にわたって実行する一方、初回以外の各回の生成処理においては、その直 前の生成処理にて生成した左目用画像および右目用画像の各々を原画像として左 目用画像および右目用画像を生成し、合成手段は、複数回の生成処理によって生 成された左目用画像および右目用画像を合成することにより立体視画像を生成する 。この態様によれば、左目用画像と右目用画像との生成が段階的に実行されるから、 1回の立体化処理によって立体視画像を生成する場合と比較して、画素の欠落が少 な ヽ自然な立体視画像を生成することができる。
[0010] 立体化手段の具体的な内容に着目した本発明の他の態様は、原画像を構成する 各画素の階調値を記憶する階調値記憶手段と、原画像を構成する複数の画素の各 々について奥行き値を算定する算定手段と、前記算定手段が算定した各画素の奥 行き値に基づ!/、て立体視画像を生成する立体化手段を具備し、前記立体化手段は 、左目用画像の各行に属する各画素の階調値が、原画像のうち、その画素から行方 向の一方に向力つて当該画素の奥行き値に応じた画素数だけ離れた位置にある画 素の階調値となるように左目用画像を生成し、右目用画像の各行に属する各画素の 階調値が、原画像のうち、その画素から行方向の他方に向力つて当該画素の奥行き 値に応じた画素数だけ離れた位置にある画素の階調値となるように右目用画像を生 成する生成手段と、生成手段が生成した左目用画像および右目用画像を合成する ことにより立体視画像を生成する合成手段とを具備する。この態様において、奥行き 値を算定する方法は任意である。すなわち、互いに隣接する画素の画素値の大小に 応じて各画素の奥行き値を決定する方法のほか、公知である種々の方法が採用され る。
[0011] 本発明に係る立体視画像生成装置は、画像処理に専用される DSP (Digital Signal Processor)などのハードウェアによって実現されるほ力、パーソナルコンピュータなど のコンピュータとプログラムとの協働によっても実現される。このプログラムは、原画像 を構成する複数の画素の各々につ 、て画素値を記憶する画素値記憶手段を備えた コンピュータに、原画像を構成する各画素の画素値とその画素に対して行方向に隣 接する画素の画素値との大小に基づいて当該画素の奥行き値を決定する決定処理 と、決定処理にて決定した各画素の奥行き値に基づ 、て立体視画像を生成する立 体化処理とを実行させる。このプログラムによっても、本発明の立体視画像生成装置 について上述したのと同様の作用および効果が得られる。なお、本発明に係るプログ ラムは、 CD— ROMなど可搬型の記録媒体に格納された形態にて利用者に提供さ れてコンピュータにインストールされるほか、ネットワークを介した配信の形態にてサ ーバ装置力 提供されてコンピュータにインストールされる。
[0012] また、本発明は、画像を表示する表示装置や、記録媒体に記録された画像を再生す る再生装置にも適用される。すなわち、この表示装置は、原画像を構成する複数の 画素の各々について画素値を記憶する画素値記憶手段と、原画像を構成する各画 素の画素値とその画素に隣接する画素の画素値との大小に基づいて各画素の奥行 き値を決定する決定手段と、前記決定手段が決定した各画素の奥行き値に基づ ヽ て立体視画像を生成する立体化手段と、立体化手段によって生成された立体視画 像を生成する表示手段とを具備する。一方、再生装置は、光ディスクなど各種の記録 媒体から原画像を読み出す読出手段と、読出手段によって読み出された原画像を構 成する各画素の画素値とその画素に隣接する画素の画素値との大小に基づいて各 画素の奥行き値を決定する決定手段と、前記決定手段が決定した各画素の奥行き 値に基づいて立体視画像を生成して出力する立体ィ匕手段とを具備する。
図面の簡単な説明
[0013] [図 1]本発明の第 1実施形態に係る立体視画像生成装置の構成を示すブロック図で ある。
[図 2]原画像の構成を示す図である。
[図 3]原画像データのデータ構造を示す図である。
[図 4]原画像データが RAMに読み込まれた様子を示す図である。
[図 5]画素値算定処理の内容を説明するための図である。 [図 6]各表示色のサブ画素値と画素値との対応を示す表である。
[図 7]各表示色のサブ画素値力もなるビット列と画素値との対応を示す表である。
[図 8]奥行き値決定処理の内容を説明するための図である。
[図 9]立体ィ匕処理の内容を説明するための図である。
[図 10]立体視画像生成処理の具体的な内容を示すフローチャートである。
[図 11]立体視画像生成処理の具体的な内容を示すフローチャートである。
[図 12]立体視画像生成処理の具体的な内容を示すフローチャートである。
[図 13]立体視画像生成処理の具体的な内容を示すフローチャートである。
[図 14]本発明の第 2実施形態に係る立体視画像生成装置の動作を説明するための 図である。
符号の説明
[0014] D……立体視画像生成装置、 10…… CPU, 21…… RAM, 23…… RAM、 30…… 記憶装置、 40……表示装置、 45……入力装置、 IMG0……原画像、 Pix……画素、 Ps……サブ画素、 Dg……原画像データ、 D……画素データ、 U (Ur, Ug, Ub)…… 単位データ、 G……画素値、 Gsub……サブ画素値。
発明を実施するための最良の形態
[0015] <A:第 1実施形態 >
< A— 1:立体視画像生成装置の構成 >
図 1は、本発明の第 1実施形態に係る立体視画像生成装置 Dの構成を示すブロッ ク図である。同図に示される CPU10は、この立体視画像生成装置 Dの各部を中枢 的に制御するための手段であり、プログラムに従って各種の演算や各部の制御を実 行することによって種々の機能を実現する。 ROM21は、 CPU10によって実行され るプログラムを記憶するためのメモリであり、 RAM23は CPU10によって作業領域と して使用されるメモリである。
[0016] 記憶装置 30は、 CPU10によって実行されるプログラムやこのプログラムの実行に 際して使用される各種のデータを記憶する手段である。例えば、磁気ディスクを内蔵 したハードディスク装置や、 CD— ROMなどの記録媒体を収容するディスク装置など が記憶装置 30として採用される。この記憶装置 30には、立体視画像生成装置 Dの 全体動作を管理するための OS (Operating System)のほ力、画像を処理するための アプリケーションプログラム(以下「画像処理プログラム」 t 、う)が記憶されて 、る。こ の画像処理プログラムは、素材となる原画像の内容を示す原画像データから立体視 画像を表す立体視画像データを生成するための処理 (以下「立体視画像生成処理」 という)を CPU10に実行させるためのプログラムである。立体視画像は、利用者の左 目によって視認されるべき左目用画像と利用者の右目によって視認されるべき右目 用画像とが合成された画像である。左目用画像と右目用画像とは視差を有する。
[0017] CPU10が画像処理プログラムを実行することによって生成された立体視画像は表 示装置 40に表示される。この表示装置 40は、 CPU10による制御のもとに各種の画 像を表示する手段であり、例えば CRT (Cathode Ray Tube)や液晶表示パネルなど の表示機器を備えている。本実施形態における表示装置 40は、立体視画像のうち 左目用画像を利用者の左目のみに視認させる一方、右目用画像を利用者の右目の みに視認させるように立体視画像を表示する。このような表示を実現するための方法 としては、例えば利用者に偏光メガネを装着させる方法や、レンティキユラレンズまた はパララックスノリアなどの機構を利用して利用者の視野の一部を遮る方法など従来 力 提案されている各種の方法が採用される。もっとも、各々が異なる周波数帯域の 光 (例えば青色光および赤色光)を選択的に透過させる一対のレンズを備えた余色( 補色)メガネなどを採用して立体視を実現する場合には、立体視のために専用される 機構を表示装置 40に設ける必要はない。利用者は、左目用画像を左目によって視 認するとともに右目用画像を右目によって視認することにより、原画像に含まれる各 被写体について視差に応じた奥行きを知覚することができる。
[0018] 次に、図 2は、原画像の構成を示す図である。同図に示されるように、原画像 IMG0 は、行方向(X方向)および列方向(Y方向)にわたつて H行 XW列のマトリクス状に配 列された複数の画素 Pix力もなる(Hおよび Wはともに自然数)。ひとつの画素 Pixは、 各々の表示色が相違する 3個のサブ画素 Ps (Ps-r、 Ps-gおよび Ps-b)からなる。本実 施形態における各画素 Pixは、青色(B)のサブ画素 Ps-bと緑色 (G)のサブ画素 Ps-g と赤色 (R)のサブ画素 Ps-rとを行方向(X方向)の負側から正側に向力つてこの順番 に配列した構成となって 、る。 [0019] このような原画像 IMGOを示す原画像データは記憶装置 30に記憶されている。図 3 に示されるように、原画像データ Dgは、各々がひとつの画素 Pixの階調値を指定する 複数 (H XW)の画素データ Dの集合である。なお、同図の各画素データ Dに付され た文字 [i, j]は、その画素データ Dが第 i(iは 0≤i≤ (H—1)を満たす整数)行に属す る第 j (jは 0≤j≤ (W- 1)を満たす整数)列の画素 Pixの画素データ Dであることを示 している。図 3に示されるように、ひとつの画素データ Dは、各サブ画素 Psの表示色 に対応する 3つの単位データ U (Ur、 Ugおよび Ub)を含んでいる。すなわち、単位デ ータ Ubは青色のサブ画素 Ps-bの階調値を、単位データ Ugは緑色のサブ画素 Ps-g の階調値を、単位データ Urは赤色のサブ画素 Ps-rの階調値をそれぞれ示すデータ である。ひとつの単位データ Uのデータ長は 8ビットである(したがって画素データ D は 24ビット)。したがって、各単位データ Uは「0」から「255」までの合計 256階調の何 れかを示す数値となる。もっとも、各単位データ Uのデータ長やこの単位データ Uが 示す階調数は任意に変更される。例えば、青色の単位データ Ubおよび赤色の単位 データ Urの各々が 5ビットであり、緑色の単位データ Ugが 6ビットであるような画素デ ータ D ( 16ビット)を採用してもょ ヽ。
[0020] 記憶装置 30に記憶された原画像データ Dgは画像処理プログラムの実行に際して RAM23に読み込まれる。図 4は、 RAM23に原画像データ Dgが格納された様子 (メ モリマップ)を示す図である。同図に示されるように、原画像データ Dgは RAM23のう ちアドレス ADOを始点として連続した領域に格納される。さらに詳述すると、原画像デ ータ Dgを構成する各画素データ Dは、原画像 IMGOにおける画素 Pixの配列の順番 に RAM23に記憶される。また、ひとつの画素データ Dに含まれる各単位データ Uは 互いにアドレスが相違する領域に各サブ画素 Psの配列の順番に記憶される。例えば 、第 0行に属する第 0列目の画素 Pixのうち青色のサブ画素 Ps-bに対応する単位デ ータ Ubはアドレス「ADO」に格納され、同画素 Pixのうち緑色のサブ画素 Ps-gに対応 する単位データ Ugはアドレス「AD0+ 1」に格納され、同画素 Pixのうち赤色のサブ画 素 Ps-rに対応する単位データ Urはアドレス「ADO + 2」に格納されると!/ヽつた具合で ある。行数 iと列数 jとを用いて一般的に表記すると、第 i行に属する第 j列目の画素 Pix のうち青色のサブ画素 Ps-bの単位データ Ubはアドレス「ADO+ (i * W+j) * 3」に格 納され、同画素 Pixのうち緑色のサブ画素 Ps-gの単位データ Ugはアドレス「AD0+ (i *W+j) * 3 + 1」に格納され、同画素 Pixのうち赤色のサブ画素 Ps-rの単位データ Urはアドレス「AD0+ (i *W+j) * 3 + 2」に格糸内されること〖こなる。
[0021] 図 1に示される入力装置 45は、文字や記号を入力するための操作子を備えた機器 であり、利用者による操作に応じた信号を CPU10に出力する。利用者は、この入力 装置 45を適宜に操作することにより、立体視画像生成処理に際して適用される各種 の変数を変更することができる。
[0022] < A— 2 :立体視画像生成処理の概要 >
次に、 CPU10が実行する立体視画像生成処理の概要を説明する。この立体視画 像生成処理は、画素 Pixごとに画素値 Gを算定するための処理 (以下「画素値算定処 理」という)と、各画素 Pixの画素値 Gに基づいて画素 Pixごとに奥行き値 Zを決定する 処理 (以下「奥行き値決定処理」 、う)と、この奥行き値に応じた視差を有する立体 視画像を生成する処理 (以下「立体化処理」 t ヽぅ)とに大別される。これらの処理は 原画像 IMG0を構成する画素 Pixごとに実行される。さらに詳述すると、 CPU10は、図 2に破線で示されるように、原画像 IMG0を構成する各行を第 0行力ゝら第 (H— 1)行に 向かって順番に選択するとともに、この選択した行に属する各列の画素 Pixを第 0列 目力も第 (W—1)列目に向力つて順番に選択する。そして、 CPU10は、この選択し た画素 Pix (以下では特に「注目画素 P」という)を対象として各処理を実行するのであ る。以下、これらの処理ごとに内容を説明する。
[0023] (1)画素値算定処理 (図 5)
この画素値算定処理は、各画素 Pixの画素データ Dに含まれる単位データ U力 画 素 Pixごとに画素値 Gを算定するための処理である。この処理を開始すると、 CPU 10 は、注目画素 Pに対応した各表示色の単位データ Uが示す階調値を 2値化した数値 (以下「サブ画素値」という) Gsubを算定する。各サブ画素値 Gsubには、表示色ごとに 別個に選定された重み値によって重み付けが施されている。さらに詳述すると、図 5 に示されるように、 CPU10は、注目画素 Pのうち緑色のサブ画素 Ps-gの単位データ Ugが示す階調値を RAM23に記憶された閾値 THと比較し、この階調値が閾値 TH よりも大きい場合には「4」を、閾値 THよりも小さい場合には「0」を、それぞれ緑色の サブ画素値 Gsub-gとして選定する。また、 CPU10は、赤色の単位データ Urの階調 値が閾値 THよりも大きい場合には「2」を、閾値 THよりも小さい場合には「0」を、それ ぞれ赤色のサブ画素値 Gsub-rとして選定する。同様に、青色の単位データ Ubの階 調値が閾値 THよりも大きい場合には「1」が、閾値 THよりも小さい場合には「0」が、 それぞれ青色のサブ画素値 Gsub-bとして選定される(図 6参照)。次いで、 CPU 10 は、図 5に示されるように、各表示色のサブ画素値 Gsub (Gsub-g、 Gsub-rおよび Gsu b-b)をカ卩算して数値 factorを算定し、この加算値 factorにステップ値 STEPを乗算する ことによって注目画素 Pの画素値 Gを算定する。このステップ値 STEPは利用者が入 力装置 45を操作することによって任意に更新される。ステップ値 STEPを「8」と仮定し た場合、図 6に示されるように、以上の手順によって算定された画素値 Gは、「0」、「8 」、「16」、「24」、「32」、「40」、「48」および「56」のうち何れかの数値となる。また、閾 値 THについても入力装置 45への操作の内容に応じて適宜に変更される。
[0024] この画素値算定処理を別の観点力 把握すれば以下の通りである。すなわち、 CP U10は、各表示色の単位データ Uの階調値と閾値 THとの比較の結果に応じて「0」 および「1」の何れかとなるサブ画素値 Gsubを表示色ごとに算定する。例えば、青色 の単位データ Ubの階調値が閾値 THよりも大きければ「1」を、閾値 THよりも小さけ れば「0」を、青色のサブ画素値 Gsub-bとして算定すると 、つた具合である(図 7参照 ) oそして、 CPU10は、緑色のサブ画素値 Gsub-gと赤色のサブ画素値 Gsub-rと青 色のサブ画素値 Gsub-bとを最上位力も最下位に向力つてこの順番に配列したビット 列(数値 factorに相当する)を生成し、このビット列に対してステップ値 STEPを乗算す る。ここで生成されるビット列の数値は、最上位に位置する緑色のサブ画素値 Gsub- gの重み値を「4 ( = 22)」とし、その下位に位置する赤色のサブ画素値 Gsub-rの重み 値を ^ (z S1) とし、最下位に位置する青色のサブ画素値 Gsub-bの重み値を「1 (= 2 )」とした数値にほかならない。したがって、このビット列とステップ値 STEPとの乗算 値である画素値 Gが採り得る数値は図 5に示した方法で得られる画素値 Gと全く同じ になる。
[0025] ところで、本実施形態においては、緑色の重み値を最大とするとともに青色の重み 値を最小とした力 これは以下の理由による。人間の網膜に存在する各色の錐体の 平均的な割合は、緑錐体が約 59%と最も多ぐ次いで多いのが約 30%を占める赤 錐体であり、青錐体は約 11%と最も少ない。このため、人間の視覚は、緑色に対する 知覚が赤色や青色に対する知覚よりも敏感であるという特性を有する。そこで、本実 施形態においては、これら各色の錐体の割合に合致するように、緑色の重み値を最 大とするとともに青色の重み値を最小とし、赤色の重み値をその中間値とした。このよ うな重み値に基づ 、て画素値 G
を算定することにより、人間の視覚特性に合致した自然な立体感の立体視画像を生 成することができる。
[0026] (2)奥行き値決定処理(図 8)
この奥行き値決定処理は、観察者が知覚する奥行き感の大小を定める奥行き値 Z を画素値 Gに基づいて算定する処理である。上述したように、 CPU10は、処理対象 として選択した行 (以下「選択行」 、う)に属する各画素 Pixを第 1列目力 第 (W— 1 )列目に向力つて順番に注目画素 Pとして選択する。一方、 RAM23には変数 Zxが 記憶されている。 CPU10は、処理の対象として選択した注目画素 Pの奥行き値 Zとし て、 RAM23に格納された変数 Zxを割り当てる。この変数 Zxは、選択行の各画素 Pix を順番に選択していったときの画素値 Gの変化に応じて初期値 Z0から順次に更新さ れる。さらに詳述すると以下の通りである。
[0027] CPU10は、選択行に属する第 j列目の注目画素 Pの画素値 Gが同行の第 (j 1) 列目の画素 Pkの画素値 Gに対して増加している力減少しているかを判定する。そし て、 CPU10は、画素値 Gの増加が検出された場合には、その増加(以下「画素値 G の立ち上がり」という)を示す「RAISE_UP」を RAM23に格納された変数 whichにセット し、画素値 Gの減少が検出された場合には、その減少(以下「画素値 Gの立ち下がり 」という)を示す「FALL_DOWN」を変数 whichにセットする。一方、画素値 Gが変化して いない場合、 CPU10は、変数 whichをその直前の内容に維持する(変数 whichを変 更しない)。すなわち、変数 whichは、奥行き値決定処理に際して画素値 Gが増加し て!、るのか減少して 、るのかを示す変数である。
[0028] ここで、図 8には、選択行に属する第 0列目から第 18列目までの各画素 Pixの画素 値 Gが示されている。同図に示されるように、各選択行に対する奥行き値決定処理が 開始されるとき (すなわち第 0列目の画素 Pixが注目画素 Pとして選択されたとき)の変 数 whichの初期値は「RAISE_UP」とされる。図 8においては、各注目画素 Pについて検 出された画素値 Gの立ち上がりが上向きの矢印「†」によって示されるとともに画素値 Gの立ち下がりが下向きの矢印「丄」によって示されている。また、画素値 Gに変更が ないことは符号「―」によって示されている。同図の例では、第 7列目の画素 Pixの画 素値 G「32」がその直前の画素 Pix (第 6列目の画素 Pix)の画素値 G「48」に対して減 少している(立ち下がっている)。したがって、第 7列目の画素 Pixが注目画素 Pとして 選択された段階で変数 whichはそれまでの「RAISE_UP」から「FALL_DOWN」に変更さ れる。これに続く第 8列目および第 9列目の各画素 Pixの画素値 Gは、その前列の画 素 Pixの画素値 Gから立ち下がって!/、る力ら、これらの各画素 Pixが注目画素 Pとして 選択された段階で変数 whichは「FALL_DOWN」に維持される。一方、第 10列目の画 素 Pixの画素値 G「 16」は第 9列目の画素 Pixの画素値 G「8」よりも増加して!/、る力ら、 第 10列目の画素 Pixが注目画素 Pとして選択された段階で、変数 whichは「FALL_DO WN」から「RAISE_UP」に更新される。他の画素 Pixについても同様である。
そして、 CPU10は、変数 whichが変化した場合(すなわち「RAISE_UP」から「FALL_ DOWN」に変化した場合、および「FALL_DOWN」から「RAISE_UP」に変化した場合) に、変数 Zxをステップ値 PLXだけ増減させる。より具体的には、図 8に示されるように 、変数 whichが「RAISE_UP」から「FALL_DOWN」に変更された場合には、変数 Zxをス テツプ値 PLXだけ減少させる一方、変数 whichが「FALL_DOWN」から「RAISE_UP」に 変更された場合には、変数 Zxをステップ値 PLXだけ増加させる。例えば、図 8の例で は、第 7列目の画素 Pixが選択された段階で変数 whichが「RAISE_UP」から「FALL_D 0漏」に変化しているから、 CPU10は、この段階で変数 Zxをステップ値 PLXだけ減 少させる。また、第 10列目の画素 Pixが選択された段階で変数 whichは「FALL_DOW N」から「RAISE_UP」に変化しているから、 CPU10は、この段階で変数 Zxをステップ 値 PLXだけ増加させる。このように、ステップ値 PLXは変数 Zx (したがって奥行き値 Z) の変化幅を指定する変数である。このステップ値 PLXの数値は、入力装置 45に対す る操作の内容に応じて CPU10が適宜に選定
する。 [0030] さらに、 CPUIOは、画素値 Gの立ち上がりを連続して検出した回数 (以下「連続増 加回数」と 、う)が閾値 N (ここでは N = 4とする)を越えた場合に、 RAM23に格納さ れた変数 Zxをステップ値 PLXだけ増カロさせる。例えば、図 8において、第 1列目から 第 4列目までの各画素 Pixの画素値 Gは、「 16」→「24」→「32」→「40」と!、う具合に 合計 4回にわたって連続して立ち上がつている。さらに、第 5列目の画素 Pixの画素値 Gは「48」であり、その左隣 (第 4列目)の画素 Pixの画素値 G「40」から立ち上がって V、るから、この第 5列目の画素 Pixが注目画素 Pとして選択された段階で連続増加回 数は「5回」となり、閾値 Nに設定された「4回」を越える。したがって、 CPU10は、第 5 列目の画素 Pixが注目画素 Pとして選択された段階で、変数 Zxを、その直前の数値 ( = Z0)よりもステップ値 PLXだけ増加させた数値( = Z0 + PLX)に変更する。この変更 後の変数 Zxは第 5列目の画素 Pixの奥行き値 Zとして指定される。一方、第 10列目か ら第 12列目の各画素 Pixについては画素値 Gの立ち上がりが連続して検出されてい るものの、その連続増加回数は「3回」であり、閾値 Nに設定された「4回」を下回るか ら、 CPU10は変数 Zxを変更しない。
[0031] 同様に、 CPU10は、画素値 Gの立ち下がりを連続して検出した回数 (以下「連続減 少回数」という)が閾値 Nを越えた場合に、 RAM23に格納された変数 Zxをステップ 値 PLXだけ減少させる。例えば、図 8において、第 13列目の画素 Pixから第 17列目ま での各画素 Pixの画素値 Gは、「32」→「24」→「 16」→「8」→「0」 t 、う具合に合計 5 回にわたって連続して立ち下がっているから、 CPU10は、第 17列目の画素 Pixが注 目画素 Pとして選択された段階 (すなわち連続減少回数が「5回」に到達した段階)で 、変数 Zxを、その直前の数値(=Z0)からステップ値 PLXを減算した数値(=Z0— PL X)に変更する。この変更後の変数 Zxが第 17列目の画素 Pixの奥行き値 Zとして指定 される。一方、第 7列目力 第 9列目の各画素 Pixについては画素値 Gの立ち下がり が連続して検出されて 、るものの連続減少回数は「3回」であるから、これらの各画素 Pixが選択された段階で変数 Zxは変更されない。このように、本実施形態においては 、各画素 Pixの奥行き値 Zとして割り当てられる変数 Zxを、各画素 Pixの画素値 Gの変 化に応じて (特に変化が連続する回数に応じて)更新するようになって!/、る。この奥行 き値決定処理を全行について繰り返すことにより、各画素 Pixについて奥行き値 が 決定される。なお、閾値 Nの数値は、入力装置 45に対する操作の内容に応じて CP UIOが適宜に更新する。また、本実施形態においては、連続増加回数の閾値と連続 減少回数の閾値とが共通の数値 Nとされた構成を例示するが、これらを別個の数値 としてちよい。
[0032] (3)立体化処理(図 9)
この立体化処理は、各画素 Pixの奥行き値 Zに応じた視差を有する左目用画像と右 目用画像とを生成し、この左目用画像と右目用画像とを合成することによって立体視 画像を生成する処理である。この処理を開始すると、 CPU10は、選択行たる第 i行目 に属する注目画素 Pの列数 jからその注目画素 Pの奥行き値 Zを減算した数値 LFx( =j— Z)を算定し、原画像 IMG0のうち第 i行の第 LFx列目に属する画素 Pixの画素デ ータ Dを、左目用画像のうち第 i行目に属する第 j列目の画素 Pixの画素データ とし て選定する。同様に、 CPU10は、選択行たる第 i行目に属する注目画素 Pの列数 jに その注目画素 Pの奥行き値 Zを加算した数値 RTx (=j + Z)を算定し、原画像 IMG0の うち第 i行の第 RTx列目に属する画素 Pixの画素データ Dを、右目用画像のうち第 i行 目に属する第 j列目の画素 Pixの画素データ Drとして選定する。
[0033] 例えば、第 i行の第 j列目にある注目画素 Pの奥行き値 Zが「2」であるとすれば変数 LFxは「j— 2」となるから、図 9に示されるように、原画像 IMG0のうち第 i行目の第 (j— 2)列目の画素 Pixの画素データ D[i, j— 2]力 左目用画像のうち第 i行の第 j列に属 する画素 Pixの画素データ Dl[i, j]として採択される。また、この場合の変数 RTxは「j + 2」となるから、同図に示されるように、原画像 IMG0のうち第 (j + 2)列目の画素 Pix の画素データ D[i, j + 2]力 右目用画像のうち第 i行の第 j列に属する画素 Pixの画 素データ Dr[i, j]として採択される。以上の処理が選択行に属する総ての画素 Pixに ついて実行され、さらには原画像 IMG0の全行について同様の処理が繰り返されるこ とによって、左目用画像の画像データ(以下「左目用画像データ」 t 、う)と右目用画 像の画像データ (以下「右目用画像データ」 、う)とが生成され、図 4と同様の態様 【こて RAM23〖こ 糸内される。
[0034] なお、各画素 Pixの奥行き値 Zに基づ 、て左目用画像と右目用画像とを作成するた めの方法はこれに限られない。例えば、原画像 IMG0の各画素 Pixを奥行き値 Zに応 じた画素数だけ行方向に移動させることによって左目用画像と右目用画像とを生成 する方法も採用される。し力しながら、この方法においては、原画像 IMG0のうち互い に隣接する画素 Pixの奥行き値 Zが大幅に相違する場合に、この奥行き値 Zに基づい て移動させられた各画素 Pixの間隙に画素 Pixの欠落が生じる可能性がある。ぼかし 処理など各種の画像処理によって画素 Pixの欠落を修正することができるものの、こ の場合には画像処理の負荷が過大となる虞がある。これに対し、本実施形態におい ては、左目用画像および右目用画像を構成する各画素 Pixについて原画像 IMG0の 何れかの画素 Pixの画素データ Dを割り当てる構成となっているから、画素 Pixの欠落 といった問題は抑制される。したがって、極めて少ない処理負荷により左目用画像と 右目用画像とを生成することができるという利点がある。
[0035] さて、以上の手順によって左目用画像と右目用画像とを生成すると、 CPU10は、こ れらの画像を合成することによって立体視画像を生成する。例えば、表示面のうち偶 数行目の走査線と奇数行目の走査線とに偏光方向が相違する偏光板が貼付された 表示装置 40と、右目部分と左目部分とに偏光方向が相違する偏光板が貼付された 偏光メガネとを使用して立体視画像を視認する場合には、左目用画像のうち奇数行 に属する各画素 Pixと右目用画像のうち偶数行に属する各画素 Pixとを合成すること によって立体視画像が生成される。もっとも、立体視画像を視認するための機構は上 述したように任意である。したがって、左目用画像と右目用画像とを合成するための 方法は、立体視画像を視認するための機構に応じて適宜に選定される。
[0036] < A— 3:立体視画像生成処理の具体的な内容 >
利用者によって入力装置 45が操作されて画像処理プログラムの起動が指示される と、 CPU10は、画像処理プログラムを記憶装置 30から RAM23に読み込んだうえで これを順次に実行する。以下では、図 10から図 13を参照して、画像処理プログラム の具体的な内容を説明する。図 10から図 13のうちステップ Sblからステップ Sb8まで の処理が画素値算定処理に相当し、ステップ Sclからステップ Scl4までの処理が奥 行き値決定処理に相当し、ステップ Sdlからステップ Sd7までの処理が立体化処理に 相当している。
[0037] 図 10に示されるように、画像処理プログラムが起動されると、 CPU10はまず、変数 s rcp、変数 pLEFT、変数 pRIGHTおよび変数 Z0を初期化する(ステップ Sal)。変数 src pは、原画像 IMG0のうち注目画素 Pの画素データ Dが格納される領域の先頭のァドレ ス(すなわち注目画素 Pのうち青色のサブ画素 Ps-bの単位データ Ubが格納されるァ ドレス)を示す変数である。本実施形態にぉ 、ては上述したように第 0行の第 0列目の 画素 Pixから順番に注目画素 Pとして選択されるから、ステップ Salにおいて、 CPU1 0は、変数
srcpを、 RAM23のうち原画像データ Dgが格納される領域の先頭のアドレス ADO (す なわち第 0行に属する第 0列目の画素 Pixのうち青色のサブ画素 Ps-bの単位データ Ubが格納されるアドレス)に初期化する。一方、変数 pLEFTは、左目用画像における 注目画素 Pの画素データ D1が格納される領域の先頭のアドレスを示す変数であり、 変数 pRIGHTは、右目用画像における注目画素 Pの画素データ Drが格納される領域 の先頭のアドレスを示す変数である。ステップ Salにおいて、 CPU10は、左目用画像 データが格納される領域の先頭のアドレス ADleftを変数 pLEFTに代入するとともに、 右目用画像データが格納される領域の先頭のアドレス ADrightを変数 pRIGHTに代 入する。また、変数 Z0は、奥行き値決定処理にて使用される奥行き値 Zの初期値を 示す変数である。ここでは CPU10が変数 Z0を数値「2」に初期化する場合が想定さ れている。この変数 Z0の初期値は、利用者による入力装置 45への操作に応じて CP U10が適宜に変更する。
次いで、 CPU10は、原画像 IMG0の何れかの行を指定する変数 iを「0」に初期化し (ステップ Sbl)、この変数 iが原画像 IMG0の総行数 Hを下回るか否かを判定する (ス テツプ Sb2)。ここで変数 iが総行数 Hを下回ると判定した場合 (すなわち、未だ全行の 画素 Pixについて処理が完了していない場合)、 CPU10は、各行ごとに実行される 処理に関わる各種の変数を初期化する(ステップ Sb3)。このステップ Sb3においては 、連続減少回数を示す変数 falldown_CNTと連続増加回数を示す変数 raiseup_CNTと 力 S「0」に初期化される。さらに、変数 whichは、図 8を参照して説明したように「RAISE_ UPJに初期化される。また、各画素 Pixに割り当てられる奥行き値 Zを示す変数 Zxに は初期値 Z0がセットされる。さらに、変数 linePには、「AD0+i *W* 3」が代入される 。この「AD0+i *W* 3」は、原画像 IMG0のうち選択行に属する第 0列目の画素 Pix の画素データ Dが格納されて!、るアドレスである(図 4参照)。
[0039] 続いて、 CPU10は、原画像 IMG0の列を指定する変数 jを「0」に初期化し (ステップ Sb4)、この変数 jが原画像 IMG0の総列数 Wを下回るか否かを判定する(ステップ Sb5 )。ここで変数 jが総列数 W以上であると判定した場合 (すなわち、選択行に属する総 ての画素 Pixについて処理が完了している場合)、 CPU10は、変数 iを「1」だけインク リメントしたうえで (ステップ Sb6)ステップ Sb2に処理を移行する。この変数 iのインクリメ ントは、処理対象となる選択行を次の行に変更することを意味して!/ヽる。
[0040] 一方、ステップ Sb5にお 、て変数 jが総列数 Wを下回ると判定した場合 (すなわち、 選択行に属する総ての画素 Pixについて処理が完了していない場合)、 CPU10は、 注目画素 Pの各表示色の単位データ Uから図 5の手順によって算定された数値を変 数 factorに代入する(ステップ Sb7)。すなわち、変数 srcpが示すアドレスに格納された 青色の単位データ Ubと、アドレス「srcp + l」に格納された緑色の単位データ Ugと、ァ ドレス「srcp + 2」に格納された赤色の単位データ Urとから変数 factorを算定する。そ して、 CPU10は、この変数 factorとステップ値 STEPとの乗算値である画素値 Gを変数 grayに代入する (ステップ Sb8)。以上の手順により注目画素 Pの画素値 Gが算定され る。
[0041] 続いて、図 11に示されるように、 CPU10は、変数 j力 S「0」であるか否力 すなわち注 目画素 Pが選択行の先頭列 (第 0列)に属する画素 Pixである力否かを判定する (ステ ップ Scl)。ここで、変数 jが「0」であると判定した場合、 CPU10は、変数 grayに代入さ れている画素値 Gを変数 prevに代入する。この変数 prevは、注目画素 Pの左隣に位 置する画素 Pixの画素値 Gを示す変数である。ただし、選択行の先頭列に属する画 素 Pixの左隣には画素 Pixが存在しないため、この画素 Pixが注目画素 Pとして選択さ れている場合 (すなわち変数 jが「0」である場合)には、その注目画素 Pの画素値 Gが 変数 prevに代入されるようになって!/、る(ステップ Sc2)。
[0042] 続いて、画素値 Gの減少を検出するとともにその結果に応じて変数 Zxを更新するた めの処理が実行される(ステップ Sc3からステップ Sc8)。すなわち、 CPU10はまず、 変数 prevの数値が変数 grayの数値よりも大きいか否かを判定する (ステップ Sc3)。上 述したように、変数 grayには注目画素 Pの画素値 Gが代入され、変数 prevにはその左 隣の画素 Pixの画素値 Gが代入されているから、ステップ Sc3においては、注目画素 Pの画素値 Gがその左隣の画素 Pixの画素値 Gと比較して減少しているか否かが判 定されることになる。なお、選択行の先頭列に位置する画素 Pixが注目画素 Pである 場合には、変数 prevと変数 grayとは等しいから、ステップ Sc3における判定の結果は「 NoJとなる。
[0043] ステップ Sc3にお 、て変数 prevが変数 grayよりも大き 、と判定した場合 (すなわち、 注目画素 Pの画素値 Gがその左隣の画素 Pixの画素値 Gよりも減少して!/、る場合)、 C PU10は、変数 whichに「RAISE_UP」がセットされて!/、るか否かを判定する(ステップ S c4) 0ここで変数 whichに「RAISE_UP」がセットされていると判定した場合(すなわち、今 回の注目画素 Pにて画素値 Gが増力!]から減少に転じた場合)、 CPU10は、変数 Zxを ステップ値 PLXだけ減算する(ステップ Sc5)。さらに、 CPU10は、画素値 Gが減少し ていることを示す「FALL_DOWN」を変数 whichに代入するとともに、連続減少回数を 示す変数 falldown_CNTに「0」をセットする(ステップ Sc5)。
[0044] これに対し、ステップ Sc4にお!/、て変数 whichに「RAISE_UP」がセットされて!/ヽな!、と 判定した場合 (すなわち前回以前の注目画素 Pにおいて画素値 Gの減少が検出され たために変数 whichに「1^しし00漏」がセットされている場合)、 CPU10は、連続減 の変数 falldown_CNTが閾値 Nを上回るか否かを判定する(ステップ Sc7)。ここで変数 f alldoWn_CNTが閾値 Nを上回ると判定した場合 (すなわち連続減少回数が (N+ 1)回 以上となった場合)、 CPU10は、変数 Zxをステップ値 PLXだけ減算するとともに変数 f alldown_CNTを「0」にクリアする(ステップ Sc8)。したがって、連続減少回数が N回を を越えることによっていったん変数 Zxが減少すると、その時点力も改めて計数される 連続減少回数が N回を越えるまで変数 Zxは減少しない。これに対し、変数 falldown_C NTが閾値 N以下であると判定した場合、 CPU10は、ステップ Sc8を実行しない。
[0045] 一方、ステップ Sc3における判定の結果が「No」である場合には、画素値 Gの増加 を検出するとともにその結果に応じて変数 Zxを更新するための処理が実行される (ス テツプ Sc9からステップ Scl4)。すなわち、図 12〖こ示されるよう〖こ、 CPU10はまず、変 数 prevが変数 grayよりも小さいか否かを判定する(ステップ Sc9)。このステップ Sc9に お!、ては、注目画素 Pの画素値 Gがその左隣の画素 Pixの画素値 Gと比較して増加 している力否かが判定されることになる。なお、選択行の先頭列に位置する画素 Pix が注目画素 Pである場合、変数 prevと変数 grayとは等しいから、ステップ Sc9における 判定の結果は「No」となる。
[0046] ステップ Sc9にお 、て変数 prevが変数 grayよりも小さ 、と判定した場合 (すなわち、 注目画素 Pの画素値 Gがその左隣の画素 Pixの画素値 Gよりも増加して!/、る場合)、 C PU10は、変数 whichに「FALL_DOWN」がセットされているか否かを判定する(ステツ プ SclO)。ここで変数 whichに「FALL_DOWN」がセットされて!/、ると判定した場合(す なわち、今回の注目画素 Pにて画素値 Gが減少力も増加に転じた場合)、 CPU10は 、変数 Zxにステップ値 PLXを加算するとともに、画素値 Gが増加していることを示す「R AISE.UPJを変数 whichに代入し、さらに連続増加回数を示す変数 raiseup_CNTに「0」 をセットする(ステップ Sell)。
[0047] 一方、ステップ SclOにおいて変数 whichに「FALL_DOWN」がセットされていないと 判定した場合 (すなわち前回以前の注目画素 Pにおいて画素値 Gの増加が検出され たために変数 whichに「RAISE_UP」がセットされている場合)、 CPU10は、連続増加 回数を示す変数 raiseup_CNTを「1」だけインクリメントしたうえで(ステップ Scl2)、この 変数 raiseup_CNTが閾値 Nを上回るか否かを判定する(ステップ Scl3)。ここで変数 rai SeUp_CNTが閾値 Nを上回ると判定した場合 (すなわち連続増加回数が (N+ 1)回以 上となった場合)、 CPU10は、変数 Zxにステップ値 PLXを加算するとともに変数 raise up_CNTを「0」にクリアする(ステップ Scl4)。したがって、連続増加回数が N回を越え ることによっていったん変数 Zxが増加すると、その時点力 改めて計数される連続増 加回数が N回を越えるまで変数 Zxは増加しない。一方、変数 raiseup_CNTが閾値 N 以下であると判定した場合にはステップ Scl4の処理が実行されない。
[0048] 以上の各ステップを経て奥行き値決定処理が完了すると (ステップ Sc3、ステップ Sc 7、ステップ Sc9もしくはステップ Scl3において「No」と判定された場合、または、ステツ プ Sc5、ステップ Sc8、ステップ Sellもしくはステップ Scl4の処理が完了した場合)、 続いて立体化処理が実行される(ステップ Sdl力もステップ Sd7)。すなわち、 CPU 10 はまず、変数 jから現段階における変数 Zxを減算した数値を変数 LFxに代入するとと もに、変数 jと変数 Zxとを加算した数値を変数 RTxに代入する (ステップ Sdl)。図 9を 参照して説明したように、この変数 LFxおよび変数 RTxは、原画像 IMG0のうち左目 用画像および右目用画像に採択される画素 Pixを指定する変数である。すなわち、そ の時点にお 、て変数 Zxに代入されて 、る数値が注目画素 Pの奥行き値 Zとして選定 されること〖こなる。
[0049] 次いで、 CPU10は、左目用画像のうち第 i行に属する第 j列目の画素 Pixの画素デ ータ D1が格納されるアドレスに、原画像 IMG0のうち変数 LFxによって指定される画素 Pixの画素データ Dが格納されるアドレスを代入する (ステップ Sd2)。より具体的には 、左目用画像の第 i行の第 j列にある画素 Pixのうち青色のサブ画素 Ps-bの単位デー タ Ubが格納されるアドレス「pLEFT」には、原画像データ Dgが格納された領域のアド レス「lineP+LFx* 3」が代入される。ここで、変数 linePにはステップ Sb2において「A DO +i * W * 3」が代入されて!、る力 、アドレス「pLEFT」に代入されるアドレスは「A DO + i * W * 3 + LFx * 3」すなわち「 ADO + (i * W + LFx) * 3」となる。図 4に示され るように、このアドレス「AD0+ (i *W+LFx) * 3」は、注目画素 Pに対して行方向に 変数 LFxの画素数だけ離れた画素 Pixの画素データ Dが格納されたアドレスである。 したがって、左目用画像の第 i行の第 j列にある画素 Pixのうち青色のサブ画素 Ps-bの 単位データ Ubが格納されるアドレス「pLEFT」には、原画像 IMG0のうち注目画素 Pか ら行方向に変数 LFxだけ離れた位置にある画素 Pixの青色の単位データ Ubが格納 されるアドレス「lineP+ LFx* 3」が代入されることになる。一方、緑色に対応する単 位データ Ugは、青色に対応する単位データ Ubのアドレスを「1」だけ増加させたアド レスに格納されているから、左目用画像の第 i行の第 j列にある画素 Pixのうち緑色の サブ画素 Ps-gの単位データ Ugが格納されるアドレス「pLEFT+ l」には、原画像 IMG 0のうち注目画素 Pから行方向に変数 LFxだけ離れた位置にある画素 Pixの緑色の単 位データ Ugが格納されるアドレス「lineP + LFx* 3 + l」が代入されることになる。同 様の理由により、赤色のサブ画素 Ps-rの単位データ Urが格納されるアドレス「pLEFT + 2」にはアドレス「lineP+LFx* 3 + 2」が代入される。以上の処理により、図 9を参照 して説明したように左目用画像の各画素 Pixの画素データ D1が生成される。
[0050] 右目用画像については、変数 RTxに基づいてステップ Sd2と同様の処理が実行さ れる (ステップ Sd3)。すなわち、 CPU10は、右目用画像の第 i行の第 j列目にある画 素 Pixのうち青色のサブ画素 Ps-bの単位データ Ubが格納されるアドレス「pRIGHT」 に対し、原画像 IMG0のうち注目画素 Pカゝら行方向に変数 RTxだけ離れた位置にある 画素 Pixの青色の単位データ Ubが格納されるアドレス「lineP+RTx* 3」を代入する 。同様に、右目用画像のうち緑色のサブ画素 Ps-gに対応するアドレス「pRIGHT+ l」 には原画像データ Dgのアドレス「lineP+RTx * 3 + 1」が代入され、赤色のサブ画素 Ps- rに対応するアドレス「pRIGHT+2」には原画像データ Dgのアドレス「lineP+RTx * 3 + 2」が代入される。この処理により、図 9を参照して説明したように右目用画像の 各画素 Pixの画素データ Drが生成される。
[0051] 次!、で、 CPU10は、ステップ Sb8にて算定した変数 grayの数値を変数 prevに代入 する (ステップ Sd4)。この処理を実行するのは、次に選択される注目画素 P (現に選 択されて 、る注目画素 Pの右隣の画素 Pix)の画素値 Gを、ステップ Sc3またはステツ プ Sc9において今回の注目画素 Pの画素値 Gと比較するためである。さらに、 CPU1 0は、 RAM23に格納された各変数を更新する(ステップ Sd5)。すなわち、 CPU10は まず、変数 srcpを「3」だけインクリメントする。これにより、変数 srcpは、原画像 IMG0の うち次に選択される注目画素 Pの画素データ Dのアドレスを示すことになる。同様に、 CPU10は、変数 pLEFTおよび変数 pRIGHTを「3」だけインクリメントする。これにより 、変数 pLEFTおよび変数 pRIGHTは、それぞれ左目用画像および右目用画像のうち 次に選択される注目画素 Pの画素データ D1および画素データ Drが格納される領域 の先頭のアドレスを示すことになる。さらに、 CPU10は、注目画素 Pの列数を示す変 数 jを「1」だけインクリメントすることにより、今回の注目画素 Pの右隣の画素 Pixを次の 注目画素 Pとして選択する。このステップ Sd5の処理を完了すると、 CPU10は、処理 を図 10のステップ Sb5に移行させ、新たな注目画素 Pについて同様の処理を繰り返 す。さらに、ある選択行に属する総ての画素 Pixについて処理を実行すると、ステップ Sb5における判定の結果が「No」となり、変数 iが「1」だけインクリメントされる (ステップ Sb6)。したがって、処理の対象となる選択行は次の行に変更される。
[0052] さて、以上に説明した処理を全行の総ての画素 Pixについて実行すると、ステップ S b2における判定の結果が「No」となる。この場合、 CPU10は、ステップ Sd2およびス テツプ Sd3にて生成した左目用画像と右目用画像とを合成して立体視画像を生成し( ステップ Sd6)、この立体視画像を表示装置 40に表示させる (ステップ Sd7)。利用者 は、この立体視画像のうち左目用画像を左目により視認するとともに右目用画像を右 目により視認することにより、各画素 Pixについて指定された奥行き値に応じた立体感 を知覚することができる。
[0053] 以上に説明したように、本実施形態においては、注目画素 Pの画素値 Gとこの注目 画素 Pに対して行方向に隣接する画素 Pixの画素値 Gとの大小に応じて注目画素 P の奥行き値 Zが決定されるから、利用者に自然な立体感を知覚させ得る立体視画像 を生成することができる。すなわち、まず、各画素 Pixの画素値 Gの増加または減少が 閾値 Nを越える回数にわたって連続した場合に奥行き値 Zが変更されるようになって いるから、閾値 Nを越えない範囲で画素値 Gが増加または減少したとしても、その領 域における各画素 Pixの奥行き値 Zは共通の数値となる。さらに、各画素 Pixの奥行き 値 Zが画素値 Gの変化に応じてステップ値 PLXだけ増減されるようになって 、る。この ように、本実施形態においては、各画素 Pixの奥行き値 Zの数値の範囲力 各画素 Pi Xの階調値から直接的に当該画素 Pixの奥行き値を設定する従来の構成と比較して 狭い範囲に抑制される。したがって、原画像 IMG0の被写体のうち特定の部分のみが 極端に飛び出して (あるいは引っ込んで)知覚されたり、画素クロスに起因した画像の 歪みが発生したりする事態は有効に防止される。し力も、このような自然な立体視画 像の取得に際して原画像 IMG0ごとに多様なパラメータを利用者に入力させる必要は ない。
[0054] ところで、奥行き値 Zを示す変数 Zxの初期値 Z0は立体視画像の全体的な立体感( 奥行き感)を特徴づける数値である。例えば、この初期値 Z0が大きいほど原画像 IMG 0の奥行き値 Zが全体として大きくなるために立体視画像の被写体は奥側(ある 、は 手前側)に知覚され、初期値 Z0が小さいほど原画像 IMG0の奥行き値 Zが全体として 小さくなるために立体視画像の被写体は手前側(あるいは奥側)に知覚されると 、つ た具合である。本実施形態においては、この初期値 Z0を利用者が任意に選択できる ようになっているから、利用者の好みに応じた多様な立体視画像を生成することがで きるという利点がある。 [0055] < B :第 2実施形態 >
次に、本発明の第 2実施形態に係る立体視画像生成装置 Dの構成を説明する。第 1実施形態においては、各画素 Pixの奥行き値 Zから 1回の立体ィ匕処理によって立体 視画像が生成される構成を例示した。これに対し、本実施形態においては、立体ィ匕 処理が複数回にわたって段階的に実行されるようになっている。なお、本実施形態に 係る立体視画像生成装置 Dのうち第 1実施形態と同様の要素については共通の符 号を付してその説明を適宜に省略する。
[0056] 図 14は、本実施形態に係る立体視画像生成装置 Dの動作の概要を示す図である 。同図に示されるように、本実施形態は、ひとつの原画像 IMG0から立体視画像生成 処理 (第 1段階)によって左目用画像 IMG1および右目用画像 IMG2が生成される段 階までは第 1実施形態と共通するが、これに加え、左目用画像 IMG1および右目用画 像 IMG2の各々を新たな原画像としてさらに立体視画像生成処理が実行されるように なっている。すなわち、図 14に示されるように、 CPU10は、原画像 IMG0から左目用 画像として生成された第 1画像 IMG1を新たな原画像として第 2段階目の立体視画像 生成処理を実行することにより左目用画像 IMGL1および右目用画像 IMGR1を生成す るとともに、原画像 IMG0から右目用画像として生成された第 2画像 IMG2を新たな原 画像として第 2段階目の立体視画像生成処理を実行することにより左目用画像 IMGL 2および右目用画像 IMGR2を生成する。そして、第 1画像 IMG1から生成された左目 用画像 IMGL1と、第 2画像 IMG2から生成された右目用画像 IMGR2とを合成すること により最終的な立体視画像が生成される。一方、第 1画像 IMG1から生成された右目 用画像 IMGR1と第 2画像 IMG2から生成された左目用画像 IMGL2とは破棄される。た だし、左目用画像 IMGL1および右目用画像 IMGR2に加えて右目用画像 IMGR1およ び左目用画像 IMGL2も使用して立体視画像 (例えば 4視点力ゝらの立体視が可能な立 体視画像)を合成する構成としてもょ ヽ。
[0057] 図 14に示される動作を詳述すれば以下の通りである。 CPU10はまず、図 10から 図 13に示される立体視画像生成処理によって左目用画像たる第 1画像 IMG1と右目 用画像たる第 2画像 IMG2とを第 1実施形態と同様の手順にて生成する。次いで、第 1 画像 IMG1を原画像とした第 2段階目の立体視画像生成処理が実行される。すなわ ち、 CPU10は、第 1画像 IMG1の画像データが格納された領域の先頭のアドレス (A Dleft)を図 10のステップ Salにて変数 srcpに代入したうえで第 2段階目の立体視画 像生成処理を実行することによって左目用画像 IMGL1と右目用画像 IMGR1とを生成 する。同様に、 CPU10は、第 2画像 IMG2の画像データが格納された領域の先頭の アドレス (ADright)を図 10のステップ Salにて変数 srcpに代入したうえで第 2段階目 の立体視画像生成処理を実行することによって左目用画像 IMGL2と右目用画像 IMG R2とを生成する。そして、 CPU10は、第 1画像 IMG1から生成された左目用画像 IMG L1と第 2画像 IMG2から生成された右目用画像 IMGR2とを合成することによって立体 視画像を生成したうえで (ステップ Sd6)、この立体視画像を表示装置 40に表示させ る(ステップ Sd7)。
[0058] ここで、第 1実施形態のように 1回の立体視画像生成処理によって左目用画像と右 目用画像とを生成する場合に、変数 Zxの変化幅であるステップ値 PLXを余りに大きく 設定すると、原画像 IMG0のうち左目用画像および右目用画像に採択される各画素 P ixの位置が大幅に相違するため、画素クロスなどに起因した画素 Pixの欠陥が発生す る場合がある。この欠陥はステップ値 PLXを小さい数値に設定することによって解決 し得るが、この場合には各画素 Pixの奥行き値 Zの変動が極めて狭い範囲に抑制さ れるから、利用者によって知覚される立体感が乏 、立体視画像しか生成できな 、と いう問題が生じ得る。これに対し、本実施形態においては、画素 Pixの欠陥を防止す るためにステップ値 PLXを抑制した場合であっても、立体視画像生成処理が 2回にわ たって実行されるから、充分な立体感をもった立体視画像を生成することができると いう利点がある。
[0059] なお、ここでは 2回の立体視画像生成処理が実行される場合を例示した力 この回 数は任意に変更され得る。例えば、立体視画像生成処理を 3回にわたって実行する 場合には、図 14に示される左目用画像 IMGL1を原画像としてさらに左目用画像と右 目用画像とが生成されるとともに、右目用画像 IMGR2を原画像として左目用画像と右 目用画像とが生成され、ここで左目用画像 IMGL1から生成された左目用画像と右目 用画像 IMGR2から生成された右目用画像とが合成されることによって最終的な立体 視画像が生成されることになる。 [0060] < C :変形例 >
各実施形態に対しては種々の変形が加えられる。具体的な変形の態様を例示すれ ば以下の通りである。以下の各態様を適宜に組み合わせてもよ 、。
[0061] (1)各実施形態においては、各画素 Pixの単位データ Uを 2値ィ匕したうえで加算する ことによって画素値 Gを算定したが、本発明において画素値 Gを算定する方法やそ の算定の基礎となる要素はこれに限られない。例えば、単位データ Uが示す各サブ 画素の内容 (RGB要素)、各画素の輝度、各画素の彩度、および各画素の明度とい つた種々の要素のなかから任意に選択された一部または全部の要素から画素値 Gが 算定される構成としてもよい。このように、本発明における「画素値」は各画素による表 示の内容に応じた数値であればょ 、。
[0062] また、各実施形態においては各画素 Pixの単位データ U力 画素値 Gを算定する 構成を例示した力 画素値 Gを算定する構成は必ずしも必要ではない。例えば、原 画像 IMG0の各画素 Pixにつ 、て予め画素値 Gが記憶されて 、る構成とすれば、立体 視画像生成処理における画素値 Gの算定は不要となる。さらに、各実施形態におい ては複数色力 なるカラー画像を例示して説明したが、白色および黒色のみ力 なる モノクロ画像が対象とされる場合には、各画素 Pkの階調値をそのまま画素値 Gとして 採用してもよい。このように、本発明においては、画素値 Gを算定する処理の有無は 不問であり、画素値 Gが立体視画像生
成処理のたびに算定されるにせよ画素値 Gが予め用意されているにせよ、画素ごと に画素値 Gを記憶する手段を備えた構成であれば足りる。
[0063] なお、各実施形態においては、画素の階調値を指定する画素データとは別個に画 素値 Gを算定する構成を例示したため、立体ィ匕処理においては左目用画像および 右目用画像の作成に際して原画像の画素データを利用したが、モノクロ画像を表示 する場合のように画素の階調値がそのまま画素値 Gとして採用される場合には、各画 素の画素値 Gそのものが左目用画像および右目用画像の作成に際して利用されるこ とになる。
[0064] (2)各実施形態にお!、ては、変数 whichが変化した場合、および、連続増加回数また は連続減少回数が閾値 Nを越えた場合に変数 Zxを増減させる構成を例示したが、こ のうち一方の場合のみに変数 Zxを増減させる構成としてもよい。例えば、変数 which の変化に拘わらず、連続増加回数または連続減少回数が閾値 Nを越えた場合に限 つて変数 Zxを増減させるといった具合である。もっとも、本発明において変数 Zxを増 減させるための条件はこれに限られない。要するに、互いに隣接する各画素の画素 値 Gの大小に応じて各画素の奥行き値 Zが決定される構成であれば足りる。
[0065] (3)各実施形態においては、原画像データ Dgが予め記憶装置 30に記憶された構成 を例示したが、本発明にお!/、て原画像を取得する方法およびその取得先は任意で ある。例えば、ビデオテープや DVD (Digital Versatile Disk)といった記録媒体から原 画像データ Dgを取得して立体視画像生成処理に供する構成としてもよ ヽし、ネットヮ ークを介して接続された他の通信端末から原画像データ Dgを受信して立体視画像 生成処理に供する構成としてもよい。また、原画像は静止画像に限られず、複数の画 像が時系列的に配列された動画像であってもよ 、。この動画像の形式は任意である 1S 例えば、 MPEG (Moving Picture Experts Group)などの動画圧縮技術によって 圧縮されたデータを伸長したものが採用される。なお、動画像を処理の対象とする場 合には、これを構成する画像ごとに図 10ないし図 13の処理が実行される。
[0066] (4)図 2に示したように、各実施形態においては、ひとつの画素 Pixを構成する各サブ 画素 Psが行方向の負側から正側に向かって「青色 (B)」→「緑色 (G)」→「赤色 (R)」 の順番に配列された構成を例示したが、各サブ画素 Psの配列がこれに限定されな ヽ ことは勿論である。例えば、ひとつの画素 Pixにおける各サブ画素 Psが「赤色 (R)」→ 「緑色 (G)」→「青色 (B)」の順番に配列された構成にぉ ヽても、各実施形態の構成 および動作が同様に適用される。
[0067] (5)各実施形態においては、注目画素 Pの画素値 Gとその注目画素 Pに対して行方 向に隣接する画素 Pixの画素値 Gとの大小に応じて注目画素 Pの奥行き値 Zを算定 する構成を例示した力 奥行き値 Zの算定のために参照される画素 Pixと注目画素 P との位置関係はこれに限られない。例えば、注目画素 Pに対して列方向(Y方向)に 隣接する画素 Pixの画素値 Gと注目画素 Pixとの画素値 Gとの大小に応じて注目画素 Pixの奥行き値 Zを算定する構成としてもよい。この構成における処理内容は第 1実施 形態と同様である。ただし、第 1実施形態においてはひとつの行ごとに各画素 Pixの 画素値 Gが算定される構成を例示したが、本変形例の構成においては、注目画素 P が属する行にカ卩えてその次に選択される行 (あるいはその直前に選択された行)につ いても各画素 Pixの画素値 Gを算定して記憶しておく必要がある。
(6)本発明に係る立体視画像生成装置は、各実施形態に示したように CPUが画像 処理プログラムを実行することによって実現されるほか、画像処理に専用される DSP などのハードウェアによっても実現される。

Claims

請求の範囲
[1] 右目用画像と左目用画像とが合成された立体視画像を原画像から生成する装置で あって、
原画像を構成する複数の画素の各々につ 、て画素値を記憶する画素値記憶手段 と、
原画像を構成する各画素の画素値とその画素に隣接する画素の画素値との大小 に基づ!/、て各画素の奥行き値を決定する決定手段と、
前記決定手段が決定した各画素の奥行き値に基づいて立体視画像を生成する立 体化手段と
を具備する立体視画像生成装置。
[2] 原画像を構成する各画素は各々の表示色が相違する複数のサブ画素を含み、 各サブ画素の階調値を画素ごとに記憶するサブ画素記憶手段と、
前記サブ画素記憶手段に記憶された各サブ画素の階調値に基づいて画素ごとの 画素値を算定する算定手段とを具備し、
前記画素値記憶手段は、前記算定手段によって算定された画素値を画素ごとに記 憶する
請求項 1に記載の立体視画像生成装置。
[3] 前記算定手段は、ひとつの画素に属する各サブ画素の階調値を 2値ィ匕し、 2値化さ れた各階調値を表示色ごとに重み付けしたうえで加算し、この加算値に基づ!/、て当 該画素の画素値を算定する
請求項 2に記載の立体視画像生成装置。
[4] 各画素は赤色のサブ画素と緑色のサブ画素と青色のサブ画素とを含み、
前記算定手段は、各画素について、緑色のサブ画素について 2値ィ匕された階調値 と第 1の重み値との乗算値と、赤色のサブ画素について 2値化された階調値と前記第 1の重み値よりも小さい第 2の重み値との乗算値と、青色のサブ画素について 2値ィ匕 された階調値と前記第 2の重み値よりも小さい第 3の重み値との乗算値とを加算し、こ の加算値に基づいて当該画素の画素値を算定する
請求項 3に記載の立体視画像生成装置。
[5] 奥行き値を記憶する奥行き値記憶手段を具備し、
前記決定手段は、
原画像を構成する複数の画素の各々をその配列に沿って順番に選択する選択手 段と、
前記選択手段が選択した画素の画素値と当該画素に隣接する画素の画素値との 大小に応じて、前記奥行き値記憶手段に記憶された奥行き値を変更する変更手段と を有し、
前記立体化手段は、前記選択手段が画素を選択したときに前記記憶手段に記憶さ れて ヽる奥行き値に基づ!/ヽて当該画素に対する立体化処理を実行する
請求項 1に記載の立体視画像生成装置。
[6] 閾値を記憶する閾値記憶手段を具備し、
前記決定手段は、
前記選択手段が選択した画素の画素値が当該画素に対して所定の方向に隣接す る画素の画素値よりも大きいか否かを判定する判定手段と、
前記判定手段によって大と判定された画素が前記所定の方向に連続する個数を 計数する計数手段と、
前記計数手段による計数値と前記閾値記憶手段に記憶された閾値とを比較する比 較手段と
を有し、
前記変更手段は、前記比較手段による比較の結果に基づ 、て前記奥行き値記憶 手段の奥行き値を変更する
請求項 5に記載の立体視画像生成装置。
[7] 閾値を記憶する閾値記憶手段を具備し、
前記決定手段は、
前記選択手段が選択した画素の画素値が当該画素に対して所定の方向に隣接す る画素の画素値よりも小さいか否かを判定する判定手段と、
前記判定手段によって小と判定された画素が前記所定の方向に連続する個数を 計数する計数手段と、 前記計数手段による計数値と前記閾値記憶手段に記憶された閾値とを比較する比 較手段と
を有し、
前記変更手段は、前記比較手段による比較の結果に基づ 、て前記奥行き値記憶 手段の奥行き値を変更する
請求項 5に記載の立体視画像生成装置。
[8] 前記変更手段は、前記計数手段による計数値が閾値を越えた場合に前記奥行き 値記憶手段の奥行き値を変更する
請求項 6または請求項 7に記載の立体視画像生成装置。
[9] 入力装置から入力された初期値を取得する取得手段を具備し、
前記変更手段は、前記取得手段が取得した初期値を、前記所定の方向に配列す る複数の画素のうち最初の画素が前記選択手段によって選択されるときの奥行き値 とする
請求項 5から請求項 7の何れか一に記載の立体視画像生成装置。
[10] 原画像を構成する各画素の階調値を記憶する階調値記憶手段を具備し、
前記立体化手段は、
左目用画像の各行に属する各画素の階調値が、原画像のうち、その画素から行方 向の一方に向力つて当該画素の奥行き値に応じた画素数だけ離れた位置にある画 素の階調値となるように左目用画像を生成し、右目用画像の各行に属する各画素の 階調値が、原画像のうち、その画素から行方向の他方に向力つて当該画素の奥行き 値に応じた画素数だけ離れた位置にある画素の階調値となるように右目用画像を生 成する生成手段と、
前記生成手段が生成した左目用画像および右目用画像を合成することにより立体 視画像を生成する合成手段と
を有する請求項 1に記載の立体視画像生成装置。
[11] 前記生成手段は、左目用画像および右目用画像の生成処理を複数回にわたって 実行する一方、初回以外の各回の生成処理においては、その直前の生成処理にて 生成した左目用画像および右目用画像の各々を原画像として左目用画像および右 目用画像を生成し、
前記合成手段は、複数回の生成処理によって生成された左目用画像および右目 用画像を合成することにより立体視画像を生成する
請求項 10に記載の立体視画像生成装置。
原画像を構成する複数の画素の各々につ 、て画素値を記憶する画素値記憶手段 を備えたコンピュータに、
原画像を構成する各画素の画素値とその画素に隣接する画素の画素値との大小 に基づいて当該画素の奥行き値を決定する決定処理と、
前記決定処理にて決定した各画素の奥行き値に基づいて立体視画像を生成する 立体化処理と
を実行させるためのプログラム。
PCT/JP2005/016408 2004-09-10 2005-09-07 立体視画像生成装置 Ceased WO2006028125A1 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
EP05782234.8A EP1788824B1 (en) 2004-09-10 2005-09-07 3d image reproduction device
AU2005280997A AU2005280997B2 (en) 2004-09-10 2005-09-07 3D image reproduction device
CN2005800303499A CN101015220B (zh) 2004-09-10 2005-09-07 三维图像再现设备
US11/660,953 US7945088B2 (en) 2004-09-10 2005-09-07 Stereoscopic image generation apparatus
CA2577744A CA2577744C (en) 2004-09-10 2005-09-07 Stereoscopic image generation apparatus
NO20071308A NO340431B1 (no) 2004-09-10 2007-03-09 Reproduksjonsanordning for 3D-bilder

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004-264002 2004-09-10
JP2004264002A JP4523368B2 (ja) 2004-09-10 2004-09-10 立体視画像生成装置およびプログラム

Publications (1)

Publication Number Publication Date
WO2006028125A1 true WO2006028125A1 (ja) 2006-03-16

Family

ID=36036406

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2005/016408 Ceased WO2006028125A1 (ja) 2004-09-10 2005-09-07 立体視画像生成装置

Country Status (9)

Country Link
US (1) US7945088B2 (ja)
EP (1) EP1788824B1 (ja)
JP (1) JP4523368B2 (ja)
KR (1) KR101175554B1 (ja)
CN (1) CN101015220B (ja)
AU (1) AU2005280997B2 (ja)
CA (1) CA2577744C (ja)
NO (1) NO340431B1 (ja)
WO (1) WO2006028125A1 (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4283785B2 (ja) * 2005-05-10 2009-06-24 株式会社マーキュリーシステム 立体視画像生成装置およびプログラム
JP4657331B2 (ja) * 2008-08-27 2011-03-23 富士フイルム株式会社 3次元表示時における指示位置設定装置および方法並びにプログラム
EP2385705A4 (en) * 2008-12-30 2011-12-21 Huawei Device Co Ltd METHOD AND DEVICE FOR GENERATING STEREOSCOPIC PANORAMIC VIDEO FLOW AND METHOD AND DEVICE FOR VISIOCONFERENCE
JP5327524B2 (ja) * 2009-02-27 2013-10-30 ソニー株式会社 画像処理装置、画像処理方法、およびプログラム
JP4915458B2 (ja) * 2009-04-03 2012-04-11 ソニー株式会社 情報処理装置、情報処理方法、及び、プログラム
CN102461181B (zh) * 2009-06-24 2015-09-09 Lg电子株式会社 用于提供3d用户界面的立体图像再现装置和方法
CA2766989A1 (en) * 2009-07-02 2011-01-06 Thomson Licensing Method and system for differential distortion correction for three-dimensional (3d) projection
CN102474641B (zh) * 2009-07-07 2015-05-13 Lg电子株式会社 用于显示三维用户界面的方法
IN2012DN00515A (ja) * 2009-07-29 2015-08-21 Thomson Licensing
WO2011019398A1 (en) * 2009-08-12 2011-02-17 Thomson Licensing Method and system for crosstalk and distortion corrections for three-dimensional (3d) projection
US8538135B2 (en) * 2009-12-09 2013-09-17 Deluxe 3D Llc Pulling keys from color segmented images
JP5238767B2 (ja) * 2010-07-26 2013-07-17 株式会社東芝 視差画像生成方法及び装置
KR101638919B1 (ko) * 2010-09-08 2016-07-12 엘지전자 주식회사 이동 단말기 및 이동 단말기의 제어방법
TWI478575B (zh) * 2011-06-22 2015-03-21 Realtek Semiconductor Corp 3d影像處理裝置
US8743180B2 (en) 2011-06-28 2014-06-03 Cyberlink Corp. Systems and methods for generating a depth map and converting two-dimensional data to stereoscopic data
CN102722862B (zh) * 2012-05-22 2014-08-20 山东大学 采用优化技术的单张图片半自动二维转三维方法和装置
KR102047228B1 (ko) * 2013-06-11 2019-12-02 엘지디스플레이 주식회사 렌티큘러 입체 디스플레이 장치 및 그 구동 방법
KR20150078274A (ko) * 2013-12-30 2015-07-08 삼성전자주식회사 영상 재생 장치, 영상 재생 방법, 및 컴퓨터 판독가능 기록매체
JP6609098B2 (ja) * 2014-10-30 2019-11-20 キヤノン株式会社 表示制御装置、表示制御方法、及びコンピュータプログラム
CN107124638B (zh) * 2017-05-18 2020-05-12 京东方科技集团股份有限公司 数据传输方法、装置及系统
CN116489332A (zh) * 2023-04-28 2023-07-25 南方科技大学 图像生成方法、系统、装置、电子设备、存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09289638A (ja) * 1996-04-23 1997-11-04 Nec Corp 3次元画像符号化復号方式
JPH1051812A (ja) * 1996-08-07 1998-02-20 Sanyo Electric Co Ltd 2次元映像を3次元映像に変換する装置および方法
JPH118862A (ja) * 1997-06-17 1999-01-12 Sanyo Electric Co Ltd 2次元映像を3次元映像に変換する装置および方法
JP2001320731A (ja) * 1999-11-26 2001-11-16 Sanyo Electric Co Ltd 2次元映像を3次元映像に変換する装置及びその方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3524147B2 (ja) * 1994-04-28 2004-05-10 キヤノン株式会社 3次元画像表示装置
JPH08287253A (ja) * 1995-04-11 1996-11-01 N T T Data Tsushin Kk 物体形状の推定方法および物体形状推定装置
JPH09161055A (ja) * 1995-12-04 1997-06-20 Hitachi Ltd 3次元物体認識方法
EP0918439B1 (en) * 1996-07-18 2008-12-24 SANYO ELECTRIC Co., Ltd. Device for converting two-dimensional video into three-dimensional video
JP2001118074A (ja) * 1999-10-20 2001-04-27 Matsushita Electric Ind Co Ltd 3次元画像作成方法、3次元画像作成装置及びプログラム記録媒体
KR100381817B1 (ko) * 1999-11-17 2003-04-26 한국과학기술원 제트버퍼를 이용한 입체영상 생성방법 및 기록매체
JP2002123842A (ja) * 2000-10-13 2002-04-26 Takumi:Kk 立体視画像生成装置および情報記憶媒体
JP4729812B2 (ja) * 2001-06-27 2011-07-20 ソニー株式会社 画像処理装置および方法、記録媒体、並びにプログラム
KR100659206B1 (ko) * 2002-08-20 2006-12-19 가즈나리 에라 입체 화상을 작성하는 방법 및 장치

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09289638A (ja) * 1996-04-23 1997-11-04 Nec Corp 3次元画像符号化復号方式
JPH1051812A (ja) * 1996-08-07 1998-02-20 Sanyo Electric Co Ltd 2次元映像を3次元映像に変換する装置および方法
JPH118862A (ja) * 1997-06-17 1999-01-12 Sanyo Electric Co Ltd 2次元映像を3次元映像に変換する装置および方法
JP2001320731A (ja) * 1999-11-26 2001-11-16 Sanyo Electric Co Ltd 2次元映像を3次元映像に変換する装置及びその方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP1788824A4 *

Also Published As

Publication number Publication date
US20070291110A1 (en) 2007-12-20
CA2577744A1 (en) 2006-03-16
NO340431B1 (no) 2017-04-24
JP2006080982A (ja) 2006-03-23
CA2577744C (en) 2013-01-08
EP1788824A4 (en) 2013-03-06
AU2005280997B2 (en) 2009-11-12
AU2005280997A1 (en) 2006-03-16
CN101015220A (zh) 2007-08-08
KR20070062511A (ko) 2007-06-15
US7945088B2 (en) 2011-05-17
KR101175554B1 (ko) 2012-08-21
EP1788824A1 (en) 2007-05-23
CN101015220B (zh) 2010-08-18
EP1788824B1 (en) 2016-11-09
NO20071308L (no) 2007-03-09
JP4523368B2 (ja) 2010-08-11

Similar Documents

Publication Publication Date Title
JP4523368B2 (ja) 立体視画像生成装置およびプログラム
JP5062674B2 (ja) ステレオコンテンツの表示の際にクロストークを補償するためのシステム、方法、及びコンピュータプログラム製品
CN103581640B (zh) 图像数据处理方法以及使用其的立体图像显示器
CN1745589B (zh) 用于立体图像的视频滤波
US8767046B2 (en) Image based 3D video format
TWI683281B (zh) 用於產生三維影像之方法及裝置
US9380284B2 (en) Image processing method, image processing device and recording medium
EP2259601A1 (en) Image processing method, image processing device, and recording medium
WO2004019621A1 (ja) 立体視用画像を作成する方法および装置
WO2011135760A1 (ja) 立体映像処理装置及び立体映像処理方法
WO2014083949A1 (ja) 立体画像処理装置、立体画像処理方法、及びプログラム
Tam et al. Three-dimensional TV: A novel method for generating surrogate depth maps using colour information
JP7365185B2 (ja) 画像データ伝送方法、コンテンツ処理装置、ヘッドマウントディスプレイ、中継装置、および、コンテンツ処理システム
US8958657B2 (en) Frame rate conversion image processing apparatus, control method, and computer-readable storage medium
KR101382058B1 (ko) 크로스토크 보정량 평가 장치 및 크로스토크 보정량 평가 방법
JP6739257B2 (ja) 画像処理装置とその制御方法及びプログラム
Ruijters et al. IGLANCE: transmission to medical high definition autostereoscopic displays
HK1099454B (en) 3d image reproduction device
HK1099454A (en) 3d image reproduction device
JP5683214B2 (ja) 画像処理装置及びその制御方法
TWI463434B (zh) 將2d影像形成3d影像之影像處理方法
Ledda et al. Perceptual tone mapping operators for high dynamic range scenes
JP2013190449A (ja) 映像表示装置、映像信号変換装置および方法

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS KE KG KM KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NG NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SM SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU LV MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2577744

Country of ref document: CA

WWE Wipo information: entry into national phase

Ref document number: 11660953

Country of ref document: US

REEP Request for entry into the european phase

Ref document number: 2005782234

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2005782234

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 1020077005121

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 200580030349.9

Country of ref document: CN

Ref document number: 2005280997

Country of ref document: AU

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2005280997

Country of ref document: AU

Date of ref document: 20050907

Kind code of ref document: A

WWP Wipo information: published in national office

Ref document number: 2005280997

Country of ref document: AU

WWP Wipo information: published in national office

Ref document number: 2005782234

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 11660953

Country of ref document: US