WO2023195056A1 - 画像処理方法、ニューラルネットワークの学習方法、三次元画像表示方法、画像処理システム、ニューラルネットワークの学習システム、及び三次元画像表示システム - Google Patents

画像処理方法、ニューラルネットワークの学習方法、三次元画像表示方法、画像処理システム、ニューラルネットワークの学習システム、及び三次元画像表示システム Download PDF

Info

Publication number
WO2023195056A1
WO2023195056A1 PCT/JP2022/017069 JP2022017069W WO2023195056A1 WO 2023195056 A1 WO2023195056 A1 WO 2023195056A1 JP 2022017069 W JP2022017069 W JP 2022017069W WO 2023195056 A1 WO2023195056 A1 WO 2023195056A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
information
captured images
dimensional
learning
Prior art date
Application number
PCT/JP2022/017069
Other languages
English (en)
French (fr)
Inventor
幸宏 笹川
Original Assignee
株式会社ソシオネクスト
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社ソシオネクスト filed Critical 株式会社ソシオネクスト
Priority to PCT/JP2022/017069 priority Critical patent/WO2023195056A1/ja
Publication of WO2023195056A1 publication Critical patent/WO2023195056A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics

Definitions

  • the present invention relates to an image processing method, a neural network learning method, a three-dimensional image display method, an image processing system, a neural network learning system, and a three-dimensional image display system.
  • An image processing system uses a plurality of captured images captured by a plurality of cameras to synthesize a free viewpoint image, which is a three-dimensional image that can be displayed by freely moving the viewpoint.
  • Non-patent Document 1 a technique is known in which a bowl-shaped (mortar-shaped) projection plane is defined in advance, and images captured by multiple cameras are mapped onto the projection plane to synthesize free-viewpoint images (Non-patent Document 1). reference).
  • a projection plane is calculated using distance information measured with a three-dimensional sensing device such as LiDAR (Laser Imaging Detection and Ranging), and images captured by multiple cameras are mapped onto the projection plane to create a free-viewpoint image.
  • LiDAR Laser Imaging Detection and Ranging
  • Non-Patent Document 1 has a problem in that distortion occurs in the composite image projected onto the projection plane due to mismatch between the predefined projection plane and the actual three-dimensional structure.
  • Non-Patent Document 2 by adding a three-dimensional sensing device such as LiDAR, it is possible to suppress distortion of the composite image, but adding a three-dimensional sensing device increases the cost. There is a problem in that the amount increases.
  • An embodiment of the present invention has been made in view of the above problems, and is an image processing system that synthesizes a free viewpoint image using a plurality of captured images, without using a three-dimensional sensing device. To synthesize free viewpoint images with less distortion.
  • an image processing method for synthesizing a free viewpoint image using a plurality of captured images on a display projection plane based on viewpoint information, the method comprising: an image acquisition step of acquiring the plurality of captured images by each of a plurality of cameras; and inputting the plurality of captured images and the viewpoint information, and calculating a difference between a predefined bowl-shaped default projection plane and the display projection plane.
  • a residual estimation step of estimating, by machine learning, residual information of a projection plane indicating A computer performs a mapping step to obtain the free viewpoint image.
  • an image processing system that synthesizes free viewpoint images using a plurality of captured images, it becomes possible to synthesize free viewpoint images with less distortion without using a three-dimensional sensing device. .
  • FIG. 1 is a diagram illustrating an example of a system configuration of an image processing system according to an embodiment.
  • FIG. 2 is a diagram for explaining an overview of image processing according to an embodiment.
  • FIG. 1 is a diagram illustrating an example of a hardware configuration of a computer according to an embodiment.
  • FIG. 1 is a diagram illustrating an example of a functional configuration of an image processing device according to an embodiment.
  • 3 is a flowchart illustrating an example of image processing according to an embodiment.
  • FIG. 3 is a diagram for explaining an overview of learning processing according to the first embodiment.
  • FIG. 2 is a diagram illustrating an example of the functional configuration of the image processing device (during learning) according to the first embodiment.
  • 7 is a flowchart illustrating an example of learning processing according to the first embodiment.
  • FIG. 1 is a diagram illustrating an example of a system configuration of an image processing system according to an embodiment.
  • FIG. 2 is a diagram for explaining an overview of image processing according to an embodiment.
  • FIG. 1
  • FIG. 7 is a diagram for explaining an overview of learning processing according to the second embodiment.
  • FIG. 7 is a diagram illustrating an example of a functional configuration of an image processing device (during learning) according to a second embodiment.
  • 7 is a flowchart illustrating an example of learning processing according to the second embodiment.
  • 7 is a flowchart illustrating an example of residual information calculation processing according to the second embodiment.
  • FIG. 7 is a diagram illustrating a configuration example of a residual estimation model according to a third embodiment.
  • FIG. 7 is a diagram illustrating an example of a functional configuration of an image processing device according to a third embodiment.
  • FIG. 7 is a diagram for explaining an overview of learning processing according to a third embodiment.
  • 12 is a flowchart (1) illustrating an example of learning processing according to the third embodiment.
  • FIG. 12 is a flowchart (2) illustrating an example of learning processing according to the third embodiment.
  • FIG. 7 is a diagram illustrating an example of a system configuration of a three-dimensional image display system according to a fourth embodiment.
  • FIG. 7 is a diagram illustrating an example of the hardware configuration of an edge device according to a fourth embodiment.
  • FIG. 7 is a diagram illustrating an example of a functional configuration of a three-dimensional image display system according to a fourth embodiment.
  • FIG. 7 is a sequence diagram showing an example of three-dimensional image display processing according to the fourth embodiment.
  • the image processing system according to the present embodiment is a system that uses a plurality of captured images captured by a plurality of cameras to synthesize a free viewpoint image, which is a three-dimensional image that can be displayed by freely moving the viewpoint.
  • the image processing system according to the present embodiment can be applied, for example, to monitoring the surroundings of a moving object such as a car, robot, or drone, or to AR (Augmented Reality)/VR (Virtual Reality) technology.
  • AR Augmented Reality
  • VR Virtual Reality
  • FIG. 1 is a diagram illustrating an example of a system configuration of an image processing system according to an embodiment.
  • the image processing system 100 includes, for example, an image processing device 10 mounted on a vehicle 1 such as an automobile, a plurality of cameras 12, a display device 16, and the like.
  • the above components are communicably connected, for example, by an in-vehicle network, a wired cable, or wireless communication.
  • the vehicle 1 is an example of a moving body equipped with the image processing system 100 according to the present embodiment.
  • the moving body is not limited to the vehicle 1, and may be, for example, a robot that moves with legs or the like, various devices having a movement function such as a manned or unmanned aircraft, or a machine.
  • the camera 12 is an imaging device that images the surroundings of the vehicle 1 and obtains a captured image.
  • the vehicle 1 is provided with four cameras 12A to 12D facing different imaging areas E1 to E4.
  • "camera 12" will be used to refer to any camera among the four cameras 12A to 12D.
  • imaging area E is used.
  • the number of cameras 12 and imaging areas E shown in FIG. 1 is an example, and may be two or more other numbers.
  • the camera 12A is provided facing the imaging area E1 in front of the vehicle 1, and the camera 12B is provided facing the imaging area E2 on the side of the vehicle 1. Further, the camera 12C is provided toward an imaging region E3 on another side of the vehicle 1, and the camera 12D is provided toward an imaging region E4 at the rear of the vehicle 1.
  • the display device 16 is, for example, a display device such as an LCD (Liquid Crystal Display) or an organic EL (Electro-Luminescence), or various apparatuses or devices that have a display function to display various information.
  • a display device such as an LCD (Liquid Crystal Display) or an organic EL (Electro-Luminescence), or various apparatuses or devices that have a display function to display various information.
  • the image processing device 10 is a computer that executes image processing to synthesize a free viewpoint image using a plurality of captured images captured by the cameras 12A to 12D on a display projection surface by executing a predetermined program.
  • a free viewpoint image is a three-dimensional image that can be displayed by freely moving the viewpoint using a plurality of captured images captured by a plurality of cameras.
  • FIG. 2 is a diagram for explaining an overview of image processing according to one embodiment.
  • the image processing device 10 has projection plane information 230 that is information about a bowl-shaped (or mortar-shaped) projection plane (hereinafter referred to as a default projection plane 231) defined in advance around the vehicle 1.
  • projection plane information 230 is information about a bowl-shaped (or mortar-shaped) projection plane (hereinafter referred to as a default projection plane 231) defined in advance around the vehicle 1.
  • the image processing device 10 inputs a plurality of captured images 210 obtained by capturing the surroundings of the vehicle 1 with a plurality of cameras 12 and viewpoint information 240 indicating the viewpoint of the free viewpoint image into the residual estimation model, and performs machine learning.
  • the residual information 220 of the projection plane is estimated (step S1).
  • the residual estimation model uses a plurality of captured images 210 and viewpoint information 240 as input data, and calculates the difference between a projection plane (hereinafter referred to as a display projection plane) on which a free viewpoint image is projected and a default projection plane 231.
  • This is a trained neural network that outputs projection plane residual information 220 indicating .
  • the image processing device 10 uses projection plane information 230 that is information about the default projection plane 231, residual information 220, and viewpoint information 240 to provide a free viewpoint that maps the plurality of captured images 210 to the display projection plane.
  • An image 250 is generated (step S2).
  • the residual information 220 is information indicating the difference between the display projection plane and the default projection plane 231, so the image processing device 10 calculates the display projection plane from the projection plane information 230 and the residual information 220. The surface can be calculated.
  • the residual estimation model calculates a default projection plane 231 and Machine learning has been performed in advance to estimate the difference from the display projection plane.
  • the image processing system 100 that synthesizes a free viewpoint image 250 using a plurality of captured images 210, it is possible to synthesize free viewpoint images with less distortion without using a three-dimensional sensing device. I can do it.
  • the image processing system 100 includes a plurality of cameras 12, a display device 16, etc., and may be a wearable device such as AR goggles or VR goggles worn by a user.
  • the image processing device 10 includes, for example, the hardware configuration of a computer 300 as shown in FIG.
  • FIG. 3 is a diagram illustrating an example of the hardware configuration of a computer according to an embodiment.
  • the computer 300 includes, for example, a processor 301, a memory 302, a storage device 303, an I/F (Interface) 304, an input device 305, an output device 306, a communication device 307, a bus 308, and the like.
  • the processor 301 is, for example, an arithmetic device such as a CPU (Central Processing Unit) and a GPU (Graphics Processing Unit) that execute predetermined processing by executing a program stored in a storage medium such as the storage device 303.
  • the memory 302 includes, for example, RAM (Random Access Memory), which is a volatile memory used as a work area for the processor 301, and ROM (Read Only Memory) etc.
  • the storage device 303 is, for example, a large-capacity nonvolatile storage device such as an SSD (Solid State Drive) or an HDD (Hard Disk Drive).
  • I/F 304 includes various interfaces for connecting external devices such as camera 12 and display device 16 to computer 300, for example.
  • the input device 305 includes various devices (for example, a keyboard, a touch panel, a pointing device, a microphone, a switch, a button, a sensor, etc.) that accept input from the outside.
  • Output device 206 includes various devices (eg, displays, speakers, indicators, etc.) that perform external output.
  • Communication device 307 includes various communication devices for communicating with other devices via wired or wireless networks.
  • the bus 308 is connected to each of the above components and transmits, for example, address signals, data signals, various control signals, and the like.
  • FIG. 4 is a diagram illustrating an example of a functional configuration of an image processing apparatus according to an embodiment.
  • the image processing device 10 executes an image processing program in the processor 301 in FIG.
  • a storage unit 406 and the like are implemented. Note that at least some of the above functional configurations may be realized by hardware.
  • the image acquisition unit 401 executes image acquisition processing to acquire a plurality of captured images 210 using each of the plurality of cameras 12. For example, the image acquisition unit 401 acquires a plurality of captured images 210 captured around the vehicle 1 using a plurality of cameras 12A, 12B, 12C, and 12D.
  • the residual estimation unit 402 inputs the plurality of captured images 210 acquired by the image acquisition unit 401 and the viewpoint information 240, and generates a projection indicating the difference between a predefined bowl-shaped default projection plane 231 and a display projection plane. Residual estimation processing is performed to estimate the residual information 220 of the surface by machine learning.
  • the residual estimation unit 402 determines a default projection plane based on the plurality of learning images, the viewpoint information 240, and the three-dimensional information of one or more three-dimensional objects shown in the plurality of learning images.
  • the residual estimation model 410 is trained to infer the difference between 231 and the display projection surface.
  • the residual estimation model 410 receives a plurality of captured images 210 and viewpoint information 240 as input data, and outputs projection plane residual information 220 indicating the difference between the display projection plane on which the free viewpoint image is projected and the default projection plane 231.
  • This is a trained neural network (hereinafter referred to as NN).
  • a trained NN is referred to as a residual estimation model 410.
  • the residual estimation unit 402 inputs the plurality of captured images 210 acquired by the image acquisition unit 401 and the viewpoint information 240 into the residual estimation model 410, and acquires the residual information 220 output from the residual estimation model 410.
  • the viewpoint information 240 is coordinate information indicating the viewpoint of the free viewpoint image generated by the image processing device 10, and is expressed by, for example, orthogonal coordinates, polar coordinates, or the like.
  • the three-dimensional information is, for example, three-dimensional point cloud information measured with a three-dimensional sensing device such as LiDAR (Laser Imaging Detection and Ranging), or a depth image containing depth information of objects around the vehicle 1. This data includes three-dimensional distance information.
  • the mapping unit 403 uses the projection plane information 230 regarding the default projection plane 231 and the residual information 220 estimated by the residual estimation unit 402 to map the plurality of acquired captured images 210 onto the display projection plane and generate a free viewpoint.
  • a mapping process is performed to obtain the image 250.
  • the residual information 220 is information indicating the difference between the display projection plane and the default projection plane 231, so the mapping unit 403 combines the projection plane information 230, which is information about the default projection plane 231, and the residual information 220. From this, the display projection plane can be calculated. Further, for the process of mapping a plurality of captured images onto the calculated display projection plane to obtain the free viewpoint image 250, for example, the known techniques shown in Non-Patent Documents 1 and 2 can be applied.
  • the display control unit 404 executes display control processing to display the free viewpoint image 250 etc. generated by the mapping unit 403 on the display device 16 etc.
  • the setting unit 405 executes a setting process for setting information such as projection plane information 230 and viewpoint information 240 in the image processing apparatus 10, for example.
  • the storage unit 406 is realized by, for example, a program executed by the processor 301, the storage device 303, the memory 302, etc., and stores various information (or data) including the captured image 210, projection plane information 230, viewpoint information 240, etc. Execute memory processing to store.
  • each functional configuration included in the image processing device 10 may be distributed and provided in a plurality of computers 300.
  • FIG. 5 is a flowchart illustrating an example of image processing according to one embodiment. This process shows a specific example of the image processing described in FIG. 2, which is executed by the image processing apparatus 10 described in FIG. 4.
  • step S501 the image acquisition unit 401 acquires a plurality of captured images 210 of the surroundings of the vehicle 1 using, for example, a plurality of cameras 12.
  • step S502 the residual estimation unit 402 inputs the plurality of captured images 210 acquired by the image acquisition unit 401 and the viewpoint information 240 indicating the viewpoint of the free viewpoint image 250 into the residual estimation model 410, and Estimate the residual information 220 of .
  • the mapping unit 403 uses the projection plane information 230, which is information about the default projection plane 231 explained in FIG. 2, and the residual information 220 estimated by the residual estimation unit 402 to Calculate the display projection plane on which to project. For example, the mapping unit 403 calculates the display projection plane by reflecting the residual information 220 on the default projection plane 231.
  • step 504 the mapping unit 403 maps the plurality of captured images 210 acquired by the image acquisition unit 401 onto the display projection plane to generate a free viewpoint image 250.
  • step S505 the display control unit 404 displays the free viewpoint image 250 generated by the mapping unit 403 on the display device 16 or the like.
  • the image processing apparatus 10 can create a free viewpoint image 250 with little distortion without using a three-dimensional sensing device in the image processing system 100 that synthesizes a free viewpoint image 250 using a plurality of captured images 210. can be synthesized.
  • FIG. 6 is a diagram for explaining an overview of the learning process according to the first embodiment.
  • This process is an example of a learning process in which the image processing device 10 uses a plurality of captured images 210 and viewpoint information 240 as input data to perform machine learning on a residual learning model that is a NN that outputs residual information 220.
  • the NN before learning or during learning is referred to as a residual learning model.
  • the image processing device 10 that executes the learning process may be the same computer as the computer 300 that executes the image processing described in FIGS. 2 to 4, or may be a different computer.
  • the image processing device 10 acquires a plurality of captured images 210 captured by a plurality of cameras 12 and three-dimensional information (for example, three-dimensional point group information, depth image, etc.) obtained by a three-dimensional sensor such as LiDAR.
  • the image processing device 10 also restores the three-dimensional images of the plurality of captured images 210 using the acquired three-dimensional information, and creates a teacher image 602, which is a free viewpoint image for the teacher, based on the input viewpoint information 240.
  • Generate (render) step S11).
  • the image processing device 10 also inputs the plurality of captured images 210 and viewpoint information 240 into a residual learning model, and residual information (hereinafter referred to as learning residual information 601) outputted by the residual learning model. (Step S12). Subsequently, the image processing device 10 uses the acquired learning residual information, projection plane information 230, and viewpoint information 240 to map the plurality of captured images 210 onto a display projection plane to obtain a free viewpoint for learning. An image (hereinafter referred to as a learning image 603) is generated (step S13).
  • the image processing device 10 learns the residual learning model (NN) so that the error between the generated teacher image 602 and the learning image 603 becomes small (step S14).
  • FIG. 7 is a diagram illustrating an example of the functional configuration of the image processing device (during learning) according to the first embodiment.
  • the image processing device 10 executes a program for learning processing using the processor 301 in FIG. It implements a setting section 705, a storage section 706, and the like. Note that at least some of the above functional configurations may be realized by hardware.
  • the captured image preparation unit 701 executes captured image preparation processing to prepare a plurality of captured images 210 for learning that are captured by each of the plurality of cameras 12.
  • the captured image preparation unit 701 may acquire a plurality of captured images 210 in real time using a plurality of cameras 12, or perform learning processing from a captured image 711 captured in advance and stored in the storage unit 706 or the like.
  • a plurality of captured images 210 may be acquired.
  • the three-dimensional information preparation unit 702 is a three-dimensional information preparation unit 702 that acquires three-dimensional information (for example, three-dimensional point group information, depth image, etc.) corresponding to the plurality of captured images 210 for learning prepared by the captured image preparation unit 701. Execute information preparation processing.
  • the three-dimensional information preparation unit 702 uses a three-dimensional sensor such as LiDAR 707 to prepare three-dimensional point cloud information around the vehicle 1 at the same timing (synchronized) as the plurality of captured images 210 are captured. get.
  • the three-dimensional information preparation unit 702 may acquire three-dimensional information using, for example, another three-dimensional sensor such as a stereo camera, a depth camera that captures a depth image, or a wireless sensing device.
  • the three-dimensional information preparation unit 702 uses technology such as Visual SLAM (Simultaneous Localization and Mappin) to map surrounding three-dimensional objects to the plurality of captured images 210 for learning stored in the storage unit 706 or the like. You may also acquire three-dimensional information indicating the position of.
  • the three-dimensional information preparation section 702 prepares three-dimensional information indicating the position of three-dimensional objects around the vehicle 1 in synchronization with the plurality of captured images 210 for learning prepared by the captured image preparation section 701.
  • the method may be any method.
  • the teacher image preparation unit 703 restores the three-dimensional images of the plurality of captured images 210 using the three-dimensional information prepared by the three-dimensional information preparation unit 702, and restores the three-dimensional images of the plurality of captured images 210 based on the viewpoint information 240.
  • a teacher image preparation process for generating (rendering) an image 602 is executed.
  • the learning unit 704 executes a learning process to learn a residual learning model (NN) 710 using the plurality of captured images 210, viewpoint information 240, projection plane information 230, and teacher image 602. For example, the learning unit 704 inputs a plurality of captured images 210 and viewpoint information 240 into a residual learning model (NN) 710 to obtain learning residual information 601, and then inputs the learning residual information 601 and the projection plane The learning display projection plane is calculated using the information 230. Further, the learning unit 704 uses the viewpoint information 240 to map the plurality of captured images 210 onto the calculated display projection plane to generate a learning image 603 that is a free viewpoint image for learning. Furthermore, the learning unit 704 learns the residual learning model (NN) 710 so that the error between the generated teacher image 602 and the learning image 603 becomes small.
  • NN residual learning model
  • the setting unit 705 executes a setting process for setting various information such as projection plane information 230 and viewpoint information 240 in the image processing apparatus 10 .
  • the storage unit 706 is realized by, for example, a program executed by the processor 301, the storage device 303, the memory 302, etc., and stores various information (such as a captured image 711, three-dimensional information 712, projection plane information 230, and viewpoint information 240). or data).
  • each functional configuration included in the image processing device 10 may be distributed and provided in a plurality of computers 300.
  • FIG. 8 is a flowchart illustrating an example of learning processing according to the first embodiment. This process shows a specific example of the learning process described in FIG. 6, which is executed by the image processing apparatus 10 described in FIG. 7.
  • step S801a the captured image preparation unit 701 prepares a plurality of captured images 210 for learning captured by each of the plurality of cameras 12.
  • the captured image preparation unit 701 uses the plurality of cameras 12 to acquire a plurality of captured images 210 capturing the surroundings of the vehicle 1.
  • step S801b the three-dimensional information preparation unit 702 acquires three-dimensional information corresponding to the plurality of captured images 210 for learning prepared by the captured image preparation unit 701.
  • the three-dimensional information preparation unit 702 acquires three-dimensional information (for example, three-dimensional point cloud information) around the vehicle 1 at the same time in synchronization with the captured image preparation unit 701.
  • step S802 the image processing device 10 prepares viewpoint information 240 indicating the viewpoint to be learned.
  • the setting unit 705 sets the coordinates of the viewpoint to be learned by the residual learning model 710 in the viewpoint information 240.
  • step S803 the teacher image preparation unit 703 restores the three-dimensional images of the plurality of captured images 210 using the three-dimensional information prepared by the three-dimensional information preparation unit 702, and generates the teacher image 602 based on the viewpoint information 240. (render).
  • step S804 in parallel with the process in step S803, the learning unit 704 inputs the plurality of captured images 210 and viewpoint information 240 to the residual learning model (NN) 710 to obtain learning residual information 601. .
  • step S805 the learning unit 704 calculates a display projection plane from the learning residual information 601 and the projection plane information 230, and maps the plurality of captured images 210 to the display projection plane based on the viewpoint information 240 for learning. An image 603 for use is generated.
  • step S806 the learning unit 704 learns the residual learning model 710 so that the difference between the generated teacher image 602 and learning image 603 is minimized. For example, the learning unit 704 determines the weight of the residual learning model 710 that minimizes the difference between two images (for example, the sum of the differences in pixel values of all pixels), and sets the determined weight to the residual learning model 710. do.
  • step S807 the learning unit 704 determines whether learning is finished. For example, the learning unit 704 may determine that learning is complete when the processes of steps S801 to S806 have been executed a predetermined number of times. Alternatively, the learning unit 704 may determine that learning has ended when the difference between the teacher image 602 and the learning image 603 becomes equal to or less than a predetermined value.
  • the learning unit 704 If learning has not been completed, the learning unit 704 returns the process to steps S801a and S801b. On the other hand, when the learning is completed, the learning unit 704 ends the process of FIG. 8 .
  • the image processing device 10 described in FIG. 4 can execute the image processing described in FIG. 5 by using the NN (residual learning model 710) learned in the process in FIG. 8 as the residual estimation model 410.
  • FIG. 9 is a diagram for explaining an overview of learning processing according to the second embodiment.
  • This process is another example of a learning process in which the image processing device 10 uses a plurality of captured images 210 and viewpoint information 240 as input data to machine learn a residual learning model that is a NN that outputs residual information 220. It shows. Note that detailed explanation of the same processing as in the first embodiment will be omitted here.
  • the image processing device 10 uses the plurality of captured images 210, the projection plane information 230, and the viewpoint information 240 to generate an unmodified free viewpoint image (hereinafter, unmodified free viewpoint image) in which the plurality of captured images 210 are mapped onto a default projection plane 231. (referred to as a modified image 901) is generated (step S21).
  • the image processing device 10 also acquires three-dimensional information, restores the plurality of captured images 210 using the acquired three-dimensional information, and creates a teacher image 602 that is a free viewpoint image for the teacher based on the viewpoint information 240.
  • Generate (render) (step S22).
  • the image processing device 10 compares the generated uncorrected image 901 and the teacher image 602 to obtain residual information of the two images (step S23). Further, the image processing device 10 inputs the plurality of captured images 210 and viewpoint information 240 to the residual learning model 710 to obtain learning residual information 601 (step S24). Subsequently, the image processing device 10 learns the residual learning model 710 so that the difference between the residual information of the two images and the learning residual information 601 is minimized (step S25).
  • FIG. 10 is a diagram illustrating an example of the functional configuration of the image processing device (during learning) according to the second embodiment.
  • the image processing apparatus 10 according to the second embodiment has, in addition to the functional configuration of the image processing apparatus 10 according to the first embodiment described in FIG. and a residual calculation unit 1002.
  • the learning unit 704 executes a learning process different from that in the first embodiment, as described in FIG. 9 .
  • the unmodified image preparation unit 1001 is realized, for example, by a program executed by the processor 301.
  • An uncorrected image preparation unit 1001 generates an uncorrected image 901 in which a plurality of captured images 210 are mapped onto a default projection plane 231 using a plurality of captured images 210, projection plane information 230, and viewpoint information 240. Execute the modified image preparation process.
  • the residual calculation unit 1002 is realized by, for example, a program executed by the processor 301, and performs residual calculation processing that compares the generated uncorrected image 901 and the teacher image 602 and calculates residual information of the two images. Execute.
  • the learning unit 704 minimizes the difference between the residual information of the two images calculated by the residual calculation unit 1002 and the learning residual information 601 output by the residual learning model 710.
  • a learning process for learning the residual learning model 710 is executed as follows.
  • FIG. 11 is a flowchart illustrating an example of learning processing according to the second embodiment. This process shows a specific example of the learning process described in FIG. 9 that is executed by the image processing apparatus 10 described in FIG. 10. Note that among the processes shown in FIG. 11, the processes in steps S801a, S801b, and S802 are the same as the learning process according to the first embodiment described in FIG. 8, so the description thereof will be omitted here.
  • step S1101 the uncorrected image preparation unit 1001 uses the plurality of captured images 210, the projection plane information 230, and the viewpoint information 240 to create an unmodified image 901 in which the plurality of captured images 210 are mapped onto the default projection plane 231. generate.
  • step S1102 the teacher image preparation unit 703 restores the three-dimensional images of the plurality of captured images 210 using the three-dimensional information prepared by the three-dimensional information preparation unit 702, and generates the teacher image 602 based on the viewpoint information 240. (render).
  • step S1103 the residual calculation unit 1002 compares the generated uncorrected image 901 and the teacher image 602, and calculates residual information of the two images.
  • step S1104 for example, in parallel with the processing in steps S1101 to S1103, the learning unit 704 inputs the plurality of captured images 210 and viewpoint information 240 to the residual learning model (NN) 710 to obtain learning residual information. Get 601.
  • step S1105 the learning unit 704 calculates the residual information so that the difference between the residual information of the two images calculated by the residual calculating unit 1002 and the learning residual information is minimized.
  • Learning model 710 is learned. For example, the learning unit 704 determines the weight of the residual learning model 710 that minimizes the difference between two pieces of residual information, and sets the determined weight to the residual learning model 710.
  • step S1106 the learning unit 704 determines whether learning is finished. If learning has not been completed, the learning unit 704 returns the process to steps S801a and S801b. On the other hand, when the learning is completed, the learning unit 704 ends the process in FIG. 11 .
  • the image processing device 10 described in FIG. 4 can execute the image processing described in FIG. 5 by using the NN (residual learning model 710) learned in the process in FIG. 11 as the residual estimation model 410.
  • FIG. 12 is a flowchart illustrating an example of residual information calculation processing according to the second embodiment. This process shows an example of the residual information calculation process executed by the residual calculation unit 1002 in step S1103 of FIG. 11, for example.
  • step S1201 the residual calculation unit 1002 calculates the difference between each pixel (for example, the difference between the pixel values of each pixel) between the uncorrected image 901 and the teacher image 602.
  • step S1202 the residual calculation unit 1002 determines whether the calculated difference is less than or equal to a predetermined value. If the difference is less than or equal to the predetermined value, the residual calculation unit 1002 moves the process to step S1207, and uses the current projection plane residual as residual information of the two images. On the other hand, if the difference is not equal to or less than the predetermined value, the residual calculation unit 1002 moves the process to step S1203.
  • step S1203 the residual calculation unit 1002 obtains a location on the image where the difference is large, and obtains the coordinates of the corresponding projection plane.
  • step S1204 the residual calculation unit 1002 sets residual information of the projection plane such that the difference becomes small near the acquired coordinates.
  • step S1205 the residual calculation unit 1002 generates a free viewpoint image by reflecting the set residual information.
  • step S1206 the residual calculation unit 1002 calculates the difference between each pixel value of the generated free viewpoint image and the teacher image, and returns the process to step S1202.
  • the residual calculation unit 1002 can obtain the residual information of the two images by repeatedly executing the process shown in FIG. 12 until the difference between each pixel value of the two images becomes equal to or less than a predetermined value.
  • the method by which the residual calculation unit 1002 obtains the residual information of two images is not limited to this.
  • the learning process according to the first embodiment involves learning the residual learning model 710 (updating the weights) using an error backpropagation method using an image error as a starting point.
  • the premise is that each calculation in the residual calculation process must be a differentiable procedure in the learning system.
  • the residual learning model 710 is learned by directly using the residual information of the two images, so the residual calculation process is not a differentiable procedure. It also has the advantage of being good.
  • Developers, etc. choose the first embodiment or the second embodiment, depending on whether they want to take advantage of being able to use direct images as training data or relaxing the conditions of the error backpropagation method, for example.
  • the learning process according to the embodiment can be selected.
  • FIG. 13 is a diagram illustrating a configuration example of a residual estimation model according to the third embodiment.
  • the residual estimation model 410 is configured separately into a plurality of camera characteristic correction models 1301-1, 1301-2, 1301-3, . . . and a base model 1302 common to each camera characteristic correction model. Good too.
  • “camera characteristic correction model 1301” is used.
  • the image processing device 10 switches the camera characteristic correction model 1301 according to the settings by the user, for example.
  • the user API Application Programming Interface
  • the user SDK defines a plurality of camera characteristic correction models 1301 that are referenced in conjunction with the argument.
  • a database will be established.
  • the camera characteristic correction model 1301 is a network part of the residual estimation model 410 that is mainly close to the image input, and learns weight data that is sensitive to camera characteristic parameters (focal length, etc.).
  • the camera characteristic correction model 1301 infers feature map information of feature points of the three-dimensional object from a plurality of captured learning images and three-dimensional information of one or more three-dimensional objects appearing in the plurality of captured learning images. This is an example of a camera model inference engine trained as follows.
  • the base model 1302 learns weight data common to each camera characteristic correction model 1301 that does not easily affect camera characteristic parameters.
  • the base model 1302 is an example of a base model inference engine trained to infer the difference between the default projection plane 231 and the display projection plane from the feature map information and viewpoint information 240 output by the camera characteristic correction model 1301. .
  • the residual estimation model 410 is an example of an inference engine that is configured separately into a plurality of camera model inference engines and a base model inference engine.
  • the weight data after learning of the camera model inference engine is more influenced by the characteristic parameters of a plurality of cameras than the weight data after learning of the base model inference engine.
  • FIG. 14 is a diagram illustrating an example of the functional configuration of an image processing apparatus according to the third embodiment. As shown in FIG. 14, in addition to the functional configuration of the image processing apparatus 10 according to the embodiment described in FIG. ) 1401 is stored.
  • the correction model DB 1401 is a database in which a plurality of camera characteristic correction models 1301-1, 1301-2, 1301-3, . . . are defined.
  • the setting unit 405 displays a camera set setting screen and accepts camera set settings from the user, it acquires the camera characteristic correction model 1301 corresponding to the accepted camera set from the correction model DB 1401. Further, the setting unit 405 sets the acquired camera characteristic correction model 1301 to the residual estimation model 410.
  • the image processing device 10 when the user sets the first camera set, the image processing device 10 generates the residual estimation model 410 including the camera characteristic correction model 1301-1 and the base model 1302 corresponding to the first camera set.
  • the image processing described in FIG. 5 is executed using the image processing method.
  • the image processing device 10 when the user sets the second camera set, the image processing device 10 generates the residual estimation model 410 including the camera characteristic correction model 1301-2 and the base model 1302 corresponding to the second camera set.
  • the image processing described in FIG. 5 is executed using the image processing method.
  • FIG. 15 is a diagram for explaining an overview of learning processing according to the third embodiment.
  • the image processing device 10 learns the first camera characteristic correction model 1301-1 and the base model 1302 (step S31).
  • the image processing device 10 combines the second camera characteristic correction model 1301-2 with the base model 1302 learned in the first learning process to create a camera characteristic correction model 1302-2. learn (step S32).
  • the image processing device 10 combines the n-th camera characteristic correction model 1301-n with the base model 1302 learned in the first learning process, and combines the camera characteristic correction model 1301-n with the base model 1302 learned in the first learning process. n can be learned.
  • FIG. 16 is a flowchart (1) showing an example of learning processing according to the third embodiment. This process shows an example of a learning process when the third embodiment is applied to the image processing apparatus 10 according to the first embodiment described in FIG. Note that detailed explanation of the same processing as in the first embodiment will be omitted here.
  • step S1601 the image processing device 10 initializes a counter n to 1 and executes the process in step S1602.
  • step S1602 the image processing apparatus 10 uses the learning process according to the first embodiment described in FIG. learn.
  • step S801a the captured image preparation unit 701 prepares a first plurality of captured images by each of the first plurality of cameras (first camera set) 12.
  • the captured image preparation process No. 1 is executed.
  • step S801b the three-dimensional information preparation unit 702 executes a first three-dimensional information preparation process to prepare first three-dimensional information of one or more three-dimensional objects shown in the first plurality of captured images.
  • step S803 the teacher image preparation unit 703 restores the three-dimensional image of the first plurality of captured images using the first three-dimensional information, and generates the first teacher image based on the input viewpoint information. Execute a first teacher image preparation process.
  • step S804 the learning unit 704 converts the first plurality of captured images and the characteristic parameters regarding at least one camera 12 among the first plurality of cameras 12 into the first camera characteristic correction model 1301-1. input to obtain first learning residual information.
  • step S805 the learning unit 704 generates first learning residual information and the projection plane information 23 first learning image.
  • step S806 the learning unit 704 trains both the camera characteristic correction model 1301-1 and the base model 1302 so that the error between the first teacher image and the first learning image becomes small.
  • step S1603 the image processing apparatus 10 determines whether n ⁇ N (N is the number of camera characteristic correction models 1301). If n ⁇ N, the image processing apparatus 10 moves the process to step S1604. On the other hand, if n ⁇ N, the image processing device 10 ends the learning process of FIG. 16.
  • step S1604 the image processing device 10 adds 1 to n and executes the process of step S1605.
  • step S1605 the image processing apparatus 10 fixes the base model 1302, learns the n-th camera characteristic correction model using the learning process according to the first embodiment described in FIG. 8, and returns the process to step S1603. return.
  • step S801a the captured image preparation unit 701 uses each of the second plurality of cameras (second camera set) A second captured image preparation process is executed to prepare a captured image.
  • step S801b the three-dimensional information preparation unit 702 executes a second three-dimensional information preparation process to prepare second three-dimensional information of one or more three-dimensional objects shown in the second plurality of captured images.
  • step S803 the teacher image preparation unit 703 restores the three-dimensional image of the second plurality of captured images using the second three-dimensional information, and generates the second teacher image based on the input viewpoint information.
  • a second teacher image preparation process is executed.
  • step S804 the learning unit 704 converts the second plurality of captured images and the characteristic parameters regarding at least one camera 12 among the second plurality of cameras 12 into the second camera characteristic correction model 1301-2. input to obtain second learning residual information.
  • step S805 the learning unit 704 uses the second learning residual information, the projection plane information 230, and the viewpoint information 240 to map the second plurality of captured images onto the display projection plane. Generate training images.
  • step S806 the learning unit 704 fixes the base model 1302 and trains the camera characteristic correction model 1301-2 so that the error between the second teacher image and the second learning image becomes small.
  • the image processing device 10 uses a plurality of camera characteristic correction models 1301-1, 1301-2, 1302-3, etc. and the base model 1302 as shown in FIG.
  • a residual estimation model 410 including the residual error estimation model 410 can be obtained.
  • FIG. 17 is a flowchart (2) showing an example of learning processing according to the third embodiment. This process shows an example of a learning process when the third embodiment is applied to the image processing apparatus 10 according to the second embodiment described in FIG. Note that detailed description of the same processing as in the second embodiment will be omitted here.
  • step S1701 the image processing device 10 initializes a counter n to 1 and executes the process in step S1702.
  • step S1702 the image processing apparatus 10 uses the learning process according to the second embodiment described in FIG. learn.
  • step S801a the captured image preparation unit 701 prepares a first plurality of captured images by each of the first plurality of cameras (first camera set) 12.
  • the captured image preparation process No. 1 is executed.
  • step S801b the three-dimensional information preparation unit 702 executes a first three-dimensional information preparation process to prepare first three-dimensional information of one or more three-dimensional objects shown in the first plurality of captured images.
  • step S1101 the unmodified image preparation unit 1101 performs a first unmodified image preparation that maps a first plurality of captured images onto a predetermined projection plane and generates a first unmodified image based on input viewpoint information. Execute processing.
  • step S1102 the teacher image preparation unit 703 restores the three-dimensional image of the first plurality of captured images using the first three-dimensional information, and generates the first teacher image based on the input viewpoint information 240.
  • a first teacher image preparation process is executed.
  • step S1103 the residual calculation unit 1002 executes a first residual calculation process to prepare first residual information by comparing the first unmodified image and the first teacher image.
  • step S1104 the learning unit 704 inputs the first plurality of captured images and the viewpoint information 240 to the residual learning model 710 under learning, and obtains first learning residual information. Specifically, the learning unit 704 inputs characteristic parameters related to the first plurality of captured images and at least one camera among the first plurality of cameras to the first camera characteristic correction model 1301-1, Obtain first feature map information. Further, the learning unit 704 inputs the acquired first feature map information and viewpoint information 240 to the base model 1302 to acquire first learning residual information.
  • step S1105 the learning unit 704 performs the following steps so that the difference between the first residual information calculated by the residual calculation unit 1002 and the first learning residual information is minimized.
  • the residual learning model 710 is learned. In this way, the learning unit 704 simultaneously learns both the first camera characteristic correction model 1301-1 and the base model 1302 using the first residual information as teacher data.
  • step S1703 the image processing apparatus 10 determines whether n ⁇ N (N is the number of camera characteristic correction models 1301). If n ⁇ N, the image processing apparatus 10 moves the process to step S1704. On the other hand, if n ⁇ N, the image processing device 10 ends the learning process of FIG. 17.
  • step S1704 the image processing device 10 adds 1 to n and executes the process of step S1705.
  • step S1705 the image processing apparatus 10 fixes the base model 1302, learns the n-th camera characteristic correction model using the learning process according to the second embodiment described in FIG. 11, and then returns the process to step S1703. return.
  • step S801a the captured image preparation unit 701 uses each of the second plurality of cameras (second camera set) A second captured image preparation process is executed to prepare a captured image.
  • step S801b the three-dimensional information preparation unit 702 executes a second three-dimensional information preparation process to prepare second three-dimensional information of one or more three-dimensional objects shown in the second plurality of captured images.
  • step S1101 the unmodified image preparation unit 1101 maps the second plurality of captured images onto the default projection plane 231, and generates a second unmodified image based on the input viewpoint information 240. Perform image preparation processing.
  • step S1102 the teacher image preparation unit 703 restores the three-dimensional image of the second plurality of captured images using the second three-dimensional information, and generates the second teacher image based on the input viewpoint information 240.
  • a second teacher image preparation process is executed.
  • step S1103 the residual calculation unit 1002 executes a second residual calculation process to prepare second residual information by comparing the second unmodified image and the 21 teacher images.
  • step S1104 the learning unit 704 inputs the second plurality of captured images and the viewpoint information 240 to the residual learning model 710 under learning, and obtains second learning residual information. Specifically, the learning unit 704 inputs characteristic parameters related to the second plurality of captured images and at least one camera among the second plurality of cameras to the second camera characteristic correction model 1301-2, Obtain second feature map information. Further, the learning unit 704 inputs the acquired second feature map information and viewpoint information 240 to the base model 1302 to acquire second learning residual information.
  • step S1105 the learning unit 704 performs the following steps so that the difference between the second residual information calculated by the residual calculation unit 1002 and the second learning residual information is minimized.
  • the base model 1302 is fixed and the second camera characteristic correction model 1301-2 is trained. Thereby, the learning unit 704 trains the second camera characteristic correction model 1301-2 using the second residual information as teacher data.
  • the image processing apparatus 10 uses a plurality of camera characteristic correction models 1301-1, 1301-2, 1302-3, . . . and the base model 1302 as shown in FIG.
  • a residual estimation model 410 including the residual error estimation model 410 can be obtained.
  • FIG. 18 is a diagram showing an example of the system configuration of a three-dimensional image display system according to the fourth embodiment.
  • the three-dimensional image display system 1800 includes an edge device 1801 such as AR goggles, and a server 1802 that can communicate with the edge device 1801 via a communication network N such as the Internet or a LAN (Local Area Network).
  • a communication network N such as the Internet or a LAN (Local Area Network).
  • the edge device 1801 includes, for example, one or more peripheral cameras, a three-dimensional sensor, a display device, a communication I/F, etc., and captures images captured by the peripheral cameras and three-dimensional information acquired by the three-dimensional sensor. Send to server 1802.
  • the server 1802 includes one or more computers 300, and generates a three-dimensional image using the captured image and three-dimensional information received from the edge device 1801 by executing a predetermined program. Send the image to the edge device 1801.
  • the server 1802 is an example of remote processing means.
  • the edge device 1801 displays the surrounding three-dimensional image by displaying the three-dimensional image received from the server 1802 on the display device.
  • the edge device 1801 cannot display a 3D image after transmitting the captured image and 3D information to the server 1802 until receiving the 3D image from the server 1802. .
  • the edge device 1801 performs the image processing described in FIG. Display the free viewpoint image generated using .
  • the edge device 1801 can display a virtual space before receiving a three-dimensional image from the server 1802.
  • FIG. 19 is a diagram illustrating an example of the hardware configuration of an edge device according to the fourth embodiment.
  • the edge device 1801 includes a computer configuration, and includes, for example, a processor 1901, a memory 1902, a storage device 1903, a communication I/F 1904, a display device 1905, a plurality of peripheral cameras 1906, an IMU 1907, a three-dimensional sensor 1908, a bus 1909, and the like. have
  • the processor 1901 is, for example, an arithmetic device such as a CPU or a GPU that executes a predetermined process by executing a program stored in a storage medium such as a storage device 1903.
  • the memory 1902 includes, for example, a RAM which is a volatile memory used as a work area for the processor 1901, and a ROM which is a non-volatile memory that stores a program for starting the processor 1901 and the like.
  • the storage device 1903 is, for example, a large-capacity nonvolatile storage device such as an SSD or an HDD.
  • the communication I/F 1904 is a communication device such as a WAN (Eide Area Network) or a LAN (Local Area Network) that connects the edge device 1801 to the communication network N and communicates with the server 1802.
  • the display device 1905 is, for example, a display means such as an LCD or an organic EL.
  • the plurality of peripheral cameras 1906 are cameras that capture images around the edge device 1801.
  • the IMU (Inertial Measurement Unit) 1907 is an inertial measurement device that detects three-dimensional angular velocity and acceleration using, for example, a gyro sensor and an acceleration sensor.
  • the three-dimensional sensor 1908 is, for example, a sensor that acquires three-dimensional information such as LiDAR, a stereo camera, a depth camera, or a wireless sensing device.
  • a bus 1909 is connected to each of the above components and transmits, for example, address signals, data signals, various control signals, and the like.
  • FIG. 20 is a diagram showing the functional configuration of a three-dimensional image display system according to the fourth embodiment.
  • the edge device 1801 has a three-dimensional information acquisition unit 2001, a transmission unit 2002, a reception unit 2003, etc., in addition to the functional configuration of the image processing apparatus 10 described in FIG. 4, by the processor 1901 executing a predetermined program.
  • the edge device 1801 includes a display control unit 2004 instead of the display control unit 404.
  • the image acquisition unit 401, residual estimation unit 402, mapping unit 403, setting unit 405, and storage unit 406 are the same as each functional configuration of the image processing device 10 described in FIG. 4, so their descriptions are omitted here. do.
  • the three-dimensional information acquisition unit 2001 acquires three-dimensional information around the edge device 1801 using the three-dimensional sensor 1908.
  • the transmitting unit 2002 transmits the three-dimensional information acquired by the three-dimensional information acquiring unit 2001 and the plurality of captured images acquired by the image acquiring unit 401 to the server 1802.
  • the receiving unit 2003 receives the three-dimensional image transmitted by the server 1802 according to the three-dimensional information and the plurality of captured images transmitted by the transmitting unit 2002.
  • the display control unit 2004 displays the free viewpoint image 250 generated by the mapping unit 403 on the display device 16 or the like before the reception unit 2003 completes reception of the three-dimensional image. Further, the display control unit 2004 displays the received three-dimensional image on the display device 16 or the like after the receiving unit 2003 completes receiving the three-dimensional image.
  • the server 1802 implements a receiving section 2011, a three-dimensional image generating section 2012, a transmitting section 2013, and the like by executing a predetermined program on one or more computers 300.
  • the receiving unit 2011 uses the communication device 307 to receive three-dimensional information and a plurality of captured images transmitted by the edge device 1801.
  • the three-dimensional image generation unit 2012 uses the three-dimensional information received by the receiving unit 2011 and the plurality of captured images to render the plurality of captured images in a three-dimensional space, and generates a three-dimensional image of the vicinity of the edge device 1801. generate.
  • the method for generating the three-dimensional image by the server 1802 may be any method.
  • the transmitting unit 2013 transmits the three-dimensional image generated by the three-dimensional image generating unit 2012 to the edge device using, for example, the communication device 307.
  • FIG. 21 is a sequence diagram showing an example of three-dimensional image display processing according to the fourth embodiment.
  • step S2101 the image acquisition unit 401 of the edge device 1801 acquires a plurality of captured images of the surroundings of the edge device 1801 using each of the plurality of peripheral cameras 1906.
  • step S2102 the three-dimensional information acquisition unit 2001 of the edge device 1801 uses the three-dimensional sensor 1908 to acquire three-dimensional information of one or more solid objects shown in the plurality of captured images.
  • the three-dimensional information acquisition unit 2001 acquires three-dimensional point group information around the edge device 1801.
  • step S2103 the transmitting unit 2002 of the edge device 1801 transmits the plurality of captured images acquired by the image acquiring unit 401 and the three-dimensional information acquired by the three-dimensional information acquiring unit 2001 to the server 1802.
  • step S2104 the three-dimensional image generation unit 2012 of the server 1802 uses the plurality of captured images and three-dimensional information received from the edge device 1801 to generate a three-dimensional image by rendering the plurality of captured images in a three-dimensional space. Executes three-dimensional image generation processing. However, this processing takes time, and the processing time may vary depending on the communication state with the edge device 1801, the load on the server 1802, and the like.
  • step S2105 the edge device 1801 generates a free viewpoint image in which a plurality of captured images are mapped onto a display projection plane, by executing the image processing described in FIG. 5, for example, in parallel with the processing in step S2104. , is displayed on the display device 1905. Note that this processing can be performed in a shorter time than the three-dimensional image generation processing executed by the server 1802, and is not affected by the communication information with the server 1802, the load on the server 1802, etc. Images around the area can be displayed in a shorter time.
  • step S2106 when the three-dimensional image generation unit 2012 of the server 1802 completes generation of the three-dimensional image, the transmission unit 2013 of the server 1802 transmits the generated three-dimensional image to the edge device 1801.
  • step S2107 upon receiving the three-dimensional image from the server 1802, the display control unit 2004 of the edge device 1801 displays the received three-dimensional image on the display device 1905.
  • the three-dimensional image display system 1800 can display the virtual space after transmitting a plurality of captured images and three-dimensional information to the server 1802 and before receiving the three-dimensional images from the server 1802. can.
  • Image processing system 10 Image processing device 12, 12A to 12D Camera 16 Display device 210 Captured image 130 Projection plane information 220 Residual information 230 Projection plane information (information regarding default projection plane) 231 default projection plane 240 viewpoint information 250 free viewpoint image 300 computer 401 image acquisition unit 402 residual estimation unit 403 mapping unit 404, 2004 display control unit 410 residual estimation model (inference engine) 601 Residual information for learning 602 Image for teacher 603 Image for learning 701 Captured image preparation section 702 Three-dimensional information preparation section 703 Teacher image preparation section 704 Learning section 405, 705 Setting section 710 Residual learning model (neural network) 901 Uncorrected image 1001 Uncorrected image preparation unit 1002 Residual calculation unit 1301, 1301-1 to 1301-3 Camera characteristic correction model (camera model inference engine) 1302 Base model (base model inference engine) 1800 Three-dimensional image display system 2001 Three-dimensional information acquisition section 2002 Transmission section 2003 Receiving section

