WO2024080121A1 - 情報処理装置および方法 - Google Patents

情報処理装置および方法 Download PDF

Info

Publication number
WO2024080121A1
WO2024080121A1 PCT/JP2023/034723 JP2023034723W WO2024080121A1 WO 2024080121 A1 WO2024080121 A1 WO 2024080121A1 JP 2023034723 W JP2023034723 W JP 2023034723W WO 2024080121 A1 WO2024080121 A1 WO 2024080121A1
Authority
WO
WIPO (PCT)
Prior art keywords
imaging
information
unit
orientation
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/JP2023/034723
Other languages
English (en)
French (fr)
Inventor
慧佑 宇山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Group Corp
Original Assignee
Sony Group Corp
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 Sony Group Corp filed Critical Sony Group Corp
Priority to EP23877127.3A priority Critical patent/EP4604061A4/en
Priority to US19/116,388 priority patent/US20260104255A1/en
Priority to JP2024551378A priority patent/JPWO2024080121A1/ja
Publication of WO2024080121A1 publication Critical patent/WO2024080121A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C11/00Photogrammetry or videogrammetry, e.g. stereogrammetry; Photographic surveying
    • G01C11/02Picture taking arrangements specially adapted for photogrammetry or photographic surveying, e.g. controlling overlapping of pictures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three-dimensional [3D] modelling for computer graphics
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three-dimensional [3D] modelling for computer graphics
    • G06T17/10Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating three-dimensional [3D] models or images for computer graphics
    • G06T19/20Editing of three-dimensional [3D] images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/80Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/64Computer-aided capture of images, e.g. transfer from script file into camera, check of taken image quality, advice or proposal for image composition or decision on when to take image

