[go: up one dir, main page]

WO2023017740A1 - 情報処理装置、プログラム及びパターンコード - Google Patents

情報処理装置、プログラム及びパターンコード Download PDF

Info

Publication number
WO2023017740A1
WO2023017740A1 PCT/JP2022/029129 JP2022029129W WO2023017740A1 WO 2023017740 A1 WO2023017740 A1 WO 2023017740A1 JP 2022029129 W JP2022029129 W JP 2022029129W WO 2023017740 A1 WO2023017740 A1 WO 2023017740A1
Authority
WO
WIPO (PCT)
Prior art keywords
pattern
information processing
image
projection image
clock
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/JP2022/029129
Other languages
English (en)
French (fr)
Inventor
令央 宮下
智志 田畑
正俊 石川
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.)
University of Tokyo NUC
Original Assignee
University of Tokyo NUC
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 University of Tokyo NUC filed Critical University of Tokyo NUC
Priority to JP2023541402A priority Critical patent/JPWO2023017740A1/ja
Priority to CN202280054501.0A priority patent/CN117795287A/zh
Priority to US18/681,698 priority patent/US12483670B2/en
Publication of WO2023017740A1 publication Critical patent/WO2023017740A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/74Projection arrangements for image reproduction, e.g. using eidophor
    • 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
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/80Geometric correction