Abstract

画像処理方法は、視点情報に基づく表示投影面上に複数の撮像画像を用いた自由視点画像を合成する画像処理方法であって、複数のカメラのそれぞれにより前記複数の撮像画像を取得する画像取得ステップと、前記複数の撮像画像と前記視点情報とを入力し、予め定義したボウル形状の既定投影面と前記表示投影面との差分を示す投影面の残差情報を機械学習により推定する残差推定ステップと、前記既定投影面に関する情報と前記残差情報と前記視点情報とを用いて、前記複数の撮像画像を前記表示投影面にマッピングして前記自由視点画像を得るマッピングステップと、をコンピュータが実行する。

Description

画像処理方法、ニューラルネットワークの学習方法、三次元画像表示方法、画像処理システム、ニューラルネットワークの学習システム、及び三次元画像表示システム
 本発明は、画像処理方法、ニューラルネットワークの学習方法、三次元画像表示方法、画像処理システム、ニューラルネットワークの学習システム、及び三次元画像表示システムに関する。
 複数のカメラで撮像した複数の撮像画像を用いて、自由に視点を移動して表示可能な三次元画像である自由視点画像を合成する画像処理システムが知られている。
 例えば、ボウル形状(すり鉢形状)の投影面を予め定義しておき、複数のカメラで撮像した映像を投影面にマッピングして、自由視点画像を合成する技術が知られている(非特許文献1参照)。また、LiDAR(Laser Imaging Detection and Ranging)等の三次元のセンシングデバイスで測定した距離情報を用いて投影面を算出し、複数のカメラで撮像した映像を投影面にマッピングして、自由視点画像を合成する技術が知られている(非特許文献2参照)。