Definitions

  • This disclosure relates to an information processing device and method, and in particular to an information processing device and method that makes it easier to perform 3D modeling.
  • one method for 3D modeling of 3D objects with three-dimensional shapes has been a method called photogrammetry, in which the 3D object is imaged from multiple directions and 3D data is generated based on the multiple captured images (see, for example, Patent Document 1).
  • 3D data is generated instantly (in real time) based on captured images, posture information, depth, and other information.
  • Neural Rendering for example, NeRF (Neural Radiance Fields)
  • NeRF Neral Radiance Fields
  • An information processing device includes a first 3D modeling processing unit that generates first three-dimensional shape information expressing the three-dimensional shape of a 3D object based on a first captured image generated by a first capture of the 3D object, a scoring processing unit that uses the first three-dimensional shape information to evaluate the accuracy of second three-dimensional shape information that can be generated using a second captured image generated by a second capture performed so far, and generates a scoring result, and a guidance information output control unit that generates guidance information for the second capture of the 3D object based on the scoring result, and controls the output of the guidance information.
  • An information processing method is an information processing method that generates first three-dimensional shape information expressing the three-dimensional shape of a 3D object based on a first captured image generated by a first capture of the 3D object, evaluates the accuracy of second three-dimensional shape information that can be generated using a second captured image generated by a second capture performed so far using the first three-dimensional shape information, generates a scoring result, generates guidance information for the second capture of the 3D object based on the scoring result, and controls output of the guidance information.
  • first three-dimensional shape information expressing the three-dimensional shape of a 3D object is generated based on a first captured image generated by a first capture of the 3D object, the first three-dimensional shape information is used to evaluate the accuracy of second three-dimensional shape information that can be generated using a second captured image generated by a second capture performed so far, a scoring result is generated, and guidance information for a second capture of the 3D object is generated based on the scoring result, and the output of the guidance information is controlled.
  • FIG. 1 is a diagram for explaining an overview of photogrammetry.
  • FIG. 1 is a diagram for explaining an overview of real-time 3D modeling.
  • FIG. 1 illustrates an example of a method for assisting imaging for 3D modeling.
  • 11A and 11B are diagrams illustrating an example of imaging control and imaging guidance.
  • FIG. 13 is a diagram illustrating an example of overlap.
  • 1A to 1C are diagrams illustrating examples of how imaging is performed depending on the distance from a subject.
  • FIG. 13 is a diagram illustrating an example of parallel processing.
  • FIG. 13 is a diagram illustrating an example of a scoring process.
  • FIG. 13 is a diagram illustrating an example of a scoring process.
  • FIG. 1 is a diagram illustrating an example of a scoring process.
  • FIG. 13 is a diagram illustrating an example of a scoring process.
  • FIG. 13 is a diagram illustrating an example of a scoring process.
  • FIG. 13 is a diagram illustrating an example of a scoring process.
  • FIG. 13 is a diagram showing an example of an output of a scoring result.
  • FIG. 13 is a diagram showing an example of output of overlap information.
  • FIG. 11 is a diagram showing an example of display of guidance information.
  • FIG. 11 is a diagram showing an example of display of guidance information.
  • FIG. 11 is a diagram showing an example of display of guidance information.
  • FIG. 11 is a diagram showing an example of display of guidance information.
  • FIG. 11 is a diagram showing an example of display of guidance information.
  • FIG. 11 is a diagram showing an example of display of guidance information.
  • FIG. 11 is a diagram showing an example of display of guidance information.
  • FIG. 11 is a diagram showing an example of display of guidance information.
  • FIG. 11 is a diagram showing an example of display of guidance
  • FIG. 11 is a diagram showing an example of display of guidance information.
  • FIG. 11 is a diagram showing an example of display of guidance information.
  • FIG. 11 is a diagram showing an example of display of guidance information.
  • FIG. 11 is a diagram showing an example of display of guidance information.
  • 1 is a block diagram showing an example of a main configuration of an imaging apparatus; 11 is a flowchart illustrating an example of the flow of a 3D modeling process.
  • 11 is a flowchart illustrating an example of the flow of a real-time 3D modeling process.
  • 11 is a flowchart illustrating an example of the flow of photogrammetry processing.
  • FIG. 1 is a diagram illustrating an example of a main configuration of an information processing system.
  • FIG. 1 is a block diagram showing an example of a main configuration of an imaging communication device; 1 is a block diagram showing an example of a main configuration of an imaging apparatus; FIG. 2 is a block diagram showing an example of a main configuration of a server.
  • 11 is a flowchart illustrating an example of the flow of a 3D modeling process. 35 is a flowchart continuing from FIG. 34, illustrating an example of the flow of a 3D modeling process.
  • 1 is a block diagram showing an example of a main configuration of an imaging communication device;
  • FIG. 2 is a block diagram showing an example of a main configuration of a server.
  • 11 is a flowchart illustrating an example of the flow of a 3D modeling process.
  • 38 is a flowchart illustrating an example of the flow of a 3D modeling process.
  • FIG. 2 is a block diagram showing an example of a main configuration of a computer.
  • 3D Modeling ⁇ Photogrammetry>
  • a method for generating (reconstructing) a model of a three-dimensional shape of an object there has been a method called photogrammetry, in which the 3D object is photographed from multiple directions and 3D data is generated based on the multiple photographed images.
  • photogrammetry a method for generating a model of the three-dimensional shape of a 3D object is also referred to as 3D modeling.
  • Photogrammetry is a technique for reconstructing a highly accurate three-dimensional model using the principles of triangulation from multiple images taken from various viewpoints.
  • "accuracy" in relation to 3D data (3D model) refers not only to the reproducibility (accuracy, definition, etc.) of the three-dimensional shape of the target 3D object, but also to the reproducibility (accuracy, definition, etc.) of the texture applied to the surface of the 3D model.
  • cameras 11-1 to 11-5 capture images of a 3D object 10 from multiple viewpoints to obtain multiple captured images. These captured images are then used to perform processes called SfM (Structure from Motion) and MVS (Multi-view Stereo), and further meshing and texturing are performed as post-processing to generate 3D data 15.
  • SfM Structure from Motion
  • MVS Multi-view Stereo
  • corresponding points are searched for between captured images, the position and orientation of the camera are derived using epipolar constraints, and the positions of each corresponding point in three-dimensional space are identified using triangulation based on the camera position and orientation.
  • these points in three-dimensional space are also referred to as three-dimensional points.
  • three-dimensional points that correspond to each corresponding point are identified. Then, the entire group of three-dimensional points identified in this way is optimized using bundle adjustment.
  • the 3D point cloud derived as described above is used to perform a dense corresponding point search and add additional 3D points.
  • photogrammetry uses a global optimization calculation called bundle adjustment to minimize error, which allows for very accurate results, but it also imposes a heavy computational load. Also, because it is based on geometric calculations rather than physical measurements, in principle the higher the resolution of the image, the more accurate the model that can be restored.
  • ⁇ Real-time 3D modeling> As a 3D modeling method different from such photogrammetry, there is a method called real-time 3D modeling, which generates 3D data instantly (in real time) based on captured images, posture information, depth, and other information.
  • a camera 21 captures an image of a 3D object 10 while moving around the periphery of the 3D object 10 as shown by a dotted line 22.
  • the camera 21 is equipped with not only an image sensor but also a Lidar (Light Detection And Ranging) scanner (dToF (Direct Time of Flight) module), which obtains captured images and detects depth (distance to the subject).
  • dToF Direct Time of Flight
  • the camera 21 is equipped with an inertial sensor that detects the acceleration and angular velocity of the camera 21 (also referred to as inertial information in this specification).
  • SLAM Simultaneous Localization and Mapping
  • TSDF Transaction Signed Distance Function
  • 3D data 25 mesh and texture
  • MC Marching Cubes
  • SLAM position and orientation of the camera are estimated based on the captured image and inertial information (self-localization).
  • depth is associated with voxels to detect volume.
  • MC an isosurface is calculated using adjacent voxels.
  • real-time orientation information from SLAM the volume of a voxel can be detected (without going through a point cloud) by overlaying the depth (how far the light ray has reached) from multiple frames.
  • Using a voxel representation makes it possible to estimate viewpoints that are in shadow and that need to be photographed (missing viewpoints). This makes it possible to detect the hole and protrusion structures of a 3D object.
  • Neural Rendering e.g., NeRF (Neural Radiance Fields)
  • NeRF Neral Radiance Fields
  • Figure 3 compares the characteristics of photogrammetry and real-time 3D modeling. As shown in Figure 3, when comparing the methods, photogrammetry uses SfM (including self-localization) and MVS, while real-time 3D modeling uses self-localization (SLAM) and TSDF. When comparing the data used, photogrammetry uses only image data, while real-time 3D modeling uses depth and orientation data in addition to image data. When comparing the processing time, photogrammetry requires a long time, from several minutes to several tens of hours, while real-time 3D modeling allows for nearly instantaneous (real-time) processing at 30 fps (frame/sec).
  • photogrammetry requires computing power at the level of a high-end CPU (Central Processing Unit) and GPU (Graphics Processing Unit), while real-time 3D modeling requires computing power at the level of a mobile AP (Application Processor).
  • CPU Central Processing Unit
  • GPU Graphics Processing Unit
  • real-time 3D modeling requires computing power at the level of a mobile AP (Application Processor).
  • photogrammetry is relatively high-resolution, depending on the resolution, number, and shooting method of the captured images
  • real-time 3D modeling is relatively low-resolution, depending on the depth and self-location estimation accuracy, etc.
  • the internal representation of the generated 3D data is point cloud-based in photogrammetry, whereas it is voxel-based in real-time 3D modeling.
  • subject size or resolution there are no restrictions on subject size or resolution in photogrammetry, but real-time 3D modeling depends on the sensor.
  • photogrammetry is relatively high since it is optimized by bundle adjustment, whereas real-time 3D modeling is relatively low, depending on the sensor and self-localization accuracy.
  • photogrammetry is indefinite (size is unknown), whereas real-time 3D modeling is unique (absolute size is known).
  • the differences in characteristics between photogrammetry and real-time 3D modeling are as shown below.
  • applying real-time 3D modeling can reduce the amount of work and processing required for 3D modeling compared to applying photogrammetry or Neural Rendering.
  • applying photogrammetry or Neural Rendering can generate more accurate 3D data than applying real-time 3D modeling.
  • ⁇ Easy 3D modeling> For example, to obtain more accurate 3D data, photogrammetry or neural rendering can be applied as described above. However, even in that case, it is desirable to reduce the workload and processing volume of 3D modeling. In order to reduce the workload and processing volume of 3D modeling, it is necessary to generate 3D data with as few images as possible and as high accuracy as possible.
  • Imaging control Image capture control based on scoring results> Therefore, 3D modeling is performed twice, and the results of the first 3D modeling are used to control the imaging for the second 3D modeling.
  • a second imaging is performed to capture an image of a 3D object having a three-dimensional shape
  • a second 3D modeling process is performed to generate second 3D data (second three-dimensional shape information) expressing the three-dimensional shape of the 3D object using the second captured image obtained by the second imaging (second 3D data generation process 104 in FIG. 4).
  • the second imaging is controlled so that the second imaging for the second 3D modeling process can be performed at a more appropriate position and orientation (second 3D modeling imaging control process 103 in FIG. 4).
  • the first 3D data generation process 101 and scoring process 102 in FIG. 4 are executed.
  • the first 3D data generation process 101 is a process for generating first 3D data (first three-dimensional shape information) that represents the three-dimensional shape of a 3D object. That is, the first 3D data generation process 101 involves a first imaging process for imaging a 3D object, and a first 3D modeling process for generating first 3D data using the first captured image obtained by the first imaging process.
  • the scoring process 102 is a process for evaluating (scoring) the accuracy of second 3D data that can be generated using the second captured images generated by the second imaging performed so far. This scoring is performed based on the first 3D data generated by the first 3D modeling process. In the second 3D modeling imaging control process 103, the second imaging is controlled based on the scoring result.
  • the accuracy of the second 3D data that can be generated based on the second captured image obtained by the second imaging up to the present time is evaluated (scoring is performed). In this way, the scoring result can be generated more easily.
  • the second imaging is controlled based on the scoring result. In this way, the second imaging can be controlled so that it is performed at a more appropriate position and orientation. In other words, the second 3D modeling process can be executed using the second captured image captured at a more appropriate position and orientation. Therefore, it is possible to generate 3D data with higher accuracy while suppressing an increase in the load (workload and processing volume) of 3D modeling. In other words, 3D modeling can be performed more easily.
  • a captured image refers to a general image obtained by an image sensor or the like.
  • an imaging device or the like generally obtains the following images.
  • a still image is obtained by an image sensor or the like at the timing when a shutter button or the like is operated, and is stored in a storage medium or the like as an imaging result.
  • acquisition of a moving image is started by an image sensor or the like from the timing when a shutter button or the like is operated, and the moving image is stored in a storage medium or the like as an imaging result.
  • an image (sometimes called a captured image) is obtained by an image sensor or the like before a shutter button or the like is operated, and is not stored in a storage medium as an imaging result, but is used for display on a monitor or the like.
  • a captured image refers to these images.
  • a captured image may be a still image or a moving image.
  • a captured image may or may not be stored in a storage medium or the like as an imaging result.
  • a captured image may or may not be displayed on a monitor or the like.
  • a captured image may be obtained before a shutter button or the like is operated, may be obtained at the timing of operation, or may be obtained after operation.
  • the captured image may be the data itself (so-called RAW data) obtained by an image sensor or the like.
  • the captured image may be an image that has been subjected to color separation processing or color conversion processing.
  • the captured image may be an image that has been subjected to signal processing such as defect correction, noise reduction, AWB (Automatic White Balance), or gamma correction.
  • the captured image may be an image that has been subjected to other image processing.
  • an imaging section (image sensor) that performs the first imaging is also referred to as a first imaging section
  • an imaging section (image sensor) that performs the second imaging is also referred to as a second imaging section.
  • the first imaging is performed in the first 3D data generation process 101. That is, the first captured image is generated by the first imaging unit.
  • the distance (depth) from the first imaging unit to the subject (3D object) included in the first captured image may be detected by a depth sensor. Any method may be used to detect the depth by the depth sensor.
  • the depth sensor may be integrated with the first imaging unit, or may be a sensor different from the first imaging unit and provided at a different position from the first imaging unit. In the following, unless otherwise specified, it is assumed that the depth is appropriately calibrated for the first captured image.
  • the inertial information (angular velocity and acceleration) of the first imaging unit may be detected by an inertial information sensor. Any method may be used to detect the inertial information by the inertial information sensor.
  • the inertial information sensor may be integrated with the first imaging unit, or may be a sensor different from the first imaging unit and provided at a different position from the first imaging unit.
  • the generated first captured image is used in the first 3D data generation process.
  • depth and inertial information are also used in the first 3D data generation process.
  • the number of first imaging units (image sensors), depth sensors, and inertial information sensors may be any number, and may be singular or plural. In other words, the number of first imaging units, depth sensors, and inertial information sensors may all be the same, or two of them may be the same, or they may be different from each other.
  • first 3D modeling process is performed in the first 3D data generation process 101.
  • first 3D data (first three-dimensional shape information) expressing the three-dimensional shape of a 3D object is generated based on a first captured image generated by a first capture of the 3D object.
  • This first 3D data may have less information and lower accuracy than the second 3D data (second three-dimensional shape information) generated by the second 3D data generation process 104.
  • any method may be used for this first 3D modeling process.
  • orientation information corresponding to the angle of view of the first captured image may be derived, and the first 3D data may be generated based on the orientation information, the first captured image, and the depth of the subject (3D object) in the first captured image.
  • the first 3D data may be generated by updating the TSDF and performing MC based on that information.
  • this orientation information is information that indicates the position and orientation of the first imaging unit in three-dimensional space. Any method may be used to derive this orientation information.
  • the orientation information may be derived based on inertial information (acceleration and angular velocity) of the first imaging unit. For example, SLAM may be applied.
  • the above-mentioned real-time 3D modeling may be applied as the first 3D modeling process.
  • the first 3D modeling process can be performed instantly (in real time), and the first 3D data can be obtained instantly (in real time). Therefore, the imaging control process for the second 3D modeling can be performed instantly (in real time). In other words, 3D modeling can be performed more easily.
  • the attitude information of the first imaging unit and the first 3D data may be generated using a neural network that receives the first captured image, inertial information of the first imaging unit, and depth as inputs.
  • the first 3D data may be any data that represents the three-dimensional shape of a 3D object, and may be, for example, a point cloud, or may include a mesh that represents the three-dimensional shape of the 3D object through vertices and connections, and a texture that is applied to the surface of the mesh. This first 3D data is supplied to the scoring process 102.
  • the accuracy of the second 3D data that can be generated using the second captured image generated by the second imaging performed so far is evaluated.
  • This scoring is performed based on the first 3D data generated by the first 3D modeling process and the position and orientation of the second imaging performed so far. That is, the first 3D data is regarded as a 3D object modeled in the second 3D modeling process, and a score is calculated for each local part of the first 3D data.
  • the first 3D data includes a mesh that indicates the three-dimensional shape of the 3D object by vertices and connections, and a texture applied to the surface of the mesh
  • a scoring result is generated for each polygon of the mesh. That is, a part of the first 3D data from which a more accurate second 3D data can be obtained is evaluated more highly (set to a higher score).
  • the scoring process 102 evaluates the upper side of the first 3D data 120 in the figure as having a relatively high score, and the lower side of the first 3D data 120 in the figure (gray part) as having a relatively low score. An example of the scoring method will be described later.
  • the number of types of scores may be any number.
  • the scores may be classified into three levels (e.g., low score, medium score, high score), 10 levels (e.g., 0 to 9 points), 100 levels (e.g., 0 to 99 points), or any other number of levels.
  • the scoring results generated by the scoring process 102 are supplied to the second 3D modeling imaging control process 103.
  • the second imaging is controlled based on the position and orientation of the second imaging unit and the scoring result obtained by the scoring process 102.
  • the second imaging is controlled so as to be performed at a position and orientation that will improve the scoring result.
  • the scoring process 102 produces a scoring result such as that shown in FIG. 5. From this scoring result, it is clear that there is insufficient imaging of the lower part of the 3D object corresponding to the first 3D data 120 (e.g., the gray part).
  • the second imaging is controlled to capture an image from the lower side of the 3D object in the drawing, so that an image of the gray portion where imaging is lacking can be obtained.
  • the position and orientation of camera 121-4 is determined to be more appropriate as the position and orientation for capturing the second image, and the second imaging is controlled to capture the image at the position and orientation of camera 121-4.
  • the second 3D modeling imaging control process 103 may specify a position and orientation (range) that can improve the score of the portion (gray portion) where the second imaging is lacking based on the scoring result.
  • the current orientation information (position and orientation) of the second imaging unit may be provided to the scoring process 102 as imaging viewpoint information, and a scoring result may be obtained when a second imaging image obtained at the current position and orientation is added. If the score is higher than the score before the second imaging image is added by a predetermined threshold or more, it may be determined that the current position and orientation are the position and orientation at which the second imaging should be performed.
  • the orientation information of the first imaging unit may be provided to the scoring process 102 as imaging viewpoint information instead of the orientation information of the second imaging unit.
  • the orientation information of the first imaging unit may be used to derive the orientation information of the second imaging unit, and the scoring result may be generated using the orientation information of the second imaging unit.
  • the scoring result may be generated using a neural network that includes the orientation information of the first imaging unit as an input parameter.
  • the second 3D modeling imaging control process 103 it may be determined whether or not the position and orientation at which the second imaging should be performed are appropriate, based on the overlap rate with the imaging range of the second imaging performed so far.
  • the overlap rate indicates the degree (proportion) of the area where the imaging ranges overlap (overlap area). In other words, it may be determined whether or not the position and orientation of the second imaging are more appropriate, depending on the extent to which the imaging range of the second imaging to be performed overlaps with the area reflected in the second imaging images obtained so far.
  • the position and orientation at which a second captured image is obtained that has an overlap rate that makes it easier to perform the second 3D modeling process (allows for more accurate 3D modeling) may be determined to be a more appropriate position and orientation (position and orientation at which the second image should be captured).
  • the overlap rate at which the second 3D modeling process can be easily performed also depends on the three-dimensional shape of the 3D object.
  • the subject in the case of shooting from a so-called drone, the subject can be considered as a plane 130 as shown on the left in FIG. 6.
  • the imaging range when the plane 130 is imaged from the camera 131-1 is the range indicated by the double arrow 132-1.
  • the imaging range when the plane 130 is imaged from the camera 131-2 is the range indicated by the double arrow 132-2. Therefore, the overlap area of these captured images is the range indicated by the double arrow 133.
  • the way in which the captured images overlap is simple, if an overlap rate of a certain percentage or more is obtained, more accurate 3D modeling process can be performed.
  • the subject is a 3D object (first 3D data 135)
  • the overlap is three-dimensional, as in the second captured image 136-1 and second captured image 136-2 in the example on the right of FIG. 6. Therefore, the overlap rate required to perform sufficiently accurate 3D modeling processing depends on the three-dimensional shape of the 3D object, etc. Therefore, when considering the overlap rate for the second captured images obtained so far when determining the position and orientation for the second imaging, it is desirable to also consider the three-dimensional shape of the 3D object (first 3D data), etc. (the position and orientation for the second imaging can be determined more accurately).
  • the distance of the image capture position from the subject (3D object) may be controlled. In other words, not only the angle from which part of the 3D object is captured, but also the distance from which that part is captured may be controlled.
  • the appropriate distance from the 3D object as the position for the second imaging depends on the three-dimensional shape of the 3D object. Therefore, in the second 3D modeling imaging control process 103, the distance from the 3D object (subject) of the position for the second imaging may be controlled according to the three-dimensional shape (complexity) of the 3D object. By doing so, as described above, it is possible to suppress an unnecessary increase in the number of times the second imaging is performed while suppressing a decrease in the accuracy of the second 3D modeling process (the accuracy of the second 3D data). In other words, it is possible to control so that the second imaging is performed at a more appropriate position and orientation.
  • any method may be used to derive the complexity of the three-dimensional shape of the 3D object.
  • this complexity may be derived based on the first 3D data.
  • the first 3D data may be processed as a two-dimensional image, and the complexity of the three-dimensional shape of the 3D object may be derived from the pattern, etc. of the two-dimensional image. By doing so, it is possible to suppress an increase in the processing load related to the derivation of the complexity of the three-dimensional shape of the 3D object.
  • a detection frame may be provided, and the complexity of the three-dimensional shape of the 3D object may be derived within the detection frame.
  • This detection frame may be of any shape or size. For example, within this detection frame, the number of polygons of the first 3D data that face the imaging surface of the second image may be found, the degree of variation in the normal direction within the detection frame may be quantified, and the complexity of the three-dimensional shape of the 3D object within the detection frame may be derived based on the degree of variation. In general, the greater the variation, the more complex the shape, and if they face the same direction, they can be considered to be closer to a planar shape. Also, the average of the normal directions of each polygon within the detection frame may be used as a representative value of the degree of facing the imaging surface, and the complexity of the three-dimensional shape of the 3D object may be derived based on this representative value.
  • the complexity of the three-dimensional shape of the 3D object may be determined to be low.
  • the complexity of the three-dimensional shape of a 3D object may be any parameter (value based on it) as long as it is a quantitative value that can be used to estimate the direction, frequency, and distance at which imaging is required based on the general shape of a subject in a certain area.
  • any method may be used to control the distance from the 3D object of the second imaging based on the complexity of the 3D object's three-dimensional shape. For example, the more complex the three-dimensional shape of the 3D object, the closer the second imaging may be to a position from the 3D object. Furthermore, the simpler the three-dimensional shape of the 3D object, the farther the second imaging may be to a position from the 3D object.
  • the position and orientation (more appropriate position and orientation) at which the second imaging should be performed is determined, and control information (imaging control information) is generated to control the second imaging to be performed at that position and orientation. Then, that imaging control information is supplied to the second 3D data generation process 104. For example, when a user or the like moves the second imaging unit and the position and orientation of the second imaging unit match the determined "position and orientation at which the second imaging should be performed," imaging control information instructing the second imaging is generated and supplied to the second 3D data generation process 104 (i.e., the second imaging is performed at the "position and orientation at which the second imaging should be performed").
  • the second imaging unit performs the second imaging according to the control of the second 3D modeling imaging control process 103 to generate a second captured image.
  • the second imaging unit may perform the second imaging based on the imaging control information generated in the second 3D modeling imaging control process 103.
  • the second imaging unit may perform the second imaging when imaging is instructed by the imaging control information (at the timing when imaging is instructed).
  • the control unit that controls the position and attitude of the second imaging unit may move the second imaging unit to a position specified by the imaging control information, set the second imaging unit to the attitude specified by the imaging control information, and the second imaging unit may perform the second imaging at that position and attitude.
  • the number of second imaging units may be any number, and may be either singular or plural. Furthermore, the first imaging unit and the second imaging unit may be a common imaging unit (the same imaging unit) or may be different imaging units provided at different positions.
  • the specifications of the second imaging unit may be the same as or different from the specifications of the first imaging unit.
  • the second captured image may have a higher image quality than the first captured image.
  • the second captured image may have a higher resolution than the first captured image.
  • the second captured image may have a higher dynamic range than the first captured image.
  • the method of the second 3D modeling process executed in the second 3D data generation process 104 may be any method.
  • the method of the second 3D modeling process may be the same as or different from the method of the first 3D modeling process.
  • the above-mentioned photogrammetry may be applied as the second 3D modeling process. That is, in the second 3D modeling process, SfM and MVS may be applied, and a point cloud may be generated from a plurality of second captured images.
  • second 3D data may be generated by performing meshing and texturing on the point cloud as post-processing. That is, the second 3D data may be anything that expresses the three-dimensional shape of a 3D object, and may be, for example, a point cloud, or may include a mesh that indicates the three-dimensional shape of a 3D object through vertices and connections, and a texture that is applied to the surface of the mesh.
  • the above-mentioned Neural Rendering may be applied as the second 3D modeling process.
  • the second 3D data may be generated using, in addition to the second captured image, orientation information of the second imaging unit that performs the second image capture (orientation information corresponding to the angle of view of the second captured image obtained so far).
  • This orientation information is information that indicates the position and orientation of the second imaging unit in three-dimensional space.
  • the second 3D data may be generated using orientation information (position and orientation in three-dimensional space) of the first imaging unit.
  • the second 3D data may be generated using orientation information derived in the first 3D modeling process.
  • the orientation information of the second imaging unit may be derived using the orientation information of the first imaging unit
  • the second 3D data may be generated using the orientation information of the second imaging unit.
  • the second 3D data may be generated using a neural network that receives the orientation information of the first imaging unit and the second captured image as input.
  • the second 3D data may be encoded.
  • This encoding method may be any method.
  • the second imaging may be performed (for example, manually) without being based on the imaging control information.
  • such an imaging method is also referred to as manual imaging.
  • imaging timing information indicating the imaging timing is generated in (the second imaging of) the second 3D data generation process 104 and supplied to the second 3D modeling imaging control process 103.
  • orientation information of the second imaging unit at the imaging timing is obtained, and the orientation information of the second imaging unit at the imaging timing is supplied to the scoring process 102 as imaging viewpoint information.
  • the scoring process 102 a score is calculated based on the imaging viewpoint information.
  • the second captured image obtained by manual imaging orientation information of the second imaging unit corresponding to the angle of view
  • camera information regarding the second imaging unit may be generated and supplied to the scoring process 102. Then, in the scoring process 102, scoring may be performed based on this camera information, and a scoring result may be generated.
  • This camera information may include any information.
  • the camera information may include internal parameters of the imaging unit.
  • the camera information may also include external parameters of the imaging unit.
  • the camera information may also include a captured image.
  • the camera information may also include angle of view information (focal length information) of the second captured image.
  • the camera information may also include distortion correction information.
  • the camera information may also include shading correction information.
  • the camera information may also include breathing correction information.
  • the camera information may also include focus position information.
  • the camera information may also include image plane phase difference information. In other words, these pieces of information may be used for scoring (evaluation of the accuracy of the second three-dimensional shape information that can be generated).
  • first 3D data generation process 101 first imaging and first 3D modeling process
  • scoring process 102 scoring process
  • second imaging control process for 3D modeling 103 in FIG. 4 may be executed in parallel with each other.
  • the first 3D data of the part of the 3D object that is the subject where the first image was captured may be generated sequentially.
  • 3D data can be generated instantly (in real time) based on the captured image and depth information, etc. That is, in this case, the first 3D modeling can be performed while the first image is being captured (while the first captured image is being obtained), and the first 3D data can be generated.
  • the camera is moved around the 3D object that is the subject, and images of each part of the 3D object are captured, but before an image of the entire 3D object is obtained, 3D modeling can be performed based on the captured image and depth that have been obtained. That is, 3D data of the part where the image was captured can be generated sequentially.
  • the scoring process 102 the first 3D data corresponding to a part of the 3D object may be scored (evaluation of the accuracy of the second three-dimensional shape information that can be generated using the second captured image generated by the second imaging performed so far).
  • the scoring process 102 can be started before the first 3D data generation process 101 is completed (before the first 3D data of the entire 3D object is generated).
  • the first 3D data generation process 101 and the scoring process 102 can be executed in parallel.
  • the second imaging may be controlled based on the obtained scoring result (the scoring result for the first 3D data corresponding to a part of the 3D object).
  • the second 3D modeling imaging control process 103 can be started before the scoring process 102 ends (before the scoring result for the entire 3D object is obtained).
  • the scoring process 102 and the second 3D modeling imaging control process 103 can be executed in parallel.
  • the first 3D data generation process 101, the scoring process 102, and the second 3D modeling imaging control process 103 can be executed in parallel with each other.
  • the time axis runs from left to right as indicated by the arrow.
  • first 3D data for the portion where the first imaging was performed, such as first 3D data 151-1, first 3D data 151-2, and first 3D data 151-3.
  • first 3D data generation process first 3D modeling process
  • scoring process 102 it is possible to sequentially derive scoring results for the portion where the first 3D data was generated, such as scoring result 152-1, scoring result 152-2, and scoring result 152-3.
  • the scoring process 102 and the second 3D modeling imaging control process 103 in parallel, the second imaging can be controlled at each timing based on the scoring results obtained so far (scoring result 152-1, scoring result 152-2, scoring result 152-3).
  • the first 3D data generation process 101, the scoring process 102, and the second 3D modeling imaging control process 103 in parallel with each other, it is possible to control the second imaging while performing the first imaging.
  • the first imaging and the second imaging can be performed in parallel (instantaneously).
  • Conditions for photogrammetry to work well include, for example, that SfM works well, that MVS works well, and that texturing (texture mapping) works well.
  • Conditions for SfM to work well include, for example, that a baseline can be secured and that feature points can be matched.
  • a condition for MVS to work well includes, for example, that a baseline can be secured.
  • Conditions for texturing to work well include, for example, that a high-definition texture can be obtained in the captured image and that the surface to which the texture is applied is photographed as directly in front as possible.
  • the baseline refers to the distance between the imaging viewpoint positions (the camera positions during imaging).
  • Scoring polygons The conditions for whether a polygon surface can be restored using SfM or MVS include, for example, minimum visibility conditions (whether the polygon is visible from the imaging position), favorable accuracy conditions (conditions that improve accuracy), and favorable matching (detection of corresponding points) conditions (conditions that make matching easier).
  • Minimum conditions for visibility include, for example, that the center of gravity of the target polygon is within the field of view (within the imaging angle) when viewed from the viewpoint (imaging position), that the dot product of the target polygon's normal and the line of sight (vector pointing from the line of sight to the center of gravity of the target polygon) is at least positive, that there are no other polygons blocking the line of sight, and that there are two or more lines of sight from which the target polygon can be seen (visible).
  • line of sight 162 pointing from a certain viewpoint toward the center of gravity of the target polygon 160, so the target polygon 160 is located within that field of view.
  • the dot product of the line of sight 162 and the normal 161 of the target polygon 160 is positive.
  • line of sight 162 reaches the target polygon 160 without being blocked by other polygons, and is therefore a "line of sight through which the target polygon 160 is visible.” Therefore, line of sight 162 meets the minimum visibility conditions.
  • line of sight 163 is blocked by polygon 164, so it is not a "line of sight through which target polygon 160 can be seen.”
  • favorable conditions for accuracy include, for example, a sufficiently long baseline, a sufficiently large ratio of the baseline length to the distance to the subject (baseline length/distance to subject), and a sufficiently large number of visible viewpoints with a large variance in the angles they make with each other.
  • conditions for improved accuracy include a sufficiently long baseline 173 between viewpoints 171 and 172 from which the target polygon 170 is visible (viewpoints 171 and 172 are sufficiently far apart), and a sufficiently large ratio of the length of baseline 173 to distance 174 to the subject (the value of "baseline length/distance to subject" is sufficiently large).
  • the target polygon 180 is visible from two viewpoints, viewpoint 181 and viewpoint 182.
  • the target polygon 180 is visible from six viewpoints, viewpoint 181 to viewpoint 186.
  • the example on the right has more visible viewpoints and a greater variance in the angles they form than the example on the left. With more visible points, triangulation can be performed more robustly from multiple different pieces of information, which is expected to improve accuracy. Therefore, the example on the right meets the conditions for improved accuracy more than the example on the left.
  • favorable conditions for matching include, for example, a sufficiently small angle between the normal of the target polygon and the line of sight from the viewpoint toward the center of gravity of the target polygon, a sufficiently small ratio of the distance between the paired viewpoint and the subject, and the existence of a texture that can be matched.
  • the angle between the normal 191 of the target polygon 190 and the viewpoint 192 is smaller than the angle between the normal 191 and the viewpoint 193. Therefore, it is easier to correctly detect the feature points of the surface of the target polygon 190 from the viewpoint 192 than from the viewpoint 193. Also, in the example on the right side of FIG. 12, the distance from the viewpoint 194 to the subject (target polygon 190) is significantly farther than the distance from the viewpoint 195 to the subject (target polygon 190). In other words, the ratio of the distance to the subject is large between the viewpoints 194 and 195.
  • Conditions for determining whether a certain polygon surface has a sufficient viewpoint for texturing include, for example, a minimum condition (whether it is visible or not) and a favorable condition for texturing (a condition that allows for more beautiful texturing).
  • Minimum conditions include, for example, the existence of a viewpoint that satisfies the minimum visibility conditions mentioned above.
  • favorable conditions for texturing include, for example, a small angle between the normal of the target polygon and the line of sight from the viewpoint toward the center of gravity of the target polygon, and sufficient resolution being obtained when the distance from the viewpoint to the subject is below a certain level.
  • any conditions may be applied in scoring.
  • the contents of the conditions may be of any nature.
  • the above conditions may be omitted, or conditions other than the above conditions may be added.
  • Scoring of the second captured image obtained by the second imaging may be performed.
  • the second captured image may be scored based on camera information.
  • the second captured image may be evaluated as to whether or not it is focused at a desired position. It may also be evaluated as to whether or not there is camera shake. It may also be evaluated as to whether or not the exposure is appropriate. It may also be evaluated as to whether or not it is easy to capture feature points.
  • ⁇ Example of scoring calculation> For example, as shown in Fig. 13, the distance between the target captured image 201 and the target polygon 202 is d. The ideal distance to the subject is d opt . Furthermore, c d is a predetermined coefficient. In this case, the score s d may be derived as shown in the following formula (1).
  • the center of the target polygon 202 is defined as c p .
  • the line of sight from the target captured image 201 to the center c p is defined as v p .
  • the normal of the target polygon 202 is defined as n p .
  • the angle between the line of sight v p and the normal n p is defined as ⁇ .
  • the angle ⁇ can be derived as shown in the following formula (2).
  • a score s ⁇ based on the angle ⁇ may be derived as shown in the following formula (3).
  • c ⁇ is a predetermined coefficient.
  • the optical axis of the camera (the normal vector of the target captured image 201 starting from the center of the target captured image 201) is denoted by vc .
  • the angle between this optical axis vc and the line of sight vp is denoted by ⁇ .
  • the angle ⁇ can be derived as shown in the following formula (4).
  • a score s ⁇ based on the angle ⁇ may be derived as shown in the following formula (5).
  • c ⁇ is a predetermined coefficient.
  • a total score s total may be derived as shown in the following formula (6).
  • the weighted sum of the total scores of the top two viewpoints may be used as the final score.
  • calculation method is just one example. Any calculation method may be used in the scoring process 102 and is not limited to this example.
  • Example of configuration for executing processing> 4 may be executed by any device.
  • the first 3D modeling process of the first 3D data generation process 101, the scoring process 102, and the second 3D modeling imaging control process 103 may be executed in an information processing device.
  • the information processing device may include a first 3D modeling processing unit that generates first three-dimensional shape information expressing the three-dimensional shape of a 3D object based on a first captured image generated by a first imaging of the 3D object, a scoring processing unit that uses the first three-dimensional shape information to evaluate the accuracy of second three-dimensional shape information that can be generated using a second captured image generated by a second imaging performed so far, and generates a scoring result, and an imaging control unit that controls the second imaging of the 3D object based on the scoring result.
  • this information processing device is also referred to as a first information processing device.
  • first three-dimensional shape information expressing the three-dimensional shape of a 3D object is generated based on a first captured image generated by a first capture of the 3D object, the first three-dimensional shape information is used to evaluate the accuracy of second three-dimensional shape information that can be generated using a second captured image generated by a second capture performed so far, a scoring result is generated, and a second capture of the 3D object is controlled based on the scoring result.
  • the first 3D modeling processing unit may also include an orientation information generation unit that generates orientation information indicating the position and orientation of the first imaging unit based on the first captured image and the acceleration and angular velocity of the first imaging unit, and a three-dimensional shape generation unit that generates first three-dimensional shape information of the 3D object based on the orientation information and the depth of the 3D object.
  • an orientation information generation unit that generates orientation information indicating the position and orientation of the first imaging unit based on the first captured image and the acceleration and angular velocity of the first imaging unit
  • a three-dimensional shape generation unit that generates first three-dimensional shape information of the 3D object based on the orientation information and the depth of the 3D object.
  • the first imaging of the first 3D data generation process 101 described above may be performed.
  • the first information processing device may further include a first imaging unit.
  • the first information processing device including the first imaging unit may include a depth detection unit that detects depth, or an inertial measurement unit that detects the acceleration and angular velocity of the first imaging unit, or may include both.
  • the second imaging of the second 3D data generation process 104 described above may be performed.
  • the first information processing device may further include a second imaging unit.
  • the second captured image generated by this second imaging may be encoded.
  • a first information processing device including a second imaging unit may include an encoding unit that encodes the second captured image generated by the second imaging unit.
  • This encoded second captured image may be supplied to another information processing device via communication, or may be stored in a storage medium.
  • the second 3D modeling process of the second 3D data generation process 104 described above may be further performed.
  • the first information processing device having a second imaging unit may further include a second 3D modeling processing unit that generates second three-dimensional shape information based on the second captured image generated by the second imaging unit.
  • the second 3D modeling processing unit may include a corresponding point position derivation unit that derives three-dimensional positions of corresponding points between a plurality of second captured images, and a three-dimensional point addition unit that adds three-dimensional points based on the three-dimensional positions of the corresponding points.
  • meshing and texturing may be further performed as post-processing.
  • the second three-dimensional shape information may include a mesh that indicates the three-dimensional shape of the 3D object by vertices and connections, and a texture that is applied to the surface of the mesh.
  • the second 3D data generated by this second 3D modeling process may be encoded.
  • a first information processing device including a second imaging unit and a second 3D modeling processing unit may further include an encoding unit that encodes the second three-dimensional shape information generated by the second 3D modeling processing unit.
  • This encoded second three-dimensional shape information (second 3D data) may be supplied to another information processing device via communication, or may be stored in a storage medium.
  • the second imaging of the second 3D data generation process 104 described above may be performed in a second information processing device different from the first information processing device.
  • the first information processing device may include a communication unit that communicates with a second information processing device (imaging device) that includes a second imaging unit, the imaging control unit may generate imaging control information that controls the second imaging, and the communication unit may supply the imaging control information to the second information processing device.
  • imaging device imaging device
  • the imaging control unit may generate imaging control information that controls the second imaging
  • the communication unit may supply the imaging control information to the second information processing device.
  • the first information processing device may acquire the second captured image generated in the second information processing device.
  • the first information processing device having a communication unit may acquire the second captured image supplied from the second information processing device.
  • This second captured image may be encoded.
  • the first information processing device having a communication unit may have an encoding unit that encodes the second captured image acquired by the communication unit. This encoded second captured image may be supplied to another information processing device by communication, or may be stored in a storage medium.
  • the second captured image supplied from the second information processing device may be encoded. That is, the communication unit may acquire encoded data of the second captured image. The encoded data may then be supplied to another information processing device via communication, or may be stored in a storage medium.
  • the first information processing device may decode the encoded data acquired by the communication unit and generate (restore) the second captured image.
  • the first information processing device having a communication unit may have a decoding unit that decodes the encoded data of the second captured image acquired by the communication unit.
  • the first information processing device may further perform the second 3D modeling process of the second 3D data generation process 104 described above.
  • the first information processing device having a communication unit may further include a second 3D modeling processing unit that generates second three-dimensional shape information based on the second captured image acquired by the communication unit.
  • the second 3D modeling processing unit may include a corresponding point position derivation unit that derives three-dimensional positions of corresponding points between a plurality of second captured images, and a three-dimensional point addition unit that adds three-dimensional points based on the three-dimensional positions of the corresponding points.
  • meshing and texturing may further be performed as post-processing.
  • the second three-dimensional shape information may include a mesh that indicates the three-dimensional shape of the 3D object by vertices and connections, and a texture that is applied to the surface of the mesh.
  • the second 3D data generated by this second 3D modeling process may be supplied to another information processing device via communication, or may be stored in a storage medium. Furthermore, this second 3D data may be encoded.
  • a first information processing device having a communication unit and a second 3D modeling processing unit may further have an encoding unit that encodes the second three-dimensional shape information generated by the second 3D modeling processing unit. Then, the encoded data of the generated second three-dimensional shape information (second 3D data) may be supplied to another information processing device via communication, or may be stored in a storage medium.
  • the second image can be captured manually.
  • the second captured image obtained by the manual image capture may be used in the second 3D modeling process.
  • the scoring process 102 as described above, the accuracy of the second three-dimensional shape information that can be generated using the second captured image obtained so far is evaluated.
  • the second captured image obtained by manual image capture may be included in the second captured image.
  • the orientation information of the manual image capture may be reflected in the scoring process 102.
  • the scoring processing unit of the first information processing device may generate a scoring result based on the position and orientation of the second information processing device corresponding to the timing of the second image capture indicated by the imaging timing information indicating the timing of the second image capture not based on the imaging control information.
  • the imaging control unit may obtain the orientation information of the second imaging unit at the imaging timing based on the imaging timing information, and the scoring processing unit may calculate the score based on the orientation information. In this way, the orientation information of the manual image capture is reflected in the scoring result.
  • the second imaging may be performed in the first information processing device, or in the second information processing device.
  • the first information processing device has a second imaging unit, for example, the second imaging unit may generate imaging timing information indicating the timing when manual imaging is performed and supply it to the imaging control unit.
  • the communication unit may obtain imaging timing information supplied from the second information processing device and supply it to the imaging control unit.
  • camera information related to the second imaging unit may be reflected in the scoring process 102.
  • the scoring processing unit of the first information processing device may generate a scoring result based on the camera information.
  • the second imaging may be performed in the first information processing device or in the second information processing device. If the first information processing device has a second imaging unit, for example, the second imaging unit may generate camera information and supply it to the scoring processing unit. Also, if the first information processing device has a communication unit, for example, the communication unit may obtain camera information supplied from the second information processing device and supply it to the scoring processing unit.
  • the second information processing device may perform the second imaging of the second 3D data generation process 104 described above.
  • the second information processing device may include a second imaging unit and a communication unit that communicates with the first information processing device, the communication unit may acquire imaging control information supplied from the first information processing device, and the second imaging unit may capture a 3D object based on the imaging control information to generate a second captured image.
  • This imaging control information is information that controls the second imaging, which is generated based on the scoring result derived based on the first 3D data.
  • imaging control information supplied from a first information processing device may be acquired, a second imaging operation may be performed based on the imaging control information, and a second captured image may be generated for generating second 3D data.
  • the generated second captured image may be supplied to the first information processing device.
  • the communication unit may supply the second captured image generated by the second imaging unit to the first information processing device.
  • This second captured image is an image for generating three-dimensional shape information expressing the three-dimensional shape of a 3D object.
  • the second captured image may be encoded.
  • the second information processing device may include an encoding unit that encodes the second captured image generated by the second imaging unit.
  • the communication unit may supply the encoded data of the second captured image generated by the encoding unit to the first information processing device. Note that the second captured image (or the encoded data of the second captured image) may be supplied to an information processing device other than the first information processing device.
  • the communication unit may supply the second captured image (or the encoded data of the second captured image) to another information processing device.
  • this second captured image (or the encoded data of the second captured image) may be stored in a storage medium.
  • the second information processing device may include a storage unit that stores the encoded data of the second captured image generated by the encoding unit.
  • the second information processing device may also perform the second 3D modeling process described above. That is, in the second information processing device, the second 3D modeling process may be performed using the second captured image generated by the second imaging, and the second 3D data may be generated.
  • the second information processing device may further include a second 3D modeling processing unit that generates second three-dimensional shape information (second 3D data) expressing the three-dimensional shape of the 3D object based on the second captured image generated by the second imaging unit.
  • the second 3D modeling processing unit may include a corresponding point position derivation unit that derives the three-dimensional positions of corresponding points between the multiple second captured images, and a three-dimensional point addition unit that adds three-dimensional points based on the three-dimensional positions of the corresponding points.
  • the second three-dimensional shape information may include a mesh that indicates the three-dimensional shape of the 3D object by vertices and connections, and a texture that is applied to the surface of the mesh.
  • the second 3D data generated by this second 3D modeling process may be supplied to another information processing device via communication, or may be stored in a storage medium. Furthermore, this second 3D data may be encoded.
  • a second information processing device having a second 3D modeling processing unit may further have an encoding unit that encodes the second three-dimensional shape information generated by the second 3D modeling processing unit. Then, the encoded data of the generated second three-dimensional shape information (second 3D data) may be supplied to another information processing device via communication, or may be stored in a storage medium.
  • the second image can be captured manually.
  • the second captured image obtained by the manual capture may be used in the second 3D modeling process.
  • the scoring process 102 as described above, the accuracy of the second three-dimensional shape information that can be generated using the second captured images obtained so far is evaluated.
  • the second captured images may include the second captured images obtained by manual capture. In other words, the posture information of the manual capture may be reflected in the scoring process 102.
  • imaging timing information indicating the timing of manual imaging may be generated in the second information processing device and supplied to the first information processing device.
  • the second imaging unit of the second information processing device may generate imaging timing information indicating the timing
  • the communication unit may supply the imaging timing information to the first information processing device.
  • camera information related to the second imaging unit may be reflected in the scoring process 102.
  • the second imaging unit of the second information processing device may generate camera information, and the communication unit may supply the camera information to the first information processing device.
  • the communication unit may acquire imaging control information generated based on the camera information, and the second imaging unit may perform the second imaging based on the imaging control information.
  • camera information related to the second imaging unit may be generated, and the camera information may be supplied to the first information processing device.
  • imaging control information generated based on the camera information may be acquired, and the second imaging may be performed based on the imaging control information.
  • the 3D object can be imaged at a more appropriate position and orientation based on the camera information (a second image can be captured).
  • Imaging guide output> ⁇ Second imaging guide output process for 3D modeling>
  • guidance information for assisting the imaging for the second 3D modeling may be output.
  • the first 3D data generation process 101 and the scoring process 102 may be executed, and further, the imaging guide output process 105 for the second 3D modeling may be executed.
  • the first 3D data generation process 101 and the scoring process 102 are executed in the same manner as described above in ⁇ 2. Imaging control>.
  • the scoring process 102 supplies the scoring result to the imaging guide output process 105 for the second 3D modeling.
  • guidance information for the second imaging is generated based on the scoring results obtained by the scoring process 102, and the output of the guidance information is controlled and output from the output device.
  • the user or the like manually performs the second imaging by referring to such guidance information. That is, in this case, the second imaging is manual imaging (imaging not based on imaging control information). By performing the second imaging in this manner, a second captured image captured at a more appropriate position and orientation can be generated. Then, the second 3D data generation process 104 (second imaging and second 3D modeling process) is executed using the second captured image, and the desired second 3D data is generated. In other words, the second 3D modeling process can be executed using the second captured image captured at a more appropriate position and orientation. Therefore, it is possible to generate more accurate 3D data while suppressing an increase in the load (workload and processing volume) of 3D modeling. In other words, 3D modeling can be performed more easily.
  • the second imaging is manual imaging (imaging not based on imaging control information).
  • the second 3D modeling imaging guide output process 105 determines the position and orientation at which the second imaging should be performed (the position and orientation more appropriate as the position and orientation at which the second imaging should be performed) based on the scoring result. Any method may be used to determine the position and orientation at which the second imaging should be performed. For example, the same method as in the above-mentioned second 3D modeling imaging control process 103 may be used. For example, the position and orientation (range) that can improve the score of the part (gray part) where the second imaging is insufficient may be specified based on the scoring result.
  • the current position and orientation are the position and orientation at which the second imaging should be performed, based on the variation in the scoring result due to the current orientation information (position and orientation) of the second imaging unit. For example, when the score is higher than the score before the second imaging image is added by reflecting the second imaging image (orientation information) obtained when the second imaging unit performs the second imaging at the current position and orientation in the scoring, the current position and orientation may be determined to be the position and orientation at which the second imaging should be performed.
  • the scoring process 102 the scoring results are derived and compared with each other for the cases where the second imaging performed by the second imaging unit at the current position and orientation is included in the "second imaging performed so far" and not included. Therefore, in this case, in the scoring process 102, scoring is performed based on the current orientation information (imaging viewpoint information) of the second imaging unit.
  • This imaging viewpoint information may be supplied by the second 3D modeling imaging guide output process 105.
  • the second 3D modeling imaging guide output process 105 is executed, and the second imaging is performed manually. Therefore, similar to the case described above in ⁇ 2.
  • Imaging control> imaging timing information indicating the imaging timing may be generated in the second 3D data generation process 104 (the second imaging) and supplied to the second 3D modeling imaging guide output process 105. Then, in the second 3D modeling imaging guide output process 105, based on the imaging timing information, orientation information of the second imaging unit at the imaging timing may be obtained, and the orientation information of the second imaging unit at the imaging timing may be supplied to the scoring process 102 as imaging viewpoint information.
  • the orientation information of the first imaging unit may be supplied to the scoring process 102 as imaging viewpoint information instead of the orientation information of the second imaging unit.
  • the second 3D modeling imaging guide output process 105 it may be determined whether or not the position and orientation are appropriate for performing the second imaging based on the overlap rate with the imaging range of the second imaging performed so far.
  • the overlap rate at which the second 3D modeling process is easier to perform also depends on the three-dimensional shape of the 3D object, etc. Therefore, when determining the position and orientation at which the second imaging should be performed, if the overlap rate for the second captured images obtained so far is taken into consideration, it is desirable to also take into consideration the three-dimensional shape of the 3D object (first 3D data), etc. (the position and orientation at which the second imaging should be performed can be more accurately determined).
  • the distance of the imaging position from the subject (3D object) may be controlled.
  • the distance may be controlled according to the three-dimensional shape (complexity) of the 3D object.
  • the accuracy of the second 3D modeling process the accuracy of the second 3D data
  • guidance information is generated based on the position and orientation for the second imaging determined as described above.
  • This guidance information may be any type of information, and may include, for example, image information or audio information.
  • this guidance information is output so as to present the contents of the guidance information to, for example, a user performing the second imaging.
  • the output device may be of any type, and may include, for example, a monitor that displays image information, or a speaker that outputs audio information.
  • the content of the guidance information may be anything.
  • the guidance information may include information that indicates to the user a more appropriate position and posture for the second image capture.
  • the scoring process 102 evaluates the upper side of the first 3D data 120 in the figure as having a relatively high score, and the lower side of the first 3D data 120 in the figure (gray portion) as having a relatively low score. From this scoring result, it is clear that there is insufficient imaging of the lower side of the 3D object corresponding to the first 3D data 120 in the figure (e.g., gray portion).
  • this guidance information is generated and output to guide the second imaging so as to obtain an image of the gray area where imaging is lacking.
  • this guidance information guides the second imaging so as to capture an image from the lower side of the 3D object in the drawing. For example, it is determined that the position and orientation of camera 121-4 are more appropriate as the position and orientation for capturing the second imaging, and the user, etc. is notified of this fact.
  • the user can capture the 3D object in a more appropriate position and orientation by performing a second image capture according to the guidance information.
  • the captured image can be used to perform 3D modeling (second 3D data generation process 104). Therefore, it is possible to generate 3D data with higher accuracy while suppressing an increase in the load of 3D modeling. In other words, 3D modeling can be performed more easily.
  • the guidance information may include information indicating the scoring result. That is, in the second 3D modeling imaging guide output process 105, guidance information including information indicating the scoring result may be generated, and an image indicating the scoring result may be displayed on the monitor as the guidance information. Also, information indicating the scoring result for the current angle of view of the second imaging unit may be included in the guidance information. That is, in the second 3D modeling imaging guide output process 105, guidance information including information indicating the scoring result for the angle of view of the second imaging unit based on the current position and orientation of the second imaging unit may be generated, and an image indicating the scoring result may be displayed on the monitor as the guidance information.
  • the second imaging unit is located at the position of camera 211, and is oriented to capture an image of the inside of dotted frame 212 for scored first 3D data 210.
  • an image showing the scoring result for the current angle of view (imaging range) of the second imaging unit such as image 213, i.e., an image showing the portion of the first 3D data 210 within dotted frame 212, may be displayed on the monitor as guide information.
  • the scoring result can be displayed in a state according to the current position and orientation of the second imaging unit. Therefore, the user can more easily grasp the appropriate position and orientation for the second imaging.
  • this guidance information may be displayed superimposed on the captured image generated by the second imaging unit.
  • image 213 an image showing the scoring result within the current angle of view of the second imaging unit shown in FIG. 14 may be displayed superimposed on the captured image generated by the second imaging unit at the current angle of view.
  • the captured image and the guidance information (an image showing the scoring result) having the same angle of view can be displayed superimposed on the monitor.
  • an overhead image showing the scoring result of the entire 3D object may be displayed. By displaying such an overhead image, the user can more easily grasp which part of the entire 3D object is included in the currently displayed captured image of the 3D object.
  • information indicating an overlap area where the imaging ranges of the second captured images overlap may be included in the guidance information.
  • guidance information including information indicating an overlap area where the imaging ranges of the second captured images overlap may be generated, and an image indicating the overlap area may be displayed as the guidance information.
  • the imaging range is assumed to be the imaging range 222-1.
  • the imaging range is assumed to be the imaging range 222-2. In this case, the imaging ranges 222-1 and 222-2 are partially overlapped with each other.
  • the existence of an overlap area between the imaging ranges of the second captured images makes it possible to detect corresponding points between the two images.
  • it is possible to generate highly accurate second 3D data in the second 3D modeling process it is possible to suppress a reduction in the accuracy of the second 3D data.
  • the second captured images perform the second capturing
  • an image showing such an overlap area is displayed on the monitor as guidance information
  • the user operating the second imaging unit can determine the position and orientation of the second capturing while taking the overlap area into consideration based on the guidance information.
  • the user can more easily capture the second capturing in a position and orientation where there is an appropriate overlap area between the multiple second captured images.
  • the user can more easily capture the second capturing in an appropriate position and orientation.
  • the image showing the overlap area may show the overlap area in any way.
  • the overlap area may be shown by color, density, pattern, design, letters, symbols, figures, etc.
  • the overlap area may be highlighted relative to other areas (subjectively more noticeable than other areas).
  • this overlap area may be an overlap area between the current angle of view of the second imaging unit and the imaging range of the second imaging image obtained so far.
  • an image showing the overlap area between the second imaging image obtained so far and the second imaging image to be generated from now on may be displayed as guidance information.
  • guidance information including information showing the overlap area between the angle of view of the second imaging unit and the imaging range of the second imaging image obtained so far may be generated based on the current position and attitude of the second imaging unit, and an image showing the overlap area may be displayed on the monitor as guidance information.
  • the second imaging unit is at the position of camera 221-2 and is in an attitude to capture imaging range 222-2.
  • an image 223 showing the overlap area 224 within imaging range 222-2 may be generated and displayed as guidance information.
  • the overlap area can be displayed in a state according to the current position and attitude of the second imaging unit. Therefore, based on this guidance information, a user operating the second imaging unit can more easily understand how the imaging range of the second captured image obtained so far overlaps with the imaging range of the second captured image obtained by performing the second imaging at the current position and attitude. In other words, the user can more easily perform the second imaging so that it appropriately overlaps with the imaging range of the second captured image obtained so far. In other words, the user can more easily perform the second imaging in an appropriate position and attitude.
  • this guidance information (an image showing an overlap area where the imaging ranges of the second captured images overlap, or an overlap area between the current angle of view of the second imaging unit and the imaging range of the second captured image obtained so far) may be displayed superimposed on the captured image generated by the second imaging unit.
  • image 223 shown in FIG. 15 (an image showing an overlap area between the current angle of view of the second imaging unit and the imaging range of the second captured image obtained so far) may be displayed superimposed on the captured image generated by the second imaging unit with the current angle of view.
  • captured images with the same angle of view and guidance information an image showing the overlap area between the current angle of view of the second imaging unit and the imaging range of the second captured image obtained so far
  • the user can more easily match the overlap area with a 3D object in real space. Therefore, the user can more easily grasp the appropriate position and posture for the second capture.
  • an image may be displayed showing an overlap rate, which indicates the proportion of the overlap area within the angle of view.
  • This overlap rate may be expressed, for example, as a numerical value, or may be expressed, for example, as a color, density, or pattern. This type of display allows the user to more intuitively grasp the degree of overlap.
  • an auxiliary imaging image for assisting the second imaging may be included in the guidance information.
  • guidance information including an auxiliary imaging image for assisting the second imaging may be generated, and the auxiliary imaging image may be displayed as the guidance information.
  • the content of the auxiliary imaging image may be any type.
  • the auxiliary imaging image may include a recommended imaging position and posture guide indicating the recommended imaging position and posture, which is the recommended position and posture for the second imaging.
  • the recommended imaging position and posture which is the recommended position and posture for the second imaging
  • the recommended imaging position and posture guide indicating the recommended imaging position and posture may be displayed as the guidance information (auxiliary imaging image).
  • an image indicating this may be displayed as the recommended imaging position and orientation guide.
  • the user, etc. may be notified of this. Any method of notification may be used.
  • a completely different image from the previous one such as a white image, may be displayed.
  • the current position and orientation of the second imaging unit may be indicated as the recommended imaging position and orientation by characters, pictures, symbols, etc.
  • the user, etc. operating the second imaging unit can easily understand that the current position and orientation of the second imaging unit are the recommended imaging position and orientation based on such a display (recommended imaging position and orientation guide). This allows the user, etc. to more easily perform the second imaging in an appropriate position and orientation.
  • an image showing the relative position and orientation of the recommended imaging position and orientation with respect to the second imaging unit may be displayed as the recommended imaging position and orientation guide. That is, the direction of the recommended imaging position and orientation with respect to the current position and orientation of the second imaging unit, and how far away it is, may be shown by, for example, letters, pictures, symbols, etc. Based on such a display, a user operating the second imaging unit can more easily move the second imaging unit so as to approach the recommended imaging position and orientation even if the current position and orientation of the second imaging unit are not the recommended imaging position and orientation. This allows the user to more easily perform the second imaging in an appropriate position and orientation.
  • this recommended imaging position and posture guide may be displayed superimposed on the captured image generated by the second imaging unit. Such a display allows the user to more easily associate a 3D object in real space with the recommended imaging position and posture guide. Therefore, the user can more easily grasp the appropriate position and posture for the second imaging.
  • the recommended imaging position and orientation for the second imaging derived in the second 3D modeling imaging guide output process 105 may include a distance from the 3D object (subject).
  • the distance from the 3D object may be derived according to the complexity of the three-dimensional shape of the 3D object.
  • Any method may be used to derive the complexity of the three-dimensional shape of the 3D object, for example, the method described above in ⁇ 2.
  • Imaging control> Any method may be used to derive the distance from the 3D object (recommended imaging position and orientation) based on the complexity of the three-dimensional shape of the 3D object. For example, the more complex the three-dimensional shape of the 3D object, the closer a position from the 3D object may be set as the recommended imaging position and orientation. Also, the simpler the three-dimensional shape of the 3D object, the farther a position from the 3D object may be set as the recommended imaging position and orientation.
  • a detection frame may also be displayed as shown in FIG. 16.
  • a display image 230 is the guidance information displayed on the monitor by the second 3D modeling imaging guidance output process 105.
  • This display image 230 displays the scored first 3D data 231 and a detection frame 232.
  • the detection frame 232 By displaying the detection frame 232 in this way, it is possible for the user to easily operate the second imaging unit to move closer to or away from the 3D object (subject) in relation to the portion of interest of the subject, depending on the complexity of the three-dimensional shape of the 3D object.
  • the detection frame may not be displayed.
  • an image generated by the second imaging unit may be displayed on a monitor, and a detection frame and first 3D data corresponding to a 3D object (subject) may be displayed superimposed on the image as guidance information, and the portion of the first 3D data (3D object) to be imaged may be indicated.
  • the user may then move the second imaging unit so that the portion of the first 3D data to be imaged on the display is aligned with the detection frame, thereby placing the second imaging unit in an appropriate position and orientation for performing the second image capture.
  • a display image 240 may be displayed on a monitor, and a detection frame 241 and a portion 242 of a 3D object to be imaged that is derived based on the first 3D data may be displayed in the display image 240. Then, the user may move the second imaging unit so that the portion 242 to be imaged in the display image 240 approaches (ideally coincides with) the detection frame 241, thereby placing the second imaging unit in a position and orientation more suitable for performing the second imaging.
  • the portion 242 to be imaged is displayed smaller than the detection frame 241.
  • the user moves the second imaging unit closer to the 3D object so that the portion 242 to be imaged is displayed larger, thereby causing the display of the portion 242 to match (or approximate) the detection frame 241, as shown on the right side of FIG. 17.
  • the second imaging unit is placed in a position and orientation that is more appropriate for performing the second imaging.
  • the imaging direction is misaligned with the normal direction of the portion 242 to be imaged (the portion 242 to be imaged and the detection frame 241 (imaging surface) are not directly facing each other).
  • the user changes the orientation (i.e., imaging direction) of the second imaging unit, etc., so that the portion 242 to be imaged faces the detection frame 241 directly (more directly), as shown on the right of FIG. 18.
  • the second imaging unit By moving the second imaging unit in this way, the second imaging unit is placed in a position and orientation that is more appropriate for performing the second imaging.
  • the height of the portion 242 to be imaged is different from the detection frame 241.
  • the user changes the distance between the second imaging unit and the 3D object, etc., to make the height of the portion 242 to be imaged match (or approximate) the height of the detection frame 241, as shown on the right in FIG. 19.
  • the second imaging unit is placed in a position and orientation that is more appropriate for performing the second imaging.
  • an arrow indicating a recommended moving direction of the second imaging unit may be displayed as a guidance display.
  • a display image 250 displaying a guidance display is displayed on the monitor, and an arrow 251 is displayed as a guidance display in the display image 250.
  • the arrow 251 is an arrow pointing toward the depth side (forward) in the figure, and guides the user to move the second imaging unit forward (closer to the 3D object (subject)).
  • an arrow 252 is displayed as a guidance display in the display image 250 displayed on the monitor.
  • the arrow 252 is an arrow pointing toward the front side (rear) in the figure, and guides the user to move the second imaging unit backward (away from the 3D object (subject)). The user can move the second imaging unit according to these arrows to bring the second imaging unit closer to the recommended imaging position and orientation.
  • an indicator may be displayed that indicates the positional relationship in the depth direction between the current position of the second imaging unit and the recommended imaging position and orientation.
  • a display image 260 that displays a guide display is displayed on the monitor, and an indicator 261 is displayed as a guide display in the display image 260.
  • the indicator 261 indicates the positional relationship in the depth direction between the current position of the second imaging unit and the recommended imaging position and orientation.
  • the indicator 261 indicates that the position of the recommended imaging position and orientation is shifted (forward) from the current position of the second imaging unit, and provides guidance to move the second imaging unit forward (closer to the 3D object (subject)).
  • the indicator 261 indicates that the current position of the second imaging unit and the position of the recommended imaging position and orientation are approximately the same (approximate). In other words, in this case, the indicator 261 provides guidance that there is no need to move the second imaging unit. By moving the second imaging unit according to this indicator 261, the user can bring the second imaging unit closer to the recommended imaging position and orientation.
  • the indicator 261 may have any design and is not limited to the example in FIG. 21.
  • it may have a design as shown in FIG. 22.
  • the display changes as shown in the upper part of the figure depending on the positional relationship in the depth direction between the current position of the second imaging unit and the recommended imaging position and orientation.
  • the distance and the facing degree (relationship in orientation) between the portion of the first 3D data (3D object) to be imaged and the second imaging unit may be displayed as guidance information.
  • a display image 270 that displays a guidance display is displayed on the monitor, and the scored first 3D data 271 is displayed in the display image 270.
  • a line (or a line equivalent thereto) 272 that connects the optical axis of the second imaging unit (the center of the pixel area of the second imaging unit) and the center of the portion of the first 3D data (3D object) 271 to be imaged is displayed in the display image 270 as a guidance display.
  • an arrow 273 indicating the direction of the subject surface in the central area of the portion of the first 3D data (3D object) 271 to be imaged is displayed in the display image 270 as a guidance display.
  • the line 272 and the arrow 273 indicate the positional relationship between the current position of the second imaging unit and the recommended imaging position and orientation, as well as the distance and degree of facing (orientation) between the part of the first 3D data (3D object) to be imaged and the second imaging unit.
  • this difference indicates that the surface (its normal direction) of the part to be imaged of the first 3D data (3D object) is misaligned (not directly facing) with respect to the imaging surface (the orientation of the second imaging unit).
  • the user can more easily bring the second imaging unit closer to the recommended imaging position and orientation.
  • the orientation information of the second imaging unit (first imaging unit) is derived by SLAM or the like, the distance between the second imaging unit and the subject can be easily derived. Therefore, the display example described above can be updated in real time (instantaneously).
  • the first 3D data generation process 101 (first imaging and first 3D modeling process), the scoring process 102, and the second 3D modeling imaging guide output process 105 in Fig. 4 may be executed in parallel with each other.
  • the first 3D modeling process can sequentially generate 3D data of the part of the 3D object where the first imaging was performed.
  • the first 3D data generation process 101 and the scoring process 102 can be executed in parallel.
  • the second 3D modeling imaging guide output process 105 each time a scoring result is obtained by the scoring process 102 (before the scoring result for the entire 3D object is obtained), guidance information for the second imaging may be generated and output based on the obtained scoring result (the scoring result for the first 3D data corresponding to a part of the 3D object).
  • the second 3D modeling imaging guide output process 105 can be started before the scoring process 102 ends (before the scoring result for the entire 3D object is obtained).
  • the scoring process 102 and the second 3D modeling imaging guide output process 105 can be executed in parallel.
  • the first 3D data generation process 101, the scoring process 102, and the second 3D modeling imaging guide output process 105 can be executed in parallel with each other.
  • a display image 280 is displayed on the monitor, and the image captured by the second imaging unit is displayed in the display image 280.
  • a 3D object 281 is captured as a subject in the captured image.
  • the first 3D data generation process 101, the scoring process 102, and the second 3D modeling imaging guide output process 105 are executed in parallel with each other, so that guidance information can be displayed in the display image 280 before the first 3D data and its scoring are completed for the entire 3D object 281.
  • the hatched display 282 indicates a portion of the 3D object 281 where the first 3D data has already been generated.
  • the gray display 283 indicates a portion where the second captured image is insufficient as a result of scoring.
  • the imaging guide By executing the first 3D data generation process 101, the scoring process 102, and the second 3D modeling imaging guide output process 105 in parallel with each other, the imaging guide can be displayed while the first imaging is being performed in this way. Therefore, the user can take a second image in parallel (instantaneously) with the first image.
  • ⁇ Camera information> when the second 3D modeling imaging guide output process 105 is executed, as in the case described above in ⁇ 2.
  • Imaging control> camera information regarding the second imaging unit may be generated in the second 3D data generation process 104 (second imaging) and supplied to the scoring process 102. Then, in the scoring process 102, scoring may be performed based on this camera information, and a scoring result may be generated.
  • this camera information may include any information.
  • Example of configuration for executing processing> 4 may be executed by any device.
  • the first 3D modeling process of the first 3D data generation process 101, the scoring process 102, and the second 3D modeling imaging guide output process 105 may be executed in an information processing device.
  • the information processing device may include a first 3D modeling processing unit that generates first three-dimensional shape information expressing the three-dimensional shape of a 3D object based on a first captured image generated by a first imaging of the 3D object, a scoring processing unit that uses the first three-dimensional shape information to evaluate the accuracy of second three-dimensional shape information that can be generated using a second captured image generated by a second imaging performed so far, and generates a scoring result, and a guidance information output control unit that generates guidance information for the second imaging of the 3D object based on the scoring result and controls the output of the guidance information.
  • this information processing device is also referred to as a first information processing device.
  • first three-dimensional shape information expressing the three-dimensional shape of a 3D object is generated based on a first captured image generated by a first capture of the 3D object, the first three-dimensional shape information is used to evaluate the accuracy of second three-dimensional shape information that can be generated using a second captured image generated by a second capture performed so far, a scoring result is generated, and guidance information for a second capture of the 3D object is generated based on the scoring result, and output of the guidance information is controlled.
  • the user can capture the 3D object in a more appropriate position and orientation by performing a second image capture according to the guidance information.
  • the captured image can be used to perform 3D modeling (second 3D modeling process). Therefore, it is possible to generate higher-resolution 3D data while suppressing an increase in the load of 3D modeling. In other words, 3D modeling can be performed more easily.
  • the guidance information output control unit may generate an image showing the scoring result as the guidance information and display the image.
  • the guidance information output control unit may also generate an image showing the scoring result within the angle of view of the second imaging unit based on the position and orientation of the second imaging unit and display the image.
  • the guidance information output control unit may also display the captured image generated by the second imaging unit superimposed on an image showing the scoring result within the angle of view of the second imaging unit.
  • the guidance information output control unit may also display an overhead image showing the scoring result of the entire 3D object.
  • the guidance information output control unit may also generate, as guidance information, an image showing an overlap area where the imaging ranges of the multiple second captured images overlap, and display the image.
  • the guidance information output control unit may also generate, based on the position and orientation of the second imaging unit, an image showing an overlap area between the current angle of view of the second imaging unit and the imaging ranges of the second captured images obtained so far, and display the image.
  • the guidance information output control unit may also display the captured images generated by the second imaging unit superimposed on the image.
  • the guidance information output control unit may also display an image showing an overlap rate that indicates the proportion of the overlap area within the current angle of view of the second imaging unit.
  • the guidance information output control unit may generate an auxiliary imaging image for assisting the second imaging as the guidance information, and display the auxiliary imaging image.
  • the guidance information output control unit may derive a recommended imaging position and orientation, which is a recommended position and orientation for the second imaging, based on the scoring result, and display a recommended imaging position and orientation guide indicating the recommended imaging position and orientation as the guidance information.
  • the guidance information output control unit may display, as the recommended imaging position and orientation guide, an image indicating that the current position and orientation of the second imaging unit are the recommended imaging position and orientation when the position and orientation of the second imaging unit are the same as the recommended imaging position and orientation.
  • the guidance information output control unit may display, as the recommended imaging position and orientation guide, an image indicating the relative position and relative orientation of the recommended imaging position and orientation with respect to the second imaging unit.
  • the guidance information output control unit may display an imaging image generated by the imaging unit performing the second imaging, superimposed on the recommended imaging position and orientation guide.
  • the first three-dimensional shape information may have less information volume and lower resolution than the second three-dimensional shape information.
  • the first 3D modeling processing unit of the first information processing device may also include an orientation information generation unit that generates orientation information indicating the position and orientation of the first imaging unit based on the first captured image and the acceleration and angular velocity of the first imaging unit, and a three-dimensional shape generation unit that generates the first three-dimensional shape information based on the orientation information and the depth of the 3D object.
  • the first three-dimensional shape information may include a mesh that indicates the three-dimensional shape of the 3D object by vertices and connections, and a texture that is applied to the surface of the mesh.
  • the scoring processing unit may generate a scoring result for each local area of the first three-dimensional shape information based on the first three-dimensional shape information and the position and orientation of the second image capture performed so far.
  • the first three-dimensional shape information may include a mesh that indicates the three-dimensional shape of the 3D object by vertices and connections, and a texture that is applied to the surface of the mesh, and the scoring processing unit may generate a scoring result for each polygon of the mesh.
  • the second imaging of the second 3D data generation process 104 described above may be performed.
  • the configuration of the first information processing device is the same as that described above in ⁇ 2. Imaging control>.
  • the second 3D modeling process of the second 3D data generation process 104 described above may be performed.
  • the configuration of the first information processing device is the same as that described above in ⁇ 2. Imaging control>.
  • the scoring processing unit of the first information processing device may generate a scoring result based on the position and posture of the second information processing device corresponding to the timing of the second imaging indicated by the imaging timing information indicating the timing of the second imaging.
  • the guidance information output control unit may obtain posture information of the second imaging unit at the imaging timing based on the imaging timing information, and the scoring processing unit may calculate a score based on the posture information. In this way, the posture information of the manual imaging is reflected in the scoring result.
  • the configuration of the first information processing device in this case is also the same as that described above in ⁇ 2. Imaging control>.
  • the imaging timing information generated in the second imaging unit or the imaging timing information acquired by the communication unit is supplied to the guidance information output control unit. In this way, it is possible to control so that the second imaging is performed at a more appropriate position and posture based on the imaging timing information.
  • camera information regarding the second imaging unit may be reflected in the scoring process 102.
  • the scoring processing unit of the first information processing device may generate a scoring result based on the camera information.
  • the configuration of the first information processing device in this case is also similar to that described above in ⁇ 2. Imaging control>. In this way, it is possible to control so that the second imaging is performed at a more appropriate position and posture based on the camera information.
  • the second information processing device may perform the second imaging of the second 3D data generation process 104 described above.
  • the configuration of the second information processing device in this case is also similar to the case described above in ⁇ 2. Imaging control>.
  • the second information processing device may further perform the second 3D modeling process described above.
  • the configuration of the second information processing device in this case is also similar to the case described above in ⁇ 2. Imaging control>.
  • imaging timing information indicating the timing of manual imaging may be generated in the second information processing device and supplied to the first information processing device.
  • the configuration of the second information processing device is the same as that described above in ⁇ 2. Imaging control>.
  • camera information regarding the second imaging unit may be reflected in the scoring process 102.
  • the configuration of the second information processing device is the same as that described above in ⁇ 2. Imaging control>.
  • Combination> ⁇ Combination of imaging control and guidance information output> 4, both the imaging control process for second 3D modeling 103 and the imaging guide output process for second 3D modeling 105 may be executed. By performing both imaging control and output of guide information, the user can more easily perform the second imaging in an appropriate position and posture.
  • Imaging control> may further include a guidance information output control unit that generates guidance information for the second imaging of an image of a 3D object based on the scoring result.
  • the guidance information output control unit performs the same processing as described above in ⁇ 3. Imaging guidance output>.
  • Imaging guide output> may further include an imaging control unit that controls the second imaging for imaging the 3D object based on the scoring result.
  • the imaging control unit performs the same processing as described above in ⁇ 2. Imaging control>.
  • Fig. 26 is a block diagram showing an example of the configuration of an imaging device, which is one aspect of an information processing device to which the present technology is applied.
  • the imaging device 300 shown in Fig. 26 is a device that captures a 3D object and performs 3D modeling using the captured image.
  • Fig. 26 shows main processing units, data flows, etc., and is not limited to all of the units shown in Fig. 26. That is, the imaging device 300 may have devices and processing units that are not shown as blocks in Fig. 26.
  • the imaging device 300 has a first 3D data generation unit 301, a scoring processing unit 302, an imaging control unit 303, a second 3D data generation unit 304, an encoding unit 305, a memory unit 306, a communication unit 307, an imaging guide output control unit 308, and an output unit 309.
  • the first 3D data generation unit 301 also has a depth sensor 311, an imaging unit 312, an IMU (Inertial Measurement Unit) 313, and a real-time 3D modeling processing unit 314.
  • the real-time 3D modeling processing unit 314 also has a SLAM (Simultaneous Localization and Mapping) 321, a TSDF (Truncated Signed Distance Function) update unit 322, and a mesh generation unit 323.
  • SLAM Simultaneous Localization and Mapping
  • TSDF Trusted Distance Function
  • the second 3D data generation unit 304 also has an operation unit 331, an imaging unit 332, an image processing unit 333, and a photogrammetry processing unit 334.
  • the photogrammetry processing unit 334 also has an SfM (Structure From Motion) 341 and an MVS (Multi View Stereo) 342.
  • the first 3D data generation unit 301 performs processing related to the generation of the first 3D data.
  • the first 3D data generation unit 301 executes the first 3D data generation process 101 in FIG. 4.
  • the depth sensor 311 has a Lidar sensor (dToF module) or the like, detects the depth to the subject, and supplies it to the TSDF update unit 322.
  • the imaging unit 312 has an image sensor, captures the subject, and generates a captured image.
  • the imaging unit 312 performs the first imaging of the first 3D data generation process 101 in FIG. 4 (i.e., imaging for the first 3D modeling (real-time 3D modeling)).
  • the imaging unit 312 supplies the generated captured image to the SLAM 321.
  • the IMU 313 detects inertial information (acceleration and angular velocity) of the imaging device, and supplies it to the SLAM 321.
  • the real-time 3D modeling processing unit 314 performs processing related to real-time 3D modeling. For example, the real-time 3D modeling processing unit 314 executes the first 3D modeling processing (real-time 3D modeling) of the first 3D data generation processing 101 in FIG. 4. In other words, the real-time 3D modeling processing unit 314 generates first three-dimensional shape information that represents the three-dimensional shape of a 3D object based on a first captured image generated by a first capture of the 3D object.
  • the SLAM 321 performs self-position estimation based on the supplied first captured image and inertial information, and generates orientation information indicating the position and orientation of the imaging device 300.
  • the SLAM 321 supplies the generated orientation information to the TSDF update unit 322, the imaging control unit 303, and the imaging guide output control unit 308.
  • the TSDF update unit 322 updates the TSDF based on the orientation information and depth, and supplies the updated TSDF to the mesh generation unit 323.
  • the mesh generation unit 323 generates a mesh (and texture) using the updated TSDF.
  • the mesh generation unit 323 supplies the mesh and texture to the scoring processing unit 302 as first 3D data (first three-dimensional shape information).
  • the scoring processing unit 302 performs a process related to scoring. For example, the scoring processing unit 302 performs the scoring process 102 in FIG. 4 based on the first 3D data provided and the imaging viewpoint information (information indicating the position and orientation at which the second imaging was performed) provided from the imaging control unit 303. That is, the scoring processing unit 302 uses the first three-dimensional shape information to evaluate the accuracy of the second three-dimensional shape information that can be generated using the second captured image generated by the second imaging performed so far, and generates a scoring result. For example, the scoring processing unit 302 may generate a scoring result for each local part of the first three-dimensional shape information based on the first three-dimensional shape information and the position and orientation of the second imaging performed so far. For example, the scoring processing unit 302 may generate a scoring result for each polygon of the mesh. The scoring processing unit 302 supplies the scoring result to the imaging control unit 303 and the imaging guide output control unit 308.
  • the scoring processing unit 302 may acquire camera information related to the imaging unit 332 and generate a scoring result based on the camera information.
  • the scoring processing unit 302 may also generate a scoring result based on the position and orientation of the imaging device 300 corresponding to the timing of the second imaging that is not based on imaging control information by the imaging unit 332.
  • the imaging control unit 303 performs processing related to the control of the second imaging.
  • the imaging control unit 303 executes the second 3D modeling imaging control processing 103 in FIG. 4. That is, the imaging control unit 303 generates imaging control information for controlling the second imaging based on the supplied scoring result and posture information, and supplies it to the imaging unit 332.
  • This imaging control information is, for example, control information for causing the imaging unit 332 to perform the second imaging (to generate a second captured image). That is, the imaging control unit 303 determines an appropriate position and posture for the second imaging based on the scoring result, and causes the imaging unit 332 to perform the second imaging at that position and posture.
  • the imaging control unit 303 also supplies imaging viewpoint information indicating the position and posture of the second imaging that has been performed to the scoring processing unit 302.
  • the imaging control unit 303 may also acquire imaging timing information indicating the timing of a second imaging operation not based on imaging control information by the imaging unit 332, and supply the posture information of the imaging device 300 corresponding to that imaging timing to the scoring processing unit 302 as imaging viewpoint information.
  • the second 3D data generation unit 304 performs processing related to the generation of second 3D data.
  • the second 3D data generation unit 304 executes the second 3D data generation process 104 in FIG. 4.
  • the operation unit 331 accepts instructions to the imaging unit 332 from a user or the like, and supplies the instructions to the imaging unit 332.
  • the imaging unit 332 has an image sensor and captures an image of a subject to generate a captured image.
  • the imaging unit 332 performs the second imaging of the second 3D data generation process 104 in FIG. 4 (i.e., imaging for the second 3D modeling (photogrammetry)).
  • the imaging unit 332 supplies the generated captured image to the image processing unit 333.
  • the imaging unit 332 may, for example, perform a second imaging operation under the control of the imaging control unit 303 (based on imaging control information supplied from the imaging control unit 303) and generate a second captured image.
  • the imaging unit 332 may also perform a second imaging operation under instructions supplied from the operation unit 331 and generate a second captured image.
  • the imaging unit 332 may also supply camera information (internal parameters, external parameters, angle of view information, etc. of the imaging unit 332) to the scoring processing unit 302.
  • the imaging unit 332 may also supply imaging timing information indicating the timing of the second imaging operation not based on imaging control information to the imaging control unit 303 and the imaging guidance output control unit 308.
  • the image processing unit 333 performs a predetermined image processing on the captured image (second captured image) generated by the imaging unit 332.
  • the content of this image processing is arbitrary.
  • the image processing unit 333 supplies the captured image to the SfM 341.
  • the image processing unit 333 may also supply the captured image to the encoding unit 305 and the imaging guidance output control unit 308.
  • the photogrammetry processing unit 334 performs photogrammetry processing on the second captured image. For example, the photogrammetry processing unit 334 executes the second 3D modeling process of the second 3D data generation process 104 in FIG. 4. In other words, the photogrammetry processing unit 334 generates second three-dimensional shape information based on the second captured image generated by the imaging unit 332.
  • SfM341 searches for corresponding points between the second captured images, derives the position and orientation of the camera using epipolar constraints, identifies the position of each corresponding point in three-dimensional space using triangulation based on the camera position and orientation, optimizes the entire identified three-dimensional point cloud using bundle adjustment, and supplies it to MVS342.
  • MVS342 uses the three-dimensional point cloud to further perform a dense search for corresponding points, add three-dimensional points, and further perform meshing and texturing as post-processing to generate second 3D data.
  • MVS342 supplies the generated second 3D data to the encoding unit 305.
  • the encoding unit 305 encodes the supplied second 3D data and supplies the encoded data to the storage unit 306 and the communication unit 307.
  • the encoding unit 305 may also encode the supplied second captured image and supply the encoded data to the storage unit 306 and the communication unit 307.
  • the storage unit 306 stores the supplied encoded data.
  • the communication unit 307 transmits the supplied encoded data to another information processing device (e.g., a server, etc.).
  • the imaging guidance output control unit 308 performs processing related to guidance for the second imaging. For example, the imaging guidance output control unit 308 executes the imaging guidance output processing 105 for the second 3D modeling in FIG. 4. That is, the imaging guidance output control unit 308 generates guidance information for the second imaging and controls the output of the guidance information. For example, the imaging guidance output control unit 308 generates the above-mentioned guidance information based on the supplied scoring result and the posture information of the imaging device 300. The imaging guidance output control unit 308 may also generate guidance information based on the supplied imaging timing information. The imaging guidance output control unit 308 supplies the generated guidance information to the output unit 309, and causes it to be output as, for example, an image or sound. The imaging guidance output control unit 308 may also superimpose the supplied imaging image on the guidance information (image) and display it.
  • the output unit 309 outputs the guidance information as images, audio, etc. according to the control of the imaging guidance output control unit 308.
  • the imaging device 300 can capture a 3D object in a more appropriate position and orientation, and perform 3D modeling (second 3D modeling processing) using the captured image. Therefore, the imaging device 300 can generate more accurate 3D data while suppressing an increase in the load of 3D modeling. Furthermore, the imaging device 300 can output guidance information so that the user can perform the second imaging in a more appropriate position and orientation. In other words, the imaging device 300 can perform 3D modeling (second 3D modeling processing) using the captured image. Therefore, the imaging device 300 can generate more accurate 3D data while suppressing an increase in the load of 3D modeling. In other words, the user can perform 3D modeling more easily.
  • step S301 the depth sensor 311, the imaging unit 312, and the IMU 313 acquire depth, captured images, and inertial information.
  • step S302 the real-time 3D modeling processing unit 314 executes real-time 3D modeling processing and generates first 3D data.
  • step S303 the scoring processing unit 302 scores the first 3D data based on the second imaging performed so far.
  • step S304 the imaging guidance output control unit 308 generates imaging guidance (guidance information) for the second imaging based on the scoring result, posture information, etc.
  • the output unit 309 outputs the imaging guidance (guidance information).
  • step S305 the imaging control unit 303 controls the imaging for photogrammetry (second imaging) based on the scoring results, posture information, etc.
  • step S306 the imaging unit 332 captures an image according to the control (performs a second image capture).
  • step S307 the imaging control unit 303 and the imaging guidance output control unit 308 acquire camera information from the imaging unit 332.
  • the scoring processing unit 302 acquires imaging timing information from the imaging unit 332.
  • step S308 the imaging control unit 303 determines whether or not to end imaging for photogrammetry (second imaging). If it is determined that imaging for photogrammetry should not be ended, the process returns to step S303. If it is determined in step S308 that imaging for photogrammetry should be ended, the process proceeds to step S309.
  • step S309 the photogrammetry processing unit 334 performs photogrammetry processing and generates second 3D data.
  • step S310 the encoding unit 305 encodes the second 3D data.
  • step S311 the storage unit 306 stores the encoded data.
  • the communication unit 307 transmits the encoded data to another device (e.g., a server, etc.).
  • step S311 When the processing of step S311 is completed, the 3D modeling process is completed.
  • step S331 SLAM321 derives posture information indicating the three-dimensional posture of the imaging device 300 based on the captured image and inertial information.
  • step S332 the TSDF update unit 322 updates the TSDF based on the captured image, posture information, and depth.
  • step S333 the mesh generation unit 323 generates the first 3D data based on the updated TSDF.
  • step S333 When the processing of step S333 is completed, the real-time 3D modeling process ends and the process returns to FIG. 27.
  • step S351 SfM341 detects corresponding points between captured images.
  • step S352 SfM341 derives the three-dimensional pose of the camera using epipolar constraints.
  • step S353 SfM341 derives three-dimensional points using triangulation.
  • step S354 SfM341 optimizes the whole using bundle adjustment.
  • step S355 MVS342 derives three-dimensional points by dense corresponding point search and generates second 3D data.
  • step S355 When the processing of step S355 is completed, the photogrammetry processing ends and the process returns to FIG. 27.
  • the imaging device 300 can capture a 3D object in a more appropriate position and orientation, and perform 3D modeling (second 3D modeling process) using the captured image. Therefore, the imaging device 300 can generate more accurate 3D data while suppressing an increase in the load of 3D modeling. Furthermore, the imaging device 300 can output guidance information so that the user can perform the second imaging in a more appropriate position and orientation. In other words, the imaging device 300 can perform 3D modeling (second 3D modeling process) using the captured image. Therefore, the imaging device 300 can generate more accurate 3D data while suppressing an increase in the load of 3D modeling. In other words, the user can perform 3D modeling more easily.
  • Second embodiment ⁇ Information Processing System 1>
  • the present technology is not limited to the above-mentioned examples, and may be applied to any configuration.
  • the technology may be applied to an information processing system that performs 3D modeling.
  • the information processing device may include a first 3D modeling processing unit that generates first three-dimensional shape information expressing the three-dimensional shape of a 3D object based on a first captured image generated by a first imaging of the 3D object, a scoring processing unit that uses the first three-dimensional shape information to evaluate the accuracy of second three-dimensional shape information that can be generated using a second captured image generated by a second imaging performed so far, and generates a scoring result, an imaging control unit that generates imaging control information that controls second imaging of the 3D object based on the position and orientation of the imaging device and the scoring result, and a first communication unit that supplies the imaging control information to the imaging device.
  • the imaging device may include a second communication unit that acquires the imaging control information supplied from the information processing device, and an imaging unit that captures the 3D object based on the imaging control information and generates a second captured image.
  • FIG. 30 is a diagram showing an example of the configuration of one aspect of an information processing system to which the present technology is applied.
  • the information processing system 400 shown in FIG. 30 is a system that captures an image of a 3D object and performs 3D modeling using the captured image.
  • the information processing system 400 has an imaging and communication device 401, an imaging device 402, and a server 403.
  • the imaging and communication device 401 and the server 403 are communicatively connected via a network 404.
  • the network 404 is a communication path formed by any communication medium, such as the Internet, a LAN (Local Area Network), a wireless LAN, etc.
  • the imaging and communication device 401 is an information processing device having an imaging function and a communication function capable of communicating with any device via a network 404, such as a smartphone.
  • the imaging device 402 is an information processing device having an imaging function, such as a digital camera.
  • the imaging device 402 can communicate only with the imaging and communication device 401.
  • the imaging and communication device 401 and the imaging device 402 are fixedly connected to each other and are used by a user as a terminal device 410.
  • the server 403 acquires a second captured image generated in the terminal device 410 (imaging device 402), performs second 3D modeling (photogrammetry processing) using the second captured image, generates second 3D data, and stores (manages) it.
  • FIG. 31 is a block diagram showing an example of the main configuration of the imaging and communication device 401.
  • FIG. 31 shows the main processing units, data flows, etc., and is not limited to everything shown in FIG. 31.
  • the imaging and communication device 401 may have devices and processing units that are not shown as blocks in FIG. 31.
  • the imaging and communication device 401 has a communication unit 421 instead of the second 3D data generation unit 304 of the imaging device 300 (FIG. 26).
  • the rest of the configuration is the same as that of the imaging device 300.
  • the communication unit 421 is communicably connected to the imaging device 402, and communicates with the imaging device 402 to exchange information.
  • the communication unit 421 may supply imaging control information supplied from the imaging control unit 303 to the imaging device 402.
  • the communication unit 421 may also acquire a second captured image generated by the imaging device 402 and supply it to the encoding unit 305 and the imaging guide output control unit 308.
  • the communication unit 421 may also acquire camera information supplied from the imaging device 402 and supply it to the scoring processing unit 302. This camera information may include internal parameters, external parameters, and angle of view information of the imaging device 402 (imaging unit 332).
  • the communication unit 421 may also acquire imaging timing information supplied from the imaging device 402 and supply it to the imaging control unit 303 and the imaging guide output control unit 308. This imaging timing information indicates the timing of imaging performed by the imaging device 402 (imaging unit 332) without based on imaging control information.
  • the communication unit 307 is connected to the server 403 via the network 404 so as to be able to communicate with the server 403, and communicates with the server 403 to send and receive information.
  • the encoding unit 305 encodes the second captured image supplied from the communication unit 421, and supplies the encoded data to the storage unit 306 and the communication unit 307.
  • the storage unit 306 stores the encoded data of the second captured image.
  • the communication unit 307 supplies the encoded data of the second captured image to the server 403 via the network 404.
  • FIG. 32 is a block diagram showing an example of the main configuration of the imaging device 402. Note that FIG. 32 shows the main processing units, data flows, etc., and is not limited to everything shown in FIG. 32. In other words, the imaging device 402 may have devices and processing units that are not shown as blocks in FIG. 32. Also, there may be data flows and processes that are not shown as arrows, etc. in FIG. 32.
  • the imaging device 402 has an operation unit 331, an imaging unit 332, an image processing unit 333, a communication unit 431, an encoding unit 432, and a storage unit 433.
  • the operation unit 331, the imaging unit 332, and the image processing unit 333 perform the same processes as those of the imaging device 300 in FIG. 26.
  • the communication unit 431 is communicably connected to the imaging and communication device 401, and communicates with the imaging and communication device 401 to exchange information.
  • the communication unit 431 may acquire imaging control information supplied from the imaging and communication device 401 and supply it to the imaging unit 332.
  • the communication unit 431 may also acquire camera information supplied from the imaging unit 332 and supply it to the imaging and communication device 401. This camera information may include internal parameters, external parameters, and angle of view information of the imaging unit 332.
  • the communication unit 431 may also acquire imaging timing information supplied from the imaging unit 332 and supply it to the imaging and communication device 401. This imaging timing information indicates the timing of imaging performed by the imaging unit 332 without being based on the imaging control information.
  • the communication unit 431 may also acquire a second captured image supplied from the image processing unit 333 and supply it to the imaging and communication device 401.
  • the encoding unit 432 encodes the second captured image supplied from the image processing unit 333, and supplies the encoded data to the storage unit 433.
  • the storage unit 433 stores the encoded data.
  • FIG. 33 is a block diagram showing an example of the main configuration of server 403. Note that FIG. 33 shows the main processing units, data flows, etc., and is not limited to everything shown in FIG. 33. In other words, server 403 may have devices and processing units that are not shown as blocks in FIG. 33. Also, there may be data flows and processes that are not shown as arrows, etc. in FIG. 33.
  • the server 403 has a communication unit 441, a decoding unit 442, a photogrammetry processing unit 334, an encoding unit 444, and a storage unit 445.
  • the photogrammetry processing unit 334 has the same configuration as in the case of the imaging device 300 in FIG. 26, and performs the same processing.
  • the communication unit 441 is communicatively connected to the imaging and communication device 401 via the network 404, and communicates with other devices such as the imaging and communication device 401 to send and receive information. For example, the communication unit 441 acquires coded data of the second captured image supplied from the imaging and communication device 401, and supplies the data to the decoding unit 442. The communication unit 441 may also supply coded data of the second 3D data supplied from the encoding unit 444 to other devices (e.g., the imaging and communication device 401) via the network 404.
  • the decoding unit 442 decodes the encoded data of the second captured image supplied from the communication unit 441, and generates (reconstructs) the second captured image.
  • the decoding unit 442 supplies the second captured image to the photogrammetry processing unit 334 (SfM341).
  • the photogrammetry processing unit 334 performs second 3D modeling (photogrammetry processing) using the second captured image, and generates second 3D data.
  • the photogrammetry processing unit 334 (MVS342) supplies the generated second 3D data to the encoding unit 444.
  • the encoding unit 444 encodes the supplied second 3D data and supplies the encoded data to the storage unit 445.
  • the encoding unit 444 may also supply the encoded data of the second 3D data to the communication unit 441.
  • the storage unit 445 stores the encoded data of the supplied second 3D data.
  • the information processing system 400 can capture an image of a 3D object in a more appropriate position and orientation, and perform 3D modeling (second 3D modeling processing) using the captured image. Therefore, the information processing system 400 can generate more accurate 3D data while suppressing an increase in the load of 3D modeling. Furthermore, the information processing system 400 can output guidance information so that the user can perform the second imaging in a more appropriate position and orientation. In other words, the information processing system 400 can perform 3D modeling (second 3D modeling processing) using the captured image. Therefore, the information processing system 400 can generate more accurate 3D data while suppressing an increase in the load of 3D modeling. In other words, the user can perform 3D modeling more easily.
  • step S401 of FIG. 34 the depth sensor 311, imaging unit 312, and IMU 313 of the imaging and communication device 401 acquire depth, captured images, and inertial information.
  • step S402 the real-time 3D modeling processing unit 314 of the imaging and communication device 401 executes real-time 3D modeling processing to generate first 3D data.
  • This real-time 3D modeling processing is executed in the same manner as in the example of FIG. 28.
  • step S403 the scoring processing unit 302 of the imaging and communication device 401 scores the first 3D data based on the second imaging performed so far.
  • step S404 the imaging guidance output control unit 308 of the imaging and communication device 401 generates imaging guidance (guidance information) for the second imaging based on the scoring result, posture information, etc.
  • the output unit 309 outputs the imaging guidance (guidance information).
  • step S405 the imaging control unit 303 of the imaging and communication device 401 generates imaging control information for controlling imaging for photogrammetry (second imaging) based on the scoring result, posture information, etc.
  • the communication unit 421 supplies the imaging control information to the imaging device 402.
  • the communication unit 431 of the imaging device 402 acquires the imaging control information in step S411.
  • step S412 the imaging unit 332 of the imaging device 402 captures an image (performs a second image capture) according to the control, and generates a second captured image.
  • the image processing unit 333 performs a predetermined image processing on the second captured image.
  • step S413 the communication unit 431 of the imaging device 402 supplies the second captured image to the imaging and communication device 401.
  • the communication unit 421 of the imaging and communication device 401 acquires the second captured image in step S406.
  • step S414 the communication unit 431 of the imaging device 402 supplies the camera information and imaging timing information of the imaging unit 332 to the imaging and communication device 401.
  • the communication unit 421 of the imaging and communication device 401 acquires the camera information and imaging timing information in step S407.
  • step S441 of FIG. 35 the encoding unit 432 of the imaging device 402 encodes the second captured image.
  • the storage unit 433 stores the encoded data of the second captured image.
  • step S431 the encoding unit 305 of the imaging and communication device 401 encodes the second captured image.
  • the communication unit 307 supplies the encoded data of the second captured image to the server 403.
  • the communication unit 441 of the server 403 acquires the encoded data of the second captured image in step S451.
  • the decoding unit 442 decodes the encoded data to generate (restore) the second captured image.
  • step S452 the photogrammetry processing unit 334 of the server 403 executes photogrammetry processing to generate second 3D data. This photogrammetry processing is executed in the same manner as in the example of FIG. 29.
  • step S453 the encoding unit 444 of the server 403 encodes the second 3D data.
  • step S454 the storage unit 445 of the server 403 stores the encoded data.
  • the communication unit 441 transmits the encoded data to another device (e.g., the imaging and communication device 401, etc.).
  • step S432 the imaging control unit 303 of the imaging and communication device 401 determines whether or not to end imaging for photogrammetry (second imaging). If it is determined that imaging for photogrammetry should not be ended, the process returns to step S403 in FIG. 34. In addition, if it is determined in step S432 in FIG. 35 that imaging for photogrammetry should be ended, the 3D modeling process ends.
  • the information processing system 400 can capture an image of a 3D object in a more appropriate position and orientation, and perform 3D modeling (second 3D modeling process) using the captured image. Therefore, the information processing system 400 can generate more accurate 3D data while suppressing an increase in the load of 3D modeling. Furthermore, the information processing system 400 can output guidance information so that the user can perform the second imaging in a more appropriate position and orientation. In other words, the information processing system 400 can perform 3D modeling (second 3D modeling process) using the captured image. Therefore, the information processing system 400 can generate more accurate 3D data while suppressing an increase in the load of 3D modeling. In other words, the user can perform 3D modeling more easily.
  • the scoring process may be performed by the server 403.
  • FIG. 36 shows the main processing units, data flows, etc., and does not necessarily show everything.
  • the imaging and communication device 401 may have devices and processing units that are not shown as blocks in FIG. 36.
  • the imaging and communication device 401 in this case has the scoring processing unit 302 omitted from the configuration in FIG. 31.
  • the communication unit 307 supplies the imaging viewpoint information supplied from the imaging control unit 303 to the server 403.
  • the real-time 3D modeling processing unit 314 (mesh generation unit 323) supplies the generated first 3D data to the encoding unit 305.
  • the encoding unit 305 encodes the first 3D data and supplies the encoded data to the communication unit 307.
  • the communication unit 307 supplies the encoded data of the first 3D data supplied from the encoding unit 305 to the server 403.
  • the communication unit 307 also acquires the scoring results derived by the server 403 (the scoring processing unit 302) and supplies them to the imaging control unit 303 and the imaging guidance output control unit 308.
  • the communication unit 307 supplies the encoded data of the second captured image supplied from the encoding unit 305 to the server 403, as in the case of FIG. 32.
  • the communication unit 421 also acquires camera information (of the imaging unit 332) supplied from the imaging device 402 and supplies it to the encoding unit 305.
  • the encoding unit 305 encodes the camera information and supplies it to the communication unit 307.
  • the communication unit 307 supplies the encoded data of the camera information to the server 403.
  • FIG. 37 is a block diagram showing an example of the main configuration of server 403 in this case. Note that FIG. 37 shows the main processing units, data flows, etc., and is not limited to everything shown in FIG. 37. In other words, server 403 may have devices and processing units that are not shown as blocks in FIG. 37. Also, there may be data flows and processes that are not shown as arrows, etc. in FIG. 37.
  • the server 403 has a scoring processing unit 302 in addition to the configuration in FIG. 33.
  • the communication unit 441 acquires the encoded data of the first 3D data supplied from the imaging and communication device 401, and supplies it to the decoding unit 442.
  • the decoding unit 442 decodes the encoded data and generates (reconstructs) the first 3D data.
  • the decoding unit 442 supplies the first 3D data to the scoring processing unit 302.
  • the communication unit 441 also acquires imaging viewpoint information supplied from the imaging and communication device 401 and supplies it to the decoding unit 442.
  • the decoding unit 442 supplies the imaging control information to the scoring processing unit 302.
  • the communication unit 441 also acquires the encoded data of the camera information supplied from the imaging and communication device 401, and supplies it to the decoding unit 442.
  • the decoding unit 442 decodes the encoded data and generates (restores) the camera information.
  • the decoding unit 442 supplies the camera information to the scoring processing unit 302.
  • the communication unit 441 acquires the encoded data of the second captured image supplied from the imaging and communication device 401 and supplies it to the decoding unit 442.
  • the decoding unit 442 decodes the encoded data and generates (reconstructs) the second captured image.
  • the decoding unit 442 supplies the second captured image to the photogrammetry processing unit 334.
  • the scoring processing unit 302 also performs the scoring process 102 in FIG. 4 based on the supplied first 3D data and imaging viewpoint information, and derives a scoring result.
  • the scoring processing unit 302 may also perform the scoring process 102 based on camera information.
  • the scoring processing unit 302 supplies the scoring result to the encoding unit 444.
  • the encoding unit 444 supplies the scoring result to the communication unit 441.
  • the communication unit 441 supplies the scoring result to the imaging and communication device 401.
  • the information processing system 400 can also capture an image of a 3D object in a more appropriate position and orientation, and perform 3D modeling (second 3D modeling processing) using the captured image. Therefore, the information processing system 400 can generate more accurate 3D data while suppressing an increase in the load of 3D modeling. Furthermore, the information processing system 400 can output guidance information so that the user can perform the second imaging in a more appropriate position and orientation. In other words, the information processing system 400 can perform 3D modeling (second 3D modeling processing) using the captured image. Therefore, the information processing system 400 can generate more accurate 3D data while suppressing an increase in the load of 3D modeling. In other words, the user can perform 3D modeling more easily.
  • step S501 of FIG. 38 the depth sensor 311, imaging unit 312, and IMU 313 of the imaging and communication device 401 acquire depth, captured image, and inertial information.
  • step S502 the real-time 3D modeling processing unit 314 of the imaging and communication device 401 executes real-time 3D modeling processing to generate first 3D data.
  • This real-time 3D modeling processing is executed in the same manner as in the example of FIG. 28.
  • step S503 the communication unit 307 of the imaging and communication device 401 supplies the generated first 3D data to the server 403.
  • the communication unit 441 of the server 403 acquires the first 3D data in step S521.
  • step S522 the scoring processing unit 302 of the server 403 scores the first 3D data based on the second imaging performed so far.
  • step S523 the communication unit 441 of the server 403 supplies the scoring result to the imaging and communication device 401.
  • the communication unit 307 of the imaging and communication device 401 acquires the scoring result in step S504.
  • step S505 the imaging guidance output control unit 308 of the imaging and communication device 401 generates imaging guidance (guidance information) for the second imaging based on the scoring result, posture information, etc.
  • the output unit 309 outputs the imaging guidance (guidance information).
  • step S506 the imaging control unit 303 of the imaging and communication device 401 generates imaging control information for controlling imaging for photogrammetry (second imaging) based on the scoring result, posture information, etc.
  • the communication unit 421 supplies the imaging control information to the imaging device 402.
  • the communication unit 431 of the imaging device 402 acquires the imaging control information in step S511.
  • step S507 the communication unit 307 of the imaging communication device 401 supplies the imaging viewpoint information to the server 403.
  • step S524 the communication unit 441 of the server 403 acquires the imaging viewpoint information.
  • step S541 in FIG. 39 the imaging unit 332 of the imaging device 402 captures an image (performs a second image capture) in accordance with the imaging control information to generate a second captured image.
  • the image processing unit 333 performs a predetermined image processing on the second captured image.
  • step S542 the communication unit 431 of the imaging device 402 supplies the second captured image to the imaging and communication device 401.
  • the communication unit 421 of the imaging and communication device 401 acquires the second captured image in step S531.
  • step S543 the communication unit 431 of the imaging device 402 supplies the camera information and imaging timing information of the imaging unit 332 to the imaging and communication device 401.
  • the communication unit 421 of the imaging and communication device 401 acquires the camera information and imaging timing information in step S532.
  • step S544 the encoding unit 432 of the imaging device 402 encodes the second captured image.
  • the storage unit 433 stores the encoded data of the second captured image.
  • step S533 the encoding unit 305 of the imaging and communication device 401 encodes the second captured image.
  • the communication unit 307 supplies the encoded data of the second captured image to the server 403.
  • the communication unit 441 of the server 403 acquires the encoded data of the second captured image in step S551.
  • the decoding unit 442 decodes the encoded data to generate (reconstruct) the second captured image.
  • step S552 the photogrammetry processing unit 334 of the server 403 executes photogrammetry processing to generate second 3D data. This photogrammetry processing is executed in the same manner as in the example of FIG. 29.
  • step S553 the encoding unit 444 of the server 403 encodes the second 3D data.
  • step S554 the storage unit 445 of the server 403 stores the encoded data.
  • the communication unit 441 transmits the encoded data to another device (e.g., the imaging and communication device 401, etc.).
  • step S534 the imaging control unit 303 of the imaging and communication device 401 determines whether or not to end imaging for photogrammetry (second imaging). If it is determined that imaging for photogrammetry should not be ended, the process returns to step S522 in FIG. 38. In addition, if it is determined in step S534 in FIG. 39 that imaging for photogrammetry should be ended, the 3D modeling process ends.
  • the information processing system 400 can also capture an image of a 3D object in a more appropriate position and orientation, and perform 3D modeling (second 3D modeling process) using the captured image. Therefore, the information processing system 400 can generate more accurate 3D data while suppressing an increase in the load of 3D modeling. Furthermore, the information processing system 400 can output guidance information so that the user can perform the second imaging in a more appropriate position and orientation. In other words, the information processing system 400 can perform 3D modeling (second 3D modeling process) using the captured image. Therefore, the information processing system 400 can generate more accurate 3D data while suppressing an increase in the load of 3D modeling. In other words, the user can perform 3D modeling more easily.
  • the above-mentioned series of processes can be executed by hardware or software.
  • the programs constituting the software are installed in a computer.
  • the computer includes a computer built into dedicated hardware, and a general-purpose personal computer, etc., capable of executing various functions by installing various programs.
  • FIG. 40 is a block diagram showing an example of the hardware configuration of a computer that executes the above-mentioned series of processes using a program.
  • a CPU Central Processing Unit
  • ROM Read Only Memory
  • RAM Random Access Memory
  • An input/output interface 910 Also connected to the bus 904 is an input/output interface 910.
  • An input unit 911, an output unit 912, a memory unit 913, a communication unit 914, and a drive 915 are connected to the input/output interface 910.
  • the input unit 911 includes, for example, a keyboard, a mouse, a microphone, a touch panel, an input terminal, etc.
  • the output unit 912 includes, for example, a display, a speaker, an output terminal, etc.
  • the storage unit 913 includes, for example, a hard disk, a RAM disk, a non-volatile memory, etc.
  • the communication unit 914 includes, for example, a network interface.
  • the drive 915 drives a removable recording medium 921 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory.
  • the CPU 901 for example, loads a program stored in the storage unit 913 into the RAM 903 via the input/output interface 910 and the bus 904, and executes the program. This performs the series of processes described above.
  • the RAM 903 may store data and the like necessary for the CPU 901 to execute various processes, as appropriate.
  • the program executed by the computer may be recorded on a removable recording medium 921 such as a package medium and applied.
  • the program may be read from the removable recording medium 921 attached to the drive 915 and installed in the storage unit 913 via the input/output interface 910.
  • the program may also be provided via any wired or wireless transmission medium, such as a local area network, the Internet, digital satellite broadcasting, etc.
  • the program may be received by the communication unit 914 and installed in the storage unit 913 via the input/output interface 910.
  • this program may be pre-installed in ROM 902 or memory unit 913, or both.
  • the present technology may be applied to any configuration, for example, to various electronic devices.
  • the present technology can be implemented as part of an apparatus, such as a processor (e.g., a video processor) as a system LSI (Large Scale Integration), a module using multiple processors (e.g., a video module), a unit using multiple modules (e.g., a video unit), or a set in which other functions are added to a unit (e.g., a video set).
  • a processor e.g., a video processor
  • system LSI Large Scale Integration
  • modules using multiple processors e.g., a video module
  • a unit using multiple modules e.g., a video unit
  • a set in which other functions are added to a unit e.g., a video set.
  • the present technology can also be applied to a network system consisting of multiple devices.
  • the present technology may be implemented as cloud computing in which multiple devices share and collaborate on processing via a network.
  • the present technology may be implemented in a cloud service that provides image (video) related services to any terminal, such as a computer, AV (Audio Visual) equipment, portable information processing terminal, IoT (Internet of Things) device, etc.
  • a system refers to a collection of multiple components (devices, modules (parts), etc.), regardless of whether all the components are in the same housing. Therefore, multiple devices housed in separate housings and connected via a network, and a single device in which multiple modules are housed in a single housing, are both systems.
  • the term "associate" means, for example, that one piece of data can be used (linked) when processing the other piece of data. That is, data associated with each other may be combined into one piece of data, or each piece of data may be made into separate data. For example, information associated with a certain piece of data may be transmitted on a transmission path different from that of the data. Also, for example, information associated with a certain piece of data may be recorded on a recording medium different from that of the data (or on a different recording area of the same recording medium). This "association" may be a part of the data, not the entire data. For example, dynamic 3D data and information corresponding to the dynamic 3D data may be associated with each other in any unit, such as multiple frames, one frame, or a part of a frame.
  • the configuration described above as one device (or processing unit) may be divided and configured as multiple devices (or processing units).
  • the configurations described above as multiple devices (or processing units) may be combined and configured as one device (or processing unit).
  • configurations other than those described above may be added to the configuration of each device (or processing unit).
  • part of the configuration of one device (or processing unit) may be included in the configuration of another device (or other processing unit).
  • the above-mentioned program may be executed in any device.
  • the device has the necessary functions (functional blocks, etc.) and is capable of obtaining the necessary information.
  • each step of a single flowchart may be executed by a single device, or may be shared among multiple devices.
  • the multiple processes may be executed by a single device, or may be shared among multiple devices.
  • multiple processes included in a single step may be executed as multiple step processes.
  • processes described as multiple steps may be executed collectively as a single step.
  • the processing of the steps describing a program executed by a computer may be executed chronologically in the order described in this specification, or may be executed in parallel, or individually at the required timing, such as when a call is made. In other words, as long as no contradiction arises, the processing of each step may be executed in an order different from the order described above. Furthermore, the processing of the steps describing this program may be executed in parallel with the processing of other programs, or may be executed in combination with the processing of other programs.
  • the multiple technologies related to the present technology can be implemented independently and individually, so long as no contradictions arise.
  • any multiple of the present technologies can also be implemented in combination.
  • part or all of the present technology described in any embodiment can be implemented in combination with part or all of the present technology described in another embodiment.
  • part or all of any of the present technologies described above can be implemented in combination with other technologies not described above.
  • the present technology can also be configured as follows. (1) a first 3D modeling processing unit that generates, based on a first captured image generated by a first imaging of a 3D object, first three-dimensional shape information that represents a three-dimensional shape of the 3D object; a scoring processing unit that uses the first three-dimensional shape information to evaluate accuracy of second three-dimensional shape information that can be generated using a second captured image generated by a second imaging operation performed so far, and generates a scoring result; and an imaging control unit that controls the second imaging, which captures the 3D object, based on the scoring result.
  • the first 3D modeling processing unit an orientation information generating unit that generates orientation information indicating a position and an orientation of the imaging unit based on the first captured image and an acceleration and an angular velocity of the imaging unit that captures the first image;
  • the information processing device according to (1) or (2), further comprising: a three-dimensional shape generation unit that generates the first three-dimensional shape information based on the orientation information and a depth of the 3D object.
  • the first three-dimensional shape information includes a mesh that indicates the three-dimensional shape of the 3D object by vertices and connections, and a texture that is applied to a surface of the mesh.
  • a depth detection unit that detects the depth; The imaging unit; The information processing device according to (3) or (4), further comprising: an inertial measurement unit that detects the acceleration and the angular velocity.
  • the scoring processing unit generates the scoring result for each local area of the first three-dimensional shape information based on the first three-dimensional shape information and positions and orientations of the second imaging operations performed so far.
  • the first three-dimensional shape information includes a mesh that indicates a three-dimensional shape of the 3D object by vertices and connections, and a texture to be applied to a surface of the mesh; The information processing device according to (6), wherein the scoring processing unit generates the scoring result for each polygon of the mesh.
  • the information processing device controls the second imaging based on a position and orientation of an imaging unit performing the second imaging and the scoring result.
  • the image capturing apparatus further includes a communication unit that communicates with the image capturing unit, The imaging control unit generates imaging control information for controlling the second imaging, The information processing device according to (8) above, wherein the communication unit supplies the imaging control information to the imaging device.
  • the communication unit acquires imaging timing information, which is supplied from the imaging device and indicates a timing of the second imaging not based on the imaging control information, The information processing device according to (9) above, wherein the scoring processing unit generates the scoring result based on a position and orientation of the imaging device corresponding to the timing of the second imaging indicated by the imaging timing information.
  • the communication unit acquires camera information related to the imaging unit, the camera information being provided from the imaging device, The information processing device according to (9) or (10), wherein the scoring processing unit generates the scoring result based on the camera information.
  • a coding unit that codes the second captured image to generate coded data The information processing device according to any one of (9) to (12), wherein the communication unit acquires the second captured image supplied from the imaging device, and supplies encoded data of the second captured image generated by the encoding unit to another information processing device.
  • the second 3D modeling processing unit a corresponding point position deriving unit that derives three-dimensional positions of corresponding points between the plurality of second captured images; and a three-dimensional point adding unit that adds a three-dimensional point based on the three-dimensional position of the corresponding point.
  • the second three-dimensional shape information includes a mesh that indicates the three-dimensional shape of the 3D object by vertices and connections, and a texture that is applied to a surface of the mesh.
  • the information processing device according to any one of (15) to (17), further comprising an encoding unit that encodes the second three-dimensional shape information.
  • the information processing device according to any one of (1) to (18), further comprising a guidance information output control unit configured to generate guidance information for the second imaging of the 3D object based on a result of the scoring.
  • a guidance information output control unit configured to generate guidance information for the second imaging of the 3D object based on a result of the scoring.
  • An imaging unit that captures an image of a 3D object;
  • a communication unit that communicates with other information processing devices, the communication unit supplies camera information related to the imaging unit to the other information processing device, and acquires imaging control information generated by the other information processing device based on the camera information;
  • the imaging unit images the 3D object based on the imaging control information, and generates an imaged image for generating three-dimensional shape information expressing a three-dimensional shape of the 3D object.
  • the information processing device includes internal parameters and external parameters of the imaging unit, and information on an angle of view of the captured image.
  • the imaging unit captures the 3D object without using the imaging control information
  • An encoding unit that encodes the captured image and generates encoded data;
  • (26) Supplying camera information related to an imaging unit that captures an image of a 3D object to another information processing device, and acquiring imaging control information generated by the other information processing device based on the camera information; an information processing method for capturing an image of the 3D object based on the imaging control information, and generating a captured image for generating three-dimensional shape information expressing a three-dimensional shape of the 3D object.
  • An information processing system including an information processing device and an imaging device, The information processing device, a first 3D modeling processing unit that generates first three-dimensional shape information expressing a three-dimensional shape of a 3D object based on a first captured image generated by a first imaging of the 3D object; a scoring processing unit that uses the first three-dimensional shape information to evaluate accuracy of second three-dimensional shape information that can be generated using a second captured image generated by a second imaging operation performed so far, and generates a scoring result; an imaging control unit that generates imaging control information for controlling the second imaging for imaging the 3D object based on the position and orientation of the imaging device and the scoring result; a first communication unit that supplies the imaging control information to the imaging device, The imaging device, a second communication unit that acquires the imaging control information supplied from the information processing device; an imaging unit that captures the 3D object based on the imaging control information and generates the second captured image.
  • a first 3D modeling processing unit that generates, based on a first captured image generated by a first imaging of a 3D object, first three-dimensional shape information that represents a three-dimensional shape of the 3D object; a scoring processing unit that uses the first three-dimensional shape information to evaluate accuracy of second three-dimensional shape information that can be generated using a second captured image generated by a second imaging operation performed so far, and generates a scoring result; and a guidance information output control unit that generates guidance information for the second imaging of the 3D object based on a result of the scoring, and controls output of the guidance information.
  • the guidance information output control unit generates an image indicating the scoring result as the guidance information and displays the image.
  • the information processing device (43) The information processing device according to (42), wherein the guidance information output control unit generates the image indicating the scoring result within an angle of view of the imaging unit based on a position and an attitude of the imaging unit that performs the second imaging, and displays the image. (44) The information processing device according to (43), wherein the guidance information output control unit displays a captured image generated by the imaging unit so as to be superimposed on the image. (45) The information processing device according to (44), wherein the guidance information output control unit further displays an overhead image showing the scoring result of the entire 3D object.
  • the information processing device (48), wherein the guidance information output control unit further causes an image indicating an overlap ratio indicating a ratio of the overlap region occupying within the angle of view to be displayed.
  • the guidance information output control unit generates, as the guidance information, an imaging auxiliary image for assisting in the second imaging, and displays the imaging auxiliary image.
  • the guidance information output control unit derives a recommended imaging position and posture, which is a recommended position and posture for the second imaging, based on the scoring result, and displays, as the guidance information, recommended imaging position and posture guidance indicating the recommended imaging position and posture.
  • the information processing device according to any one of (51) to (53), wherein the guidance information output control unit causes a captured image generated by an imaging unit performing the second imaging to be superimposed on the recommended imaging position and posture guidance and displayed.
  • the first three-dimensional shape information has a smaller amount of information and lower accuracy than the second three-dimensional shape information.
  • the first 3D modeling processing unit an orientation information generating unit that generates orientation information indicating a position and an orientation of the imaging unit based on the first captured image and an acceleration and an angular velocity of the imaging unit that performs the first image capture;
  • the information processing device according to any one of (41) to (55), further comprising: a three-dimensional shape generation unit that generates the first three-dimensional shape information based on the orientation information and a depth of the 3D object.
  • the first three-dimensional shape information includes a mesh that indicates the three-dimensional shape of the 3D object by vertices and connections, and a texture that is applied to a surface of the mesh.
  • the information processing device according to any one of (41) to (57), wherein the scoring processing unit generates the scoring result for each local area of the first three-dimensional shape information based on the first three-dimensional shape information and positions and orientations of the second imaging performed so far.
  • the first three-dimensional shape information includes a mesh that indicates a three-dimensional shape of the 3D object by vertices and connections, and a texture applied to a surface of the mesh, The information processing device according to (58), wherein the scoring processing unit generates the scoring result for each polygon of the mesh.
  • (60) generating first three-dimensional shape information representing a three-dimensional shape of a 3D object based on a first captured image generated by a first imaging of the 3D object; Using the first three-dimensional shape information, the accuracy of second three-dimensional shape information that can be generated using a second captured image generated by a second imaging operation performed so far is evaluated, and a scoring result is generated;
  • An information processing method comprising: generating guidance information for the second imaging of the 3D object based on a result of the scoring; and controlling output of the guidance information.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Architecture (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)