Definitions

  • the present invention relates to information processing devices, programs and pattern codes.
  • Structured light is used to measure the distance to each point on the surface of an object.
  • Structured light is a pattern of light that is projected onto an object, and includes what is referred to as the PN series, M series, and debru-in series. Techniques using the debru-in series include those described in Patent Document 1 and the like.
  • the present invention provides an information processing device, a program, and a pattern code that can identify positions in a pattern at high speed.
  • an information processing device includes a projection image generation section, a decoding section, and a phase identification section.
  • the projection image generator is configured to generate a projection image based on predetermined pattern information and output the generated projection image to the projection device.
  • the projected image includes a clock pattern and a data pattern based on pattern information.
  • the decoding unit is configured to be able to decode the data pattern into a value based on the captured image of the object captured by the imaging device.
  • a captured image is an image obtained by capturing an object on which a projection image is projected by a projection device.
  • the phase identification unit is configured to be able to identify the phase of each part of the object based on the value and the pattern information.
  • FIG. 1 is a diagram showing a configuration of an information processing device 1;
  • FIG. 2 is a block diagram showing a functional configuration of the information processing device 1;
  • FIG. FIG. 4 is a diagram showing an example of a pattern of a projection image; 4 is an enlarged view of a pattern P;
  • FIG. FIG. 10 is a diagram showing an example of a pattern PR; The difference PD between the pattern P and the pattern PR is shown.
  • 4 is a diagram showing details of a pattern P;
  • FIG. FIG. 10 is a diagram for explaining decoding from a pattern P;
  • FIG. FIG. 10 is a diagram for explaining decoding from a pattern P;
  • FIG. FIG. 10 is a diagram for explaining decoding from a pattern P;
  • FIG. 10 is a diagram for explaining decoding from a pattern P;
  • FIG. FIG. 10 is a diagram for explaining decoding from a pattern P;
  • FIG. 3 is an activity diagram showing the flow of operations of the information processing device 1.
  • FIG. 10 is a diagram showing an example of a pattern considering the influence of lens distortion;
  • FIG. 10 is a diagram showing an example of extending a pattern in the spatial direction;
  • FIG. 10 is a diagram showing an example of extending a pattern in the spatial direction;
  • FIG. 10 is a diagram showing an example of extending a pattern in the spatial direction;
  • FIG. 10 is a diagram showing an example of extending a pattern in the spatial direction;
  • FIG. 10 is a diagram showing an example of a pattern including clock inversion;
  • FIG. 10 is a diagram showing an example of a pattern including clock inversion;
  • FIG. 10 is a diagram for explaining details of a pattern including clock inversion;
  • FIG. 10 is a diagram for explaining details of a pattern including clock
  • the program for realizing the software appearing in this embodiment may be provided as a non-transitory computer-readable medium (Non-Transitory Computer-Readable Medium), or may be downloaded from an external server. It may be provided as possible, or may be provided so that the program is activated on an external computer and the function is realized on the client terminal (so-called cloud computing).
  • the term “unit” may include, for example, a combination of hardware resources implemented by circuits in a broad sense and software information processing that can be specifically realized by these hardware resources.
  • various information is handled in the present embodiment, and these information are, for example, physical values of signal values representing voltage and current, and signal values as binary bit aggregates composed of 0 or 1. It is represented by high and low, or quantum superposition (so-called quantum bit), and communication and operation can be performed on a circuit in a broad sense.
  • a circuit in a broad sense is a circuit realized by at least appropriately combining circuits, circuits, processors, memories, and the like.
  • Application Specific Integrated Circuit ASIC
  • Programmable Logic Device for example, Simple Programmable Logic Device (SPLD), Complex Programmable Logic Device (CPLD), and field It includes a programmable gate array (Field Programmable Gate Array: FPGA)).
  • FIG. 1 is a diagram showing an arrangement example of an information processing apparatus 1 according to an embodiment of the present invention.
  • an information processing device 1 is connected to a projection device 2 and an imaging device 3 to configure a system 100 .
  • This system 100 scans the shape of the object 200 by measuring the distance to each part of the object 200 .
  • the information processing device 1 projects a predetermined pattern from the projection device 2 and processes the image captured by the imaging device 3 to identify the shape of the target object 200 .
  • the projection device 2 projects the pattern output by the information processing device 1 onto the target object 200, and is, for example, a projector.
  • the imaging device 3 captures an image of the object 200 on which the pattern is projected by the projection device 2, and is, for example, a camera.
  • the camera may capture still images or may capture moving images.
  • a moving image of the target object 200 is captured, a part of it, for example, one frame, is used as a still image.
  • a high-speed camera capable of shooting at a high frame rate can also be used.
  • FIG. 2 is a diagram showing the configuration of the information processing device 1.
  • the information processing apparatus 1 has a processing section 11, a storage section 12, a temporary storage section 13, an external device connection section 14, and a communication section 15, and these constituent elements are are electrically connected via a communication bus 16 inside the information processing apparatus 1 .
  • the processing unit 11 is implemented by, for example, a central processing unit (CPU), operates according to a predetermined program stored in the storage unit 12, and implements various functions.
  • CPU central processing unit
  • the storage unit 12 is a non-volatile storage medium that stores various information. This is realized, for example, by a storage device such as a hard disk drive (HDD) or a solid state drive (SSD). Note that the storage unit 12 can be arranged in another device that can communicate with the information processing device 1 .
  • a storage device such as a hard disk drive (HDD) or a solid state drive (SSD).
  • HDD hard disk drive
  • SSD solid state drive
  • the temporary storage unit 13 is a volatile storage medium. This is implemented by a memory such as a random access memory (RAM), for example, and temporarily stores necessary information (arguments, arrays, etc.) when the processing unit 11 operates.
  • RAM random access memory
  • the external device connection unit 14 is, for example, a connection unit conforming to a standard such as a universal serial bus (USB) or a high-definition multimedia interface (HDMI (registered trademark)).
  • USB universal serial bus
  • HDMI high-definition multimedia interface
  • An input device and a display device such as a monitor can be connected.
  • the projection device 2 and the imaging device 3 are connected to the external device connection section 14 .
  • the communication unit 15 is, for example, communication means conforming to the local area network (LAN) standard, and realizes communication between the information processing apparatus 1 and the local area network or a network such as the Internet via the local area network. .
  • LAN local area network
  • a computer such as a personal computer can be used as the information processing device 1, and the information processing device 1 can be configured using a plurality of computers.
  • the information processing device 1 projects a predetermined pattern from the projection device 2 and processes the image captured by the imaging device 3 to specify the shape of the target object 200. Realize each functional unit that This program is a program that causes a computer to operate or function as an information processing device.
  • the target object 200 may be a stationary object, or may be a moving object such as a robot or a living body.
  • FIG. 3 is a block diagram showing the functional configuration of the information processing device 1.
  • the information processing apparatus 1 includes a pattern information management unit 101 , a projection image generation unit 102 , an image processing unit 103 , a decoding unit 104 and a phase identification unit 105 .
  • the pattern information management unit 101 manages pattern information for generating patterns to be projected by the projection device 2, and also manages mapping functions for specifying phases from values decoded from the projected patterns. Details of pattern information and patterns will be described later.
  • the projection image generation unit 102 generates a projection image based on pattern information managed by the pattern information management unit 101 , that is, predetermined pattern information, and outputs the generated projection image to the projection device 2 .
  • pattern information managed by the pattern information management unit 101 that is, predetermined pattern information
  • the second projection image is an image obtained by inverting the contrast of the first projection image.
  • the projected image is configured to include a clock pattern and a data pattern based on the pattern information, and the clock pattern and the data pattern are arranged adjacent to each other. Specifically, in the projection image, the rows of clock patterns and the rows of data patterns are alternately arranged. The alignment of the clock pattern and the data pattern is the arrangement of the patterns in a fixed direction.
  • the arrangement is called a column, and the projection image consists of a clock pattern column and a data pattern column. will be arranged alternately.
  • the clock pattern and data pattern may be composed of binary values of light and dark, or may be composed of multi-values based on gradation.
  • the image processing unit 103 corrects the distortion of the captured image acquired from the imaging device 3.
  • the captured image is an image captured by the imaging device 3 of the object on which the projection image is projected by the projection device 2 .
  • the captured image acquired from the imaging device 3 has distortion in the portion corresponding to the projected image due to the positional relationship between the projection device 2 and the imaging device 3, and this is corrected.
  • a parallelization process is performed so that the portion corresponding to the projected image becomes parallel. Note that image processing such as parallelization processing can be omitted.
  • decoding by the decoding unit 104 is possible. memory access becomes possible, and high-speed processing can be realized.
  • the decoding unit 104 is configured to be able to decode the data pattern into a value based on the captured image that has been captured by the imaging device and corrected by the image processing unit 103 .
  • the value is, for example, a value represented by 8 bits.
  • decoding section 104 decodes a portion of the first row of data patterns, for example, a portion of the first row of the data pattern, and a portion of the second row of data patterns, for example, the second row of the data pattern. Decode the data pattern into a value based on a portion of the row of 2.
  • the decoding unit 104 captures an image of the object on which the first projection image is projected and the second projection image.
  • the data pattern is decoded into a value based on the difference from the image of the object on which is projected.
  • the phase identification unit 105 is configured to be able to identify the phase of each part of the object based on the values decoded by the decoding unit 104 and the pattern information managed by the pattern information management unit 101 .
  • the pattern information management unit 101 manages a mapping function generated based on the pattern information, and the phase identification unit 105 inputs the value decoded by the decoding unit 104 to this mapping function. to get the phase.
  • a mapping function may be configured, for example, as a lookup table.
  • the first information processing apparatus is provided with a pattern information management section and a projection image generation section.
  • the pattern information management section and projection image generation section correspond to the pattern information management section 101 and the projection image generation section 102, respectively.
  • the second information processing device includes a pattern information management section, an image processing section, a decoding section, and a phase identification section.
  • the pattern information management unit, image processing unit, decoding unit, and phase identification unit correspond to the pattern information management unit 101, image processing unit 103, decoding unit 104, and phase identification unit 105, respectively.
  • Pattern of Projection Image Next, the pattern of the projection image generated by the projection image generation unit 102 will be described. Note that, in the following description, the arrangement of patterns will be described as a pattern row. Also, here, a case will be described in which the pattern is composed of binary values of light and dark, and the shape of the target object 200 is specified using two projection images.
  • the binary values that make up the pattern are, for example, light and dark with different levels of lightness. It should be noted that the difference in lightness is expressed as a difference in luminance during projection.
  • FIG. 4 is a diagram showing an example of a projected image pattern.
  • the pattern P shown in the figure is composed of binary values of white and black, and when projected by the projection device 2, a bright and dark pattern is generated on the object 200 and the like.
  • FIG. 5 is an enlarged view of the pattern P.
  • the pattern P is composed of pattern parts PP, and the pattern parts PP of the same pattern are arranged repeatedly.
  • FIG. 6 is a diagram showing an example of the pattern PR.
  • the pattern PR is composed of pattern parts PPR, and the pattern parts PPR of the same pattern are arranged repeatedly. 5 and 6, the pattern PR is obtained by inverting the white portion of the pattern P to black and the black portion to white. is also reversed.
  • the information processing device 1 determines the difference between the captured images corresponding to the two projection images, and specifies the data pattern from the difference. , decodes to a value. For example, if a bright part of the captured image is "1" and a dark part of the captured image is "0", the difference is one of "1", "0", and "-1". Since the bright part in the pattern P is dark in the pattern PR, the difference of the part is 1-0, which is "1", and the dark part in the pattern P is bright in the pattern PR. is 0-1, which is "-1". In addition, when a shadow occurs due to the shape of the target object 200, the shadow portion is dark in both the captured image when the pattern P is projected and the captured image when the pattern PR is projected. is 0-0 and becomes "0".
  • FIG. 7 shows the difference PD between the pattern P and the pattern PR. This difference PD is similar to the pattern P if the object 200 does not cast a shadow.
  • the pattern P is projected, and the bright portion of the captured image is "1" and the dark portion of the captured image is " 0' can be decoded to the value.
  • the process of specifying the shape of the object 200 using one projection image is effective when the object 200 is moving and the movement is fast.
  • FIG. 8 is a diagram showing details of the pattern P.
  • the pattern P includes an upper bit string MSB, which is part of a data pattern based on predetermined pattern information, a lower bit string LSB, and a clock pattern row CLK, which are another part.
  • a clock row is a row in which 1s and 0s are alternately arranged, and is a portion used as a delimiter when 0s or 1s are consecutive in the upper bit string MSB and the lower bit string LSB.
  • bit string used here is a term and has a different meaning from “pattern string”.
  • parts indicated by alphabets in the figure are 1 or 0, and the same value is set for the same alphabet.
  • the pattern P is a pattern code representing information, in which the clock pattern and the data pattern are arranged adjacently, and the rows (arrangements) of the clock patterns and the rows (arrangements) of the data patterns alternate. placed in The arrangement of the data patterns can be determined arbitrarily. For example, the upper bit string MSB and the lower bit string LSB in FIG. It is also possible to place even bits in the positions indicated by the lower bit string LSB.
  • the pattern P excluding the clock pattern that is, the data pattern is a debruin-torus array, in which codes indicating one piece of information can be superimposed while being shifted, can be composed of at least two lines, and can be phase-shifted. This yields the advantage of only looking at a small area to find out.
  • FIG. 9 to 12 are diagrams for explaining decoding from pattern P.
  • FIG. Decoding from the pattern P is performed from a portion of the upper bit string MSB, which is the first row of the data pattern, and a portion of the lower bit string LSB, which is the second row of the data pattern. That is, the pattern forms a code corresponding to one value from a portion of the first row of the data pattern and a portion of the second row of the data pattern.
  • 4 bits are obtained from each of the upper bit string MSB and the lower bit string LSB, and the two are combined to specify an 8-bit value.
  • the value of the pattern block B11 is "11000000", which is 192 in decimal. If the position of pattern block B11 is represented by "0", the above mapping function will return "0" for input "192". Similarly, the value of pattern block B12 is "10010001" (145 in decimal), and the value of pattern block B13 is "00110010" (50 in decimal). The above mapping function will return a '1' for an input of '145' and a '2' for an input of '50'. The value of pattern block B21 is "11000000", which is the same as the value of pattern block B11.
  • the pattern P can assign a value to each bright and dark block in the horizontal direction of the figure, and can assign a value to each two bright and dark blocks in the vertical direction of the figure.
  • ABCDabcd, BCDEbcde, CDEFcdef, DEFGdefg, etc. have different values. It will be managed by the information management unit 101 . Note that when the arrangement of patterns is configured as a pattern row, it is the same as when the pattern row is rotated by 90 degrees.
  • the first example is "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0" at the position indicated by the upper bit string MSB in FIG.
  • the second example is "1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,0" at the position indicated by the upper bit string MSB in FIG. , 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 1, 1, 0, 1, 0 , 1,0,1,0,1,0,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,1,0,0,1,1,1,0,0,1,1,1,1,0 ,0,1,1,1,0 ,0,1,1,1,0 ,0 ,1,1,1,0 ,0 , 0,1,1,0 , 0, , 0, 1,1,1,0 , 0, 1, 0, 1, 0, , 0, 1, 1, 1, 1, 1, 1, 1, 1, , 0, 1, 1, 1, , 0, 1, 1, 1 , 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 , 1,0,1,1,1,1,0,1,1,1,1,1,11 , 1, 1,1,1,1 , 1,1,1,1,1,1,
  • FIG. 13 is an activity diagram showing the flow of operations of the information processing apparatus 1. As shown in FIG. 13
  • the projection image generation unit 102 determines pattern information to be used from the pattern information managed by the pattern information management unit 101 (A101). Note that this process can be omitted if one piece of pattern information is used. Subsequently, the projection image generation unit 102 generates a pattern image based on the determined pattern information (A102) and outputs it to the projection device 2.
  • A101 pattern information managed by the pattern information management unit 101
  • the projection device 2 projects the pattern image onto the object 200 (A103). Then, while the pattern image is projected onto the object 200, the imaging device 3 takes an image of the object 200 (A104).
  • the captured image captured at this time is as shown in FIG. 14, for example.
  • the projection image generation unit 102 generates a pattern image by inverting the previously used pattern image (A105) and outputs it to the projection device 2. Then, when the pattern image is output to the projection device 2, the projection device 2 projects the pattern image onto the object 200 (A106). Then, while the pattern image is projected onto the object 200, the imaging device 3 takes an image of the object 200 (A107).
  • the captured image captured at this time is as shown in FIG. 15, for example.
  • the image processing unit 103 performs parallelization processing of the captured image (A108).
  • a parallelized version of the captured image shown in FIG. 14 is, for example, as shown in FIG.
  • the decoding unit 104 calculates the difference between both images (A109).
  • An image representing the calculated difference is shown in FIG. In FIG. 17, a portion with a difference of "1" is represented in gray, a portion with a difference of "-1” is represented in black, and a portion with a difference of "0", that is, a shadow portion is represented in "white”.
  • the decoding unit 104 performs decoding processing based on the calculated difference (A110), and the phase identification unit 105 inputs the decoded value to the mapping function managed by the pattern information management unit 101. to identify the phase (A111).
  • Modification 1 is an example in which the projected image generation unit 102 generates a projected image in consideration of lens distortion.
  • both the projection device 2 and the imaging device 3 use lenses. Although these lenses are processed to reduce distortion, they cannot completely eliminate the effects of distortion. Further, the projection device 2 can project an image from which the effects of lens distortion are removed by adjustment, but it may be difficult to remove the effects of lens distortion of the imaging device 3 .
  • FIG. 18 is a diagram showing an example of a pattern considering the influence of lens distortion.
  • the bright portions of the pattern are indicated by white (blank), and the dark portions are indicated by oblique lines.
  • the pattern VP shown in FIG. 18 includes rows L1 to L7. Among them, row L2, row L4, and row L6 are clock pattern rows, and row L1, row L3, row L5, and row L7 are data pattern rows. That is, in pattern VP, the clock and data patterns are arranged as rows of the projection image. Of course, the clock patterns and data patterns may also be arranged as columns of the projection image.
  • each row or column becomes wider as the distance from the center of the projected image increases.
  • the row L4 is a row passing through the center of the pattern VP
  • the widths of the rows L3 and L5 are wider than that of the row L4
  • the widths of the rows L2 and L6 are wider than that of the row L4.
  • row L1 and row L7 are the widest in the pattern VP.
  • the width of these rows corresponds to the lens distortion indicated by dashed line D in the figure.
  • the dashed line D is added for explanation and does not constitute the pattern VP.
  • FIG. 18 is a diagram for explanation, and the line width and the number of patterns are different from the actual ones.
  • Modification 2 projects only one pattern and performs decoding from one captured image without calculating the difference. In this case, an error may occur in the shaded portion, but the error can be avoided by using an error correction code or the like.
  • FIG. 19 is a diagram showing an example of extending a pattern in the spatial direction. The example shown in the figure is obtained by inverting the clock pattern row CLK of the pattern shown in FIG.
  • Modification 4 extends the pattern to be projected in the spatial direction.
  • FIG. 20 is a diagram showing an example of extending a pattern in the spatial direction. The example shown in the figure uses clock pattern columns in addition to clock pattern rows.
  • Modification 5 extends the pattern to be projected in the time direction. This involves sequentially projecting a plurality of different patterns and decoding from a plurality of picked-up images.
  • Modification 6 extends the pattern to be projected in the gradation direction.
  • the pattern is composed not of binary but of multi-value using gradation expression.
  • a gradation is represented by, for example, multiple values having different lightness levels.
  • Modification 7 expands the pattern to be projected in the wavelength direction. For example, a pattern corresponding to each color of RGB is projected in each color, and the picked-up image is separated into each color. is. Further, in combination with modification 6, gradation expression may be used for each color of RGB.
  • Modification 8 is a clock pattern in which the number of patterns in the projection image is increased by including clock inversion points. In the case of this modified example 8, the clock pattern differs from others in the width of the clock pattern at the inversion point or the data pattern adjacent to the inversion point.
  • FIG. 21 and 22 are diagrams showing examples of patterns including clock inversion.
  • the width of the patterns forming the clock pattern row CLK is narrower at the inversion point I1 of the clock pattern row CLK than at other portions.
  • the width of the pattern forming the upper bit string MSB and the lower bit string LSB is wider at the inversion point I2 of the clock pattern row CLK than in other portions. Therefore, at both the inversion point I1 and the inversion point I2, the upper bit string MSB and the lower bit string LSB are not aligned with the clock pattern row CLK.
  • the example shown in FIG. 21 and the example shown in FIG. 22 can be used in the same way, but it may be difficult to realize the pattern in FIG. 21 depending on the resolutions of the projection device 2 and the imaging device 3 Therefore, in that case, the pattern of FIG. 22 is used.
  • FIG. 23 is a diagram for explaining the details of the pattern including clock inversion.
  • n patterns (n is a natural number) of pattern P1, pattern P2, pattern P3, .
  • I2 on the right side in the drawing
  • n patterns of pattern Pn+1, pattern Pn+2, pattern Pn+3, . . . pattern P2n In other words, inverting the clock doubles the number of patterns. This is because the number of bits is increased by one by adding one bit of the clock pattern row CLK to the pattern formed by the upper bit string MSB and the lower bit string LSB.
  • 1 bit of the most recently detected clock pattern row CLK is added to the head of the upper bit string MSB, and if there are 8 bits in the upper bit string MSB and the lower bit string LSB, 1 bit of the clock pattern row CLK is interpreted as the 9th bit.
  • the number of patterns increases, so even if the clock inversion point I2 itself cannot be detected due to shadows, the detected pattern itself can be identified. Since it is a thing, a trouble does not arise.
  • the pattern P1 and the pattern Pn+1 are the same pattern, but they are not adjacent to each other and the patterns positioned between them are also different.
  • the present invention may be provided in each aspect described below.
  • An information processing apparatus comprising a projection image generation unit, a decoding unit, and a phase identification unit, wherein the projection image generation unit generates a projection image based on predetermined pattern information,
  • the projected image is configured to be capable of outputting to a projection device, the projected image includes a clock pattern and a data pattern based on the pattern information, and the decoding unit is based on a captured image of an object captured by an imaging device.
  • the imaged image is an image obtained by photographing the object with the projection image projected by the projection device, and the phase identification unit includes the value and the An information processing apparatus configured to be able to identify the phase of each part of the object based on the pattern information.
  • the projection image is such that the arrangement of the clock patterns and the arrangement of the data patterns are alternately arranged.
  • the decoding unit may decode the An information processing device that decodes data patterns into values.
  • the clock pattern and the data pattern are configured as rows or columns of the projection image, and the width of each row or column is An information processing device that becomes wider as it moves away from the center of the projected image.
  • the clock pattern includes a clock inversion point, and the clock pattern of the inversion point or data adjacent to the inversion point An information processing device in which pattern widths are different from others.
  • the projection image generation unit generates a first projection image and a second projection image, and the second projection image is the first projection image.
  • the image is an image obtained by inverting the brightness of the projection image
  • the decoding unit obtains an image obtained by photographing the object with the first projection image projected, and an image of the object with the second projection image projected.
  • An information processing device that decodes the data pattern into the value based on a difference from an image obtained by photographing the object.
  • An information processing apparatus comprising a projection image generation unit, wherein the projection image generation unit generates a projection image based on predetermined pattern information, and is capable of outputting the generated projection image to a projection device.
  • the projected image includes a clock pattern and a data pattern based on the pattern information, and the clock pattern and the data pattern are arranged adjacent to each other.
  • An information processing device comprising a decoding unit and a phase identification unit, wherein the decoding unit is configured to be able to decode a data pattern into a value based on an image captured by an imaging device, and The captured image is an image of the object on which a projection image generated based on predetermined pattern information is projected, and the projection image includes a clock pattern and a data pattern based on the pattern information. and wherein the phase identification unit is configured to be able to identify the phase of each part of the object based on the value and the pattern information.
  • a pattern code representing information including a clock pattern and a data pattern based on predetermined pattern information, wherein the clock pattern and the data pattern are arranged adjacent to each other.
  • part of the first row of the data pattern and part of the second row of the data pattern form a code corresponding to one value. pattern code.