Seiya Shimizu, et.al, "Wraparound View System for Motor Vihicles", Fujitsu Scientific & Technical Journal 46(1):95-102, 2010. "世界初!車周辺の人や物を歪みなく表示し、接触のリスクをわかりやすく示す車載向け3次元映像合成技術を開発",富士通プレスリリース, 2013, [online] ,富士通,インターネット<URL: https://pr.fujitsu.com/jp/news/2013/10/9-2.html>,[平成4年3月24日検索]
 非特許文献1に開示された技術では、予め定義した投影面と、実際の三次元構造との不一致により、投影面に投影した合成画像に歪みが発生するという問題がある。
 また、非特許文献2に開示された技術のように、LiDAR等の三次元のセンシングデバイスを追加することにより、合成画像の歪みを抑制することができるが、三次元のセンシングデバイスの追加によりコストが増加するという問題がある。
 本発明の一実施形態は、上記の問題点に鑑みてなされたものであって、複数の撮像画像を用いて自由視点画像を合成する画像処理システムにおいて、三次元のセンシングデバイスによらずに、歪みの少ない自由視点画像を合成できるようにする。
 上記の課題を解決するため、本発明の一実施形態に係る画像処理方法は、視点情報に基づく表示投影面上に複数の撮像画像を用いた自由視点画像を合成する画像処理方法であって、複数のカメラのそれぞれにより前記複数の撮像画像を取得する画像取得ステップと、前記複数の撮像画像と前記視点情報とを入力し、予め定義したボウル形状の既定投影面と前記表示投影面との差分を示す投影面の残差情報を機械学習により推定する残差推定ステップと、前記既定投影面に関する情報と前記残差情報と前記視点情報とを用いて、前記複数の撮像画像を前記表示投影面にマッピングして前記自由視点画像を得るマッピングステップと、をコンピュータが実行する。
 本発明の一実施形態によれば、複数の撮像画像を用いて自由視点画像を合成する画像処理システムにおいて、三次元のセンシングデバイスによらずに、歪みの少ない自由視点画像を合成できるようになる。
