WO2021256326A1 - サーバ装置、端末装置、情報処理システム及び情報処理方法 - Google Patents

サーバ装置、端末装置、情報処理システム及び情報処理方法 Download PDF

Info

Publication number
WO2021256326A1
WO2021256326A1 PCT/JP2021/021715 JP2021021715W WO2021256326A1 WO 2021256326 A1 WO2021256326 A1 WO 2021256326A1 JP 2021021715 W JP2021021715 W JP 2021021715W WO 2021256326 A1 WO2021256326 A1 WO 2021256326A1
Authority
WO
WIPO (PCT)
Prior art keywords
server device
video information
image
terminal device
control unit
Prior art date
Application number
PCT/JP2021/021715
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 US18/009,861 priority Critical patent/US20230224550A1/en
Priority to JP2022531701A priority patent/JPWO2021256326A1/ja
Priority to CN202180042007.8A priority patent/CN115918094A/zh
Publication of WO2021256326A1 publication Critical patent/WO2021256326A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/64Addressing
    • H04N21/6405Multicasting
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/355Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an encoded video stream for transmitting to a mobile phone or a thin client
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/358Adapting the game course according to the network or server load, e.g. for reducing latency due to different connection speeds between clients
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/64Addressing
    • H04N21/6408Unicasting
    • 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

