WO2018221211A1 - 画像処理装置および方法、ファイル生成装置および方法、並びにプログラム - Google Patents

画像処理装置および方法、ファイル生成装置および方法、並びにプログラム Download PDF

Info

Publication number
WO2018221211A1
WO2018221211A1 PCT/JP2018/018842 JP2018018842W WO2018221211A1 WO 2018221211 A1 WO2018221211 A1 WO 2018221211A1 JP 2018018842 W JP2018018842 W JP 2018018842W WO 2018221211 A1 WO2018221211 A1 WO 2018221211A1
Authority
WO
WIPO (PCT)
Prior art keywords
occlusion
information
image
mpd file
viewpoint position
Prior art date
Application number
PCT/JP2018/018842
Other languages
English (en)
French (fr)
Inventor
充 勝股
平林 光浩
高林 和彦
俊也 浜田
遼平 高橋
Original Assignee
ソニー株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ソニー株式会社 filed Critical ソニー株式会社
Priority to KR1020197033637A priority Critical patent/KR20200014281A/ko
Priority to JP2019522097A priority patent/JP7200935B2/ja
Priority to RU2019137581A priority patent/RU2019137581A/ru
Priority to EP18809776.0A priority patent/EP3633628B1/en
Priority to US16/609,305 priority patent/US11394943B2/en
Priority to BR112019024597A priority patent/BR112019024597A2/pt
Priority to CN201880026631.7A priority patent/CN110546688B/zh
Publication of WO2018221211A1 publication Critical patent/WO2018221211A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/111Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/21805Source of audio or video content, e.g. local disk arrays enabling multiple viewpoints, e.g. using a plurality of cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • G06T15/205Image-based rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration by the use of more than one image, e.g. averaging, subtraction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/128Adjusting depth or disparity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/161Encoding, multiplexing or demultiplexing different image signal components
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/194Transmission of image signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • H04N13/243Image signal generators using stereoscopic image cameras using three or more 2D image sensors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26258Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/44029Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display for generating different versions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/816Monomedia components thereof involving special video data, e.g 3D video
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/85406Content authoring involving a specific file format, e.g. MP4 format

