[go: up one dir, main page]

WO2005095886A1 - 3次元形状検出装置、3次元形状検出方法、3次元形状検出プログラム - Google Patents

3次元形状検出装置、3次元形状検出方法、3次元形状検出プログラム Download PDF

Info

Publication number
WO2005095886A1
WO2005095886A1 PCT/JP2005/005859 JP2005005859W WO2005095886A1 WO 2005095886 A1 WO2005095886 A1 WO 2005095886A1 JP 2005005859 W JP2005005859 W JP 2005005859W WO 2005095886 A1 WO2005095886 A1 WO 2005095886A1
Authority
WO
WIPO (PCT)
Prior art keywords
pixel
image
code
luminance
boundary
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/005859
Other languages
English (en)
French (fr)
Inventor
Hiroyuki Sasaki
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.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
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 Brother Industries Ltd filed Critical Brother Industries Ltd
Publication of WO2005095886A1 publication Critical patent/WO2005095886A1/ja
Priority to US11/536,340 priority Critical patent/US7672505B2/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/24Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures
    • G01B11/25Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures by projecting a pattern, e.g. one or more lines, moiré fringes on the object
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0007Image acquisition

Definitions

  • 3D shape detection device 3D shape detection method, 3D shape detection program
  • the present invention relates to a three-dimensional shape detection device, a three-dimensional shape detection method, and a three-dimensional shape detection method capable of quickly detecting a boundary of pattern light with sub-pixel accuracy without increasing the number of captured pattern light beams. Regarding the detection program.
  • one slit light is sequentially projected onto a target object, an image is input by an imaging unit in each direction ⁇ of the projection light, and the target object is viewed from the imaging unit based on the locus of the slit light in the image.
  • a three-dimensional shape detection device that detects a three-dimensional shape of a target object by using a slit light projection method that detects a position of the target object by obtaining a direction ⁇ .
  • Reference 2 "Three-dimensional image measurement", Kosuke Sato, and one other, Shokodo Co., Ltd., plO 9-117 (hereinafter referred to as Reference 2) can solve such a problem.
  • Techniques for detecting dimensional shapes have been disclosed. Specifically, according to the technology disclosed in Reference 2, a positive (positive) Two types of pattern light, a positive pattern light and a negative (negative) pattern light whose brightness is inverted, are projected onto the target object, and the brightness distribution of the captured image indicates that the pattern light is within the boundaries of the pattern light.
  • the interpolation and detecting the boundary of the Noturn light with sub-pixel accuracy, the errors included in the boundary coordinates of the pattern light are reduced, and the three-dimensional shape of the target object is detected with high accuracy.
  • the pattern light projection image of the positive Z negative is 2 * n sheets.
  • One non-projection image needs to be imaged, and the number of pattern light projections and the number of pattern light imagings increase, and there is a problem that measurement takes a long time.
  • the present invention has been made in order to solve the above-described problem, and can detect a boundary of pattern light at high speed without increasing the number of images of pattern light with subpixel accuracy.
  • the purpose of the present invention is to provide a three-dimensional shape detection device, a three-dimensional shape detection method, and a three-dimensional shape detection program.
  • one aspect of the present invention provides a three-dimensional shape detection device, which is capable of detecting each of a plurality of types of pattern light in which light and dark are alternately arranged.
  • a projecting means for projecting the pattern light onto the subject in a sequence, an imaging means for imaging the subject in a state in which each pattern light is projected, and an image sensing means for imaging each subject.
  • a luminance image generating means for generating a plurality of luminance images in which the luminance of the pixels has been calculated, and a result of performing threshold processing with a predetermined threshold value on the plurality of luminance images generated by the luminance image generating means, for each pixel.
  • Code image generating means for generating a code image in which a predetermined code is allocated to the object, and three-dimensional shape calculating means for calculating the three-dimensional shape of the subject using the code image generated by the code image generating means And.
  • the three-dimensional shape detection device further has a detection position in a direction crossing the pattern light in the code image, adjacent to the pixel having the code of interest, and different from the code of interest.
  • a first pixel detecting means for detecting a first pixel having a code, and a luminance image having a boundary between light and dark at a position corresponding to the first pixel detected by the first pixel detecting means.
  • a luminance image extracting means for extracting from within the image, a pixel area specifying means for specifying a pixel area composed of pixels in a predetermined area adjacent to the first pixel, and an extracted luminance image for the pixel area specified by the pixel area specifying means
  • Expression calculating means for calculating an approximate expression representing a change in luminance at the position, and a position having a predetermined threshold value for luminance in the approximate expression calculated by the approximate expression calculating means, based on the calculation result.
  • Boundary coordinate detecting means for detecting boundary coordinates of the code.
  • the three-dimensional shape calculation means calculates the three-dimensional shape of the object based on the boundary coordinates detected by the boundary coordinate detecting means using the code image.
  • the direction in which the first pixel adjacent to the target code and having a code different from the target code intersects the pattern in the code image is detected.
  • the position is detected on a pixel-by-pixel basis by the first image detecting means.
  • a luminance image having a boundary between light and dark is extracted from the plurality of luminance images by the luminance image extracting means.
  • an approximate expression representing a change in brightness in the extracted luminance image is calculated by the approximate expression calculating unit.
  • the boundary coordinate detecting means By calculating the position having the predetermined threshold value regarding the luminance in this approximation formula by the boundary coordinate detecting means, the boundary position with sub-pixel accuracy at the detected position can be calculated.
  • the boundary coordinates consisting of the coordinates of the detected position and the coordinates of the position having the predetermined threshold value regarding the luminance in the approximation formula are calculated, and the three-dimensional shape calculation means uses the boundary coordinates to calculate the three-dimensional shape of the subject. Is calculated.
  • the boundary coordinates between the light and dark of the pattern light at the predetermined detection position are obtained by an approximate expression representing a change in luminance in a predetermined pixel region including the boundary coordinates. Is calculated and detected as a position having a predetermined threshold value for luminance in the approximate expression. Therefore, the boundary between light and dark at the detection position can be calculated with higher accuracy than the boundary between light and dark in the code image. Therefore, if the 3D shape is calculated using the result, the 3D shape of the subject can be calculated with high accuracy. The effect that it can be obtained is obtained.
  • Another aspect of the present invention provides a three-dimensional shape detection method, which projects a plurality of types of pattern light in which light and dark are alternately arranged on a subject in time series.
  • a shadowing process and a projection process power An imaging process in which each pattern light is projected to capture a subject in a curved state, and a plurality of brightnesses of each pixel calculated from each captured image power captured in the imaging process.
  • a predetermined code is assigned to each pixel based on the result of performing a threshold processing with a predetermined threshold on a luminance image generating step of generating a luminance image of the same and a plurality of luminance images generated in the luminance image generating step.
  • the three-dimensional shape detection method further includes, after the code image generation step, a code adjacent to the pixel having the code of interest and a code different from the code of interest at the detection position in the direction crossing the pattern light in the code image.
  • the three-dimensional shape calculation step calculates a three-dimensional shape of the object based on the boundary coordinates detected in the boundary coordinate detection step using the code image.
  • the direction in which the first pixel adjacent to the code of interest and having a code different from the code of interest crosses the pattern in the code image is detected.
  • the position is detected on a pixel-by-pixel basis by the first image detection step.
  • a luminance image having a boundary between light and dark is extracted from the plurality of luminance images at a position corresponding to the first pixel by the luminance image extracting step.
  • the luminance in the extracted luminance image Is calculated by an approximate expression calculating step.
  • a boundary position with sub-pixel accuracy at the detected position can be calculated. That is, the boundary coordinates consisting of the coordinates of the detection position and the coordinates of the position having a predetermined threshold value regarding the luminance in the approximation formula are calculated, and the three-dimensional shape of the subject is calculated by the three-dimensional shape calculation step using the boundary coordinates. Is calculated.
  • the boundary coordinate between the light and dark of the pattern light at a predetermined detection position is obtained by an approximate expression representing a change in luminance in a predetermined pixel region including the boundary coordinate. Is calculated and detected as a position having a predetermined threshold value for luminance in the approximate expression. Therefore, the boundary between light and dark at the detection position can be calculated with higher accuracy than the boundary between light and dark in the code image. Therefore, if the three-dimensional shape is calculated using the result, the effect that the three-dimensional shape of the subject can be calculated with high accuracy can be obtained.
  • a three-dimensional shape detection program for projecting a plurality of types of pattern lights, which are arranged alternately in light and dark, onto a subject in time series.
  • a projection step an imaging step for imaging an object in a state where each pattern light is projected, and a plurality of luminances obtained by calculating the luminance of each pixel from each captured image captured by the imaging step.
  • a predetermined code is assigned to each pixel based on a result of performing a luminance image generation step of generating an image and performing a threshold process using a predetermined threshold on a plurality of luminance images generated in the luminance image generation step.
  • the three-dimensional shape detection program further detects a first pixel adjacent to the pixel having the code of interest and having a code different from the code of interest at the detection position in the direction crossing the pattern light in the code image.
  • a pixel detection step, and a luminance image extraction step of extracting a luminance image having a boundary between light and dark from a plurality of luminance images at a position corresponding to the first pixel detected in the first pixel detection step.
  • the three-dimensional shape calculation step calculates a three-dimensional shape of the subject based on the boundary coordinates detected in the boundary coordinate detection step using the code image.
  • the first pixel adjacent to the code of interest and having a code different from the code of interest is detected in the direction orthogonal to the pattern in the code image.
  • the position is detected in pixel units by the first image detection step.
  • a luminance image having a boundary between light and dark is extracted from the plurality of luminance images at a position corresponding to the first pixel by the luminance image extracting step.
  • an approximate expression representing a change in luminance in the extracted luminance image is calculated in the approximate expression calculating step.
  • a boundary position with sub-pixel accuracy at the detection position can be calculated. That is, the boundary coordinates consisting of the coordinates of the detected position and the coordinates of the position having a predetermined threshold regarding the luminance in the approximation formula are calculated, and the three-dimensional shape of the subject is calculated by the three-dimensional shape calculation step using the boundary coordinates. Is calculated.
  • the boundary coordinates between the light and dark of the pattern light at the predetermined detection position indicate the change in brightness in the predetermined pixel area including the boundary coordinates.
  • An approximate expression is calculated and detected as a position having a predetermined threshold value for luminance in the approximate expression. Therefore, the boundary between light and dark at the detection position can be calculated with higher accuracy than the boundary between light and dark in the code image. Therefore, if the three-dimensional shape is calculated using the result, the! / ⁇ effect can be obtained if the three-dimensional shape of the subject can be calculated with high accuracy.
  • FIG. 1 is an external perspective view of an image input / output device.
  • FIG. 2 is a diagram showing an internal configuration of an imaging head.
  • FIG. 3 (a) is an enlarged view of an image projection unit
  • FIG. 3 (b) is a plan view of a light source lens
  • FIG. 3 (c) is a front view of a projection LCD.
  • FIG. 4 (a) Force FIG. 4 (c) is a diagram for explaining the arrangement of LED arrays.
  • FIG. 5 is an electrical block diagram of the image input / output device.
  • FIG. 6 is a flowchart of a main process.
  • FIG. 7 is a flowchart of a digital camera process.
  • FIG. 8 is a flowchart of a webcam process.
  • FIG. 9 is a flowchart of a projection process.
  • FIG. 10 is a flowchart of stereoscopic image processing.
  • FIG. 11 (a) is a diagram for explaining the principle of the spatial code method
  • FIG. 11 (b) is a diagram for explaining the principle of the spatial code method.
  • FIG. 4 is a diagram showing a mask pattern (gray code) different from 1 (a).
  • FIG. 12 (a) is a flowchart of a three-dimensional shape detection process.
  • FIG. 12B is a flowchart of the imaging process.
  • FIG. 12C is a flowchart of the three-dimensional measurement processing.
  • Fig. 13 is a diagram for describing an outline of a code boundary coordinate detection process.
  • FIG. 14 is a flowchart of a code boundary coordinate detection process.
  • FIG. 15 is a flowchart of a process for obtaining code boundary coordinates with sub-pixel accuracy.
  • FIG. 16 is a flowchart of a process for calculating a CCDY value of a boundary for a luminance image having a mask pattern number of PatID [i].
  • 17 (a) to 17 (c) are diagrams for explaining a lens aberration correction process.
  • FIG. 18 (a) and FIG. 18 (b) are diagrams for explaining a method of calculating three-dimensional coordinates in a three-dimensional space from coordinates in a CCD space.
  • FIG. 19 is a flowchart of flattened image processing.
  • FIGS. 20 (a) to 20 (c) are diagrams for explaining the document attitude calculation processing.
  • FIG. 21 is a flowchart of a plane conversion process.
  • FIG. 22 (a) is a diagram for explaining the outline of a curvature calculation process
  • FIG. 22 (b) is a diagram showing a flattened image flattened by a plane conversion process.
  • FIG. 23 (a) is a side view showing another example of the light source lens
  • FIG. 23 (b) is a plan view showing the light source lens of FIG. 23 (a).
  • FIG. 24 (a) is a perspective view showing a state in which a light source lens is fixed
  • FIG. 24 (b) is a partial cross-sectional view thereof.
  • FIG. 1 is an external perspective view of an image input / output device 1.
  • FIG. The projection device and the three-dimensional shape detection device according to the embodiments of the present invention are devices included in the image input / output device 1.
  • the image input / output device 1 includes a digital camera mode functioning as a digital camera, a webcam mode functioning as a web camera, a stereo image mode for detecting a three-dimensional shape to obtain a three-dimensional image, and a curved original.
  • a digital camera mode functioning as a digital camera
  • a webcam mode functioning as a web camera
  • a stereo image mode for detecting a three-dimensional shape to obtain a three-dimensional image
  • a curved original Various modes such as a flattened image mode for acquiring a flattened image obtained by flattening the image and the like are provided.
  • FIG. 1 in particular, in the stereoscopic image mode or the flattened image mode, in order to detect the three-dimensional shape of the original P as a subject, a stripe formed by alternately arranging light and dark from an image projection unit 13 described later. The shape of the pattern light is projected to show the shape of the shape.
  • the image input / output device 1 has an imaging head 2 formed in a substantially box shape, a pipe-shaped arm member 3 having one end connected to the imaging head 2, and an end connected to the other end of the arm member 3. And a base 4 formed in a substantially L-shape in plan view.
  • the imaging head 2 is a case in which an image projection unit 13 and an image imaging unit 14 described below are included.
  • a cylindrical lens barrel 5 is disposed at the center
  • a finder 6 is disposed diagonally above the lens barrel 5
  • a flashlight is disposed on the opposite side of the finder 6.
  • Menu 7 is arranged. Between the finder 6 and the flash 7 in front of the imaging head 2, a part of a lens of an imaging optical system 21, which is a part of an image imaging unit 14 described later, is exposed to the outside. An image of a subject is input through this exposed portion of the imaging optical system.
  • the lens barrel 5 is a cover that is formed so as to protrude from the front of the imaging head 2 and includes a projection optical system 20 that is a part of the image projection unit 13 therein.
  • the projection optical system 20 is held by the lens barrel 5, the entire projection optical system 20 can be moved for focus adjustment, and the projection optical system 20 is prevented from being damaged.
  • the finder 6 is configured by an optical lens disposed through the rear face and the front face of the imaging head 2. When the user looks into the back surface of the imaging head 2, a range that substantially matches the range where the imaging optical system 21 forms an image on the CCD 22 can be seen.
  • the flash 7 is, for example, a light source for supplementing a required amount of light in the digital camera mode, and is configured by a discharge tube filled with xenon gas. Therefore, it can be used repeatedly by discharging from a capacitor (not shown) built in the imaging head 2.
  • a release button 8 is arranged on the near side, a mode switching switch 9 is arranged behind the release button 8, and a monitor LCD 10 is arranged on the opposite side of the mode switching switch 9. ing.
  • the release button 8 is constituted by a two-stage push-button switch that can be set in two states, a "half-pressed state” and a "fully-pressed state”.
  • the state of the release button 8 is managed by a processor 15 described later.
  • the well-known auto focus (AF) and automatic exposure (AF) functions are activated when the release button 8 is "half-pressed”, and the focus, aperture, and shirt speed are adjusted.
  • imaging is performed.
  • the mode switching switch 9 is a switch for setting various modes such as a digital camera mode, a webcam mode, a stereoscopic image mode, a flattened image mode, and an off mode.
  • the state of the mode switch 9 is managed by the processor 15, and the state of the mode switch 9 is Is detected by the processor 15, the processing of each mode is executed.
  • the monitor LCD 10 is configured by a liquid crystal display (Liquid Crystal Display), and receives an image signal from the processor 15 to display an image to a user.
  • the monitor LCD 10 displays a captured image in the digital camera mode or the webcam mode, a three-dimensional shape detection result image in the stereoscopic image mode, a flattened image in the flattened image mode, and the like.
  • An antenna 11 as an RF (wireless) interface and a connecting member 12 for connecting the imaging head 2 and the arm member 3 are arranged above the side surface of the imaging head 2.
  • the antenna 11 is used to transmit captured image data acquired in a digital camera mode or stereoscopic image data acquired in a stereoscopic image mode via an RF driver 24 to be described later to an external interface by wireless communication.
  • the connecting member 12 is formed in a ring shape, and a female screw is formed on an inner peripheral surface thereof.
  • the connecting member 12 is rotatably fixed to a side surface of the imaging head 2.
  • a male screw is formed at one end of the arm member 3.
  • the arm member 3 is for holding the imaging head 2 at a predetermined imaging position so as to be changeable, and is formed of a bellows-like pipe that can be bent into an arbitrary shape. Therefore, the imaging head 2 can be directed to an arbitrary position by the arm member 3.
  • the base 4 is mounted on a mounting table such as a desk, and supports the imaging head 2 and the arm member 3. Since the base 4 is formed in a substantially L-shape in plan view, the imaging head 2 and the like can be stably supported.
  • the base 4 and the arm member 3 are detachably connected to each other, which makes it easy to carry the image input / output device 1 and also allows the image input / output device 1 to be stored in a small space.
  • FIG. 2 is a diagram schematically showing an internal configuration of the imaging head 2. Inside the imaging head 2 , An image projection unit 13, an image capturing unit 14, and a processor 15.
  • the image projection unit 13 is a unit for projecting an arbitrary projection image on a projection surface.
  • the image projection unit 13 includes a substrate 16, a plurality of LEDs 17 (hereinafter collectively referred to as “LED array 17 A”), a light source lens 18, a projection LCD 19, and a projection optical system 20 along the projection direction. Have.
  • the image projection unit 13 will be described later in detail with reference to FIGS. 3 (a) to 3 (c).
  • the image capturing section 14 is a unit for capturing an image of a document P as a subject.
  • the image capturing section 14 includes an image capturing optical system 21 and a CCD 22 along the light input direction.
  • the imaging optical system 21 includes a plurality of lenses.
  • the imaging optical system 21 has a well-known autofocus function, and automatically adjusts the focal length and aperture to form an image of an external force on the CCD 22.
  • the CCD 22 has photoelectric conversion elements such as CCD (Charge Coupled Device) elements arranged in a matrix.
  • the CCD 22 generates a signal corresponding to the color and intensity of light of an image formed on the surface of the CCD 22 via the imaging optical system 21, converts the signal into digital data, and outputs the digital data to the processor 15.
  • a flash 7, a release button 8, a mode switching switch 9, an external memory 27, and a cache memory 28 are electrically connected to the processor 15. Further, the processor 15 is connected to the monitor LCD 10 via the monitor LCD driver 23, the antenna 11 via the RF driver 24, the battery 26 via the power supply interface 25, and the light source driver 29 via the light source driver 29.
  • the LED array 17A is connected, the projection LCD 19 is connected via the projection LCD driver 30, and the CCD 22 is connected via the CCD interface 31.
  • the external memory 27 is a detachable flash ROM, which is used for a digital camera mode, a webcam mode, and a stereoscopic image mode!
  • the stored image and three-dimensional information are stored.
  • an SD card, a CompactFlash (registered trademark) card, or the like can be used as the external memory 27.
  • the cache memory 28 is a high-speed storage device. For example, in digital camera mode, The captured image is transferred to the cache memory 28 at a high speed, processed by the processor 15, and then stored in the external memory 27. Specifically, SDRAM, DDRR AM, or the like can be used.
  • the power supply interface 25, the light source driver 29, the projection LCD driver 30, and the CCD interface 31 are configured by an IC (Integrated Circuit).
  • the power supply interface 25, the light source driver 29, the projection LCD driver 30, and the CCD interface 31 control the notebook 26, the LED array 17A, the projection LED 19, and the CCD 22, respectively.
  • FIG. 3A is an enlarged view of the image projection unit 13
  • FIG. 3B is a plan view of the light source lens 18, and
  • FIG. 3C shows an arrangement relationship between the projection LCD 19 and the CCD 22.
  • the image projection unit 13 includes the substrate 16, the LED array 17A, the light source lens 18, the projection LCD 19, and the projection optical system 20 along the projection direction.
  • the substrate 16 is for mounting the LED array 17A and for performing electrical wiring with the LED array 17A.
  • a substrate formed by applying an insulating resin to an aluminum substrate and forming a pattern by a capillary electroless plating, or a substrate having a single layer or a multilayer structure having a core of a force epoch substrate. can be used.
  • the LED array 17 A is a light source that emits radial light toward the projection LCD 19.
  • the LED array 17A is composed of a plurality of LEDs 17 (light emitting diodes) arranged in a staggered manner on the substrate 16.
  • the plurality of LEDs 17 are bonded to the substrate 16 via a silver paste, and are electrically connected to the substrate 16 via bonding wires.
  • the efficiency of converting electricity into light is increased as compared with the case where an incandescent light bulb, a nitrogen lamp, or the like is used as the light source.
  • generation of infrared rays and ultraviolet rays can be suppressed. Therefore, according to the present embodiment, the light source can be driven with low power consumption, and power saving and long life can be achieved. Further, the temperature rise of the device can be reduced.
  • the LED 17 since the LED 17 generates extremely low heat rays as compared with a halogen lamp or the like, a resin lens can be used as the light source lens 18 and the projection optical system 20 described later. Therefore, the light source lens 18 and the projection optical system 20 can be configured inexpensively and lightly in comparison with the case where a glass lens is employed.
  • Each of the LEDs 17 constituting the LED array 17A emits the same emission color.
  • Each of the LEDs 17 uses four elements of Al, In, Ga, and P as materials, and emits an amber color.
  • the LED array 17A includes 59 LEDs 17, and each LED 17 is driven at 50 mW (20 mA, 2.5V). Therefore, all 59 LEDs 17 are driven with approximately 3W of power consumption.
  • the luminous power emitted from each LED 17 The brightness as the luminous flux when illuminated from the projection optical system 20 through the light source lens 18 and the projection LCD 19 is set to about 25 ANSI lumens even in the case of full illumination. T!
  • the light source lens 18 is a lens as a condensing optical system that condenses light emitted radially from the LED array 17A, and is made of an optical resin represented by acrylic.
  • the light source lens 18 projects at a position facing each LED 17 of the LED array 17A, and supports a convex lens portion 18a protruding toward the LCD 19 side, and the lens portion 18a.
  • Epoxy sealing for the purpose of sealing the LED 17 and bonding the substrate 16 and the light source lens 18 to the base portion 18b and the opening inside the base portion 18b and surrounding the LED array 17A. It has a member 18c and positioning pins 18d projecting from the base portion 18b to the substrate 16 side and connecting the light source lens 18 and the substrate 16.
  • the light source lens 18 is fixed on the substrate 16 by inserting the positioning pins 18d into the long holes 16 formed in the substrate 16 while enclosing the LED array 17A inside the opening. It is.
  • the light source lens 18 can be arranged in a small space. Also, in addition to the function of mounting the LED array 17A on the substrate 16, a function of supporting the light source lens 18 is also provided, so that it is not necessary to separately provide a component for supporting the light source lens 18, and the number of parts can be reduced. Can be reduced.
  • Each lens unit 18a is arranged at a position facing each LED 17 of the LED array 17A in a one-to-one relationship.
  • each LED 17 is efficiently condensed by each lens unit 18a facing each LED 17, and projected as highly directional radiation light as shown in Fig. 3 (a). Irradiated on LCD19.
  • the reason why the directivity is increased in this way is that by making light incident on the projection LCD 19 substantially perpendicularly, in-plane transmittance unevenness can be suppressed.
  • the reason why the directivity is improved is that the projection optical system 20 has telecentric characteristics and its incident NA is about 0.1, so that only light within vertical ⁇ 5 ° can pass through the internal aperture. This is because it is regulated.
  • the emission angle of the light from the LED 17 is set to be perpendicular to the projection LCD 19 and that most of the luminous flux is within ⁇ 5 °. This is because, when light with a perpendicular force deviating from the projection LCD 19 is incident, the transmittance changes depending on the incident angle due to the optical rotation of the liquid crystal, and this is a force that causes transmittance unevenness.
  • the projection LCD 19 is a spatial modulation element that spatially modulates light condensed through the light source lens 18 and outputs image signal light to the projection optical system 20.
  • the projection LCD 19 is composed of a plate-like liquid crystal display (Liquid Crystal Display) having different vertical and horizontal sizes.
  • each pixel constituting the projection LCD 19 is composed of one pixel column linearly arranged along the longitudinal direction of the projection LCD 19, and one pixel column thereof. Is arranged so that another pixel row shifted by a predetermined distance in the longitudinal direction of the projection LCD 19 is alternately arranged in parallel.
  • the front side of the drawing corresponds to the front side of the imaging head 2, and light is emitted toward the projection LCD 19 from the back side of the drawing.
  • the light of the subject power goes from the troublesome side of the paper to the back side, and the subject image is formed on the CCD 22.
  • the pixels constituting the projection LCD 19 in a staggered manner in the longitudinal direction, the light that is spatially modulated by the projection LCD 19 in the direction (short direction) orthogonal to the longitudinal direction is obtained.
  • a stripe-shaped pattern light in which light and dark are alternately arranged is projected toward an object to detect a three-dimensional shape of the object.
  • the boundary between light and dark can be controlled at a 1Z2 pitch by matching the direction of the stripe with the short direction of the projection LCD 19. Therefore, a three-dimensional shape can be detected with high accuracy.
  • the projection LCD 19 and the CCD 22 are arranged in a relationship as shown in FIG. 3 (c). More specifically, since the wide surface of the projection LCD 19 and the wide surface of the CCD 22 are arranged so as to face in substantially the same direction, an image projected from the projection LCD 19 onto the projection surface is formed on the CCD 22. When forming an image, it is possible to form the projected image as it is without bending the projected image with a nope mirror or the like.
  • the CCD 22 is arranged on the longitudinal direction side of the projection LCD 19 (the direction in which the pixel columns extend).
  • the inclination between the CCD 22 and the subject should be controlled at a 1Z2 pitch. This makes it possible to detect three-dimensional shapes with high accuracy.
  • the projection optical system 20 includes a plurality of lenses that project the image signal light that has passed through the projection LCD 19 toward the projection surface.
  • the projection optical system 20 is composed of a telecentric lens made of a combination of glass and resin. Telecentric refers to a configuration in which the principal ray passing through the projection optical system 20 is parallel to the optical axis in the space on the incident side, and the position of the exit pupil is infinite. By making it telecentric in this way, it is possible to project only the light that passes through the projection LCD 19 at a vertical angle of 5 ° as described above, so that the image quality can be improved.
  • FIGS. 4A to 4C are views for explaining the arrangement of the LED array 17A.
  • FIG. 4A is a diagram showing an illuminance distribution of light passing through the light source lens 18
  • FIG. 4B is a plan view showing an arrangement state of the LED array 17A
  • FIG. Synthesis in It is a figure showing an illuminance distribution.
  • the projection is designed to reach the surface of LCD19.
  • the plurality of LEDs 17 are arranged in a staggered pattern on the substrate 16. More specifically, a plurality of LEDs 17 are arranged in series at a d pitch, and a plurality of LEDs are arranged in parallel at a 3 / 2d pitch. Thus, every other row is moved lZ2d in the same direction with respect to the adjacent row.
  • the distance between one LED 17 and the LEDs 17 around the one LED 17 is set to be d (that is, the LEDs 17 are arranged in a triangular lattice).
  • the length of d is determined so as to be equal to or less than a full width half maximum (FWHM) of an illuminance distribution formed in the projection LCD 19 by light emitted from one of the LEDs 17. .
  • FWHM full width half maximum
  • the combined illuminance distribution of light that reaches the surface of the projection LCD 19 through the light source lens 18 becomes a substantially linear shape including small ripples as shown in FIG.
  • Light can be applied to the surface substantially uniformly. Therefore, illuminance unevenness in the projection LCD 19 can be suppressed, and as a result, a high-quality image can be projected.
  • FIG. 5 is an electrical block diagram of the image input / output device 1. The description of the configuration already described above is omitted.
  • the processor 15 includes a CPU 35, a ROM 36, and a RAM 37.
  • the CPU 35 performs various kinds of processing by using the program stored in the ROM 36 and the RAM 37.
  • the processing performed under the control of the CPU 35 includes detection of a pressing operation of the release button 8, capture of image data from the CCD 22, transfer and storage of the image data, detection of the state of the mode switch 9, and the like.
  • the ROM 36 includes a camera control program 36a, a pattern light photographing program 36b, a luminance image generation program 36c, a code image generation program 36d, a code boundary extraction program 36e, a lens aberration correction program 36f, and a triangle.
  • Survey calculation program 36g and manuscript The attitude calculation program 36h and the plane conversion program 36i are stored.
  • the camera control program 36a is a program relating to control of the entire image input / output device 1 including the main processing shown in FIG.
  • the no-turn light photographing program 36b is a program for imaging a state in which the no-turn light is projected on a subject in order to detect the three-dimensional shape of the document P, and a state in which the no-turn light is projected.
  • the luminance image generation program 36c includes a pattern light image captured in a state where the pattern light is projected by the pattern light photographing program 36b and a pattern light image captured in a state where the pattern light is projected in a state where the pattern light is projected. This is a program that calculates the difference from the image and generates a luminance image of the projected pattern light.
  • a plurality of types of pattern light are projected in time series and imaged for each pattern light, and the difference between each of the plurality of captured images with pattern light and the image without pattern light is calculated. , A plurality of types of luminance images are generated.
  • the code image generation program 36d is a program for superimposing a plurality of luminance images generated by the luminance image generation program 36c and generating a code image in which a predetermined code is assigned to each pixel.
  • the code boundary extraction program 36e uses the code image generated by the code image generation program 36d and the luminance image generated by the luminance image generation program 36c to determine the code boundary coordinates with sub-pixel accuracy. It is a program.
  • the lens aberration correction program 36f is a program for correcting the aberration of the imaging optical system 20 with respect to the boundary coordinates of the code obtained with the sub-pixel accuracy by the code boundary extraction program 36e.
  • the triangulation calculation program 36g is a program that calculates three-dimensional coordinates in the real space related to the boundary coordinates from the boundary coordinates of the code corrected by the lens aberration correction program 36f.
  • the original posture calculation program 36h is a program for estimating and obtaining the three-dimensional shape of the original P from the three-dimensional coordinates calculated by the triangulation calculation program 36g.
  • the plane conversion program 36i is a program that generates a flattened image that also captures the frontal force of the document P based on the three-dimensional shape of the document P calculated by the document attitude calculation program 36h. It is.
  • the RAM 37 includes a pattern light image storage unit 37a, a pattern light non-image storage unit 37b, a luminance image storage unit 37c, a code image storage unit 37d, a code boundary coordinate storage unit 37e, and an ID storage unit.
  • 37f an aberration correction coordinate storage unit 37g, a three-dimensional coordinate storage unit 37h, a document posture calculation result storage unit 37i, a plane conversion result storage unit 37j, a projection image storage unit 37k, and a marking area 371 are stored. Assigned as an area.
  • the pattern light existence image storage unit 37a stores a pattern light existence image obtained by imaging a state where the no-turn light is projected on the document P by the pattern light photographing program 36b.
  • the pattern light absence image storage unit 37b projects the pattern light onto the document P by the pattern light photographing program 36b, and stores the pattern light absence image obtained by capturing the state.
  • the luminance image storage unit 37c stores the luminance image generated by the luminance image generation program 36c.
  • the code image storage unit 37d stores a code image generated by the code image generation program 36d.
  • the code boundary coordinate storage unit 37e stores the boundary coordinates of each code obtained with the sub-pixel accuracy to be extracted by the code boundary extraction program 36e.
  • the ID storage unit 37f stores an ID or the like assigned to a luminance image having a change in brightness at a pixel position having a boundary.
  • the aberration correction coordinate storage unit 37g stores the boundary coordinates of the code whose aberration has been corrected by the lens aberration correction program 36f.
  • the three-dimensional shape coordinate storage unit 37h stores the three-dimensional coordinates of the real space calculated by the triangulation calculation program 36g.
  • the document orientation calculation result storage unit 37i stores parameters relating to the three-dimensional shape of the document P calculated by the document orientation calculation program 36h.
  • the plane conversion result storage unit 37j stores the plane conversion result generated by the plane conversion program 36.
  • the projection image storage section 37k stores image information projected from the image projection section 13.
  • the working area 371 stores data temporarily used for the operation in the CPU 15.
  • FIG. 6 is a flowchart of a main process executed under the control of the CPU 35. Note that digital camera processing (S605), webcam processing (S607), stereoscopic image processing (S607), and flattened image processing (S611) in the main processing. Details will be described later.
  • a key scan for determining the state of the mode switching switch 9 is performed (S603), and it is determined whether or not the setting of the mode switching switch 9 is the digital camera mode (S604). (S604: Yes), the process proceeds to the digital camera process described below (S605).
  • the mode is not the digital camera mode (S604: No)
  • the mode is not the webcam mode (S605: No)
  • the mode is not the stereoscopic image mode (S608: No)
  • the mode switching switch 9 is in the off mode (S612). If not, the mode switching switch 9 is not (S612: No). The process is repeated. If it is determined in step S612 that the mode is the off mode (S612: Yes), the process ends.
  • FIG. 7 is a flowchart of the digital camera process (S605 in FIG. 6).
  • the digital camera process is a process of acquiring an image captured by the image capturing unit 14.
  • a high resolution setting signal is transmitted to the CCD 22 (S701).
  • a high quality captured image can be provided to the user.
  • a finder image (an image in a range visible through the finder 6) is displayed on the monitor LCD 10 (S702). Therefore, the user should be able to monitor the LCD without using the viewfinder 6.
  • the image displayed in 10 allows the user to confirm the captured image (imaging range) before actual imaging.
  • the release button 8 is scanned (S703a), and it is determined whether or not the release button 8 is half-pressed (S703b). If it is half-pressed (S703b: Yes), activate the auto focus (AF) and auto exposure (AE) functions and adjust the focus, aperture, and shutter speed (S7 03c). If it is not half-pressed (S703b: No), the processing from S703a is repeated.
  • the release button 8 is scanned again (S703d), and it is determined whether or not the release button 8 is fully pressed (S703e). If it is fully pressed (S703e: Yes), it is determined whether or not the flash mode is set (S704).
  • the mode is the flash mode (S704: Yes)
  • the flash 7 is emitted (S705).
  • S706 shooting is performed (S706). If the mode is not the flash mode (S704: No), shooting is performed without emitting the flash 7 (S706). If it is determined in S703e that the button has not been fully pressed (S703e: No), the processing of S703a is repeated.
  • the captured image is transferred from the CCD 22 to the cache memory 28 (S707), and the captured image stored in the cache memory 28 is displayed on the monitor LCD 10 (S708).
  • the captured image can be displayed on the monitor LCD 10 at a higher speed than when the captured image is transferred to the main memory.
  • the captured image is stored in the external memory 27 (S709).
  • FIG. 8 is a flowchart of the webcam process (S607 in FIG. 6).
  • the webcam process is a process of transmitting a captured image (including a still image and a moving image) captured by the image capturing unit 14 to an external network.
  • a captured image including a still image and a moving image
  • FIG. 8 it is assumed that a moving image is transmitted to an external network as a captured image.
  • a low-resolution setting signal is transmitted to the CCD 22 (S801), a well-known auto focus and automatic exposure function is activated, and the focus, aperture, and shutter speed are adjusted (S802). Then, shooting is started (S803).
  • the captured image is displayed on the monitor LCD 10 (S804), the finder image is stored in the projection image storage unit 37k (S805), and a projection process described later is performed (S806).
  • the image stored in 37k is projected on the projection plane.
  • the captured image is transferred from the CCD 22 to the cache memory 28 (S807), and the captured image transferred to the cache memory 28 is transmitted to an external network via the RF interface. (S808).
  • FIG. 9 is a flowchart of the projection process (S806 in FIG. 8).
  • This process is a process of projecting an image stored in the projection image storage unit 37k from the projection image projection unit 13 onto a projection plane.
  • this processing first, it is checked whether or not the image is stored in the projection image storage unit 37k (S901). If it is stored (S901: Yes), the image stored in the projection image storage unit 37k is transferred to the projection LCD driver 30 (S902), and an image signal corresponding to the image is transmitted from the projection LCD driver 30 to the projection LCD 19. And display the image on the projection LCD (S903)
  • the light source driver 29 is driven (S904), the LED array 17A is turned on by an electric signal from the light source driver 29 (S905), and the process is terminated.
  • the LED array 17A when the LED array 17A is turned on, the light emitted from the LED array 17A reaches the projection LCD 19 via the light source lens 18, where the image signal transmitted from the projection LCD driver 30 is transmitted. Is subjected to spatial modulation in accordance with, and is output as image signal light. Then, the image signal light output from the projection LCD 19 is projected as a projection image on a projection plane via the projection optical system 20.
  • FIG. 10 is a flowchart of the stereoscopic image processing (S609 in FIG. 6).
  • the stereoscopic image processing is a process of detecting a three-dimensional shape of a subject, acquiring, displaying, and projecting a three-dimensional shape detection result image as the stereoscopic image.
  • a high-resolution setting signal is transmitted to the CCD 22 (S1001), and a finder image is displayed on the monitor LCD10 (S1002).
  • the release button 8 is scanned (S1003a), and it is determined whether or not the release button 8 is half-pressed (S1003b). If it is half-pressed (S1003b: Yes), the auto focus (AF) and auto exposure (AE) functions are activated, and the focus, aperture, and shutter speed are adjusted (S1003c). If not half-pressed (S1003b: No), the process from S1003a is repeated.
  • the release button 8 is scanned again (S1003d), and it is determined whether or not the release button 8 is fully pressed (S1003e). If it is fully pressed (S1003e: Yes), it is determined whether or not the flash mode power is on (S1003f).
  • the mode is the flash mode (S1003f: Yes)
  • the flash 7 is emitted (S1003g), and shooting is performed (S1003h).
  • the flash mode is not set (S1003f: No)
  • shooting is performed without emitting flash 7 (S1003h).
  • the processing from S1003a is repeated.
  • the three-dimensional shape detection result in the three-dimensional shape detection processing (S1006) is stored in the external memory 27 (S1007), and the three-dimensional shape detection result is displayed on the monitor LCD 10 (S1008).
  • the three-dimensional shape detection result is displayed as a set of three-dimensional coordinates (XYZ) in the real space of each measurement vertex.
  • the 3D shape detection result image as a 3D image (3D CG image) displaying the surface by connecting measurement vertices as a 3D shape detection result with a polygon is stored in the projection image storage unit 37k.
  • a projection process similar to the projection process of S806 in FIG. 8 is performed (S1010).
  • the three-dimensional coordinates obtained by using the inverse function of the equation for converting the coordinates on the projection LCD 19 into three-dimensional space coordinates described with reference to FIGS. 18 (a) and 18 (b) are used.
  • By calculating the coordinates on the projection LCD 19 it is possible to project the three-dimensional shape result coordinates on the projection plane.
  • FIG. 11 (a) is a diagram for explaining the principle of the spatial code method used for detecting a three-dimensional shape in the above-described three-dimensional shape detection processing (S1006 in FIG. 10).
  • FIG. 11 (b) is a diagram showing a pattern light different from FIG. 11 (a). Any of the patterns shown in FIGS. 11A and 11B may be used as the pattern light, and a gray level code which is a multi-tone code may be used. [0126] The details of this spatial code method are described in detail in Kosuke Sato and one other, "Distance Image Input Using Spatial Coded Rider", Transactions of the Institute of Electronics, Information and Communication Engineers, 85Z3Vol. J 68-D No3, p369-375. It has been disclosed.
  • the spatial code method is a type of method for detecting the three-dimensional shape of a subject based on triangulation between the projected light and the observed image. It is characterized in that it is set apart from the container O by a distance D, and the space is elongated and divided into fan-shaped areas and encoded.
  • each fan-shaped area is coded by the mask into a bright “1” and a dark “0”.
  • a code corresponding to the direction ⁇ is assigned to each fan-shaped area, and the boundary of each code can be regarded as one slit light beam. Therefore, the scene is photographed by a camera as an observation device for each mask, and each bit plane of the memory is configured by converting the light and dark pattern into a binary image.
  • the contents of the memory at this address give the projected light code, ie, ⁇ .
  • the coordinates of the point of interest are determined from ⁇ and ⁇ .
  • the mask patterns used in this method include mask patterns A and A in FIG.
  • the point Q in Fig. 11 (a) indicates the boundary between the area 3 (011) and the area 4 (100). If the mask A shifts by 1, the code of the area 7 (111) may be generated. There is. In other words, a large error may occur when the hamming distance between adjacent regions is 2 or more.
  • FIG. 12A is a flowchart of the three-dimensional shape detection process (S1006 in FIG. 10).
  • This imaging process uses a plurality of pure binary code mask patterns shown in FIG. 11 (a) to generate striped pattern light (see FIG. 1) from the image projection unit 13 in which light and dark are alternately arranged.
  • This is a process of acquiring a pattern light presence image that captures the state where each pattern light is projected onto the subject in a time series manner, and a pattern light absence image that captures the state where the no-turn light is projected. is there.
  • the three-dimensional measurement process is a process of actually measuring the three-dimensional shape of the subject using the image with pattern light and the image without pattern light acquired by the imaging process.
  • the processing ends.
  • FIG. 12B is a flowchart of the imaging process (S1210 in FIG. 12A). This processing is executed based on the No-turn light photographing program 36a.
  • the acquired pattern light non-image is stored in the pattern light non-image storage unit 37b.
  • the counter i is initialized (S1212), and it is determined whether or not the value of the counter i is the maximum value imax (S1213).
  • the i-th mask pattern among the mask patterns to be used is displayed on the projection LCD 19, and The i-th pattern light projected by the i-th mask pattern is projected onto the projection surface (S1214), and the state where the pattern light is projected is photographed by the image pickup section 14 (S1215).
  • FIG. 12 (c) is a flowchart of the three-dimensional measurement process (S1220 in FIG. 12 (a)). This processing is executed based on the luminance image generation program 36c.
  • a luminance image is generated (S1221).
  • a luminance image for each pattern light presence / absence image is generated.
  • the generated luminance image is stored in the luminance image storage unit 37c. Also, a number corresponding to the number of the pattern light is assigned to each luminance image.
  • the code image generation program 36d generates a code image coded for each pixel by combining the generated luminance images using the spatial coding method described above (S1222).
  • This code image is generated by comparing each pixel of the brightness image related to the pattern light image stored in the brightness image storage unit 37c with the previously set brightness threshold, and combining the results. be able to.
  • the generated code image is stored in the code image storage unit 37d.
  • lens aberration correction processing is performed by the lens aberration correction program 36f (S1224).
  • a real space conversion process based on the triangulation principle is performed by the triangulation calculation program 36g (S1225).
  • the code boundary coordinates in the CCD space after the aberration correction is performed by this process are converted into three-dimensional coordinates in the real space, and the three-dimensional coordinates as a three-dimensional shape detection result are obtained.
  • FIG. 13 is a diagram for explaining the outline of the code boundary coordinate detection process (S1223 in FIG. 12). is there.
  • the boundary between the actual pattern light and dark in the CCD space is indicated by a boundary line K, and the pattern light is coded by the above-mentioned space code method, and the boundary between the code 1 and other codes is shown in the figure. It is the figure shown by the thick line.
  • this code boundary coordinate detection processing is to detect code boundary coordinates with subpixel accuracy.
  • the detection position is moved to the left by “2”, and at the position of the detection position curCCDX-2, the code image of interest is referenced by referring to the code image.
  • (CurCode) force Searches for a pixel that changes to another code (boundary pixel (pixel H at the detection position of curCCDX-2)) and a predetermined range centered on that pixel (3 pixels in the Y-axis direction in this embodiment) And a range of +2 pixels) (part of the pixel region specifying means).
  • the luminance threshold bTh may be a fixed value given in advance, which may be calculated from a predetermined range (for example, half the average of the luminance of each pixel). Thus, the boundary between light and dark can be detected with sub-pixel accuracy.
  • the detection position is moved to the right side of “1” from curCCDX-2, and the same processing as described above is performed for curCCDX-1 to obtain a representative value in curCCDX-1 (boundary coordinate detection Part of the process).
  • the boundary coordinates of the code can be detected with high precision and sub-pixel accuracy, and the real space conversion processing (S1225 in FIG. 12) based on the triangulation principle described above is performed using the boundary coordinates. This makes it possible to detect the three-dimensional shape of the subject with high accuracy.
  • the region constituted by the range of 2 has been described as a pixel region for obtaining an approximation, the range of the Y axis and the X axis of this pixel region is not limited to these. For example, only a predetermined range in the Y-axis direction around the boundary pixel at the curC CDX detection position may be set as the pixel region.
  • FIG. 14 is a flowchart of the code boundary coordinate detection process (S1223 in FIG. 12 (c)). This processing is executed based on the code boundary extraction program 36e. In this process, first, each element of the code boundary coordinate sequence in the CCD space is initialized (S1401), and curCCDX is set as a start coordinate (S1402).
  • curCode is set to "0" (S1404). That is, curCode is initially , Set to the minimum value.
  • curCode is smaller than the maximum code (S1405). If curCode is smaller than the maximum code (S1405: Yes), the code image is searched for in curCCDX by searching for a pixel of curCode (S1406), and it is determined whether or not a pixel of curCode exists (S1407).
  • the boundary is temporarily set to the curCode larger than the curCode. The processing proceeds assuming that the pixel is located at the pixel position of the pixel.
  • curCode does not exist (S1407: No), or if there is a pixel with a Code larger than curCode! / ⁇ (S1409: No), the next curCode Calculate “1” to the curCode to obtain the boundary coordinates (S1411), and repeat the processing from S1405.
  • curCCDX is changed, and when curCCDX finally becomes larger than the end coordinate (S1403), that is, when the detection of the start coordinate force to the end coordinate is completed, the process is terminated.
  • FIG. 15 is a flowchart of the processing (S1410 in FIG. 14) for obtaining the code boundary coordinates with sub-pixel accuracy.
  • this processing first, from among the luminance images stored in the luminance image storage unit 37c in S1221 in FIG. 12C, pixels having a Code larger than the curCode detected in S1409 in FIG. At the pixel position, all the luminance images having a change in brightness are extracted (S1501).
  • the mask pattern number of the extracted luminance image is stored in array PatID []
  • the number of extracted luminance images is stored in noPatID (S1502).
  • the arrays PatID [] and noPatID are stored in the ID storage unit 37f.
  • the counter i is initialized (S1503), and it is determined whether or not the value of the counter i is smaller than oPatID (S1504). As a result, if it is determined that the brightness is small (S1504: Yes), the counter calculates the CCDY value of the boundary for the luminance image having the corresponding mask pattern number of PatID [i], and transfers the value to f CCDY [i]. It is stored (S1505).
  • the median value of fCCDY [i] obtained in the processing of S1505 is calculated, and the result is used as a boundary value, or the boundary value is calculated by statistical calculation.
  • the boundary coordinates are represented by the coordinates of curCCDX and the weighted average value obtained in S1507, the boundary coordinates are stored in the code boundary coordinate storage unit 37e, and the process ends.
  • Fig. 16 shows the CCD image of the boundary for the luminance image having the mask pattern number of PatID [i].
  • 16 is a flowchart of a process for obtaining a Y value (S1505 in FIG. 15).
  • the value of "dx” can be set to an appropriate integer including "0" in advance, and in the example described with reference to Fig. 13, this "dx” is set to "2". Therefore, according to the example of FIG. 13, this ccdx is set to “curCCDX-2J”.
  • pixel I is detected as a pixel candidate having a boundary, and an eCCDY value is obtained at the position of pixel I.
  • FIGS. 17 (a) to 17 (c) are diagrams for explaining the lens aberration correction processing (S1224 in FIG. 12 (c)).
  • the lens aberration correction processing as shown in FIG. 17A, the image was taken in response to the fact that the incident light flux was displaced by the ideal lens due to the difference of the imaging optical system 21, and the position was changed. This is a process of correcting the position of a pixel to a position where an image should be originally formed.
  • This aberration correction is performed, for example, by calculating the aberration of the optical system in the imaging range of the imaging optical system 21 using the half angle of view Ma, which is the angle of incident light, as shown in Fig. 17 (b). Correct based on the data obtained.
  • This aberration correction processing is executed based on the lens aberration correction program 36f, is stored in the code boundary coordinate storage unit 37e, is performed according to the code boundary coordinates, and the data subjected to the aberration correction processing is Stored in the aberration correction coordinate storage unit 37g.
  • the camera calibration (approximation) of the following (1) to (3) for converting arbitrary point coordinates (ccdx, ccdy) in the real image to coordinates (ccdcx, ccdcy) in the ideal camera image Equation) is used for correction.
  • the focal length of the imaging optical system 21 is focal length (mm)
  • the ccd pixel length is pixel length (mm)
  • FIGS. 18 (a) and 18 (b) show three-dimensional coordinates in a three-dimensional space calculated from coordinates in a CCD space in a real space conversion process based on the principle of triangulation (S1225 in FIG. 12 (c)). It is a figure for explaining a method.
  • the three-dimensional coordinates in the three-dimensional space of the aberration-corrected code boundary coordinates stored in the aberration-corrected coordinate storage unit 37g are calculated by the triangulation operation program 36g. Is calculated.
  • the three-dimensional coordinates calculated in this way are stored in the three-dimensional coordinate storage unit 37h.
  • the optical axis direction of the imaging optical system 21 is the Z axis, and the imaging optical system is along the Z axis.
  • Principal point position force 1 The point away from VPZ is the origin, the horizontal direction to the image input / output device 1 is the X axis, and the vertical direction is the Y axis.
  • the projection angle ⁇ p from the image projection unit 13 to the three-dimensional space (X, ⁇ , Z), and the distance between the optical axis of the imaging lens optical system 20 and the optical axis of the image projection unit 13 are D ,
  • the field of view in the Y direction of the imaging optical system 21 from Yftop to Yfbottom, the field of view in the X direction from Xfstart to Xfend, the length (height) of the CCD 22 in the Y axis direction is Hc, and the length (width) in the X axis direction. Is Wc.
  • the projection angle ⁇ p is given based on a code assigned to each pixel.
  • the three-dimensional space position (X, Y, Z) corresponding to the arbitrary coordinates (ccdx, ccdy) of the CCD 22 is a point on the imaging plane of the CCD 22, a projection point of the pattern light, It can be obtained by solving five equations for the triangle formed by and the point that intersects the Y plane.
  • (l) Y -(ta ⁇ ⁇ p) Z + PPZ + tan ⁇ p — D + cmp (Xtarget) (2)
  • Y -(Ytarget / VPZ) Z + Yt arget
  • the principal point position (0, 0, PPZ) of the image projection unit 13 the field of view in the Y direction of the image projection unit 13 is Ypf bottom from Ypftop, the field of view in the X direction is Xpfend from Xpfstart,
  • the length (height) of the projection LCD 19 in the Y-axis direction is Hp, and the length (width) in the X-axis direction is Wp.
  • FIG. 19 is a flowchart of the flattened image processing (S611 in FIG. 6).
  • the flattened image processing is performed, for example, when capturing an image of a document P in a curved state as shown in FIG. 1 or capturing an image of a rectangular document obliquely (the captured image has a trapezoidal shape).
  • This is also a process of acquiring and displaying a flattened image that is flattened in a state where the original is not curved or captured in a vertical direction.
  • a high resolution setting signal is transmitted to the CCD 22 (S1901), and a finder image is displayed on the monitor LCD10 (S1902).
  • the release button 8 is scanned (S1903a), and it is determined whether or not the release button 8 is half-pressed (S1903b). If it is half-pressed (SI 903b: Yes), it activates the auto focus (AF) and auto exposure (AE) functions and adjusts the focus, aperture, and shutter speed (S1903c). If it is not half-pressed (S1903b: No), the process of S1903a is repeated. Return.
  • the release button 8 is scanned again (S1903d), and it is determined whether or not the release button 8 is fully pressed (S1903e). If it is fully pressed (SI 903e: Yes), it is determined whether or not the flash mode power is available (S1903f).
  • a three-dimensional shape detection process which is the same process as the above-described three-dimensional shape detection process (S1006 in FIG. 10), is performed to detect the three-dimensional shape of the subject (S1906).
  • a document posture calculation process of calculating the posture of the document P is performed (S1907).
  • the position L, angle ⁇ ⁇ ⁇ ⁇ , and curvature ⁇ (X) of the document P with respect to the image input device 1 are calculated as the posture parameters of the document P.
  • FIGS. 20 (a) to 20 (c) are diagrams for explaining the document orientation calculation process (S1907 in FIG. 19). It is assumed that the curvature of the document P is uniform in the y direction as a precondition for a document such as a book.
  • the original posture calculation process first, as shown in FIG. 20 (a), points arranged in two columns in a three-dimensional space position are determined by regression curve approximation from coordinate data on code boundaries stored in a three-dimensional coordinate storage unit 37h. Find the two curves.
  • the original ⁇ is rotationally transformed in the opposite direction by the previously obtained inclination ⁇ ⁇ around the X axis, that is, the original ⁇ is converted into the ⁇ - ⁇ plane. It is assumed that they are parallel to each other.
  • FIG. 21 is a flowchart of the plane conversion process (S1908 in FIG. 19).
  • the pattern light stored in the pattern light non-image storage unit 37b is stored.
  • the four corner points of the image are moved by L in the Z direction, rotated by ⁇ in the X axis direction, and then rotated by ⁇ , and then inversely transformed into ⁇ (X) (equivalent to the “bending process” described later) (I.e., a rectangular area in which the image of the surface of the document P on which characters and the like are written is observed as viewed from a substantially orthogonal direction), and is included in this rectangular area.
  • the number of pixels a to be obtained is determined (S2102).
  • the counter b determines whether or not the counter b has reached the number of pixels a (S2103). If the counter b does not reach the number of pixels a (S2103: No), a curvature calculation process is performed for one pixel constituting the rectangular area to be rotated by a curvature ⁇ (X) about the Y axis (S2104). ), Tilt around the X axis ⁇ Rotate and move (S2105), and shift by the distance L in the Z axis direction ( S2106).
  • the coordinates (ccdcx, ccdcy) on the CCD image captured by the ideal camera are obtained by the inverse function of the previous triangulation (S2107), and the obtained three-dimensional spatial position is used.
  • the coordinates (ccdx, ccdy) on the CCD image captured by the actual camera are obtained by the inverse function of the camera calibration according to the aberration characteristics of the imaging optical system 20 (S2108), and the pattern corresponding to this position is obtained.
  • the state of the pixel of the lightless image is obtained and stored in the working area 371 of the RAM 37 (S2109).
  • FIG. 22 (a) is a diagram for explaining the outline of the bending process (S2104 in FIG. 21), and FIG. 22 (b) is a diagram illustrating the planarization performed by the plane conversion process (S1908 in FIG. 19). The original P is shown. The details of this curving process are disclosed in detail in IEICE Transactions DII Vol.J86-D2 No.3 p409 “Burning Document Shooting with Eye Scanner”.
  • the curvature X ⁇ (X) is obtained by transforming a three-dimensional shape composed of the obtained code boundary coordinate sequence (real space) into a plane-cut cross-sectional shape parallel to the XZ plane at an arbitrary Y value. It is represented by an equation approximated by a polynomial using the least squares method.
  • FIG. 23 (a) and FIG. 23 (b) are views for explaining a group of light source lenses 50 as another example of the light source lens 18 in the above-described embodiment, and FIG. FIG. 23B is a side view showing the light source lens 50, and FIG. 23B is a plan view showing the light source lens 50.
  • the same members as the components in the above-described embodiment are denoted by the same reference numerals, and description thereof will be omitted.
  • the light source lens 18 in the above-described embodiment is configured such that the lens portions 18a are integrally arranged on the base 18b from a convex aspherical shape corresponding to each LED 17, whereas In the example shown in FIGS. 23 (a) and 23 (b), a resin lens formed in a shell shape enclosing each of the LEDs 17 is formed separately.
  • the position of each LED 17 and the corresponding light source lens 50 can be determined on a one-to-one basis.
  • the relative position accuracy can be improved, and the light emitting directions are aligned.
  • the surface of the projection LCD 19 is irradiated with light whose incident direction from the LED 17 is aligned perpendicular to the surface of the projection LCD 19, so that the light can uniformly pass through the stop of the projection optical system 20. Therefore, illuminance unevenness of the projected image can be suppressed, and as a result, a high-quality image can be projected.
  • the LED 17 included in the light source lens 50 is mounted on the substrate 16 via electrodes 51 serving as leads and reflectors.
  • a frame-shaped elastic fixing member 52 that bundles and regulates the light source lenses 50 in a predetermined direction is arranged on the outer peripheral surface of the group of light source lenses 50.
  • the fixing member 52 is made of a resin material such as rubber or plastic.
  • each light source lens 50 Since the light source lens 50 is formed separately from each LED 17, the angle of the optical axis formed by the convex tip of each light source lens 50 is correctly aligned to face the projection LCD 19. It is difficult to install in
  • the fixing member 52 surrounds a group of the light source lenses 50, and the outer peripheral surfaces of the light source lenses 50 are brought into contact with each other, so that Lens 50
  • the position of each light source lens 50 is regulated so that the optical axis of the light source faces the projection LCD 19 at a correct angle.
  • the fixing member 52 is made of a material having a sufficient elasticity even if it has rigidity specified in a predetermined size, and the position of each light source lens 50 is adjusted by the elasticity. It may be restricted to a predetermined position.
  • FIGS. 24 (a) and 24 (b) show another example of a fixing member 52 for fixing the light source lens 50 to a predetermined position described in FIGS. 23 (a) and 23 (b).
  • 60 is a diagram for explaining FIG. FIG. 24 (a) is a perspective view showing a state where the light source lens 50 is fixed, and FIG. 24 (b) is a partial sectional view thereof.
  • the same members as described above are denoted by the same reference numerals, and description thereof will be omitted.
  • the fixing member 60 is formed in a plate shape having a conical through hole 60a having a cross section along the outer peripheral surface of each light source lens 50 when viewed in a sectional view. Each light source lens 50 is inserted and fixed in each through hole 60a.
  • An elastic urging plate 61 is interposed between the fixing member 60 and the substrate 16, and an electrode is provided between the urging plate 61 and the lower surface of each light source lens 50.
  • An annular O-ring 62 having elasticity is arranged so as to surround 51.
  • the LED 17 included in the light source lens 50 is mounted on the substrate 16 via the biasing plate 61 and the electrode 51 penetrating through holes formed in the substrate 16.
  • each light source lens 50 is fixed by penetrating through each through hole 60a having a cross section along the outer peripheral surface of the lens.
  • the optical axis of the light source lens 50 can be more reliably fixed so as to face the projection LCD 19 at a correct angle.
  • the LED 17 can be urged to a correct position by the urging force of the O-ring 62 and fixed.
  • the impact force that may be generated when transporting the present device 1 is reduced by the impact of the O-ring 62. It is possible to prevent the problem that the light source lens 50 is displaced by the influence of the impact and the position of the light source lens 50 is displaced, so that light cannot be irradiated from the light source lens 50 to the projection LCD 19 vertically.
  • the processes of S1211 and S1215 in Fig. 12 (b) are regarded as an imaging means, an imaging step, and an imaging step.
  • the processing of S1221 in FIG. 12C is regarded as a luminance image generating means, a luminance image generating step, or a luminance image generating step.
  • the processing of S1222 in FIG. 12 (c) is regarded as a code image generation means, a code image generation step, or a code image generation step.
  • the processing of S1006 in FIG. 10 is regarded as a three-dimensional shape calculation means, a three-dimensional shape calculation step, or a three-dimensional shape calculation step.
  • the process of S1408 in Fig. 14 is regarded as a first pixel detecting means, a first pixel detecting step, or a first pixel detecting step.
  • the processing of S1501 in FIG. 15 is regarded as a luminance image extracting means, a luminance image extracting step, or a luminance image extracting step.
  • Part of the processing in S1603 and S1604 in FIG. 16 is regarded as a pixel area specifying unit, a pixel area specifying step, or a pixel area specifying step.
  • the processing of S1604—part in FIG. 16 is regarded as an approximate expression calculating means, an approximate expression calculating step, or an approximate expression calculating step.
  • the processing of S1505 and S1507 in FIG. 15 is regarded as a boundary coordinate calculation means, a boundary coordinate calculation step, or a boundary coordinate calculation step.
  • the process of acquiring and displaying a flattened image has been described as the flattened image mode.
  • a well-known OCR function is provided, and the flattened flat image is displayed in the OCR function. May be configured to be read.
  • the text written on the original can be read with higher accuracy than when the original that is curved by the OCR function is read.
  • each value is averaged using efCCDY [j] as an approximate polynomial
  • the method of averaging the values is not limited to these. For example, a method of taking a simple average of each value, a method of using the median of each value, a method of calculating an approximate expression of each value, and using the detection position in the approximate expression as a boundary coordinate, and a statistical operation. It is also possible to use a method of obtaining a higher value.
  • the boundary coordinates of the code of interest detected by the boundary coordinate detection means may be calculated with a higher resolution than the resolution of the imaging means.
  • the boundary coordinates of the code of interest detected by the boundary coordinate detection means or the boundary coordinate detection step have a higher resolution (sub-pixel accuracy) than the resolution of the imaging means or the imaging step. Since the calculation is performed, the effect that the three-dimensional shape of the subject can be calculated with high accuracy can be obtained.
  • the pixel area specifying means refers to the code image and separates from the pixel row including the first pixel and at least one row continuously arranged from the pixel row including the first pixel.
  • the pixel array power described above may also specify the pixel area.
  • the approximate expression calculating means may calculate an approximate expression for each pixel column in the pixel area.
  • the boundary coordinate detecting means may calculate a position having a predetermined threshold value for luminance for each of the approximate expressions, and detect the boundary coordinates of the code of interest based on the calculation result.
  • the luminance image extracting means may extract at least one or more extracted luminance images.
  • the pixel region specifying means may specify a pixel region for each extracted luminance image by referring to a code image.
  • the approximate expression calculating means calculates each extracted brightness An approximate expression may be calculated for each pixel column in the pixel region where the degree of image power is also detected.
  • the boundary coordinate detecting means may calculate a position having a predetermined threshold value for luminance for each of the approximate expressions, and detect the boundary coordinates of the code of interest based on the calculation result.
  • the boundary is calculated using one approximate expression.
  • the accuracy of detecting the boundary coordinates can be improved as compared with the case where the coordinates are obtained. Therefore, an effect is obtained that the three-dimensional shape of the subject can be calculated with higher accuracy.
  • the luminance image extracting means may extract at least one or more extracted luminance images.
  • the pixel region specifying means refers to each of the extracted luminance images with reference to the code image, separately from the pixel column including the first pixel, and at least one or more columns continuously arranged from the pixel column including the first pixel. Pixel column power A pixel area may be specified.
  • the approximate expression calculating means may calculate an approximate expression for each pixel row in the pixel region for each extracted luminance image.
  • the boundary coordinate detecting means may calculate a position having a predetermined threshold value for luminance for each approximate expression for each extracted luminance image, and detect the boundary coordinates of the code of interest based on the calculation result. Good,.
  • a predetermined threshold value is set for each of at least four or more approximate expressions calculated based on at least two or more pixel columns. Is calculated, so that the accuracy of detecting the boundary coordinates can be improved as compared with the case where the boundary coordinates are obtained using one approximation formula. Therefore, an effect is obtained that the three-dimensional shape of the object can be calculated with higher accuracy.
  • the boundary coordinate detecting means calculates a weighted average value or a median value of positions calculated for each approximation expression, and detects the boundary coordinates of the code of interest based on the calculation result. You may.
  • the boundary coordinate detecting means or the boundary coordinate detecting step calculates the weighted average value or the median value of the positions calculated for each approximation expression, and based on the calculation result, determines the value of the code of interest. Detect boundary coordinates. Therefore, the load required for the arithmetic unit can be reduced by adding a simple calculation, and the effect of obtaining high speed processing can be obtained.
  • the boundary coordinate detecting means may calculate an approximate expression of a position calculated for each approximate expression, and detect the boundary coordinates of the code of interest based on the calculation result. .
  • the boundary coordinate detecting means or the boundary coordinate detecting step calculates the approximate expression of the position calculated for each approximate expression, and detects the boundary coordinate of the code of interest based on the calculation result. I do. Therefore, an effect is obtained that a three-dimensional shape can be calculated with higher accuracy than when a weighted average or median is calculated.
  • the boundary coordinate detecting means calculates an approximate expression of a position calculated for each approximate expression for each extracted luminance image, and calculates the boundary coordinates of the code of interest based on the calculation result.
  • the weighted average or the median may be calculated for the calculated coordinates and the boundary coordinates of the target code calculated for each extracted luminance image unit, and the boundary coordinates of the target code may be detected based on the result.
  • the boundary coordinate detecting means calculates the approximate expression of the position calculated for each approximate expression in the unit of the extracted luminance image, and calculates the boundary coordinates of the code of interest based on the calculation result. Then, a weighted average or median is calculated for the boundary coordinates of the target code calculated for each extracted luminance image unit, and the boundary coordinates of the target code are detected based on the result. Therefore, the load required for the arithmetic unit can be reduced by adding a simple calculation, and the effect can be obtained if the processing can be speeded up.

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)