Definitions

  • This technology relates to technologies such as server devices that perform cloud rendering.
  • cloud rendering that renders on the server device side has been proposed.
  • the terminal device sends information such as a viewing position and a viewing direction to the server.
  • the server device renders the required video from the free viewpoint video according to the received viewing position and viewing direction, encodes this video as a two-dimensional video stream, and transmits the video to the terminal device.
  • the terminal device In clyde rendering, the terminal device only needs to decode and display the two-dimensional video stream, so that the user can be provided with a high-quality viewing experience even if the terminal device does not have a high-performance GPU or the like. Can be done.
  • Patent Document 1 is mentioned as a technique related to the present application.
  • Clyde rendering has a problem that the processing load on the server device side increases in proportion to the number of terminal devices that request viewing.
  • the purpose of this technology is to provide a technology that can reduce the processing load on the server device side in cloud rendering.
  • the server device is equipped with a control unit.
  • the control unit groups the terminal devices having the same viewing position in the same segment based on the viewing position information of each terminal device in the viewing area including a plurality of segments, and for each grouped terminal device. Common video information is transmitted by multicast.
  • the terminal device is equipped with a control unit.
  • the control unit groups the terminal devices having the same viewing position in the same segment based on the viewing position information of each terminal device in the viewing area including a plurality of segments, and for each grouped terminal device.
  • the common video information is received from the server device that transmits the common video information by multicast, and the image to be displayed is rendered based on the received common video information.
  • the information processing system includes a server device and a terminal device.
  • the server device groups terminal devices having a viewing position in the same segment based on the viewing position information of each terminal device in a viewing area including a plurality of segments, and for each grouped terminal device.
  • Common video information is transmitted by multicast.
  • the terminal device receives the common video information and renders an image to be displayed based on the received common video information.
  • the terminal devices having the same viewing position are grouped and grouped based on the viewing position information of each terminal device in the viewing area including a plurality of segments.
  • Common video information is transmitted to the terminal device by multicast.
  • FIG. 1 is a diagram showing an information processing system 100 according to a first embodiment of the present technology.
  • the information processing system 100 includes a plurality of terminal devices 10 and a plurality of server devices 20.
  • the terminal device 10 may be a mobile terminal that can be carried by the user, or may be a wearable terminal that can be worn by the user. Alternatively, the terminal device 10 may be a stationary terminal that is installed and used.
  • Examples of mobile terminals include mobile phones (including smartphones), tablet PCs (Personal Computers), portable game machines, portable music players, and the like.
  • Examples of the wearable terminal include a head-mounted type (HMD: Head Mounted Display), a wristband type (watch type), a pendant type, a ring type, and the like.
  • Examples of the stationary terminal include a desktop PC, a television device, and an stationary game machine.
  • the server device 20 side generates necessary video information by cloud rendering from a three-dimensional video corresponding to the entire actual event venue (for example, a stadium) in the real space. , Used as a system for live distribution of video information to the terminal device 10.
  • the server device 20 side is required by cloud rendering from a three-dimensional image corresponding to the entire virtual event venue or the like in the virtual space (for example, a virtual stadium by a game). It is used as a system that generates video information and delivers the video information to the terminal device 10 live.
  • the user can enjoy the event held in the real space or the event held in the virtual space live by his / her own terminal device 10. In this case, since it is cloud rendering, the user can enjoy a high-quality image even if the processing capacity of the terminal device 10 is low.
  • the user may carry or wear the terminal device 10 and be at an actual event venue or the like (when the terminal device 10 is a mobile terminal or a wearable terminal).
  • the user may be in any place other than the event venue such as home (regardless of the type of the terminal device 10).
  • the user may be in any place such as home (regardless of the type of the terminal device 10).
  • the server device 20 side generates individual video information for each terminal device 10 according to the viewing position, viewing direction, etc. individually requested by each terminal device 10, and this individual video information is generated. It is assumed that all video information is transmitted by unicast. In this case, the processing load on the server device 20 side increases in proportion to the number of terminal devices 10 requesting viewing.
  • the server device 20 side is in the segment 2 having the same viewing position based on the viewing position information of each terminal device 10 in the viewing area 1 including the plurality of segments 2 under predetermined conditions.
  • the terminal devices 10 existing in the above are grouped, and a process of transmitting common video information to each grouped terminal device 10 by multicast is executed.
  • FIG. 5 is a diagram showing an example of the viewing area 1 and the segment 2.
  • the area corresponding to the entire soccer stadium is defined as the viewing area 1, and the state when the viewing area 1 is divided into a plurality of segments 2 is shown.
  • the viewing area 1 is divided into 36 segments 2 of 6 ⁇ 6 in the X-axis direction ⁇ Y-axis direction (horizontal direction).
  • the number of segments is not particularly limited.
  • the viewing area 1 may be divided in the Z-axis direction (height direction) and the segment 2 may be set.
  • the "viewing area 1" is an area corresponding to an actual event venue or the like in a real space or a virtual event venue or the like in a virtual space, and is an area in which video can be viewed. It means (area where the viewing position can be set). Further, the “segment 2” means a certain area that divides the viewing area 1.
  • the "viewing position” means the stance point of the viewpoint in the viewing area 1 (indicated by a circle in FIG. 5).
  • the viewing position is a position requested from the terminal device 10 side, and is a position within the viewing area 1 that can be arbitrarily set by the user.
  • This viewing position may be the position of the terminal device 10 in the actual event venue when the event is a bend in the real space and the terminal device 10 is located in the actual event venue.
  • the "viewing direction” means the viewing direction from the viewing position.
  • the viewing direction is a direction requested from the terminal device 10 side, and is a direction that can be arbitrarily set by the user.
  • the viewing direction may be the direction (posture direction) that the terminal device 10 (user) is facing at the actual event venue.
  • the three-dimensional image corresponding to the entire event venue (corresponding to all viewing positions in the viewing area 1) is obtained from a large number of cameras installed in the event venue. Video information is synthesized and generated.
  • a three-dimensional image corresponding to the entire event venue or the like (corresponding to all viewing positions in the viewing area 1) is generated in advance by the event organizer or the like and is a server device. It is stored on the 20 side.
  • FIG. 2 is a block diagram showing an internal configuration of the terminal device 10. As shown in FIG. 2, the terminal device 10 includes a control unit 11, a storage unit 12, a display unit 13, an operation unit 14, and a communication unit 15.
  • the display unit 13 is composed of, for example, a liquid crystal display, an EL (Electro-Luminescence) display, or the like.
  • the display unit 13 displays an image on the screen according to the control of the control unit 11.
  • the operation unit 14 is, for example, various operation units such as a push button type and a proximity type.
  • the operation unit 14 detects various operations such as designation of a viewing position and a viewing direction by a user and outputs them to the control unit 11.
  • the communication unit 15 is configured to be able to communicate with each server device 20.
  • the storage unit 12 includes various programs required for processing of the control unit 11, a non-volatile memory for storing various data, and a volatile memory used as a work area of the control unit 11.
  • the various programs may be read from a portable recording medium such as an optical disk or a semiconductor memory, or may be downloaded from a server device 20 on a network.
  • the control unit 11 executes various operations based on various programs stored in the storage unit 12, and controls each unit of the terminal device 10 in an integrated manner.
  • the control unit 11 is realized by hardware or a combination of hardware and software.
  • the hardware is configured as a part or all of the control unit 1, and the hardware includes a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a VPU (Vision Processing Unit), a DSP (Digital Signal Processor), and the like. Examples include FPGA (Field Programmable Gate Array), ASIC (Application Specific Integrated Circuit), or a combination of two or more of these. The same applies to the control units 21 and 31 of the server device 20.
  • the terminal device 10 When the terminal device 10 is a wearable terminal such as an HMD or a mobile terminal such as a smartphone, the terminal device 10 may have various sensors for executing self-position estimation processing. Examples of various sensors for executing the self-position estimation process include an image pickup unit (camera, etc.), an inertial sensor (acceleration sensor, angular velocity sensor, etc.), GPS (Global Positioning System), and the like.
  • various sensors for executing the self-position estimation process include an image pickup unit (camera, etc.), an inertial sensor (acceleration sensor, angular velocity sensor, etc.), GPS (Global Positioning System), and the like.
  • the terminal device 10 (control unit) is, for example, SLAM (Simultaneous Localization) based on image information from the image pickup unit, inertial information (acceleration information, angular velocity information, etc.) from the inertial sensor, position information from GPS, and the like. Estimate the self-positioning posture using And Mapping).
  • SLAM Simultaneous Localization
  • the estimated self-position may be used as the viewing position information.
  • the estimated self-posture may be used as viewing direction information.
  • control unit 11 of the terminal device 10 is typically roughly classified into “viewing position information transmission processing”, “common video information request processing”, and [individual video information request processing]. "Image display processing based on common video information”, “Image display processing based on individual video information”, “Image display processing based on lightweight 3D video”, etc. are executed.
  • the "lightweight 3D image” is the amount of information of the 3D image corresponding to the entire event venue or the like in the real space or the virtual space (corresponding to all the viewing positions in the viewing area 1). It is the video information generated by reducing the number of.
  • This lightweight 3D image is typically used in the terminal device 10 when there is a significant change in viewing position, such as beyond segment 2.
  • server device 20 Next, the server device 20 will be described.
  • the first type is the management server 20a
  • the second type is the distribution server 20b.
  • the number of management servers 20a is typically one
  • the number of distribution servers 20b is typically plural.
  • server devices 20 when the two types of server devices 20 are not particularly distinguished, they are simply referred to as server devices 20, and when the two types of server devices 20 are distinguished, they are referred to as a management server 20a and a distribution server 20b. Call.
  • the whole including the management server 20a and the distribution server 20b can be regarded as one server device 20.
  • FIG. 3 is a block diagram showing an internal configuration of the management server 20a.
  • the management server 20a includes a control unit 21, a storage unit 22, and a communication unit 23.
  • the communication unit 23 is configured to be able to communicate with each terminal device 10 and another server device 20.
  • the storage unit 22 includes various programs required for processing of the control unit 21, a non-volatile memory for storing various data, and a volatile memory used as a work area of the control unit 21.
  • the various programs may be read from a portable recording medium such as an optical disk or a semiconductor memory, or may be downloaded from another server device on the network.
  • the control unit 21 executes various operations based on various programs stored in the storage unit 22, and comprehensively controls each unit of the management server 20a.
  • control unit 21 of the management server 20a is typically roughly classified into “grouping process”, “rendering resource allocation process”, “distribution server list generation process”, and “common video information generation”.
  • grouping process “rendering resource allocation process”
  • distributed server list generation process “common video information generation”.
  • Processing “Common video information multicast processing”
  • Individual video information generation processing “Individual video information unicast processing”
  • Lightweight 3D video generation processing "Lightweight 3D video multicast processing”
  • the "rendering resource” means one unit having a processing capacity capable of rendering common video information in multicast or individual video information in unicast.
  • the "rendering resource” means one unit having a processing capacity capable of rendering common video information in multicast or individual video information in unicast.
  • the "distribution server list” refers to which server device 20 among the plurality of server devices 20 should request video information according to the viewing position of the terminal device 10. It is a list shown (see FIG. 10).
  • FIG. 4 is a block diagram showing an internal configuration of the distribution server 20b.
  • the distribution server 20b includes a control unit 31, a storage unit 32, and a communication unit 33.
  • the distribution server 20b has basically the same configuration as the management server 20a, but the processing of the control unit 31 is different.
  • control unit 31 of the distribution server 20b is typically roughly classified into “common video information generation processing”, “common video information multicast processing”, and “individual video information generation processing”. , “Unicast processing of individual video information” and so on.
  • the management server 20a has “grouping processing”, “rendering resource allocation processing”, “distribution server list generation processing”, and “lightweight 3D video generation processing”.
  • “Multicast processing of lightweight 3D video” is executed, whereas the distribution server 20b does not execute these processes. That is, the distribution server 20b basically executes processing related to live distribution of common video information or individual video information in response to a request from the terminal device 10, and does not execute other processing.
  • the management server 20a also has a role as a distribution server 20b, but the management server 20a does not have to have a function as a distribution server 20b.
  • FIG. 6 is a diagram showing transmission processing of viewing position information in the terminal device 10.
  • the control unit 11 of the terminal device 10 determines whether or not the viewing position has been designated (changed) in the viewing area 1 by the user (step 101). When the viewing position is not designated (changed) (NO in step 101), the control unit 11 of the terminal device 10 returns to step 101 and determines whether or not the viewing position has been designated (changed) again.
  • the control unit 11 of the terminal device 10 transmits the viewing position information to the management server 20a (step 102). Then, the control unit 11 of the terminal device 10 returns to step 101 and determines whether or not the viewing position has been designated (changed).
  • a map corresponding to the entire event venue or the like in the real space or the virtual space is displayed by GUI (Graphical User Interface), and is arbitrary.
  • GUI Graphic User Interface
  • the user specify the viewing position of.
  • the self-position estimated by the terminal device 10 may be used as the viewing position information.
  • the viewing position may be changed after the viewing position is once specified by the user.
  • the change in viewing position may be a major change that exceeds segment 2 or a minor change that does not exceed segment 2.
  • FIG. 7 shows an example of a state when the user is changing the viewing position.
  • a state when the user slides a finger on the screen of the smartphone (terminal device 10) to change the viewing position is shown (small change in viewing position).
  • FIG. 8 is a flowchart showing the grouping process and the like in the management server 20a.
  • the control unit 21 of the management server 20a receives the viewing position information from all the terminal devices 10 requesting viewing (step 201).
  • the control unit 21 of the management server 20a creates a distribution of the number of terminal devices for each segment 2 based on the information on the viewing position in each terminal device 10 (step 202).
  • control unit 21 of the management server 20a determines whether the number of all terminal devices requesting viewing is larger than the total number of rendering resources on the server device 20 (management server 20a, distribution server 20b) side. (Step 203).
  • control unit 21 of the management server 20a sets a threshold value for determining the segment 2 for grouping the terminal devices 10 (step 204).
  • control unit 21 of the management server 20a variably controls this threshold value based on the distribution of the number of terminal devices for each segment 2 and the number of rendering resources.
  • FIG. 9 is a diagram showing the relationship between the distribution of the number of terminal devices for each segment 2 and the threshold value.
  • the number of the segment 2 is shown on the left side, and the number of terminal devices having a viewing position in the segment 2 is shown on the right side. Further, in FIG. 9, the segments 2 having a large number of included terminal devices are arranged in order from the top.
  • the threshold value is set to 15, and it is assumed that the total number of rendering resources on the server device 20 side is 40.
  • the required rendering resources are 31 (28 + 3) in total.
  • the value of 31 is an appropriate value that does not exceed the number of rendering resources (40 in this case).
  • the threshold value is set to 33 (that is, between # 2 and # 3), 63 (61 + 2) rendering resources are required, which exceeds the total number of rendering resources (40 in this case). .. Further, when the threshold value is set to 7 (that is, between # 4 and # 1), the required rendering resource is 17 (13 + 4), which does not exceed the total number of rendering resources (40 in this case). , The transmission of individual video information by unicast is unnecessarily reduced.
  • the threshold value is set to 15, and the value of such a threshold value is calculated by the control unit 21 of the management server 20a.
  • the threshold value becomes smaller as the number of terminal devices requesting viewing increases (the number of unicast distributions decreases). Also, the threshold value increases as the number of rendering resources increases (unicast distribution increases).
  • the threshold value is variably controlled has been described, but the threshold value may be fixed.
  • the control unit 21 of the management server 20a then groups the terminal devices 10 having the viewing position in the segment 2 in which the number of terminal devices exceeds the threshold value for each segment 2 ( Step 205). For example, in the example shown in FIG. 9, 152 terminal devices 10 having a viewing position in segment 2 of # 5 are grouped, and 52 terminal devices 10 having a viewing position in segment 2 of # 2 are grouped. Are grouped together. Further, 33 terminal devices 10 having a viewing position in segment 2 of # 3 are grouped.
  • control unit 21 of the management server 20a determines which rendering resource (server device 20) is in charge of generating common video information for which group (segment 2), and which rendering resource (server device 20). ) Is responsible for generating individual video information for which terminal device 10 (step 206).
  • FIG. 10 is a diagram showing an example of a distribution server list.
  • the distribution server list includes the server ID of the server device 20 (rendering resource) in charge of generating common video information, the segment range information indicating the range of the corresponding segment 2, and the common video information.
  • URL Uniform Resource Locator
  • control unit 21 of the management server 20a After writing the necessary information in the distribution server list, the control unit 21 of the management server 20a then transmits the distribution server list to all the terminal devices 10 requesting viewing by multicast (step 209). Then, the control unit 21 of the management server 20a returns to step 201.
  • step 203 when the total number of terminal devices requesting viewing is equal to or less than the total number of rendering resources on the server device 20 side (NO in step 203), the control unit 21 of the management server 20a is set to step 208. Proceed to. That is, when individual video information can be transmitted by unicast to all the terminal devices 10, the control unit 21 of the management server 20a proceeds to step 208.
  • step 208 the control unit 21 of the management server 20a executes allocation as to which rendering resource (server device 20) is in charge of generating individual video information for which terminal device 10.
  • control unit 21 of the management server 20a transmits the distribution server list to all the terminal devices 10 by multicast (step 209), but in this case, empty distribution in which nothing is written.
  • the server list is sent by multicast.
  • control unit 21 of the management server 20a returns to step 201.
  • Terminal device 10 Video information request processing, etc.
  • FIG. 11 is a flowchart showing the request processing of video information in the terminal device 10. As shown in FIG. 11, the control unit 11 of the terminal device 10 receives the distribution server list transmitted by multicast (step 301).
  • control unit 11 of the terminal device 10 determines whether or not its own viewing position is included in any of the segment ranges shown in the distribution server list (step 302).
  • the control unit 11 of the terminal device 10 refers to the server device 20 based on the corresponding server ID and video information URL. And transmit a common video information acquisition request (step 303).
  • the control unit 11 of the terminal device 10 transmits an individual video information acquisition request to the server device 20. (Step 304).
  • the individual video information acquisition request includes viewing position information and viewing direction information.
  • control unit 11 of the terminal device 10 After transmitting the acquisition request for common or individual video information, the control unit 11 of the terminal device 10 returns to step 301 again.
  • Server device 20 Video information generation processing, etc.
  • server device 20 management server 20a, distribution server 20b
  • common video information generation processing "individual video information generation processing”
  • common video information multicast processing "common video information multicast processing”
  • FIG. 12 is a flowchart showing a process of generating video information in the server device 20.
  • the control units 21 and 31 (rendering resources) of the server device 20 (management server 20a, distribution server 20b) determine whether or not common video information generation is assigned (step 401).
  • control units 21 and 31 of the server device 20 receive the common video information acquisition request (step 402). Then, the control units 21 and 31 of the server device 20 generate common video information in the corresponding segment 2 from the three-dimensional video corresponding to the entire event venue and the like (step 403).
  • This common video information includes color image information and depth information.
  • control units 21 and 31 of the server device 20 encode the common video information (step 404), and transmit the common video information to each terminal device 10 included in the corresponding group by multicast (step 404). Step 405). Then, the control units 21 and 31 of the server device 20 return to step 401.
  • step 401 when the generation of common video information is not assigned (NO in step 401), the control units 21 and 31 (rendering resource) of the server device 20 (management server 20a, distribution server 20b) are individual video. Determine if information generation has been assigned (step 406).
  • control units 21 and 31 of the server device 20 receive the individual video information acquisition request (step 407). Then, the control units 21 and 31 of the server device 20 change the corresponding terminal device 10 from the three-dimensional video corresponding to the entire event venue or the like based on the viewing position and viewing direction included in the acquisition request of the individual video information. Generate individual video information (step 408).
  • control units 21 and 31 of the server device 20 encode the individual video information (step 409), and transmit the individual video information to the corresponding terminal device 10 by unicast (step 410). Then, the control units 21 and 31 of the server device 20 return to step 401.
  • Management server 20a lightweight 3D image generation processing, etc.
  • the "lightweight 3D video generation process”, the “lightweight 3D video multicast process”, and the like on the management server 20a will be described.
  • FIG. 13 is a flowchart showing a lightweight three-dimensional image generation process and the like on the management server 20a.
  • the control unit 21 of the management server 20a reduces the weight of the three-dimensional image corresponding to the entire event venue and the like, and generates a lightweight three-dimensional image (step 501).
  • the control unit 21 of the management server 20a transmits the lightweight three-dimensional image to all the terminal devices 10 by multicast (step 502), and returns to step 501.
  • the 3D image includes a mesh (geometric information) and a texture (image information).
  • the control unit 21 of the management server 20a may generate a lightweight 3D image by reducing the number of meshes and the texture resolution, for example, in a 3D image.
  • control unit 21 of the management server 20a may change at least one of the number of meshes and the texture resolution for each object included in the 3D lightweight image.
  • the number of meshes and the texture resolution may be higher than that of an object having few viewing users.
  • the number of meshes and texture resolution may be higher than for static objects.
  • control unit 21 of the management server 20a may be capable of transmitting a lightweight 3D image for each object included in the lightweight 3D image.
  • control unit 21 of the management server 20a may change the frequency of transmission of the lightweight three-dimensional image for each object for each object.
  • the frequency of transmission in object units may be higher than that for a static object.
  • Terminal device 10 (grouping): video display processing, etc.] Next, "image display processing based on common video information”, “image display processing based on lightweight three-dimensional video”, and the like in the grouped terminal devices 10 will be described.
  • FIG. 14 is a flowchart showing image display processing and the like in the grouped terminal devices 10.
  • the terminal device 10 receives common video information transmitted by multicast to each terminal device 10 included in the corresponding group (step 601).
  • the terminal device 10 receives the lightweight three-dimensional image transmitted by multicast to all the terminal devices 10 (step 602).
  • the control unit 11 of the terminal device 10 starts decoding common video information (step 603).
  • control unit 11 of the terminal device 10 determines whether or not the decoded common video information is ready (step 604).
  • step 604 the control unit 11 of the terminal device 10 proceeds to step 605.
  • step 605 the control unit 11 of the terminal device 10 renders an image from the decoded common video information based on the viewing position and viewing direction (corrects the image to be rendered). Then, the control unit 11 of the terminal device 10 displays the rendered image on the screen of the display unit 13 (step 607), and returns to step 601.
  • FIG. 16 is a diagram showing a state when an image is rendered from common video information.
  • the common video information is an image having a wider angle than the display angle of view of the terminal device 10.
  • the control unit 11 of the terminal device 10 maps this common video information to a three-dimensional model (three-dimensional reconstruction), and projects the image according to the required viewing direction (see the arrow) and the display angle of view. Generate the final image.
  • the control unit 11 of the terminal device 10 can generate an image in a new viewing direction by using the same decoded common video information, so that the viewing direction can be changed. Images can be displayed with low delay when changing.
  • the viewing position is temporarily set at the center position of the segment 2, but the viewing position of each terminal device 10 is not always located at the center position of the segment 2. Further, the viewing position may move within the segment 2. Therefore, in such a case, it is necessary to change (correct) not only the viewing direction but also the viewing position.
  • FIG. 17 is a diagram showing a state when the viewing position is moved to the required viewing position and the viewing direction is changed to the required viewing direction.
  • the common video information includes color image information and depth information.
  • the control unit 11 of the terminal device 10 uses the depth information of each pixel to perform three-dimensional reconstruction for each pixel. Then, the control unit 11 of the terminal device 10 performs projection according to the required viewing position, viewing direction, and display angle of view, and generates a final image.
  • control unit 11 of the terminal device 10 can generate an image of a new viewing position and viewing direction using the same decoded common video information, the delay is low when the viewing position and viewing direction are changed. Images can be displayed.
  • step 604 when the decoded common video information is not ready in step 604 (NO in step 604), the control unit 11 of the terminal device 10 proceeds to step 606.
  • the viewing position is significantly changed by the user and the viewing position is moved from the original segment 2 to a position in another segment 2.
  • unicast reception of individual video information may be switched to reception of common video information.
  • the reception of the common video in the original segment 2 may be switched to the reception of the common video in the other segment 2.
  • the decoded common video information may not be ready. Therefore, in such a case, there is a problem that the displayed images cannot be switched smoothly unless some measures are taken.
  • control unit 11 of the terminal device 10 is lightweight 3 based on the required viewing position and viewing direction when the decoded common video information is not ready (when the viewing position exceeds the segment 2). Rendering an image from a stereoscopic image (step 606). Then, the control unit 11 of the terminal device 10 displays the rendered image on the screen of the display unit 13, and returns to step 601.
  • the viewing position is changed drastically, and when the original segment 2 is moved into another segment 2, the displayed image can be smoothly switched. Can be done.
  • Terminal device 10 (non-grouping): video display processing, etc.] Next, “image display processing based on individual video information”, “image display processing based on lightweight three-dimensional video”, and the like in the ungrouped terminal device 10 will be described.
  • FIG. 15 is a flowchart showing image display processing and the like in the terminal device 10 which is not grouped.
  • the terminal device 10 receives individual video information transmitted by unicast to the terminal device 10 (step 701). Note that this individual video information is different from the common video information, and is video information that already reflects the viewing position and viewing direction required by the terminal device 10.
  • the terminal device 10 receives the lightweight three-dimensional image transmitted by multicast to all the terminal devices 10 (step 702).
  • the control unit 11 of the terminal device 10 starts decoding individual video information (step 703).
  • control unit 11 of the terminal device 10 determines whether or not the decoded individual video information is ready (step 604).
  • step 704 When the decoded individual video information is ready (YES in step 704), the control unit 11 of the terminal device 10 displays the individual video information on the screen of the display unit 13 (step 705). Return to step 701.
  • step 704 the control unit 11 of the terminal device 10 proceeds to step 706.
  • unicast reception of common video information may be switched to reception of individual video information. Immediately after such a switch, the decoded common video information may not be ready.
  • control unit 11 of the terminal device 10 is a lightweight three-dimensional video based on the required viewing position and viewing direction when the decoded common video information is not available (when the viewing position exceeds segment 2). Render the image from (step 706). Then, the control unit 11 of the terminal device 10 displays the rendered image on the screen of the display unit 13 (step 707), and returns to step 701.
  • the viewing position is changed drastically, and when the original segment 2 is moved into another segment 2, the displayed image can be smoothly switched. Can be done.
  • the server device 20 side has the same viewing position based on the viewing position information of each terminal device 10 in the viewing area 1 including the plurality of segments 2 under predetermined conditions.
  • the terminal devices 10 existing in the segment 2 are grouped, and a process of transmitting common video information to each grouped terminal device 10 by multicast is executed.
  • the processing load on the server device 20 side can be reduced, and the required network bandwidth can be reduced. Further, for example, even in an application where computing resources are limited as compared with a public cloud such as an edge cloud in a local 5G network, rendering on the server side is possible for a large number of terminal devices 10.
  • the threshold value for determining the segment 2 to be grouped is variably controlled. This allows the threshold to be dynamically changed to an appropriate value.
  • the terminal device 10 side has a significant change in the viewing position that exceeds the segment 2, the image at the new viewing position is smoothly performed. Can be displayed.
  • a user can watch sports live by freely selecting a viewing position that cannot be seen from the spectators'seats while enjoying a sense of reality in the spectators' seats.
  • the user may carry or wear the terminal device 10 in the spectator seats, but may be in a place other than the stadium.
  • a user can watch a match of top players live from any place on the game field.
  • the user may carry or wear the terminal device 10 in the game field, but may be in a place other than the game field.
  • a user can watch a singer's concert live from any place, such as in the audience seats in the virtual space or on the stage where the singer is.
  • the user may be anywhere in the real world.
  • V-Tuba Concert in a Virtual Space For example, a user can watch a V-Tuba concert live from any place, such as in the audience seats in the virtual space or on the stage where the V-Tuba is located. The user may be anywhere in the real world.
  • a user eg, a trainee
  • the user basically watches at a place other than the operating room.
  • Watching live programs from the studio in virtual space For example, a user can watch a live broadcast program live from any position and angle in a studio in virtual space. The user may be anywhere in the real world.
  • the present technology can also have the following configurations.
  • (1) Based on the viewing position information of each terminal device in the viewing area including a plurality of segments, the terminal devices having the same viewing position in the same segment are grouped and common to each grouped terminal device.
  • the control unit is a server device that determines a segment in which the number of terminal devices exceeds a predetermined threshold value as a segment for grouping.
  • the control unit is a server device that variably controls the threshold value.
  • the control unit is a server device that variably controls the threshold value based on the distribution of the number of the terminal devices for each segment.
  • the server device includes a plurality of rendering resources.
  • the control unit is a server device that variably controls the threshold value based on the number of rendering resources.
  • the server device (1) above.
  • the common video information has a wider angle of view than the display angle of view of the display unit in each of the terminal devices.
  • Each of the grouped terminal devices is a server device that renders an image to be displayed from the common video information based on a viewing direction and a display angle of view requested by the terminal device.
  • the server device according to (6) above.
  • Each of the grouped terminal devices renders the image from the common video information based on the viewing position requested by itself (8) in the server device according to the above (7).
  • the common video information includes depth information of an object in the video.
  • Each of the grouped terminal devices is a server device that renders the image based on the depth information.
  • the control unit is a server device that unicasts individual video information to each of the terminal devices that are not grouped.
  • the control unit reduces the weight of the 3D image corresponding to all viewing positions in the viewing area to generate a lightweight 3D image, and transmits the lightweight 3D image to all terminal devices by multicast.
  • Device (11) The server device according to (10) above.
  • Each of the terminal devices is a server device that renders an image to be displayed based on the lightweight three-dimensional image when the viewing position required by itself moves beyond the segment.
  • the lightweight 3D image comprises a mesh in an object in the lightweight 3D image.
  • the control unit is a server device that changes the number of meshes in the mesh for each object.
  • the lightweight 3D image comprises a texture in an object in the lightweight 3D image.
  • the control unit is a server device that changes the resolution of the texture for each object.
  • the control unit can transmit the lightweight 3D image for each object included in the lightweight 3D image, and changes the frequency of transmitting the lightweight 3D image for each object for each object.
  • Server device (15) Based on the viewing position information of each terminal device in the viewing area including a plurality of segments, the terminal devices having the same viewing position in the same segment are grouped and common to each grouped terminal device.
  • the terminal devices having the same viewing position in the same segment are grouped and common to each grouped terminal device.
  • a server device that transmits video information of An information processing system comprising receiving the common video information and rendering an image to be displayed based on the received common video information. (17) Based on the viewing position information of each terminal device in the viewing area including a plurality of segments, the terminal devices having the same viewing position in the same segment are grouped. An information processing method that transmits common video information to each grouped terminal device by multicast.
  • Terminal device 20 Terminal device 20 .
  • Server device 20a Management server 20b .
  • Distribution server 100 Distribution server 100 .

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