Landscapes

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

Abstract

【課題】パターン中の位置の特定を高速に行うことのできる情報処理装置、プログラム及びパターンコードを提供すること。 【解決手段】本発明の一態様によれば、情報処理装置が提供される。この情報処理装置は、投影画像生成部と、復号部と、位相特定部とを備える。投影画像生成部は、予め定めたパターン情報に基づいて投影画像を生成し、該生成した投影画像を投影装置に出力可能に構成される。投影画像は、クロックパターンと、パターン情報に基づくデータパターンとを含む。復号部は、撮像装置により対象物を撮像した撮像画像に基づいてデータパターンを値に復号可能に構成される。撮像画像は、投影装置により投影画像が投影された状態の対象物を撮影した画像である。位相特定部は、値とパターン情報とに基づいて、対象物の各部の位相を特定可能に構成される。

Description

情報処理装置、プログラム及びパターンコード
 本発明は、情報処理装置、プログラム及びパターンコードに関する。
 対象物の表面の各点への距離を測る際に、構造化光が用いられている。構造化光は、対象物に投影される光のパターンであり、PN系列、M系列、デブル-イン系列と称されるもの等がある。なお、デブル-イン系列を用いた技術には、特許文献1に記載されたもの等がある。
特許第5547227号公報
 ところで、構造化光を用いて距離を測る際には、構造化光のパターンが投影された対象物を撮像し、その撮像画像の点が、パターンのどの部分であるのかを特定する必要がある。このため、この特定する処理を高速化することが望まれている。
 本発明では上記事情を鑑み、パターン中の位置の特定を高速に行うことのできる情報処理装置、プログラム及びパターンコードを提供することとした。
 本発明の一態様によれば、情報処理装置が提供される。この情報処理装置は、投影画像生成部と、復号部と、位相特定部とを備える。投影画像生成部は、予め定めたパターン情報に基づいて投影画像を生成し、該生成した投影画像を投影装置に出力可能に構成される。投影画像は、クロックパターンと、パターン情報に基づくデータパターンとを含む。復号部は、撮像装置により対象物を撮像した撮像画像に基づいてデータパターンを値に復号可能に構成される。撮像画像は、投影装置により投影画像が投影された状態の対象物を撮影した画像である。位相特定部は、値とパターン情報とに基づいて、対象物の各部の位相を特定可能に構成される。
 本発明の一態様によれば、対象物の各点の位置の特定を高速に行うことが可能となる。
