WO2023008509A1 - 情報処理プログラム及び情報処理装置 - Google Patents

情報処理プログラム及び情報処理装置 Download PDF

Info

Publication number
WO2023008509A1
WO2023008509A1 PCT/JP2022/029047 JP2022029047W WO2023008509A1 WO 2023008509 A1 WO2023008509 A1 WO 2023008509A1 JP 2022029047 W JP2022029047 W JP 2022029047W WO 2023008509 A1 WO2023008509 A1 WO 2023008509A1
Authority
WO
WIPO (PCT)
Prior art keywords
pixel
pixels
conversion
target
interest
Prior art date
Application number
PCT/JP2022/029047
Other languages
English (en)
French (fr)
Inventor
淳 武田
Original Assignee
興和株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 興和株式会社 filed Critical 興和株式会社
Priority to JP2023538612A priority Critical patent/JPWO2023008509A1/ja
Publication of WO2023008509A1 publication Critical patent/WO2023008509A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/46Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features

Definitions

  • the present invention relates to an information processing program and an information processing apparatus for performing CENSUS conversion on target image data.
  • devices have been used that measure the three-dimensional shape of an object based on the principle of triangulation based on two captured images of the object taken from two directions.
  • the principle of triangulation it is necessary to specify corresponding corresponding locations between two captured images.
  • As a method of specifying corresponding locations there is a method of comparing luminance information of small regions in two captured images.
  • the object has a flat portion, a portion with little change in color, or the like, a situation may arise in which it is difficult to specify the corresponding portion with high accuracy.
  • FIG. 9 is an explanatory diagram for explaining an example of CENSUS conversion processing.
  • CENSUS conversion is a conversion technique for generating binary vector data representing the features of a pixel of interest. In a region of 25 pixels in total of 5 pixels long by 5 pixels wide in FIG. 9, the center is the pixel of interest, and the remaining 24 pixels are pixels to be converted.
  • the luminance value of the pixel of interest and the luminance value of the pixel to be converted are compared, and a pixel whose luminance value is greater than that of the pixel of interest is converted to "1", and a pixel whose luminance value is less than or equal to that of the pixel of interest is converted to "1".
  • binary vector data for the pixel of interest is generated.
  • 24-bit binary vector data is generated.
  • the range of pixels to be converted in CENSUS conversion was often set to a square area (rectangular area) centered on the pixel of interest. For example, if a range of 3 pixels vertically by 3 pixels horizontally is set as the range of pixels to be converted, it is possible to reduce the processing load of the CENSUS conversion process and the comparison process of binary vector data. Another problem is that there is a high possibility of erroneous detection when specifying corresponding locations between two captured images. On the other hand, if the range of pixels to be converted is set to be large, such as 7 pixels in height ⁇ 7 pixels in width or 9 pixels in height ⁇ 9 pixels in width, for example, it will be easier to specify corresponding points between two captured images. Although the possibility of erroneous detection is reduced, there is a problem that the processing load of CENSUS conversion processing and binary vector data comparison processing increases.
  • An object of the present invention is to provide an information processing program and an information processing apparatus capable of realizing conversion.
  • An information processing program is an information processing program for causing a computer to implement a process of generating binary vector data representing characteristics of each pixel by performing CENSUS conversion on each pixel of target image data, the information processing program comprising: A computer stores a plurality of pixels other than the pixel of interest in a central region, which is a closed region of a predetermined range including the pixel of interest, and at least one pixel in at least one peripheral region located at a distance of at least one pixel from the central region.
  • a conversion target setting function for presetting the above pixels as conversion target pixels in the CENSUS conversion
  • a target image data acquisition function for acquiring the target image data; calculating a luminance value of each pixel to be converted when the target pixel is set as a pixel of interest, and comparing the luminance value of each of the conversion target pixels with the luminance value of the pixel of interest to determine a pixel whose luminance value is greater than the luminance value of the pixel of interest; is converted to "1", pixels having a luminance value equal to or less than the pixel of interest are converted to "0", and the conversion results of all the conversion target pixels are arranged in a predetermined order, thereby obtaining the pixel of interest and a CENSUS conversion function for generating binary vector data, which is the CENSUS conversion result of .
  • the central region sets a rectangular region formed of vertical m pixels (m is an integer equal to or greater than 3) as the pixels to be converted, and the peripheral region is the central region. It is characterized in that the pixels to be converted are formed at intervals of one pixel or more in the horizontal direction between them, and the pixels to be converted are set at locations that do not deviate from the range of vertical m pixels forming the central region.
  • the number of conversion target pixels as a whole obtained by adding the number of conversion target pixels set in the central region and the number of conversion target pixels set in the peripheral region is set to 8(m ⁇ 1) (m is an integer of 3 or more) or less.
  • the target image data acquisition function obtains two or more photographed images obtained by photographing from at least two directions an object projected with projection light having a random dot pattern as the target image data. It is characterized by obtaining as
  • the dot pattern is selected from a determination process of determining a reference position according to a rule determined by a Poisson disk sampling algorithm, and a plurality of arrangement patterns indicating at least one or more dot arrangements. , an arrangement process of arranging dots based on the arrangement pattern selected with respect to the reference position, and an iterative process of performing the determination process, the selection process, and the arrangement process a plurality of times. It is characterized by being a dotted pattern.
  • An information processing apparatus is an information processing apparatus for performing a process of generating binary vector data representing characteristics of each pixel by performing CENSUS conversion on each pixel of target image data, the information processing apparatus including a pixel of interest.
  • a luminance value is calculated for each pixel to be converted, the luminance value of each pixel to be converted is compared with the luminance value of the pixel of interest, and pixels having a luminance value greater than the luminance value of the pixel of interest are converted to "1".
  • pixels with a luminance value equal to or lower than the pixel of interest are converted to "0", and the conversion results of all the pixels to be converted are arranged in a predetermined order to obtain the CENSUS conversion result of the pixel of interest. and a CENSUS conversion unit that generates binary vector data.
  • the present invention even if the number of pixels to be converted is reduced in order to reduce the processing load, it is possible to realize CENSUS conversion that can maintain high accuracy in detecting corresponding portions between two captured images. Moreover, it is possible to process data in real time.
  • FIG. 1 is a block diagram showing an example of a configuration of an information processing device corresponding to at least one embodiment of the invention
  • FIG. FIG. 5 is a flowchart diagram showing an example of the flow of CENSUS conversion processing corresponding to at least one embodiment of the present invention
  • FIG. 5 is an explanatory diagram showing an example of setting of conversion target pixels in CENSUS conversion processing corresponding to at least one embodiment of the present invention
  • FIG. 5 is an explanatory diagram showing an example of setting of conversion target pixels in CENSUS conversion processing corresponding to at least one embodiment of the present invention
  • 1 is a block diagram showing an example of a configuration of an information processing device corresponding to at least one embodiment of the invention
  • FIG. 4 is a flowchart diagram showing an example of the flow of three-dimensional shape identification processing corresponding to at least one embodiment of the present invention
  • FIG. 4 is an explanatory diagram illustrating an example of an arrangement pattern corresponding to at least one embodiment of the present invention
  • FIG. 10 is an explanatory diagram illustrating an example of the dot pattern of this example corresponding to at least one embodiment of the present invention
  • FIG. 10 is an explanatory diagram for explaining an example of CENSUS conversion processing
  • FIG. 1 is a block diagram showing an example of the configuration of an information processing device corresponding to at least one embodiment of the present invention.
  • the information processing apparatus 10 includes a conversion target setting unit 11, a target image data acquisition unit 12, a CENSUS conversion unit 13, and a storage unit .
  • the information processing device 10 is a device for realizing at least CENSUS conversion processing.
  • the information processing device 10 includes a CPU (Central Processing Unit), memory, and storage such as a hard disk drive and an SSD, which a typical computer would normally have. , an input device such as a keyboard, an output device such as a display and a printer, and a communication device for connecting to a communication network, and these may be connected via a bus.
  • the processing in each part of the information processing apparatus 10 is performed by a CPU, GPU, or FPGA (Field Programmable Gate Array) that functions as a control circuit (processing circuit, processing circuitry) by reading a program for executing the processing in each part from the memory. It is realized by executing. In other words, by executing the program, the processor (processing circuit) is configured to execute each process of each device.
  • a CPU Central Processing Unit
  • memory such as a hard disk drive and an SSD, which a typical computer would normally have.
  • an input device such as a keyboard
  • an output device
  • the conversion target setting unit 11 selects a plurality of pixels other than the pixel of interest in a central region, which is a closed region of a predetermined range including the pixel of interest, and at least one or more peripheral regions located at a distance of at least one pixel from the central region. It has a function of presetting at least one or more pixels as conversion target pixels in CENSUS conversion.
  • pixels included in at least two regions of the central region and the peripheral region are set as conversion target pixels in the CENSUS conversion.
  • the positional relationship between the central region and the peripheral region may be one pixel or more in the horizontal direction, one or more pixels in the vertical direction, or one or more pixels in the vertical and horizontal directions. It can be a relationship.
  • the interval between the central area and the peripheral area is preferably set to an interval suitable for the target image. Any positional relationship is acceptable as long as the pixel of interest is included in the central region, but it is preferable that the pixel of interest is arranged at a position closer to the center of the plurality of pixels forming the central region. .
  • the conversion target setting unit 11 sets a rectangular region consisting of vertical m pixels (m is an integer equal to or greater than 3) as conversion target pixels for the central region, and for the peripheral region, 1 pixel in the horizontal direction between the central region and the central region.
  • the pixels to be converted may be formed at intervals of a pixel or more, and the pixels to be converted may be set at locations within the range of vertical m pixels forming the central region.
  • a square area with an odd number of vertical and horizontal pixels such as 3 vertical pixels by 3 horizontal pixels, 5 vertical pixels by 5 horizontal pixels, or 7 vertical pixels by 7 horizontal pixels, is set as the central region, Can be placed more preferably.
  • the conversion target setting unit 11 sets the number of conversion target pixels as a whole, which is the sum of the number of conversion target pixels set in the central region and the number of conversion target pixels set in the peripheral region, to 8(m ⁇ 1 ) (m is an integer of 3 or more) or less.
  • the number of conversion target pixels in the central area is eight.
  • the memory can be used efficiently, and the calculation make it easier.
  • the target image data acquisition unit 12 has a function of acquiring target image data.
  • the target image data may be any image data that requires CENSUS conversion.
  • the target image data includes, for example, two captured images captured by a stereo camera.
  • the CENSUS conversion unit 13 calculates the luminance value of each pixel to be converted when the pixel is set as the pixel of interest, and calculates the luminance value of each pixel to be converted as the luminance value of the pixel of interest. By comparison, pixels having a luminance value greater than the target pixel are converted to "1", pixels having a luminance value equal to or lower than the target pixel are converted to "0”, and conversion results for all conversion target pixels are obtained in advance. By arranging them in a predetermined order, it has a function of generating binary vector data, which is the CENSUS conversion result for the pixel of interest.
  • the storage unit 14 has a function of storing information necessary for the processing of each unit in the information processing apparatus 10 and storing various types of information generated by the processing of each unit.
  • FIG. 2 is a flowchart diagram showing an example of the flow of CENSUS conversion processing corresponding to at least one embodiment of the present invention.
  • the CENSUS conversion process is started by acquiring setting information of pixels to be converted in the information processing apparatus 10 (step S101).
  • the information processing apparatus 10 acquires target image data (step S102).
  • the information processing apparatus 10 performs CENSUS conversion on each pixel of the target image data to generate binary vector data (step S103), and ends the CENSUS conversion process.
  • FIG. 3 is an explanatory diagram showing an example of setting of conversion target pixels in CENSUS conversion processing corresponding to at least one embodiment of the present invention.
  • Both pattern 1 and pattern 2 shown in FIG. 3 are examples in which the central region is composed of vertical 3 pixels ⁇ horizontal 3 pixels.
  • Both pattern 1 and pattern 2 are examples in which four peripheral regions each having two pixels are provided. The difference between pattern 1 and pattern 2 is the distance from the central region, and pattern 2 has a larger distance by one pixel than pattern 1.
  • the number of bits of the binary vector data is a multiple of 8 (more preferably a multiple of 8 that can be represented by 2 n (n is a natural number))
  • all conversion target pixels are set within a range of 3 pixels in the vertical direction. By restricting the range in the vertical direction and arranging in the horizontal direction, it is possible to reduce the amount of memory required for FPGA processing.
  • FIG. 4 is an explanatory diagram showing an example of setting of conversion target pixels in CENSUS conversion processing corresponding to at least one embodiment of the present invention.
  • both pattern 3 and pattern 4 are examples in which the central region is composed of vertical 5 pixels ⁇ horizontal 5 pixels.
  • Both pattern 3 and pattern 4 are examples in which four peripheral regions each having two pixels are provided.
  • the difference between pattern 3 and pattern 4 is the difference in the distance between the central region and the peripheral region and the difference in whether the two pixels in the peripheral region are arranged horizontally or vertically.
  • pattern 4 has an interval longer by one pixel.
  • the number of conversion target pixels is set to 32, so the generated binary vector data is 32 bits.
  • Pattern 5 has a rectangular central region instead of a square, and has six peripheral regions. Pattern 5 also sets the number of conversion target pixels to 32, so the generated binary vector data is 32 bits.
  • the conversion target setting unit 11, the target image data acquisition unit 12, the CENSUS conversion unit 13, and the storage unit 14 are provided, and the pixel of interest is A plurality of pixels other than the pixel of interest in the central area, which is a closed area of a predetermined range including the is set in advance as a pixel to be converted in , the target image data is obtained, the luminance value is calculated for each pixel to be converted when the pixel of the target image data is set as a pixel of interest, and each of the pixels to be converted is is compared with the luminance value of the pixel of interest, and pixels greater than the luminance value of the pixel of interest are converted to "1", pixels less than or equal to the luminance value of the pixel of interest are converted to "0", and all
  • binary vector data which is the CENSUS conversion result for the target pixel, is generated. At the very least, it is possible to realize C
  • the central region and the peripheral region are set at positions separated from each other in the horizontal direction, in the case of a stereo camera that is parallelized in the horizontal direction, the scanning direction is limited to the horizontal direction. is expanded in the horizontal direction to extract the feature amount in a wide area, while the pixels to be converted are not expanded in the vertical direction, so there is an effect that the memory to be used can be reduced. This is particularly useful for real-time processing using FPGAs and the like.
  • FIG. 5 is a block diagram showing an example of the configuration of an information processing device corresponding to at least one embodiment of the present invention.
  • the information processing apparatus 10 includes a conversion target setting unit 11, a target image data acquisition unit 12, a CENSUS conversion unit 13, a storage unit 14, a dot pattern generation unit 15, and dot pattern projection control.
  • a section 16 a parallax information calculation section 17 , a three-dimensional shape identification section 18 , a projection device 20 , and an imaging device 30 .
  • the conversion target setting unit 11, the target image data acquisition unit 12, the CENSUS conversion unit 13, and the storage unit 14 denoted by the same reference numerals as in the first embodiment have configurations that function in the same manner as in the first embodiment. Therefore, the description is omitted.
  • the information processing device 10 uses the projection device 20 and the imaging device 30 in three-dimensional measurement.
  • the information processing device 10 will be described as including a projection device 20 and an imaging device 30 .
  • the information processing apparatus 10 does not necessarily have the projection device 20 and the imaging device 30, and may use the external projection device 20 and/or the imaging device 30.
  • FIG. 1 is just an example, and the information processing apparatus 10 does not necessarily have the projection device 20 and the imaging device 30, and may use the external projection device 20 and/or the imaging device 30.
  • the projection device 20 is a device for projecting projection light onto an object.
  • Examples of projection device 20 include a projector and a display.
  • the photographing device 30 is a device for photographing an object from two directions.
  • two imaging devices 30 are provided inside the information processing device 10 in a portion capable of imaging an object from two directions.
  • the photographing device 30 is an external device independent of the information processing device 10, for example, two devices independent of each other or one device provided with two photographing optical systems inside the own device can be used.
  • An example of the imaging device 30 is a stereo camera.
  • an example in which there are two imaging devices 30 is shown, but for example, a stereo camera having three imaging devices 30 for imaging an object from three directions may be used.
  • the dot pattern generation unit 15 performs a determination process of determining a reference position according to a predetermined determination rule, a selection process of selecting one from a plurality of arrangement patterns indicating at least one dot arrangement, and a selection process for the reference position. It has a function of generating a dot pattern by an arrangement process of arranging dots based on the determined arrangement pattern and an iterative process of performing the determination process, the selection process, and the arrangement process a plurality of times.
  • the dot pattern generated by the dot pattern generation unit 15 is a pattern indicating the switching of the brightness of the projection light projected by the projection device 20, and is a two-dimensional pattern indicated by the arrangement of dots.
  • the dot pattern is generated by performing a plurality of placement processes for arranging dots based on the placement pattern with respect to the reference position.
  • the dot pattern generated by the dot pattern generation unit 15 is referred to as a "placement pattern using dot pattern", and hereinafter referred to as a "present example dot pattern".
  • the shape of each dot is not particularly limited, and may be round or square.
  • the dot pattern generation unit 15 determines the reference position according to a predetermined determination rule.
  • the reference position is a reference position for arranging dots based on the arrangement pattern, and is a position determined according to a predetermined determination rule.
  • the reference position is given, for example, by plane coordinates within a preset area.
  • the determination rule refers to the rule for determining the reference position.
  • the determination rule is not particularly limited, but a rule that determines positions so that the density of dots in the generated dot pattern is substantially constant, or a rule that arrangement patterns do not adjoin or overlap each other is preferable. Moreover, it is preferable that the determination rule does not cause regularity in the position determined as the reference position (for example, a rule that determines the reference position at a random position).
  • An example of the rule for determining the position so that the density of the arranged dot pattern is substantially constant is the rule determined by the Poisson disk sampling algorithm.
  • an arrangement pattern refers to a pattern that indicates at least one or more dot arrangements.
  • the arrangement pattern is a pattern composed of one central dot (central dot) and dots in the vicinity of the dot.
  • the dot pattern generation unit 15 selects one from a plurality of arrangement patterns representing at least one or more dot arrangements. For example, the dot pattern generator 15 randomly selects one pattern from a plurality of arrangement patterns.
  • the plurality of arrangement patterns are 25 patterns in which 1 to 3 dots are arranged in a dot arrangement area in which a maximum of 9 dots can be arranged in 3 vertical and 3 horizontal directions. In the selection process, one of the 25 patterns is randomly selected.
  • the dot pattern generation unit 15 places dots based on the placement pattern selected with respect to the reference position. Specifically, in the placement process, the dot pattern generation unit 15 places dots in the same arrangement as the combination indicated by the placement pattern selected in the selection process with respect to the reference position determined in the determination process. In this example, the dot pattern generator 15 selects from 25 patterns indicating the arrangement of 1 to 3 dots in a dot arrangement area capable of arranging a maximum of 9 dots of 3 vertical and 3 horizontal in the arrangement process. Dots are arranged with the reference position determined by the determination processing as the center of 3 columns and 3 columns so that the dots are arranged in the same manner as the pattern selected in the processing.
  • the dot pattern generation unit 15 generates the dot pattern of this example by repeating the determination process, the selection process, and the placement process multiple times. Specifically, after executing the placement process, the dot pattern generation unit 15 determines whether or not a series of processes including the determination process, the selection process, and the placement process have been performed a plurality of times. Then, the dot pattern generation unit 15 completes the generation of the dot pattern of this example when it determines that the series of processes has been performed a plurality of times, and when it determines that the number of executions of the series of processes does not satisfy the plurality of times. returns to decision processing.
  • the number of times here can be determined as appropriate. For example, the number of times is determined based on the density of dots in the generated dot pattern of this example.
  • the dot pattern projection control unit 16 has a function of controlling the projection device 20 so as to project the projection light composed of the dot pattern of this example onto the target object.
  • the portion corresponding to the dot in the dot pattern of this example when the projection light is projected onto the object may be a portion (bright portion) having a higher luminance than the portion corresponding to other than the dot. However, it may be a portion with low brightness (dark portion). Note that in this example, the projection processing by the dot pattern projection control unit 16 is executed by controlling the projection device 20 .
  • the target image data acquisition unit 12 controls the imaging device 30 so as to capture images of the target projected by the projection light from at least two directions, and acquires two or more captured images as target image data. do.
  • the imaging process from two directions is executed by controlling the imaging device 30 provided inside the information processing device 10 . It should be noted that the photographing by the photographing device 30 is performed in such a state that the object on which the projection light is projected fits in both angles of view when photographing from two directions.
  • the parallax information calculation unit 17 has a function of calculating parallax information for the two acquired captured images. Specifically, the parallax information calculation unit 17 identifies a location in the other captured image that corresponds to a predetermined location in one of the two captured images acquired by the captured image acquisition unit 13, and Processing is performed to calculate distance information between pixel positions at a point as parallax information. For example, the predetermined location is one pixel at a predetermined position in the captured image. Then, for example, when one pixel in the other photographed image corresponding to one pixel at a predetermined position in the photographed image is specified, the parallax information calculation unit 17 determines the distance between the pixel positions of the two pixels whose correspondence is specified. is calculated as parallax information.
  • a pixel position means a position corresponding to each pixel in a captured image composed of a plurality of pixels.
  • the parallax information calculation unit 17 may use luminance information of the captured image when identifying a location in the other captured image that corresponds to a predetermined location in one captured image.
  • the luminance information of the captured image exists, for example, for each pixel.
  • luminance information of pixels within a predetermined range based on a predetermined location of the captured image may be used.
  • the parallax information calculation unit 17 calculates a predetermined number of pixels located within a predetermined range centered on one pixel at a predetermined position of the captured image (for example, a total of 9 pixels, 3 vertically and 3 horizontally centered at the pixel at the predetermined position). ) is used.
  • the CENSUS conversion according to the present invention described in the first embodiment is used. mentioned.
  • the conversion target setting unit 11 converts a plurality of pixels other than the target pixel in a central region, which is a closed region of a predetermined range including the target pixel.
  • the target image data acquisition unit 12 the target image data is obtained, and the CENSUS conversion unit 13 calculates the luminance value of each pixel to be converted when the pixel of the target image data is set as the pixel of interest, and converts the target pixel to comparing each luminance value with the luminance value of the pixel of interest, converting pixels having a luminance value greater than the luminance value of the pixel of interest to "1" and converting pixels having a luminance value equal to or less than the luminance value of the pixel of interest to "0";
  • the process of generating binary vector data which is the CENSUS conversion result of the pixel of interest, is performed.
  • the binary vector data of each pixel thus obtained is compared between the two captured images, and based on the Hamming distance, a location in one captured image corresponding to a predetermined location in the other captured image is specified. By doing so, the parallax information is calculated.
  • the three-dimensional shape identification unit 18 has a function of identifying the three-dimensional shape of the object based on the calculated parallax information.
  • the three-dimensional shape identification unit 18 uses the principle of triangulation when identifying the three-dimensional shape of the object.
  • the three-dimensional shape identification unit 18 performs triangulation on the distance information from the imaging device 30 to each point in the object based on the information indicating the distance between the pixel positions calculated by the parallax information calculation unit 17, for example. Each is calculated using the principle, and the three-dimensional shape of the object is specified based on the calculated distance information.
  • FIG. 6 is a flowchart diagram showing an example of the flow of three-dimensional shape identification processing corresponding to at least one embodiment of the present invention.
  • the three-dimensional shape identification process is started by generating the dot pattern of this example in the information processing apparatus 10 (step S201).
  • the information processing device 10 controls the projection device 20 so as to project the projection light composed of the dot pattern of this example onto the object (step S202).
  • the information processing device 10 acquires two captured images by controlling the imaging device 30 to capture images of the object from two directions (step S203).
  • the information processing apparatus 10 performs CENSUS conversion on each of the two captured images to generate binary vector data for each pixel (step S204).
  • the information processing apparatus 10 calculates parallax information based on the two captured images (step S205). Finally, the information processing apparatus 10 identifies the three-dimensional shape of the object based on the parallax information (step S206), and ends the three-dimensional shape identification processing.
  • FIG. 7 is an explanatory diagram explaining an example of an arrangement pattern corresponding to at least one embodiment of the present invention.
  • FIG. 7 shows examples of arrangement patterns that are candidates for selection by the dot pattern generator 15 .
  • there are a total of 25 types of arrangement patterns each of which is a lattice pattern in which 1 to 3 dots are arranged in a dot arrangement area in which a maximum of 9 dots can be arranged in 3 columns and 3 rows.
  • the 25 arrangement patterns in this example are a combination of patterns that do not include the same dot arrangement pattern in duplicate and do not overlap each other when translated in the dot arrangement area.
  • each arrangement pattern is assigned a unique number from 0 to 24.
  • any one of 0 to 24 is randomly generated, and an arrangement pattern corresponding to the generated numerical value is selected. Note that when the arrangement pattern indicates that two dots are arranged adjacently, the two dots in the projection light projected by the dot pattern projection control unit 16 may be continuous or may be arranged at a predetermined distance. You can stay away.
  • FIG. 8 is an explanatory diagram explaining an example of dot patterns corresponding to at least one embodiment of the present invention.
  • FIG. 8A shows an example of the dot pattern of this example generated by the dot pattern generator 15 .
  • FIG. 8B shows an example of a conventional dot pattern, which is a random dot pattern.
  • the dot patterns of FIGS. 8A and 8B have substantially the same dot density of about 20%.
  • dots in each small area in the pattern are larger than the conventional dot pattern shown in FIG. 8B. It is possible to give characteristics to the arrangement of That is, the matching degree of dot arrangement between a plurality of small areas in the pattern can be made lower than in the conventional dot pattern.
  • the projection device 20 controls the projection device 20 so as to project the projection light composed of the dot pattern of this example onto the object, and photograph the object onto which the projection light is projected from at least two directions.
  • the imaging device 30 two or more captured images are acquired, CENSUS conversion is performed on the acquired two captured images to generate binary vector data of each pixel, and parallax is calculated using the binary vector data. Since the information is calculated and the three-dimensional shape of the object is specified based on the calculated parallax information, three-dimensional measurement of the object can be performed with high accuracy.
  • the information processing apparatus 10 selects one of a determination process of determining a reference position according to a predetermined determination rule and a plurality of layout patterns representing at least one or more dot layouts.
  • the dot pattern of this example is generated in advance by a selection process, an arrangement process of arranging dots based on the arrangement pattern selected with respect to the reference position, and an iterative process of performing the determination process, the selection process, and the arrangement process a plurality of times.
  • a dot pattern generation processing section may be provided for storing in a predetermined storage section.
  • the dot pattern projection control unit 16 reads out the dot pattern of the present example from the storage unit, and controls the projection device 20 to project the projection light composed of the dot pattern of the present example onto the object.
  • the dot pattern may be stored as an image file, or may be stored in the device after the dot pattern is printed on a photomask.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)