【課題】クラウドレンダリングにおいて、サーバ装置側の処理負荷を低減させることが可能な技術を提供すること。 【解決手段】本技術に係るサーバ装置は、制御部を具備する。前記制御部は、複数のセグメントを含む視聴領域内における各端末装置の視聴位置情報に基づいて、視聴位置が同一のセグメント内に存在する端末装置をグループ化し、グループ化された各端末装置に対して共通の映像情報をマルチキャストで送信する。

Description

サーバ装置、端末装置、情報処理システム及び情報処理方法
 本技術は、クラウドレンダリングを行うサーバ装置等の技術に関する。
 近年、ネットワーク帯域の増加やGPU等の性能の向上により多数のカメラで撮像された映像から3次元映像を生成し、自由視点映像として配信することが可能となってきた。これにより、例えば、スポーツや音楽イベント等において、自由視点映像を配信することで、自由な視聴位置から自由な視聴方向で映像を楽しむ視聴体験をユーザに提供することが可能になってきた。
 従来、自由視点の視聴体験を実現するための高画質の自由視点映像を配信する場合、データ量が大きくなってしまうので大きなネットワーク帯域が必要であった。また、自由視点映像をレンダリングするため、ユーザの端末装置には高性能のGPU等が必要であった。
 このような問題に対処するため、サーバ装置側でレンダリングを行うクラウドレンダリングが提案されている。クラウドレンダリングでは、まず、端末装置がサーバに視聴位置や視聴方向などの情報を送信する。サーバ装置は、受信した視聴位置、視聴方向に応じて、自由視点映像から、要求される映像のレンダリングを行い、この映像を2次元映像ストリームとしてエンコードし、端末装置へ送信する。
 クライドレンダリングでは、端末装置は、2次元映像ストリームをデコードして表示するだけでよいので、端末装置が高性能のGPU等を有していなくても、高画質の視聴体験をユーザに提供することができる。
 なお、本願に関連する技術として下記特許文献1が挙げられる。