本発明の実施形態に係る情報処理装置1の配置例を示した図である。 情報処理装置1の構成を示した図である。 情報処理装置1の機能的な構成を示すブロック図である。 投影画像のパターンの例を示した図である。 パターンPを拡大した図である。 パターンPRの例を示した図である。 パターンPとパターンPRの差分PDを示したものである。 パターンPの詳細を示した図である。 パターンPからの復号を説明するための図である。 パターンPからの復号を説明するための図である。 パターンPからの復号を説明するための図である。 パターンPからの復号を説明するための図である。 情報処理装置1の動作の流れを示すアクティビティ図である。 撮像画像の例を示した図である。 撮像画像の例を示した図である。 撮像画像を平行化した例を示した図である。 算出した差分を画像で表した図である。 レンズの歪みの影響を考慮したパターンの例を示した図である。 パターンを空間方向へ拡張する場合の例を示した図である。 パターンを空間方向へ拡張する場合の例を示した図である。 クロックの反転を含めたパターンの例を示した図である。 クロックの反転を含めたパターンの例を示した図である。 クロックの反転を含めたパターンの詳細を説明するための図である。
 以下、図面を用いて本発明の実施形態について説明する。以下に示す実施形態中で示した各種特徴事項は、互いに組み合わせ可能である。
 ところで、本実施形態に登場するソフトウェアを実現するためのプログラムは、コンピュータが読み取り可能な非一時的な記録媒体(Non-Transitory Computer-Readable Medium)として提供されてもよいし、外部のサーバからダウンロード可能に提供されてもよいし、外部のコンピュータで当該プログラムを起動させてクライアント端末でその機能を実現(いわゆるクラウドコンピューティング)するように提供されてもよい。
 また、本実施形態において「部」とは、例えば、広義の回路によって実施されるハードウェア資源と、これらのハードウェア資源によって具体的に実現されうるソフトウェアの情報処理とを合わせたものも含みうる。また、本実施形態においては様々な情報を取り扱うが、これら情報は、例えば電圧・電流を表す信号値の物理的な値、0又は1で構成される2進数のビット集合体としての信号値の高低、又は量子的な重ね合わせ(いわゆる量子ビット)によって表され、広義の回路上で通信・演算が実行されうる。
 また、広義の回路とは、回路(Circuit)、回路類(Circuitry)、プロセッサ(Processor)、及びメモリ(Memory)等を少なくとも適当に組み合わせることによって実現される回路である。すなわち、特定用途向け集積回路(Application Specific Integrated Circuit:ASIC)、プログラマブル論理デバイス(例えば、単純プログラマブル論理デバイス(Simple Programmable Logic Device:SPLD)、複合プログラマブル論理デバイス(Complex Programmable Logic Device:CPLD)、及びフィールドプログラマブルゲートアレイ(Field Programmable Gate Array:FPGA))等を含むものである。
1.全体構成
 図1は、本発明の実施形態に係る情報処理装置1の配置例を示した図である。同図に示すように、情報処理装置1は、投影装置2及び撮像装置3と接続され、システム100を構成する。このシステム100は、対象物200の各部までの距離を測定することで、対象物200の形状をスキャンするものである。
 情報処理装置1は、投影装置2から所定のパターンを投影させるとともに、撮像装置3が撮像した画像を処理して、対象物200の形状を特定する。
 投影装置2は、情報処理装置1が出力するパターンを対象物200に投影するもので、例えば、プロジェクタである。
 撮像装置3は、投影装置2によりパターンが投影された対象物200を撮像するもので、例えば、カメラである。カメラは、静止画を撮像するものでもよく、動画を撮像するものであってもよい。対象物200の動画を撮像した場合には、その一部、例えば、1フレーム分を、静止画として利用することになる。もちろん、高フレームレートでの撮影が可能な高速カメラを用いることもできる。
2.情報処理装置の構成
 次に、情報処理装置1の構成について説明する。図2は、情報処理装置1の構成を示した図である。同図に示すように、情報処理装置1は、処理部11と、記憶部12と、一時記憶部13と、外部装置接続部14と、通信部15とを有しており、これらの構成要素が情報処理装置1の内部において通信バス16を介して電気的に接続されている。
 処理部11は、例えば、中央処理装置(Central Processing Unit:CPU)により実現されるもので、記憶部12に記憶された所定のプログラムに従って動作し、種々の機能を実現する。
 記憶部12は、様々な情報を記憶する不揮発性の記憶媒体である。これは、例えばハードディスクドライブ(Hard Disk Drive:HDD)やソリッドステートドライブ(Solid State Drive:SSD)等のストレージデバイスにより実現される。なお、記憶部12は、情報処理装置1と通信可能な別の装置に配するようにすることも可能である。
 一時記憶部13は、揮発性の記憶媒体である。これは、例えばランダムアクセスメモリ(Random Access Memory:RAM)等のメモリにより実現され、処理部11が動作する際に一時的に必要な情報(引数、配列等)を記憶する。
 外部装置接続部14は、例えばユニバーサルシリアルバス(Universal Serial Bus:USB)や高精細度マルチメディアインターフェース(High-Definition Multimedia Interface:HDMI(登録商標))といった規格に準じた接続部であり、キーボード等の入力装置やモニタ等の表示装置を接続可能としている。また、投影装置2と、撮像装置3は、外部装置接続部14に接続される。
 通信部15は、例えばローカルエリアネットワーク(Local Area Network:LAN)規格に準じた通信手段であり、情報処理装置1とローカルエリアネットワークやこれを介したインターネット等のネットワークとの間の通信を実現する。
 なお、情報処理装置1には、パーソナルコンピュータ等のコンピュータを利用することが可能であり、複数のコンピュータを用いて情報処理装置1を構成することも可能である。
3.情報処理装置1の機能
 次に、情報処理装置1の機能について説明する。情報処理装置1は、投影装置2から所定のパターンを投影させるとともに、撮像装置3が撮像した画像を処理して、対象物200の形状を特定するもので、プログラムにしたがって動作することで、後述する各機能部を実現する。このプログラムは、コンピュータを情報処理装置として動作又は機能させるプログラムである。また、対象物200は、静止している物体であってもよく、動きを伴うもの、例えば、ロボットや生体であってもよい。
 図3は、情報処理装置1の機能的な構成を示すブロック図である。同図に示すように、情報処理装置1は、パターン情報管理部101と、投影画像生成部102と、画像処理部103と、復号部104と、位相特定部105とを備える。
 パターン情報管理部101は、投影装置2に投影させるパターンを生成するためのパターン情報を管理するとともに、投影されたパターンから復号された値から位相を特定するためのマッピング関数を管理する。なお、パターン情報及びパターンの詳細については、後述する。
 投影画像生成部102は、パターン情報管理部101が管理するパターン情報、つまり、予め定めたパターン情報に基づいて投影画像を生成し、その生成した投影画像を投影装置2に出力する。また、詳細は後述するが、2つの投影画像を用いて対象物200の形状を特定する場合があり、その場合には、投影画像生成部102は、第1の投影画像と第2の投影画像とを生成する。第2の投影画像は、第1の投影画像の明暗を反転させた画像である。また、投影画像は、クロックパターンと、パターン情報に基づくデータパターンとを含むように構成され、クロックパターンとデータパターンとが、隣接して配置される。具体的には、投影画像は、クロックパターンの並びと、データパターンの並びとが交互に配置されている。クロックパターンとデータパターンの並びとは、パターンを一定方向に並べたものであり、例えば、パターンの並び方向が横方向であれば、その並びは行と称され、投影画像は、クロックパターンの行と、データパターンの行とが交互に配置されることになり、パターンの並び方向が縦方向であれば、その並びは列と称され、投影画像は、クロックパターンの列と、データパターンの列とが交互に配置されることになる。クロックパターン及びデータパターンは、明と暗との二値で構成されてもよく、階調による多値で構成されてもよい。
 画像処理部103は、撮像装置3から取得した撮像画像の歪を補正する。撮像画像は、投影装置2により投影画像が投影された状態の対象物を撮像装置3で撮影した画像である。撮像装置3から取得した撮像画像は、投影装置2と撮像装置3の位置の関係から、その投影画像に相当する部分に歪みがあり、これを補正する。具体的には、投影画像に相当する部分が平行となるような平行化処理を行う。なお、平行化処理等の画像処理は、省略することが可能である。画像処理部103による画像処理を省略した場合であって、復号部104による復号は可能であるが、平行化処理等の画像処理を行った場合には、復号部104による復号処理の過程においてシーケンシャルなメモリアクセスが可能となり、処理の高速化を実現することができる。
 復号部104は、撮像装置により対象物を撮像し、画像処理部103により補正が施された撮像画像に基づいてデータパターンを値に復号可能に構成される。値は、例えば、8ビットで表される値である。このとき、復号部104は、データパターンの第1の並びの一部、例えば、データパターンの第1の行の一部と、データパターンの第2の並びの一部、例えば、データパターンの第2の行の一部とに基づいて、データパターンを値に復号する。また、2つの投影画像を用いて対象物200の形状を特定する場合には、復号部104は、第1の投影画像が投影された状態の対象物を撮影した画像と、第2の投影画像が投影された状態の対象物を撮影した画像との差分に基づいて、データパターンを値に復号する。
 位相特定部105は、復号部104で復号された値とパターン情報管理部101が管理するパターン情報とに基づいて、対象物の各部の位相を特定可能に構成される。具体的には、パターン情報管理部101は、パターン情報に基づいて生成されたマッピング関数を管理しており、位相特定部105は、このマッピング関数に、復号部104で復号された値を入力して、位相を取得する。マッピング関数は、例えば、ルックアップテーブルとして構成してもよい。
 ところで、情報処理装置1に代えて、複数の情報処理装置を用いることができる。例えば、2つの情報処理装置を用いる場合、第1の情報処理装置は、パターン情報管理部と投影画像生成部とを備えるようにする。このパターン情報管理部と投影画像生成部は、それぞれ、パターン情報管理部101と投影画像生成部102に相当するものである。そして、第2の情報処理装置は、パターン情報管理部と、画像処理部と、復号部と、位相特定部とを備えるようにする。このパターン情報管理部、画像処理部、復号部、位相特定部は、それぞれ、パターン情報管理部101、画像処理部103、復号部104、位相特定部105に相当するものである。