一実施形態に係る画像処理システムのシステム構成の一例を示す図である。 一実施形態に係る画像処理の概要について説明するための図である。 一実施形態に係るコンピュータのハードウェア構成の例を示す図である。 一実施形態に係る画像処理装置の機能構成の例を示す図である。 一実施形態に係る画像処理の例を示すフローチャートである。 第1の実施形態に係る学習処理の概要について説明するための図である。 第1の実施形態に係る画像処理装置(学習時)の機能構成の例を示す図である。 第1の実施形態に係る学習処理の例を示すフローチャートである。 第2の実施形態に係る学習処理の概要について説明するための図である。 第2の実施形態に係る画像処理装置(学習時)の機能構成の例を示す図である。 第2の実施形態に係る学習処理の例を示すフローチャートである。 第2の実施形態に係る残差情報の計算処理の例を示すフローチャートである。 第3の実施形態に係る残差推定モデルの構成例を示す図である。 第3の実施形態に係る画像処理装置の機能構成の一例を示す図である。 第3の実施形態に係る学習処理の概要について説明するための図である。 第3の実施形態に係る学習処理の例を示すフローチャート(1)である。 第3の実施形態に係る学習処理の例を示すフローチャート(2)である。 第4の実施形態に係る三次元画像表示システムのシステム構成の例を示す図である。 第4の実施形態に係るエッジデバイスのハードウェア構成の例を示す図である。 第4の実施形態に係る三次元画像表示システムの機能構成の例を示す図である。 第4の実施形態に係る三次元画像表示処理の例を示すシーケンス図である。
 以下に、本発明の実施の形態について、添付の図面を参照して説明する。
 本実施形態に係る画像処理システムは、複数のカメラで撮像した複数の撮像画像を用いて、自由に視点を移動して表示可能な三次元画像である自由視点画像を合成するシステムである。本実施形態に係る画像処理システムは、例えば、自動車、ロボット、又はドローン等の移動体の周辺監視、或いは、AR(Augmented Reality)/VR(Virtual Reality)技術等に適用することができる。ここでは、一例として、本実施形態に係る画像処理システムが、例えば、自動車等の車両に設けられている場合の例について説明する。
 <システム構成>
 図1は、一実施形態に係る画像処理システムのシステム構成の例を示す図である。図1の例では、画像処理システム100は、例えば、自動車等の車両1に搭載された画像処理装置10、複数のカメラ12、及び表示装置16等を備えている。上記の各構成要素は、例えば、車載ネットワーク、有線ケーブル、又は無線通信等により通信可能に接続されている。
 なお、車両1は、本実施形態に係る画像処理システム100を搭載する移動体の一例である。移動体は、車両1に限られず、例えば、脚等で移動するロボット、有人又は無人の航空機等の移動機能を有する様々装置、又は機械等であってもよい。
 カメラ12は、車両1の周辺を撮像し、撮像画像を取得する撮像装置である。図1の例では、車両1には、4つのカメラ12A~12Dが、互いに異なる撮像領域E1~E4に向けて設けられている。なお、以下の説明において、4つのカメラ12A~12Dのうち、任意のカメラを示す場合、「カメラ12」を用いる。また、4つの撮像領域E1~E4のうち、任意の撮像領域を示す場合、「撮像領域E」を用いる。図1に示すカメラ12、及び撮像領域Eの数は一例であり、2つ以上の他の数であってもよい。
 図1の例では、一例として、カメラ12Aは、車両1の前方の撮像領域E1に向けて設けられており、カメラ12Bは、車両1の側方の撮像領域E2に向けて設けられている。また、カメラ12Cは、車両1の別の側方の撮像領域E3に向けて設けられ、カメラ12Dは、車両1の後方の撮像領域E4に向けて設けられている。
 表示装置16は、例えば、LCD(Liquid Crystal Display)、又は有機EL(Electro-Luminescence)等の表示デバイス、又は各種の情報を表示する表示機能を備えた様々な装置、又はデバイスである。
 画像処理装置10は、所定のプログラムの実行することにより、表示投影面上に、カメラ12A~12Dで撮像した複数の撮像画像を用いた自由視点画像を合成する画像処理を実行するコンピュータである。自由視点画像は、複数のカメラで撮像した複数の撮像画像を用いて、自由に視点を移動して表示可能な三次元画像である。
 (処理の概要)
 図2は、一実施形態に係る画像処理の概要について説明するための図である。画像処理装置10は、車両1の周囲に予め定義したボウル形状(又はすり鉢形状)の投影面(以下、既定投影面231と呼ぶ)の情報である投影面情報230を有している。
 また、画像処理装置10は、複数のカメラ12で車両1の周辺を撮像した複数の撮像画像210と、自由視点画像の視点を示す視点情報240とを残差推定モデルに入力して、機械学習により投影面の残差情報220を推定する(ステップS1)。ここで、残差推定モデルは、複数の撮像画像210と視点情報240とを入力データとして、自由視点画像を投影する投影面(以下、表示投影面と呼ぶ)と、既定投影面231との差分を示す投影面の残差情報220を出力する、学習済のニューラルネットワークである。
 さらに、画像処理装置10は、既定投影面231の情報である投影面情報230と、残差情報220と、視点情報240とを用いて、複数の撮像画像210を表示投影面にマッピングした自由視点画像250を生成する(ステップS2)。ここで、残差情報220は、前述したように、表示投影面と既定投影面231との差分を示す情報なので、画像処理装置10は、投影面情報230と残差情報220とから、表示投影面を算出することができる。
 なお、残差推定モデルは、複数の学習用の撮像画像と、視点情報240と、複数の学習用の撮像画像に映った1つ以上の立体物の三次元情報とから、既定投影面231と表示投影面との差分を推定するように、予め機械学習されている。
 従って、本実施形態によれば、複数の撮像画像210を用いて自由視点画像250を合成する画像処理システム100において、三次元のセンシングデバイスによらずに、歪みの少ない自由視点画像を合成することができる。
 なお、図1に示した画像処理システム100のシステム構成は一例である。例えば、