Abstract

本開示は、3Dモデリングをより容易に行うことができるようにする情報処理装置および方法に関する。 3Dオブジェクトを撮像した第1の撮像により生成された第1の撮像画像に基づいて第1の3次元形状情報を生成し、その第1の3次元形状情報を用いて、これまでに行われた第2の撮像により生成された第2の撮像画像を用いて生成可能な第2の3次元形状情報の精度を評価し、スコアリング結果を生成し、そのスコアリング結果に基づいて、第2の撮像を制御するか、または、第2の撮像のための案内情報を生成し、その案内情報の出力を制御する。本開示は、例えば、情報処理装置、撮像装置、撮像通信装置、電子機器、情報処理方法、プログラム、または情報処理システム等に適用することができる。

Description

情報処理装置および方法
 本開示は、情報処理装置および方法に関し、特に、3Dモデリングをより容易に行うことができるようにした情報処理装置および方法に関する。
 従来、3次元形状を有する3Dオブジェクトの3Dモデリングの手法として、その3Dオブジェクトを多方向から撮像し、得られた複数の撮像画像に基づいて3Dデータを生成するフォトグラメトリと称する手法があった(例えば、特許文献1参照)。また、撮像画像、姿勢情報、深度等の情報に基づいて即時的(リアルタイム)に3Dデータを生成するリアルタイム3Dモデリングと称する手法があった。さらに、近年、撮影画像の姿勢と撮影画像とに基づいてNeural Fieldsを構成し、任意視点での画像や3次元モデルを生成する、Neural Renderingと総称される手法(例えば、NeRF(Neural Radiance Fields)等)が提案された。