4.投影画像のパターン
 次に、投影画像生成部102が生成する投影画像のパターンについて説明する。なお、以下の説明では、パターンの並びを、パターン行として説明する。また、ここでは、パターンを明と暗の二値で構成し、2つの投影画像を用いて対象物200の形状を特定する場合を説明する。パターンを構成する二値は、例えば、明度の高さが異なる明と暗である。なお、明度の違いは、投影時には、輝度の違いとして表現される。
 図4は、投影画像のパターンの例を示した図である。同図に示すパターンPは、白と黒の二値で構成され、投影装置2により投影された際に、対象物200等に明暗のパターンが生じることになる。
 図5は、パターンPを拡大した図である。同図に示すように、パターンPは、パターン部品PPにより構成され、同じパターンのパターン部品PPが、繰り返して並べられている構成となる。
 また、2つの投影画像を用いて対象物200の形状を特定する場合、もう1つのパターンPRを用いることになる。図6は、パターンPRの例を示した図である。同図に示すように、パターンPRは、パターン部品PPRにより構成され、同じパターンのパターン部品PPRが、繰り返して並べられている構成となる。図5と図6を比較すると明らかなように、パターンPRは、パターンPの白部分を黒に、黒部分を白に反転されたものであり、投影装置2により投影された際の明暗のパターンも反転する。
 2つの投影画像を用いて対象物200の形状を特定する場合、情報処理装置1は、復号部104は、2つの投影画像に対応する撮像画像の差分を求め、その差分からデータパターンを特定し、値に復号する。例えば、撮像画像の明である部分を「1」、撮像画像の暗である部分を「0」とすると、その差分は、「1」、「0」、「-1」のいずれかとなる。パターンPで明の部分は、パターンPRでは暗であるため、当該部分の差分は、1-0で、「1」となり、パターンPで暗の部分は、パターンPRでは明であるため、当該部分の差分は、0-1で、「-1」となる。また、対象物200の形状により、影が生じる場合、パターンPを投影した場合の撮像画像とパターンPRを投影した場合の撮像画像のいずれも、影の部分は暗であるため、当該部分の差分は0-0で「0」となる。
 ここで、差分が「1」の部分を「1」、差分が「-1」の部分を「0」として表現すると、差分は、図7に示すようなものとなる。図7は、パターンPとパターンPRの差分PDを示したものである。この差分PDは、対象物200による影が生じていなければ、パターンPと同様のものとなる。
 なお、1つの投影画像を用いて対象物200の形状を特定する場合には、例えば、パターンPを投影し、撮像画像の明である部分を「1」、撮像画像の暗である部分を「0」として値への復号を行うことができる。1つの投影画像を用いて対象物200の形状を特定する処理は、対象物200が動きを伴うものであり、その動きが速い場合に、有効である。
 ここで、パターンPの詳細について説明する。図8は、パターンPの詳細を示した図である。同図に示すように、パターンPは、予め定めたパターン情報に基づくデータパターンの一部である上位ビット列MSBと、別の一部である下位ビット列LSB、クロックパターン行CLKを含む。クロック行は、1と0が交互に並べられている行であり、上位ビット列MSBと下位ビット列LSBに、0又は1が連続した場合の区切りとして利用する部分である。なお、ここで用いた「ビット列」は用語であり、パターン列とは異なる意味である。また、図中にアルファベットで示している部分は、1又は0であり、同じアルファベットには、同じ値が設定されている。なお、図7に示した例の場合では、A=1、B=1、C=0、D=0、E=1、F=1、G=0、H=0、I=1、J=1、a=0、b=0、c=0、d=0、e=1、f=0、g=0、h=1、i=1、j=0となる。
 このように、パターンPは、情報を表すパターンコードであって、クロックパターンとデータパターンとが、隣接して配置され、クロックパターンの行(並び)と、データパターンの行(並び)とが交互に配置される。なお、データパターンの配置は、任意に定めることができ、例えば、図8中の上位ビット列MSBと下位ビット列LSBを逆に配置したり、図8中の上位ビット列MSBで示した位置に奇数ビットを配置するとともに下位ビット列LSBで示した位置に偶数ビットを配置するようにすることもできる。
 なお、パターンPからクロックパターンを除外したもの、つまり、データパターンは、デブルーイントーラス配列であり、ひとつの情報を示すコードをずらしながら重ねることができ、さらに最小2行で構成でき、位相を求めるのに小さな領域を見るだけで良いという利点を生じるものである。
 ここで、パターンPからの復号について説明する。図9乃至図12は、パターンPからの復号を説明するための図である。パターンPからの復号は、データパターンの第1の行である上位ビット列MSBの一部と、データパターンの第2の行である下位ビット列LSBの一部とから行う。つまり、パターンは、データパターンの第1の行の一部と、データパターンの第2の行の一部とからひとつの値に対応する符号を構成する。具体的には、復号は、例えば、図9に示すパターンブロックB11のように、上位ビット列MSBと下位ビット列LSBとから各々4ビットを取得し、両者を結合して8ビットの値を特定することで行う。パターンブロックB11の値は、「11000000」となり、十進数で192となる。パターンブロックB11の位置が「0」で表されるとすれば、上述のマッピング関数は、入力「192」に対して「0」を返すこととなる。同様に、パターンブロックB12の値は、「10010001」(十進数で145)、パターンブロックB13の値は、「00110010」(十進数で50)となる。上述のマッピング関数は、入力「145」に対して「1」を、入力「50」に対して「2」を返すこととなる。また、パターンブロックB21の値は、「11000000」であり、パターンブロックB11の値と同値になる。
 このように、パターンPは、図中横方向に、明暗の1ブロック毎に、値を割り当てることができ、図中縦方向に、明暗の2ブロック毎に、値を割り当てることができる。なお、図9乃至図12に示した例では、ABCDabcd、BCDEbcde、CDEFcdef、DEFGdefg等は、各々異なる値であるが、このような並びは、複数通り存在するため、どの並びを用いるかを、パターン情報管理部101で管理することになる。なお、パターンの並びをパターン列として構成した場合には、パターン行を90度回転させたものと同様になる。
 ここで、パターンPとして用いることのできる値の並びを2例示しておく。1つめの例は、図8中の上位ビット列MSBで示した位置に「0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,1,1,0,1,1,1,0,1,1,1,0,1,1,0,1,1,1,0,1,1,1,0,1,1,1,0,1,1,1,1,1,0,1,1,1,0,1,1,1,0,1,1,1,0,1,1,1,1,0,1,1,1,0,1,1,1,0,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1」、下位ビット列LSBで示した位置に「0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1」を並べたものである。
 2つめの例は、図8中の上位ビット列MSBで示した位置に「1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,1,1,0,1,1,1,0,1,1,1,0,1,1,0,1,1,1,0,1,1,1,0,1,1,1,0,1,1,1,1,1,0,1,1,1,0,1,1,1,0,1,1,1,0,1,1,1,1,0,1,1,1,0,1,1,1,0,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0」、下位ビット列LSBで示した位置に「0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1」を並べたものである。
5.情報処理装置1の動作
 次に、情報処理装置1の動作の流れを説明する。図13は、情報処理装置1の動作の流れを示すアクティビティ図である。
 情報処理装置1は、まず、投影画像生成部102が、パターン情報管理部101に管理されているパターン情報から、利用するパターン情報を決定する(A101)。なお、1つのパターン情報を利用するようにした場合、この処理は省略することができる。続いて、投影画像生成部102は、決定したパターン情報に基づいて、パターン画像を生成し(A102)、投影装置2に出力する。
 パターン画像が投影装置2に出力されると、投影装置2は、対象物200にパターン画像を投影する(A103)。そして、対象物200にパターン画像が投影されている状態で、撮像装置3が対象物200を撮像する(A104)。このとき撮像された撮像画像は、例えば、図14に示したようなものとなる。
 次に、投影画像生成部102は、先に用いたパターン画像を反転したパターン画像を生成し(A105)、投影装置2に出力する。そして、パターン画像が投影装置2に出力されると、投影装置2は、対象物200にパターン画像を投影する(A106)。そして、対象物200にパターン画像が投影されている状態で、撮像装置3が対象物200を撮像する(A107)。このとき撮像された撮像画像は、例えば、図15に示したようなものとなる。
 次に、画像処理部103が、撮像画像の平行化処理を行う(A108)。図14に示した撮像画像を平行化したものは、例えば、図16に示すようなものとなる。そして、復号部104が両画像の差分を算出する(A109)。算出した差分を画像で表すと、図17に示したものとなる。なお、図17では、差分が「1」の部分をグレー、差分が「-1」の部分を黒、差分が「0」、つまり、影の部分を「白」で表現している。
 続いて、復号部104は、算出した差分に基づいて、復号処理を行い(A110)、位相特定部105が、復号された値を、パターン情報管理部101で管理しているマッピング関数に入力して、位相を特定する(A111)。
 なお、ここで説明した動作の流れは、一例である。
6.変形例1
 変形例1は、投影画像生成部102が、レンズの歪みを考慮した投影画像を生成する例である。図1に示したシステム100では、投影装置2と撮像装置3の両者でレンズが用いられる。これらのレンズは、歪みが少なくなるよう加工されているものの、完全に歪みの影響を除去することができない。また、投影装置2は、調整を行うことでレンズの歪みの影響を除去した画像を投影することができるが、撮像装置3のレンズの歪みの影響を除去することが困難となる場合もある。
 そのため、投影画像生成部102により生成する投影画像を図18に示すようなものとする。図18は、レンズの歪みの影響を考慮したパターンの例を示した図である。なお、同図においては、パターンの明部を白(空白)、暗部を斜線で示している。図18に示すパターンVPは、行L1~行L7を含んでいる。このうち、行L2、行L4、行L6は、クロックパターンの行であり、行L1、行L3、行L5、行L7は、データパターンである。つまり、パターンVPにおいては、クロックパターン及びデータパターンは、投影画像の行として構成される。もちろん、クロックパターン及びデータパターンは、投影画像の列として構成してもよい。そして、行又は列のそれぞれの幅は、投影画像の中心から離れるほど広くなる。図18に示した例では、行L4がパターンVPの中心を通る行であり、行L4よりも、行L3と行L5の幅が広くなっており、行L2と行L6の幅がさらに広くなり、行L1と行L7の幅がパターンVP中で最も広くなっている。これらの行の幅は、図中の破線Dで示すレンズの歪みに応じたものである。なお、破線Dは説明のために付したものであり、パターンVPを構成するものではない。また、図18は、説明のための図であり、行の幅やパターンの数は、実際のものとは異なるものである。
7.変形例2
 変形例2は、1つのパターンのみを投影し、差分の算出を行わずに、1つの撮像画像から復号を行う。この場合、影の部分でエラーが生じる可能性があるが、誤り訂正符号等を用いることで、エラーを回避することができる。
