WO2011039814A1 - Multi-view stream data control system/method - Google Patents

Multi-view stream data control system/method Download PDF

Info

Publication number
WO2011039814A1
WO2011039814A1 PCT/JP2009/005057 JP2009005057W WO2011039814A1 WO 2011039814 A1 WO2011039814 A1 WO 2011039814A1 JP 2009005057 W JP2009005057 W JP 2009005057W WO 2011039814 A1 WO2011039814 A1 WO 2011039814A1
Authority
WO
WIPO (PCT)
Prior art keywords
frame
time
view
coding
coding graph
Prior art date
Application number
PCT/JP2009/005057
Other languages
French (fr)
Japanese (ja)
Inventor
チョンジーン
オルテガアントニオ
チョンガイマン
Original Assignee
ヒューレット-パッカード デベロップメント カンパニー エル.ピー.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ヒューレット-パッカード デベロップメント カンパニー エル.ピー. filed Critical ヒューレット-パッカード デベロップメント カンパニー エル.ピー.
Priority to PCT/JP2009/005057 priority Critical patent/WO2011039814A1/en
Publication of WO2011039814A1 publication Critical patent/WO2011039814A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17336Handling of requests in head-ends
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/395Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability involving distributed video coding [DVC], e.g. Wyner-Ziv video coding or Slepian-Wolf video coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • 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/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • 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/440245Processing 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 the reformatting operation being performed only on part of the stream, e.g. a region of the image or a time segment

Definitions

  • the present invention relates to a technique for efficiently storing and transmitting to a user video streams shot by a plurality of cameras in multiview video coding.
  • MVC multiview video coding
  • video streams shot by multiple cameras are compressed, encoded, and transmitted to the user.
  • the user receives, decodes and plays back these video streams.
  • a user can interactively request a desired view from a multi-view video stream server (hereinafter referred to as a stream server).
  • the stream server sends the corresponding video stream from the coding graph to the client.
  • MVC a technique for efficiently compressing video streams shot by a plurality of cameras by performing inter-view and temporal redundancy has been studied.
  • the MVC standardization process has focused on developing a new compression algorithm that encodes all frames in a multi-view video stream in order to optimize rate and distortion.
  • IMVS interactive multi-view video stream
  • a user can interactively request a desired view from a stream server.
  • the stream server sends the corresponding video stream from the coding graph to the client.
  • the following are problems of the prior art.
  • the number of P frames increases exponentially with the passage of time, and the amount of data storage required to construct the coding graph increases, resulting in data Storage costs increase.
  • the number of frames in the coding graph and the number of paths can be reduced, but a large amount of data transmission is required on the data communication line, and the bandwidth on the communication line is reduced. It is widely required.
  • Claim 1 solves the problem by using DSC 1 shown in the second embodiment.
  • a multi-view stream data control system using a computer (A) An encoding unit that reads a predetermined original picture at a predetermined time from a multi-view source storage unit, performs encoding, and creates an I frame, a P frame, and a D frame, The D frame corresponds to the first view at the first time created using the original picture corresponding to the first view at the first time as the input information and the frame at the first time.
  • a first D frame created by performing distributed source coding with at least one first picture as side information (B) a coding graph creation unit that creates a coding graph by connecting the I frame, the P frame, and the D frame by a series of time-sequential paths; and (C) a storage unit for storing the created coding graph in a coding graph storage unit; Including data control system.
  • Claim 2 solves the problem by using DSC 2 shown in the third embodiment. From the first time, the D frame is created by using a frame at a time immediately before the first time, using the original picture corresponding to the first view at the first time as input information.
  • Claim 3 solves the problem by using DSC3 (DSC1 + DSC2) shown in the fourth embodiment.
  • the D frame has, as input information, an original picture corresponding to a first view at a first time, and at least one of the first D frame and the second D frame as side information.
  • the control system of claim 2 comprising a third D frame created by performing distributed source coding.
  • the system of the first aspect further minimizes the amount of multi-view streams to be transmitted under a predetermined memory capacity limit in the coding graph storage unit.
  • system of the first aspect further includes a multi-view stream transmission unit that transmits a necessary stream to the client.
  • the view change request is interactively transmitted to the stream server, and the stream server transmits the corresponding view stream to the client.
  • the storage efficiency of stream data in the stream server can be improved, and the transmission cost to the client can be reduced.
  • FIG. It is a figure which shows the concept of the data acquisition of a multi view stream. It is a figure which shows the concept of an interactive multi view stream. It is a hardware block diagram inside a computer which implements this invention. It is a figure which shows the software block diagram of a stream server. 3 is a block diagram showing a software of a client 130.
  • FIG. It is an example which shows the example of the coding graph of Example 1 of this invention.
  • It is a figure which shows the concept of distributed source coding It is a figure which shows the concept in the case of applying a distributed source coding to Example 2.
  • FIG. It is an example which shows the example of the coding graph of Example 2 of this invention. It is a figure which shows the concept in the case of applying a distributed source coding to Example 3.
  • FIG. It is an example which shows the example of the coding graph of Example 3 of this invention. It is an example which shows the example of the coding graph of Example 4 of this invention. It is a figure which shows the relationship between the transmission rate with respect to distributed source coding, and required memory capacity. It is a figure which shows the processing flow in a stream server.
  • These apparatuses using a computer have a processor 302, and a program executed in the present invention is executed. Data and commands are sent from the processor 302 through the communication bus 304.
  • the computer 300 also has a main memory 306 typified by RAM, where program code is executed.
  • the secondary memory 308 includes, for example, one or more hard disks 310 or a removable storage drive 312 such as a flexible disk drive, a magnetic tape drive, and a CD disk drive, and these drive the removable storage 314. .
  • the secondary memory 308 stores program codes for implementing the present invention.
  • User I / O devices include a keyboard 316, a mouse 318, a display 320, and the like.
  • Display adapter 322 interfaces communication bus 304 and display 320, receives data from processor 302 and converts it to display commands for display 320. Further, the processor 302 communicates with, for example, the Internet and a LAN through the network adapter 324.
  • FIG. 4 is a diagram illustrating a software block diagram of the stream server 110.
  • the multi-view source storage unit 112 stores a plurality of view streams.
  • the plurality of view streams are sent to the encoding unit 116 and encoded by the encoding unit to create an I frame, a P frame, and a D frame (described later).
  • the coding graph creation unit 118 combines the I frame, the P frame, and the D frame, and further connects them by a predetermined path to form a coding graph as shown in FIGS. 6, 9, 11, and 12. .
  • the coding graph is constructed while optimizing the storage efficiency and the transmission bandwidth. In this case, if necessary, data is transmitted to the encoding unit 116 and further encoded, and the coding graph is reconstructed using them.
  • the created coding graph is stored in the coding graph storage unit 120.
  • the receiving unit 124 receives the information of the view desired by the user transmitted from the client 130 (FIG. 5), and sends it to the view data transmission control unit 122.
  • the view stream transmission control unit 122 receives a view stream desired by the user from the coding graph storage unit 120 and transmits the view stream to the client via the transmission unit 126.
  • FIG. 14 is a diagram showing a series of processing flows in the stream server in the present invention.
  • 410 Step of reading original picture
  • the encoding unit 116 reads each picture of the multi-view stream from the multi-view source storage unit 112.
  • 420 Step of encoding original picture This is a step of encoding the original picture read by the encoding unit 116 to create an I frame, a P frame, and a D frame.
  • Step 440 Step of minimizing the transmission stream under the memory limit
  • the coding graph creation unit 118 In order for the coding graph creation unit 118 to minimize the bandwidth of the multi-view stream to be transmitted under the limitation of the memory capacity in the coding graph storage unit 120. This is a step for optimizing the configuration of the coding graph. If the configuration of the coding graph is not optimized, the process returns to Step 420: “Step of encoding original picture”.
  • Step of storing coding graph In this step, the coding graph creation unit 118 stores the created coding graph in the coding graph storage unit 120.
  • Step for receiving a request from the client View stream transmission control unit 1 Reference numeral 22 denotes a step of receiving a view request from the client 130 through the receiving unit 124.
  • FIG. 5 shows a software block diagram of the client 130.
  • the client 130 receives designation of a desired view stream from the user via the user input unit 132.
  • the information is transmitted to the stream server 110 via the transmission unit 134.
  • a video stream corresponding to the view designated by the user is transmitted from the stream server 110.
  • the receiving unit 136 receives the video stream and transmits it to the stream data storage unit 137.
  • the stream data storage unit 137 stores the received video stream and sends it to the decoding unit 138.
  • the decoding unit 138 performs decoding, and the multi-view display unit 140 displays the decoded data. Further, the decoded data is stored in the stream data storage unit 137 as necessary.
  • FIG. 6 is a diagram illustrating an example of a coding graph using an I frame and a P frame.
  • a square represents an I frame
  • an ellipse represents a P frame
  • a dashed rectangle represents a picture.
  • the rectangle indicated by the broken line need not be stored in the coding graph storage unit 120. Since information necessary for displaying the corresponding original picture Fo is included in the I frame, the picture F can be reproduced by the I frame alone.
  • o on the right shoulder of F o represents an original picture.
  • the picture F is a picture restored after being reduced once. Therefore different from the F o. Since the difference information from the picture at the previous time is included in the P frame, in order to reproduce the picture F, the data of the image F at the previous time is required.
  • the problem when using P-frames is that the number of coding passes in the coding graph and the number of P-frames required to reproduce the same picture thereby rapidly increase over time. It is.
  • a large amount of P frames is required with the passage of time, which means that a large memory capacity (storage cost) is required for the stream server.
  • replacing the P frames with I frames is used to avoid this. In this case, however, this reduces the amount of memory required for the stream server, but increases the amount of transmission to be sent to the client, which places a burden on the bandwidth on the transmission line.
  • FIG. 7 is a diagram illustrating the concept of distributed source coding.
  • distributed source coding is performed using X as input information and Y1, Y2,... Yk as side information of X, and as a result, a frame Dy is obtained.
  • the encoder transmits Dy to the decoder, and the decoder can decode X using at least one side information Y1, Y2,... Yk among Y1, Y2,.
  • FIG. 8 is a diagram illustrating the concept of distributed source coding (DSC1) used in the second embodiment.
  • the encoder uses the original picture F o (i + 1, j), which is the view (j) at the time index (i + 1), as input information as input information, and the view (j) at the time index (i + 1) as side information.
  • FIG. 9 is a diagram illustrating a coding graph using the first example (DSC1) using distributed source coding.
  • F (3,1,1) is a series of paths from the I frame, namely I (0,0), P (1,1,1), P (2,1,1) and P (3,1 , 1). The same applies to the other three pictures F.
  • D (3,2), F (3,2,1), F (3,2,2), F (3,2,3), and F corresponding to the view (2) (3, 2, 4) is omitted.
  • a predetermined evaluation function I is defined, and I frame, P frame, D frame, and coding graph configuration that minimize the predetermined evaluation function I are obtained.
  • I T (s) + ⁇ B (s)
  • T (s) is a transmission cost
  • B (s) is a storage cost
  • is a predetermined constant
  • s represents the configuration of the coding graph.
  • FIG. 10 is a diagram illustrating the concept of a coding graph using distributed source coding (DSC2) used in the third embodiment.
  • the stream server inputs the original picture F o (i + 1, j) of the view (j) at the time index (i + 1) as input information, and F of the view (j) at the time index (i) as side information.
  • F (i, 1,1), F (i, 1,2),-, F (i, 1, k1) represents the view (1) at the time index (i). However, there are one or more pictures showing view (1) at time index (i). In order to distinguish them, the third parameter (k1) is used for the distinction.
  • the client decodes Dp using at least one of the pictures F 1 of the view (j) in the time index (i), for example, F (i, j, w) as side information, and displays the picture F (to be displayed on the multi-view display unit.
  • i + 1, j, w) can be obtained.
  • a possible range of w is 1 to (k1 + ⁇ kj + ⁇ + kn).
  • FIG. 11 is a diagram illustrating a coding graph using the second example (DSC2) using distributed source coding.
  • the pictures of the view (1) and the view (2) are used as side information.
  • F (2, 2, 1), F (2, 1, 2), and F (2, 2, 2) are created as side information.
  • the D (3, 2) frame is omitted.
  • F (2,1,1), F (2,2,1), F (2,1,2), and F (2,2,2) are used.
  • D (2,1) (not shown) can be obtained using F (1,1,1) and F (1,2,1), and can be used for the coding graph.
  • FIG. 12 is a diagram showing a coding graph using the third example (DSC3) using distributed source coding.
  • DSC3 third example
  • F (3,1,1) is created using F (2,1,1) and P (3,1,1).
  • F (2,2,1) can be reproduced using P (2,2,1) and F (1,1,1).
  • F (2,1,2) can be reproduced from P (2,1,2) and F (1,2,2)
  • F (2,2,2) It can be reproduced from (2,2,2) and F (1,2,2).
  • decoding is performed using D (3,1,2) as input information and F (3,1,2) as side information, and a picture FN (3,1,2) to be displayed on the multi-view display unit is displayed. Can be obtained. See FIG. 8 for picture FN.
  • DSC3 (a combination of DSC1 and DSC2) is shown. Although details will be described later, in the amount of data stored in the stream server, DSC1> (DSC1 + DSC2)> DSC2 In the bandwidth when sending from the stream server to the client, DSC1 ⁇ (DSC1 + DSC2) ⁇ DSC2 It becomes. Comparing the path (a) and the path (b) in FIG. In the case of path (a), the stream server transmits D (3, 1, 2) and P (3, 1, 1) to the client. In the case of path (b), the stream server transmits D (3, 1, 2) and D (3, 1, 1) to the client.
  • the coding graph when it is known that the frequency of using the path (a) is high empirically or probabilistically, when the coding graph is constructed with the configuration of (DSC1 + DSC2), it is stored in the stream server. The amount of data can be reduced, and the bandwidth for transmission from the substantial stream server to the client can also be reduced. In general, the size of the transmitted frame is larger in the D frame than in the P frame. If it is known in advance that the probability of passing through the path (b) is higher than that of the path (a), the configuration of the coding graph shown in the fourth embodiment reduces the amount of data to be transmitted.
  • FIG. 12 shows the amount of transmission data and memory storage expected when three distributed source coding techniques DCS1, DSC2, and DSC3 (DSC1 + DSC2) disclosed in this specification are used when an I frame is used.
  • DCS1, DSC2, and DSC3 DSC1 + DSC2
  • DSC1 + DSC2 DSC3
  • the coding graph including DSC is 28% less than the coding graph for only I frames, and 20% more than the coding graph for I frames and P frames. Has been demonstrated.
  • Stream server 112 Multi-view source storage unit 116: Encoding unit 118: Coding graph creation unit 120: Coding graph storage unit 122: View stream transmission control unit 124: Reception unit 126: Transmission unit 130: Client 132: User Input unit 134: transmission unit 136: reception unit 138: decoding unit 140: multi-view display unit 300: main memory 306 302: Processor 304: Communication bus 308: Secondary memory 310: Hard disk 312: Removable storage drive 316: Keyboard 318: Mouse 320: Display 322: Display adapter