特開2018-63693号公報
 これらの手法のように、3Dオブジェクトを撮像した撮像画像に基づいて3Dモデリングを行う場合、作業量や処理量低減のためには、できるだけ少ない撮像回数でできるだけ高精度な3Dデータを生成することが望ましい。そのためには、より適切な位置および姿勢で3Dオブジェクトを撮像することが求められる。しかしながら、撮影者がどの位置からどの姿勢で撮像することが適切であるかを把握することは困難であった。
 本開示は、このような状況に鑑みてなされたものであり、3Dモデリングをより容易に行うことができるようにするものである。
 本技術の一側面の情報処理装置は、3Dオブジェクトを撮像した第1の撮像により生成された第1の撮像画像に基づいて、前記3Dオブジェクトの3次元形状を表現する第1の3次元形状情報を生成する第1の3Dモデリング処理部と、前記第1の3次元形状情報を用いて、これまでに行われた第2の撮像により生成された第2の撮像画像を用いて生成可能な第2の3次元形状情報の精度を評価し、スコアリング結果を生成するスコアリング処理部と、前記スコアリング結果に基づいて、前記3Dオブジェクトを撮像する前記第2の撮像のための案内情報を生成し、前記案内情報の出力を制御する案内情報出力制御部とを備える情報処理装置である。
 本技術の一側面の情報処理方法は、3Dオブジェクトを撮像した第1の撮像により生成された第1の撮像画像に基づいて、前記3Dオブジェクトの3次元形状を表現する第1の3次元形状情報を生成し、前記第1の3次元形状情報を用いて、これまでに行われた第2の撮像により生成された第2の撮像画像を用いて生成可能な第2の3次元形状情報の精度を評価し、スコアリング結果を生成し、前記スコアリング結果に基づいて、前記3Dオブジェクトを撮像する前記第2の撮像のための案内情報を生成し、前記案内情報の出力を制御する情報処理方法である。
 本技術の一側面の情報処理装置および方法においては、3Dオブジェクトを撮像した第1の撮像により生成された第1の撮像画像に基づいて、その3Dオブジェクトの3次元形状を表現する第1の3次元形状情報が生成され、その第1の3次元形状情報を用いて、これまでに行われた第2の撮像により生成された第2の撮像画像を用いて生成可能な第2の3次元形状情報の精度が評価され、スコアリング結果が生成され、そのスコアリング結果に基づいて、その3Dオブジェクトを撮像する第2の撮像のための案内情報が生成され、その案内情報の出力が制御される。
フォトグラメトリの概要を説明するための図である。 リアルタイム3Dモデリングの概要を説明するための図である。 フォトグラメトリとリアルタイム3Dモデリングを比較する図である。 3Dモデリング用の撮像を補助する方法の例を示す図である。 撮像制御および撮像案内の様子の例を示す図である。 オーバーラップの例を示す図である。 被写体からの距離に応じた撮像の様子の例を示す図である。 並行した処理の様子の例を示す図である。 スコアリング処理の例を示す図である。 スコアリング処理の例を示す図である。 スコアリング処理の例を示す図である。 スコアリング処理の例を示す図である。 スコアリング処理の例を示す図である。 スコアリング結果の出力の例を示す図である。 オーバーラップ情報の出力の例を示す図である。 案内情報の表示例を示す図である。 案内情報の表示例を示す図である。 案内情報の表示例を示す図である。 案内情報の表示例を示す図である。 案内情報の表示例を示す図である。 案内情報の表示例を示す図である。 案内情報の表示例を示す図である。 案内情報の表示例を示す図である。 案内情報の表示例を示す図である。 案内情報の表示例を示す図である。 撮像装置の主な構成例を示すブロック図である。 3Dモデリング処理の流れの例を説明するフローチャートである。 リアルタイム3Dモデリング処理の流れの例を説明するフローチャートである。 フォトグラメトリ処理の流れの例を説明するフローチャートである。 情報処理システムの主な構成例を示す図である。 撮像通信装置の主な構成例を示すブロック図である。 撮像装置の主な構成例を示すブロック図である。 サーバの主な構成例を示すブロック図である。 3Dモデリング処理の流れの例を説明するフローチャートである。 3Dモデリング処理の流れの例を説明する、図34に続くフローチャートである。 撮像通信装置の主な構成例を示すブロック図である。 サーバの主な構成例を示すブロック図である。 3Dモデリング処理の流れの例を説明するフローチャートである。 3Dモデリング処理の流れの例を説明する、図38に続くフローチャートである。 コンピュータの主な構成例を示すブロック図である。
 以下、本開示を実施するための形態(以下実施の形態とする)について説明する。なお、説明は以下の順序で行う。
 1.3Dモデリング
 2.撮像制御
 3.撮像案内出力
 4.組み合わせ
 5.第1の実施の形態(撮像装置)
 6.第2の実施の形態(情報処理システム)
 7.付記
 <1.3Dモデリング>
  <フォトグラメトリ>
 従来、3次元形状を有するオブジェクト(本明細書において、3Dオブジェクトとも称する)について、その3次元形状のモデルを生成(再構成)する手法として、その3Dオブジェクトを多方向から撮像し、得られた複数の撮像画像に基づいて3Dデータを生成するフォトグラメトリと称する手法があった。なお、本明細書において、3Dオブジェクトの3次元形状のモデルを生成することを3Dモデリングとも称する。
 フォトグラメトリは、様々な視点で撮影された複数枚の画像から、三角測量の原理を使って、3次元の非常に高精度なモデルを再構成する手法である。なお、本明細書において3Dデータ(3Dモデル)についての「精度」とは、対象となる3Dオブジェクトの3次元形状の再現性(正確さや精細度等)だけでなく、その3Dモデルの表面に適用されるテクスチャの再現性(正確さや精細度等)も含み得るものとする。例えば、図1に示されるカメラ11-1乃至カメラ11-5のように、3Dオブジェクト10を複数の視点から撮像し、複数の撮像画像を得る。そしてそれらの撮像画像等を用いてSfM(Structure from Motion)と称する処理とMVS(Multi view Stereo)と称する処理を行い、さらに、メッシュ化とテクスチャリングを後処理として行って、3Dデータ15を生成する。
 SfMでは、例えば、撮像画像間で対応点を探索し、エピポーラ拘束によりカメラの位置および姿勢を導出し、そのカメラ位置および姿勢に基づく三角測量により各対応点の3次元空間における位置を特定する。本明細書において、この3次元空間上の点を3次元点とも称する。つまり、各対応点に対応する3次元点を特定する。そして、以上のように特定した3次元点群の全体をバンドル調整により最適化する。
 MVSでは、例えば、以上のように導出された3次元点群を用いて、さらに、密な対応点探索を行い、3次元点を追加する。
 以上のように、フォトグラメトリでは、バンドル調整という誤差を最小にする全体最適化計算が行われるため、非常に高精度な結果を得ることができるが、計算負荷が大きい。また、物理的な計測ではなく、幾何学的な計算に基づくため、原理的にはより高解像度の画像を用いる程、より高精度なモデルを復元することができる。
  <リアルタイム3Dモデリング>
 このようなフォトグラメトリとは異なる3Dモデリングの手法として、撮像画像、姿勢情報、深度等の情報に基づいて即時的(リアルタイム)に3Dデータを生成するリアルタイム3Dモデリングと称する手法があった。この手法の場合、例えば図2に示されるように、カメラ21を、3Dオブジェクト10の周辺を点線22のように移動させながら3Dオブジェクト10を撮像する。カメラ21は、イメージセンサだけでなくLidar(Light Detection And Ranging)スキャナ(dToF(Direct Time of Flight)モジュール)を備えており、撮像画像を得るとともに深度(被写体までの距離)を検出する。
 近年、科学技術の発展に伴いdToFモジュールの小型化および高機能化が進み、屋内外問わず、比較的長距離(例えば5m程度)の深度も正確に測定することができる。これにより、コンシューマレベルでリアルタイムのモデリング・キャプチャリングの体験が手軽に可能になった。
 さらに、カメラ21は慣性センサを備えており、カメラ21の加速度や角速度(本明細書において、慣性情報とも称する)を検出する。
 リアルタイム3Dモデリングでは、SLAM(Simultaneous Localization and Mapping)と称する処理を行ってカメラ21の位置および姿勢示す姿勢情報を生成する。また、その姿勢情報と深度を用いてTSDF(Truncated Signed Distance Function)を更新し、MC(Marching Cubes)と称する処理により3Dデータ25(メッシュおよびテクスチャ)を生成する。
 SLAMでは、例えば、撮像画像と慣性情報に基づいてカメラの位置および姿勢が推定される(自己位置推定)。TSDFの更新では、深度とボクセル(voxel)との対応付けが行われ、ボリューム(Volume)が検出される。MCでは、隣接ボクセルを用いた等値面の計算が行われる。SLAMのリアルタイムの姿勢情報があれば、深度(光線がどこまで届いたか)を複数フレーム重ね合わせることで、(点群を介さずに)ボクセルのボリュームを検出することができる。ボクセル表現にすることで、影になる、撮影しなくてはいけない視点(不足視点)を推定することができる。これにより3Dオブジェクトの穴あき構造や突起構造を検出することができる。
  <Neural Rendering>
 さらに、近年、撮影画像の姿勢と撮影画像とに基づいてNeural Fieldsを構成し、任意視点での画像や3次元モデルを生成する、Neural Renderingと総称される手法(例えば、NeRF(Neural Radiance Fields)等)が提案された。
  <比較>
 このような3Dモデリングの各手法は、その特徴が互いに異なり、いずれかの手法が全てにおいて優れているということはない。図3は、フォトグラメトリとリアルタイム3Dモデリングの特徴を比較したものである。図3に示されるように、手法を比較すると、フォトグラメトリではSfM(自己位置推定を含む)とMVSが用いられるのに対し、リアルタイム3Dモデリングでは自己位置推定(SLAM)とTSDFが用いられる。また、使用されるデータを比較すると、フォトグラメトリの場合は画像データのみが用いられるのに対し、リアルタイム3Dモデリングの場合は画像データに加えて深度と姿勢データが用いられる。また、処理時間を比較すると、フォトグラメトリの場合は数分乃至数十時間の長時間を必要とするが、リアルタイム3Dモデリングの場合は30fps(frame/sec)のように略即時的な(リアルタイムの)処理が可能である。
 また、必要な演算能力を比較すると、フォトグラメトリの場合はハイエンドCPU(Central Processing Unit)およびGPU(Graphics Processing Unit)レベルの演算能力が必要であり、リアルタイム3Dモデリングの場合はモバイルAP(Application Processor)レベルの演算能力が必要である。また、生成されるモデルの精細さを比較すると、フォトグラメトリの場合は撮像画像の解像度、数、撮り方等によるが比較的高精細であり、リアルタイム3Dモデリングの場合は深度や自己位置推定精度等によるが比較的低精細である。
 また、生成される3次元データの内部表現は、フォトグラメトリの場合点群ベースであるのに対し、リアルタイム3Dモデリングの場合ボクセルベースである。また、被写体サイズや分解能の制約はフォトグラメトリの場合無いが、リアルタイム3Dモデリングの場合センサに依存する。また、モデルの絶対精度を比較すると、フォトグラメトリの場合はバンドル調整により最適化されるので比較的高く、リアルタイム3Dモデリングの場合はセンサや自己位置推定精度によるが比較的低い。また、スケールを比較すると、フォトグラメトリの場合、不定である(大きさは分からない)が、リアルタイム3Dモデリングの場合、一意である(絶対的な大きさが分かる)。
 フォトグラメトリとリアルタイム3Dモデリングでは、例えばこのような特徴の違いが存在する。つまり、リアルタイム3Dモデリングを適用する方が、フォトグラメトリやNeural Renderingを適用する場合よりも、3Dモデリングの作業量や処理量を低減させることができる。ただし、フォトグラメトリやNeural Renderingを適用する方が、リアルタイム3Dモデリングを適用する場合よりも高精度な3Dデータを生成することができる。
  <3Dモデリングの容易化>
 例えば、より高精度な3Dデータが得られるようにするためには、上述のように、フォトグラメトリやNeural Renderingを適用すればよい。しかしながら、その場合も、3Dモデリングの作業量や処理量は少ないほど望ましい。3Dモデリングの作業量や処理量を低減させるためには、できるだけ少ない撮像回数でできるだけ高精度な3Dデータを生成することが求められる。
 例えば、3Dモデリングに必要な撮像画像が得られない場合、3Dデータの精度が低減するおそれがあった。逆に、不足しないように過剰に撮像画像を得ようとすると、撮像回数が不要に増大し、ユーザの作業量が増大するおそれがあった。また、その場合、不要な撮像画像を用いて3Dモデリング処理が行われることになるため、その処理量が不要に増大するおそれがあった。
 つまり、より少ない作業量および処理量でより高精度な3Dデータを得るためには、より適切な位置および姿勢で3Dオブジェクトを撮像する必要があった。しかしながら、従来の3Dモデリングの各手法では、撮影者がどの位置からどの姿勢で撮像することが適切であるかを把握することは困難であった。
 例えば、フォトグラメトリの場合、3Dモデリング処理に時間を要するため、撮影者が撮影時に即時的に3Dモデリング結果を確認することは困難である。そのため、撮影者が、撮影時に、どの位置からどの姿勢で撮像することが適切であるかを把握することが困難であった。その結果、例えば、適切な位置および姿勢での撮影画像が不足し、フォトグラメトリにより得られる3Dデータの精度が低減するおそれがあった。また、適切な位置および姿勢での撮像画像が不足しないように無計画にあらゆる位置および姿勢で過剰に撮像を行うようにすると、ユーザの作業量が増大するだけでなく、不要に撮像画像が増大し、3Dモデリング処理の負荷(処理量や処理時間等)が不要に増大するおそれがあった。
 <2.撮像制御>
  <スコアリング結果に基づく撮像制御>
 そこで、3Dモデリングを2回行うようにし、1回目の3Dモデリング結果を用いて2回目の3Dモデリングのための撮像を制御するようにする。
 例えば、3次元形状を有する3Dオブジェクトを撮像する第2の撮像と、その第2の撮像により得られた第2の撮像画像を用いてその3Dオブジェクトの3次元形状を表現する第2の3Dデータ(第2の3次元形状情報)を生成する第2の3Dモデリング処理とが行われるとする(図4の第2の3Dデータ生成処理104)。その際、この第2の3Dモデリング処理のための第2の撮像をより適切な位置および姿勢で行うことができるように、第2の撮像を制御する(図4の第2の3Dモデリング用撮像制御処理103)。このような制御を実現するために、図4の第1の3Dデータ生成処理101とスコアリング処理102とを実行する。
 第1の3Dデータ生成処理101は、3Dオブジェクトの3次元形状を表現する第1の3Dデータ(第1の3次元形状情報)を生成する処理である。つまり、第1の3Dデータ生成処理101においては、3Dオブジェクトを撮像する第1の撮像と、その第1の撮像により得られた第1の撮像画像を用いて第1の3Dデータを生成する第1の3Dモデリング処理とが行われる。
 スコアリング処理102は、これまでに行われた第2の撮像により生成された第2の撮像画像を用いて生成可能な第2の3Dデータの精度を評価(スコアリング)する処理である。このスコアリングは、第1の3Dモデリング処理により生成された第1の3Dデータに基づいて行われる。第2の3Dモデリング用撮像制御処理103においては、このスコアリング結果に基づいて、第2の撮像が制御される。
 つまり、第1の撮像により得られた第1の撮像画像に基づいて生成された第1の3Dデータに基づいて、現時点までの第2の撮像により得られた第2の撮像画像に基づいて生成可能な第2の3Dデータの精度を評価する(スコアリングを行う)。このようにすることにより、より容易にスコアリング結果を生成することができる。また、そのスコアリング結果に基づいて、第2の撮像を制御する。このようにすることにより、より適切な位置および姿勢で行われるように第2の撮像を制御することができる。つまり、より適切な位置および姿勢で撮像された第2の撮像画像を用いて第2の3Dモデリング処理を実行することができる。したがって、3Dモデリングの負荷(作業量や処理量)の増大を抑制しながら、より高精度な3Dデータを生成することができる。つまり、3Dモデリングをより容易に行うことができる。
 なお、本明細書において、特に言及しない限り、撮像画像はイメージセンサ等において得られる画像全般を指すものとする。例えば撮像装置等では、一般的に、下記のような画像が得られる。例えば、シャッタボタン等が操作されたタイミングにおいてイメージセンサ等により静止画像が得られ、撮像結果として記憶媒体等に保存される。また、シャッタボタン等が操作されたタイミングからイメージセンサ等により動画像の取得が開始され、その動画像が撮像結果として記憶媒体等に保存される。また、シャッタボタン等が操作される前においてイメージセンサ等により画像(取り込み画像と称される場合もある)が取得され、撮像結果として記憶媒体に記憶されず、モニタ等での表示等に利用される。本明細書において、撮像画像は、これらの画像を示す。つまり、撮像画像は、静止画像であってもよいし、動画像であってもよい。また、撮像画像は、撮像結果として記憶媒体等に保存されてもよいし、保存されなくてもよい。また、撮像画像は、モニタ等に表示されてもよいし、表示されなくてもよい。また、撮像画像は、シャッタボタン等が操作される前に得られてもよいし、操作されたタイミングで得られてもよいし、操作された後に得られてもよい。また、撮像画像は、イメージセンサ等において得られたデータそのもの(所謂RAWデータ)であってもよい。また、撮像画像は、色分離処理や色変換処理が行われた画像であってもよい。また、撮像画像は、欠陥補正、ノイズリダクション、AWB(Automatic White Balance)、またはガンマ補正等の信号処理が施された画像であってもよい。さらに、その他の画像処理が施されたものであってもよい。
  <第1の撮像>
 本明細書において、第1の撮像を行う撮像部(イメージセンサ)を第1の撮像部とも称する。また、第2の撮像を行う撮像部(イメージセンサ)を第2の撮像部とも称する。
 上述したように、第1の3Dデータ生成処理101において第1の撮像が行われる。すなわち、第1の撮像部により第1の撮像画像が生成される。その際、第1の撮像部から第1の撮像画像に含まれる被写体(3Dオブジェクト)までの距離(深度)がデプスセンサにより検出されてもよい。このデプスセンサによる深度の検出方法はどのような方法であってもよい。また、デプスセンサは、第1の撮像部と一体化されていてもよいし、第1の撮像部と異なる位置に設けられた第1の撮像部と異なるセンサであってもよい。なお、以下において、特に言及しない限り、この深度は、第1の撮像画像に対して適切にキャリブレーションされているものとする。また、第1の撮像が行われる際に、第1の撮像部の慣性情報(角速度および加速度)が慣性情報センサにより検出されてもよい。この慣性情報センサによる慣性情報の検出方法はどのような方法であってもよい。また、慣性情報センサは、第1の撮像部と一体化されていてもよいし、第1の撮像部と異なる位置に設けられた第1の撮像部と異なるセンサであってもよい。
 生成された第1の撮像画像は、第1の3Dデータ生成処理に利用される。また、深度や慣性情報が生成される場合、それらも第1の3Dデータ生成処理に利用される。
 なお、第1の撮像部(イメージセンサ)、デプスセンサ、および慣性情報センサの数は、それぞれ、いくつであってもよく、単数であってもよいし、複数であってもよい。つまり、第1の撮像部、デプスセンサ、および慣性情報センサの数は、全て同一であってもよいし、これらの内2つが同一であってもよいし、互いに異なっていてもよい。
  <第1の3Dモデリング処理>
 上述したように、第1の3Dデータ生成処理101において、第1の3Dモデリング処理が行われる。第1の3Dモデリング処理においては、3Dオブジェクトを撮像した第1の撮像により生成された第1の撮像画像に基づいて、その3Dオブジェクトの3次元形状を表現する第1の3Dデータ(第1の3次元形状情報)が生成される。
 この第1の3Dデータが、第2の3Dデータ生成処理104により生成される第2の3Dデータ(第2の3次元形状情報)よりも情報量が少なく、かつ、低精度であってもよい。
 このようにすることにより、スコアリング処理102や第2の3Dモデリング用撮像制御処理103の負荷の増大を抑制することができる。つまり、第1の3Dデータがより簡易化(より低情報量化およびより低精度化)されることにより、その第1の3Dデータを用いて行われるスコアリングや撮像制御の負荷の増大を抑制することができる。また、一般的には、第1の3Dデータの生成(第1の3Dモデリング処理)の負荷の増大も抑制することができる。つまり、より少ない負荷で第2の撮像を制御することができる。
 また、この第1の3Dモデリング処理の手法はどのような手法であってもよい。例えば、第1の3Dモデリング処理において、第1の撮像画像の画角に対応する姿勢情報が導出され、その姿勢情報と、その第1の撮像画像と、その第1の撮像画像の被写体(3Dオブジェクト)の深度とに基づいて第1の3Dデータが生成されてもよい。例えば、それらの情報に基づいてTSDFの更新とMCが行われることにより第1の3Dデータが生成されてもよい。
 なお、この姿勢情報は、第1の撮像部の3次元空間における位置および姿勢を示す情報である。この姿勢情報の導出方法はどのような方法であってもよい。例えば、その第1の撮像部の慣性情報(加速度および角速度)に基づいて姿勢情報が導出されてもよい。例えば、SLAMが適用されてもよい。
 つまり、第1の3Dモデリング処理として、上述したリアルタイム3Dモデリングが適用されてもよい。このようにすることにより、第1の3Dモデリング処理を即時的(リアルタイム)に行うことができ、第1の3Dデータを即時的(リアルタイム)に得ることができる。したがって、第2の3Dモデリング用撮像制御処理を即時的(リアルタイム)に行うことができる。つまり、3Dモデリングをより容易に行うことができる。なお、第1の撮像画像、第1の撮像部の慣性情報、および深度を入力とするニューラルネットワークを利用して第1の撮像部の姿勢情報や第1の3Dデータが生成されてもよい。
 また、第1の3Dデータは、3Dオブジェクトの3次元形状を表現するものであればどのようなものであってもよく、例えば、ポイントクラウドであってもよいし、頂点と接続により3Dオブジェクトの3次元形状を示すメッシュと、そのメッシュの表面に適用されるテクスチャとを含むものであってもよい。この第1の3Dデータは、スコアリング処理102へ供給される。
  <スコアリング処理>
 スコアリング処理102においては、上述したように、これまでに行われた第2の撮像により生成された第2の撮像画像を用いて生成可能な第2の3Dデータの精度が評価される。このスコアリングは、第1の3Dモデリング処理により生成された第1の3Dデータと、これまでに行われた前記第2の撮像の位置および姿勢とに基づいて行われる。つまり、第1の3Dデータを第2の3Dモデリング処理においてモデリングされる3Dオブジェクトに見立て、その第1の3Dデータの局所毎にスコアが算出される。例えば、第1の3Dデータが、頂点と接続により3Dオブジェクトの3次元形状を示すメッシュと、そのメッシュの表面に適用されるテクスチャとを含む場合、そのメッシュのポリゴン毎にスコアリング結果が生成される。つまり、第1の3Dデータの、より高精度な第2の3Dデータが得られる部分が、より高く評価される(より高スコアに設定される)。
 例えば、図4の第1の3Dデータ生成処理101により、図5に示される第1の3Dデータ120が生成されるとする。そして、これまでに、その第1の3Dデータ120に対応する3Dオブジェクトに対してカメラ121-1乃至カメラ121-3の位置および姿勢で第2の撮像が行われたものとする。その場合、スコアリング処理102により、第1の3Dデータ120の図中上側が比較的高スコアに評価され、第1の3Dデータ120の図中下側(グレー部分)が比較的低スコアに評価される。スコアリングの手法の例については後述する。
 なお、図5においては、説明の便宜上、スコアリング結果として高スコアと低スコアの2種類のみが示されているが、スコアの種類数(クラスタリングの分類数)はいくつであってもよい。例えば、3段階(例えば、低スコア、中スコア、高スコア)に分類されてもよいし、10段階(例えば0点乃至9点)に分類されてもよいし、100段階(例えば0点乃至99点)に分類されてもよいし、これら以外の段階数に分類されてもよい。
 スコアリング処理102により生成されたスコアリング結果は、第2の3Dモデリング用撮像制御処理103へ供給される。
  <第2の3Dモデリング用撮像制御処理>
 第2の3Dモデリング用撮像制御処理103においては、第2の撮像部の位置および姿勢と、スコアリング処理102により得られるスコアリング結果とに基づいて、第2の撮像が制御される。例えば、スコアリング結果がより良くなるような位置および姿勢で第2の撮像が行われるように制御される。
 例えば、スコアリング処理102により図5に示されるようなスコアリング結果が得られるとする。このスコアリング結果から、第1の3Dデータ120に対応する3Dオブジェクトの図中下側(例えば、グレー部分)の撮像が不足していることが明らかである。
 そこで、第2の3Dモデリング用撮像制御処理103においては、その撮像が不足しているグレー部分の撮像画像が得られるように、3Dオブジェクトの図中下側から撮像するように第2の撮像が制御される。例えば、カメラ121-4の位置および姿勢が第2の撮像を行う位置および姿勢としてより適切であると判定され、そのカメラ121-4の位置および姿勢で撮像が行われるように第2の撮像が制御される。
 このようにすることにより、より適切な位置および姿勢で撮像された第2の撮像画像を生成することができる。換言するに、より適切な位置および姿勢で撮像された第2の撮像画像を用いて第2の3Dモデリング処理が実行されるようにすることができる。したがって、3Dモデリングの負荷(作業量や処理量)の増大を抑制しながら、より高精度な3Dデータを生成することができる。つまり、3Dモデリングをより容易に行うことができる。
 このような第2の撮像を行うべき位置および姿勢を求める方法はどのような方法であってもよい。例えば、第2の3Dモデリング用撮像制御処理103において、スコアリング結果に基づいて、第2の撮像が不足している部分(グレー部分)のスコアを向上させることが可能な位置および姿勢(の範囲)が特定されるようにしてもよい。また、第2の撮像部の現在の姿勢情報(位置および姿勢)を撮像視点情報としてスコアリング処理102へ提供し、仮に現在の位置および姿勢で得られる第2の撮像画像を加えた場合のスコアリング結果を取得し、そのスコアがその第2の撮像画像を加える前のスコアよりも所定の閾値以上高くなる場合に、現在の位置および姿勢が第2の撮像を行うべき位置および姿勢であると判定してもよい。
 なお、第1の撮像部と第2の撮像部との間で位置および姿勢の関係が既知であるならば、第2の撮像部の姿勢情報の代わりに、第1の撮像部の姿勢情報を撮像視点情報としてスコアリング処理102へ提供してもよい。その場合、スコアリング処理102において、第1の撮像部の姿勢情報を利用して第2の撮像部の姿勢情報が導出され、その第2の撮像部の姿勢情報を利用してスコアリング結果が生成されてもよい。また、第1の撮像部の姿勢情報を入力パラメータに含むニューラルネットワークを利用してスコアリング結果が生成されてもよい。
 また、第2の3Dモデリング用撮像制御処理103において、これまでに行われた第2の撮像の撮像範囲とのオーバーラップ率に基づいて、第2の撮像を行うべき位置および姿勢であるか否かが判定されてもよい。オーバーラップ率とは、撮像範囲が重複する領域(オーバーラップ領域)の度合い(割合)を示す。つまり、これから行う第2の撮像の撮像範囲が、これまでに得られた第2の撮像画像において映り込む領域とどの程度オーバーラップするかによって、その第2の撮像の位置および姿勢がより適切な位置および姿勢であるか否かが判定されてもよい。
 例えば、第2の3Dモデリング処理として、フォトグラメトリのように複数の第2の撮像画像間の対応点に基づいて3Dモデリングを行うような手法が適用される場合、その対応点を求めるためには、複数の第2の撮像画像の撮像範囲の少なくとも一部が重複している(オーバーラップ領域が存在する)必要がある。そこで、これまでに得られた第2の撮像画像に対して、第2の3Dモデリング処理が行い易い(より正確な3Dモデリング処理を行うことができる)オーバーラップ率となる第2の撮像画像が得られる位置および姿勢を、より適切な位置および姿勢(第2の撮像を行うべき位置および姿勢)であると判定してもよい。
 なお、第2の3Dモデリング処理が行い易い(より正確な3Dモデリング処理)を行うことができるオーバーラップ率がどのような値であるかは、3Dオブジェクトの3次元形状等にも依存する。例えば、所謂ドローンからの撮影のような場合、図6の左に示されるように被写体を平面130とみなすことができる。例えば、カメラ131-1から平面130を撮像した場合の撮像範囲は両矢印132-1で示される範囲となる。同様に、カメラ131-2から平面130を撮像した場合の撮像範囲は両矢印132-2で示される範囲となる。したがって、これらの撮像画像のオーバーラップ領域は、両矢印133で示される範囲となる。このような場合、撮像画像同士のオーバーラップの仕方が単純であるので、所定の割合以上のオーバーラップ率が得られれば、より正確な3Dモデリング処理を行うことができる。
 しかしながら第2の撮像の場合、被写体が3Dオブジェクト(第1の3Dデータ135)であり、その全容を撮像するため、オーバーラップの仕方が、図6の右の例の第2の撮像画像136-1および第2の撮像画像136-2のように、立体的となる。そのため、どの程度のオーバーラップ率があれば十分に正確な3Dモデリング処理を行うことができるかは、3Dオブジェクトの3次元形状等に依存する。したがって、第2の撮像を行うべき位置および姿勢を求める際に、これまでに得られた第2の撮像画像に対するオーバーラップ率を考慮する場合、3Dオブジェクトの3次元形状(第1の3Dデータ)等も考慮することが望ましい(第2の撮像を行うべき位置および姿勢をより正確に求めることができる)。
 また、第2の撮像を行うべき位置および姿勢を求める際に、その撮像位置の、被写体(3Dオブジェクト)からの距離が制御されてもよい。つまり、3Dオブジェクトのどの部分をどの角度から撮像するかだけでなく、その部分をどの距離から撮像するかも制御されてもよい。
 図7の左に示される例のように、点線142のように3Dオブジェクト141から遠く離れた位置(図中、黒3角で示される位置)から撮像すると、少ない撮像回数で3Dオブジェクト141の全体を撮像することができる。ただし、3Dオブジェクト141の3次元形状が複雑な部分(例えば、斜線部分141A等)を撮像できないことが起こり得る。そのため、第2の3Dモデリング処理の正確性(第2の3Dデータの精度)が低減する可能性があった。
 これに対して、図7の右に示される例のように、点線143のように3Dオブジェクト141から近い位置(図中、黒3角で示される位置)から撮像すると、3Dオブジェクト141の全体を撮像するために必要な撮像回数が図7の左の例に比べて増大する。ただし、3Dオブジェクト141の3次元形状が複雑な部分(例えば、斜線部分141A等)を、図7の左の例に比べて撮像することができる。つまり、図7の左の例よりも確実に、3Dオブジェクト141の全体を撮像することができる。そのため、第2の3Dモデリング処理の正確性(第2の3Dデータの精度)の低減を抑制することができる。
 つまり、第2の撮像の位置として、3Dオブジェクトからの適切な距離は、その3Dオブジェクトの3次元形状に依存する。そこで、第2の3Dモデリング用撮像制御処理103において、第2の撮像の位置の3Dオブジェクト(被写体)からの距離が、3Dオブジェクトの3次元形状(の複雑さ)に応じて制御されるようにしてもよい。このようにすることにより、上述のように、第2の3Dモデリング処理の正確性(第2の3Dデータの精度)の低減を抑制しながら、第2の撮像の撮像回数の不要な増大を抑制することができる。つまり、より適切な位置および姿勢で第2の撮像が行われるように制御することができる。
 なお、3Dオブジェクトの3次元形状の複雑度の導出方法はどのような方法であってもよい。例えば、第1の3Dデータに基づいてこの複雑度が導出されてもよい。ただし、その場合、例えば第1の3Dデータが2次元画像として処理され、そのパターン等から3Dオブジェクトの3次元形状の複雑度が導出されてもよい。このようにすることにより、3Dオブジェクトの3次元形状の複雑度の導出に関する処理負荷の増大を抑制することができる。
 また、検波枠を設け、その検波枠内について、3Dオブジェクトの3次元形状の複雑度が導出されてもよい。この検波枠はどのような形状であってもよいし、どのような大きさであってもよい。例えば、この検波枠内において、第2の撮像の撮像面に対して第1の3Dデータのポリゴンがいくつ正対しているかを求め、その検波枠内におけるその法線方向のばらつき度合いを数値化し、そのばらつき度合いに基づいてその検波枠内についての3Dオブジェクトの3次元形状の複雑度を導出してもよい。一般的に、ばらつきが大きいほど複雑な形状であり、同じ方向を向いている場合は平面的な形状に近いとみなすことができる。また、検波枠内における各ポリゴンの法線方向の平均を撮像面への正対度合いの代表値とし、その代表値に基づいて3Dオブジェクトの3次元形状の複雑度を導出してもよい。
 また、Marching Cubes法において、平面を形成しやすい頂点配置のケースが多く検波枠内に存在する場合、3Dオブジェクトの3次元形状の複雑度が低いと判定してもよい。
 つまり、3Dオブジェクトの3次元形状の複雑度は、ある領域の被写体の概形からどれくらいの方向・頻度・距離での撮像が必要になるのかを推定するための材料になる定量値であれば、どのようなパラメータ(に基づく値)であってもよい。また、3Dオブジェクトの3次元形状の複雑度に基づく第2の撮像の3Dオブジェクトからの距離の制御方法は、どのような方法であってもよい。例えば、この3Dオブジェクトの3次元形状が複雑なほど、3Dオブジェクトから近い位置から第2の撮像を行うように制御されてもよい。また、この3Dオブジェクトの3次元形状が単純なほど、3Dオブジェクトから遠い位置から第2の撮像を行うように制御されてもよい。
 第2の3Dモデリング用撮像制御処理103においては、上述したように第2の撮像を行うべき位置および姿勢(より適切な位置および姿勢)が求められ、その位置および姿勢において第2の撮像が行われるように制御する制御情報(撮像制御情報)が生成される。そして、その撮像制御情報が第2の3Dデータ生成処理104へ供給される。例えば、ユーザ等が第2の撮像部を移動させ、その第2の撮像部の位置および姿勢が、求められた「第2の撮像を行うべき位置および姿勢」に一致すると、第2の撮像を指示する撮像制御情報が生成され、第2の3Dデータ生成処理104へ供給される(すなわち、「第2の撮像を行うべき位置および姿勢」で第2の撮像が行われる)ようにしてもよい。
  <第2の撮像>
 第2の撮像部は、第2の3Dデータ生成処理104において、第2の3Dモデリング用撮像制御処理103の制御に従って第2の撮像を行い、第2の撮像画像を生成する。例えば、第2の撮像部は、第2の3Dモデリング用撮像制御処理103において生成された撮像制御情報に基づいて第2の撮像を行ってもよい。例えば、第2の撮像部は、撮像制御情報により撮像が指示された場合(撮像が指示されたタイミングで)、第2の撮像を行ってもよい。また、第2の撮像部の位置および姿勢を制御する制御部が、第2の撮像部を、その撮像制御情報により指定される位置に移動させ、その撮像制御情報により指定される姿勢にし、第2の撮像部が、その位置および姿勢で第2の撮像を行ってもよい。
 第2の撮像部の数は、いくつであってもよく、単数であってもよいし、複数であってもよい。また、第1の撮像部および第2の撮像部は、共通の撮像部(同一の撮像部)であってもよいし、互いに異なる位置に設けられた互いに異なる撮像部であってもよい。
 第2の撮像部の仕様(例えば画素数等)は、第1の撮像部の仕様と同一であってもよいし、異なっていてもよい。例えば、第2の撮像画像が第1の撮像画像よりも高画質であってもよい。また、第2の撮像画像が第1の撮像画像よりも高解像度であってもよい。また、第2の撮像画像が第1の撮像画像よりも高ダイナミックレンジであってもよい。
  <第2の3Dモデリング処理>
 また、第2の3Dデータ生成処理104において実行される第2の3Dモデリング処理の手法はどのような手法であってもよい。例えば、第2の3Dモデリング処理の手法が、第1の3Dモデリング処理と同一であってもよいし、異なっていてもよい。
 例えば、第2の3Dモデリング処理として、上述したフォトグラメトリが適用されてもよい。つまり、第2の3Dモデリング処理において、SfMおよびMVSが適用され、複数の第2の撮像画像からポイントクラウドが生成されてもよい。さらに、そのポイントクラウドに対してメッシュ化とテクスチャリングが後処理として行われることにより、第2の3Dデータが生成されてもよい。つまり、第2の3Dデータは、3Dオブジェクトの3次元形状を表現するものであればどのようなものであってもよく、例えば、ポイントクラウドであってもよいし、頂点と接続により3Dオブジェクトの3次元形状を示すメッシュと、そのメッシュの表面に適用されるテクスチャとを含むものであってもよい。また、第2の3Dモデリング処理として、上述したNeural Renderingが適用されてもよい。
 例えば、第2の撮像画像に加え、第2の撮像を行う第2の撮像部の姿勢情報(これまでに得られた第2の撮像画像の画角に対応する姿勢情報)を利用して第2の3Dデータが生成されてもよい。この姿勢情報は、第2の撮像部の3次元空間における位置および姿勢を示す情報である。
 また、第1の撮像を行う第1の撮像部と第2の撮像部との間で位置および姿勢の関係が既知であるならば、第1の撮像部の姿勢情報(3次元空間における位置および姿勢)を利用して第2の3Dデータが生成されてもよい。つまり、第1の3Dモデリング処理において導出される姿勢情報を利用して第2の3Dデータが生成されてもよい。例えば、第1の撮像部の姿勢情報を利用して第2の撮像部の姿勢情報が導出され、その第2の撮像部の姿勢情報を利用して第2の3Dデータが生成されてもよい。また、第1の撮像部の姿勢情報や第2の撮像画像を入力とするニューラルネットワークを利用して第2の3Dデータが生成されてもよい。
 さらに、第2の3Dデータが符号化されてもよい。この符号化の方法はどのような方法であってもよい。
  <手動撮像>
 また、図4に示されるように、第2の3Dデータ生成処理104において、撮像制御情報に基づかずに(例えば手動により)第2の撮像が行われてもよい。本明細書においてこのような撮像方法を手動撮像とも称する。その手動撮像が行われた場合、その撮像タイミングを示す撮像タイミング情報が第2の3Dデータ生成処理104(の第2の撮像)において生成され、第2の3Dモデリング用撮像制御処理103へ供給される。そして、第2の3Dモデリング用撮像制御処理103において、その撮像タイミング情報に基づいて、その撮像タイミングにおける第2の撮像部の姿勢情報が求められ、その撮像タイミングにおける第2の撮像部の姿勢情報が、撮像視点情報としてスコアリング処理102へ供給される。そして、スコアリング処理102において、その撮像視点情報に基づいてスコアが算出される。このように、手動撮像により得られた第2の撮像画像(の画角に対応する第2の撮像部の姿勢情報)がスコアリング処理102(により導出されるスコアリング結果)に反映されてもよい。
  <カメラ情報>
 また、図4に示されるように、第2の3Dデータ生成処理104(の第2の撮像)において、第2の撮像部に関するカメラ情報が生成され、スコアリング処理102へ供給されてもよい。そして、スコアリング処理102において、このカメラ情報に基づいてスコアリングが行われ、スコアリング結果が生成されてもよい。このカメラ情報はどのような情報を含んでもよい。例えば、カメラ情報が、撮像部の内部パラメータを含んでもよい。またカメラ情報が、撮像部の外部パラメータを含んでもよい。またカメラ情報が、撮像画像を含んでもよい。またカメラ情報が、第2の撮像画像の画角情報(焦点距離情報)を含んでもよい。またカメラ情報が、歪み補正情報を含んでもよい。またカメラ情報が、シェーディング補正情報を含んでもよい。またカメラ情報が、ブリージング補正情報を含んでもよい。またカメラ情報が、フォーカス位置情報を含んでもよい。またカメラ情報が、像面位相差情報を含んでもよい。つまり、これらの情報がスコアリング(生成可能な第2の3次元形状情報の精度の評価)に用いられてもよい。
  <リアルタイムな処理>
 なお、図4の第1の3Dデータ生成処理101(第1の撮像および第1の3Dモデリング処理)、スコアリング処理102、および第2の3Dモデリング用撮像制御処理103は、互いに並行して実行されてもよい。
 例えば、第1の3Dデータ生成処理101において、被写体である3Dオブジェクトの第1の撮像が行われた部分の第1の3Dデータが順次生成されてもよい。例えば、第1の3Dモデリング処理としてリアルタイム3Dモデリングを適用することにより、撮像画像と深度情報等に基づいて即時的(リアルタイム)に3Dデータを生成することができる。つまり、この場合、第1の撮像を行いながら(第1の撮像画像を得ながら)、第1の3Dモデリングを行い、第1の3Dデータを生成することができる。例えば、図2を参照して説明したように、被写体である3Dオブジェクトの周辺においてカメラを移動させながらその3Dオブジェクトの各部分の撮像が行われるが、その3Dオブジェクト全体の撮像画像が得られる前に、得られた撮像画像や深度に基づいて3Dモデリングを行うことができる。つまり、撮像が行われた部分の3Dデータを順次生成することができる。
 また、スコアリング処理102において、その3Dオブジェクトの一部に対応する第1の3Dデータに対するスコアリング(これまでに行われた第2の撮像により生成された第2の撮像画像を用いて生成可能な第2の3次元形状情報の精度の評価)が行われてもよい。つまり、第1の3Dモデリング処理により3Dオブジェクトの一部に対応する第1の3Dデータが生成される度に(3Dオブジェクト全体の第1の3Dデータが生成される前に)、その3Dオブジェクトの、第1の3Dデータが生成された部分についてのスコアリング(生成可能な第2の3Dデータの精度の評価)が順次行われるようにしてもよい。このようにすることにより、第1の3Dデータ生成処理101が終了する前に(3Dオブジェクト全体の第1の3Dデータが生成される前に)、スコアリング処理102を開始することができる。つまり、第1の3Dデータ生成処理101とスコアリング処理102を並行して実行することができる。
 また、第2の3Dモデリング用撮像制御処理103において、スコアリング処理102によりスコアリング結果が得られる度に(3Dオブジェクト全体のスコアリング結果が得られる前に)、その得られたスコアリング結果(3Dオブジェクトの一部に対応する第1の3Dデータに対するスコアリング結果)に基づいて、第2の撮像が制御されてもよい。このようにすることにより、スコアリング処理102が終了する前に(3Dオブジェクト全体のスコアリング結果が得られる前に)、第2の3Dモデリング用撮像制御処理103を開始することができる。つまり、スコアリング処理102と第2の3Dモデリング用撮像制御処理103を並行して実行することができる。
 以上のような各方法を組み合わせることにより、第1の3Dデータ生成処理101、スコアリング処理102、および第2の3Dモデリング用撮像制御処理103を、互いに並行して実行することができる。
 例えば、図8において、時間軸が矢印で示されるように図中左から右に向かうとする。第1の3Dデータ生成処理101において第1の撮像および第1の3Dモデリング処理を並行して実行することにより、第1の3Dデータ151-1、第1の3Dデータ151-2、第1の3Dデータ151-3のように、第1の撮像が行われた部分の第1の3Dデータを順次生成することができる。また、第1の3Dデータ生成処理(第1の3Dモデリング処理)およびスコアリング処理102を並行して実行することにより、スコアリング結果152-1、スコアリング結果152-2、スコアリング結果152-3のように、第1の3Dデータが生成された部分についてのスコアリング結果を順次導出することができる。さらに、スコアリング処理102と第2の3Dモデリング用撮像制御処理103とを並行して実行することにより、各タイミングにおいて、それまでに得られたスコアリング結果(スコアリング結果152-1、スコアリング結果152-2、スコアリング結果152-3)に基づいて第2の撮像を制御することができる。
 つまり、第1の3Dデータ生成処理101、スコアリング処理102、および第2の3Dモデリング用撮像制御処理103を、互いに並行して実行することにより、第1の撮像を行いながら、第2の撮像を制御することができる。すなわち、第1の撮像と第2の撮像を並行して(即時的に)行うことができる。
  <スコアリング>
 このスコアリングの方法について説明する。フォトグラメトリがうまくいくための条件として、例えば、SfMがうまくいくこと、MVSがうまくいくこと、テクスチャリング(テクスチャのマッピング)がうまくいくこと等がある。SfMがうまくいく条件として、例えば、ベースラインが確保できること、特徴点がマッチングできること等がある。また、MVSがうまくいく条件として、ベースラインが確保できること等がある。テクスチャリングが旨く行く条件として、例えば、撮像画像において高精細なテクスチャが得られること、テクスチャを貼る面に対して、できるだけ正面から撮影されていること等がある。ベースラインとは、撮像視点位置(撮像時のカメラの位置)同士の間の距離を示す。
  <ポリゴンのスコアリング>
 あるポリゴン面がSfMやMVSで復元できるかの条件としては、例えば、可視最低条件(ポリゴンが撮像位置から見えているか否か)と、精度の好条件(より精度が向上する条件)と、マッチング(対応点の検出)の好条件(マッチングがより容易になる条件)とがある。
 可視最低条件としては、例えば、視点(撮像位置)から見て視野内(撮像の画角内)に対象ポリゴンの重心が存在すること、対象ポリゴンの法線と視線(視線から対象ポリゴンの重心に向かうベクトル)の内積が少なくとも正であり、かつ、視線を遮る他のポリゴンが存在しないこと、および、対象ポリゴンが見える(可視の)視線が2つ以上存在すること等がある。
 例えば、図9の場合、ある視点から対象ポリゴン160の重心に向かう視線162が存在するので、対象ポリゴン160がその視野内に位置している。また、その対象ポリゴン160の法線161と視線162との内積が正である。また、視線162は、他のポリゴンに遮られることなく対象ポリゴン160に到達しており、「対象ポリゴン160が見える視線」である。したがって、視線162は、可視最低条件を満たしている。
 これに対して視線163は、ポリゴン164に遮られているため、「対象ポリゴン160が見える視線」ではない。
 また、精度の好条件としては、例えば、ベースライン(Baseline)が十分に長いこと、被写体までの距離に対するベースラインの長さの比率(ベースラインの長さ/被写体までの距離)が十分に大きいこと、並びに、可視の視点が十分に多く、それらが互いになす角の分散が大きいこと等がある。
 例えば、図10の場合、対象ポリゴン170が見える視点171および視点172の間のベースライン173が十分に長いこと(視点171および視点172が十分に離れていること)や、被写体までの距離174に対するベースライン173の長さの比率が十分に大きいこと(「ベースラインの長さ/被写体までの距離」の値が十分に大きいこと)等が、より精度が向上する条件となる。
 また、図11の左の例の場合、対象ポリゴン180が見える視点は、視点181および視点182の2点である。これに対して、図11の右の例の場合、対象ポリゴン180が見える視点は、視点181乃至視点186の6点である。つまり、右側の例の方が左側の例よりも可視の視点が多く互いになす角の分散が大きい。可視点が多いと複数の別の情報からよりロバストに三角測量でき、精度の向上に期待できる。したがって、右側の例の方が左側の例よりも、より精度が向上する条件を満たしている。
 また、マッチングの好条件としては、例えば、対象ポリゴンの法線と、視点から対象ポリゴンの重心に向かう視線とのなす角が十分に小さいこと、対になる視点と被写体までの距離の比が十分に小さいこと、マッチングに可能なテクスチャが存在すること等がある。
 図12の左側の例の場合、対象ポリゴン190の法線191と視点192とがなす角は、法線191と視点193とがなす角よりも小さい。したがって、視点192の方が視点193よりも対象ポリゴン190の面の特徴点を正しく検出しやすい。また、図12の右側の例の場合、視点194から被写体(対象ポリゴン190)までの距離は、視点195から被写体(対象ポリゴン190)までの距離と比べて顕著に遠い。つまり、視点194と視点195とでは、被写体までの距離の比が大きい。このような場合、ベースラインが長くても両視点からの対象ポリゴンの190面の特徴点の見え方が大きく異なるのでマッチングの難易度が増大してしまう可能性がある。換言するに、図12の左側の例の視点192と視点193のように被写体までの距離の比が小さい視点同士の方が、マッチングが容易である。
  <テクスチャのスコアリング>
 あるポリゴン面がテクスチャリングに十分な視点が存在するかの条件としては、例えば、最低条件(見えているか否か)と、テクスチャリングの好条件(テクスチャリングがよりきれいにできる条件)がある。
 最低条件としては、例えば、上述の可視最低条件を満たしている視点が存在すること等がある。
 また、テクスチャリングの好条件としては、例えば、対象ポリゴンの法線と、視点から対象ポリゴンの重心に向かう視線とのなす角が小さいことや、視点からの被写体までの距離が一定以下で十分な解像度を得られること等がある。
 なお、上述した各条件は一例である。スコアリングにおいて、どのような条件が適用されてもよい。またその内容はどのようなものであってもよい。例えば、上述した条件が省略されてもよいし、上述した条件以外の条件が追加されてもよい。
  <第2の撮像画像のスコアリング>
 第2の撮像により得られる第2の撮像画像のスコアリングが行われてもよい。例えば、カメラ情報に基づいて第2の撮像画像のスコアリングが行われてもよい。例えば、第2の撮像画像について、所望の位置にピントがあっているか否かが評価されてもよい。また、手振れしているか否かが評価されてもよい。また、露出が適切であるか否かが評価されてもよい。また、特徴点が取りやすいか否かが評価されてもよい。
  <スコアリングの演算例>
 例えば、図13に示されるように、対象撮像画像201と対象ポリゴン202との距離をdとする。また、被写体までの理想距離をdoptとする。また、cdを所定の係数とする。その場合のスコアsdを以下の式(1)のように導出してもよい。