8.変形例3
 変形例3は、投影するパターンを空間方向へ拡張したものである。図19は、パターンを空間方向へ拡張する場合の例を示した図である。同図に示した例は、図8に示したパターンのクロックパターン行CLKを反転させたものである。
9.変形例4
 変形例4は、投影するパターンを空間方向へ拡張したものである。図20は、パターンを空間方向へ拡張する場合の例を示した図である。同図に示した例は、クロックパターン行に加え、クロックパターン列を用いたものである。
10.変形例5
 変形例5は、投影するパターンを時間方向へ拡張したものである。これは、異なる複数のパターンを順次投影し、複数の撮像画像から復号を行うものである。
11.変形例6
 変形例6は、投影するパターンを階調方向へ拡張したものである。これは、パターンを二値ではなく、階調表現を利用した多値で構成するものである。階調は、例えば、明度の高低の異なる多値により表現される。
12.変形例7
 変形例7は、投影するパターンを波長方向へ拡張したものである。これは、例えば、RGBの各色に対応したパターンを各色で投影し、撮像画像を各色に分離して行うもので、例えば、二値で8ビットであった値を、24ビットの値にするものである。また、変形例6と組み合わせて、RGBの各色で、階調表現を用いるようにしてもよい。
13.変形例8
 変形例8は、クロックパターンに、クロックの反転箇所を含め、投影画像中のパターンを増加させたものである。この変形例8の場合、クロックパターンは、反転箇所のクロックパターン又は該反転箇所に隣接するデータパターンの幅が他と異なる。
 図21及び図22は、クロックの反転を含めたパターンの例を示した図である。図21に示した例では、クロックパターン行CLKの反転箇所I1において、クロックパターン行CLKを構成するパターンの幅が他の部分よりも狭くなっている。また、図22に示した例では、クロックパターン行CLKの反転箇所I2において、上位ビット列MSB及び下位ビット列LSBを構成するパターンの幅が他の部分よりも広くなっている。したがって、反転箇所I1と反転箇所I2のいずれにおいても、上位ビット列MSB及び下位ビット列LSBは、クロックパターン行CLKと不揃いな態様となる。図21に示した例と図22に示した例は、同様に利用することができるが、例えば、投影装置2と撮像装置3の解像度によっては、図21のパターンを実現することが困難となるため、その場合には、図22のパターンを利用することになる。
 ここで、クロックの反転を含めたパターンの詳細について説明する。図23は、クロックの反転を含めたパターンの詳細を説明するための図である。図23に示した例では、反転箇所I2よりも前(図中左側)に、パターンP1、パターンP2、パターンP3、・・・パターンPnのn個(nは自然数)のパターンがあり、反転箇所I2以降(図中右側)に、パターンPn+1、パターンPn+2、パターンPn+3、・・・パターンP2nのn個のパターンがある。つまり、クロックを反転させることで、パターンの数が2倍になることになる。これは、上位ビット列MSB及び下位ビット列LSBが構成するパターンに加え、クロックパターン行CLKのうちのいずれか1ビットを加えることで、ビット数が1だけ増加することによるものである。具体的には、例えば、最も新しく検出されたクロックパターン行CLKの1ビットを上位ビット列MSBの先頭に付加し、上位ビット列MSB及び下位ビット列LSBで8ビットある場合は、クロックパターン行CLKの1ビットを9ビット目として解釈することとなる。
 クロックの反転を含めたパターンの場合、パターンの数が増加するため、例えば、陰になることによりクロックの反転箇所I2自体を検出することができなかった場合でも、検出されたパターン自体が判別可能なものであるため、支障は生じない。なお、図23に示した例では、パターンP1とパターンPn+1が同じパターンとなるが、両者は隣接することはなく、間に位置するパターンも異なるため、実用上は、見分けることに困難は無い。
14.その他
 このような処理により、構造化光を用いた際のパターン中の位置の特定を、比較的高速に行うことが可能となり、特に、平行化処理を行った場合には、処理速度の向上は顕著なものとなる。また、説明した構造化光のパターンは、復号に要する符号の数が少なく、かつ空間的に重畳されているため、情報の高密度化にも貢献する。また、パターンを二値で構成した場合、2進数で処理を行うコンピュータ等の親和性が高いため、復号処理等が、パターンを二値以外で構成した場合と比較して高速となる。
 本発明は、次に記載の各態様で提供されてもよい。
(1)情報処理装置であって、投影画像生成部と、復号部と、位相特定部とを備え、前記投影画像生成部は、予め定めたパターン情報に基づいて投影画像を生成し、該生成した投影画像を投影装置に出力可能に構成され、前記投影画像は、クロックパターンと、前記パターン情報に基づくデータパターンとを含み、前記復号部は、撮像装置により対象物を撮像した撮像画像に基づいて前記データパターンを値に復号可能に構成され、前記撮像画像は、前記投影装置により前記投影画像が投影された状態の前記対象物を撮影した画像であり、前記位相特定部は、前記値と前記パターン情報とに基づいて、前記対象物の各部の位相を特定可能に構成される情報処理装置。
(2)上記(1)に記載の情報処理装置において、前記投影画像は、前記クロックパターンと前記データパターンとが、隣接して配置される情報処理装置。
(3)上記(2)に記載の情報処理装置において、前記投影画像は、前記クロックパターンの並びと、前記データパターンの並びとが交互に配置される情報処理装置。
(4)上記(3)に記載の情報処理装置において、前記復号部は、前記データパターンの第1の並びの一部と、前記データパターンの第2の並びの一部とに基づいて、前記データパターンを値に復号する情報処理装置。
(5)上記(2)又は(3)に記載の情報処理装置において、前記クロックパターン及び前記データパターンは、前記投影画像の行又は列として構成され、前記行又は前記列のそれぞれの幅は、前記投影画像の中心から離れるほど広くなる情報処理装置。
(6)上記(1)乃至(5)のいずれか1項に記載の情報処理装置において、前記クロックパターンは、クロックの反転箇所を含み、前記反転箇所のクロックパターン又は該反転箇所に隣接するデータパターンの幅が他と異なる情報処理装置。
(7)上記(1)乃至(6)のいずれか1項に記載の情報処理装置において、前記クロックパターン及び前記データパターンは、明と暗との二値で構成される情報処理装置。
(8)上記(7)に記載の情報処理装置において、前記投影画像生成部は、第1の投影画像と第2の投影画像とを生成し、前記第2の投影画像は、前記第1の投影画像の明暗を反転させた画像であり、前記復号部は、前記第1の投影画像が投影された状態の前記対象物を撮影した画像と、前記第2の投影画像が投影された状態の前記対象物を撮影した画像との差分に基づいて、前記データパターンを前記値に復号する情報処理装置。
(9)上記(1)乃至(6)のいずれか1項に記載の情報処理装置において、前記クロックパターン及び前記データパターンは、階調による多値で構成される情報処理装置。
(10)上記(1)乃至(9)のいずれか1項に記載の情報処理装置において、画像処理部を備え、前記画像処理部は、前記撮像画像の歪を補正する情報処理装置。
(11)上記(1)乃至(10)のいずれか1項に記載の情報処理装置において、前記データパターンは、デブルーイントーラス配列である情報処理装置。
(12)情報処理装置であって、投影画像生成部を備え、前記投影画像生成部は、予め定めたパターン情報に基づいて投影画像を生成し、該生成した投影画像を投影装置に出力可能に構成され、前記投影画像は、クロックパターンと、前記パターン情報に基づくデータパターンとを含み、前記クロックパターンと前記データパターンとが、隣接して配置される情報処理装置。
(13)情報処理装置であって、復号部と、位相特定部とを備え、前記復号部は、撮像装置により対象物を撮像した撮像画像に基づいてデータパターンを値に復号可能に構成され、前記撮像画像は、予め定めたパターン情報に基づいて生成された投影画像が投影された状態の前記対象物を撮影した画像であり、前記投影画像は、クロックパターンと、前記パターン情報に基づくデータパターンとを含み、前記位相特定部は、前記値と前記パターン情報とに基づいて、前記対象物の各部の位相を特定可能に構成される情報処理装置。
(14)コンピュータを情報処理装置として動作させるプログラムであって、コンピュータを上記(1)乃至(13)のいずれか1項に記載の情報処理装置として機能させるプログラム。
(15)情報を表すパターンコードであって、クロックパターンと、予め定めたパターン情報に基づくデータパターンとを含み、前記クロックパターンと前記データパターンとが、隣接して配置されるパターンコード。
(16)上記(15)に記載のパターンコードにおいて、前記クロックパターンの並びと、前記データパターンの並びとが交互に配置されるパターンコード。
(17)上記(16)に記載のパターンコードにおいて、前記データパターンの第1の並びの一部と、前記データパターンの第2の並びの一部とで、ひとつの値に対応する符号を構成するパターンコード。
(18)上記(15)乃至(17)のいずれか1項に記載のパターンコードにおいて、構造化光法に用いられるパターンコード。
 もちろん、この限りではない。
1   :情報処理装置
2   :投影装置
3   :撮像装置
11   :処理部
12   :記憶部
13   :一時記憶部
14   :外部装置接続部
15   :通信部
16   :通信バス
100  :システム
101  :パターン情報管理部
102  :投影画像生成部
103  :画像処理部
104  :復号部
105  :位相特定部
200  :対象物
B11  :パターンブロック
B12  :パターンブロック
B13  :パターンブロック
B21  :パターンブロック
CLK  :クロックパターン行
D    :破線
I1   :反転箇所
I2   :反転箇所
L1   :行
L2   :行
L3   :行
L4   :行
L5   :行
L6   :行
L7   :行
LSB  :下位ビット列
MSB  :上位ビット列
P    :パターン
PD   :差分
P1   :パターン
P2   :パターン
P3   :パターン
Pn   :パターン
Pn+1 :パターン
Pn+2 :パターン
Pn+3 :パターン
P2n  :パターン
PP   :パターン部品
PPR  :パターン部品
PR   :パターン
VP   :パターン