画像処理システム100は、複数のカメラ12、及び表示装置16等を備え、ユーザが装着するARゴーグル、又はVRゴーグル等のウェアラブルデバイス等であってもよい。
 <ハードウェア構成>
 画像処理装置10は、例えば、図3に示すようなコンピュータ300のハードウェア構成を備えている。
 図3は、一実施形態に係るコンピュータのハードウェア構成の例を示す図である。コンピュータ300は、例えば、プロセッサ301、メモリ302、ストレージデバイス303、I/F(Interface)304、入力装置305、出力装置306、通信装置307、及びバス308等を有している。
 プロセッサ301は、例えば、ストレージデバイス303等の記憶媒体に記憶したプログラムを実行することにより、所定の処理を実行するCPU(Central Processing Unit)、及びGPU(Graphics Processing Unit)等の演算装置である。メモリ302は、例えば、プロセッサ301のワークエリア等として用いられる揮発性のメモリであるRAM(Random Access Memory)、及びプロセッサ301の起動用のプログラム等を記憶した不揮発性のメモリであるROM(Read Only Memory)等を含む。ストレージデバイス303は、例えば、SSD(Solid State Drive)、又はHDD(Hard Disk Drive)等の大容量の不揮発性の記憶装置である。I/F304は、例えば、カメラ12、及び表示装置16等の外部装置を、コンピュータ300に接続するための様々なインタフェースを含む。
 入力装置305は、外部からの入力を受け付ける様々なデバイス(例えば、キーボード、タッチパネル、ポインティングデバイス、マイクロフォン、スイッチ、ボタン、又はセンサ等)を含む。出力装置206は、外部への出力を実施する様々なデバイス(例えば、ディスプレイ、スピーカ、インジケータ等)を含む。通信装置307は、有線又は無線のネットワークを介して、他の装置と通信を行うための様々な通信デバイスを含む。バス308は、上記の各構成要素に接続され、例えば、アドレス信号、データ信号、及び各種の制御信号等を伝送する。
 <機能構成>
 図4は、一実施形態に係る画像処理装置の機能構成の例を示す図である。画像処理装置10は、例えば、図3のプロセッサ301で画像処理用のプログラムを実行することにより、画像取得部401、残差推定部402、マッピング部403、表示制御部404、設定部405、及び記憶部406等を実現している。なお、上記の各機能構成のうち、少なくとも一部は、ハードウェアによって実現されるものであってもよい。
 画像取得部401は、複数のカメラ12のそれぞれにより複数の撮像画像210を取得する画像取得処理を実行する。例えば、画像取得部401は、複数のカメラ12A、12B、12C、12Dで、車両1の周辺を撮像した複数の撮像画像210を取得する。
 残差推定部402は、画像取得部401が取得した複数の撮像画像210と、視点情報240とを入力して、予め定義したボウル形状の既定投影面231と表示投影面との差分を示す投影面の残差情報220を機械学習により推定する残差推定処理を実行する。
 好ましくは、残差推定部402は、複数の学習用の撮像画像と、視点情報240と、複数の学習用の撮像画像に映った1つ以上の立体物の三次元情報とから、既定投影面231と表示投影面との差分を推論するように学習させた残差推定モデル410を有する。残差推定モデル410は、複数の撮像画像210と視点情報240とを入力データとして、自由視点画像を投影する表示投影面と既定投影面231との差分を示す投影面の残差情報220を出力する、学習済のニューラルネットワーク(以下、NNと呼ぶ)である。本実施形態では、複数の撮像画像210と視点情報240とを入力データとして、残差情報220を出力するNNのうち、学習済のNNを残差推定モデル410と呼ぶ。
 残差推定部402は、画像取得部401が取得した複数の撮像画像210と、視点情報240とを残差推定モデル410に入力し、残差推定モデル410が出力する残差情報220を取得する。ここで、視点情報240は、画像処理装置10が生成する自由視点画像の視点を示す座標情報であり、例えば、直交座標、又は極座標等で表される。また、三次元情報は、例えば、LiDAR(Laser Imaging Detection and Ranging)等の三次元のセンシングデバイスで測定した三次元の点群情報、又は深度情報を含むDepth画像等の車両1の周辺の物体の三次元の距離情報を含むデータである。
 マッピング部403は、既定投影面231に関する投影面情報230と、残差推定部402が推定した残差情報220とを用いて、取得した複数の撮像画像210を表示投影面にマッピングして自由視点画像250を得るマッピング処理を実行する。前述したように、残差情報220は、表示投影面と既定投影面231との差分を示す情報なので、マッピング部403は、既定投影面231の情報である投影面情報230と残差情報220とから、表示投影面を算出することができる。また、算出した表示投影面に複数の撮像画像をマッピングして自由視点画像250を得る処理は、例えば、非特許文献1、2等に示した公知の技術を適用することができる。
 表示制御部404は、マッピング部403が生成した自由視点画像250等を、表示装置16等に表示させる表示制御処理を実行する。
 設定部405は、画像処理装置10に、例えば、投影面情報230、視点情報240等の情報を設定する設定処理を実行する。
 記憶部406は、例えば、プロセッサ301が実行するプログラム、ストレージデバイス303、及びメモリ302等によって実現され、撮像画像210、投影面情報230、及び視点情報240等を含む様々な情報(又はデータ)を記憶する記憶処理を実行する。
 なお、図4に示した画像処理装置10の機能構成は一例である。例えば、画像処理装置10に含まれる各機能構成は、複数のコンピュータ300に分散して設けられていてもよい。
 <処理の流れ>
 続いて、本実施形態に係る画像処理方法の処理の流れについて説明する。
 (画像処理)
 図5は、一実施形態に係る画像処理の例を示すフローチャートである。この処理は、図4で説明した画像処理装置10が実行する、図2で説明した画像処理の具体的な一例を示している。
 ステップS501において、画像取得部401は、例えば、複数のカメラ12を用いて、車両1の周辺を撮像した複数の撮像画像210を取得する。
 ステップS502において、残差推定部402は、画像取得部401が取得した複数の撮像画像210と、自由視点画像250の視点を示す視点情報240とを残差推定モデル410に入力して、投影面の残差情報220を推定する。
 ステップS503において、マッピング部403は、図2で説明した既定投影面231の情報である投影面情報230と、残差推定部402が推定した残差情報220とを用いて、複数の撮像画像210を投影する表示投影面を算出する。例えば、マッピング部403は、既定投影面231に残差情報220を反映することにより、表示投影面を算出する。
 ステップ504において、マッピング部403は、画像取得部401が取得した複数の撮像画像210を、表示投影面にマッピングして、自由視点画像250を生成する。
 ステップS505において、表示制御部404は、マッピング部403が生成した自由視点画像250を、表示装置16等に表示する。
 図5の処理により、画像処理装置10は、複数の撮像画像210を用いて自由視点画像250を合成する画像処理システム100において、三次元のセンシングデバイスによらずに、歪みの少ない自由視点画像250を合成することができる。
 <学習処理について>
 続いて、残差推定モデル410を機械学習する学習処理について説明する。
 [第1の実施形態]
 (処理の概要)
 図6は、第1の実施形態に係る学習処理の概要について説明するための図である。この処理は、画像処理装置10が、複数の撮像画像210と視点情報240とを入力データとして、残差情報220を出力するNNである残差学習モデルを機械学習する学習処理の一例を示している。なお、本実施形態では、複数の撮像画像210と視点情報240とを入力データとして、残差情報220を出力するNNのうち、学習前、又は学習中のNNを残差学習モデルと呼ぶ。また、学習処理を実行する画像処理装置10は、図2~4で説明した画像処理を実行するコンピュータ300と同じコンピュータであってもよいし、他のコンピュータであってもよい。
 画像処理装置10は、複数のカメラ12で撮像した複数の撮像画像210と、LiDAR等の三次元センサで取得した三次元情報(例えば、三次元の点群情報、Depth画像等)を取得する。また、画像処理装置10は、取得した三次元情報により、複数の撮像画像210の三次元画像を復元し、入力した視点情報240に基づいて、教師用の自由視点画像である教師用画像602を生成(レンダリング)する(ステップS11)。
 また、画像処理装置10は、複数の撮像画像210と視点情報240とを残差学習モデルに入力して、残差学習モデルが出力する残差情報(以下、学習用残差情報601と呼ぶ)を取得する(ステップS12)。続いて、画像処理装置10は、取得した学習用残差情報と、投影面情報230と、視点情報240とを用いて、複数の撮像画像210を表示投影面にマッピングして学習用の自由視点画像(以下、学習用画像603と呼ぶ)を生成する(ステップS13)。
 さらに、画像処理装置10は、生成した教師用画像602と学習用画像603との誤差が小さくなるように、残差学習モデル(NN)を学習する(ステップS14)。
 <機能構成>
 図7は、第1の実施形態に係る画像処理装置(学習時)の機能構成の例を示す図である。画像処理装置10は、例えば、図3のプロセッサ301で、学習処理用のプログラムを実行することにより、撮像画像準備部701、三次元情報準備部702、教師用画像準備部703、学習部704、設定部705、及び記憶部706等を実現している。なお、上記の各機能構成のうち、少なくとも一部は、ハードウェアによって実現されるものであってもよい。
 撮像画像準備部701は、複数のカメラ12のそれぞれで撮像した学習用の複数の撮像画像210を準備する撮像画像準備処理を実行する。なお、撮像画像準備部701は、複数のカメラ12を用いて、複数の撮像画像210をリアルタイムに取得してもよいし、予め撮像して記憶部706等に記憶した撮像画像711から、学習処理に必要な複数の撮像画像210を取得してもよい。
 三次元情報準備部702は、撮像画像準備部701が準備する学習用の複数の撮像画像210に対応する三次元情報(例えば、三次元の点群情報、又はDepth画像等)を取得する三次元情報準備処理を実行する。一例として、三次元情報準備部702は、LiDAR707等の三次元センサを用いて、複数の撮像画像210の撮像と同じタイミングで(同期して)、車両1の周辺の三次元の点群情報を取得する。なお、三次元情報準備部702は、例えば、ステレオカメラ、深度画像を撮像する深度カメラ、又は無線センシングデバイス等の他の三次元センサを利用して、三次元情報を取得してもよい。
 別の一例として、三次元情報準備部702は、記憶部706等に記憶した学習用の複数の撮像画像210に、例えば、Visual SLAM(Simultaneous Localization and Mappin)等の技術を用いて、周辺立体物の位置を示す三次元情報を取得しても良い。要するに、三次元情報準備部702は、撮像画像準備部701が準備する学習用の複数の撮像画像210と同期した、車両1の周辺の立体物の位置を示す三次元情報を準備するものであればよく、その方法は任意の方法であってよい。
 教師用画像準備部703は、三次元情報準備部702が準備した三次元情報により複数の撮像画像210の三次元画像を復元し、視点情報240に基づいて教師用の自由視点画像である教師用画像602を生成(レンダリング)する教師用画像準備処理を実行する。
 学習部704は、複数の撮像画像210と、視点情報240と、投影面情報230と、教師用画像602とを用いて、残差学習モデル(NN)710を学習する学習処理を実行する。例えば、学習部704は、複数の撮像画像210と視点情報240とを残差学習モデル(NN)710に入力して学習用残差情報601を取得し、学習用残差情報601と、投影面情報230とを用いて、学習用の表示投影面を算出する。また、学習部704は、視点情報240を用いて、複数の撮像画像210を算出した表示投影面にマッピングして、学習用の自由視点画像である学習用画像603を生成する。さらに、学習部704は、生成した教師用画像602と学習用画像603との誤差が小さくなるように、残差学習モデル(NN)710を学習する。
 設定部705は、画像処理装置10に、例えば、投影面情報230、視点情報240等の様々な情報を設定する設定処理を実行する。
 記憶部706は、例えば、プロセッサ301が実行するプログラム、ストレージデバイス303、及びメモリ302等によって実現され、撮像画像711、三次元情報712、投影面情報230、及び視点情報240等の様々な情報(又はデータ)を記憶する。
 なお、図7に示した画像処理装置10の機能構成は一例である。例えば、画像処理装置10に含まれる各機能構成は、複数のコンピュータ300に分散して設けられていてもよい。
 <処理の流れ>
 続いて、第1の実施形態に係るニューラルネットワークの学習方法の処理の流れについて説明する。
 図8は、第1の実施形態に係る学習処理の例を示すフローチャートである。この処理は、図7で説明した画像処理装置10が実行する、図6で説明した学習処理の具体的な一例を示している。
 ステップS801aにおいて、撮像画像準備部701は、複数のカメラ12のそれぞれで撮像した学習用の複数の撮像画像210を準備する。例えば、撮像画像準備部701は、複数のカメラ12を用いて、車両1の周辺を撮像した複数の撮像画像210を取得する。
 ステップS801bにおいて、三次元情報準備部702は、撮像画像準備部701が準備する学習用の複数の撮像画像210に対応する三次元情報を取得する。例えば、三次元情報準備部702は、撮像画像準備部701と同期して、同時刻の車両1の周辺の三次元情報(例えば、三次元の点群情報)を取得する。
 ステップS802において、画像処理装置10は、学習する視点を示す視点情報240を準備する。例えば、設定部705は、残差学習モデル710に学習する視点の座標を、視点情報240に設定する。
 ステップS803において、教師用画像準備部703は、三次元情報準備部702が準備した三次元情報により複数の撮像画像210の三次元画像を復元し、視点情報240に基づいて教師用画像602を生成(レンダリング)する。
 ステップS804において、学習部704は、ステップS803の処理と並行して、複数の撮像画像210と視点情報240とを残差学習モデル(NN)710に入力して学習用残差情報601を取得する。
 ステップS805において、学習部704は、学習用残差情報601と投影面情報230とから表示投影面を算出し、視点情報240に基づいて、複数の撮像画像210を表示投影面にマッピングして学習用画像603を生成する。
 ステップS806において、学習部704は、生成した教師用画像602と学習用画像603との差が最小となるように、残差学習モデル710を学習する。例えば、学習部704は、2つの画像の差(例えば、全画素の画素値の差の合計)が最小となる残差学習モデル710の重みを求め、求めた重みを残差学習モデル710に設定する。
 ステップS807において、学習部704は、学習終了か否かを判断する。例えば、学習部704は、ステップS801~S806の処理を所定の回数実行したときに、学習終了と判断してもよい。或いは、学習部704は、教師用画像602と学習用画像603との差が所定値以下となったときに、学習終了と判断してもよい。
 学習終了していない場合、学習部704は、処理をステップS801a、S801bに戻す。一方、学習終了した場合、学習部704は、図8の処理を終了する。
 図4で説明した画像処理装置10は、図8の処理で学習したNN(残差学習モデル710)を、残差推定モデル410として、図5で説明した画像処理を実行することができる。
 [第2の実施形態]
 (処理の概要)
 図9は、第2の実施形態に係る学習処理の概要について説明するための図である。この処理は、画像処理装置10が、複数の撮像画像210と視点情報240とを入力データとして、残差情報220を出力するNNである残差学習モデルを機械学習する学習処理の別の一例を示している。なお、ここでは、第1の実施形態と同様の処理に対する詳細な説明は省略する。
 画像処理装置10は、複数の撮像画像210と、投影面情報230と、視点情報240とを用いて、既定投影面231に複数の撮像画像210をマッピングした無修正の自由視点画像(以下、無修正画像901と呼ぶ)を生成する(ステップS21)。
 また、画像処理装置10は、三次元情報を取得し、取得した三次元情報により複数の撮像画像210を復元し、視点情報240に基づいて、教師用の自由視点画像である教師用画像602を生成(レンダリング)する(ステップS22)。
 また、画像処理装置10は、生成した無修正画像901と教師用画像602とを比較して、2つの画像の残差情報を求める(ステップS23)。さらに、画像処理装置10は、複数の撮像画像210と視点情報240とを残差学習モデル710に入力して、学習用残差情報601を取得する(ステップS24)。続いて、画像処理装置10は、2つの画像の残差情報と、学習用残差情報601との差が最小となるように、残差学習モデル710を学習する(ステップS25)。
 <機能構成>
 図10は、第2の実施形態に係る画像処理装置(学習時)の機能構成の例を示す図である。図10に示すように、第2の実施形態に係る画像処理装置10は、図7で説明した第1の実施形態に係る画像処理装置10の機能構成に加えて、無修正画像準備部1001、及び残差計算部1002を有している。また、学習部704は、図9で説明したように、第1の実施形態とは異なる学習処理を実行する。
 無修正画像準備部1001は、例えば、プロセッサ301が実行するプログラムによって実現される。無修正画像準備部1001は、複数の撮像画像210と、投影面情報230と、視点情報240とを用いて、既定投影面231に複数の撮像画像210をマッピングした無修正画像901を生成する無修正画像準備処理を実行する。
 残差計算部1002は、例えば、プロセッサ301が実行するプログラムによって実現され、生成した無修正画像901と教師用画像602とを比較して、2つの画像の残差情報を計算する残差計算処理を実行する。
 第2の実施形態に係る学習部704は、残差計算部1002が計算する2つの画像の残差情報と、残差学習モデル710が出力する学習用残差情報601との差が最小となるように、残差学習モデル710を学習する学習処理を実行する。
 なお、上記以外の機能構成は、図7で説明した第1の実施形態に係る画像処理装置10の機能構成を同様なので、ここでは説明を省略する。
 <処理の流れ>
 続いて、第2の実施形態に係るニューラルネットワークの学習方法の処理の流れについて説明する。
 図11は、第2の実施形態に係る学習処理の例を示すフローチャートである。この処理は、図10で説明した画像処理装置10が実行する、図9で説明した学習処理の具体的な一例を示している。なお、図11に示す処理のうち、ステップS801a、S801b、S802の処理は、図8で説明した第1の実施形態に係る学習処理と同様なので、ここでは説明を省略する。
 ステップS1101において、無修正画像準備部1001は、複数の撮像画像210と、投影面情報230と、視点情報240とを用いて、既定投影面231に複数の撮像画像210をマッピングした無修正画像901を生成する。
 ステップS1102において、教師用画像準備部703は、三次元情報準備部702が準備した三次元情報により複数の撮像画像210の三次元画像を復元し、視点情報240に基づいて教師用画像602を生成(レンダリング)する。
 ステップS1103において、残差計算部1002は、生成した無修正画像901と教師用画像602とを比較して、2つの画像の残差情報を計算する。
 ステップS1104において、学習部704は、例えば、ステップS1101~S1103の処理と並行して、複数の撮像画像210と視点情報240とを残差学習モデル(NN)710に入力して学習用残差情報601を取得する。
 ステップS1105において、学習部704は、残差計算部1002が計算した2つの画像の残差情報と、学習用の残差情報との2つの残差情報の差が最小となるように、残差学習モデル710を学習する。例えば、学習部704は、2つの残差情報の差が最小となる残差学習モデル710の重みを求め、求めた重みを残差学習モデル710に設定する。
 ステップS1106において、学習部704は、学習終了か否かを判断する。学習終了していない場合、学習部704は、処理をステップS801a、S801bに戻す。一方、学習終了した場合、学習部704は、図11の処理を終了する。
 図4で説明した画像処理装置10は、図11の処理で学習したNN(残差学習モデル710)を、残差推定モデル410として、図5で説明した画像処理を実行することができる。
 (残差情報の計算処理)
 図12は、第2の実施形態に係る残差情報の計算処理の例を示すフローチャートである。この処理は、例えば、図11のステップS1103において、残差計算部1002が実行する残差情報の計算処理の一例を示している。
 ステップS1201にいて、残差計算部1002は、無修正画像901と教師用画像602の各画素の差分(例えば、各画素の画素値の差)を算出する。
 ステップS1202において、残差計算部1002は、算出した差分が所定値以下であるか否かを判断する。差分が所定値以下である場合、残差計算部1002は、処理をステップS1207に移行させて、現在の投影面残差を2つの画像の残差情報とする。一方、差分が所定値以下でない場合、残差計算部1002は、処理をステップS1203に移行させる。
 ステップS1203に移行すると、残差計算部1002は、差分が大きい画像上の場所を取得し、対応する投影面の座標を取得する。
 ステップS1204において、残差計算部1002は、取得した座標付近で差分が小さくなるような、投影面の残差情報を設定する。
 ステップS1205において、残差計算部1002は、設定した残差情報を反映して、自由視点画像を生成する。
 ステップS1206において、残差計算部1002は、生成した自由視点画像、及び教師用画像の各画素値の差分を算出して、処理をステップS1202に戻す。
 残差計算部1002は、図12の処理を、2つの画像の各画素値の差分が所定値以下になるまで繰り返し実行することにより、2つの画像の残差情報を求めることができる。ただし、残差計算部1002が、2つの画像の残差情報を求める方法はこれに限られない。
 なお、第1の実施形態に係る学習処理は、画像誤差を起点に誤差逆伝搬法(バックプロパゲーション)を用いて、残差学習モデル710を学習(重みを更新)するという流れになる。その前提として、残差計算過程において、各計算が学習系において微分可能な手順になっている必要がある。
 一方、第2の実施形態に係る学習処理は、2つの画像の残差情報を直接用いて、残差学習モデル710を学習することになるので、残差計算過程が微分可能な手順でなくても良いというメリットが得られる。
 開発者等は、例えば、教師データとして直接的な画像を用いることができるというメリットを取るか、誤差逆伝搬法の条件を緩和できるというメリットを取るかにより、第1の実施形態、又は第2の実施形態に係る学習処理を選択することができる。
 [第3の実施形態]
 第3の実施形態では、残差推定モデル410、及び残差学習モデルの好適な構成例について説明する。
 図13は、第3の実施形態に係る残差推定モデルの構成例を示す図である。残差推定モデル410は、複数のカメラ特性補正モデル1301-1、1301-2、1301-3、・・・と、各カメラ特性補正モデルに共通のベースモデル1302とに分離した形で構成してもよい。なお、以下の説明において、複数のカメラ特性補正モデル1301-1、1301-2、1301-3、・・・のうち、任意のカメラ補正モデルを示す場合、「カメラ特性補正モデル1301」を用いる。
 この場合、画像処理装置10は、例えば、ユーザによる設定に応じて、カメラ特性補正モデル1301を切り替える。具体的には、ユーザAPI(Application Programming Interface)には、カメラ特性補正モデル1301を指定する引数を設け、ユーザSDKには、当該引数と連動して参照される複数のカメラ特性補正モデル1301が定義されたデータベースを設ける。
 カメラ特性補正モデル1301は、残差推定モデル410の主に画像入力に近いネットワーク部分であり、カメラ特性パラメータ(焦点距離等)に敏感な重みデータを学習する。カメラ特性補正モデル1301は、複数の学習用撮像画像と、複数の学習用撮像画像に映った1つ以上の立体物の三次元情報とから、当該立体物の特徴点の特徴マップ情報を推論するように学習させたカメラモデル推論エンジンの一例である。
 ベースモデル1302は、カメラ特性パラメータに影響し難い、各カメラ特性補正モデル1301に共通の重みデータを学習する。ベースモデル1302は、カメラ特性補正モデル1301が出力する特徴マップ情報と視点情報240とから、既定投影面231と表示投影面との差分を推論するように学習させたベースモデル推論エンジンの一例である。
 なお、残差推定モデル410は、複数のカメラモデル推論エンジンと、ベースモデル推論エンジンとに分離した形で構成される推論エンジンの一例である。カメラモデル推論エンジンの学習後の重みデータは、ベースモデル推論エンジンの学習後の重みデータに比べて、複数のカメラの特性パラメータの影響が大きい。
 <機能構成>
 図14は、第3の実施形態に係る画像処理装置の機能構成の一例を示す図である。図14に示すように、第3の実施形態に係る画像処理装置10は、図4で説明した一実施形態に係る画像処理装置10の機能構成に加えて、記憶部406に補正モデルDB(Database)1401を記憶している。
 補正モデルDB1401は、複数のカメラ特性補正モデル1301-1、1301-2、1301-3、・・・が定義されたデータベースである。
 例えば、設定部405は、カメラセットの設定画面を表示して、ユーザによるカメラセットの設定を受け付けると、受け付けたカメラセットに対応するカメラ特性補正モデル1301を、補正モデルDB1401から取得する。また、設定部405は、取得したカメラ特性補正モデル1301を、残差推定モデル410に設定する。
 これにより、画像処理装置10は、例えば、ユーザが第1のカメラセットを設定すると、第1のカメラセットに対応するカメラ特性補正モデル1301-1とベースモデル1302とを含む残差推定モデル410を用いて、図5で説明した画像処理を実行する。同様に、画像処理装置10は、例えば、ユーザが第2のカメラセットを設定すると、第2のカメラセットに対応するカメラ特性補正モデル1301-2とベースモデル1302とを含む残差推定モデル410を用いて、図5で説明した画像処理を実行する。
 <学習処理>
 続いて、第3の実施形態に係る学習処理について説明する。
 (処理の概要)
 図15、第3の実施形態に係る学習処理の概要について説明するための図である。画像処理装置10は、第1の学習処理として、1番目のカメラ特性補正モデル1301-1と、ベースモデル1302とを学習する(ステップS31)。
 また、画像処理装置10は、第2の学習処理として、2番目のカメラ特性補正モデル1301-2を、第1の学習処理で学習したベースモデル1302と組み合わせて、カメラ特性補正モデル1302-2を学習する(ステップS32)。
 同様にして、画像処理装置10は、第nの学習処理として、n番目のカメラ特性補正モデル1301―nを、第1の学習処理で学習したベースモデル1302と組み合わせて、カメラ特性補正モデル1301-nを学習することができる。
 (学習処理1)
 図16は、第3の実施形態に係る学習処理の例を示すフローチャート(1)である。この処理は、図7で説明した第1の実施形態に係る画像処理装置10に、第3の実施形態を適用した場合の学習処理の例を示している。なお、ここでは、第1の実施形態と同様の処理に対する詳細な説明は省略する。
 ステップS1601において、画像処理装置10は、カウンタnを1に初期化して、ステップS1602の処理を実行する。
 ステップS1602において、画像処理装置10は、1番目のカメラ特性補正モデル1301―1と、ベースモデル1302とを含む残差学習モデル710を、図8で説明した第1の実施形態に係る学習処理で学習する。
 例えば、図8のフローチャートを参照して、ステップS801aにおいて、撮像画像準備部701は、第1の複数のカメラ(第1のカメラセット)12のそれぞれにより第1の複数の撮像画像を準備する第1の撮像画像準備処理を実行する。
 ステップS801bにおいて、三次元情報準備部702は、第1の複数の撮像画像に映った1つ以上の立体物の第1の三次元情報を準備する第1の三次元情報準備処理を実行する。
 ステップS803において、教師用画像準備部703は、第1の三次元情報により第1の複数の撮像画像の三次元画像を復元し、入力した視点情報に基づいて第1の教師用画像を生成する第1の教師用画像準備処理を実行する。
 ステップS804において、学習部704は、第1の複数の撮像画像と、第1の複数のカメラ12のうちの少なくとも1つのカメラ12に関する特性パラメータとを、第1のカメラ特性補正モデル1301―1に入力して第1の学習用残差情報を取得する。
 ステップS805において、学習部704は、第1の学習用残差情報と、投影面情報23第1の学習用画像を生成する。
 ステップS806において、学習部704は、第1の教師用画像と第1の学習用画像との誤差が小さくなるように、カメラ特性補正モデル1301―1、及びベースモデル1302の両方を学習させる。
 ここで、図16に戻り、ステップS1603以降の処理について説明する。ステップS1603において、画像処理装置10は、n≦N(Nは、カメラ特性補正モデル1301の数)であるか否かを判断する。n≦Nでない場合、画像処理装置10は、処理をステップS1604に移行させる。一方、n≦Nである場合、画像処理装置10は、図16の学習処理を終了する。
 ステップS1604に移行すると、画像処理装置10は、nに1を加算して、ステップS1605の処理を実行する。
 ステップS1605において、画像処理装置10は、ベースモデル1302を固定して、図8で説明した第1の実施形態に係る学習処理で、n番目のカメラ特性補正モデルを学習し、処理をステップS1603に戻す。
 例えば、n=2である場合、図8のフローチャートを参照して、ステップS801aにおいて、撮像画像準備部701は、第2の複数のカメラ(第2のカメラセット)12のそれぞれにより第2の複数の撮像画像を準備する第2の撮像画像準備処理を実行する。
 ステップS801bにおいて、三次元情報準備部702は、第2の複数の撮像画像に映った1つ以上の立体物の第2の三次元情報を準備する第2の三次元情報準備処理を実行する。
 ステップS803において、教師用画像準備部703は、第2の三次元情報により第2の複数の撮像画像の三次元画像を復元し、入力した視点情報に基づいて第2の教師用画像を生成する第2の教師用画像準備処理を実行する。
 ステップS804において、学習部704は、第2の複数の撮像画像と、第2の複数のカメラ12のうちの少なくとも1つのカメラ12に関する特性パラメータとを、第2のカメラ特性補正モデル1301―2に入力して第2の学習用残差情報を取得する。
 ステップS805において、学習部704は、第2の学習用残差情報と、投影面情報230と、視点情報240とを用いて、第2の複数の撮像画像を表示投影面にマッピングして第2の学習用画像を生成する。
 ステップS806において、学習部704は、第2の教師用画像と第2の学習用画像との誤差が小さくなるように、ベースモデル1302を固定して、カメラ特性補正モデル1301―2を学習させる。
 図16に示した学習処理により、画像処理装置10は、図13に示すような、複数のカメラ特性補正モデル1301-1、1301-2、1302-3、・・・と、ベースモデル1302とを含む残差推定モデル410を得ることができる。
 (学習処理2)
 図17は、第3の実施形態に係る学習処理の例を示すフローチャート(2)である。この処理は、図10で説明した第2の実施形態に係る画像処理装置10に、第3の実施形態を適用した場合の学習処理の例を示している。なお、ここでは、第2の実施形態と同様の処理に対する詳細な説明は省略する。
 ステップS1701において、画像処理装置10は、カウンタnを1に初期化して、ステップS1702の処理を実行する。
 ステップS1702において、画像処理装置10は、1番目のカメラ特性補正モデル1301―1と、ベースモデル1302とを含む残差学習モデル710を、図11で説明した第2の実施形態に係る学習処理で学習する。
 例えば、図11のフローチャートを参照して、ステップS801aにおいて、撮像画像準備部701は、第1の複数のカメラ(第1のカメラセット)12のそれぞれにより第1の複数の撮像画像を準備する第1の撮像画像準備処理を実行する。
 ステップS801bにおいて、三次元情報準備部702は、第1の複数の撮像画像に映った1つ以上の立体物の第1の三次元情報を準備する第1の三次元情報準備処理を実行する。
 ステップS1101において、無修正画像準備部1101は、第1の複数の撮像画像を既定投影面にマッピングし、入力した視点情報に基づいて第1の無修正画像を生成する第1の無修正画像準備処理を実行する。
 ステップS1102において、教師用画像準備部703は、第1の三次元情報により第1の複数の撮像画像の三次元画像を復元し、入力した視点情報240に基づいて第1の教師用画像を生成する第1の教師用画像準備処理を実行する。
 ステップS1103において、残差計算部1002は、第1の無修正画像と第1の教師用画像とを比較して第1の残差情報を準備する第1の残差計算処理を実行する。
 ステップS1104において、学習部704は、第1の複数の撮像画像と視点情報240とを、学習中の残差学習モデル710に入力して、第1の学習用残差情報を取得する。具体的には、学習部704は、第1の複数の撮像画像および第1の複数のカメラのうちの少なくとも1つのカメラに関する特性パラメータを第1のカメラ特性補正モデル1301-1に入力して、第1の特徴マップ情報を取得する。また、学習部704は、取得した第1の特徴マップ情報と、視点情報240とをベースモデル1302に入力して、第1の学習用の残差情報を取得する。
 ステップS1105において、学習部704は、残差計算部1002が計算した第1の残差情報と、第1の学習用の残差情報との2つの残差情報の差が最小となるように、残差学習モデル710を学習する。このように、学習部704は、第1の残差情報を教師データとして、第1のカメラ特性補正モデル1301-1とベースモデル1302の両方を同時に学習させる。
 ここで、図17に戻り、ステップS1703以降の処理について説明する。ステップS1703において、画像処理装置10は、n≦N(Nは、カメラ特性補正モデル1301の数)であるか否かを判断する。n≦Nでない場合、画像処理装置10は、処理をステップS1704に移行させる。一方、n≦Nである場合、画像処理装置10は、図17の学習処理を終了する。
 ステップS1704に移行すると、画像処理装置10は、nに1を加算して、ステップS1705の処理を実行する。
 ステップS1705において、画像処理装置10は、ベースモデル1302を固定して、図11で説明した第2の実施形態に係る学習処理で、n番目のカメラ特性補正モデルを学習し、処理をステップS1703に戻す。
 例えば、n=2である場合、図11のフローチャートを参照して、ステップS801aにおいて、撮像画像準備部701は、第2の複数のカメラ(第2のカメラセット)12のそれぞれにより第2の複数の撮像画像を準備する第2の撮像画像準備処理を実行する。
 ステップS801bにおいて、三次元情報準備部702は、第2の複数の撮像画像に映った1つ以上の立体物の第2の三次元情報を準備する第2の三次元情報準備処理を実行する。
 ステップS1101において、無修正画像準備部1101は、第2の複数の撮像画像を既定投影面231にマッピングし、入力した視点情報240に基づいて第2の無修正画像を生成する第2の無修正画像準備処理を実行する。
 ステップS1102において、教師用画像準備部703は、第2の三次元情報により第2の複数の撮像画像の三次元画像を復元し、入力した視点情報240に基づいて第2の教師用画像を生成する第2の教師用画像準備処理を実行する。
 ステップS1103において、残差計算部1002は、第2の無修正画像と21の教師用画像とを比較して第2の残差情報を準備する第2の残差計算処理を実行する。
 ステップS1104において、学習部704は、第2の複数の撮像画像と視点情報240とを、学習中の残差学習モデル710に入力して、第2の学習用残差情報を取得する。具体的には、学習部704は、第2の複数の撮像画像および第2の複数のカメラのうちの少なくとも1つのカメラに関する特性パラメータを第2のカメラ特性補正モデル1301-2に入力して、第2の特徴マップ情報を取得する。また、学習部704は、取得した第2の特徴マップ情報と、視点情報240とをベースモデル1302に入力して、第2の学習用の残差情報を取得する。
 ステップS1105において、学習部704は、残差計算部1002が計算した第2の残差情報と、第2の学習用の残差情報との2つの残差情報の差が最小となるように、ベースモデル1302を固定して、第2のカメラ特性補正モデル1301-2を学習させる。これにより、学習部704は、第2の残差情報を教師データとして、第2のカメラ特性補正モデル1301-2を学習させる。
 図17に示した学習処理により、画像処理装置10は、図13に示すような、複数のカメラ特性補正モデル1301-1、1301-2、1302-3、・・・と、ベースモデル1302とを含む残差推定モデル410を得ることができる。
 [第4の実施形態]
 上記の各実施形態では、画像処理システム100が、自動車等の車両1に搭載されている場合の例について説明した。第4の実施形態では、画像処理システム100を、例えば、ARゴーグル等のエッジデバイスに三次元画像を表示する三次元画像表示システムに適用する場合の例について説明する。
 図18は、第4の実施形態に係る三次元画像表示システムのシステム構成の例を示す図である。三次元画像表示システム1800は、ARゴーグル等のエッジデバイス1801と、例えば、インターネットやLAN(Local Area Network)等の通信ネットワークNを介して、エッジデバイス1801と通信可能なサーバ1802とを含む。
 エッジデバイス1801は、例えば、1つ以上の周辺カメラ、三次元センサ、表示デバイス、及び通信I/F等を備え、周辺カメラで撮像した撮像画像、及び三次元センサで取得した三次元情報を、サーバ1802に送信する。
 サーバ1802は、1つ以上のコンピュータ300を備え、所定のプログラムを実行することにより、エッジデバイス1801から受信した撮像画像、及び三次元情報を用いて、三次元画像を生成し、生成した三次元画像をエッジデバイス1801に送信する。なお、サーバ1802は、遠隔処理手段の一例である。
 エッジデバイス1801は、サーバ1802から受信した三次元画像を、表示デバイスに表示することにより、周辺の三次元画像を表示する。
 ただし、従来のシステムでは、エッジデバイス1801が、サーバ1802に撮像画像と三次元情報とを送信した後、サーバ1802から三次元画像を受信するまでの間、三次元画像を表示できないという問題がある。
 そこで、本実施形態に係るエッジデバイス1801は、サーバ1802に撮像画像と三次元情報とを送信した後、サーバ1802から三次元画像を受信するまでの間に、例えば、図5で説明した画像処理を用いて生成した自由視点画像を表示する。これにより、本実施形態に係る三次元画像表示システム1800によれば、エッジデバイス1801は、サーバ1802から三次元画像を受信する前に、仮想空間表示が可能になる。
 <ハードウェア構成>
 図19は、第4の実施形態に係るエッジデバイスのハードウェア構成の例を示す図である。エッジデバイス1801は、コンピュータの構成を備え、例えば、プロセッサ1901、メモリ1902、ストレージデバイス1903、通信I/F1904、表示デバイス1905、複数の周辺カメラ1906、IMU1907、三次元センサ1908、及びバス1909等を有する。
 プロセッサ1901は、例えば、ストレージデバイス1903等の記憶媒体に記憶したプログラムを実行することにより、所定の処理を実行するCPU、及びGPU等の演算装置である。メモリ1902は、例えば、プロセッサ1901のワークエリア等として用いられる揮発性のメモリであるRAM、及びプロセッサ1901の起動用のプログラム等を記憶した不揮発性のメモリであるROM等を含む。ストレージデバイス1903は、例えば、SSD、又はHDD等の大容量の不揮発性の記憶装置である。
 通信I/F1904は、エッジデバイス1801を通信ネットワークNに接続し、サーバ1802と通信するWAN(Eide Area Network)、又はLAN(Local Area Network)等の通信デバイスである。表示デバイス1905は、例えば、LCD、又は有機EL等の表示手段である。複数の周辺カメラ1906は、エッジデバイス1801の周辺を撮像するカメラである。
 IMU(Inertial Measurement Unit)1907は、例えば、ジャイロセンサと、加速度センサとにより、三次元の角速度と加速度を検知する慣性計測デバイスである。三次元センサ1908は、例えば、LiDAR、ステレオカメラ、深度カメラ、又は無線センシングデバイス等の三次元情報を取得するセンサである。バス1909は、上記の各構成要素に接続され、例えば、アドレス信号、データ信号、及び各種の制御信号等を伝送する。
 <機能構成>
 図20は、第4の実施形態に係る三次元画像表示システムの機能構成を示す図である。
 (エッジデバイスの機能構成)
 エッジデバイス1801は、プロセッサ1901が所定のプログラムを実行することにより、図4で説明した画像処理装置10の機能構成に加えて、三次元情報取得部2001、送信部2002、及び受信部2003等を有する。また、エッジデバイス1801は、表示制御部404に代えて、表示制御部2004を有する。なお、画像取得部401、残差推定部402、マッピング部403、設定部405、及び記憶部406については、図4で説明した画像処理装置10の各機能構成と同様なので、ここでは説明を省略する。
 三次元情報取得部2001は、三次元センサ1908を用いて、エッジデバイス1801の周辺の三次元情報を取得する。送信部2002は、三次元情報取得部2001が取得した三次元情報と、画像取得部401が取得した複数の撮像画像とを、サーバ1802に送信する。
 受信部2003は、送信部2002が送信した三次元情報と複数の撮像画像とに応じて、サーバ1802が送信する三次元画像を受信する。表示制御部2004は、受信部2003が三次元画像の受信を完了する前に、マッピング部403が生成した自由視点画像250を、表示装置16等に表示する。また、表示制御部2004は、受信部2003が三次元画像の受信を完了した後に、受信した三次元画像を表示装置16等に表示する。
 (サーバの機能構成)
 サーバ1802は、1つ以上のコンピュータ300で所定のプログラムを実行することにより、受信部2011、三次元画像生成部2012、及び送信部2013等を実現している。
 受信部2011は、例えば、通信装置307を用いて、エッジデバイス1801が送信する三次元情報と、複数の撮像画像とを受信する。
 三次元画像生成部2012は、受信部2011が受信した三次元情報と、複数の撮像画像とを用いて、複数の撮像画像を三次元空間にレンダリングして、エッジデバイス1801の周辺の三次元画像を生成する。なお、本実施形態では、サーバ1802による三次元画像の生成方法は、任意の方法であってよい。
 送信部2013は、例えば、通信装置307を用いて、三次元画像生成部2012が生成した三次元画像をエッジデバイスに送信する。
 <処理の流れ>
 図21は、第4の実施形態に係る三次元画像表示処理の例を示すシーケンス図である。
 ステップS2101において、エッジデバイス1801の画像取得部401は、複数の周辺カメラ1906のそれぞれにより、エッジデバイス1801の周辺を撮像した複数の撮像画像を取得する。
 ステップS2102において、エッジデバイス1801の三次元情報取得部2001は、三次元センサ1908を用いて、複数の撮像画像に映った1つ以上の立体物の三次元情報を取得する。例えば、三次元情報取得部2001は、エッジデバイス1801の周辺の三次元点群情報等を取得する。
 ステップS2103において、エッジデバイス1801の送信部2002は、画像取得部401が取得した複数の撮像画像と、三次元情報取得部2001が取得した三次元情報とを、サーバ1802に送信する。
 ステップS2104において、サーバ1802の三次元画像生成部2012は、エッジデバイス1801から受信した複数の撮像画像と三次元情報とを用いて、複数の撮像画像を三次元空間にレンダリングした三次元画像を生成する三次元画像生成処理を実行する。ただし、この処理には時間を要し、また、エッジデバイス1801との通信状態、及びサーバ1802の負荷等により、処理時間が変動する場合がある。
 ステップS2105において、エッジデバイス1801は、ステップS2104の処理と並行して、例えば、図5で説明した画像処理を実行することにより、複数の撮像画像を表示投影面にマッピングした自由視点画像を生成し、表示デバイス1905に表示する。なお、この処理は、サーバ1802が実行する三次元画像生成処理より短時間で処理が可能であり、また、サーバ1802との通信情報、サーバ1802の負荷等の影響を受けないため、エッジデバイス1801の周辺の画像をより短時間で表示することができる。
 ステップS2106において、サーバ1802の三次元画像生成部2012が、三次元画像の生成を完了すると、サーバ1802の送信部2013は、生成した三次元画像をエッジデバイス1801に送信する。
 ステップS2107において、エッジデバイス1801の表示制御部2004は、サーバ1802から三次元画像を受信すると、受信した三次元画像を表示デバイス1905に表示する。
 図21の処理により、三次元画像表示システム1800は、サーバ1802に複数の撮像画像と三次元情報とを送信した後、サーバ1802から三次元画像を受信する前に、仮想空間を表示することができる。
 以上、本発明の各実施形態によれば、複数の撮像画像を用いて自由視点画像を合成する画像処理システムにおいて、三次元のセンシングデバイスによらずに、歪みの少ない自由視点画像を合成できるようになる。
 1 画像処理システム
 10 画像処理装置
 12、12A~12D カメラ
 16 表示装置
 210 撮像画像
 130 投影面情報
 220 残差情報
 230 投影面情報(既定投影面に関する情報)
 231 既定投影面
 240 視点情報
 250 自由視点画像
 300 コンピュータ
 401 画像取得部
 402 残差推定部
 403 マッピング部
 404、2004 表示制御部
 410 残差推定モデル(推論エンジン)
 601 学習用残差情報
 602 教師用画像
 603 学習用画像
 701 撮像画像準備部
 702 三次元情報準備部
 703 教師用画像準備部
 704 学習部
 405、705 設定部
 710 残差学習モデル(ニューラルネットワーク)
 901 無修正画像
 1001 無修正画像準備部
 1002 残差計算部
 1301、1301-1~1301-3 カメラ特性補正モデル(カメラモデル推論エンジン)
 1302 ベースモデル(ベースモデル推論エンジン)
 1800 三次元画像表示システム
 2001 三次元情報取得部
 2002 送信部
 2003 受信部