Abstract

新しいCENSUS変換の手法を提供するために、着目画素を含む所定範囲の閉じた領域である中央領域における着目画素以外の複数画素と、中央領域から少なくとも1画素以上離れた個所に存在する少なくとも1以上の周辺領域における少なくとも1以上の画素とを、CENSUS変換における変換対象画素として予め設定し、対象画像データを取得し、対象画像データの各画素について、その画素を着目画素とした場合の変換対象画素についてそれぞれ輝度値を算出して、変換対象画素のそれぞれの輝度値を着目画素の輝度値と比較して、着目画素の輝度値よりも大きい画素については「1」に変換し、着目画素の輝度値以下の画素については「0」に変換し、全ての変換対象画素についての変換結果を予め定めた順番に並べることで、着目画素についてのCENSUS変換結果であるバイナリベクトルデータを生成する。

Description

情報処理プログラム及び情報処理装置
 本発明は、対象画像データについてCENSUS変換を行うための情報処理プログラム及び情報処理装置に関する。
 従来から、対象物を2方向から撮影した2つの撮影画像に基づき三角測量の原理で対象物の3次元形状を計測する装置が用いられている。ここで、三角測量の原理を用いる場合、2つの撮影画像間で対応する対応個所を特定する必要がある。対応個所の特定方法として、2つの撮影画像における小領域の輝度情報を比較する方法がある。しかし、対象物に平坦な部分や色の変化が少ない部分等が存在する場合などにおいて、対応個所の特定を高精度に行うことが困難となる状況が発生し得た。
 当該状況への対策として、所定パターンからなる投影光を対象物に投影して対応個所の特定に利用する方法が存在する。例えば、特許文献1では、2つの撮影画像間の対応個所の特定が正確にできないと判断された場合に、パターン投影機により特定パターン形状の光を投影し、特定パターン形状の明暗を利用して対応個所を特定し視差情報を算出する技術が開示されている。