Abstract

In interactive multi-view video streaming, a corresponding video data stream is transmitted to a user, in response to a request from the user. In a coding stream, if a large number of P frames are used, a data storage amount necessary in a data storage device becomes large, and if a large number of I frames are used, a data transfer amount necessary in a data communication line becomes large. Upon creating a coding graph, D (distributed source coding) frames are combined in addition to the P frames and the I frames, so that the bandwidth of the communication line can be reduced and further, a trade-off with the storage capacity of the stream server can be achieved.

Description

マルチビュー・ストリームデータ制御システム・方法Multi-view stream data control system and method
本願発明は、マルチビュービデオコーディング(Multiview Video Coding)において複数のカメラで撮影したビデオストリームを効率的に格納しユーザへ送信する技術に関する。 The present invention relates to a technique for efficiently storing and transmitting to a user video streams shot by a plurality of cameras in multiview video coding.
 マルチビュービデオコーディング(Multiview Video Coding、以下MVC)では、複数のカメラで撮影したビデオストリームを圧縮しエンコードを行ってユーザへ送信する。ユーザはこれらのビデオストリームを受信しデコードし再生する。インタラクティブ・マルチビュー・ビデオストリームでは、ユーザはマルチビュー・ビデオストリームサーバ(以下、本願明細書では、ストリームサーバ)へ所望のビューをインタラクティブに要求することが出来る。それに対応してストリームサーバは、クライアントへ、コーディング・グラフから、対応するビデオストリームを送る。 In multiview video coding (hereinafter referred to as MVC), video streams shot by multiple cameras are compressed, encoded, and transmitted to the user. The user receives, decodes and plays back these video streams. In an interactive multi-view video stream, a user can interactively request a desired view from a multi-view video stream server (hereinafter referred to as a stream server). Correspondingly, the stream server sends the corresponding video stream from the coding graph to the client.
G. Cheung, T. Sakamoto, A. Ortega, “Managing Multiview Streaming Video Data Composed Of Frames”, USPTO application no. 12/246274.G. Cheung, T. Sakamoto, A. Ortega, “Managing Multiview Streaming Video Data Composed Of Frames”, USPTO application no. 12/246274.
 MVCの最近の傾向として、ビュー間及び時間的冗長度を実行することにより、複数のカメラで撮影したビデオのストリームを効率的に圧縮する技術が研究されている。例えば、MVCの標準化プロセスは、レートとひずみの最適化を図って、マルチビュー・ビデオストリームの中で、全てのフレームをエンコードする新しい圧縮アルゴリズムを開発することに重きが置かれてきた。 As a recent trend of MVC, a technique for efficiently compressing video streams shot by a plurality of cameras by performing inter-view and temporal redundancy has been studied. For example, the MVC standardization process has focused on developing a new compression algorithm that encodes all frames in a multi-view video stream in order to optimize rate and distortion.
 本願明細書が対象とするインタラクティブ・マルチビュー・ビデオストリーム(以下、本願明細書では、IMVSと呼ぶ)の問題について述べる。IMVSでは、ユーザがストリームサーバへ所望のビューをインタラクティブに要求することが出来る。それに対応してストリームサーバは、クライアントへ、コーディング・グラフから、対応するビデオストリームを送信する。従来技術の問題点として以下のものが挙げられる。コーディング・グラフの構築において、Pフレームを多く用いると、Pフレームの数が時間の経過と共に指数関数的に増大し、コーディング・グラフを構成するために必要なデータ格納量が多くなり、その結果データ格納コストが高くなる。またIフレームを多く用いると、コーディング・グラフでのフレームの数、及び、パスの数を減少させることは出来るが、データ通信回線でのデータ送信量が多く必要となり、通信回線での帯域幅が広く要求されることである。 A problem of an interactive multi-view video stream (hereinafter referred to as IMVS in the present specification) targeted by the present specification will be described. In IMVS, a user can interactively request a desired view from a stream server. Correspondingly, the stream server sends the corresponding video stream from the coding graph to the client. The following are problems of the prior art. When a large number of P frames are used in the construction of the coding graph, the number of P frames increases exponentially with the passage of time, and the amount of data storage required to construct the coding graph increases, resulting in data Storage costs increase. If many I frames are used, the number of frames in the coding graph and the number of paths can be reduced, but a large amount of data transmission is required on the data communication line, and the bandwidth on the communication line is reduced. It is widely required.
 本願明細書では、上記の問題点を、以下の手段で解決する。以下、制御システムとして請求項に記載した内容について説明する。
 請求項1では実施例2で示すDSC1を用いて課題を解決する。
 [請求項1]コンピュータを使用したマルチビュー・ストリームデータ制御システムであって、
(a)マルチビューソース格納部から、所定の時間における所定の原ピクチャを読取り、エンコードを行い、Iフレーム、Pフレーム、及び、Dフレームを作成するエンコード部であって、
前記Dフレームは、第1の時刻の第1のビューに対応する原ピクチャを入力情報とし、第1の時刻のフレームを利用して作成された、第1の時刻における、第1のビューに対応する、少なくとも1つの第1のピクチャを、サイド情報として、分散型ソースコーディングを行って作成される第1のDフレームを含み、
(b)Iフレーム、Pフレーム、及び、Dフレームを時系列に沿った一連のパスで結び、コーディング・グラフを作成するコーディング・グラフ作成部、及び、
(c)前記作成されたコーディング・グラフをコーディング・グラフ格納部に格納する格納部、
を含むデータ制御システム。
In the present specification, the above problems are solved by the following means. The contents described in the claims as the control system will be described below.
Claim 1 solves the problem by using DSC 1 shown in the second embodiment.
[Claim 1] A multi-view stream data control system using a computer,
(A) An encoding unit that reads a predetermined original picture at a predetermined time from a multi-view source storage unit, performs encoding, and creates an I frame, a P frame, and a D frame,
The D frame corresponds to the first view at the first time created using the original picture corresponding to the first view at the first time as the input information and the frame at the first time. A first D frame created by performing distributed source coding with at least one first picture as side information,
(B) a coding graph creation unit that creates a coding graph by connecting the I frame, the P frame, and the D frame by a series of time-sequential paths; and
(C) a storage unit for storing the created coding graph in a coding graph storage unit;
Including data control system.
 [請求項2]
 請求項2では実施例3で示すDSC2を用いて課題を解決する。