Claims (16)

  1.  表示投影面上に複数の撮像画像を用いた自由視点画像を合成する画像処理方法であって、
     複数のカメラのそれぞれにより前記複数の撮像画像を取得する画像取得ステップと、
     前記複数の撮像画像と視点情報とを入力し、予め定義したボウル形状の既定投影面と前記表示投影面との差分を示す投影面の残差情報を機械学習により推定する残差推定ステップと、
     前記既定投影面に関する情報と前記残差情報と前記視点情報とを用いて、前記複数の撮像画像を前記表示投影面にマッピングして前記自由視点画像を得るマッピングステップと、
     をコンピュータが実行する、画像処理方法。
  2.  前記残差推定ステップは、
     複数の学習用の撮像画像と前記視点情報と前記複数の学習用の撮像画像に映った1つ以上の立体物の三次元情報とから、前記既定投影面と前記表示投影面との差分を推論するように学習させた推論エンジンを使用して前記残差情報を推定する、
     請求項1に記載の画像処理方法。
  3.  前記残差推定ステップは、
     複数の学習用の撮像画像と、前記複数の学習用の撮像画像に映った1つ以上の立体物の三次元情報とから、前記立体物の特徴点の特徴マップ情報を推論するように学習させたカメラモデル推論エンジンと、
     前記カメラモデル推論エンジンの出力する前記特徴マップ情報と前記視点情報とから、前記既定投影面と前記表示投影面との差分を推論するように学習させたベースモデル推論エンジンと、
     を使用して前記残差情報を推定する、
     請求項1に記載の画像処理方法。
  4.  前記カメラモデル推論エンジンの学習後の重みデータは、
     前記ベースモデル推論エンジンの学習後の重みデータに比べて、
     前記複数のカメラの特性パラメータの影響が大きい、
     請求項3に記載の画像処理方法。
  5.  前記カメラモデル推論エンジンには、前記複数のカメラのうちの少なくとも1つのカメラに関する特性パラメータが入力される、
     請求項3又は4に記載の画像処理方法。
  6.  前記カメラモデル推論エンジンは、それぞれが異なる特性パラメータに基づいて学習させた複数のカメラモデル推論エンジンの候補から、前記特徴マップ情報を推論する前記カメラモデル推論エンジンを選択可能である、
     請求項3又は4に記載の画像処理方法。
  7.  複数の撮像画像に基づいて、予め定義したボウル形状の既定投影面に対して前記複数の撮像画像に映った1つ以上の立体物の三次元情報を反映させた投影面の残差情報を推論するニューラルネットワークの学習方法であって、
     複数のカメラのそれぞれで撮像した前記複数の撮像画像を準備する撮像画像準備ステップと、
     前記三次元情報を準備する三次元情報準備ステップと、
     前記三次元情報により前記複数の撮像画像の三次元画像を復元し、入力した視点情報に基づいて教師用の自由視点画像である教師用画像を生成する教師用画像準備ステップと、
     前記複数の撮像画像と前記視点情報とを前記ニューラルネットワークに入力して学習用残差情報を取得し、前記学習用残差情報と前記既定投影面に関する情報と前記視点情報とを用いて前記複数の撮像画像を表示投影面にマッピングして学習用の自由視点画像である学習用画像を生成し、前記教師用画像と前記学習用画像との誤差が小さくなるように前記ニューラルネットワークを学習させる学習ステップと、
     をコンピュータが実行する、ニューラルネットワークの学習方法。
  8.  複数の撮像画像に基づいて、予め定義したボウル形状の既定投影面に対して前記複数の撮像画像に映った1つ以上の立体物の三次元情報を反映させた投影面の残差情報を推論するニューラルネットワークの学習方法であって、
     複数のカメラのそれぞれにより前記複数の撮像画像を準備する画像準備ステップと、
     前記複数の撮像画像を前記既定投影面にマッピングし、入力した視点情報に基づいて無修正の自由視点画像である無修正画像を生成する無修正画像準備ステップと、
     前記三次元情報を準備する三次元情報準備ステップと、
     前記三次元情報により前記複数の撮像画像の三次元画像を復元し、入力した視点情報に基づいて教師用の自由視点画像である教師用画像を生成する教師用画像準備ステップと、
     前記無修正の自由視点画像と前記教師用画像とを比較して前記残差情報を準備する残差計算ステップと、
     前記複数の撮像画像と視点情報とを前記ニューラルネットワークに入力し、前記残差計算ステップで準備した前記残差情報を教師データとして、前記ニューラルネットワークを学習させる学習ステップと、
     をコンピュータが実行する、ニューラルネットワークの学習方法。
  9.  前記ニューラルネットワークは、
     前記複数の撮像画像と、前記複数のカメラのうちの少なくとも1つのカメラに関する特性パラメータとが入力されるカメラモデル推論ネットワークと、
     前記カメラモデル推論ネットワークの出力と前記視点情報とが入力されるベースモデル推論ネットワークとで構成される
     請求項7又は8に記載のニューラルネットワークの学習方法。
  10.  複数の撮像画像に基づいて、予め定義したボウル形状の既定投影面に対して前記複数の撮像画像に映った1つ以上の立体物の三次元情報を反映させた投影面の残差情報を推論するニューラルネットワークの学習方法であって、
     前記ニューラルネットワークは、第1のカメラモデル推論ネットワーク又は第2のカメラモデル推論ネットワークと、ベースモデル推論ネットワークとで構成され、
     第1の複数のカメラのそれぞれにより第1の複数の撮像画像を準備する第1の撮像画像準備ステップと、
     第2の複数のカメラのそれぞれにより第2の複数の撮像画像を準備する第2の撮像画像準備ステップと、
     前記第1の複数の撮像画像に映った1つ以上の立体物の第1の三次元情報を準備する第1の三次元情報準備ステップと、
     前記第2の複数の撮像画像に映った1つ以上の立体物の第2の三次元情報を準備する第2の三次元準備ステップと、
     前記第1の三次元情報により前記第1の複数の撮像画像の三次元画像を復元し、入力した視点情報に基づいて第1の教師用の自由視点画像である第1の教師用画像を生成する第1の教師用画像準備ステップと、
     前記第2の三次元情報により前記第2の複数の撮像画像の三次元画像を復元し、前記視点情報に基づいて第2の教師用の自由視点画像である第2の教師用画像を生成する第2の教師用画像準備ステップと、
     前記第1の複数の撮像画像と、前記第1の複数のカメラのうちの少なくとも1つのカメラに関する特性パラメータとを前記第1のカメラモデル推論ネットワークに入力し、前記第1のカメラモデル推論ネットワークの出力と視点情報とを前記ベースモデル推論ネットワークに入力して得られる第1の学習用残差情報と前記既定投影面に関する情報と前記視点情報とを用いて、前記第1の複数の撮像画像を表示投影面にマッピングして第1の学習用の自由視点画像である第1の学習用画像を生成し、前記第1の教師用画像と前記第1の学習用画像との誤差が小さくなるように前記第1のカメラモデル推論ネットワークおよび前記ベースモデル推論ネットワークの両方を同時に学習させ、
     前記第2の複数の撮像画像および前記第2の複数のカメラのうちの少なくとも1つのカメラに関する特性パラメータを前記第2のカメラモデル推論ネットワークに入力し、前記第2のカメラモデル推論ネットワークの出力と視点情報とを学習済みの前記ベースモデル推論ネットワークに入力して得られる第2の学習用残差情報と前記既定投影面に関する情報と前記視点情報とを用いて、前記第2の複数の撮像画像を表示投影面にマッピングして第2の学習用の自由視点画像である第2の学習用画像を生成し、前記第2の教師用画像と前記第2の学習用画像との誤差が小さくなるように前記第2のカメラモデル推論ネットワークを学習させる学習ステップとを有する、
     ニューラルネットワークの学習方法。
  11.  複数の撮像画像に基づいて、予め定義したボウル形状の既定投影面に対して前記複数の撮像画像に映った1つ以上の立体物の三次元位置情報を反映させた投影面の残差情報を推論するニューラルネットワークの学習方法であって、
     前記ニューラルネットワークは、第1のカメラモデル推論ネットワーク又は第2のカメラモデル推論ネットワークと、ベースモデル推論ネットワークとで構成され、
     第1の複数のカメラのそれぞれにより第1の複数の撮像画像を準備する第1の撮像画像準備ステップと、
     第2の複数のカメラのそれぞれにより第2の複数の撮像画像を準備する第2の撮像画像準備ステップと、
     前記第1の複数の撮像画像を前記既定投影面にマッピングし、入力した視点情報に基づいて第1の無修正の自由視点画像である第1の無修正画像を生成する第1の無修正画像準備ステップと、
     前記第2の複数の撮像画像を前記既定投影面にマッピングし、入力した視点情報に基づいて第2の無修正の自由視点画像である第2の無修正画像を生成する第2の無修正画像準備ステップと、
     前記第1の複数の撮像画像に映った1つ以上の立体物の第1の三次元情報を準備する第1の三次元情報準備ステップと、
     前記第2の複数の撮像画像に映った1つ以上の立体物の第2の三次元情報を準備する第2の三次元情報準備ステップと、
     前記第1の三次元情報により前記第1の複数の撮像画像の三次元画像を復元し、入力した視点情報に基づいて第1の教師用の自由視点画像である第1の教師用画像を生成する第1の教師用画像準備ステップと、
     前記第2の三次元情報により前記第2の複数の撮像画像の三次元画像を復元し、前記視点情報に基づいて第2の教師用の自由視点画像である第2の教師用画像を生成する第2の教師用画像準備ステップと、
     前記第1の無修正画像と前記第1の教師用画像とを比較して第1の残差情報を準備する第1の残差計算ステップと、
     前記第2の無修正画像と前記第2の教師用画像とを比較して第2の残差情報を準備する第2の残差計算ステップと、
     前記第1の複数の撮像画像および前記第1の複数のカメラのうちの少なくとも1つのカメラに関する特性パラメータを前記第1のカメラモデル推論ネットワークに入力し、前記第1のカメラモデル推論ネットワークの出力と視点情報とを前記ベースモデル推論ネットワークに入力し、前記第1の残差計算ステップで準備した前記第1の残差情報を教師データとして、前記第1のカメラモデル推論ネットワークおよび前記ベースモデル推論ネットワークの両方を同時に学習させ、
     前記第2の複数の撮像画像および前記第2の複数のカメラのうちの少なくとも1つのカメラに関する特性パラメータを前記第2のカメラモデル推論ネットワークに入力し、前記第2のカメラモデル推論ネットワークの出力と視点情報とを学習済みの前記ベースモデル推論ネットワークに入力し、前記第2の残差計算ステップで準備した前記第2の残差情報を教師データとして、前記第2のカメラモデル推論ネットワークを学習させる学習ステップとを有する、
     ニューラルネットワークの学習方法。
  12.  表示投影面上に複数の撮像画像を用いて合成した自由視点画像を表示する三次元画像表示方法であって、
     複数のカメラのそれぞれにより前記複数の撮像画像を取得する撮像画像取得ステップと、
     前記複数の撮像画像に映った1つ以上の立体物の三次元情報を取得する三次元情報取得ステップと、
     前記複数の撮像画像と視点情報とを入力し、予め定義したボウル形状の既定投影面と前記表示投影面との差分を示す投影面の残差情報を機械学習により推定する残差推定ステップと、
     前記既定投影面に関する情報と前記残差情報と前記視点情報とを用いて、前記複数の撮像画像を表示投影面にマッピングして自由視点画像を得るマッピングステップと、
     前記複数の撮像画像および前記三次元情報を遠隔処理手段に送信する送信ステップと、
     前記遠隔処理手段において前記三次元情報に基づいて復元された前記複数の撮像画像の三次元画像を前記遠隔処理手段から受信する受信ステップと、
     前記受信ステップでの前記三次元画像の受信を完了する前に前記自由視点画像を表示手段に表示し、前記受信ステップでの前記三次元画像の受信を完了した後に前記三次元画像を前記表示手段に表示する表示制御ステップと、
     をコンピュータが実行する、三次元画像表示方法。
  13.  表示投影面上に複数の撮像画像を用いた自由視点画像を合成する画像処理システムであって、
     複数のカメラのそれぞれにより前記複数の撮像画像を取得するように構成された画像取得部と、
     前記複数の撮像画像と視点情報とを入力し、予め定義したボウル形状の既定投影面と前記表示投影面との差分を示す投影面の残差情報を機械学習により推定するように構成された残差推定部と、
     前記既定投影面に関する情報と前記残差情報と前記視点情報とを用いて、前記複数の撮像画像を前記表示投影面にマッピングして前記自由視点画像を得るように構成されたマッピング部と、
     を有する、画像処理システム。
  14.  複数の撮像画像に基づいて、予め定義したボウル形状の既定投影面に対して前記複数の撮像画像に映った1つ以上の立体物の三次元情報を反映させた投影面の残差情報を推論するニューラルネットワークの学習システムであって、
     複数のカメラのそれぞれにより前記複数の撮像画像を準備するように構成された撮像画像準備部と、
     前記三次元情報を準備するように構成された三次元情報準備部と、
     前記三次元情報により前記複数の撮像画像の三次元画像を復元し、入力した視点情報に基づいて教師用の自由視点画像である教師用画像を生成するように構成された教師用画像準備部と、
     前記複数の撮像画像と前記視点情報とを前記ニューラルネットワークに入力して学習用残差情報を取得し、前記学習用残差情報と前記既定投影面に関する情報と前記視点情報とを用いて前記複数の撮像画像を表示投影面にマッピングして学習用の自由視点画像である学習用画像を生成し、前記教師用画像と前記学習用画像との誤差が小さくなるように前記ニューラルネットワークを学習させるように構成された学習部と、
     を有する、ニューラルネットワークの学習システム。
  15.  複数の撮像画像に基づいて、予め定義したボウル形状の既定投影面に対して前記複数の撮像画像に映った1つ以上の立体物の三次元情報を反映させた投影面の残差情報を推論するニューラルネットワークの学習システムであって、
     複数のカメラのそれぞれにより前記複数の撮像画像を準備するように構成された画像準備部と、
     前記複数の撮像画像を前記既定投影面にマッピングし、入力した視点情報に基づいて無修正の自由視点画像である無修正画像を生成するように構成された無修正画像準備部と、
     前記三次元情報を準備するように構成された三次元情報準備部と、
     前記三次元情報により前記複数の撮像画像の三次元画像を復元し、入力した視点情報に基づいて教師用の自由視点画像である教師用画像を生成するように構成された教師用画像準備部と、
     前記無修正の自由視点画像と前記教師用画像とを比較して前記残差情報を準備するように構成された残差計算部と、
     前記複数の撮像画像と視点情報とを前記ニューラルネットワークに入力し、前記残差計算部が準備した前記残差情報を教師データとして、前記ニューラルネットワークを学習させるように構成された学習部と、
     を有する、ニューラルネットワークの学習システム。
  16.  表示投影面上に複数の撮像画像を用いて合成した自由視点画像を表示する三次元画像表示システムであって、
     複数のカメラのそれぞれにより前記複数の撮像画像を取得するように構成された画像取得部と、
     前記複数の撮像画像に映った1つ以上の立体物の三次元情報を取得するように構成された三次元情報取得部と、
     前記複数の撮像画像と視点情報とを入力し、予め定義したボウル形状の既定投影面と前記表示投影面との差分を示す投影面の残差情報を機械学習により推定するように構成された残差推定部と、
     前記既定投影面に関する情報と前記残差情報と前記視点情報とを用いて、前記複数の撮像画像を表示投影面にマッピングして自由視点画像を得るように構成されたマッピング部と、
     前記複数の撮像画像および前記三次元情報を遠隔処理手段に送信するように構成された送信部と、
     前記遠隔処理手段において前記三次元情報に基づいて復元された前記複数の撮像画像の三次元画像を前記遠隔処理手段から受信するように構成された受信部と、
     前記受信部で前記三次元画像の受信を完了する前に前記自由視点画像を表示手段に表示し、前記受信部が前記三次元画像の受信を完了した後に前記三次元画像を前記表示手段に表示するように構成された表示制御部と、
     を有する、三次元画像表示システム。