特公平4-25758号公報
 ところで、視差情報を算出するためには、同一点に関する2つの撮影画像間での対応個所を特定するためには撮影画像データの各画素の特徴を対比する必要があるが、撮影画像データの各画素の特徴を抽出するための手法の1つとしてCENSUS変換が存在する。
 図9は、CENSUS変換処理の一例を説明するための説明図である。CENSUS変換は、着目画素の特徴を表すバイナリベクトルデータを生成するための変換手法である。図9における縦5画素×横5画素の計25画素の領域のうち、中心が着目画素であり、残りの24画素が変換対象画素となる。CENSUS変換では、着目画素の輝度値と変換対象画素の輝度値とを比較して、着目画素の輝度値よりも大きい画素については「1」に変換し、着目画素の輝度値以下の画素については「0」に変換し、全ての変換対象画素についての変換結果を予め定めた順番に並べることで、着目画素についてのバイナリベクトルデータを生成するという処理を、各画素に対して実行する。図9の例では、変換対象画素が24個あるため、24ビットのバイナリベクトルデータが生成される。このように生成したバイナリベクトルデータを2つの撮影画像間で比較することで、2つの撮影画像間での対応個所を特定する。バイナリベクトルデータの比較については、例えば、HAMMING距離を求める手法が挙げられる。
 CENSUS変換における変換対象画素の範囲は、従来、着目画素を中心とした正方形領域(矩形領域)に設定される場合が多かった。例えば、縦3画素×横3画素の範囲を変換対象画素の範囲に設定すれば、CENSUS変換処理及びバイナリベクトルデータの比較処理の処理負荷を小さくすることが可能であるが、情報量が少ないために、2つの撮影画像間での対応個所の特定の際に誤検出してしまう可能性が高くなるという問題があった。他方で、例えば、縦7画素×横7画素や、縦9画素×横9画素というように、変換対象画素の範囲を大きく設定すれば、2つの撮影画像間での対応個所の特定の際の誤検出の可能性は低下するが、CENSUS変換処理及びバイナリベクトルデータの比較処理の処理負荷が増大してしまうという問題があった。
 本発明は、上記問題点に鑑みなされたものであり、処理負荷低減のために変換対象画素の数を少なくしても2つの撮影画像間での対応個所の検出精度を高精度に維持できるCENSUS変換を実現可能な情報処理プログラム及び情報処理装置を提供することを目的とする。
 本発明に係る情報処理プログラムは、対象画像データの各画素についてCENSUS変換を行うことで各画素の特徴を表すバイナリベクトルデータを生成する処理をコンピュータに実現させるための情報処理プログラムであって、前記コンピュータに、着目画素を含む所定範囲の閉じた領域である中央領域における前記着目画素以外の複数画素と、前記中央領域から少なくとも1画素以上離れた個所に存在する少なくとも1以上の周辺領域における少なくとも1以上の画素とを、前記CENSUS変換における変換対象画素として予め設定する変換対象設定機能と、前記対象画像データを取得する対象画像データ取得機能と、前記対象画像データの各画素について、その画素を前記着目画素とした場合の前記変換対象画素についてそれぞれ輝度値を算出して、前記変換対象画素のそれぞれの輝度値を前記着目画素の輝度値と比較して、前記着目画素の輝度値よりも大きい画素については「1」に変換し、前記着目画素の輝度値以下の画素については「0」に変換し、全ての前記変換対象画素についての変換結果を予め定めた順番に並べることで、前記着目画素についてのCENSUS変換結果であるバイナリベクトルデータを生成するCENSUS変換機能とを実現させることを特徴とする。
 また、本発明に係る情報処理プログラムは、前記中央領域は、縦m画素(mは3以上の整数)からなる矩形領域を前記変換対象画素として設定し、前記周辺領域は、前記中央領域との間で横方向に1画素以上の間隔を設けて形成し、かつ、前記中央領域を形成した縦m画素の範囲を逸脱しない個所に前記変換対象画素を設定することを特徴とする。
 また、本発明に係る情報処理プログラムは、前記中央領域に設定する前記変換対象画素の数と、前記周辺領域に設定する前記変換対象画素の数とを合計した全体としての前記変換対象画素の数を、8(m-1)個(mは3以上の整数)以下に設定することを特徴とする。
 また、本発明に係る情報処理プログラムは、前記対象画像データ取得機能は、ランダムなドットパターンからなる投影光を投影した対象物を少なくとも2方向から撮影した2枚以上の撮影画像を前記対象画像データとして取得することを特徴とする。
 また、本発明に係る情報処理プログラムは、前記ドットパターンは、ポアソンディスクサンプリングのアルゴリズムにより定まる規則に従って基準位置を決定する決定処理と、少なくとも1つ以上のドット配置を示す複数の配置パターンから何れかを選択する選択処理と、前記基準位置に対して選択された前記配置パターンに基づいてドットを配置する配置処理と、前記決定処理、前記選択処理及び前記配置処理を複数回数行う反復処理とによって生成されたドットパターンであることを特徴とする。
 本発明に係る情報処理装置は、対象画像データの各画素についてCENSUS変換を行うことで各画素の特徴を表すバイナリベクトルデータを生成する処理を行うための情報処理装置であって、着目画素を含む所定範囲の閉じた領域である中央領域における前記着目画素以外の複数画素と、前記中央領域から少なくとも1画素以上離れた個所に存在する少なくとも1以上の周辺領域における少なくとも1以上の画素とを、前記CENSUS変換における変換対象画素として予め設定する変換対象設定部と、前記対象画像データを取得する対象画像データ取得部と、前記対象画像データの各画素について、その画素を前記着目画素とした場合の前記変換対象画素についてそれぞれ輝度値を算出して、前記変換対象画素のそれぞれの輝度値を前記着目画素の輝度値と比較して、前記着目画素の輝度値よりも大きい画素については「1」に変換し、前記着目画素の輝度値以下の画素については「0」に変換し、全ての前記変換対象画素についての変換結果を予め定めた順番に並べることで、前記着目画素についてのCENSUS変換結果であるバイナリベクトルデータを生成するCENSUS変換部とを備えることを特徴とする。
 本発明によれば、処理負荷低減のために変換対象画素の数を少なくしても2つの撮影画像間での対応個所の検出精度を高精度に維持可能なCENSUS変換を実現することができ、かつリアルタイムにデータ処理をすることが可能となる。