前記Dフレームは、第1の時刻の第1のビューに対応する原ピクチャを入力情報とし、前記第1の時刻より1つ前の時刻におけるフレームを利用して作成された、第1の時刻より1つ前の時刻における、少なくとも1つのピクチャをサイド情報として、分散型ソースコーディングを行って作成される第2のDフレームを含む、請求項1の制御システム。
[Claim 2]
Claim 2 solves the problem by using DSC 2 shown in the third embodiment.
From the first time, the D frame is created by using a frame at a time immediately before the first time, using the original picture corresponding to the first view at the first time as input information. The control system according to claim 1, further comprising a second D frame created by performing distributed source coding with at least one picture at the previous time as side information.
[請求項3]
 請求項3では実施例4で示すDSC3(DSC1+DSC2)を用いて課題を解決する。
 前記Dフレームは、第1の時刻の第1のビューに対応する原ピクチャを入力情報とし、前記第1のDフレーム、及び、前記第2のDフレームのうち、少なくとも1つをサイド情報として、分散型ソースコーディングを行って作成される第3のDフレームを含む、請求項2の制御システム。
[Claim 3]
Claim 3 solves the problem by using DSC3 (DSC1 + DSC2) shown in the fourth embodiment.
The D frame has, as input information, an original picture corresponding to a first view at a first time, and at least one of the first D frame and the second D frame as side information. 3. The control system of claim 2, comprising a third D frame created by performing distributed source coding.
 [請求項4]
 請求項4では、請求項1のシステムが、さらにコーディング・グラフ格納部での所定のメモリー容量制限下で、送信するマルチビューストリーム量の最小化を図ることを特徴とする。
[Claim 4]
In a fourth aspect of the present invention, the system of the first aspect further minimizes the amount of multi-view streams to be transmitted under a predetermined memory capacity limit in the coding graph storage unit.
 [請求項5]
 請求項5では、請求項1のシステムが、さらに、クライアントへ必要なストリームを送信するマルチビューストリーム送信部を有することを特徴とする。
[Claim 5]
In a fifth aspect of the present invention, the system of the first aspect further includes a multi-view stream transmission unit that transmits a necessary stream to the client.
 本願明細書で開示する技術によれば、ユーザがマルチビュー・ビデオストリームを観ている場合に、インタラクティブにストリームサーバへビューの変更要求を送信し、ストリームサーバは対応するビューストリームをクライアントへ送信する場合において、ストリームサーバでのストリームデータの格納効率を改善することができ、かつ、クライアントへの送信コストを少なくすることが出来る。 According to the technology disclosed in this specification, when a user is watching a multi-view video stream, the view change request is interactively transmitted to the stream server, and the stream server transmits the corresponding view stream to the client. In some cases, the storage efficiency of stream data in the stream server can be improved, and the transmission cost to the client can be reduced.
マルチビューストリームのデータ取得の概念を示す図である。It is a figure which shows the concept of the data acquisition of a multi view stream. インタラクティブ・マルチビュー・ストリームの概念を示す図である。It is a figure which shows the concept of an interactive multi view stream. 本願発明を実施するコンピュータ内部のハードウェア構成図である。It is a hardware block diagram inside a computer which implements this invention. ストリームサーバのソフトウェアブロック図を示す図である。It is a figure which shows the software block diagram of a stream server. クライアント130のソフトウェアブロック図を示す図である。3 is a block diagram showing a software of a client 130. FIG. 本願発明の実施例1のコーディング・グラフの例を示す例である。It is an example which shows the example of the coding graph of Example 1 of this invention. 分散型ソースコーディングの概念を示す図である。It is a figure which shows the concept of distributed source coding. 分散型ソースコーディングを実施例2に適用する場合の概念を示す図である。It is a figure which shows the concept in the case of applying a distributed source coding to Example 2. FIG. 本願発明の実施例2のコーディング・グラフの例を示す例である。It is an example which shows the example of the coding graph of Example 2 of this invention. 分散型ソースコーディングを実施例3に適用する場合の概念を示す図である。It is a figure which shows the concept in the case of applying a distributed source coding to Example 3. FIG. 本願発明の実施例3のコーディング・グラフの例を示す例である。It is an example which shows the example of the coding graph of Example 3 of this invention. 本願発明の実施例4のコーディング・グラフの例を示す例である。It is an example which shows the example of the coding graph of Example 4 of this invention. 分散型ソースコーディング対する送信レートと必要なメモリー容量との関係を示す図である。It is a figure which shows the relationship between the transmission rate with respect to distributed source coding, and required memory capacity. ストリームサーバでの処理フローを示す図である。It is a figure which shows the processing flow in a stream server.
 [インタラクティブ・マルチビュー・ビデオストリーム]
 図1は、一人の人物を同時にn台のカメラで撮影している場面を示している。これらのn台のカメラで撮影したビュー(j)(j=1~n)をユーザに送り、ユーザは所望のビューを指定して見ることが出来る。
 図2は、インタラクティブ・マルチビュー・ビデオストリームをユーザからのリクエストに従いインタラクティブに配信するシステムの概要を示している。複数のカメラで撮影されたビューはマルチビューソースに格納される。これらのマルチビューはエンコード部116でエンコードされ、コーディング・グラフ作成部118でコーディング・グラフが作成される。ユーザはクライアント130から、ストリームサーバ110へビューリクエストをインタラクティブに送信する。ストリームサーバ110はクライアントs(s=1~q)にユーザの所望するビューストリームを送信する。
[Interactive multi-view video stream]
FIG. 1 shows a scene in which one person is photographed simultaneously by n cameras. Views (j) (j = 1 to n) photographed by these n cameras are sent to the user, and the user can designate and view a desired view.
FIG. 2 shows an overview of a system for interactively delivering an interactive multi-view video stream according to a request from a user. Views taken by multiple cameras are stored in a multi-view source. These multiviews are encoded by the encoding unit 116, and a coding graph is created by the coding graph creation unit 118. The user interactively transmits a view request from the client 130 to the stream server 110. The stream server 110 transmits a view stream desired by the user to the client s (s = 1 to q).
[Iフレーム及びPフレームを使用した例]
[コンピュータ内部ハードウェア構成図]
 図3は、本願発明を実施するストリームサーバ110、及び、各クライアント130s(s=1~q)のコンピュータ内部のハードウェア構成図を示す。コンピュータを用いたこれらの装置はプロセッサー302を有し、本願発明で実施されるプログラムが実行される。プロセッサー302からデータ及びコマンドはコミュニケーションバス304を通して送られる。コンピュータ300はまた、RAMに代表されるメインメモリー306を有し、ここでプログラムコードが実行される。2次メモリー308には、例えば、一つ以上のハードディスク310、または、フレキシブルディスクドライブ、磁気テープドライブ、CDディスクドライブなどのリムーバブルストレージドライブ312を有しており、これらは、リムーバブルストレージ314をドライブする。2次メモリー308には、本願発明を実施するプログラムコードが格納される。
[Example using I frame and P frame]
[Computer internal hardware configuration diagram]
FIG. 3 shows a hardware configuration diagram inside the computer of the stream server 110 that implements the present invention and each client 130s (s = 1 to q). These apparatuses using a computer have a processor 302, and a program executed in the present invention is executed. Data and commands are sent from the processor 302 through the communication bus 304. The computer 300 also has a main memory 306 typified by RAM, where program code is executed. The secondary memory 308 includes, for example, one or more hard disks 310 or a removable storage drive 312 such as a flexible disk drive, a magnetic tape drive, and a CD disk drive, and these drive the removable storage 314. . The secondary memory 308 stores program codes for implementing the present invention.
 ユーザI/Oデバイスは、キーボード316、マウス318、ディスプレー320などを含んでいる。ディスプレーアダプター322は、コミュニケーションバス304とディスプレー320とのインターフェースを行い、プロセッサー302からのデータを受信し、ディスプレー320のために表示コマンドに変換する。さらに、プロセッサー302は、ネットワークアダプター324を通して、例えば、インターネット及びLAN等と通信する。 User I / O devices include a keyboard 316, a mouse 318, a display 320, and the like. Display adapter 322 interfaces communication bus 304 and display 320, receives data from processor 302 and converts it to display commands for display 320. Further, the processor 302 communicates with, for example, the Internet and a LAN through the network adapter 324.
 [ソフトウェアブロック図]
 図4は、ストリームサーバ110のソフトウェアブロック図を示す図である。マルチビューソース格納部112には、複数のビューストリームが格納されている。これらの複数のビューストリームはエンコード部116へ送られ、エンコード部でエンコードされ、Iフレーム、Pフレーム、Dフレーム(後述)が作成される。コーディング・グラフ作成部118では、Iフレーム、Pフレーム、Dフレームを組み合わせて、さらにこれらを所定のパスで結び、図6、図9、図11、図12に示すようなコーディング・グラフを構成する。また、コーディング・グラフの構成において、格納効率及び送信帯域の最適化を行いながら、コーディング・グラフを構築する。この場合、必要に応じてエンコード部116へデータを送信しさらにエンコードを行い、それらを用いてコーディング・グラフを再構成する。
[Software block diagram]
FIG. 4 is a diagram illustrating a software block diagram of the stream server 110. The multi-view source storage unit 112 stores a plurality of view streams. The plurality of view streams are sent to the encoding unit 116 and encoded by the encoding unit to create an I frame, a P frame, and a D frame (described later). The coding graph creation unit 118 combines the I frame, the P frame, and the D frame, and further connects them by a predetermined path to form a coding graph as shown in FIGS. 6, 9, 11, and 12. . In the configuration of the coding graph, the coding graph is constructed while optimizing the storage efficiency and the transmission bandwidth. In this case, if necessary, data is transmitted to the encoding unit 116 and further encoded, and the coding graph is reconstructed using them.
作成されたコーディング・グラフはコーディング・グラフ格納部120に格納される。受信部124はクライアント130(図5)から送信されるユーザが所望するビューの情報を受信し、ビューデータ送信コントロール部122へ送る。ビューストリーム送信コントロール部122は、ユーザの所望するビューストリームをコーディング・グラフ格納部120から受け取り、送信部126を経由して、クライアントへ送信する。 The created coding graph is stored in the coding graph storage unit 120. The receiving unit 124 receives the information of the view desired by the user transmitted from the client 130 (FIG. 5), and sends it to the view data transmission control unit 122. The view stream transmission control unit 122 receives a view stream desired by the user from the coding graph storage unit 120 and transmits the view stream to the client via the transmission unit 126.
[ストリームサーバでの処理フロー図]
 図14は本願発明において、ストリームサーバでの一連の処理フローを示す図である。
410:原ピクチャを読込むステップ
 エンコード部116がマルチビューソース格納部112からマルチビューストリームの各ピクチャを読込むステップである。 
420:原ピクチャをエンコードするステップ
 エンコード部116が読込んだ原ピクチャをエンコードし、Iフレーム、Pフレーム、Dフレームを作成するステップである。
430:コーディング・グラフ作成ステップ
 コーディング・グラフ作成部118が、作成されたIフレーム、Pフレーム、Dフレームを用いて、コーディング・グラフを作成するステップである。
440:メモリー制限下で送信ストリームの最小化を図るステップ
 コーディング・グラフ作成部118が、コーディング・グラフ格納部120でのメモリー容量の制限下、送信するマルチビュービストリームの帯域幅を最小にするために、コーディング・グラフの構成の最適化を図るステップである。コーディング・グラフの構成が最適化されていない場合には、ステップ420:「原ピクチャをエンコードするステップ」へ戻る。