特開2017-188649号公報
 クライドレンダリングでは、視聴を要求する端末装置の数に比例して、サーバ装置側の処理負荷が大きくなってしまうといった問題がある。
 以上のような事情に鑑み、本技術の目的は、クラウドレンダリングにおいて、サーバ装置側の処理負荷を低減させることが可能な技術を提供することにある。
 本技術に係るサーバ装置は、制御部を具備する。前記制御部は、複数のセグメントを含む視聴領域内における各端末装置の視聴位置情報に基づいて、視聴位置が同一のセグメント内に存在する端末装置をグループ化し、グループ化された各端末装置に対して共通の映像情報をマルチキャストで送信する。
 これにより、クラウドレンダリングにおいて、サーバ装置側の処理負荷を低減させることができる。
 本技術に係る端末装置は、制御部を具備する。前記制御部は、複数のセグメントを含む視聴領域内における各端末装置の視聴位置情報に基づいて、視聴位置が同一のセグメント内に存在する端末装置をグループ化し、グループ化された各端末装置に対して共通の映像情報をマルチキャストで送信するサーバ装置から前記共通の映像情報を受信し、受信された前記共通の映像情報に基づいて、表示すべき画像をレンダリングする。
 本技術に係る情報処理システムは、サーバ装置と、端末装置とを具備する。
 前記サーバ装置は、複数のセグメントを含む視聴領域内における各端末装置の視聴位置情報に基づいて、視聴位置が同一のセグメント内に存在する端末装置をグループ化し、グループ化された各端末装置に対して共通の映像情報をマルチキャストで送信する。
 前記端末装置は、前記共通の映像情報を受信し、受信された前記共通の映像情報に基づいて、表示すべき画像をレンダリングする。
 本技術に係る情報処理方法は、複数のセグメントを含む視聴領域内における各端末装置の視聴位置情報に基づいて、視聴位置が同一のセグメント内に存在する端末装置をグループ化し、グループ化された各端末装置に対して共通の映像情報をマルチキャストで送信する。
本技術の第1実施形態に係る情報処理システムを示す図である。 端末装置の内部構成を示すブロック図である。 管理サーバの内部構成を示すブロック図である。 配信サーバの内部構成を示すブロック図である。 視聴領域及びセグメントの一例を示す図である。 端末装置10における視聴位置情報の送信処理を示す図である。 ユーザが視聴位置を変更しているときの様子の一例を示す図である。 管理サーバにおけるグループ化処理等を示すフローチャートである。 セグメント毎の端末装置数の分布と、閾値との関係を示す図である。 配信サーバリストの一例を示す図である。 端末装置における映像情報の要求処理等を示すフローチャートである。 サーバ装置における映像情報の生成処理等を示すフローチャートである。 管理サーバにおける軽量3次元映像の生成処理等を示すフローチャートである。 グループ化された端末装置における画像の表示処理等を示すフローチャートである。 グループ化されていない端末装置における画像の表示処理等を示すフローチャートである。 共通の映像情報から画像がレンダリングされるときの様子を示す図である。 視聴位置が要求される視聴位置に移動され、かつ、視聴方向が要求される視聴方向に変更されたときの様子を示す図である。
 以下、本技術に係る実施形態を、図面を参照しながら説明する。