本発明の実施の形態の少なくとも1つに対応する情報処理装置の構成の一例を示すブロック図である。 本発明の実施の形態の少なくとも1つに対応するCENSUS変換処理の流れの一例を示すフローチャート図である。 本発明の実施の形態の少なくとも1つに対応するCENSUS変換処理における変換対象画素の設定の一例を表した説明図である。 本発明の実施の形態の少なくとも1つに対応するCENSUS変換処理における変換対象画素の設定の一例を表した説明図である。 本発明の実施の形態の少なくとも1つに対応する情報処理装置の構成の一例を示すブロック図である。 本発明の実施の形態の少なくとも1つに対応する3次元形状特定処理の流れの一例を示すフローチャート図である。 本発明の実施の形態の少なくとも1つに対応する配置パターンの例について説明した説明図である。 本発明の実施の形態の少なくとも1つに対応する本例ドットパターンの例について説明した説明図である。 CENSUS変換処理の一例を説明するための説明図である。
[第1の実施の形態]
 以下、図面を参照しながら、本発明の第1の実施の形態に係る情報処理装置の例について説明する。
 図1は、本発明の実施の形態の少なくとも1つに対応する情報処理装置の構成の一例を示すブロック図である。図1に示すように、情報処理装置10は、変換対象設定部11と、対象画像データ取得部12と、CENSUS変換部13と、記憶部14とを備える。
 情報処理装置10は、少なくともCENSUS変換処理を実現するための装置である。情報処理装置10は、一般的なコンピュータが通常備えているであろうCPU(Central Processing Unit:中央演算処理装置)と、メモリと、ハードディスクドライブ、SSD等のストレージとを備えており、また、マウス、キーボード等の入力装置と、ディスプレイ、プリンタ等の出力装置と、通信ネットワークと接続するための通信装置とを備えており、これらがバスを介して接続されている構成であってよい。情報処理装置10の各部における処理は、これらの各部における処理を実行するためのプログラムをメモリから読み込んで制御回路(Processing circuit、Processing circuitry)として機能するCPUやGPUあるいはFPGA(Field Programmable Gate Array)において実行することで実現する。言い換えると、当該プログラムの実行により、プロセッサ(処理回路)が、各装置の各処理を実行できるように構成される。
 変換対象設定部11は、着目画素を含む所定範囲の閉じた領域である中央領域における着目画素以外の複数画素と、中央領域から少なくとも1画素以上離れた個所に存在する少なくとも1以上の周辺領域における少なくとも1以上の画素とを、CENSUS変換における変換対象画素として予め設定する機能を有する。本例においては、CENSUS変換における変換対象画素として、中央領域と周辺領域の少なくとも2つ以上の領域に含まれる画素を設定する。中央領域と周辺領域との位置関係は、横方向に1画素以上離れた関係であってもよいし、縦方向に1画素以上離れた関係であってもよいし、縦横とも1画素以上離れた関係であってもよい。中央領域と周辺領域の間隔については、対象となる画像に適した間隔に設定されることが好ましい。中央領域の中に着目画素が含まれていればどのような位置関係であってもよいが、中央領域を構成する複数画素のうちのより中心に近い位置に着目画素が配置されることが好ましい。
 また、変換対象設定部11は、中央領域は、縦m画素(mは3以上の整数)からなる矩形領域を変換対象画素として設定し、周辺領域は、中央領域との間で横方向に1画素以上の間隔を設けて形成し、かつ、中央領域を形成した縦m画素の範囲を逸脱しない個所に変換対象画素を設定するようにしてもよい。さらに、縦3画素×横3画素、縦5画素×横5画素、縦7画素×横7画素といったように、縦横の画素数が奇数の正方形領域を中央領域として設定すると、着目画素を中心に配置することができより好ましい。
 また、変換対象設定部11は、中央領域に設定する変換対象画素の数と、周辺領域に設定する変換対象画素の数とを合計した全体としての変換対象画素の数を、8(m-1)個(mは3以上の整数)以下に設定するようにしてもよい。例えば、縦3画素×横3画素の正方形領域を中央領域とする場合、中央領域における変換対象画素の数は8個となる。この場合に、周辺領域を4つ設けてそれぞれの周辺領域に変換対象画素を2画素ずつ設定すると、合計16個の変換対象画素が設定される。16個というのは、8×{3(正方形領域の短辺の画素数)-1}=8×2=16に相当する。このように、8の倍数(より好ましくは2(nは自然数)で表現可能な8の倍数)の個数の変換対象画素に設定することで、メモリを効率的に使用することができ、計算しやすくする。
 対象画像データ取得部12は、対象画像データを取得する機能を有する。対象画像データは、CENSUS変換が必要な画像データであればどのようなものであってもよい。対象画像データとしては、例えば、ステレオカメラで撮影した2枚の撮影画像が挙げられる。
 CENSUS変換部13は、対象画像データの各画素について、その画素を着目画素とした場合の変換対象画素についてそれぞれ輝度値を算出して、変換対象画素のそれぞれの輝度値を着目画素の輝度値と比較して、着目画素の輝度値よりも大きい画素については「1」に変換し、着目画素の輝度値以下の画素については「0」に変換し、全ての変換対象画素についての変換結果を予め定めた順番に並べることで、着目画素についてのCENSUS変換結果であるバイナリベクトルデータを生成する機能を有する。このような処理を行うことで、変換対象画素の特徴を反映させた着目画素についてのバイナリベクトルデータを生成することが可能となる。なお、着目画素の輝度値よりも大きい画素を「1」に、着目画素の輝度値以下の画素を「0」に変換する処理はあくまで一例であり、着目画素の輝度値よりも大きい画素を「0」に、着目画素の輝度値以下の画素を「1」に変換するようにしてもよい。また、着目画素の輝度値と同じ輝度値の画素を「0」と「1」の何れに変換するかについても適宜設定可能である。
 記憶部14は、情報処理装置10における各部の処理に必要な情報を記憶し、また、各部の処理で生じた各種の情報を記憶する機能を有する。
 図2は、本発明の実施の形態の少なくとも1つに対応するCENSUS変換処理の流れの一例を示すフローチャート図である。図2に示すように、CENSUS変換処理は、情報処理装置10において、変換対象画素の設定情報を取得することによって開始される(ステップS101)。次に、情報処理装置10は、対象画像データを取得する(ステップS102)。そして、情報処理装置10は、対象画像データの各画素において、変換対象画素についてのCENSUS変換を実行してバイナリベクトルデータを生成して(ステップS103)、CENSUS変換処理を終了する。
 図3は、本発明の実施の形態の少なくとも1つに対応するCENSUS変換処理における変換対象画素の設定の一例を表した説明図である。この図3に示したパターン1とパターン2は何れも、中央領域が縦3画素×横3画素で構成されている例となっている。また、パターン1とパターン2は何れも、2画素ずつで構成された4つの周辺領域を設けた例となっている。パターン1とパターン2の違いは、中央領域との間の距離であり、パターン1に比較してパターン2の方が1画素分多く間隔を設けている。パターン1とパターン2は何れも、変換対象画素の数を16個に設定しているので、生成されるバイナリベクトルデータは16ビットとなる。バイナリベクトルデータのビット数が8の倍数(より好ましくは2(nは自然数)で表現可能な8の倍数)である場合、メモリを効率的に使用することが可能となる。また、パターン1とパターン2は何れも、縦方向が3画素の範囲に全ての変換対象画素が設定されている。縦方向の範囲を制限して横長の配置とすることで、FPGA処理におけるメモリ量を減らすことが可能となる。
 図4は、本発明の実施の形態の少なくとも1つに対応するCENSUS変換処理における変換対象画素の設定の一例を表した説明図である。この図4に示した例のうち、パターン3とパターン4は何れも、中央領域が縦5画素×横5画素で構成されている例となっている。また、パターン3とパターン4は何れも、2画素ずつで構成された4つの周辺領域を設けた例となっている。パターン3とパターン4の違いは、中央領域と周辺領域の間の距離の違いと、周辺領域における2画素を横に配置するか縦に配置するかの違いである。パターン3に比較してパターン4の方が1画素分多く間隔を設けている。パターン3とパターン4は何れも、変換対象画素の数を32個に設定しているので、生成されるバイナリベクトルデータは32ビットとなる。パターン5は、中央領域が正方形ではなく長方形となっており、さらに、6か所の周辺領域を設定している構成である。パターン5も、変換対象画素の数を32個に設定しているので、生成されるバイナリベクトルデータは32ビットとなる。
 以上のように、本発明に係る情報処理装置10によれば、変換対象設定部11と、対象画像データ取得部12と、CENSUS変換部13と、記憶部14とを備える構成とし、着目画素を含む所定範囲の閉じた領域である中央領域における着目画素以外の複数画素と、中央領域から少なくとも1画素以上離れた個所に存在する少なくとも1以上の周辺領域における少なくとも1以上の画素とを、CENSUS変換における変換対象画素として予め設定し、対象画像データを取得し、対象画像データの各画素について、その画素を着目画素とした場合の変換対象画素についてそれぞれ輝度値を算出して、変換対象画素のそれぞれの輝度値を着目画素の輝度値と比較して、着目画素の輝度値よりも大きい画素については「1」に変換し、着目画素の輝度値以下の画素については「0」に変換し、全ての変換対象画素についての変換結果を予め定めた順番に並べることで、着目画素についてのCENSUS変換結果であるバイナリベクトルデータを生成するようにしたので、処理負荷低減のために変換対象画素の数を少なくしても2つの撮影画像間での対応個所の検出精度を高精度に維持可能なCENSUS変換を実現することが可能となる。
 すなわち、中央領域と周辺領域とを離れた位置に設定することで広い範囲をカバーできるため、2つの撮影画像間での対応個所の検出精度を高精度に維持することが可能となり、また、変換対象画素の数を所定数に調整することで、検出精度を維持したまま処理負荷を低減し、FPGAなどによるリアルタイム処理をすることが可能となる。また、中央領域と周辺領域とを横方向に離れた位置に設定するようにすると、横方向に等位平行化されたステレオカメラの場合、走査方向が水平方向に限定されるので、変換対象画素を横方向に広げることで広い領域での特長量を抽出しつつ、縦方向には変換対象画素が広がらないので、使用するメモリが少なく済むという効果がある。これはFPGAなどを使用したリアルタイム処理を行う上で特に有用である。