[Processing flow diagram on stream server]
FIG. 14 is a diagram showing a series of processing flows in the stream server in the present invention.
410: Step of reading original picture In this step, the encoding unit 116 reads each picture of the multi-view stream from the multi-view source storage unit 112.
420: Step of encoding original picture This is a step of encoding the original picture read by the encoding unit 116 to create an I frame, a P frame, and a D frame.
430: Coding graph creation step In this step, the coding graph creation unit 118 creates a coding graph using the created I frame, P frame, and D frame.
Step 440: Step of minimizing the transmission stream under the memory limit In order for the coding graph creation unit 118 to minimize the bandwidth of the multi-view stream to be transmitted under the limitation of the memory capacity in the coding graph storage unit 120. This is a step for optimizing the configuration of the coding graph. If the configuration of the coding graph is not optimized, the process returns to Step 420: “Step of encoding original picture”.
450:コーディング・グラフを格納するステップ
 コーディング・グラフ作成部118が、作成されたコーディング・グラフをコーディング・グラフ格納部120に格納するステップである。
460:クライアントからのリクエストを受取るステップ
 ビューストリーム送信コントロール部1
22が、受信部124を通して、クライアント130からビューリクエストを受信するステップである。
470:リクエストに従って必要なストリームを送信するステップ
 ビューデータ送信コントロール部122が、コーディング・グラフ格納部120から、クライアント130に要求に従って、必要なデータを送信するステップである。
450: Step of storing coding graph In this step, the coding graph creation unit 118 stores the created coding graph in the coding graph storage unit 120.
460: Step for receiving a request from the client View stream transmission control unit 1
Reference numeral 22 denotes a step of receiving a view request from the client 130 through the receiving unit 124.
470: A step of transmitting a necessary stream in accordance with the request In this step, the view data transmission control unit 122 transmits the necessary data from the coding graph storage unit 120 to the client 130 according to the request.
 図5は、クライアント130のソフトウェアブロック図を示す。クライアント130はユーザ入力部132を介して、ユーザから所望のビューストリームの指定を受け取る。その情報は送信部134を経由して、ストリームサーバ110へ送信される。ストリームサーバ110からユーザの指定したビューに対応するビデオストリームが送信される。受信部136は当該ビデオストリームを受信しストリームデータ格納部137へ送信する。ストリームデータ格納部137は受信したビデオストリームを格納すると共にデコード部138へ送る。デコード部138で、デコードを行い、マルチビュー表示部140で表示する。また、必要に応じてデコードしたデータをストリームデータ格納部137へ格納する。 FIG. 5 shows a software block diagram of the client 130. The client 130 receives designation of a desired view stream from the user via the user input unit 132. The information is transmitted to the stream server 110 via the transmission unit 134. A video stream corresponding to the view designated by the user is transmitted from the stream server 110. The receiving unit 136 receives the video stream and transmits it to the stream data storage unit 137. The stream data storage unit 137 stores the received video stream and sends it to the decoding unit 138. The decoding unit 138 performs decoding, and the multi-view display unit 140 displays the decoded data. Further, the decoded data is stored in the stream data storage unit 137 as necessary.
[Iフレーム及びPフレームを使用した例]
 図6はIフレーム及びPフレームを使用したコーディング・グラフの例を示す図である。ここで正方形はIフレームを、楕円形はPフレームを、破線の長方形はピクチャを表す。破線で示されている長方形は、コーディング・グラフ格納部120に格納する必要が無い。Iフレームには該当する原ピクチャFoを表示するために必要な情報が含まれているので、Iフレーム単独でピクチャFを再生できる。ここでFoの右肩のoは原ピクチャであることを表す。ピクチャFとした時は一旦縮小された後で復元したピクチャである。従ってFoとは異なる。
Pフレームには前の時刻でのピクチャからの差分情報が含まれているので、ピクチャFを再生するためには、前の時刻での画像Fのデータが必要となる。
[Example using I frame and P frame]
FIG. 6 is a diagram illustrating an example of a coding graph using an I frame and a P frame. Here, a square represents an I frame, an ellipse represents a P frame, and a dashed rectangle represents a picture. The rectangle indicated by the broken line need not be stored in the coding graph storage unit 120. Since information necessary for displaying the corresponding original picture Fo is included in the I frame, the picture F can be reproduced by the I frame alone. Here, o on the right shoulder of F o represents an original picture. The picture F is a picture restored after being reduced once. Therefore different from the F o.
Since the difference information from the picture at the previous time is included in the P frame, in order to reproduce the picture F, the data of the image F at the previous time is required.
 ここで、時間インデックスt=2において、ビュー(1)を再生するために必要なPフレームは、t=1でのフレームからの経路により複数存在する。すなわち、P(2,1,1)及びP(2,1,2)である。同様に、ビュー(2)を再生するために必要なPフレームは、P(2,2,1)及びP(2,2,2)である。これらの複数存在するPフレームを区別するために3番目のパラメータkを用いる。P(i,j,k)は、時間インデックス(i)における、ビュー(j)を再生するために必要なPフレームの中で(k)番目のPフレームであることを意味する(k=1~m)。 Here, at the time index t = 2, there are a plurality of P frames necessary for reproducing the view (1) by the path from the frame at t = 1. That is, P (2,1,1) and P (2,1,2). Similarly, P frames necessary for reproducing the view (2) are P (2, 2, 1) and P (2, 2, 2). The third parameter k is used to distinguish these plural P frames. P (i, j, k) means that it is the (k) th P frame among the P frames necessary for reproducing the view (j) in the time index (i) (k = 1). ~ M).
 [ビデオストリームの再生]
ユーザが、時間インデックス(i)及び ビュー(j)において、現在見ているピクチャFを見た後で、次の時間インデックス(i+1)で、ビュー(h)(h=1~n)0を要求するとき、ストリームサーバは以下の(1)から(3)のいずれかを選択し、その情報をクライアントへ送信する。
(1)Iフレーム I(i+1,h)(h=1~n、但し、j-1 <= h <= j+1)
 この場合には、クライアントはI(i+1,h)をデコードすることによりF(i+1,h)を再現できる。
(2)現在見ているピクチャF(i,j,k)からの差分情報であるP(i+1,h,k’)(k’=1~m)
 この場合に、F(i+1,h,k)は、P(i+1,h,k)を使用して再現することが出来るピクチャであることを意味する。