≪第1実施形態≫
<全体構成及び各部の構成>
 図1は、本技術の第1実施形態に係る情報処理システム100を示す図である。図1に示すように、情報処理システム100は、複数の端末装置10と、複数のサーバ装置20とを含む。
 端末装置10は、ユーザが携帯可能なモバイル端末であってもよいし、ユーザが装着可能なウェアラブル端末であってもよい。あるいは、端末装置10は、設置されて使用される設置型の端末であってもよい。
 モバイル端末としては、例えば、携帯電話機(スマートフォンを含む)、タブレットPC(Personal Computer)、携帯ゲーム機、携帯音楽プレイヤーなどが挙げられる。ウェアラブル端末としては、例えば、頭部装着型(HMD:Head Mounted Display)、リストバンド型(時計型)、ペンダント型、指輪型等のウェアラブル端末が挙げられる。また設置型の端末としては、デスクトップPC、テレビジョン装置、設置型のゲーム機などが挙げられる。
 本実施形態における情報処理システム100は、現実空間における実際のイベント会場(例えば、競技場)等の全体に対応する3次元映像から、サーバ装置20側が、クラウドレンダリングにより必要な映像情報を生成して、映像情報を端末装置10にライブ配信するシステムとして用いられる。
 また、本実施形態における情報処理システム100は、仮想空間における仮想的なイベント会場等(例えば、ゲームによる仮想競技場等)の全体に対応する3次元映像から、サーバ装置20側がクラウドレンダリングにより必要な映像情報を生成して、映像情報を端末装置10にライブ配信するシステムとして用いられる。
 ユーザは、自己における端末装置10により現実空間において開催されるイベント、あるいは、仮想空間において開催されるイベントをライブにより楽しむことができる。この場合、クラウドレンダリングであるので、仮に端末装置10の処理能力が低くても、ユーザは高画質の映像を楽しむことができる。
 イベント等が現実空間におけるイベントである場合、ユーザは、端末装置10を携帯又は装着してその実在するイベント会場等に居てもよい(端末装置10がモバイル端末や、ウェアラブル端末である場合)。あるいは、この場合、ユーザは、自宅などのイベント会場以外のどのような場所にいてもよい(端末装置10の種類不問)。
 また、イベント等が仮想空間におけるイベントである場合、ユーザは、自宅等、どのような場所にいてもよい(端末装置10の種類不問)。
 ここで、仮に、サーバ装置20側が、各端末装置10で個別に要求される視聴位置や視聴方向等に応じて、各端末装置10に対してそれぞれ個別の映像情報を生成して、この個別の映像情報を全てユニキャストで送信する場合を想定する。この場合、視聴を要求する端末装置10の数に比例して、サーバ装置20側の処理負荷が大きくなってしまう。
 このため、本実施形態では、サーバ装置20側が、所定の条件下で、複数のセグメント2を含む視聴領域1内における各端末装置10の視聴位置情報に基づいて、視聴位置が同一のセグメント2内に存在する端末装置10をグループ化し、グループ化された各端末装置10に対して共通の映像情報をマルチキャストで送信するといった処理を実行する。
 なお、グループ化されない端末に対しては、サーバ装置20側から個別の映像情報がユニキャストで送信される。
 図5は、視聴領域1及びセグメント2の一例を示す図である。図5に示す例では、サッカースタジアムの全体に対応する領域が視聴領域1とされ、この視聴領域1が複数のセグメント2に分割されたときの様子が示されている。図5に示す例では、視聴領域1が、X軸方向×Y軸方向(水平方向)で、6×6の36個のセグメント2に分割された場合の例が示されている。まお、セグメントの数については、特に限定されない。また、視聴領域1が、Z軸方向(高さ方向)に分割されてセグメント2が設定されてもよい。
 本実施形態の説明において、「視聴領域1」とは、現実空間における実際のイベント会場等、又は、仮想空間における仮想的なイベント会場等に対応する領域であって、映像の視聴が可能な領域(視聴位置の設定が可能な領域)を意味する。また、「セグメント2」とは、視聴領域1を区分する一定の領域を意味する。
 また、本実施形態の説明において、「視聴位置」とは、視聴領域1内における視点の立脚点を意味する(図5において丸で示されている)。視聴位置は、端末装置10側から要求される位置であり、ユーザが任意に設定可能な視聴領域1内の位置である。この視聴位置は、イベントが現実空間でのベンドであり、端末装置10が実際のイベント会場に位置している場合、実際のイベント会場における端末装置10の位置であってもよい。
 また、本実施形態の説明において、「視聴方向」とは、視聴位置からの視聴の向きを意味する。視聴方向は、端末装置10側から要求される方向であり、ユーザが任意に設定可能な方向である。この視聴方向は、端末装置10が実際のイベント会場に位置している場合、実際のイベント会場において端末装置10(ユーザ)が向いている方向(姿勢の向き)であってもよい。
 なお、イベントが現実空間におけるイベントである場合、イベント会場等の全体に対応する(視聴領域1内の全ての視聴位置に対応する)3次元映像は、イベント会場に設置された多数のカメラからの映像情報が合成されて生成される。
 一方、イベントが仮想空間におけるイベントである場合、イベント会場等の全体に対応する(視聴領域1内の全ての視聴位置に対応する)3次元映像は、イベント主催者等によって予め生成されてサーバ装置20側に記憶される。
 [端末装置10]
 図2は、端末装置10の内部構成を示すブロック図である。図2に示すように、端末装置10は、制御部11と、記憶部12と、表示部13と、操作部14と、通信部15とを備えている。
 表示部13は、例えば、液晶ディスプレイや、EL(Electro-Luminescence)ディスプレイ等により構成される。表示部13は、制御部11の制御に応じて画面上に画像を表示させる。
 操作部14は、例えば、押しボタン式、近接式などの各種の操作部である。操作部14は、例えば、ユーザによる視聴位置や視聴方向の指定等の各種の操作を検出して制御部11へと出力する。
 通信部15は、各サーバ装置20との間で通信可能に構成されている。
 記憶部12は、制御部11の処理に必要な各種のプログラムや、各種のデータが記憶される不揮発性のメモリと、制御部11の作業領域として用いられる揮発性のメモリとを含む。なお、上記各種のプログラムは、光ディスク、半導体メモリなどの可搬性の記録媒体から読み取られてもよいし、ネットワーク上のサーバ装置20からダウンロードされてもよい。
 制御部11は、記憶部12に記憶された各種のプログラムに基づき種々の演算を実行し、端末装置10の各部を統括的に制御する。
 制御部11は、ハードウェア、又は、ハードウェア及びソフトウェアの組合せにより実現される。ハードウェアは、制御部1の一部又は全部として構成され、このハードウェアとしては、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、VPU(Vision Processing Unit)、DSP(Digital Signal Processor)、FPGA(Field Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)、あるいは、これらのうち2以上の組合せなどが挙げられる。なお、これについては、サーバ装置20の制御部21、31においても同様である。
 なお、端末装置10がHMD等のウェアラブル端末や、スマートフォン等のモバイル端末である場合、端末装置10は、自己位置推定処理を実行するための各種のセンサを有していてもよい。自己位置推定処理を実行するための各種のセンサとしては、例えば、撮像部(カメラ等)、慣性センサ(加速度センサ、角速度センサ等)、GPS(Global Positioning System)等が挙げられる。
 この場合、端末装置10(制御部)は、撮像部からの画像情報、慣性センサからの慣性情報(加速度情報、角速度情報等)、GPSからの位置情報等に基づいて、例えば、SLAM(Simultaneous Localization And Mapping)等を用いて自己位置姿勢を推定する。
 例えば、端末装置10(ユーザ)が、実空間における実際のイベント会場等に位置している場合、推定された自己位置が視聴位置情報として用いられてもよい。また、端末装置10(ユーザ)が、実空間における実際のイベント会場等に位置している場合、推定された自己姿勢が視聴方向情報として用いられてもよい。
 本実施形態において、端末装置10の制御部11は、典型的には、大別して、「視聴位置情報の送信処理」、「共通の映像情報の要求処理」、[個別の映像情報の要求処理]「共通の映像情報に基づく画像の表示処理]、[個別の映像情報に基づく画像の表示処理]、「軽量3次元映像に基づく画像の表示処理」等を実行する。
 なお、本実施形態において、「軽量3次元映像」とは、現実空間又は仮想空間におけるイベント会場等の全体に対応する(視聴領域1内の全ての視聴位置に対応する)3次元映像の情報量を削減して生成される映像情報である。この軽量3次元映像は、典型的には、セグメント2を超えるような、視聴位置の大幅な変更があったときに端末装置10において使用される。
 [サーバ装置20]
 次に、サーバ装置20について説明する。本実施形態において、サーバ装置20として2種類のサーバ装置20が用意されている。1種類目は、管理サーバ20aであり、2種類目は、配信サーバ20bである。管理サーバ20aの数は、典型的には、1つであり、配信サーバ20bの数は、典型的には複数である。
 本明細書中の説明において、2種類のサーバ装置20を特に区別しない場合には、単にサーバ装置20と呼び、2種類のサーバ装置20を区別する場合には、管理サーバ20a、配信サーバ20bと呼ぶ。なお、本実施形態において、管理サーバ20a及び配信サーバ20bを含む全体を1つのサーバ装置20と見做すこともできる。
 「管理サーバ20a」
 まず、管理サーバ20aについて説明する。図3は、管理サーバ20aの内部構成を示すブロック図である。図3に示すように、管理サーバ20aは、制御部21と、記憶部22と、通信部23とを備えている。
 通信部23は、各端末装置10及び他のサーバ装置20との間で通信可能に構成されている。
 記憶部22は、制御部21の処理に必要な各種のプログラムや、各種のデータが記憶される不揮発性のメモリと、制御部21の作業領域として用いられる揮発性のメモリとを含む。なお、上記各種のプログラムは、光ディスク、半導体メモリなどの可搬性の記録媒体から読み取られてもよいし、ネットワーク上の他のサーバ装置からダウンロードされてもよい。
 制御部21は、記憶部22に記憶された各種のプログラムに基づき種々の演算を実行し、管理サーバ20aの各部を統括的に制御する。
 本実施形態において、管理サーバ20aの制御部21は、典型的には、大別して、「グループ化処理」、「レンダリングリソース割り当て処理」、「配信サーバリスト生成処理」、「共通の映像情報の生成処理」、「共通の映像情報のマルチキャスト処理」、「個別の映像情報の生成処理」、「個別の映像情報のユニキャスト処理」、「軽量3次元映像生成処理」、「軽量3次元映像のマルチキャスト処理」等を実行する。
 ここで、本実施形態の説明において、「レンダリングリソース」とは、マルチキャストにおける共通の映像情報又はユニキャストにおける個別の映像情報をレンダリング可能な処理能力を有する1単位を意味する。1つのサーバ装置20において、レンダリングリソースが1つである場合もあり、複数である場合もある。
 また、本実施形態において、「配信サーバリスト」とは、端末装置10が自己の視聴位置に応じて、複数のサーバ装置20のうちどのサーバ装置20に対して映像情報を要求すればよいかを示したリストである(図10参照)。
 「配信サーバ20b」
 次に、配信サーバ20bについて説明する。図4は、配信サーバ20bの内部構成を示すブロック図である。図4に示すように、配信サーバ20bは、制御部31と、記憶部32と、通信部33とを備えている。
 配信サーバ20bは、基本的に、管理サーバ20aと同様の構成であるが、制御部31の処理が異なっている。
 本実施形態において、配信サーバ20bの制御部31は、典型的には、大別して、「共通の映像情報の生成処理」、「共通の映像情報のマルチキャスト処理」、「個別の映像情報の生成処理」、「個別の映像情報のユニキャスト処理」等を実行する。
 ここで、管理サーバ20aと、配信サーバ20bとの違いは、管理サーバ20aが、「グループ化処理」、「レンダリングリソース割り当て処理」、「配信サーバリスト生成処理」、「軽量3次元映像生成処理」、「軽量3次元映像のマルチキャスト処理」を実行するのに対して、配信サーバ20bはこれらの処理を実行しない点である。つまり、配信サーバ20bは、基本的に、端末装置10からの要求に応じた共通の映像情報又は個別の映像情報のライブ配信に関する処理を実行し、それ以外の処理は実行しない。
 なお、本実施形態においては、管理サーバ20aは、配信サーバ20bとしての役割も有しているが、管理サーバ20aは配信サーバ20bとしての機能を有していなくてもよい。
 <動作説明>
 次に、端末装置10及びサーバ装置20における各処理について説明する。
 [端末装置10:視聴位置情報の送信処理]
 まず、端末装置10における「視聴位置情報の送信処理」について説明する。図6は、端末装置10における視聴位置情報の送信処理を示す図である。
 端末装置10の制御部11は、ユーザにより視聴領域1内において視聴位置が指定(変更)されたかどうかを判定する(ステップ101)。視聴位置が指定(変更)されていない場合(ステップ101のNO)、端末装置10の制御部11は、ステップ101へ戻り、再び、視聴位置が指定(変更)されたかどうかを判定する。
 一方、ユーザにより視聴位置が指定(変更)された場合、端末装置10の制御部11は、視聴位置情報を管理サーバ20aに対して送信する(ステップ102)。そして、端末装置10の制御部11は、ステップ101へ戻り、視聴位置が指定(変更)されたかどうかを判定する。
 ここで、視聴位置の指定の方法としては、例えば、端末装置10の表示部13において、現実空間又は仮想空間におけるイベント会場等の全体に対応するマップをGUI(Graphical User Interface)により表示し、任意の視聴位置をユーザにより指定させる方法が挙げられる。また、例えば、ユーザがイベント会場に実際に居る場合等には、端末装置10により推定された自己位置が視聴位置の情報として用いられてもよい。
 また、ユーザにより、一旦、視聴位置が指定された後、視聴位置が変更される場合もある。視聴位置の変更は、セグメント2を超えるような大幅な変更である場合もあり、セグメント2を超えないような小さな変更である場合もある。
 図7には、ユーザが視聴位置を変更しているときの様子の一例が示されている。図7に示す例では、ユーザがスマートフォン(端末装置10)の画面上において指をスライド操作して視聴位置を変更しているときの様子が示されている(小さな視聴位置の変更)。