PCT/JP2022/017069 2022-04-04 2022-04-04 画像処理方法、ニューラルネットワークの学習方法、三次元画像表示方法、画像処理システム、ニューラルネットワークの学習システム、及び三次元画像表示システム WO2023195056A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/017069 WO2023195056A1 (ja) 2022-04-04 2022-04-04 画像処理方法、ニューラルネットワークの学習方法、三次元画像表示方法、画像処理システム、ニューラルネットワークの学習システム、及び三次元画像表示システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/017069 WO2023195056A1 (ja) 2022-04-04 2022-04-04 画像処理方法、ニューラルネットワークの学習方法、三次元画像表示方法、画像処理システム、ニューラルネットワークの学習システム、及び三次元画像表示システム

Publications (1)

Publication Number Publication Date
WO2023195056A1 true WO2023195056A1 (ja) 2023-10-12

Family

ID=88242645

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/017069 WO2023195056A1 (ja) 2022-04-04 2022-04-04 画像処理方法、ニューラルネットワークの学習方法、三次元画像表示方法、画像処理システム、ニューラルネットワークの学習システム、及び三次元画像表示システム

Country Status (1)

Country Link
WO (1) WO2023195056A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017122294A1 (ja) * 2016-01-13 2017-07-20 株式会社ソシオネクスト 周囲監視装置、画像処理方法、及び画像処理プログラム
WO2019053922A1 (ja) * 2017-09-15 2019-03-21 アイシン精機株式会社 画像処理装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017122294A1 (ja) * 2016-01-13 2017-07-20 株式会社ソシオネクスト 周囲監視装置、画像処理方法、及び画像処理プログラム
WO2019053922A1 (ja) * 2017-09-15 2019-03-21 アイシン精機株式会社 画像処理装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
OTO TAKEUCHI, HIDEHIKO SHISHIDO, YOSHINARI KAMEDA, ITARU KITAHARA: "A Study on Generation of Omnidirectional Free Viewpoint Images Using a Generative Adversarial Network", IEICE TECHNICAL REPORT, MVE, IEICE, JP, vol. 118, no. 502 (MVE2018-67), 1 January 2019 (2019-01-01), JP, pages 79 - 84, XP009550285 *