(3)ピクチャF(i,j,r)(r#k)を再現するための時間インデックス(i)以前の一連のPフレームまたはIフレーム、及び、ピクチャF(i,j,r)からの差分情報であるP(i+1,h,k)
 ピクチャF(i,j,r)(r#k)を再現するためには、時間インデックス(i)以前の一連のPフレームまたはIフレームが必要であり、さらに、ピクチャF(i,j,r)からの差分情報であるP(i+1,h,k)によって、F(i+1,h,k)を再生できる。
[Play video stream]
After the user sees the currently viewed picture F at time index (i) and view (j), at the next time index (i + 1), view (h) (h = 1-n) 0 When requesting, the stream server selects one of the following (1) to (3) and transmits the information to the client.
(1) I frame I (i + 1, h) (h = 1 to n, where j-1 <= h <= j + 1)
In this case, the client can reproduce F (i + 1, h) by decoding I (i + 1, h).
(2) P (i + 1, h, k ′) (k ′ = 1 to m) which is difference information from the currently viewed picture F (i, j, k)
In this case, F (i + 1, h, k) means a picture that can be reproduced using P (i + 1, h, k).
(3) From a series of P-frames or I-frames before time index (i) and picture F (i, j, r) for reproducing picture F (i, j, r) (r # k) P (i + 1, h, k) which is difference information
In order to reproduce the picture F (i, j, r) (r # k), a series of P frames or I frames before the time index (i) is required, and the picture F (i, j, r) F (i + 1, h, k) can be reproduced by P (i + 1, h, k) which is difference information from).
ここで、Pフレームを使用する場合の問題点は、コーディング・グラフにおけるコーディングパスの数、及び、それによる同じピクチャを再現するために要求されるPフレームの数が、時間経過と共に急速に増えることである。例えば、図6において、Pフレームの数は、時間インデックスt=1において2個であるが時間インデックスt=2において4個に増える。このように、時間の経過と共に多量のPフレームが必要であり、ストリームサーバに多大のメモリー容量(格納コスト)が必要であることを意味する。
 一般に、Pフレームの数が増え、さらに、デコーディングパスの数が多い場合に、これを回避するために、PフレームをIフレームに置き換えることが用いられる。しかしこの場合は、これによって、ストリームサーバに必要なメモリー量は少なくなるが、クライアントへ送信する送信量が増大するので、送信回線での帯域幅に負担を掛けることになる。
Here, the problem when using P-frames is that the number of coding passes in the coding graph and the number of P-frames required to reproduce the same picture thereby rapidly increase over time. It is. For example, in FIG. 6, the number of P frames is 2 at the time index t = 1, but increases to 4 at the time index t = 2. As described above, a large amount of P frames is required with the passage of time, which means that a large memory capacity (storage cost) is required for the stream server.
In general, when the number of P frames increases and the number of decoding passes is large, replacing the P frames with I frames is used to avoid this. In this case, however, this reduces the amount of memory required for the stream server, but increases the amount of transmission to be sent to the client, which places a burden on the bandwidth on the transmission line.
 [分散型ソースコーディングを用いた例(DSC1)]
実施例2では、前述の問題を解決するために分散型ソースコーディングを用いた解決策を開示する。
[Example using distributed source coding (DSC1)]
In the second embodiment, a solution using distributed source coding is disclosed to solve the above-described problem.
 [分散型ソースコーディング]
 先ず、分散型ソースコーディングについて説明する。図7は、分散型ソースコーディングの概念を示す図である。エンコーダでは、入力情報としてXを、Xのサイド情報としてY1、Y2、・・Ykを用いて分散型ソースコーディングを行い、その結果としてフレームDyを得る。エンコーダはDyをデコーダに送信し、デコーダはY1、Y2、・・Ykの内、少なくとも一つのサイド情報Y1、Y2、・・Ykを用いてXをデコードすることが出来る。
[Distributed source coding]
First, distributed source coding will be described. FIG. 7 is a diagram illustrating the concept of distributed source coding. In the encoder, distributed source coding is performed using X as input information and Y1, Y2,... Yk as side information of X, and as a result, a frame Dy is obtained. The encoder transmits Dy to the decoder, and the decoder can decode X using at least one side information Y1, Y2,... Yk among Y1, Y2,.
図8は、実施例2で用いる分散型ソースコーディング(DSC1)の概念を示す図である。エンコーダは入力ピクチャとして時間インデックス(i+1)におけるビュー(j)である原ピクチャFo(i+1,j)を入力情報とし、サイド情報として時間インデックス(i+1)におけるビュー(j)であるピクチャF(i+1,j,k) (k=1~m)を用いて、エンコードを行いDpを作成する。デコーダは、時間インデックス(i+1)におけるビュー(j)であるピクチャF(i+1,j,k)(k=1~m)のうち少なくとも1つをサイド情報としてDpをデコードし、表示すべきFN(i+1,j,k)(k=1~m)得ることが出来る。
なお、本実施例では、F(i,j,k) (k=1~m)のうち1つをユーザが見ているのであるから、それからの差分に対応するP(i+1,j,k’) (k’=1~m)をクライアントへ送信すれば、クライアントでF(i+1,j,k) (k=1~m)を再現することが出来る。これを、サイド情報として、Dpをデコードし、表示すべきFN(i+1,j,k)(k=1~m)得ることが出来る。
FIG. 8 is a diagram illustrating the concept of distributed source coding (DSC1) used in the second embodiment. The encoder uses the original picture F o (i + 1, j), which is the view (j) at the time index (i + 1), as input information as input information, and the view (j) at the time index (i + 1) as side information. The picture F (i + 1, j, k) (k = 1 to m) is encoded to create Dp. The decoder decodes Dp using at least one of the pictures F (i + 1, j, k) (k = 1 to m) as the view (j) in the time index (i + 1) as side information, and displays FN ( i + 1, j, k) (k = 1 to m).
In this embodiment, since the user is viewing one of F (i, j, k) (k = 1 to m), P (i + 1, j, k ′ corresponding to the difference from the user is viewed. ) (K ′ = 1 to m) is transmitted to the client, F (i + 1, j, k) (k = 1 to m) can be reproduced by the client. Using this as side information, Dp can be decoded to obtain FN (i + 1, j, k) (k = 1 to m) to be displayed.
[コーディング・グラフの構築]
図9は、分散型ソースコーディングを用いた第1の例(DSC1)を用いたコーディング・グラフを示す図である。D(3,1)は、時間インデックスt=3でのビュー(1)に対応する原ピクチャFo(3,1)を入力情報とし、サイド情報として、ビュー(1)に対応する、F(3,1,1),F(3,1,2),F(3,1,3)、及び、F(3,1,4)を用いてデコードされる。ここで、時間インデックスt=3において、ビュー(1)に対応するピクチャFはそのパスに基づいて4つあることに注意されたい。
[Build coding graph]
FIG. 9 is a diagram illustrating a coding graph using the first example (DSC1) using distributed source coding. D (3,1) uses the original picture F o (3,1) corresponding to the view (1) at the time index t = 3 as input information, and as side information corresponds to the view (1) F ( 3,1,1), F (3,1,2), F (3,1,3), and F (3,1,4). Note that at time index t = 3, there are four pictures F corresponding to view (1) based on that path.
 F(3,1,1)は、Iフレームからの一連のパス、すなわち、I(0,0)、P(1,1,1),P(2,1,1)及び P(3,1,1)を用いて作成される。他の3つのピクチャFも同様である。なお、図9では、ビュー(2)に対応するD(3,2),F(3,2,1),F(3,2,2),F(3,2,3)、及び、F(3,2,4)は省略されている。
原ピクチャFo(3,1)を入力情報とし、時間インデックスt=3でのビュー(1)を再現している4つのピクチャF(3,1,k)(k=1~4)をサイド情報として作成するので、DSCフレームD(3,1)のサイズは、非常に小さく出来る。なお4つのピクチャF(3,1,k)(k=1~4)は、DSCフレームD(3,1)を作成した後、ストリームサーバに格納する必要はない。ストリームサーバに格納する必要のないピクチャF(3,1,k)(k=1~4)を破線で示す。
F (3,1,1) is a series of paths from the I frame, namely I (0,0), P (1,1,1), P (2,1,1) and P (3,1 , 1). The same applies to the other three pictures F. In FIG. 9, D (3,2), F (3,2,1), F (3,2,2), F (3,2,3), and F corresponding to the view (2) (3, 2, 4) is omitted.
The original picture F o (3,1) is used as input information, and four pictures F (3,1, k) (k = 1 to 4) reproducing the view (1) at the time index t = 3 are set as side. Since it is created as information, the size of the DSC frame D (3, 1) can be very small. The four pictures F (3, 1, k) (k = 1 to 4) need not be stored in the stream server after the DSC frame D (3, 1) is created. Pictures F (3, 1, k) (k = 1 to 4) that do not need to be stored in the stream server are indicated by broken lines.
 本願明細書の各実施例では、所定の評価関数Iを定めて、これを最小にするIフレーム、Pフレーム、Dフレーム、及び、コーディング・グラフの構成を求めている。評価関数として、本実施例では、
I=T(s)+λB(s)
を用いているが、この評価関数に限定される必要はない。ここで、T(s)は送信コスト、B(s)は格納コスト、λは所定の定数である。sはコーディング・グラフの構成を表している。計算方法の詳細は割愛するが、構成を順次変更しながら評価関数Iの値を求め、コーディング・グラフ全体でIの値が最小になるような構成を求める。
In each embodiment of the present specification, a predetermined evaluation function I is defined, and I frame, P frame, D frame, and coding graph configuration that minimize the predetermined evaluation function I are obtained. As an evaluation function, in this embodiment,
I = T (s) + λB (s)
However, it is not necessary to be limited to this evaluation function. Here, T (s) is a transmission cost, B (s) is a storage cost, and λ is a predetermined constant. s represents the configuration of the coding graph. Although details of the calculation method are omitted, the value of the evaluation function I is obtained while sequentially changing the structure, and a structure in which the value of I is minimized in the entire coding graph is obtained.
 [クライアントでのピクチャ再生]
 ユーザが、時間t=2において、ピクチャF (2,1,1)を見ている場合であって、その後、ユーザが、時間インデックスt=3において、ビュー(1)を要求した場合には、D(3,1)フレーム、及び、P(3,1,1)を送信する。
ユーザは、ピクチャF (2,1,1)を見ているので、P(3,1,1)を受信すれば、F(3,1,1)を再現できる。
 そこで、D(3,1)フレームを入力情報として、F(3,1,1)をサイド情報をして、デコードすることにより、マルチビュー表示部に表示すべきピクチャFN(3,1,1)を得ることが出来る。
 [実施例2の効果]
 実施例2で開示するDSC1では、ストリームサーバからクライアントへ送信する情報は、D(3,1)、及び、P(3,1,1)である。
DSC1で作成するD(3,1)は、入力情報とサイド情報とが同じビューを対象としているために、フレームのサイズが非常に小さくなる。また、P(3,1,1)は、前の時刻でのピクチャFとの差分であるので、このフレームサイズも小さい。よってIフレームI(3,1)を送信するより有利であると言える。
 さらに、DSC1では、複数のPフレームを利用してDSCフレームを構築する。すなわち、時間インデックスt=3において、ピクチャF(3,1,k)k=1~4を再生するためのPフレームからのデコーディングパスは、D(3,1)フレームへのパスのみとなる。これによりt=4以降におけるコーディング・グラフのパスの数を減らすことが出来る。
[Picture playback on client]
If the user is looking at picture F (2,1,1) at time t = 2 and then the user requests view (1) at time index t = 3, D (3, 1) frame and P (3, 1, 1) are transmitted.
Since the user sees the picture F (2,1,1), if P (3,1,1) is received, F (3,1,1) can be reproduced.
Therefore, the picture FN (3, 1, 1) to be displayed on the multi-view display unit is decoded by decoding the D (3, 1) frame as input information and F (3, 1, 1) as side information. ) Can be obtained.
[Effect of Example 2]
In the DSC 1 disclosed in the second embodiment, the information transmitted from the stream server to the client is D (3, 1) and P (3, 1, 1).
Since D (3,1) created by DSC1 is for a view in which the input information and the side information are the same, the frame size is very small. Further, since P (3, 1, 1) is a difference from the picture F at the previous time, this frame size is also small. Therefore, it can be said that it is more advantageous than transmitting I frame I (3, 1).
Further, in DSC1, a DSC frame is constructed using a plurality of P frames. That is, at the time index t = 3, the decoding path from the P frame for reproducing the picture F (3, 1, k) k = 1 to 4 is only the path to the D (3, 1) frame. . As a result, the number of passes of the coding graph after t = 4 can be reduced.
[分散型ソースコーディングを用いた例DSC2]
 [分散型ソースコーディング] 
 図10は、実施例3で用いる分散型ソースコーディング(DSC2) を用いたコーディング・グラフの概念を示す図である。ストリームサーバは、入力情報として時間インデックス(i+1)におけるビュー(j)の原ピクチャFo (i+1,j)を入力し、サイド情報として時間インデックス(i)におけるビュー(j)のFフレーム、F(i,1,1), F(i,1,2),-- ,F(i,1,k1), F(i,j,1), F(i,j,2),-- ,F(i,j,kj), ・・・,F(i,n,1), F(i,n,2),-- ,F(i,n,kn)を用いて、エンコードを行いDpを作成する。(j=1~n)
ここで、F(i,1,1), F(i,1,2),-- ,F(i,1,k1)は 、時間インデックス(i)でのビュー(1)を現す。但し時間インデックス(i)でビュー(1)を現すピクチャは、そのパスにより一つ以上存在する。それらを区別するために、3番目のパラメータ(k1)を用いて区別している。ビュー(j)を現すF(i,j,1), F(i,j,2),-- ,F(i,j,kj), ・・・、さらに、ビュー(n)を現すF(i,n,1), F(i,n,2),--,F(i,n,kn)も同様である。
クライアントは、時間インデックス(i)におけるビュー(j)のピクチャF のうち少なくとも1つ例えばF(i,j,w)をサイド情報としてDpをデコードし、マルチビュー表示部に表示すべきピクチャF(i+1,j,w)を得ることが出来る。ここで、wの取り得る範囲は、1~(k1+・kj+ ・ +kn)である。
[Example DSC2 using distributed source coding]
[Distributed source coding]
FIG. 10 is a diagram illustrating the concept of a coding graph using distributed source coding (DSC2) used in the third embodiment. The stream server inputs the original picture F o (i + 1, j) of the view (j) at the time index (i + 1) as input information, and F of the view (j) at the time index (i) as side information. Frame, F (i, 1,1), F (i, 1,2),-, F (i, 1, k1), F (i, j, 1), F (i, j, 2), -, F (i, j, kj), ..., F (i, n, 1), F (i, n, 2),-, encoding using F (i, n, kn) To create Dp. (j = 1 to n)
Here, F (i, 1,1), F (i, 1,2),-, F (i, 1, k1) represents the view (1) at the time index (i). However, there are one or more pictures showing view (1) at time index (i). In order to distinguish them, the third parameter (k1) is used for the distinction. F (i, j, 1), F (i, j, 2),-, F (i, j, kj),... Representing view (j), and F (i) representing view (n) The same applies to i, n, 1), F (i, n, 2),-, F (i, n, kn).
The client decodes Dp using at least one of the pictures F 1 of the view (j) in the time index (i), for example, F (i, j, w) as side information, and displays the picture F (to be displayed on the multi-view display unit. i + 1, j, w) can be obtained. Here, a possible range of w is 1 to (k1 + · kj + · + kn).
[コーディング・グラフの構築] 
図11は、分散型ソースコーディングを用いた第2の例(DSC2)を用いたコーディング・グラフを示す図である。DSC2ではD(3,1)フレームは、時間インデックスt=3での原ピクチャFo(3,1)を入力情報として、時間インデックスt=2でのピクチャF(2,1,1),F(2,2,1),F(2,1,2)、及び、F(2,2,2)をサイド情報として作成される。実施例3では、ビュー(1)及びビュー(2)のピクチャをサイド情報として使用している。同様に、D(3,2)フレームは、時間インデックスt=3での原ピクチャFo(3,2)を入力情報として、時間インデックスt=2でのピクチャF(2,1,1),F(2,2,1),F(2,1,2)、及び、F(2,2,2)をサイド情報として作成される。なお、図11でD(3,2)フレームは省略されている。
[Build coding graph]
FIG. 11 is a diagram illustrating a coding graph using the second example (DSC2) using distributed source coding. In DSC2, the D (3,1) frame has the original picture F o (3,1) at time index t = 3 as input information and the picture F (2,1,1), F at time index t = 2. (2,2,1), F (2,1,2), and F (2,2,2) are created as side information. In the third embodiment, the pictures of the view (1) and the view (2) are used as side information. Similarly, the D (3,2) frame uses the original picture F o (3,2) at the time index t = 3 as input information and the picture F (2,1,1), at the time index t = 2. F (2, 2, 1), F (2, 1, 2), and F (2, 2, 2) are created as side information. In FIG. 11, the D (3, 2) frame is omitted.
 この場合には、ある時刻、ここでは、時間インデックスt=3において、D(3,1)を構築する際に、時間インデックスt=3での複数のPフレームを作成する必要がない。このことは、ストリームサーバのコーディング・グラフ格納部120での必要なメモリー量をDSC1より節約出来ることを意味する。一方、サイド情報としての時間インデックスt=2でのFフレームにはビュー(2)のピクチャが含まれているので、一般には入力情報Fo(3,1)との関連性が弱くなり、その結果、DSC2のDフレームのサイズが、DSC1より大きくなる傾向がある。分散型ソースコーディングを用いた第2の例(DSC2)を用いたコーディング・グラフにおいて、D(3,1)を作成する場合、サイド情報として図11では、F(2,1,1),F(2,2,1),F(2,1,2)、及び、F(2,2,2)を用いている。これとは別に、F(1,1,1),F(1,2,1)を用いて、D(2,1)(不図示)を求め、これをコーディング・グラフに用いることも出来る。このようにIフレーム、Pフレーム、Dフレームを使用したコーディング・グラフの構成方法には様々のバリエーションがある。 In this case, when constructing D (3,1) at a certain time, here, at time index t = 3, it is not necessary to create a plurality of P frames at time index t = 3. This means that the required amount of memory in the coding graph storage unit 120 of the stream server can be saved from DSC1. On the other hand, since the F frame at the time index t = 2 as the side information includes the picture of the view (2), the relevance to the input information F o (3, 1) is generally weakened. As a result, the size of the D frame of DSC2 tends to be larger than that of DSC1. In the coding graph using the second example (DSC2) using distributed source coding, when D (3,1) is created, in FIG. 11, as side information, F (2,1,1), F (2,2,1), F (2,1,2), and F (2,2,2) are used. Alternatively, D (2,1) (not shown) can be obtained using F (1,1,1) and F (1,2,1), and can be used for the coding graph. As described above, there are various variations in the coding graph configuration method using the I frame, the P frame, and the D frame.
[クライアントでのピクチャ再生]
 クライアントから、時間インデックスt=3の要求が、ビュー(1)である場合には、該当するD(3,1)フレームをユーザへ送信する。
 ここで、ユーザは時間インデックスt=2でのピクチャを見ているので、時間インデックスt=2でのピクチャF(2,1,1),F(2,2,2),F(2,1,3)、及び、F(2,2,4)の内、いずれか一つを、クライアントが有している。クライアントは、D(3,1)フレームを入力情報とし、現在見ているピクチャFをサイド情報として、デコードすることにより、入力情報F(3,1)を再生することが出来る。
[実施例3の効果]
 実施例3で開示するDSC2では、ストリームサーバからクライアントへ送信する情報は、D(3,1)である。時間インデックスt=2でのピクチャF(2,1,1),F(2,2,2),F(2,1,3)、及び、F(2,2,4)の内、いずれか一つを、クライアントが有しているので、これらにより、ユーザは、所望のF(3,j,k)を再現することが出来る。従来技術ではDフレームの代わりにIフレームを使用するが、一般には、D(3,1)のフレームサイズは、IフレームI(3、j)より小さい。従って、DSC2では、ストリームサーバに格納すべきメモリー容量、及び、クライアントへ送信すべき、送信すべきデータ量が少なくなる。
[Picture playback on client]
When the request with the time index t = 3 is the view (1), the corresponding D (3, 1) frame is transmitted to the user.
Here, since the user is viewing the picture at the time index t = 2, the picture F (2,1,1), F (2,2,2), F (2,1) at the time index t = 2. , 3) and F (2, 2, 4), the client has one of them. The client can reproduce the input information F (3,1) by decoding the D (3,1) frame as input information and the currently viewed picture F as side information.
[Effect of Example 3]
In the DSC 2 disclosed in the third embodiment, the information transmitted from the stream server to the client is D (3, 1). One of pictures F (2,1,1), F (2,2,2), F (2,1,3), and F (2,2,4) at time index t = 2 Since the client has one, the user can reproduce the desired F (3, j, k). In the prior art, an I frame is used instead of a D frame, but in general, the frame size of D (3, 1) is smaller than the I frame I (3, j). Therefore, in DSC2, the memory capacity to be stored in the stream server and the data amount to be transmitted to the client are reduced.
 [分散型ソースコーディングを用いた例DSC1+DSC2]
[コーディング・グラフの構築]
図12は、分散型ソースコーディングを用いた第3の例(DSC3)を用いたコーディング・グラフを示す図である。これは、時間インデックスt=3において、DSC1、及び、DSC2を組み合わせた実施例である。
(1)F(2,1,1)、及び、P(3,1,1)を用いて、F(3,1,1)を作成する。
(2)F(2,2,1)は、P(2,2,1)及びF(1,1,1)を使用して再現することが出来る。同様に、F(2,1,2)は、P(2,1,2)及びF(1,2,2)から再現することが出来、さらに、F(2,2,2)は、P(2,2,2)及びF(1,2,2)から再現することが出来る。
(3)原ピクチャFo(3,1)を入力情報とし、F(2,2,1),F(2,1,2)、及び、F(2,2,2)をサイド情報としてエンコードを行ってD(3,1,1)を作成する。これはDSC2を応用している。
(4)F(2,2,1),F(2,1,2)、及び、F(2,2,2)のいずれか一つと、D(3,1,1)とを用いて、デコードを行いF(3,1,2)を得る。
(5)原ピクチャFo(3,1)を入力情報とし、F(3,1,1)及びF(3,1,2)をサイド情報として、エンコードを行いD(3,1,2)を得る。これはDSC1を応用している。
ここで、D(i,j,m)は、時間インデックスt=iにおける、ビュー(j)を作成するためのDSCフレームであり、時間インデックスt=iでのm番目のDフレームを現す。
[Example using distributed source coding DSC1 + DSC2]
[Build coding graph]
FIG. 12 is a diagram showing a coding graph using the third example (DSC3) using distributed source coding. This is an embodiment in which DSC1 and DSC2 are combined at time index t = 3.
(1) F (3,1,1) is created using F (2,1,1) and P (3,1,1).
(2) F (2,2,1) can be reproduced using P (2,2,1) and F (1,1,1). Similarly, F (2,1,2) can be reproduced from P (2,1,2) and F (1,2,2), and F (2,2,2) It can be reproduced from (2,2,2) and F (1,2,2).
(3) Encode the original picture F o (3,1) as input information and F (2,2,1), F (2,1,2) and F (2,2,2) as side information To create D (3,1,1). This applies DSC2.
(4) Using any one of F (2,2,1), F (2,1,2) and F (2,2,2) and D (3,1,1), Decoding is performed to obtain F (3, 1, 2).
(5) The original picture F o (3,1) is used as input information, and F (3,1,1) and F (3,1,2) are used as side information for encoding to perform D (3,1,2). Get. This applies DSC1.
Here, D (i, j, m) is a DSC frame for creating view (j) at time index t = i, and represents the mth D frame at time index t = i.
 [クライアントでのピクチャ再生]
(1)ユーザがF(2,1,1)を見ていた場合。
 ストリームサーバは、D(3,1,2)、及び、P(3,1,1)をクライアントへ送信する。
 クライアントは、既に有しているF(2,1,1)を基に、P(3,1,1)を用いてF(3,1,1)を作成する。さらに、D(3,1,2)を入力情報として、F(3,1,1)をサイド情報としてデコードして、マルチビュー表示部に表示すべきピクチャFN(3,1,1)を得ることが出来る。ピクチャFNについては図8を参照のこと。
(2)ユーザがF(2,2,1),F(2,1,2),F(2,2,2)のいずれかを見ていた場合。
ストリームサーバは、D(3,1,2)、及び、D(3,1,1)をクライアントに送信する。
 クライアントは、D(3,1,1)を入力情報、及び、時間インデックスt=2で見ていたピクチャFをサイド情報として、デコードを行い、F(3,1,2)を得る。次に、D(3,1,2)を入力情報、F(3,1,2)をサイド情報として、デコードを行い、マルチビュー表示部に表示すべきピクチャFN(3,1,2)を得ることが出来る。ピクチャFNについては図8を参照のこと。
[Picture playback on client]
(1) When the user is watching F (2,1,1).
The stream server transmits D (3, 1, 2) and P (3, 1, 1) to the client.
The client creates F (3,1,1) using P (3,1,1) based on F (2,1,1) already possessed. Furthermore, D (3,1,2) is decoded as input information and F (3,1,1) is decoded as side information to obtain a picture FN (3,1,1) to be displayed on the multi-view display unit. I can do it. See FIG. 8 for picture FN.
(2) When the user is looking at one of F (2, 2, 1), F (2, 1, 2), and F (2, 2, 2).
The stream server transmits D (3, 1, 2) and D (3, 1, 1) to the client.
The client performs decoding using D (3, 1, 1) as input information and the picture F viewed at time index t = 2 as side information to obtain F (3, 1, 2). Next, decoding is performed using D (3,1,2) as input information and F (3,1,2) as side information, and a picture FN (3,1,2) to be displayed on the multi-view display unit is displayed. Can be obtained. See FIG. 8 for picture FN.
[実施例4の効果]
 実施例4では、DSC3(DSC1とDSC2の組み合わせ)の例を示している。詳細は後述するが、ストリームサーバに格納するデータ量では、
DSC1>(DSC1+DSC2)>DSC2
ストリームサーバからクライアントへ送信する場合の帯域幅では、
DSC1<(DSC1+DSC2)<DSC2
となる。
図12のパス(a)とパス(b)とを比較すると、
 パス(a)の場合には、ストリームサーバは、D(3,1,2)、及び、P(3,1,1)をクライアントへ送信する。
 パス(b)の場合には、ストリームサーバは、D(3,1,2)、及び、D(3,1,1)をクライアントに送信する。
[Effect of Example 4]
In the fourth embodiment, an example of DSC3 (a combination of DSC1 and DSC2) is shown. Although details will be described later, in the amount of data stored in the stream server,
DSC1> (DSC1 + DSC2)> DSC2
In the bandwidth when sending from the stream server to the client,
DSC1 <(DSC1 + DSC2) <DSC2
It becomes.
Comparing the path (a) and the path (b) in FIG.
In the case of path (a), the stream server transmits D (3, 1, 2) and P (3, 1, 1) to the client.
In the case of path (b), the stream server transmits D (3, 1, 2) and D (3, 1, 1) to the client.
 従って、経験的に、あるいは、確率的にパス(a)を使用すること頻度が高いことが分かっている場合には、(DSC1+DSC2)の構成で、コーディング・グラフを構築すると、トリームサーバに格納するデータ量を少なくし、かつ、実質的なストリームサーバからクライアントへ送信する場合の帯域幅も少なくすることが出来る。
 一般に、送信されるフレームのサイズは、PフレームよりDフレームの方が大きい。(a)のパスより(b)のパスを経由する確率が高いことが予め判っている場合には、実施例4で示すコーディング・グラフの構成にすると、送信するデータ量が少なくなる。
Therefore, when it is known that the frequency of using the path (a) is high empirically or probabilistically, when the coding graph is constructed with the configuration of (DSC1 + DSC2), it is stored in the stream server. The amount of data can be reduced, and the bandwidth for transmission from the substantial stream server to the client can also be reduced.
In general, the size of the transmitted frame is larger in the D frame than in the P frame. If it is known in advance that the probability of passing through the path (b) is higher than that of the path (a), the configuration of the coding graph shown in the fourth embodiment reduces the amount of data to be transmitted.
本願発明の効果
(1)DCS1とDSC3(DCS1+DSC2)とを比較した場合
 ストリームサーバでの必要とするデータの格納容量は、図9(DSC1)と図12(DSC3)とを比較すると、DSC3ではPフレームの数が少ない、一方DSC1では複数のPフレームを格納する必要がある。よって、一般にはDSC3の方が有利であると言える。
 ストリームサーバからクライアントへ送信するデータ量は、DSC1では、PフレームとDフレームである。一方、DSC3では、Pフレーム及びDフレーム、または、2つのDフレームである。これにより、一般にはDSC1の方が有利であると言える。
(2)DCS2とDSC3(DCS1+DSC2)とを比較した場合
 ストリームサーバでの必要とするデータの格納容量は、図11(DSC2)と図12(DSC3)とを比較すると、DSC3にはPフレーム、及び、2つのDフレームが含まれている、一方、DSC2には一つのDフレームが含まれている。よって、一般にはDSC2の方が有利であると言える。
 ストリームサーバからクライアントへ送信するデータ量は、DSC2では、1つのDフレームである。一方、DSC3では、Pフレーム及び第2のDフレーム(図12のパス(a))、または、第1及び第2のDフレーム(図12のパス(b))である。しかしながら、DSC3の第2のDフレームは、入力情報、及び、サイド情報として同じピクチャを用いているので、サイズを非常に小さく出来る。DSC2のDフレームより、DSC3のPフレーム及び第2のDフレームが小さい場合であって、かつ、DSC3のPフレーム及び第2のDフレームのパス、すなわち図12に示すパス(a)が、パス(b)より選択される確率が十分高い場合には、DSC2よりDSC3の方が有利である。
Advantages of the present invention (1) When DCS1 and DSC3 (DCS1 + DSC2) are compared The storage capacity of the data required in the stream server is P3 in DSC3 when comparing FIG. 9 (DSC1) and FIG. The number of frames is small, while DSC 1 needs to store a plurality of P frames. Therefore, it can be said that DSC3 is generally more advantageous.
The amount of data transmitted from the stream server to the client is P frame and D frame in DSC1. On the other hand, in DSC3, there are a P frame and a D frame, or two D frames. Thus, it can be said that DSC1 is generally more advantageous.
(2) When DCS2 and DSC3 (DCS1 + DSC2) are compared The storage capacity of data required in the stream server is compared with FIG. 11 (DSC2) and FIG. 12 (DSC3). Two D frames are included, while DSC 2 includes one D frame. Therefore, it can be said that DSC2 is generally more advantageous.
The amount of data transmitted from the stream server to the client is one D frame in DSC2. On the other hand, in DSC3, the P frame and the second D frame (path (a) in FIG. 12), or the first and second D frames (path (b) in FIG. 12). However, since the second D frame of DSC 3 uses the same picture as input information and side information, the size can be very small. When the P frame and the second D frame of DSC3 are smaller than the D frame of DSC2, and the path of the P frame and the second D frame of DSC3, that is, the path (a) shown in FIG. When the probability of selection from (b) is sufficiently high, DSC3 is more advantageous than DSC2.
 図12には、Iフレームを用いた場合、本願明細書で開示するDCS1、DSC2、および、DSC3(DSC1+DSC2)の3つの分散型ソースコーディング技術を用いた場合に予想される送信データ量とメモリー格納量とのトレードオフが示されている。
 本願明細書で開示するDSC1は、この中で送信回線において最小の送信データ量で送信できることが分かる。DSC1は帯域幅に制限のある送信回線を介して送信する場合に有効である。
 また、DSC2はIフレームのみのコーディング・グラフよりも、少ない送信データ量、及び、少ないメモリー格納量で対応できることを示している。DSC3、すなわちDSC1+DSC2との組み合わせにより、通信回線の帯域幅、及び、ストリームサーバでのメモリー格納量のトレードオフを図ることが出来る。
 本実施例では、メモリー格納量に関して、DSCを含むコーディング・グラフでは、Iフレームのみのコーディング・グラフよりも28%の削減が、さらに、Iフレーム及びPフレームのコーディング・グラフよりも20%の削減が実証された。
FIG. 12 shows the amount of transmission data and memory storage expected when three distributed source coding techniques DCS1, DSC2, and DSC3 (DSC1 + DSC2) disclosed in this specification are used when an I frame is used. A trade-off with quantity is shown.
It can be seen that the DSC 1 disclosed in the specification of the present application can transmit with the minimum transmission data amount in the transmission line. DSC1 is effective when transmitting via a transmission line with limited bandwidth.
Further, DSC2 shows that it can cope with a smaller transmission data amount and a smaller memory storage amount than a coding graph of only I frames. By combining DSC3, that is, DSC1 + DSC2, it is possible to trade off the bandwidth of the communication line and the memory storage amount in the stream server.
In this example, in terms of memory storage, the coding graph including DSC is 28% less than the coding graph for only I frames, and 20% more than the coding graph for I frames and P frames. Has been demonstrated.
110:ストリームサーバ
112:マルチビューソース格納部
116:エンコード部
118:コーディング・グラフ作成部
120:コーディング・グラフ格納部
122:ビューストリーム送信コントロール部
124:受信部
126:送信部
130:クライアント
132:ユーザ入力部
134:送信部
136:受信部
138:デコード部
140:マルチビュー表示部
300:メインメモリー306
302:プロセッサー
304:コミュニケーションバス
308:2次メモリー
310:ハードディスク
312:リムーバブルストレージドライブ
316:キーボード
318:マウス
320:ディスプレー
322:ディスプレーアダプター
110: Stream server 112: Multi-view source storage unit 116: Encoding unit 118: Coding graph creation unit 120: Coding graph storage unit 122: View stream transmission control unit 124: Reception unit 126: Transmission unit 130: Client 132: User Input unit 134: transmission unit 136: reception unit 138: decoding unit 140: multi-view display unit 300: main memory 306
302: Processor 304: Communication bus 308: Secondary memory 310: Hard disk 312: Removable storage drive 316: Keyboard 318: Mouse 320: Display 322: Display adapter

Claims (11)

  1.  コンピュータを使用したマルチビュー・ストリームデータ制御システムであって、
    (a)マルチビューソース格納部から所定の時間における所定の原ピクチャを読取り、エンコードを行い、Iフレーム、Pフレーム、及び、Dフレームを作成するエンコード部であって、
    前記Dフレームは、第1の時刻の第1のビューに対応する原ピクチャを入力情報とし、第1の時刻のフレームを利用して作成された、第1の時刻における、第1のビューに対応する、少なくとも1つの第1のピクチャを、サイド情報として、分散型ソースコーディングを行って作成される第1のDフレームを含み、
    (b)Iフレーム、Pフレーム、及び、Dフレームを時系列に沿った一連のパスで結び、コーディング・グラフを作成するコーディング・グラフ作成部、及び、
    (c)前記作成されたコーディング・グラフをコーディング・グラフ格納部に格納する格納部、を含むデータ制御システム。
    A multi-view stream data control system using a computer,
    (A) An encoding unit that reads a predetermined original picture at a predetermined time from a multi-view source storage unit, performs encoding, and creates an I frame, a P frame, and a D frame,
    The D frame corresponds to the first view at the first time created using the original picture corresponding to the first view at the first time as the input information and the frame at the first time. A first D frame created by performing distributed source coding with at least one first picture as side information,
    (B) a coding graph creation unit that creates a coding graph by connecting the I frame, the P frame, and the D frame by a series of time-sequential paths; and
    (C) A data control system including a storage unit that stores the generated coding graph in a coding graph storage unit.
  2. 前記Dフレームは、第1の時刻の第1のビューに対応する原ピクチャを入力情報とし、前記第1の時刻より1つ前の時刻におけるフレームを利用して作成された、第1の時刻より1つ前の時刻における、少なくとも1つのピクチャをサイド情報として、分散型ソースコーディングを行って作成される第2のDフレームを含む、請求項1の制御システム。 From the first time, the D frame is created by using a frame at a time immediately before the first time, using the original picture corresponding to the first view at the first time as input information. The control system according to claim 1, further comprising a second D frame created by performing distributed source coding with at least one picture at the previous time as side information.
  3.  前記Dフレームは、第1の時刻の第1のビューに対応する原ピクチャを入力情報とし、前記第1のDフレーム、及び、前記第2のDフレームのうち、少なくとも1つをサイド情報として、分散型ソースコーディングを行って作成される第3のDフレームを含む、請求項2の制御システム。 The D frame has, as input information, an original picture corresponding to a first view at a first time, and at least one of the first D frame and the second D frame as side information. 3. The control system of claim 2, comprising a third D frame created by performing distributed source coding.
  4.  前記コーディング・グラフ作成部は、コーディング・グラフ格納部での所定のメモリー容量制限下で、送信するマルチビューストリーム量の最小化を図りつつ、コーディング・グラフを作成する請求項1に記載の制御システム。 2. The control system according to claim 1, wherein the coding graph creation unit creates a coding graph while minimizing the amount of multi-view streams to be transmitted under a predetermined memory capacity limit in the coding graph storage unit. .
  5. さらに、クライアントからの要求に従って、前記コーディング・グラフに格納されたデータを読み取り、クライアントへ必要なストリームを送信するマルチビューストリーム送信部を有する請求項1に記載の制御システム。 The control system according to claim 1, further comprising a multi-view stream transmission unit that reads data stored in the coding graph in accordance with a request from a client and transmits a necessary stream to the client.
  6.  コンピュータを使用したマルチビュー・ストリームデータ制御システムにおけるマルチビュー・ストリームデータ作成方法、
    (a)エンコード部が、マルチビューソース格納部から、所定の時間における所定の原ピクチャを読取り、エンコードを行い、Iフレーム、Pフレーム、及び、Dフレームを作成するステップであって、
    さらに、第1の時刻の第1のビューに対応する原ピクチャを入力情報とし、第1の時刻のフレームを利用して作成された、第1の時刻における、第1のビューに対応する、少なくとも1つの第1のピクチャを、サイド情報として、分散型ソースコーディングを行って第1のDフレームを作成するステップを含み、
    (b)コーディング・グラフ作成部が、Iフレーム、Pフレーム、及び、Dフレームを時系列に沿った一連のパスで結び、コーディング・グラフを作成するコーディング・グラフ作成するステップ、及び、
    (c)コーディング・グラフ作成部が、前記作成されたコーディング・グラフをコーディング・グラフ格納部に格納するステップ、
    を含む方法。
    Multi-view stream data creation method in a multi-view stream data control system using a computer,
    (A) The encoding unit reads a predetermined original picture at a predetermined time from the multi-view source storage unit, performs encoding, and creates an I frame, a P frame, and a D frame,
    Furthermore, the original picture corresponding to the first view at the first time is used as input information, and is created using the frame at the first time, and corresponds to the first view at the first time, at least Performing a distributed source coding with one first picture as side information to create a first D frame,
    (B) a step of creating a coding graph in which a coding graph creation unit creates a coding graph by connecting the I frame, the P frame, and the D frame by a series of time-sequential paths; and
    (C) a coding graph creation unit storing the created coding graph in a coding graph storage unit;
    Including methods.
  7. さらに、コーディング・グラフ作成部が、第1の時刻の第1のビューに対応する原ピクチャを入力情報とし、前記第1の時刻より1つ前の時刻におけるフレームを利用して作成された、第1の時刻より1つ前の時刻における、少なくとも1つのピクチャをサイド情報として、分散型ソースコーディングを行って第2のDフレーム作成するステップを含む、請求項6に記載の方法。 Further, the coding graph creation unit uses the original picture corresponding to the first view at the first time as input information and is created using the frame at the time one time before the first time. The method according to claim 6, further comprising a step of performing distributed source coding to generate a second D frame using at least one picture at a time prior to one time as side information.
  8.  さらに、コーディング・グラフ作成部が、第1の時刻の第1のビューに対応する原ピクチャを入力情報とし、前記第1のDフレーム、及び、前記第2のDフレームのうち、少なくとも1つをサイド情報として、分散型ソースコーディングを行って作成される第3のDフレームを作成するステップを含む、請求項7の方法。 Further, the coding graph creation unit uses the original picture corresponding to the first view at the first time as input information, and selects at least one of the first D frame and the second D frame. 8. The method of claim 7, comprising the step of creating a third D-frame created by performing distributed source coding as side information.
  9.  コンピュータで実行されるマルチビュー・ストリームデータを作成する以下のステップに対応するプログラムコードを格納するコンピュータ可読な媒体であって、
    (a)エンコード部が、マルチビューソース格納部から、所定の時間における所定の原ピクチャを読取り、エンコードを行い、Iフレーム、Pフレーム、及び、Dフレームを作成するステップであって、
    さらに、第1の時刻の第1のビューに対応する原ピクチャを入力情報とし、第1の時刻のフレームを利用して作成された、第1の時刻における、第1のビューに対応する、少なくとも1つの第1のピクチャを、サイド情報として、分散型ソースコーディングを行って第1のDフレームを作成するステップを含み、
    (b)コーディング・グラフ作成部が、Iフレーム、Pフレーム、及び、Dフレームを時系列に沿った一連のパスで結び、コーディング・グラフを作成するコーディング・グラフ作成するステップ、及び、
    (c)コーディング・グラフ作成部が、前記作成されたコーディング・グラフをコーディング・グラフ格納部に格納するステップ。
    A computer-readable medium storing program code corresponding to the following steps for creating multi-view stream data to be executed on a computer,
    (A) The encoding unit reads a predetermined original picture at a predetermined time from the multi-view source storage unit, performs encoding, and creates an I frame, a P frame, and a D frame,
    Furthermore, the original picture corresponding to the first view at the first time is used as input information, and is created using the frame at the first time, and corresponds to the first view at the first time, at least Performing a distributed source coding with one first picture as side information to create a first D frame,
    (B) a step of creating a coding graph in which a coding graph creation unit creates a coding graph by connecting the I frame, the P frame, and the D frame by a series of time-sequential paths; and
    (C) A step of the coding graph creation unit storing the created coding graph in the coding graph storage unit.
  10. さらに、コーディング・グラフ作成部が、第1の時刻の第1のビューに対応する原ピクチャを入力情報とし、前記第1の時刻より1つ前の時刻におけるフレームを利用して作成された、第1の時刻より1つ前の時刻における、少なくとも1つのピクチャをサイド情報として、分散型ソースコーディングを行って第2のDフレーム作成するステップを含む、請求項9に記載の媒体。 Further, the coding graph creation unit uses the original picture corresponding to the first view at the first time as input information and is created using the frame at the time one time before the first time. The medium according to claim 9, further comprising a step of creating a second D frame by performing distributed source coding using at least one picture at a time before one time as side information.
  11.  さらに、コーディング・グラフ作成部が、第1の時刻の第1のビューに対応する原ピクチャを入力情報とし、前記第1のDフレーム、及び、前記第2のDフレームのうち、少なくとも1つをサイド情報として、分散型ソースコーディングを行って作成される第3のDフレームを作成するステップを含む、請求項10に記載の媒体。 Further, the coding graph creation unit uses the original picture corresponding to the first view at the first time as input information, and selects at least one of the first D frame and the second D frame. The medium according to claim 10, comprising a step of creating a third D frame created by performing distributed source coding as side information.
PCT/JP2009/005057 2009-09-30 2009-09-30 Multi-view stream data control system/method WO2011039814A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2009/005057 WO2011039814A1 (en) 2009-09-30 2009-09-30 Multi-view stream data control system/method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2009/005057 WO2011039814A1 (en) 2009-09-30 2009-09-30 Multi-view stream data control system/method

Publications (1)

Publication Number Publication Date
WO2011039814A1 true WO2011039814A1 (en) 2011-04-07

Family

ID=43825671

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2009/005057 WO2011039814A1 (en) 2009-09-30 2009-09-30 Multi-view stream data control system/method

Country Status (1)

Country Link
WO (1) WO2011039814A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022143212A1 (en) * 2020-12-30 2022-07-07 光阵三维科技有限公司 System and method for extracting specific stream from multiple streams transmitted in combination for playback

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010093807A (en) * 2008-10-06 2010-04-22 Hewlett-Packard Development Co Lp System and method for managing multiview streaming video data composed of a plurality of frames

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010093807A (en) * 2008-10-06 2010-04-22 Hewlett-Packard Development Co Lp System and method for managing multiview streaming video data composed of a plurality of frames

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"Proc. of 27th Conf. Picture Coding Symp.", 6 May 2009, article CHEUNG N-M. ET AL.: "Distributed Source Coding Techniques for Interactive Multiview Video Streaming" *
CHEUNG, G. ET AL.: "Generation of Redundant Frame Structure for Interactive Multiview Streaming", PROC. OF THE 17TH INT. PACKET VIDEO WORKSHOP, May 2009 (2009-05-01) *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022143212A1 (en) * 2020-12-30 2022-07-07 光阵三维科技有限公司 System and method for extracting specific stream from multiple streams transmitted in combination for playback

Similar Documents

Publication Publication Date Title
US11653065B2 (en) Content based stream splitting of video data
JP4346548B2 (en) Image data distribution system, image data transmitting apparatus and image data receiving apparatus
US20110157309A1 (en) Hierarchical video compression supporting selective delivery of two-dimensional and three-dimensional video content
EP2735166B1 (en) Transmission of reconstruction data in a tiered signal quality hierarchy
US20210227236A1 (en) Scalability of multi-directional video streaming
JP2010093807A (en) System and method for managing multiview streaming video data composed of a plurality of frames
WO2009155827A1 (en) Method, apparatus and system for stereo video encoding and decoding
JP3843101B2 (en) Hierarchical coded data distribution apparatus and method
JP7177034B2 (en) Method, apparatus and stream for formatting immersive video for legacy and immersive rendering devices
US10666903B1 (en) Combining encoded video streams
CN111869223A (en) Viewing angle metrics for immersive media
KR100746005B1 (en) Apparatus and method for managing multipurpose video streaming
KR20050056070A (en) Apparatus and method for processing of 3d video using mpeg-4 object descriptor information
Yang et al. Real-time 3d video compression for tele-immersive environments
JP2014116922A (en) Video playback device and video distribution device
JP2014176017A (en) Image reproduction apparatus, image distribution apparatus, image reproduction method, and image distribution method
US20130322544A1 (en) Apparatus and method for generating a disparity map in a receiving device
WO2011039814A1 (en) Multi-view stream data control system/method
Cheung et al. Coding structure optimization for interactive multiview streaming in virtual world observation
US20230300346A1 (en) Supporting view direction based random access of bitsteam
JP2003284068A (en) Mpeg data receiver, system and method for transmitting and receiving mpeg data
JP5940999B2 (en) VIDEO REPRODUCTION DEVICE, VIDEO DISTRIBUTION DEVICE, VIDEO REPRODUCTION METHOD, VIDEO DISTRIBUTION METHOD, AND PROGRAM
JP7463614B2 (en) Dual-stream dynamic GOP access based on viewport change
KR20200076529A (en) Indexing of tiles for region of interest in virtual reality video streaming
Lee et al. Integrated approach of streaming 3d multimedia contents in real-time for mobile devices

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: 09850005

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

NENP Non-entry into the national phase

Ref country code: JP

122 Ep: pct application non-entry in european phase

Ref document number: 09850005

Country of ref document: EP

Kind code of ref document: A1