Claims (18)

  1.  情報処理装置であって、
     投影画像生成部と、復号部と、位相特定部とを備え、
     前記投影画像生成部は、予め定めたパターン情報に基づいて投影画像を生成し、該生成した投影画像を投影装置に出力可能に構成され、
      前記投影画像は、クロックパターンと、前記パターン情報に基づくデータパターンとを含み、
     前記復号部は、撮像装置により対象物を撮像した撮像画像に基づいて前記データパターンを値に復号可能に構成され、
      前記撮像画像は、前記投影装置により前記投影画像が投影された状態の前記対象物を撮影した画像であり、
     前記位相特定部は、前記値と前記パターン情報とに基づいて、前記対象物の各部の位相を特定可能に構成される
     情報処理装置。
  2.  請求項1に記載の情報処理装置において、
     前記投影画像は、前記クロックパターンと前記データパターンとが、隣接して配置される
     情報処理装置。
  3.  請求項2に記載の情報処理装置において、
     前記投影画像は、前記クロックパターンの並びと、前記データパターンの並びとが交互に配置される
     情報処理装置。
  4.  請求項3に記載の情報処理装置において、
     前記復号部は、前記データパターンの第1の並びの一部と、前記データパターンの第2の並びの一部とに基づいて、前記データパターンを値に復号する
     情報処理装置。
  5.  請求項2又は請求項3に記載の情報処理装置において、
     前記クロックパターン及び前記データパターンは、前記投影画像の行又は列として構成され、
     前記行又は前記列のそれぞれの幅は、前記投影画像の中心から離れるほど広くなる
     情報処理装置。
  6.  請求項1乃至請求項5のいずれか1項に記載の情報処理装置において、
     前記クロックパターンは、クロックの反転箇所を含み、
     前記反転箇所のクロックパターン又は該反転箇所に隣接するデータパターンの幅が他と異なる
     情報処理装置。
  7.  請求項1乃至請求項6のいずれか1項に記載の情報処理装置において、
     前記クロックパターン及び前記データパターンは、明と暗との二値で構成される
     情報処理装置。
  8.  請求項7に記載の情報処理装置において、
     前記投影画像生成部は、第1の投影画像と第2の投影画像とを生成し、
      前記第2の投影画像は、前記第1の投影画像の明暗を反転させた画像であり、
     前記復号部は、前記第1の投影画像が投影された状態の前記対象物を撮影した画像と、前記第2の投影画像が投影された状態の前記対象物を撮影した画像との差分に基づいて、前記データパターンを前記値に復号する
     情報処理装置。
  9.  請求項1乃至請求項6のいずれか1項に記載の情報処理装置において、
     前記クロックパターン及び前記データパターンは、階調による多値で構成される
     情報処理装置。
  10.  請求項1乃至請求項9のいずれか1項に記載の情報処理装置において、
     画像処理部を備え、
     前記画像処理部は、前記撮像画像の歪を補正する
     情報処理装置。
  11.  請求項1乃至請求項10のいずれか1項に記載の情報処理装置において、
     前記データパターンは、デブルーイントーラス配列である
     情報処理装置。
  12.  情報処理装置であって、
     投影画像生成部を備え、
     前記投影画像生成部は、予め定めたパターン情報に基づいて投影画像を生成し、該生成した投影画像を投影装置に出力可能に構成され、
      前記投影画像は、クロックパターンと、前記パターン情報に基づくデータパターンとを含み、前記クロックパターンと前記データパターンとが、隣接して配置される
     情報処理装置。
  13.  情報処理装置であって、
     復号部と、位相特定部とを備え、
     前記復号部は、撮像装置により対象物を撮像した撮像画像に基づいてデータパターンを値に復号可能に構成され、
      前記撮像画像は、予め定めたパターン情報に基づいて生成された投影画像が投影された状態の前記対象物を撮影した画像であり、
      前記投影画像は、クロックパターンと、前記パターン情報に基づくデータパターンとを含み、
     前記位相特定部は、前記値と前記パターン情報とに基づいて、前記対象物の各部の位相を特定可能に構成される
     情報処理装置。
  14.  コンピュータを情報処理装置として動作させるプログラムであって、
     コンピュータを請求項1乃至請求項13のいずれか1項に記載の情報処理装置として機能させる
     プログラム。
  15.  情報を表すパターンコードであって、
     クロックパターンと、予め定めたパターン情報に基づくデータパターンとを含み、
     前記クロックパターンと前記データパターンとが、隣接して配置される
     パターンコード。
  16.  請求項15に記載のパターンコードにおいて、
     前記クロックパターンの並びと、前記データパターンの並びとが交互に配置される
     パターンコード。
  17.  請求項16に記載のパターンコードにおいて、
     前記データパターンの第1の並びの一部と、前記データパターンの第2の並びの一部とで、ひとつの値に対応する符号を構成する
     パターンコード。
  18.  請求項15乃至請求項17のいずれか1項に記載のパターンコードにおいて、
     構造化光法に用いられる
     パターンコード。
PCT/JP2022/029129 2021-08-13 2022-07-28 情報処理装置、プログラム及びパターンコード Ceased WO2023017740A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2023541402A JPWO2023017740A1 (ja) 2021-08-13 2022-07-28
CN202280054501.0A CN117795287A (zh) 2021-08-13 2022-07-28 信息处理装置、计算机程序以及模式代码
US18/681,698 US12483670B2 (en) 2021-08-13 2022-07-28 Information processing device, program, and pattern code

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2021-132060 2021-08-13
JP2021132060 2021-08-13

Publications (1)

Publication Number Publication Date
WO2023017740A1 true WO2023017740A1 (ja) 2023-02-16

Family

ID=85199967

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/029129 Ceased WO2023017740A1 (ja) 2021-08-13 2022-07-28 情報処理装置、プログラム及びパターンコード

Country Status (4)

Country Link
US (1) US12483670B2 (ja)
JP (1) JPWO2023017740A1 (ja)
CN (1) CN117795287A (ja)
WO (1) WO2023017740A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014199193A (ja) * 2013-03-29 2014-10-23 キヤノン株式会社 三次元計測装置、三次元計測方法及びプログラム
JP2014235063A (ja) * 2013-05-31 2014-12-15 キヤノン株式会社 情報処理装置および情報処理方法
JP2018025531A (ja) * 2016-08-09 2018-02-15 コー・ヤング・テクノロジー・インコーポレーテッド オプティカルトラッキング用のマーカー、オプティカルトラッキングシステム及びオプティカルトラッキング方法
JP2020180948A (ja) * 2019-04-26 2020-11-05 株式会社キーエンス 三次元測定装置及び三次元測定方法