Similar Documents

Publication Publication Date Title
US11914147B2 (en) Image generation apparatus and image generation method using frequency lower than display frame rate
US10701509B2 (en) Emulating spatial perception using virtual echolocation
US10410562B2 (en) Image generating device and image generating method
CN113811920A (zh) 分布式姿势估计
JP2020527432A (ja) レーシングシミュレーション
US20110066262A1 (en) Apparatuses, Systems, and Methods for Apparatus Operation and Remote Sensing
US10564915B2 (en) Displaying content based on positional state
JP4348468B2 (ja) 画像生成方法
JP2020065229A (ja) 映像通信方法、映像通信装置及び映像通信プログラム
JP6859447B2 (ja) 情報処理システムおよび対象物情報取得方法
KR102148103B1 (ko) 스테레오 카메라를 장착한 드론을 이용한 혼합현실 환경 생성 방법 및 장치
CN113483774A (zh) 导航方法、装置、电子设备及可读存储介质
CN112673276A (zh) 超声波传感器
WO2023195056A1 (ja) 画像処理方法、ニューラルネットワークの学習方法、三次元画像表示方法、画像処理システム、ニューラルネットワークの学習システム、及び三次元画像表示システム
US11741671B2 (en) Three-dimensional scene recreation using depth fusion
KR101947372B1 (ko) Hmd에 위치 보정 영상을 제공하는 방법 및 hmd에 위치 보정 영상을 표시하는 방법, 그리고 이를 이용한 위치 보정 영상을 표시하는 hmd
JP5759439B2 (ja) 映像コミュニケーションシステム及び映像コミュニケーション方法
TW201135583A (en) Telescopic observation method for virtual and augmented reality and apparatus thereof
WO2021149509A1 (ja) 撮像装置、撮像方法、及び、プログラム
US20220244726A1 (en) Information processing apparatus, information processing method, and program
US20200410734A1 (en) Spatial reproduction method and spatial reproduction system
CN115686233A (zh) 一种主动笔与显示设备的交互方法、装置及交互系统
KR101060998B1 (ko) 사용자 위치 기반 네트워킹 가상공간 시뮬레이터 시스템
Cai et al. Heads-up lidar imaging with sensor fusion
JP7434207B2 (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: 22936456

Country of ref document: EP

Kind code of ref document: A1