[第2の実施の形態]
 第1の実施の形態においては中央領域と周辺領域とが1画素以上離れた位置となるように変換対象画素の配置を設定したCENSUS変換を行うための情報処理装置として説明を行ったが、この第1の実施の形態に係るCENSUS変換は、対象物に対して所定のランダムドットパターンを投影して2方向からそれぞれ撮影して得られた2つの撮影画像に対して適用する場合により効果的である。以下、3次元計測のための情報処理装置に関する第2の実施の形態について説明を行う。
 図5は、本発明の実施の形態の少なくとも1つに対応する情報処理装置の構成の一例を示すブロック図である。図1に示すように、情報処理装置10は、変換対象設定部11と、対象画像データ取得部12と、CENSUS変換部13と、記憶部14と、ドットパターン生成部15と、ドットパターン投影制御部16と、視差情報算出部17と、3次元形状特定部18と、投影装置20と、撮影装置30とを備える。なお、第1の実施の形態と同一符号を付した変換対象設定部11、対象画像データ取得部12、CENSUS変換部13、記憶部14については、第1の実施の形態と同様に機能する構成であるため、説明を省略する。
 情報処理装置10は、3次元計測において投影装置20及び撮影装置30を利用する。本例では、情報処理装置10は、投影装置20と、撮影装置30とを備えるものとして説明を行う。これは一例であり、情報処理装置10は、必ずしも投影装置20と撮影装置30を備えている必要はなく、外部の投影装置20及び/又は撮影装置30を利用するものであってもよい。
 投影装置20は、対象物に投影光を投影するための装置である。投影装置20の例には、プロジェクタやディスプレイがある。撮影装置30は、対象物を2方向から撮影するための装置である。例えば、撮影装置30は、情報処理装置10の内部に対象物を2方向から撮影できる部分に2台備えられる。他にも、撮影装置30は、例えば情報処理装置10から独立した外部の装置である場合、互いに独立した2台の装置や自装置の内部に2つの撮影用光学系を備えた1台の装置である。撮影装置30の例には、ステレオカメラがある。ここでは撮影装置30が2台の例を示すが、例えば対象物を3方向から撮影するための3台の撮影装置30を有するステレオカメラであってもよい。
 ドットパターン生成部15は、所定の決定規則に従って基準位置を決定する決定処理と、少なくとも1つ以上のドット配置を示す複数の配置パターンから何れかを選択する選択処理と、基準位置に対して選択された配置パターンに基づいてドットを配置する配置処理と、決定処理、選択処理及び配置処理を複数回数行う反復処理とによってドットパターンを生成する機能を有する。
 ドットパターン生成部15が生成するドットパターンは、投影装置20により投影される投影光の明暗の切り替わり示すパターンであって、ドットの配置により示される2次元のパターンである。当該ドットパターンは、基準位置に対し配置パターンに基づいてドットを配置する配置処理を複数回数行われることで生成される。ドットパターン生成部15が生成するドットパターンを「配置パターン利用ドットパターン」といい、以下「本例ドットパターン」と称する。なお、個々のドットの形状は特に限定されず、丸型でもよいし四角型でもよい。
 ドットパターン生成部15は、決定処理において、所定の決定規則に従って基準位置を決定する。ここで、基準位置は、配置パターンに基づいてドットを配置するための基準となる位置であって、所定の決定規則に従って決定される位置である。基準位置は、例えば予め設定した領域内における平面座標によって与えられる。
 また、決定規則とは、基準位置を決定するための規則をいう。決定規則は特に限定されないが、生成されるドットパターン中のドットの密度が略一定となるよう位置を決定する規則や配置パターン同士が隣接や重複しない規則が好ましい。また、決定規則は、基準位置として決定する位置に規則性が生じないもの(例えば基準位置をランダムな位置に決定する規則)が好ましい。配置されたドットパターンの密度が略一定となるよう位置を決定する規則の例には、ポアソンディスクサンプリングのアルゴリズムにより定まる規則がある。
 また、配置パターンとは、少なくとも1以上のドット配置を示すパターンをいう。例えば、配置パターンは、中心となる1つのドット(中心ドット)及び当該ドット近傍のドットから構成されるパターンである。
 ドットパターン生成部15は、選択処理において、少なくとも1つ以上のドット配置を示す複数の配置パターンから何れかを選択する。例えば、ドットパターン生成部15は、複数の配置パターンからランダムで何れか1つのパターンを選択する。本例では、複数の配置パターンは、縦3横3の最大9個のドットを配置できるドット配置領域に1~3個のドットを配置する25種のパターンであり、ドットパターン生成部15は、選択処理において、当該25種のパターンからランダムで何れか1つを選択する。
 ドットパターン生成部15は、配置処理において、基準位置に対して選択された配置パターンに基づいてドットを配置する。具体的には、ドットパターン生成部15は、配置処理において、決定処理で決定された基準位置に対し、選択処理で選択された配置パターンが示す組み合わせと同じ配置となるようにドットを配置する。本例では、ドットパターン生成部15は、配置処理において、縦3横3の最大9個のドットを配置できるドット配置領域に1~3個のドットの配置を示す25種のパターンのうちの選択処理で選択されたパターンと同じ配置となるよう、決定処理で決定された基準位置を縦3横3の中心としてドットを配置する。
 ドットパターン生成部15は、決定処理、選択処理及び配置処理を複数回数行う反復処理によって本例ドットパターンを生成する。具体的には、ドットパターン生成部15は、配置処理を実行後、決定処理、選択処理及び配置処理の一連の処理を複数回数行っているか否かを判定する。そして、ドットパターン生成部15は、一連の処理を複数回数行っていると判定した場合は本例ドットパターンの生成を完了し、一連の処理の実行回数が複数回数に満たしてないと判定した場合は決定処理に復帰する。ここでの複数回数は適宜決定され得る。例えば、複数回数は、生成される本例ドットパターン中のドットの密度に基づいて決定される。
 ドットパターン投影制御部16は、本例ドットパターンからなる投影光を対象物に対して投影させるように投影装置20を制御する機能を有する。ここで、対象物に投影光が投影された場合の本例ドットパターンにおけるドットに対応する部分は、当該ドット以外に対応する部分と比較して輝度が高い部分(明部)となってもよいし輝度が低い部分(暗部)となってもよい。なお、本例では、ドットパターン投影制御部16による投影処理は、投影装置20を制御することにより実行される。
 対象画像データ取得部12では、投影光が投影された対象物を少なくとも2方向から撮影するように撮影装置30を制御して撮影を実行して、2枚以上の撮影画像を対象画像データとして取得する。本例では、2方向からの撮影処理は、情報処理装置10の内部に備えられた撮影装置30を制御することにより実行される。なお、2方向からの撮影において双方の画角に、投影光が投影された部分の対象物が収まるような状態で撮影装置30による撮影が行われる。
 視差情報算出部17は、取得された2つの撮影画像について、視差情報を算出する機能を有する。具体的には、視差情報算出部17は、撮影画像取得部13により取得された2つの撮影画像について、一方の撮影画像の所定個所に対応する他方の撮影画像中の個所を特定し、それぞれの個所の画素位置間の距離情報を視差情報として算出する処理を行う。例えば、所定個所は、撮影画像における所定位置の1画素である。そして、視差情報算出部17は、例えば、撮影画像における所定位置の1画素に対応する他方の撮影画像中の1画素を特定すると、対応を特定した2つの画素の画素位置間の距離を示す情報を視差情報として算出する。ここで、画素位置とは、複数の画素からなる撮影画像中の各画素に対応する位置をいう。
 視差情報算出部17は、一方の撮影画像の所定個所に対応する他方の撮影画像中の個所を特定する際に撮影画像の輝度情報を利用してもよい。撮影画像の輝度情報は、例えば画素ごとに存在している。ここで、撮影画像の所定個所を基準とする所定範囲内の画素の輝度情報が利用されてもよい。例えば、視差情報算出部17は、撮影画像の所定位置の1画素を中心とした所定範囲内に位置する所定数の画素(例えば、所定位置の画素を中心とする縦3横3の合計9画素)の輝度情報を利用する。
 ここで、一方の撮影画像の所定個所に対応する他方の撮影画像中の個所を特定する際の輝度情報の利用方法の一例として、第1の実施の形態において説明した本発明に係るCENSUS変換が挙げられる。第1の実施の形態において説明した通り、本発明に係るCENSUS変換処理は、先ず、変換対象設定部11において、着目画素を含む所定範囲の閉じた領域である中央領域における着目画素以外の複数画素と、中央領域から少なくとも1画素以上離れた個所に存在する少なくとも1以上の周辺領域における少なくとも1以上の画素とを、CENSUS変換における変換対象画素として予め設定し、次に、対象画像データ取得部12において、対象画像データを取得し、そして、CENSUS変換部13において、対象画像データの各画素について、その画素を着目画素とした場合の変換対象画素についてそれぞれ輝度値を算出して、変換対象画素のそれぞれの輝度値を着目画素の輝度値と比較して、着目画素の輝度値よりも大きい画素については「1」に変換し、着目画素の輝度値以下の画素については「0」に変換し、全ての変換対象画素についての変換結果を予め定めた順番に並べることで、着目画素についてのCENSUS変換結果であるバイナリベクトルデータを生成する処理となる。このようにして得られた各画素のバイナリベクトルデータを、2つの撮影画像間において対比して、ハミング距離に基づいて、一方の撮影画像の所定個所に対応する他方の撮影画像の個所を特定することで、視差情報を算出する。
 3次元形状特定部18は、算出された視差情報に基づいて、対象物の3次元形状を特定する機能を有する。ここで、3次元形状特定部18は、対象物の3次元形状の特定に際し、三角測量の原理を利用する。3次元形状特定部18は、例えば、視差情報算出部17により算出された画素位置間の距離を示す情報に基づいて、撮影装置30から、対象物中の各個所までの距離情報を三角測量の原理を利用してそれぞれ算出し、算出した距離情報に基づいて対象物の3次元形状を特定する。
 図6は、本発明の実施の形態の少なくとも1つに対応する3次元形状特定処理の流れの一例を示すフローチャート図である。この図6において、3次元形状特定処理は、情報処理装置10において、本例ドットパターンを生成することによって開始される(ステップS201)。次に、情報処理装置10は、本例ドットパターンからなる投影光を対象物に対して投影させるように投影装置20を制御する(ステップS202)。次に、情報処理装置10は、対象物を2方向から撮影するように撮影装置30を制御して2つの撮影画像を取得する(ステップS203)。次に、情報処理装置10は、2つの撮影画像についてそれぞれCENSUS変換を実行して画素毎のバイナリベクトルデータを生成する(ステップS204)。次に、情報処理装置10は、2つの撮影画像に基づいて視差情報を算出する(ステップS205)。最後に、情報処理装置10は、視差情報に基づいて対象物の3次元形状を特定し(ステップS206)、3次元形状特定処理を終了する。
 図7は、本発明の実施の形態の少なくとも1つに対応する配置パターンの例について説明した説明図である。図7には、ドットパターン生成部15により選択候補となる配置パターンの例が示されている。図7に示す例では、配置パターンは全部で25種存在し、それぞれが縦3横3の最大9個のドットを配置できるドット配置領域に1~3個のドットが配置される格子状パターンである。本例における25種の配置パターンは、同一のドット配置のパターンが重複して含まれず、さらにドット配置領域内において平行移動した際に互いに重複するパターンとならないものの組み合わせである。また、本例では、各配置パターンには0~24の固有の番号が振られている。ドットパターン生成部15による選択処理においては、0~24の何れかが乱数生成され、生成された数値に対応する配置パターンが選択される。なお、配置パターンにより隣接して2つのドットが配置されるよう示されている場合、ドットパターン投影制御部16により投影された投影光における当該2つのドットは、連続していてもよいし所定距離離れていてもよい。
 図8は、本発明の実施の形態の少なくとも1つに対応するドットパターンの例について説明した説明図である。図8(A)には、ドットパターン生成部15により生成された本例ドットパターンの例が示されている。図8(B)には、ランダムドットパターンである従来ドットパターンの例が示されている。図8(A)及び図8(B)のドットパターンは、ドットの密度が共に約20%と略同一になっている。図8(A)に示されるように、配置パターンに基づいてドットの配置を行った本例ドットパターンは、図8(B)の従来ドットパターンと比較して、パターンにおける各小領域でのドットの配置に特徴を持たせることができている。すなわち、パターンにおける複数の小領域間でのドット配置の一致度を従来ドットパターンと比較して低くすることができている。
 以上のように、本発明に係る情報処理装置10によれば、変換対象設定部11と、対象画像データ取得部12と、CENSUS変換部13と、記憶部14と、ドットパターン生成部15と、ドットパターン投影制御部16と、視差情報算出部17と、3次元形状特定部18とを備える構成とし、所定の決定規則に従って基準位置を決定する決定処理と、少なくとも1つ以上のドット配置を示す複数の配置パターンから何れかを選択する選択処理と、基準位置に対して選択された前記配置パターンに基づいてドットを配置する配置処理と、決定処理、選択処理及び配置処理を複数回数行う反復処理とによってドットパターンを生成し、本例ドットパターンからなる投影光を対象物に対して投影させるように投影装置20を制御し、投影光が投影された対象物を少なくとも2方向から撮影するように撮影装置30を制御して、2枚以上の撮影画像を取得し、取得された2つの撮影画像について、CENSUS変換を実行して各画素のバイナリベクトルデータを生成し、バイナリベクトルデータを用いて視差情報を算出し、算出した視差情報に基づいて、対象物の3次元形状を特定するので、対象物の3次元計測を高精度に行うことが可能となる。
 すなわち、本例ドットパターンが投影された対象物を2方向から撮影した2つの撮影画像に対してCENSUS変換処理を行うにあたり、第1の実施の形態で説明した本発明特有の中央領域と周辺領域からなる変換対象画素についてCENSUS変換を実行するようにすることで、誤検出を減らして高精度に視差情報を算出することが可能となる。中央領域と周辺領域からなる変換対象画素を設定することで、CENSUS変換において広い範囲の特徴を捉えることが可能となるので、本例ドットパターンを投影した対象物を2方向から撮影した2つの撮影画像を対象画像データとする場合に特に高い効果が得られる。
 なお、情報処理装置10は、ドットパターン生成部15の代わりに、所定の決定規則に従って基準位置を決定する決定処理と、少なくとも1つ以上のドット配置を示す複数の配置パターンから何れかを選択する選択処理と、基準位置に対して選択された配置パターンに基づいてドットを配置する配置処理と、決定処理、選択処理及び配置処理を複数回数行う反復処理とによって本例ドットパターンを予め生成して所定の記憶部に記憶させておくドットパターン生成処理部を備えていてもよい。その場合、ドットパターン投影制御部16は、当該記憶部から本例ドットパターンを読み出し、当該本例ドットパターンからなる投影光を対象物に対して投影させるように投影装置20を制御する。ドットパターンの記憶方法は、画像ファイルとして保存するほか、たとえばフォトマスクにドットパターンを印刷したものを装置内に保管するような方法であってもよい。
 10       情報処理装置
 11       変換対象設定部
 12       対象画像データ取得部
 13       CENSUS変換部
 14       記憶部
 15       ドットパターン生成部
 16       ドットパターン投影制御部
 17       視差情報算出部
 18       3次元形状特定部
 20       投影装置
 30       撮影装置

 