[管理サーバ20a:グループ化処理等]
 次に、管理サーバ20aにおける「グループ化処理」、「レンダリングリソース割り当て処理」、「配信サーバリスト生成処理」等について説明する。
 図8は、管理サーバ20aにおけるグループ化処理等を示すフローチャートである。まず、管理サーバ20aの制御部21は、視聴を要求する全ての端末装置10から視聴位置の情報を受信する(ステップ201)。次に、管理サーバ20aの制御部21は、各端末装置10における視聴位置の情報に基づいて、セグメント2毎の端末装置数の分布を作成する(ステップ202)。
 次に、管理サーバ20aの制御部21は、視聴を要求する全ての端末装置数が、サーバ装置20(管理サーバ20a、配信サーバ20b)側における全体のレンダリングリソース数よりも大きいかどうかを判定する(ステップ203)。
 端末装置数が、レンダリングリソース数よりも大きい場合、管理サーバ20aの制御部21は、端末装置10のグループ化を行うためのセグメント2を決定するための閾値を設定する(ステップ204)。
 つまり、端末装置数が、レンダリングリソース数よりも大きい場合、全ての端末装置10に対して個別の映像情報をユニキャストで送信することができないので、グループ化のためのセグメント2を決定する必要があり、このための閾値が設定される。
 本実施形態では、管理サーバ20aの制御部21は、セグメント2毎の端末装置数の分布と、レンダリングリソース数とに基づいて、この閾値を可変に制御する。
 図9は、セグメント2毎の端末装置数の分布と、閾値との関係を示す図である。図9では、左側にセグメント2の番号が示されており、右側にそのセグメント2に視聴位置が存在する端末装置数が示されている。また、図9では、含まれる端末装置数が多いセグメント2が上から順番に並べられている。
 なお、図9に示す例では、閾値が15に設定されており、サーバ装置20側における全体のレンダリングリソース数が40であると想定されている。
 図9において、含まれる端末装置数が閾値(15)以下となる♯4、♯1、♯7、♯8、♯6の5つのセグメント2における全体の端末装置数は、28(=15+7+3+2+1)である。この28体の端末装置10に対して、個別の映像情報をユニキャストで送信するとした場合、レンダリングリソースが28必要である。これは、ユニキャストの場合、1体の端末装置10に対して1つのレンダリングリソースが必要であるためである。
 また、図9において、含まれる端末装置数が閾値を超える♯5、♯2、♯3の3つのセグメント2について、セグメント2毎のグループされた端末装置10に対して、共通の映像情報をマルチキャストで送信するとした場合、レンダリングリソースが3必要である。これは、マルチキャストの場合、1つのセグメント2(1グループの端末装置10)に対して1つのレンダリングリソースが必要であるためである。
 従って、閾値を15(つまり、♯3及び♯4の間)に設定した場合、必要なレンダリングリソースは、合計で31(28+3)である。この31の値は、レンダリングリソース数(ここでは、40)を超えない適切な値とされている。
 ここで、仮に、閾値が33(つまり、♯2及び♯3の間)に設定された場合、レンダリングリソースが63(61+2)必要であり、全体のレンダリングリソース数(ここでは40)を超えてしまう。また、閾値が7(つまり、♯4及び♯1の間)に設定された場合、必要なレンダリングリソースは、17(13+4)であり、全体のレンダリングリソース数(ここでは、40)を超えないが、ユニキャストでの個別の映像情報の送信が不必要に少なくなってしまう。
 従って、この例では、閾値が15に設定されるのが適切であり、このような閾値の値が管理サーバ20aの制御部21により算出される。
 なお、閾値の値は、視聴を要求する端末装置数が多くなればなるほど小さくなる(ユニキャスト配信が少なくなる)。また、閾値の値は、レンダリングリソース数が多くなればなるほど大きくなる(ユニキャスト配信が多くなる)。
 本実施形態の説明では、閾値が可変に制御される場合について説明したが、閾値は固定であってもよい。
 図8に戻り、閾値を設定すると、次に、管理サーバ20aの制御部21は、端末装置数が閾値を超えるセグメント2に視聴位置が存在する端末装置10を、セグメント2毎にグループ化する(ステップ205)。例えば、図9に示す例では、♯5のセグメント2内に視聴位置が存在する152体の端末装置10がグループ化され、♯2のセグメント2内に視聴位置が存在する52体の端末装置10がグループ化される。また、♯3のセグメント2内に視聴位置が存在する33体の端末装置10がグループ化される。
 次に、管理サーバ20aの制御部21は、どのレンダリングリソース(サーバ装置20)がどのグループ(セグメント2)のための共通の映像情報の生成を担当するか、並びに、どのレンダリングリソース(サーバ装置20)がどの端末装置10のための個別の映像情報の生成を担当するかについての割り当てを実行する(ステップ206)。
 次に、グループのための共通の映像情報を生成するレンダリングリソース(サーバ装置20)を配信サーバリストに書きこむ(ステップ207)。
 図10は、配信サーバリストの一例を示す図である。図10に示すように、配信サーバリストは、共通の映像情報の生成を担当するサーバ装置20(レンダリングリソース)のサーバIDと、対応するセグメント2の範囲を示すセグメント範囲情報と、共通の映像情報のURL(Uniform Resource Locator)とを含む。
 配信サーバリストに必要な情報を書き込むと、次に、管理サーバ20aの制御部21は、配信サーバリストを、視聴を要求する全ての端末装置10に対してマルチキャストで送信する(ステップ209)。そして、管理サーバ20aの制御部21は、ステップ201へ戻る。
 ここで、ステップ203において、視聴を要求する全ての端末装置数が、サーバ装置20側の全体のレンダリングリソース数以下である場合(ステップ203のNO)、管理サーバ20aの制御部21は、ステップ208へ進む。つまり、全ての端末装置10に対して個別の映像情報をユニキャストで送信可能である場合、管理サーバ20aの制御部21は、ステップ208へ進む。
 ステップ208では、管理サーバ20aの制御部21は、どのレンダリングリソース(サーバ装置20)がどの端末装置10のための個別の映像情報の生成を担当するかについての割り当てを実行する。
 ステップ208の後、管理サーバ20aの制御部21は、配信サーバリストを全ての端末装置10に対してマルチキャストで送信するが(ステップ209)、この場合には、何も書き込まれていない空の配信サーバリストがマルチキャストで送信される。その後、管理サーバ20aの制御部21は、ステップ201へ戻る。
 [端末装置10:映像情報要求処理等]
 次に、端末装置10における「共通の映像情報の要求処理」、及び「個別の映像情報の要求処理」等について説明する。
 図11は、端末装置10における映像情報の要求処理等を示すフローチャートである。図11に示すように、端末装置10の制御部11は、マルチキャストで送信された配信サーバリストを受信する(ステップ301)。
 次に、端末装置10の制御部11は、自己の視聴位置が、配信サーバリスト内に示されているいずれかのセグメント範囲に含まれているかどうかを判定する(ステップ302)。
 自己の視聴位置が、いずれかのセグメント範囲内に含まれている場合(ステップ302のYES)、端末装置10の制御部11は、対応するサーバID及び映像情報URLに基づき、サーバ装置20に対して共通の映像情報の取得要求を送信する(ステップ303)。
 一方、自己の視聴位置が、どのセグメント範囲内にも含まれてない場合(ステップ302のNO)、端末装置10の制御部11は、サーバ装置20に対して個別の映像情報の取得要求を送信する(ステップ304)。なお、個別の映像情報の取得要求には、視聴位置の情報と、視聴方向の情報とが含まれる。
 共通又は個別の映像情報の取得要求を送信した後、端末装置10の制御部11は、再びステップ301へ戻る。
 [サーバ装置20:映像情報生成処理等]
 次に、サーバ装置20(管理サーバ20a、配信サーバ20b)における「共通の映像情報の生成処理」、「個別の映像情報の生成処理」、「共通の映像情報のマルチキャスト処理」、「個別の映像情報のユニキャスト処理」等について説明する。
 図12は、サーバ装置20における映像情報の生成処理等を示すフローチャートである。図12に示すように、サーバ装置20(管理サーバ20a、配信サーバ20b)の制御部21、31(レンダリングリソース)は、共通の映像情報の生成が割り当てられたかどうかを判定する(ステップ401)。
 共通の映像情報の生成が割り当てられた場合(ステップ401のYES)、サーバ装置20の制御部21、31は、共通の映像情報の取得要求を受信する(ステップ402)。そして、サーバ装置20の制御部21、31は、イベント会場等の全体に対応する3次元映像から、対応するセグメント2における共通の映像情報を生成する(ステップ403)。
 この共通の映像情報は、カラー画像情報と、奥行情報とを含む。
 次に、サーバ装置20の制御部21、31は、共通の映像情報をエンコードし(ステップ404)、対応するグループに含まれる各端末装置10に対して、共通の映像情報をマルチキャストで送信する(ステップ405)。そして、サーバ装置20の制御部21、31は、ステップ401へ戻る。
 ステップ401において、共通の映像情報の生成が割り当てられていない場合(ステップ401のNO)、サーバ装置20(管理サーバ20a、配信サーバ20b)の制御部21、31(レンダリングリソース)は、個別の映像情報の生成が割り当てられたかどうかを判定する(ステップ406)。
 個別の映像情報の生成が割り当てられた場合(ステップ406のYES)、サーバ装置20の制御部21、31は、個別の映像情報の取得要求を受信する(ステップ407)。そして、サーバ装置20の制御部21、31は、個別の映像情報の取得要求に含まれる視聴位置及び視聴方向に基づき、イベント会場等の全体に対応する3次元映像から、対応する端末装置10における個別の映像情報を生成する(ステップ408)。
 次に、サーバ装置20の制御部21、31は、個別の映像情報をエンコードし(ステップ409)、対応する端末装置10に対して、個別の映像情報をユニキャストで送信する(ステップ410)。そして、サーバ装置20の制御部21、31は、ステップ401へ戻る。
[管理サーバ20a:軽量3次元映像生成処理等]
 次に、管理サーバ20aにおける「軽量3次元映像の生成処理」、「軽量3次元映像のマルチキャスト処理」等について説明する。
 図13は、管理サーバ20aにおける軽量3次元映像の生成処理等を示すフローチャートである。まず、管理サーバ20aの制御部21は、イベント会場等の全体に対応する3次元映像を軽量化し、軽量3次元映像を生成する(ステップ501)。そして、管理サーバ20aの制御部21は、軽量3次元映像を、全ての端末装置10に対してマルチキャストで送信し(ステップ502)、そしてステップ501へ戻る。
 ここで、3次元映像は、メッシュ(幾何学情報)と、テクスチャ(画像情報)を含む。管理サーバ20aの制御部21は、例えば、3次元映像において、メッシュ数やテクスチャ解像度を低減することで、軽量3次元映像を生成してもよい。
 3次元軽量映像を生成するとき、管理サーバ20aの制御部21は、3次元軽量映像に含まれるオブジェクト毎に、メッシュ数又はテクスチャ解像度のうち少なくとも一方を変化させてもよい。
 例えば、各端末装置10における視聴位置及び視聴方向の情報から視聴しているユーザが多いオブジェクトについては、視聴しているユーザが少ないオブジェクトに比べてメッシュ数やテクスチャ解像度が高くされてもよい。
 また、例えば、動的なオブジェクトについては、静的なオブジェクトに比べてメッシュ数やテクスチャ解像度が高くされてもよい。
 また、管理サーバ20aの制御部21は、軽量3次元映像に含まれるオブジェクト毎に、オブジェクト単位で軽量3次元映像を送信可能とされていてもよい。この場合、管理サーバ20aの制御部21は、オブジェクト単位での前記軽量3次元映像の送信の頻度をオブジェクト毎に変化させてもよい。
 例えば、各端末装置10における視聴位置及び視聴方向の情報から視聴しているユーザが多いオブジェクトについては、視聴しているユーザが少ないオブジェクトに比べて、オブジェクト単位での送信の頻度が高くされてもよい。
 また、例えば、動的なオブジェクトについては、静的なオブジェクトに比べて、オブジェクト単位での送信の頻度が高くされてもよい。