Figure JPOXMLDOC01-appb-M000001
 ・・・(1)
 また、対象ポリゴン202の中心をcpとする。対象撮像画像201から中心cpまでの視線をvpとする。また対象ポリゴン202の法線をnpとする。そして、視線vpと法線npがなす角をαとする。その場合のなす角αは以下の式(2)のように導出できる。そして、そのなす角αに基づくスコアsαを以下の式(3)のように導出してもよい。なお、cαは所定の係数とする。
Figure JPOXMLDOC01-appb-M000002
 ・・・(2)
Figure JPOXMLDOC01-appb-M000003
 ・・・(3)
 カメラの光軸(対象撮像画像201の中心を始点とする対象撮像画像の法線ベクトル)をvcとする。また、この光軸vcと視線vpとのなす角をβとする。その場合のなす角βは以下の式(4)のように導出できる。そして、そのなす角βに基づくスコアsβを以下の式(5)のように導出してもよい。なお、cβは所定の係数とする。
Figure JPOXMLDOC01-appb-M000004
 ・・・(4)
Figure JPOXMLDOC01-appb-M000005
 ・・・(5)
 以上のように導出されたスコアsd、sα、sβを用いて、合計スコアstotalを以下の式(6)のように導出してもよい。
Figure JPOXMLDOC01-appb-M000006
 ・・・(6)
 そして、以上のように導出された各視点の合計スコアの内、上位2視点の合計スコアの重み付き加算値を最終スコアとしてもよい。
 なお、この演算方法は一例である。スコアリング処理102における演算方法はどのようなものであってもよく、この例に限定されない。
  <処理を実行する構成の例>
 上述した図4の各処理は、どのような装置により実行されてもよい。例えば、情報処理装置において、上述した第1の3Dデータ生成処理101の第1の3Dモデリング処理と、スコアリング処理102と、第2の3Dモデリング用撮像制御処理103とが実行されてもよい。
 つまり、情報処理装置が、3Dオブジェクトを撮像した第1の撮像により生成された第1の撮像画像に基づいて、その3Dオブジェクトの3次元形状を表現する第1の3次元形状情報を生成する第1の3Dモデリング処理部と、第1の3次元形状情報を用いて、これまでに行われた第2の撮像により生成された第2の撮像画像を用いて生成可能な第2の3次元形状情報の精度を評価し、スコアリング結果を生成するスコアリング処理部と、そのスコアリング結果に基づいて、3Dオブジェクトを撮像する第2の撮像を制御する撮像制御部とを備えてもよい。本項において、この情報処理装置のことを第1の情報処理装置とも称する。
 また、第1の情報処理装置が実行する情報処理方法において、3Dオブジェクトを撮像した第1の撮像により生成された第1の撮像画像に基づいて、その3Dオブジェクトの3次元形状を表現する第1の3次元形状情報を生成し、その第1の3次元形状情報を用いて、これまでに行われた第2の撮像により生成された第2の撮像画像を用いて生成可能な第2の3次元形状情報の精度を評価し、スコアリング結果を生成し、そのスコアリング結果に基づいて、3Dオブジェクトを撮像する第2の撮像を制御してもよい。
 このようにすることにより、より適切な位置および姿勢で3Dオブジェクトを撮像し(第2の撮像を行い)、得られた第2の撮像画像を用いて第2の3Dモデリング処理を実行することができる。したがって、3Dモデリングの負荷(作業量や処理量)の増大を抑制しながら、より高精細な3Dデータを生成することができる。つまり、3Dモデリングをより容易に行うことができる。
 また、その第1の3Dモデリング処理部が、第1の撮像画像と第1の撮像部の加速度および角速度に基づいて、その第1の撮像部の位置および姿勢を示す姿勢情報を生成する姿勢情報生成部と、その姿勢情報と3Dオブジェクトの深度とに基づいて、その3Dオブジェクトの第1の3次元形状情報を生成する3次元形状生成部とを備えてもよい。
 また、第1の情報処理装置において、さらに、上述した第1の3Dデータ生成処理101の第1の撮像が行われてもよい。例えば、第1の情報処理装置が、さらに、第1の撮像部を備えてもよい。また、その第1の撮像部を備える第1の情報処理装置が、深度を検出する深度検出部を備えてもよいし、第1の撮像部の加速度および角速度を検出する慣性計測部を備えてもよいし、その両方を備えてもよい。
 また、第1の情報処理装置において、さらに、上述した第2の3Dデータ生成処理104の第2の撮像が行われてもよい。例えば、第1の情報処理装置が、第2の撮像部をさらに備えてもよい。
 なお、この第2の撮像により生成された第2の撮像画像は符号化されてもよい。例えば、第2の撮像部を備える第1の情報処理装置が、その第2の撮像部により生成された第2の撮像画像を符号化する符号化部を備えてもよい。この符号化された第2の撮像画像は、通信により他の情報処理装置に供給されてもよいし、記憶媒体に記憶されてもよい。
 また、第1の情報処理装置において、さらに、上述した第2の3Dデータ生成処理104の第2の3Dモデリング処理が行われてもよい。例えば、第2の撮像部を備える第1の情報処理装置が、その第2の撮像部により生成された第2の撮像画像に基づいて、第2の3次元形状情報を生成する第2の3Dモデリング処理部をさらに備えてもよい。例えば、その第2の3Dモデリング処理部が、複数の第2の撮像画像の間の対応点の3次元位置を導出する対応点位置導出部と、その対応点の3次元位置に基づいて3次元点を追加する3次元点追加部とを備えてもよい。第2の3Dモデリング処理において、さらに、メッシュ化とテクスチャリングが後処理として行われてもよい。例えば、第2の3次元形状情報が、頂点と接続により3Dオブジェクトの3次元形状を示すメッシュと、そのメッシュの表面に適用されるテクスチャとを含んでもよい。
 なお、この第2の3Dモデリング処理により生成された第2の3Dデータは符号化されてもよい。例えば、第2の撮像部と第2の3Dモデリング処理部を備える第1の情報処理装置が、その第2の3Dモデリング処理部により生成された第2の3次元形状情報を符号化する符号化部をさらに備えてもよい。この符号化された第2の3次元形状情報(第2の3Dデータ)は、通信により他の情報処理装置に供給されてもよいし、記憶媒体に記憶されてもよい。
 なお、上述した第2の3Dデータ生成処理104の第2の撮像は、第1の情報処理装置と異なる第2の情報処理装置において行われてもよい。例えば、第1の情報処理装置が、第2の撮像部を備える第2の情報処理装置(撮像装置)と通信する通信部を備え、撮像制御部が第2の撮像を制御する撮像制御情報を生成し、その通信部がその撮像制御情報を第2の情報処理装置へ供給してもよい。
 また、その場合、第1の情報処理装置は、第2の情報処理装置において生成された第2の撮像画像を取得してもよい。例えば、通信部を備える第1の情報処理装置が、第2の情報処理装置から供給される第2の撮像画像を取得してもよい。この第2の撮像画像は符号化されてもよい。例えば、通信部を備える第1の情報処理装置が、その通信部により取得された第2の撮像画像を符号化する符号化部を備えてもよい。この符号化された第2の撮像画像は、通信により他の情報処理装置に供給されてもよいし、記憶媒体に記憶されてもよい。
 また、第2の情報処理装置から供給される第2の撮像画像が符号化されていてもよい。つまり、通信部が、第2の撮像画像の符号化データを取得してもよい。そして、その符号化データが通信により他の情報処理装置に供給されてもよいし、記憶媒体に記憶されてもよい。また、第1の情報処理装置が、通信部により取得された符号化データを復号し、第2の撮像画像を生成(復元)してもよい。例えば、通信部を備える第1の情報処理装置が、その通信部により取得された第2の撮像画像の符号化データを復号する復号部を備えてもよい。
 このように第2の情報処理装置において第2の撮像が行われる場合も、第1の情報処理装置において、さらに、上述した第2の3Dデータ生成処理104の第2の3Dモデリング処理が行われてもよい。例えば、通信部を備える第1の情報処理装置が、その通信部により取得された第2の撮像画像に基づいて、第2の3次元形状情報を生成する第2の3Dモデリング処理部をさらに備えてもよい。例えば、その第2の3Dモデリング処理部が、複数の第2の撮像画像の間の対応点の3次元位置を導出する対応点位置導出部と、その対応点の3次元位置に基づいて3次元点を追加する3次元点追加部とを備えてもよい。第2の3Dモデリング処理において、さらに、メッシュ化とテクスチャリングが後処理として行われてもよい。例えば、第2の3次元形状情報が、頂点と接続により3Dオブジェクトの3次元形状を示すメッシュと、そのメッシュの表面に適用されるテクスチャとを含んでもよい。
 なお、この第2の3Dモデリング処理により生成された第2の3Dデータは、通信により他の情報処理装置に供給されてもよいし、記憶媒体に記憶されてもよい。また、この第2の3Dデータが符号化されてもよい。例えば、通信部と第2の3Dモデリング処理部を備える第1の情報処理装置が、その第2の3Dモデリング処理部により生成された第2の3次元形状情報を符号化する符号化部をさらに備えてもよい。そして、生成された第2の3次元形状情報(第2の3Dデータ)の符号化データが、通信により他の情報処理装置に供給されてもよいし、記憶媒体に記憶されてもよい。
 ところで、上述したように第2の撮像は手動撮像により行うことができる。その場合、その手動撮像により得られた第2の撮像画像が第2の3Dモデリング処理に利用できるものとしてもよい。スコアリング処理102においては、上述したように、これまでに得られた第2の撮像画像を用いて生成可能な第2の3次元形状情報の精度が評価される。その際、その第2の撮像画像の中に、手動撮像により得られた第2の撮像画像が含まれうるようにしてもよい。つまり、手動撮像の姿勢情報がスコアリング処理102に反映されてもよい。例えば、第1の情報処理装置のスコアリング処理部が、撮像制御情報に基づかない第2の撮像のタイミングを示す撮像タイミング情報により示される第2の撮像のタイミングに対応する第2の情報処理装置の位置および姿勢に基づいてスコアリング結果を生成してもよい。例えば、撮像制御部がその撮像タイミング情報に基づいてその撮像タイミングにおける第2の撮像部の姿勢情報を求め、スコアリング処理部がその姿勢情報に基づいてスコアを算出してもよい。このようにすることにより、手動撮像の姿勢情報がスコアリング結果に反映される。
 なお、この場合、第2の撮像(手動撮像)は、第1の情報処理装置において行われてもよいし、第2の情報処理装置において行われてもよい。第1の情報処理装置が第2の撮像部を備える場合、例えば、その第2の撮像部が、手動撮像を行うとそのタイミングを示す撮像タイミング情報を生成し、撮像制御部へ供給してもよい。また、第1の情報処理装置が通信部を備える場合、例えば、その通信部が、第2の情報処理装置から供給される撮像タイミング情報を取得し、撮像制御部へ供給してもよい。
 このようにすることにより、撮像タイミング情報に基づいて、より適切な位置および姿勢で第2の撮像が行われるように制御することができる。
 ところで、第1の情報処理装置において、上述したように、第2の撮像部に関するカメラ情報がスコアリング処理102に反映されてもよい。例えば、第1の情報処理装置のスコアリング処理部が、そのカメラ情報に基づいてスコアリング結果を生成してもよい。この場合、第2の撮像は、第1の情報処理装置において行われてもよいし、第2の情報処理装置において行われてもよい。第1の情報処理装置が第2の撮像部を備える場合、例えば、その第2の撮像部がカメラ情報を生成し、スコアリング処理部へ供給してもよい。また、第1の情報処理装置が通信部を備える場合、例えば、その通信部が第2の情報処理装置から供給されるカメラ情報を取得し、スコアリング処理部へ供給してもよい。
 このようにすることにより、カメラ情報に基づいて、より適切な位置および姿勢で第2の撮像が行われるように制御することができる。
 ところで、第2の情報処理装置は、上述した第2の3Dデータ生成処理104の第2の撮像を行ってもよい。例えば、第2の情報処理装置が、第2の撮像部と、第1の情報処理装置と通信する通信部とを備え、通信部が第1の情報処理装置から供給される撮像制御情報を取得し、第2の撮像部がその撮像制御情報に基づいて3Dオブジェクトを撮像し、第2の撮像画像を生成してもよい。この撮像制御情報は、第1の3Dデータに基づいて導出されたスコアリング結果に基づいて生成される、第2の撮像を制御する情報である。
 また、第2の情報処理装置が実行する情報処理方法において、第1の情報処理装置から供給される撮像制御情報を取得し、その撮像制御情報に基づいて第2の撮像を行い、第2の3Dデータを生成するための第2の撮像画像を生成してもよい。
 このようにすることにより、より適切な位置および姿勢で3Dオブジェクトを撮像し(第2の撮像を行い)、得られた第2の撮像画像を用いて第2の3Dモデリング処理を実行することができる。したがって、3Dモデリングの負荷(作業量や処理量)の増大を抑制しながら、より高精細な3Dデータを生成することができる。つまり、3Dモデリングをより容易に行うことができる。
 生成された第2の撮像画像は、第1の情報処理装置へ供給されてもよい。例えば、通信部が、第2の撮像部により生成された第2の撮像画像を第1の情報処理装置へ供給してもよい。この第2の撮像画像は、3Dオブジェクトの3次元形状を表現する3次元形状情報を生成するための撮像画像である。また、第2の撮像画像は、符号化されてもよい。例えば、第2の情報処理装置が、第2の撮像部により生成された第2の撮像画像を符号化する符号化部を備えてもよい。そして、通信部が、その符号化部により生成された第2の撮像画像の符号化データを第1の情報処理装置へ供給してもよい。なお、第2の撮像画像(または、第2の撮像画像の符号化データ)は、第1の情報処理装置以外の情報処理装置へ供給されてもよい。例えば、通信部が、第2の撮像画像(または、第2の撮像画像の符号化データ)を他の情報処理装置へ供給してもよい。また、この第2の撮像画像(または、第2の撮像画像の符号化データ)は、記憶媒体に記憶されてもよい。例えば、第2の情報処理装置が、符号化部により生成された第2の撮像画像の符号化データを記憶する記憶部を備えてもよい。
 また、第2の情報処理装置が、上述した第2の3Dモデリング処理を行ってもよい。つまり、第2の情報処理装置において、第2の撮像により生成された第2の撮像画像を用いて第2の3Dモデリング処理が行われ、第2の3Dデータが生成されてもよい。例えば、第2の情報処理装置が、第2の撮像部により生成された第2の撮像画像に基づいて、3Dオブジェクトの3次元形状を表現する第2の3次元形状情報(第2の3Dデータ)を生成する第2の3Dモデリング処理部をさらに備えてもよい。例えば、その第2の3Dモデリング処理部が、複数の第2の撮像画像の間の対応点の3次元位置を導出する対応点位置導出部と、その対応点の3次元位置に基づいて3次元点を追加する3次元点追加部とを備えてもよい。第2の3Dモデリング処理において、さらに、メッシュ化とテクスチャリングが後処理として行われてもよい。例えば、第2の3次元形状情報が、頂点と接続により3Dオブジェクトの3次元形状を示すメッシュと、そのメッシュの表面に適用されるテクスチャとを含んでもよい。
 なお、この第2の3Dモデリング処理により生成された第2の3Dデータは、通信により他の情報処理装置に供給されてもよいし、記憶媒体に記憶されてもよい。また、この第2の3Dデータが符号化されてもよい。例えば、第2の3Dモデリング処理部を備える第2の情報処理装置が、その第2の3Dモデリング処理部により生成された第2の3次元形状情報を符号化する符号化部をさらに備えてもよい。そして、生成された第2の3次元形状情報(第2の3Dデータ)の符号化データが、通信により他の情報処理装置に供給されてもよいし、記憶媒体に記憶されてもよい。
 ところで、上述したように第2の撮像は手動撮像により行うことができる。その場合、その手動撮像により得られた第2の撮像画像が第2の3Dモデリング処理に利用できるものとしてもよい。スコアリング処理102においては、上述したように、これまでに得られた第2の撮像画像を用いて生成可能な第2の3次元形状情報の精度が評価される。その際、その第2の撮像画像の中に、手動撮像により得られた第2の撮像画像が含まれうるようにしてもよい。つまり、手動撮像の姿勢情報がスコアリング処理102に反映されてもよい。
 その場合、第2の情報処理装置において手動撮像のタイミングを示す撮像タイミング情報が生成され、第1の情報処理装置へ供給されるようにしてもよい。例えば、第2の情報処理装置の第2の撮像部が、手動撮像を行うとそのタイミングを示す撮像タイミング情報を生成し、通信部がその撮像タイミング情報を第1の情報処理装置へ供給してもよい。
 このようにすることにより、撮像タイミング情報に基づいて、より適切な位置および姿勢で3Dオブジェクトを撮像することができる(第2の撮像を行うことができる)。
 ところで、上述したように、第2の撮像部に関するカメラ情報がスコアリング処理102に反映されてもよい。例えば、第2の情報処理装置の第2の撮像部がカメラ情報を生成し、通信部がそのカメラ情報を第1の情報処理装置へ供給してもよい。また、この場合、通信部は、そのカメラ情報に基づいて生成された撮像制御情報を取得し、第2の撮像部は、その撮像制御情報に基づいて第2の撮像を行ってもよい。また、第2の情報処理装置が実行する情報処理方法において、第2の撮像部に関するカメラ情報を生成し、そのカメラ情報を第1の情報処理装置へ供給してもよい。また、そのカメラ情報に基づいて生成された撮像制御情報を取得し、その撮像制御情報に基づいて第2の撮像を行ってもよい。
 このようにすることにより、カメラ情報に基づいて、より適切な位置および姿勢で3Dオブジェクトを撮像することができる(第2の撮像を行うことができる)。
 <3.撮像案内出力>
  <第2の3Dモデリング用撮像案内出力処理>
 また、2回目の3Dモデリングのための撮像を制御する代わりに、2回目の3Dモデリングのための撮像を補助するための案内情報を出力してもよい。例えば、図4において、第1の3Dデータ生成処理101およびスコアリング処理102を実行し、さらに、第2の3Dモデリング用撮像案内出力処理105を実行してもよい。この場合も、第1の3Dデータ生成処理101およびスコアリング処理102は、<2.撮像制御>において上述した場合と同様に実行される。ただし、スコアリング処理102は、スコアリング結果を第2の3Dモデリング用撮像案内出力処理105へ供給する。
 第2の3Dモデリング用撮像案内出力処理105においては、スコアリング処理102により得られるスコアリング結果に基づいて第2の撮像のための案内情報が生成され、その案内情報の出力が制御され、出力デバイスから出力される。
 ユーザ等はこのような案内情報を参考にして手動で第2の撮像を行う。つまり、この場合、第2の撮像は手動撮像(撮像制御情報に基づかない撮像)である。このように第2の撮像が行われることにより、より適切な位置および姿勢で撮像された第2の撮像画像が生成され得る。そして、その第2の撮像画像を用いて第2の3Dデータ生成処理104(第2の撮像および第2の3Dモデリング処理)が実行され、目的の第2の3Dデータが生成される。換言するに、より適切な位置および姿勢で撮像された第2の撮像画像を用いて第2の3Dモデリング処理が実行されるようにすることができる。したがって、3Dモデリングの負荷(作業量や処理量)の増大を抑制しながら、より高精度な3Dデータを生成することができる。つまり、3Dモデリングをより容易に行うことができる。
  <案内情報の生成>
 この案内情報を生成するために、第2の3Dモデリング用撮像案内出力処理105においては、スコアリング結果に基づいて第2の撮像を行うべき位置および姿勢(第2の撮像を行う位置および姿勢としてより適切な位置および姿勢)が求められる。この第2の撮像を行うべき位置および姿勢を求める方法はどのような方法であってもよい。例えば、上述した第2の3Dモデリング用撮像制御処理103の場合と同様の方法であってもよい。例えば、スコアリング結果に基づいて、第2の撮像が不足している部分(グレー部分)のスコアを向上させることが可能な位置および姿勢(の範囲)が特定されるようにしてもよい。
 また、第2の3Dモデリング用撮像案内出力処理105において、第2の撮像部の現在の姿勢情報(位置および姿勢)によるスコアリング結果の変動に基づいて、現在の位置および姿勢が第2の撮像を行うべき位置および姿勢であるか否かが判定されてもよい。例えば、第2の撮像部が現在の位置および姿勢で第2の撮像を行った場合に得られる第2の撮像画像(の姿勢情報)をスコアリングに反映させた結果、そのスコアがその第2の撮像画像を加える前のスコアよりも所定の閾値以上高くなる場合に、現在の位置および姿勢が第2の撮像を行うべき位置および姿勢であると判定されてもよい。つまり、この場合、スコアリング処理102においては、第2の撮像部が現在の位置および姿勢で行う第2の撮像が「これまでに行われた第2の撮像」に含まれる場合と含まれない場合とで、それぞれスコアリング結果が導出され、互いに比較される。したがって、この場合、スコアリング処理102においては、第2の撮像部の現在の姿勢情報(撮像視点情報)に基づいてスコアリングが行われる。
 この撮像視点情報は、第2の3Dモデリング用撮像案内出力処理105により供給されてもよい。上述したように、この場合、第2の3Dモデリング用撮像案内出力処理105が実行され、第2の撮像は、手動により行われる。そのため、<2.撮像制御>において上述した場合と同様に、その撮像タイミングを示す撮像タイミング情報が第2の3Dデータ生成処理104(の第2の撮像)において生成され、第2の3Dモデリング用撮像案内出力処理105へ供給されてもよい。そして、第2の3Dモデリング用撮像案内出力処理105において、その撮像タイミング情報に基づいて、その撮像タイミングにおける第2の撮像部の姿勢情報が求められ、その撮像タイミングにおける第2の撮像部の姿勢情報が、撮像視点情報としてスコアリング処理102へ供給されてもよい。
 また、第1の撮像部と第2の撮像部との間で位置および姿勢の関係が既知であるならば、第2の撮像部の姿勢情報の代わりに、第1の撮像部の姿勢情報が撮像視点情報としてスコアリング処理102へ供給されてもよい。
 また、第2の3Dモデリング用撮像案内出力処理105において、これまでに行われた第2の撮像の撮像範囲とのオーバーラップ率に基づいて、第2の撮像を行うべき位置および姿勢であるか否かが判定されてもよい。
 なお、図6を参照して上述したように、第2の3Dモデリング処理が行い易い(より正確な3Dモデリング処理)を行うことができるオーバーラップ率がどのような値であるかは、3Dオブジェクトの3次元形状等にも依存する。したがって、第2の撮像を行うべき位置および姿勢を求める際に、これまでに得られた第2の撮像画像に対するオーバーラップ率を考慮する場合、3Dオブジェクトの3次元形状(第1の3Dデータ)等も考慮することが望ましい(第2の撮像を行うべき位置および姿勢をより正確に求めることができる)。
 また、図7を参照して上述したように、第2の撮像を行うべき位置および姿勢を求める際に、その撮像位置の、被写体(3Dオブジェクト)からの距離が制御されてもよい。その際、その距離が、3Dオブジェクトの3次元形状(の複雑さ)に応じて制御されるようにしてもよい。このようにすることにより、第2の3Dモデリング処理の正確性(第2の3Dデータの精度)の低減を抑制しながら、第2の撮像の撮像回数の不要な増大を抑制することができる。つまり、より適切な位置および姿勢で第2の撮像が行われるように制御することができる。
 そして、第2の3Dモデリング用撮像案内出力処理105においては、以上のように求められた第2の撮像を行うべき位置および姿勢に基づいて、案内情報が生成される。この案内情報は、どのような種類の情報であってもよく、例えば、画像情報が含まれていてもよいし、音声情報が含まれていてもよい。
 また、この案内情報の出力は、例えば第2の撮像を行うユーザ等に対して案内情報の内容を提示するように行われる。出力デバイスはどのようなものであってもよく、例えば、画像情報を表示するモニタが含まれていてもよいし、音声情報を出力するスピーカが含まれていてもよい。
  <案内情報>
 次に、案内情報の内容について説明する。この案内情報の内容は、どのようなものであってもよい。例えば、第2の撮像としてより適切な位置および姿勢をユーザに示す情報がこの案内情報に含まれていてもよい。
 例えば、図4の第1の3Dデータ生成処理101により、図5に示される第1の3Dデータ120が生成されるとする。そして、これまでに、その第1の3Dデータ120に対応する3Dオブジェクトに対してカメラ121-1乃至カメラ121-3の位置および姿勢で第2の撮像が行われたものとする。その場合、スコアリング処理102により、第1の3Dデータ120の図中上側が比較的高スコアに評価され、第1の3Dデータ120の図中下側(グレー部分)が比較的低スコアに評価される。このスコアリング結果から、第1の3Dデータ120に対応する3Dオブジェクトの図中下側(例えば、グレー部分)の撮像が不足していることが明らかである。
 そこで、第2の3Dモデリング用撮像案内出力処理105においては、その撮像が不足しているグレー部分の撮像画像が得られるように第2の撮像を案内する案内情報が生成され、出力される。つまり、この案内情報においては、3Dオブジェクトの図中下側から撮像するように第2の撮像が案内される。例えば、カメラ121-4の位置および姿勢が第2の撮像を行う位置および姿勢としてより適切であると判定され、ユーザ等に対してその旨が通知される。
 このようにすることにより、ユーザは、その案内情報に従って第2の撮像を行うことにより、より適切な位置および姿勢で3Dオブジェクトを撮像することができる。つまり、その撮像画像を用いて3Dモデリング(第2の3Dデータ生成処理104)を実行することができる。したがって、3Dモデリングの負荷の増大を抑制しながら、より高精度な3Dデータを生成することができる。つまり、3Dモデリングをより容易に行うことができる。
  <スコアリング結果の表示>
 なお、案内情報にスコアリング結果を示す情報が含まれていてもよい。つまり、第2の3Dモデリング用撮像案内出力処理105において、スコアリング結果を示す情報を含む案内情報が生成され、そのスコアリング結果を示す画像が案内情報としてモニタに表示されてもよい。また、第2の撮像部の現在の画角内についてのスコアリング結果を示す情報が案内情報に含まれてもよい。つまり、第2の3Dモデリング用撮像案内出力処理105において、第2の撮像部の現在の位置および姿勢に基づいてその第2の撮像部の画角内についてのスコアリング結果を示す情報を含む案内情報が生成され、そのスコアリング結果を示す画像が案内情報としてモニタに表示されてもよい。
 例えば、図14に示されるように、第2の撮像部がカメラ211の位置にあり、スコアリングされた第1の3Dデータ210に対して、点線枠212内を撮像する姿勢であるとする。その場合、第2の3Dモデリング用撮像案内出力処理105において、画像213のように、第2の撮像部の現在の画角(撮像範囲)内についてのスコアリング結果を示す画像、すなわち、第1の3Dデータ210の、点線枠212内の部分を示す画像が、案内情報としてモニタに表示されてもよい。このようにすることにより、第2の撮像部の現在の位置および姿勢に応じた状態でスコアリング結果を表示させることができる。そのため、ユーザは、第2の撮像に適切な位置および姿勢をより容易に把握することができる。
 また、この案内情報(第2の撮像部の現在の画角内についてのスコアリング結果を示す画像)は、第2の撮像部により生成される撮像画像に重畳して表示されてもよい。例えば図14に示される画像213(第2の撮像部の現在の画角内についてのスコアリング結果を示す画像)が、現在の画角の第2の撮像部により生成される撮像画像に重畳して表示されてもよい。このようにすることにより、画角が互いに同一の撮像画像および案内情報(スコアリング結果を示す画像)を重畳してモニタに表示させることができる。このような表示に基づいて、ユーザは、実空間の3Dオブジェクトとスコアリング結果とをより容易に対応させることができる。したがって、ユーザは、第2の撮像に適切な位置および姿勢をより容易に把握することができる。さらに、3Dオブジェクト全体のスコアリング結果を示す俯瞰画像が表示されてもよい。このような俯瞰画像の表示により、ユーザは、3Dオブジェクトの現在表示されている撮像画像に含まれる部分が、3Dオブジェクト全体のどの部分であるかをより容易に把握することができる。
  <オーバーラップ領域の表示>
 また、複数の第2の撮像画像間でその撮像範囲がオーバーラップするオーバーラップ領域を示す情報が案内情報に含まれてもよい。例えば、第2の3Dモデリング用撮像案内出力処理105において、複数の第2の撮像間でその撮像範囲がオーバーラップするオーバーラップ領域を示す情報を含む案内情報が生成され、そのオーバーラップ領域を示す画像が案内情報として表示されてもよい。例えば、図15の左において、第2の撮像部がカメラ221-1の位置および姿勢である場合、その撮像範囲が撮像範囲222-1となるとする。また、第2の撮像部がカメラ221-2の位置および姿勢である場合、その撮像範囲が撮像範囲222-2であるとする。この場合、撮像範囲222-1および撮像範囲222-2は、その一部が互いに重畳(オーバーラップ)している。このように複数の第2の撮像画像の間でその撮像範囲がオーバーラップする領域が存在することにより、両画像間の対応点の検出が可能になる。つまり、複数の第2の撮像画像の間で適切なオーバーラップ領域が存在することにより、第2の3Dモデリング処理において、高精度な第2の3Dデータを生成することができる(第2の3Dデータの精度の低減を抑制することができる)。
 そのため、複数の第2の撮像画像の間で適切なオーバーラップ領域が存在するように、第2の撮像画像を生成する(第2の撮像を行う)ことが望ましい。上述したように、案内情報として、このようなオーバーラップ領域を示す画像がモニタに表示されることにより、第2の撮像部を操作するユーザ等は、その案内情報に基づいて、オーバーラップ領域を考慮しながら第2の撮像の位置および姿勢を決定することができる。つまり、そのユーザ等は、より容易に、複数の第2の撮像画像の間で適切なオーバーラップ領域が存在するような位置および姿勢で第2の撮像を行うことができる。すなわち、そのユーザ等は、より容易に、適切な位置および姿勢で第2の撮像を行うことができる。
 なお、このオーバーラップ領域を示す画像は、オーバーラップ領域をどのように示してもよい。例えば、色、濃度、模様、図柄、文字、記号、図形等によりオーバーラップ領域が示されてもよい。例えば、オーバーラップ領域が、他の領域に対して強調表示(他の領域よりも主観的に目立つ表現に)されてもよい。
 また、このオーバーラップ領域は、第2の撮像部の現在の画角とこれまでに得られた第2の撮像画像の撮像範囲とのオーバーラップ領域であってもよい。つまり、これまでに得られた第2の撮像画像とこれから生成する第2の撮像画像とのオーバーラップ領域を示す画像が案内情報として表示されてもよい。例えば、第2の3Dモデリング用撮像案内出力処理105において、第2の撮像部の現在の位置および姿勢に基づいて、その第2の撮像部の画角とこれまでに得られた第2の撮像画像の撮像範囲とのオーバーラップ領域を示す情報を含む案内情報が生成され、そのオーバーラップ領域を示す画像が案内情報としてモニタに表示されてもよい。例えば、図15において、第2の撮像部がカメラ221-2の位置にあり、撮像範囲222-2を撮像する姿勢であるとする。この場合、その撮像範囲222-2内のオーバーラップ領域224を示す画像223が生成され、案内情報として表示されてもよい。
 このようにすることにより、第2の撮像部の現在の位置および姿勢に応じた状態でオーバーラップ領域を表示させることができる。そのため、第2の撮像部を操作するユーザ等は、この案内情報に基づいて、現在の位置および姿勢で第2の撮像を行うことにより得られる第2の撮像画像の撮像範囲に対して、これまでに得られた第2の撮像画像の撮像範囲がどのようにオーバーラップするかを、より容易に把握することができる。つまり、そのユーザ等は、より容易に、これまでに得られた第2の撮像画像の撮像範囲に対して適切にオーバーラップするように第2の撮像を行うことができる。すなわち、そのユーザ等は、より容易に、適切な位置および姿勢で第2の撮像を行うことができる。
 また、この案内情報(第2の撮像画像間でその撮像範囲がオーバーラップするオーバーラップ領域、または、第2の撮像部の現在の画角とこれまでに得られた第2の撮像画像の撮像範囲とのオーバーラップ領域を示す画像)は、第2の撮像部により生成される撮像画像に重畳して表示されてもよい。例えば、図15に示される画像223(第2の撮像部の現在の画角とこれまでに得られた第2の撮像画像の撮像範囲とのオーバーラップ領域を示す画像)が、現在の画角の第2の撮像部により生成される撮像画像に重畳して表示されてもよい。
 このようにすることにより、画角が互いに同一の撮像画像および案内情報(第2の撮像部の現在の画角とこれまでに得られた第2の撮像画像の撮像範囲とのオーバーラップ領域を示す画像)を重畳してモニタに表示させることができる。このような表示に基づいて、ユーザは、実空間の3Dオブジェクトとオーバーラップ領域とをより容易に対応させることができる。したがって、ユーザは、第2の撮像に適切な位置および姿勢をより容易に把握することができる。
 なお、さらに、その画角内に占めるオーバーラップ領域の割合を示すオーバーラップ率を示す画像が表示されてもよい。このオーバーラップ率は、例えば数値で表現されてもよいし、例えば色、濃度、または模様等で表現されてもよい。このような表示により、ユーザは、どの程度オーバーラップしているかをより直感的に把握することができる。
  <撮像補助画像の表示>
 また、第2の撮像を補助するための撮像補助画像が案内情報に含まれてもよい。例えば、第2の3Dモデリング用撮像案内出力処理105において、第2の撮像を補助するための撮像補助画像を含む案内情報が生成され、その撮像補助画像が案内情報として表示されてもよい。この撮像補助画像の内容はどのようなものであってもよい。
 例えば、推奨する第2の撮像の位置および姿勢である推奨撮像位置姿勢を示す推奨撮像位置姿勢案内が撮像補助画像に含まれてもよい。例えば、第2の3Dモデリング用撮像案内出力処理105において、推奨する第2の撮像の位置および姿勢である推奨撮像位置姿勢がスコアリング結果に基づいて導出され、案内情報(撮像補助画像)として、その推奨撮像位置姿勢を示す推奨撮像位置姿勢案内が表示されてもよい。
 例えば、第2の撮像部の現在の位置および姿勢が推奨撮像位置姿勢と同一である場合、その旨を示す画像が推奨撮像位置姿勢案内として表示されてもよい。つまり、例えばユーザ等が第2の撮像部を移動させることにより、その現在の位置および姿勢が推奨撮像位置姿勢に一致した場合、その旨がユーザ等に通知されてもよい。この通知の方法はどのような方法であってもよい。例えば、第2の撮像部の現在の位置および姿勢が推奨撮像位置姿勢に一致した際に、白画像等、それまで全く異なる画像が表示されてもよい。また、このような画像の代わりに、文字、絵柄、記号等により第2の撮像部の現在の位置および姿勢が推奨撮像位置姿勢であることが示されてもよい。第2の撮像部を操作するユーザ等は、そのような表示(推奨撮像位置姿勢案内)に基づいて、第2の撮像部の現在の位置および姿勢が推奨撮像位置姿勢であることを容易に把握することができる。これにより、そのユーザ等は、より容易に、適切な位置および姿勢で第2の撮像を行うことができる。
 また、第2の撮像部を基準とする推奨撮像位置姿勢の相対位置および相対姿勢を示す画像が推奨撮像位置姿勢案内として表示されてもよい。つまり、第2の撮像部の現在の位置および姿勢に対して、推奨撮像位置姿勢がどの方向であるかや、どの程度離れているか等が、例えば文字、絵柄、記号等により示されてもよい。このような表示に基づいて、第2の撮像部を操作するユーザ等は、第2の撮像部の現在の位置および姿勢が推奨撮像位置姿勢でなくても、より容易に、その推奨撮像位置姿勢に近づけるように第2の撮像部を移動させることができる。これにより、そのユーザ等は、より容易に、適切な位置および姿勢で第2の撮像を行うことができる。
 なお、この推奨撮像位置姿勢案内は、第2の撮像部により生成される撮像画像に重畳して表示されてもよい。このような表示により、ユーザは、実空間の3Dオブジェクトと推奨撮像位置姿勢案内とをより容易に対応させることができる。したがって、ユーザは、第2の撮像に適切な位置および姿勢をより容易に把握することができる。
  <被写体の複雑度に基づく撮像案内>
 図7を参照して上述したように、第2の撮像の位置として、3Dオブジェクトからの適切な距離は、その3Dオブジェクトの3次元形状に依存する。そこで、第2の3Dモデリング用撮像案内出力処理105において導出される第2の撮像の推奨撮像位置姿勢に、3Dオブジェクト(被写体)からの距離が含まれるようにしてもよい。そして、第2の3Dモデリング用撮像案内出力処理105において第2の撮像の推奨撮像位置姿勢を導出する際に、その3Dオブジェクトからの距離が、3Dオブジェクトの3次元形状の複雑度に応じて導出されてもよい。
 この3Dオブジェクトの3次元形状の複雑度の導出方法はどのような方法であってもよく、例えば、<2.撮像制御>において上述した方法であってもよい。また、3Dオブジェクトの3次元形状の複雑度に基づく3Dオブジェクトからの距離(推奨撮像位置姿勢)の導出方法は、どのような方法であってもよい。例えば、この3Dオブジェクトの3次元形状が複雑なほど、3Dオブジェクトから近い位置が推奨撮像位置姿勢として設定されてもよい。また、この3Dオブジェクトの3次元形状が単純なほど、3Dオブジェクトから遠い位置が推奨撮像位置姿勢として設定されてもよい。
 また、モニタに表示される案内情報において、図16に示されるように検波枠も表示されるようにしてもよい。図16において、表示画像230は、第2の3Dモデリング用撮像案内出力処理105によりモニタに表示される案内情報である。この表示画像230には、スコアリングされた第1の3Dデータ231と、検波枠232が表示されている。このように検波枠232を表示することにより、ユーザが被写体の注目部分に対し、3Dオブジェクトの3次元形状の複雑度に応じて、第2の撮像部を3Dオブジェクト(被写体)に近づけたり、3Dオブジェクトから離したりする操作をしやすくすることができる。もちろん、検波枠が表示されないようにしてもよい。
 例えば、モニタに第2の撮像部により生成される撮像画像が表示され、さらに、その撮像画像に重畳して、案内情報として、検波枠と、3Dオブジェクト(被写体)に対応する第1の3Dデータが表示され、その第1の3Dデータ(3Dオブジェクト)において撮像すべき部分が示されてもよい。そして、ユーザが、その表示において第1の3Dデータの撮像すべき部分を検波枠に合わせるように第2の撮像部を移動させることにより、第2の撮像部が、第2の撮像を行うのに適切な位置および姿勢となるようにしてもよい。
 例えば、図17乃至図19のように、モニタに表示画像240が表示されており、その表示画像240において、検波枠241と、第1の3Dデータに基づいて導出された3Dオブジェクトの撮像すべき部分242とが表示されるようにしてもよい。そして、この表示画像240において撮像すべき部分242が検波枠241に近づく(理想的には一致する)ように、ユーザが第2の撮像部を移動させることにより、第2の撮像部が、第2の撮像を行うのにより適切な位置および姿勢となるようにしてもよい。
 例えば、図17の左の場合、撮像すべき部分242が検波枠241に比べて小さく表示されている。その場合、ユーザは、この撮像すべき部分242がより大きく表示されるように第2の撮像部を3Dオブジェクトに近づける等して、図17の右に示されるように、この撮像すべき部分242の表示を検波枠241に一致(または近似)させる。このように第2の撮像部を移動させることにより、第2の撮像部が、第2の撮像を行うのにより適切な位置および姿勢となる。
 また、図18の左の例の場合、撮像方向と撮像すべき部分242の法線方向がずれている(撮像すべき部分242と検波枠241(撮像面)とが正対していない)。その場合、ユーザは、第2の撮像部の向き(つまり撮像方向)を変更する等して、図18の右に示されるように、この撮像すべき部分242を検波枠241に正対させる(より正対するようにする)。このように第2の撮像部を移動させることにより、第2の撮像部が、第2の撮像を行うのにより適切な位置および姿勢となる。
 また、図19の左の例の場合、撮像すべき部分242の高さが検波枠241と異なっている。その場合、ユーザは、第2の撮像部と3Dオブジェクトの距離を変更する等して、図19の右に示されるように、この撮像すべき部分242の高さを検波枠241の高さに一致(または近似)させる。このように第2の撮像部を移動させることにより、第2の撮像部が、第2の撮像を行うのにより適切な位置および姿勢となる。
 また、図20の例のように、案内表示として、第2の撮像部の推奨される移動方向(推奨撮像位置姿勢に近づく移動方向)を示す矢印が表示されてもよい。例えば、図20の左の場合、モニタに案内表示を表示する表示画像250が表示されており、その表示画像250において、案内表示として、矢印251が表示されている。矢印251は、図中奥行き側(前方)に向く矢印であり、第2の撮像部を前方に移動させる(3Dオブジェクト(被写体)に近づける)ように案内している。また、図20の右の例の場合、モニタに表示される表示画像250において、案内表示として、矢印252が表示されている。矢印252は、図中手前側(後方)に向く矢印であり、第2の撮像部を後方に移動させる(3Dオブジェクト(被写体)から遠ざける)ように案内している。ユーザがこれらの矢印に従って第2の撮像部を移動させることにより、第2の撮像部を推奨撮像位置姿勢により近づかせることができる。
 また、図21の例のように、第2の撮像部の現在位置と推奨撮像位置姿勢との深さ方向の位置関係を示すインジケータが表示されてもよい。例えば、図21の左の場合、モニタに案内表示を表示する表示画像260が表示されており、その表示画像260において、案内表示として、インジケータ261が表示されている。インジケータ261は、第2の撮像部の現在位置と推奨撮像位置姿勢との深さ方向の位置関係を示している。図21の左の例の場合、インジケータ261は、第2の撮像部の現在位置に対して推奨撮像位置姿勢の位置がずれている(前方にある)ことが示されており、第2の撮像部を前方に移動させる(3Dオブジェクト(被写体)に近づける)ように案内している。また、図21の右の例の場合、インジケータ261は、第2の撮像部の現在位置と推奨撮像位置姿勢の位置が略一致している(近似している)ことが示されている。つまり、この場合、インジケータ261は、第2の撮像部を略移動させなくてよいと案内している。ユーザがこのインジケータ261に従って第2の撮像部を移動させることにより、第2の撮像部を推奨撮像位置姿勢により近づかせることができる。
 なお、インジケータ261は、どのようなデザインであってもよく、図21の例に限定されない。例えば、図22に示されるようなデザインであってもよい。この例の場合、第2の撮像部の現在位置と推奨撮像位置姿勢との深さ方向の位置関係によって、図中上側に示されるように、表示が変化する。
 また、図23の例のように、第1の3Dデータ(3Dオブジェクト)の撮像すべき部分と第2の撮像部の距離と正対度合い(向きの関係)が案内情報として表示されてもよい。例えば、図23の場合、モニタに案内表示を表示する表示画像270が表示されており、その表示画像270において、スコアリングされた第1の3Dデータ271が表示されている。また、その表示画像270には、案内表示として、第2の撮像部の光軸(第2の撮像部の画素領域の中心)と第1の3Dデータ(3Dオブジェクト)271の撮像すべき部分の中心を結ぶ線(またはそれに準ずる線)272が表示されている。さらに、その表示画像270には、案内表示として、第1の3Dデータ(3Dオブジェクト)271の撮像すべき部分の中心領域での被写体表面の向きを示す矢印273が表示されている。
 表示画像270においては、この線272および矢印273により、第2の撮像部の現在位置と推奨撮像位置姿勢の位置関係や、第1の3Dデータ(3Dオブジェクト)の撮像すべき部分と第2の撮像部の距離と正対度合い(向きの関係)が示されている。
 例えば、図24の上段の左側に示されるように、線272と矢印273の向きが互いに異なる場合、その差(角度)の分、第1の3Dデータ(3Dオブジェクト)の撮像すべき部分の面(その法線方向)が、撮像面(第2の撮像部の向き)に対してずれている(正対していない)ことが示される。
 これに対して、図24の上段の中央に示されるように、線272と矢印273の向きが互いに一致する場合、第1の3Dデータ(3Dオブジェクト)の撮像すべき部分の面(その法線方向)が、撮像面(第2の撮像部の向き)と正対していることが示される。
 また、図24の上段の右側に示されるように、線272と矢印273とが離れている場合、第1の3Dデータ(3Dオブジェクト)の撮像すべき部分と第2の撮像部との距離が、第2の撮像にとって適切な距離よりも遠いことが示されている。つまり、この場合、第2の撮像部を第1の3Dデータ(3Dオブジェクト)に近づけるように移動させることが案内されている。
 また、図24の下段の左側に示されるように、線272が矢印273に対して短い場合、第1の3Dデータ(3Dオブジェクト)の撮像すべき部分と第2の撮像部との距離が、第2の撮像にとって適切な距離よりも近いことが示されている。つまり、この場合、第2の撮像部を第1の3Dデータ(3Dオブジェクト)から遠ざけるように移動させることが案内されている。
 また、図24の下段の中央に示されるように、線272と矢印273の接続部に円274が表示される場合、第1の3Dデータ(3Dオブジェクト)の撮像すべき部分と第2の撮像部との距離が、第2の撮像にとって適切な距離に近似することが示されている。つまり、この場合、第2の撮像部を深さ方向に移動させないことが案内されている。
 また、図24の下段の右側に示されるように、線272と矢印273の接続部に円274が表示され、かつ、線272と矢印273の向きが互いに一致する場合、第1の3Dデータ(3Dオブジェクト)の撮像すべき部分と第2の撮像部との距離が第2の撮像にとって適切な距離に近似し、かつ、第1の3Dデータ(3Dオブジェクト)の撮像すべき部分の面(その法線方向)が、撮像面(第2の撮像部の向き)と正対していることが示される。つまり、この場合、第2の撮像部の現在の位置および姿勢が推奨撮像位置姿勢に一致または近似していることが案内されている。
 ユーザは、このような案内情報に従って第2の撮像部を移動させることにより、より容易に、第2の撮像部を推奨撮像位置姿勢により近づかせることができる。
 なお、SLAM等によって第2の撮像部(第1の撮像部)の姿勢情報が導出されているので、第2の撮像部と被写体までの距離は容易に導出することができる。したがって、上述した表示例は、リアルタイム(即時的に)に更新することができる。
  <リアルタイムな処理>
 なお、図4の第1の3Dデータ生成処理101(第1の撮像および第1の3Dモデリング処理)、スコアリング処理102、および第2の3Dモデリング用撮像案内出力処理105は、互いに並行して実行されてもよい。<2.撮像制御>において上述したように、第1の3Dモデリング処理により、3Dオブジェクトの第1の撮像が行われた部分の3Dデータを順次生成することができる。また、第1の3Dデータ生成処理101とスコアリング処理102を並行して実行することができる。
 また、第2の3Dモデリング用撮像案内出力処理105において、スコアリング処理102によりスコアリング結果が得られる度に(3Dオブジェクト全体のスコアリング結果が得られる前に)、その得られたスコアリング結果(3Dオブジェクトの一部に対応する第1の3Dデータに対するスコアリング結果)に基づいて、第2の撮像のための案内情報が生成され、出力されてもよい。このようにすることにより、スコアリング処理102が終了する前に(3Dオブジェクト全体のスコアリング結果が得られる前に)、第2の3Dモデリング用撮像案内出力処理105を開始することができる。つまり、スコアリング処理102と第2の3Dモデリング用撮像案内出力処理105を並行して実行することができる。
 以上のような各方法を組み合わせることにより、第1の3Dデータ生成処理101、スコアリング処理102、および第2の3Dモデリング用撮像案内出力処理105を、互いに並行して実行することができる。
 例えば、図25に示されるように、モニタに表示画像280が表示され、その表示画像280において、第2の撮像部の撮像画像が表示されるとする。その撮像画像においては被写体として3Dオブジェクト281が写されている。上述したように、第1の3Dデータ生成処理101、スコアリング処理102、および第2の3Dモデリング用撮像案内出力処理105が、互いに並行して実行されることにより、3Dオブジェクト281全体について第1の3Dデータとそのスコアリングが終了する前に、表示画像280において案内情報が表示され得る。図25の表示画像280において、斜線模様の表示282は、3Dオブジェクト281の第1の3Dデータが生成済みの部分を示している。また、グレー地の表示283は、スコアリングの結果、第2の撮像画像が不足している部分を示している。第1の3Dデータ生成処理101、スコアリング処理102、および第2の3Dモデリング用撮像案内出力処理105を、互いに並行して実行することにより、このように、第1の撮像を行いながら、撮像案内を表示することができる。したがって、ユーザは、第1の撮像と並行して(即時的に)第2の撮像を行うことができる。
  <カメラ情報>
 なお、この第2の3Dモデリング用撮像案内出力処理105が実行される場合も、<2.撮像制御>において上述した場合と同様に、第2の3Dデータ生成処理104(の第2の撮像)において、第2の撮像部に関するカメラ情報が生成され、スコアリング処理102へ供給されてもよい。そして、スコアリング処理102において、このカメラ情報に基づいてスコアリングが行われ、スコアリング結果が生成されてもよい。<2.撮像制御>において上述した場合と同様に、このカメラ情報はどのような情報を含んでもよい。
  <処理を実行する構成の例>
 上述した図4の各処理は、どのような装置により実行されてもよい。例えば、情報処理装置において、上述した第1の3Dデータ生成処理101の第1の3Dモデリング処理と、スコアリング処理102と、第2の3Dモデリング用撮像案内出力処理105とが実行されてもよい。
 つまり、情報処理装置が、3Dオブジェクトを撮像した第1の撮像により生成された第1の撮像画像に基づいて、その3Dオブジェクトの3次元形状を表現する第1の3次元形状情報を生成する第1の3Dモデリング処理部と、その第1の3次元形状情報を用いて、これまでに行われた第2の撮像により生成された第2の撮像画像を用いて生成可能な第2の3次元形状情報の精度を評価し、スコアリング結果を生成するスコアリング処理部と、そのスコアリング結果に基づいて、3Dオブジェクトを撮像する第2の撮像のための案内情報を生成し、案内情報の出力を制御する案内情報出力制御部とを備えてもよい。本項において、この情報処理装置のことを第1の情報処理装置とも称する。
 また、第1の情報処理装置が実行する情報処理方法において、3Dオブジェクトを撮像した第1の撮像により生成された第1の撮像画像に基づいて、その3Dオブジェクトの3次元形状を表現する第1の3次元形状情報を生成し、その第1の3次元形状情報を用いて、これまでに行われた第2の撮像により生成された第2の撮像画像を用いて生成可能な第2の3次元形状情報の精度を評価し、スコアリング結果を生成し、そのスコアリング結果に基づいて、3Dオブジェクトを撮像する第2の撮像のための案内情報を生成し、その案内情報の出力を制御してもよい。
 このようにすることにより、ユーザは、その案内情報に従って第2の撮像を行うことにより、より適切な位置および姿勢で3Dオブジェクトを撮像することができる。つまり、その撮像画像を用いて3Dモデリング(第2の3Dモデリング処理)を実行することができる。したがって、3Dモデリングの負荷の増大を抑制しながら、より高精細な3Dデータを生成することができる。つまり、3Dモデリングをより容易に行うことができる。
 なお、この案内情報出力制御部が、案内情報として、スコアリング結果を示す画像を生成し、その画像を表示させてもよい。また、この案内情報出力制御部が、第2の撮像部の位置および姿勢に基づいて、第2の撮像部の画角内についてのスコアリング結果を示す画像を生成し、その画像を表示させてもよい。また、この案内情報出力制御部が、第2の撮像部により生成される撮像画像をその第2の撮像部の画角内についてのスコアリング結果を示す画像に重畳して表示させてもよい。また、この案内情報出力制御部が、さらに、3Dオブジェクト全体のスコアリング結果を示す俯瞰画像を表示させてもよい。
 また、この案内情報出力制御部が、案内情報として、複数の第2の撮像画像の間で撮像範囲がオーバーラップするオーバーラップ領域を示す画像を生成し、その画像を表示させてもよい。また、この案内情報出力制御部が、第2の撮像部の位置および姿勢に基づいて、第2の撮像部の現在の画角とこれまでに得られた第2の撮像画像の撮像範囲との間のオーバーラップ領域を示す画像を生成し、その画像を表示させてもよい。また、この案内情報出力制御部が、第2の撮像部により生成される撮像画像をその画像に重畳して表示させてもよい。また、この案内情報出力制御部が、さらに、第2の撮像部の現在の画角内に占めるオーバーラップ領域の割合を示すオーバーラップ率を示す画像を表示させてもよい。
 また、この案内情報出力制御部が、案内情報として、第2の撮像を補助するための撮像補助画像を生成し、その撮像補助画像を表示させてもよい。また、この案内情報出力制御部が、スコアリング結果に基づいて、推奨する第2の撮像の位置および姿勢である推奨撮像位置姿勢を導出し、案内情報として、その推奨撮像位置姿勢を示す推奨撮像位置姿勢案内を表示させてもよい。また、この案内情報出力制御部が、その推奨撮像位置姿勢案内として、第2の撮像部の位置および姿勢が推奨撮像位置姿勢と同一である場合、第2の撮像部の現在の位置および姿勢が推奨撮像位置姿勢であることを示す画像を表示させてもよい。また、この案内情報出力制御部が、その推奨撮像位置姿勢案内として、第2の撮像部を基準とする推奨撮像位置姿勢の相対位置および相対姿勢を示す画像を表示させてもよい。また、この案内情報出力制御部が、第2の撮像を行う撮像部により生成される撮像画像を推奨撮像位置姿勢案内に重畳して表示させてもよい。
 ところで、上述の第1の情報処理装置において、第1の3次元形状情報は、第2の3次元形状情報よりも情報量が少なく、かつ、低精細であってもよい。また、その第1の情報処理装置の第1の3Dモデリング処理部が、第1の撮像画像と第1の撮像部の加速度および角速度に基づいて、第1の撮像部の位置および姿勢を示す姿勢情報を生成する姿勢情報生成部と、その姿勢情報と3Dオブジェクトの深度とに基づいて、第1の3次元形状情報を生成する3次元形状生成部とを備えてもよい。なお、この場合の第1の3次元形状情報は、頂点と接続により3Dオブジェクトの3次元形状を示すメッシュと、そのメッシュの表面に適用されるテクスチャとを含んでもよい。
 また、上述の第1の情報処理装置において、スコアリング処理部が、第1の3次元形状情報、並びに、これまでに行われた第2の撮像の位置および姿勢に基づいて、第1の3次元形状情報の局所毎にスコアリング結果を生成してもよい。また、第1の3次元形状情報が、頂点と接続により3Dオブジェクトの3次元形状を示すメッシュと、そのメッシュの表面に適用されるテクスチャとを含み、スコアリング処理部が、メッシュのポリゴン毎にスコアリング結果を生成してもよい。
 また、第1の情報処理装置において、さらに、上述した第2の3Dデータ生成処理104の第2の撮像が行われてもよい。その場合の第1の情報処理装置の構成は、<2.撮像制御>において上述した場合と同様である。また、第1の情報処理装置において、さらに、上述した第2の3Dデータ生成処理104の第2の3Dモデリング処理が行われてもよい。その場合の第1の情報処理装置の構成も、<2.撮像制御>において上述した場合と同様である。
 なお、上述したように第2の撮像は手動撮像で行われる。そのため、第1の情報処理装置のスコアリング処理部が、第2の撮像のタイミングを示す撮像タイミング情報により示される第2の撮像のタイミングに対応する第2の情報処理装置の位置および姿勢に基づいてスコアリング結果を生成してもよい。例えば、案内情報出力制御部がその撮像タイミング情報に基づいてその撮像タイミングにおける第2の撮像部の姿勢情報を求め、スコアリング処理部がその姿勢情報に基づいてスコアを算出してもよい。このようにすることにより、手動撮像の姿勢情報がスコアリング結果に反映される。この場合の第1の情報処理装置の構成も、<2.撮像制御>において上述した場合と同様である。ただし、第2の撮像部において生成された撮像タイミング情報、または、通信部により取得された撮像タイミング情報は、案内情報出力制御部へ供給される。このようにすることにより、撮像タイミング情報に基づいて、より適切な位置および姿勢で第2の撮像が行われるように制御することができる。
 また、第1の情報処理装置において、上述したように、第2の撮像部に関するカメラ情報がスコアリング処理102に反映されてもよい。例えば、第1の情報処理装置のスコアリング処理部が、そのカメラ情報に基づいてスコアリング結果を生成してもよい。この場合の第1の情報処理装置の構成も、<2.撮像制御>において上述した場合と同様である。このようにすることにより、カメラ情報に基づいて、より適切な位置および姿勢で第2の撮像が行われるように制御することができる。
 ところで、第1の情報処理装置が第2の3Dモデリング用撮像案内出力処理105を実行する場合も、第2の情報処理装置が、上述した第2の3Dデータ生成処理104の第2の撮像を行ってもよい。その場合の第2の情報処理装置の構成も、<2.撮像制御>において上述した場合と同様である。そして、第2の情報処理装置が、上述した第2の3Dモデリング処理をさらに行ってもよい。その場合の第2の情報処理装置の構成も、<2.撮像制御>において上述した場合と同様である。
 また、第2の情報処理装置において手動撮像のタイミングを示す撮像タイミング情報が生成され、第1の情報処理装置へ供給されるようにしてもよい。その場合の第2の情報処理装置の構成も、<2.撮像制御>において上述した場合と同様である。
 また、第2の撮像部に関するカメラ情報がスコアリング処理102に反映されてもよい。その場合の第2の情報処理装置の構成も、<2.撮像制御>において上述した場合と同様である。
 <4.組み合わせ>
  <撮像制御と案内情報出力の組み合わせ>
 なお、図4において、第2の3Dモデリング用撮像制御処理103と第2の3Dモデリング用撮像案内出力処理105の両方が実行されてもよい。撮像制御と案内情報の出力の両方を行うことにより、ユーザは、より容易に、適切な位置および姿勢で第2の撮像を行うことができる。
 例えば、<2.撮像制御>において上述した第1の情報処理装置が、スコアリング結果に基づいて、3Dオブジェクトを撮像する第2の撮像のための案内情報を生成する案内情報出力制御部をさらに備えてもよい。この場合、案内情報出力制御部は、<3.撮像案内出力>において上述した場合と同様の処理を行う。
 また、<3.撮像案内出力>において上述した第1の情報処理装置が、スコアリング結果に基づいて、3Dオブジェクトを撮像する第2の撮像を制御する撮像制御部をさらに備えてもよい。この場合、撮像制御部は、<2.撮像制御>において上述した場合と同様の処理を行う。
 <5.第1の実施の形態>
  <撮像装置>
 図26は、本技術を適用した情報処理装置の一態様である撮像装置の構成の一例を示すブロック図である。図26に示される撮像装置300は、3Dオブジェクトを撮像し、その撮像画像を用いて3Dモデリングを行う装置である。なお、図26においては、処理部やデータの流れ等の主なものを示しており、図26に示されるものが全てとは限らない。つまり、撮像装置300が、図26においてブロックとして示されていない装置や処理部を有してもよい。また、図26において矢印等として示されていないデータの流れや処理が存在してもよい。
 図26に示されるように、撮像装置300は、第1の3Dデータ生成部301、スコアリング処理部302、撮像制御部303、第2の3Dデータ生成部304、符号化部305、記憶部306、通信部307、撮像案内出力制御部308、および出力部309を有する。また、第1の3Dデータ生成部301は、デプスセンサ311、撮像部312、IMU(Inertial Measurement Unit)313、およびリアルタイム3Dモデリング処理部314を有する。また、リアルタイム3Dモデリング処理部314は、SLAM(Simultaneous Localization and Mapping)321、TSDF(Truncated Signed Distance Function)更新部322、およびメッシュ生成部323を有する。また、第2の3Dデータ生成部304は、操作部331、撮像部332、画像処理部333、およびフォトグラメトリ処理部334を有する。また、フォトグラメトリ処理部334は、SfM(Structure From Motion)341およびMVS(Multi View Stereo)342を有する。
 第1の3Dデータ生成部301は、第1の3Dデータの生成に関する処理を行う。例えば、第1の3Dデータ生成部301は、図4の第1の3Dデータ生成処理101を実行する。デプスセンサ311は、Lidarセンサ(dToFモジュール)等を有し、被写体までの深度を検出し、TSDF更新部322へ供給する。撮像部312は、イメージセンサを有し、被写体を撮像して撮像画像を生成する。撮像部312は、図4の第1の3Dデータ生成処理101の第1の撮像(つまり、第1の3Dモデリング(リアルタイム3Dモデリング)のための撮像)を行う。撮像部312は、生成した撮像画像をSLAM321へ供給する。IMU313は、撮像装置の慣性情報(加速度および角速度)を検出し、SLAM321へ供給する。
 リアルタイム3Dモデリング処理部314は、リアルタイム3Dモデリングに関する処理を行う。例えば、リアルタイム3Dモデリング処理部314は、図4の第1の3Dデータ生成処理101の第1の3Dモデリング処理(リアルタイム3Dモデリング)を実行する。つまり、リアルタイム3Dモデリング処理部314は、3Dオブジェクトを撮像した第1の撮像により生成された第1の撮像画像に基づいて、その3Dオブジェクトの3次元形状を表現する第1の3次元形状情報を生成する。
 SLAM321は、供給された第1の撮像画像と慣性情報とに基づいて自己位置推定を行い、撮像装置300の位置および姿勢を示す姿勢情報を生成する。SLAM321は、生成した姿勢情報をTSDF更新部322、撮像制御部303、および撮像案内出力制御部308へ供給する。TSDF更新部322は、その姿勢情報と深度に基づいてTSDFを更新し、更新されたTSDFをメッシュ生成部323へ供給する。メッシュ生成部323は、その更新されたTSDFを用いてメッシュ(やテクスチャ)を生成する。メッシュ生成部323は、そのメッシュおよびテクスチャを第1の3Dデータ(第1の3次元形状情報)としてスコアリング処理部302へ供給する。
 スコアリング処理部302は、スコアリングに関する処理を行う。例えば、スコアリング処理部302は、供給された第1の3Dデータと、撮像制御部303から供給される撮像視点情報(第2の撮像が行われた位置および姿勢を示す情報)とに基づいて、図4のスコアリング処理102を行う。つまり、スコアリング処理部302は、第1の3次元形状情報を用いて、これまでに行われた第2の撮像により生成された第2の撮像画像を用いて生成可能な第2の3次元形状情報の精度を評価し、スコアリング結果を生成する。例えば、スコアリング処理部302は、第1の3次元形状情報、並びに、これまでに行われた第2の撮像の位置および姿勢に基づいて、第1の3次元形状情報の局所毎にスコアリング結果を生成してもよい。例えば、スコアリング処理部302は、メッシュのポリゴン毎にスコアリング結果を生成してもよい。スコアリング処理部302は、そのスコアリング結果を撮像制御部303および撮像案内出力制御部308へ供給する。
 なお、スコアリング処理部302は、撮像部332に関するカメラ情報を取得し、そのカメラ情報に基づいてスコアリング結果を生成してもよい。また、スコアリング処理部302は、撮像部332による撮像制御情報に基づかない第2の撮像のタイミングに対応する撮像装置300の位置および姿勢に基づいてスコアリング結果を生成してもよい。
 撮像制御部303は、第2の撮像の制御に関する処理を行う。例えば、撮像制御部303は、図4の第2の3Dモデリング用撮像制御処理103を実行する。つまり、撮像制御部303は、供給されたスコアリング結果および姿勢情報に基づいて、第2の撮像を制御する撮像制御情報を生成し、撮像部332へ供給する。この撮像制御情報は、例えば、撮像部332に対して第2の撮像を実行させる(第2の撮像画像を生成させる)制御情報である。つまり、撮像制御部303は、スコアリング結果に基づいて第2の撮像として適切な位置および姿勢を求め、撮像部332に対してその位置および姿勢で第2の撮像を実行させる。また、撮像制御部303は、その実行させた第2の撮像の位置および姿勢を示す撮像視点情報をスコアリング処理部302へ供給する。
 また、撮像制御部303は、撮像部332による撮像制御情報に基づかない第2の撮像のタイミングを示す撮像タイミング情報を取得し、その撮像タイミングに対応する撮像装置300の姿勢情報を撮像視点情報としてスコアリング処理部302へ供給してもよい。
 第2の3Dデータ生成部304は、第2の3Dデータの生成に関する処理を行う。例えば、第2の3Dデータ生成部304は、図4の第2の3Dデータ生成処理104を実行する。操作部331は、ユーザ等による撮像部332への指示を受け付け、撮像部332へその指示を供給する。
 撮像部332は、イメージセンサを有し、被写体を撮像して撮像画像を生成する。撮像部332は、図4の第2の3Dデータ生成処理104の第2の撮像(つまり、第2の3Dモデリング(フォトグラメトリ)のための撮像)を行う。撮像部332は、生成した撮像画像を画像処理部333へ供給する。
 撮像部332は、例えば、撮像制御部303の制御に従って(撮像制御部303から供給される撮像制御情報に基づいて)第2の撮像を行い、第2の撮像画像を生成してもよい。また、撮像部332は、操作部331から供給される指示に従って第2の撮像を行い、第2の撮像画像を生成してもよい。また、撮像部332は、カメラ情報(撮像部332の内部パラメータ、外部パラメータ、画角情報等)をスコアリング処理部302へ供給してもよい。また、撮像部332は、撮像制御情報に基づかない第2の撮像のタイミングを示す撮像タイミング情報を、撮像制御部303および撮像案内出力制御部308へ供給してもよい。
 画像処理部333は、撮像部332において生成された撮像画像(第2の撮像画像)に対して所定の画像処理を施す。この画像処理の内容は任意である。画像処理部333は、その撮像画像をSfM341へ供給する。また、画像処理部333は、その撮像画像を符号化部305および撮像案内出力制御部308へ供給してもよい。
 フォトグラメトリ処理部334は、第2の撮像画像に対するフォトグラメトリに関する処理を行う。例えば、フォトグラメトリ処理部334は、図4の第2の3Dデータ生成処理104の第2の3Dモデリング処理を実行する。つまり、フォトグラメトリ処理部334は、撮像部332により生成された第2の撮像画像に基づいて、第2の3次元形状情報を生成する。
 SfM341は、例えば、第2の撮像画像間で対応点を探索し、エピポーラ拘束によりカメラの位置および姿勢を導出し、そのカメラ位置および姿勢に基づく三角測量により各対応点の3次元空間における位置を特定し、その特定した3次元点群の全体をバンドル調整により最適化し、MVS342へ供給する。MVS342は、例えば、その3次元点群を用いて、さらに、密な対応点探索を行い、3次元点を追加し、さらに後処理としてメッシュ化やテクスチャリングを行い、第2の3Dデータを生成する。MVS342は、生成した第2の3Dデータを符号化部305へ供給する。
 符号化部305は、供給された第2の3Dデータを符号化し、その符号化データを記憶部306および通信部307へ供給する。また、符号化部305は、供給された第2の撮像画像を符号化し、その符号化データを記憶部306および通信部307へ供給してもよい。
 記憶部306は、供給された符号化データを記憶する。通信部307は、供給された符号化データを他の情報処理装置(例えばサーバ等)に送信する。
 撮像案内出力制御部308は、第2の撮像のための案内に関する処理を行う。例えば、撮像案内出力制御部308は、図4の第2の3Dモデリング用撮像案内出力処理105を実行する。つまり、撮像案内出力制御部308は、第2の撮像のための案内情報を生成し、その案内情報の出力を制御する。例えば、撮像案内出力制御部308は、供給されたスコアリング結果と撮像装置300の姿勢情報とに基づいて、上述した案内情報を生成する。また、撮像案内出力制御部308は、供給された撮像タイミング情報に基づいて案内情報を生成してもよい。撮像案内出力制御部308は、生成した案内情報を出力部309へ供給し、例えば画像や音声等として出力させる。また、撮像案内出力制御部308は、供給された撮像画像をその案内情報(画像)に重畳し、表示させてもよい。
 出力部309は、撮像案内出力制御部308の制御に従って案内情報を画像や音声等として出力する。
 このような構成を有することにより、撮像装置300は、より適切な位置および姿勢で3Dオブジェクトを撮像し、その撮像画像を用いて3Dモデリング(第2の3Dモデリング処理)を実行することができる。したがって、撮像装置300は、3Dモデリングの負荷の増大を抑制しながら、より高精度な3Dデータを生成することができる。また、撮像装置300は、ユーザがより適切な位置および姿勢で第2の撮像を行うことができるように案内情報を出力することができる。つまり、撮像装置300は、その撮像画像を用いて3Dモデリング(第2の3Dモデリング処理)を実行することができる。したがって、撮像装置300は、3Dモデリングの負荷の増大を抑制しながら、より高精度な3Dデータを生成することができる。つまり、ユーザは、3Dモデリングをより容易に行うことができる。
  <3Dモデリング処理の流れ>
 この撮像装置300により実行される3Dモデリング処理の流れの例を図27のフローチャートを参照して説明する。
 3Dモデリング処理が開始されると、ステップS301において、デプスセンサ311、撮像部312、およびIMU313は、深度、撮像画像、慣性情報を取得する。
 ステップS302において、リアルタイム3Dモデリング処理部314は、リアルタイム3Dモデリング処理を実行し、第1の3Dデータを生成する。
 ステップS303において、スコアリング処理部302は、これまでに行われた第2の撮像に基づいて第1の3Dデータをスコアリングする。
 ステップS304において、撮像案内出力制御部308は、スコアリング結果や姿勢情報等に基づいて第2の撮像のための撮像案内(案内情報)を生成する。出力部309は、その撮像案内(案内情報)を出力する。
 ステップS305において、撮像制御部303は、スコアリング結果や姿勢情報等に基づいてフォトグラメトリ用撮像(第2の撮像)を制御する。
 ステップS306において、撮像部332は、その制御に従って撮像する(第2の撮像を行う)。
 ステップS307において、撮像制御部303および撮像案内出力制御部308は、撮像部332からカメラ情報を取得する。また、スコアリング処理部302は、撮像部332から撮像タイミング情報を取得する。
 ステップS308において、撮像制御部303は、フォトグラメトリ用撮像(第2の撮像)を終了するか否かを判定する。フォトグラメトリ用撮像を終了しないと判定された場合、処理はステップS303に戻る。また、ステップS308においてフォトグラメトリ用撮像を終了すると判定された場合、処理はステップS309へ進む。
 ステップS309において、フォトグラメトリ処理部334は、フォトグラメトリ処理を実行し、第2の3Dデータを生成する。
 ステップS310において、符号化部305は、その第2の3Dデータを符号化する。
 ステップS311において、記憶部306は、その符号化データを記憶する。また、通信部307は、その符号化データを他の装置(例えばサーバ等)へ送信する。
 ステップS311の処理が終了すると、3Dモデリング処理が終了する。
  <リアルタイム3Dモデリング処理の流れ>
 図27のステップS302において実行されるリアルタイム3Dモデリング処理の流れの例を、図28のフローチャートを参照して説明する。
 リアルタイム3Dモデリング処理が開始されると、SLAM321は、ステップS331において、撮像画像および慣性情報に基づいて撮像装置300の3次元姿勢を示す姿勢情報を導出する。
 ステップS332において、TSDF更新部322は、撮像画像、姿勢情報、深度に基づいてTSDFを更新する。
 ステップS333において、メッシュ生成部323は、その更新されたTSDFに基づいて第1の3Dデータを生成する。
 ステップS333の処理が終了すると、リアルタイム3Dモデリング処理が終了し、処理は図27に戻る。
  <フォトグラメトリ処理の流れ>
 図27のステップS309において実行されるフォトグラメトリ処理の流れの例を、図29のフローチャートを参照して説明する。
 フォトグラメトリ処理が開始されると、SfM341は、ステップS351において、撮像画像間で対応点を検出する。
 ステップS352において、SfM341は、エピポーラ拘束によりカメラの3次元姿勢を導出する。
 ステップS353において、SfM341は、三角測量を用いて3次元点を導出する。
 ステップS354において、SfM341は、バンドル調整により全体を最適化する。
 ステップS355において、MVS342は、密な対応点探索により3次元点を導出し、第2の3Dデータを生成する。
 ステップS355の処理が終了すると、フォトグラメトリ処理が終了し、処理は図27に戻る。
 以上のように各処理を実行することにより、撮像装置300は、より適切な位置および姿勢で3Dオブジェクトを撮像し、その撮像画像を用いて3Dモデリング(第2の3Dモデリング処理)を実行することができる。したがって、撮像装置300は、3Dモデリングの負荷の増大を抑制しながら、より高精度な3Dデータを生成することができる。また、撮像装置300は、ユーザがより適切な位置および姿勢で第2の撮像を行うことができるように案内情報を出力することができる。つまり、撮像装置300は、その撮像画像を用いて3Dモデリング(第2の3Dモデリング処理)を実行することができる。したがって、撮像装置300は、3Dモデリングの負荷の増大を抑制しながら、より高精度な3Dデータを生成することができる。つまり、ユーザは、3Dモデリングをより容易に行うことができる。
 <6.第2の実施の形態>
  <情報処理システム1>
 本技術は、上述の例に限定されず、任意の構成に適用し得る。例えば、3Dモデリングを行う情報処理システムに適用してもよい。
 例えば、情報処理装置と撮像装置を備える情報処理システムにおいて、情報処理装置が、3Dオブジェクトを撮像した第1の撮像により生成された第1の撮像画像に基づいて、その3Dオブジェクトの3次元形状を表現する第1の3次元形状情報を生成する第1の3Dモデリング処理部と、その第1の3次元形状情報を用いて、これまでに行われた第2の撮像により生成された第2の撮像画像を用いて生成可能な第2の3次元形状情報の精度を評価し、スコアリング結果を生成するスコアリング処理部と、撮像装置の位置および姿勢並びにスコアリング結果に基づいて、3Dオブジェクトを撮像する第2の撮像を制御する撮像制御情報を生成する撮像制御部と、その撮像制御情報を撮像装置へ供給する第1の通信部とを備えてもよい。また、撮像装置が、その情報処理装置から供給される撮像制御情報を取得する第2の通信部と、その撮像制御情報に基づいて3Dオブジェクトを撮像し、第2の撮像画像を生成する撮像部とを備えてもよい。
 図30は、本技術を適用した情報処理システムの一態様の構成例を示す図である。図30に示される情報処理システム400は、3Dオブジェクトを撮像し、その撮像画像を用いて3Dモデリングを行うシステムである。図30に示されるように、情報処理システム400は、撮像通信装置401、撮像装置402、およびサーバ403を有する。撮像通信装置401およびサーバ403は、ネットワーク404を介して通信可能に接続される。ネットワーク404は、例えば、インターネット、LAN(Local Area Network)、無線LAN等の、任意の通信媒体により構成される通信路である。
 撮像通信装置401は、例えばスマートフォン等のような、ネットワーク404を介して任意の装置と通信を行うことができる通信機能と撮像機能とを有する情報処理装置である。撮像装置402は、例えばデジタルカメラのような、撮像機能を有する情報処理装置である。撮像装置402は、撮像通信装置401とのみ通信することができる。撮像通信装置401および撮像装置402は、互いに固定的に接続され、端末装置410としてユーザに使用される。サーバ403は、その端末装置410(撮像装置402)において生成される第2の撮像画像を取得し、その第2の撮像画像を用いて第2の3Dモデリング(フォトグラメトリ処理)を行い、第2の3Dデータを生成し、記憶(管理)する。
 図31は、撮像通信装置401の主な構成例を示すブロック図である。なお、図31においては、処理部やデータの流れ等の主なものを示しており、図31に示されるものが全てとは限らない。つまり、撮像通信装置401が、図31においてブロックとして示されていない装置や処理部を有してもよい。また、図31において矢印等として示されていないデータの流れや処理が存在してもよい。
 図31に示されるように、撮像通信装置401は、撮像装置300(図26)の構成の、第2の3Dデータ生成部304の代わりに通信部421を有する。つまり、それ以外の構成は、撮像装置300と同様である。
 通信部421は、撮像装置402と通信可能に接続され、撮像装置402と通信を行い、情報を授受する。例えば、通信部421は、撮像制御部303から供給される撮像制御情報を撮像装置402へ供給してもよい。また、通信部421は、撮像装置402により生成された第2の撮像画像を取得し、符号化部305および撮像案内出力制御部308へ供給してもよい。また、通信部421は、撮像装置402から供給されるカメラ情報を取得し、スコアリング処理部302へ供給してもよい。このカメラ情報は、撮像装置402(の撮像部332)の内部パラメータ、外部パラメータ、および画角情報等を含んでもよい。また、通信部421は、撮像装置402から供給される撮像タイミング情報を取得し、撮像制御部303および撮像案内出力制御部308へ供給してもよい。この撮像タイミング情報は、撮像装置402(の撮像部332)が撮像制御情報に基づかずに行った撮像のタイミングを示す。
 なお、通信部307は、ネットワーク404を介してサーバ403と通信可能に接続されており、サーバ403と通信を行い、情報を授受する。例えば、符号化部305は、通信部421から供給される第2の撮像画像を符号化し、その符号化データを記憶部306および通信部307へ供給する。記憶部306は、その第2の撮像画像の符号化データを記憶する。通信部307は、その第2の撮像画像の符号化データを、ネットワーク404を介してサーバ403へ供給する。
 図32は、撮像装置402の主な構成例を示すブロック図である。なお、図32においては、処理部やデータの流れ等の主なものを示しており、図32に示されるものが全てとは限らない。つまり、撮像装置402が、図32においてブロックとして示されていない装置や処理部を有してもよい。また、図32において矢印等として示されていないデータの流れや処理が存在してもよい。
 図32に示されるように、撮像装置402は、操作部331、撮像部332、画像処理部333、通信部431、符号化部432、および記憶部433を有する。操作部331、撮像部332、および画像処理部333は、図26の撮像装置300の場合と同様の処理を行う。
 通信部431は、撮像通信装置401と通信可能に接続され、撮像通信装置401と通信を行い、情報を授受する。例えば、通信部431は、撮像通信装置401から供給される撮像制御情報を取得し、撮像部332へ供給してもよい。また、通信部431は、撮像部332から供給されるカメラ情報を取得し、撮像通信装置401へ供給してもよい。このカメラ情報は、撮像部332の内部パラメータ、外部パラメータ、および画角情報等を含んでもよい。また、通信部431は、撮像部332から供給される撮像タイミング情報を取得し、撮像通信装置401へ供給してもよい。この撮像タイミング情報は、撮像部332が撮像制御情報に基づかずに行った撮像のタイミングを示す。また、通信部431は、画像処理部333から供給される第2の撮像画像を取得し、撮像通信装置401へ供給してもよい。
 符号化部432は、画像処理部333から供給される第2の撮像画像を符号化し、その符号化データを記憶部433へ供給する。記憶部433は、その符号化データを記憶する。
 図33は、サーバ403の主な構成例を示すブロック図である。なお、図33においては、処理部やデータの流れ等の主なものを示しており、図33に示されるものが全てとは限らない。つまり、サーバ403が、図33においてブロックとして示されていない装置や処理部を有してもよい。また、図33において矢印等として示されていないデータの流れや処理が存在してもよい。
 図33に示されるように、サーバ403は、通信部441、復号部442、フォトグラメトリ処理部334、符号化部444、および記憶部445を有する。フォトグラメトリ処理部334は、図26の撮像装置300の場合と同様の構成を有し、同様の処理を行う。
 通信部441は、ネットワーク404を介して撮像通信装置401と通信可能に接続され、撮像通信装置401等の他の装置と通信を行い、情報を授受する。例えば、通信部441は、撮像通信装置401から供給される第2の撮像画像の符号化データを取得し、復号部442へ供給する。また、通信部441は、符号化部444から供給される第2の3Dデータの符号化データを、ネットワーク404を介して他の装置(例えば、撮像通信装置401)へ供給してもよい。
 復号部442は、通信部441から供給された第2の撮像画像の符号化データを復号し、第2の撮像画像を生成(復元)する。復号部442は、その第2の撮像画像をフォトグラメトリ処理部334(SfM341)へ供給する。フォトグラメトリ処理部334は、その第2の撮像画像を用いて第2の3Dモデリング(フォトグラメトリ処理)を実行し、第2の3Dデータを生成する。フォトグラメトリ処理部334(MVS342)は、生成した第2の3Dデータを符号化部444へ供給する。
 符号化部444は、供給された第2の3Dデータを符号化し、その符号化データを記憶部445へ供給する。また、符号化部444は、その第2の3Dデータの符号化データを通信部441へ供給してもよい。記憶部445は、供給された第2の3Dデータの符号化データを記憶する。
 各装置がこのような構成を有することにより、情報処理システム400は、より適切な位置および姿勢で3Dオブジェクトを撮像し、その撮像画像を用いて3Dモデリング(第2の3Dモデリング処理)を実行することができる。したがって、情報処理システム400は、3Dモデリングの負荷の増大を抑制しながら、より高精度な3Dデータを生成することができる。また、情報処理システム400は、ユーザがより適切な位置および姿勢で第2の撮像を行うことができるように案内情報を出力することができる。つまり、情報処理システム400は、その撮像画像を用いて3Dモデリング(第2の3Dモデリング処理)を実行することができる。したがって、情報処理システム400は、3Dモデリングの負荷の増大を抑制しながら、より高精度な3Dデータを生成することができる。つまり、ユーザは、3Dモデリングをより容易に行うことができる。
  <3Dモデリング処理の流れ>
 この情報処理システム400により実行される3Dモデリング処理の流れの例を図34および図35のフローチャートを参照して説明する。
 3Dモデリング処理が開始されると、図34のステップS401において、撮像通信装置401のデプスセンサ311、撮像部312、およびIMU313は、深度、撮像画像、慣性情報を取得する。
 ステップS402において、撮像通信装置401のリアルタイム3Dモデリング処理部314は、リアルタイム3Dモデリング処理を実行し、第1の3Dデータを生成する。このリアルタイム3Dモデリング処理は、図28の例と同様に実行される。
 ステップS403において、撮像通信装置401のスコアリング処理部302は、これまでに行われた第2の撮像に基づいて第1の3Dデータをスコアリングする。
 ステップS404において、撮像通信装置401の撮像案内出力制御部308は、スコアリング結果や姿勢情報等に基づいて第2の撮像のための撮像案内(案内情報)を生成する。出力部309は、その撮像案内(案内情報)を出力する。
 ステップS405において、撮像通信装置401の撮像制御部303は、スコアリング結果や姿勢情報等に基づいてフォトグラメトリ用撮像(第2の撮像)を制御する撮像制御情報を生成する。通信部421は、その撮像制御情報を撮像装置402へ供給する。撮像装置402の通信部431は、ステップS411においてその撮像制御情報を取得する。
 ステップS412において、撮像装置402の撮像部332は、その制御に従って撮像し(第2の撮像を行い)、第2の撮像画像を生成する。画像処理部333は、その第2の撮像画像に対して所定の画像処理を行う。
 ステップS413において、撮像装置402の通信部431は、その第2の撮像画像を撮像通信装置401へ供給する。撮像通信装置401の通信部421は、ステップS406においてその第2の撮像画像を取得する。
 また、ステップS414において、撮像装置402の通信部431は、撮像部332のカメラ情報や撮像タイミング情報を撮像通信装置401へ供給する。撮像通信装置401の通信部421は、ステップS407においてそのカメラ情報や撮像タイミング情報を取得する。
 図35のステップS441において、撮像装置402の符号化部432は、第2の撮像画像を符号化する。記憶部433は、その第2の撮像画像の符号化データを記憶する。
 ステップS431において、撮像通信装置401の符号化部305は、第2の撮像画像を符号化する。通信部307は、第2の撮像画像の符号化データをサーバ403へ供給する。サーバ403の通信部441は、ステップS451においてその第2の撮像画像の符号化データを取得する。復号部442は、その符号化データを復号し、第2の撮像画像を生成(復元)する。
 ステップS452において、サーバ403のフォトグラメトリ処理部334は、フォトグラメトリ処理を実行し、第2の3Dデータを生成する。このフォトグラメトリ処理は、図29の例と同様に実行される。
 ステップS453において、サーバ403の符号化部444は、その第2の3Dデータを符号化する。
 ステップS454において、サーバ403の記憶部445は、その符号化データを記憶する。また、通信部441は、その符号化データを他の装置(例えば撮像通信装置401等)へ送信する。
 また、ステップS432において、撮像通信装置401の撮像制御部303は、フォトグラメトリ用撮像(第2の撮像)を終了するか否かを判定する。フォトグラメトリ用撮像を終了しないと判定された場合、処理は図34のステップS403に戻る。また、図35のステップS432においてフォトグラメトリ用撮像を終了すると判定された場合、3Dモデリング処理が終了する。
 このように各処理を実行することにより、情報処理システム400は、より適切な位置および姿勢で3Dオブジェクトを撮像し、その撮像画像を用いて3Dモデリング(第2の3Dモデリング処理)を実行することができる。したがって、情報処理システム400は、3Dモデリングの負荷の増大を抑制しながら、より高精度な3Dデータを生成することができる。また、情報処理システム400は、ユーザがより適切な位置および姿勢で第2の撮像を行うことができるように案内情報を出力することができる。つまり、情報処理システム400は、その撮像画像を用いて3Dモデリング(第2の3Dモデリング処理)を実行することができる。したがって、情報処理システム400は、3Dモデリングの負荷の増大を抑制しながら、より高精度な3Dデータを生成することができる。つまり、ユーザは、3Dモデリングをより容易に行うことができる。
  <情報処理システム2>
 なお、情報処理システム400において、スコアリング処理をサーバ403で行ってもよい。
 その場合の撮像通信装置401の主な構成例を図36に示す。なお、図36においては、処理部やデータの流れ等の主なものを示しており、図36に示されるものが全てとは限らない。つまり、撮像通信装置401が、図36においてブロックとして示されていない装置や処理部を有してもよい。また、図36において矢印等として示されていないデータの流れや処理が存在してもよい。
 図36に示されるように、この場合の撮像通信装置401は、図31の構成からスコアリング処理部302が省略されている。この場合、通信部307は、撮像制御部303から供給される撮像視点情報をサーバ403へ供給する。
 また、この場合、リアルタイム3Dモデリング処理部314(メッシュ生成部323)は、生成した第1の3Dデータを符号化部305へ供給する。符号化部305は、その第1の3Dデータを符号化し、その符号化データを通信部307へ供給する。通信部307は、符号化部305から供給される第1の3Dデータの符号化データをサーバ403へ供給する。
 また、通信部307は、サーバ403(のスコアリング処理部302)により導出されたスコアリング結果を取得し、撮像制御部303および撮像案内出力制御部308へ供給する。
 また、通信部307は、図32の場合と同様に、符号化部305から供給される第2の撮像画像の符号化データをサーバ403へ供給する。
 また、この場合、通信部421は、撮像装置402から供給される(撮像部332の)カメラ情報を取得し、符号化部305へ供給する。符号化部305は、そのカメラ情報を符号化し、通信部307へ供給する。通信部307は、そのカメラ情報の符号化データをサーバ403へ供給する。
 図37は、この場合のサーバ403の主な構成例を示すブロック図である。なお、図37においては、処理部やデータの流れ等の主なものを示しており、図37に示されるものが全てとは限らない。つまり、サーバ403が、図37においてブロックとして示されていない装置や処理部を有してもよい。また、図37において矢印等として示されていないデータの流れや処理が存在してもよい。
 図37に示されるように、この場合、サーバ403は、図33の構成に加え、スコアリング処理部302を有する。この場合、通信部441は、撮像通信装置401から供給される第1の3Dデータの符号化データを取得し、復号部442へ供給する。復号部442は、その符号化データを復号し、第1の3Dデータを生成(復元)する。復号部442は、その第1の3Dデータをスコアリング処理部302へ供給する。
 また、通信部441は、撮像通信装置401から供給される撮像視点情報を取得し、復号部442へ供給する。復号部442は、その撮像制御情報をスコアリング処理部302へ供給する。
 また、通信部441は、撮像通信装置401から供給されるカメラ情報の符号化データを取得し、復号部442へ供給する。復号部442は、その符号化データを復号し、カメラ情報を生成(復元)する。復号部442は、そのカメラ情報をスコアリング処理部302へ供給する。
 また、通信部441は、図33の場合と同様に、撮像通信装置401から供給される第2の撮像画像の符号化データを取得し、復号部442へ供給する。復号部442は、その符号化データを復号し、第2の撮像画像を生成(復元)する。復号部442は、その第2の撮像画像をフォトグラメトリ処理部334へ供給する。
 この場合も、スコアリング処理部302は、供給された第1の3Dデータや撮像視点情報に基づいて図4のスコアリング処理102を行い、スコアリング結果を導出する。また、スコアリング処理部302は、カメラ情報に基づいてそのスコアリング処理102を行ってもよい。スコアリング処理部302は、そのスコアリング結果を符号化部444へ供給する。符号化部444は、そのスコアリング結果を通信部441へ供給する。通信部441は、そのスコアリング結果を撮像通信装置401へ供給する。
 その他の処理は、図33の場合と同様である。
 各装置がこのような構成を有することにより、情報処理システム400は、この場合も、より適切な位置および姿勢で3Dオブジェクトを撮像し、その撮像画像を用いて3Dモデリング(第2の3Dモデリング処理)を実行することができる。したがって、情報処理システム400は、3Dモデリングの負荷の増大を抑制しながら、より高精度な3Dデータを生成することができる。また、情報処理システム400は、ユーザがより適切な位置および姿勢で第2の撮像を行うことができるように案内情報を出力することができる。つまり、情報処理システム400は、その撮像画像を用いて3Dモデリング(第2の3Dモデリング処理)を実行することができる。したがって、情報処理システム400は、3Dモデリングの負荷の増大を抑制しながら、より高精度な3Dデータを生成することができる。つまり、ユーザは、3Dモデリングをより容易に行うことができる。
  <3Dモデリング処理の流れ>
 この場合の情報処理システム400により実行される3Dモデリング処理の流れの例を図38および図39のフローチャートを参照して説明する。
 3Dモデリング処理が開始されると、図38のステップS501において、撮像通信装置401のデプスセンサ311、撮像部312、およびIMU313は、深度、撮像画像、慣性情報を取得する。
 ステップS502において、撮像通信装置401のリアルタイム3Dモデリング処理部314は、リアルタイム3Dモデリング処理を実行し、第1の3Dデータを生成する。このリアルタイム3Dモデリング処理は、図28の例と同様に実行される。
 ステップS503において、撮像通信装置401の通信部307は、生成された第1の3Dデータをサーバ403へ供給する。サーバ403の通信部441は、ステップS521においてその第1の3Dデータを取得する。
 ステップS522において、サーバ403のスコアリング処理部302は、これまでに行われた第2の撮像に基づいて第1の3Dデータをスコアリングする。
 ステップS523において、サーバ403の通信部441は、そのスコアリング結果を撮像通信装置401へ供給する。撮像通信装置401の通信部307は、ステップS504においてそのスコアリング結果を取得する。
 ステップS505において、撮像通信装置401の撮像案内出力制御部308は、スコアリング結果や姿勢情報等に基づいて第2の撮像のための撮像案内(案内情報)を生成する。出力部309は、その撮像案内(案内情報)を出力する。
 ステップS506において、撮像通信装置401の撮像制御部303は、スコアリング結果や姿勢情報等に基づいてフォトグラメトリ用撮像(第2の撮像)を制御する撮像制御情報を生成する。通信部421は、その撮像制御情報を撮像装置402へ供給する。撮像装置402の通信部431は、ステップS511においてその撮像制御情報を取得する。
 また、撮像通信装置401の通信部307は、ステップS507において、撮像視点情報をサーバ403へ供給する。サーバ403の通信部441は、ステップS524においてその撮像視点情報を取得する。
 図39のステップS541において、撮像装置402の撮像部332は、撮像制御情報に従って撮像し(第2の撮像を行い)、第2の撮像画像を生成する。画像処理部333は、その第2の撮像画像に対して所定の画像処理を行う。
 ステップS542において、撮像装置402の通信部431は、その第2の撮像画像を撮像通信装置401へ供給する。撮像通信装置401の通信部421は、ステップS531においてその第2の撮像画像を取得する。
 また、ステップS543において、撮像装置402の通信部431は、撮像部332のカメラ情報や撮像タイミング情報を撮像通信装置401へ供給する。撮像通信装置401の通信部421は、ステップS532においてそのカメラ情報や撮像タイミング情報を取得する。
 ステップS544において、撮像装置402の符号化部432は、第2の撮像画像を符号化する。記憶部433は、その第2の撮像画像の符号化データを記憶する。
 ステップS533において、撮像通信装置401の符号化部305は、第2の撮像画像を符号化する。通信部307は、第2の撮像画像の符号化データをサーバ403へ供給する。サーバ403の通信部441は、ステップS551においてその第2の撮像画像の符号化データを取得する。復号部442は、その符号化データを復号し、第2の撮像画像を生成(復元)する。
 ステップS552において、サーバ403のフォトグラメトリ処理部334は、フォトグラメトリ処理を実行し、第2の3Dデータを生成する。このフォトグラメトリ処理は、図29の例と同様に実行される。
 ステップS553において、サーバ403の符号化部444は、その第2の3Dデータを符号化する。
 ステップS554において、サーバ403の記憶部445は、その符号化データを記憶する。また、通信部441は、その符号化データを他の装置(例えば撮像通信装置401等)へ送信する。
 また、ステップS534において、撮像通信装置401の撮像制御部303は、フォトグラメトリ用撮像(第2の撮像)を終了するか否かを判定する。フォトグラメトリ用撮像を終了しないと判定された場合、処理は図38のステップS522に戻る。また、図39のステップS534においてフォトグラメトリ用撮像を終了すると判定された場合、3Dモデリング処理が終了する。
 このように各処理を実行することにより、情報処理システム400は、この場合も、より適切な位置および姿勢で3Dオブジェクトを撮像し、その撮像画像を用いて3Dモデリング(第2の3Dモデリング処理)を実行することができる。したがって、情報処理システム400は、3Dモデリングの負荷の増大を抑制しながら、より高精度な3Dデータを生成することができる。また、情報処理システム400は、ユーザがより適切な位置および姿勢で第2の撮像を行うことができるように案内情報を出力することができる。つまり、情報処理システム400は、その撮像画像を用いて3Dモデリング(第2の3Dモデリング処理)を実行することができる。したがって、情報処理システム400は、3Dモデリングの負荷の増大を抑制しながら、より高精度な3Dデータを生成することができる。つまり、ユーザは、3Dモデリングをより容易に行うことができる。
 <7.付記>
  <コンピュータ>
 上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここでコンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータ等が含まれる。
 図40は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
 図40に示されるコンピュータ900において、CPU(Central Processing Unit)901、ROM(Read Only Memory)902、RAM(Random Access Memory)903は、バス904を介して相互に接続されている。
 バス904にはまた、入出力インタフェース910も接続されている。入出力インタフェース910には、入力部911、出力部912、記憶部913、通信部914、およびドライブ915が接続されている。
 入力部911は、例えば、キーボード、マウス、マイクロホン、タッチパネル、入力端子などよりなる。出力部912は、例えば、ディスプレイ、スピーカ、出力端子などよりなる。記憶部913は、例えば、ハードディスク、RAMディスク、不揮発性のメモリなどよりなる。通信部914は、例えば、ネットワークインタフェースよりなる。ドライブ915は、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリなどのリムーバブル記録媒体921を駆動する。
 以上のように構成されるコンピュータでは、CPU901が、例えば、記憶部913に記憶されているプログラムを、入出力インタフェース910およびバス904を介してRAM903にロードして実行する。これにより、上述した一連の処理が行われる。RAM903には、CPU901が各種の処理を実行する上において必要なデータ等が適宜記憶されてもよい。
 コンピュータが実行するプログラムは、例えば、パッケージメディア等としてのリムーバブル記録媒体921に記録されて適用されてもよい。その場合、プログラムは、ドライブ915に装着されたリムーバブル記録媒体921から読み出され、入出力インタフェース910を介して記憶部913にインストールされてもよい。
 また、このプログラムは、例えば、ローカルエリアネットワーク、インターネット、デジタル衛星放送等といった、有線または無線の任意の伝送媒体を介して提供されてもよい。その場合、プログラムは、通信部914により受信され、入出力インタフェース910を介して記憶部913にインストールされてもよい。
 その他、このプログラムは、予め、ROM902若しくは記憶部913またはその両方にインストールされてもよい。
  <本技術の適用対象>
 本技術は、任意の構成に適用することができる。例えば、本技術は、様々な電子機器に適用され得る。
 また、例えば、本技術は、システムLSI(Large Scale Integration)等としてのプロセッサ(例えばビデオプロセッサ)、複数のプロセッサ等を用いるモジュール(例えばビデオモジュール)、複数のモジュール等を用いるユニット(例えばビデオユニット)、または、ユニットにさらにその他の機能を付加したセット(例えばビデオセット)等、装置の一部の構成として実施することもできる。
 また、例えば、本技術は、複数の装置により構成されるネットワークシステムにも適用することもできる。例えば、本技術を、ネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングとして実施するようにしてもよい。例えば、コンピュータ、AV(Audio Visual)機器、携帯型情報処理端末、IoT(Internet of Things)デバイス等の任意の端末に対して、画像(動画像)に関するサービスを提供するクラウドサービスにおいて本技術を実施するようにしてもよい。
 なお、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、全ての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、および、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
  <その他>
 なお、本明細書において、「関連付ける」という用語は、例えば、一方のデータを処理する際に他方のデータを利用し得る(リンクさせ得る)ようにすることを意味する。つまり、互いに関連付けられたデータは、1つのデータとしてまとめられてもよいし、それぞれ個別のデータとしてもよい。例えば、あるデータに関連付けられた情報は、そのデータとは別の伝送路上で伝送されるようにしてもよい。また、例えば、あるデータに関連付けられた情報は、そのデータとは別の記録媒体(または同一の記録媒体の別の記録エリア)に記録されるようにしてもよい。なお、この「関連付け」は、データ全体でなく、データの一部であってもよい。例えば、動的な3Dデータとその動的な3Dデータに対応する情報とが、複数フレーム、1フレーム、またはフレーム内の一部分などの任意の単位で互いに関連付けられるようにしてもよい。
 なお、本明細書において、「合成する」、「多重化する」、「付加する」、「一体化する」、「含める」、「格納する」、「入れ込む」、「差し込む」、「挿入する」等の用語は、例えば符号化データとメタデータとを1つのデータにまとめるといった、複数の物を1つにまとめることを意味し、上述の「関連付ける」の1つの方法を意味する。
 また、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
 例えば、1つの装置(または処理部)として説明した構成を分割し、複数の装置(または処理部)として構成するようにしてもよい。逆に、以上において複数の装置(または処理部)として説明した構成をまとめて1つの装置(または処理部)として構成されるようにしてもよい。また、各装置(または各処理部)の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置(または処理部)の構成の一部を他の装置(または他の処理部)の構成に含めるようにしてもよい。
 また、例えば、上述したプログラムは、任意の装置において実行されるようにしてもよい。その場合、その装置が、必要な機能(機能ブロック等)を有し、必要な情報を得ることができるようにすればよい。
 また、例えば、1つのフローチャートの各ステップを、1つの装置が実行するようにしてもよいし、複数の装置が分担して実行するようにしてもよい。さらに、1つのステップに複数の処理が含まれる場合、その複数の処理を、1つの装置が実行するようにしてもよいし、複数の装置が分担して実行するようにしてもよい。換言するに、1つのステップに含まれる複数の処理を、複数のステップの処理として実行することもできる。逆に、複数のステップとして説明した処理を1つのステップとしてまとめて実行することもできる。
 また、例えば、コンピュータが実行するプログラムは、プログラムを記述するステップの処理が、本明細書で説明する順序に沿って時系列に実行されるようにしても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで個別に実行されるようにしても良い。つまり、矛盾が生じない限り、各ステップの処理が上述した順序と異なる順序で実行されるようにしてもよい。さらに、このプログラムを記述するステップの処理が、他のプログラムの処理と並列に実行されるようにしても良いし、他のプログラムの処理と組み合わせて実行されるようにしても良い。
 また、例えば、本技術に関する複数の技術は、矛盾が生じない限り、それぞれ独立に単体で実施することができる。もちろん、任意の複数の本技術を併用して実施することもできる。例えば、いずれかの実施の形態において説明した本技術の一部または全部を、他の実施の形態において説明した本技術の一部または全部と組み合わせて実施することもできる。また、上述した任意の本技術の一部または全部を、上述していない他の技術と併用して実施することもできる。
 なお、本技術は以下のような構成も取ることができる。
 (1) 3Dオブジェクトを撮像した第1の撮像により生成された第1の撮像画像に基づいて、前記3Dオブジェクトの3次元形状を表現する第1の3次元形状情報を生成する第1の3Dモデリング処理部と、
 前記第1の3次元形状情報を用いて、これまでに行われた第2の撮像により生成された第2の撮像画像を用いて生成可能な第2の3次元形状情報の精度を評価し、スコアリング結果を生成するスコアリング処理部と、
 前記スコアリング結果に基づいて、前記3Dオブジェクトを撮像する前記第2の撮像を制御する撮像制御部と
 を備える情報処理装置。
 (2) 前記第1の3次元形状情報は、前記第2の3次元形状情報よりも情報量が少なく、かつ、低精度である
 (1)に記載の情報処理装置。
 (3) 前記第1の3Dモデリング処理部は、
  前記第1の撮像画像と前記第1の撮像を行う撮像部の加速度および角速度に基づいて、前記撮像部の位置および姿勢を示す姿勢情報を生成する姿勢情報生成部と、
  前記姿勢情報と前記3Dオブジェクトの深度とに基づいて、前記第1の3次元形状情報を生成する3次元形状生成部と
 を備える(1)または(2)に記載の情報処理装置。
 (4) 前記第1の3次元形状情報は、頂点と接続により前記3Dオブジェクトの3次元形状を示すメッシュと、前記メッシュの表面に適用されるテクスチャとを含む
 (3)に記載の情報処理装置。
 (5) 前記深度を検出する深度検出部と、
 前記撮像部と、
 前記加速度および前記角速度を検出する慣性計測部と
 をさらに備える(3)または(4)に記載の情報処理装置。
 (6) 前記スコアリング処理部は、前記第1の3次元形状情報、並びに、これまでに行われた前記第2の撮像の位置および姿勢に基づいて、前記第1の3次元形状情報の局所毎に前記スコアリング結果を生成する
 (1)乃至(5)のいずれかに記載の情報処理装置。
 (7) 前記第1の3次元形状情報は、頂点と接続により前記3Dオブジェクトの3次元形状を示すメッシュと、前記メッシュの表面に適用されるテクスチャとを含み、
 前記スコアリング処理部は、前記メッシュのポリゴン毎に前記スコアリング結果を生成する
 (6)に記載の情報処理装置。
 (8) 前記撮像制御部は、前記第2の撮像を行う撮像部の位置および姿勢並びに前記スコアリング結果に基づいて、前記第2の撮像を制御する
 (1)乃至(7)のいずれかに記載の情報処理装置。
 (9) 前記撮像部を備える撮像装置と通信する通信部をさらに備え、
 前記撮像制御部は、前記第2の撮像を制御する撮像制御情報を生成し、
 前記通信部は、前記撮像制御情報を前記撮像装置へ供給する
 (8)に記載の情報処理装置。
 (10) 前記通信部は、前記撮像装置から供給される、前記撮像制御情報に基づかない前記第2の撮像のタイミングを示す撮像タイミング情報を取得し、
 前記スコアリング処理部は、前記撮像タイミング情報により示される前記第2の撮像のタイミングに対応する前記撮像装置の位置および姿勢に基づいて前記スコアリング結果を生成する
 (9)に記載の情報処理装置。
 (11) 前記通信部は、前記撮像装置から供給される、前記撮像部に関するカメラ情報を取得し、
 前記スコアリング処理部は、前記カメラ情報に基づいて前記スコアリング結果を生成する
 (9)または(10)に記載の情報処理装置。
 (12) 前記カメラ情報は、前記撮像部の内部パラメータおよび外部パラメータ、並びに、前記第2の撮像画像の画角情報を含む
 (11)に記載の情報処理装置。
 (13) 前記第2の撮像画像を符号化して符号化データを生成する符号化部をさらに備え、
 前記通信部は、前記撮像装置から供給される前記第2の撮像画像を取得し、前記符号化部により生成された前記第2の撮像画像の符号化データを他の情報処理装置へ供給する
 (9)乃至(12)のいずれかに記載の情報処理装置。
 (14) 前記撮像部をさらに備える
 (8)乃至(13)のいずれかに記載の情報処理装置。
 (15) 前記撮像部により生成された前記第2の撮像画像に基づいて、前記第2の3次元形状情報を生成する第2の3Dモデリング処理部をさらに備える
 (14)に記載の情報処理装置。
 (16) 前記第2の3Dモデリング処理部は、
  複数の前記第2の撮像画像の間の対応点の3次元位置を導出する対応点位置導出部と、
  前記対応点の3次元位置に基づいて3次元点を追加する3次元点追加部と
 を備える(15)に記載の情報処理装置。
 (17) 前記第2の3次元形状情報は、頂点と接続により前記3Dオブジェクトの3次元形状を示すメッシュと、前記メッシュの表面に適用されるテクスチャとを含む
 (15)または(16)に記載の情報処理装置。
 (18) 前記第2の3次元形状情報を符号化する符号化部をさらに備える
 (15)乃至(17)のいずれかに記載の情報処理装置。
 (19) 前記スコアリング結果に基づいて、前記3Dオブジェクトを撮像する前記第2の撮像のための案内情報を生成する案内情報出力制御部をさらに備える
 (1)乃至(18)のいずれかに記載の情報処理装置。
 (20) 3Dオブジェクトを撮像した第1の撮像により生成された第1の撮像画像に基づいて、前記3Dオブジェクトの3次元形状を表現する第1の3次元形状情報を生成し、
 前記第1の3次元形状情報を用いて、これまでに行われた第2の撮像により生成された第2の撮像画像を用いて生成可能な第2の3次元形状情報の精度を評価し、スコアリング結果を生成し、
 前記スコアリング結果に基づいて、前記3Dオブジェクトを撮像する前記第2の撮像を制御する
 情報処理方法。
 (21) 3Dオブジェクトを撮像する撮像部と、
 他の情報処理装置と通信する通信部と
 を備え、
 前記通信部は、前記撮像部に関するカメラ情報を前記他の情報処理装置へ供給し、前記他の情報処理装置により前記カメラ情報に基づいて生成された撮像制御情報を取得し、
 前記撮像部は、前記撮像制御情報に基づいて前記3Dオブジェクトを撮像し、前記3Dオブジェクトの3次元形状を表現する3次元形状情報を生成するための撮像画像を生成する
 情報処理装置。
 (22) 前記カメラ情報は、前記撮像部の内部パラメータおよび外部パラメータ、並びに、前記撮像画像の画角情報を含む
 (21)に記載の情報処理装置。
 (23) 前記撮像部は、前記撮像制御情報に基づかずに前記3Dオブジェクトを撮像し、
 前記通信部は、前記撮像制御情報に基づかずに行った撮像のタイミングを示す撮像タイミング情報を前記他の情報処理装置へ供給する
 (21)に記載の情報処理装置。
 (24) 前記通信部は、前記撮像画像を前記他の情報処理装置へ供給する
 (21)または(22)に記載の情報処理装置。
 (25) 前記撮像画像を符号化し、符号化データを生成する符号化部と、
 前記撮像画像の符号化データを記憶する記憶部と
 をさらに備える(21)乃至(24)のいずれかに記載の情報処理装置。
 (26) 3Dオブジェクトを撮像する撮像部に関するカメラ情報を他の情報処理装置へ供給し、前記他の情報処理装置により前記カメラ情報に基づいて生成された撮像制御情報を取得し、
 前記撮像制御情報に基づいて前記3Dオブジェクトを撮像し、前記3Dオブジェクトの3次元形状を表現する3次元形状情報を生成するための撮像画像を生成する
 情報処理方法。
 (31) 情報処理装置と撮像装置を備える情報処理システムであって、
 前記情報処理装置が、
  3Dオブジェクトを撮像した第1の撮像により生成された第1の撮像画像に基づいて、前記3Dオブジェクトの3次元形状を表現する第1の3次元形状情報を生成する第1の3Dモデリング処理部と、
  前記第1の3次元形状情報を用いて、これまでに行われた第2の撮像により生成された第2の撮像画像を用いて生成可能な第2の3次元形状情報の精度を評価し、スコアリング結果を生成するスコアリング処理部と、
  前記撮像装置の位置および姿勢並びに前記スコアリング結果に基づいて、前記3Dオブジェクトを撮像する前記第2の撮像を制御する撮像制御情報を生成する撮像制御部と、
  前記撮像制御情報を前記撮像装置へ供給する第1の通信部と
 を備え、
 前記撮像装置が、
 前記情報処理装置から供給される前記撮像制御情報を取得する第2の通信部と、
 前記撮像制御情報に基づいて前記3Dオブジェクトを撮像し、前記第2の撮像画像を生成する撮像部と
 を備える情報処理システム。
 (41) 3Dオブジェクトを撮像した第1の撮像により生成された第1の撮像画像に基づいて、前記3Dオブジェクトの3次元形状を表現する第1の3次元形状情報を生成する第1の3Dモデリング処理部と、
 前記第1の3次元形状情報を用いて、これまでに行われた第2の撮像により生成された第2の撮像画像を用いて生成可能な第2の3次元形状情報の精度を評価し、スコアリング結果を生成するスコアリング処理部と、
 前記スコアリング結果に基づいて、前記3Dオブジェクトを撮像する前記第2の撮像のための案内情報を生成し、前記案内情報の出力を制御する案内情報出力制御部と
 を備える情報処理装置。
 (42) 前記案内情報出力制御部は、前記案内情報として、前記スコアリング結果を示す画像を生成し、前記画像を表示させる
 (41)に記載の情報処理装置。
 (43) 前記案内情報出力制御部は、前記第2の撮像を行う撮像部の位置および姿勢に基づいて、前記撮像部の画角内についての前記スコアリング結果を示す前記画像を生成し、前記画像を表示させる
 (42)に記載の情報処理装置。
 (44) 前記案内情報出力制御部は、前記撮像部により生成される撮像画像を前記画像に重畳して表示させる
 (43)に記載の情報処理装置。
 (45) 前記案内情報出力制御部は、さらに、前記3Dオブジェクト全体の前記スコアリング結果を示す俯瞰画像を表示させる
 (44)に記載の情報処理装置。
 (46) 前記案内情報出力制御部は、前記案内情報として、複数の前記第2の撮像画像の間で撮像範囲がオーバーラップするオーバーラップ領域を示す画像を生成し、前記画像を表示させる
 (41)乃至(45)のいずれかに記載の情報処理装置。
 (47) 前記案内情報出力制御部は、前記第2の撮像を行う撮像部の位置および姿勢に基づいて、前記撮像部の現在の画角とこれまでに得られた前記第2の撮像画像の撮像範囲との間の前記オーバーラップ領域を示す前記画像を生成し、前記画像を表示させる
 (46)に記載の情報処理装置。
 (48) 前記案内情報出力制御部は、前記撮像部により生成される撮像画像を前記画像に重畳して表示させる
 (47)に記載の情報処理装置。
 (49) 前記案内情報出力制御部は、さらに、前記画角内に占める前記オーバーラップ領域の割合を示すオーバーラップ率を示す画像を表示させる
 (48)に記載の情報処理装置。
 (50) 前記案内情報出力制御部は、前記案内情報として、前記第2の撮像を補助するための撮像補助画像を生成し、前記撮像補助画像を表示させる
 (41)乃至(49)のいずれかに記載の情報処理装置。
 (51) 前記案内情報出力制御部は、前記スコアリング結果に基づいて、推奨する前記第2の撮像の位置および姿勢である推奨撮像位置姿勢を導出し、前記案内情報として、前記推奨撮像位置姿勢を示す推奨撮像位置姿勢案内を表示させる
 (50)に記載の情報処理装置。
 (52) 前記案内情報出力制御部は、前記推奨撮像位置姿勢案内として、前記第2の撮像を行う撮像部の位置および姿勢が前記推奨撮像位置姿勢と同一である場合、前記撮像部の現在の位置および姿勢が前記推奨撮像位置姿勢であることを示す画像を表示させる
 (51)に記載の情報処理装置。
 (53) 前記案内情報出力制御部は、前記推奨撮像位置姿勢案内として、前記第2の撮像を行う撮像部を基準とする前記推奨撮像位置姿勢の相対位置および相対姿勢を示す画像を表示させる
 (51)または(52)に記載の情報処理装置。
 (54) 前記案内情報出力制御部は、前記第2の撮像を行う撮像部により生成される撮像画像を前記推奨撮像位置姿勢案内に重畳して表示させる
 (51)乃至(53)のいずれかに記載の情報処理装置。
 (55) 前記第1の3次元形状情報は、前記第2の3次元形状情報よりも情報量が少なく、かつ、低精度である
 (41)乃至(54)のいずれかに記載の情報処理装置。
 (56) 前記第1の3Dモデリング処理部は、
  前記第1の撮像画像と前記第1の撮像を行う撮像部の加速度および角速度に基づいて、前記撮像部の位置および姿勢を示す姿勢情報を生成する姿勢情報生成部と、
  前記姿勢情報と前記3Dオブジェクトの深度とに基づいて、前記第1の3次元形状情報を生成する3次元形状生成部と
 を備える(41)乃至(55)のいずれかに記載の情報処理装置。
 (57) 前記第1の3次元形状情報は、頂点と接続により前記3Dオブジェクトの3次元形状を示すメッシュと、前記メッシュの表面に適用されるテクスチャとを含む
 (56)に記載の情報処理装置。
 (58) 前記スコアリング処理部は、前記第1の3次元形状情報、並びに、これまでに行われた前記第2の撮像の位置および姿勢に基づいて、前記第1の3次元形状情報の局所毎に前記スコアリング結果を生成する
 (41)乃至(57)のいずれかに記載の情報処理装置。
 (59) 前記第1の3次元形状情報は、頂点と接続により前記3Dオブジェクトの3次元形状を示すメッシュと、前記メッシュの表面に適用されるテクスチャとを含み、
 前記スコアリング処理部は、前記メッシュのポリゴン毎に前記スコアリング結果を生成する
 (58)に記載の情報処理装置。
 (60) 3Dオブジェクトを撮像した第1の撮像により生成された第1の撮像画像に基づいて、前記3Dオブジェクトの3次元形状を表現する第1の3次元形状情報を生成し、
 前記第1の3次元形状情報を用いて、これまでに行われた第2の撮像により生成された第2の撮像画像を用いて生成可能な第2の3次元形状情報の精度を評価し、スコアリング結果を生成し、
 前記スコアリング結果に基づいて、前記3Dオブジェクトを撮像する前記第2の撮像のための案内情報を生成し、前記案内情報の出力を制御する
 情報処理方法。
 101 第1の3Dデータ生成処理, 102 スコアリング処理, 103 第2の3Dモデリング用撮像制御処理, 104 第2の3Dデータ生成処理, 105 第2の3Dモデリング用撮像案内出力処理, 300 撮像装置, 301 第1の3Dデータ生成部, 302 スコアリング処理部, 303 撮像制御部, 304 第2の3Dデータ生成部, 305 符号化部, 306 記憶部, 307 通信部, 308 撮像案内出力制御部, 309 出力部, 311 デプスセンサ, 312 撮像部, 313 IMU, 314 リアルタイム3Dモデリング処理部, 321 SLAM, 322 TSDF更新部, 323 メッシュ生成部, 331 操作部, 332 撮像部, 333 画像処理部, 334 フォトグラメトリ処理部, 341 SfM, 342 MVS, 400 情報処理システム, 401 撮像装置, 402 撮像通信装置, 403 サーバ, 404 ネットワーク, 410 端末装置, 421 通信部, 431 通信部, 432 符号化部, 433 記憶部, 441 通信部, 442 復号部, 444 符号化部, 445 記憶部, 900 コンピュータ