Definitions

  • the present technology relates to an image processing apparatus and method, a file generation apparatus and method, and a program, and more particularly, to an image processing apparatus and method, a file generation apparatus and method, and a program that can obtain an appropriate occlusion image.
  • an omnidirectional image that is an image (video) in all directions in 360 degrees, that is, in a horizontal direction and a vertical direction is known.
  • image information including texture information and depth information of an omnidirectional image is also referred to as a main image.
  • the viewer from the origin O It is also possible to display a peep by moving the user's viewpoint position.
  • the occlusion image is the texture information of an occlusion area that is a subject that does not exist in the texture information of the main image with the origin O as the viewpoint position, that is, the subject that cannot be seen from the origin O, and the depth related to the occlusion area.
  • This is image information including depth information indicating the position (distance) in the direction.
  • MPEG-DASH can transmit a plurality of occlusion images, and the client device can display a peep by using an appropriate occlusion image according to the viewpoint position of the user among the plurality of acquired occlusion images. Can be realized.
  • the client device when the transmission band is not sufficient, the client device either acquires the main image or only the texture information of the main image, and does not acquire the occlusion image.
  • the client device cannot acquire the occlusion image even when there is a margin in the transmission band for acquiring only a part of the occlusion images used for displaying the omnidirectional image among the plurality of occlusion images. For this reason, the client device may not be able to acquire a necessary occlusion image depending on the state of the transmission band, and may not be able to display the peep.
  • the present technology has been made in view of such a situation, and makes it possible to obtain an appropriate occlusion image.
  • the image processing apparatus obtains the occlusion acquired from the plurality of occlusion images indicated by the MPD file based on information on the viewpoint position of the occlusion image included in the MPD file.
  • An MPD file processing unit for selecting an image is provided.
  • the image processing method or program according to the first aspect of the present technology obtains from among the plurality of occlusion images indicated by the MPD file based on information about the viewpoint position of the occlusion image included in the MPD file. Selecting the occlusion image.
  • the acquired occlusion image is selected from a plurality of the occlusion images indicated by the MPD file based on information on the viewpoint position of the occlusion image included in the MPD file. Is done.
  • a file generation device includes, for a plurality of occlusion images, an MPD file generation unit that generates an MPD file including information related to a viewpoint position of the occlusion image, and a communication unit that transmits the MPD file. Prepare.
  • the file generation method or program according to the second aspect of the present technology includes a step of generating an MPD file including information on the viewpoint position of the occlusion image for a plurality of occlusion images, and transmitting the MPD file.
  • an MPD file including information on the viewpoint position of the occlusion image is generated, and the MPD file is transmitted.
  • an appropriate occlusion image can be obtained.
  • coordinate information indicating the viewpoint position of the occlusion image and information regarding the depth level of the occlusion area are simultaneously signaled to the client device so that an appropriate occlusion image can be selected in the client device.
  • information for selecting an occlusion image such as coordinate information indicating the viewpoint position of the occlusion image and information regarding the depth level of the occlusion area, is included in the MPD (Media Presentation Description) file.
  • MPD Media Presentation Description
  • the information for selecting the occlusion image is not limited to the method of signaling by the MPD file, and the information for selecting the occlusion image may be signaled to the client device by any other method.
  • the server or the like may supply only information for selecting an occlusion image separately from the MPD file to the client device.
  • the omnidirectional image is a moving image
  • the omnidirectional image may be a still image.
  • the image to be processed by the present technology is not limited to an omnidirectional image, and may be a partial image of an omnidirectional image such as a hemispherical image.
  • the main image consists of texture information, which is a moving image as a omnidirectional image, and depth information of the omnidirectional image.
  • the omnidirectional image reproduced by the texture information of the main image is, for example, each direction of 360 degrees viewed from the origin O of a predetermined coordinate system (hereinafter also referred to as the omnidirectional coordinate system), that is, perpendicular to the horizontal direction.
  • the image is an omnidirectional image.
  • the position of the origin O is the center position of the omnidirectional sphere, which is a virtual screen of the omnidirectional image.
  • the viewpoint position that is, the center position of the user's head is assumed to be at the origin O.
  • the depth information of the main image indicates information indicating the distance from the origin O to the position of the subject in each area on the omnidirectional image (texture information), that is, the position in the depth direction of each subject of the omnidirectional image.
  • texture information information indicating the distance from the origin O to the position of the subject in each area on the omnidirectional image.
  • a cylinder H11 and a cube H12 as subjects of the omnidirectional image in the space, and an image obtained by photographing the cylinder H11 and the cube H12 from the direction shown by the arrow V11.
  • the texture information of the main image is assumed. Further, it is assumed that texture information obtained by photographing and depth information obtained for the texture information are encoded as a main image.
  • the texture image PV11 shown at the lower left in the figure is obtained as the texture information of the main image.
  • an image (texture information) when the cylinder H11 and the cube H12 are viewed from the direction of the arrow V12 is a texture image PV12 shown at the lower right in the drawing. That is, when the user looks into the column H11 and the cube H12 from the left side, those subjects should appear as shown in the texture image PV12.
  • a hatched region R11 is a region including subject information that cannot be obtained from the texture image PV11 that is texture information of the main image, and this region is an occlusion region.
  • the region R11 on the texture image PV12 is a region that cannot be hidden behind other objects or the like from the direction of the arrow V11 and does not exist on the texture image PV11.
  • the information of the region R11 that is the occlusion region is not included in the texture image PV11 that is the texture information of the main image and the depth information of the main image.
  • the occlusion area can be displayed in black, or the pixel value of the pixel in the occlusion area can be predicted using pixel information in the vicinity of the occlusion area. Is uncomfortable because the image does not show the actual subject.
  • texture information and depth information images including information on at least the portion of the occlusion area as an occlusion image not only the main image but also the occlusion image is used to correctly display the occlusion area that is missing only in the main image. Will be able to.
  • the texture image PV12 itself is used as the texture information of the occlusion image. Can do.
  • the image information including the texture image PV12 as the texture information and the depth information indicating the distance in the depth direction corresponding to the subject at each position on the texture image PV12 is the occlusion image.
  • the texture information of the occlusion image may be an omnidirectional omnidirectional image with the origin O ′ as the viewpoint position as in the texture image PV12, or an image of only the region R11 that is the occlusion region. It may be. That is, the occlusion image texture information only needs to include at least image information (texture information) of the occlusion area.
  • the origin O ′ that is the viewpoint position of the occlusion image may be the same as the origin O of the omnidirectional coordinate system.
  • the texture information of the main image is an image taken with the origin O as the viewpoint position in the state where the objects OB1 to OB3 are present.
  • the objects OB1 to OB3 are shown as subjects, but a part of the object OB2 and a part of the object OB3 are hidden and cannot be seen. ing.
  • the object OB1 is not shown as a subject, and the entire area of the object OB2 and a partial area of the object OB3 are visible. That is, a part of the object OB3 is hidden by the object OB2 and cannot be seen.
  • Such texture information of the occlusion image 1 includes information on a part of the object OB2, which is not included in the texture information of the main image, as information on the occlusion area.
  • an image obtained by photographing with the origin O as the origin O ′ and without the objects OB1 and OB2 is assumed to be texture information of the occlusion image 2.
  • the objects OB1 and OB2 are not shown as subjects, and the entire area of the object OB3 is visible.
  • Such texture information of the occlusion image 2 includes information on a part of the object OB3 that is not included in the texture information of the main image and the occlusion image 1 as information on the occlusion area.
  • the texture information of the occlusion image 1 and the occlusion image 2 is obtained by photographing the objects OB1 to OB3 from a plurality of different positions such as the origin O and other positions different from the origin O.
  • the image is generated based on the obtained image. That is, texture information of an occlusion image is generated based on a plurality of images having different viewpoint positions.
  • each of the occlusion images having the origin O ′ at a plurality of positions different from the origin O of the main image in the omnidirectional coordinate system exists.
  • the plurality of occlusion images include, for example, information on a region that is not visible as a subject in the main image.
  • occlusion images there may be a plurality of occlusion images having the origin O ′ at the position of the origin O of the main image, and these occlusion images may include information on areas that are occlusion areas in the main image.
  • some occlusion images include information on regions that are occlusion regions in other occlusion images.
  • Use case U1 When there is only an occlusion image whose origin O 'is the position of the origin O of the main image Use Case U2 When there are a plurality of occlusion images having a position other than the origin O of the main image as the origin O ′, and the origins O ′ of the respective occlusion images are different from each other Use case U3 When there is an occlusion image with the origin O 'position of the main image at the origin O' and an occlusion image with an origin O 'at a position other than the origin O, and there are multiple occlusion images only at the position of the origin O Case U4 There are an occlusion image with the origin O's position as the origin O 'in the main image and an occlusion image with a position other than the origin O as the origin O'. If there is an occlusion image
  • use case U3 is a use case in which use case U1 and use case U2 are combined.
  • the example shown in FIG. 3 can be considered.
  • the x-axis, y-axis, and z-axis indicate omnidirectional coordinate system axes.
  • a main image exists at the origin O of the omnidirectional coordinate system.
  • a circle “ ⁇ ” in FIG. 3 indicates that there is one occlusion image having the position of the circle as the viewpoint position (origin O ′), and a double circle “ ⁇ ” indicates the double circle. This indicates that there are two occlusion images having the origin O ′ as the position of the circle.
  • one occlusion image exists at each of a plurality of positions different from the origin O, and this example is a use case U2.
  • this example is a use case U2.
  • the occlusion image 1 is image information including information on a region that is an occlusion region in the main image.
  • the occlusion image 2 is image information that is an occlusion area in the main image and includes information on an area that is also an occlusion area in the occlusion image 1.
  • the main image is composed of texture information and depth information of the main image
  • the occlusion image 1 and the occlusion image 2 are composed of texture information and depth information of the occlusion images.
  • a file for obtaining a main image having such an occlusion image 1 and an occlusion image 2, that is, an MPD file including metadata of the main image is as shown in FIG.
  • FIG. 4 shows an example in the use case U1.
  • information relating to the texture information (texture information) of the main image is described in the portion indicated by the arrow Q11, and the portion indicated by the arrow Q12 is the portion of the main image.
  • Information about depth information (depth information) is described.
  • the part indicated by each of the arrows Q11 to Q16 is one AdaptationSet.
  • vt1 is described as the representation id of the texture information of the main image.
  • vot1 is described as the id of the texture information representation of the occlusion image 1 in the portion indicated by the arrow Q13
  • vot2 is described as the id of the representation of the texture information of the occlusion image 2 in the portion indicated by the arrow Q15.
  • schemeIdUri is set to “urn: mpeg: dash: depth: 2015” in the AdaptationSet of the depth information of the main image, the occlusion image 1 and the occlusion image 2.
  • schemeIdUri it is possible to specify that the portion indicated by the arrow Q12, the portion indicated by the arrow Q14, and the portion indicated by the arrow Q16 are descriptions relating to the depth information.
  • the representation of the depth information uses associationId to describe the texture information id corresponding to the depth information, so that it is possible to specify which texture information the depth information corresponds to. ing.
  • associationId “ vt1 ”” is described in the portion indicated by the arrow Q12, and the relationship between the texture information of the main image indicated by the arrow Q11 and the depth information of the main image indicated by the arrow Q12 ( Related).
  • associationId “ vot1 ”
  • the schemeIdUri part in the “EssentialProperty” is ““ urn: mpeg: dash: occlusion: 2015 ”. It is possible to discriminate it.
  • schemeIdUri is set to “urn: mpeg: dash: occlusion: 2015” in the AdaptationSet of the texture information of each of the occlusion image 1 and the occlusion image 2.
  • schemeIdUri it is possible to specify that the portion indicated by the arrow Q13 and the portion indicated by the arrow Q15 are descriptions relating to the texture information of the occlusion image.
  • the MPEG-DASH client device can be implemented as follows. That is, the following processes TR1 to TR3 can be executed.
  • Processing TR1 Processing TR2 that acquires all the main image, the occlusion image 1, and the occlusion image 2 and reproduces the omnidirectional image Process TR3 that acquires only the texture information and depth information of the main image and reproduces the spherical image Only the texture information of the main image is acquired and the omnidirectional image is played back.
  • the processing TR2 or the processing One of TR3 is selected.
  • the client device first measures the transmission band and selects the texture information of the main image as information acquired from the server.
  • the client device selects the information for acquiring the depth information of the main image.
  • the client device acquires only the texture information of the main image when the transmission band is not sufficient.
  • the client device selects the texture information and depth information of the main image as the information to be acquired, there is a transmission band sufficient to acquire the occlusion image 1 and the occlusion image 2 based on the measurement result of the transmission band. It is determined whether or not.
  • the client apparatus When it is determined that there is a sufficient transmission band, the client apparatus obtains the texture information and the depth information of each image of the main image, the occlusion image 1 and the occlusion image 2 as information to obtain from the server. select.
  • the client device selects texture information and depth information of the main image as information to be acquired from the server.
  • the client device acquires the selected information from the server and reproduces the spherical image. As a result, any of the processing TR1 to processing TR3 described above is performed.
  • the transmission band it may be possible to transmit either the occlusion image 1 or the occlusion image 2 in addition to the main image.
  • occlusion images out of a plurality of occlusion images contain information on the occlusion area necessary for displaying the omnidirectional image
  • only the occlusion image containing the necessary occlusion area information is included. Can be used.
  • the occlusion image 2 since the occlusion image 2 includes information on an occlusion area that is not included in the occlusion image 1, the occlusion image 1 is more useful for the occlusion image 1 and the occlusion image 2. It is high.
  • the occlusion image 1 here is the occlusion image 1 described with reference to FIG. 2, and the occlusion image 2 is the occlusion image 2 described with reference to FIG.
  • the occlusion image 1 includes information on the occlusion area of the subject (object OB2) closer to the front side (the origin O side) than in the case of the occlusion image 2. Therefore, it can be said that it is effective to use the occlusion image 1 before the occlusion image 2 when reproducing the omnidirectional image. In other words, of the two occlusion images, it can be said that the occlusion image 1 is a more appropriate occlusion image than the occlusion image 2 is acquired (utilized).
  • the client device it is difficult to select (specify) which occlusion image of the occlusion image 1 and the occlusion image 2 is more appropriate, that is, a higher priority image. This is because at present, the client device cannot obtain information for selecting an appropriate occlusion image.
  • the client apparatus cannot obtain an appropriate occlusion image when the transmission band is not sufficient.
  • an appropriate part of the occlusion images can be selected and acquired from a plurality of occlusion images, thereby making it possible to use the transmission band more efficiently.
  • the occlusion coordinate information indicating the viewpoint position of the occlusion image in the omnidirectional coordinate system, that is, the position of the origin O ′, and the depth level of the occlusion image are displayed. Depth level information shown is used.
  • the depth level information (hereinafter also referred to as “depth level”) is information based on the distance (depth) from the origin O ′ indicated by the depth information of the occlusion image to the subject on the occlusion image. That is, the depth level information is information related to the distance (depth) in the depth direction of the subject of the occlusion image.
  • occlusion coordinate information and the depth level information in this way, even if there are occlusion images at a plurality of positions in the omnidirectional coordinate system with respect to the main image, it should be acquired from the server according to the viewpoint position of the user. An appropriate occlusion image can be selected.
  • the user's viewpoint position is in the positive direction on the x-axis of the omnidirectional coordinate system. It is assumed that the omnidirectional image is displayed at the position and viewed from the viewpoint position of the user.
  • the information of the occlusion area necessary for generating the omnidirectional image for display is included in the occlusion image at the position in the positive direction on the x-axis of the omnidirectional coordinate system.
  • the occlusion image at the position in the negative direction on the x-axis of the omnidirectional coordinate system does not include information on the occlusion area necessary for displaying the omnidirectional image according to the viewpoint position of the user. .
  • the occlusion image at the position on the y-axis or the z-axis of the omnidirectional coordinate system may include information on an occlusion area necessary for displaying the omnidirectional image.
  • the amount should be small compared to an occlusion image at a positive position on the x-axis.
  • the occlusion image to be selected from the plurality of occlusion images differs depending on the viewpoint position of the user.
  • the above-described occlusion coordinate information may be used.
  • the occlusion coordinate information is information regarding the viewpoint position of the occlusion image.
  • the occlusion coordinate information is the coordinates of the position of the origin O ′ of each occlusion image when the coordinate of the position of the origin O of the main image in the omnidirectional coordinate system is (0, 0, 0), and the direction of each axis
  • the unit of the coordinate is set to meters or the like.
  • the distance is X meters from the origin O in the positive direction of the x axis
  • the distance is Y meters from the origin O in the positive direction of the y axis
  • the positive coordinate of the z axis is from the origin O.
  • the coordinates of the position at a distance of Z meters in the direction of (X, Y, Z) are (X, Y, Z).
  • an appropriate occlusion image can be selected from the viewpoint position of the user and the occlusion coordinate information.
  • the viewpoint position of the occlusion image indicated by the occlusion coordinate information should be selected as the occlusion image to be acquired in order from the one closest to the user's viewpoint position. That's fine.
  • the position of the occlusion area included in the occlusion image in the omnidirectional coordinate system is selected (utilized) in order from the closest to the subject position of the main image. That's fine. This is because the use value is higher as the position of the occlusion area is closer to the position of the subject in the main image as described above.
  • Depth level information may be used in order to select an occlusion image in which the position of the occlusion area is closer to the position of the subject of the main image from among a plurality of occlusion images having the same position as the origin O ′.
  • the depth level information is information related to the depth (depth) of the occlusion area in the occlusion image, which is generated based on the depth information of the occlusion image.
  • the depth (depth) of the occlusion area is deeper as the occlusion area in the occlusion image is farther from the origin O ′.
  • the depth level information of the occlusion image is, for example, information indicating the depth order of the depth of the occlusion area of the occlusion image among a plurality of occlusion images at the same position. .
  • the depth level of the occlusion image having the shallowest (not deep) occlusion region is set to 1, and the depth level is set in order of decreasing depth of the occlusion region. Will be 2, 3, and so on.
  • the depth order indicated by the depth level information (depth level)
  • the total distance to a subject is determined.
  • the occlusion image having a smaller total depth value is made to have a smaller depth level. That is, for example, the depth level information (depth level) of the occlusion image having the smallest total depth value is set to 1.
  • the depth ⁇ ⁇ ⁇ ⁇ ⁇ level value becomes smaller as the average value of the occlusion image becomes smaller, that is, the depth order becomes smaller. You can do it.
  • information indicating the average value of the depth values at each position of the occlusion image is also referred to as depth average value information.
  • an appropriate occlusion image can be selected on the client device side. That is, when there are a plurality of occlusion images at the same position, the occlusion images may be selected in order from the smallest depth level information value.
  • an appropriate occlusion image can be selected in each use case U1 to use case U4.
  • a new EssentialProperty that allows setting of occlusion coordinate information and depth level information for an occlusion image in an MPD file is defined.
  • the schemeIdUri portion is ““ urn: mpeg: dash: occlusion: 2015 ”” in the EssentialProperty for the texture information of the occlusion image.
  • the schemeIdUri part is “urn: mpeg: dash: occlusion: 2017”, and the value of the occlusion coordinate information (x, y, z) and the depth level information depth are included in the value of the schemeIdUri.
  • the level value is described. Specifically, the value values are separated by commas to “x, y, z, depth level”.
  • the MPD file includes the occlusion coordinate information and depth level information of each occlusion image
  • the MPD file to which the present technology is applied corresponding to the MPD file shown in FIG. 4 is shown in FIG. become.
  • FIG. 5 the description of the portion corresponding to the case in FIG. 4 is repeated, and will be omitted as appropriate.
  • the MPD file shown in FIG. 5 is different from the MPD file shown in FIG. 4 only in the portions indicated by arrows Q21 and Q22.
  • the schemeIdUri is ““ urn: mpeg: dash: occlusion: 2017 ”” as indicated by the arrow Q21, and the value value is “0, 0,0,1 "”.
  • the occlusion coordinate information of the occlusion image 1 is (0,0,0) and the value of the depth level information depth level is 1.
  • the schemeIdUri is ““ urn: mpeg: dash: occlusion: 2017 ”” as indicated by an arrow Q22, and the value of the value is “0,0,0 , 2 ””.
  • the occlusion coordinate information of the occlusion image 2 is (0,0,0) and the value of the depth level information depth level is 2.
  • the positions of these occlusion images are the same, so that the depth level is higher.
  • the occlusion image 1 having a small information value may be selected.
  • an appropriate occlusion image can be selected by signaling the occlusion coordinate information and the depth level information of each occlusion image in the MPD file.
  • the transmission band can be used more efficiently.
  • FIG. 6 is a diagram illustrating a configuration example of an embodiment of a file generation device to which the present technology is applied.
  • the file generation device 11 illustrated in FIG. This file generation device 11 generates segment files and MPD files of moving images of content distributed by MPEG-DASH or the like and uploads them to the server.
  • the moving image of the content here is a omnidirectional image for display generated from the above-described main image and an occlusion image related to the main image.
  • the control unit 21 controls the overall operation of the file generation device 11. For example, the control unit 21 controls the file generation unit 22 to generate a segment file in which an omnidirectional image that is a moving image of the content is stored, an MPD file that includes the metadata of the content, Upload segment files and MPD files.
  • the file generation unit 22 generates segment files and MPD files according to the control of the control unit 21, and uploads (sends) those segment files and MPD files to the server via the network.
  • the file generation unit 22 includes a data input unit 31, a data encoding / generation unit 32, an MPD file generation unit 33, a recording unit 34, and an upload unit 35.
  • the data input unit 31 obtains a main image, image data necessary for generating an occlusion image related to the main image, and metadata necessary for generating an MPD file such as occlusion coordinate information and depth level information, and encodes the data.
  • the data is supplied to the generation unit 32 and the MPD file generation unit 33.
  • the data encoding / generation unit 32 generates a segment file in which the main image and the occlusion image are stored based on the image data supplied from the data input unit 31 and supplies the segment file to the recording unit 34.
  • the data encoding / generating unit 32 includes a preprocessing unit 41, an encoding unit 42, and a segment file generating unit 43.
  • the pre-processing unit 41 generates a main image and an occlusion image by performing stitch processing for joining the images based on the image data supplied from the data input unit 31 and supplies the main image and the occlusion image to the encoding unit 42.
  • the encoding unit 42 encodes the main image and the occlusion image supplied from the preprocessing unit 41 and supplies the obtained encoded data to the segment file generation unit 43.
  • the segment file generation unit 43 converts the encoded data supplied from the encoding unit 42 into a file in units of segments based on the metadata supplied from the data input unit 31, and the resulting segment file is recorded in the recording unit. 34. As a result, a segment file storing encoded data of the texture information of the main image, a segment file storing encoded data of the depth information of the main image, and a segment file storing encoded data of the occlusion image are obtained. It is done.
  • the MPD file generation unit 33 generates an MPD file including information on the main image and the occlusion image based on the metadata supplied from the data input unit 31 and supplies the MPD file to the recording unit 34. Note that the MPD file generation unit 33 may acquire metadata necessary for generating the MPD file from the segment file generation unit 43.
  • the recording unit 34 records the MPD file supplied from the MPD file generation unit 33 and the segment file supplied from the segment file generation unit 43.
  • the upload unit 35 reads the content MPD file and segment file from the recording unit 34 and uploads them to the server. That is, the upload unit 35 functions as a communication unit that transmits the MPD file and the segment file to the server.
  • the file generation apparatus 11 demonstrates the example which functions as an apparatus which uploads a MPD file and a segment file to a server here, the file generation apparatus 11 may function as a server. In such a case, the upload unit 35 of the file generation device 11 transmits the MPD file and the segment file to the client device via the network.
  • step S11 the data input unit 31 acquires image data necessary for generating the main image and the occlusion image, and metadata such as occlusion coordinate information and depth level information, and the preprocessing unit 41 and the segment file generation unit 43. , And the MPD file generator 33.
  • step S12 the data encoding / generating unit 32 generates a segment file.
  • the preprocessing unit 41 generates a main image and an occlusion image by performing stitch processing based on the image data supplied from the data input unit 31 and supplies the main image and the occlusion image to the encoding unit 42.
  • the encoding unit 42 encodes the main image and the occlusion image supplied from the preprocessing unit 41 and supplies the obtained encoded data to the segment file generation unit 43.
  • the segment file generation unit 43 converts the encoded data supplied from the encoding unit 42 into a file based on the metadata supplied from the data input unit 31 and supplies the segment file obtained as a result to the recording unit 34. To do.
  • step S 13 the MPD file generation unit 33 generates an MPD file based on the metadata supplied from the data input unit 31 and supplies the MPD file to the recording unit 34.
  • the MPD file includes occlusion coordinate information and depth level information for each occlusion image. Specifically, for example, the MPD file shown in FIG. 5 is generated.
  • step S14 the recording unit 34 records the MPD file supplied from the MPD file generation unit 33 and the segment file supplied from the segment file generation unit 43.
  • step S15 the upload unit 35 reads the MPD file and the segment file from the recording unit 34 at an arbitrary timing and uploads them to the server, and the upload process ends.
  • the timing of uploading the MPD file and segment file may be any timing as long as the MPD file and segment file are recorded in the recording unit 34.
  • the file generation device 11 generates and uploads the MPD file and the segment file.
  • the file generation device 11 generates an MPD file including occlusion coordinate information and depth level information for each occlusion image.
  • the client device can select and acquire an appropriate occlusion image using the occlusion coordinate information and the depth level information included in the MPD file.
  • a client device that acquires an MPD file or a segment file uploaded by the file generation device 11 from a server and reproduces content.
  • a client device to which the present technology is applied is configured, for example, as shown in FIG.
  • the control unit 81 controls the overall operation of the client device 71.
  • the control unit 81 controls the reproduction processing unit 82 to acquire an MPD file and a segment file from the server, and to reproduce an omnidirectional image that is a moving image of content based on the segment file.
  • the reproduction processing unit 82 reproduces the omnidirectional image according to the control of the control unit 81.
  • the reproduction processing unit 82 includes a measurement unit 91, an MPD file acquisition unit 92, an MPD file processing unit 93, a segment file acquisition unit 94, a display control unit 95, a data analysis / decoding unit 96, and a display unit 97.
  • the measurement unit 91 measures the transmission band of the network between the client device 71 and the server, and supplies the measurement result to the MPD file processing unit 93.
  • the MPD file acquisition unit 92 acquires an MPD file from the server and supplies it to the MPD file processing unit 93.
  • the MPD file processing unit 93 Texture information, main image depth information, and information to be acquired from one or a plurality of occlusion images are selected, and the selection result is supplied to the segment file acquisition unit 94.
  • the MPD file processing unit 93 determines the number of occlusion images corresponding to the transmission band based on the selection order list obtained from the MPD file and the viewpoint position of the user and the measurement result of the transmission band. Select an occlusion image to obtain an occlusion image.
  • the selection order list will be described later.
  • the segment file acquisition unit 94 acquires a segment file storing information such as a main image and an occlusion image necessary for content reproduction from the server, and performs data analysis / It supplies to the decoding part 96.
  • the display control unit 95 controls the reproduction (display) of the omnidirectional image that is the moving image of the content. For example, the display control unit 95 acquires the detection result of the viewpoint position and line-of-sight direction of the user who views the omnidirectional image, and supplies the detection result to the MPD file processing unit 93 and the data analysis / decoding unit 96.
  • the data analysis / decoding unit 96 Based on the segment file supplied from the segment file acquisition unit 94, the data analysis / decoding unit 96 generates a moving image of the content, that is, an omnidirectional image for reproduction (for display), and supplies it to the display unit 97. .
  • the data analysis / decoding unit 96 includes a segment file processing unit 111, a decoding unit 112, and a display information generation unit 113.
  • the segment file processing unit 111 extracts encoded data of the main image and the occlusion image from the segment file supplied from the segment file acquisition unit 94 and supplies the extracted data to the decoding unit 112.
  • the decoding unit 112 decodes the encoded data supplied from the segment file processing unit 111 and supplies the main image and the occlusion image obtained as a result to the display information generation unit 113.
  • the display information generation unit 113 determines the user's viewpoint position and line of sight based on the detection result of the user's viewpoint position and line-of-sight direction supplied from the display control unit 95 and the main image and the occlusion image supplied from the decoding unit 112.
  • An omnidirectional image for display corresponding to the direction, more specifically, image data of the omnidirectional image is generated and supplied to the display unit 97.
  • the display unit 97 includes, for example, a liquid crystal display panel, and displays (reproduces) the omnidirectional image supplied from the display information generation unit 113.
  • step S41 the MPD file acquisition unit 92 acquires the MPD file from the server and supplies it to the MPD file processing unit 93.
  • the MPD file transmitted by the server is received by the MPD file acquisition unit 92.
  • step S42 the MPD file processing unit 93 initializes the selection order list.
  • a selection order list indicating the priority order of each occlusion image, that is, the order of selection as what should be acquired (hereinafter also referred to as selection order) is generated.
  • An occlusion image to be acquired is selected according to the selection order list.
  • the selection order list information indicating each occlusion image is arranged from top to bottom in descending order of priority. Therefore, for example, the first occlusion image in the selection order list, that is, the top occlusion image has the highest priority, and is the first occlusion image to be selected as the one to be acquired.
  • step S42 the selection order list is initialized by deleting the information indicating the occlusion images included in the selection order list.
  • step S43 the MPD file processing unit 93 acquires the viewpoint position of the user from the display control unit 95.
  • the display control unit 95 acquires a detection result of the user's viewpoint position and line-of-sight direction from a sensor (not shown) and supplies the detection result to the MPD file processing unit 93 and the display information generation unit 113.
  • the MPD file processing unit 93 obtains the viewpoint position of the user by acquiring the information output from the display control unit 95 in this way.
  • the user's viewpoint position is coordinate information of the user's viewpoint position in the omnidirectional coordinate system.
  • step S44 the MPD file processing unit 93 determines whether there is an occlusion image that has not yet been processed based on the MPD file supplied from the MPD file acquisition unit 92.
  • the SchemeIdUri of the EssentialProperty in the AdaptationSet has “urn: mpeg: dash: occlusion: 2017”, it can be specified that the AdaptationSet relates to the texture information of the occlusion image.
  • the MPD file processing unit 93 determines that there is an occlusion image that has not been processed in step S44 when there is an Adaptation Set of texture information of an occlusion image that has not yet been processed in the MPD file.
  • step S44 If it is determined in step S44 that there is an unprocessed occlusion image, the MPD file processing unit 93 sets the unprocessed occlusion image as a new processing target occlusion image, and the process proceeds to step S45.
  • step S45 the MPD file processing unit 93 calculates the distance between the position of the occlusion image to be processed (origin O ′) and the viewpoint position of the user acquired in step S43.
  • the position of the occlusion image that is, the occlusion coordinate information can be obtained from the value of the schemeIdUri value of the EssentialProperty in the AdaptationSet of the texture information of the occlusion image in the MPD file.
  • the MPD file processing unit 93 calculates the distance from the user's viewpoint position to the position of the occlusion image on the omnidirectional coordinate system based on the occlusion coordinate information thus obtained and the user's viewpoint position. .
  • step S46 the MPD file processing unit 93 updates the selection order list based on the distance obtained in step S45 and the depth level information of the occlusion image.
  • the MPD file processing unit 93 selects information indicating the occlusion image to be newly processed in the selection order list so that the information indicating each occlusion image is arranged in order from the smallest (shortest) distance calculated in step S45. Add to order list. As a result, the occlusion image with a smaller distance calculated in step S45 has a lower selection order (higher priority).
  • the selection order list is arranged so that these occlusion images are arranged in the order of decreasing depth level information depth level in the selection order list. Updated. That is, the occlusion image with the smaller depth level information depth level is set to have a smaller selection order (higher priority).
  • the depth level information of the occlusion image can be obtained from the value of the value of the schemeIdUri of the EssentialProperty in the AdaptationSet of the texture information of the occlusion image, similarly to the occlusion coordinate information.
  • the selection order list is generated based on the occlusion coordinate information that is information on the viewpoint position of the occlusion image and the depth level information that is information on the depth of the occlusion image. In other words, an occlusion image to be acquired is selected.
  • step S44 If it is determined in step S44 that there is no unprocessed occlusion image, that is, all the occlusion images have been processed, a selection order list including information on all the occlusion images indicated by the MPD file is obtained ( Therefore, the selection order list generation process ends.
  • the client device 71 generates a selection order list for sequentially selecting higher-priority, that is, more appropriate occlusion images from the MPD file and the user's viewpoint position. By generating the selection order list in this way, the client device 71 can select and acquire an appropriate occlusion image even when the transmission band is not sufficient.
  • the client device 71 selects an occlusion image based on the obtained selection order list, and performs a file acquisition process for acquiring the selected occlusion image and main image.
  • the file acquisition process by the client device 71 will be described with reference to the flowchart of FIG.
  • step S71 the measurement unit 91 measures the transmission band between the client device 71 and the server, and supplies the measurement result to the MPD file processing unit 93.
  • step S72 the MPD file processing unit 93 selects the texture information of the main image indicated by the MPD file acquired in the process of step S41 in FIG. 9 as information to be acquired.
  • step S73 the MPD file processing unit 93 determines whether or not there is a band for acquiring the depth information of the main image based on the transmission band measurement result obtained in step S71 and supplied from the measurement unit 91.
  • step S73 If it is determined in step S73 that there is no band for acquiring the depth information of the main image, that is, the transmission band is not sufficient, the process proceeds to step S74.
  • the MPD file processing unit 93 supplies a selection result indicating only the texture information of the main image to the segment file acquisition unit 94 as the selection result of the information to be acquired, and instructs acquisition of the segment file.
  • step S74 the segment file acquisition unit 94 acquires only the texture information of the main image from the server based on the selection result supplied from the MPD file processing unit 93.
  • the segment file acquisition unit 94 requests the server to transmit the segment file storing the texture information of the main image according to the selection result supplied from the MPD file processing unit 93. Then, the segment file acquisition unit 94 receives the segment file transmitted from the server in response to the request and supplies it to the segment file processing unit 111, and the file acquisition process ends.
  • step S73 when it is determined in step S73 that there is a band for acquiring the depth information of the main image, the process proceeds to step S75.
  • step S75 the MPD file processing unit 93 selects the depth information of the main image indicated by the MPD file acquired in the process of step S41 in FIG. 9 as information to be acquired.
  • the occlusion image indicated by the counter i is the i-th occlusion image in the selection order list described with reference to FIG. 9, that is, the i-th occlusion image from the top.
  • the occlusion image indicated by the counter i is an occlusion image whose selection order (priority order) is i-th in the selection order list.
  • step S77 the MPD file processing unit 93 determines whether or not the i-th occlusion image is acquired based on the transmission band measurement result obtained in step S71.
  • the i-th occlusion image is acquired.
  • the i-th occlusion image is not in the selection order list, that is, if all the occlusion images already included in the selection order list have been processed, it is determined that the i-th occlusion image is not acquired.
  • step S78 the MPD file processing unit 93 selects information for acquiring the i-th occlusion image.
  • step S79 the MPD file processing unit 93 increments the value of the counter i by 1.
  • step S79 When the process of step S79 is performed, the process then returns to step S77, and the above-described process is repeated.
  • the number of occlusion images corresponding to the transmission band is selected as the occlusion images to be acquired. That is, the occlusion images are selected in order from the highest priority, as many as the number that can be acquired determined by the transmission band.
  • step S77 If it is determined in step S77 that the i-th occlusion image is not acquired, all the occlusion images have been selected or there is no room for acquiring the occlusion image in the transmission band. Proceed to step S80.
  • the MPD file processing unit 93 supplies the segment file acquisition unit 94 with a selection result indicating the texture information and depth information of the main image and the occlusion image selected in step S78 as a selection result of the information to be acquired. Instruct acquisition of segment file. If it is determined in step S77 that the first occlusion image is not acquired, that is, no occlusion image is acquired, a selection result indicating the texture information and depth information of the main image is supplied to the segment file acquisition unit 94.
  • step S80 the segment file acquisition unit 94 acquires the main image and the selected occlusion image from the server based on the selection result supplied from the MPD file processing unit 93.
  • the segment file acquisition unit 94 transmits to the server the segment file storing the texture information of the main image and the segment file storing the depth information of the main image according to the selection result supplied from the MPD file processing unit 93. Request.
  • the segment file acquisition unit 94 also requests the server to transmit a segment file in which the selected occlusion image is stored.
  • the segment file acquisition unit 94 receives the segment file transmitted from the server in response to the request and supplies it to the segment file processing unit 111, and the file acquisition process ends.
  • the client device 71 selects an appropriate occlusion image based on the measurement result of the transmission band and the selection order list, and acquires the selected occlusion image from the server.
  • the client device 71 selects an appropriate occlusion image based on the measurement result of the transmission band and the selection order list, and acquires the selected occlusion image from the server.
  • the MPD file processing unit 93 selects, in order, the number of occlusion images to be acquired according to the transmission band, based on the measurement result of the transmission band, the user viewpoint position, the occlusion coordinate information, and the depth level information. Do it.
  • the viewpoint position (origin O ′) may be selected in order from the occlusion image close to the user's viewpoint position.
  • the occlusion images may be selected in ascending order of depth level information.
  • the method for generating the selection order list described above is particularly useful for determining the selection order of occlusion images when the user has moved a small viewpoint position, that is, when viewing is performed.
  • this method is a pre-reading method for acquiring an occlusion image in the vicinity of the origin O when there is a margin in the transmission band when the peeping display is not performed, that is, when the viewpoint position of the user is at the origin O. Is also useful.
  • the selection order list generation process described with reference to FIG. 9 is performed, but (0, 0, 0) is acquired as the user's viewpoint position in step S43.
  • By performing such prefetching it is possible to immediately display the peep using the acquired occlusion image when the peep by the user, that is, the movement of the viewpoint position occurs.
  • the client device 71 When the segment file is acquired from the server as described above, the client device 71 performs a reproduction process for reproducing the omnidirectional image based on the acquired segment file.
  • the reproduction process performed by the client device 71 will be described with reference to the flowchart of FIG.
  • step S111 the segment file processing unit 111 extracts encoded data of the main image and the occlusion image from the segment file supplied from the segment file acquisition unit 94, and supplies the extracted data to the decoding unit 112.
  • step S112 the decoding unit 112 decodes the encoded data supplied from the segment file processing unit 111, and supplies the main image and the occlusion image obtained as a result to the display information generation unit 113.
  • step S ⁇ b> 113 the display information generation unit 113 determines the user viewpoint based on the detection result of the user viewpoint position and line-of-sight direction supplied from the display control unit 95 and the main image and the occlusion image supplied from the decoding unit 112. A omnidirectional image for display corresponding to the position and line-of-sight direction is generated and supplied to the display unit 97.
  • step S74 when the process of step S74 is performed in the file acquisition process shown in FIG. 10, only the texture information of the main image is obtained in step S111. Therefore, in step S113, only the texture information of the main image is used for display. A global celestial sphere image is generated.
  • step S80 of the file acquisition process shown in FIG. 10 when only the segment file of the texture information and depth information of the main image is acquired in step S80 of the file acquisition process shown in FIG. 10, only the texture information and depth information of the main image are obtained in step S111. For this reason, in step S113, only the texture information and depth information of the main image are used to generate a omnidirectional image for display.
  • step S113 the main image and the occlusion image are used to generate a spherical image for display.
  • step S114 the display unit 97 displays (reproduces) the omnidirectional image for display supplied from the display information generating unit 113, and the reproduction process ends.
  • the client device 71 generates and reproduces a spherical image for display based on the acquired segment file. As a result, when an occlusion image is obtained, a high-quality omnidirectional image in which an area that is occluded with respect to the main image is displayed even if the viewpoint position of the user moves can be displayed.
  • the present technology is useful for selectively acquiring some appropriate occlusion images when there are a plurality of occlusion images and the transmission band is limited.
  • the occlusion coordinate information and the depth are transmitted from the server to the client device 71 so that an appropriate occlusion image can be selected in all the use cases U1 to U4.
  • Level information is signaled.
  • the display can immediately follow the movement of the user's viewpoint position.
  • the occlusion includes a lot of occlusion area information necessary for display using the occlusion coordinate information and the depth level information. An image can be selected.
  • an appropriate occlusion image cannot be selected because there are occlusion images at the position of the origin O and positions other than the origin O, and a plurality of occlusion images are present at the same position. Only when there is an occlusion image. That is, this is only the use case U4 shown in FIG.
  • the client device 71 needs to obtain the distance from the user's viewpoint position to the occlusion image position when selecting the occlusion image.
  • the information to be signaled is switched by the selection information flag, which is flag information, and only the information necessary for selecting the occlusion image is transmitted in the MPD file. Also good.
  • the occlusion direction information or the occlusion direction information and the occlusion distance information are used. Also good.
  • the occlusion direction information is an index that indicates the direction in which the position of the origin O ′ of the occlusion image is based on the origin O in the omnidirectional coordinate system.
  • the occlusion direction information is, for example, as shown in FIG. 12, out of a total of six directions of x direction, y direction, z direction, -x direction, -y direction, and -z direction in the omnidirectional coordinate system. Information indicating any of the above. Note that the coordinate system based on the origin O shown in FIG. 12 is the same omnidirectional coordinate system as the coordinate system shown in FIG.
  • the x direction indicates the positive direction of the x axis of the omnidirectional coordinate system.
  • the ⁇ x direction indicates the negative direction of the x axis of the omnidirectional coordinate system.
  • the occlusion direction information of each occlusion image is any one of the six directions. Therefore, when the occlusion image is not located on the axis of the omnidirectional coordinate system, the occlusion direction information is information indicating a rough direction in which the occlusion image viewed from the origin O is present.
  • the occlusion direction information cannot specify a certain accurate direction of the occlusion image, but the occlusion image can be selected more easily by limiting the directions indicated by the occlusion direction information to six directions. .
  • the occlusion distance information is information indicating the distance from the origin O which is the position of the main image in the omnidirectional coordinate system to the position of the origin O ′ of the occlusion image.
  • the client device 71 obtains the distance from the user's viewpoint position to the origin O ′ of the occlusion image.
  • the viewpoint position direction the direction of the user's viewpoint position viewed from the origin O in the client device 71 (hereinafter also referred to as the viewpoint position direction).
  • the distance from the origin O to the user's viewpoint position (hereinafter also referred to as viewpoint position distance) may be obtained.
  • viewpoint position direction may be any one of the above-described six directions.
  • an occlusion image in which the direction indicated by the occlusion direction information matches the viewpoint position direction, more specifically in the direction close to the viewpoint position direction may be selected from the plurality of occlusion images.
  • the selection information flag, the occlusion direction information, and the occlusion distance information as described above are used.
  • the occlusion image is arranged in use case U1, use case U2, or use case U3.
  • mapping between depth level information (depth level), depth average value information (depth average value), occlusion direction information, and occlusion direction information and occlusion distance information is performed by selection information flag.
  • the selection information flag is information indicating which of depth level information, depth average value information, occlusion direction information, and information of occlusion direction information and occlusion distance information is included.
  • the selection information flag when the value of the selection information flag is “00”, the information selected by the selection information flag (hereinafter also referred to as a selection information value) to be signaled is depth level information (depth level). That is, when the value of the selection information flag is “00”, only the depth level information is transmitted to the client device 71.
  • the selection information value is information for selecting an occlusion image.
  • the selection information value is depth average value information (depth average value).
  • the depth average value information is information indicating the depth of the occlusion image corresponding to the depth level information, and is information indicating the average value of the depth value at each position of the occlusion image.
  • the selection information value is the occlusion direction information.
  • the selection information value is the occlusion direction information and the occlusion distance information.
  • the schemeIdUri is ““ urn: mpeg: dash: occlusion: 2017 ””, and the value of the selection information flag and A selection information value is described.
  • the value value is separated by a comma and becomes ““ selection information flag, selection information value ””.
  • the values of the occlusion direction information and the occlusion distance information are described by separating them with a blank.
  • this AdaptationSet includes occlusion direction information and occlusion distance information as selection information values. It can also be seen that the direction indicated by the occlusion direction information is the x direction, and the distance indicated by the occlusion distance information is 0.5 m.
  • an MPD file to which the present technology is applied corresponding to the MPD file shown in FIG. 4 is as shown in FIG.
  • FIG. 14 the description of the portion corresponding to the case in FIG. 4 is repeated, and will be omitted as appropriate.
  • the MPD file shown in FIG. 14 is different from the MPD file shown in FIG. 4 only in the portions indicated by arrows Q31 and Q32.
  • the schemeIdUri is ““ urn: mpeg: dash: occlusion: 2017 ”” as indicated by an arrow Q31, and the value value thereof is “00, 1 ””.
  • the value of the selection information flag is “00”
  • the depth level information is included as the selection information value
  • the value of the depth level information, that is, depth level is “1”. It turns out that it is.
  • the schemeIdUri is ““ urn: mpeg: dash: occlusion: 2017 ”” as indicated by an arrow Q32, and the value value is “00,2”.
  • the value of the selection information flag is “00”
  • the depth level information is included as the selection information value
  • the value of the depth level information is “2”. I understand.
  • the client device 71 may select the occlusion image 1 before the occlusion image 2.
  • the MPD file generation unit 33 includes an MPD in which the occlusion image selection information flag and the selection information value are included in the adaptation set of the texture information of each occlusion image. Generate a file.
  • a selection order list generation process shown in FIG. 15 is performed to generate a selection order list.
  • the selection order list generation processing by the client device 71 will be described with reference to the flowchart of FIG.
  • or step S143 is the same as the process of step S41 thru
  • step S144 the MPD file processing unit 93 obtains the user's viewpoint position direction and viewpoint position distance based on the user's viewpoint position acquired in step S143.
  • step S145 the MPD file processing unit 93 determines whether there is an occlusion image that has not yet been processed based on the MPD file supplied from the MPD file acquisition unit 92. In step S145, processing similar to that in step S44 of FIG. 9 is performed.
  • step S145 If it is determined in step S145 that there is an unprocessed occlusion image, the MPD file processing unit 93 sets the unprocessed occlusion image as a new processing target occlusion image, and the process proceeds to step S146.
  • step S146 the MPD file processing unit 93 determines whether the value of the selection information flag of the occlusion image to be processed in the MPD file is “00” or “01”.
  • step S146 When it is determined in step S146 that the value of the selection information flag is “00” or “01”, that is, the selection level includes depth level information (depth level) or depth average value information (depth average value). If yes, the process proceeds to step S147.
  • step S147 the MPD file processing unit 93 sets the selection order list so that the occlusion images are arranged in ascending order of the selection information value based on the depth level information or the depth average value information included as the selection information value in the MPD file. Update.
  • the MPD file processing unit 93 newly sets the occlusion image to be processed so that the information indicating each occlusion image in the selection order list is arranged from the top to the bottom in the order of the depth level information or the depth average value information. Is added to the selection order list.
  • step S146 If it is determined in step S146 that the value of the selection information flag is not “00” or “01”, that is, the value of the selection information flag is “10” or “11”, the process proceeds to step S148. .
  • the occlusion direction information or the occlusion direction information and the occlusion distance information are included as the selection information value of the occlusion image to be processed in the MPD file.
  • step S148 based on the occlusion direction information included as the selection information value in the MPD file, the MPD file processing unit 93 selects a direction in which the direction indicated by the occlusion direction information matches the viewpoint position direction and selects the selected order. Update the list.
  • the MPD file processing unit 93 displays information indicating the processing target occlusion image. By adding to the selection order list, the selection order list is updated.
  • the viewpoint position direction is not one of the above-described six directions but the direction of the user's viewpoint position viewed from the origin O, the direction indicated by the occlusion direction information and the viewpoint
  • the angle formed with the position direction is equal to or smaller than a predetermined threshold, it may be determined that the direction indicated by the occlusion direction information matches the viewpoint position direction.
  • the selection order list may be updated using the occlusion distance information and the viewpoint position distance.
  • the MPD file processing unit 93 selects the occlusion images in which the direction indicated by the occlusion direction information matches the viewpoint position direction so that the difference between the distance indicated by the occlusion distance information and the viewpoint position distance is arranged in ascending order. Update the order list.
  • the occlusion image in which the direction indicated by the occlusion direction information and the viewpoint position direction do not match may not be included in the selection order list, or the selection order is included in the lower order and included in the selection order list. You may be made to do.
  • the value of the selection information flag of each occlusion image is set to “00” or “01”, and the process of step S147 is performed to select the selection order list. Should be generated.
  • step S148 is performed to select the selection order list. Should be generated.
  • the value of the selection information flag is set to “00” or “01” for the occlusion image at the origin O, and the value of the selection information flag is set to “10” for the occlusion image at a position other than the origin O. Or it can be “11”.
  • step S148 may be performed to update the selection order list.
  • these occlusion images can be used only for prefetching, and can be added to the lowest selection order position in the selection order list in step S147.
  • the occlusion image at the origin O may be added to the highest selection order position in the selection order list.
  • steps S146 to S148 based on at least one of information on the occlusion image viewpoint position such as occlusion direction information and occlusion distance information and information on depth of the occlusion image such as depth level information and depth average value information.
  • the occlusion image is selected and a selection order list is generated.
  • step S145 If it is determined in step S145 that there is no unprocessed occlusion image, that is, all occlusion images have been processed, a selection order list is obtained (generated), and the selection order list generation process ends. .
  • the client device 71 generates a selection order list for sequentially selecting appropriate occlusion images based on the selection information value. By generating the selection order list in this way, the client device 71 can select and acquire an appropriate occlusion image even when the transmission band is not sufficient.
  • the selection information flag and the selection information value are included in the MPD file, only the information necessary for selecting the occlusion image can be acquired and the selection order list can be efficiently generated.
  • the selection order list is generated based on the occlusion distance information and the viewpoint position distance, the amount of calculation when the selection order list is generated is reduced as compared with the case where the distance between the user's viewpoint position and the origin O ′ is used. Can do.
  • the client device 71 When the selection order list is generated in this manner, the client device 71 performs the file acquisition process described with reference to FIG. 10 and the reproduction process described with reference to FIG.
  • the direction indicated by the occlusion direction information is not limited to this, for example, -xyz direction, -xy direction, -xy-z direction, -xz direction, -x direction, -xz direction, -x-yz direction, -Xy direction, -xyz direction, yz direction, y direction, yz direction, z direction, -z direction, -yz direction, -y direction, -yz direction, xyz direction, xy
  • a total of 26 directions such as a direction, an xy-z direction, an xz direction, an x direction, an xz direction, an xyz direction, an xy direction, and an xyz direction may be used.
  • the ⁇ xy ⁇ z direction is a direction of a vector obtained by adding a unit vector in the ⁇ x direction, a unit vector in the y direction, and a unit vector in the ⁇ z direction.
  • a yaw angle or a pitch angle may be used to indicate each direction of the occlusion direction information such as 6 directions or 26 directions.
  • the yaw angle is, for example, a rotation angle around the y-axis of the omnidirectional coordinate system shown in FIG. 12, and is a counterclockwise direction when the origin O is viewed from the positive direction of the y-axis. Is the positive direction of the yaw angle.
  • the pitch angle is a rotation angle around the x-axis of the omnidirectional coordinate system shown in FIG. 12, and the counterclockwise direction when the origin O is viewed from the positive direction of the x-axis is the pitch angle. The positive direction.
  • the x direction, y direction, z direction, -x direction, -y direction, and -z direction are expressed using the yaw angle and the pitch angle, they are as shown in FIG. That is, for example, the x direction is a direction in which the yaw angle is 90 degrees and the pitch angle is 0 degrees.
  • a range group with distance indicating a distance range may be used instead of a specific value of the distance itself.
  • the range group with distance is the range of distance when the distance from the origin O to the origin O ′ of the occlusion image is divided into a group in the range from 0 m to 0.5 m, a group in the range from 0.5 m to 1.0 m, etc. It is a group.
  • the occlusion distance information is the value of the largest distance of the distance range group to which the distance from the origin O to the origin O ′ belongs among a plurality of distance range groups prepared in advance. Therefore, for example, when the distance from the origin O to the origin O ′ belongs to a group in the range from 0.5 m to 1.0 m, the value of the occlusion distance information is “1.0” or the like.
  • the occlusion distance information may be a distance order indicating the smallest (shortest) distance among the distances from the origin O to the origin O ′ of the plurality of occlusion images.
  • the occlusion distance information is a distance range group indicating how far the distance from the origin O to the origin O ′ belongs to the distance range group with the smallest (shortest) range among the plurality of distance range groups. It may be a ranking.
  • the occlusion coordinate information is not used, but the occlusion coordinate information may be signaled to the client device 71 as a selection information value.
  • an occlusion image may be selected using occlusion coordinate information as a selection information value. That is, the selection order list may be generated using the occlusion coordinate information.
  • the occlusion image can be selected with a smaller amount of calculation. This is to obtain a viewpoint position direction from the user's viewpoint position, select an occlusion image whose direction indicated by the occlusion direction information matches the viewpoint position direction, and further use the occlusion distance information to obtain an occlusion image close to the viewpoint position distance. This is because it can be selected.
  • the calculation at the time of selecting these occlusion images can be performed more easily than obtaining the distances between the positions of all the occlusion images and the viewpoint position of the user.
  • ⁇ Third Embodiment> ⁇ Selection of occlusion image>
  • the user's viewpoint position is the origin O of the omnidirectional coordinate system, that is, the user is looking into. If there is no occlusion image in advance, the omnidirectional image of the viewpoint after movement can be displayed immediately when the viewpoint position of the user moves.
  • the occlusion images are selected in the order of decreasing distance between the user's viewpoint position and the position of the occlusion image, or in the order in which the distance from the origin O to the origin O ′ is closer to the user's viewpoint position distance, A plurality of occlusion images having the same distance may be selected. In the second embodiment, if there are a plurality of occlusion images having the same distance, the selection order of the occlusion images cannot be determined.
  • a priority flag indicating whether or not an occlusion image should be preferentially selected may be used.
  • the value “1” of the priority flag indicates that the occlusion image should be preferentially selected, and the value “0” of the priority flag indicates that the occlusion image should not be preferentially selected.
  • the client device 71 preferentially acquires an occlusion image whose priority flag value is “1”. Then, it becomes possible to select an occlusion image appropriately.
  • the priority order of occlusion images may be set instead of the priority flag. Specifically, for example, the priority order of the occlusion image with the highest priority is set to 1, and the priority order is determined for each occlusion image so that the value of the priority order becomes smaller as the priority becomes higher. Can be.
  • the client device 71 may select the plurality of occlusion images in descending order of priority.
  • Such priority flag and priority order are information related to the priority of the occlusion image.
  • As a method of signaling the priority flag and the priority order to the client device 71 for example, it is conceivable to use the selection information flag as in the second embodiment.
  • a selection information value may be determined in advance for each value of the selection information flag.
  • the selection information value is the priority flag value.
  • the selection information value is the priority.
  • the order value is assumed.
  • the schemeIdUri is ““ urn: mpeg: dash: occlusion: 2017 ””, and the value value is shown in FIG.
  • the selected information flag and the selected information value are described. Specifically, the value value is separated by a comma to be ““ selection information flag, selection information value ””.
  • the priority flag and the priority order can be used simultaneously in combination with the depth level information described in the second embodiment.
  • a more accurate selection order of the occlusion images can be determined using the priority flag and the priority order.
  • the selection information flag and the selection information value shown in FIG. 13 are described in one EssentialProperty, and the selection information flag and the selection information value shown in FIG. 17 are described in the other EssentialProperty.
  • the file generation device 11 and the client device 71 have the following: Such processing is performed.
  • the MPD file generation unit 33 includes an MPD in which the occlusion image selection information flag and the selection information value are included in the adaptation set of the texture information of each occlusion image. Generate a file.
  • a selection order list generation process shown in FIG. 18 is performed to generate a selection order list.
  • the selection order list generation processing by the client device 71 will be described with reference to the flowchart of FIG.
  • or step S178 is the same as the process of step S141 thru
  • steps S176 to S178 processing is performed using the selection information flag and the selection information value shown in FIG. 13 in the MPD file.
  • step S179 the MPD file processing unit 93 determines whether the value of the selection information flag of the occlusion image to be processed in the MPD file is “1000”.
  • the value of the selection information flag described in another EssentialProperty different from the EssentialProperty described in the selection information flag used in step S176 which is included in the AdaptationSet of the texture information of the occlusion image to be processed.
  • the determination process is performed.
  • the value of the selection information flag is “1000” or “1001”.
  • step S179 If it is determined in step S179 that the value of the selection information flag is “1000”, that is, if the priority flag is described as the selection information value in the value, the process proceeds to step S180.
  • step S180 the MPD file processing unit 93 further updates the selection order list obtained in step S177 or step S178 based on the priority flag of the occlusion image to be processed included in the MPD file.
  • the MPD file processing unit 93 selects a selection flag having a priority flag value “1” from among the plurality of occlusion images more than a selection flag having a priority flag value “0”.
  • the selection order list is updated so that the selection order is higher.
  • step S178 even when step S178 is performed and the selection order list is obtained, there are a plurality of occlusion images in which the direction indicated by the occlusion direction information matches the viewpoint position direction, or the distance indicated by the occlusion distance information. There may be a plurality of the same difference between the viewpoint position distance and the viewpoint position distance. In such a case, in step S180, among the plurality of occlusion images, the selection order of the priority flag value “1” is higher than the selection order of the priority flag value “0”. The selection order list is updated so as to be in the selection order.
  • step S180 When the process in step S180 is performed and the selection order list is updated, the process returns to step S175, and the above-described process is repeated.
  • step S179 If it is determined in step S179 that the value of the selection information flag is not “1000”, that is, the value of the selection information flag is “1001”, and the priority order is described as the selection information value in the value value. If yes, the process proceeds to step S181.
  • step S181 the MPD file processing unit 93 further updates the selection order list obtained in step S177 or step S178 based on the priority order of the occlusion images to be processed included in the MPD file.
  • step S181 as in step S180, there are a plurality of occlusion images in which the selection order cannot be determined, that is, the selection order is the same, for example, the selection information values are the same in step S177 and step S178.
  • the selection order list is updated so that these occlusion images are arranged in order of priority. That is, the selection order of occlusion images with lower priority order is made smaller.
  • step S181 When the process in step S181 is performed and the selection order list is updated, the process returns to step S175, and the above-described process is repeated.
  • the client device 71 generates the selection order list using the priority flag and the priority order as the selection information value. By generating the selection order list in this way, the client device 71 can select and acquire an appropriate occlusion image even when the transmission band is not sufficient.
  • the selection information flag and the selection information value may be determined as shown in FIG.
  • the selection information value is depth level information (depth (level) and priority flag. That is, when the value of the selection information flag is “000”, the depth level information and the priority flag are transmitted to the client device 71.
  • the value of EssentialProperty describes the depth level information and the priority flag separated by a space.
  • the selection information flag is “001”
  • the selection information value is set to the depth level information and the priority order
  • the value of the EssentialProperty is described by separating the depth level information and the priority order by a space.
  • selection information values are described by being separated by a space.
  • the selection information value is the depth average value information (depth average value) and the priority flag.
  • the selection information value is the depth. Average value information and priority order.
  • the selection information value is the occlusion direction information and the priority flag.
  • the selection information value is the order of the occlusion direction information and the priority. It is said.
  • the selection information value is the occlusion direction information, the occlusion distance information, and the priority flag.
  • the selection information value is Occlusion direction information, occlusion distance information, and priority order.
  • step S176 it is determined whether or not the value of the selection information flag is “000”, “001”, “010”, or “011”, and “000”, “001”, “010” ”Or“ 011 ”, the process of step S177 is performed.
  • the value of the selection information flag is not “000”, “001”, “010”, or “011”, that is, the value of the selection information flag is “100”, “101”, “110”, or “111”. If it is determined that there is, the process of step S178 is performed.
  • step S179 it is determined whether or not the value of the selection information flag is “000”, “010”, “100”, or “110”, and “000”, “010”, “100”, or If it is determined that the value is “110”, the process of step S180 is performed.
  • step S181 when it is determined that the value of the selection information flag is “001”, “011”, “101”, or “111”, the process of step S181 is performed.
  • the selection order of the occlusion images can be determined by using the priority flag and the priority order.
  • the content creator can intentionally specify the selection order of the occlusion images. For example, it is possible to preferentially acquire an occlusion image including an occlusion area that the content creator wants to show to the user and use it as a recommendation at the time of viewing display.
  • a black image is displayed or an image in a nearby area is duplicated and displayed.
  • the omnidirectional image is displayed continuously, or some kind of display is performed to notify that the viewpoint position cannot be moved any further. Whether to do so depends on the implementation of the client device 71.
  • the content creator may not want the user's viewpoint position to be further away from the origin O than expected because the display of the omnidirectional image is uncomfortable.
  • each occlusion image is an effective occlusion image so that the omnidirectional image is not displayed with the position away from the viewpoint position assumed by the content creator as the viewpoint position. You may do it.
  • selection information flag can be used as shown in FIG.
  • the selection information value is the viewpoint position maximum value information.
  • the viewpoint position maximum value information is information indicating the maximum value of the distance from the origin O to the user's viewpoint position where appropriate display using an occlusion image is possible.
  • the viewpoint position maximum value information is information indicating the range of the viewpoint position of the user that can effectively use the occlusion image.
  • the omnidirectional image using the occlusion image at the viewpoint position such that the distance from the origin O to the user's viewpoint position is longer than the distance indicated by the viewpoint position maximum value information.
  • the display of is not desired.
  • viewpoint position maximum value information is actually signaled using selection information flag in MPEG-DASH.
  • the value value is separated by a comma and becomes ““ selection information flag, selection information value ””.
  • the viewpoint position maximum value information can be signaled simultaneously with the above-described depth level information, depth average value information, occlusion direction information, occlusion distance information, priority flag, priority order, and the like.
  • an EssentialProperty may be provided for each information signaled to the AdaptationSet of the texture information of the occlusion image.
  • the viewpoint position maximum value information for each occlusion image is included in the MPD file as described above, the viewpoint position maximum value information of each occlusion image is described in value as the selection information value in step S13 of FIG.
  • An MPD file is generated by the MPD file generator 33.
  • the selection order list is generated using the viewpoint position maximum value information.
  • the MPD file processing unit 93 obtains the distance from the origin O to the user's viewpoint position as the viewpoint position distance based on the time when the selection order list generation process is performed, that is, the current viewpoint position of the user.
  • the MPD file processing unit 93 generates a selection order list by excluding one or a plurality of occlusion images indicated by the MPD file from which the distance indicated by the viewpoint position maximum value information is shorter than the viewpoint position distance. To do.
  • the occlusion images to be acquired are sequentially selected from the occlusion images in which the user's viewpoint position is within the range determined by the distance indicated by the viewpoint position maximum value information.
  • the viewpoint position distance is obtained by the MPD file processing unit 93 in step S43.
  • a selection order list is generated only for the occlusion images whose distance indicated by the viewpoint position maximum value information is equal to or larger than the viewpoint position distance. That is, the occlusion image information whose distance indicated by the viewpoint position maximum value information is less than the viewpoint position distance is not included in the selection order list.
  • the selection position list is generated using the viewpoint position distance calculated in step S174. That is, in steps S175 to S181, a selection order list is generated only for an occlusion image whose distance indicated by the viewpoint position maximum value information is equal to or larger than the viewpoint position distance.
  • the user's viewpoint position is outside the display range. Display information indicating that it may exist may be presented.
  • the MPD file processing unit 93 performs occlusion in which the distance indicated by the viewpoint position maximum value information is equal to or greater than the viewpoint position distance. When there is no image, this is notified to the display information generation unit 113.
  • the display information generation unit 113 can display an omnidirectional image (content) in which the user's viewpoint position is appropriate, for example, in step S113 of the reproduction processing of FIG. An out-of-display-range notification that indicates that it is outside is generated. Then, the display information generation unit 113 supplies (outputs) the display range out-of-range notification to the display unit 97 for display.
  • the display unit 97 displays the notification outside the display range supplied from the display information generation unit 113 in step S114. At this time, the notification outside the display range may be displayed simultaneously with the omnidirectional image, or only the notification outside the display range may be displayed without displaying the omnidirectional image.
  • the viewpoint position maximum value information can be simultaneously signaled as the selection information value together with the selection information value shown in FIG. 13 and the selection information value shown in FIG.
  • the selection information flag and the selection information value may be determined as shown in FIG. 13
  • the selection information value is depth level information (depth level) and viewpoint position maximum value information. That is, when the value of the selection information flag is “10000”, the depth level information and the viewpoint position maximum value information are transmitted to the client device 71.
  • the value of EssentialProperty describes the depth level information and the viewpoint position maximum value information separated by a space.
  • the selection information value is the depth average value information (depth average value) and the viewpoint position maximum value information
  • the value of the EssentialProperty is the depth average value information and the viewpoint position maximum. Value information is described separated by a space.
  • selection information values are described by being separated by a space.
  • the selection information value is the occlusion direction information and the viewpoint position maximum value information.
  • the selection information value is the occlusion direction information, The occlusion distance information and the viewpoint position maximum value information are used.
  • the viewpoint position maximum value information is signaled together with the depth level information, the depth average value information, the occlusion direction information, and the occlusion distance information, the same process as the selection order list generation process described with reference to FIG. Is done.
  • step S146 it is determined whether or not the value of the selection information flag is “10000” or “10001”. If it is determined that it is “10000” or “10001”, the process of step S147 is performed. Is done.
  • step S148 is performed.
  • step S147 and step S148 only the occlusion image whose distance indicated by the viewpoint position maximum value information is equal to or larger than the viewpoint position distance is targeted, and a selection order list is generated. Further, when there is no occlusion image in which the distance indicated by the viewpoint position maximum value information is equal to or larger than the viewpoint position distance, the MPD file processing unit 93 notifies the display information generation unit 113 to that effect.
  • the client device 71 can select an appropriate occlusion image. That is, the client device 71 can select an occlusion image whose viewpoint position distance does not exceed the distance indicated by the viewpoint position maximum value information.
  • the viewpoint position of the user who can display the omnidirectional image using the occlusion image can be shown to the client device 71. That is, by displaying a notification outside the display range, it is possible to guide the user to view the omnidirectional image at an appropriate viewpoint position.
  • ⁇ Fifth embodiment> ⁇ About priority flag and priority order signaling> Note that the priority flag indicating the priority of the occlusion image and the priority order described in the third embodiment may change in the time direction depending on the content.
  • the priority flag and priority order of each occlusion image may change over time.
  • the priority flag and the priority order are described as selection information values in the MPD file, it is difficult to cope with temporal changes in the priority flag and the priority order. is there.
  • the priority flag and the priority order are used to generate a omnidirectional image for display, and can be said to be quality information because it is information related to the quality of the omnidirectional image that is the content to be reproduced. .
  • Quality information can be stored in a segment file using ISO base media file format. That is, in ISO / IEC 23001-10, for example, QualityMetricsSampleEntry is defined in a segment file (MP4 file) as shown in FIG.
  • each sample of the segment file has the size indicated by field_size_bytes and includes the quality information of the type indicated by metric_code for the number of metric_count.
  • Sample corresponds to a frame of an omnidirectional image. That is, the segment file includes the quality information of the occlusion image for each frame of the omnidirectional image.
  • field_size_bytes, metric_count, and metric_code are as shown in FIG.
  • field_size_bytes indicates the size (size) per quality information (one quality information) included in the sample
  • metric_count indicates the number of stored quality information
  • metric_code indicates the type of stored quality information.
  • the priority flag of the occlusion image and the priority order can be signaled by metric_code as a new type of quality information, so that the frame of the moving image as a spherical image ( It becomes possible to use the priority flag and the priority order determined for each (Sample), that is, for each time.
  • the priority flag and the metric_code indicating the priority order can be determined as shown in FIG. 24, for example.
  • metric_code when metric_code is “ocpf”, a priority flag described in 8 bits is stored as Quality information. Even in this case, when the value of the priority flag is “1”, it indicates that the image is an occlusion image to be preferentially selected. When the value of the priority flag is “0”, the priority flag is selected. This indicates that it is not an occlusion image to be performed.
  • metric_code is “ocpn”
  • priority order which is unsigned 8-bit data is stored as Quality information.
  • metric_codes indicating “ocpf” and “ocpn” can be said to be identification information indicating the type of information related to the priority of the occlusion image such as priority flag and priority order.
  • an MPD file to which the present technology is applied corresponding to the MPD file shown in FIG. 4 is as shown in FIG. Note that the description of the portion corresponding to the case in FIG. 4 in FIG. 25 will be repeated, and will be omitted as appropriate.
  • the MPD file shown in FIG. 25 is different from the MPD file shown in FIG. 4 only in the portions indicated by arrows Q51 and Q52. That is, in this MPD file, an ISO “base” media “file” (segment file) including a Quality value (Quality information) is specified by an AdaptationSet for each occlusion image.
  • the part indicated by the arrow Q51 is an adaptation set for the priority information of the occlusion image 1, that is, the priority flag and the quality information regarding the priority order.
  • ocpn is described as the metric_code shown in FIG. 24 in the codecs part. From this description, the segment file of Quality information for the occlusion image 1 corresponding to this AdaptationSet has the priority order. It can be seen that it is included. That is, the priority flag or the metric_code indicating the priority order can be signaled by the codecs portion.
  • associationId is set in Representation so that the relationship (association) with the texture information of the occlusion image 1 can be grasped.
  • the part indicated by the arrow Q52 is an AdaptationSet for the quality information regarding the priority of the occlusion image.
  • this AdaptationSet is an AdaptationSet for the quality information related to the occlusion image 2, and the quality information segment files are in priority order. It can be seen that is included.
  • a priority flag and a priority order are prepared for each frame of the omnidirectional image, that is, for each frame of the occlusion image. That is, an example in which a priority flag and a priority order are determined for each frame with one frame as a time unit will be described.
  • these priority flags and priority orders can be prepared for every arbitrary time unit such as every several frames (for example, every segment).
  • the client device 71 can obtain the quality information regarding the priority of each occlusion image for each frame, that is, the priority flag or the priority order, and use the priority flag or the priority order thus obtained.
  • a selection order list can be generated.
  • This segment file includes priority flag or priority order as Quality information.
  • step S13 the MPD file generation unit 33 generates an MPD file including an AdaptationSet in which the metric_code of the quality information of each occlusion image is described.
  • the client device 71 performs a selection order list generation process shown in FIG. That is, the selection order list generation processing by the client device 71 will be described below with reference to the flowchart of FIG.
  • step S211 is the same as the processing in step S171 in FIG.
  • the MPD file acquired here includes the metric_code of the quality information of each occlusion image in addition to the selection information flag and the selection information value shown in FIG.
  • the MPD file processing unit 93 instructs the segment file acquisition unit 94 to acquire the segment file in which the quality information of each occlusion image is stored based on the acquired MPD file.
  • step S212 the segment file acquisition unit 94 acquires a segment file storing the quality information of each occlusion image from the server via the network in accordance with an instruction from the MPD file processing unit 93, and supplies the segment file to the segment file processing unit 111.
  • the segment file storing the priority flag or the priority order is acquired as the quality information that is information regarding the quality of the content, that is, the omnidirectional image.
  • the segment file processing unit 111 extracts quality information at each frame (each time) for each occlusion image from the segment file supplied from the segment file acquisition unit 94 and supplies the extracted quality information to the MPD file processing unit 93.
  • the MPD file processing unit 93 can specify whether the quality information supplied from the segment file processing unit 111 is in priority flag or priority order by the metric_code of each occlusion image described in the MPD file.
  • step S212 When the processing of step S212 is performed, the processing of step S213 to step S219 is performed thereafter, but these processing are the same as the processing of step S172 to step S178 of FIG.
  • step S220 the MPD file processing unit 93 determines whether or not the quality information obtained from the segment file is a priority flag.
  • step S220 If it is determined in step S220 that the priority flag is set, the process proceeds to step S221. In step S221, the same process as in step S180 of FIG. 18 is performed, and then the process returns to step S216, and the above-described process is repeated.
  • step S220 determines whether the flag is not a priority flag, that is, in order of priority. If it is determined in step S220 that the flag is not a priority flag, that is, in order of priority, the process proceeds to step S222. In step S222, processing similar to that in step S181 in FIG. 18 is performed. Thereafter, the processing returns to step S216, and the above-described processing is repeatedly performed.
  • step S212 since quality information is obtained for each frame for each occlusion image, the processing in steps S213 to S222 is performed for each frame of the occlusion image, that is, for each frame of the omnidirectional image.
  • a selection order list is generated for each frame, and in the file acquisition process described later with reference to FIG. 10, the process is performed using the selection order list obtained for each frame.
  • the processing from step S213 to step S222 may be performed for each segment including a plurality of frames.
  • the client device 71 acquires Quality information in advance, and generates a selection order list based on the obtained Quality information. In this way, it is possible to select a more appropriate occlusion image in response to temporal changes in priority flag and priority order.
  • the priority flag and priority order of each time can be obtained only from the MPD file, although the size of the MPD file will increase. can do.
  • the priority flag and priority order of each time are described in the MPD file
  • the number of segments or sub-segments in which the selection information value is valid is described.
  • schemeIdUri of EssentialProperty is ““ urn: mpeg: dash: occlusion-dynamic: 2017 ””, and selection information flag and selection information are included in the value of the value.
  • a value and the number of segments (or sub-segments) are described.
  • the value value is separated by a comma and becomes ““ selection information flag, selection information value, number of segments (or sub-segments) ”.
  • the number of segments (or sub-segments) described in value is a segment consisting of one or a plurality of frames constituting a period in which the same priority flag or priority order is used ( Or information indicating the number of sub-segments).
  • the number of segments (or sub-segments) included in value is information indicating a period composed of one or a plurality of segments (or sub-segments) in which one same priority flag or priority order is used.
  • a priority flag or a priority order can be specified as a selection information value for each period (time) composed of one or a plurality of segments (or sub-segments).
  • the selection information flag and the selection information value are as shown in FIG.
  • the first EssentialProperty indicates that the priority order of the first 100 segments (or sub-segments) is “2”
  • the second EssentialProperty is the next 50, that is, This indicates that the priority order of the 101st to 150th segments (or sub-segments) is “1”.
  • the third EssentialProperty indicates that the priority order of the next 70 segments, that is, the 151st to 220th segments (or sub-segments) is “2”.
  • an EssentialProperty is provided for each period consisting of several segments (frames) in the MPD file, and the priority flag and priority order of each time (period) are also described, so that the priority flag and priority order in terms of time
  • an appropriate occlusion image can be selected.
  • the file generation device 11 describes EssentialProperty including the selection information flag and the selection information value shown in FIG. 17 and the number of segments indicating the period in value in step S13 of FIG.
  • the MPD file is generated by the MPD file generator 33.
  • the client device 71 processing similar to the selection order list generation processing described with reference to FIG. 26 is performed. However, the priority flag and priority order in each segment (frame) are read from the MPD file acquired in step S211 without performing the process in step S212.
  • the priority flag and the priority order are simultaneously distributed as the quality information of ISO Base media file, or the segment (or sub By distributing the priority flag and the priority order for each segment), the priority flag and the priority order can be changed for each time. As a result, the client device 71 can select an appropriate occlusion image for each time.
  • the occlusion image may be stored in an MPD file and supplied to the client device 71.
  • the client device 71 generates a transmission request for requesting transmission of the MPD file including the viewpoint position of the user at the current time, and transmits the request to the server.
  • the server that has received the transmission request from the client device 71 selects several occlusion images at a position close to the user's viewpoint position included in the transmission request from among the plurality of held occlusion images.
  • the server generates an MPD file including the selected occlusion image and transmits it to the client device 71.
  • the client device 71 can obtain an appropriate occlusion image without selecting an occlusion image on the client device 71 side immediately after the start of content reproduction.
  • the client device 71 selects an occlusion image by the method described in each embodiment described above and acquires it from the server.
  • generates the MPD file containing an occlusion image may be performed by the file production
  • the upload unit 35 receives a transmission request including the viewpoint position, the MPD file generation unit 33 generates an MPD file including the occlusion image, and the upload unit 35 transmits the MPD file to the client device 71. To do.
  • the above-described series of processing can be executed by hardware or can be executed by software.
  • a program constituting the software is installed in the computer.
  • the computer includes, for example, a general-purpose personal computer capable of executing various functions by installing a computer incorporated in dedicated hardware and various programs.
  • FIG. 27 is a block diagram showing an example of the hardware configuration of a computer that executes the above-described series of processing by a program.
  • a CPU Central Processing Unit
  • ROM Read Only Memory
  • RAM Random Access Memory
  • An input / output interface 505 is further connected to the bus 504.
  • An input unit 506, an output unit 507, a recording unit 508, a communication unit 509, and a drive 510 are connected to the input / output interface 505.
  • the input unit 506 includes a keyboard, a mouse, a microphone, an image sensor, and the like.
  • the output unit 507 includes a display, a speaker, and the like.
  • the recording unit 508 includes a hard disk, a nonvolatile memory, and the like.
  • the communication unit 509 includes a network interface or the like.
  • the drive 510 drives a removable recording medium 511 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory.
  • the CPU 501 loads the program recorded in the recording unit 508 to the RAM 503 via the input / output interface 505 and the bus 504 and executes the program, for example. Is performed.
  • the program executed by the computer (CPU 501) can be provided by being recorded in a removable recording medium 511 as a package medium, for example.
  • the program can be provided via a wired or wireless transmission medium such as a local area network, the Internet, or digital satellite broadcasting.
  • the program can be installed in the recording unit 508 via the input / output interface 505 by attaching the removable recording medium 511 to the drive 510. Further, the program can be received by the communication unit 509 via a wired or wireless transmission medium and installed in the recording unit 508. In addition, the program can be installed in the ROM 502 or the recording unit 508 in advance.
  • the program executed by the computer may be a program that is processed in time series in the order described in this specification, or in parallel or at a necessary timing such as when a call is made. It may be a program for processing.
  • the present technology can take a cloud computing configuration in which one function is shared by a plurality of devices via a network and is jointly processed.
  • each step described in the above flowchart can be executed by one device or can be shared by a plurality of devices.
  • the plurality of processes included in the one step can be executed by being shared by a plurality of apparatuses in addition to being executed by one apparatus.
  • the present technology can be configured as follows.
  • An image processing apparatus including an MPD file processing unit that selects the occlusion image to be acquired from among the plurality of occlusion images indicated by the MPD file based on information on the viewpoint position of the occlusion image included in the MPD file .
  • the image processing apparatus according to any one of (1) to (4), wherein the information regarding the viewpoint position of the occlusion image is coordinate information indicating the viewpoint position of the occlusion image.
  • the information related to the viewpoint position of the occlusion image is direction information indicating a direction of the viewpoint position of the occlusion image viewed from a reference position.
  • the information on the viewpoint position of the occlusion image is the direction information and distance information indicating a distance from the reference position to the viewpoint position of the occlusion image.
  • the MPD file processing unit selects the occlusion image based on at least one of information on a viewpoint position of the occlusion image and information on a depth of the occlusion image included in the MPD file.
  • the image processing device according to any one of (7).
  • the MPD file includes, for each occlusion image, selection information indicating which of the information about the viewpoint position of the occlusion image and the information about the depth of the occlusion image is included, and the selection information.
  • the image processing device according to (8). (10) The image processing apparatus according to any one of (1) to (9), wherein the MPD file processing unit selects the occlusion image by further using information on the priority of the occlusion image.
  • the image processing apparatus selects the occlusion image at each time using information on the priority of the occlusion image determined for each time.
  • the MPD file includes, for each of the occlusion images, information indicating the period and information regarding the priority of the occlusion image in the period for each of a plurality of periods. apparatus.
  • the information regarding the priority of the occlusion image is included in a file in which information regarding the quality of content reproduced using the occlusion image is stored.
  • the MPD file includes viewpoint position information indicating the range of the viewpoint position of the user that can use the occlusion image
  • the MPD file processing unit selects, based on the viewpoint position information, the occlusion image to be acquired from among the occlusion images in which the user viewpoint position is within the range among the plurality of occlusion images.
  • the image processing device according to any one of (1) to (13).
  • display information is generated to the effect that the user's viewpoint position is outside the display range of content reproduced using the occlusion image.
  • the image processing apparatus according to (14), further including a display information generation unit for outputting.
  • An image processing method including a step of selecting the acquired occlusion image from among the plurality of occlusion images indicated by the MPD file based on information on a viewpoint position of the occlusion image included in the MPD file.
  • the computer executes a process including a step of selecting the occlusion image to be acquired from among the plurality of occlusion images indicated by the MPD file. program.
  • an MPD file generation unit that generates an MPD file including information on the viewpoint position of the occlusion image; And a communication unit that transmits the MPD file.
  • the file generation device wherein the information regarding the viewpoint position of the occlusion image is coordinate information indicating the viewpoint position of the occlusion image.
  • the information regarding the viewpoint position of the occlusion image is direction information indicating a direction of the viewpoint position of the occlusion image as viewed from a reference position.
  • the information related to the viewpoint position of the occlusion image is the direction information and distance information indicating a distance from the reference position to the viewpoint position of the occlusion image.
  • the MPD file includes at least one of information on the viewpoint position of the occlusion image and information on the depth of the occlusion image for each of the occlusions (18) to (21).
  • the file generation device described in 1. The MPD file includes, for each occlusion image, selection information indicating which of the information about the viewpoint position of the occlusion image and the information about the depth of the occlusion image is included, and the selection information.
  • (24) The file generation device according to any one of (18) to (23), wherein the MPD file includes information on the priority of the occlusion image.
  • the MPD file includes, for each of the occlusion images, information indicating the period and information on the priority of the occlusion image in the period for each of a plurality of periods. apparatus.
  • the file generation device according to any one of (18) to (25), wherein the MPD file includes viewpoint position information indicating a range of viewpoint positions of a user who can use the occlusion image.
  • For a plurality of occlusion images generate an MPD file containing information on the viewpoint position of the occlusion image, A file generation method including a step of transmitting the MPD file.
  • For a plurality of occlusion images generate an MPD file containing information on the viewpoint position of the occlusion image, A program for causing a computer to execute processing including the step of transmitting the MPD file.
  • 11 file generation device 33 MPD file generation unit, 35 upload unit, 71 client device, 93 MPD file processing unit, 94 segment file acquisition unit, 113 display information generation unit

Abstract

本技術は、適切なオクルージョン画像を得ることができるようにする画像処理装置および方法、ファイル生成装置および方法、並びにプログラムに関する。 画像処理装置は、MPDファイルに含まれているオクルージョン画像の視点位置に関する情報に基づいて、MPDファイルにより示される複数のオクルージョン画像のなかから、取得するオクルージョン画像を選択するMPDファイル処理部を備える。本技術はクライアント装置に適用することができる。

Description

画像処理装置および方法、ファイル生成装置および方法、並びにプログラム
 本技術は、画像処理装置および方法、ファイル生成装置および方法、並びにプログラムに関し、特に、適切なオクルージョン画像を得ることができるようにした画像処理装置および方法、ファイル生成装置および方法、並びにプログラムに関する。
 従来、360度の各方向、すなわち水平方向と垂直方向の全方位の画像(映像)である全天球画像が知られている。
 全天球画像の再生では、テクスチャ情報のみを利用すると全天球の中心から見回した画(映像)をみる体験ができる。さらに全天球画像の再生にテクスチャ情報に加えてデプス情報も用いると、映像の立体視や運動視差を実現することができる。これにより、被写体の動きがより現実の動きに近づき、臨場感を向上させて酔いにくくすることができるようになる。以下では、特に、全天球画像のテクスチャ情報とデプス情報とからなる画像情報を主画像とも称することとする。
 また、全天球画像の再生では、主画像に加えてオクルージョン画像を利用することで、全天球の中心(以下、原点Oとも称する)から周囲を見回す体験に加えて、原点Oから視聴者であるユーザの視点位置を移動した、覗き込みの表示も行うことができる。
 ここで、オクルージョン画像とは、原点Oを視点位置とする主画像のテクスチャ情報には存在しない被写体、すなわち原点Oからは見えない被写体の領域であるオクルージョン領域のテクスチャ情報と、そのオクルージョン領域に関する奥行き方向の位置(距離)を示すデプス情報とからなる画像情報である。
 例えばMPEG-DASH(Moving Picture Experts Group phase - Dynamic Adaptive Streaming over HTTP)では、以上のような主画像とオクルージョン画像をクライアント装置に伝送することが可能である(例えば、非特許文献1参照)。
 特に、MPEG-DASHでは複数のオクルージョン画像を伝送可能であり、クライアント装置では、取得した複数のオクルージョン画像のうちのユーザの視点位置に応じた適切なオクルージョン画像を用いることで、覗き込みの表示を実現することができる。
ISO/IEC 23009-1 Information technology -Dynamic adaptive streaming over HTTP(DASH)- Part1:Media presentation description and segment formats,Apr.2012
 しかしながら、上述した技術では、クライアント装置において適切なオクルージョン画像を得ることができない場合があった。
 例えばMPEG-DASHにおいては、伝送帯域が十分でないときにはクライアント装置では主画像を取得するか、または主画像のテクスチャ情報のみを取得するかの何れかが行われ、オクルージョン画像は取得されない。
 この場合、複数のオクルージョン画像のうちの全天球画像の表示に用いられる一部のオクルージョン画像のみを取得するだけの余裕が伝送帯域にあるときでもクライアント装置はオクルージョン画像を取得することができない。そのため、クライアント装置は、伝送帯域の状態によっては必要なオクルージョン画像を取得できず、覗き込みの表示を行うことができないことがあった。
 本技術は、このような状況に鑑みてなされたものであり、適切なオクルージョン画像を得ることができるようにするものである。
 本技術の第1の側面の画像処理装置は、MPDファイルに含まれているオクルージョン画像の視点位置に関する情報に基づいて、前記MPDファイルにより示される複数の前記オクルージョン画像のなかから、取得する前記オクルージョン画像を選択するMPDファイル処理部を備える。
 本技術の第1の側面の画像処理方法またはプログラムは、MPDファイルに含まれているオクルージョン画像の視点位置に関する情報に基づいて、前記MPDファイルにより示される複数の前記オクルージョン画像のなかから、取得する前記オクルージョン画像を選択するステップを含む。
 本技術の第1の側面においては、MPDファイルに含まれているオクルージョン画像の視点位置に関する情報に基づいて、前記MPDファイルにより示される複数の前記オクルージョン画像のなかから、取得する前記オクルージョン画像が選択される。
 本技術の第2の側面のファイル生成装置は、複数のオクルージョン画像について、前記オクルージョン画像の視点位置に関する情報を含むMPDファイルを生成するMPDファイル生成部と、前記MPDファイルを送信する通信部とを備える。
 本技術の第2の側面のファイル生成方法またはプログラムは、複数のオクルージョン画像について、前記オクルージョン画像の視点位置に関する情報を含むMPDファイルを生成し、前記MPDファイルを送信するステップを含む。
 本技術の第2の側面においては、複数のオクルージョン画像について、前記オクルージョン画像の視点位置に関する情報を含むMPDファイルが生成され、前記MPDファイルが送信される。
 本技術の第1の側面および第2の側面によれば、適切なオクルージョン画像を得ることができる。
 なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載された何れかの効果であってもよい。
オクルージョンについて説明する図である。 オクルージョン画像について説明する図である。 オクルージョン画像の位置について説明する図である。 MPDファイルの例を示す図である。 MPDファイルの例を示す図である。 ファイル生成装置の構成例を示す図である。 アップロード処理を説明するフローチャートである。 クライアント装置の構成例を示す図である。 選択順リスト生成処理を説明するフローチャートである。 ファイル取得処理を説明するフローチャートである。 再生処理を説明するフローチャートである。 オクルージョン方向情報について説明する図である。 選択情報flagと選択情報値の例を示す図である。 MPDファイルの例を示す図である。 選択順リスト生成処理を説明するフローチャートである。 オクルージョン方向情報の表記について説明する図である。 選択情報flagと選択情報値の例を示す図である。 選択順リスト生成処理を説明するフローチャートである。 選択情報flagと選択情報値の例を示す図である。 選択情報flagと選択情報値の例を示す図である。 選択情報flagと選択情報値の例を示す図である。 Quality情報のシグナリングについて説明する図である。 Quality情報のシグナリングについて説明する図である。 Quality情報のシグナリングについて説明する図である。 MPDファイルの例を示す図である。 選択順リスト生成処理を説明するフローチャートである。 コンピュータの構成例を示す図である。
 以下、図面を参照して、本技術を適用した実施の形態について説明する。
〈第1の実施の形態〉
〈本技術について〉
 本技術は、MPEG-DASHを用いた全天球画像の配信において、主画像に加えて複数のオクルージョン画像を配信する際に、伝送帯域が十分でなく、全てのオクルージョン画像を伝送することができない場合でも、クライアント装置において一部の適切なオクルージョン画像を得ることができるようにするものである。
 特に、ここではオクルージョン画像の視点位置を示す座標情報と、オクルージョン領域のデプスレベルに関する情報とを同時にクライアント装置に対してシグナリングし、クライアント装置において適切なオクルージョン画像を選択できるようにした。
 なお、以下では、オクルージョン画像の視点位置を示す座標情報やオクルージョン領域のデプスレベルに関する情報など、オクルージョン画像を選択するための情報がMPD(Media Presentation Description)ファイルに含まれている例について説明する。
 しかし、オクルージョン画像を選択するための情報をMPDファイルによりシグナリングする方法に限らず、他のどのような方法によりオクルージョン画像を選択するための情報をクライアント装置にシグナリグンしてもよい。例えばサーバ等がMPDファイルとは別にオクルージョン画像を選択するための情報のみをクライアント装置に供給してもよい。
 それでは、以下、本技術について説明する。なお、ここでは全天球画像は動画像であるものとして説明を行うが、全天球画像は静止画像であってもよい。また、本技術で処理の対象となる画像は全方位の画像に限らず、半球の画像など、全方位の画像の一部の画像などであってもよい。
 まず、主画像は全天球画像としての動画像であるテクスチャ情報と、その全天球画像のデプス情報とからなる。
 主画像のテクスチャ情報により再生される全天球画像は、例えば予め定められた座標系(以下、全天球座標系とも称する)の原点Oから見た360度の各方向、すなわち水平方向と垂直方向の全方位の画像などとされる。
 ここで、原点Oの位置は全天球画像の仮想的なスクリーンである全天球の中心位置であり、全天球画像の再生開始時には、その全天球画像を見る(視聴する)ユーザの視点位置、つまりユーザの頭部の中心位置は原点Oにあるものとされる。
 また、主画像のデプス情報は原点Oから全天球画像上(テクスチャ情報)の各領域にある被写体の位置までの距離を示す情報、つまり全天球画像の各被写体の奥行き方向の位置を示す情報である。
 次に、覗き込み表示とオクルージョン画像について説明する。
 例えば図1の矢印A11に示すように、空間上に全天球画像の被写体として円柱H11と立方体H12とがあり、矢印V11に示す方向から円柱H11と立方体H12を撮影して得られた画像を主画像のテクスチャ情報とするものとする。また、撮影により得られたテクスチャ情報と、そのテクスチャ情報に対して得られるデプス情報とが主画像としてエンコードされるとする。
 この場合、主画像のテクスチャ情報として、図中、左下に示すテクスチャ画像PV11が主画像のテクスチャ情報として得られる。
 いま、原点Oから、つまり矢印V11の方向から円柱H11と立方体H12を見ているユーザが、視点位置を原点Oから少しだけ図中、左側の位置に変化させて矢印V12の方向から、つまり左側から覗き込むように円柱H11と立方体H12を見たとする。
 この場合に、主画像に基づいて、ユーザの移動後の視点から見た、つまり矢印V12の方向から見た全天球画像を生成することを考える。
 例えば矢印V12の方向から円柱H11と立方体H12を見たときの画像(テクスチャ情報)は、図中、右下に示すテクスチャ画像PV12となる。つまり、ユーザが左側から覗き込んで円柱H11と立方体H12を見た場合、それらの被写体はテクスチャ画像PV12に示すように見えるはずである。
 テクスチャ画像PV12において、斜線が施されている領域R11は主画像のテクスチャ情報であるテクスチャ画像PV11からは得ることのできない被写体の情報を含む領域であり、この領域がオクルージョン領域である。
 すなわち、テクスチャ画像PV12上の領域R11は矢印V11の方向からは他の被写体等に隠れて見ることのできない、テクスチャ画像PV11上には存在しない領域である。
 このようにオクルージョン領域である領域R11の情報は、主画像のテクスチャ情報であるテクスチャ画像PV11と、主画像のデプス情報とには含まれていない。
 そのため、主画像のみを用いて矢印V12に示す方向から見たテクスチャ画像PV12を生成すると、オクルージョン領域である領域R11の部分の情報が欠落してしまう。そのため、クライアント装置では、例えばオクルージョン領域を黒で表示したり、オクルージョン領域近傍の画素情報を用いてオクルージョン領域の画素の画素値を予測したりすることもできるが、そのようにして得られた画像は、実際の被写体が写っていない画像となるので違和感が生じてしまう。
 そこで、少なくともオクルージョン領域の部分の情報を含むテクスチャ情報とデプス情報の画像をオクルージョン画像として生成することで、主画像だけでなくオクルージョン画像も用いて、主画像だけでは欠落するオクルージョン領域を正しく表示することができるようになる。これにより、覗き込みの表示を行うとき、つまり原点Oとは異なる位置をユーザの視点位置として全天球画像の表示を行うときにも高い臨場感で画像を表示することができる。
 例えば図1に示す例では、矢印V12に示す方向に対応する視点位置をオクルージョン画像の視点位置(以下、原点O’とも称する)としたときには、テクスチャ画像PV12そのものをオクルージョン画像のテクスチャ情報とすることができる。
 そのような場合には、テクスチャ情報としてのテクスチャ画像PV12と、そのテクスチャ画像PV12上の各位置の被写体に対応する奥行き方向の距離を示すデプス情報とからなる画像情報がオクルージョン画像とされる。
 なお、オクルージョン画像のテクスチャ情報は、テクスチャ画像PV12のような原点O’を視点位置としたときの全方位の全天球画像であってもよいし、オクルージョン領域である領域R11の部分のみの画像であってもよい。つまり、オクルージョン画像のテクスチャ情報は、少なくともオクルージョン領域の画像情報(テクスチャ情報)が含まれているものであればよい。
 また、オクルージョン画像の視点位置である原点O’は、全天球座標系の原点Oと同じであることもある。
 例えば図2に示すように、空間上にオブジェクトOB1、オブジェクトOB2、およびオブジェクトOB3があったとする。
 この例では、全天球座標系の原点Oから見ると、オブジェクトOB2の一部の領域がオブジェクトOB1により隠れて見えなくなっており、オブジェクトOB3の一部の領域がオブジェクトOB1およびオブジェクトOB2により隠れて見えなくなっている。
 このような場合、例えば主画像のテクスチャ情報はオブジェクトOB1乃至オブジェクトOB3がある状態で、原点Oを視点位置として撮影された画像とされる。
 したがって、得られた主画像のテクスチャ情報では、オブジェクトOB1乃至オブジェクトOB3が被写体として写ってはいるが、オブジェクトOB2の一部の領域と、オブジェクトOB3の一部の領域は隠れて見えない状態となっている。
 また、原点Oを原点O’として、オブジェクトOB1がない状態で撮影して得られる画像をオクルージョン画像1のテクスチャ情報とするものとする。
 この場合、オクルージョン画像1のテクスチャ情報では、オブジェクトOB1は被写体として写っておらず、オブジェクトOB2の全領域と、オブジェクトOB3の一部の領域とが見えている状態となっている。すなわち、オブジェクトOB3の一部の領域はオブジェクトOB2に隠れて見えない状態となっている。
 このようなオクルージョン画像1のテクスチャ情報には、主画像のテクスチャ情報には含まれていない、オブジェクトOB2の一部の領域の情報がオクルージョン領域の情報として含まれている。
 さらに、原点Oを原点O’として、オブジェクトOB1およびオブジェクトOB2がない状態で撮影して得られる画像をオクルージョン画像2のテクスチャ情報とするものとする。
 この場合、オクルージョン画像2のテクスチャ情報では、オブジェクトOB1およびオブジェクトOB2は被写体として写っておらず、オブジェクトOB3の全領域が見えている状態となっている。
 このようなオクルージョン画像2のテクスチャ情報には、主画像やオクルージョン画像1のテクスチャ情報には含まれていない、オブジェクトOB3の一部の領域の情報がオクルージョン領域の情報として含まれている。
 なお、より詳細には、これらのオクルージョン画像1やオクルージョン画像2のテクスチャ情報は、原点Oや、原点Oとは異なる他の位置など、互いに異なる複数の位置を視点としてオブジェクトOB1乃至オブジェクトOB3を撮影して得られた画像に基づいて生成される。つまり、互いに視点位置の異なる複数の画像に基づいてオクルージョン画像のテクスチャ情報が生成される。
 ところで、オクルージョン画像は、1つの主画像に対して複数ある場合もある。
 そのような例としては、例えば全天球座標系における主画像の原点Oとは異なる複数の位置のそれぞれを原点O’としたオクルージョン画像のそれぞれが存在する場合が考えられる。この場合、それらの複数のオクルージョン画像には、例えば主画像では被写体として見えていない領域の情報が含まれている。
 また、1つの主画像に対して複数のオクルージョン画像がある他の例としては、全天球座標系における同じ位置を原点O’とする複数のオクルージョン画像が存在する場合が考えられる。
 すなわち、例えば主画像の原点Oの位置を原点O’とするオクルージョン画像が複数あり、それらのオクルージョン画像には、主画像でオクルージョン領域となっている領域の情報が含まれている場合が考えられる。このとき、例えば図2を参照して説明したように、あるオクルージョン画像には、他のオクルージョン画像においてオクルージョン領域となっている領域の情報が含まれているものもある。
 主画像に対して複数のオクルージョン画像が存在する場合、例えば以下のようなユースケースで運用することが想定される。
 ユースケースU1
 主画像の原点Oの位置を原点O’とするオクルージョン画像のみが存在する場合
 ユースケースU2
 主画像の原点O以外の位置を原点O’とするオクルージョン画像が複数存在し、各オクルージョン画像の原点O’は互いに異なる位置となっている場合
 ユースケースU3
 主画像の原点Oの位置を原点O’とするオクルージョン画像と、原点O以外の位置を原点O’とするオクルージョン画像とが存在し、原点Oの位置にのみ複数のオクルージョン画像が存在する場合
 ユースケースU4
 主画像の原点Oの位置を原点O’とするオクルージョン画像と、原点O以外の位置を原点O’とするオクルージョン画像とが存在し、原点Oの位置および原点Oとは異なる位置に、それぞれ複数のオクルージョン画像が存在する場合
 例えばユースケースU1では、原点O以外の位置にはオクルージョン画像が存在せず、原点Oの位置には複数のオクルージョン画像があってもよい。また、ユースケースU2では、原点Oの位置にはオクルージョン画像は存在していない。
 さらに、例えばユースケースU3は、ユースケースU1とユースケースU2を組み合わせたユースケースとなっている。
 これらのユースケースU1乃至ユースケースU4の例として、例えば図3に示す例が考えられる。なお、図3においてx軸、y軸、およびz軸は全天球座標系の軸を示している。また、ここでは図示されていないが全天球座標系の原点Oには主画像が存在している。
 さらに、図3における円「○」は、その円の位置を視点位置(原点O’)とする1つのオクルージョン画像が存在することを表しており、二重の円「◎」は、その二重の円の位置を原点O’とする2つのオクルージョン画像が存在することを表している。
 例えば矢印A21に示す例では、主画像が存在する原点Oの位置に2つのオクルージョン画像が存在しており、この例は上述したユースケースU1となっている。
 また、矢印A22に示す例では、原点Oとは異なる複数の各位置に1つのオクルージョン画像が存在しており、この例はユースケースU2となっている。特に、ここでは、x軸、y軸、およびz軸の各軸上の複数の位置にオクルージョン画像が存在している。
 矢印A23に示す例では、原点Oの位置に2つのオクルージョン画像が存在しており、原点Oとは異なるx軸、y軸、およびz軸の各軸上の複数の各位置に1つのオクルージョン画像が存在している。つまり、矢印A23に示す例では矢印A21に示した例のオクルージョン画像と、矢印A22に示した例のオクルージョン画像との両方が存在しており、この例はユースケースU3となっている。
 矢印A24に示す例では、原点Oの位置に2つのオクルージョン画像が存在しており、原点Oとは異なるx軸、y軸、およびz軸の各軸上の複数の位置のそれぞれにも2つのオクルージョン画像が存在している。矢印A24に示す例はユースケースU4となっている。
 いま、MPEG-DASHを用いて主画像とオクルージョン画像をクライアント装置に配信する場合について考える。
 具体例として、例えば上述したユースケースU1において、原点Oに2つのオクルージョン画像が存在している場合について考え、原点Oを視点位置である原点O’とするオクルージョン画像1およびオクルージョン画像2があるとする。
 ここで、オクルージョン画像1は、主画像でオクルージョン領域となっている領域の情報が含まれている画像情報である。また、オクルージョン画像2は、主画像でオクルージョン領域となっており、さらにオクルージョン画像1でもオクルージョン領域となっている領域の情報が含まれる画像情報である。
 上述したように主画像は、その主画像のテクスチャ情報とデプス情報からなり、同様にオクルージョン画像1およびオクルージョン画像2も、それらのオクルージョン画像のテクスチャ情報およびデプス情報からなる。
 このようなオクルージョン画像1およびオクルージョン画像2がある主画像を得るためのファイル、つまり主画像のメタデータを含むMPDファイルは、例えば図4に示すようになる。
 図4はユースケースU1における例を示しており、図4では矢印Q11に示す部分には主画像のテクスチャ情報(texture情報)に関する情報が記述されており、矢印Q12に示す部分には主画像のデプス情報(depth情報)に関する情報が記述されている。
 また、矢印Q13に示す部分にはオクルージョン画像1のテクスチャ情報に関する情報が記述されており、矢印Q14に示す部分にはオクルージョン画像1のデプス情報に関する情報が記述されている。
 さらに、矢印Q15に示す部分にはオクルージョン画像2のテクスチャ情報に関する情報が記述されており、矢印Q16に示す部分にはオクルージョン画像2のデプス情報に関する情報が記述されている。
 矢印Q11乃至矢印Q16のそれぞれにより示される部分は、1つのAdaptationSetとなっている。
 例えば矢印Q11に示す部分では、主画像のテクスチャ情報のRepresentationのidとして「vt1」が記述されている。
 同様に矢印Q13に示す部分ではオクルージョン画像1のテクスチャ情報のRepresentationのidとして「vot1」が記述されており、矢印Q15に示す部分ではオクルージョン画像2のテクスチャ情報のRepresentationのidとして「vot2」が記述されている。
 また、デプス情報に関する部分である矢印Q12に示す部分や、矢印Q14に示す部分、矢印Q16に示す部分ではMPEG-DASHのEssentialPropertyにおいてschemeIdUriの部分が「schemeIdUri=“urn:mpeg:dash:depth:2015”」とされている。
 すなわち主画像、オクルージョン画像1、およびオクルージョン画像2のそれぞれのデプス情報のAdaptationSetにおいてschemeIdUriが「urn:mpeg:dash:depth:2015」に設定されている。これらのschemeIdUriの記述により、矢印Q12に示す部分や矢印Q14に示す部分、矢印Q16に示す部分がデプス情報に関する記述であることが特定できるようになっている。
 また、デプス情報のRepresentationには、associationIdが用いられてデプス情報に対応するテクスチャ情報のidが記述されており、これによりデプス情報がどのテクスチャ情報に対応するものであるかが特定できるようになされている。
 例えば矢印Q12に示す部分では「associationId=“vt1”」が記述されており、矢印Q11に示した部分の主画像のテクスチャ情報と、矢印Q12に示した部分の主画像のデプス情報との関係(関連)が示されている。
 同様に、例えば矢印Q14に示す部分には、矢印Q13に示す部分に記述されたid「vot1」が用いられて「associationId=“vot1”」が記述されており、矢印Q16に示す部分には、矢印Q15に示す部分に記述されたid「vot2」が用いられて「associationId=“vot2”」が記述されている。
 これにより主画像、オクルージョン画像1、およびオクルージョン画像2について、テクスチャ情報とデプス情報を正しく特定することができる。
 さらに、オクルージョン画像に関するテクスチャ情報であるかは、例えば矢印Q13に示す部分や矢印Q15に示す部分に記述されているように、EssentialPropertyにおいてschemeIdUriの部分を「“urn:mpeg:dash:occlusion:2015”」とすることで判別可能とされている。
 すなわちオクルージョン画像1およびオクルージョン画像2のそれぞれのテクスチャ情報のAdaptationSetにおいてschemeIdUriが「urn:mpeg:dash:occlusion:2015」に設定されている。これらのschemeIdUriの記述により、矢印Q13に示す部分や矢印Q15に示す部分がオクルージョン画像のテクスチャ情報に関する記述であると特定することができる。
 以上のようなオクルージョン画像に関する情報を含むMPDファイルを用いれば、MPEG-DASHのクライアント装置では、以下のような実装が可能である。すなわち、以下の処理TR1乃至処理TR3の実行が可能である。
 処理TR1
 主画像、オクルージョン画像1、およびオクルージョン画像2を全て取得して全天球画像の再生を行う
 処理TR2
 主画像のテクスチャ情報とデプス情報のみを取得して全天球画像の再生を行う
 処理TR3
 主画像のテクスチャ情報のみを取得して全天球画像の再生を行う
 この場合、例えば処理TR2では、主画像のデプス情報が取得されるので立体視や運動視差を実現することはできるが、オクルージョン画像は取得されないため、覗き込みの表示を行ったときにオクルージョンの領域を正しく表示することができない。
 また、処理TR3では、主画像のデプス情報が取得されないため、立体視や運動視差を実現することができない。
 クライアント装置は、自身と主画像等を配信するサーバとの間の伝送帯域が十分ではなく、サーバから主画像、オクルージョン画像1、およびオクルージョン画像2を全て取得することができない場合、処理TR2または処理TR3の何れかを選択することになる。
 具体的には、クライアント装置は、まず伝送帯域を計測するとともにサーバから取得する情報として主画像のテクスチャ情報を選択する。
 次に、クライアント装置は、伝送帯域の計測結果に基づいて主画像のデプス情報を取得する伝送帯域があるときには、主画像のデプス情報も取得する情報として選択する。
 これに対して、クライアント装置は、伝送帯域が十分でないときには主画像のテクスチャ情報のみを取得することとする。
 また、クライアント装置は、取得する情報として主画像のテクスチャ情報とデプス情報を選択した場合、伝送帯域の計測結果に基づいて、オクルージョン画像1とオクルージョン画像2を取得するのに十分な伝送帯域があるか否かを判定する。
 そして、十分な伝送帯域があると判定された場合には、クライアント装置は取得する情報として主画像、オクルージョン画像1、およびオクルージョン画像2の各画像のテクスチャ情報とデプス情報をサーバから取得する情報として選択する。
 また、十分な伝送帯域がないと判定された場合には、クライアント装置は取得する情報として主画像のテクスチャ情報とデプス情報をサーバから取得する情報として選択する。
 このようにしてサーバから取得される情報が選択されると、クライアント装置は、選択した情報をサーバから取得して全天球画像の再生を行う。これにより、結果として上述した処理TR1乃至処理TR3の何れかが行われることになる。
 特に、オクルージョン画像1およびオクルージョン画像2を取得するのに十分な伝送帯域がない場合には、処理TR2または処理TR3の何れかが行われる。
 しかしながら、伝送帯域によっては、主画像に加えてオクルージョン画像1またはオクルージョン画像2の何れか一方を伝送することが可能な場合もある。
 また、全天球画像の再生時には、複数のオクルージョン画像のうちの一部のオクルージョン画像だけを利用することが可能である。
 例えば、複数のオクルージョン画像のうちの一部のオクルージョン画像に全天球画像の表示に必要なオクルージョン領域の情報が含まれていれば、その必要なオクルージョン領域の情報が含まれているオクルージョン画像のみを利用すればよい。
 したがって、複数のオクルージョン画像のうちの一部のオクルージョン画像のみを選択的に取得して利用することは有用である。
 この例では、オクルージョン画像2には、オクルージョン画像1にも含まれていないオクルージョン領域の情報が含まれているため、オクルージョン画像1とオクルージョン画像2とでは、オクルージョン画像1の方がより利用価値が高くなっている。
 すなわち、例えばここでいうオクルージョン画像1が図2を参照して説明したオクルージョン画像1であり、オクルージョン画像2が図2を参照して説明したオクルージョン画像2であるとする。
 この例では、オクルージョン画像1には、オクルージョン画像2における場合よりも、より手前側(原点O側)にある被写体(オブジェクトOB2)のオクルージョン領域の情報が含まれている。そのため、全天球画像再生時にはオクルージョン画像2よりもオクルージョン画像1を先に利用するのが効果的であるといえる。換言すれば、2つのオクルージョン画像のうち、オクルージョン画像2よりもオクルージョン画像1が取得(利用)するのにより適切なオクルージョン画像であるといえる。
 しかし、クライアント装置では、オクルージョン画像1とオクルージョン画像2のうちの何れのオクルージョン画像がより適切なもの、つまりより優先度の高いものであるのかを選択(特定)することが困難である。これは、現状ではクライアント装置では、適切なオクルージョン画像を選択するための情報を得ることができないからである。
 以上において説明したユースケースU1だけでなく、ユースケースU2やユースケースU3、ユースケースU4においても同様に、オクルージョン画像が多数ある場合に、それらのオクルージョン画像のなかから適切な1または複数のオクルージョン画像を選択することは困難である。
 したがって、クライアント装置では、伝送帯域が十分でないときには、適切なオクルージョン画像を得ることができなかった。
 そこで、本技術では、複数のオクルージョン画像のなかから適切な一部のオクルージョン画像を選択して取得することができるようにし、これにより伝送帯域をより効率よく利用することができるようにした。
 具体的には、本技術では、オクルージョン画像を選択するための情報として、全天球座標系におけるオクルージョン画像の視点位置、つまり原点O’の位置を示すオクルージョン座標情報と、オクルージョン画像のデプスレベルを示すデプスレベル情報とを利用するようにした。
 ここで、デプスレベル情報(以下、depth levelとも記す)は、オクルージョン画像のデプス情報により示される原点O’からオクルージョン画像上の被写体までの距離(デプス)に基づく情報である。すなわち、デプスレベル情報は、オクルージョン画像の被写体の奥行き方向の距離(デプス)に関する情報である。
 このようにオクルージョン座標情報とデプスレベル情報を利用すれば、主画像に対して全天球座標系における複数の位置にオクルージョン画像がある場合でも、ユーザの視点位置に応じて、サーバから取得すべき適切なオクルージョン画像を選択することができる。
 具体的には、例えば上述したユースケースU2、つまり例えば図3の矢印A22に示した位置にオクルージョン画像がある場合において、ユーザの視点位置が全天球座標系のx軸上の正の方向の位置にあり、ユーザの視点位置から見た全天球画像を表示するとする。
 このとき、表示用の全天球画像を生成するのに必要なオクルージョン領域の情報は、全天球座標系のx軸上の正の方向の位置にあるオクルージョン画像に含まれている。
 一方で、全天球座標系のx軸上の負の方向の位置にあるオクルージョン画像には、ユーザの視点位置に応じた全天球画像の表示に必要なオクルージョン領域の情報は含まれていない。
 また、全天球座標系のy軸上やz軸上の位置にあるオクルージョン画像には、全天球画像の表示に必要なオクルージョン領域の情報が含まれている可能性はあるが、その情報量はx軸上の正の方向の位置にあるオクルージョン画像に比べると少ないはずである。
 このことから、ユーザの視点位置によって複数のオクルージョン画像のなかから選択すべきオクルージョン画像が異なることが分かる。
 全天球画像の生成に必要となる適切なオクルージョン画像を選択するためには、オクルージョン画像が主画像の位置、つまり原点Oの位置から見てどの位置にあるかが分かることが必要となる。
 各オクルージョン画像の位置(原点O’)が主画像の位置である原点Oから見てどの位置にあるか特定可能な情報としては、上述したオクルージョン座標情報を用いればよい。
 オクルージョン座標情報は、オクルージョン画像の視点位置に関する情報である。例えばオクルージョン座標情報は、全天球座標系における主画像の原点Oの位置の座標を(0,0,0)としたときの各オクルージョン画像の原点O’の位置の座標とされ、各軸方向の座標の単位はメートルなどとされる。
 したがって、例えば全天球座標系において原点Oからx軸の正の方向にXメートルの距離にあり、原点Oからy軸の正の方向にYメートルの距離にあり、原点Oからz軸の正の方向にZメートルの距離にある位置の座標は(X,Y,Z)となる。
 このようなオクルージョン座標情報があれば、ユーザの視点位置とオクルージョン座標情報とから適切なオクルージョン画像を選択することができる。
 すなわち、オクルージョン座標情報に基づいて、複数のオクルージョン画像のなかから、オクルージョン座標情報により示されるオクルージョン画像の視点位置が、ユーザの視点位置に近いものから順番に、取得するオクルージョン画像として選択していけばよい。
 換言すれば、オクルージョン画像の視点位置とユーザの視点位置との間の距離が短い順に、取得するオクルージョン画像として選択していけばよい。
 なお、同じ位置に複数のオクルージョン画像が存在する場合には、オクルージョン画像に含まれるオクルージョン領域の全天球座標系における位置が、主画像の被写体の位置に近いものから順番に選択(利用)すればよい。これは、上述したようにオクルージョン領域の位置が主画像の被写体の位置に近いほど利用価値が高いからである。
 同じ位置を原点O’とする複数のオクルージョン画像のなかから、オクルージョン領域の位置が主画像の被写体の位置により近いオクルージョン画像を選択するためには、デプスレベル情報を利用すればよい。
 デプスレベル情報(depth level)は、オクルージョン画像のデプス情報に基づいて生成される、オクルージョン画像におけるオクルージョン領域のデプス(深さ)に関する情報である。
 ここで、オクルージョン画像におけるオクルージョン領域が原点O’から遠い位置にあるほど、オクルージョン領域の深さ(デプス)が深いということとする。
 この場合、オクルージョン画像のデプスレベル情報は、例えば同じ位置にある複数のオクルージョン画像のうち、そのオクルージョン画像のオクルージョン領域の深さが何番目に浅いかという深さの順番を示す情報などとされる。
 具体的には、例えば同位置にある複数のオクルージョン画像のうち、最もオクルージョン領域の深さが浅い(深くない)オクルージョン画像のdepth levelが1とされ、さらにオクルージョン領域の深さが浅い順にdepth levelが2,3,・・・とされていく。
 デプスレベル情報(depth level)により示される深さの順番の決定時には、オクルージョン画像のテクスチャ情報の所定のフレームにおける各位置のデプス値の合計、すなわち全天球座標系における原点O’からその位置にある被写体までの距離の合計が求められる。
 そして、同位置にある複数のオクルージョン画像のうち、デプス値の合計値が小さいオクルージョン画像ほど、depth levelが小さくなるようになされる。つまり、例えば最もデプス値の合計値が小さいオクルージョン画像のデプスレベル情報(depth level)が1とされる。
 なお、ここでは、各位置におけるデプス値の合計値に基づいてdepth levelを定める例について説明したが、これに限らず各位置におけるデプス値の平均値など、各オクルージョン画像のオクルージョン領域の深さ(デプス)を示す情報に基づいて定めるようにしてもよい。
 例えばオクルージョン画像の各位置におけるデプス値の平均値に基づいてdepth levelが定められる場合には、平均値が小さいオクルージョン画像ほどdepth levelの値が小さくなるように、つまり深さの順番が小さくなるようにすればよい。なお、以下、オクルージョン画像の各位置におけるデプス値の平均値を示す情報をデプス平均値情報とも称する。
 このようなデプスレベル情報(depth level)を用いれば、同じ位置に複数のオクルージョン画像がある場合でも、クライアント装置側において適切なオクルージョン画像を選択することができる。すなわち、同じ位置に複数のオクルージョン画像がある場合、デプスレベル情報の値が小さいものから順番にオクルージョン画像を選択していけばよい。
 以上のようなオクルージョン座標情報とデプスレベル情報があれば、各ユースケースU1乃至ユースケースU4において、適切なオクルージョン画像を選択することができる。
 ここで、MPEG-DASHにおいてオクルージョン座標情報とデプスレベル情報をクライアント装置にシグナリングする方法の例について説明する。
 具体的には、例えばMPDファイルにおいてオクルージョン画像についてオクルージョン座標情報とデプスレベル情報を設定可能とする新たなEssentialPropertyが定義される。
 すなわち、図4に示した例では、オクルージョン画像のテクスチャ情報についてのEssentialPropertyにおいてschemeIdUriの部分が「“urn:mpeg:dash:occlusion:2015”」とされていた。
 これに代えて、本技術ではschemeIdUriの部分が「“urn:mpeg:dash:occlusion:2017”」とされ、schemeIdUriのvalueにオクルージョン座標情報の値(x,y,z)と、デプスレベル情報depth levelの値とが記述される。具体的には、valueの値はコンマで区切られて「“x,y,z,depth level”」とされる。
 したがって、例えばオクルージョン座標情報が(0,0,0)であり、デプスレベル情報depth levelの値が1であるときには、EssentialPropertyの部分は<EssentialProperty schemeIdUri=“urn:mpeg:dash:occlusion:2017” value=“0,0,0,1”>とされる。
 このようにMPDファイルに各オクルージョン画像のオクルージョン座標情報とデプスレベル情報が含まれるようにする場合、例えば図4に示したMPDファイルに対応する、本技術を適用したMPDファイルは図5に示すようになる。なお、図5において図4における場合と対応する部分の説明については繰り返しになるので、適宜、省略する。
 図5に示すMPDファイルは、矢印Q21および矢印Q22に示す部分のみ図4に示したMPDファイルと異なっている。
 すなわち、図5においてオクルージョン画像1のテクスチャ情報のAdaptationSetでは、矢印Q21に示すようにschemeIdUriが「“urn:mpeg:dash:occlusion:2017”」とされており、そのvalueの値が「“0,0,0,1”」とされている。
 このことから、オクルージョン画像1のオクルージョン座標情報が(0,0,0)であり、デプスレベル情報depth levelの値が1であることが分かる。
 同様にオクルージョン画像2のテクスチャ情報のAdaptationSetでは、矢印Q22に示すようにschemeIdUriが「“urn:mpeg:dash:occlusion:2017”」とされており、そのvalueの値が「“0,0,0,2”」とされている。これにより、オクルージョン画像2のオクルージョン座標情報が(0,0,0)であり、デプスレベル情報depth levelの値が2であることが分かる。
 したがって、この例では、主画像に対して2つのオクルージョン画像1およびオクルージョン画像2が存在し、それらのオクルージョン画像の原点O’の位置はともに主画像の位置である原点Oであることが分かる。
 また、伝送帯域の計測の結果、これらのオクルージョン画像1とオクルージョン画像2とのうちの何れか一方しか取得する余裕がない場合には、これらのオクルージョン画像の位置は同じであるので、よりデプスレベル情報の値が小さいオクルージョン画像1を選択すればよい。
 以上のように本技術によれば、MPDファイルで各オクルージョン画像のオクルージョン座標情報とデプスレベル情報をシグナリングすることで、適切なオクルージョン画像を選択することができる。その結果、伝送帯域をより効率よく利用することができる。
〈ファイル生成装置の構成例〉
 続いて、本技術を適用した、より具体的な実施の形態について説明する。
 図6は、本技術を適用したファイル生成装置の一実施の形態の構成例を示す図である。
 図6に示すファイル生成装置11は、制御部21およびファイル生成部22を有している。このファイル生成装置11は、MPEG-DASH等により配信されるコンテンツの動画像のセグメントファイルとMPDファイルを生成してサーバにアップロードする。なお、ここでいうコンテンツの動画像とは、上述した主画像と、その主画像に関するオクルージョン画像とから生成される表示用の全天球画像である。
 制御部21は、ファイル生成装置11全体の動作を制御する。例えば制御部21は、ファイル生成部22を制御して、コンテンツの動画像である全天球画像等が格納されたセグメントファイルや、そのコンテンツのメタデータが含まれるMPDファイルを生成させたり、それらのセグメントファイルやMPDファイルをアップロードさせたりする。
 ファイル生成部22は、制御部21の制御に従ってセグメントファイルやMPDファイルを生成するとともに、それらのセグメントファイルやMPDファイルをネットワークを介してサーバにアップロード(送信)する。
 ファイル生成部22は、データ入力部31、データ符号化・生成部32、MPDファイル生成部33、記録部34、およびアップロード部35を有している。
 データ入力部31は、主画像や、その主画像に関するオクルージョン画像の生成に必要な画像データ、およびオクルージョン座標情報やデプスレベル情報などのMPDファイルの生成に必要なメタデータを取得してデータ符号化・生成部32およびMPDファイル生成部33に供給する。
 データ符号化・生成部32は、データ入力部31から供給された画像データに基づいて、主画像やオクルージョン画像が格納されたセグメントファイルを生成し、記録部34に供給する。
 データ符号化・生成部32は、前処理部41、符号化部42、およびセグメントファイル生成部43を有している。
 前処理部41は、データ入力部31から供給された画像データに基づいて、画像を繋ぎ合わせるステッチ処理を行うことで主画像およびオクルージョン画像を生成し、符号化部42に供給する。符号化部42は、前処理部41から供給された主画像およびオクルージョン画像を符号化し、得られた符号化データをセグメントファイル生成部43に供給する。
 セグメントファイル生成部43は、データ入力部31から供給されたメタデータ等に基づいて、符号化部42から供給された符号化データをセグメント単位でファイル化し、その結果得られたセグメントファイルを記録部34に供給する。これにより、主画像のテクスチャ情報の符号化データが格納されたセグメントファイルや、主画像のデプス情報の符号化データが格納されたセグメントファイル、オクルージョン画像の符号化データが格納されたセグメントファイルが得られる。
 MPDファイル生成部33は、データ入力部31から供給されたメタデータに基づいて、主画像やオクルージョン画像に関する情報が含まれるMPDファイルを生成し、記録部34に供給する。なお、MPDファイル生成部33は、MPDファイルの生成に必要なメタデータをセグメントファイル生成部43から取得するようにしてもよい。
 記録部34は、MPDファイル生成部33から供給されたMPDファイル、およびセグメントファイル生成部43から供給されたセグメントファイルを記録する。
 アップロード部35は、記録部34からコンテンツのMPDファイルおよびセグメントファイルを読み出してサーバにアップロードする。すなわち、アップロード部35はMPDファイルおよびセグメントファイルをサーバに送信する通信部として機能する。
 なお、ここではファイル生成装置11は、MPDファイルおよびセグメントファイルをサーバにアップロードする装置として機能する例について説明するが、ファイル生成装置11がサーバとして機能してもよい。そのような場合、ファイル生成装置11のアップロード部35は、ネットワークを介してMPDファイルおよびセグメントファイルをクライアント装置に送信する。
〈アップロード処理の説明〉
 次に、ファイル生成装置11の動作について説明する。すなわち、以下、図7のフローチャートを参照して、ファイル生成装置11によるアップロード処理について説明する。
 ステップS11において、データ入力部31は、主画像やオクルージョン画像の生成に必要な画像データと、オクルージョン座標情報やデプスレベル情報などのメタデータとを取得して前処理部41、セグメントファイル生成部43、およびMPDファイル生成部33に供給する。
 ステップS12において、データ符号化・生成部32はセグメントファイルを生成する。
 すなわち、前処理部41は、データ入力部31から供給された画像データに基づいてステッチ処理を行うことで主画像およびオクルージョン画像を生成し、符号化部42に供給する。符号化部42は、前処理部41から供給された主画像およびオクルージョン画像を符号化し、得られた符号化データをセグメントファイル生成部43に供給する。
 セグメントファイル生成部43は、データ入力部31から供給されたメタデータ等に基づいて、符号化部42から供給された符号化データをファイル化し、その結果得られたセグメントファイルを記録部34に供給する。
 ステップS13において、MPDファイル生成部33は、データ入力部31から供給されたメタデータに基づいてMPDファイルを生成し、記録部34に供給する。
 ここで、MPDファイルにはオクルージョン画像ごとにオクルージョン座標情報およびデプスレベル情報が含まれている。具体的には、例えば図5に示したMPDファイルが生成される。
 ステップS14において、記録部34は、MPDファイル生成部33から供給されたMPDファイル、およびセグメントファイル生成部43から供給されたセグメントファイルを記録する。
 ステップS15において、アップロード部35は、任意のタイミングで記録部34からMPDファイルおよびセグメントファイルを読み出してサーバにアップロードし、アップロード処理は終了する。
 なお、MPDファイルおよびセグメントファイルのアップロードのタイミングは、それらのMPDファイルおよびセグメントファイルが記録部34に記録された後であれば、どのようなタイミングであってもよい。
 以上のようにしてファイル生成装置11は、MPDファイルおよびセグメントファイルを生成し、アップロードする。
 特に、ファイル生成装置11では、オクルージョン画像ごとのオクルージョン座標情報およびデプスレベル情報が含まれるMPDファイルが生成される。このようにすることで、クライアント装置では、MPDファイルに含まれるオクルージョン座標情報およびデプスレベル情報を用いて、適切なオクルージョン画像を選択して取得することができる。
〈クライアント装置の構成例〉
 続いて、ファイル生成装置11によりアップロードされたMPDファイルやセグメントファイルをサーバから取得してコンテンツの再生を行うクライアント装置について説明する。本技術を適用したクライアント装置は、例えば図8に示すように構成される。
 図8のクライアント装置71は、制御部81および再生処理部82を有している。
 制御部81は、クライアント装置71全体の動作を制御する。例えば制御部81は、再生処理部82を制御して、サーバからMPDファイルやセグメントファイルを取得させるとともに、セグメントファイルに基づいてコンテンツの動画像である全天球画像を再生させる。
 再生処理部82は制御部81の制御に従って全天球画像を再生する。再生処理部82は計測部91、MPDファイル取得部92、MPDファイル処理部93、セグメントファイル取得部94、表示制御部95、データ解析・復号部96、および表示部97を有している。
 計測部91は、クライアント装置71とサーバとの間のネットワークの伝送帯域を計測し、その計測結果をMPDファイル処理部93に供給する。MPDファイル取得部92は、サーバからMPDファイルを取得してMPDファイル処理部93に供給する。
 MPDファイル処理部93は、計測部91から供給された計測結果と、MPDファイル取得部92から供給されたMPDファイルと、表示制御部95から供給されたユーザの視点位置とに基づいて、主画像のテクスチャ情報、主画像のデプス情報、および1または複数のオクルージョン画像のうちの取得する情報を選択し、その選択結果をセグメントファイル取得部94に供給する。
 より具体的には、MPDファイル処理部93は、オクルージョン画像については、MPDファイルおよびユーザの視点位置から得られる選択順リストと、伝送帯域の計測結果とに基づいて、伝送帯域に応じた個数のオクルージョン画像を取得するオクルージョン画像として選択する。なお、選択順リストについては後述する。
 セグメントファイル取得部94は、MPDファイル処理部93から供給された選択結果に基づいて、コンテンツ再生に必要な主画像やオクルージョン画像などの情報が格納されたセグメントファイルをサーバから取得し、データ解析・復号部96に供給する。
 表示制御部95は、コンテンツの動画像である全天球画像の再生(表示)を制御する。例えば表示制御部95は、全天球画像を視聴するユーザの視点位置や視線方向の検出結果を取得し、MPDファイル処理部93およびデータ解析・復号部96に供給する。
 データ解析・復号部96は、セグメントファイル取得部94から供給されたセグメントファイルに基づいて、コンテンツの動画像、つまり再生用(表示用)の全天球画像を生成し、表示部97に供給する。
 データ解析・復号部96はセグメントファイル処理部111、復号部112、および表示情報生成部113を有している。
 セグメントファイル処理部111は、セグメントファイル取得部94から供給されたセグメントファイルから主画像やオクルージョン画像の符号化データを抽出し、復号部112に供給する。復号部112は、セグメントファイル処理部111から供給された符号化データを復号し、その結果得られた主画像やオクルージョン画像を表示情報生成部113に供給する。
 表示情報生成部113は、表示制御部95から供給されたユーザの視点位置や視線方向の検出結果と、復号部112から供給された主画像やオクルージョン画像とに基づいて、ユーザの視点位置および視線方向に応じた表示用の全天球画像、より詳細には全天球画像の画像データを生成し、表示部97に供給する。
 表示部97は、例えば液晶表示パネルなどからなり、表示情報生成部113から供給された全天球画像を表示(再生)する。
〈選択順リスト生成処理の説明〉
 次に、クライアント装置71の動作について説明する。
 まず、図9のフローチャートを参照して、クライアント装置71により行われる、選択順リスト生成処理について説明する。
 ステップS41において、MPDファイル取得部92は、サーバからMPDファイルを取得してMPDファイル処理部93に供給する。すなわち、サーバにより送信されたMPDファイルがMPDファイル取得部92により受信される。
 ステップS42においてMPDファイル処理部93は、選択順リストを初期化する。
 クライアント装置71では、主画像に対して複数のオクルージョン画像がある場合、各オクルージョン画像の優先順位、つまり取得すべきものとして選択する順番(以下、選択順とも称する)を示す選択順リストが生成され、その選択順リストに従って取得するオクルージョン画像が選択される。
 選択順リストでは、各オクルージョン画像を示す情報が優先順位の高い順に上から下まで並べられている。したがって、例えば選択順リストの1番目、つまり1番上にあるオクルージョン画像は最も優先順位が高く、取得されるものとして最初に選択されるべきオクルージョン画像となる。
 ステップS42では、このような選択順リストに含まれているオクルージョン画像を示す情報を消去することで、選択順リストの初期化が行われる。
 ステップS43において、MPDファイル処理部93は、表示制御部95からユーザの視点位置を取得する。
 例えば表示制御部95は、図示せぬセンサ等から、ユーザの視点位置および視線方向の検出結果を取得して、MPDファイル処理部93および表示情報生成部113に供給する。MPDファイル処理部93は、このようにして表示制御部95から出力された情報を取得することで、ユーザの視点位置を得る。例えばユーザの視点位置は、全天球座標系におけるユーザの視点位置の座標情報などとされる。
 ステップS44において、MPDファイル処理部93は、MPDファイル取得部92から供給されたMPDファイルに基づいて、まだ処理していないオクルージョン画像があるか否かを判定する。
 例えばMPDファイルでは、AdaptationSetにおけるEssentialPropertyのschemeIdUriが「“urn:mpeg:dash:occlusion:2017”」とされているものがあれば、そのAdaptationSetはオクルージョン画像のテクスチャ情報に関するものであると特定できる。
 MPDファイル処理部93は、MPDファイル内にまだ処理対象としていないオクルージョン画像のテクスチャ情報のAdaptationSetがある場合、ステップS44において処理していないオクルージョン画像があると判定する。
 ステップS44において処理していないオクルージョン画像があると判定された場合、MPDファイル処理部93は、まだ処理していないオクルージョン画像を新たな処理対象のオクルージョン画像として、処理はステップS45へと進む。
 ステップS45において、MPDファイル処理部93は、処理対象としたオクルージョン画像の位置(原点O’)と、ステップS43で取得されたユーザの視点位置との間の距離を算出する。
 ここで、オクルージョン画像の位置、つまりオクルージョン座標情報はMPDファイル内におけるそのオクルージョン画像のテクスチャ情報のAdaptationSetにあるEssentialPropertyのschemeIdUriのvalueの値から得ることができる。
 MPDファイル処理部93は、このようにして得られたオクルージョン座標情報と、ユーザの視点位置とに基づいて、全天球座標系上におけるユーザの視点位置からオクルージョン画像の位置までの距離を算出する。
 ステップS46において、MPDファイル処理部93はステップS45の処理で得られた距離と、オクルージョン画像のデプスレベル情報とに基づいて選択順リストを更新する。
 すなわち、MPDファイル処理部93は選択順リストにおいて、各オクルージョン画像を示す情報がステップS45で算出された距離が小さい(短い)順に並ぶように、新たに処理対象としたオクルージョン画像を示す情報を選択順リストに追加する。これにより、ステップS45で算出された距離が小さいオクルージョン画像ほど、選択順が小さく(優先順位が高く)なる。
 このとき、ステップS45で算出された距離が同じであるオクルージョン画像が複数ある場合には、選択順リストにおいて、それらのオクルージョン画像がデプスレベル情報depth levelの値が小さい順に並ぶように選択順リストが更新される。つまり、デプスレベル情報depth levelの値が小さいオクルージョン画像ほど、選択順が小さく(優先順位が高く)なるようにされる。
 なお、オクルージョン画像のデプスレベル情報は、オクルージョン座標情報と同様に、オクルージョン画像のテクスチャ情報のAdaptationSetにあるEssentialPropertyのschemeIdUriのvalueの値から得ることができる。
 このようにして選択順リストが更新されると、その後、処理はステップS44に戻り、上述した処理が繰り返し行われる。
 以上のステップS44乃至ステップS46では、オクルージョン画像の視点位置に関する情報であるオクルージョン座標情報と、オクルージョン画像のデプスに関する情報であるデプスレベル情報とに基づいて選択順リストが生成される。換言すれば、取得すべきオクルージョン画像が選択される。
 また、ステップS44において、処理していないオクルージョン画像がない、つまり全てのオクルージョン画像を処理したと判定された場合、MPDファイルにより示される全てのオクルージョン画像の情報を含む選択順リストが得られた(生成された)ので、選択順リスト生成処理は終了する。
 以上のようにしてクライアント装置71は、MPDファイルとユーザの視点位置とから、より優先度の高い、つまりより適切なオクルージョン画像を順番に選択するための選択順リストを生成する。このようにして選択順リストを生成することで、クライアント装置71は、伝送帯域が十分でない場合でも適切なオクルージョン画像を選択して取得することができるようになる。
〈ファイル取得処理の説明〉
 また、選択順リストが生成されると、クライアント装置71は、得られた選択順リストに基づいてオクルージョン画像を選択し、選択したオクルージョン画像や主画像を取得するファイル取得処理を行う。以下、図10のフローチャートを参照して、クライアント装置71によるファイル取得処理について説明する。
 ステップS71において、計測部91はクライアント装置71とサーバとの間の伝送帯域を計測し、その計測結果をMPDファイル処理部93に供給する。
 ステップS72において、MPDファイル処理部93は、図9のステップS41の処理で取得されたMPDファイルにより示される主画像のテクスチャ情報を、取得する情報として選択する。
 ステップS73において、MPDファイル処理部93はステップS71で得られ、計測部91から供給された伝送帯域の計測結果に基づいて、主画像のデプス情報を取得する帯域があるか否かを判定する。
 ステップS73において主画像のデプス情報を取得する帯域がない、つまり伝送帯域が十分でないと判定された場合、その後、処理はステップS74へと進む。
 この場合、MPDファイル処理部93は取得する情報の選択結果として、主画像のテクスチャ情報のみを示す選択結果をセグメントファイル取得部94に供給し、セグメントファイルの取得を指示する。
 すると、ステップS74において、セグメントファイル取得部94は、MPDファイル処理部93から供給された選択結果に基づいて、サーバから主画像のテクスチャ情報のみを取得する。
 すなわち、セグメントファイル取得部94は、MPDファイル処理部93から供給された選択結果に従って、主画像のテクスチャ情報が格納されたセグメントファイルの送信をサーバに要求する。そして、セグメントファイル取得部94は、その要求に応じてサーバから送信されてきたセグメントファイルを受信してセグメントファイル処理部111に供給し、ファイル取得処理は終了する。
 これに対して、ステップS73において主画像のデプス情報を取得する帯域があると判定された場合、その後、処理はステップS75へと進む。
 ステップS75において、MPDファイル処理部93は、図9のステップS41の処理で取得されたMPDファイルにより示される主画像のデプス情報を、取得する情報として選択する。
 ステップS76において、MPDファイル処理部93は処理対象のオクルージョン画像を示すカウンタi=1とする。すなわち、カウンタiの値が1とされる。
 ここで、カウンタiにより示されるオクルージョン画像は、図9を参照して説明した選択順リストのi番目、つまり上からi番目のオクルージョン画像である。換言すれば、カウンタiにより示されるオクルージョン画像は、選択順リストにおいて選択順(優先順位)がi番目であるオクルージョン画像である。
 ステップS77において、MPDファイル処理部93は、ステップS71で得られた伝送帯域の計測結果に基づいて、i番目のオクルージョン画像を取得するか否かを判定する。
 例えば伝送帯域の計測結果から、主画像のテクスチャ情報およびデプス情報を取得しても、まだi番目のオクルージョン画像を取得する帯域の余裕がある場合、i番目のオクルージョン画像を取得すると判定される。
 また、例えばi番目のオクルージョン画像が選択順リストにない場合、つまり既に選択順リストに含まれる全てのオクルージョン画像について処理が行われた場合、i番目のオクルージョン画像を取得しないと判定される。
 ステップS77においてi番目のオクルージョン画像を取得すると判定された場合、ステップS78において、MPDファイル処理部93は、i番目のオクルージョン画像を取得する情報として選択する。
 ステップS79においてMPDファイル処理部93は、カウンタiの値を1だけインクリメントする。
 ステップS79の処理が行われると、その後、処理はステップS77に戻り、上述した処理が繰り返し行われる。
 以上のステップS77乃至ステップS79の処理により、伝送帯域に応じた個数のオクルージョン画像が、取得するオクルージョン画像として選択されることになる。つまり、伝送帯域により定まる取得可能な個数だけ、優先順位が高いものから順番にオクルージョン画像が選択されていく。
 また、ステップS77において、i番目のオクルージョン画像を取得しないと判定された場合、全てのオクルージョン画像が選択されたか、または伝送帯域にオクルージョン画像を取得するだけの余裕がなくなったので、その後、処理はステップS80へと進む。
 この場合、MPDファイル処理部93は取得する情報の選択結果として、主画像のテクスチャ情報およびデプス情報と、ステップS78で選択されたオクルージョン画像とを示す選択結果をセグメントファイル取得部94に供給し、セグメントファイルの取得を指示する。なお、ステップS77で1番目のオクルージョン画像を取得しない、つまりオクルージョン画像は1つも取得しないとされた場合には、主画像のテクスチャ情報およびデプス情報を示す選択結果がセグメントファイル取得部94に供給される。
 ステップS80において、セグメントファイル取得部94は、MPDファイル処理部93から供給された選択結果に基づいて、サーバから主画像と選択したオクルージョン画像を取得する。
 すなわち、セグメントファイル取得部94は、MPDファイル処理部93から供給された選択結果に従って主画像のテクスチャ情報が格納されたセグメントファイル、および主画像のデプス情報が格納されたセグメントファイルの送信をサーバに要求する。また、セグメントファイル取得部94は、ステップS78でオクルージョン画像が選択された場合には、選択されたオクルージョン画像が格納されたセグメントファイルの送信もサーバに要求する。
 そして、セグメントファイル取得部94は、その要求に応じてサーバから送信されてきたセグメントファイルを受信してセグメントファイル処理部111に供給し、ファイル取得処理は終了する。
 以上のようにしてクライアント装置71は、伝送帯域の計測結果と選択順リストとに基づいて適切なオクルージョン画像を選択し、選択したオクルージョン画像をサーバから取得する。これにより、全てのオクルージョン画像を取得するには伝送帯域が十分でないときであっても、全天球画像の再生に必要となる適切なオクルージョン画像を取得することができ、伝送帯域を効率よく利用することができる。
 なお、以上においては選択順リストを用いて、取得するオクルージョン画像を選択する例について説明したが、特に選択順リストを生成しなくても取得対象とする適切なオクルージョン画像を選択することが可能である。
 そのような場合、MPDファイル処理部93は、伝送帯域の計測結果、ユーザの視点位置、オクルージョン座標情報、およびデプスレベル情報に基づいて、取得するオクルージョン画像を伝送帯域に応じた個数だけ順番に選択していけばよい。
 その際、どのオクルージョン画像を選択するかについては、選択順リストを利用する場合と同様に、視点位置(原点O’)がユーザの視点位置に近いオクルージョン画像から順番に選択すればよい。また、同じ位置に複数のオクルージョン画像があるときには、デプスレベル情報の値が小さい順にオクルージョン画像を選択すればよい。
 以上において説明した選択順リストを生成する手法は、ユーザによる微小な視点位置の移動があった場合、つまり覗き込みの表示を行う場合にオクルージョン画像の選択順を決めるのに特に有用である。
 また、この手法は、覗き込みの表示を行わない場合、つまりユーザの視点位置が原点Oにある場合に、伝送帯域に余裕があるときに原点O近傍にあるオクルージョン画像を取得しておく先読みにも有用である。
 この場合、図9を参照して説明した選択順リスト生成処理が行われるが、ステップS43ではユーザの視点位置として(0,0,0)が取得されることになる。このような先読みを行うことで、その後、ユーザによる覗き込み、つまり視点位置の移動が生じたときに、取得しておいたオクルージョン画像を用いて直ちに覗き込みの表示を行うことができる。
〈再生処理の説明〉
 以上のようにしてサーバからセグメントファイルが取得されると、クライアント装置71は、取得されたセグメントファイルに基づいて全天球画像を再生する再生処理を行う。以下、図11のフローチャートを参照して、クライアント装置71により行われる再生処理について説明する。
 ステップS111において、セグメントファイル処理部111は、セグメントファイル取得部94から供給されたセグメントファイルから主画像やオクルージョン画像の符号化データを抽出し、復号部112に供給する。
 ステップS112において、復号部112は、セグメントファイル処理部111から供給された符号化データを復号し、その結果得られた主画像やオクルージョン画像を表示情報生成部113に供給する。
 ステップS113において、表示情報生成部113は、表示制御部95から供給されたユーザの視点位置や視線方向の検出結果と、復号部112から供給された主画像やオクルージョン画像に基づいて、ユーザの視点位置および視線方向に応じた表示用の全天球画像を生成し、表示部97に供給する。
 例えば図10に示したファイル取得処理においてステップS74の処理が行われた場合には、ステップS111では主画像のテクスチャ情報のみが得られるので、ステップS113では主画像のテクスチャ情報のみが用いられて表示用の全天球画像が生成される。
 また、例えば図10に示したファイル取得処理のステップS80で、主画像のテクスチャ情報とデプス情報のセグメントファイルのみが取得された場合、ステップS111では主画像のテクスチャ情報とデプス情報のみが得られる。そのため、ステップS113では主画像のテクスチャ情報とデプス情報のみが用いられて表示用の全天球画像が生成される。
 さらに、例えば図10に示したファイル取得処理のステップS80で、主画像のテクスチャ情報、主画像のデプス情報、およびオクルージョン画像の各セグメントファイルが取得された場合、ステップS111では主画像のテクスチャ情報およびデプス情報と、オクルージョン画像とが得られる。そのため、ステップS113では主画像とオクルージョン画像とが用いられて表示用の全天球画像が生成される。
 ステップS114において、表示部97は、表示情報生成部113から供給された表示用の全天球画像を表示(再生)して、再生処理は終了する。
 以上のようにしてクライアント装置71は、取得したセグメントファイルに基づいて表示用の全天球画像を生成し、再生する。これにより、オクルージョン画像が得られたときには、ユーザの視点位置が移動しても主画像に対してオクルージョンとなる領域も表示される高品質な全天球画像を表示することができる。
 以上のように本技術は、オクルージョン画像が複数ある場合で、伝送帯域が限られているときに一部の適切なオクルージョン画像を選択的に取得するのに有用である。
 特に第1の実施の形態で説明した手法では、上述のユースケースU1乃至ユースケースU4の全ての場合に、適切なオクルージョン画像を選択できるようにサーバからクライアント装置71に対してオクルージョン座標情報とデプスレベル情報がシグナリングされる。
 この手法では、どのユースケースでもユーザの視点位置が原点Oにある場合、つまり覗き込みをしていない場合には、主画像の原点Oから近い位置にあるオクルージョン画像を選択しておくことで、ユーザの視点位置の移動に直ちに表示を追従させることができる。
 また、ユーザの視点位置が原点O以外の位置である場合、つまり覗き込みをしている場合には、オクルージョン座標情報やデプスレベル情報を用いて、表示に必要なオクルージョン領域の情報を多く含むオクルージョン画像を選択することができる。
〈第2の実施の形態〉
〈オクルージョン画像の選択について〉
 ところで、オクルージョン座標情報とデプスレベル情報をシグナリングする手法では、クライアント装置71において、それらのオクルージョン座標情報とデプスレベル情報を同時に利用する必要があるのは特定の場合だけとなっている。
 具体的には、オクルージョン座標情報とデプスレベル情報を同時に利用しないと適切なオクルージョン画像を選択できないのは、原点Oの位置および原点O以外の位置にオクルージョン画像が存在し、かつ同じ位置に複数のオクルージョン画像がある場合のみである。すなわち、図3に示したユースケースU4の場合のみである。
 上述したユースケースU1の場合、原点Oの位置のみにオクルージョン画像が存在しているので、オクルージョン画像の選択にはデプスレベル情報があればよく、オクルージョン座標情報は不要である。
 また、ユースケースU2の場合、同じ位置に複数のオクルージョン画像が存在していないので、オクルージョン画像の選択にはオクルージョン座標情報があればよく、デプスレベル情報は不要である。
 ユースケースU3の場合、原点Oの位置に複数のオクルージョン画像があり、他の位置には1つのオクルージョン画像しか存在していない。そのため、ユースケースU3では、ユーザの視点位置が原点Oの位置である場合にはデプスレベル情報があればよく、原点O以外の位置ではオクルージョン座標情報があればよいので、デプスレベル情報とオクルージョン座標情報を同時に利用しなくてもよい。
 このようにユースケースU1乃至ユースケースU3では、クライアント装置71に対してオクルージョン座標情報とデプスレベル情報をシグナリングしても、それらの情報のうち必要となるのは何れか一方のみとなる。そのため、より効率的なシグナリングをすることができれば、MPDファイルのデータ量を削減することができる。
 また、オクルージョン座標情報とデプスレベル情報をシグナリングする手法では、クライアント装置71において、オクルージョン画像の選択時にはユーザの視点位置からオクルージョン画像の位置までの距離を求める必要がある。
 このようなオクルージョン画像の位置までの距離は、ユースケースU2、ユースケースU3、およびユースケースU4で利用される。
 オクルージョン画像を選択する際には、ユーザの視点位置に近い位置にあるオクルージョン画像を選択するために、ユーザの視点位置が変化するたびに各オクルージョン画像の位置とユーザの視点位置との間の距離を全て計算する必要がある。
 したがって、オクルージョン画像が多数あり、ユーザの視点位置の変化が頻繁に起こる場合には、そのたびに距離を算出しなければならず計算量が多くなってしまう。
 そこで、オクルージョン画像の選択に用いる情報をより効率的にシグナリングするために、フラグ情報である選択情報flagによりシグナリングする情報を切り替えて、オクルージョン画像の選択に必要な情報のみをMPDファイルで伝送してもよい。
 また、ユーザの視点位置からの距離の計算量を削減するため、オクルージョン画像の視点位置に関する情報として、オクルージョン座標情報に代えて、オクルージョン方向情報または、オクルージョン方向情報とオクルージョン距離情報を用いるようにしてもよい。
 ここで、オクルージョン方向情報は、全天球座標系における原点Oを基準とした、つまり基準となる主画像の位置から見た、オクルージョン画像の原点O’の位置のある方向を示す指標である。
 一例として、オクルージョン方向情報は、例えば図12に示すように全天球座標系におけるx方向、y方向、z方向、-x方向、-y方向、および-z方向の合計6個の方向のうちの何れかを示す情報とされる。なお、図12に示す原点Oを基準とする座標系は、図3に示した座標系と同じ全天球座標系である。
 この例では、例えばx方向は、全天球座標系のx軸の正の方向を示しており、オクルージョン方向情報がx方向であるときには、オクルージョン画像が原点Oから見てx軸の正の方向に位置していることを示している。また、例えば-x方向は、全天球座標系のx軸の負の方向を示している。
 但し、ここでは各オクルージョン画像のオクルージョン方向情報は、6方向のうちの何れか1つの方向とされる。そのため、オクルージョン画像が全天球座標系の軸上に位置していないときには、オクルージョン方向情報は、原点Oから見たオクルージョン画像がある大まかな方向を示す情報となる。
 この場合、オクルージョン方向情報によりオクルージョン画像のある正確な方向を特定することはできないが、オクルージョン方向情報により示される方向を6方向に限定することで、より簡単にオクルージョン画像の選択を行うことができる。
 また、オクルージョン距離情報は、全天球座標系における主画像の位置である原点Oから、オクルージョン画像の原点O’の位置までの距離を示す情報である。
 上述した第1の実施の形態では、クライアント装置71においてユーザの視点位置からオクルージョン画像の原点O’までの距離を求めていた。
 これに対して、オクルージョン方向情報とオクルージョン距離情報を利用してオクルージョン画像を選択する場合には、クライアント装置71において、原点Oから見たユーザの視点位置の方向(以下、視点位置方向とも称する)と、原点Oからユーザの視点位置までの距離(以下、視点位置距離とも称する)を求めておけばよい。なお、視点位置方向も上述した6方向のうちの何れかの方向としてもよい。
 オクルージョン画像の選択時には、複数のオクルージョン画像のうち、オクルージョン方向情報により示される方向が視点位置方向と一致する、より詳細には視点位置方向と近い方向のオクルージョン画像を選択すればよい。
 また、オクルージョン方向情報により示される方向が視点位置方向と同じ方向であるオクルージョン画像が複数あるときには、それらのオクルージョン画像のなかからオクルージョン距離情報により示される距離が視点位置距離に近いものを順番に選択すればよい。このようにすることでも、原点O’がユーザの視点位置に近いものから順番にオクルージョン画像を選択することができる。
 オクルージョン距離情報を用いる場合、ユーザの視点位置からオクルージョン画像の原点O’までの距離を求めるのに比べると、オクルージョン距離情報と視点位置距離との比較処理だけで済むので、計算量を低減させることができる。
 この実施の形態では、以上のような選択情報flag、オクルージョン方向情報、およびオクルージョン距離情報が利用される。なお、この実施の形態では、オクルージョン画像の配置がユースケースU1、ユースケースU2、またはユースケースU3である場合が想定されている。
 具体的には、例えば図13に示すように選択情報flagにより、デプスレベル情報(depth level)、デプス平均値情報(depth平均値)、オクルージョン方向情報、およびオクルージョン方向情報とオクルージョン距離情報を切り替えることで、シグナリングの効率を向上させ、クライアント装置71における計算量を低減させることができる。
 図13の例では、選択情報flagは、デプスレベル情報、デプス平均値情報、オクルージョン方向情報、およびオクルージョン方向情報とオクルージョン距離情報のうちの何れの情報が含まれているかを示す情報である。
 ここでは、選択情報flagの値が「00」である場合、シグナリングされる、選択情報flagにより選択された情報(以下、選択情報値とも称する)は、デプスレベル情報(depth level)とされる。すなわち、選択情報flagの値が「00」である場合、クライアント装置71にはデプスレベル情報のみが伝送される。ここでは、選択情報値はオクルージョン画像を選択するための情報となっている。
 また、選択情報flagの値が「01」である場合、選択情報値は、デプス平均値情報(depth平均値)とされる。ここで、デプス平均値情報は、デプスレベル情報に対応するオクルージョン画像のデプスを示す情報であり、オクルージョン画像の各位置におけるデプス値の平均値を示す情報である。
 選択情報flagの値が「10」である場合、選択情報値はオクルージョン方向情報とされ、選択情報flagの値が「11」である場合、選択情報値はオクルージョン方向情報およびオクルージョン距離情報とされる。
 ここで、実際にMPEG-DASHにおいて選択情報flagを用いたシグナリングを行う場合について説明する。
 そのような場合、例えば図4に示したMPDファイルにおけるオクルージョン画像のテクスチャ情報のAdaptationSetでは、schemeIdUriが「“urn:mpeg:dash:occlusion:2017”」とされ、そのvalueの値に選択情報flagと選択情報値が記述される。
 具体的には、valueの値はコンマで区切られて「“選択情報flag,選択情報値”」とされる。
 また、選択情報flagの値が「11」であり、オクルージョン方向情報とオクルージョン距離情報が選択情報値とされるときには、空白で区切ってオクルージョン方向情報とオクルージョン距離情報の値が記述される。
 すなわち、例えばオクルージョン方向情報の値が「x」であり、オクルージョン距離情報の値が「0.5」であるとする。この場合、EssentialPropertyの部分は<EssentialProperty schemeIdUri=“urn:mpeg:dash:occlusion:2017” value=“11,x 0.5”>とされる。
 このようなvalueの値から、選択情報flagの値「11」により、このAdaptationSetにはオクルージョン方向情報とオクルージョン距離情報が選択情報値として含まれていることが分かる。また、オクルージョン方向情報により示される方向はx方向であり、オクルージョン距離情報により示される距離は0.5mであることが分かる。
 また、例えばユースケースU1である場合、図4に示したMPDファイルに対応する、本技術を適用したMPDファイルは図14に示すようになる。なお、図14において図4における場合と対応する部分の説明については繰り返しになるので、適宜、省略する。
 図14に示すMPDファイルは、矢印Q31および矢印Q32に示す部分のみ図4に示したMPDファイルと異なっている。
 すなわち、図14においてオクルージョン画像1のテクスチャ情報のAdaptationSetでは、矢印Q31に示すようにschemeIdUriが「“urn:mpeg:dash:occlusion:2017”」とされており、そのvalueの値は「“00,1”」となっている。
 このことから、オクルージョン画像1については、選択情報flagの値が「00」であり、選択情報値としてデプスレベル情報が含まれていること、そのデプスレベル情報の値、つまりdepth levelが「1」であることが分かる。
 同様に、オクルージョン画像2のテクスチャ情報のAdaptationSetでは、矢印Q32に示すようにschemeIdUriが「“urn:mpeg:dash:occlusion:2017”」とされており、そのvalueの値は「“00,2”」となっている。
 このことから、オクルージョン画像2については、選択情報flagの値が「00」であり、選択情報値としてデプスレベル情報が含まれていること、そのデプスレベル情報の値が「2」であることが分かる。
 したがって、クライアント装置71では、オクルージョン画像2よりもオクルージョン画像1を先に選択すればよいことが分かる。
〈選択順リスト生成処理の説明〉
 以上のようにMPDファイルに選択情報flagと選択情報値が含まれる場合、ファイル生成装置11とクライアント装置71では、以下のような処理が行われる。
 すなわち、ファイル生成装置11では、図7のアップロード処理におけるステップS13において、MPDファイル生成部33が各オクルージョン画像のテクスチャ情報のAdaptationSetに、それらのオクルージョン画像の選択情報flagと選択情報値が含まれるMPDファイルを生成する。
 また、クライアント装置71では、図15に示す選択順リスト生成処理が行われて、選択順リストが生成される。以下、図15のフローチャートを参照して、クライアント装置71による選択順リスト生成処理について説明する。
 なお、ステップS141乃至ステップS143の処理は、図9のステップS41乃至ステップS43の処理と同様であるので、その説明は省略する。
 ステップS144において、MPDファイル処理部93は、ステップS143の処理で取得されたユーザの視点位置に基づいて、ユーザの視点位置方向および視点位置距離を求める。
 ステップS145において、MPDファイル処理部93は、MPDファイル取得部92から供給されたMPDファイルに基づいて、まだ処理していないオクルージョン画像があるか否かを判定する。ステップS145では図9のステップS44と同様の処理が行われる。
 ステップS145において処理していないオクルージョン画像があると判定された場合、MPDファイル処理部93は、まだ処理していないオクルージョン画像を新たな処理対象のオクルージョン画像として、処理はステップS146へと進む。
 ステップS146において、MPDファイル処理部93は、MPDファイルにおける処理対象のオクルージョン画像の選択情報flagの値が「00」または「01」であるか否かを判定する。
 ステップS146において選択情報flagの値が「00」または「01」であると判定された場合、すなわち選択情報値としてデプスレベル情報(depth level)またはデプス平均値情報(depth平均値)が含まれている場合、処理はステップS147へと進む。
 ステップS147において、MPDファイル処理部93は、MPDファイルに選択情報値として含まれているデプスレベル情報またはデプス平均値情報に基づいて、選択情報値が小さい順にオクルージョン画像が並ぶように選択順リストを更新する。
 すなわち、MPDファイル処理部93は、選択順リストにおいて各オクルージョン画像を示す情報がデプスレベル情報またはデプス平均値情報の値の小さい順に上から下へと並ぶように、新たに処理対象としたオクルージョン画像を示す情報を選択順リストに追加する。
 このようにして選択順リストが更新されると、その後、処理はステップS145に戻り、上述した処理が繰り返し行われる。
 また、ステップS146において、選択情報flagの値が「00」または「01」でない、すなわち選択情報flagの値が「10」または「11」であると判定された場合、処理はステップS148へと進む。
 この場合、MPDファイルにおける処理対象のオクルージョン画像の選択情報値としてオクルージョン方向情報のみ、またはオクルージョン方向情報とオクルージョン距離情報が含まれている。
 ステップS148において、MPDファイル処理部93は、MPDファイルに選択情報値として含まれているオクルージョン方向情報に基づいて、オクルージョン方向情報により示される方向が視点位置方向と一致するものを選択して選択順リストを更新する。
 すなわち、MPDファイル処理部93は、処理対象のオクルージョン画像のオクルージョン方向情報により示される方向が、ステップS144で求められたユーザの視点位置方向と一致する場合、その処理対象のオクルージョン画像を示す情報を選択順リストに追加することで、選択順リストを更新する。
 なお、視点位置方向が上述した6方向のうちの何れかの方向とされるのではなく、原点Oから見たユーザの視点位置の方向とされるときには、オクルージョン方向情報により示される方向と、視点位置方向とのなす角度が所定の閾値以下である場合に、オクルージョン方向情報により示される方向と、視点位置方向とが一致すると判定すればよい。
 また、オクルージョン方向情報により示される方向と、視点位置方向とが一致するオクルージョン画像が複数あることもある。そのような場合、選択情報flagの値が「11」であり、MPDファイルにオクルージョン距離情報が含まれているときには、オクルージョン距離情報と視点位置距離も用いて選択順リストを更新すればよい。
 すなわち、MPDファイル処理部93は、オクルージョン方向情報により示される方向と、視点位置方向とが一致するオクルージョン画像が、オクルージョン距離情報により示される距離と視点位置距離との差分が小さい順に並ぶように選択順リストを更新する。
 さらにオクルージョン方向情報により示される方向と、視点位置方向とが一致しないオクルージョン画像については、選択順リストに含まれないようにしてもよいし、選択順が下位の順番とされて選択順リストに含まれるようにしてもよい。
 このようにして選択順リストが更新されると、その後、処理はステップS145に戻り、上述した処理が繰り返し行われる。
 例えば上述したユースケースU1では、原点Oに2つのオクルージョン画像があることから各オクルージョン画像の選択情報flagの値が「00」または「01」とされ、ステップS147の処理が行われて選択順リストが生成されるようにすればよい。
 また、ユースケースU2では、同じ位置に複数のオクルージョン画像が存在しないので、各オクルージョン画像の選択情報flagの値が「10」または「11」とされ、ステップS148の処理が行われて選択順リストが生成されるようにすればよい。
 ユースケースU3では、原点Oに2つのオクルージョン画像があり、他の位置には1つのオクルージョン画像が存在している。
 そのため、ユースケースU3では、例えば原点Oにあるオクルージョン画像については選択情報flagの値を「00」または「01」とし、原点O以外の位置のオクルージョン画像については選択情報flagの値を「10」または「11」とすることができる。
 この場合、原点O以外の位置のオクルージョン画像についてはステップS148が行われて選択順リストが更新されるようにすればよい。また、原点Oにあるオクルージョン画像については、例えばそれらのオクルージョン画像は先読みにしか用いないものとして、ステップS147において選択順リストの最も下位の選択順の位置に追加されるようにすることができる。逆に、原点Oにあるオクルージョン画像が選択順リストの最上位の選択順の位置に追加されるようにしてもよい。
 以上のようにステップS146乃至ステップS148では、オクルージョン方向情報やオクルージョン距離情報といったオクルージョン画像の視点位置に関する情報と、デプスレベル情報やデプス平均値情報といったオクルージョン画像のデプスに関する情報の少なくとも何れか一方に基づいてオクルージョン画像が選択され、選択順リストが生成される。
 また、ステップS145において、処理していないオクルージョン画像がない、つまり全てのオクルージョン画像を処理したと判定された場合、選択順リストが得られた(生成された)ので選択順リスト生成処理は終了する。
 以上のようにしてクライアント装置71は、選択情報値に基づいて適切なオクルージョン画像を順番に選択するための選択順リストを生成する。このようにして選択順リストを生成することで、クライアント装置71は、伝送帯域が十分でない場合でも適切なオクルージョン画像を選択して取得することができるようになる。
 特に、MPDファイルに選択情報flagと選択情報値を含めるようにしたので、オクルージョン画像の選択に必要な情報のみを取得して効率よく選択順リストを生成することができる。また、オクルージョン距離情報と視点位置距離とに基づいて選択順リストを生成するときには、ユーザの視点位置と原点O’の距離を用いる場合と比べて、選択順リスト生成時における計算量を低減させることができる。
 このようにして選択順リストが生成されると、その後、クライアント装置71では、図10を参照して説明したファイル取得処理と、図11を参照して説明した再生処理が行われる。
 なお、以上においてはオクルージョン方向情報により示される方向が予め定めた6方向のうちの何れかの方向である例について説明した。
 しかし、オクルージョン方向情報により示される方向は、これに限らず例えば-xyz方向、-xy方向、-xy-z方向、-xz方向、-x方向、-x-z方向、-x-yz方向、-x-y方向、-x-y-z方向、yz方向、y方向、y-z方向、z方向、-z方向、-yz方向、-y方向、-y-z方向、xyz方向、xy方向、xy-z方向、xz方向、x方向、x-z方向、x-yz方向、x-y方向、およびx-y-z方向の合計26方向などとしてもよい。ここで、例えば-xy-z方向は、-x方向の単位ベクトルと、y方向の単位ベクトルと、-z方向の単位ベクトルとを加算して得られるベクトルの方向である。
 また、6個の方向や26個の方向など、オクルージョン方向情報の各方向を示すのにyaw角やpitch角を用いてもよい。
 ここで、yaw角とは、例えば図12に示した全天球座標系のy軸を中心とした回転角度であり、y軸の正の方向から原点Oを見たときに反時計回りの方向がyaw角の正の方向である。また、pitch角は図12に示した全天球座標系のx軸を中心とした回転角度であり、x軸の正の方向から原点Oを見たときに反時計回りの方向がpitch角の正の方向である。
 したがって、例えばx方向、y方向、z方向、-x方向、-y方向、および-z方向をyaw角とpitch角を用いて表すと、図16に示すようになる。すなわち、例えばx方向は、yaw角が90度でありpitch角が0度となる方向である。
 さらに、オクルージョン距離情報として、具体的な距離そのものの値ではなく、距離の範囲を示す距離付範囲グループを利用してもよい。
 例えば距離付範囲グループとは、原点Oからオクルージョン画像の原点O’までの距離を0mから0.5mまでの範囲のグループ、0.5mから1.0mまでの範囲のグループなどに分けたときの距離の範囲のグループである。
 この場合、オクルージョン距離情報は、予め用意された複数の距離付範囲グループのうちの原点Oから原点O’までの距離が属す距離付範囲グループの最も大きい距離の値などとされる。したがって、例えば原点Oから原点O’までの距離が0.5mから1.0mまでの範囲のグループに属す場合、オクルージョン距離情報の値は「1.0」などとされる。
 その他、オクルージョン距離情報は、複数のオクルージョン画像の原点Oから原点O’までの距離のなかの何番目に小さい(短い)距離であるかを示す距離順位とされてもよい。また、オクルージョン距離情報は、原点Oから原点O’までの距離が、複数の距離付範囲グループのなかの、何番目に小さい(短い)範囲の距離付範囲グループに属すかを示す距離付範囲グループの順位であってもよい。
 さらに、以上において説明した第2の実施の形態では、オクルージョン座標情報は用いないようにしたが、選択情報値としてオクルージョン座標情報もクライアント装置71に対してシグナリング可能としてもよい。そのような場合、他の情報ではオクルージョン画像の選択が困難である場合に、選択情報値としてのオクルージョン座標情報を用いてオクルージョン画像を選択すればよい。つまり、オクルージョン座標情報を用いて選択順リストを生成すればよい。
 以上の第2の実施の形態で説明した手法では、オクルージョン画像の選択に必要な情報のみをシグナリングすることで、第1の実施の形態で説明した手法と比較してシグナリングする情報の情報量を削減することができる。
 また、オクルージョン座標情報ではなく、オクルージョン方向情報やオクルージョン距離情報を用いることで、より少ない計算量でオクルージョン画像の選択を行うことができる。これは、ユーザの視点位置から視点位置方向を求め、オクルージョン方向情報により示される方向が視点位置方向と一致するオクルージョン画像を選択し、さらにそこからオクルージョン距離情報を用いて視点位置距離と近いオクルージョン画像を選択することができるからである。これらのオクルージョン画像の選択時の計算は、全てのオクルージョン画像の位置とユーザの視点位置との間の距離を求めるよりも簡単に行うことができる。
〈第3の実施の形態〉
〈オクルージョン画像の選択について〉
 なお、上述した第1の実施の形態や第2の実施の形態では、例えばユースケースU2において、ユーザの視点位置が全天球座標系の原点Oである場合、つまりユーザが覗き込みをしていない場合に、事前にオクルージョン画像を取得しておけば、ユーザの視点位置が動いたときに直ちに移動後の視点の全天球画像を表示することができる。
 この場合、例えばユーザの視点位置とオクルージョン画像の位置との間の距離が短い順や、原点Oから原点O’までの距離がユーザの視点位置距離と近い順にオクルージョン画像を選択していくと、同じ距離のオクルージョン画像が複数選択されることがある。また、第2の実施の形態では、同じ距離のオクルージョン画像が複数あると、それらのオクルージョン画像の選択順を決めることができない。
 このようなことから、例えばコンテンツである全天球画像に対して注目度の高い視点位置がある方向が存在するときには、その方向にあるオクルージョン画像を優先して取得しておけるとよい。
 そこで、例えばオクルージョン画像が優先的に選択すべきものであるか否かを示す優先flagを用いるようにしてもよい。
 例えば優先flagの値「1」は、優先的に選択すべきオクルージョン画像であることを示しており、優先flagの値「0」は、優先的に選択すべきオクルージョン画像でないことを示している。
 このような優先flagを用いることで、クライアント装置71では、原点Oから同じ距離にあるオクルージョン画像が複数あるときに、優先flagの値が「1」であるオクルージョン画像を優先的に取得することで、適切にオクルージョン画像を選択できるようになる。
 また、優先flagではなく、オクルージョン画像の優先度順を設定するようにしてもよい。具体的には、例えば最も優先度の高いオクルージョン画像の優先度順を1とし、優先度の高いものほど優先度順の値が小さくなるように、各オクルージョン画像に対して優先度順を定めるようにすることができる。
 この場合、クライアント装置71では、例えば原点Oから同じ距離にあるオクルージョン画像が複数あるときに、それらの複数のオクルージョン画像から、優先度順の値が小さいものから順に選択していけばよい。
 このような優先flagや優先度順は、オクルージョン画像の優先度に関する情報である。優先flagや優先度順をクライアント装置71にシグナリングする方法としては、例えば第2の実施の形態と同様に選択情報flagを利用することが考えられる。
 すなわち、例えば図17に示すように、選択情報flagの各値に対して選択情報値を予め定めておけばよい。
 図17に示す例では、選択情報flagの値が「1000」であるとき、選択情報値は優先flagの値とされ、選択情報flagの値が「1001」であるとき、選択情報値は優先度順の値とされる。
 ここで、実際にMPEG-DASHにおいて選択情報flagを用いて優先flagと優先度順のシグナリングを行う場合について説明する。
 そのような場合、例えば図4に示したMPDファイルにおけるオクルージョン画像のテクスチャ情報のAdaptationSetでは、schemeIdUriが「“urn:mpeg:dash:occlusion:2017”」とされ、そのvalueの値に図17に示した選択情報flagと選択情報値が記述される。具体的には、valueの値はコンマで区切られて「“選択情報flag,選択情報値”」とされる。例えば選択情報flagの値が「1001」であり、優先度順の値が「2」である場合、EssentialPropertyの部分は<EssentialProperty schemeIdUri=“urn:mpeg:dash:occlusion:2017” value=“1001,2”>とされる。
 優先flagや優先度順を、第2の実施の形態で説明したデプスレベル情報等と組み合わせて同時に用いることが可能である。
 そのような場合、例えば図15のステップS147やステップS148の処理の後、さらに優先flagや優先度順を用いてオクルージョン画像のより正確な選択順を決定することができる。
 優先flagや優先度順のシグナリングと、デプスレベル情報等のシグナリングとを同時に行う場合、例えば各オクルージョン画像のテクスチャ情報のAdaptationSetには、少なくとも2つのEssentialPropertyが記述される。
 そして、一方のEssentialPropertyには、図13に示した選択情報flagと選択情報値が記述され、他方のEssentialPropertyには、図17に示した選択情報flagと選択情報値が記述される。
 このようにMPDファイルに図13に示した選択情報flagおよび選択情報値と、図17に示した選択情報flagおよび選択情報値とが含まれる場合、ファイル生成装置11とクライアント装置71では、以下のような処理が行われる。
 すなわち、ファイル生成装置11では、図7のアップロード処理におけるステップS13において、MPDファイル生成部33が各オクルージョン画像のテクスチャ情報のAdaptationSetに、それらのオクルージョン画像の選択情報flagと選択情報値が含まれるMPDファイルを生成する。
 このとき、各オクルージョン画像のテクスチャ情報のAdaptationSetには、図13に示した選択情報flagと選択情報値が記述されたEssentialPropertyと、図17に示した選択情報flagと選択情報値が記述されたEssentialPropertyとが設けられる。
〈選択順リスト生成処理の説明〉
 また、クライアント装置71では、図18に示す選択順リスト生成処理が行われて、選択順リストが生成される。以下、図18のフローチャートを参照して、クライアント装置71による選択順リスト生成処理について説明する。
 なお、ステップS171乃至ステップS178の処理は、図15のステップS141乃至ステップS148の処理と同様であるので、その説明は省略する。
 なお、ステップS176乃至ステップS178では、MPDファイルにおける図13に示した選択情報flagおよび選択情報値が用いられて処理が行われる。
 ステップS177またはステップS178の処理が行われると、ステップS179において、MPDファイル処理部93は、MPDファイルにおける処理対象のオクルージョン画像の選択情報flagの値が「1000」であるか否かを判定する。
 ここでは、処理対象のオクルージョン画像のテクスチャ情報のAdaptationSetに含まれている、ステップS176で用いられた選択情報flagが記述されたEssentialPropertyとは異なる他のEssentialPropertyに記述された選択情報flagの値に基づいて判定処理が行われる。この場合、選択情報flagの値は、「1000」または「1001」の何れかとなっている。
 ステップS179において、選択情報flagの値が「1000」であると判定された場合、すなわち、valueの値に選択情報値として優先flagが記述されている場合、処理はステップS180へと進む。
 ステップS180において、MPDファイル処理部93は、MPDファイルに含まれている、処理対象のオクルージョン画像の優先flagに基づいてステップS177またはステップS178において得られた選択順リストをさらに更新する。
 例えばステップS177の処理が行われたときに、デプスレベル情報またはデプス平均値情報が同じであるオクルージョン画像が複数あったとする。この場合、MPDファイル処理部93は、それらの複数のオクルージョン画像のうち、優先flagの値が「1」であるものの選択順が、優先flagの値が「0」であるものの選択順よりもより上位の選択順となるように選択順リストを更新する。
 同様に、ステップS178が行われて選択順リストが得られた場合においても、オクルージョン方向情報により示される方向と、視点位置方向とが一致するオクルージョン画像が複数あったり、オクルージョン距離情報により示される距離と視点位置距離との差分が同じであるものが複数あることがある。そのような場合、ステップS180では、それらの複数のオクルージョン画像のうち、優先flagの値が「1」であるものの選択順が、優先flagの値が「0」であるものの選択順よりもより上位の選択順となるように選択順リストが更新される。
 ステップS180の処理が行われて選択順リストが更新されると、その後、処理はステップS175に戻り、上述した処理が繰り返し行われる。
 また、ステップS179において、選択情報flagの値が「1000」でないと判定された場合、すなわち、選択情報flagの値が「1001」であり、valueの値に選択情報値として優先度順が記述されている場合、処理はステップS181へと進む。
 ステップS181において、MPDファイル処理部93は、MPDファイルに含まれている、処理対象のオクルージョン画像の優先度順に基づいてステップS177またはステップS178において得られた選択順リストをさらに更新する。
 ステップS181では、ステップS180における場合と同様に、ステップS177やステップS178において選択情報値が同じであるなど、選択順を定めることができない、つまり選択順が同じとなってしまう複数のオクルージョン画像がある場合に、それらのオクルージョン画像が優先度順に並ぶように選択順リストが更新される。すなわち、優先度順がより小さいオクルージョン画像の選択順がより小さくなるようになされる。
 ステップS181の処理が行われて選択順リストが更新されると、その後、処理はステップS175に戻り、上述した処理が繰り返し行われる。
 以上のようにクライアント装置71は、選択情報値としての優先flagや優先度順も用いて選択順リストを生成する。このようにして選択順リストを生成することで、クライアント装置71は、伝送帯域が十分でない場合でも適切なオクルージョン画像を選択して取得することができる。
 なお、以上においては優先flagや優先度順と、デプスレベル情報等とを異なるEssentialPropertyでシグナリングする例について説明した。しかし、MPEG-DASHにおいて、それらの情報を同じ1つのEssentialPropertyでシグナリングするようにしてもよい。
 そのような場合、例えば図19に示すように選択情報flagと選択情報値を定めればよい。
 図19に示す例では、選択情報flagの値が「000」である場合、選択情報値は、デプスレベル情報(depth level)および優先flagとされる。すなわち、選択情報flagの値が「000」である場合、クライアント装置71にはデプスレベル情報と優先flagが伝送される。この場合、EssentialPropertyのvalueでは、デプスレベル情報と優先flagとがスペースで区切られて記述される。
 また、選択情報flagの値が「001」である場合、選択情報値はデプスレベル情報および優先度順とされ、EssentialPropertyのvalueでは、デプスレベル情報と優先度順とがスペースで区切られて記述される。
 なお、以下の説明においてもvalueに2以上の選択情報値が記述されるときには、それらの選択情報値がスペースで区切られて記述される。
 選択情報flagの値が「010」である場合、選択情報値はデプス平均値情報(depth平均値)および優先flagとされ、選択情報flagの値が「011」である場合、選択情報値はデプス平均値情報および優先度順とされる。
 選択情報flagの値が「100」である場合、選択情報値はオクルージョン方向情報および優先flagとされ、選択情報flagの値が「101」である場合、選択情報値はオクルージョン方向情報および優先度順とされる。
 さらに、選択情報flagの値が「110」である場合、選択情報値はオクルージョン方向情報、オクルージョン距離情報、および優先flagとされ、選択情報flagの値が「111」である場合、選択情報値はオクルージョン方向情報、オクルージョン距離情報、および優先度順とされる。
 このようにデプスレベル情報等とともに優先flagや優先度順が1つのEssentialPropertyでシグナリングされる場合においても、図18を参照して説明した選択順リスト生成処理と同様の処理が行われる。
 但し、この場合、ステップS176では、選択情報flagの値が「000」、「001」、「010」、または「011」であるか否かが判定され、「000」、「001」、「010」、または「011」であると判定された場合、ステップS177の処理が行われる。
 一方、選択情報flagの値が「000」、「001」、「010」、または「011」でない、つまり選択情報flagの値が「100」、「101」、「110」、または「111」であると判定された場合、ステップS178の処理が行われる。
 さらに、ステップS179では、選択情報flagの値が「000」、「010」、「100」、または「110」であるか否かが判定され、「000」、「010」、「100」、または「110」であると判定された場合、ステップS180の処理が行われる。
 これに対して、選択情報flagの値が「001」、「011」、「101」、または「111」であると判定された場合、ステップS181の処理が行われる。
 以上のように、選択順が同じとなってしまうオクルージョン画像が複数あるときでも、優先flagや優先度順を用いれば、それらのオクルージョン画像の選択順を定めることができる。
 また、優先flagや優先度順をシグナリングする仕組みを用いれば、コンテンツ作成者が意図的にオクルージョン画像の選択順を指定することもできる。例えば、コンテンツ作成者がユーザに見せたいと思うオクルージョン領域を含むオクルージョン画像を優先的に取得させておき、覗き込み表示時のお勧めとして利用することができる。
〈第4の実施の形態〉
〈表示範囲外通知について〉
 ところで、全天球画像を表示するにあたり、ユーザの視点位置と、オクルージョン画像の位置(原点O’)とが離れすぎていると、表示に必要なオクルージョン領域の情報を得ることができないことがある。このような得ることのできないオクルージョン領域の情報が増えると、表示用の全天球画像において表示できない部分の領域が増えてしまう。
 この場合、原点O以外の位置にあるオクルージョン画像については、ユーザの視点位置と、オクルージョン画像のある位置との間の距離が長くなるほど、つまりユーザの視点位置がオクルージョン画像の位置から離れるほど、表示できない部分の領域が増えていく。
 例えば全天球画像における表示することのできない領域、つまり情報を得ることができなかったオクルージョン領域については、黒い画像が表示されたり、近傍の領域の画像が複製されて表示されたりすることになる。
 このように表示用の全天球画像において表示できない領域が増える場合に、全天球画像の表示を継続して行うか、または何らかの表示を行い、これ以上の視点位置の移動ができない旨を通知するかは、クライアント装置71の実装により変わってくる。
 しかし、コンテンツ作成者は、全天球画像の表示に違和感が生じることから、想定以上にユーザの視点位置が原点Oから離れてしまうことを望まない場合がある。
 そのため、コンテンツ作成者が想定している視点位置よりも離れた位置を視点位置として全天球画像の表示がされないように、それぞれのオクルージョン画像がどの視点位置まで有効なオクルージョン画像であるかを示すようにしてもよい。
 オクルージョン画像が有効な領域の範囲を示す情報、つまり原点Oからの有効な距離を示す情報をクライアント装置71側にシグナリングする場合、例えば図20に示すように選択情報flagを用いることができる。
 図20に示す例では、選択情報flagの値が「10000」である場合、選択情報値は視点位置最大値情報とされる。
 ここで、視点位置最大値情報は、オクルージョン画像を用いた適切な表示が可能である原点Oからユーザの視点位置までの距離の最大値を示す情報である。換言すれば、視点位置最大値情報は、オクルージョン画像を有効に利用可能な、ユーザの視点位置の範囲を示す情報である。
 すなわち、オクルージョン画像を利用する場合に、原点Oからユーザの視点位置までの距離が、視点位置最大値情報により示される距離よりも長くなるような視点位置でのオクルージョン画像を利用した全天球画像の表示は望まれていない。
 ここで、実際にMPEG-DASHにおいて選択情報flagを用いて視点位置最大値情報のシグナリングを行う場合について説明する。
 そのような場合、例えば図4等に示したMPDファイルにおけるオクルージョン画像のテクスチャ情報のAdaptationSetでは、schemeIdUriが「“urn:mpeg:dash:occlusion:2017”」とされ、そのvalueの値に図20に示した選択情報flagと選択情報値が記述される。
 具体的には、valueの値はコンマで区切られて「“選択情報flag,選択情報値”」とされる。例えば選択情報flagの値が「10000」であり、視点位置最大値情報により示される距離が1.0mである場合、EssentialPropertyの部分は<EssentialProperty schemeIdUri=“urn:mpeg:dash:occlusion:2017” value=“10000,1.0”>とされる。
 この場合、ユーザの視点位置が原点Oから1.0m以内の距離であるときには、オクルージョン画像を用いた全天球画像の表示に不都合は生じないが、ユーザの視点位置が原点Oから1.0mよりも遠い位置となることは望まれていない。
 なお、視点位置最大値情報は、上述したデプスレベル情報やデプス平均値情報、オクルージョン方向情報、オクルージョン距離情報、優先flag、優先度順などと同時にシグナリングすることも勿論可能である。そのような場合、つまり他の情報と同時に視点位置最大値情報をシグナリングする場合、例えばオクルージョン画像のテクスチャ情報のAdaptationSetにシグナリングする情報ごとにEssentialPropertyを設ければよい。
 このようにMPDファイルにオクルージョン画像ごとの視点位置最大値情報が含まれている場合には、図7のステップS13では、各オクルージョン画像の視点位置最大値情報が選択情報値としてvalueに記述されたMPDファイルがMPDファイル生成部33により生成される。
 また、例えば図9や図15、図18を参照して説明した選択順リスト生成処理において、視点位置最大値情報も用いられて選択順リストが生成される。
 すなわち、MPDファイル処理部93は、選択順リスト生成処理を行っている時点、つまり現時点におけるユーザの視点位置に基づいて、原点Oからユーザの視点位置までの距離を視点位置距離として求める。
 そして、MPDファイル処理部93は、MPDファイルにより示される1または複数のオクルージョン画像のうち、視点位置最大値情報により示される距離が視点位置距離よりも短くなるものを除外して選択順リストを生成する。
 これにより、視点位置最大値情報により示される距離が視点位置距離以上であるという条件を満たすオクルージョン画像のみが用いられて選択順リストが生成される。
 換言すれば、全オクルージョン画像のうちの、ユーザの視点位置が、視点位置最大値情報により示される距離により定まる範囲内の位置となるオクルージョン画像のなかから、取得すべきオクルージョン画像が順番に選択される。
 したがって、例えば図9に示した選択順リスト生成処理が行われるときには、ステップS43においてMPDファイル処理部93により視点位置距離が求められる。
 そして、ステップS44乃至ステップS46では、視点位置最大値情報により示される距離が視点位置距離以上となるオクルージョン画像のみが対象とされて、選択順リストが生成される。つまり、視点位置最大値情報により示される距離が視点位置距離未満となるオクルージョン画像の情報は、選択順リストには含まれないようにされる。
 このようにすることで、利用可能なオクルージョン画像のみが取得されて表示用の全天球画像が生成される。
 また、例えば図18に示した選択順リスト生成処理が行われるときには、ステップS174で算出された視点位置距離が用いられて選択順リストが生成される。すなわち、ステップS175乃至ステップS181では、視点位置最大値情報により示される距離が視点位置距離以上となるオクルージョン画像のみが対象とされて、選択順リストが生成される。
 さらに、利用可能なオクルージョン画像がない場合、つまり視点位置最大値情報により示される距離が視点位置距離以上となるオクルージョン画像がない場合には、ユーザに対して、ユーザの視点位置が表示範囲外であることを示す表示情報を提示してもよい。
 そのような場合、例えば図9や図15、図18を参照して説明した選択順リスト生成処理において、MPDファイル処理部93は視点位置最大値情報により示される距離が視点位置距離以上となるオクルージョン画像がないとき、その旨を表示情報生成部113に通知する。
 すると表示情報生成部113は、MPDファイル処理部93からの通知に応じて、例えば図11の再生処理のステップS113において、ユーザの視点位置が適切な全天球画像(コンテンツ)を表示可能な範囲外である旨を表示する表示範囲外通知を生成する。そして表示情報生成部113は、表示範囲外通知を表示部97に供給(出力)して表示させる。
 表示部97は、ステップS114において、表示情報生成部113から供給された表示範囲外通知を表示する。このとき、表示範囲外通知は、全天球画像と同時に表示されてもよいし、全天球画像は表示されずに表示範囲外通知のみが表示されてもよい。
 このように表示範囲外通知を表示することで、ユーザは自身の視点位置が原点Oから離れすぎてしまったことを把握することができる。
 なお、ここでは視点位置最大値情報の選択情報flagを、デプスレベル情報等の選択情報flagや、優先flag等の選択情報flagとは異なるものとする例について説明した。しかし、例えば図13に示した選択情報値や図19に示した選択情報値とともに、視点位置最大値情報も選択情報値として同時にシグナリングすることも可能である。
 例えば図13に示した選択情報値とともに、視点位置最大値情報も選択情報値として同時にシグナリングする場合、図21に示すように選択情報flagと選択情報値を定めればよい。
 図21に示す例では、選択情報flagの値が「10000」である場合、選択情報値はデプスレベル情報(depth level)および視点位置最大値情報とされる。すなわち、選択情報flagの値が「10000」である場合、クライアント装置71にはデプスレベル情報と視点位置最大値情報が伝送される。この場合、EssentialPropertyのvalueでは、デプスレベル情報と視点位置最大値情報とがスペースで区切られて記述される。
 また、選択情報flagの値が「10001」である場合、選択情報値はデプス平均値情報(depth平均値)および視点位置最大値情報とされ、EssentialPropertyのvalueでは、デプス平均値情報と視点位置最大値情報とがスペースで区切られて記述される。
 なお、以下の説明においてもvalueに2以上の選択情報値が記述されるときには、それらの選択情報値がスペースで区切られて記述される。
 選択情報flagの値が「10010」である場合、選択情報値はオクルージョン方向情報および視点位置最大値情報とされ、選択情報flagの値が「10011」である場合、選択情報値はオクルージョン方向情報、オクルージョン距離情報、および視点位置最大値情報とされる。
 このようにデプスレベル情報やデプス平均値情報、オクルージョン方向情報、オクルージョン距離情報とともに視点位置最大値情報がシグナリングされる場合においても、図15を参照して説明した選択順リスト生成処理と同様の処理が行われる。
 但し、この場合、ステップS146では、選択情報flagの値が「10000」または「10001」であるか否かが判定され、「10000」または「10001」であると判定された場合、ステップS147の処理が行われる。
 一方、選択情報flagの値が「10000」または「10001」でない、つまり選択情報flagの値が「10010」または「10011」であると判定された場合、ステップS148の処理が行われる。
 なお、ステップS147やステップS148では、視点位置最大値情報により示される距離が視点位置距離以上となるオクルージョン画像のみが対象とされて、選択順リストが生成される。また、MPDファイル処理部93は、視点位置最大値情報により示される距離が視点位置距離以上となるオクルージョン画像がないとき、その旨を表示情報生成部113に通知する。
 以上のように、オクルージョン画像ごとに視点位置最大値情報を定めておけば、クライアント装置71において適切なオクルージョン画像を選択することができるようになる。すなわち、クライアント装置71では、視点位置距離が視点位置最大値情報により示される距離を超えないオクルージョン画像を選択することができる。
 また、例えばコンテンツ作成者側では、クライアント装置71に対して、オクルージョン画像を利用して全天球画像の表示を行うことのできるユーザの視点位置を示すことができる。すなわち、表示範囲外通知を表示することで、ユーザが適切な視点位置で全天球画像を見るように誘導することができる。
〈第5の実施の形態〉
〈優先flagや優先度順のシグナリングについて〉
 なお、第3の実施の形態で説明した、オクルージョン画像の優先度を示す優先flagや優先度順は、コンテンツの内容によっては時間方向に変化する可能性がある。
 例えば、注目度の高い物体(オブジェクト)のオクルージョン画像を優先するような優先flagを設定する場合、物体が移動すると、その物体に関連するオクルージョン画像も変化する。したがって、優先flagの値を「1」としたいオクルージョン画像も時間とともに変化することが想定される。
 このように各オクルージョン画像の優先flagや優先度順は時間とともに変化する可能性がある。しかし、第3の実施の形態で説明したように優先flagや優先度順を選択情報値としてMPDファイルに記述する場合、優先flagや優先度順の時間的な変化には対応することは困難である。
 そこで、例えばISO(International Organization for Standardization) base media file formatのQuality情報として優先flagや優先度順を伝送(シグナリング)することで、優先flagや優先度順の時間的な変化に対応できるようにしてもよい。
 例えば優先flagや優先度順は、表示用の全天球画像の生成に用いられ、再生対象となるコンテンツである全天球画像の品質に関わる情報であることからQuality情報であるということができる。
 複数の時刻において異なるQuality情報を伝送する手法としてISO/IEC(International Electrotechnical Commission) 23001-10により示される手法がある。
 ISO/IEC 23001-10ではISO base media file formatを用いてQuality情報をセグメントファイルに格納することができる。すなわち、ISO/IEC 23001-10では、例えば図22に示すようにセグメントファイル(MP4ファイル)においてQualityMetricsSampleEntryが定義されている。
 そして、セグメントファイルの各Sample(サンプル)にはfield_size_bytesで示される大きさで、metric_count分の個数だけmetric_codeにより示される種類のQuality情報が含まれている。なお、Sampleは全天球画像のフレームに対応する。つまり、セグメントファイルには、全天球画像のフレームごとにオクルージョン画像のQuality情報が含まれている。
 ここで、現状ではfield_size_bytes、metric_count、およびmetric_codeは、図23に示す通りである。
 すなわち、field_size_bytesはSampleに含まれるQuality情報の1つ(1Quality情報)あたりの大きさ(サイズ)を示しており、metric_countは格納されているQuality情報の数を示している。また、metric_codeは格納されているQuality情報の種類を示している。
 このようにQuality情報を伝送する手法に基づいて、オクルージョン画像の優先flagや優先度順を新たな種類のQuality情報としてmetric_codeでシグナリングできるようすることで、全天球画像としての動画像のフレーム(Sample)ごとに、すなわち時刻ごとに定められた優先flagや優先度順を利用することができるようになる。
 この場合、優先flagや優先度順を示すmetric_codeは、例えば図24に示すように定めることができる。
 図24に示す例では、metric_codeが「ocpf」である場合、Quality情報として8ビットで記述された優先flagが格納されている。この場合においても優先flagの値が「1」であるときは、優先的に選択すべきオクルージョン画像であることを示しており、優先flagの値が「0」であるときは、優先的に選択すべきオクルージョン画像でないことを示している。
 また、metric_codeが「ocpn」である場合、Quality情報として符号なしの8ビットのデータである優先度順が格納されている。
 これらの「ocpf」や「ocpn」を示すmetric_codeは、優先flagや優先度順などのオクルージョン画像の優先度に関する情報の種類を示す識別情報であるといえる。
 具体的な例として、例えば上述したユースケースU1である場合、図4に示したMPDファイルに対応する、本技術を適用したMPDファイルは図25に示すようになる。なお、図25において図4における場合と対応する部分の説明については繰り返しになるので、適宜、省略する。
 図25に示すMPDファイルは、矢印Q51および矢印Q52に示す部分のみ図4に示したMPDファイルと異なっている。すなわち、このMPDファイルでは、Quality値(Quality情報)が含まれているISO base media file(セグメントファイル)がオクルージョン画像ごとにAdaptationSetで指定されている。
 図25において矢印Q51に示す部分は、オクルージョン画像1の優先度、つまり優先flagや優先度順に関するQuality情報についてのAdaptationSetとなっている。
 このAdaptationSetでは、codecsの部分に図24に示したmetric_codeとして「ocpn」が記述されており、この記述から、このAdaptationSetに対応する、オクルージョン画像1についてのQuality情報のセグメントファイルには優先度順が含まれていることが分かる。つまり、codecsの部分により優先flagまたは優先度順を示すmetric_codeをシグナリングすることができるようになされている。
 また、このAdaptationSetには、オクルージョン画像1のテクスチャ情報との関係(関連)を把握することができるように、RepresentationにassociationIdが設定されている。ここでは、RepresentationのassociationIdには、オクルージョン画像1のテクスチャ情報のid「vot1」が用いられて「associationId=“vot1”」が記述されており、これにより、このAdaptationSetに対応するQuality情報が、オクルージョン画像1に関するものであることが分かる。
 矢印Q51に示す部分と同様に、矢印Q52に示す部分もオクルージョン画像の優先度に関するQuality情報についてのAdaptationSetとなっている。この部分では、codecsの部分における「ocpn」と、Representationにおける「associationId=“vot2”」とから、このAdaptationSetはオクルージョン画像2に関するQuality情報についてのAdaptationSetであり、Quality情報のセグメントファイルには優先度順が含まれていることが分かる。
 なお、ここでは図4に示したMPDファイルにQuality情報についてのAdaptationSetが追加された例について説明したが、図14に示したMPDファイル等にQuality情報についてのAdaptationSetが追加されるようにしても勿論よい。
 また、ここでは全天球画像のフレームごと、つまりオクルージョン画像のフレームごとに優先flagや優先度順が用意される例について説明する。すなわち、1フレームを時間単位として、各フレームに対して優先flagや優先度順が定められている例について説明する。しかし、これらの優先flagや優先度順は数フレームごと(例えばセグメントごと)など、任意の時間単位ごとに用意されるようにすることができる。
〈選択順リスト生成処理の説明〉
 このようにMPDファイルによりmetric_codeをシグナリングする場合、クライアント装置71は、MPDファイルの取得後、各オクルージョン画像のQuality情報が格納されたセグメントファイルを取得する。
 これにより、クライアント装置71は、フレームごとに各オクルージョン画像の優先度に関するQuality情報、すなわち優先flagまたは優先度順を得ることができ、そのようにして得られた優先flagまたは優先度順を用いて選択順リストを生成することができる。
 MPDファイルによりmetric_codeをシグナリングする場合、ファイル生成装置11では、図7を参照して説明したアップロード処理のステップS12において、セグメントファイル生成部43は、各オクルージョン画像のQuality情報が格納されたセグメントファイルも生成する。このセグメントファイルには、Quality情報として優先flagまたは優先度順が含まれている。また、ステップS13では、MPDファイル生成部33は、各オクルージョン画像のQuality情報のmetric_codeが記述されたAdaptationSetを含むMPDファイルを生成する。
 さらに、クライアント装置71では、図26に示す選択順リスト生成処理が行われる。すなわち、以下、図26のフローチャートを参照して、クライアント装置71による選択順リスト生成処理について説明する。
 なお、ステップS211の処理は図18のステップS171の処理と同様であるので、その説明は省略する。但し、ここで取得されるMPDファイルには、図13に示した選択情報flagと選択情報値の他、各オクルージョン画像のQuality情報のmetric_codeも含まれている。
 MPDファイルが取得されると、MPDファイル処理部93は取得されたMPDファイルに基づいて、セグメントファイル取得部94に対して、各オクルージョン画像のQuality情報が格納されたセグメントファイルの取得を指示する。
 ステップS212において、セグメントファイル取得部94はMPDファイル処理部93の指示に従ってネットワークを介してサーバから各オクルージョン画像のQuality情報が格納されたセグメントファイルを取得し、セグメントファイル処理部111に供給する。
 これにより、コンテンツ、つまり全天球画像の品質に関する情報であるQuality情報として、優先flagまたは優先度順が格納されたセグメントファイルが取得されたことになる。
 セグメントファイル処理部111は、セグメントファイル取得部94から供給されたセグメントファイルから、オクルージョン画像ごとに、各フレーム(各時刻)におけるQuality情報を抽出し、MPDファイル処理部93に供給する。
 MPDファイル処理部93は、MPDファイルに記述された各オクルージョン画像のmetric_codeによって、セグメントファイル処理部111から供給されたQuality情報が優先flagまたは優先度順の何れであるかを特定することができる。
 ステップS212の処理が行われると、その後、ステップS213乃至ステップS219の処理が行われるが、これらの処理は図18のステップS172乃至ステップS178の処理と同様であるので、その説明は省略する。
 ステップS218またはステップS219の処理が行われると、ステップS220においてMPDファイル処理部93は、セグメントファイルから得られたQuality情報が優先flagであるか否かを判定する。
 ステップS220において優先flagであると判定された場合、処理はステップS221へと進む。そして、ステップS221では、図18のステップS180と同様の処理が行われ、その後、処理はステップS216へと戻り、上述した処理が繰り返し行われる。
 これに対して、ステップS220において優先flagでない、つまり優先度順であると判定された場合、処理はステップS222へと進む。そして、ステップS222では、図18のステップS181と同様の処理が行われ、その後、処理はステップS216へと戻り、上述した処理が繰り返し行われる。
 なお、ステップS212では各オクルージョン画像について、フレームごとにQuality情報が得られるので、ステップS213乃至ステップS222の処理はオクルージョン画像のフレームごと、つまり全天球画像のフレームごとに行われる。この場合、フレームごとに選択順リストが生成され、その後において行われる図10を参照して説明したファイル取得処理では、各フレームについて得られた選択順リストが用いられて処理が行われることになる。また、複数フレームからなるセグメントごとにステップS213乃至ステップS222の処理が行われるようにしてもよい。
 以上のようにしてクライアント装置71は予めQuality情報を取得しておき、得られたQuality情報に基づいて選択順リストを生成する。このようにすることで優先flagや優先度順の時間的な変化に対応し、より適切なオクルージョン画像を選択することができる。
〈第5の実施の形態の変形例1〉
〈優先flagや優先度順のシグナリングについて〉
 なお、第5の実施の形態では、各フレームの優先flagや優先度順がQuality情報としてセグメントファイルに格納される例について説明した。しかし、各時刻の優先flagや優先度順がMPDファイルに記述されるようにしてもよい。
 上述した第5の実施の形態では、ISO base media file formatのセグメントファイルを取得して、そのセグメントファイルからQuality情報を得る必要があり、処理が複雑になってしまう。
 そこで、各時刻の優先flagや優先度順をMPDファイルに直接、記述することで、MPDファイルのサイズが大きくなってしまうもののMPDファイルのみから各時刻の優先flagや優先度順が得られるようにすることができる。
 例えばMPDファイルに各時刻の優先flagや優先度順を記述する場合、選択情報flagおよび選択情報値に加え、選択情報値が有効なセグメントまたはサブセグメントの個数が記述されるようにされる。
 具体的には、例えば優先flagや優先度順についてのAdaptationSetでは、EssentialPropertyのschemeIdUriが「“urn:mpeg:dash:occlusion-dynamic:2017”」とされ、そのvalueの値に選択情報flagと選択情報値とセグメント(またはサブセグメント)の個数とが記述される。
 このときvalueの値は、コンマで区切られて「“選択情報flag,選択情報値,セグメント(またはサブセグメント)の個数”」とされる。
 ここで、valueに記述される、つまりvalueに含まれるセグメント(またはサブセグメント)の個数は、1つの同じ優先flagや優先度順が用いられる期間を構成する、1または複数のフレームからなるセグメント(またはサブセグメント)の数を示す情報である。換言すれば、valueに含まれるセグメント(またはサブセグメント)の個数は、1つの同じ優先flagや優先度順が用いられる1または複数のセグメント(またはサブセグメント)からなる期間を示す情報である。
 AdaptationSetにおいて、そのようなEssentialPropertyを複数設定することで、例えば1または複数のセグメント(またはサブセグメント)からなる期間(時間)ごとに選択情報値として優先flagや優先度順を指定することができる。なお、ここでは、選択情報flagと選択情報値は、図17に示したものとされる。
 例えば、あるオクルージョン画像のテクスチャ情報のAdaptationSetに対して、以下の3つのEssentialPropertyが設定されているとする。
 <EssentialProperty schemeIdUri=“urn:mpeg:dash:occlusion-dynamic:2017” value=“1001,2,100”>
 <EssentialProperty schemeIdUri=“urn:mpeg:dash:occlusion-dynamic:2017” value=“1001,1,50”>
 <EssentialProperty schemeIdUri=“urn:mpeg:dash:occlusion-dynamic:2017” value=“1001,2,70”>
 この場合、1つ目のEssentialPropertyは、先頭から100個のセグメント(またはサブセグメント)の優先度順が「2」であることを示しており、2つ目のEssentialPropertyは、次の50個、つまり101番目から150番目のセグメント(またはサブセグメント)の優先度順が「1」であることを示している。さらに、3つ目のEssentialPropertyは、さらにその次の70個、つまり151番目から220番目のセグメント(またはサブセグメント)の優先度順が「2」であることを示している。
 このようにMPDファイルに、いくつかのセグメント(フレーム)からなる期間ごとにEssentialPropertyを設け、各時刻(期間)の優先flagや優先度順を記述することでも優先flagや優先度順の時間的な変化に対応し、適切なオクルージョン画像を選択することができる。
 このような場合には、ファイル生成装置11では、図7のステップS13において、図17に示した選択情報flagおよび選択情報値と、期間を示すセグメントの個数とがvalueに含まれるEssentialPropertyが記述されたMPDファイルがMPDファイル生成部33により生成される。
 また、クライアント装置71では、図26を参照して説明した選択順リスト生成処理と同様の処理が行われる。但し、ステップS212の処理は行われずに、ステップS211で取得されたMPDファイルから、各セグメント(フレーム)における優先flagや優先度順が読み出されることになる。
 以上のような第5の実施の形態や第5の実施の形態の変形例1では、優先flagや優先度順をISO Base media fileのQuality情報として同時に配信したり、MPDファイルでセグメント(またはサブセグメント)ごとに優先flagや優先度順を配信したりすることで、時間ごとに優先flagや優先度順を変化させることができるようになる。これにより、クライアント装置71では、時間ごとに適切なオクルージョン画像を選択することができる。
 また、例えばコンテンツの再生開始時におけるユーザの視点位置に応じたオクルージョン画像については、オクルージョン画像をMPDファイルに格納してクライアント装置71に供給するようにしてもよい。
 そのような場合、例えばクライアント装置71は、現時刻におけるユーザの視点位置を含み、MPDファイルの送信を要求する送信リクエストを生成し、サーバに送信する。
 すると、クライアント装置71からの送信リクエストを受信したサーバは、保持している複数のオクルージョン画像のうち、その送信リクエストに含まれるユーザの視点位置に近い位置にあるいくつかのオクルージョン画像を選択する。
 そして、サーバは、選択したオクルージョン画像を含むMPDファイルを生成し、クライアント装置71へと送信する。このようにすることで、クライアント装置71は、コンテンツ再生開始直後においては、クライアント装置71側でオクルージョン画像の選択を行うことなく、適切なオクルージョン画像を得ることができる。なお、その後においては、クライアント装置71は、上述した各実施の形態で説明した手法によりオクルージョン画像を選択し、サーバから取得する。
 なお、オクルージョン画像を含むMPDファイルを生成する処理は、ファイル生成装置11により行われてもよい。そのような場合、アップロード部35が視点位置を含む送信リクエストを受信し、MPDファイル生成部33が、オクルージョン画像が含まれるMPDファイルを生成し、そのMPDファイルをアップロード部35がクライアント装置71に送信する。
〈コンピュータの構成例〉
 ところで、上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウェアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
 図27は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
 コンピュータにおいて、CPU(Central Processing Unit)501,ROM(Read Only Memory)502,RAM(Random Access Memory)503は、バス504により相互に接続されている。
 バス504には、さらに、入出力インターフェース505が接続されている。入出力インターフェース505には、入力部506、出力部507、記録部508、通信部509、及びドライブ510が接続されている。
 入力部506は、キーボード、マウス、マイクロフォン、撮像素子などよりなる。出力部507は、ディスプレイ、スピーカなどよりなる。記録部508は、ハードディスクや不揮発性のメモリなどよりなる。通信部509は、ネットワークインターフェースなどよりなる。ドライブ510は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブル記録媒体511を駆動する。
 以上のように構成されるコンピュータでは、CPU501が、例えば、記録部508に記録されているプログラムを、入出力インターフェース505及びバス504を介して、RAM503にロードして実行することにより、上述した一連の処理が行われる。
 コンピュータ(CPU501)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブル記録媒体511に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
 コンピュータでは、プログラムは、リムーバブル記録媒体511をドライブ510に装着することにより、入出力インターフェース505を介して、記録部508にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部509で受信し、記録部508にインストールすることができる。その他、プログラムは、ROM502や記録部508に、あらかじめインストールしておくことができる。
 なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
 また、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
 例えば、本技術は、1つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
 また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
 さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
 さらに、本技術は、以下の構成とすることも可能である。
(1)
 MPDファイルに含まれているオクルージョン画像の視点位置に関する情報に基づいて、前記MPDファイルにより示される複数の前記オクルージョン画像のなかから、取得する前記オクルージョン画像を選択するMPDファイル処理部を備える
 画像処理装置。
(2)
 前記MPDファイル処理部は、伝送帯域に応じた個数の前記オクルージョン画像を選択する
 (1)に記載の画像処理装置。
(3)
 前記MPDファイル処理部により選択された前記オクルージョン画像を取得する取得部をさらに備える
 (1)または(2)に記載の画像処理装置。
(4)
 前記MPDファイル処理部は、前記オクルージョン画像の視点位置がユーザの視点位置に近いものから順番に前記オクルージョン画像を選択する
 (1)乃至(3)の何れか一項に記載の画像処理装置。
(5)
 前記オクルージョン画像の視点位置に関する情報は、前記オクルージョン画像の視点位置を示す座標情報である
 (1)乃至(4)の何れか一項に記載の画像処理装置。
(6)
 前記オクルージョン画像の視点位置に関する情報は、基準位置からみた前記オクルージョン画像の視点位置の方向を示す方向情報である
 (1)乃至(4)の何れか一項に記載の画像処理装置。
(7)
 前記オクルージョン画像の視点位置に関する情報は、前記方向情報、および前記基準位置から前記オクルージョン画像の視点位置までの距離を示す距離情報である
 (6)に記載の画像処理装置。
(8)
 前記MPDファイル処理部は、前記オクルージョン画像の視点位置に関する情報、および前記MPDファイルに含まれている前記オクルージョン画像のデプスに関する情報の少なくとも何れか一方に基づいて前記オクルージョン画像を選択する
 (1)乃至(7)の何れか一項に記載の画像処理装置。
(9)
 前記MPDファイルには、前記オクルージョン画像ごとに、前記オクルージョン画像の視点位置に関する情報および前記オクルージョン画像のデプスに関する情報のうちの何れの情報が含まれているかを示す選択情報と、前記選択情報により示される情報とが含まれている
 (8)に記載の画像処理装置。
(10)
 前記MPDファイル処理部は、前記オクルージョン画像の優先度に関する情報をさらに用いて前記オクルージョン画像を選択する
 (1)乃至(9)の何れか一項に記載の画像処理装置。
(11)
 前記MPDファイル処理部は、時刻ごとに定められた前記オクルージョン画像の優先度に関する情報を用いて、各時刻の前記オクルージョン画像を選択する
 (10)に記載の画像処理装置。
(12)
 前記MPDファイルには、各前記オクルージョン画像について、複数の期間ごとに、前記期間を示す情報と、前記期間における前記オクルージョン画像の優先度に関する情報とが含まれている
 (11)に記載の画像処理装置。
(13)
 前記オクルージョン画像の優先度に関する情報は、前記オクルージョン画像が用いられて再生されるコンテンツの品質に関する情報が格納されるファイルに含まれている
 (11)に記載の画像処理装置。
(14)
 前記MPDファイルには、前記オクルージョン画像を利用可能な、ユーザの視点位置の範囲を示す視点位置情報が含まれており、
 前記MPDファイル処理部は、前記視点位置情報に基づいて、前記複数の前記オクルージョン画像のうちの前記ユーザの視点位置が前記範囲内となる前記オクルージョン画像のなかから、取得する前記オクルージョン画像を選択する
 (1)乃至(13)の何れか一項に記載の画像処理装置。
(15)
 前記ユーザの視点位置が前記範囲内となる前記オクルージョン画像がない場合、前記ユーザの視点位置が、前記オクルージョン画像が用いられて再生されるコンテンツの表示範囲外である旨の表示情報を生成して出力する表示情報生成部をさらに備える
 (14)に記載の画像処理装置。
(16)
 MPDファイルに含まれているオクルージョン画像の視点位置に関する情報に基づいて、前記MPDファイルにより示される複数の前記オクルージョン画像のなかから、取得する前記オクルージョン画像を選択する
 ステップを含む画像処理方法。
(17)
 MPDファイルに含まれているオクルージョン画像の視点位置に関する情報に基づいて、前記MPDファイルにより示される複数の前記オクルージョン画像のなかから、取得する前記オクルージョン画像を選択する
 ステップを含む処理をコンピュータに実行させるプログラム。
(18)
 複数のオクルージョン画像について、前記オクルージョン画像の視点位置に関する情報を含むMPDファイルを生成するMPDファイル生成部と、
 前記MPDファイルを送信する通信部と
 を備えるファイル生成装置。
(19)
 前記オクルージョン画像の視点位置に関する情報は、前記オクルージョン画像の視点位置を示す座標情報である
 (18)に記載のファイル生成装置。
(20)
 前記オクルージョン画像の視点位置に関する情報は、基準位置からみた前記オクルージョン画像の視点位置の方向を示す方向情報である
 (18)に記載のファイル生成装置。
(21)
 前記オクルージョン画像の視点位置に関する情報は、前記方向情報、および前記基準位置から前記オクルージョン画像の視点位置までの距離を示す距離情報である
 (20)に記載のファイル生成装置。
(22)
 前記MPDファイルには、前記オクルージョンごとに、前記オクルージョン画像の視点位置に関する情報、および前記オクルージョン画像のデプスに関する情報の少なくとも何れか一方が含まれている
 (18)乃至(21)の何れか一項に記載のファイル生成装置。
(23)
 前記MPDファイルには、前記オクルージョン画像ごとに、前記オクルージョン画像の視点位置に関する情報および前記オクルージョン画像のデプスに関する情報のうちの何れの情報が含まれているかを示す選択情報と、前記選択情報により示される情報とが含まれている
 (22)に記載のファイル生成装置。
(24)
 前記MPDファイルには、前記オクルージョン画像の優先度に関する情報が含まれている
 (18)乃至(23)の何れか一項に記載のファイル生成装置。
(25)
 前記MPDファイルには、各前記オクルージョン画像について、複数の期間ごとに、前記期間を示す情報と、前記期間における前記オクルージョン画像の優先度に関する情報とが含まれている
 (24)に記載のファイル生成装置。
(26)
 前記MPDファイルには、前記オクルージョン画像を利用可能なユーザの視点位置の範囲を示す視点位置情報が含まれている
 (18)乃至(25)の何れか一項に記載のファイル生成装置。
(27)
 複数のオクルージョン画像について、前記オクルージョン画像の視点位置に関する情報を含むMPDファイルを生成し、
 前記MPDファイルを送信する
 ステップを含むファイル生成方法。
(28)
 複数のオクルージョン画像について、前記オクルージョン画像の視点位置に関する情報を含むMPDファイルを生成し、
 前記MPDファイルを送信する
 ステップを含む処理をコンピュータに実行させるプログラム。
 11 ファイル生成装置, 33 MPDファイル生成部, 35 アップロード部, 71 クライアント装置, 93 MPDファイル処理部, 94 セグメントファイル取得部, 113 表示情報生成部

Claims (20)

  1.  MPDファイルに含まれているオクルージョン画像の視点位置に関する情報に基づいて、前記MPDファイルにより示される複数の前記オクルージョン画像のなかから、取得する前記オクルージョン画像を選択するMPDファイル処理部を備える
     画像処理装置。
  2.  前記MPDファイル処理部は、伝送帯域に応じた個数の前記オクルージョン画像を選択する
     請求項1に記載の画像処理装置。
  3.  前記MPDファイル処理部により選択された前記オクルージョン画像を取得する取得部をさらに備える
     請求項1に記載の画像処理装置。
  4.  前記MPDファイル処理部は、前記オクルージョン画像の視点位置がユーザの視点位置に近いものから順番に前記オクルージョン画像を選択する
     請求項1に記載の画像処理装置。
  5.  前記オクルージョン画像の視点位置に関する情報は、前記オクルージョン画像の視点位置を示す座標情報である
     請求項1に記載の画像処理装置。
  6.  前記オクルージョン画像の視点位置に関する情報は、基準位置からみた前記オクルージョン画像の視点位置の方向を示す方向情報である
     請求項1に記載の画像処理装置。
  7.  前記オクルージョン画像の視点位置に関する情報は、前記方向情報、および前記基準位置から前記オクルージョン画像の視点位置までの距離を示す距離情報である
     請求項6に記載の画像処理装置。
  8.  前記MPDファイル処理部は、前記オクルージョン画像の視点位置に関する情報、および前記MPDファイルに含まれている前記オクルージョン画像のデプスに関する情報の少なくとも何れか一方に基づいて前記オクルージョン画像を選択する
     請求項1に記載の画像処理装置。
  9.  前記MPDファイルには、前記オクルージョン画像ごとに、前記オクルージョン画像の視点位置に関する情報および前記オクルージョン画像のデプスに関する情報のうちの何れの情報が含まれているかを示す選択情報と、前記選択情報により示される情報とが含まれている
     請求項8に記載の画像処理装置。
  10.  前記MPDファイル処理部は、前記オクルージョン画像の優先度に関する情報をさらに用いて前記オクルージョン画像を選択する
     請求項1に記載の画像処理装置。
  11.  前記MPDファイル処理部は、時刻ごとに定められた前記オクルージョン画像の優先度に関する情報を用いて、各時刻の前記オクルージョン画像を選択する
     請求項10に記載の画像処理装置。
  12.  前記MPDファイルには、各前記オクルージョン画像について、複数の期間ごとに、前記期間を示す情報と、前記期間における前記オクルージョン画像の優先度に関する情報とが含まれている
     請求項11に記載の画像処理装置。
  13.  前記オクルージョン画像の優先度に関する情報は、前記オクルージョン画像が用いられて再生されるコンテンツの品質に関する情報が格納されるファイルに含まれている
     請求項11に記載の画像処理装置。
  14.  前記MPDファイルには、前記オクルージョン画像を利用可能な、ユーザの視点位置の範囲を示す視点位置情報が含まれており、
     前記MPDファイル処理部は、前記視点位置情報に基づいて、前記複数の前記オクルージョン画像のうちの前記ユーザの視点位置が前記範囲内となる前記オクルージョン画像のなかから、取得する前記オクルージョン画像を選択する
     請求項1に記載の画像処理装置。
  15.  前記ユーザの視点位置が前記範囲内となる前記オクルージョン画像がない場合、前記ユーザの視点位置が、前記オクルージョン画像が用いられて再生されるコンテンツの表示範囲外である旨の表示情報を生成して出力する表示情報生成部をさらに備える
     請求項14に記載の画像処理装置。
  16.  MPDファイルに含まれているオクルージョン画像の視点位置に関する情報に基づいて、前記MPDファイルにより示される複数の前記オクルージョン画像のなかから、取得する前記オクルージョン画像を選択する
     ステップを含む画像処理方法。
  17.  MPDファイルに含まれているオクルージョン画像の視点位置に関する情報に基づいて、前記MPDファイルにより示される複数の前記オクルージョン画像のなかから、取得する前記オクルージョン画像を選択する
     ステップを含む処理をコンピュータに実行させるプログラム。
  18.  複数のオクルージョン画像について、前記オクルージョン画像の視点位置に関する情報を含むMPDファイルを生成するMPDファイル生成部と、
     前記MPDファイルを送信する通信部と
     を備えるファイル生成装置。
  19.  複数のオクルージョン画像について、前記オクルージョン画像の視点位置に関する情報を含むMPDファイルを生成し、
     前記MPDファイルを送信する
     ステップを含むファイル生成方法。
  20.  複数のオクルージョン画像について、前記オクルージョン画像の視点位置に関する情報を含むMPDファイルを生成し、
     前記MPDファイルを送信する
     ステップを含む処理をコンピュータに実行させるプログラム。
PCT/JP2018/018842 2017-05-30 2018-05-16 画像処理装置および方法、ファイル生成装置および方法、並びにプログラム WO2018221211A1 (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
KR1020197033637A KR20200014281A (ko) 2017-05-30 2018-05-16 화상 처리 장치 및 방법, 파일 생성 장치 및 방법, 그리고 프로그램
JP2019522097A JP7200935B2 (ja) 2017-05-30 2018-05-16 画像処理装置および方法、ファイル生成装置および方法、並びにプログラム
RU2019137581A RU2019137581A (ru) 2017-05-30 2018-05-16 Устройство и способ обработки изображений, устройство и способ генерирования файлов и программа
EP18809776.0A EP3633628B1 (en) 2017-05-30 2018-05-16 Image processing device and method, file generation device and method, and program
US16/609,305 US11394943B2 (en) 2017-05-30 2018-05-16 Image processing apparatus and method, file generation apparatus and method, and program
BR112019024597A BR112019024597A2 (pt) 2017-05-30 2018-05-16 aparelho e método de processamento de imagem, programa para fazer com que um computador execute processamento, e, aparelho e método de geração de arquivo
CN201880026631.7A CN110546688B (zh) 2017-05-30 2018-05-16 图像处理装置和方法、文件生成装置和方法及程序

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017106233 2017-05-30
JP2017-106233 2017-05-30

Publications (1)

Publication Number Publication Date
WO2018221211A1 true WO2018221211A1 (ja) 2018-12-06

Family

ID=64455430

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/018842 WO2018221211A1 (ja) 2017-05-30 2018-05-16 画像処理装置および方法、ファイル生成装置および方法、並びにプログラム

Country Status (9)

Country Link
US (1) US11394943B2 (ja)
EP (1) EP3633628B1 (ja)
JP (1) JP7200935B2 (ja)
KR (1) KR20200014281A (ja)
CN (1) CN110546688B (ja)
BR (1) BR112019024597A2 (ja)
RU (1) RU2019137581A (ja)
TW (1) TW201911240A (ja)
WO (1) WO2018221211A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022244131A1 (ja) * 2021-05-19 2022-11-24 株式会社ソニー・インタラクティブエンタテインメント 画像データ生成装置、表示装置、画像表示システム、画像データ生成方法、画像表示方法、および、画像データのデータ構造

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3416381A1 (en) 2017-06-12 2018-12-19 Thomson Licensing Method and apparatus for providing information to a user observing a multi view content
EP3416371A1 (en) * 2017-06-12 2018-12-19 Thomson Licensing Method for displaying, on a 2d display device, a content derived from light field data
US11129042B2 (en) * 2019-09-16 2021-09-21 Nec Corporation Of America Path crossing detection based on wireless signals travel time
KR102216956B1 (ko) * 2019-11-26 2021-02-19 서울과학기술대학교 산학협력단 다중 시점 영상의 프리로드 시스템 및 방법

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6002430A (en) 1994-01-31 1999-12-14 Interactive Pictures Corporation Method and apparatus for simultaneous capture of a spherical image
RU2143718C1 (ru) 1998-05-15 1999-12-27 Институт автоматики и электрометрии СО РАН Способ и устройство отображения пространственных объектов
JP5008703B2 (ja) * 2009-08-18 2012-08-22 株式会社ソニー・コンピュータエンタテインメント コンテンツ作成支援装置、画像処理装置、コンテンツ作成支援方法、画像処理方法、および画像表示コンテンツのデータ構造
WO2011039679A1 (en) * 2009-10-02 2011-04-07 Koninklijke Philips Electronics N.V. Selecting viewpoints for generating additional views in 3d video
CN101742349B (zh) * 2010-01-05 2011-07-20 浙江大学 一种对三维场景的表达方法及其电视系统
BR112014004057A2 (pt) 2012-07-02 2017-03-07 Sony Corp dispositivo e método de transmissão, e, aparelho de rede
US9618747B2 (en) * 2013-03-13 2017-04-11 Jason Villmer Head mounted display for viewing and creating a media file including omnidirectional image data and corresponding audio data
MX364810B (es) * 2013-07-19 2019-05-07 Sony Corp Dispositivo y método de procesamiento de información.
EP3148200B1 (en) * 2014-06-30 2020-06-17 Sony Corporation Information processing device and method selecting content files based on encoding parallelism type
JP2016049102A (ja) * 2014-08-29 2016-04-11 株式会社リコー 圃場管理システム、圃場管理方法、プログラム
US10127714B1 (en) * 2015-01-27 2018-11-13 Google Llc Spherical three-dimensional video rendering for virtual reality
CN108702528B (zh) * 2016-02-17 2021-06-01 Lg电子株式会社 发送360视频的方法、接收360视频的方法、发送360视频的设备和接收360视频的设备
US10225546B2 (en) * 2016-02-26 2019-03-05 Qualcomm Incorporated Independent multi-resolution coding
US10841566B2 (en) * 2016-05-26 2020-11-17 Vid Scale, Inc. Methods and apparatus of viewport adaptive 360 degree video delivery
US10547879B2 (en) * 2016-07-14 2020-01-28 Mediatek Inc. Method and apparatus for streaming video content
EP3503546A4 (en) * 2016-08-25 2020-01-22 LG Electronics Inc. -1- METHOD FOR SENDING AN OMNIDIRECTIONAL VIDEO, METHOD FOR RECEIVING AN OMNIDIRECTIONAL VIDEO, DEVICE FOR SENDING AN OMNIDIRECTIONAL VIDEO, AND DEVICE FOR RECEIVING AN OMNIDIRECTIONAL VIDEO
CN109644296A (zh) * 2016-10-10 2019-04-16 华为技术有限公司 一种视频流传输方法、相关设备及系统
EP3526974B1 (en) * 2016-10-12 2021-06-30 Koninklijke KPN N.V. Processing spherical video data on the basis of a region of interest
US10261749B1 (en) * 2016-11-30 2019-04-16 Google Llc Audio output for panoramic images
US10595069B2 (en) * 2016-12-05 2020-03-17 Adobe Inc. Prioritizing tile-based virtual reality video streaming using adaptive rate allocation
US10620441B2 (en) * 2016-12-14 2020-04-14 Qualcomm Incorporated Viewport-aware quality metric for 360-degree video
EP3565260A1 (en) * 2016-12-28 2019-11-06 Sony Corporation Generation device, identification information generation method, reproduction device, and image generation method
US10805650B2 (en) * 2017-03-27 2020-10-13 Qualcomm Incorporated Signaling important video information in network video streaming using mime type parameters
US10819645B2 (en) * 2017-09-20 2020-10-27 Futurewei Technologies, Inc. Combined method for data rate and field of view size adaptation for virtual reality and 360 degree video streaming
WO2019194434A1 (ko) * 2018-04-05 2019-10-10 엘지전자 주식회사 복수의 뷰포인트들에 대한 메타데이터를 송수신하는 방법 및 장치
KR102278848B1 (ko) * 2018-07-31 2021-07-19 엘지전자 주식회사 다중 뷰포인트 기반 360 비디오 처리 방법 및 그 장치
KR102640664B1 (ko) * 2019-08-16 2024-02-26 엘지전자 주식회사 Vr 디바이스 및 vr 디바이스 제어 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
TANI, HIROAKI ET AL.: "Assessment of Multi-View Video and Audio ( MW -A) Transmission with MPEG-DASH", IEICE TECHNICAL REPORT, vol. 114, no. 488, February 2015 (2015-02-01), pages 37 - 42, XP009516920 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022244131A1 (ja) * 2021-05-19 2022-11-24 株式会社ソニー・インタラクティブエンタテインメント 画像データ生成装置、表示装置、画像表示システム、画像データ生成方法、画像表示方法、および、画像データのデータ構造

Also Published As

Publication number Publication date
US20200059635A1 (en) 2020-02-20
BR112019024597A2 (pt) 2020-06-09
RU2019137581A (ru) 2021-05-24
EP3633628A4 (en) 2020-04-08
EP3633628B1 (en) 2021-04-07
KR20200014281A (ko) 2020-02-10
TW201911240A (zh) 2019-03-16
EP3633628A1 (en) 2020-04-08
JP7200935B2 (ja) 2023-01-10
US11394943B2 (en) 2022-07-19
RU2019137581A3 (ja) 2021-08-24
CN110546688A (zh) 2019-12-06
JPWO2018221211A1 (ja) 2020-05-21
CN110546688B (zh) 2023-11-17

Similar Documents

Publication Publication Date Title
WO2018221211A1 (ja) 画像処理装置および方法、ファイル生成装置および方法、並びにプログラム
US11025959B2 (en) Probabilistic model to compress images for three-dimensional video
US10681342B2 (en) Behavioral directional encoding of three-dimensional video
US10536693B2 (en) Analytic reprocessing for data stream system and method
US11653065B2 (en) Content based stream splitting of video data
US10909761B1 (en) 2D video with option for projected viewing in modeled 3D space
US20170110155A1 (en) Automatic Generation of Video and Directional Audio From Spherical Content
US20170104927A1 (en) Systems, methods and software programs for 360 degree video distribution platforms
CN109416931A (zh) 用于视线跟踪的装置和方法
US10511767B2 (en) Information processing device, information processing method, and program
WO2019131577A1 (ja) 情報処理装置、情報処理方法、及びプログラム
US20180336069A1 (en) Systems and methods for a hardware agnostic virtual experience
US11647158B2 (en) Eye gaze adjustment
US20230018560A1 (en) Virtual Reality Systems and Methods
JP2020150519A (ja) 注目度算出装置、注目度算出方法、および注目度算出プログラム
US20190052868A1 (en) Wide viewing angle video processing system, wide viewing angle video transmitting and reproducing method, and computer program therefor
KR20190030565A (ko) 전자 장치 및 그 동작방법
WO2022259632A1 (ja) 情報処理装置及び情報処理方法
WO2022230253A1 (ja) 情報処理装置及び情報処理方法

Legal Events

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

Ref document number: 18809776

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019522097

Country of ref document: JP

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 20197033637

Country of ref document: KR

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

REG Reference to national code

Ref country code: BR

Ref legal event code: B01A

Ref document number: 112019024597

Country of ref document: BR

WWE Wipo information: entry into national phase

Ref document number: 2018809776

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2018809776

Country of ref document: EP

Effective date: 20200102

ENP Entry into the national phase

Ref document number: 112019024597

Country of ref document: BR

Kind code of ref document: A2

Effective date: 20191122