[端末装置10(グループ化):映像表示処理等]
 次に、グループ化された端末装置10における「共通の映像情報に基づく画像の表示処理]、「軽量3次元映像に基づく画像の表示処理」等について説明する。
 図14は、グループ化された端末装置10における画像の表示処理等を示すフローチャートである。まず、端末装置10は、対応するグループに含まれる各端末装置10に対してマルチキャストで送信された共通の映像情報を受信する(ステップ601)。
 次に、端末装置10は、全ての端末装置10に対してマルチキャストで送信された軽量3次元映像を受信する(ステップ602)。次に、端末装置10の制御部11は、共通の映像情報のデコードを開始する(ステップ603)。
 次に、端末装置10の制御部11は、デコード済みの共通の映像情報の準備ができているかどうかを判定する(ステップ604)。
 デコード済みの共通の映像情報の準備ができている場合(ステップ604のYES)、端末装置10の制御部11は、ステップ605へ進む。ステップ605では、端末装置10の制御部11は、視聴位置及び視聴方向に基づき、デコード済みの共通の映像情報から画像をレンダリングする(レンダリングする画像を補正する)。そして、端末装置10の制御部11は、レンダリングされた画像を表示部13の画面上に表示し(ステップ607)、ステップ601へ戻る。
 図16は、共通の映像情報から画像がレンダリングされるときの様子を示す図である。図16の左側に示すように、共通の映像情報は、端末装置10の表示画角よりも広角の画像とされている。端末装置10の制御部11は、この共通の映像情報を3次元モデルにマップし(3次元再構成し)、要求される視聴方向(矢印参照)及び表示画角に応じて射影を行って、最終画像を生成する。
 なお、視聴方向は変更される場合があるが、端末装置10の制御部11は、同じデコード済みの共通の映像情報を用いて新たな視聴方向の画像を生成することができるので、視聴方向の変更時に低遅延で画像を表示することができる。
 ここで、共通の映像情報は、視聴位置がセグメント2の中心位置に仮設定されているが、各端末装置10の視聴位置は、セグメント2の中心位置に位置するとは限らない。また、視聴位置はセグメント2内で移動する場合もある。従って、このような場合には、視聴方向だけでなく、視聴位置も変更(補正)する必要がある。
 図17は、視聴位置が要求される視聴位置に移動され、かつ、視聴方向が要求される視聴方向に変更されたときの様子を示す図である。
 図17の左側に示すように、共通の映像情報は、カラー画像情報と、奥行情報とを含む。端末装置10の制御部11は、各画素の奥行情報を用いて、画素毎の3次元再構成を行う。そして、端末装置10の制御部11は、要求される視聴位置、視聴方向、及び表示画角に応じて射影を行って、最終画像を生成する。
 なお、端末装置10の制御部11は、同じデコード済みの共通の映像情報を用いて新たな視聴位置及び視聴方向の画像を生成することができるので、視聴位置及び視聴方向の変更時に低遅延で画像を表示することができる。
 図14に戻り、ステップ604において、デコード済みの共通の映像情報の準備ができていない場合(ステップ604のNO)、端末装置10の制御部11は、ステップ606へ進む。
 ここで、例えば、ユーザにより視聴位置が大幅に変更され、視聴位置が元のセグメント2から他のセグメント2内の位置に移動したとする。この場合、例えば、個別の映像情報のユニキャストでの受信が、共通の映像情報の受信に切り替わる場合がある。また、この場合、例えば、元のセグメント2での共通の映像の受信が、他のセグメント2での共通の映像の受信に切り替わる場合がある。
 このような切り替わりの直後においては、デコード済みの共通の映像情報の準備ができていない場合がある。従って、このような場合、何ら対策を講じないと、表示される画像の切り替わりがスムーズに行えないといった問題がある。
 従って、端末装置10の制御部11は、デコード済みの共通の映像情報の準備ができていない場合(視聴位置がセグメント2を超えた場合)、要求される視聴位置及び視聴方向に基づき、軽量3次元映像から画像をレンダリングする(ステップ606)。そして、端末装置10の制御部11は、レンダリングされた画像を表示部13の画面上に表示し、ステップ601へ戻る。
 このように、軽量3次元映像を用いることで、視聴位置が大幅に変更され、元のセグメント2から他のセグメント2内に移動したような場合に、表示される画像の切り替わりをスムーズに行うことができる。
[端末装置10(非グループ化):映像表示処理等]
 次に、グループ化されていない端末装置10における「個別の映像情報に基づく画像の表示処理]、「軽量3次元映像に基づく画像の表示処理」等について説明する。
 図15は、グループ化されていない端末装置10における画像の表示処理等を示すフローチャートである。まず、端末装置10は、その端末装置10に対してユニキャストで送信された個別の映像情報を受信する(ステップ701)。なお、この個別の映像情報は、共通の映像情報とは異なり、既にその端末装置10で要求される視聴位置及び視聴方向が反映された映像情報である。
 次に、端末装置10は、全ての端末装置10に対してマルチキャストで送信された軽量3次元映像を受信する(ステップ702)。次に、端末装置10の制御部11は、個別の映像情報のデコードを開始する(ステップ703)。
 次に、端末装置10の制御部11は、デコード済みの個別の映像情報の準備ができているかどうかを判定する(ステップ604)。
 デコード済みの個別の映像情報の準備ができている場合(ステップ704のYES)、端末装置10の制御部11は、その個別の映像情報を表示部13の画面上に表示し(ステップ705)、ステップ701へ戻る。
 一方、デコード済みの共通の映像情報の準備ができていない場合(ステップ704のNO)、端末装置10の制御部11は、ステップ706へ進む。
 ここで、例えば、ユーザにより視聴位置が大幅に変更され、視聴位置が元のセグメント2から他のセグメント2内の位置に移動したとする。この場合、例えば、共通の映像情報のユニキャストでの受信が、個別の映像情報の受信に切り替わる場合がある。このような切り替わりの直後においては、デコード済みの共通の映像情報の準備ができていない場合がある。
 従って、端末装置10の制御部11は、デコード済みの共通の映像情報のできていない場合(視聴位置がセグメント2を超えた場合)、要求される視聴位置及び視聴方向に基づき、軽量3次元映像から画像をレンダリングする(ステップ706)。そして、端末装置10の制御部11は、レンダリングされた画像を表示部13の画面上に表示し(ステップ707)、ステップ701へ戻る。
 このように、軽量3次元映像を用いることで、視聴位置が大幅に変更され、元のセグメント2から他のセグメント2内に移動したような場合に、表示される画像の切り替わりをスムーズに行うことができる。
 <作用等>
 以上説明したように、本実施形態では、サーバ装置20側が、所定の条件下で、複数のセグメント2を含む視聴領域1内における各端末装置10の視聴位置情報に基づいて、視聴位置が同一のセグメント2内に存在する端末装置10をグループ化し、グループ化された各端末装置10に対して共通の映像情報をマルチキャストで送信するといった処理を実行する。
 これにより、サーバ装置20側の処理負荷を低減することができ、必要なネットワーク帯域も小さくて済む。また、例えば、ローカル5Gネットワークでのエッジクラウド等のパブリッククラウドに比べてコンピューティングリソースが限られる用途でも多数の端末装置10に対してサーバ側でのレンダリングが可能となる。
 また、本実施形態では、グループ化を行うセグメント2を決定するための閾値が可変に制御される。これにより、閾値を適切な値に動的に変化させることができる。
 また、本実施形態では、端末装置10側(グループ化)において、視聴位置の小さな変更や、視聴方向の変更に対して、即座に対応することができる(図16、図17参照)。
 また、本実施形態では、軽量3次元映像が用いられることで、端末装置10側において、セグメント2を超えるような大幅な視聴位置の変更があったときに、スムーズに新たな視聴位置での画像を表示することができる。
 ≪各種変形例≫
 次に、本実施形態における情報処理システム100が具体的にどのように用いられるかについて説明する。
1.現実空間における競技場でのスポーツ観戦
 例えば、ユーザは、観客席で臨場感を味わいながら、観客席から見ることができない視聴位置を自由に選択してスポーツをライブで観戦する。ユーザは、端末装置10を携帯又は装着して観客席にいてもよいが、競技場以外の他の場所にいてもよい。
2.現実空間におけるeSports大会の観戦
 例えば、ユーザは、トップ選手たちの対戦を、ゲームフィールドの好きな場所からライブで観戦することができる。ユーザは、端末装置10を携帯又は装着してそのゲームフィールドにいてもよいが、ゲームフィールド以外の他の場所にいてもよい。
3.仮想空間で行われる歌手のコンサートの観戦
 例えば、ユーザは、歌手のコンサートを、仮想空間における観客席、歌手がいるステージ上などの好きな場所からライブで観戦することができる。ユーザは、現実世界のどのような場所にいてもよい。
4.仮想空間で行われるVチューバのコンサートの観戦
 例えば、ユーザは、Vチューバのコンサートを、仮想空間における観客席、Vチューバがいるステージ上などの好きな場所からライブで観戦することができる。ユーザは、現実世界のどのような場所にいてもよい。
5.現実空間における手術室での医者の手術の視聴
 例えば、ユーザ(例えば、研修医)は、トップレベルの医者の手術の様子を、好きな位置及び角度からライブで視聴することができる。ユーザは、基本的には、手術室以外の他の場所で視聴を行う。
6.仮想空間におけるスタジオから発信される生放送番組の視聴 
 例えば、ユーザは、生放送番組を、仮想空間のスタジオ内の好きな位置及び角度からライブで視聴することができる。ユーザは、現実世界のどのような場所にいてもよい。
 本技術は以下の構成をとることもできる。
(1) 複数のセグメントを含む視聴領域内における各端末装置の視聴位置情報に基づいて、視聴位置が同一のセグメント内に存在する端末装置をグループ化し、グループ化された各端末装置に対して共通の映像情報をマルチキャストで送信する制御部
 を具備するサーバ装置。
(2)上記(1)に記載のサーバ装置であって、
 前記制御部は、前記端末装置の数が所定の閾値を超えたセグメントを、前記グループ化を行うセグメントとして決定する
 サーバ装置。
(3) 上記(2)に記載のサーバ装置であって、
 前記制御部は、前記閾値を可変に制御する
 サーバ装置。
(4) 上記(3)に記載のサーバ装置であって、
 前記制御部は、前記セグメント毎の前記端末装置の数の分布に基づいて、前記閾値を可変に制御する
 サーバ装置。
(5) 上記(3)又は(4)に記載のサーバ装置であって、
 前記サーバ装置は、複数のレンダリングリソースを含み、
 前記制御部は、前記レンダリングリソースの数に基づいて、前記閾値を可変に制御する
 サーバ装置。
(6) 上記(1)に記載のサーバ装置であって、
 前記共通の映像情報は、前記各端末装置における表示部の表示画角よりも広角であり、
 前記グループ化された前記各端末装置は、それぞれ、自己において要求される視聴方向及び表示画角に基づいて、前記共通の映像情報から、表示すべき画像をレンダリングする
 サーバ装置。
(7) 上記(6)に記載のサーバ装置であって、
 前記グループ化された前記各端末装置は、それぞれ、自己において要求される前記視聴位置に基づいて、前記共通の映像情報から、前記画像をレンダリングする
(8)上記(7)に記載のサーバ装置であって、
 前記共通の映像情報は、映像内におけるオブジェクトの奥行情報を含み、
 前記グループ化された各端末装置は、それぞれ、前記奥行情報に基づいて、前記画像をレンダリングする
 サーバ装置。
(9) 上記(1)~(8)のうちいずれか1つに記載のサーバ装置であって、
 前記制御部は、グループ化されない前記各端末装置に対して、個別の映像情報をユニキャストで送信する
 サーバ装置。
(10) 上記(9)に記載のサーバ装置であって、
 前記制御部は、前記視聴領域内の全ての視聴位置に対応する3次元映像を軽量化して軽量3次元映像を生成し、前記軽量3次元映像を全ての端末装置に対してマルチキャストで送信する
 サーバ装置。
(11) 上記(10)に記載のサーバ装置であって、
 前記各端末装置は、それぞれ、自己において要求される視聴位置が前記セグメントを超えて移動したとき、前記軽量3次元映像に基づいて、表示すべき画像をレンダリングする
 サーバ装置。
(12)上記(10)又は(11)に記載のサーバ装置であって、
 前記軽量3次元映像は、前記軽量3次元映像内のオブジェクトにおけるメッシュを含み、
 前記制御部は、前記オブジェクト毎に、前記メッシュにおけるメッシュ数を変化させる
 サーバ装置。
(13) 上記(10)~(12)のうちいずれか1つに記載のサーバ装置であって、
 前記軽量3次元映像は、前記軽量3次元映像内のオブジェクトにおけるテクスチャを含み、
 前記制御部は、前記オブジェクト毎に、前記テクスチャの解像度を変化させる
 サーバ装置。
