Information processing method and program
The imaging system optimizes image capture angles using specular reflection principles to efficiently capture and reproduce texture and gloss across an object's entire surface, addressing inefficiencies in existing methods.
Patent Information
- Application Number
- JP2025039876
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2025-03-13
- Publication Date
- 2026-01-14
- Estimated Expiration
- 2045-03-13
AI Technical Summary
Existing methods fail to optimally determine directional angles for capturing images of real objects, leading to inefficient image processing times and incomplete texture reproduction due to insufficient or excessive image capture.
An imaging system with a light source and camera setup that calculates unit rotation angles based on specular reflection, ensuring comprehensive capture of texture and gloss by positioning light sources symmetrically and determining optimal angles for image capture.
Enables efficient capture of specular reflection components from the entire object periphery, reproducing texture and gloss even on surfaces with negative inclinations, reducing image processing time and improving texture reproduction.
Smart Images

Figure 0007798219000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to an information processing method and a program. [Background technology]
[0002] There is a technology that can recreate a 3D model of a real object on a computer. This type of technology employs a technique in which a texture that recreates the specular reflection component of the object is applied to the 3D model of the object. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Application Laid-Open No. 2003-216970 Summary of the Invention [Problem to be solved by the invention]
[0004] However, there is no known method for calculating the difference in directional angles when capturing images of a real object from multiple directions, depending on the object's shape. As a result, for some objects, the number of captured images is greater than ideal, resulting in longer than ideal times for image processing and capture. Also, for some objects, the number of captured images is less than ideal, resulting in parts where the texture, etc., is not reproduced.
[0005] The present invention aims to obtain an optimal difference in directional angle for generating a three-dimensional model that reproduces the texture and gloss of an object, compared to when the difference in directional angle used to capture an image of a real object is given fixedly. [Means for solving the problem]
[0006] The invention described in claim 1 is An imaging device for capturing an image of a real object includes a light source having a plane and a camera, the object is disposed near a rotation center of a predetermined rotation axis, the imaging device is disposed away from the rotation center, the light source, the camera, and the object are disposed within a rotation plane of the rotation axis, the light source illuminates the object with illumination light, and the camera captures an image of the object illuminated by the illumination light. The processor: The aforementioned Imaging device and , the above Objects and 、 At least one of The aforementionedWhen determining a unit rotation angle when rotating and moving the object around a rotation axis and capturing images of the surface of the object from multiple directions, the rotation axis, the camera, and the front Kihaku A source sets position coordinates corresponding to a three-dimensional model of the object, accepts designation of a minute area on the three-dimensional model of the object, and Kikō of the illumination light output from the source , the light source located on the side farther from the half line connecting the camera and the center of rotation in the plane of rotation. 1st End The first illumination light output from the micro-area is specularly reflected by the micro-area and enters the camera. The corner of the edge is calculated as a first rotation angle relative to the rotation axis, Kihaku of the illumination light output from the source , the light source located on the side closer to the half line connecting the camera and the center of rotation in the plane of rotation. Second End The second illumination light output from the micro-area is specularly reflected by the micro-area and enters the camera. The corner of the edge as a second rotation angle with respect to the rotation axis, and the difference between the calculated first rotation angle and the second rotation angle is determined as the unit rotation angle. Claim 2 The invention described in claim 1 is an information processing method in which the processor determines the unit rotation angle for a minute region where the distance from the rotation axis to the surface of the object is the longest. Claim 3 The invention described in claim 1 is an information processing method in which the processor determines the unit rotation angle for a small area where the angle between a half line extending from the rotation axis toward the surface of the object and the normal to the surface of the object is 0°. Claim 4 The invention described in imaging device teeth , each of which has a plane No. 1 light Source and Origin 2 light a source; 1 light Source and the above 2 light The information processing method according to claim 1, wherein the sources are arranged on both sides of a half line connecting the camera and a center of rotation. Claim 5 In the invention described in 1 light a first unit rotation angle calculated for the source relative to the rotation axis; 2 lightand a second unit rotation angle calculated for the source with respect to the rotation axis, whichever is smaller, are determined as the unit rotation angle. 4 This is an information processing method described in Claim 6 The invention described in An imaging device for capturing an image of a real object includes a light source having a plane and a camera, the object is disposed near a rotation center of a predetermined rotation axis, the imaging device is disposed away from the rotation center, the light source, the camera, and the object are disposed within a rotation plane of the rotation axis, the light source illuminates the object with illumination light, and the camera captures an image of the object illuminated by the illumination light. On the computer, The aforementioned Imaging device and , the above Objects and 、 At least one of The aforementioned When determining a unit rotation angle when rotating and moving the object around a rotation axis and capturing images of the surface of the object from multiple directions, the rotation axis, the camera, and the front Kihaku a function for setting position coordinates corresponding to a three-dimensional model of the object; a function for receiving designation of a minute area on the three-dimensional model of the object; Kikō of the illumination light output from the source , the light source located on the side farther from the half line connecting the camera and the center of rotation in the plane of rotation. 1st End The first illumination light output from the micro-area is specularly reflected by the micro-area and enters the camera. The corner of the edge is calculated as a first rotation angle with respect to the rotation axis. R Function and Kihaku of the illumination light output from the source , the light source located on the side closer to the half line connecting the camera and the center of rotation in the plane of rotation. Second End The second illumination light output from the micro-area is specularly reflected by the micro-area and enters the camera. The corner of the edge is calculated as a second rotation angle relative to the rotation axis. R and a function of determining the difference between the calculated first rotation angle and the calculated second rotation angle as the unit rotation angle. [Effects of the Invention]
[0007] Claim 1 According to the described invention, it is possible to determine a unit rotation angle at which an image containing only specularly reflected light components is captured. Claim 2 According to the described invention, it is possible to determine an area in which an image including specular reflection components can be captured from the entire periphery of an object. Claim 3 According to the described invention, it is possible to determine an area in which an image including specular reflection components can be captured from the entire periphery of an object. Claim 4 According to the described invention, it is possible to reproduce texture and glossiness even on a surface portion that has a negative inclination angle with respect to one surface light source. Claim 5 According to the described invention, it is possible to reproduce the texture and glossiness of the entire circumference of an object. Claim 6 According to the described invention, Determine the unit rotation angle at which an image containing only specularly reflected light components is captured. can. [Brief explanation of the drawings]
[0008] [Figure 1] FIG. 1 is a diagram illustrating a schematic configuration of a gloss reading system assumed in a first embodiment. [Figure 2] FIG. 2 is a diagram illustrating a functional configuration of the gloss reading system. [Figure 3] FIG. 2 is a diagram illustrating an example of a hardware configuration of a simulation device. [Figure 4] 10 is a flowchart illustrating an operation for determining a unit rotation angle. [Figure 5] FIG. 2 is a plan view illustrating the observation environment in the simulation space. [Figure 6] FIG. 10 is a diagram illustrating a surface normal angle. [Figure 7] FIG. 10 is a diagram illustrating the surface normal angle at the point farthest from the center of rotation. [Figure 8] 10A and 10B are diagrams illustrating the rotation angle when the incident angle and the reflection angle are the same. [Figure 9] 10A and 10B are diagrams illustrating the relationship between a surface normal angle, a unit rotation angle, and a distance. [Figure 10] FIG. 10 is a diagram for schematically explaining an angle range. [Figure 11] 10 is a flowchart illustrating an operation for determining a unit rotation angle focusing on a minute region that gives the maximum outer diameter. [Figure 12] 10 is a flowchart illustrating an example of a process for generating a three-dimensional model including gloss information. [Figure 13] 10 is a flowchart illustrating another example of the process for generating a three-dimensional model including gloss information. [Figure 14] FIG. 10 is a diagram illustrating a schematic configuration of another gloss reading system. DETAILED DESCRIPTION OF THE INVENTION
[0009] Hereinafter, an embodiment of the present invention will be described with reference to the drawings. <First Embodiment> <System configuration> 1 is a diagram illustrating a schematic configuration of a gloss reading system 1 assumed in embodiment 1. The gloss reading system 1 shown in FIG. 1 includes an imaging system 10, a turntable 20, light sources 30R and 30L, a camera 40, and a simulation device 50. The light sources 30R and 30L and the camera 40 are an example of an imaging device.
[0010] The imaging system 10 is a computer that controls the turntable 20, light sources 30R and 30L, and camera 40, and controls the imaging of the three-dimensional object S. The imaging system 10 controls the rotation of the turntable 20 through control of a turntable controller 20A (see FIG. 2). The imaging system 10 controls the turning on and off of the light sources 30R and 30L, etc. The imaging system 10 controls the imaging of the three-dimensional object S by the camera 40.
[0011] A three-dimensional object S can be detachably attached to the rotating table 20. The three-dimensional object S is assumed to be any object from which gloss information is to be read. The three-dimensional object S is an object that exists in real space. 1 has an elliptical cylindrical shape. However, the elliptical cylindrical shape is just an example, and the object may have any three-dimensional shape.
[0012] The turntable 20 includes, for example, a disk-shaped base, a motor (not shown) that rotates the base, and a turntable controller 20A (see FIG. 2) that controls the rotation of the motor. In FIG. 1, the rotation axis of the turntable 20 is indicated by a dashed line. The rotating table 20 can rotate 360° around the rotation axis. In Fig. 1, the rotating table 20 is shown rotating counterclockwise. However, the rotating direction of the rotating table 20 may also be clockwise.
[0013] The light sources 30R and 30L are surface light sources that illuminate the three-dimensional object S. The light sources 30R and 30L may be parallel light sources or non-parallel light sources (i.e., diffuse light sources). The light source 30R is an example of a first surface light source, and the light source 30L is an example of a second surface light source. 1, light sources 30R and 30L are arranged at symmetrical positions across a plane including the rotation axis of turntable 20 and the imaging optical axis of camera 40. Because they are at symmetrical positions, the inclination angles of light sources 30R and 30L are also symmetrical.
[0014] In other words, they are arranged on both sides of a half line connecting the rotary table 20 and the camera 40. In the case of this embodiment, this half line is parallel to the imaging optical axis. In FIG. 1, the light source on the right side of the camera 40 when facing the rotary table 20 is referred to as light source 30R, and the light source on the left side of the camera 40 is referred to as light source 30L. The light sources 30R and 30L are arranged taking into consideration the size of the three-dimensional object S. Specifically, the distance between the light sources 30R and 30L and the rotation axis is set to an extent that the change in the angle of incidence of light incident on a minute region of the three-dimensional object S rotated by the turntable 20 can be ignored.
[0015] Camera 40 is a device that captures an image of the surface of three-dimensional object S attached to turntable 20. For example, a CMOS (=Complementary Metal-Oxide Semiconductor) sensor is used as the imaging element of camera 40. In the case of FIG. 1, the imaging optical axis of camera 40 is adjusted so as to intersect with the rotation axis of turntable 20. The capturing of still images, etc. by camera 40 is controlled by camera controller 40A (see FIG. 2). 1, the number of cameras 40 is one. However, a camera that captures an image from the top surface side of the three-dimensional object S or a camera that captures an image from the bottom surface side of the three-dimensional object S may be added.
[0016] The simulation device 50 is a computer that reproduces the imaging environment of the three-dimensional object S in a simulation space in cooperation with the imaging system 10. The simulation device 50 is a computer that determines the rotation angle (hereinafter referred to as "unit rotation angle") of the turntable 20 that can capture the specular reflection components from the three-dimensional object S over the entire circumference of the three-dimensional object S. In the case of this embodiment, the unit rotation angle is the angle by which the turntable 20 rotates between capturing an image of the three-dimensional object S by the camera 40 and the next image capture. The simulation device 50 is an example of an information processing system.
[0017] <Functional configuration> Fig. 2 is a diagram illustrating the functional configuration of the gloss reading system 1. In Fig. 2, parts corresponding to those in Fig. 1 are assigned the same reference numerals. The imaging system 10 has a function of providing rotation angle setting information and operation instructions to the turntable controller 20A. The rotation angle setting information is, for example, a unit rotation angle. The operation instruction is an instruction to rotate at the set rotation angle. When the imaging system 10 finishes capturing images of the three-dimensional object S, it outputs the next rotation to the turntable controller 20A.
[0018] The imaging system 10 also has a function of providing imaging setting information and imaging instructions to the camera controller 40A. The imaging setting information is, for example, information for setting the resolution and the angle of view. The imaging instruction is, for example, an instruction to capture a still image. For example, when the turntable 20 rotates by a unit rotation angle around the rotation axis, the imaging system 10 outputs the imaging instruction to the camera controller 40A. In addition, the imaging system 10 also has a function of receiving images captured by the camera 40 (see FIG. 1) from the camera controller 40A.
[0019] The imaging system 10 has a function of providing the simulation device 50 with the coordinates of the rotation axis (i.e., the center of rotation), light sources 30R and 30L, and camera 40. Using these coordinates, the imaging environment in the real space is reproduced in the simulation space. The imaging system 10 also has a function of providing a three-dimensional model to be used in the simulation to the simulation device 50. The three-dimensional model here may be a model generated from the three-dimensional object S (see FIG. 1) or may be a model selected independently.
[0020] The imaging system 10 has a function of providing the simulation device 50 with a surface normal angle φ. The surface normal angle φ is the angle between the normal to the tangent plane of the infinitesimal area of the three-dimensional model and a line segment extending from the rotation axis (center of rotation) of the turntable 20 in the direction of the infinitesimal area. The surface normal angle φ is provided, for example, in the range of −90° to +90°. However, when the simulation device 50 calculates the surface normal angle φ from a provided three-dimensional model, the imaging system 10 can simply use the calculated value of the surface normal angle φ without providing the surface normal angle φ to the simulation device 50.
[0021] The imaging system 10 has a function of providing the maximum outer diameter of the 3D model to the simulation device 50. The maximum outer diameter refers to the maximum distance from the center of rotation that the surface of the 3D model passes through while the turntable 20 rotates 360°. However, if the simulation device 50 calculates the maximum outer diameter from the given 3D model, the imaging system 10 can simply use the calculated value of the maximum outer diameter without providing the maximum outer diameter to the simulation device 50.
[0022] The simulation device 50 has a function of determining, based on the given information, a unit rotation angle of the turntable 20 that can capture specular reflection components from all peripheral surfaces of the three-dimensional model. The determined unit rotation angle is provided from the simulation device 50 to the imaging system 10 as unit rotation angle setting information.
[0023] <Hardware configuration> <Simulation device> FIG. 3 is a diagram illustrating an example of the hardware configuration of the simulation device 50. As shown in FIG. 3 includes a processor 51, a semiconductor memory 52, an auxiliary storage device 53, a display 54, an input receiving device 55, and a communication interface 56. Each device is connected via a bus or other signal lines 57.
[0024] The processor 51 is a device that realizes various functions through the execution of programs. The semiconductor memory 52 may include, for example, a ROM (=Read Only Memory) in which a UEFI (=Unified Extensible Firmware Interface) or the like is stored, and a RAM (=Random Access Memory) used as a work area for the processor 51. The processor 51 and the semiconductor memory 52 function as a so-called computer.
[0025] The auxiliary storage device 53 is configured by, for example, a hard disk drive or semiconductor storage. The auxiliary storage device 53 stores programs and various data. The term "program" is used as a general term for the OS (=Operating System) and application programs. One of the programs stored in the auxiliary storage device 53 is a program that determines a unit rotation angle through simulation.
[0026] Simulation results and the like are displayed on the display 54. The display 54 may be, for example, a liquid crystal display or an organic EL (=Electro Luminescence) display. The input reception device 55 is a device that receives input operations from, for example, a mouse, a keyboard, a button, or other input devices.
[0027] The communication interface 56 is an interface for communicating with the imaging system 10 (see FIG. 2) via the network N. The communication interface 56 is compatible with various communication standards. The communication standards here include, for example, Ethernet (registered trademark), Wi-Fi (registered trademark), and mobile communication systems.
[0028] <Imaging system> The hardware configuration of the imaging system 10, which is a computer, is basically the same as that of the simulation device 50. In the case of this embodiment, the imaging system 10 is not provided with a display or an input receiving device.
[0029] <Principle for determining unit rotation angle> Figure 4 is a flowchart explaining the principle of determining the unit rotation angle. The symbol S in the figure means a step. The processing operations shown in FIG. 4 are realized through the execution of a program by the processor 51 (see FIG. 3).
[0030] For the sake of simplicity, the following describes the principle of determining a unit rotation angle that allows reading of gloss from the entire circumference of a three-dimensional model on a two-dimensional plane obtained by cutting the three-dimensional model M at a certain height. However, when a camera that captures an image from the top surface side and a camera that captures an image from the bottom surface side of the three-dimensional object S are arranged, the unit rotation angle described below is determined for each combination of each camera and light source.
[0031] First, the processor 51 sets the position coordinates of the rotation center O, the light sources 30R and 30L (see FIG. 1), the camera 40 (see FIG. 1), and the three-dimensional model M (step 11). These position coordinates are given as coordinate points in the simulation space. Next, the processor 51 sets the distance from the rotation center O to the infinitesimal region of the three-dimensional model M to r (see FIG. 5) (step 12). The infinitesimal region is a region on the side (or surface) of the three-dimensional model M.
[0032] FIG. 5 is a plan view illustrating the observation environment in the simulation space. Fig. 5 shows the rotation center O of the rotating table 20. The three-dimensional model M that rotates around the rotation center O as its central axis has an elliptical cylindrical shape. However, the three-dimensional model M shown in Fig. 5 is shown as an ellipse because it is a cross-sectional shape at a certain height. Fig. 5 also shows the center c of the aperture of the camera 40. In Figure 5, the direction passing through the center of rotation O and the center c of the opening is defined as the Y axis, and the direction perpendicular to the Y axis on the plane is defined as the X axis. The center of rotation O coincides with the origin of the X and Y axes. The major axis of the three-dimensional model M shown in FIG. 5 is parallel to the Y axis, and the minor axis is parallel to the X axis.
[0033] The coordinates of the tiny area of the three-dimensional model M, the left end point R2 of the light source 30R, the right end point R1 of the light source 30R, the left end point L1 of the light source 30L, the right end point L2 of the light source 30L, and the center c of the aperture of the camera 40 are also given as coordinate values on a two-dimensional plane defined by the X-axis and Y-axis. The right end point R1 of the light source 30R and the left end point L1 of the light source 30L are end points on the side farther from the camera 40. These are examples of first end points. The left end point R2 of the light source 30R and the right end point L2 of the light source 30L are end points closer to the camera 40. These are examples of second end points.
[0034] Returning to the explanation of Figure 4. Processor 51 sets the surface normal angle to φ (step 13). In the present embodiment, the surface normal angle φ is given in the range of −90° to +90°. FIG. 6 is a diagram illustrating the surface normal angle φ. In FIG. 6, the tangents and normals including the tangents of a minute region (region represented by a vector from the rotation center O of the turntable 20) on the surface of the three-dimensional model M are both expressed by dashed lines. A solid arrow is shown extending in the direction of the minute region from the rotation center O of the turntable 20. The surface normal angle φ is given as the angle between this normal and the line segment.
[0035] In this embodiment, the rotation angle θ of the turntable 20 is given as the angle with the Y axis. In this case, the coordinates of the infinitesimal region of the three-dimensional model M are given by (r·sin θ, r·cos θ). 7 is a diagram for explaining the surface normal angle φ at the point farthest (distance rmax) from the rotation center O. In Fig. 7, parts corresponding to those in Fig. 6 are assigned the same reference numerals. 7, the normal direction including the tangent to the infinitesimal region and the arrow extending from the rotation center O toward the infinitesimal region are located on the same line. Therefore, the surface normal angle φ is 0°. The reason why the surface normal angle φ is taken into consideration is that the reflection direction of the incident light from the light sources 30R and 30L depends on the surface normal angle φ.
[0036] Returning to the explanation of Figure 4. When the process of step 13 is completed, the processor 51 sets the position coordinates of one end point of the surface light source (step 14). As described above, in this embodiment, light source 30R and light source 30L are placed symmetrically across a plane that includes the rotation axis of turntable 20 and the imaging optical axis of camera 40. Therefore, when two light sources 30R and 30L are placed symmetrically, the unit rotation angle determined for light source 30R and camera 40 and the unit rotation angle determined for light source 30L and camera 40 are the same.
[0037] Therefore, in the following explanation, only the light source 30R will be explained. In step 14, for example, the position coordinates of the end point R1 of the light source 30R are set. Next, the processor 51 varies the angle θ with respect to the Y axis to detect the rotation angle θ1 at which the incident angle s1 and the reflection angle s2 become equal (step 15). Fig. 8 is a diagram illustrating the rotation angle θ1 when the incident angle s1 and the reflection angle s2 are the same. Fig. 8 shows the relationship between the incident angle s1 and the reflection angle s2 in a small region specified by the angle θ1 with respect to the Y axis. In the present embodiment, the rotation angle θ1 at which specularly reflected light is incident on camera 40 (see FIG. 1) is determined.
[0038] 8, the vector that gives the incident light (i.e., illumination light) is expressed as the difference ir between vector i that gives the position coordinate of the endpoint and vector r that gives the position coordinate of the infinitesimal region. On the other hand, the vector that gives the reflected light (i.e., specularly reflected light) is expressed as the difference cr between vector c that gives the position coordinate of the center c of the aperture of camera 40 and vector r that gives the position coordinate of the infinitesimal region.
[0039] The angle of incidence s1 from the end point set in step 14 is given by the following equation: s1(r,φ,θ)=arg(ir,r) On the other hand, the reflection angle s2 is given by the following equation: s2(r,φ,θ)=arg(cr,r)
[0040] Here, when s1=s2, it means that the specularly reflected illumination light is incident on the center c of the aperture of the camera 40. The rotation angle θ1 that satisfies s1 = s2 is expressed as a function of the distance r to the minute region of the 3D model M and the surface normal angle φ (i.e., θ1 = (r, φ)). If the distance r to the minute region of the 3D model M is a constant, it can be expressed as a function θ1(φ) with the surface normal angle φ as a variable. In step 15, the rotation angle θ1(r, φ) to be detected is expressed as θ1.
[0041] Returning to the explanation of Figure 4. Similarly, the processor 51 sets the position coordinates of the other end point of the light source (step 16). In step 16, for example, the processor 51 sets the position coordinates of the end point R2 of the light source 30R. Next, the processor 51 varies the angle θ relative to the Y axis, for example, to detect the angle θ2 at which the incident angle s1 and the reflection angle s2 are equal (step 17). The rotation angle θ2 here can also be expressed as the rotation angle θ2(r, φ). The processing operations in steps 16 and 17 are similar to those in steps 14 and 15.
[0042] By processing steps 14 to 17, the rotation angle θ1 at which specular reflected light corresponding to end point R1 of light source 30R enters camera 40 and the rotation angle θ2 at which specular reflected light corresponding to end point R2 of light source 30R enters camera 40 are detected. After this, processor 51 determines |θ1-θ2| (=Δθ) as the angle range Θ that satisfies the specular reflection condition (step 18). The angle range Θ gives the range of the infinitesimal region in which all of the specularly reflected light corresponding to light source 30R is incident on camera 40.
[0043] As described above, the rotation angles θ1 and θ2 are both given by a function θ(r, φ) of the distance r and the surface normal angle φ. Therefore, the angle range Θ=|θ1-θ2| (that is, Δθ) can also be expressed as a function Δθ(r, φ) of the distance r and the surface normal angle φ. In this embodiment, the angular range Θ is determined as the unit rotation angle, and therefore the unit rotation angle is expressed as both Δθ(r,φ) and Δθ(φ).
[0044] 9 is a diagram illustrating the relationship between the surface normal angle φ, the unit rotation angle Δθ(φ), and the distance r, where the vertical axis is Δθ(φ) and the horizontal axis is the surface normal angle φ. FIG. 9 shows a graph of the change in the unit rotation angle Δθ(φ) when the distance r is 100 mm, 200 mm, 300 mm, 400 mm, and 500 mm. 9, we can see that regardless of the distance r, the smaller the surface normal angle φ, the smaller the unit rotation angle Δθ(φ). In other words, the smaller the surface normal angle φ, the narrower the angle range Θ over which a specular reflection image of an object surface is captured for a given light source.
[0045] Therefore, to acquire a specular reflection image of a 3D model M at a constant distance r from the rotation center O, it is sufficient to determine the unit rotation angle Δθ(r, 0°) taking into account the case where the surface normal angle φ is 0°. In this case, it becomes possible to determine the unit rotation angle Δθ(r, 0°) at which a specular reflection image can be captured regardless of the distance r. That is, in step 13 (see FIG. 4), the surface normal angle φ is set to 0°.
[0046] Furthermore, the graph shown in Fig. 9 also reveals the following relationship. When the surface normal angle φ = 0°, it can be seen that the angular range Θ (i.e., Δθ) in which a specular reflection image can be captured becomes smaller as the distance r from the center of rotation O increases (for example, in the case of 500 mm). In other words, even if the surface normal angle φ is the same, the angular range Θ (i.e., Δθ) in which a specular reflection image of an object surface can be captured with a given light source becomes narrower as the distance r from the center of rotation O increases. In other words, this means that the range of the minute area in which specular reflection is captured becomes narrower.
[0047] Therefore, in step 12 (see FIG. 4), when the three-dimensional model M is attached to the turntable 20 (see FIG. 1), the unit rotation angle can be determined by setting the farthest distance r from the center of rotation O. Therefore, the processor 51 determines the angle range Θ for the infinitesimal region of the maximum outer diameter rmax (see FIG. 7) of the three-dimensional model M at the surface normal angle φ=0° as the unit rotation angle (that is, the angle range Θ).
[0048] Fig. 10 is a diagram for schematically explaining the angle range Θ. In Fig. 10, parts corresponding to those in Fig. 5 are assigned the same reference numerals. Note that Fig. 10 illustrates only the light source 30R, and does not illustrate the light source 30L. In this embodiment, light source 30R and light source 30L are arranged symmetrically with respect to a plane containing the rotation axis and the center c of the aperture of camera 40, and the angular range Θ of light source 30R and the angular range Θ of light source 30L are the same.
[0049] However, if light source 30R and light source 30L are not disposed symmetrically with respect to a plane including the rotation axis and the center c of the aperture of camera 40, the angular range Θ is determined similarly for light source 30L. Then, the smaller of the angular range Θ for light source 30R and the angular range Θ for light source 30L is determined as the unit rotation angle. By determining the smaller angular range Θ as the unit rotation angle, it becomes possible to capture specularly reflected light regardless of the unevenness or tilt direction of the surface of the three-dimensional model.
[0050] <Determining the unit rotation angle by applying the decision principle> 11 is a flowchart illustrating the operation of determining a unit rotation angle focusing on a minute region that provides the maximum outer diameter. In FIG. 11, parts corresponding to those in FIG. 4 are assigned the same reference numerals. In the case of FIG. 11, first, the processor 51 sets the position coordinates of the rotation center O, the light sources 30R and 30L (see FIG. 1), the camera 40 (see FIG. 1), and the three-dimensional model M (step 11).
[0051] Next, the processor 51 sets a minute region of the three-dimensional model M where the distance r from the center of rotation O is the maximum (step 12A). Thereafter, processor 51 executes steps 14 to 18 for the minute region set in step 12A to determine the unit rotation angle.
[0052] <Generation of 3D models including gloss information> <Generation process 1> Fig. 12 is a flowchart illustrating an example of a process for generating a three-dimensional model including gloss information. The generation process shown in Fig. 12 is executed in cooperation with the imaging system 10 (see Fig. 1) and the simulation device 50 (see Fig. 1).
[0053] First, the simulation device 50 determines a unit rotation angle using a virtual model in a simulation space that reproduces the imaging environment (step 21). The virtual model may be selected based on a three-dimensional object S (see FIG. 1) that may be imaged in real space, or a general-purpose model may be used. The virtual model is a three-dimensional model.
[0054] If the light source is placed at multiple heights, for example, diagonally above and diagonally below the virtual model, the angle range Θ is determined for all light source positions, and the minimum value of these is determined as the unit rotation angle. The unit rotation angle may be equal to or less than the unit rotation angle determined in step 18 (see FIG. 11).
[0055] Next, the imaging system 10 rotates the turntable 20 (see FIG. 1) by the unit rotation angle determined in step 21, and images the three-dimensional object S (step 22). As described above, if the unit rotation angle is determined based on the maximum outer diameter rmax, it is possible for the camera 40 to capture the specular reflected light from the surface of a three-dimensional object S of any shape.
[0056] Next, the imaging system 10 determines whether or not imaging of the entire circumference of the three-dimensional object S has been completed (step 23). That is, it is determined whether or not the total value of the rotation angles of the rotary table 20 has exceeded 360°. If the imaging of the entire circumference of the three-dimensional object S has not been completed, a negative result is obtained in step 23. In this case, the imaging system 10 returns to step 22.
[0057] On the other hand, if imaging of the entire circumference of the three-dimensional object S is completed, a positive result is obtained in step 23. In this case, the imaging system 10 provides the captured images to the simulation device 50, and generates a three-dimensional model including gloss information (step 24). The gloss information also includes color information.
[0058] The imaging system 10 generates a 3D image including gloss information by mapping the image including gloss information captured in step 22 onto the surface of the 3D model of the three-dimensional object S. The 3D model of the three-dimensional object S is generated in advance, for example, and stored in the auxiliary storage device 53 (see FIG. 3 ) or the like. Thereafter, the simulation device 50 displays the generated three-dimensional model on the display 54 (see FIG. 3) (step 25).
[0059] <Generation process 2> Fig. 13 is a flowchart illustrating another example of the process for generating a three-dimensional model including gloss information. In Fig. 13, parts corresponding to those in Fig. 12 are assigned the same reference numerals. The generation process shown in FIG. 13 is executed by cooperation between the imaging system 10 (see FIG. 1) and the simulation device 50 (see FIG. 1).
[0060] First, the imaging system 10 captures an image of the three-dimensional object S while rotating the turntable 20 (see FIG. 1) to acquire an image including a diffuse reflection component (step 31). The image also includes a color component. The acquired image is provided to the simulation device 50. The simulation device 50 generates a three-dimensional model of the three-dimensional object S in the simulation space using an image containing a diffuse reflection component (step 32).
[0061] Next, the simulation device 50 determines a unit rotation angle based on the generated three-dimensional model (step 33). When generating the unit rotation angle, the imaging system 10 provides the simulation device 50 with the coordinates of the rotation center of the turntable 20, the coordinates of the light sources 30R and 30L, the coordinates of the center c of the aperture of the camera 40, and the like. In the case of generation process 2, a unit rotation angle optimized for the three-dimensional object S to be imaged is determined. The determined unit rotation angle is provided to the imaging system 10 from the simulation device 50.
[0062] Thereafter, the imaging system 10 captures images of the three-dimensional object S while rotating the turntable by unit rotation angles, and acquires images of the specular reflection component (step 34). The acquired images are provided to the simulation device 50 from the imaging system 10. Next, the simulation device 50 generates a glossy texture from the image of the specular reflection component and combines it with the three-dimensional model (step 35). Thereafter, the simulation device 50 displays the generated three-dimensional model on the display 54 (see FIG. 3) (step 25).
[0063] <Summary> By determining the unit rotation angle of the turntable 20 using the method described above, it becomes possible to generate a three-dimensional model that reproduces the texture and glossiness of a three-dimensional object with the minimum number of imaging attempts.
[0064] <Other embodiments> (1) Although the embodiments of the present invention have been described above, the technical scope of the present invention is not limited to the scope of the above-described embodiments. It is clear from the claims that various modifications and improvements to the above-described embodiments are also included in the technical scope of the present invention.
[0065] (2) In the above-described embodiment, a three-dimensional object S to be imaged is attached to a rotating table 20 (see Figure 1), and light sources 30R, 30L (see Figure 1) and a camera 40 (see Figure 1) are arranged around the rotating table 20. However, the three-dimensional object S to be imaged may be placed at the center of rotation O, and the light sources 30R and 30L (see FIG. 1) and the camera 40 (see FIG. 1) may be rotated relative to each other.
[0066] 14 is a diagram illustrating the schematic configuration of another gloss reading system 1A, in which parts corresponding to those in FIG. 14, the turntable 20 has a doughnut shape with an opening near the center of the disk. Therefore, a three-dimensional object S is placed in the opening provided near the rotation axis of the turntable 20. In the gloss reading system 1A shown in FIG. 14, a camera 40 or the like attached to the turntable 20 captures images of the entire circumference of the three-dimensional object S while rotating. The method for determining the unit rotation angle is the same as in the first embodiment described above.
[0067] (3) In the above-described embodiment, an image of the three-dimensional object S is captured each time the turntable 20 is rotated by a unit rotation angle, as in step 22 in FIG. 12 and step 34 in FIG. However, each time the rotation angle of the turntable 20 reaches a unit rotation angle from the previous imaging position (that is, each time it is detected that the unit rotation angle has been reached), the camera 40 (see FIG. 1) may be instructed to capture a still image.
[0068] (4) In the above embodiment, the camera 40 captures still images of the three-dimensional object S periodically. However, the camera 40 may capture a moving image of the rotating three-dimensional object S. In this case, the imaging system 10 may capture a still image of the three-dimensional object S at the timing when the three-dimensional object S rotates by a unit rotation angle from the capture position of the previous still image.
[0069] (5) In the above-described embodiment, the entire circumference of the three-dimensional object S is the object of observation, but the observation range may be a portion of the three-dimensional object S. In this case, the angular range Θ for the minute region within the observation range that is the longest distance from the rotation center O can be calculated and determined as the unit rotation angle.
[0070] (6) In the above embodiment, the imaging system 10 (see FIG. 1) and the simulation device 50 (see FIG. 1) are separate systems. However, the simulation device 50 may be one of the functions executed by the imaging system 10. In other words, the simulation device 50 may be integrated with the imaging system 10.
[0071] (7) The gloss reading system 1 (see FIG. 1) and gloss reading system 1A (see FIG. 14) described above are based on the case where two light sources are used. However, each system may contain one, three or more light sources.
[0072] (8) In the above-described embodiments, each process is executed by a computer. The computer may execute the process by a processor as hardware, a program as software, or a combination of both. In this case, the processor is configured to execute various processes in the embodiments in cooperation with the program, and can function as each unit or each means in the embodiments.
[0073] Furthermore, the order in which the processes are executed by the processor is not limited to the order described and may be changed as appropriate. The arbitrary computer may be a general-purpose computer, a special-purpose computer, a workstation, or any other system capable of executing each process. The processor may be configured with one or more pieces of hardware, and the type of hardware is not limited. For example, the processor may be configured with hardware such as a CPU (Central Processing Unit), an MPU (Micro Processing Unit), a programmable logic device such as an FPGA (Field Programmable Gate Array), a dedicated circuit for executing specific processing such as an ASIC (Application Specific Integrated Circuit), a GPU (Graphic Processing Unit), or an NPU (Neural Processing Unit).
[0074] Furthermore, the type of hardware may be a combination of different types of hardware. When multiple pieces of hardware are configured to execute one or more processes of a certain processor, the multiple pieces of hardware may exist in devices physically separated from each other, or may exist in the same device. Furthermore, in any embodiment, the order of each process by the processor is not limited to the order described above and may be changed as appropriate. The hardware is configured by an electric circuit (circuitry) combining circuit elements such as semiconductor elements.
[0075] Furthermore, the program may be software such as firmware or microcode. Alternatively, the program may be, for example, a group of program modules, each function of which may be implemented by a processor configured to perform the respective function. The program may also be program code or a group of code segments stored in one or more non-transitory computer-readable media (e.g., storage media or other storages).
[0076] The program may be stored in multiple non-transitory computer-readable media that are physically separate from each other. A program code or code segment may represent a procedure, a function, a subprogram, a routine, a subroutine, a module, a software package, a class, or any combination of instructions, data structures, or program statements. A program code or code segment may be connected to another code segment or a hardware circuit by sending or receiving information, data, arguments, parameters, or memory contents.
[0077] (9) The present invention can also be applied to programs and program products.
[0078] <Additional Notes> (((1))) An information processing method in which a processor determines a unit rotation angle when rotating at least one of an imaging device including a camera and a surface light source and a real object around a predetermined rotation axis and imaging the surface of the object from multiple directions, by setting position coordinates in a simulation space corresponding to the rotation axis, the camera, the surface light source, and a three-dimensional model of the object, accepting specification of a small area on the three-dimensional model of the object, calculating a positional relationship in which a first illumination light output from a first endpoint of the illumination light output from the surface light source is specularly reflected from the small area and enters the camera as a first rotation angle with respect to the rotation axis, calculating a positional relationship in which a second illumination light output from a second endpoint of the illumination light output from the surface light source is specularly reflected from the small area and enters the camera as a second rotation angle with respect to the rotation axis, and determining the difference between the calculated first rotation angle and the second rotation angle as the unit rotation angle. (((2))) The information processing method described in (((1))), wherein the first endpoint is the end of the surface light source that is farther from the camera, and the second endpoint is the end of the surface light source that is closer to the camera. (((3))) The information processing method according to (((1))) or (((2))), wherein the processor determines the unit rotation angle for a minute region where the distance from the rotation axis to the surface of the object is the longest. (((4))) The information processing method described in any one of (((1))) to (((3))), wherein the processor determines the unit rotation angle for a minute region where the angle between a half line extending from the rotation axis toward the surface of the object and a normal to the surface of the object is 0°. (((5))) The information processing method described in any one of (((1))) to (((4))), wherein the surface light source has a first surface light source and a second surface light source, and the first surface light source and the second surface light source are arranged on both sides of a half line connecting the camera and the center of rotation. (((6))) The information processing method described in (((5))), wherein the processor determines the unit rotation angle to be the smaller of a first unit rotation angle relative to the rotation axis calculated for the first surface light source and a second unit rotation angle relative to the rotation axis calculated for the second surface light source. (((7))) A program for causing a computer to realize the following functions when determining a unit rotation angle when rotating at least one of an imaging device including a camera and a surface light source and a real object around a predetermined rotation axis and imaging the surface of the object from multiple directions: setting position coordinates in a simulation space corresponding to the rotation axis, the camera, the surface light source, and a three-dimensional model of the object; accepting designation of a microscopic area on the three-dimensional model of the object; calculating a positional relationship where a first illumination light output from a first endpoint of the illumination light output from the surface light source is specularly reflected from the microscopic area and enters the camera as a first rotation angle with respect to the rotation axis; calculating a positional relationship where a second illumination light output from a second endpoint of the illumination light output from the surface light source is specularly reflected from the microscopic area and enters the camera as a second rotation angle with respect to the rotation axis; and determining the difference between the calculated first rotation angle and the second rotation angle as the unit rotation angle.
[0079] According to the information processing method of (((1))), it is possible to obtain an optimal difference in direction angle for generating a three-dimensional model that reproduces the texture and glossiness of an object, compared to when the difference in direction angle used to capture an image of a real object is given fixedly. According to the information processing method of (((2))), it is possible to determine a unit rotation angle at which an image containing only specularly reflected light components is captured. According to the information processing method (((3))), it is possible to determine an area in which an image including a specular reflection component can be captured from the entire periphery of an object. According to the information processing method of (((4))), it is possible to determine an area in which an image including a specular reflection component can be captured from the entire periphery of an object. According to the information processing method of (((5))), it is possible to reproduce the texture and glossiness of a surface portion having a negative tilt angle with respect to one surface light source. According to the information processing method (((6))), it is possible to reproduce the texture and glossiness of the entire periphery of an object. According to the program (((7))), it is possible to obtain the optimal difference in direction angle for generating a three-dimensional model that reproduces the texture and glossiness of an object, compared to when the difference in direction angle used to capture an image of a real object is given fixedly. [Explanation of symbols]
[0080] 1, 1A...gloss reading system, 10...imaging system, 20...rotary table, 20A...rotary table controller, 30L, 30R...light source, 40...camera, 40A...camera controller, 50...simulation device, 51...processor, 52...semiconductor memory, 53...auxiliary storage device, 54...display, 55...input receiving device, 56...communication interface
Claims
1. An imaging device for capturing an image of a real object includes a light source having a plane and a camera, the object is disposed near a rotation center of a predetermined rotation axis, and the imaging device is disposed away from the rotation center; the light source, the camera, and the object are arranged in a plane of rotation of the rotation axis; When the light source illuminates the object with illumination light, and the camera captures an image of the object illuminated by the illumination light, The processor: When determining a unit rotation angle when at least one of the imaging device and the object is rotated around the rotation axis and the surface of the object is imaged from a plurality of directions, position coordinates corresponding to the rotation axis, the camera, the light source, and a three-dimensional model of the object are set in a simulation space; Accepting designation of a minute region on the three-dimensional model of the object; calculating an angle formed when a first illumination light, which is output from a first end of the light source and is located on a side farther from a half line connecting the camera and the rotation center within the rotation plane, is specularly reflected from the minute region and enters the camera, as a first rotation angle with respect to the rotation axis; calculating an angle formed when a second illumination light, which is output from a second end of the light source and is located closer to a half line connecting the camera and the rotation center within the rotation plane, is specularly reflected from the minute region and enters the camera, as a second rotation angle with respect to the rotation axis; determining a difference between the calculated first rotation angle and the calculated second rotation angle as the unit rotation angle; Information processing methods.
2. The processor: determining the unit rotation angle for a minute region where the distance from the rotation axis to the surface of the object is the longest; The information processing method according to claim 1 .
3. The processor: determining the unit rotation angle for a minute region where an angle formed by a half line extending from the rotation axis toward the surface of the object and a normal to the surface of the object is 0°; The information processing method according to claim 1 .
4. the imaging device includes a first light source and a second light source each having a flat surface; the first light source and the second light source are disposed on both sides of a half line connecting the camera and a rotation center, The information processing method according to claim 1 .
5. The processor: determining, as the unit rotation angle, a smaller one of a first unit rotation angle about the rotation axis calculated for the first light source and a second unit rotation angle about the rotation axis calculated for the second light source; The information processing method according to claim 4.
6. An imaging device for capturing an image of a real object includes a light source having a plane and a camera, the object is disposed near a rotation center of a predetermined rotation axis, and the imaging device is disposed away from the rotation center; the light source, the camera, and the object are arranged in a plane of rotation of the rotation axis; When the light source illuminates the object with illumination light, and the camera captures an image of the object illuminated by the illumination light, On the computer, When determining a unit rotation angle when at least one of the imaging device and the object is rotated around the rotation axis and the surface of the object is imaged from a plurality of directions, a function of setting position coordinates corresponding to the rotation axis, the camera, the light source, and a three-dimensional model of the object in a simulation space; a function of accepting designation of a minute region on the three-dimensional model of the object; a function of calculating an angle formed when a first illumination light, which is output from a first end of the light source and is located on a side farther from a half line connecting the camera and the center of rotation within a plane of rotation, is specularly reflected from the minute region and enters the camera, as a first rotation angle with respect to the rotation axis; a function of calculating an angle formed when a second illumination light, which is output from a second end of the light source and is located on the side closer to a half line connecting the camera and the center of rotation within the plane of rotation, is specularly reflected from the minute region and enters the camera, as a second rotation angle with respect to the rotation axis; a function of determining a difference between the calculated first rotation angle and the calculated second rotation angle as the unit rotation angle; A program to achieve this.
Citation Information
Patent Citations
Three-dimensional image processing method, three- dimensional image processor, there-dimensional image processing system and three-dimensional image processing program
JP2003203220A
Shape measurement device and calibration method
JP2011232087A
Glossiness acquisition state calculation device, glossiness acquisition state calculation method, glossiness acquisition state calculation program, terminal, and glossiness acquisition state display program
JP2021072024A
Device, system, method and program for three-dimensional image processing
JP2003216970A