Family Cites Families (65)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4439157A (en) * 1982-05-03 1984-03-27 The United States Of America As Represented By The Secretary Of The Navy Helmet mounted display projector
TW480362B (en) * 2000-09-14 2002-03-21 Delta Electronics Inc Automatic calibration method and device of the projector display
US6543899B2 (en) * 2000-12-05 2003-04-08 Eastman Kodak Company Auto-stereoscopic viewing system using mounted projection
JP3646658B2 (ja) * 2001-03-01 2005-05-11 セイコーエプソン株式会社 画像歪みの補正
JP3631182B2 (ja) * 2001-09-04 2005-03-23 キヤノン株式会社 画像投射装置
US7197562B2 (en) * 2002-04-05 2007-03-27 Infocus Corporation Projector device management system
JP3761491B2 (ja) * 2002-05-10 2006-03-29 Necビューテクノロジー株式会社 投射映像の歪補正方法、歪補正プログラム及び投射型映像表示装置
WO2003107090A1 (en) * 2002-06-12 2003-12-24 Silicon Optix, Inc. Automatic keystone correction system and method
JP3731663B2 (ja) * 2002-12-04 2006-01-05 セイコーエプソン株式会社 画像処理システム、プロジェクタおよび画像処理方法
US7119965B1 (en) * 2003-02-24 2006-10-10 University Of Central Florida Research Foundation, Inc. Head mounted projection display with a wide field of view
US7274382B2 (en) * 2003-07-16 2007-09-25 Plut William J Customizable background sizes and controls for changing background size
JP3772870B2 (ja) * 2003-08-25 2006-05-10 カシオ計算機株式会社 投影装置、投影方法及びプログラム
JP4037816B2 (ja) * 2003-10-06 2008-01-23 Necディスプレイソリューションズ株式会社 プロジェクタおよびプロジェクタによる画面の投射方法
JP4023447B2 (ja) * 2004-01-09 2007-12-19 カシオ計算機株式会社 投影装置、投影方法及びプログラム
JP2005223393A (ja) * 2004-02-03 2005-08-18 Casio Comput Co Ltd 投影装置、投影方法、及び投影プログラム
JP2006163360A (ja) * 2004-11-11 2006-06-22 Casio Comput Co Ltd 投影装置、投影方法、投影制御プログラム
JP2006162639A (ja) * 2004-12-02 2006-06-22 Hitachi Displays Ltd 液晶表示装置およびプロジェクタ
US7359575B2 (en) * 2004-12-07 2008-04-15 Silicon Optix Inc. Dynamic warp map generation system and method
US7653304B2 (en) * 2005-02-08 2010-01-26 Nikon Corporation Digital camera with projector and digital camera system
US20060203207A1 (en) * 2005-03-09 2006-09-14 Ikeda Roger M Multi-dimensional keystone correction projection system and method
US7920200B2 (en) * 2005-06-07 2011-04-05 Olympus Corporation Image pickup device with two cylindrical lenses
US20070008344A1 (en) * 2005-06-10 2007-01-11 German Medina Manipulation of Projected Images
US7441906B1 (en) * 2005-07-05 2008-10-28 Pixelworks, Inc. Keystone correction system and method
JP4561668B2 (ja) * 2006-03-28 2010-10-13 セイコーエプソン株式会社 プロジェクタ、表示画像調整方法、この方法を実行するプログラム、及びこのプログラムを記録した記録媒体
JP5405047B2 (ja) * 2008-05-09 2014-02-05 三洋電機株式会社 投写型映像表示装置
JP5266954B2 (ja) * 2008-08-19 2013-08-21 セイコーエプソン株式会社 投写型表示装置および表示方法
JP5434459B2 (ja) * 2009-10-14 2014-03-05 パナソニック株式会社 映像表示装置の外部機器制御装置
JP5560771B2 (ja) * 2010-02-26 2014-07-30 セイコーエプソン株式会社 画像補正装置、画像表示システム、画像補正方法
JP2011205524A (ja) * 2010-03-26 2011-10-13 Seiko Epson Corp プロジェクター装置およびプロジェクター装置の投写方法
JP5744418B2 (ja) * 2010-05-18 2015-07-08 キヤノン株式会社 投影装置及び投影方法
JP5721347B2 (ja) * 2010-05-31 2015-05-20 キヤノン株式会社 画像投射装置
US9760092B2 (en) * 2012-03-16 2017-09-12 Waymo Llc Actively modifying a field of view of an autonomous vehicle in view of constraints
JP5547227B2 (ja) 2012-03-29 2014-07-09 株式会社デンソーアイティーラボラトリ 撮像装置の位置・姿勢推定システム
US8676427B1 (en) * 2012-10-11 2014-03-18 Google Inc. Controlling autonomous vehicle using audio data
US9342074B2 (en) * 2013-04-05 2016-05-17 Google Inc. Systems and methods for transitioning control of an autonomous vehicle to a driver
US9272708B2 (en) * 2013-09-30 2016-03-01 Ford Global Technologies, Llc Autonomous vehicle entertainment system
US9392262B2 (en) * 2014-03-07 2016-07-12 Aquifi, Inc. System and method for 3D reconstruction using multiple multi-channel cameras
WO2015149027A1 (en) * 2014-03-28 2015-10-01 Gerard Dirk Smits Smart head-mounted projection system
US9475422B2 (en) * 2014-05-22 2016-10-25 Applied Invention, Llc Communication between autonomous vehicle and external observers
EP3248052B8 (en) * 2015-01-21 2020-09-09 Tesseland LLC Visual display with time multiplexing
US10222242B2 (en) * 2015-04-30 2019-03-05 Perkinelmer Health Sciences, Inc. Encoders, encoding methods and systems and devices using them
WO2017106875A1 (en) * 2015-12-18 2017-06-22 Gerard Dirk Smits Real time position sensing of objects
US9969326B2 (en) * 2016-02-22 2018-05-15 Uber Technologies, Inc. Intention signaling for an autonomous vehicle
KR101672001B1 (ko) * 2016-04-06 2016-11-16 주식회사 동진컴퍼니 스마트 필름 스크린을 이용한 광고 디스플레이시스템
WO2018106360A2 (en) * 2016-10-31 2018-06-14 Gerard Dirk Smits Fast scanning lidar with dynamic voxel probing
EP3563347A4 (en) * 2016-12-27 2020-06-24 Gerard Dirk Smits SYSTEMS AND METHODS FOR PERCEPTION BY MACHINES
US10394112B2 (en) * 2017-04-19 2019-08-27 Ford Global Technologies, Llc Vehicle including video projector mounted to lift gate or roof
CN110612465B (zh) * 2017-05-10 2022-03-08 杰拉德·迪尔克·施密茨 扫描反射镜系统和方法
EP3438776B1 (en) * 2017-08-04 2022-09-07 Bayerische Motoren Werke Aktiengesellschaft Method, apparatus and computer program for a vehicle
WO2019047985A1 (zh) * 2017-09-11 2019-03-14 Oppo广东移动通信有限公司 图像处理方法和装置、电子装置和计算机可读存储介质
US10591605B2 (en) * 2017-10-19 2020-03-17 Gerard Dirk Smits Methods and systems for navigating a vehicle including a novel fiducial marker system
WO2019148214A1 (en) * 2018-01-29 2019-08-01 Gerard Dirk Smits Hyper-resolved, high bandwidth scanned lidar systems
IL264937B (en) * 2018-02-25 2022-09-01 Orbotech Ltd Range differences for self-focusing in optical imaging systems
JP6937995B2 (ja) * 2018-04-05 2021-09-22 オムロン株式会社 物体認識処理装置及び方法、並びに、物体ピッキング装置及び方法
DE102018118215B4 (de) * 2018-07-27 2020-04-16 Man Truck & Bus Se Verfahren zur Aktualisierung einer Umgebungskarte, Vorrichtung für die fahrzeugseitige Durchführung von Verfahrensschritten des Verfahrens, Fahrzeug, Vorrichtung für die zentralrechnerseitige Durchführung von Verfahrensschritten des Verfahrens sowie computerlesbares Speichermedium
DE102018118220B4 (de) * 2018-07-27 2020-04-16 Man Truck & Bus Se Verfahren zur Schätzung der Lokalisierungsgüte bei der Eigenlokalisierung eines Fahrzeuges, Vorrichtung für die Durchführung von Verfahrensschritten des Verfahrens, Fahrzeug sowie Computerprogramm
US11508050B2 (en) * 2018-12-19 2022-11-22 Packsize Llc Systems and methods for joint learning of complex visual inspection tasks using computer vision
JP7544701B2 (ja) * 2019-06-28 2024-09-03 株式会社小糸製作所 車両用情報表示システム
US12046006B2 (en) * 2019-07-05 2024-07-23 Nvidia Corporation LIDAR-to-camera transformation during sensor calibration for autonomous vehicles
CN114746717A (zh) * 2019-10-07 2022-07-12 波士顿偏振测定公司 利用偏振进行表面法线感测的系统和方法
CN112863409B (zh) * 2019-11-28 2024-07-19 中强光电股份有限公司 投影机的控制方法及系统
US20220171412A1 (en) * 2020-11-30 2022-06-02 At&T Intellectual Property I, L.P. Autonomous aerial vehicle outdoor exercise companion
TWI755991B (zh) * 2020-12-23 2022-02-21 陳景昭 用於投影機系統的自動梯形校正方法
US11991484B2 (en) * 2021-07-12 2024-05-21 Samsung Electronics Co., Ltd. Electronic apparatus and controlling method thereof
ES3025979T3 (en) * 2021-09-03 2025-06-10 Volkswagen Ag Method, computer program and apparatus for controlling operation of two or more configurable systems of a motor vehicle

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014199193A (ja) * 2013-03-29 2014-10-23 キヤノン株式会社 三次元計測装置、三次元計測方法及びプログラム
JP2014235063A (ja) * 2013-05-31 2014-12-15 キヤノン株式会社 情報処理装置および情報処理方法
JP2018025531A (ja) * 2016-08-09 2018-02-15 コー・ヤング・テクノロジー・インコーポレーテッド オプティカルトラッキング用のマーカー、オプティカルトラッキングシステム及びオプティカルトラッキング方法
JP2020180948A (ja) * 2019-04-26 2020-11-05 株式会社キーエンス 三次元測定装置及び三次元測定方法

Also Published As

Publication number Publication date
US20240406343A1 (en) 2024-12-05
CN117795287A (zh) 2024-03-29
US12483670B2 (en) 2025-11-25
JPWO2023017740A1 (ja) 2023-02-16

Similar Documents

Publication Publication Date Title
US9557167B2 (en) Three-dimensional-shape measurement apparatus, three-dimensional-shape measurement method, and non-transitory computer-readable storage medium
US10630483B2 (en) Anonymous image/video digital signature insertion and authentication
US8411962B1 (en) Robust image alignment using block sums
US20140240467A1 (en) Image processing method and apparatus for elimination of depth artifacts
CN106170052B (zh) 双传感器超光谱运动成像系统
JP2015173430A (ja) 投影システム、半導体集積回路、および画像補正方法
WO2017104447A1 (ja) 画像処理装置および方法、データ、並びに記録媒体
US20150271466A1 (en) Measuring device, measuring method, and computer program product
US10325345B2 (en) Device for performing image transformation processing and method thereof
CN110390645B (zh) 用于立体瞬时图像序列的改善3d数据重构的系统和方法
JP2023537864A (ja) チャネル制約付きハードウェアアクセラレータによって実装されたニューラルネットワークを使用して画像強調を実行するためのシステムおよび方法
WO2023017740A1 (ja) 情報処理装置、プログラム及びパターンコード
CN116228830A (zh) 一种三角网格编码结构光的三维重建方法及装置
US10628928B2 (en) Image processing apparatus, image processing method, and storage medium for gain adjustment
US12380300B2 (en) Unidirectional transfer of data from sender to receiver
US20230386124A1 (en) Three dimensional image generation method and system for generating an image with point clouds
CN102647540B (zh) 图像处理设备和图像处理方法
CN110956568B (zh) 一种半色调图像的分享图像中独立秘密信息隐藏方法
WO2018196304A1 (zh) 基于DeBruijn序列的三维图像重建方法及装置
WO2019187510A1 (ja) 情報処理装置、情報処理方法、プログラム
JP2009135564A (ja) 画像処理装置、画像処理方法およびプログラム
KR20100132676A (ko) 스테이지 각 회전 이동에 따른 프레임 영상 생성 방법
WO2023008509A1 (ja) 情報処理プログラム及び情報処理装置
CN104778921A (zh) 一种led显示屏译码行选电路及led显示屏控制系统
CN105991979B (zh) 图像数据产生方法及装置

Legal Events

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

Ref document number: 22855803

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2023541402

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 202280054501.0

Country of ref document: CN

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 22855803

Country of ref document: EP

Kind code of ref document: A1