Claims (6)

  1.  対象画像データの各画素についてCENSUS変換を行うことで各画素の特徴を表すバイナリベクトルデータを生成する処理をコンピュータに実現させるための情報処理プログラムであって、
     前記コンピュータに、
     着目画素を含む所定範囲の閉じた領域である中央領域における前記着目画素以外の複数画素と、前記中央領域から少なくとも1画素以上離れた個所に存在する少なくとも1以上の周辺領域における少なくとも1以上の画素とを、前記CENSUS変換における変換対象画素として予め設定する変換対象設定機能と、
     前記対象画像データを取得する対象画像データ取得機能と、
     前記対象画像データの各画素について、その画素を前記着目画素とした場合の前記変換対象画素についてそれぞれ輝度値を算出して、前記変換対象画素のそれぞれの輝度値を前記着目画素の輝度値と比較して、前記着目画素の輝度値よりも大きい画素については「1」に変換し、前記着目画素の輝度値以下の画素については「0」に変換し、全ての前記変換対象画素についての変換結果を予め定めた順番に並べることで、前記着目画素についてのCENSUS変換結果であるバイナリベクトルデータを生成するCENSUS変換機能と
     を実現させる情報処理プログラム。
  2.  前記中央領域は、縦m画素(mは3以上の整数)からなる矩形領域を前記変換対象画素として設定し、
     前記周辺領域は、前記中央領域との間で横方向に1画素以上の間隔を設けて形成し、かつ、前記中央領域を形成した縦m画素の範囲を逸脱しない個所に前記変換対象画素を設定する
     請求項1記載の情報処理プログラム。
  3.  前記中央領域に設定する前記変換対象画素の数と、前記周辺領域に設定する前記変換対象画素の数とを合計した全体としての前記変換対象画素の数を、8(m-1)個(mは3以上の整数)以下に設定する
     請求項2記載の情報処理プログラム。
  4.  前記対象画像データ取得機能は、ランダムなドットパターンからなる投影光を投影した対象物を少なくとも2方向から撮影した2枚以上の撮影画像を前記対象画像データとして取得する
     請求項1から請求項3の何れか1項に記載の情報処理プログラム。
  5.  前記ドットパターンは、
     ポアソンディスクサンプリングのアルゴリズムにより定まる規則に従って基準位置を決定する決定処理と、少なくとも1つ以上のドット配置を示す複数の配置パターンから何れかを選択する選択処理と、前記基準位置に対して選択された前記配置パターンに基づいてドットを配置する配置処理と、前記決定処理、前記選択処理及び前記配置処理を複数回数行う反復処理とによって生成されたドットパターンである
     請求項4記載の情報処理プログラム。
  6.  対象画像データの各画素についてCENSUS変換を行うことで各画素の特徴を表すバイナリベクトルデータを生成する処理を行うための情報処理装置であって、
     着目画素を含む所定範囲の閉じた領域である中央領域における前記着目画素以外の複数画素と、前記中央領域から少なくとも1画素以上離れた個所に存在する少なくとも1以上の周辺領域における少なくとも1以上の画素とを、前記CENSUS変換における変換対象画素として予め設定する変換対象設定部と、
     前記対象画像データを取得する対象画像データ取得部と、
     前記対象画像データの各画素について、その画素を前記着目画素とした場合の前記変換対象画素についてそれぞれ輝度値を算出して、前記変換対象画素のそれぞれの輝度値を前記着目画素の輝度値と比較して、前記着目画素の輝度値よりも大きい画素については「1」に変換し、前記着目画素の輝度値以下の画素については「0」に変換し、全ての前記変換対象画素についての変換結果を予め定めた順番に並べることで、前記着目画素についてのCENSUS変換結果であるバイナリベクトルデータを生成するCENSUS変換部と
     を備える情報処理装置。

     