(14) 上記(10)~(13)のうちいずれか1つに記載のサーバ装置であって、
 前記制御部は、前記軽量3次元映像に含まれるオブジェクト毎に、オブジェクト単位で前記軽量3次元映像を送信可能であり、オブジェクト単位での前記軽量3次元映像の送信の頻度をオブジェクト毎に変化させる
 サーバ装置。
(15)複数のセグメントを含む視聴領域内における各端末装置の視聴位置情報に基づいて、視聴位置が同一のセグメント内に存在する端末装置をグループ化し、グループ化された各端末装置に対して共通の映像情報をマルチキャストで送信するサーバ装置から前記共通の映像情報を受信し、受信された前記共通の映像情報に基づいて、表示すべき画像をレンダリングする制御部
 を具備する端末装置。
(16) 複数のセグメントを含む視聴領域内における各端末装置の視聴位置情報に基づいて、視聴位置が同一のセグメント内に存在する端末装置をグループ化し、グループ化された各端末装置に対して共通の映像情報をマルチキャストで送信するサーバ装置と、
 前記共通の映像情報を受信し、受信された前記共通の映像情報に基づいて、表示すべき画像をレンダリングする
 を具備する情報処理システム。
(17) 複数のセグメントを含む視聴領域内における各端末装置の視聴位置情報に基づいて、視聴位置が同一のセグメント内に存在する端末装置をグループ化し、
 グループ化された各端末装置に対して共通の映像情報をマルチキャストで送信する
 情報処理方法。
 10…端末装置
 20…サーバ装置
 20a…管理サーバ
 20b…配信サーバ
 100…情報処理システム

Claims (15)

  1.  複数のセグメントを含む視聴領域内における各端末装置の視聴位置情報に基づいて、視聴位置が同一のセグメント内に存在する端末装置をグループ化し、グループ化された各端末装置に対して共通の映像情報をマルチキャストで送信する制御部
     を具備するサーバ装置。
  2.  請求項1に記載のサーバ装置であって、
     前記制御部は、前記端末装置の数が所定の閾値を超えたセグメントを、前記グループ化を行うセグメントとして決定する
     サーバ装置。
  3.  請求項2に記載のサーバ装置であって、
     前記制御部は、前記閾値を可変に制御する
     サーバ装置。
  4.  請求項1に記載のサーバ装置であって、
     前記共通の映像情報は、前記各端末装置における表示部の表示画角よりも広角であり、
     前記グループ化された前記各端末装置は、それぞれ、自己において要求される視聴方向及び表示画角に基づいて、前記共通の映像情報から、表示すべき画像をレンダリングする
     サーバ装置。
  5.  請求項4に記載のサーバ装置であって、
     前記グループ化された前記各端末装置は、それぞれ、自己において要求される前記視聴位置に基づいて、前記共通の映像情報から、前記画像をレンダリングする
  6.  請求項5に記載のサーバ装置であって、
     前記共通の映像情報は、映像内におけるオブジェクトの奥行情報を含み、
     前記グループ化された各端末装置は、それぞれ、前記奥行情報に基づいて、前記画像をレンダリングする
     サーバ装置。
  7.  請求項1に記載のサーバ装置であって、
     前記制御部は、グループ化されない前記各端末装置に対して、個別の映像情報をユニキャストで送信する
     サーバ装置。
  8.  請求項7に記載のサーバ装置であって、
     前記制御部は、前記視聴領域内の全ての視聴位置に対応する3次元映像を軽量化して軽量3次元映像を生成し、前記軽量3次元映像を全ての端末装置に対してマルチキャストで送信する
     サーバ装置。
  9.  請求項8に記載のサーバ装置であって、
     前記各端末装置は、それぞれ、自己において要求される視聴位置が前記セグメントを超えて移動したとき、前記軽量3次元映像に基づいて、表示すべき画像をレンダリングする
     サーバ装置。
  10.  請求項8に記載のサーバ装置であって、
     前記軽量3次元映像は、前記軽量3次元映像内のオブジェクトにおけるメッシュを含み、
     前記制御部は、前記オブジェクト毎に、前記メッシュにおけるメッシュ数を変化させる
     サーバ装置。
  11.  請求項8に記載のサーバ装置であって、
     前記軽量3次元映像は、前記軽量3次元映像内のオブジェクトにおけるテクスチャを含み、
     前記制御部は、前記オブジェクト毎に、前記テクスチャの解像度を変化させる
     サーバ装置。
  12.  請求項8に記載のサーバ装置であって、
     前記制御部は、前記軽量3次元映像に含まれるオブジェクト毎に、オブジェクト単位で前記軽量3次元映像を送信可能であり、オブジェクト単位での前記軽量3次元映像の送信の頻度をオブジェクト毎に変化させる
     サーバ装置。
  13.  複数のセグメントを含む視聴領域内における各端末装置の視聴位置情報に基づいて、視聴位置が同一のセグメント内に存在する端末装置をグループ化し、グループ化された各端末装置に対して共通の映像情報をマルチキャストで送信するサーバ装置から前記共通の映像情報を受信し、受信された前記共通の映像情報に基づいて、表示すべき画像をレンダリングする制御部
     を具備する端末装置。
  14.  複数のセグメントを含む視聴領域内における各端末装置の視聴位置情報に基づいて、視聴位置が同一のセグメント内に存在する端末装置をグループ化し、グループ化された各端末装置に対して共通の映像情報をマルチキャストで送信するサーバ装置と、
     前記共通の映像情報を受信し、受信された前記共通の映像情報に基づいて、表示すべき画像をレンダリングする
     を具備する情報処理システム。
  15.  複数のセグメントを含む視聴領域内における各端末装置の視聴位置情報に基づいて、視聴位置が同一のセグメント内に存在する端末装置をグループ化し、
     グループ化された各端末装置に対して共通の映像情報をマルチキャストで送信する
     情報処理方法。
PCT/JP2021/021715 2020-06-19 2021-06-08 サーバ装置、端末装置、情報処理システム及び情報処理方法 WO2021256326A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US18/009,861 US20230224550A1 (en) 2020-06-19 2021-06-08 Server apparatus, terminal apparatus, information processing system, and information processing method
JP2022531701A JPWO2021256326A1 (ja) 2020-06-19 2021-06-08
CN202180042007.8A CN115918094A (zh) 2020-06-19 2021-06-08 服务器设备、终端设备、信息处理系统以及信息处理方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020-106460 2020-06-19
JP2020106460 2020-06-19

Publications (1)

Publication Number Publication Date
WO2021256326A1 true WO2021256326A1 (ja) 2021-12-23

Family

ID=79267937

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/021715 WO2021256326A1 (ja) 2020-06-19 2021-06-08 サーバ装置、端末装置、情報処理システム及び情報処理方法

Country Status (4)

Country Link
US (1) US20230224550A1 (ja)
JP (1) JPWO2021256326A1 (ja)
CN (1) CN115918094A (ja)
WO (1) WO2021256326A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12028507B2 (en) * 2021-03-11 2024-07-02 Quintar, Inc. Augmented reality system with remote presentation including 3D graphics extending beyond frame

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003078900A (ja) * 2001-08-31 2003-03-14 Matsushita Electric Ind Co Ltd オンデマンドコンテンツ配信システム
JP2006345580A (ja) * 2006-09-19 2006-12-21 Ntt Docomo Inc 位置情報管理装置
JP2008172635A (ja) * 2007-01-12 2008-07-24 Seiko Epson Corp 通信システム及び携帯通信端末
JP2017175334A (ja) * 2016-03-23 2017-09-28 富士通株式会社 コンテンツ配信制御装置,そのコンテンツ配信制御方法,及びプログラム
WO2019215926A1 (ja) * 2018-05-11 2019-11-14 ガンホー・オンライン・エンターテイメント株式会社 サーバー装置、プログラム、及び方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100259595A1 (en) * 2009-04-10 2010-10-14 Nokia Corporation Methods and Apparatuses for Efficient Streaming of Free View Point Video
JPWO2017159063A1 (ja) * 2016-03-14 2019-01-17 ソニー株式会社 表示装置並びに情報処理端末装置
US10798455B2 (en) * 2017-12-22 2020-10-06 Comcast Cable Communications, Llc Video delivery

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003078900A (ja) * 2001-08-31 2003-03-14 Matsushita Electric Ind Co Ltd オンデマンドコンテンツ配信システム
JP2006345580A (ja) * 2006-09-19 2006-12-21 Ntt Docomo Inc 位置情報管理装置
JP2008172635A (ja) * 2007-01-12 2008-07-24 Seiko Epson Corp 通信システム及び携帯通信端末
JP2017175334A (ja) * 2016-03-23 2017-09-28 富士通株式会社 コンテンツ配信制御装置,そのコンテンツ配信制御方法,及びプログラム
WO2019215926A1 (ja) * 2018-05-11 2019-11-14 ガンホー・オンライン・エンターテイメント株式会社 サーバー装置、プログラム、及び方法

Also Published As

Publication number Publication date
CN115918094A (zh) 2023-04-04
JPWO2021256326A1 (ja) 2021-12-23
US20230224550A1 (en) 2023-07-13

Similar Documents

Publication Publication Date Title
US11563779B2 (en) Multiuser asymmetric immersive teleconferencing
US20210409672A1 (en) Methods and apparatus for receiving and/or playing back content
JP7498209B2 (ja) 情報処理装置、情報処理方法およびコンピュータプログラム
CN110383346B (zh) 使用虚拟视图广播器云生成要流式传输到vr/ar平台的内容
CN107636534B (zh) 用于图像处理的方法和系统
WO2018108104A1 (zh) 一种全景视频传输方法、装置、终端、服务器及系统
KR102611448B1 (ko) 콘텐트를 전달 및/또는 콘텐트를 재생하기 위한 방법들 및 장치
US10776992B2 (en) Asynchronous time warp with depth data
US10321109B1 (en) Large volume video data transfer over limited capacity bus
KR101762956B1 (ko) 가상 세계 씬의 이미지들을 제공하기 위한 방법 및 장치 그리고 이를 처리하기 위한 방법 및 장치
CN110663012B (zh) 用于定制虚拟现实数据的方法和系统
JP2017056193A (ja) ブロードキャスタを有するリモートレンダリングサーバ
US10614631B2 (en) Seamless injection of augmented three-dimensional imagery using a positionally encoded video stream
US10493360B2 (en) Image display device and image display system
WO2021256326A1 (ja) サーバ装置、端末装置、情報処理システム及び情報処理方法
CN115220906A (zh) 音频/视频合成应用的云执行
US11315306B2 (en) Systems and methods for processing volumetric data
WO2019034804A2 (en) THREE-DIMENSIONAL VIDEO PROCESSING
JP2018129576A (ja) 動画データ生成装置、表示システム、表示制御装置、及びプログラム
JP2020064534A (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: 21825146

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022531701

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21825146

Country of ref document: EP

Kind code of ref document: A1