Claims (20)

  1.  3Dオブジェクトを撮像した第1の撮像により生成された第1の撮像画像に基づいて、前記3Dオブジェクトの3次元形状を表現する第1の3次元形状情報を生成する第1の3Dモデリング処理部と、
     前記第1の3次元形状情報を用いて、これまでに行われた第2の撮像により生成された第2の撮像画像を用いて生成可能な第2の3次元形状情報の精度を評価し、スコアリング結果を生成するスコアリング処理部と、
     前記スコアリング結果に基づいて、前記3Dオブジェクトを撮像する前記第2の撮像のための案内情報を生成し、前記案内情報の出力を制御する案内情報出力制御部と
     を備える情報処理装置。
  2.  前記案内情報出力制御部は、前記案内情報として、前記スコアリング結果を示す画像を生成し、前記画像を表示させる
     請求項1に記載の情報処理装置。
  3.  前記案内情報出力制御部は、前記第2の撮像を行う撮像部の位置および姿勢に基づいて、前記撮像部の画角内についての前記スコアリング結果を示す前記画像を生成し、前記画像を表示させる
     請求項2に記載の情報処理装置。
  4.  前記案内情報出力制御部は、前記撮像部により生成される撮像画像を前記画像に重畳して表示させる
     請求項3に記載の情報処理装置。
  5.  前記案内情報出力制御部は、さらに、前記3Dオブジェクト全体の前記スコアリング結果を示す俯瞰画像を表示させる
     請求項4に記載の情報処理装置。
  6.  前記案内情報出力制御部は、前記案内情報として、複数の前記第2の撮像画像の間で撮像範囲がオーバーラップするオーバーラップ領域を示す画像を生成し、前記画像を表示させる
     請求項1に記載の情報処理装置。
  7.  前記案内情報出力制御部は、前記第2の撮像を行う撮像部の位置および姿勢に基づいて、前記撮像部の現在の画角とこれまで得られた前記第2の撮像画像の撮像範囲との間の前記オーバーラップ領域を示す前記画像を生成し、前記画像を表示させる
     請求項6に記載の情報処理装置。
  8.  前記案内情報出力制御部は、前記撮像部により生成される撮像画像を前記画像に重畳して表示させる
     請求項7に記載の情報処理装置。
  9.  前記案内情報出力制御部は、さらに、前記画角内に占める前記オーバーラップ領域の割合を示すオーバーラップ率を示す画像を表示させる
     請求項8に記載の情報処理装置。
  10.  前記案内情報出力制御部は、前記案内情報として、前記第2の撮像を補助するための撮像補助画像を生成し、前記撮像補助画像を表示させる
     請求項1に記載の情報処理装置。
  11.  前記案内情報出力制御部は、前記スコアリング結果に基づいて、推奨する前記第2の撮像の位置および姿勢である推奨撮像位置姿勢を導出し、前記案内情報として、前記推奨撮像位置姿勢を示す推奨撮像位置姿勢案内を表示させる
     請求項10に記載の情報処理装置。
  12.  前記案内情報出力制御部は、前記推奨撮像位置姿勢案内として、前記第2の撮像を行う撮像部の位置および姿勢が前記推奨撮像位置姿勢と同一である場合、前記撮像部の現在の位置および姿勢が前記推奨撮像位置姿勢であることを示す画像を表示させる
     請求項11に記載の情報処理装置。
  13.  前記案内情報出力制御部は、前記推奨撮像位置姿勢案内として、前記第2の撮像を行う撮像部を基準とする前記推奨撮像位置姿勢の相対位置および相対姿勢を示す画像を表示させる
     請求項11に記載の情報処理装置。
  14.  前記案内情報出力制御部は、前記第2の撮像を行う撮像部により生成される撮像画像を前記推奨撮像位置姿勢案内に重畳して表示させる
     請求項11に記載の情報処理装置。
  15.  前記第1の3次元形状情報は、前記第2の3次元形状情報よりも情報量が少なく、かつ、低精度である
     請求項1に記載の情報処理装置。
  16.  前記第1の3Dモデリング処理部は、
      前記第1の撮像画像と前記第1の撮像を行う撮像部の加速度および角速度に基づいて、前記撮像部の位置および姿勢を示す姿勢情報を生成する姿勢情報生成部と、
      前記姿勢情報と前記3Dオブジェクトの深度とに基づいて、前記第1の3次元形状情報を生成する3次元形状生成部と
     を備える請求項1に記載の情報処理装置。
  17.  前記第1の3次元形状情報は、頂点と接続により前記3Dオブジェクトの3次元形状を示すメッシュと、前記メッシュの表面に適用されるテクスチャとを含む
     請求項16に記載の情報処理装置。
  18.  前記スコアリング処理部は、前記第1の3次元形状情報、並びに、これまでに行われた前記第2の撮像の位置および姿勢に基づいて、前記第1の3次元形状情報の局所毎に前記スコアリング結果を生成する
     請求項1に記載の情報処理装置。
  19.  前記第1の3次元形状情報は、頂点と接続により前記3Dオブジェクトの3次元形状を示すメッシュと、前記メッシュの表面に適用されるテクスチャとを含み、
     前記スコアリング処理部は、前記メッシュのポリゴン毎に前記スコアリング結果を生成する
     請求項18に記載の情報処理装置。
  20.  3Dオブジェクトを撮像した第1の撮像により生成された第1の撮像画像に基づいて、前記3Dオブジェクトの3次元形状を表現する第1の3次元形状情報を生成し、
     前記第1の3次元形状情報を用いて、これまでに行われた第2の撮像により生成された第2の撮像画像を用いて生成可能な第2の3次元形状情報の精度を評価し、スコアリング結果を生成し、
     前記スコアリング結果に基づいて、前記3Dオブジェクトを撮像する前記第2の撮像のための案内情報を生成し、前記案内情報の出力を制御する
     情報処理方法。
