WO2020017134A1 - ファイルの生成装置およびファイルに基づく映像の生成装置 - Google Patents
ファイルの生成装置およびファイルに基づく映像の生成装置 Download PDFInfo
- Publication number
- WO2020017134A1 WO2020017134A1 PCT/JP2019/019226 JP2019019226W WO2020017134A1 WO 2020017134 A1 WO2020017134 A1 WO 2020017134A1 JP 2019019226 W JP2019019226 W JP 2019019226W WO 2020017134 A1 WO2020017134 A1 WO 2020017134A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- file
- foreground
- camera
- model
- virtual viewpoint
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/765—Interface circuits between an apparatus for recording and another apparatus
- H04N5/77—Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television camera
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/194—Segmentation; Edge detection involving foreground-background segmentation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/111—Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/172—Processing image signals image signals comprising non-image signal components, e.g. headers or format information
- H04N13/178—Metadata, e.g. disparity information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/189—Recording image signals; Reproducing recorded image signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/194—Transmission of image signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/282—Image signal generators for generating image signals corresponding to three or more geometrical viewpoints, e.g. multi-view systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/91—Television signal processing therefor
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/79—Processing of colour television signals in connection with recording
- H04N9/80—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
- H04N9/82—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only
- H04N9/8205—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/204—Image signal generators using stereoscopic image cameras
- H04N13/243—Image signal generators using stereoscopic image cameras using three or more 2D image sensors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/275—Image signal generators from 3D object models, e.g. computer-generated stereoscopic image signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N2013/0074—Stereoscopic image analysis
- H04N2013/0092—Image segmentation from stereoscopic image signals
Definitions
- the present invention relates to generation and handling of a virtual viewpoint video file.
- a virtual viewpoint video generation technology is a technology for reproducing a video viewed from an arbitrary virtual viewpoint specified by a user from a multi-view video obtained by imaging an object from multiple directions using a plurality of cameras.
- Various video materials such as a multi-view video, a foreground image, a foreground silhouette image, a foreground 3D model, a camera parameter, a background image, and a background 3D model are used to generate a virtual viewpoint video. These video materials are accumulated in a database after being generated, and appropriate material data is acquired from the database based on a virtual viewpoint specified by a user, and a virtual viewpoint video is generated (see Patent Document 1).
- a terminal such as a smartphone
- a virtual viewpoint video it was difficult to generate a virtual viewpoint video.
- the present invention has been made in view of the above problems, and has as its object to enable more devices to generate virtual viewpoint videos.
- the file generation device includes: an acquisition unit that acquires material data used for generating a virtual viewpoint video based on images captured from a plurality of viewpoints; material data acquired by the acquisition unit; and a type of the material data. And file output means for outputting the file generated by the file generation means.
- more devices can generate virtual viewpoint videos.
- FIG. 7E shows an example of data
- FIG. 7E shows an example of data
- (A) And (b) is a figure which shows an example of the structure of a box
- the figure which shows an example of a Vvvm file (A) is an example of a cimg box, and (b) is a diagram showing its syntax.
- (A) is an example of a cam box, and (b) is a diagram showing its syntax.
- (A) is an example of a figure box, and (b) is a diagram showing its syntax.
- (A) is an example of a big box, and (b) is a diagram showing its syntax.
- (A) is an example of an fmdl box, and (b) is a diagram showing its syntax.
- FIG. 1 is an example of a bmdl box
- FIG. 1 is a diagram showing its syntax
- FIG. 1 is a block diagram illustrating an internal configuration of an imaging unit.
- 5 is a flowchart illustrating a flow of processing for generating a virtual viewpoint video from a Vvvm file according to the first embodiment.
- the figure which shows the variation of the data structure of a Vvvm file (A), (c), and (e) are diagrams illustrating an example of metadata, and (b), (d), and (f) are diagrams illustrating bit assignments thereof.
- FIG. 1 The figure which shows the variation of the data structure of a Vvvm file
- FIG. 1 Functional block diagram of a file generation device according to a second embodiment
- A is a functional block diagram of a virtual viewpoint video generation device according to a second embodiment
- (b) is a block diagram illustrating an internal configuration of an imaging unit
- (c) is a block diagram illustrating an internal configuration of a foreground coloring unit.
- the virtual viewpoint video generation system includes a file generation device that generates a file containing material data of the virtual viewpoint video, and a virtual viewpoint video generation device that generates a virtual viewpoint video using the file.
- a file containing material data of a virtual viewpoint video (Virtual @ viewpoint @ video) is referred to as a "Vvvm file”.
- the virtual viewpoint video is a video generated by an end user and / or an appointed operator or the like freely operating the position and orientation of the virtual camera, and is also called a free viewpoint video or an arbitrary viewpoint video.
- the virtual viewpoint video may be a moving image or a still image.
- an example in which the virtual viewpoint video is a moving image will be mainly described.
- the file generation device generates a Vvvm file storing material data necessary for generating a virtual viewpoint video such as a multi-viewpoint video and camera parameters. At this time, storage data information, which is information for specifying stored material data, is added to the Vvvm file.
- the virtual viewpoint video generation device generates a virtual viewpoint video using the material data in the Vvvm file if it is determined based on the stored data information included in the Vvvm file that the device itself can generate the virtual viewpoint video.
- FIG. 1 is a functional block diagram of a file generation device 10 according to the present embodiment.
- the file generation device 10 includes a data input unit 11, a camera parameter generation unit 12, a file generation unit 13, and a file output unit 14.
- the file generation device 10 is an information processing device including hardware such as a CPU, a RAM, a ROM, and an HDD for calculation and data storage, and is, for example, a PC.
- the function of each unit shown in FIG. 1 is realized by the CPU reading a predetermined program from the ROM or HDD, expanding the program in the RAM, and executing the program by the CPU.
- FIG. 1 the role of each unit shown in FIG. 1 will be described.
- the data input unit 11 receives, via an external interface (not shown), input of various types of material data stored in the Vvvm file or data based on the material data.
- camera information relating to a plurality of cameras installed in a shooting scene, multi-viewpoint images shot by the plurality of cameras, data of a background 3D model representing a three-dimensional shape of a facility (background object) such as a stadium, etc.
- data of a background 3D model is input from a PC that generates the data.
- the camera information includes information such as the position, posture (gaze direction), and angle of view of each camera. If the number of cameras and the position, orientation, and angle of view of each camera change during shooting, camera information is acquired again.
- the captured image of each camera constituting the multi-view video is associated with a camera ID added to each camera, so that it is possible to determine which camera has captured the image.
- the input camera information is sent to the camera parameter generation unit 12, and each data of the multi-view video and the background 3D model is sent to the file generation unit 13.
- the camera parameter generation unit 12 generates camera parameters for each camera group including a plurality of cameras facing a common point of gaze, based on the camera information received from the data input unit 11.
- the camera parameters include at least information on the number of cameras constituting each camera group, and information on the position, orientation, and angle of view of each camera linked to the ID (camera identification number, etc.) of each camera. .
- information such as a shutter speed, an aperture value, an ISO sensitivity, a color temperature, a focal length of a lens, and a distance to a shooting target may be included.
- the generated camera parameters are sent to the file generation unit 13.
- the file generating unit 13 combines the data of the multi-view video and the background 3D model received from the data input unit 11 and the camera parameters received from the camera parameter generating unit 12 into one file in a common format. Then, storage data information indicating that a camera parameter, a background 3D model, and a multi-view video are stored is generated as material data, and the generated data is stored in the file together with the material data to generate the above-described Vvvm file. If the position, orientation, angle of view, etc. of one or more cameras are changed during shooting, the changed contents are added to the camera parameters together with time information and stored in the Vvvm file. Become. By doing so, even if the position, attitude, angle of view, etc.
- the file When the file is generated, the file may be divided into a plurality of Vvvm files in consideration of, for example, a capacity limitation at the time of file transfer. When a file is generated by such division, a process of associating a plurality of divided files with each other, which should have been originally one file, is also performed.
- the file output unit 14 outputs the Vvvm file generated by the file generation unit 13 to various devices that can generate a virtual viewpoint video.
- Examples of the output mode include wired transmission to a PC, wireless transmission to a mobile terminal such as a smartphone or tablet, uploading to a server via a network, and storage in a portable storage medium.
- FIG. 2 is a flowchart illustrating the flow of the Vvvm file generation process according to the present embodiment.
- the symbol “S” at the beginning of each process means a step.
- step S201 the data input unit 11 receives data of the background 3D model and information of each camera that performs shooting from an external PC or the like.
- the received data of the background 3D model is sent to the file generation unit 13, and the camera information is sent to the camera parameter generation unit 12.
- the camera parameter generation unit 12 generates the above-described camera parameters based on the camera information received from the data input unit 11.
- the generated camera parameters are sent to the file generation unit 13.
- the file generation unit 13 stores the background 3D model received from the data input unit 11 and the camera parameters received from the camera parameter generation unit 12 in a Vvvm file.
- the data input unit 11 starts acquiring a multi-view video.
- a photographing start signal is transmitted to a plurality of cameras connected by a daisy chain method or the like, and data of a photographed image of each camera is sequentially received in frame units.
- the source of the shooting start signal may be the file generation device 10 or another device.
- the acquired data of the multi-view video is sequentially sent to the file generation unit 13.
- the file generation unit 13 stores the data of the multi-view video received from the data input unit 11 in the Vvvm file.
- the storage is performed, for example, on a frame-by-frame basis, and is stored so as to identify which camera has captured each captured image forming the multi-viewpoint video.
- the data input unit 11 determines whether the acquisition of the multi-view video has been completed. For example, if a shooting stop signal is transmitted to a plurality of cameras that are shooting, and reception of data for all shot frames has been completed, it is determined that acquisition of a multi-view video has been completed, and the process proceeds to S207. On the other hand, if there is still unreceived frame data during shooting, the process returns to S205 to continue acquiring a multiple viewpoint video and storing it in the Vvvm file.
- the file generation unit 13 generates storage data information indicating the content of the material data stored in the Vvvm file, and adds the generated data to the Vvvm file.
- the completed Vvvm file is sent to the file output unit 14.
- the file output unit 14 outputs the Vvvm file to the virtual viewpoint video generation device 20 as an output destination specified by a user or the like.
- the file generation unit 13 collects all the frame data into one Vvvm file after completing the acquisition processing, but the present invention is not limited to this.
- the files generated in frame units may be sequentially output, and the output destination external device may combine them into one file.
- FIG. 3A is a diagram illustrating an example of a data structure of a Vvvm file according to the present embodiment.
- the Vvvm file 300 shown in FIG. 3A includes a data version 301, stored data information 302, camera parameters 303, a background 3D model 304, and frame data 305.
- the frame data 305 exists from the first frame to the N-th frame, and one frame data includes images captured by M cameras. In this case, N and M are natural numbers of 1 or more.
- the stored data information 302 indicates what kind of material data is stored in the $ Vvvm file 300.
- FIG. 3B shows an example of a bit assignment of the stored data information 302. Now, the stored data information 302 has a 32-bit value. If each bit is "1", it indicates that the target data is stored, and if "0", the target data is not stored. Indicates that In the Vvvm file 300 shown in FIG. 3A, three types of material data of a captured image (multi-viewpoint video) of each camera, camera parameters, and a background 3D model are stored. In this case, each bit of b0, b1, and b5 is “1", and the other bits are "0". b10 to b13 can be independently defined.
- an image in which each pixel value represents the distance from the camera to the subject may be added in the same format as the foreground image, where the data name is a depth map or a distance image. Further, data for speeding up the generation of the virtual viewpoint video and data for improving the image quality may be added.
- FIG. 4A shows an example of metadata of an image captured by each camera.
- FIG. 4B shows an example of metadata of camera parameters, and
- FIG. 4C shows bit assignment of stored camera parameters.
- FIG. 4D shows an example of the metadata of the background 3D model, and
- FIG. 4E shows the bit assignment of the stored background 3D model.
- the head (first 4 bytes) of the camera parameter 303 includes information indicating the number of installed cameras, and metadata about the camera parameters follows the number information and continues for the number of cameras.
- the number of camera parameters 303 may be one for one Vvvm file, but may be one for each frame. By having camera parameters in frame units, it is possible to cope with the case where the position and orientation of the camera changes during shooting, and the case where some cameras break down and the number of cameras constituting the camera group changes. .
- FIG. 5A is a diagram showing the structure of the box, which is composed of an area for storing size information, an area for storing type information, and an area for storing data. Further, as shown in FIG. 5B, it is also possible to adopt a structure in which a box further includes a box as data.
- FIG. 6 shows an example of the internal structure of a Vvvm file conforming to ISO @ BMFF.
- the Vvvm file 600 conforming to ISO @ BMFF includes boxes of ftyp 601, moov 602, cimg 603, cam 604, fimg 605, bigg 606, fmdl 607, bmdl 608, and mdat 609. Hereinafter, each box will be described.
- the ⁇ ftype box (File ⁇ Type ⁇ Compatibility ⁇ Box) 601 is a box arranged first in the file.
- the ftype box 601 contains information on the file format, information indicating the version of the box, information on compatibility with other file formats, information on the name of the maker who created the file, and the like.
- the above-described stored data information 302 indicating the type of each material data stored in the Vvvm file may be stored in the ftyp box 601.
- a moov box (Movie @ Box) 602 is a box for clarifying what data is stored in the file and how, and contains information such as a time axis and an address for managing media data.
- mdat box Media @ Data @ Box
- media data material data
- the ftype box 601, the moov box 602, and the mdat box 609 are boxes provided in common in ISO @ BMFF-compliant files.
- each box of the camp 604, the figure 605, the bigm 606, the fmdl 607, and the bmdl 608 is a box unique to the Vvvm file.
- a box specific to the Vvvm file will be described with a specific example.
- a cig box (Camera-captured Image60Data Box) 603 can be set for each camera, and contains format information of an image captured by each camera.
- FIG. 7A shows an example of the cimg box 603, and
- FIG. 7B shows the syntax thereof.
- a camp box (Camera Parameter Data Box) 604 can be set for each camera, and contains information indicating what data is stored as a camera parameter and each value of the corresponding camera parameter.
- FIG. 8A shows an example of the cam box 604, and FIG. 8B shows the syntax thereof.
- a $ fimg box (Foreground ⁇ Image ⁇ Data ⁇ Box) 605 contains information indicating what image data is stored as a foreground image and format information of each foreground image.
- FIG. 9A shows an example of the figure box 605, and FIG. 9B shows the syntax thereof.
- the “foreground format” 901 indicates the storage format and bit depth of the foreground image such as RAW, LOG, RGB, and YUV.
- the “foreground silhouette format” 902 indicates the bit depth of the foreground silhouette image. For example, it can indicate whether the image is a 1-bit foreground or a background, or can express the certainty as a foreground silhouette with 8 bits.
- “Cutout foreground format” 903 also indicates the same information as “foreground format” 901.
- a bimg box (Background Image Data Box) 606 contains information indicating what image data is stored as a background image and format information of each background image.
- FIG. 10A shows an example of the big box 606, and FIG. 10B shows the syntax thereof.
- the “background format” 1001 indicates information on the storage format and bit depth of the background image, similarly to the above-described “foreground format” 901.
- the “background texture format” 1002 indicates the number of vertex coordinates of the corresponding background 3D model in addition to the information on the storage format and the bit depth.
- “Cutout background format” 1003 indicates the same information as “background format” 1001.
- a fmdl box (Foreground Model Data Box) 607 contains information indicating what data is stored as a foreground 3D model and format information of each foreground 3D model.
- FIG. 11A shows an example of the fmdl box 607, and FIG. 11B shows the syntax thereof.
- a “point group format” 1101 indicates how many millimeters of a voxel each point represents.
- the “mesh model format” 1102 indicates the number of vertices of the mesh.
- “Billboard format” 1103 indicates a unit of coordinates at which a billboard is set.
- the “bounding box format” 1104 indicates an expression format such as whether the bounding box is indicated by two representative vertices, or one representative vertex and the width, the depth, and the height.
- a bmdl box (Background Model Data Box) 608 contains information indicating what data is stored as a background 3D model and format information of each background 3D model.
- FIG. 12A shows an example of the bmdl box 608, and FIG. 12B shows the syntax thereof.
- the “point group format” 1201 and the “mesh model format” 1202 indicate the same information as the “point group format” 1101 and the “mesh model format” 1102 regarding the foreground 3D model described above.
- the ISO @ BMFF standard has been described as an example, but the format of the Vvvm file is not limited to this.
- other standards such as HEIF (High Efficiency Image File Format) and MiAF (Multi-Image Application Format) compatible with ISO BMFF may be used.
- HEIF High Efficiency Image File Format
- MiAF Multi-Image Application Format
- it may be a unique format or a format newly appearing in the future.
- the values and expressions of the respective parameters are not limited to the above examples.
- at least one of the boxes of the cimg 603, the cam 604, the figg 605, the bigg 606, the fmdl 607, and the bmdl 608 shown in FIG. 6 may be stored in the moov box 602.
- FIG. 13A is a functional block diagram illustrating an internal configuration of the virtual viewpoint video generation device 20 according to the present embodiment.
- the virtual viewpoint video generation device 20 includes a file input unit 21, a generation possibility determination unit 22, a foreground / background separation unit 23, a virtual viewpoint path input unit 24, an imaging unit 25, and an image output unit 26.
- the virtual viewpoint video generation device 20 is an information processing device including hardware for calculation and data storage, such as a CPU, a RAM, a ROM, and an HDD, and is, for example, a PC.
- the function of each unit shown in FIG. 13A is realized by the CPU reading a predetermined program from the ROM or the HDD, developing the program in the RAM, and executing the program by the CPU.
- FIG. 13A The function of each unit shown in FIG. 13A is realized by the CPU reading a predetermined program from the ROM or the HDD, developing the program in the RAM, and executing the program by the CPU.
- FIG. 13A The function of each unit shown in FIG. 13A is
- the file input unit 21 receives the input of the Vvvm file 300 generated by the file generation device 10, reads out data necessary for each process, and transfers the data to a functional block corresponding to each process.
- the storage data information 302 is read and sent to the generation possibility determination unit 22. Further, it reads out the camera parameters 303 of each camera and sends them to the foreground / background separation unit 23 and the imaging unit 25. Further, the background 3D model 304 is read and sent to the imaging unit 25. Further, based on the information on the virtual viewpoint path received from the virtual viewpoint input unit 24, the frame data 305 at the time corresponding to the set virtual viewpoint is read and sent to the foreground / background separation unit 23.
- the generation possibility determination unit 22 refers to the stored data information 302 received from the file input unit 21 and determines whether a virtual viewpoint video can be generated based on the material data in the Vvvm file 300. That is, when the material data specified by the stored data information satisfies the material data required according to the function of the own device, it is determined that the virtual viewpoint video can be generated.
- the virtual viewpoint video generation device 20 performs model-based rendering by using, for example, four material data of a foreground image, a background image, a foreground 3D model, and a background 3D model. A virtual viewpoint video based on the image can be generated.
- the material data stored in the Vvvm file 300 of the present embodiment is three types: an image (multi-viewpoint video) captured by each camera, a camera parameter, and a background 3D model.
- the virtual viewpoint video generation device 20 can generate a virtual viewpoint video if it has a function of separating a foreground and a background from an image captured by each camera and a function of generating a foreground 3D model.
- the generation feasibility determination unit 22 determines the feasibility of the feasibility based on various functions of the own device for generating a virtual viewpoint video, based on the virtual viewpoint video generation method adopted by the own device (indicating necessary material data).
- the determination table is created and stored in advance.
- the virtual viewpoint video it is determined whether or not the virtual viewpoint video can be generated by checking whether or not the material data indicated by the determination criterion is included in the Vvvm file 300 using the stored data information 302.
- variations A to C are shown as an example of a criterion for judging whether or not support is possible.
- the determination result obtained based on the determination criteria using the stored data information 302 is notified to the user via the video output unit 26 by displaying it on a monitor or the like (not shown) of the virtual viewpoint video generation device 20. Is done.
- the foreground / background separation unit 23 separates a captured image of each camera into a foreground and a background to generate a foreground silhouette image. For example, first, a background image is generated for each camera using captured images of a plurality of frames. Specifically, by comparing images between a plurality of frames captured by the same camera, a moving area and a non-moving area are detected, and a non-moving area is set as a background image. When the background image is obtained, next, corresponding pixels are compared between the captured image of each camera and the generated background image, and a pixel having a pixel value difference equal to or larger than a predetermined threshold is set as a foreground pixel.
- a foreground silhouette image having the same image size as the image captured by each camera and having a pixel value of “1” as a foreground pixel and a pixel value of “0” as a background pixel is obtained.
- the background image and the foreground silhouette image thus obtained are sent to the imaging unit 25.
- the method of separating the captured image into the foreground and the background is not limited to the above example.
- a foreground silhouette image may be generated by separating a foreground portion using a machine learning technique or the like.
- the virtual viewpoint setting unit 24 sets a virtual viewpoint based on a user's designation via a UI (not shown) or by reading setting information of a predetermined virtual viewpoint.
- the virtual viewpoint set when generating a virtual viewpoint video using a moving image is set so as to move during the generation target time (for example, 600 frames if a plurality of viewpoint videos are captured at 60 fps for 10 seconds). Often.
- Information on the moving path of the virtual viewpoint (hereinafter, referred to as “virtual viewpoint path”) set based on such a user instruction or the like is sent to the file input unit 21 and the imaging unit 25.
- the parameters set as the virtual viewpoint are, for example, the position, posture, angle of view, and the like of the virtual camera, and may further include a focus position, an aperture value, and the like.
- the imaging unit 25 generates a virtual viewpoint video based on the information of the virtual viewpoint path received from the virtual viewpoint setting unit 24. The details of the imaging unit 25 will be described later.
- the data of the virtual viewpoint video generated by the imaging unit 25 is sent to the video output unit 26.
- the video output unit 26 outputs the data of the virtual viewpoint video received from the video conversion unit 25 by displaying it on a monitor (not shown) or transmitting the data to an external device.
- FIG. 13B is a functional block diagram illustrating details of the imaging unit 25 according to the present embodiment.
- the imaging unit 25 of this embodiment includes a foreground 3D model generation unit 251, a foreground coloring unit 252, a background coloring unit 253, and a combining unit 254.
- a foreground 3D model generation unit 251 foreground coloring unit 252
- a background coloring unit 253 foreground coloring unit 252
- a combining unit 254 a combining unit 254.
- the foreground 3D model generation unit 251 generates a foreground 3D model based on the foreground silhouette image generated by the foreground / background separation unit 23 and the camera parameters received from the file input unit 21. For example, a procedure of generating a foreground 3D model by the visual volume intersection method is as described in the following 1) to 3).
- a rectangular parallelepiped (voxel) having a certain size is spread in a preset foreground 3D model generation space.
- the generation target space is determined by calculating a range visible from the virtual camera based on the virtual viewpoint path.
- the method of generating the foreground 3D model using the visual intersection method has been described, but the method of generating the 3D model is not limited to this. Then, the foreground 3D model generated as described above is sent to the foreground coloring unit 252.
- the foreground coloring unit 252 performs a coloring process on the foreground 3D model generated by the foreground 3D model generation unit 251 based on the virtual viewpoint path received from the virtual viewpoint setting unit 24, and generates an image with a foreground color.
- the specific procedure of the coloring process is as described in 1) to 3) below.
- each point is projected on a foreground silhouette image of all cameras. At this time, when a plurality of points are projected to the same pixel on the foreground silhouette image, it is determined that the point at the shortest position as seen from the camera is visible and the other points are not visible. This processing is performed for all points on the surface of the foreground 3D model, and a camera for coloring each point is specified.
- the foreground 3D model is projected onto an image serving as a virtual viewpoint video based on the virtual viewpoint path, and a point to be captured in each pixel is specified.
- the color of the pixel on which the point is projected is determined using the image captured by the camera that is determined to be visible in the visibility determination in 1) above.
- the color may be determined by comparing the orientation of the virtual viewpoint with the orientation of each camera and appropriately weighting the images captured by the two cameras with smaller angles. .
- the data of the image with foreground color generated as described above is sent to the synthesizing unit 254.
- the background coloring unit 253 generates a background texture to be attached to the background 3D model, using the background image extracted from the image captured by each camera. Specifically, a background texture is generated by the following procedures 1) to 5).
- the projection matrix 1 between the virtual viewpoint and the camera 1 and the projection matrix 2 between the virtual viewpoint and the camera 2 are calculated using the corresponding points between the virtual viewpoint and the camera 1 and the corresponding points between the virtual viewpoint and the camera 2.
- the average value of the obtained two pixel values is set as the pixel value of the background region in the image serving as the virtual viewpoint video.
- the background coloring unit 253 pastes the generated background texture on the background 3D model stored in the Vvvm file, and generates a background image (virtual background image) when viewed from a virtual viewpoint.
- the data of the virtual background image generated as described above is sent to the synthesizing unit 254.
- the combining unit 254 combines the image with the foreground color received from the foreground coloring unit 252 and the virtual background image received from the background coloring unit 253 to generate an image representing the appearance from the virtual viewpoint. Specifically, a process of overwriting each pixel of the image with the foreground color with the pixel value of the corresponding pixel in the virtual background image is performed.
- FIG. 14 is a flowchart illustrating a flow of processing from the generation of the Vvvm file 300 according to the present embodiment to the generation of a virtual viewpoint video by the virtual viewpoint video generation device 20 and output.
- the symbol “S” at the beginning of each process means a step.
- description will be given along the flow of FIG.
- step S1401 the file input unit 21 reads the stored data information 302 from the Vvvm file 300, and outputs the read data to the generation availability determination unit 22.
- the generation permission / inhibition determination unit 22 reads out information of the preparation permission / inhibition determination reference prepared in advance, refers to the storage data information 302, and converts the virtual viewpoint video using the material data stored in the Vvvm file 300. It is determined whether generation is possible. If it is determined that a virtual viewpoint video can be generated, the process advances to step S1403. At this time, the video output unit 26 may perform notification such as displaying a message indicating that the virtual viewpoint video can be generated on a monitor (not shown). On the other hand, if the virtual viewpoint video cannot be generated, the process advances to step S1409.
- step S1403 the file input unit 21 reads the camera parameters 303 and the background 3D model 304 from the Vvvm file 300, and outputs the camera parameters 303 to the foreground / background separation unit 23 and the background 3D model 304 to the imaging unit 25.
- the virtual viewpoint setting unit 24 sets a virtual viewpoint path based on the user's designation or the like, and outputs the information to the file input unit 21 and the imaging unit 25.
- the file input unit 21 reads the frame data 305 corresponding to the input virtual viewpoint path from the Vvvm file 300, and outputs the frame data 305 to the foreground / background separation unit 23. Subsequent steps S1406 and S1407 are executed in frame units.
- the foreground / background separation unit 23 performs a foreground / background separation process on the image captured by each camera, generates a foreground silhouette image and a background image, and outputs them to the imaging unit 25.
- the imaging unit 25 generates a virtual viewpoint video based on the input virtual viewpoint path, foreground silhouette image, and background image.
- the video output unit 26 outputs the data of the virtual viewpoint video generated in S1408.
- the video output unit 26 performs notification such as displaying a message indicating that the virtual viewpoint video cannot be output on a monitor (not shown).
- the above is the flow of processing from generating and outputting a virtual viewpoint video from the Vvvm file 300.
- Vvvm file variation The data structure of a Vvvm file in which material data is filed in a common format is not limited to the example shown in FIG. Hereinafter, variations of the data structure of the Vvvm file will be described.
- the Vvvm file 1500 shown in FIG. 15 includes a data version 1501, stored data information 1502, camera parameters 1503, a background 3D model 1504, and frame data 1505.
- the frame data 1505 exists from the first frame to the N-th frame, and one frame data includes a foreground image group, a foreground 3D model group, and a background image group.
- the foreground image group includes foreground images and foreground silhouette images corresponding to the M cameras.
- the foreground 3D model group includes O foreground 3D models.
- the background image group includes P background images. In this case, N, M, O, and P are all natural numbers of 1 or more.
- the type of material data stored in the Vvvm file 1500 is indicated by stored data information 1502. FIG.
- the foreground cutout image means an image obtained by cutting out a foreground area from an image captured by a camera, and corresponds to an extended profile when the foreground image is used as a main profile. If the Vvvm file contains only the foreground clipped image and the foreground image itself is not stored, the virtual viewpoint video generation device cannot generate the virtual viewpoint video unless the virtual viewpoint video generation device supports the foreground clipped image. For example, in the case of a device that can support a certain version of the main profile but cannot support the extended profile, it is determined that the own device cannot generate a virtual viewpoint video by checking the metadata regarding the foreground image. be able to.
- FIG. 16C shows an example of metadata relating to the background image
- FIG. 16D shows the bit assignment of the stored background image
- FIG. 16E shows an example of the metadata of the foreground 3D model
- FIG. 16F shows the bit assignment of the stored foreground 3D model.
- foreground 3D models and background 3D models such as a point cloud model formed by a set of points and a mesh model formed by collecting polygonal faces.
- the device that generates the virtual viewpoint video can determine whether the type of the foreground / background 3D model stored in the Vvvm file is a type that can be supported by the own device with reference to these metadata. .
- An aspect in which the Vvvm file 1500 having the data structure shown in FIG. 15 is generated and the virtual viewpoint video is generated using the Vvvm file 1500 will be described in the second embodiment.
- the Vvvm file 1700 shown in FIG. 17 includes a data version 1701, stored data information 1702, a background 3D model 1703, and frame data 1704.
- the frame data 1704 exists from the first frame to the N-th frame, and one frame data includes a foreground image group, a foreground 3D model group, visibility information, and a background texture group.
- the visibility information is information corresponding to the result of the visibility determination described above.
- the foreground image group includes foreground images corresponding to M cameras.
- the foreground 3D model group includes O foreground 3D models.
- the visibility information includes Q pieces of visibility information.
- the background texture group includes R background textures to be pasted on the background 3D model.
- Q and R are also natural numbers of 1 or more.
- R background textures are generated by combining background images, R ⁇ P.
- the type of material data stored in the Vvvm file 1700 is indicated by the stored data information 1702. A description of metadata and bit assignment is omitted.
- the Vvvm file 1700 shown in FIG. 17 includes visibility information and background texture data in addition to the foreground 3D model. Therefore, the visibility determination in the foreground coloring unit 252 and the generation of the background texture in the background coloring unit 253 can be omitted, and the load on the virtual viewpoint video device side can be reduced.
- the Vvvm file 1800 shown in FIG. 18 includes a data version 1801, stored data information 1802, a background 3D model 1803, and frame data 1804.
- the frame data 1804 exists from the first frame to the N-th frame, and one frame data includes a foreground 3D model group with texture and a background texture group.
- the textured foreground 3D model means the foreground 3D model that has been subjected to the foreground coloring process described above.
- the textured foreground 3D model group includes O textured foreground 3D models.
- the background texture group includes R background textures.
- the type of material data stored in the Vvvm file 1800 is indicated by stored data information 1802. A description of metadata and bit assignment is omitted.
- the load on the virtual viewpoint video apparatus side can be further reduced than that of the Vvvm file 1700 in FIG.
- the image data (images taken by each camera, foreground image, and background image) constituting the frame data in FIGS. 3A, 15 and 17 are usually stored in the order of the serial numbers assigned to the cameras. But not limited to this. For example, a camera number may be added to the header of each material data and stored in any order. Further, in the present embodiment, data such as a captured image and a foreground image of each camera is stored so as to be readable in frame units, but may be stored so as to be readable in camera units.
- any Vvvm file includes a background 3D model, but is not essential.
- a background 3D model prepared in advance can be commonly used repeatedly.
- the virtual viewpoint video generation device obtains the data of the background 3D model corresponding to the shooting scene from another information processing device, and generates the virtual viewpoint video. May be generated.
- the criterion for determining whether or not the response is possible is in accordance with the criterion.
- material data necessary for generating a virtual viewpoint video is collectively filed in a common format.
- a virtual viewpoint video can be easily generated by any terminal or application that supports the Vvvm file in the common format, and the usage environment of the virtual viewpoint video is expanded.
- the Vvvm file 1500 shown in FIG. 15 includes a data version 1501, stored data information 1502, camera parameters 1503, a background 3D model 1504, and frame data 1505.
- the file generation device performs foreground / background separation, generates a foreground 3D model, and stores data of a foreground image, a foreground silhouette image, a foreground 3D model, and a background image in frame units. I do. Then, storage data information 1502 indicating that these material data are stored is added to the Vvvm file 1500.
- the virtual viewpoint video generation device determines whether or not generation is possible with reference to the stored data information 1502, and if the virtual viewpoint video can be generated, the foreground image, the background image, A virtual viewpoint video is generated using each material data of the foreground 3D model.
- FIG. 19 is a diagram corresponding to FIG. 1 of the first embodiment, and is a functional block diagram of a file generation device 10 ′ according to the present embodiment.
- the file generation device 10 ′ includes a foreground / background separation unit 1901 and a foreground 3D model generation unit 1902 in addition to a data input unit 11 ′, a camera parameter generation unit 12 ′, a file generation unit 13 ′, and a file output unit 14.
- a data input unit 11 ′ a data input unit 11 ′
- a camera parameter generation unit 12 ′ a file generation unit 13 ′
- file output unit 14 the role of each unit shown in FIG. 19 will be described.
- the function of the ⁇ data input unit 11 ’ is the same as that of the data input unit 11 of the first embodiment, but the output destination of the input data is different. That is, when the input of the camera information, the multi-view video, and the background 3D model is received, the camera information is output to the camera parameter generation unit 12 ', the background 3D model is output to the file generation unit 13', and the data of the multi-view video is output to the foreground / background separation unit. 1901 respectively.
- the function of the ⁇ camera parameter generation unit 12 ’ is the same as that of the camera parameter generation unit 12 of the first embodiment, but the output destination of the generated camera parameter is different.
- the generated camera parameters are sent to the foreground / background separation unit 1901, the foreground 3D model generation unit 1902, and the file generation unit 13 '.
- the foreground / background separation unit 1901 performs a process of separating the image captured by each camera into a foreground and a background, similarly to the foreground / background separation unit 23 in the virtual viewpoint video generation device 20 of the first embodiment. Generate a background image. The obtained foreground silhouette image is sent to the foreground 3D model generation unit 1902, and the foreground image and the background image are sent to the file generation unit 13 '.
- the foreground 3D model generation unit 1902 generates the foreground 3D model based on the foreground silhouette image and the virtual viewpoint path, similarly to the foreground 3D model generation unit 251 in the imaging unit 25 of the virtual viewpoint video generation device 20 of the first embodiment. Then, the obtained foreground 3D model is sent to the file generation unit 13 '.
- the file generation unit 13 ′ receives the background 3D model from the data input unit 11 ′, the foreground image, the foreground silhouette image and the background image from the foreground / background separation unit 1901, the foreground 3D model from the foreground 3D model generation unit 1902, and the camera parameter generation unit 12 ′. Get camera parameters from Then, the obtained data is filed in a common format. At this time, the foreground image, foreground silhouette image, foreground 3D model, and background image are stored in frame units. Further, the foreground image and the foreground silhouette image are stored so that they can be identified even in units of cameras, and the foreground 3D model is stored such that they can be identified in units of models. Further, storage data information 1502 indicating that these are stored as material data is added, and a Vvvm file 1500 shown in FIG. 15 is generated.
- FIGS. 20A and 20B are diagrams corresponding to FIGS. 13A and 13B of the first embodiment, and illustrate the virtual viewpoint video generation device 20 ′ and the imaging unit 25 ′ according to the present embodiment.
- the respective internal configurations are shown.
- 20A does not include a processing block corresponding to the foreground / background separation unit 23
- FIG. 20B does not include a processing block corresponding to the foreground 3D model generation unit 251.
- the function of each unit shown in FIGS. 20A and 20B will be described.
- the file input unit 21 ’ receives an input of the Vvvm file generated by the file generation device 10 ′, reads out data necessary for each process, and passes the data to a block corresponding to each process.
- the storage data information 1502 is read out and sent to the generation possibility determination unit 22 '.
- the camera parameters 1503 and the background 3D model 1504 are read and sent to the imaging unit 25 '.
- the frame data 1505 corresponding to the set virtual viewpoint path is read and sent to the imaging unit 25 '.
- the generation permission / inhibition determination unit 22 ’ determines whether a virtual viewpoint video can be generated based on the input Vvvm file, using the stored data information received from the file input unit 21 ′.
- the virtual viewpoint video device 20 'of the present embodiment does not have the foreground / background separation function and the foreground 3D model generation function. Therefore, if the input Vvvm file is the Vvvm file 1500 shown in FIG. 15A, it is determined that the input Vvvm file can be generated, but if the input Vvvm file is the Vvvm file 300 shown in FIG. Will be.
- the imaging unit 25 generates a virtual viewpoint video based on the information of the virtual viewpoint path received from the virtual viewpoint setting unit 24. The details of the imaging unit 25 'will be described later. Then, the video output unit 26 outputs the data of the virtual viewpoint video generated by the imaging unit 25 ′ by displaying it on a monitor (not shown) or transmitting it to an external terminal or the like.
- the imaging unit 25 ′ of the present embodiment includes a foreground coloring unit 252 ′, a background coloring unit 253, and a combining unit 254.
- the background coloring unit 253 and the synthesizing unit 254 are not different from the first embodiment.
- FIG. 20C is a block diagram illustrating the internal configuration of the foreground coloring unit 252 ′ according to the present embodiment.
- the foreground coloring unit 252 ′ includes a use model determination unit 2000 and coloring units corresponding to a plurality of types of foreground 3D models, specifically, a mesh model coloring unit 2001, a billboard coloring unit 2002, and a point group model coloring unit 2003. It consists of.
- the 3D model of the foreground object is colored, and an image with a foreground color viewed from a virtual viewpoint is generated.
- the billboard coloring unit 2002 is determined as a coloring unit to be applied to the foreground 3D model.
- a foreground viewed from a virtual viewpoint is generated.
- the model determining unit 2000 specifies the type of the foreground 3D model included in the frame data 1505 based on the metadata assigned to the foreground 3D model, and uses any of the three coloring units 2001 to 2003 to perform the coloring process. Decide what to do. At this time, if a plurality of types of foreground 3D models are stored in the frame data 1505, a predetermined priority order (for example, the order of the point cloud model coloring unit 2003, the mesh model coloring unit 2001, and the billboard coloring unit 2002). Determine the coloring part to be used.
- the virtual viewpoint video generation mode may be determined according to the content of the generation mode related to the specification.
- the point cloud model coloring unit 2003 when the high quality mode is designated is designated
- the mesh model coloring unit 2001 when the normal quality mode is designated is designated
- the billboard coloring unit 2002 when the high speed mode is designated. is there.
- the processing unit used for the coloring process on the foreground 3D model based on the predetermined criterion, it is possible to generate an appropriate foreground according to the purpose and use.
- the foreground coloring unit 252 ′ does not include the point cloud model coloring unit 2003, and the foreground 3D model stored in the frame data 1505 of the Vvvm file 1500 input to the virtual viewpoint video generation device 20 ′ is used.
- the generation possibility determination unit 22 ′ refers to the metadata about the foreground 3D model and specifies that the foreground 3D model included in the frame data 1505 is only a point cloud model. Then, it is determined that the virtual viewpoint video cannot be generated because the own device does not have the coloring unit corresponding to the point cloud model.
- by checking not only the stored data information 1502 but also the content of the metadata added to each material data it is possible to determine in more detail whether or not the virtual viewpoint video can be generated.
- the imaging unit 25 ′ may generate the virtual viewpoint video more efficiently by acquiring only the material data actually used under the set virtual viewpoint path from the Vvvm file 1500. That is, the file input unit 21 ′ specifies only the material data actually used for generating the virtual viewpoint video based on the virtual viewpoint path information input from the virtual viewpoint setting unit 24, and To pass to.
- the type of material foreground image, foreground 3D model, background image
- further detailed specification such as a camera ID or a model ID is included. To do.
- a camera ID or a model ID is included.
- the foreground image or the background image captured by the camera at the viewpoint position close to the set virtual viewpoint position is specified based on the camera parameters in the Vvvm file.
- coloring may not be possible due to occlusion hidden by obstacles.
- the number of background images to be selected is small, there is a possibility that all the backgrounds reflected in the virtual viewpoint cannot be colored.
- a foreground image and a background image in images captured by a plurality of cameras for example, six cameras in order from the camera having the closest viewpoint
- the influence of occlusion can be reduced, and the possibility that the background cannot be colored can be reduced.
- the foreground 3D model is specified based on the bounding box information of the foreground 3D model included in the Vvvm file.
- the bounding box information is information indicating the three-dimensional coordinates of the rectangular parallelepiped when the foreground 3D model is surrounded by the rectangular parallelepiped.
- the foreground 3D model seen from the set virtual viewpoint is specified.
- the file generation device generates a Vvvm file including a foreground image, a background image, and a foreground 3D model as material data. Therefore, even a virtual viewpoint video generation device that does not have a foreground / background separation function or a foreground 3D model generation function can easily generate a virtual viewpoint video as long as it supports a Vvvm file.
- the present invention supplies a program for realizing one or more functions of the above-described embodiments to a system or an apparatus via a network or a storage medium, and one or more processors in a computer of the system or the apparatus read and execute the program.
- This processing can be realized. Further, it can also be realized by a circuit (for example, an ASIC) that realizes one or more functions.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- Software Systems (AREA)
- Library & Information Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Processing Or Creating Images (AREA)
- Image Processing (AREA)
- Television Signal Processing For Recording (AREA)
- Studio Devices (AREA)
Abstract
より多くの装置が仮想視点映像を生成できるようにする。複数視点画像に基づく仮想視点画像の生成に用いる素材データを格納したファイルを生成するファイル生成装置であって、共通フォーマットで定義された各素材データをまとめてファイル化するファイル生成手段と、前記ファイル生成手段により生成された前記ファイルを出力する出力手段と、を備えたことを特徴とする。
Description
本発明は、仮想視点映像のファイルの生成及びその取扱いに関する。
複数のカメラを用いてオブジェクトを多方向から撮像して得られた複数視点映像から、ユーザが指定した任意の仮想視点から見た映像を再現する技術として、仮想視点映像生成技術がある。仮想視点映像の生成には、複数視点映像、前景画像、前景シルエット画像、前景3Dモデル、カメラパラメータ、背景画像、背景3Dモデルといった様々な映像素材が用いられる。これら映像素材は生成後にデータベースに蓄積され、ユーザが指定した仮想視点に基づいてデータベースから適切な素材データを取得して、仮想視点映像が生成される(特許文献1を参照)。
しかしながら、データベースに格納される素材データのフォーマットを解釈できない装置は、当該素材データに基づく仮想視点映像を再生することが困難である。
例えば、データベースに格納される素材データのフォーマットが各素材を生成する装置毎にオリジナルのものが定義され、その取得方法も素材によって異なっていた場合、世の中に広く普及した端末(例えばスマートフォンなど)が仮想視点映像を生成することが困難であった。
本発明は、上記の課題に鑑みてなされたものであり、より多くの装置が仮想視点映像を生成できるようにすることを目的とする。
本発明に係るファイル生成装置は、複数の視点で撮影された画像に基づく仮想視点映像の生成に用いる素材データを取得する取得手段と、前記取得手段により取得された素材データと前記素材データの種別を示す種別情報とを格納したファイルを生成するファイル生成手段と、前記ファイル生成手段により生成された前記ファイルを出力する出力手段とを備えたことを特徴とする。
本発明によれば、より多くの装置が仮想視点映像を生成できるようになる。
本発明の更なる特徴は、添付の図面を参照して行う以下の実施形態の説明より明らかになる。
以下、本発明の実施形態について、図面を参照して説明する。なお、以下の実施形態は本発明を限定するものではなく、また、本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
本実施形態の仮想視点映像生成システムは、仮想視点映像の素材データを包含したファイルを生成するファイル生成装置と、当該ファイルを用いて仮想視点映像を生成する仮想視点映像生成装置とで構成される。本明細書においては、仮想視点映像(Virtual viewpoint video)の素材(material)データを包含するファイルを、「Vvvmファイル」と呼ぶこととする。なお、仮想視点映像とは、エンドユーザ及び/又は選任のオペレータ等が自由に仮想カメラの位置及び姿勢を操作することによって生成される映像であり、自由視点映像や任意視点映像などとも呼ばれる。また、仮想視点映像は、動画であっても、静止画であっても良い。以下では、仮想視点映像が動画である場合の例を中心に説明する。
ファイル生成装置は、複数視点映像やカメラパラメータといった仮想視点映像の生成に必要な素材データを格納したVvvmファイルを生成する。この際、Vvvmファイルには、格納されている素材データを特定する情報である格納データ情報が付加される。仮想視点映像生成装置は、Vvvmファイルに含まれる格納データ情報に基づき、自装置において仮想視点映像の生成が可能と分かれば、Vvvmファイル内の素材データを用いて仮想視点映像を生成する。
(ファイル生成装置)
図1は、本実施形態に係るファイル生成装置10の機能ブロック図である。ファイル生成装置10は、データ入力部11、カメラパラメータ生成部12、ファイル生成部13、ファイル出力部14で構成される。なお、ファイル生成装置10は、CPU、RAM、ROM、HDDといった、演算やデータ記憶のためのハードウェアを備えた情報処理装置であり、例えばPCなどである。図1に示す各部の機能は、CPUが、所定のプログラムをROM又はHDDから読み込んでRAMに展開し、これをCPUが実行するなどして実現される。以下、図1に示す各部の役割について説明する。
図1は、本実施形態に係るファイル生成装置10の機能ブロック図である。ファイル生成装置10は、データ入力部11、カメラパラメータ生成部12、ファイル生成部13、ファイル出力部14で構成される。なお、ファイル生成装置10は、CPU、RAM、ROM、HDDといった、演算やデータ記憶のためのハードウェアを備えた情報処理装置であり、例えばPCなどである。図1に示す各部の機能は、CPUが、所定のプログラムをROM又はHDDから読み込んでRAMに展開し、これをCPUが実行するなどして実現される。以下、図1に示す各部の役割について説明する。
データ入力部11は、Vvvmファイルに格納される各種の素材データ或いはその元になるデータの入力を、外部インタフェース(不図示)を介して受け付ける。本実施形態の場合、撮影シーンに設置された複数のカメラに関するカメラ情報、当該複数のカメラで撮影された複数視点映像、スタジアム等の施設(背景オブジェクト)の3次元形状を表す背景3Dモデルのデータが、外部装置から入力される。例えば、カメラ情報は各カメラのキャリブレーションを行うPCから、複数視点映像データは複数のカメラから、背景3Dモデルのデータはこれを生成するPCからそれぞれ入力される。カメラ情報には、各カメラの位置、姿勢(視線方向)、画角といった情報が含まれる。撮影途中でカメラの台数や各カメラの位置、姿勢、画角が変わった場合には、カメラ情報が再取得される。また、複数視点映像を構成するカメラ毎の撮影画像は、各カメラに付加されたカメラIDと関連づけられ、どのカメラで撮影した画像かを判別できるようになっている。入力されたカメラ情報はカメラパラメータ生成部12へ送られ、複数視点映像及び背景3Dモデルの各データは、ファイル生成部13に送られる。
カメラパラメータ生成部12は、データ入力部11から受け取ったカメラ情報に基づき、共通の注視点を向いた複数のカメラからなるカメラ群単位で、カメラパラメータを生成する。このカメラパラメータには、各カメラ群を構成するカメラの台数の情報、各カメラのID(カメラの識別番号等)と紐付けられた、各カメラの位置、姿勢、画角の情報が少なくとも含まれる。これらに加え、シャッタースピード、絞り値、ISO感度、色温度、レンズの焦点距離、撮影ターゲットまでの距離などの情報を含めてもよい。生成されたカメラパラメータは、ファイル生成部13に送られる。
ファイル生成部13は、データ入力部11から受け取った複数視点映像と背景3Dモデルのデータ、カメラパラメータ生成部12から受け取ったカメラパラメータを、共通フォーマットで1つのファイルにまとめる。そして、素材データとして、カメラパラメータ、背景3Dモデル、複数視点映像が格納されていることを示す格納データ情報を生成し、当該ファイルに素材データと共に格納して、上述のVvvmファイルを生成する。なお、撮影途中で1又は複数のカメラの位置、姿勢、画角等が変更された場合には、変更後の内容が時刻情報と共にそのカメラパラメータに付加され、Vvvmファイル内に格納されることになる。こうすることで、格納されている複数視点映像を撮影しているカメラの位置、姿勢、画角等が途中で変わっていた場合においても、その事実と内容をVvvmファイル内のカメラパラメータから把握することが可能となる。また、上記ファイル生成の際には、例えばファイル転送時の容量制限等を考慮して、複数のVvvmファイルに分割してもよい。このような分割によるファイル生成を行った際には、本来は1つのファイルになるはずだった複数の分割ファイル同士を相互に関連付けるといった処理も併せてなされる。
ファイル出力部14は、ファイル生成部13で生成されたVvvmファイルを、仮想視点映像を生成可能な各種装置に出力する。出力態様としては、例えば、PCへの有線送信、スマートフォンやタブレットといった携帯端末への無線送信、ネットワークを介してのサーバへのアップロード、携帯可能な記憶媒体への格納などが考えられる。
以上が、ファイル生成装置10の主要機能を担う各部の説明である。
(Vvvmファイルの生成)
続いて、ファイル生成装置10でVvvmファイルを生成する処理の流れを説明する。
続いて、ファイル生成装置10でVvvmファイルを生成する処理の流れを説明する。
図2は、本実施形態に係る、Vvvmファイル生成処理の流れを示すフローチャートである。なお、各処理の冒頭における記号「S」はステップを意味する。
S201では、データ入力部11が、背景3Dモデルのデータ及び撮影を行う各カメラの情報を、外部PC等から受信する。受信した背景3Dモデルのデータはファイル生成部13に送られ、カメラ情報はカメラパラメータ生成部12に送られる。続くS202では、カメラパラメータ生成部12が、データ入力部11から受け取ったカメラ情報に基づき、上述のカメラパラメータを生成する。生成したカメラパラメータは、ファイル生成部13に送られる。
S203では、ファイル生成部13が、データ入力部11から受け取った背景3Dモデルと、カメラパラメータ生成部12から受け取ったカメラパラメータを、Vvvmファイルに格納する。
S204では、データ入力部11が、複数視点映像の取得を開始する。例えば、デイジーチェーン方式等で接続された複数のカメラに対し撮影開始信号が送信され、これに応じて各カメラの撮影画像のデータがフレーム単位で順次受信される。撮影開始信号の発信元は、ファイル生成装置10でもよいし、別の装置でもよい。取得された複数視点映像のデータは、ファイル生成部13に順次送られる。
S205では、ファイル生成部13が、データ入力部11から受け取った複数視点映像のデータをVvvmファイル内に格納する。格納は例えばフレーム単位で実行され、複数視点映像を構成する各撮影画像がどのカメラで撮影されたのかが識別可能なように格納される。
S206では、データ入力部11が、複数視点映像の取得が完了したか否かを判定する。例えば、撮影を行っている複数のカメラに対し撮影停止信号が送信され、撮影された全フレーム分のデータの受信が完了していれば、複数視点映像の取得完了と判定してS207に進む。一方、撮影が継続中で未受信のフレームデータがあれば、S205に戻って複数視点映像の取得とそのVvvmファイルへの格納を続行する。
S207では、ファイル生成部13が、Vvvmファイルに格納された素材データの中身を示す格納データ情報を生成し、Vvvmファイルに付加する。完成したVvvmファイルは、ファイル出力部14に送られる。
そして、S208では、ファイル出力部14が、ユーザ等が指定する出力先としての仮想視点映像生成装置20に、Vvvmファイルを出力する。
以上が、ファイル生成装置10における、Vvvmファイル生成処理の流れである。なお、図2のフローでは、ファイル生成部13が全フレームデータの取得処理が終了した後に1つのVvvmファイルにまとめているが、これに限定されない。例えば、フレーム単位で生成したファイルを順次出力し、出力先の外部装置で1つのファイルにまとめても構わない。
(Vvvmファイルのデータ構造)
図3(a)は、本実施形態に係る、Vvvmファイルのデータ構造の一例を示す図である。図3(a)に示すVvvmファイル300は、データバージョン301、格納データ情報302、カメラパラメータ303、背景3Dモデル304、フレームデータ305から構成される。フレームデータ305は、第1フレームから第Nフレームまで存在し、1つのフレームデータにはM台のカメラによる撮影画像が含まれている。この場合において、N及びMは1以上の自然数である。
図3(a)は、本実施形態に係る、Vvvmファイルのデータ構造の一例を示す図である。図3(a)に示すVvvmファイル300は、データバージョン301、格納データ情報302、カメラパラメータ303、背景3Dモデル304、フレームデータ305から構成される。フレームデータ305は、第1フレームから第Nフレームまで存在し、1つのフレームデータにはM台のカメラによる撮影画像が含まれている。この場合において、N及びMは1以上の自然数である。
Vvvmファイル300にどのような素材データが格納されているかは、格納データ情報302に示される。図3(b)は格納データ情報302のビットアサインの一例を示している。いま、格納データ情報302は32ビットの値を持ち、各ビットは、“1”であればその対象データが格納されていることを示し、“0”であればその対象データが格納されていないことを示す。図3(a)で示すVvvmファイル300には、各カメラの撮影画像(複数視点映像)、カメラパラメータ、背景3Dモデルの3種類の素材データが格納される。この場合、b0、b1、b5の各ビットが“1”、他のビットは“0”となる。b10~b13は独自に定義することができる。例えば、データ名称をデプスマップ或いは距離画像とした、前景画像と同じフォーマットで各画素値がカメラから被写体までの距離を表す画像を追加してもよい。また、仮想視点映像の生成を高速化するためのデータや高画質化するためのデータを追加してもよい。
また、格納される素材データそれぞれについても、それがどのようなデータであるかを示す付属情報(メタデータ)が付与される。図4(a)は各カメラの撮影画像のメタデータの一例を示している。図4(b)はカメラパラメータのメタデータの一例を示し、同(c)は格納カメラパラメータのビットアサインを示している。図4(d)は背景3Dモデルのメタデータの一例を示し、同(e)は格納背景3Dモデルのビットアサインを示している。なお、カメラパラメータ303の先頭(最初の4byte)には設置カメラの台数を示す情報が含まれ、この台数情報に続いてカメラパラメータに関するメタデータが、カメラの台数分だけ続くことになる。
以上のようにして、仮想視点映像の生成に必要な様々な素材データが共通のフォーマットで定義され、まとめてファイル化される。なお、カメラパラメータ303は、1つのVvvmファイルに対して1つでもよいが、フレーム単位でカメラパラメータを持つようにしてもよい。フレーム単位でカメラパラメータを持つことで、撮影途中でカメラの位置・姿勢が変化するケースや、一部のカメラが故障してカメラ群を構成するカメラ台数が変化するケースにも対応することができる。
(Vvvmファイルの具体例)
続いて、ISO BMFF(ISO Base Media File Format ISO/IEC 14496-12 MPEG-4 Part 12)規格に準拠した、本実施形態のVvvmファイルの具体例を説明する。ISO BMFF規格では、「ボックス」という単位でファイルが構成される。図5(a)はボックスの構造を示す図であり、サイズ情報を格納する領域、タイプ情報を格納する領域、及びデータを格納する領域で構成される。また、図5(b)に示すように、ボックスの中にデータとしてさらにボックスを含む構造とすることも可能である。
続いて、ISO BMFF(ISO Base Media File Format ISO/IEC 14496-12 MPEG-4 Part 12)規格に準拠した、本実施形態のVvvmファイルの具体例を説明する。ISO BMFF規格では、「ボックス」という単位でファイルが構成される。図5(a)はボックスの構造を示す図であり、サイズ情報を格納する領域、タイプ情報を格納する領域、及びデータを格納する領域で構成される。また、図5(b)に示すように、ボックスの中にデータとしてさらにボックスを含む構造とすることも可能である。
図6は、ISO BMFFに準拠したVvvmファイルの内部構造の一例を示している。ISO BMFFに準拠したVvvmファイル600は、ftyp601、moov602、cimg603、camp604、fimg605、bimg606、fmdl607、bmdl608及びmdat609の各ボックスで構成されている。以下、各ボックスについて説明する。
ftypボックス(File Type Compatibility Box)601は、ファイル内の最初に配置されるボックスである。ftypボックス601には、ファイルフォーマットの情報、ボックスのバージョンを示す情報、他のファイルフォーマットとの互換性に関する情報、ファイルを作成したメーカ名称の情報などが記載される。Vvvmファイル内に格納される各素材データの種別を示す上述の格納データ情報302は、このftypボックス601に格納されても良い。また、moovボックス(Movie Box)602は、ファイル内にどんなデータがどのように格納されているかを明らかにするボックスであり、メディアデータを管理するための時間軸やアドレスなどの情報が入る。そして、mdatボックス(Media Data Box)609には、動画や音声といった、仮想視点映像を生成する際に使用するメディアデータ(素材データ)が入る。mdatボックス609にどのようにデータを格納したのかをmoovボックス602に記載しておくことで、これらメディアデータへのアクセスが可能になる。ftypボックス601、moovボックス602及びmdatボックス609は、ISO BMFF準拠のファイルにおいて共通で設けられるボックスである。これに対し、camp604、fimg605、bimg606、fmdl607及びbmdl608の各ボックスは、Vvvmファイルに特有のボックスである。以下、Vvvmファイルに特有のボックスについて具体例を交えて説明する。
cimgボックス(Camera-captured Image Data Box)603は、カメラ毎に設定可能で、各カメラの撮影画像のフォーマット情報が入る。図7(a)はcimgボックス603の一例であり、同(b)はそのシンタックスである。
campボックス(Camera Parameter Data Box)604は、カメラ毎に設定可能で、カメラパラメータとしてどのようなデータが格納されているかを示す情報とそれに対応するカメラパラメータの各値が入る。図8(a)はcampボックス604の一例であり、同(b)はそのシンタックスである。
fimgボックス(Foreground Image Data Box)605は、前景画像としてどのような画像データが格納されているかを示す情報と各前景画像のフォーマット情報が入る。図9(a)はfimgボックス605の一例であり、同(b)はそのシンタックスである。「前景フォーマット」901は、RAW、LOG、RGB、YUVといった前景画像の保存形式とビット深度を示す。「前景シルエットフォーマット」902は、前景シルエット画像のビット深度を示し、例えば、1ビット前景なのか背景なのかを示したり、8ビットで前景シルエットとしての確からしさを表現することができる。「切り出し前景フォーマット」903も「前景フォーマット」901と同様の情報を示す。
bimgボックス(Background Image Data Box)606は、背景画像としてどのような画像データが格納されているかを示す情報と各背景画像のフォーマット情報が入る。図10(a)はbimgボックス606の一例であり、同(b)はそのシンタックスである。「背景フォーマット」1001は、上述の「前景フォーマット」901と同様、背景画像の保存形式とビット深度の情報を示す。「背景テクスチャフォーマット」1002は、その保存形式やビット深度の情報に加え、対応する背景3Dモデルの頂点座標の数を示す。「切り出し背景フォーマット」1003は「背景フォーマット」1001と同様の情報を示す。
fmdlボックス(Foreground Model Data Box)607は、前景3Dモデルとしてどのようなデータが格納されているかを示す情報と各前景3Dモデルのフォーマット情報が入る。図11(a)はfmdlボックス607の一例であり、同(b)はそのシンタックスである。「点群フォーマット」1101は、各点が何ミリのボクセルの座標を表現するかを示す。「メッシュモデルフォーマット」1102は、メッシュの頂点数などを示す。「ビルボードフォーマット」1103は、ビルボードを立てる座標の単位を示す。「バウンディングボックスフォーマット」1104は、バウンディングボックスが代表頂点2点で示されるのか、代表頂点1点と、幅、奥行き、高さで示されるのか、といった表現形式を示す。
bmdlボックス(Background Model Data Box)608は、背景3Dモデルとしてどのようなデータが格納されているかを示す情報と各背景3Dモデルのフォーマット情報が入る。図12(a)はbmdlボックス608の一例であり、同(b)はそのシンタックスである。「点群フォーマット」1201や「メッシュモデルフォーマット」1202は、上述の前景3Dモデルに関する、「点群フォーマット」1101や「メッシュモデルフォーマット」1102と同様の情報が示される。
本実施形態では、ISO BMFF規格を例に説明したが、Vvvmファイルのフォーマットはこれに限定されない。例えば、ISO BMFFと互換性のあるHEIF(High Efficiency Image File Format)やMiAF(Multi-Image Application Format)など他の規格であってもよい。或いは独自のフォーマットや今後新たに登場するフォーマットであっても構わない。また、それぞれのパラメータの値や表現も上述の例に限定されない。また、図6に示すcimg603、camp604、fimg605、bimg606、fmdl607、bmdl608の各ボックスのうち、少なくとも1つがmoovボックス602に格納されるようにしてもよい。
(仮想視点映像生成装置)
続いて、図3(a)で示したデータ構造を持つVvvmファイル300を用いて、仮想視点から見た映像を生成する仮想視点映像生成装置について説明する。図13(a)は、本実施形態に係る、仮想視点映像生成装置20の内部構成を示す機能ブロック図である。仮想視点映像生成装置20は、ファイル入力部21、生成可否判定部22、前景背景分離部23、仮想視点パス入力部24、映像化部25、映像出力部26で構成される。なお、仮想視点映像生成装置20は、CPU、RAM、ROM、HDDといった、演算やデータ記憶のためのハードウェアを備えた情報処理装置であり、例えばPCなどである。図13(a)に示す各部の機能は、CPUが、所定のプログラムをROM又はHDDから読み込んでRAMに展開し、これをCPUが実行することで実現される。以下、図13(a)に示す各部の役割について説明する。
続いて、図3(a)で示したデータ構造を持つVvvmファイル300を用いて、仮想視点から見た映像を生成する仮想視点映像生成装置について説明する。図13(a)は、本実施形態に係る、仮想視点映像生成装置20の内部構成を示す機能ブロック図である。仮想視点映像生成装置20は、ファイル入力部21、生成可否判定部22、前景背景分離部23、仮想視点パス入力部24、映像化部25、映像出力部26で構成される。なお、仮想視点映像生成装置20は、CPU、RAM、ROM、HDDといった、演算やデータ記憶のためのハードウェアを備えた情報処理装置であり、例えばPCなどである。図13(a)に示す各部の機能は、CPUが、所定のプログラムをROM又はHDDから読み込んでRAMに展開し、これをCPUが実行することで実現される。以下、図13(a)に示す各部の役割について説明する。
ファイル入力部21は、ファイル生成装置10で生成されたVvvmファイル300の入力を受け付け、各処理に必要なデータを読み出して、各処理に対応した機能ブロックに渡す。例えば、格納データ情報302を読み出して、生成可否判定部22に送る。また、各カメラのカメラパラメータ303を読み出して、前景背景分離部23と映像化部25に送る。また、背景3Dモデル304を読み出して、映像化部25に送る。また、仮想視点入力部24から受け取った仮想視点パスの情報に基づき、設定された仮想視点に対応する時刻のフレームデータ305を読み出し、前景・背景分離部23に送る。
生成可否判定部22は、ファイル入力部21から受け取った格納データ情報302を参照して、Vvvmファイル300内の素材データによって仮想視点映像を生成可能であるかを判定する。すなわち、格納データ情報で特定される素材データが、自装置が持つ機能に応じて要求される素材データを満たす場合、仮想視点映像が生成可能であると判定する。仮想視点映像を生成する手法にはいくつかあるが、仮想視点映像生成装置20は、例えば、前景画像、背景画像、前景3Dモデル、背景3Dモデルの4つの素材データを用いることによって、モデルベースレンダリングに基づく仮想視点映像を生成できる。ここで、本実施形態のVvvmファイル300に格納される素材データは、各カメラで撮影された画像(複数視点映像)、カメラパラメータ、背景3Dモデルの3種類であるとする。この例において、仮想視点映像生成装置20は、各カメラの撮影画像から前景と背景を分離する機能、さらに、前景3Dモデルを生成する機能を持っていれば、仮想視点映像を生成できる。生成可否判定部22は、自装置が採用する仮想視点映像の生成手法を前提として、自装置が有する仮想視点映像生成のための諸機能を踏まえた対応可否の判定基準(必要な素材データを示した判定用テーブル等)を予め作成し保持しておく。そして、当該判定基準に示された素材データがVvvmファイル300に含まれるか否かを、格納データ情報302を用いて確認することで、仮想視点映像が生成可能かどうかを判定する。以下に、対応可否の判定基準の一例として、バリエーションA~Cを示す。
格納データ情報302を用い上記判定基準に照らして得られた判定結果は、映像出力部26を介して、仮想視点映像生成装置20が備える不図示のモニタ等に表示するなどして、ユーザに通知される。
前景背景分離部23は、各カメラの撮影画像を前景と背景とに分離して前景シルエット画像を生成する。例えば、まず、カメラ毎に複数フレーム分の撮影画像を用いて背景画像を生成する。具体的には、同一カメラで撮影された複数フレーム間の画像比較により、動きのある領域と動きの無い領域とを検出し、動きのない領域を背景画像とする。背景画像を得ると、次に、各カメラの撮影画像と該生成した背景画像との間で対応する画素同士を比較し、画素値の差が所定の閾値以上である画素を前景画素とする。これにより、各カメラの撮影画像と同じ画像サイズであって、画素値が“1”を前景画素、画素値が“0”を背景画素とした前景シルエット画像が得られる。こうして得られた、背景画像と前景シルエット画像は、映像化部25に送られる。なお、撮影画像を前景と背景とに分離する手法は、上述の例に限定されない。例えば、撮影画像から前景3Dモデルを生成する処理の中で、機械学習技術等を用いて前景部分を分離することで、前景シルエット画像を生成してもよい。
仮想視点設定部24は、不図示のUI等を介したユーザ指定に基づいて、或いは予め決められた仮想視点の設定情報を読み込んで、仮想視点を設定する。動画による仮想視点映像を生成する場合に設定される仮想視点は、その生成対象時間(例えば10秒間、複数視点映像が60fpsで撮影されていれば600フレーム分)の間で移動するように設定されることが多い。そのようなユーザ指示等に基づき設定された仮想視点の移動経路(以下、「仮想視点パス」と呼ぶ。)の情報は、ファイル入力部21と映像化部25に送られる。仮想視点として設定されるパラメータは、例えば仮想カメラの位置、姿勢、画角等であり、さらに焦点位置や絞り値等を含んでもよい。
映像化部25は、仮想視点設定部24から受け取った仮想視点パスの情報に基づいて仮想視点映像を生成する。映像化部25の詳細については後述する。映像化部25で生成した仮想視点映像のデータは、映像出力部26に送られる。
映像出力部26は、映像化部25から受け取った仮想視点映像のデータを、不図示のモニタに表示したり、或いは外部装置に送信するなどして出力する。
(映像化部の詳細)
図13(b)は、本実施形態に係る、映像化部25の詳細を示す機能ブロック図である。本実施形態の映像化部25は、前景3Dモデル生成部251、前景色づけ部252、背景色づけ部253、合成部254で構成される。以下、各部について説明する。
図13(b)は、本実施形態に係る、映像化部25の詳細を示す機能ブロック図である。本実施形態の映像化部25は、前景3Dモデル生成部251、前景色づけ部252、背景色づけ部253、合成部254で構成される。以下、各部について説明する。
前景3Dモデル生成部251は、前述の前景背景分離部23で生成された前景シルエット画像とファイル入力部21から受け取ったカメラパラメータとに基づき、前景3Dモデルを生成する。例えば、視体積交差法による前景3Dモデルの生成手順は、以下の1)~3)のとおりである。
1)予め設定された前景3Dモデルの生成対象空間に一定の大きさをもった直方体(ボクセル)を敷き詰める。生成対象空間は、仮想視点パスに基づき、仮想カメラから見える範囲を算出して決定する。
2)各カメラのカメラパラメータを用いて、各直方体を三次元的にカメラの前景シルエット画像上に射影し、前景画素と重なるか確認する。前景画素と重ならない場合、該直方体は、前景3Dモデルを形成する直方体でないと判定する。全カメラのうち1台でも前景3Dモデルを形成する直方体でないと判定された場合、該直方体を削除する。
3)上記2)の処理をすべての直方体に対して行い、残った直方体の重心座標の点の集合を前景3Dモデルとする。
なお、ここでは視体積交差法を用いた前景3Dモデルの生成方法を説明したが、3Dモデルの生成方法はこれに限定されない。そして、上述のようにして生成した前景3Dモデルは、前景色づけ部252に送られる。
前景色づけ部252は、前景3Dモデル生成部251で生成された前景3Dモデルに対し、仮想視点設定部24から受け取った仮想視点パスに基づき色づけ処理を行って、前景色付き画像を生成する。色づけ処理の具体的な手順は、以下の1)~3)のとおりである。
1)前景3Dモデルの表面上の各点がどのカメラから見えるかの判定(可視性判定)を行う。この可視性判定では、まず、各点を全カメラの前景シルエット画像に射影する。この際、複数の点が、前景シルエット画像上の同じ画素に射影された場合は、カメラからみて最も距離が短い位置にある点が見える点、その他の点は見えない点と判定する。この処理を前景3Dモデルの表面上の全点に対して行って、各点に色づけするためのカメラを特定する。
2)仮想視点パスに基づいて、前景3Dモデルを仮想視点映像となる画像に射影し、各画素に写る点を特定する。
3)画素毎に、上記1)の可視性判定で射影された点が見えると判定されたカメラの撮影画像を用いて、当該点が射影された画素の色を決定する。この際、複数のカメラから見える点の場合は、仮想視点の向きと各カメラの向きを比較し、より角度の小さい2つのカメラの撮影画像を適宜重み付けるなどして、色を決定すればよい。
上述のようにして生成した前景色付き画像のデータは、合成部254に送られる。
背景色づけ部253は、各カメラの撮影画像から抽出された背景画像を用いて、背景3Dモデルに貼り付ける背景テクスチャを生成する。具体的には、以下の1)~5)の手順で、背景テクスチャが生成される。
1)背景3Dモデルにおいて代表点となる頂点を設定する。
2)上記1)で設定された頂点を、仮想視点に近い2台のカメラ(カメラ1、カメラ2とする)のカメラパラメータを用いて、仮想視点映像となる画像上に射影する。
3)仮想視点とカメラ1の対応点、仮想視点とカメラ2の対応点を用いて、仮想視点とカメラ1間の射影行列1、及び、仮想視点とカメラ2間の射影行列2を算出する。
4)仮想視点映像となる画像における各画素の座標を、射影行列1と射影行列2を用いて、カメラ1の背景画像とカメラ2の背景画像にそれぞれ射影し、当該座標が射影された位置の画素値をそれぞれ取得する。
5)得られた2つの画素値の平均値を、仮想視点映像となる画像における背景領域の画素値とする。
さらに、背景色づけ部253は、生成した背景テクスチャを、Vvvmファイル内に格納されていた背景3Dモデルに対し貼り付け、仮想視点から見たときの背景画像(仮想背景画像)を生成する。上述のようにして生成した仮想背景画像のデータは、合成部254に送られる。
合成部254は、前景色づけ部252から受け取った前景色付き画像と、背景色づけ部253から受け取った仮想背景画像とを合成し、仮想視点からの見えを表す画像を生成する。具体的には、前景色付き画像の各画素に対し、仮想背景画像における対応する画素の画素値を上書きする処理を行なう。
図14は、本実施形態に係るVvvmファイル300から、仮想視点映像生成装置20が仮想視点映像を生成し出力するまでの処理の流れを示すフローチャートである。なお、各処理の冒頭における記号「S」はステップを意味する。以下、図14のフローに沿って説明する。
S1401では、ファイル入力部21が、Vvvmファイル300から格納データ情報302を読み出し、生成可否判定部22に出力する。続くS1402では、生成可否判定部22が、予め用意された生成可否判定基準の情報を読み出し、格納データ情報302を参照して、Vvvmファイル300内に格納された素材データを用いて仮想視点映像を生成可能であるかを判定する。判定の結果、仮想視点映像を生成可能な場合は、S1403に進む。この際、映像出力部26が、仮想視点映像を生成可能であることを示すメッセージを不図示のモニタに表示するなどの通知を行ってもよい。一方、仮想視点映像を生成不可能な場合は、S1409に進む。
S1403では、ファイル入力部21が、Vvvmファイル300からカメラパラメータ303と背景3Dモデル304を読み出し、カメラパラメータ303を前景背景分離部23に、背景3Dモデル304を映像化部25にそれぞれ出力する。続くS1404では、仮想視点設定部24は、ユーザ指定等に基づき仮想視点パスを設定し、その情報をファイル入力部21と映像化部25に出力する。
S1405では、ファイル入力部21が、入力された仮想視点パスに対応するフレームデータ305をVvvmファイル300から読み出し、前景背景分離部23に出力する。以降のS1406及びS1407は、フレーム単位で実行される。
S1406では、前景背景分離部23が、各カメラの撮影画像に対して前景背景分離処理を行って、前景シルエット画像と背景画像を生成し、映像化部25に出力する。続くS1407では、映像化部25が、入力された仮想視点パス、前景シルエット画像及び背景画像に基づき仮想視点映像を生成する。
S1408では、映像出力部26が、S1408で生成された仮想視点映像のデータを出力する。また、S1409では、映像出力部26が、仮想視点映像を出力できない旨のメッセージを不図示のモニタに表示するなどの通知を行う。
以上が、Vvvmファイル300から仮想視点映像を生成し出力するまでの処理の流れである。
<Vvvmファイルのバリエーション>
共通のフォーマットで素材データをファイル化したVvvmファイルのデータ構造は、前述の図3(a)に示す例に限定されない。以下に、Vvvmファイルのデータ構造のバリエーションを示す。
共通のフォーマットで素材データをファイル化したVvvmファイルのデータ構造は、前述の図3(a)に示す例に限定されない。以下に、Vvvmファイルのデータ構造のバリエーションを示す。
図15に示すVvvmファイル1500は、データバージョン1501、格納データ情報1502、カメラパラメータ1503、背景3Dモデル1504、フレームデータ1505から構成される。そして、フレームデータ1505は、第1フレームから第Nフレームまで存在し、1つのフレームデータには、前景画像群、前景3Dモデル群、背景画像群が含まれている。そして、前景画像群には、M台のカメラに対応した前景画像と前景シルエット画像が含まれる。また、前景3Dモデル群には、O個の前景3Dモデルが含まれる。また、背景画像群には、P個の背景画像が含まれる。この場合において、N、M、O及びPは、いずれも1以上の自然数である。Vvvmファイル1500にどのような素材データが格納されているかは、格納データ情報1502によって示される。そして、図16(a)は前景画像に関するメタデータの一例を示し、同(b)はそのビットアサインを示している。ここで、前景切り出し画像は、カメラの撮影画像から前景領域を切り出した画像を意味し、前景画像をメインプロファイルとするときの拡張プロファイルに相当する。Vvvmファイルに格納されているのが前景切り出し画像のみで前景画像自体は格納されていない場合、仮想視点映像生成装置側が前景切り出し画像に対応していないと仮想視点映像を生成できないということになる。例えば、あるバージョンのメインプロファイルには対応可能であるが、拡張プロファイルには対応できないという装置の場合、前景画像に関するメタデータを確認することで、自装置では仮想視点映像の生成ができないと判断することができる。このように、素材データに付与されるメタデータによって、仮想視点映像の生成可否をさらに詳細に判断することが可能になる。また、図16(c)は背景画像に関するメタデータの一例を示し、同(d)は格納背景画像のビットアサインを示している。そして、図16(e)は前景3Dモデルのメタデータの一例を示し、同(f)は格納前景3Dモデルのビットアサインを示している。前景3Dモデルや背景3Dモデルには、点の集合で構成される点群モデルや、多角形の面を集めて構成されるメッシュモデルなど、いくつか種類がある。仮想視点映像を生成する装置は、Vvvmファイルに格納されている前景/背景の3Dモデルの種類が、自装置で対応可能な種類であるかを、これらメタデータを参照して判断することができる。図15に示すデータ構造を持つVvvmファイル1500を生成し、それを用いて仮想視点映像を生成する態様については、次の実施形態2おいて説明することとする。
図17に示すVvvmファイル1700は、データバージョン1701、格納データ情報1702、背景3Dモデル1703、フレームデータ1704から構成される。そして、フレームデータ1704は、第1フレームから第Nフレームまで存在し、1つのフレームデータには、前景画像群、前景3Dモデル群、可視性情報、背景テクスチャ群が含まれている。ここで、可視性情報は、前述の可視性判定の結果に相当する情報である。前景画像群には、M台のカメラに対応した前景画像が含まれる。また、前景3Dモデル群には、O個の前景3Dモデルが含まれる。また、可視性情報には、Q個の可視性情報が含まれる。また、背景テクスチャ群には、背景3Dモデルに貼り付けるR個の背景テクスチャが含まれる。ここでのQ及びRも1以上の自然数である。また、R個の背景テクスチャは背景画像を合成して生成するため、R≦Pとなる。そして、Vvvmファイル1700にどのような素材データが格納されているかは、格納データ情報1702によって示される。メタデータとビットアサインについては省略する。図17に示すVvvmファイル1700の場合、前景3Dモデルに加えて、可視性情報と背景テクスチャのデータも含まれている。したがって、前景色づけ部252における可視性判定や、背景色づけ部253における背景テクスチャの生成を省くことができ、仮想視点映像装置側の負荷を軽くすることができる。
図18に示すVvvmファイル1800は、データバージョン1801、格納データ情報1802、背景3Dモデル1803、フレームデータ1804から構成される。そして、フレームデータ1804は、第1フレームから第Nフレームまで存在し、1つのフレームデータには、テクスチャ付き前景3Dモデル群と背景テクスチャ群とが含まれている。ここで、テクスチャ付き前景3Dモデルは、前述の前景色づけ処理が施された前景3Dモデルを意味する。テクスチャ付き前景3Dモデル群には、O個のテクスチャ付き前景3Dモデルが含まれる。また、背景テクスチャ群には、R個の背景テクスチャが含まれる。そして、Vvvmファイル1800にどのような素材データが格納されているかは、格納データ情報1802によって示される。メタデータとビットアサインについては省略する。図18に示すVvvmファイル1800の場合、既に色づけ処理が済んだ前景3Dモデルが含まれていることから、図17のVvvmファイル1700よりも仮想視点映像装置側の負荷をさらに軽くすることができる。
なお、図3(a)、図15、図17におけるフレームデータを構成する画像データ(各カメラの撮影画像、前景画像、背景画像)は、カメラに付された通し番号順に格納されるのが通常であるが、これに限定されない。例えば各素材データのヘッダにカメラ番号を付与した上で、順不同で格納してもよい。また、本実施形態では、各カメラの撮影画像や前景画像などのデータを、フレーム単位で読み出し可能なように格納しているが、カメラ単位で読み出し可能なように格納してもよい。
また、図3(a)、図15、図17、図18で例示したデータ構造においては、どのVvvmファイルにも背景3Dモデルが含まれているが必須ではない。例えば、○○スタジアムでのサッカーの試合といったように、撮影シーンが同一施設で行われる同種イベントである場合は、背景3Dモデルは、予め用意したものを共通で繰り返し使用可能である。受信したVvvmファイルに背景3Dモデルが含まれていなくても、仮想視点映像生成装置がその撮影シーンに対応する背景3Dモデルのデータを他の情報処理装置から取得するなどして、仮想視点映像を生成してもよい。この際、対応可否の判定基準がそれに応じたものになることは言うまでもない。
以上のとおり本実施形態によれば、仮想視点映像を生成するために必要な素材データが共通のフォーマットでまとめてファイル化される。これにより、共通フォーマットのVvvmファイルに対応した端末やアプリケーションであれば容易に仮想視点映像を生成できるようになり、仮想視点映像の利用環境が拡がる。
次に、前述の図15に示すデータ構造を持つVvvmファイル1500を生成し、それを用いて仮想視点映像を生成する態様を、実施形態2として説明する。なお、実施形態1と共通する内容については説明を省略ないしは簡略化することとし、以下では差異点を中心に説明を行うものとする。
前述のとおり、図15に示すVvvmファイル1500は、データバージョン1501、格納データ情報1502、カメラパラメータ1503、背景3Dモデル1504、フレームデータ1505から構成される。このため、本実施形態に係るファイル生成装置は、前景背景分離を実施し、前景3Dモデルの生成を行って、前景画像、前景シルエット画像、前景3Dモデル、背景画像の各データをフレーム単位で格納する。そして、Vvvmファイル1500には、これらの素材データが格納されていることを示す格納データ情報1502が付加される。また、本実施形態に係る仮想視点映像生成装置は、格納データ情報1502を参照して生成可否の判定を行って仮想視点映像の生成が可能であれば、当該ファイル内の前景画像、背景画像、前景3Dモデルの各素材データを用いて仮想視点映像を生成する。
(ファイル生成装置)
図19は、実施形態1の図1に対応する図であり、本実施形態に係るファイル生成装置10’の機能ブロック図である。ファイル生成装置10’は、データ入力部11’、カメラパラメータ生成部12’、ファイル生成部13’、ファイル出力部14に加え、前景背景分離部1901と前景3Dモデル生成部1902を有する。以下、図19に示す各部の役割について説明する。
図19は、実施形態1の図1に対応する図であり、本実施形態に係るファイル生成装置10’の機能ブロック図である。ファイル生成装置10’は、データ入力部11’、カメラパラメータ生成部12’、ファイル生成部13’、ファイル出力部14に加え、前景背景分離部1901と前景3Dモデル生成部1902を有する。以下、図19に示す各部の役割について説明する。
データ入力部11’は、その機能は、実施形態1のデータ入力部11と同じであるが、入力されたデータの出力先が異なる。すなわち、カメラ情報、複数視点映像、背景3Dモデルの入力を受け付けると、カメラ情報はカメラパラメータ生成部12’に、背景3Dモデルはファイル生成部13’に、複数視点映像のデータは前景背景分離部1901にそれぞれ送られる。
カメラパラメータ生成部12’も、その機能は実施形態1のカメラパラメータ生成部12と同じであるが、生成したカメラパラメータの出力先が異なる。本実施形態の場合、生成されたカメラパラメータは、前景背景分離部1901、前景3Dモデル生成部1902及びファイル生成部13’に送られる。
前景背景分離部1901は、実施形態1の仮想視点映像生成装置20における前景背景分離部23と同様、各カメラの撮影画像を前景と背景とに分離する処理を行い、前景画像、前景シルエット画像、背景画像を生成する。そして、得られた前景シルエット画像を前景3Dモデル生成部1902に、前景画像と背景画像をファイル生成部13’にそれぞれ送る。
前景3Dモデル生成部1902は、実施形態1の仮想視点映像生成装置20の映像化部25における前景3Dモデル生成部251と同様、前景シルエット画像と仮想視点パスとに基づき前景3Dモデルを生成する。そして、得られた前景3Dモデルを、ファイル生成部13’に送る。
ファイル生成部13’は、データ入力部11’から背景3Dモデル、前景背景分離部1901から前景画像、前景シルエット画像及び背景画像、前景3Dモデル生成部1902から前景3Dモデル、カメラパラメータ生成部12’からカメラパラメータを取得する。そして、取得したこれらデータを共通フォーマットでファイル化する。この際、前景画像、前景シルエット画像、前景3Dモデル及び背景画像は、フレーム単位で格納される。さらに、前景画像と前景シルエット画像はカメラ単位でも識別可能となるように、前景3Dモデルはモデル単位でも識別可能となるように、それぞれ格納される。さらに、素材データとしてこれらが格納されていることを示す格納データ情報1502を付加して、図15に示すVvvmファイル1500を生成する。
(仮想視点映像生成装置)
図20(a)及び(b)は、実施形態1の図13(a)及び(b)に対応する図であり、本実施形態に係る仮想視点映像生成装置20’と映像化部25’の内部構成をそれぞれ示している。図20(a)には前景背景分離部23に対応する処理ブロックが存在せず、図20(b)には前景3Dモデル生成部251に対応する処理ブロックが存在しない。以下、図20(a)及び(b)に示す各部の機能について説明する。
図20(a)及び(b)は、実施形態1の図13(a)及び(b)に対応する図であり、本実施形態に係る仮想視点映像生成装置20’と映像化部25’の内部構成をそれぞれ示している。図20(a)には前景背景分離部23に対応する処理ブロックが存在せず、図20(b)には前景3Dモデル生成部251に対応する処理ブロックが存在しない。以下、図20(a)及び(b)に示す各部の機能について説明する。
ファイル入力部21’は、ファイル生成装置10’で生成されたVvvmファイルの入力を受け付け、各処理に必要なデータを読み出して、各処理に対応したブロックに渡す。図15に示すVvvmファイル1500が入力された場合は、格納データ情報1502を読み出して、それを生成可否判定部22’に送る。また、カメラパラメータ1503と背景3Dモデル1504を読み出して、映像化部25’に送る。また、仮想視点設定部24から受け取った仮想視点パスの情報に基づき、設定された仮想視点パスに対応するフレームデータ1505を読み出し、映像化部25’に送る。
生成可否判定部22’は、ファイル入力部21’から受け取った格納データ情報を用いて、入力されたVvvmファイルに基づき仮想視点映像を生成可能であるかを判定する。前述の通り、本実施形態の仮想視点映像装置20’は、前景背景分離機能と前景3Dモデル生成機能とを有しない。よって、入力されたVvvmファイルが、図15(a)に示すVvvmファイル1500であれば生成可能と判断されるが、例えば図3(a)に示すVvvmファイル300であれば生成不可能と判断されることになる。
映像化部25’は、仮想視点設定部24から受け取った仮想視点パスの情報に基づいて仮想視点映像を生成する。映像化部25’の詳細については後述する。そして、映像出力部26が、映像化部25’にて生成された仮想視点映像のデータを、不図示のモニタに表示したり、或いは外部端末等に送信するなどして出力する。
(映像化部の詳細)
図20(b)に示す通り、本実施形態の映像化部25’は、前景色づけ部252’、背景色づけ部253、合成部254とで構成される。背景色づけ部253と合成部254は、実施形態1と異なるところはない。図20(c)は、本実施形態に係る前景色づけ部252’の内部構成を示すブロック図である。前景色づけ部252’は、使用モデル決定部2000と、複数種類の前景3Dモデルに対応した色づけ部、具体的には、メッシュモデル色づけ部2001、ビルボード色づけ部2002、点群モデル色づけ部2003とで構成される。使用モデル決定部2000によって決定された色づけ部において、前景オブジェクトの3Dモデルに色づけがなされ、仮想視点から見た前景色つき画像が生成される。例えば、入力された前景3Dモデルのタイプが、ビルボード形式であった場合は、ビルボード色づけ部2002が、当該前景3Dモデルに適用する色づけ部として決定される。ビルボードの場合はそれを立てる座標位置のみが示される(オブジェクトの三次元形状は持たない)ので、指定された座標位置に描画対象のオブジェクトがあるときの仮想視点から見える方向と大きさを計算し、仮想視点から見た前景を生成する。
図20(b)に示す通り、本実施形態の映像化部25’は、前景色づけ部252’、背景色づけ部253、合成部254とで構成される。背景色づけ部253と合成部254は、実施形態1と異なるところはない。図20(c)は、本実施形態に係る前景色づけ部252’の内部構成を示すブロック図である。前景色づけ部252’は、使用モデル決定部2000と、複数種類の前景3Dモデルに対応した色づけ部、具体的には、メッシュモデル色づけ部2001、ビルボード色づけ部2002、点群モデル色づけ部2003とで構成される。使用モデル決定部2000によって決定された色づけ部において、前景オブジェクトの3Dモデルに色づけがなされ、仮想視点から見た前景色つき画像が生成される。例えば、入力された前景3Dモデルのタイプが、ビルボード形式であった場合は、ビルボード色づけ部2002が、当該前景3Dモデルに適用する色づけ部として決定される。ビルボードの場合はそれを立てる座標位置のみが示される(オブジェクトの三次元形状は持たない)ので、指定された座標位置に描画対象のオブジェクトがあるときの仮想視点から見える方向と大きさを計算し、仮想視点から見た前景を生成する。
モデル決定部2000は、前景3Dモデルに付与されたメタデータに基づいて、フレームデータ1505に含まれる前景3Dモデルの種類を特定し、3つの色づけ部2001~2003のうちどれを使用して色づけ処理を行うかを決定する。この際、フレームデータ1505内に複数種類の前景3Dモデルが格納されていれば、予め定めた優先順(例えば、点群モデル色づけ部2003、メッシュモデル色づけ部2001、ビルボード色づけ部2002の順)に使用する色づけ部を決定する。また、仮想視点の設定時にユーザが仮想視点映像生成モードを指定した場合には、当該指定に係る生成モードの内容に応じて決定するようにしてもよい。例えば、高画質モードが指定された場合は点群モデル色づけ部2003、通常画質モードが指定された場合はメッシュモデル色づけ部2001、高速モードが指定された場合はビルボード色づけ部2002、といった具合である。このように、予め定めた基準によって、前景3Dモデルに対する色づけ処理に用いる処理部を決定することにより、目的や用途に応じた適切な前景を生成することができる。
ここで、例えば、前景色づけ部252’が点群モデル色づけ部2003を有しておらず、仮想視点映像生成装置20’に入力されたVvvmファイル1500のフレームデータ1505に格納された前景3Dモデルが点群モデルのみであったと仮定する。この場合、生成可否判定部22’は、前景3Dモデルに関するメタデータを参照して、フレームデータ1505に含まれる前景3Dモデルが点群モデルだけであることを特定する。そして、自装置が点群モデルに対応した色づけ部を持たないことにより、仮想視点映像を生成することはできないと判定する。このように、格納データ情報1502だけでなく、それぞれの素材データに付与されたメタデータの内容を確認することにより、さらに詳細に仮想視点映像生成可否を判断することが可能となる。
<変形例>
なお、映像化部25’は、設定された仮想視点パスの下で実際に用いる素材データだけをVvvmファイル1500から取得することで、より効率的に仮想視点映像を生成するようにしてもよい。すなわち、ファイル入力部21’が、仮想視点設定部24から入力された仮想視点パスの情報に基づいて、仮想視点映像の生成に実際に使用する素材データのみを特定して、映像化部25’に渡すようにする。この特定の際には、対象となるフレームデータ1505に含まれる素材の種類(前景画像、前景3Dモデル、背景画像)を指定した上で、さらにカメラIDやモデルIDといったさらに細かな指定が含まれるようにする。以下に、設定された仮想視点に対応する素材データをどのように特定するのかについて説明する。
なお、映像化部25’は、設定された仮想視点パスの下で実際に用いる素材データだけをVvvmファイル1500から取得することで、より効率的に仮想視点映像を生成するようにしてもよい。すなわち、ファイル入力部21’が、仮想視点設定部24から入力された仮想視点パスの情報に基づいて、仮想視点映像の生成に実際に使用する素材データのみを特定して、映像化部25’に渡すようにする。この特定の際には、対象となるフレームデータ1505に含まれる素材の種類(前景画像、前景3Dモデル、背景画像)を指定した上で、さらにカメラIDやモデルIDといったさらに細かな指定が含まれるようにする。以下に、設定された仮想視点に対応する素材データをどのように特定するのかについて説明する。
まず、前景画像と背景画像については、設定された仮想視点位置と近い視点位置のカメラで撮影された前景画像或いは背景画像を、Vvvmファイル内のカメラパラメータに基づいて特定する。この際、選択する前景画像が少ないと、障害物に隠れるオクルージョンにより、色づけができない場合もある。また、選択する背景画像が少ないと、仮想視点に映る背景がすべて色づけできない可能性がある。そのため、複数台(例えば、視点位置が近いカメラから順に6台分)のカメラの撮影画像における前景画像や背景画像を選択するようにする。この際、台数を多くしたり、高さの異なるカメラを混ぜたりすることで、オクルージョンの影響を受けづらくしたり、背景が色づけできない可能性を低減したりすることができる。
次に、前景3Dモデルについては、Vvvmファイルに含まれる前景3Dモデルのバウンディングボックス情報に基づいて特定する。バウンディングボックス情報は、前景3Dモデルを直方体で囲ったときの、当該直方体の3次元座標を示す情報である。このバウンディングボックス情報を用いて、各前景3Dモデルが、設定された仮想視点から見えるか否かを判定する。具体的には、バウンディングボックスを表す直方体の各頂点を、仮想視点映像となる2次元画像に向けて射影したときに、各頂点に対応する点が当該画像上に存在するか否かを確認する。こうして、設定された仮想視点から見える前景3Dモデルが特定される。
なお、設定された仮想視点パスの下で実際に使用する素材データだけを取得して効率的に仮想視点映像を生成する上述の内容は、図15に示すデータ構造のVvvmファイルに限定されるものではない。他のあらゆるデータ構造のVvvmファイルに対しても適用可能である。
以上のとおり本実施形態の場合、ファイル生成装置が、素材データとして、前景画像、背景画像及び前景3Dモデルが含まれるVvvmファイルを生成する。したがって、前景背景分離機能や前景3Dモデル生成機能を有していない仮想視点映像生成装置においても、Vvvmファイルに対応していれば容易に仮想視点映像を生成することができる。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
実施形態を参照して本発明を説明して来たが、本発明が上述した実施形態に限定されないことは言うまでもない。下記のクレームは最も広く解釈されて、そうした変形例及び同等の構造・機能全てを包含するものとする。
本出願は、2018年7月19日に出願された日本国特許出願第2018‐136204号に基づいて優先権を主張し、前記日本国特許出願は、この参照によって本明細書に含まれる。
Claims (25)
- 複数の視点で撮影された画像に基づく仮想視点映像の生成に用いる素材データを取得する取得手段と、
前記取得手段により取得された素材データと前記素材データの種別を示す種別情報とを格納したファイルを生成するファイル生成手段と、
前記ファイル生成手段により生成された前記ファイルを出力する出力手段と
を備えたことを特徴とするファイル生成装置。 - 前記ファイル生成手段は、前記ファイルの生成において、前記ファイルに格納される各素材データを特定する格納データ情報を生成し、前記各素材データと共に前記ファイルに格納することを特徴とする請求項1に記載のファイル生成装置。
- 前記ファイル生成手段は、前記ファイルの生成において、前記ファイルに格納される各素材データのそれぞれに対しメタデータを付与して、前記ファイルに格納することを特徴とする請求項2に記載のファイル生成装置。
- 前記撮影を行うカメラの台数の情報、及び、各カメラのIDと紐付けられた当該各カメラの位置、姿勢、画角の情報を少なくとも含むカメラパラメータを生成するカメラパラメータ生成手段をさらに備え、
前記ファイル生成手段は、前記ファイルの生成において、前記カメラパラメータを前記素材データとして前記ファイルに格納する
ことを特徴とする請求項1乃至3のいずれか1項に記載のファイル生成装置。 - 前記カメラパラメータには、さらに、前記各カメラのIDと紐付けられた各カメラの撮影に関する情報であって、撮影画像の幅、高さ、絞り値、シャッタースピード、ISO感度、レンズの焦点距離、被写体までの距離の少なくとも一つ以上の情報を含む、ことを特徴とする請求項4に記載のファイル生成装置。
- 前記ファイル生成手段は、各カメラの撮影画像を、前記素材データとしてファイルを生成することを特徴とする請求項1乃至3のいずれか1項に記載のファイル生成装置。
- 前記ファイル生成手段は、前記各カメラの撮影画像のデータを、フレーム単位又はカメラ単位で前記ファイルに格納することを特徴とする請求項6に記載のファイル生成装置。
- 各カメラの撮影画像に対し前景背景分離を行う前景背景分離手段をさらに備え、
前記ファイル生成手段は、前記ファイルの生成において、前記前景背景分離の結果の少なくとも一部を、前記素材データとして前記ファイルに格納する
ことを特徴とする請求項1乃至3のいずれか1項に記載のファイル生成装置。 - 各カメラの撮影画像における前景シルエット画像と、前記各カメラの位置及び姿勢を少なくとも含むカメラパラメータとに基づき、前景オブジェクトの3次元形状を表す前景3Dモデルを生成するモデル生成手段をさらに備え、
前記ファイル生成手段は、前記ファイルの生成において、前記前景3Dモデルを前記素材データとして前記ファイルに格納する
ことを特徴とする請求項1乃至3のいずれか1項に記載のファイル生成装置。 - 前記ファイル生成手段は、前記前景3Dモデルのデータを、モデル単位で前記ファイルに格納することを特徴とする請求項9に記載のファイル生成装置。
- 前記ファイル生成手段は、前記ファイルの生成において、前記複数の視点で撮影された画像における背景オブジェクトの3次元形状を表す背景3Dモデルを、前記素材データとして前記ファイルに格納することを特徴とする請求項1乃至10のいずれか1項に記載のファイル生成装置。
- 複数の視点で撮影された画像に基づく仮想視点映像の生成に用いる素材データと、前記素材データの種別を示す種別情報と、を格納したファイルを入力する入力手段と、
前記入力手段により入力されたファイルに格納されるデータを用いて仮想視点映像を生成する生成手段と
を備えたことを特徴とする映像生成装置。 - 前記ファイルには、格納されている各素材データを特定する格納データ情報が格納されており、
前記ファイルに格納された素材データを用いた前記仮想視点映像の生成が可能かどうかを、前記格納データ情報に基づいて判定する判定手段をさらに備え、
前記生成手段は、前記判定手段で生成可能と判定された場合に、前記ファイルに格納された素材データを用いて、前記仮想視点映像を生成する
ことを特徴とする請求項12に記載の映像生成装置。 - 前記判定手段は、前記格納データ情報で特定される素材データが、前記生成手段の機能に応じて要求される素材データを満たす場合、仮想視点画像が生成可能であると判定することを特徴とする請求項13に記載の映像生成装置。
- 前記判定手段における判定結果をユーザに通知する通知手段をさらに備えたことを特徴とする請求項13又は14に記載の映像生成装置。
- 前記生成手段は、各カメラの撮影画像における前景オブジェクトの3次元形状を表す前景3Dモデルに対し色づけする機能を少なくとも有することを特徴とする請求項12乃至15のいずれか1項に記載の映像生成装置。
- 前記前景3Dモデルの種類は、点群で表現された3Dモデル、メッシュで表現された3Dモデル、ビルボード形式の3Dモデルのうちいずれかであることを特徴とする請求項16に記載の映像生成装置。
- 前記生成手段は、
前記ファイルに複数種類の前景3Dモデルが含まれる場合、所定の基準に従って、使用する前景3Dモデルを決定し
決定した前記前景3Dモデルを用いて、前記仮想視点映像を生成する
ことを特徴とする請求項17に記載の映像生成装置。 - 前記所定の基準は、前記前景3Dモデルの種類について予め定めた優先順であることを特徴とする請求項18に記載の映像生成装置。
- 前記所定の基準は、前記仮想視点映像の生成モードに応じてどの種類の前景3Dモデルを使用するかを定めた基準であることを特徴とする請求項18に記載の映像生成装置。
- 前記生成手段は、
前記ファイルに格納された素材データの中に含まれる、各カメラの撮影画像における前景シルエット画像と、各カメラの位置及び姿勢を少なくとも含むカメラパラメータとを用いて前景3Dモデルを生成し、
生成した前記前景3Dモデルに対して色づけを行なって、前記仮想視点映像を生成する
ことを特徴とする請求項16乃至20のいずれか1項に記載の映像生成装置。 - 前記生成手段は、
前記ファイルに格納された素材データの中に含まれる各カメラの撮影画像に対し前景背景分離を行って前景シルエット画像を生成し、
前記ファイルに格納された素材データの中に含まれる、前記各カメラの位置及び姿勢を少なくとも含むカメラパラメータと、生成した前記前景シルエット画像とを用いて、前景3Dモデルを生成し、
生成した前記前景3Dモデルに対して色づけを行って、前記仮想視点画像を生成する
ことを特徴とする請求項16乃至20のいずれか1項に記載の映像生成装置。 - 前記生成手段は、
設定された仮想視点に基づいて、前記仮想視点映像の生成に必要な素材データを決定し、
決定した前記必要な素材データを前記ファイルの中から取得し、
取得した素材データを用いて、前記仮想視点画像を生成する
ことを特徴とする請求項12乃至22のいずれか1項に記載の映像生成装置。 - 複数の視点で撮影された画像に基づく仮想視点映像の生成に用いる素材データを取得する取得ステップと、
前記取得ステップにより取得された素材データと前記素材データの種別を示す種別情報とを格納したファイルを生成するファイル生成ステップと、
前記ファイル生成ステップにより生成された前記ファイルを出力する出力ステップと
を備えたことを特徴とするファイル生成方法。 - コンピュータを、請求項1乃至11のいずれか1項に記載のファイル生成装置として機能させるためのプログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP19837969.5A EP3826298A4 (en) | 2018-07-19 | 2019-05-15 | FILE GENERATION DEVICE AND DEVICE FOR GENERATION OF AN IMAGE FROM A FILE |
US17/147,636 US11715263B2 (en) | 2018-07-19 | 2021-01-13 | File generation apparatus, image generation apparatus based on file, file generation method and storage medium |
US18/208,341 US20230351693A1 (en) | 2018-07-19 | 2023-06-12 | File generation apparatus, image generation apparatus based on file, file generation method and storage medium |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018136204A JP7271099B2 (ja) | 2018-07-19 | 2018-07-19 | ファイルの生成装置およびファイルに基づく映像の生成装置 |
JP2018-136204 | 2018-07-19 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US17/147,636 Continuation US11715263B2 (en) | 2018-07-19 | 2021-01-13 | File generation apparatus, image generation apparatus based on file, file generation method and storage medium |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020017134A1 true WO2020017134A1 (ja) | 2020-01-23 |
Family
ID=69163553
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2019/019226 WO2020017134A1 (ja) | 2018-07-19 | 2019-05-15 | ファイルの生成装置およびファイルに基づく映像の生成装置 |
Country Status (4)
Country | Link |
---|---|
US (2) | US11715263B2 (ja) |
EP (1) | EP3826298A4 (ja) |
JP (2) | JP7271099B2 (ja) |
WO (1) | WO2020017134A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022176552A1 (ja) * | 2021-02-18 | 2022-08-25 | キヤノン株式会社 | 情報処理装置、情報処理方法、及び、プログラム |
WO2022176722A1 (ja) * | 2021-02-18 | 2022-08-25 | キヤノン株式会社 | 情報処理装置、情報処理方法、及び、プログラム |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7320352B2 (ja) * | 2016-12-28 | 2023-08-03 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 三次元モデル送信方法、三次元モデル受信方法、三次元モデル送信装置及び三次元モデル受信装置 |
JP2020134973A (ja) * | 2019-02-12 | 2020-08-31 | キヤノン株式会社 | 素材生成装置、画像生成装置および画像処理装置 |
CN110798673B (zh) * | 2019-11-13 | 2021-03-19 | 南京大学 | 基于深度卷积神经网络的自由视点视频生成及交互方法 |
JP2021152724A (ja) | 2020-03-24 | 2021-09-30 | キヤノン株式会社 | 情報処理装置、情報処理方法、およびプログラム |
JP2021163303A (ja) | 2020-04-01 | 2021-10-11 | キヤノン株式会社 | 画像処理装置、画像処理方法およびプログラム |
JPWO2021200261A1 (ja) * | 2020-04-03 | 2021-10-07 | ||
WO2022191010A1 (ja) * | 2021-03-12 | 2022-09-15 | ソニーグループ株式会社 | 情報処理装置および情報処理方法 |
US20230101991A1 (en) * | 2021-09-24 | 2023-03-30 | Sony Group Corporation | View-independent multi-camera volumetric capture system |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011015215A (ja) * | 2009-07-02 | 2011-01-20 | Canon Inc | 画像表示装置、画像表示装置の制御方法、及びプログラム |
JP2012010344A (ja) * | 2011-07-13 | 2012-01-12 | Fujifilm Corp | 画像処理装置、方法およびプログラム |
JP2014215828A (ja) * | 2013-04-25 | 2014-11-17 | シャープ株式会社 | 画像データ再生装置、および視点情報生成装置 |
JP2017211828A (ja) | 2016-05-25 | 2017-11-30 | キヤノン株式会社 | 画像処理システム、画像処理装置、制御方法、及び、プログラム |
JP2018136204A (ja) | 2017-02-22 | 2018-08-30 | 沖電気工業株式会社 | 信号情報表示装置、探知システムおよびプログラム |
Family Cites Families (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5812787A (en) * | 1995-06-30 | 1998-09-22 | Intel Corporation | Video coding scheme with foreground/background separation |
EP1612697A1 (en) * | 2004-06-28 | 2006-01-04 | Dassault Systèmes | A graphical method for navigating in a database of modelled objects |
US7221366B2 (en) * | 2004-08-03 | 2007-05-22 | Microsoft Corporation | Real-time rendering system and process for interactive viewpoint video |
KR101334173B1 (ko) * | 2006-01-11 | 2013-11-28 | 삼성전자주식회사 | 그래픽 데이터 부호화 및 복호화 방법과 장치 |
JP2008177683A (ja) * | 2007-01-16 | 2008-07-31 | Kyocera Mita Corp | データ提供システム、データ受領システム、データ提供方法、データ提供プログラム及びデータ受領プログラム |
JP2009080578A (ja) * | 2007-09-25 | 2009-04-16 | Toshiba Corp | 多視点データ生成装置、方法及びプログラム |
JP4902569B2 (ja) * | 2008-02-19 | 2012-03-21 | キヤノン株式会社 | 画像符号化装置及びその制御方法 |
US8878836B2 (en) * | 2008-02-29 | 2014-11-04 | Samsung Electronics Co., Ltd. | Method and apparatus for encoding datastream including additional information on multiview image and method and apparatus for decoding datastream by using the same |
KR101490689B1 (ko) * | 2008-05-27 | 2015-02-06 | 삼성전자주식회사 | 카메라 파라미터를 이용한 스테레오스코픽 영상데이터스트림 생성 방법 및 그 장치와 스테레오스코픽 영상복원 방법 및 그 장치 |
WO2011108893A2 (en) * | 2010-03-05 | 2011-09-09 | Samsung Electronics Co., Ltd. | Method and apparatus for generating and reproducing adaptive stream based on file format, and recording medium thereof |
KR101697184B1 (ko) * | 2010-04-20 | 2017-01-17 | 삼성전자주식회사 | 메쉬 생성 장치 및 그 방법, 그리고, 영상 처리 장치 및 그 방법 |
KR101355296B1 (ko) * | 2010-08-09 | 2014-01-27 | 파나소닉 주식회사 | 화상 부호화 방법, 화상 복호 방법, 화상 부호화 장치 및 화상 복호 장치 |
US20120229449A1 (en) * | 2010-11-08 | 2012-09-13 | Eyelead Sa | File structure and management in 3d authoring system |
KR101249901B1 (ko) * | 2011-06-22 | 2013-04-09 | 엘지전자 주식회사 | 이동통신 단말기 및 그 동작방법 |
KR101608253B1 (ko) * | 2011-08-09 | 2016-04-01 | 인텔 코포레이션 | 이미지 기반 멀티 뷰 3d 얼굴 생성 |
WO2013174671A1 (en) * | 2012-05-22 | 2013-11-28 | Telefonica, S.A. | A method and a system for generating a realistic 3d reconstruction model for an object or being |
US10163261B2 (en) * | 2014-03-19 | 2018-12-25 | Matterport, Inc. | Selecting two-dimensional imagery data for display within a three-dimensional model |
JP2015136060A (ja) * | 2014-01-17 | 2015-07-27 | ソニー株式会社 | 通信装置、通信データ生成方法、および通信データ処理方法 |
US10013157B2 (en) * | 2015-07-22 | 2018-07-03 | Box, Inc. | Composing web-based interactive 3D scenes using high order visual editor commands |
US20170064279A1 (en) * | 2015-09-01 | 2017-03-02 | National Taiwan University | Multi-view 3d video method and system |
JP6548542B2 (ja) * | 2015-09-29 | 2019-07-24 | 株式会社ホロン | Sem画像取得装置およびsem画像取得方法 |
CN108476346B (zh) * | 2016-01-13 | 2021-03-12 | 索尼公司 | 信息处理装置和信息处理方法 |
JP6604237B2 (ja) * | 2016-03-01 | 2019-11-13 | 株式会社リコー | 情報処理装置、情報処理システム、プログラム、及び制御方法 |
US20170286993A1 (en) * | 2016-03-31 | 2017-10-05 | Verizon Patent And Licensing Inc. | Methods and Systems for Inserting Promotional Content into an Immersive Virtual Reality World |
JP6672075B2 (ja) * | 2016-05-25 | 2020-03-25 | キヤノン株式会社 | 制御装置、制御方法、及び、プログラム |
US10416836B2 (en) * | 2016-07-11 | 2019-09-17 | The Boeing Company | Viewpoint navigation control for three-dimensional visualization using two-dimensional layouts |
US10389994B2 (en) * | 2016-11-28 | 2019-08-20 | Sony Corporation | Decoder-centric UV codec for free-viewpoint video streaming |
US10306254B2 (en) * | 2017-01-17 | 2019-05-28 | Seiko Epson Corporation | Encoding free view point data in movie data container |
JP7205471B2 (ja) * | 2017-06-29 | 2023-01-17 | ソニーグループ株式会社 | 画像処理装置および画像処理方法 |
JP6409107B1 (ja) | 2017-09-06 | 2018-10-17 | キヤノン株式会社 | 情報処理装置、情報処理方法、及びプログラム |
US20190131081A1 (en) * | 2017-10-30 | 2019-05-02 | Leedarson America Inc. | Retrofit switch |
JP2019135617A (ja) | 2018-02-05 | 2019-08-15 | キヤノン株式会社 | 情報処理装置およびその制御方法、画像処理システム |
US10984541B2 (en) * | 2018-04-12 | 2021-04-20 | Samsung Electronics Co., Ltd. | 3D point cloud compression systems for delivery and access of a subset of a compressed 3D point cloud |
-
2018
- 2018-07-19 JP JP2018136204A patent/JP7271099B2/ja active Active
-
2019
- 2019-05-15 WO PCT/JP2019/019226 patent/WO2020017134A1/ja active Application Filing
- 2019-05-15 EP EP19837969.5A patent/EP3826298A4/en active Pending
-
2021
- 2021-01-13 US US17/147,636 patent/US11715263B2/en active Active
-
2023
- 2023-04-27 JP JP2023073248A patent/JP2023090835A/ja active Pending
- 2023-06-12 US US18/208,341 patent/US20230351693A1/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011015215A (ja) * | 2009-07-02 | 2011-01-20 | Canon Inc | 画像表示装置、画像表示装置の制御方法、及びプログラム |
JP2012010344A (ja) * | 2011-07-13 | 2012-01-12 | Fujifilm Corp | 画像処理装置、方法およびプログラム |
JP2014215828A (ja) * | 2013-04-25 | 2014-11-17 | シャープ株式会社 | 画像データ再生装置、および視点情報生成装置 |
JP2017211828A (ja) | 2016-05-25 | 2017-11-30 | キヤノン株式会社 | 画像処理システム、画像処理装置、制御方法、及び、プログラム |
JP2018136204A (ja) | 2017-02-22 | 2018-08-30 | 沖電気工業株式会社 | 信号情報表示装置、探知システムおよびプログラム |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022176552A1 (ja) * | 2021-02-18 | 2022-08-25 | キヤノン株式会社 | 情報処理装置、情報処理方法、及び、プログラム |
WO2022176722A1 (ja) * | 2021-02-18 | 2022-08-25 | キヤノン株式会社 | 情報処理装置、情報処理方法、及び、プログラム |
Also Published As
Publication number | Publication date |
---|---|
JP7271099B2 (ja) | 2023-05-11 |
JP2023090835A (ja) | 2023-06-29 |
US20230351693A1 (en) | 2023-11-02 |
EP3826298A4 (en) | 2022-05-04 |
JP2020014159A (ja) | 2020-01-23 |
EP3826298A1 (en) | 2021-05-26 |
US11715263B2 (en) | 2023-08-01 |
US20210134058A1 (en) | 2021-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020017134A1 (ja) | ファイルの生成装置およびファイルに基づく映像の生成装置 | |
US10540818B2 (en) | Stereo image generation and interactive playback | |
US10474227B2 (en) | Generation of virtual reality with 6 degrees of freedom from limited viewer data | |
US10116922B2 (en) | Method and system for automatic 3-D image creation | |
JP7002056B2 (ja) | 三次元モデル生成装置及び三次元モデル生成方法 | |
TW201915944A (zh) | 圖像處理方法、裝置、系統和儲存介質 | |
KR20140100656A (ko) | 전방향 영상 및 3차원 데이터를 이용한 시점 영상 제공 장치 및 방법 | |
US10444931B2 (en) | Vantage generation and interactive playback | |
JP2016537901A (ja) | ライトフィールド処理方法 | |
CN107851333A (zh) | 图像生成装置、图像生成系统以及图像生成方法 | |
JP2019191989A (ja) | 仮想視点画像を生成するシステム、方法及びプログラム | |
WO2018069570A1 (en) | Display of visual data with a virtual reality headset | |
US10163250B2 (en) | Arbitrary view generation | |
US11557087B2 (en) | Image processing apparatus and image processing method for generating a strobe image using a three-dimensional model of an object | |
EP3665656B1 (en) | Three-dimensional video processing | |
US20230394701A1 (en) | Information processing apparatus, information processing method, and storage medium | |
KR101208767B1 (ko) | 곡면 투사를 이용한 입체 영상 생성 방법, 장치 및 시스템, 이를 위한 기록 매체 | |
JP2019144958A (ja) | 画像処理装置、画像処理方法およびプログラム | |
JP7378960B2 (ja) | 画像処理装置、画像処理システム、画像生成方法、および、プログラム | |
JP2020134973A (ja) | 素材生成装置、画像生成装置および画像処理装置 | |
JP5200141B2 (ja) | 映像提示システム、映像提示方法、プログラム及び記録媒体 | |
JP2023128268A (ja) | 情報処理装置、情報処理方法、画像生成装置、画像生成方法及びプログラム | |
CN108876890A (zh) | 一种用于分析和操作图像和视频的方法 | |
JP2010152770A (ja) | 画像処理装置、方法及びプログラム | |
KR20110096934A (ko) | 다각 촬영 영상을 이용한 구조물의 3차원 정보 추출 방법 및 이를 수행하는 프로그램을 기록한 기록매체 |
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: 19837969 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2019837969 Country of ref document: EP |