Description

明 細 書
3次元形状検出装置、 3次元形状検出方法、 3次元形状検出プログラム 技術分野
[0001] 本発明は、パターン光の撮像枚数を増カロさせることなぐ高速にパターン光の境界 をサブピクセル精度で検出することができる 3次元形状検出装置、 3次元形状検出方 法、 3次元形状検出プログラムに関する。
背景技術
[0002] 従来より、対象物体に 1本のスリット光を順次投影し、各投影光の方向 φごとに撮像 手段によって画像を入力し、画像中のスリット光の軌跡から撮像手段から対象物体を 見る方向 Θを得ることで、対象物体の位置を検出するスリット光投影法を利用して対 象物体の 3次元形状を検出する 3次元形状検出装置が知られている。
[0003] しかし、このスリット光投影法では、分解能はスリットの本数によって決定され、 1本 のスリット像を得るのに 1枚のビデオフレームを必要とするので、本数の多いスリット画 像を得ようとすると長時間を要するという問題点があった。
[0004] この問題を解決するべぐ「空間コード化による距離画像入力」、佐藤宏介、他 1名、 電子通信学会論文誌、 85Z3Vol. J 68— D No3 p369〜375 (以下、文献 1と 記す)には、所謂空間コード法が提案されている。空間コード法では、対象物体に n 枚の縦縞状のパターン光を投影し、空間を 2n個の細い扇状領域に分割する。各領域 には nビットの 2進コード (空間コード)を割り当てることができ、 n回のパターン光の投 影で、 2n本のスリット画像と同等な画像を得ることができるので、スリット光投影法に比 ベて高速な計測を行うことができる。
[0005] し力しながら、ノターン光の分割は有限である事や撮像素子の解像度との関係から 検出されるパターン光の境界には誤差が含まれ、結果的に対象物体の 3次元形状を 高精度に検出することができないという問題点があった。
[0006] 「三次元画像計測」、佐藤宏介、他 1名、株式会社昭晃堂、 plO 9〜117 (以下、文 献 2と記す)には、このような問題を解決することのできる 3次元形状検出の技術が開 示されている。具体的には、文献 2に開示される技術によれば、ポジ(陽画)のパター ン光と、そのポジのパターン光と明暗を反転したネガ(陰画)のパターン光との 2種類 のパターン光を対象物体に投影し、その撮像画像の輝度分布から、パターン光の境 界の内挿を行い、ノターン光の境界をサブピクセル精度で検出することで、パターン 光の境界座標に含まれる誤差が低減され、高精度に対象物体の 3次元形状が検出 される。
発明の開示
[0007] し力しながら、パターン光の境界をサブピクセル精度で検出すベぐ上述した文献 2 に記載された方法を利用した場合には、ポジ Zネガのパターン光投影画像 2 * n枚と 非投影画像 1枚とを撮像する必要があり、パターン光の投影回数、パターン光の撮像 枚数が嵩み、計測に長時間を要するという問題点があった。
[0008] また、上述した空間コード法においては、コードィ匕における誤差を軽減すベぐ投 影されるパターン光としては、純 2進コードで明暗付けられたものではなぐダレイコー ド (交番 2進コード)と呼ばれる特殊なパターン光を投影する必要があった。
[0009] 本発明は、上述した問題点を解決するためになされたものであり、パターン光の撮 像枚数を増加させることなぐ高速にパターン光の境界をサブピクセル精度で検出す ることができる 3次元形状検出装置、 3次元形状検出方法、 3次元形状検出プロダラ ムを提供することを目的として!、る。
[0010] 上記目的を達成する為、本発明の一つの側面により提供されるのは、 3次元形状 検出装置であって、明と暗とを交互に並べてなる複数種類のパターン光の各々を時 系列に被写体に投影する投影手段と、その投影手段力ゝら各パターン光が投影されて V、る状態の被写体を撮像する撮像手段と、その撮像手段によって撮像される各撮像 画像力ゝら各画素の輝度を算出した複数の輝度画像を生成する輝度画像生成手段と 、その輝度画像生成手段によって生成される複数の輝度画像に対して所定の閾値 による閾値処理を行った結果により、各画素毎に所定のコードを割り当てたコード画 像を生成するコード画像生成手段と、そのコード画像生成手段によって生成されるコ ード画像を利用して被写体の 3次元形状を算出する 3次元形状算出手段とを備える 。この 3次元形状検出装置は、さらに、コード画像におけるパターン光と交差する方 向の検出位置において、着目コードを有する画素に隣接し、その着目コードとは異な るコードを有する第 1画素を検出する第 1画素検出手段と、その第 1画素検出手段で 検出される第 1画素と対応する位置において、明と暗との境界を有する輝度画像を 複数の輝度画像の内から抽出する輝度画像抽出手段と、第 1画素に隣接する所定 領域の画素からなる画素領域を特定する画素領域特定手段と、その画素領域特定 手段で特定される画素領域において抽出輝度画像における輝度の変化を表す近似 式を算出する近似式算出手段と、その近似式算出手段によって算出される近似式に おいて輝度に関する所定の閾値を有する位置を算出し、その算出結果に基づいて 着目コードの境界座標を検出する境界座標検出手段とを備える。 3次元形状算出手 段は、コード画像を利用して境界座標検出手段で検出される境界座標に基づき、被 写体の 3次元形状を算出する。
[0011] このように構成された 3次元形状検出装置によれば、着目コードに隣接し、その着 目コードとは異なるコードを有する第 1画素が、コード画像におけるパターンと交差す る方向の検出位置において第 1画像検出手段によって画素単位で検出される。第 1 画素が検出されると、その第 1画素と対応する位置において、明と暗との境界を有す る輝度画像が、輝度画像抽出手段によって複数の輝度画像の内から抽出される。そ して、画素領域特定手段で特定される画素領域において、抽出輝度画像における輝 度の変化を表す近似式が近似式算出手段によって算出される。この近似式において 輝度に関する所定の閾値を有する位置を境界座標検出手段によって算出することで 、検出位置におけるサブピクセル精度の境界位置が算出できる。即ち、検出位置の 座標と、近似式において輝度に関する所定の閾値を有する位置の座標とからなる境 界座標が算出され、この境界座標を利用して 3次元形状算出手段によって被写体の 3次元形状が算出される。
[0012] したがつてこの 3次元形状検出装置によれば、所定の検出位置におけるパターン 光の明と暗との境界座標は、その境界座標を含む所定の画素領域における輝度の 変化を表す近似式が算出され、その近似式における輝度に関する所定の閾値を有 する位置として検出される。したがって、検出位置における明と暗との境界をコード画 像における明と暗との境界に比べて高い精度で算出することができる。よって、その 結果を利用して 3次元形状を算出すれば、高精度に被写体の 3次元形状を算出する ことができるという効果が得られる。
[0013] 本発明の別の側面により提供されるのは、 3次元形状検出方法であって、明と暗と を交互に並べてなる複数種類のパターン光の各々を時系列に被写体に投影する投 影工程と、その投影工程力 各パターン光が投影されて 、る状態の被写体を撮像す る撮像工程と、その撮像工程によって撮像される各撮像画像力ゝら各画素の輝度を算 出した複数の輝度画像を生成する輝度画像生成工程と、その輝度画像生成工程に よって生成される複数の輝度画像に対して所定の閾値による閾値処理を行った結果 により、各画素毎に所定のコードを割り当てたコード画像を生成するコード画像生成 工程と、そのコード画像生成工程によって生成されるコード画像を利用して被写体の 3次元形状を算出する 3次元形状算出工程とを備える。この 3次元形状検出方法は、 更に、コード画像生成工程の後に、コード画像におけるパターン光と交差する方向の 検出位置において、着目コードを有する画素に隣接し、その着目コードとは異なるコ ードを有する第 1画素を検出する第 1画素検出工程と、その第 1画素検出工程で検 出される第 1画素と対応する位置において、明と暗との境界を有する輝度画像を複 数の輝度画像の内から抽出する輝度画像抽出工程と、第 1画素に隣接する所定領 域の画素からなる画素領域を特定する画素領域特定工程と、その画素領域特定ェ 程で特定される画素領域において抽出輝度画像における輝度の変化を表す近似式 を算出する近似式算出工程と、その近似式算出工程によって算出される近似式にお いて輝度に関する所定の閾値を有する位置を算出し、その算出結果に基づいて着 目コードの境界座標を検出する境界座標検出工程とを備える。 3次元形状算出工程 は、コード画像を利用して境界座標検出工程で検出される境界座標に基づき、被写 体の 3次元形状を算出する。
[0014] このような構成の 3次元形状検出方法によれば、着目コードに隣接し、その着目コ 一ドとは異なるコードを有する第 1画素が、コード画像におけるパターンと交差する方 向の検出位置において第 1画像検出工程によって画素単位で検出される。第 1画素 が検出されると、その第 1画素と対応する位置において、明と暗との境界を有する輝 度画像が、輝度画像抽出工程によって複数の輝度画像の内から抽出される。そして 、画素領域特定工程で特定される画素領域において、抽出輝度画像における輝度 の変化を表す近似式が近似式算出工程によって算出される。この近似式において輝 度に関する所定の閾値を有する位置を境界座標検出工程によって算出することで、 検出位置におけるサブピクセル精度の境界位置が算出できる。即ち、検出位置の座 標と、近似式において輝度に関する所定の閾値を有する位置の座標とからなる境界 座標が算出され、この境界座標を利用して 3次元形状算出工程によって被写体の 3 次元形状が算出される。
[0015] したがつてこの 3次元形状検出方法によれば、所定の検出位置におけるパターン 光の明と暗との境界座標は、その境界座標を含む所定の画素領域における輝度の 変化を表す近似式が算出され、その近似式における輝度に関する所定の閾値を有 する位置として検出される。したがって、検出位置における明と暗との境界をコード画 像における明と暗との境界に比べて高い精度で算出することができる。よって、その 結果を利用して 3次元形状を算出すれば、高精度に被写体の 3次元形状を算出する ことができるという効果が得られる。
[0016] 本発明の別の側面により提供されるのは、 3次元形状検出プログラムであって、明と 暗とを交互に並べてなる複数種類のパターン光の各々を時系列に被写体に投影す る投影ステップと、その投影ステップ力も各パターン光が投影されて ヽる状態の被写 体を撮像する撮像ステップと、その撮像ステップによって撮像される各撮像画像から 各画素の輝度を算出した複数の輝度画像を生成する輝度画像生成ステップと、その 輝度画像生成ステップによって生成される複数の輝度画像に対して所定の閾値によ る閾値処理を行った結果により、各画素毎に所定のコードを割り当てたコード画像を 生成するコード画像生成ステップと、そのコード画像生成ステップによって生成される コード画像を利用して被写体の 3次元形状を算出する 3次元形状算出ステップとを備 える。この 3次元形状検出プログラムは、更に、コード画像におけるパターン光と交差 する方向の検出位置において、着目コードを有する画素に隣接し、その着目コードと は異なるコードを有する第 1画素を検出する第 1画素検出ステップと、その第 1画素検 出ステップで検出される第 1画素と対応する位置において、明と暗との境界を有する 輝度画像を複数の輝度画像の内から抽出する輝度画像抽出ステップと、第 1画素に 隣接する所定領域の画素からなる画素領域を特定する画素領域特定ステップと、そ の画素領域特定ステップで特定される画素領域において抽出輝度画像における輝 度の変化を表す近似式を算出する近似式算出ステップと、その近似式算出ステップ によって算出される近似式において輝度に関する所定の閾値を有する位置を算出し 、その算出結果に基づいて着目コードの境界座標を検出する境界座標検出ステップ とを備える。 3次元形状算出ステップは、コード画像を利用して境界座標検出ステツ プで検出される境界座標に基づき、被写体の 3次元形状を算出する。
[0017] このように構成された 3次元形状検出プログラムによれば、着目コードに隣接し、そ の着目コードとは異なるコードを有する第 1画素が、コード画像におけるパターンとは 直交する方向の検出位置から第 1画像検出ステップによって画素単位で検出される 。第 1画素が検出されると、その第 1画素と対応する位置において、明と暗との境界を 有する輝度画像が、輝度画像抽出ステップによって複数の輝度画像の内から抽出さ れる。そして、画素領域特定ステップで特定される画素領域において、抽出輝度画 像における輝度の変化を表す近似式が近似式算出ステップによって算出される。こ の近似式にぉ 、て輝度に関する所定の閾値を有する位置を境界座標検出ステップ によって算出することで、検出位置におけるサブピクセル精度の境界位置が算出で きる。即ち、検出位置の座標と、近似式において輝度に関する所定の閾値を有する 位置の座標とからなる境界座標が算出され、この境界座標を利用して 3次元形状算 出工程によって被写体の 3次元形状が算出される。
[0018] したがつてこの 3次元形状検出プログラムによれば、所定の検出位置におけるパタ ーン光の明と暗との境界座標は、その境界座標を含む所定の画素領域における輝 度の変化を表す近似式が算出され、その近似式における輝度に関する所定の閾値 を有する位置として検出される。したがって、検出位置における明と暗との境界をコー ド画像における明と暗との境界に比べて高い精度で算出することができる。よって、 その結果を利用して 3次元形状を算出すれば、高精度に被写体の 3次元形状を算出 することができると!/ヽぅ効果が得られる。
図面の簡単な説明
[0019] [図 1]画像入出力装置の外観斜視図である。
[図 2]撮像ヘッドの内部構成を示す図である。 [図 3]図 3 (a)は画像投影部の拡大図であり、図 3 (b)は光源レンズの平面図であり、 図 3 (c)は投影 LCDの正面図である。
[図 4]図 4 (a)力 図 4 (c)は、 LEDアレイの配列に関する説明をするための図である。 圆 5]画像入出力装置の電気的なブロック図である。
[図 6]メイン処理のフローチャートである。
[図 7]デジカメ処理のフローチャートである。
[図 8]webcam処理のフローチャートである。
[図 9]投影処理のフローチャートである。
[図 10]立体画像処理のフローチャートである。
[図 11]図 11 (a)は、空間コード法の原理を説明するための図であり、図 11 (b)は図 1
1 (a )とは異なるマスクパターン (グレイコード)を示す図である。
[図 12]図 12 (a)は 3次元形状検出処理のフローチャートである。図 12 (b)は撮像処 理のフローチャートである。図 12 (c)は 3次元計測処理のフローチャートである。 圆 13]コード境界座標検出処理の概略を説明するための図である。
[図 14]コード境界座標検出処理のフローチャートである。
[図 15]コード境界座標をサブピクセル精度で求める処理のフローチャートである。
[図 16]PatID [i]のマスクパターン番号を持つ輝度画像について、境界の CCDY値 を求める処理のフローチャートである。
[図 17]図 17 (a)から図 17 (c)は、レンズ収差補正処理を説明するための図である。
[図 18]図 18 (a)及び図 18 (b)は、 CCD空間における座標から 3次元空間における 3 次元座標を算出する法を説明するための図である。
[図 19]平面化画像処理のフローチャートである。
圆 20]図 20 (a)から図 20 (c)は、原稿姿勢演算処理を説明するための図である。
[図 21]平面変換処理のフローチャートである。
[図 22]図 22 (a)は、湾曲計算処理についての大略を説明するための図であり、図 22 (b)は平面変換処理によって平面化された平面化画像を示す図である。
[図 23]図 23 (a)は光源レンズの他の例を示す側面図であり、図 23 (b)は図 23 (a)の 光源レンズを示す平面図である。 [図 24]図 24 (a)は、光源レンズを固定した状態を示す斜視図であり、図 24 (b)はその 部分的な断面図である。
符号の説明
[0020] 1 画像入出力装置
13 画像投影部
14 画像撮像部
18, 50 光源レンズ
19 投影 LCD
20 投影光学系
21 撮像光学系
22 CCD
発明を実施するための最良の形態
[0021] 以下、本発明の好ましい実施形態について、添付図面を参照して説明する。図 1は
、画像入出力装置 1の外観斜視図である。尚、本発明の実施形態としての投影装置 および 3次元形状検出装置は、画像入出力装置 1に含まれる装置である。
[0022] 画像入出力装置 1は、デジタルカメラとして機能するデジカメモード、ウェブカメラと して機能する webcamモード、 3次元形状を検出して立体画像を取得するための立 体画像モード、湾曲した原稿等を平面化した平面化画像を取得するための平面化 画像モード等の種々のモードを備えて 、る。
[0023] 図 1では、特に、立体画像モードや平面化画像モードにおいて、被写体としての原 稿 Pの 3次元形状を検出するために、後述する画像投影部 13から明暗を交互に並べ てなる縞状のパターン光を投影して 、る様子を図示して 、る。
[0024] 画像入出力装置 1は、略箱状に形成された撮像ヘッド 2と、その撮像ヘッド 2と一端 が連結されたパイプ状のアーム部材 3と、そのアーム部材 3の他端と連結され、平面 視略 L型に形成されたベース 4とを備えて 、る。
[0025] 撮像ヘッド 2は、その内部に後述する画像投影部 13や画像撮像部 14を内包する ケースである。撮像ヘッド 2の正面において、中央部には筒状の鏡筒 5が配置され、 鏡筒 5の斜め上方にファインダ 6が配置され、さらに、ファインダ 6の反対側にフラッシ ュ 7が配置されている。撮像ヘッド 2の正面のファインダ 6とフラッシュ 7との間には、後 述する画像撮像部 14の一部である撮像光学系 21のレンズの一部が外面に露出して いる。撮像光学系のこの露出部分を介して被写体の画像が入力される。
[0026] 鏡筒 5は、撮像ヘッド 2の正面カゝら突出するよう形成されるとともに、その内部に画像 投影部 13の一部である投影光学系 20を内包して 、るカバーである。この鏡筒 5によ つて、投影光学系 20が保持され、投影光学系 20全体を焦点調節のため移動可能と され、且つ、投影光学系 20が傷つくのが防止されている。鏡筒 5端面からは、画像投 影部 13の一部である投影光学系 20のレンズの一部が外面に露出しており、この露 出部分カゝら投影面に向かって画像信号光が投影される。
[0027] ファインダ 6は、撮像ヘッド 2の背面カゝら正面を通して配設される光学レンズで構成 されている。撮像ヘッド 2の背面力も使用者がのぞき込んだ時に、撮像光学系 21が C CD22上に結像する範囲とほぼ一致する範囲が見えるようになつている。
[0028] フラッシュ 7は、例えば、デジカメモードにぉ 、て、必要な光量を補足するための光 源であり、キセノンガスが充填された放電管で構成されている。よって、撮像ヘッド 2 に内蔵されているコンデンサ(図示せず)からの放電により繰り返し使用することがで きる。
[0029] 撮像ヘッド 2の上面において、手前側にはレリーズボタン 8が配置され、レリーズボ タン 8の奥方にモード切替スィッチ 9が配置され、さらに、モード切替スィッチ 9の反対 側にモニタ LCD10が配置されている。
[0030] レリーズボタン 8は、「半押し状態」と「全押し状態」との 2種類の状態に設定可能な 2 段階の押しボタン式のスィッチで構成されて 、る。レリーズボタン 8の状態は後述する プロセッサ 15に管理されている。プロセッサ 15の制御の下、レリーズボタン 8の「半押 し状態」で周知のオートフォーカス (AF)および自動露出 (AF)機能が起動され、ピン ト、絞り、シャツタスピードが調節される。レリーズボタン 8の「全押し状態」では、撮像 等が行われる。
[0031] モード切替スィッチ 9は、デジカメモード、 webcamモード、立体画像モード、平面 化画像モード、オフモード等の種々のモードに設定する為のスィッチである。モード 切替スィッチ 9の状態はプロセッサ 15に管理されており、モード切替スィッチ 9の状態 がプロセッサ 15によって検出されることで各モードの処理が実行される。
[0032] モニタ LCD10は、液晶ディスプレイ(Liquid Crystal Display)で構成されてお り、プロセッサ 15からの画像信号を受けて画像を使用者に表示する。例えば、モニタ LCD10には、デジカメモードや webcamモードにおける撮像画像や、立体画像モー ドにおける 3次元形状検出結果画像、平面化画像モードにおける平面化画像等が表 示される。
[0033] 撮像ヘッド 2の側面において、その上方には、 RF (無線)インターフェイスとしてのァ ンテナ 11と、撮像ヘッド 2とアーム部材 3とを連結する連結部材 12とが配置されてい る。
[0034] アンテナ 11は、後述する RFドライバ 24を介してデジカメモードで取得した撮像画 像データや立体画像モードで取得した立体画像データ等を外部インターフェイスに 無線通信によって送信する為に用いられる。
[0035] 連結部材 12は、リング状に形成され、かつその内周面には雌ねじが形成されてい る。連結部材 12は、撮像ヘッド 2の側面に回動可能に固定されている。アーム部材 3 の一端側には雄ねじが形成されている。連結部材 12の雌ねじとアーム部材 3の雄ね じとを嵌合させることで、撮像ヘッド 2とアーム部材 3とを着脱自在に連結することがで きると共に、撮像ヘッド 2を任意の角度で固定することができるようになつている。従つ て、撮像ヘッド 2をアーム部材 3から取り外すことで、撮像ヘッド 2を通常のデジタル力 メラとして使用できる。
[0036] アーム部材 3は、撮像ヘッド 2を所定の撮像位置に変化可能に保持するためのもの であり、任意の形状に屈曲可能な蛇腹状のパイプで構成されている。よって、アーム 部材 3によって、撮像ヘッド 2を任意の位置に向けることができる。
[0037] ベース 4は、机上等の載置台に載置され、撮像ヘッド 2とアーム部材 3とを支持する 。ベース 4は平面視略 L字型に形成されているので、安定して撮像ヘッド 2等を支持 することができる。ベース 4とアーム部材 3とは着脱自在に連結されており、このことが 画像入出力装置 1の持ち運びを便利にし、また、画像入出力装置 1を省スペースで 収納することも可能にする。
[0038] 図 2は、撮像ヘッド 2の内部構成を模式的に示す図である。撮像ヘッド 2の内部には 、画像投影部 13と、画像撮像部 14と、プロセッサ 15とが内蔵されている。
[0039] 画像投影部 13は、投影面に任意の投影画像を投影するためのユニットである。画 像投影部 13は、投影方向に沿って、基板 16と、複数個の LED17 (その総称として 以下「LEDアレイ 17A」という)と、光源レンズ 18と、投影 LCD19と、投影光学系 20と を備えている。尚、この画像投影部 13については、図 3 (a)から図 3 (c)を参照して後 に詳細に説明する。
[0040] 画像撮像部 14は、被写体としての原稿 Pを撮像するためのユニットである。画像撮 像部 14は、光の入力方向に沿って、撮像光学系 21と、 CCD22とを備えている。
[0041] 撮像光学系 21は、複数枚のレンズで構成されている。撮像光学系 21は、周知のォ 一トフォーカス機能を有し、自動で焦点距離及び絞りを調整して外部力もの光を CC D22上に結像する。
[0042] CCD22は、マトリクス状に配列された CCD (Charge Coupled Device)素子な どの光電変換素子を有する。 CCD22は、撮像光学系 21を介して CCD22の表面に 結像される画像の光の色及び強さに応じた信号を生成し、これをデジタルデータに 変換してプロセッサ 15に出力する。
[0043] プロセッサ 15には、フラッシュ 7、レリーズボタン 8、モード切替スィッチ 9、外部メモリ 27、およびキャッシュメモリ 28が電気的に接続されている。さらに、プロセッサ 15には 、モニタ LCDドライバ 23を介してモニタ LCD10が接続され、 RFドライバ 24を介して アンテナ 11が接続され、電源インターフェイス 25を介してバッテリ 26が接続され、光 源ドライバ 29を介して LEDアレイ 17Aが接続され、投影 LCDドライバ 30を介して投 影 LCD19が接続され、さらに、 CCDインターフェイス 31を介して CCD22が接続さ れている。プロセッサ 15に接続されたこれらの構成部品は、プロセッサ 15によって管 理される。
[0044] 外部メモリ 27は、着脱自在なフラッシュ ROMであり、デジカメモードや webcamモ ード、そして立体画像モードにお!ヽて撮像された撮像画像や 3次元情報を記憶する 。具体的には、外部メモリ 27として、 SDカード、コンパクトフラッシュ (登録商標)カー ド等を使用することができる。
[0045] キャッシュメモリ 28は、高速な記憶装置である。例えば、デジカメモードにぉ 、て撮 像した撮像画像を高速でキャッシュメモリ 28に転送し、プロセッサ 15で画像処理を行 つてから外部メモリ 27に格納されるように使われる。具体的には、 SDRAM, DDRR AM等を使用することができる。
[0046] 電源インターフェイス 25、光源ドライバ 29、投影 LCDドライバ 30、 CCDインターフ ェイス 31は、 IC (Integrated Circuit:集積回路)によって構成されている。電源インタ 一フェイス 25、光源ドライバ 29、投景 LCDドライバ 30、 CCDインターフェイス 31は、 それぞれ、ノ ッテリ 26、 LEDアレイ 17A、投影 LED19、 CCD22を制御する。
[0047] 図 3 (a)は画像投影部 13の拡大図であり、図 3 (b)は光源レンズ 18の平面図であり 、図 3 (c)は投影 LCD19と CCD22との配置関係を示す図である。上述した通り、画 像投影部 13は、投影方向に沿って、基板 16と、 LEDアレイ 17Aと、光源レンズ 18と 、投影 LCD19と、投影光学系 20とを備えている。
[0048] 基板 16は、 LEDアレイ 17Aを実装すると共に、 LEDアレイ 17Aとの電気的な配線 をするためのものである。具体的には、基板 16として、アルミ製基板に絶縁榭脂を塗 布してカゝら無電解メツキにてパターンを形成したものや力ラエポ基材をコアとする単層 または多層構造の基板を使用することができる。
[0049] LEDアレイ 17Aは、投影 LCD19に向けて放射状の光を発光する光源である。 LE Dアレイ 17Aは、基板 16上に千鳥状に配列された複数個の LED17 (発光ダイォー ド)からなる。これらの複数の LED17は、銀ペーストを介して基板 16に接着され、ボ ンデイングワイヤを介して基板 16に電気的に結線されて 、る。
[0050] このように光源として複数個の LED17を使用することで、光源として白熱電球、ノヽ ロゲンランプ等を使用する場合に比べて、電気を光に変換する効率 (電気光変換効 率)を高め、同時に赤外線や紫外線の発生を抑えることができる。よって、本実施形 態によれば、光源を省電力で駆動でき、節電化、長寿命化を図ることができる。また、 装置の温度上昇を低減させることができる。
[0051] この様に、 LED17はハロゲンランプ等に比べて熱線の発生が極めて低いので、後 述する光源レンズ 18や投影光学系 20として、榭脂製のレンズを採用することができ る。よって、ガラス製のレンズを採用する場合に比べて、光源レンズ 18,投影光学系 20を安価で軽量に構成することができる。 [0052] LEDアレイ 17Aを構成する各 LED17は、各々同じ発光色を発光する。各 LED17 は、材料に Al、 In、 Ga、 Pの 4元素が用いられており、アンバー色を発光する。よって 、複数色の発光色を発光させる場合に生ずる色収差の補正を考慮する必要はなぐ 色収差を補正するために投影光学系 20として色消しレンズを採用する必要はないの で、簡単な面構成および安価な材料の投影手段を提供すると!、う効果がある。
[0053] また、他の発光色に比べて電気光変換率が約 801umenZWと高い 4元素材料の アンバー色 LEDを採用することで、一層、高輝度、節電、長寿命化を図ることができ る。尚、各 LED17を千鳥状に配置する事に関する効果については、図 4 (a)から図 4 (c)を参照して説明する。
[0054] 具体的には、 LEDアレイ 17Aは 59個の LED17からなり、各 LED17は 50mW(20 mA, 2. 5V)で駆動される。したがって、全 59個の LED17は略 3Wの消費電力で駆 動される。各 LED17から発光される光力 光源レンズ 18、投影 LCD19を通過して 投影光学系 20から照射される場合の光束値としての明るさは、全面照射の場合であ つても 25ANSIルーメン程度に設定されて!、る。
[0055] この明るさを採用することで、例えば、立体画像モードにおいて、人や動物の顔面 等の被写体の 3次元形状を検出する場合に、人や動物に眩しさを与えず、人や動物 が目をつぶっていない状態の 3次元形状を検出することができる。
[0056] 光源レンズ 18は、 LEDアレイ 17Aから放射状に発光される光を集光する集光光学 系としてのレンズであり、その材質はアクリルに代表される光学樹脂で構成されている
[0057] 具体的には、光源レンズ 18は、 LEDアレイ 17Aの各 LED17に対向する位置に投 影 LCD19側に向けて凸設された凸状のレンズ部 18aと、そのレンズ部 18aを支持す るベース部 18bと、そのベース部 18bの内部空間であって LEDアレイ 17Aを内包す る開口に充填される、 LED17の封止および基板 16と光源レンズ 18との接着を目的 としたエポキシ封止材 18cと、ベース部 18bから基板 16側に突設され、光源レンズ 18 と基板 16とを接続する位置決めピン 18dとを備えている。
[0058] 光源レンズ 18は、開口の内部に LEDアレイ 17Aを内包させつつ、基板 16に穿設 されている長孔 16に位置決めピン 18dを差し込むことによって、基板 16上に固定さ れる。
[0059] よって、省スペースで光源レンズ 18を配置することができる。また、基板 16に LED アレイ 17Aを実装するという機能の他に、光源レンズ 18を支持するという機能をも備 えさせることによって、光源レンズ 18を支持する部品を別途設ける必要がなくなり、部 品点数を削減することができる。
[0060] 各レンズ部 18aは、 LEDアレイ 17Aの各 LED17と 1対 1の関係で対向する位置に 配置されている。
[0061] よって、各 LED17から発光される放射状の光は、各 LED17に対向する各レンズ部 18aによって効率良く集光され、図 3 (a)に示すような指向性の高い放射光として投 影 LCD19に照射される。この様に指向性を高めたのは、投影 LCD19に略垂直に 光を入射させることによって、面内の透過率ムラが抑制され得るためである。また、指 向性を高めた理由は、投影光学系 20はテレセントリック特性を持ち、その入射 NAが 0. 1程度であるため、垂直 ± 5° 以内の光のみが内部の絞りを通過できるように規制 されているためである。従って、 LED17からの光を出射角度を投影 LCD19に対し 垂直に揃え、且つ、 ± 5° にほとんどの光束を入れることが画質向上の要点となる。 なぜなら投影 LCD19に垂直力も外れた光を入射すると、液晶の旋光性により、透過 率が入射角度に依存して変わってしまい、透過率ムラとなる力もである。
[0062] 投影 LCD19は、光源レンズ 18を通過して集光された光に空間変調を施して、投影 光学系 20に向けて画像信号光を出力する空間変調素子である。具体的には、投影 LCD 19は、縦横のサイズの異なる板状の液晶ディスプレイ(Liquid Crystal Disp lay)で構成されている。
[0063] 図 3 (c)に示すように、投影 LCD 19を構成する各画素は、投影 LCD 19の長手方 向に沿って一直線状に並べられた 1の画素列と、その 1の画素列とは投影 LCD19の 長手方向において所定間隔ずれた他の画素列とが交互に並列に並べられた状態と なるように配置されている。
[0064] 尚、図 3 (c)にお 、て、紙面手前側が撮像ヘッド 2の正面側に対応し、紙面裏側か ら光が投影 LCD19に向けて照射される。また、図 3 (c)では、被写体力もの光は紙面 手間側から奥側に向か 、、 CCD22上に被写体像が結像される。 [0065] このように、投影 LCD19を構成する画素を長手方向において千鳥状に配置するこ とで、長手方向と直交する方向(短手方向)において、投影 LCD19によって空間変 調が施される光を 1Z2ピッチで制御することができる。従って、細いピッチで投影パ ターンを制御でき、分解能を上げて高精度に 3次元の形状を検出することができる。
[0066] 特に、後述する立体画像モードや平面化画像モードにお!、て、被写体の 3次元形 状を検出すベぐ被写体に向けて明暗を交互に並べてなる縞状のパターン光を投光 する場合に、その縞方向を投影 LCD19の短手方向に一致させることで、明暗の境 界を 1Z2ピッチで制御することができる。したがって、高精度に 3次元の形状を検出 することができる。
[0067] 撮像ヘッド 2の内部において、投影 LCD19と CCD22とは、図 3 (c)に示すような関 係で配置される。具体的には、投影 LCD19の幅広面と CCD22の幅広面とは略同 一の方向に向 、て配置されて 、るので、投影 LCD 19から投影面に投影されて 、る 画像を CCD22に結像させる場合に、投影画像をノヽーフミラー等で屈曲させることな ぐそのままの状態で投影画像を結像させることができる。
[0068] CCD22は、投影 LCD19の長手方向側(画素列が延びる方向側)に配置されてい る。この場合、特に、立体画像モードや平面化画像モードにおいて、三角測量の原 理を利用して被写体の 3次元形状を検出する場合には、 CCD22と被写体とのなす 傾きを 1Z2ピッチで制御することができるので、高精度に 3次元の形状を検出するこ とが可能になる。
[0069] 投影光学系 20は、投影 LCD 19を通過した画像信号光を投影面に向けて投影す る複数のレンズからなる。投影光学系 20は、ガラス及び榭脂の組み合わせカゝらなる テレセントリックレンズで構成されている。テレセントリックとは、投影光学系 20を通過 する主光線は、入射側の空間では光軸に平行になり、射出瞳の位置は無限になる構 成をいう。このようにテレセントリックにすることで、前述のように投影 LCD19を垂直士 5° で通過する光のみを投影し得るので、画質を向上させることができる。
[0070] 図 4 (a)から図 4 (c)は、 LEDアレイ 17Aの配列に関する説明をするための図である 。図 4 (a)は光源レンズ 18を通過した光の照度分布を示す図であり、図 4 (b)は LED アレイ 17Aの配列状態を示す平面図であり、図 4 (c)は投影 LCD19面における合成 照度分布を示す図である。
[0071] 図 4 (a)に示すように、光源レンズ 18を通過した光は、半値拡がり半角 Θ (=略 5° )で、図 4 (a)右側に図示するような照度分布を有する光として投影 LCD19の表面に 到達するように設計されて 、る。
[0072] 図 4 (b)に示すように、複数の LED17は基板上 16に千鳥状に配列されている。具 体的には、複数個の LED17を dピッチで直列に並べた LED列力 3/2dピッチで 並列に複数並べられており、更に、このように並列に並べられた複数の LED列にお いて、 1列おきの列は隣の列に対して同じ方向に lZ2d移動された状態になってい る。
[0073] 換言すれば、 1の LED17と、その 1の LED17の周辺の LED17との間隔は dになる ように設定されて 、る(すなわち、 LED17は三角格子配列となって 、る)。
[0074] この dの長さは、 LED17の 1つから出射された光によって投影 LCD19において形 成される照度分布の半値全幅(FWHM (Full Width Half Maximum) )以下となる 様に決定されている。
[0075] よって、光源レンズ 18を通過して投影 LCD19の表面に到達する光の合成照度分 布は、図 4 (c)に示すように小さなリップルを含んだ略直線状になり、投影 LCD19の 面に略均一に光を照射することができる。従って、投影 LCD19における照度ムラを 抑制することができ、結果的に、高品質な画像を投影することができる。
[0076] 図 5は、画像入出力装置 1の電気的なブロック図である。尚、既に上述した構成つ いては、その説明を省略する。プロセッサ 15は、 CPU35と、 ROM36と、 RAM37と を備えている。
[0077] CPU35は、 ROM36に記憶されたプログラムにした力^、、 RAM37を利用して各 種の処理を行う。 CPU35の制御の下で行われる処理には、レリーズボタン 8の押下 げ操作の検知、 CCD22から画像データの取り込み、その画像データの転送、格納、 モード切替スィッチ 9の状態の検出等が含まれる。
[0078] ROM36には、カメラ制御プログラム 36aと、パターン光撮影プログラム 36bと、輝度 画像生成プログラム 36cと、コード画像生成プログラム 36dと、コード境界抽出プログ ラム 36eと、レンズ収差補正プログラム 36fと、三角測量演算プログラム 36gと、原稿 姿勢演算プログラム 36hと、平面変換プログラム 36iとが格納されて 、る。
[0079] カメラ制御プログラム 36aは、図 6に示すメイン処理を含む画像入出力装置 1全体の 制御に関するプログラムである。
[0080] ノターン光撮影プログラム 36bは、原稿 Pの 3次元形状を検出するために被写体に ノ ターン光を投影した状態と、投影して 、な 、状態とを撮像するプログラムである。
[0081] 輝度画像生成プログラム 36cは、パターン光撮影プログラム 36bによってパターン 光を投影した状態で撮像されたパターン光有画像と、ノ ターン光を投影して 、な ヽ 状態で撮像されたパターン光無画像との差分をとり、投影されたパターン光の輝度画 像を生成するプログラムである。
[0082] また、パターン光は複数種類のものが時系列に投影され各パターン光毎に撮像さ れ、撮像された複数枚のパターン光有画像の各々とパターン光無画像との差分がと られ、複数種類の輝度画像が生成される。
[0083] コード画像生成プログラム 36dは、輝度画像生成プログラム 36cによって生成される 複数枚の輝度画像を重ね合わせ、各画素毎に所定のコードを割り当てたコード画像 を生成するプログラムである。
[0084] コード境界抽出プログラム 36eは、コード画像生成プログラム 36dによって生成され るコード画像と、輝度画像生成プログラム 36cによって生成される輝度画像とを利用 して、コードの境界座標をサブピクセル精度で求めるプログラムである。
[0085] レンズ収差補正プログラム 36fは、コード境界抽出プログラム 36eによってサブピク セル精度で求められて ヽるコードの境界座標に対して、撮像光学系 20の収差補正 を行うプログラムである。
[0086] 三角測量演算プログラム 36gは、レンズ収差補正プログラム 36fによって収差補正 がなされたコードの境界座標から、その境界座標に関する実空間の 3次元座標を演 算するプログラムである。
[0087] 原稿姿勢演算プログラム 36hは、三角測量演算プログラム 36gで演算された 3次元 座標から原稿 Pの 3次元形状を推定して求めるプログラムである。
[0088] 平面変換プログラム 36iは、原稿姿勢演算プログラム 36hで演算される原稿 Pの 3次 元形状に基づき、原稿 Pの正面力も撮像したような平面化画像を生成するプログラム である。
[0089] RAM37には、パターン光有画像格納部 37aと、パターン光無画像格納部 37bと、 輝度画像格納部 37cと、コード画像格納部 37dと、コード境界座標格納部 37eと、 ID 格納部 37fと、収差補正座標格納部 37gと、 3次元座標格納部 37hと、原稿姿勢演 算結果格納部 37iと、平面変換結果格納部 37jと、投影画像格納部 37kと、ヮーキン グエリア 371とが記憶領域として割り当てられて 、る。
[0090] パターン光有画像格納部 37aは、パターン光撮影プログラム 36bによって原稿 Pに ノターン光を投影した状態を撮像したパターン光有画像を格納する。パターン光無 画像格納部 37bは、パターン光撮影プログラム 36bによって原稿 Pにパターン光を投 影して 、な 、状態を撮像したパターン光無画像を格納する。
[0091] 輝度画像格納部 37cは、輝度画像生成プログラム 36cによって生成される輝度画 像を格納する。コード画像格納部 37dは、コード画像生成プログラム 36dによって生 成されるコード画像を格納する。コード境界座標格納部 37eは、コード境界抽出プロ グラム 36eによって、抽出されるサブピクセル精度で求められた各コードの境界座標 を格納する。 ID格納部 37fは、境界を有する画素位置において明暗の変化を有する 輝度画像に割り当てられる ID等を格納する。収差補正座標格納部 37gは、レンズ収 差補正プログラム 36fによって収差補正がなされたコードの境界座標を格納する。 3 次元形状座標格納部 37hは、三角測量演算プログラム 36gによって演算される実空 間の 3次元座標を格納する。
[0092] 原稿姿勢演算結果格納部 37iは、原稿姿勢演算プログラム 36hによって演算される 原稿 Pの 3次元形状に関するパラメータを格納する。平面変換結果格納部 37jは、平 面変換プログラム 36はって生成される平面変換結果を格納する。投影画像格納部 3 7kは、画像投影部 13から投影する画像情報を格納する。ワーキングエリア 371は、 C PU15での演算のために一時的に使用するデータを格納する。
[0093] 図 6は、 CPU35による制御の下で実行されるメイン処理のフローチャートである。尚 、このメイン処理におけるデジカメ処理(S605)、 webcam処理(S607)、立体画像 処理(S607)、平面化画像処理(S611)
Figure imgf000020_0001
、ての詳細は後述する。
[0094] メイン処理では、まず、電源が起動されると(S601)、プロセッサ 15やその他のイン ターフェイス等が初期化される (S602)。
[0095] そして、モード切替スィッチ 9の状態を判別するキースキャンが行われ(S603)、モ ード切替スィッチ 9の設定がデジカメモードか否かが判断され(S604)、デジカメモー ドであれば(S604 : Yes)、後述するデジカメ処理に移行する(S605)。
[0096] 一方、デジカメモードでなければ(S604 : No)、モード切替スィッチ 9の設定が web camモードか否かが判断され(S606)、 webcamモードであれば(S606 : Yes)、後 述する webcam処理に移行する(S607)。
[0097] 一方、 webcamモードでなければ(S605 : No)、モード切替スィッチ 9の設定が立 体画像モードか否かが判断され(S608)、立体画像モードであれば(S608 : Yes)、 後述する立体画像処理に移行する(S609)。
[0098] 一方、立体画像モードでなければ(S608 : No)、モード切替スィッチ 9の設定が平 面化画像モードか否かが判断され (S610)、平面化画像モードであれば (S610 : Ye s)、後述する平面化画像処理に移行する(S611)。
[0099] 一方、平面化画像モードでなければ(S610 : No)、モード切替スィッチ 9がオフモ ードか否かが判断され(S612)、オフモードでなければ(S612 : No)、 S603からの 処理が繰り返される。ステップ S612において、オフモードであれると判定された場合 には(S612 :Yes)、当該処理を終了する。
[0100] 図 7は、デジカメ処理(図 6の S605)のフローチャートである。デジカメ処理は、画像 撮像部 14によって撮像した画像を取得する処理である。
[0101] この処理では、まず、 CCD22に高解像度設定信号が送信される(S701)。これに より高品質の撮像画像を使用者に提供することができる。
[0102] 次に、モニタ LCD10にファインダ画像 (ファインダ 6を介して見える範囲の画像)が 表示される(S702)。よって、使用者は、ファインダ 6を覼き込むことなぐモニタ LCD
10に表示された画像によって実際の撮像の前に、撮像画像 (撮像範囲)を確認する ことができる。
[0103] 次に、レリーズボタン 8をスキャンし(S703a)、レリーズボタン 8が半押しされたか否 かを判断する(S703b)。半押しされていれば(S703b : Yes)、オートフォーカス (AF )および自動露出 (AE)機能を起動し、ピント、絞り、シャツタスピードを調節する(S7 03c)。半押しされていなければ(S703b :No)、 S703aからの処理を繰り返す。
[0104] 次に、再び、レリーズボタン 8をスキャンし(S703d)、レリーズボタン 8が全押しされ たか否かを判断する(S703e)。全押しされていれば(S703e : Yes)、フラッシュモー ドか否かを判断する(S704)。
[0105] その結果、フラッシュモードであれば(S704 : Yes)、フラッシュ 7を投光して(S705)
、撮影が行われる(S706)。フラッシュモードでなければ(S704 : No)、フラッシュ 7を 投光することなく撮影する(S706)。尚、 S703eの判断において、全押しされていな ければ (S703e: No)、 S703a力らの処理を繰り返す。
[0106] 次に、撮影した撮像画像を CCD22からキャッシュメモリ 28に転送し(S707)、キヤ ッシュメモリ 28に記憶された撮像画像をモニタ LCD10に表示する(S708)。このよう に、撮像画像をキャッシュメモリ 28に転送することでメインメモリに転送する場合に比 較して、撮像画像を高速にモニタ LCD10に表示させることができる。そして、その撮 像画像を外部メモリ 27に格納する(S709)。
[0107] 最後に、モード切替スィッチ 9に変化が無いか否かを判断し (S710)、変化が無け れば(S710 :Yes)、 S702からの処理を繰り返す。ステップ S710において変化があ ると判定された場合には(S710 :No)、当該処理を終了する。
[0108] 図 8は、 webcam処理(図 6の S607)のフローチャートである。 webcam処理は、画 像撮像部 14で撮像した撮像画像 (静止画および動画を含む)を外部ネットワークに 送信する処理である。尚、本実施形態では、撮像画像として動画を外部ネットワーク に送信する場合を想定して 、る。
[0109] この処理では、まず、 CCD22に低解像度設定信号を送信し (S801)、周知のォー トフォーカス及び自動露出機能を起動して、ピント、絞り、シャッター速度を調節した 後に(S802)、撮影を開始する(S803)。
[0110] そして、撮影された撮像画像をモニタ LCD10に表示し (S804)、ファインダ画像を 投影画像格納部 37kに格納し (S805)、後述する投影処理を行い(S806)、投影画 像格納部 37kに格納されている画像を投影面に投影する。
[0111] また、撮像画像を CCD22からキャッシュメモリ 28に転送し(S807)、キャッシュメモ リ 28に転送された撮像画像を RFインターフェイスを介して外部ネットワークに送信す る(S808)。
[0112] そして、最後に、モード切替スィッチ 9に変化が無いか否かを判断し (S809)、変化 が無ければ(S809 :Yes)、 S802からの処理を繰り返し、変化があれば(S809 :No) 、当該処理を終了する。
[0113] 図 9は投影処理(図 8の S806)のフローチャートである。この処理は、投画像投影部 13から投影画像格納部 37kに格納されている画像を投影面に投影する処理である 。この処理では、まず、投影画像格納部 37kに画像が格納されているカゝ否かを確認 する(S901)。格納されていれば(S901 : Yes)、投影画像格納部 37kに格納されて いる画像を投影 LCDドライバ 30に転送し(S902)、投影 LCDドライバ 30から、その 画像に応じた画像信号を投影 LCD19に送り、投影 LCDに画像を表示する(S903)
[0114] 次に、光源ドライバ 29を駆動し (S904)、その光源ドライバ 29からの電気信号によ つて LEDアレイ 17Aを点灯し(S905)、当該処理を終了する。
[0115] こうして、 LEDアレイ 17Aが点灯すると、 LEDアレイ 17Aから発光する光は、光源レ ンズ 18を介して投影 LCD 19に到達し、投影 LCD19において、投影 LCDドライバ 3 0から送信される画像信号に応じた空間変調が施され、画像信号光として出力される 。そして、その投影 LCD19から出力される画像信号光は、投影光学系 20を介して投 影面に投影画像として投影される。
[0116] 図 10は立体画像処理(図 6の S609)のフローチャートである。立体画像処理は、被 写体の 3次元形状を検出し、その立体画像としての 3次元形状検出結果画像を取得 、表示、投影する処理である。
[0117] この処理では、まず、 CCD22に高解像度設定信号を送信し (S1001)、モニタ LC D10にファインダ画像を表示する(S 1002)。
[0118] 次に、レリーズボタン 8をスキャンし(S1003a)、レリーズボタン 8が半押しされたか 否かを判断する(S 1003b)。半押しされていれば(S 1003b : Yes)、オートフォーカス (AF)および自動露出 (AE)機能を起動し、ピント、絞り、シャツタスピードを調節する (S 1003c)。半押しされていなければ(S 1003b : No)、 S 1003aからの処理を繰り返 す。 [0119] 次に、再び、レリーズボタン 8をスキャンし(S1003d)、レリーズボタン 8が全押しされ たか否かを判断する(S1003e)。全押しされていれば(S1003e : Yes)、フラッシュモ ード力否かを判断する(S1003f)。
[0120] その結果、フラッシュモードであれば(S1003f : Yes)、フラッシュ 7を投光して(S 10 03g)、撮影が行われる(S1003h)。フラッシュモードでなければ(S1003f :No)、フ ラッシュ 7を投光することなく撮影する(S1003h)。 S1003eの判断において、全押し されて ヽなければ (S1003e: No)、 S 1003aからの処理を繰り返す。
[0121] 次に、後述する 3次元形状検出処理を行い、被写体の 3次元形状を検出する(S10 06)。
[0122] 次に、 3次元形状検出処理 (S1006)における 3次元形状検出結果を外部メモリ 27 に格納し(S1007)、 3次元形状検出結果をモニタ LCD10に表示する(S1008)。尚 、この 3次元形状検出結果とは、各計測頂点の実空間における 3次元座標 (XYZ)の 集合体として表示する。
[0123] 次に、 3次元形状検出結果としての計測頂点をポリゴンで結んでそのサーフェスを 表示した立体画像(3Dの CG画像)としての 3次元形状検出結果画像を投影画像格 納部 37kに格納し (S1009)、図 8の S806の投影処理と同様な投影処理を行う(S10 10)。尚、この場合には、図 18 (a)及び図 18 (b)に関して説明する投影 LCD19上の 座標を 3次元空間座標に変換する式の逆関数を利用して、求められた 3次元座標に 対する投影 LCD19上の座標を求めることで、 3次元形状結果座標を投影面に投影 させることがでさる。
[0124] そして、モード切替スィッチ 9に変化が無いか否かを判断し(S1011)、変化が無け れば(S1011 :Yes)、 S702からの処理を繰り返す。変化があれば(S1011 :No)、 当該処理を終了する。
[0125] 図 11 (a)は、上述した 3次元形状検出処理(図 10の S1006)において、 3次元形状 を検出するために利用する空間コード法の原理を説明するための図である。図 11 (b )は、図 11 (a)とは異なるパターン光を示す図である。パターン光にはこれら図 11 (a) 、図 11 (b)に示されるいずれのものが用いられても良ぐ更には、多階調コードである グレイレベルコードが用いられても良 、。 [0126] この空間コード法につての詳細は、佐藤宏介、他 1名、「空間コードィ匕による距離画 像入力」、電子通信学会論文誌、 85Z3Vol. J 68-D No3 p369〜375に詳細 に開示されている。
[0127] 空間コード法は、投影光と観測画像間の三角測量に基づいて被写体の 3次元形状 を検出する方法の 1種であり、図 11 (a)に示すように、投影光源 Lと観測器 Oとを距離 Dだけ離して設置し、空間を細長!/ヽ扇状領域に分割しコード化することを特徴とする
[0128] 図中の 3枚のマスクパターン A, B, Cを MSB力 順番に投影すると、各扇状領域は マスクによって明「1」と暗「0」とにコード化される。例えば、点 Pを含む領域は、マスク
A, Bでは光が当たらず、マスク Cでは明になるので、 001 (A=0、 B = 0、 C= l)とコ ード化される。
[0129] 各扇状の領域には、その方向 φに相当するコードが割り当てられ、それぞれのコー ドの境界を 1本のスリット光線とみなすことができる。そこで各マスクごとに情景を観測 機器としてのカメラで撮影し、明暗パターンを 2値ィ匕してメモリの各ビットプレーンを構 成していく。
[0130] こうして、得られた多重ビットプレーン画像の横方向の位置 (アドレス)は、観測方向
Θに相当し、このアドレスのメモリの内容は投影光コード、即ち、 φを与える。この Θと Φとから注目点の座標を決定する。
[0131] また、この方法で使用するマスクパターンとしては、図 11 (a)ではマスクパターン A,
B, Cのような純 2進コードを用いる場合を図示している力 マスクの位置ズレが起こる と領域の境界で大きな誤差が生ずる危険性がある。
[0132] 例えば、図 11 (a)の点 Qは領域 3 (011)と領域 4 (100)の境界を示している力 もし マスク Aの 1がずれ込むと領域 7 (111)のコードが生ずる可能性がある。換言すれば 、隣接する領域間でハミング距離が 2以上のところで、大きな誤差が発生する可能性 がある。
[0133] そこで、この方法で使用するマスクパターンとしては、図 11 (b)に示すように、隣接 する領域間でハミング距離が常に 1であるコードを使うことで、上述したようなコードィ匕 誤差を避けることができるとされて 、る。 [0134] 図 12 (a)は、 3次元形状検出処理(図 10の S1006)のフローチャートである。この処 理では、まず、撮像処理を行う(S1210)。この撮像処理は、図 11 (a)に示す複数枚 の純 2進コードのマスクパターンを利用して画像投影部 13から、明暗を交互に並べ てなる縞状のパターン光(図 1参照)を時系列的に被写体に投影し、各パターン光が 投影されて ヽる状態を撮像したパターン光有画像と、ノターン光が投影されて ヽな 状態を撮像したパターン光無画像とを取得する処理である。
[0135] 撮像処理を終了すると(S1210)、 3次元計測処理を行う(S1220)。 3次元計測処 理は、撮像処理によって取得したパターン光有画像とパターン光無画像とを利用し て、実際に被写体の 3次元形状を計測する処理である。こうして、 3次元計測処理を 終了すると(S1220)、当該処理を終了する。
[0136] 図 12 (b)は、撮像処理(図 12 (a)の S1210)のフローチャートである。この処理は、 ノターン光撮影プログラム 36aに基づき実行され、まず、画像投影部 13からパターン 光を投影することなぐ画像撮像部 14によって被写体を撮像することで、パターン光 無画像を取得する(S1211)。尚、取得したパターン光無画像はパターン光無画像 格納部 37bに格納される。
[0137] 次に、カウンタ iを初期化し(S1212)、そのカウンタ iの値が最大値 imaxか否かを判 断する(S1213)。尚、最大値 imaxは使用するマスクパターンの数によって決定され る。例えば、 8種類のマスクパターンを使用する場合には、最大 imax ( = 8)となる。
[0138] そして、判断の結果、カウンタ iの値が最大値 imaxより小さい場合には(S1213 : Ye s)、使用するマスクパターンの内、 i番のマスクパターンを投影 LCD 19に表示し、そ の i番のマスクパターンによって投影される i番のパターン光を投影面に投影し(S121 4)、そのパターン光が投影されている状態を画像撮像部 14によって撮影する(S12 15)。
[0139] こうして、被写体に i番のパターン光が投影された状態を撮像したパターン光有画像 を取得する。尚、取得したパターン光有画像は、パターン光有画像格納部 37aに格 納される。
[0140] 撮影を終了すると、 i番のパターン光の投影を終了し(S1216)、次のパターン光を 投影すべく、カウンタ iに「 1」を加算して(S1217)、 S1213からの処理を繰り返す。 [0141] そして、カウンタ iの値が最大値 imaxより大きいと判断すると(S1213 :No)、当該処 理を終了する。即ち、この撮像処理においては、 1枚のパターン光無画像と、最大値 i max枚のパターン光有画像とを取得することになる。
[0142] 図 12 (c)は、 3次元計測処理(図 12 (a)の S1220)のフローチャートである。この処 理は、輝度画像生成プログラム 36cに基づき実行される。この処理では、まず、輝度 画像を生成する(S1221)。ここで、輝度は、 YCbCr空間における Y値であり、各画 素の RGB値より Y=0. 2989 -R+O. 5866 -G + 0. 1145 · Βから計算される値であ る。各画素について Υ値を求めることにより、各パターン光有及び無し画像に関する 輝度画像を生成する。生成した輝度画像は、輝度画像格納部 37cに格納される。ま た、パターン光の番号に対応した番号を各輝度画像に割り付けておく。
[0143] 次に、コード画像生成プログラム 36dにより、上述した空間コード法を利用して、生 成した輝度画像を組み合わせることで、各画素毎にコード化されたコード画像を生成 する(S1222)。
[0144] このコード画像は、輝度画像格納部 37cに格納したパターン光有画像に関する輝 度画像の各画素について、あら力じめ設定した輝度閾値と比較し、その結果を結合 させることで生成することができる。生成されたコード画像はコード画像格納部 37dに 格納される。
[0145] 次に、コード境界抽出プログラム 36eにより、後述するコード境界座標検出処理を 行い(S1223)、各画素毎に割り当てられたコードの境界座標をサブピクセル精度で 検出する。
[0146] 次に、レンズ収差補正プログラム 36fにより、レンズ収差補正処理を行う(S1224)。
この処理によって、撮像光学系 21の歪みなどの影響で誤差を含んでいる S1223で 検出されるコード境界座標の誤差を補正することができる。
[0147] 次に、三角測量演算プログラム 36gにより、三角測量原理による実空間変換処理を 行う(S1225)。この処理によって収差補正が施された後の CCD空間上のコード境 界座標は、実空間における 3次元座標に変換され、 3次元形状検出結果としての 3次 元座標が求められる。
[0148] 図 13は、コード境界座標検出処理(図 12の S1223)の概略を説明するための図で ある。上側の図は、 CCD空間において実際のパターン光の明暗の境界を境界線 K で示し、そのパターン光を上述した空間コード法でコード化し、 1のコードと他のコー ドとの境界を図中太線で示した図である。
[0149] 即ち、上述した空間コード法におけるコードィ匕は、各画素単位で行われるため、実 際のパターン光の境界線 Kと、コード化された境界(図中太線)とではサブピクセル精 度の誤差が生ずる。そこで、このコード境界座標検出処理は、コードの境界座標をサ ブピクセル精度で検出することを目的とする。
[0150] この処理では、まず、ある検出位置(以下「curCCDX」と称す)にお 、て、ある着目 コード (以下「curCode」 t 、う)力も他のコードに変化する第 1画素 Gを検出する(第 1 画素検出工程)。
[0151] 例えば、 curCCDXにおいて、上から順番に各画素を検出すると、境界 (太線)まで は curCodeを有する画素である力 境界の次の画素、即ち、第 1画素 Gにおいて、 c urCodeは変化して!/、るので、これを第 1画素 Gとして検出する。
[0152] 次に、その第 1画素 Gの画素位置において、図 12の S1221において輝度画像格 納部 37cに格納された輝度画像の内から、明暗の変化を持つ輝度画像の全部を抽 出する (輝度画像抽出工程)。
[0153] 次に、近似に利用するための画素領域を特定するために検出位置を「2」左側に移 動させ、検出位置 curCCDX— 2の位置において、コード画像を参照して、着目コー ド(curCode)力 他のコードに変化する画素(境界画素(curCCDX— 2の検出位置 では画素 H) )を探し、その画素を中心に予め定めた範囲 (本実施例の場合 Y軸方向 に 3画素と + 2画素の範囲)の画素範囲を特定する(画素領域特定手段の一部)。
[0154] 次に、その予め定めた範囲内において、図中の下側の左側のグラフに示すように、 Y方向の画素位置と輝度とに関する近似式(図中実線で示す)を求め、その近似式 における輝度閾値 bThとの交点における Y座標 Y1を求める(境界座標検出工程の 一部)。
[0155] 尚、輝度閾値 bThは、予め定められた範囲内から算出(例えば、各画素の輝度の 平均の 2分の 1)しても良ぐ予め与えられた固定値であっても良い。これにより、明と 暗との境界をサブピクセル精度で検出することができる。 [0156] 次に、検出位置を curCCDX—2から「1」右側に移動させ、 curCCDX—lにおい て上述したのと同様な処理を行 、、 curCCDX- 1における代表値を求める(境界座 標検出工程の一部)。
[0157] このように、境界画素を中心に Y軸方向に予め定めた範囲と、 X軸方向における cu rCCDX- 2から curCCDX+ 2の範囲とで構成される画素領域(図中右下がり斜線 部参照)において、各検出位置における代表値を求める。
[0158] これまでの処理を curCodeから他のコードへ変化する画素を持つ輝度画像の全て に行い、各輝度画像についての代表値の加重平均値を最終的に curCodeにおける 境界座標として採用する (境界座標検出工程の一部)。
[0159] これにより、コードの境界座標を高精度にサブピクセル精度で検出することができ、 この境界座標を利用して上述した三角測量原理による実空間変換処理 (図 12の S1 225)を行うことで、高精度に被写体の 3次元形状を検出することができる。
[0160] また、このように輝度画像に基づき算出される近似式を利用して境界座標をサブピ クセル精度で検出することができるため、従来のように撮像枚数を増カロさせることもな ぐまた、純 2進コードで明暗付けられたパターン光であっても良ぐ特殊なパターン 光であるグレイコードを用いる必要はな 、。
[0161] 尚、本実施例では、各検出位置において境界画素を中心に Y軸方向に「一 3」から 「 + 2」の範囲と、 X軸方向における検出位置としての curCCDX— 2から curCCDX + 2の範囲とで構成される領域を、近似を求めるための画素領域として説明したが、 この画素領域の Y軸、 X軸の範囲はこれらに限定されるものではない。例えば、 curC CDXの検出位置における境界画素を中心とした Y軸方向への所定範囲だけを画素 領域としても良い。
[0162] 図 14は、コード境界座標検出処理(図 12 (c)の S1223)のフローチャートである。こ の処理は、コード境界抽出プログラム 36eに基づき実行される。この処理では、まず、 CCD空間におけるコード境界座標列の各要素を初期化し (S 1401)、 curCCDXを 開始座標に設定する(S1402)。
[0163] 次に、 curCCDXが終了座標以下力否かを判断し(S 1403)、終了座標以下であ れば(S 1403 : Yes)、 curCodeを「0」に設定する(S1404)。即ち、 curCodeは当初 、最小値に設定される。
[0164] 次に、 curCodeが最大コードより小さいか否かを判断する(S1405)。 curCodeが 最大コードより小さければ(S 1405 :Yes)、 curCCDXにおいてコード画像を参照し て、 curCodeの画素を探し(S 1406)、 curCodeの画素が存在するか否かを判断す る(S1407)。
[0165] その結果、 curCodeの画素が存在していれば(S 1407 : Yes)、 curCCDXにおい て、その curCodeよりも大きな Codeの画素をコード画像を参照して探し(S 1408)、 その curCodeよりも大きな curCodeの画素が存在するか否かを判断する(S 1409)。
[0166] その結果、 curCodeよりも大きな Codeの画素が存在していれば(S 1409 : Yes)、 後述する境界をサブピクセル精度で求める処理を行う(S1410)。そして、次の curC odeについて境界座標を求めるベぐ curCodeに「1」を加算して(S1411)、 S 1405 からの処理を繰り返す。
[0167] 即ち、境界は、 curCodeを有する画素の画素位置または curCodeよりも大きな Cod eの画素の画素位置に存在しているため、本実施例では、暫定的に境界は、 curCod eより大きな curCodeの画素の画素位置にあると仮定して処理を進めるものである。
[0168] また、 curCodeが存在していない場合や(S 1407 : No)、 curCodeよりも大きな Co deの画素が存在して!/ヽな 、場合には(S1409: No)、次の curCodeにつ!/、て境界座 標を求めるベぐ curCodeに「1」をカ卩算して(S1411)、 S1405からの処理を繰り返 す。
[0169] こうして、 0から最大コードまでの curCodeについて、 S1405力ら S1411までの処 理を繰り返し、 curCodeが最大コードより大きくなると(S 1405 : No)、検出位置を変 更すべぐ curCCDXに「dCCDX」を加算し(S 1412)、新たな検出位置において、 上述したのと同様に S1403からの処理を繰り返す。
[0170] そして、 curCCDXを変更してゆき、最終的に curCCDXが終了座標より大きくなる と(S1403)、即ち、開始座標力も終了座標までの検出が終了すると、当該処理を終 了する。
[0171] 図 15は、コード境界座標をサブピクセル精度で求める処理(図 14の S1410)のフロ 一チャートである。 [0172] この処理では、まず、図 12 (c)の S1221において輝度画像格納部 37cに格納され た輝度画像の内から、図 14の S1409において検出された curCodeよりも大きな Cod eを有する画素の画素位置において、明暗の変化を持つ輝度画像の全部を抽出す る(S1501)。
[0173] そして、その抽出した輝度画像のマスクパターン番号を配列 PatID[]へ格納し、そ の抽出した輝度画像の画像数を noPatIDへ格納する(S1502)。尚、配列 PatID[] と noPatIDとは ID格納部 37fに格納される。
[0174] 次に、カウンタ iを初期化し(S1503)、カウンタ iの値力 ¾oPatIDより小さいか否かを 判断する(S 1504)。その結果、小さいと判断されれば(S 1504 : Yes)、カウンタ こ 対応する PatID[i]のマスクパターン番号を持つ輝度画像について、境界の CCDY 値を求め、その値を f CCDY[i]へ格納する(S 1505)。
[0175] この S1505の処理を終了すると、カウンタ iに「1」をカロ算し(S1506)、 S1504力ら の処理を繰り返す。そして、 S1504において、カウンタ iの値力 oPatIDより大きいと 判断されると(S1504 :No)、即ち、 S1501で抽出された全部の輝度画像について S 1505の処理が終了すると、 S1505の処理で求めた fCCDY[i]の加重平均値を計 算し、その結果を境界値とする(S 1507)。
[0176] 尚、加重平均値に代えて、 S1505の処理で求めた fCCDY[i]の中央値を計算し、 その結果を境界値としたり、統計的な計算により境界値を計算したりすることもできる
[0177] 即ち、境界座標は、 curCCDXの座標と、 S 1507で求められる加重平均値とで表 現され、この境界座標をコード境界座標格納部 37eに格納して、当該処理を終了す る。
[0178] 図 16は、 PatID[i]のマスクパターン番号を持つ輝度画像について、境界の CCD
Y値を求める処理(図 15の S1505)のフローチャートである。
[0179] この処理では、まず、「curCCDX— dx」と「0」との内、大きい値を ccdxとして設定 する「ccdx=MAX(curCCDX—dx, 0)」で表される処理を行うと共に、カウンタ jを 初期化する(S1601)。
[0180] 具体的には、 S1601でいう「0」は CCDX値の最小値を意味し、例えば、今、検出 位置としての curCCDX値が「1」で、予め設定されている dx値が「2」であったとする と、「curCCDX— dx」は「一 1」となり、 CCDX値の最小値である「0」よりも小さくなる ため、「一 1」における以降の処理は、「ccdx=0」として設定する処理を行う。
[0181] 即ち、 CCDX値の最小値よりも小さい位置については、以降の処理を除外する処 理を行う。
[0182] 尚、この「dx」の値は、予め「0」を含む適当な整数に設定することができ、図 13で説 明した例では、この「dx」は「2」に設定されており、図 13の例に従えば、この ccdxは「 curCCDX- 2 Jに設定されること〖こなる。
[0183] 次に、 ccdx< = MIN (curCCDX + dx, ccdW—l)であるか否かを判断する(S16 02)。つまり、左辺の「MIN (curCCDX+dx, ccdW— 1)」は、「curCCDX+dx」と 、 CCDX値の最大値「ccdW」から「1」を減算した「ccdW— 1」との内、小さい値であ ることを意味して 、るので、その値と「ccdx」値との大小を比較する。
[0184] 即ち、 CCDX値の最大値よりも大きい位置については、以降の処理を除外する処 理を行う。
[0185] そして、判断の結果、 ccdxが MIN (curCCDX+dx, ccdW—l)よりも小さければ( S1602 :Yes)、 コード画像と PatID[i]が割り当てられた輝度画像とを参照して、境 界の存在する画素の画素位置の eCCDY値を求める(S 1603)。
[0186] 例えば、検出位置を図 13に示す curCCDX— 1であるとすると、画素 Iを境界が存 在する画素候補として検出し、画素 Iの位置において eCCDY値を求める。
[0187] 次に、 PatID[i]のマスクパターン番号を持つ輝度画像から、 MAX(eCCDY—dy , 0) < =ccdy< =MIN (eCCDY+dy - 1, ccdH—l)の範囲で、 ccdy方向にお ける輝度に関する近似多項式 Bt = fb (ccdy)を求める(S1604)。
[0188] 次に、その近似多項式 Btと輝度閾値 bThとの交差する ccdy値を求め、その値を ef CCDY [j]へ格納する(SI 605)。この S1604と S1605とによって、サブピクセル精 度の境界座標の検出をすることができる。
[0189] 次に、 ccdxとカウンタ jとに各々「1」を加算し(S1605)、 S1602からの処理を繰り返 す。即ち、 curCCDXを中心とした左右の所定範囲内における各検出位置において 、サブピクセル精度の境界を検出するのである。 [0190] そして、 S1602において、「ccdx」カ「MIN (curCCDX+dx, ccdW— 1)」より大き いと判断されると(S1602 : No)、 curCCDX—dxから curCCDX+dxの範囲で計算 された efCCDY[j]について、 ccdy=fy (ccdx)の近似多項式を求める(S 1606)。こ の処理によって S1605において検出された各値を用いるので、 1つの検出位置にお いて境界座標を検出しょうとする場合に比べて、境界座標の検出精度を向上させる ことができる。
[0191] こうして得られた近似多項式と curCCDXとの交点を、 PatID[i]のマスクパターン 番号を持つ輝度画像についての境界の CCDY値として(S 1607)、当該処理を終了 する。ここまでの処理を図 15のフローチャートに示すように、抽出した全部の輝度画 像の 1枚、 1枚に実行し、求められた境界座標について加重平均値を計算して、その 結果を最終的な境界座標としているので (S 1507)、更に、境界座標の検出精度を 向上させることができる。
[0192] 図 17 (a)から図 17 (c)は、レンズ収差補正処理(図 12 (c)の S 1224)を説明するた めの図である。レンズ収差補正処理は、図 17 (a)に示すように、撮像光学系 21の収 差により、入射した光束が理想レンズにより結像すべき位置力 ずれてしまうことに対 して、撮像された画素の位置を本来結像すべき位置へ補正する処理である。
[0193] この収差補正は、例えば、図 17 (b)に示すように、撮像光学系 21の撮像範囲にお いて、入射光の角度である半画角 Maをパラメータとして光学系の収差を計算して求 めたデータを基に補正する。
[0194] この収差補正処理では、レンズ収差補正プログラム 36fに基づき実行され、コード 境界座標格納部 37eに格納されて 、るコード境界座標にっ 、て行なわれ、収差補正 処理がなされたデータは、収差補正座標格納部 37gに格納される。
[0195] 具体的には、実画像における任意点座標(ccdx、 ccdy)を理想カメラ画像での座 標(ccdcx、 ccdcy)に変換する次の(1)から(3)のカメラキャリブレーション (近似式) を用いて補正する。
[0196] 本実施例では、収差量 dist (%)は、半画角 Ma (deg)を用いて dist=f (Ma)と記述 する。また、撮像光学系 21の焦点距離を focallength (mm)、 ccd画素長 pixelleng th (mm)、 CCD22におけるレンズの中心座標を(Centx、 Centv)とする。 [0197] (l) ccdcx= (ccdx - Centx) / ( 1 + dist/ 100) +Centx
(2) ccdcy= (ccdy - Centy) / ( 1 + dist/ 100) +Centy
(3) hfa=arctan[ ( ( (ccdx— Centx) 2 + (ccdy— Centy) 2) ) X pixellength Z focallength]
図 18 (a)及び図 18 (b)は、三角測量原理による実空間変換処理(図 12 (c)の S 12 25)において、 CCD空間における座標から、 3次元空間における 3次元座標を算出 する方法を説明するための図である。
[0198] 三角測量原理による実空間変換処理では、三角測量演算プログラム 36gによって、 収差補正座標格納部 37gに格納されている収差補正がなされたコード境界座標に ついての 3次元空間における 3次元座標が算出される。こうして算出される 3次元座 標は、 3次元座標格納部 37hに格納される。
[0199] 本実施形態では、撮像される横方向に湾曲した原稿 Pに対する画像入力出力装置 1の座標系として、撮像光学系 21の光軸方向を Z軸、その Z軸に沿って撮像光学系 2 1の主点位置力 VPZ離れた地点を原点、画像入出力装置 1に対して水平方向を X 軸、垂直方向を Y軸とする。
[0200] また、 3次元空間 (X, Υ, Z)への画像投影部 13からの投影角度 θ p、撮像レンズ光 学系 20の光軸と画像投影部 13の光軸との距離を D、撮像光学系 21の Y方向の視 野を Yftopから Yfbottom、 X方向の視野を Xfstartから Xfend、 CCD22の Y軸方 向の長さ(高さ)を Hc、 X軸方向の長さ(幅)を Wcとする。尚、投影角度 Θ pは、各画 素毎に割り当てられたコードに基づき与えられる。
[0201] この場合、 CCD22の任意座標 (ccdx, ccdy)に対応する 3次元空間位置 (X, Y, Z)は、 CCD22の結像面上の点と、パターン光の投影点と、 X— Y平面に交差する点 とで形成される三角形について 5つの式を解くことで得ることができる。 (l) Y= - (ta η Θ p) Z + PPZ+tan θ p— D + cmp (Xtarget) (2) Y = - (Ytarget/VPZ) Z+Yt arget
(3) X =— (Xtarget/ VP) Z+ Xtarget
(4) Ytarget = Yftop - (ccdcy/Hc) X (Yftop— Yf bottom)
(5) Xtarget = Xfstart + (ccdcx/Wc) X (Xf end—Xfstart) 尚、上記式(1)における cmp (Xtarget)は、撮像光学系 20と画像投影部 13とのズ レを補正する関数であり、ズレが無い理想的な場合には cmp (Xtarget) =0とみなす ことができる。
[0202] 一方、上述したのと同様に、画像投影部 13に含まれる投影 LCD19上の任意座標
(lcdcx、 lcdcy)と 3次元空間中の 3次元座標 (X, Υ, Z)との関係は次の(1)から (4) の式で表せる。
[0203] 尚、本実施例では、画像投影部 13の主点位置 (0, 0, PPZ)、画像投影部 13の Y 方向の視野を Ypftopから Ypf bottom, X方向の視野を Xpfstartから Xpfend、投景 LCD19の Y軸方向の長さ(高さ)を Hp、 X軸方向の長さ(幅) Wpとする。
(1) Y =— ( Yptarget/PPZ) Z + Yptarget
(2) X= - (Xptarget/PPZ) Z+Xptarget
(3) Yptarget = Ypftop - (lcdcy/Hp) X (Xpf top— Xpf bottom)
(4) Xptarget = Xpfstart + (lcdcx/Wp) X (Xpfend— Xpfstart)
この関係式を利用することで、 3次元空間座標 (X, Υ, Z)を上記(1)から (4)の式に 与えることで、 LCD空間座標を (lcdcx, lcdcy)を算出することができる。よって、例え ば、 3次元空間に任意の形状、文字を投影するための LCD素子パターンを算出する ことができる。
[0204] 図 19は、平面化画像処理(図 6の S611)のフローチャートである。平面化画像処理 は、例えば、図 1に示すような湾曲した状態の原稿 Pを撮像した場合や矩形状の原稿 を斜め方向から撮像した場合 (撮像された画像は台形状になる)であっても、その原 稿が湾曲していない状態や鉛直方向から撮像したような状態に平面化された平面化 画像を取得、表示する処理である。
[0205] この処理では、まず、 CCD22に高解像度設定信号を送信し(S1901)、モニタ LC D10にファインダ画像を表示する(S1902)。
[0206] 次に、レリーズボタン 8をスキャンし(S1903a)、レリーズボタン 8が半押しされたか 否かを判断する(S 1903b)。半押しされていれば(SI 903b : Yes)、オートフォーカス (AF)および自動露出 (AE)機能を起動し、ピント、絞り、シャツタスピードを調節する (S1903c)。尚、半押しされていなければ(S1903b :No)、 S1903a力らの処理を繰 り返す。
[0207] 次に、再び、レリーズボタン 8をスキャンし(S1903d)、レリーズボタン 8が全押しされ たか否かを判断する(S1903e)。全押しされていれば(SI 903e : Yes)、フラッシュモ ード力否かを判断する(S1903f)。
[0208] その結果、フラッシュモードであれば(S1903f : Yes)、フラッシュ 7を投光して(S 19 03g)、撮影が行われる(S1903h)。フラッシュモードでなければ(S1903f :No)、フ ラッシュ 7を投光することなく撮影する(S1903h)。尚、 S1903eの判断において、全 押しされて 、なければ(S 1903e: No)、 S 1903aからの処理を繰り返す。
[0209] 次に、上述した 3次元形状検出処理(図 10の S1006)と同一の処理である 3次元形 状検出処理を行い、被写体の 3次元形状を検出する(S1906)。
[0210] 次に、 3次元形状検出処理 (S1906)によって得られた 3次元形状検出結果に基づ き、原稿 Pの姿勢を演算する原稿姿勢演算処理を行う(S1907)。この処理によって 原稿 Pの姿勢パラメータとして、原稿 Pの画像入力装置 1に対する位置 Lや角度 Θ、 湾曲 φ (X)が演算される。
[0211] 次に、その演算結果に基づき、後述する平面変換処理を行い (S1908)、たとえ、 原稿 Pが湾曲して 、たとしても湾曲して 、な 、状態に平面化された平面化画像を生 成する。
[0212] 次に、平面変化処理 (S1908)によって得られた平面化画像を外部メモリ 27に格納 し(S1909)、平面化画像をモニタ LCD10に表示する(S1910)。
[0213] そして、モード切替スィッチ 9に変化が無いか否かを判断し (S1911)、その結果、 変化が無ければ(S1911 :Yes)、再び、 S702からの処理を繰り返す。変化があれば (S1911 :No)、当該処理を終了する。
[0214] 図 20 (a)から図 20 (c)は、原稿姿勢演算処理(図 19の S1907)を説明するための 図である。尚、本等の原稿の仮定条件として、原稿 Pの湾曲は y方向に一様であると する。この原稿姿勢演算処理では、まず、図 20 (a)に示すように、 3次元座標格納部 37hに格納されているコード境界に関する座標データから 3次元空間位置において 2列に並ぶ点を回帰曲線近似した 2本の曲線を求める。
[0215] 例えば、パターン光を投影した範囲の上下それぞれ 4分の 1の位置情報 (コード 63 とコード 64の境界と、コード 191とコード 192との境界とに関する境界)から求めること ができる。
[0216] その 2本の曲線の X軸方向の位置が「0」における点を結ぶ直線を想定し、この直線 が Z軸と交わる点、つまり、光軸が原稿 Pと交差する点を、原稿 Pの 3次元空間位置 (0 , 0,ひとし、この直線力 ¾—Y平面となす角を原稿 Pの X軸まわりの傾き Θとする。
[0217] 次に、図 20 (b)に示すように、原稿 Ρを、先に求めた X軸まわりの傾き Θ分だけ逆方 向に回転変換し、つまり、原稿 Ρを Χ—Υ平面に対して平行にした状態を想定する。
[0218] そして、図 20 (c)に示すように、 X— Ζ平面における原稿 Ρの断面にっ 、て、 Ζ軸方 向の変位を Xの関数として湾曲 φ (X)で表すことができる。こうして、原稿姿勢パラメ ータとして、原稿 Ρの位置 Lや角度 0、湾曲 φ (X)が演算され、当該処理を終了する
[0219] 図 21は、平面変換処理(図 19の S1908)のフローチャートである。この処理は、ま ず、 RAM37のワーキングエリア 371に当該処理の処理領域を割り当て、当該処理に 用いるカウンタ bの変数を初期値 (b = 0)に設定する(S2101)。
[0220] 次に、原稿姿勢演算プログラム 36hでの演算結果による原稿 Pの位置 Lと、傾き Θと 、湾曲 φ (X)とに基づき、パターン光無画像格納部 37bに格納されたパターン光無 画像の 4隅の点を、それぞれ、 Z方向に— L移動し、 X軸方向に— Θ回転し、更に φ ( X)にする湾曲の逆変換 (後述する「湾曲処理」と同等な処理)により求められる点で 構成される矩形領域 (つまり、原稿 Pの文字等が書かれた面が略直交方向から観察 されたような画像となる矩形領域)を設定すると共に、この矩形領域内に含まれる画 素数 aを求める(S2102)。
[0221] 次に、設定された矩形領域を構成する各画素に対応するパターン光無画像上の座 標を求めて、この座標周辺の画素情報から、平面化画像の各画素の画素情報を設 定する。
[0222] つまり、まず、カウンタ bが画素数 aに到達したか否かを判断する(S2103)。カウン タ bが画素数 aに到達していなければ (S2103 :No)、矩形領域を構成する 1つの画 素について、 Y軸を中心に湾曲 φ (X)回転移動させる湾曲計算処理を行い(S2104 )、 X軸を中心に傾き Θ回転移動させ (S2105)、 Z軸方向に距離 Lだけシフトさせる( S2106)。
[0223] 次に、求められた 3次元空間位置を、先の 3角測量の逆関数により理想カメラで写さ れた CCD画像上の座標 (ccdcx, ccdcy)を求め(S2107)、使用している撮像光学 系 20の収差特性に従って、先のカメラキャリブレーションの逆関数により、実際のカメ ラで写された CCD画像上の座標(ccdx, ccdy)を求め(S2108)、この位置に対応 するパターン光無画像の画素の状態を求めて、 RAM37のワーキングエリア 371に格 納する(S2109)。
[0224] そして、次の画素について上述した S2103から S2109までの処理を実行すベぐ カウンタ bに「1」を加算する(S2110)。
[0225] こうして、 S2104から S2110までの処理をカウンタ bが画素数 aになるまで繰り返す と(S2103 :Yes)、 S2101において、当該処理を実行するためにワーキングエリア 3 71に割り当てた処理領域を開放して(S2111)、当該処理を終了する。
[0226] 図 22 (a)は、湾曲処理(図 21の S2104)についての概略を説明するための図であ り、図 22 (b)は平面変換処理(図 19の S 1908)によって平面化された原稿 Pを示して いる。尚、この湾曲処理についての詳細については、電子情報通信学会論文誌 DII Vol.J86-D2 No.3 p409「アイスキャナによる湾曲ドキュメント撮影」に詳細に開 示されている。
[0227] 湾曲 Ζ= φ (X)は、求められたコード境界座標列(実空間)で構成される 3次元形状 を、任意の Y値における XZ平面に平行な平面切断された断面形状を、最小 2乗法に より多項式で近似した式で表現される。
[0228] 湾曲する曲面を平面化する場合、図 22 (a)に示すように、 Ζ= φ (χ)上の点に対応 する平面化された点は、 Ζ= φ (0)から Ζ= φ (X)までの曲線の長さによって対応付 けられることになる。
[0229] こうした湾曲処理を含む平面変換処理によって、例えば、図 1のように湾曲している 状態の原稿 Ρを撮像した場合であっても、図 22 (b)に示すように、平面化された平面 画像を取得することができ、このように平面化された画像を用いれば OCR処理の精 度を高めることができる。したがって、その画像によって、原稿に記載された文字や図 形等を明確に認識することができる。 [0230] 図 23 (a)及び図 23 (b)は、上述した実施形態における光源レンズ 18に関する別の 例としての一群の光源レンズ 50を説明するための図であり、図 23 (a)は光源レンズ 5 0を示す側面図であり、図 23 (b)は光源レンズ 50を示す平面図である。尚、上述した 実施形態における構成部品と同一な部材には、同一の符号を付し、その説明は省略 する。
[0231] 上述の実施形態における光源レンズ 18は、各 LED 17に対応する凸状の非球面形 状からレンズ部 18aをベース 18b上に一体的に並べて配置して構成されているのに 対し、図 23 (a)及び図 23 (b)に示す例では、 LED17の各々を内包する砲弾型に形 成された榭脂製レンズが各々別体に構成されて ヽる。
[0232] このように、各 LED17を内包する光源レンズ 50を各々別体に構成することで、各 々の LED17とそれに対応する各々の光源レンズ 50との位置が 1対 1で決められるの で、相対的な位置精度を高めることができ、光の出射方向が揃うという効果がある。
[0233] これに対し、基板 16上にレンズアレイをまとめて位置合わせをすると、各々の LED 17がダイボンディングされる際の位置決め誤差やレンズアレイと基板の線膨張係数 の違いから、光の出射方向がバラバラになってしまう恐れがある。
[0234] 従って、投影 LCD19の面には、 LED17からの光の入射方向が投影 LCD19の面 に垂直にそろった光が照射され、投影光学系 20の絞りを均一に通過できる様になる 。したがって、投影画像の照度ムラを抑えることができ、結果的に高品質な画像を投 影することができる。尚、光源レンズ 50に内包されている LED17はリードおよびリフ レクタカ なる電極 51を介して基板 16に実装されている。
[0235] 1群の光源レンズ 50の外周面には、各光源レンズ 50を束ねて所定の方向に規制 する枠状の弾性を有する固定部材 52が配置されている。この固定部材 52は、ゴム、 プラスチック等の榭脂製材料で構成されて 、る。
[0236] 光源レンズ 50は各 LED17に対して各々別体に構成されているので、各光源レン ズ 50の凸状の先端部が形成する光軸の角度を正しく揃えて投影 LCD19と対向する ように設置することが困難である。
[0237] そこで、図 23 (a)及び図 23 (b)に示す例では、この固定部材 52によって 1群の光 源レンズ 50を取り囲み、各光源レンズ 50の外周面同士を接触させ、各光源レンズ 50 の光軸が投影 LCD19と正しい角度で対向するように各光源レンズ 50の位置が規制 されている。このような構成によれば、各光源レンズ 50力 投影 LCD19に向けて光 を略垂直に照射させることができる。よって、投影 LCD19の面に垂直にそろった光 が照射され、投影レンズの絞りを均一に通過できる様になるため、投影画像の照度ム ラを抑えることができる。従って、一層、高品質な画像を投影することができる。
[0238] 尚、この固定部材 52は、予め所定の大きさに規定された剛性を有するものであって も良ぐ弾性力を有する材料で構成してその弾性力によって各光源レンズ 50の位置 を所定の位置に規制するようにしても良 、。
[0239] 図 24 (a)及び図 24 (b)は、図 23 (a)及び図 23 (b)で説明した光源レンズ 50を所定 位置に規制する固定部材 52に関する別の例としての固定部材 60を説明するための 図である。図 24 (a)は光源レンズ 50を固定した状態を示す斜視図であり、図 24 (b) はその部分的な断面図である。尚、上述したのと同一の部材には、同一の符号を付 し、その説明は省略する。
[0240] この固定部材 60は、各光源レンズ 50の外周面に沿った断面を有する断面視円錐 形状の貫通孔 60aが穿設された板状に形成されている。各光源レンズ 50は、この各 貫通孔 60aに差し込まれて固定される。
[0241] この固定部材 60と基板 16との間には弾性を有する付勢プレート 61が介装されて おり、更に、この付勢プレート 61と各光源レンズ 50の下面との間には、電極 51を囲 むように弾性を有する環状の Oリング 62が配置されて 、る。
[0242] 尚、光源レンズ 50に内包される LED17は、付勢プレート 61、基板 16に穿設された スルーホールを貫通する電極 51を介して基板 16に実装されている。
[0243] 上述した固定部材 60によれば、各光源レンズ 50を、そのレンズの外周面に沿った 断面を有する各貫通孔 60aに各々貫通させて固定するので、上述した固定部材 50 よりも、一層確実に光源レンズ 50の光軸を正しい角度で投影 LCD19に向くように固 定することができる。
[0244] また、組立時に、 Oリング 62の付勢力によって LED17を正しい位置に付勢して固 定することができる。
[0245] また、本装置 1を運搬する場合等に生ずる可能性のある衝撃力を、 Oリング 62の弾 性力によって吸収することができ、その衝撃の影響で光源レンズ 50の位置がずれて しまい、光源レンズ 50から垂直に投影 LCD19に向けて光を照射できないという不都 合を防止することができる。
[0246] 上記実施形態において、図 12 (b)の S1211、 S1215の処理は、撮像手段、撮像 工程、撮像ステップと位置付けられる。図 12 (c)の S1221の処理は、輝度画像生成 手段、輝度画像生成工程、或いは輝度画像生成ステップと位置付けられる。図 12 (c )の S1222の処理は、コード画像生成手段、コード画像生成工程、或いはコード画像 生成ステップと位置付けられる。図 10の S 1006の処理は、 3次元形状算出手段、 3 次元形状算出工程、或いは 3次元形状算出ステップと位置付けられる。
[0247] 図 14の S1408の処理は、第 1画素検出手段、第 1画素検出工程、或いは第 1画素 検出ステップと位置付けられる。図 15の S1501の処理は、輝度画像抽出手段、輝度 画像抽出工程、或いは輝度画像抽出ステップと位置付けられる。図 16の S1603、 S 1604の一部の処理は、画素領域特定手段、画素領域特定工程、或いは画素領域 特定ステップと位置付けられる。図 16の S1604—部の処理は、近似式算出手段、近 似式算出工程、或いは近似式算出ステップと位置付けられる。図 15の S1505、 S15 07の処理は、境界座標算出手段、境界座標算出工程、或いは境界座標算出ステツ プと位置付けられる。
[0248] 以上実施形態に基づき本発明を説明したが、本発明は上記実施形態に何ら限定 されるものでなぐ本発明の主旨を逸脱しない範囲内で種々の改良変形が可能であ ることは容易に推察できるものである。
[0249] 例えば、上記実施形態では、平面化画像モードとして、平面化された画像を取得、 表示する処理を説明したが、周知の OCR機能を搭載させ、平面化された平面画像 をこの OCR機能によって読み取らせるように構成しても良い。この場合には、 OCR機 能によって湾曲した状態の原稿を読み取る場合に比べて高精度に原稿に記載され た文章を読み取ることができる。
[0250] また、上記実施形態における図 15の S1501においては、明暗の変化を持つ輝度 画像の全部を抽出し、その全部について暫定的な CCDY値を求める場合について 説明したが、抽出する輝度画像としては、全部である必要はなぐ 1枚以上であれば 、その枚数に限定されることはない。抽出する枚数を減らすことで境界座標を高速に 求めることができる。
[0251] また、上記実施形態における図 15の S1507では、 fCCDY[i]を加重平均し、図 1 6の S1607では efCCDY[j]を近似多項式として、各値を平均化する場合について 説明したが、各値を平均化する方法としては、これらに限定されるものではない。例 えば、各値の単純平均値を採る方法、各値の中央値を採用する方法、各値の近似 式を算出し、その近似式における検出位置を境界座標とする方法、統計的な演算に より求める方法等であっても良い。
[0252] 本発明の一つの実施形態において、境界座標検出手段により検出される着目コー ドの境界座標は、撮像手段の分解能よりも高い分解能にて算出されても良い。
[0253] このような構成によれば、境界座標検出手段または境界座標検出工程により検出さ れる着目コードの境界座標は、撮像手段または撮像工程の分解能よりも高 ヽ分解能 (サブピクセル精度)にて算出されるので、高精度に被写体の 3次元形状を算出する ことができるという効果が得られる。
[0254] 本発明の一つの実施形態において、画素領域特定手段は、コード画像を参照して 第 1画素を含む画素列とは別に、第 1画素を含む画素列から連続して並ぶ少なくとも 1列以上の画素列力も画素領域を特定しても良い。また、近似式算出手段は、画素 領域の画素列毎に近似式を算出しても良い。境界座標検出手段は、その近似式毎 に輝度に関する所定の閾値を有する位置を算出し、その算出結果に基づいて着目 コードの境界座標を検出しても良い。
[0255] このような構成によれば、少なくとも 2列以上の画素列に基づいて算出される少なく とも 2以上の近似式毎に所定の閾値を有する位置が算出されるので、 1つの近似式 を利用して境界座標を求める場合より、境界座標を検出する精度を向上させることが できる。よって、一層高精度に被写体の 3次元形状を算出することができるという効果 が得られる。
[0256] 本発明の一つの実施形態において、輝度画像抽出手段は、抽出輝度画像を少な くとも 1枚以上抽出しても良い。また、画素領域特定手段は、各抽出輝度画像につい てコード画像を参照して画素領域を特定しても良い。近似式算出手段は、各抽出輝 度画像力も検出される画素領域内の画素列毎に近似式を算出しても良い。また、こ の場合、境界座標検出手段は、その近似式毎に輝度に関する所定の閾値を有する 位置を算出し、その算出結果に基づいて着目コードの境界座標を検出しても良い。
[0257] このような構成によれば、少なくとも 2以上の抽出輝度画像に基づいて少なくとも 2 以上の近似式毎に所定の閾値を有する位置が算出されるので、 1つの近似式を利用 して境界座標を求める場合より、境界座標を検出する精度を向上させることができる 。よって、一層高精度に被写体の 3次元形状を算出することができるという効果が得ら れる。
[0258] 本発明の一つの実施形態において、輝度画像抽出手段は、抽出輝度画像を少な くとも 1枚以上抽出しても良い。また、画素領域特定手段は、各抽出輝度画像につい て、コード画像を参照して第 1画素を含む画素列とは別に、第 1画素を含む画素列か ら連続して並ぶ少なくとも 1列以上の画素列力 画素領域を特定しても良い。近似式 算出手段は、各抽出輝度画像について、画素領域内の画素列毎に近似式を算出し ても良い。この場合、境界座標検出手段は、各抽出輝度画像について、その近似式 毎に輝度に関する所定の閾値を有する位置を算出し、その算出結果に基づいて前 記着目コードの境界座標を検出しても良 、。
[0259] このような構成によれば、少なくとも 2以上の抽出輝度画像の各々について、少なく とも 2列以上の画素列に基づ 、て算出される少なくとも 4以上の近似式毎に所定の閾 値を有する位置が算出されるので、 1つの近似式を利用して境界座標を求める場合 より、境界座標を検出する精度を向上させることができる。よって、一層高精度に被写 体の 3次元形状を算出することができるという効果が得られる。
[0260] 本発明の一つの実施形態において、境界座標検出手段は、近似式毎に算出され る位置の加重平均値または中央値を算出し、その算出結果に基づいて着目コードの 境界座標を検出しても良い。
[0261] このような構成によれば、境界座標検出手段または境界座標検出工程は、近似式 毎に算出される位置の加重平均値または中央値を算出し、その算出結果に基づい て着目コードの境界座標を検出する。したがって、簡単な計算付加ですみ演算装置 に要する負担を軽減でき、処理の高速ィ匕を図ることができると 、う効果が得られる。 [0262] 本発明の一つの実施形態において、境界座標検出手段は、近似式毎に算出され る位置の近似式を算出し、その算出結果に基づいて着目コードの境界座標を検出し ても良い。
[0263] このような構成によれば、境界座標検出手段または境界座標検出工程は、近似式 毎に算出される位置の近似式を算出し、その算出結果に基づいて着目コードの境界 座標を検出する。したがって、加重平均値または中央値を算出するのに比べて、高 精度で 3次元形状を算出することができるという効果が得られる。
[0264] 本発明の一つの実施形態において、境界座標検出手段は、抽出輝度画像単位で 近似式毎に算出される位置の近似式を算出し、その算出結果に基づいて着目コード の境界座標を算出し、各抽出輝度画像単位で算出した着目コードの境界座標につ いて、加重平均または中央値を算出し、その結果に基づいて着目コードの境界座標 を検知しても良い。
[0265] このような構成によれば、境界座標検出手段は、抽出輝度画像単位で近似式毎に 算出される位置の近似式を算出し、その算出結果に基づいて着目コードの境界座標 を算出し、各抽出輝度画像単位で算出した着目コードの境界座標について、加重平 均または中央値を算出し、その結果に基づいて着目コードの境界座標を検知する。 したがって、簡単な計算付加ですみ演算装置に要する負担を軽減でき、処理の高速 化を図ることができると 、う効果が得られる。

Claims

請求の範囲
[1] 明と暗とを交互に並べてなる複数種類のノターン光の各々を時系列に被写体に投 影する投影手段と、その投影手段力 各パターン光が投影されて 、る状態の被写体 を撮像する撮像手段と、その撮像手段によって撮像される各撮像画像力ゝら各画素の 輝度を算出した複数の輝度画像を生成する輝度画像生成手段と、その輝度画像生 成手段によって生成される複数の輝度画像に対して所定の閾値による閾値処理を行 つた結果により、各画素毎に所定のコードを割り当てたコード画像を生成するコード 画像生成手段と、そのコード画像生成手段によって生成されるコード画像を利用して 被写体の 3次元形状を算出する 3次元形状算出手段とを備えた 3次元形状検出装置 であって、
前記コード画像における前記パターン光と交差する方向の検出位置において、着 目コードを有する画素に隣接し、その着目コードとは異なるコードを有する第 1画素を 検出する第 1画素検出手段と、
その第 1画素検出手段で検出される第 1画素と対応する位置において、明と暗との 境界を有する輝度画像を前記複数の輝度画像の内から抽出する輝度画像抽出手段 と、
前記第 1画素に隣接する所定領域の画素からなる画素領域を特定する画素領域 特定手段と、
その画素領域特定手段で特定される画素領域において前記抽出輝度画像におけ る輝度の変化を表す近似式を算出する近似式算出手段と、
その近似式算出手段によって算出される近似式において輝度に関する所定の閾 値を有する位置を算出し、その算出結果に基づいて前記着目コードの境界座標を検 出する境界座標検出手段とを備え、
前記 3次元形状算出手段は、前記コード画像を利用して前記境界座標検出手段で 検出される境界座標に基づき、被写体の 3次元形状を算出することを特徴とする 3次 元形状検出装置。
[2] 前記境界座標検出手段により検出される前記着目コードの境界座標は、前記撮像 手段の分解能よりも高い分解能にて算出されることを特徴とする請求項 1に記載の 3 次元形状検出装置。
[3] 前記画素領域特定手段は、前記コード画像を参照して前記第 1画素を含む画素列 とは別に、前記第 1画素を含む画素列から連続して並ぶ少なくとも 1列以上の画素列 から前記画素領域を特定し、
前記近似式算出手段は、前記画素領域の画素列毎に前記近似式を算出し、前記 境界座標検出手段は、その近似式毎に輝度に関する所定の閾値を有する位置を算 出し、その算出結果に基づいて前記着目コードの境界座標を検出することを特徴と する請求項 1に記載の 3次元形状検出装置。
[4] 前記輝度画像抽出手段は、前記抽出輝度画像を少なくとも 1枚以上抽出し、
前記画素領域特定手段は、各抽出輝度画像について前記コード画像を参照して 前記画素領域を特定し、
前記近似式算出手段は、各抽出輝度画像から検出される前記画素領域内の画素 列毎に前記近似式を算出し、
前記境界座標検出手段は、その近似式毎に輝度に関する所定の閾値を有する位 置を算出し、その算出結果に基づいて前記着目コードの境界座標を検出することを 特徴とする請求項 1に記載の 3次元形状検出装置。
[5] 前記輝度画像抽出手段は、前記抽出輝度画像を少なくとも 1枚以上抽出し、
前記画素領域特定手段は、各抽出輝度画像について、前記コード画像を参照して 前記第 1画素を含む画素列とは別に、前記第 1画素を含む画素列から連続して並ぶ 少なくとも 1列以上の画素列から前記画素領域を特定し、
前記近似式算出手段は、各抽出輝度画像について、前記画素領域内の画素列毎 に前記近似式を算出し、
前記境界座標検出手段は、各抽出輝度画像について、その近似式毎に輝度に関 する所定の閾値を有する位置を算出し、その算出結果に基づいて前記着目コードの 境界座標を検出することを特徴とする請求項 1に記載の 3次元形状検出装置。
[6] 前記境界座標検出手段は、前記近似式毎に算出される位置の加重平均値または 中央値を算出し、その算出結果に基づいて前記着目コードの境界座標を検出するこ とを特徴とする請求項 3から 5のいずれかに記載の 3次元形状検出装置。
[7] 前記境界座標検出手段は、前記近似式毎に算出される位置の近似式を算出し、そ の算出結果に基づいて前記着目コードの境界座標を検出することを特徴とする請求 項 3に記載の 3次元形状検出装置。
[8] 前記境界座標検出手段は、抽出輝度画像単位で前記近似式毎に算出される位置 の近似式を算出し、その算出結果に基づいて前記着目コードの境界座標を算出し、 前記各抽出輝度画像単位で算出した前記着目コードの境界座標について、加重平 均または中央値を算出し、その結果に基づいて前記着目コードの境界座標を検知 することを特徴とする請求項 5に記載の 3次元形状検出装置。
[9] 明と暗とを交互に並べてなる複数種類のノターン光の各々を時系列に被写体に投 影する投影工程と、その投影工程力 各パターン光が投影されて 、る状態の被写体 を撮像する撮像工程と、その撮像工程によって撮像される各撮像画像から各画素の 輝度を算出した複数の輝度画像を生成する輝度画像生成工程と、その輝度画像生 成工程によって生成される複数の輝度画像に対して所定の閾値による閾値処理を行 つた結果により、各画素毎に所定のコードを割り当てたコード画像を生成するコード 画像生成工程と、そのコード画像生成工程によって生成されるコード画像を利用して 被写体の 3次元形状を算出する 3次元形状算出工程とを備えた 3次元形状検出方法 であって、
前記コード画像生成工程の後に、前記コード画像における前記パターン光と交差 する方向の検出位置において、着目コードを有する画素に隣接し、その着目コードと は異なるコードを有する第 1画素を検出する第 1画素検出工程と、
その第 1画素検出工程で検出される第 1画素と対応する位置において、明と暗との 境界を有する輝度画像を前記複数の輝度画像の内から抽出する輝度画像抽出工程 と、
前記第 1画素に隣接する所定領域の画素からなる画素領域を特定する画素領域 特定工程と、
その画素領域特定工程で特定される画素領域において前記抽出輝度画像におけ る輝度の変化を表す近似式を算出する近似式算出工程と、
その近似式算出工程によって算出される近似式において輝度に関する所定の閾 値を有する位置を算出し、その算出結果に基づいて前記着目コードの境界座標を検 出する境界座標検出工程とを備え、
前記 3次元形状算出工程は、前記コード画像を利用して前記境界座標検出工程で 検出される境界座標に基づき、被写体の 3次元形状を算出することを特徴とする 3次 元形状検出方法。
明と暗とを交互に並べてなる複数種類のパターン光の各々を時系列に被写体に投 影する投影ステップと、その投影ステップ力 各パターン光が投影されて 、る状態の 被写体を撮像する撮像ステップと、その撮像ステップによって撮像される各撮像画像 力ゝら各画素の輝度を算出した複数の輝度画像を生成する輝度画像生成ステップと、 その輝度画像生成ステップによって生成される複数の輝度画像に対して所定の閾値 による閾値処理を行った結果により、各画素毎に所定のコードを割り当てたコード画 像を生成するコード画像生成ステップと、そのコード画像生成ステップによって生成さ れるコード画像を利用して被写体の 3次元形状を算出する 3次元形状算出ステップと を備えた 3次元形状検出プログラムであって、
前記コード画像における前記パターン光と交差する方向の検出位置において、着 目コードを有する画素に隣接し、その着目コードとは異なるコードを有する第 1画素を 検出する第 1画素検出ステップと、
その第 1画素検出ステップで検出される第 1画素と対応する位置において、明と暗 との境界を有する輝度画像を前記複数の輝度画像の内から抽出する輝度画像抽出 ステップと、
前記第 1画素に隣接する所定領域の画素からなる画素領域を特定する画素領域 特定ステップと、
その画素領域特定ステップで特定される画素領域において前記抽出輝度画像に おける輝度の変化を表す近似式を算出する近似式算出ステップと、
その近似式算出ステップによって算出される近似式において輝度に関する所定の 閾値を有する位置を算出し、その算出結果に基づいて前記着目コードの境界座標を 検出する境界座標検出ステップとを備え、
前記 3次元形状算出ステップは、前記コード画像を利用して前記境界座標検出ス テツプで検出される境界座標に基づき、被写体の 3次元形状を算出することを特徴と する 3次元形状検出プログラム。
PCT/JP2005/005859 2004-03-31 2005-03-29 3次元形状検出装置、3次元形状検出方法、3次元形状検出プログラム Ceased WO2005095886A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US11/536,340 US7672505B2 (en) 2004-03-31 2006-09-28 Apparatus, method and program for three-dimensional-shape detection

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004105426A JP2005293075A (ja) 2004-03-31 2004-03-31 3次元形状検出装置、3次元形状検出方法、3次元形状検出プログラム
JP2004-105426 2004-03-31

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US11/536,340 Continuation-In-Part US7672505B2 (en) 2004-03-31 2006-09-28 Apparatus, method and program for three-dimensional-shape detection

Publications (1)

Publication Number Publication Date
WO2005095886A1 true WO2005095886A1 (ja) 2005-10-13

Family

ID=35063876

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2005/005859 Ceased WO2005095886A1 (ja) 2004-03-31 2005-03-29 3次元形状検出装置、3次元形状検出方法、3次元形状検出プログラム

Country Status (3)

Country Link
US (1) US7672505B2 (ja)
JP (1) JP2005293075A (ja)
WO (1) WO2005095886A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7576845B2 (en) 2006-03-30 2009-08-18 Brother Kogyo Kabushiki Kaisha Three-dimensional color and shape measuring device
US7630088B2 (en) 2005-04-15 2009-12-08 Brother Kogyo Kabushiki Kaisha Apparatus for measurement of 3-D shape of subject using transformable holder with stable and repeatable positioning of the same subject
CN108664534A (zh) * 2017-04-02 2018-10-16 田雪松 应用服务数据的获取方法及系统
CN112580382A (zh) * 2020-12-28 2021-03-30 哈尔滨工程大学 基于目标检测二维码定位方法

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7756327B2 (en) * 2002-07-26 2010-07-13 Olympus Corporation Image processing system having multiple imaging modes
JP4198114B2 (ja) * 2002-07-26 2008-12-17 オリンパス株式会社 撮影装置、画像処理システム
CN101701849A (zh) * 2004-01-23 2010-05-05 奥林巴斯株式会社 图像处理系统以及照相机
GB2410794A (en) * 2004-02-05 2005-08-10 Univ Sheffield Hallam Apparatus and methods for three dimensional scanning
US7957007B2 (en) * 2006-05-17 2011-06-07 Mitsubishi Electric Research Laboratories, Inc. Apparatus and method for illuminating a scene with multiplexed illumination for motion capture
US8672225B2 (en) 2012-01-31 2014-03-18 Ncr Corporation Convertible barcode reader
CA2707246C (en) 2009-07-07 2015-12-29 Certusview Technologies, Llc Automatic assessment of a productivity and/or a competence of a locate technician with respect to a locate and marking operation
US8532342B2 (en) * 2008-02-12 2013-09-10 Certusview Technologies, Llc Electronic manifest of underground facility locate marks
US8290204B2 (en) 2008-02-12 2012-10-16 Certusview Technologies, Llc Searchable electronic records of underground facility locate marking operations
US8330771B2 (en) * 2008-09-10 2012-12-11 Kabushiki Kaisha Toshiba Projection display device and control method thereof
US8572193B2 (en) 2009-02-10 2013-10-29 Certusview Technologies, Llc Methods, apparatus, and systems for providing an enhanced positive response in underground facility locate and marking operations
US8902251B2 (en) 2009-02-10 2014-12-02 Certusview Technologies, Llc Methods, apparatus and systems for generating limited access files for searchable electronic records of underground facility locate and/or marking operations
CA2897462A1 (en) * 2009-02-11 2010-05-04 Certusview Technologies, Llc Management system, and associated methods and apparatus, for providing automatic assessment of a locate operation
WO2010098954A2 (en) * 2009-02-27 2010-09-02 Body Surface Translations, Inc. Estimating physical parameters using three dimensional representations
WO2012033602A1 (en) 2010-08-11 2012-03-15 Steven Nielsen Methods, apparatus and systems for facilitating generation and assessment of engineering plans
WO2012023256A2 (en) * 2010-08-19 2012-02-23 Canon Kabushiki Kaisha Three-dimensional measurement apparatus, method for three-dimensional measurement, and computer program
JP5984409B2 (ja) * 2012-02-03 2016-09-06 キヤノン株式会社 三次元計測システム及び方法
JP6041513B2 (ja) 2012-04-03 2016-12-07 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
US9188433B2 (en) 2012-05-24 2015-11-17 Qualcomm Incorporated Code in affine-invariant spatial mask
US9229580B2 (en) * 2012-08-03 2016-01-05 Technokey Company Limited System and method for detecting object in three-dimensional space using infrared sensors
US10368053B2 (en) * 2012-11-14 2019-07-30 Qualcomm Incorporated Structured light active depth sensing systems combining multiple images to compensate for differences in reflectivity and/or absorption
JP6320051B2 (ja) * 2014-01-17 2018-05-09 キヤノン株式会社 三次元形状計測装置、三次元形状計測方法
US10032279B2 (en) * 2015-02-23 2018-07-24 Canon Kabushiki Kaisha Information processing apparatus, information processing method, and storage medium
DE102015212910A1 (de) 2015-07-09 2017-01-12 Sac Sirius Advanced Cybernetics Gmbh Vorrichtung zur Beleuchtung von Gegenständen
US9754182B2 (en) 2015-09-02 2017-09-05 Apple Inc. Detecting keypoints in image data
CN110672036B (zh) * 2018-07-03 2021-09-28 杭州海康机器人技术有限公司 确定投影区域的方法及装置
JP7219034B2 (ja) * 2018-09-14 2023-02-07 株式会社ミツトヨ 三次元形状測定装置及び三次元形状測定方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60152903A (ja) * 1984-01-21 1985-08-12 Kosuke Sato 位置計測方法
JPH05332737A (ja) * 1991-03-15 1993-12-14 Yukio Sato 形状計測装置
JP2000055636A (ja) * 1998-08-06 2000-02-25 Nekusuta:Kk 三次元形状計測装置及びパターン光投影装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5646733A (en) * 1996-01-29 1997-07-08 Medar, Inc. Scanning phase measuring method and system for an object at a vision station
EP1067362A1 (en) * 1999-07-09 2001-01-10 Hewlett-Packard Company Document imaging system
JP3519698B2 (ja) * 2001-04-20 2004-04-19 照明 與語 3次元形状測定方法
US7391523B1 (en) * 2003-06-02 2008-06-24 K-Space Associates, Inc. Curvature/tilt metrology tool with closed loop feedback control
WO2005031252A1 (ja) * 2003-09-25 2005-04-07 Brother Kogyo Kabushiki Kaisha 3次元形状検出装置、3次元形状検出システム、及び、3次元形状検出プログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60152903A (ja) * 1984-01-21 1985-08-12 Kosuke Sato 位置計測方法
JPH05332737A (ja) * 1991-03-15 1993-12-14 Yukio Sato 形状計測装置
JP2000055636A (ja) * 1998-08-06 2000-02-25 Nekusuta:Kk 三次元形状計測装置及びパターン光投影装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7630088B2 (en) 2005-04-15 2009-12-08 Brother Kogyo Kabushiki Kaisha Apparatus for measurement of 3-D shape of subject using transformable holder with stable and repeatable positioning of the same subject
US7576845B2 (en) 2006-03-30 2009-08-18 Brother Kogyo Kabushiki Kaisha Three-dimensional color and shape measuring device
CN108664534A (zh) * 2017-04-02 2018-10-16 田雪松 应用服务数据的获取方法及系统
CN112580382A (zh) * 2020-12-28 2021-03-30 哈尔滨工程大学 基于目标检测二维码定位方法
CN112580382B (zh) * 2020-12-28 2022-06-17 哈尔滨工程大学 基于目标检测二维码定位方法

Also Published As

Publication number Publication date
US7672505B2 (en) 2010-03-02
JP2005293075A (ja) 2005-10-20
US20070031029A1 (en) 2007-02-08

Similar Documents

Publication Publication Date Title
WO2005095886A1 (ja) 3次元形状検出装置、3次元形状検出方法、3次元形状検出プログラム
JP2005293075A5 (ja)
JP4734843B2 (ja) 3次元形状検出装置
WO2006035736A1 (ja) 3次元情報取得方法および3次元情報取得装置
JP2007271395A (ja) 3次元色形状計測装置
TWI668997B (zh) 產生全景深度影像的影像裝置及相關影像裝置
CN106127745B (zh) 结构光3d视觉系统与线阵相机的联合标定方法及装置
JP2005291839A5 (ja)
CN106537252B (zh) 转光三维成像装置和投射装置及其应用
JP2004132829A (ja) 3次元撮影装置と3次元撮影方法及びステレオアダプタ
JP4552485B2 (ja) 画像入出力装置
US20220124253A1 (en) Compensation of three-dimensional measuring instrument having an autofocus camera
US20210131798A1 (en) Structured light projection optical system for obtaining 3d data of object surface
US20220358678A1 (en) Compensation of three-dimensional measuring instrument having an autofocus camera
JP2005352835A (ja) 画像入出力装置
JP4552484B2 (ja) 画像入出力装置
JP2005293290A5 (ja)
JP2006031506A (ja) 画像入出力装置
WO2006112297A1 (ja) 3次元形状測定装置
CN212779132U (zh) 深度数据测量设备和结构光投射装置
WO2005122553A1 (ja) 画像入出力装置
JP2006267031A (ja) 3次元入力装置および3次元入力方法
WO2007119396A1 (ja) 三次元情報測定装置
JP2006004010A (ja) 画像入出力装置
JP2527159B2 (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 KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA 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 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: 11536340

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

WWW Wipo information: withdrawn in national office

Country of ref document: DE

WWP Wipo information: published in national office

Ref document number: 11536340

Country of ref document: US

122 Ep: pct application non-entry in european phase

Ref document number: 05727546

Country of ref document: EP

Kind code of ref document: A1