PCT/JP2023/034723 2022-10-14 2023-09-25 情報処理装置および方法 Ceased WO2024080121A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP23877127.3A EP4604061A4 (en) 2022-10-14 2023-09-25 INFORMATION PROCESSING DEVICE AND METHOD
US19/116,388 US20260104255A1 (en) 2022-10-14 2023-09-25 Information processing device and method
JP2024551378A JPWO2024080121A1 (ja) 2022-10-14 2023-09-25

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2022165128 2022-10-14
JP2022-165128 2022-10-14

Publications (1)

Publication Number Publication Date
WO2024080121A1 true WO2024080121A1 (ja) 2024-04-18

Family

ID=90669059

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/034723 Ceased WO2024080121A1 (ja) 2022-10-14 2023-09-25 情報処理装置および方法

Country Status (4)

Country Link
US (1) US20260104255A1 (ja)
EP (1) EP4604061A4 (ja)
JP (1) JPWO2024080121A1 (ja)
WO (1) WO2024080121A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7788025B1 (ja) * 2025-04-01 2025-12-17 株式会社 日立産業制御ソリューションズ 画像処理装置、画像処理システム、及び画像処理方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018063693A (ja) 2016-10-12 2018-04-19 キヤノン株式会社 画像処理装置、画像処理方法およびプログラム
JP2019092007A (ja) * 2017-11-13 2019-06-13 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム
JP2020166498A (ja) * 2019-03-29 2020-10-08 凸版印刷株式会社 情報処理装置、三次元モデルの生成方法、及びプログラム
JP2022015115A (ja) * 2020-07-08 2022-01-21 キヤノン株式会社 画像処理装置、画像処理方法およびプログラム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6821326B2 (ja) * 2016-05-12 2021-01-27 キヤノン株式会社 情報処理装置、計測システム、情報処理方法およびプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018063693A (ja) 2016-10-12 2018-04-19 キヤノン株式会社 画像処理装置、画像処理方法およびプログラム
JP2019092007A (ja) * 2017-11-13 2019-06-13 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム
JP2020166498A (ja) * 2019-03-29 2020-10-08 凸版印刷株式会社 情報処理装置、三次元モデルの生成方法、及びプログラム
JP2022015115A (ja) * 2020-07-08 2022-01-21 キヤノン株式会社 画像処理装置、画像処理方法およびプログラム