PCT/JP2022/029047 2021-07-29 2022-07-28 情報処理プログラム及び情報処理装置 WO2023008509A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023538612A JPWO2023008509A1 (ja) 2021-07-29 2022-07-28

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2021-123962 2021-07-29
JP2021123962 2021-07-29

Publications (1)

Publication Number Publication Date
WO2023008509A1 true WO2023008509A1 (ja) 2023-02-02

Family

ID=85086823

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/029047 WO2023008509A1 (ja) 2021-07-29 2022-07-28 情報処理プログラム及び情報処理装置

Country Status (2)

Country Link
JP (1) JPWO2023008509A1 (ja)
WO (1) WO2023008509A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013041330A (ja) * 2011-08-11 2013-02-28 Panasonic Corp 特徴抽出装置、特徴抽出方法、特徴抽出プログラム、および画像処理装置
JP2013224895A (ja) * 2012-04-23 2013-10-31 Sharp Corp 3次元計測装置
JP2021500653A (ja) * 2017-12-07 2021-01-07 ルネサスエレクトロニクス株式会社 データ処理装置及びデータ処理方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013041330A (ja) * 2011-08-11 2013-02-28 Panasonic Corp 特徴抽出装置、特徴抽出方法、特徴抽出プログラム、および画像処理装置
JP2013224895A (ja) * 2012-04-23 2013-10-31 Sharp Corp 3次元計測装置
JP2021500653A (ja) * 2017-12-07 2021-01-07 ルネサスエレクトロニクス株式会社 データ処理装置及びデータ処理方法