Non-Patent Citations (1)

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

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7788025B1 (ja) * 2025-04-01 2025-12-17 株式会社 日立産業制御ソリューションズ 画像処理装置、画像処理システム、及び画像処理方法

Also Published As

Publication number Publication date
EP4604061A4 (en) 2026-01-14
US20260104255A1 (en) 2026-04-16
EP4604061A1 (en) 2025-08-20
JPWO2024080121A1 (ja) 2024-04-18

Similar Documents

Publication Publication Date Title
US8928736B2 (en) Three-dimensional modeling apparatus, three-dimensional modeling method and computer-readable recording medium storing three-dimensional modeling program
WO2024080120A1 (ja) 情報処理装置および方法、並びに、情報処理システム
KR101560508B1 (ko) 3차원 이미지 모델 조정을 위한 방법 및 장치
EP3994660A1 (en) Method and system for image generation
US20120069018A1 (en) Ar process apparatus, ar process method and storage medium
WO2019164498A1 (en) Methods, devices and computer program products for global bundle adjustment of 3d images
WO2009091029A1 (ja) 顔姿勢推定装置、顔姿勢推定方法、及び、顔姿勢推定プログラム
US12026823B2 (en) Volumetric imaging
CN110969706B (zh) 增强现实设备及其图像处理方法、系统以及存储介质
WO2024135335A1 (ja) 情報処理装置および方法
US20250168315A1 (en) Multiview interactive digital media representation inventory verification
JP5263437B2 (ja) 三次元モデリング装置、三次元モデリング方法、ならびに、プログラム
WO2024080121A1 (ja) 情報処理装置および方法
WO2024150626A1 (ja) 情報処理装置および方法
JP2011146762A (ja) 立体モデル生成装置
JP2023047882A (ja) 画像生成装置、画像生成方法およびプログラム
WO2024135336A1 (ja) 情報処理装置および方法
WO2024135337A1 (ja) 情報処理装置および方法
US20260127815A1 (en) Information processing device and method, and information processing system
WO2024181137A1 (ja) 情報処理装置および方法
KR20220071935A (ko) 광학 흐름을 이용한 고해상도 깊이 영상 추정 방법 및 장치
US12423934B2 (en) Image processing apparatus, image processing method, and storage medium
US20250061651A1 (en) Information processing device, information processing method, and program
US20240054668A1 (en) Image processing apparatus, image processing method, and storage medium
WO2025028170A1 (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: 23877127

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2024551378

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 2023877127

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2023877127

Country of ref document: EP

Effective date: 20250514

WWP Wipo information: published in national office

Ref document number: 2023877127

Country of ref document: EP