Also Published As

Publication number Publication date
JPWO2023008509A1 (ja) 2023-02-02

Similar Documents

Publication Publication Date Title
EP3239929B1 (en) Image processing apparatus, image processing method and program
US10430962B2 (en) Three-dimensional shape measuring apparatus, three-dimensional shape measuring method, and storage medium that calculate a three-dimensional shape of an object by capturing images of the object from a plurality of directions
JP6566768B2 (ja) 情報処理装置、情報処理方法、プログラム
JP6115214B2 (ja) パターン処理装置、パターン処理方法、パターン処理プログラム
JP6512100B2 (ja) 画像処理を実行する情報処理装置及び画像処理方法
KR20160031967A (ko) 멀티 프로젝션 시스템 및 이의 프로젝터 캘리브레이션 방법
JP2015184056A (ja) 計測装置、方法及びプログラム
JP7168077B2 (ja) 3次元計測システム及び3次元計測方法
KR20160012064A (ko) 전자빔 묘화 장치, 전자빔 묘화 방법 및 기록 매체
JP2015222220A (ja) 制御装置、ロボット、及び制御方法
JP2016509805A (ja) 画像ストリームの高フレームレート化
KR20150003573A (ko) 영상 패턴 검출 방법 및 그 장치
EP4350280A1 (en) Three-dimensional measurement device
JP6319395B2 (ja) 3次元測定装置および3次元測定方法
WO2023008509A1 (ja) 情報処理プログラム及び情報処理装置
CN112292577B (zh) 三维测量装置以及方法
JP7398749B2 (ja) 3次元形状計測方法及び3次元形状計測装置
JP5657503B2 (ja) 読取装置、方法及びプログラム
JP2018092507A (ja) 画像処理装置、画像処理方法及びプログラム
JP2018041169A (ja) 情報処理装置およびその制御方法、プログラム
US10380463B2 (en) Image processing device, setting support method, and non-transitory computer-readable media
US20180365516A1 (en) Template creation apparatus, object recognition processing apparatus, template creation method, and program
JP4346620B2 (ja) 画像処理装置、画像処理方法および画像処理プログラム
CN112767472B (zh) 定位显示屏图像中灯珠的方法、计算设备及存储介质
JP2012098207A (ja) 位置計測装置、位置計測方法及びマーカー

Legal Events

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

Ref document number: 22849570

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2023538612

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE