JP4499204B2 - Image signal multiplexing apparatus and method, and transmission medium - Google Patents

Image signal multiplexing apparatus and method, and transmission medium Download PDF

Info

Publication number
JP4499204B2
JP4499204B2 JP20212498A JP20212498A JP4499204B2 JP 4499204 B2 JP4499204 B2 JP 4499204B2 JP 20212498 A JP20212498 A JP 20212498A JP 20212498 A JP20212498 A JP 20212498A JP 4499204 B2 JP4499204 B2 JP 4499204B2
Authority
JP
Japan
Prior art keywords
circuit
image
descriptor
signal
bit stream
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
JP20212498A
Other languages
Japanese (ja)
Other versions
JPH1185966A (en
Inventor
輝彦 鈴木
陽一 矢ヶ崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP20212498A priority Critical patent/JP4499204B2/en
Publication of JPH1185966A publication Critical patent/JPH1185966A/en
Application granted granted Critical
Publication of JP4499204B2 publication Critical patent/JP4499204B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、画像信号多重化装置および方法並びに伝送媒体に関し、特に、光磁気ディスクや磁気テープなどの記録媒体に記録したり、その記録媒体から再生され、ディスプレイに表示されるデータや、テレビ会議システム、テレビ電話システム、放送用機器、マルチメディアデータベース検索システムなどのように、伝送路を介して送信側から受信側に伝送し、受信側において表示されたり、あるいは編集、記録されるデータに適用して好適な画像信号多重化装置および方法並びに伝送媒体に関する。
【0002】
【従来の技術】
例えば、テレビ会議システム、テレビ電話システムなどのように、動画像信号を遠隔地に伝送するシステムにおいては、伝送路を効率良く利用するため、映像信号のライン相関やフレーム間相関を利用して、画像信号を圧縮符号化すようになされている。
【0003】
また、近年においてはコンピュータの処理能力が向上したことから、コンピュータを用いた動画像情報端末も普及しつつある。こうしたシステムでは、ネットワークなどの伝送路を通じて情報を遠隔地に伝送する。この場合も同様に、伝送路を効率よく利用するために、伝送する画像信号、音響信号、データなどの信号が圧縮符号化して伝送される。
【0004】
端末側では、所定の方法に基づき伝送された圧縮信号を復号し、元の画像信号、音響信号、データなどを復元し、端末が備えるディスプレイやスピーカなどに出力する。従来の技術では、伝送されてきた画像信号などをそのまま表示端末に出力するのみであったが、コンピュータを用いた情報端末においては、そうした複数の画像信号、音響信号およびデータを変換処理した後、2次元または3次元空間に表示することが可能になってきている。このような処理は、送信側において、2次元および3次元空間の情報を所定の方法で記述し、端末がその記述に従って、例えば、画像信号などに対して所定の変換処理行い、表示することにより実現することができる。
【0005】
こうした空間情報の記述の方式として代表的なものに、例えば、VRML(Virtual Reality Modeling Language)がある。これは、ISO-IEC/JTC1/SC2 4においても標準化され、最新版のVRML2.0は、IS14772に記載されている。VRMLは、3次元空間を記述する言語であり、3次元空間の属性や形状などを記述するためのデータの集まりが定義されている。このデータの集まりをノードと呼ぶ。3次元空間を記述するためには、予め規定されているこれらのノードをどのように組み合わせるのかを記述することになる。ノードには、色やテクスチャなどの属性を示すものや、ポリゴンの形状を示すものなどが定義されている。
【0006】
コンピュータによる情報端末では、こうしたVRMLなどの記述に従い、CG(Computer Graphics)により、ポリゴンなどを用いて所定のオブジェクトを生成する。VRMLでは、また、こうして生成したポリゴンから構成される3次元オブジェクトに対してテクスチャを貼り付けることが可能である。貼りつけるテクスチャが静止画像の場合にはTexture、動画像の場合にはMovieTextureと呼ばれるノードが定義されており、このノードに貼り付けるテクスチャに関する情報(ファイル名、表示開始時間、表示終了時間など)が記載されている。
【0007】
ここで、図14を用いて、テクスチャの貼り付け(以下、適宜テクスチャマッピングという)について説明する。まず、外部より、貼り付けるテクスチャ(画像信号)とその透過度を表す信号(key信号)、および3次元オブジェクト情報が入力され、メモリ群151の所定の記憶領域に記憶される。テクスチャはテクスチャメモリ152に、透過度を表す信号はグレースケールメモリ153に、また3次元オブジェクト情報は3次元情報メモリ154に記憶される。ここで、3次元オブジェクト情報とはポリゴンの形成情報や照明情報などである。
【0008】
レンダリング回路155は、メモリ群151に記録されている、所定の3次元オブジェクト情報に基づき、3次元オブジェクトをポリゴンにより形成する。レンダリング回路155は、3次元オブジェクト情報に基づきメモリ152およびメモリ153より、所定のテクスチャおよび透過度を示す信号を読み込み、生成した3次元オブジェクトに貼り付ける。透過度を表す信号は、対応する位置のテクスチャの透過度を示しており、対応する位置のテクスチャが貼り付けられた位置のオブジェクトの透明度を示すことになる。レンダリング回路155は、テクスチャを貼り付けたオブジェクトの信号を2次元変換回路156に供給する。
【0009】
2次元変換回路156では、外部より供給される視点情報に基づき、3次元オブジェクトを2次元平面に写像して得られる2次元画像信号に変換する。2次元画像信号に変換された3次元オブジェクトは、さらに外部に出力される。なお、テクスチャは静止画でも良いし、動画でもよい。動画の場合、貼り付ける動画の画像フレームが変更される毎に、上記操作が行われる。
【0010】
VRMLにおいては、貼り付けるテクスチャのフォーマットとして、静止画の高能率符号化方式の1つであるJPEG(Joint Photographic Experts Group)や動画像符号化方式の1つであるMPEG(Moving Picture Experts Group)といった圧縮された画像フォーマットもサポートされている。この場合、所定の圧縮方式に基づいた復号処理によりテクスチャ(画像)が復号され、復画像信号がメモリ群151におけるメモリ152に記録されることになる。
【0011】
レンダリング回路155では、画像のフォーマット、動画であるか静止画であるか、また、その内容に拘らず、メモリ152に記録されているテクスチャを貼り付ける。ある1つのポリゴンに貼り付けることが可能なのは、常にメモリに記憶されている1つのテクスチャであり、1つのポリゴンに複数のテクスチャを貼ることはできない。
【0012】
ところで、伝送路を経由して、こうした3次元情報やテクスチャ情報を伝送する場合、伝送路を効率よく利用するためには、情報を圧縮して送る必要がある。特に、動画像を3次元オブジェクトに貼り付ける場合などは、動画像を圧縮して伝送することが必須である。
【0013】
例えば、上述したMPEG方式は、ISO-IEC/JTC1/SC2/WG11にて議論され、標準案として提案されたものであり、動き補償予測符号化とDCT(Discrete Cosine Transform)符号化を組み合わせたハイブリッド方式が採用されている。MPEGでは様々なアプリケーションや機能に対応するために、いくつかのプロファイルおよびレベルが定義されている。最も基本となるのが、メインプロファイル メインレベル(MP@ML)である。
【0014】
図15を参照して、MPEG方式の MP@ML のエンコーダの構成例について説明する。入力画像信号は、まずフレームメモリ群1に入力され、所定の順番で記憶される。符号化されるべき画像データは、マクロブロック単位で動きベクトル検出回路(ME)2に入力される。動きベクトル検出回路2は、予め設定されている所定のシーケンスに従って、各フレームの画像データを、Iピクチャ、Pピクチャ、またはBピクチャとして処理する。シーケンシャルに入力される各フレームの画像を、I,P,Bのいずれのピクチャとして処理するかは、予め定められている(例えば、I,B,P,B,P,・・・B,Pの順番で処理される)。
【0015】
動きベクトル検出回路2は、予め定められた所定の参照フレームを参照して動き補償を行い、その動きベクトルを検出する。動き補償(フレーム間予測)には前方予測、後方予測、両方向予測の3種類のモードがある。Pピクチャの予測モードは前方予測のみであり、Bピクチャの予測モードは前方予測、後方予測、両方向予測の3種類である。動きベクトル検出回路2は予測誤差を最小にする予測モードを選択し、その際の予測ベクトルを発生する。
【0016】
この際、予測誤差は、例えば、符号化するマクロブロックの分散と比較され、マクロブロックの分散の方が小さい場合、そのマクロブロックでは予測は行わず、フレーム内符号化が行われる。この場合、予測モードは、画像内符号化(イントラ)となる。動きベクトルおよび上記予測モードは、可変長符号化回路6および動き補償回路(MC)12に入力される。
【0017】
動き補償回路12では、入力された動きベクトルに基づいて予測画像データを生成し、その予測画像データが演算回路3に入力される。演算回路3では、符号化するマクロブロックの値と予測画像の値の差分データを演算し、 DCT 回路4に出力する。イントラマクロブロックの場合、演算回路3は符号化するマクロブロックの信号を、そのまま DCT 回路4に出力する。
【0018】
DCT 回路4では、入力された信号が、 DCT(離散コサイン変換)処理され、DCT 係数に変換される。このDCT係数は、量子化回路(Q)5に入力され、送信バッファ7のデータ蓄積量(バッファ蓄積量)に対応した量子化ステップで量子化された後、量子化データが可変長符号化回路(VLC)6に入力される。
【0019】
可変長符号化回路6は、量子化回路5より供給される量子化ステップ(スケール)に対応して、量子化回路5より供給される量子化データ(例えば、Iピクチャのデータ)を、例えばハフマン符号などの可変長符号に変換し、送信バッファ7に出力する。可変長符号化回路6にはまた、量子化回路5より量子化ステップ(スケール)、動きベクトル検出回路2より予測モード(画像内予測、前方予測、後方予測、または両方向予測のいずれが設定されたかを示すモード)、および動きベクトル、が入力されており、これらも可変長符号化される。
【0020】
送信バッファ7は、入力された符号化データを一時蓄積し、蓄積量に対応するデータを量子化回路5に出力する。送信バッファ7は、そのデータ残量が許容上限値まで増量すると、量子化制御信号によって量子化回路5の量子化スケールを大きくすることにより、量子化データのデータ量を低下させる。また、これとは逆に、データ残量が許容下限値まで減少すると、送信バッファ7は、量子化制御信号によって量子化回路5の量子化スケールを小さくすることにより、量子化データのデータ量を増大させる。このようにして、送信バッファ7のオーバフローまたはアンダフローが防止される。そして、送信バッファ7に蓄積された符号化データは、所定のタイミングで読み出され、ビットストリーム(bitstream)として伝送路に出力される。
【0021】
一方、量子化回路5より出力された量子化データは、逆量子化回路(IQ)8に入力され、量子化回路5より供給される量子化ステップに対応して逆量子化される。逆量子化回路8の出力データ(逆量子化されることにより得られたDCT係数)は、IDCT(逆DCT)回路9に入力される。IDCT回路9は、入力されたDCT係数を逆DCT処理し、得られた出力データ(差分データ)が演算回路10に供給される。演算回路10は、差分データと動き補償回路12からの予測画像データを加算し、その出力画像データがフレームメモリ(FM)群11に記憶される。なお、イントラマクロブロックの場合には、演算回路10は、IDCT回路9からの出力データをそのままフレームメモリ群11に供給する。
【0022】
次に、図16を用いて、MPEG の MP@ML のデコーダの構成例を説明する。伝送路を介して伝送されてきた符号化されている画像データ(ビットストリーム)は、図示せぬ受信回路で受信されたり、再生装置で再生され、受信バッファ21に一時記憶された後、符号化データとして可変長復号回路(IVLC)22に供給される。可変長復号回路22は、受信バッファ21より供給された符号化データを可変長復号し、動きベクトルと予測モードを動き補償回路27に、また、量子化ステップを逆量子化回路(IQ)23に、それぞれ出力するとともに、復号された量子化データを逆量子化回路23に出力する。
【0023】
逆量子化回路23は、可変長復号回路22より供給された量子化データを、同じく可変長復号回路22より供給された量子化ステップに従って逆量子化し、出力データ(逆量子化されることにより得られたDCT係数)をIDCT回路24に出力する。逆量子化回路23より出力された出力データ(DCT係数)は、IDCT回路24で逆DCT処理され、出力データ(差分データ)が演算回路25に供給される。
【0024】
IDCT回路24より出力された出力データが、Iピクチャのデータである場合、その出力データが画像データとして演算回路25より出力され、演算回路25に後に入力される画像データ(PまたはBピクチャのデータ)の予測画像データ生成のために、フレームメモリ群26に供給されて、記憶される。また、この画像データは、そのまま、再生画像として外部に出力される。また、IDCT回路24より出力されたデータがPまたはBピクチャの場合、動き補償回路27は可変長復号回路22より供給される、動きベクトルおよび予測モードに従って、フレームメモリ群26に記憶されている画像データから予測画像データを生成し、演算回路25に出力する。演算回路25では IDCT 回路24より入力される出力データ(差分データ)と動き補償回路27より供給される予測画像データを加算し、出力画像データとする。またPピクチャの場合、演算回路25の出力データはまた、フレームメモリ群26に予測画像データとして記憶され、次に復号する画像信号の参照画像とされる。
【0025】
MPEG では MP@ML の他に、様々なプロファイルおよびレベルが定義され、また各種ツールが用意されている。スケーラビリティも、こうしたツールの1つである。また、 MPEGでは、異なる画像サイズやフレームレートに対応する、スケーラビリティを実現するスケーラブル符号化方式が導入されている。例えば、空間スケーラビリティの場合、下位レイヤのビットストリームのみを復号する場合、画像サイズの小さい画像信号を復号し、下位レイヤおよび上位レイヤのビットストリームを復号する場合、画像サイズの大きい画像信号を復号する。
【0026】
図17を用いて空間スケーラビリティのエンコーダを説明する。空間スケーラビリティの場合、下位レイヤは画像サイズの小さい画像信号、また上位レイヤは画像サイズの大きい画像信号に対応する。
【0027】
下位レイヤの画像信号は、まずフレームメモリ群1に入力され、MP@ML と同様に符号化される。ただし、演算回路10の出力データは、フレームメモリ群11に供給され、下位レイヤの予測画像データとして用いられるだけでなく、画像拡大回路(up sampling)31により上位レイヤの画像サイズと同一の画像サイズに拡大された後、上位レイヤの予測画像データにも用いられる。
【0028】
上位レイヤの画像信号はまず、フレームメモリ群51に入力される。動きベクトル検出回路52は MP@ML と同様に、動きベクトルおよび予測モードを決定する。動き補償回路62は、動きベクトル検出回路52によって決定された動きベクトルおよび予測モードに従って、予測画像データを生成し、重み付加回路(W)34に出力する。重み付加回路34では予測画像データに対して重み W を乗算し、重み予測画像データを演算回路33に出力する。
【0029】
演算回路10の出力データ(画像データ)は、上述したようにフレームメモリ群11および画像拡大回路31に入力される。画像拡大回路31では演算回路10によって生成された画像データを拡大して上位レイヤの画像サイズと同一の大きさにして、重み付加回路(1-W)32に出力する。重み付加回路32では、画像拡大回路31の出力データに、重み (1-W) を乗算し、重み予測画像データとして演算回路33に出力する。
【0030】
演算回路33は、重み付加回路32の出力データおよび重み付加回路34の出力データを加算し、予測画像データとして演算回路53に出力する。演算回路33の出力データはまた、演算回路60に入力され、逆 DCT 回路59の出力データと加算された後、フレームメモリ群61に入力され、その後、符号化される画像データの予測参照データフレームとして用いられる。演算回路53は、符号化する画像データと演算回路33の出力データ(予測画像データ)との差分を計算し、差分データとして出力する。ただし、フレーム内符号化マクロブロックの場合、演算回路53は符号化する画像データを、そのまま DCT 回路54に出力する。
【0031】
DCT 回路54は、演算回路53の出力データを DCT(離散コサイン変換)処理し、DCT係数を生成し、そのDCT係数を量子化回路55に出力する。量子化回路55では MP@ML の場合と同様に、送信バッファ57のデータ蓄積量などから決定された量子化スケールに従って DCT 係数を量子化し、量子化データを可変長符号化回路56に出力する。可変長符号化回路56は、量子化データ(量子化された DCT 係数)を可変長符号化した後、送信バッファ57を介して上位レイヤのビットストリームとして出力する。
【0032】
量子化回路55の出力データはまた、量子化回路55で用いた量子化スケールで逆量子化回路58により逆量子化される。逆量子化回路58の出力データ(逆量子化されることにより選られたDCT係数)は、IDCT回路59に供給され、IDCT 回路59で逆DCT処理された後、演算回路60に入力される。演算回路60では、演算回路33の出力データと逆 DCT 回路59の出力データ(差分データ)を加算し、その出力データがフレームメモリ群61に入力される。
【0033】
可変長符号化回路56ではまた、動きベクトル検出回路52で検出された動きベクトルおよび予測モード、量子化回路55で用いた量子化スケール、並びに重み付加回路34および32で用いた重み W が入力され、それぞれ符号化され、符号化データとしてバッファ57に供給される。その符号化データがバッファ57を介してビットストリームとして伝送される。
【0034】
次に、図18を用いて空間スケーラビリティのデコーダの一例を説明する。下位レイヤのビットストリームは受信バッファ21に入力された後、MP@ML と同様に復号される。ただし、演算回路25の出力データは外部に出力され、またフレームメモリ群26に蓄えられて、それ以後復号する画像信号の予測画像データとして用いられるだけでなく、画像信号拡大回路81により、上位レイヤの画像信号と同一の画像サイズに拡大された後、上位レイヤの予測画像データとしても用いられる。
【0035】
上位レイヤのビットストリームは、受信バッファ71を介して可変長復号回路72に供給され、可変長符号が復号される。このとき、DCT 係数とともに、量子化スケール、動きベクトル、予測モードおよび重み係数が復号される。可変長復号回路72により復号された 量子化データは、復号された量子化スケールを用いて逆量子化回路73において逆量子化された後、DCT係数(逆量子化されることにより得られたDCT係数)がIDCT回路74に供給される。そして、DCT係数は、IDCT 回路74により逆DCT 処理された後、出力データが演算回路75に供給される。
【0036】
動き補償回路77は、復号された動きベクトルおよび予測モードに従って、予測画像データを生成し、重み付加回路84に入力する。重み付加回路84では、復号された重み W を、動き補償回路77の出力データに乗算し、演算回路83に出力する。
【0037】
演算回路25の出力データは、下位レイヤの再生画像データとして出力され、またフレームメモリ群26に出力されると同時に、画像信号拡大回路81により上位レイヤの画像サイズと同一の画像サイズに拡大された後、重み付加回路82に出力される。重み付加回路82では、画像信号拡大回路81の出力データに、復号された重みW を用いて(1-W) を乗算し、演算回路83に出力する。
【0038】
演算回路83は、重み付加回路84の出力データおよび重み付加回路82の出力データを加算し、演算回路75に出力する。演算回路75ではIDCT 回路74の出力データおよび演算回路83の出力データを加算して、上位レイヤの再生画像として出力するとともに、フレームメモリ群76に供給して、その後、復号する画像データの予測画像データとして使用する。
【0039】
また、以上においては、輝度信号の処理について説明したが、色差信号の処理も同様に行われる。但し、この場合、動きベクトルは、輝度信号用のものを、垂直方向および水平方向に1/2にしたものが用いられる。
【0040】
以上、MPEG 方式について説明したが、この他にも様々な動画像の高能率符号化方式が標準化されている。例えば、ITU-T では主に通信用の符号化方式として、H.261 や H.263 という方式を規定している。この H.261 や H.263 も基本的には MPEG 方式と同様に動き補償予測符号化と DCT 変換符号化を組み合わせたものであり、ヘッダ情報などの詳細は異なるが、画像信号符号化装置(エンコーダ)や画像信号復号化装置(デコーダ)は同様の構成となる。
【0041】
また、上述したMPEG方式においても、MPEG4と呼ばれる、新たな動画像信号の高能率符号化方式の標準化が進められている。このMPEG4の大きな特徴は、画像をオブジェクト単位で符号化し(複数の画像に分けて符号化し)、加工することが可能であることである。復号側では、各オブジェクトの画像信号、即ち複数の画像信号を合成して1つの画像を再構成する。
【0042】
複数の画像を合成して1つの画像を構成する画像合成システムには、例えば、クロマキーという方法が用いられる。これは所定の物体を、青などの特定の一様な色の背景の前で撮影し、青以外の領域をそこから抽出し、別の画像に合成する方法である。このとき、抽出した領域を示す信号を key 信号と呼ぶ。
【0043】
次に、図19を参照して合成画像を符号化する方法を示す。画像F1は背景であり、また画像F2は前景である。前景F2は特定の色の背景の前で撮影し、その色以外の領域を抽出することによって生成した画像である。その際、抽出した領域を示す信号が key 信号 K1 である。合成画像 F3 は、これら F1、F2、K1 を用いて合成したものである。この画像を符号化する場合、通常、F3をそのまま、MPEGなどの符号化方式で符号化することになる。このとき key 信号などの情報は失われ、前景F2はそのままで、背景F1のみを変更する、といった画像の再編集、再合成は困難となる。
【0044】
これに対して、図20に示すように、画像F1、F2および key 信号 K1を、それぞれ別々に符号化し、それぞれのビットストリームを多重化することにより画像F3のビットストリームを構成することも可能である。
【0045】
図20のようにして、構成したビットストリームを復号して合成画像F3を得る方法を図21に示す。ビットストリームは逆多重化により、F1、F2およびK1のビットストリームに分解され、それぞれが復号され、復号画像F1',F2'、および復号 key 信号 K1'が得られる。このとき、F1'とF2'を key 信号 K1'に従って合成すれば、復号合成画像 F3'を得ることができる。この場合、ビットストリームのままで、前景F2'をそのままにして、背景F1'のみを変更するといった、再編集および再合成が可能となる。
【0046】
上述したように、MPEG4においては、画像F1、F2といった合成画像を構成する各画像シーケンスを VO (VideoObject) と呼ぶ。また、 VO のある時刻における画像フレームを VOP(VideoObject Plane)と呼ぶ。VOPは輝度および色差信号と、並びに key 信号から構成される。画像フレームは、所定の時刻における1枚の画像を意味し、画像シーケンスは異なる時刻の画像フレームの集合を意味する。即ち、各 VO は異なる時刻の VOP の集合である。各 VO は時間によって大きさや位置が異なる。即ち、同じ VO に属する VOP でも大きさおよび位置が異なる。
【0047】
上述したオブジェクト単位で符号化および復号するエンコーダおよびデコーダの構成を図22と図23に示す。図22はエンコーダの一例である。入力画像信号は、まず VO 構成回路101に入力される。VO 構成回路101は、入力画像を物体ごとに分割して各物体(VO)を表わす画像信号を出力する。各 VOの画像信号は、画像信号と key 信号から構成される。VO 構成回路101から出力される画像信号は、各 VO 毎に、 VOP 構成回路102−0乃至102−nに出力される。例えば、VO 0の画像信号および key 信号は、 VOP 構成回路102−0に入力され、VO 1の画像信号および key 信号は、 VOP 構成回路102−1に入力され、以下同様に、 VO n の画像信号および key 信号は、 VOP 構成回路102−nに入力される。
【0048】
VO構成回路101では、例えば、図20に示すようにクロマキーで生成された画像信号の場合、VO は、そのまま各画像信号およびその key 信号で構成される。key 信号がないか、失われた画像に対しては、画像領域分割が行われ、所定の領域が抽出され、key 信号が生成され、VO とされる。
【0049】
VOP 構成回路102−0乃至102−nは、各画像フレームから画像中の物体を含む最小の長方形の部分を抽出する。ただし、このとき長方形の水平および垂直方向の画素数は16の倍数とされる。VOP 構成回路102−0乃至102−nは、上述した長方形に含まれる画像信号(輝度および色差信号)および key 信号を抽出し、それらを出力する。また VOP の大きさを示すフラグ(VOP size)およびその VOP の絶対座標における位置を示すフラグ(VOP POS)を出力する。
【0050】
VOP 構成回路102−0乃至102−nの出力信号は、 VOP 符号化回路103−0乃至103−nに入力され、符号化される。VOP 符号化回路103−0乃至103−nの出力は多重化回路104に入力され、1つのビットストリームに構成され、ビットストリームとして外部に出力される。
【0051】
図23は、デコーダの一例を示している。多重化されたビットストリームは、逆多重化回路111により逆多重化され、各 VOのビットストリームに分解される。各VOのビットストリームは、それぞれ VOP 復号化回路112−0乃至112−nに入力され、復号される。VOP 復号化回路112−0乃至112−nは、各 VOP の画像信号、key 信号 、VOP の大きさを示すフラグ(VOP size)、VOP の絶対座標における位置を示すフラグ(VOP POS)を復号し、画像再構成回路113に入力する。画像再構成回路113は、各 VOP の画像信号、key 信号、大きさを示すフラグ(VOP size)、絶対座標における位置を示すフラグ(VOP POS)を用い、画像を合成し、再生画像を出力する。
【0052】
次に、図24を用いて、 VOP 符号化回路103−0(他のVOP符号化回路103−1乃至103−nも同様に構成されている)の一例を説明する。各 VOP を構成する画像信号と key 信号は、画像信号符号化回路121と key 信号符号化回路122にそれぞれ入力される。画像信号符号化回路121は、例えばMPEG方式やH.263 といった方式で符号化処理を行う。key 信号符号化回路122は、例えば DPCMなどにより符号化処理を行う。また、key信号を符号化する際に、画像信号符号化回路121によって検出された動きベクトルを用いて動き補償を行い、差分信号を符号化する方法もある。key 信号符号化によって発生したビット量は、画像信号符号化回路121に入力され、所定のビットレートになるように制御される。
【0053】
符号化された画像信号(動きベクトルおよびテクスチャ情報)のビットストリームおよび key 信号のビットストリームは、多重化回路123に入力され、1つのビットストリームに構成され、送信バッファ124を介して出力される。
【0054】
図25は、VOP復号化回路112−0(他のVOP復号化回路112−1乃至112−nも同様に構成されている)の構成例を表している。ビットストリームはまず、逆多重化回路131に入力され、画像信号(動きベクトルおよびテクスチャ情報)のビットストリームと key 信号のビットストリームに分解され、画像信号復号化回路132と key 信号復号化回路133により、それぞれ復号される。この場合において、 key 信号を動き補償して符号化が行われているとき、画像信号復号化回路132によって復号された動きベクトルは、 key 信号復号化回路133に入力され、復号に用いられる。
【0055】
以上、画像をVOPごとに符号化する方法を述べたが、こうした方式は、ISO-IEC/JTC1/SC29/WG11 において、 MPEG4 として、現在標準化作業が進められている段階である。しかし、上述したような各VOPを効率よく符号化する方法は、現在確立しておらず、またスケーラビリティといった機能も現在確立していない。
【0056】
以下、画像をオブジェクト単位でスケーラブル符号化する方法に関して説明する。上述したように、レンダリング回路155では、画像のフォーマット、動画であるか静止画であるか、また、その内容に拘らず、テクスチャメモリ152に記録されているテクスチャをポリゴンに貼り付ける。1つのポリゴンに貼り付けることが可能なのは、常にメモリに記憶されている1つのテクスチャであり、1つのポリゴンに複数のテクスチャを貼り付けることはできない。また、多くの場合、画像は圧縮して伝送され、端末側で圧縮ビットストリームを復号した後、所定のテクスチャ貼り付け用のメモリに格納される。
【0057】
従来の場合、ビットストリームを復号することにより生成される画像信号は、常に1つである。例えば、MPEGにおけるMP@MLのビットストリームを復号した場合、1つの画像シーケンスが復号される。また、MPEG2におけるスケーラビリティの場合、下位レイヤのビットストリームを復号した場合、低画質の画像が得られ、下位および上位レイヤのビットストリームを復号した場合には高画質の画像信号が得られる。いずれの場合にも1つの画像シーケンスが復号されることになる。
【0058】
ところが、画像をオブジェクト単位で符号化するMPEG4などの方式の場合は、状況が異なる。即ち、1つのオブジェクトを複数のビットストリームで構成する場合があり、このような場合、各ビットストリーム毎に、複数の画像が得られる。従って、例えば、VRMLなどで記述される3次元オブジェクトにテクスチャを貼りつけることが出来ない。
【0059】
これを解決する方法として、1つの画像オブジェクト(VO)に1つのVRMLノード(ポリゴン)を割り当てることが考えられる。例えば、図21の場合、背景F1'を1つのノードに割り当て、また前景F2'およびkey信号K1'を1つのノードに割り当てることが考えられる。しかし、1つの画像オブジェクトが複数のビットストリームから構成され、復号時に、複数の画像が生成される場合、以下のような問題点ある。これを図26乃至図31を用いて説明する。
【0060】
3階層のスケーラブル符号化を例にとって説明する。3階層のスケーラブル符号化の場合、下位レイヤ(ベースレイヤ)以外に2つの上位レイヤが、即ち、第1の上位レイヤ(エンハンスメントレイヤ1、以下、適宜上位レイヤ1という)と第2の上位レイヤ(エンハンスメントレイヤ2、以下、適宜上位レイヤ2という)が存在する。第1の上位レイヤまで復号した画像と比較して、第2の上位レイヤまで復号した画像は、より画質が向上している。ここで画質の向上とは、空間スケーラブル符号化の場合、空間解像度であり、時間スケーラブル符号化の場合には、フレームレートであり、またSNR(Single to Noise Ratio)スケーラブル符号化の場合、画像のSNRである。
【0061】
オブジェクト単位で符号化するMPEG4の場合、第1の上位レイヤと第2の上位レイヤの関係は次のいずれかとなる。
(1) 第2の上位レイヤは第1の上位レイヤの全ての領域を含む。
(2) 第2の上位レイヤは第1の上位レイヤの一部の領域に対応する。
(3) 第2の上位レイヤは第1の上位レイヤよりも広い領域に対応する。
【0062】
(3)の関係は3階層以上のスケーラブル符号化を行う場合に存在する。これは、第1の上位レイヤは下位レイヤの一部領域に対応し、かつ第2の上位レイヤは下位レイヤの全ての領域を含む場合、または第1の上位レイヤは下位レイヤの一部領域に対応し、第2の上位レイヤは第1の上位レイヤよりも広い領域に対応し、かつ、下位レイヤの一部の領域に対応する場合である。(3)の関係の場合、第1の上位レイヤまで復号すると、下位レイヤの画像の一部のみが画質改善され、第2の上位レイヤまで復号すると、さらに広い領域または下位レイヤの画像の全ての領域の画質が改善される。(3)の関係においては、VOPの形状は長方形であっても、任意形状であってもよい。
【0063】
図26乃至図31は3階層の空間スケーラブル符号化の例を示している。図26は、(1)の関係における空間スケーラビリティでVOPの形状がいずれも長方形である場合の一例を示している。また、図27は、(2)の関係における空間スケーラビリティで、VOPの形状が長方形である場合の一例を示している。さらに、図28は、(3)の関係における空間スケーラビリティで、全てのレイヤのVOPの形状が長方形である場合の一例を示している。また、図29は、(3)の関係における空間スケーラビリティで、第1の上位レイヤのVOPの形状が任意の形状であり、下位レイヤと第2の上位レイヤのVOPの形状が長方形である場合の一例を示している。図30と図31は、(1)の関係における空間スケーラビリティで、VOPの形状が、それぞれ長方形と任意の形状である場合の一例を示している。
【0064】
ここで、図26に示すように、画像全体の画質が向上する場合は、従来のMPEG2などのスケーラブル符号化と同様で、最も高い画質の画像を1枚表示すれば十分である。しかし、オブジェクト単位で符号化するMPEG4には、図27、図28、図29に示すような場合が存在する。例えば、図27の場合、下位レイヤおよび上位レイヤ1,2のビットストリームを復号した場合、下位レイヤおよび上位レイヤ1の画像を解像度変換した後、解像度変換後の2つの画像シーケンスを、上位レイヤ2の復号画像シーケンスと合成して画像全体を再構成することになる。また、図29の場合、上位レイヤ1および下位レイヤのみを復号し、上位レイヤ1の画像のみを出力し、他のビットストリームから復号される別の画像シーケンスと合成してもよい。
【0065】
【発明が解決しようとする課題】
上述したように、オブジェクト単位で画像を符号化する場合、単に、1つのオブジェクトに1つのノードを割り当てるだけの方法では、1つのオブジェクトに対して複数の画像が生成されると、その画像をテクスチャとしてオブジェクトに貼り付けることができなくなる課題があった。
【0066】
本発明はこのような状況に鑑みてなされたものであり、1つのオブジェクトに対して複数の画像が生成された場合においても、その画像をテクスチャとしてオブジェクトに確実に貼り付けることができるようにするものである。
【0067】
【課題を解決するための手段】
本発明画像信号多重化装置は、所定のオブジェクトを記述する空間構成情報を示すシーン記述子を選択するとともに、スケーラブル符号化されている複数の階層のビットストリームのうち、所定のオブジェクトを構成するビットストリームを選択する選択手段と、選択されたビットストリームで構成されるオブジェクトに関する情報を示すオブジェクト記述子を生成する生成手段と、スタートコード、選択されたシーン記述子およびビットストリーム、並びに生成されたオブジェクト記述子を多重化し、スタートコード、シーン記述子、所定数のオブジェクト記述子、所定数のビットストリームの順序で出力する多重化手段とを備える。
【0068】
本発明画像信号多重化方法は、所定のオブジェクトを記述する空間構成情報を示すシーン記述子を選択するとともに、スケーラブル符号化されている複数の階層のビットストリームのうち、所定のオブジェクトを構成するビットストリームを選択する選択ステップと、選択されたビットストリームで構成されるオブジェクトに関する情報を示すオブジェクト記述子を生成する生成ステップと、スタートコード、選択されたシーン記述子およびビットストリーム、並びに生成されたオブジェクト記述子を多重化し、スタートコード、シーン記述子、所定数のオブジェクト記述子、所定数のビットストリームの順序で出力する多重化ステップとを含む。
【0069】
本発明記録媒体は、所定のオブジェクトを記述する空間構成情報を示すシーン記述子を選択するとともに、スケーラブル符号化されている複数の階層のビットストリームのうち、所定のオブジェクトを構成するビットストリームを選択する選択ステップと、選択されたビットストリームで構成されるオブジェクトに関する情報を示すオブジェクト記述子を生成する生成ステップと、スタートコード、選択されたシーン記述子およびビットストリーム、並びに生成されたオブジェクト記述子を多重化し、スタートコード、シーン記述子、所定数のオブジェクト記述子、所定数のビットストリームの順序で出力する多重化ステップとを含む処理をコンピュータに実行させるプログラムが記録されている。
【0078】
請求項20に記載の伝送媒体は、オブジェクトを記述する空間構成情報、オブジェクトを構成する、異なる質を有する複数の階層のビットストリーム、および異なるビットストリーム間での情報の依存関係を示す依存情報を少なくとも含むオブジェクトに関する情報が多重化されて伝送される多重化ビットストリームから、空間構成情報、オブジェクトを構成する複数の階層のビットストリーム、およびオブジェクトに関する情報を分離する分離ステップと、依存情報に基づいて、所定のオブジェクトを記述する空間構成情報、またはオブジェクトを構成する複数の階層のビットストリームを選択するために分離ステップでの処理を制御する制御ステップと、選択された空間構成情報を解析する解析ステップと、複数の階層のビットストリームをデコードするデコードステップと、デコードステップでデコードされた出力信号のうち、同一のオブジェクトに対応する出力信号を混合する混合ステップと、オブジェクトに関する情報に基づいて、解析ステップで解析された出力データと混合ステップで混合された出力信号から画像信号を再構成する再構成ステップとを含むプログラムを伝送することを特徴とする。
【0079】
本発明画像信号多重化装置および方法、並びに記録媒体のプログラムにおいては、所定のオブジェクトを記述する空間構成情報を示すシーン記述子が選択されるとともに、スケーラブル符号化されている複数の階層のビットストリームのうち、所定のオブジェクトを構成するビットストリームが選択され、選択されたビットストリームで構成されるオブジェクトに関する情報を示すオブジェクト記述子が生成され、スタートコード、選択されたシーン記述子およびビットストリーム、並びに生成されたオブジェクト記述子が多重化され、スタートコード、シーン記述子、所定数のオブジェクト記述子、所定数のビットストリームの順序で出力される。
【0083】
【発明の実施の形態】
以下に本発明の実施の形態を説明する。まず、第1の実施の形態におけるビットストリーム多重化装置および逆多重化装置を図1を用いて説明する。なお、以下の説明においては、符号化されたオーディオおよびビデオのビットストリーム(Elementary Stream(ES))は、予め、所定の記憶装置202に記録されているものとして説明するが、ビデオおよびオーディオの符号化装置から、記憶装置202を通さずに、ビットストリームを多重化回路203に直接入力してもよい。また、以下、符号化および復号化方式は、MPEG4方式を想定して説明するが、画像を複数画像に分割して符号化する方式であれば、全て同様に適用可能である。
【0084】
記憶装置202には、各AV(オーディオおよびビデオ)オブジェクトに対応しているビットストリームES(Elementary Stream)、各ビットストリームをデコードするために必要なオブジェクトストリーム情報OI、および2次元または3次元のシーン(伝送する画像により構成される仮想的空間)を記述するシーン記述子SD(Scene Descriptor)が記録されている。ここで、オブジェクトストリーム情報OIは、例えば、デコードするために必要なバッファサイズ、各アクセスユニット(フレームあるいはVOP)のタイムスタンプなどを含んでいる。詳細については後述する。
【0085】
オブジェクト情報OIには、各AV(オーディオおよびビデオ)オブジェクトに対応しているビットストリームESの情報が全て記載されている。オブジェクト記述子発生回路204は、記憶装置202より供給されるオブジェクト情報OIに対応して、オブジェクト記述子OD(Object Descriptor)を発生する。
【0086】
多重化回路203は、記憶装置202に記録されているビットストリームESおよびシーン記述子SD、並びに、オブジェクト記述子発生回路204より供給されるオブジェクト記述子ODを、所定の順番で多重化し、多重化ビットストリームFSを伝送する。
【0087】
ここで、各オブジェクトを形成するビットストリームの構成について説明する。例えば図21に示されるようなシーンは、背景F1'および前景F2'の2つのオブジェクトから構成される。ただし、key信号K1' および前景F2'は1つのビットストリームESで構成される。従って、図21の場合、2つのビデオオブジェクトVOから構成され、スケーラブル符号化を用いない場合、それぞれのVOは1つのビットストリームESから構成される。
【0088】
また、図26乃至図29の場合、フレームは1つのビデオオブジェクトVOから構成される。ただし、この場合、スケーラブル符号化を行っているため、1つのビデオオブジェクトVOは3つのビットストリームESから構成される。図26乃至図29は、3階層のスケーラブル符号化の例を示しているが、階層の数は任意で良い。
【0089】
また、図30および図31では、シーンが背景(図30)および前景(図31)の2つのビデオオブジェクトVOから構成され、それぞれのビデオオブジェクトVOは、3つのビットストリームESから構成されている。
【0090】
ユーザは端末から要求信号を送ることにより、どのビデオオブジェクトを表示するか、またスケーラブル符号化の場合、どのレイヤを表示するかを、任意に設定することが可能である。
【0091】
図1の実施の形態においては、ユーザは図示せぬ外部の端末より、必要なビデオオブジェクトとビットストリームを特定する要求信号REQを送信側に送信する。要求信号REQは、ストリームコントロール回路201に供給される。各ビデオオブジェクトのビットストリームのオブジェクトストリーム情報OIは記憶装置202に記録されている。上述したように、オブジェクトストリーム情報OIは、例えば所定のオブジェクトが、幾つのビットストリームから構成されているかを示す情報、各ビットストリームを復号するために必要な情報、バッファサイズ、復号に際して他にどのビットストリームが必要か、といった情報を含んでいる。
【0092】
ストリームコントロール回路201は、要求信号REQに従って、記憶装置202から供給されるオブジェクトストリーム情報OIを参照して、どのビットストリームを伝送するかを決定し、ストリーム要求信号SREQを多重化回路203、記憶装置202、およびオブジェクト記述子発生回路204に供給する。また、記憶装置202は、ストリーム要求信号SREQに従って、所定のビットストリームESおよびシーン記述子SDを読み出し、多重化回路203に出力する。
【0093】
オブジェクト記述子発生回路204は、ストリーム要求信号SREQに従って、記憶装置202に記録されている各オブジェクト(VO)のビットストリームに関するオブジェクトストリーム情報OIを読み出し、ストリーム要求信号SREQにより要求されたビットストリームの情報のみをオブジェクト記述子ODとして抽出する。また、オブジェクト記述子発生回204は、どのオブジェクトに対応するかを示すID番号OD_IDを生成して、オブジェクト記述子ODに書き込む。例えば、図26の場合で、所定のオブジェクトに対して、下位レイヤおよび上位レイヤ1のみが要求されたとき、オブジェクト記述子発生回路204は、下位レイヤおよび上位レイヤ1の情報のみをオブジェクトストリーム情報OIから抽出し、オブジェクト記述子ODとするとともに、そのオブジェクトを示すID番号OD_IDを生成して、それをオブジェクト記述子ODに書き込む。そして、このように生成されたオブジェクト記述子ODが多重化回路203に供給される。オブジェクト記述子ODおよびオブジェクトストリーム情報OIのシンタクス、並びにシーン記述子SDの詳細は後述する。
【0094】
次に、図2を用いて多重化回路203の動作を説明する。多重化回路203には、ストリーム要求信号SREQに従って、伝送するビットストリームES1乃至ESnが供給される。各ビットストリームES1乃至ESnはスイッチ231に供給される。またシーン記述子SDおよびオブジェクト記述子ODも同様に、スイッチ231に供給される。さらに、多重化回路203にはスタートコード発生回路232が設けられており、スタートコード発生回路232にて発生されたスタートコードもスイッチ231に供給される。スイッチ231は、所定の順番で接続を切り替えことにより得られたデータを多重化ビットストリームFSとして外部に出力する。
【0095】
多重化ビットストリームFSとして、まず、スタートコード発生回路232で発生したスタートコードが出力される。次に、スイッチ231の接続が切り替えられ、シーン記述子SDが出力される。シーン記述子SDが出力された後、スイッチ231の接続が再び切り替えられ、オブジェクト記述子ODが出力される。オブジェクト記述子ODは、オブジェクトの数だけ存在するため、そのオブジェクトの数だけオブジェクト記述子が出力される。図2には、オブジェクトの数が3個である場合が示されている。オブジェクト記述子ODが出力された後、スイッチ231の接続が再び切り替えられ、ビットストリームES1乃至ESnがそれぞれ所定のデータサイズ毎に選択され、出力される。多重化されたビットストリームESは、図1に示されるように、所定の伝送路を経由した後、逆多重化回路205に供給される。
【0096】
次に、逆多重化回路205の詳細について図3を用いて説明する。まず、多重化ビットストリームFSがスイッチ241に供給される。スイッチ241は、まず、スタートコードを検出することにより、以降の各データを認識する。スタートコードを検出した後、スイッチ241からシーン記述子SDが読み出されて出力される。次に、スイッチ241の接続が変更され、オブジェクト記述子ODが読み出されて出力される。オブジェクト記述子ODは、オブジェクトの数だけ存在し、順次出力される。全てのオブジェクト記述子ODが出力された後、スイッチ241の接続が再び変更され、各ビットストリームES1乃至ESnが所定の接続に従って読み出されて出力される。
【0097】
読み出されたシーン記述子SDは、図1に示されるように、構文解析回路(パーサ)208に供給され、解析される。構文解析されたシーン記述は、3次元オブジェクト情報として再構成回路209に供給される。3次元オブジェクト情報は、実際には、ノードやポリゴンなどの情報から構成されているが、以下の説明では、適宜ノードと記載して説明する。
【0098】
また、読み出されたオブジェクト記述子ODは、図1に示されるように、構文解析回路(パーサ)206に供給され、解析される。構文解析回路206は、必要なデコーダの種類と数を同定し、必要なデコーダ207−1乃至207−nに各ビットストリームES1乃至ESnを逆多重化回路205から供給させるようにする。また、オブジェクト記述子ODから各ビットストリームを復号するために必要なバッファ量などが読み出され、構文解析回路206から各デコーダ207−1乃至207−nに出力される。各デコーダ207−1乃至207−nは、構文解析回路206から供給された(つまり、オブジェクト記述子ODにより伝送された)バッファサイズなどの初期化情報に基づき、初期化される。また、構文解析回路206は、各ビットストリームES1乃至ESnが、どのオブジェクトに所属するものなのかを同定するために、各オブジェクト記述子ODのID番号OD_IDを読み出す。そして、各オブジェクト記述子ODのID番号OD_IDが、構文解析回路206からオブジェクト記述子ODに記載されているビットストリームを復号するデコーダ207−1乃至207−nに対して、出力される。
【0099】
各デコーダ207−1乃至207−nは、エンコードに対応する所定のデコード方法に基づきビットストリームを復号し、ビデオまたはオーディオ信号を、再構成回路209に出力する。また、各デコーダ207−1乃至207−nは、その画像がどのオブジェクトに所属するものかを示すID番号OD_IDを再構成回路209に出力する。また、各デコーダ207−1乃至207−nは、画像信号の場合、その位置および大きさを示す信号(POS, SZ)をビットストリームから復号し、再構成回路209に出力する。さらに、デコーダ207−1乃至207−nは、画像信号の場合、透過度を示す信号(key信号)をビットストリームから復号し、再構成回路209に出力する。
【0100】
次に、画像を再構成するための各信号の対応関係および再構成回路209について、図4および図5を用いて説明する。図4はスケーラブル符号化を行わない場合の例を示し、また図5はスケーラブル符号化を行った場合の例を示す。
【0101】
図4において、再構成回路209は、合成回路252から構成されており、その合成回路252に生成された画像信号がディスプレイ251に供給されて表示される。なお、図4において、合成回路252とディスプレイ251が再構成回路209として示されているが、これは合成回路252で構成された画像がどのようにディスプレイ251に示されるかを示すためであり、実際には、再構成回路209に中にディスプレイは含まれない。
【0102】
図4では、ディスプレイ251の画面に、長方形の画像シーケンスとCGにより生成された3角錐が表示されている。3角錐のオブジェクトにはまた、復号されたテクスチャが貼り付けられている。ここで、テクスチャは動画でもよいし、静止画でもよい。
【0103】
図4には、シーン記述子SDと出力画面との対応が示されている。シーン記述子SDとしては、例えば、VRMLなどの記述子が用いられる。シーン記述子SDは、ノードと呼ばれる記述群から構成される。画像全体に各オブジェクトをどのように配置するかを記述した親(ルート)ノードSD0がある。その子ノードとして、3角錐に関する情報を記述するノードSD1がある。また、ルートノードSD0の子ノードとしてのノードSD2に、画像が貼り付けられる長方形の平面に関する情報が記載されている。図4の例の場合、画像信号が3つのビデオオブジェクトVOから構成されている。第1のビデオオブジェクトVOとしての背景に関する情報はノードSD2に記載されている。また、第2のビデオオブジェクトVOとしての太陽を貼り付けるための平面に関する情報がノードSD3に記載されている。さらに第3のビデオオブジェクトVOとしての人物を貼り付ける平面に関する情報がノードSD4に記載されている。ノードSD3およびSD4はノードSD2の子ノードとなる。
【0104】
従って、ノードSD0乃至SD4により1つのシーン記述子SDが構成されている。各ノードSD0乃至SD4はそれぞれ1つの3次元または2次元のオブジェクトに対応する。図4の例の場合、ノードSD0はシーン全体のオブジェクトに、ノードSD1は3角錐のオブジェクトに、ノードSD2は背景のオブジェクトに、ノードSD3は太陽のオブジェクトに、ノードSD4は人物のオブジェクトに、それぞれ対応している。各ノードにテクスチャを貼り付ける場合、それぞれのノードにどのビットストリームが対応するかを示すフラグが必要となる。これを同定するために、各ノードには、対応するビットストリームのデコーダから供給されるオブジェクト記述子のID番号OD_IDが記載される。これにより1つのノードには1つのオブジェクト記述子ODが対応することになる。これにより、1つの2次元または3次元オブジェクトには1つのビデオオブジェクトVOが貼り付けられることになる。
【0105】
シーン記述子SDを構成する各ノードSD0乃至SD4は、構文解析回路208により解釈され、3次元オブジェクト情報として再構成回路209の合成回路252に供給される。また、各デコーダ207−1乃至207−4には、逆多重化回路205よりビットストリームES1乃至ES4が供給され、また、構文解析回路206から対応するオブジェクト記述子ODのID番号OD_IDが供給される。各デコーダ207−1乃至207−4はビットストリームを復号した後、ID番号OD_IDと復号信号(画像もしくはオーディオ)の他、画像の場合、key信号、並びに画像の位置および大きさを示す信号(POS, SZ)を復号信号として再構成回路209の合成回路252に供給する。ここで、画像の位置とは、そのノードの属する1つ上の親ノードとの相対位置を意味する。
【0106】
合成回路252の構成例は図6に示されている。なお、図6において、図14に示した場合と対応する部分には、同一の符号を付してある。入力される3次元オブジェクト情報(ノードSD0乃至SD4や各ポリゴン情報を含む)、画像信号(Texture)、key 信号(key signal)、ID番号OD_ID、位置および大きさを示す信号(POS, SZ)は、それぞれ、オブジェクト合成回路271−1乃至271−nに供給される。1つのノードSDiには1つのオブジェクト合成回路271−iが対応する(i=1,2,3,・・・,n)。オブジェクト合成回路271−iはノードSDiに示されるID番号OD_IDを持つ復号信号をデコーダ207−iより受け取り、画像信号の場合、生成する2次元または3次元のオブジェクトに貼り付ける。なお、上述したように、ID番号OD_IDと復号信号が対応するオブジェクト合成回路271−iに供給される際に、各復号信号がどのノードに対応するかを探索しなければならない。従って、再構成回路209に供給されたID番号OD_IDとノードが含まれているID番号OD_IDとを照合することにより、対応関係を認識する。そして、その認識結果に基づいて、復号信号が対応するノードが供給されるオブジェクト合成回路271−iに供給される。
【0107】
デコーダ207−iより供給される、貼り付けるテクスチャ(画像信号)とその透過度を表す信号(key信号)およびその位置と大きさを示す信号(VOP, SZ)は、メモリ群151−iの所定の領域に記憶される。また同様に、構文解析回路208から供給されるノード(2次元または3次元オブジェクト情報)はメモリ群151−iの所定の記憶領域に記憶される。テクスチャ(画像信号)はテクスチャメモリ152−iに、透過度を表す信号(key signal)およびID番号OD_IDはグレースケールメモリ153−iに、またノードは3次元情報メモリ154−iに、それぞれ記憶される。ID番号OD_IDは、オブジェクトを識別するために供給され、使用される。さらに、位置および大きさを示す信号(POS, SZ)は、いずれのメモリに記憶されてもよいが、例えば、この例の場合、グレースケールメモリ153−iに記憶される。ここで、3次元オブジェクト情報とは、ポリゴンの形成情報や照明情報などである。位置および大きさを示す信号は、メモリ群151−i中の所定の位置に記憶される。
【0108】
レンダリング回路155−iは3次元情報メモリ154−iに記録されているノードに基づき、2次元または3次元オブジェクトをポリゴンにより形成する。レンダリング回路155−iは、テクスチャメモリ152−iおよびグレースケールメモリ153−iより所定のテクスチャおよび透過度を示す信号を読み込み、生成した3次元オブジェクトに貼り付ける。透過度を表す信号は、対応する位置のテクスチャの透過度を示しており、対応する位置のテクスチャが貼り付けられた位置のオブジェクトの透明度を示すことになる。レンダリング回路155−iはテクスチャを貼り付けた信号を2次元変換回路156に供給する。また画像の位置および大きさを示す信号(親ノードとの相対位置)は、同様に、メモリ群151−iの所定の位置(この例の場合、グレースケールメモリ153−i)から読み出され、2次元変換回路156に出力される。
【0109】
2次元変換回路156には、ノードの数だけのオブジェクト合成回路271−1乃至271−nから、テクスチャを貼り付けた2次元または3次元のオブジェクトが供給される。2次元変換回路156では、外部より供給される視点情報並びに画像の位置および大きさを示す信号(POS, SZ)に基づき、3次元オブジェクトを2次元平面に写像して、2次元画像信号に変換する。2次元画像信号に変換された3次元オブジェクトは、さらにディスプレイ251に出力され、表示される。なお、全てのオブジェクトが2次元オブジェクトの場合、各レンダリング回路155−1乃至155−nからの出力データが、その透過度(key 信号)並びに画像の位置および大きさを示す信号に従って合成され、出力される。この場合、視点による変換は行われない。
【0110】
次に、図5のスケーラブル符号化を行った場合の例を説明する。この場合、再構成回路209は、混合回路261および合成回路252から構成されており、その混合回路261および合成回路252で生成された画像信号がディスプレイ251に供給されて表示される。なお、図5においても図4と同様に、混合回路261および合成回路252とディスプレイ251が再構成回路209として示されているが、これは混合回路261および合成回路252で構成された画像がどのようにディスプレイ251に示されるかを示すためであり、実際には、再構成回路209中にディスプレイは含まれない。また、図5の例では、ディスプレイ251に、長方形の画像シーケンスと、CGにより生成された3角錐が表示されている。3角錐のオブジェクトにはまた、復号されたテクスチャが貼り付けられている。ここで、テクスチャは動画でもよいし、静止画でもよい。
【0111】
図5には、シーン記述子SDと出力画面との対応が示されている。図5の場合、画像全体に各オブジェクトをどのように配置するかを記述した親ノードSD0がある。それの子ノードとして、3角錐に関する情報が記述されているノードSD1、および画像が貼り付けられる長方形の平面に関する情報が記述されているノードSD2が存在する。この図5のノードSD2が対応する画像信号は図4の例の場合とは異なり、1つのビデオオブジェクトVOから構成されている。ただし、図5の場合、ノードSD2が対応する画像は、3階層のスケーラブル符号化が行われており、3つのビデオオブジェクトレイヤからビデオオブジェクトVOが構成されているものとする。なお、図5では3階層の例を説明するが階層の数は任意で良い。
【0112】
シーン記述子SDを構成する各ノードSD0乃至SD2は、構文解析回路208により解釈され、解析結果が合成回路252に供給される。各デコーダ207−1乃至207−4には、逆多重化回路205よりビットストリームES1乃至ESnが供給されるとともに、対応するオブジェクト記述子ODのID番号OD_IDが構文解析回路206から供給される。各デコーダ207−1乃至207−4はビットストリームを復号した後、復号信号の他、画像の場合、key信号、画像の位置および大きさを示す信号(VOP, SZ)、倍率を示す信号FRを混合回路261に供給する。ここで、画像の位置とは同一ビデオオブジェクトVOでの各レイヤの相対位置を意味する。また各デコーダ207−1乃至207−4はID番号OD_IDを合成回路252に供給する。合成回路252の構成は図6に示すものと同様であるため、ここでは、その説明を省略する。
【0113】
なお、上述したように、ID番号OD_IDと復号信号が対応するオブジェクト合成回路271−iに供給される際に、各復号信号がどのノードに対応するかを探索しなければならない。従って、再構成回路209に供給されたID番号OD_IDとノードに含まれているID番号OD_IDとを照合することにより、対応関係を認識する。そして、その認識結果に基づいて、復号信号が対応するノードが供給されるオブジェクト合成回路271−iに供給される。
【0114】
スケーラブル符号化の場合、各レイヤ(VOL)のビットストリームは同一のビデオオブジェクトVOに所属するため、同一のID番号OD_IDを持つ。1つのノードには1つのビデオオブジェクトVOが対応し、またそれに対応して合成回路252中に、1つのテクスチャメモリ152−iが対応する。従って、スケーラブル符号化の場合、各レイヤの出力(デコーダ207−2乃至207−4の出力)を一度混合回路261に供給し、1つの画像シーケンスに合成する。
【0115】
混合回路261は、各デコーダ207−2乃至207−4から供給される画像信号、 key信号、倍率を示す信号、画像の位置および大きさを示す信号に基づき、各レイヤの画像を先に合成した後、合成回路252に出力する。従って、合成回路252では、1つのオブジェクトに対して1つの画像シーケンスを対応させることができる。
【0116】
例えば、図29に示すようなスケーラブル符号化が行われ、かつ下位レイヤおよび上位レイヤ1が伝送され、それらが復号された場合、下位レイヤの画像信号は倍率を示す信号FRに基づき解像度変換される。次に、この画像に対し、上位レイヤ1の復号画像が対応する位置にkey信号に従って、合成される。
【0117】
混合回路261により合成された画像シーケンスは、合成回路252に供給される。合成回路252では、図4の場合と同様に画像を構成し、ディスプレイ251に出力して最終的な出力画像を得る。
【0118】
このように、この例では、1つのノードに対して、1つのオブジェクト(ビデオの場合ビデオオブジェクトVO)を割り当て、レンダリング回路155におけるテクスチャや3次元情報などを記憶するメモリ群151の前段に混合回路261を設け、複数の画像を所定のkey信号に従って混合した後、テクスチャメモリ152に記録し、複数解像度からなる画像信号をテクスチャマッピングすることを可能にする。
【0119】
また、このように、図1の例では、あるオブジェクトに対して、そのオブジェクトを構成するビットストリームのシステム情報を記録した記述子を生成し、その際、必ず復号しなければならないビットストリームの情報のみを記憶し、その記述子に記載されているビットストリームは全て復号することにより、復号可能なビットストリームの組み合わせを同定し、所定の信号を復号することを可能とする。この場合、上記記述子は、送信側と受信側で1対1で生成され、伝送される。
【0120】
次に、図7乃至図9にオブジェクト記述子ODの構成を示す。図7はオブジェクト記述子ODの全体構成(シンタックス)を示す。
【0121】
Node IDは、その記述子のID番号を示す10ビットのフラグである。上記したOD_IDに相当する。また、streamCountは、8ビットのフラグで、そのオブジェクト記述子に含まれるビット ストリームESの数を示す。この数だけ、ビットストリームESの復号時に必要な情報、ES_Descriptorが伝送される。さらに、extentionFlagは、その他の記述子を伝送するかどうかを示すフラグで、この値が1 の場合、その他の記述子が伝送される。
【0122】
ES_Descriptorは、各ビットストリームに関する情報を示す記述子である。図8にES_Descriptorの構成(シンタックス)を示す。ES_Numberはそのビットストリームを識別するためのID番号を示す5ビットのフラグである。また、streamTypeは、そのビットストリームのフォーマット、例えばMPEG2ビデオなど、を示す8ビットのフラグである。さらに、QoS_Descriptorは、伝送の際にネットワークへの要求を示す8ビットのフラグである。
【0123】
ESConfigParamsはそのビットストリームを復号するのに必要な情報が記載されている記述子であり、その構成(シンタックス)を図9に示す。ESConfigParamの詳細は、MPEG4 System VMに記述されている。
【0124】
図10に動画を貼り付けるためのシーン記述子を示す。SFObjectIDは、貼り付けるテクスチャのオブジェクト記述子のIDであるID番号OD_IDを示すフラグである。また、図11には静止画を貼り付けるためのシーン記述子を示す。SFObjectIDは、貼り付けるテクスチャのオブジェクト記述子のID番号OD_IDを示すフラグである。なお、図10と図11の書式は、VRMLのノード記述に準拠している。
【0125】
次に、第2の実施の形態におけるビットストリーム多重化装置および逆多重化装置を図12に示す。この実施の形態においては、オブジェクトに所属するビットストリームが全て多重化され伝送される。図1の第1の実施の形態においては、受信側から要求されたビットストリームだけを多重化して伝送するようになされていた。その際、伝送するビットストリームに合わせてオブジェクト記述子ODを発生させていた。受信側ではオブジェクト記述子ODに記載されているビットストリームは全て復号したため、ビットストリーム間での情報の依存関係を特に伝送する必要が無かった。
【0126】
これに対して、第2の実施の形態では、あらかじめ、オブジェクト記述子ODが記憶装置202に記憶されており、送信側ではこのオブジェクト記述子ODに記録されているビットストリームは全て多重化して伝送する。この時、第2の実施の形態におけるオブジェクト記述子ODは、ビットストリーム間の情報の依存関係が記載されている点が第1の実施の形態と異なる。それ以外の点では第1の実施の形態と同様である。
【0127】
多重化回路203では、記憶装置202に記録されているシーン記述子SD、オブジェクト記述子OD、およびビットストリーム群ESを読み込み、所定の順番で多重化し、伝送する。伝送順や、多重化回路203の構成は、第1の実施の形態と同様である。多重化ビットストリームFSは伝送路を経由して、逆多重化回路205に供給される。
【0128】
ユーザは、どのオブジェクトを表示させたいかを表す要求信号REQを端末から入力する。要求信号REQは、逆多重化回路205、構文解析回路206、および再構成回路209に供給される。構文解析回路206では、伝送されてきた各オブジェクト記述子ODを解析し、必要なビットストリームを要求する信号SREQを生成し、逆多重化回路205に供給する。ユーザが所定のビットストリームを要求した場合、それを復号するために必要なその他のビットストリームが存在するか、またどのビットストリームが必要かは、オブジェクト記述子ODに記録されている。
【0129】
逆多重化回路205は、ユーザからの要求信号REQおよび必要なビットストリームを要求する信号SREQに従って、必要なビットストリームのみをデコーダ207−1乃至207−nに供給するとともに、必要なオブジェクト記述子ODを構文解析回路206に供給する。構文解析回路206は、オブジェクト記述子ODを解析し、オブジェクト記述子ODおよびユーザからの要求信号REQに基づき、デコーダ207−1乃至207−nの初期化情報およびID番号OD_IDを各デコーダ207−1乃至207−nに出力する。以下、第1の実施の形態と同様に復号、合成、表示がなされる。
【0130】
このようにこの例では、あるオブジェクトに対して、そのオブジェクトを構成するビットストリームのシステム情報を記録した記述子(オブジェクト記述子)を生成し、その際、各ビットストリームを復号するのに必要なビットストリームを示すフラグを記録し、その記述子に記載されているフラグに従って所定のビットストリームを復号することにより、復号可能なビットストリームの組み合わせを同定し、所定の信号を復号することを可能とする。この場合、上記、記述子は送信側で1度生成された後、全ての受信者に共通の記述子が伝送される。
【0131】
第2の実施の形態においては、オブジェクト記述子ODが第1の実施の形態とは異なり、所定のビットストリームを復号する際に必要な、別ビットストリームを同定するための情報が記載されている。第2の実施の形態におけるオブジェクト記述子ODを説明する。オブジェクト記述子ODの全体構成は、図7に示した第1の実施の形態における場合と同様である。
【0132】
図13に各ビットストリームに関する情報を記述するES_Descriptorを示す。isOtherStreamは、1ビットのフラグで、このビットストリームを復号するために他のビッ トストリームが必要かどうかを示す。この値が0の場合、このビットストリームは単独で復号可能である。isOtherStreamの値が1である場合、このビットストリームは単独では復号できない。
【0133】
streamCountは、他に幾つのビットストリームが必要かを示す5ビットのフラグである。streamCountに基づき、その数だけ、ES_Numberが伝送される。
【0134】
ES_Numberは、復号に必要なビットストリームを識別するためのIDである。なお、ES_Descriptorのその他の構成は第1の実施の形態と同様である。また、各ビットストリームを復号するために必要な情報を表すESConfigParamsの構成は、図9に示した第1の実施の形態における場合と同様である。
【0135】
なお、上述したような処理(多重化および逆多重化)はプログラムで実現でき、そのプログラムをユーザに伝送(提供)することが可能であり、伝送媒体としては、磁気ディスク、CD-ROM、固体メモリなどの記録媒体の他、ネットワーク、衛星などの通信媒体を利用することができる。また、上述した処理は、プログラムとして実現できる他、ハードウェアとして実現できることは言うまでもない。
【0136】
なお、本発明の主旨を逸脱しない範囲において、さまざまな変形や応用例が考えうる。従って、本発明の要旨は、実施の形態に限定されるものではない。
【0137】
【発明の効果】
本発明第1の画像信号多重化装置および方法、並びに記録媒体のプログラムによれば、数階層をもつオブジェクト単位のスケーラブルビットストリームをテクスチャマッピングすることが可能となる。
【図面の簡単な説明】
【図1】本発明の画像信号多重化装置および画像信号逆多重化装置の構成例を示すブロック図である。
【図2】図1の多重化回路203の構成例を示すブロック図である。
【図3】図1の逆多重化回路205の構成例を示すブロック図である。
【図4】画像を再構成するための各信号の対応関係および図1の再構成回路209を示す図である。
【図5】画像を再構成するための各信号の対応関係および図1の再構成回路209を示す図である。
【図6】図5の合成回路252の構成例を示すブロック図である。
【図7】オブジェクト記述子の構成を示す図である。
【図8】 ES_Descriptorの構成を示す図である。
【図9】 ESConfigParamsの構成を示す図である。
【図10】動画用のシーン記述子の構成を示す図である。
【図11】静止画用のシーン記述子の構成を示す図である。
【図12】本発明の画像信号多重化装置および画像信号逆多重化装置の他の構成例を示すブロック図である。
【図13】 ES_Descriptorの構成を示す図である。
【図14】従来のオブジェクト合成回路の構成例を示すブロック図である。
【図15】従来の画像信号符号化装置の構成例を示すブロック図である。
【図16】従来の画像信号復号化装置の構成例を示すブロック図である。
【図17】従来の画像信号符号化装置の他の構成例を示すブロック図である。
【図18】従来の画像信号復号化装置の他の構成例を示すブロック図である。
【図19】従来の画像の合成を説明する図である。
【図20】画像の合成を説明する図である。
【図21】画像の合成を説明する図である。
【図22】従来の画像信号符号化装置のさらに他の構成例を示すブロック図である。
【図23】従来の画像信号復号化装置のさらに他の構成例を示すブロック図である。
【図24】図22のVOP符号化回路103−0の構成例を示すブロック図である。
【図25】図23のVOP復号化回路112−0の構成例を示すブロック図である。
【図26】画像オブジェクトを説明する図である。
【図27】画像オブジェクトを説明する図である。
【図28】画像オブジェクトを説明する図である。
【図29】画像オブジェクトを説明する図である。
【図30】画像オブジェクトを説明する図である。
【図31】画像オブジェクトを説明する図である。
【符号の説明】
201 ストリームコントロール回路, 202 記憶装置, 203 多重化回路, 204 オブジェクト記述子発生回路, 205 逆多重化回路, 206 構文解析回路, 207−1乃至207−n デコーダ, 208 構文解析回路, 209 再構成回路
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an image signal multiplexing apparatus and method. , In particular, regarding data transmission media, data recorded on a recording medium such as a magneto-optical disk or magnetic tape, reproduced from the recording medium, and displayed on a display, a video conference system, a videophone system, a broadcasting device, An image signal multiplexing apparatus and method suitable for application to data that is transmitted from a transmission side to a reception side via a transmission path and displayed, edited, or recorded on the reception side, such as a media database search system , And a transmission medium.
[0002]
[Prior art]
For example, in a system that transmits a moving image signal to a remote place such as a video conference system and a video phone system, in order to efficiently use a transmission path, the line correlation of video signals and the correlation between frames are used. Compress and encode image signals Ru It is made like that.
[0003]
In recent years, since the processing capability of computers has improved, moving image information terminals using computers are becoming widespread. In such a system, information is transmitted to a remote place through a transmission line such as a network. In this case as well, signals such as image signals, sound signals, and data to be transmitted are compressed and transmitted in order to efficiently use the transmission path.
[0004]
On the terminal side, the compressed signal transmitted based on a predetermined method is decoded, the original image signal, sound signal, data, etc. are restored, and output to a display or a speaker provided in the terminal. In the conventional technology, the transmitted image signal or the like was only output to the display terminal as it is, but in the information terminal using a computer, after converting the plurality of image signals, acoustic signals and data, It has become possible to display in a two-dimensional or three-dimensional space. Such processing is performed by describing information in a two-dimensional and three-dimensional space by a predetermined method on the transmission side, and performing, for example, a predetermined conversion process for an image signal or the like according to the description by the terminal and displaying the information. Can be realized.
[0005]
As a typical description method of such spatial information, for example, there is VRML (Virtual Reality Modeling Language). This is also standardized in ISO-IEC / JTC1 / SC2 4 and the latest version of VRML2.0 is described in IS14772. VRML is a language for describing a three-dimensional space, and defines a collection of data for describing attributes and shapes of the three-dimensional space. This collection of data is called a node. In order to describe the three-dimensional space, it is described how these nodes that are defined in advance are combined. Nodes are defined to indicate attributes such as color and texture, and those indicating the shape of a polygon.
[0006]
In an information terminal using a computer, a predetermined object is generated using a polygon or the like by CG (Computer Graphics) in accordance with the description such as VRML. In VRML, a texture can be pasted on a three-dimensional object composed of polygons generated in this way. If the texture to be pasted is a still image, a node called Texture is defined. If it is a moving image, a node called MovieTexture is defined. Information about the texture to be pasted to this node (file name, display start time, display end time, etc.) Are listed.
[0007]
Here, the pasting of the texture (hereinafter referred to as texture mapping as appropriate) will be described with reference to FIG. First, a texture (image signal) to be pasted, a signal indicating its transparency (key signal), and three-dimensional object information are input from the outside and stored in a predetermined storage area of the memory group 151. The texture is stored in the texture memory 152, the signal indicating the transparency is stored in the gray scale memory 153, and the three-dimensional object information is stored in the three-dimensional information memory 154. Here, the three-dimensional object information includes polygon formation information and illumination information.
[0008]
The rendering circuit 155 forms a three-dimensional object with polygons based on predetermined three-dimensional object information recorded in the memory group 151. The rendering circuit 155 reads a signal indicating a predetermined texture and transparency from the memory 152 and the memory 153 based on the three-dimensional object information, and pastes the signal to the generated three-dimensional object. The signal indicating the transparency indicates the transparency of the texture at the corresponding position, and indicates the transparency of the object at the position where the texture at the corresponding position is pasted. The rendering circuit 155 supplies the signal of the object to which the texture is pasted to the two-dimensional conversion circuit 156.
[0009]
The two-dimensional conversion circuit 156 converts a three-dimensional object into a two-dimensional image signal obtained by mapping a three-dimensional object onto a two-dimensional plane based on viewpoint information supplied from the outside. The three-dimensional object converted into the two-dimensional image signal is further output to the outside. The texture may be a still image or a moving image. In the case of a moving image, the above operation is performed each time the image frame of the moving image to be pasted is changed.
[0010]
In VRML, JPEG (Joint Photographic Experts Group), which is one of the high-efficiency encoding methods for still images, and MPEG (Moving Picture Experts Group), which is one of the moving image encoding methods, are used as the texture format to be pasted. Compressed image formats are also supported. In this case, the texture (image) is decoded by a decoding process based on a predetermined compression method, and the reverse image signal is recorded in the memory 152 in the memory group 151.
[0011]
The rendering circuit 155 pastes the texture recorded in the memory 152 regardless of the format of the image, whether it is a moving image or a still image, and the content thereof. One texture that can be pasted to one polygon is always one texture stored in the memory, and a plurality of textures cannot be pasted to one polygon.
[0012]
By the way, when transmitting such three-dimensional information and texture information via a transmission line, it is necessary to compress and send the information in order to efficiently use the transmission line. In particular, when a moving image is pasted on a three-dimensional object, it is essential to compress and transmit the moving image.
[0013]
For example, the MPEG method described above was discussed in ISO-IEC / JTC1 / SC2 / WG11 and was proposed as a standard proposal. The method is adopted. In MPEG, several profiles and levels are defined to support various applications and functions. The most basic is the main profile main level (MP @ ML).
[0014]
A configuration example of an MPEG MP @ ML encoder will be described with reference to FIG. The input image signal is first input to the frame memory group 1 and stored in a predetermined order. Image data to be encoded is input to a motion vector detection circuit (ME) 2 in units of macroblocks. The motion vector detection circuit 2 processes the image data of each frame as an I picture, P picture, or B picture according to a predetermined sequence set in advance. It is predetermined (for example, I, B, P, B, P,..., B, P) that an image of each frame that is sequentially input is processed as an I, P, or B picture. Are processed in the order of
[0015]
The motion vector detection circuit 2 performs motion compensation with reference to a predetermined reference frame determined in advance, and detects the motion vector. There are three types of motion compensation (interframe prediction): forward prediction, backward prediction, and bidirectional prediction. The prediction mode for P pictures is only forward prediction, and the prediction modes for B pictures are three types: forward prediction, backward prediction, and bidirectional prediction. The motion vector detection circuit 2 selects a prediction mode that minimizes the prediction error, and generates a prediction vector at that time.
[0016]
At this time, for example, the prediction error is compared with the variance of the macroblock to be encoded. When the variance of the macroblock is smaller, the prediction is not performed on the macroblock, and the intraframe encoding is performed. In this case, the prediction mode is intra-picture coding (intra). The motion vector and the prediction mode are input to the variable length coding circuit 6 and the motion compensation circuit (MC) 12.
[0017]
The motion compensation circuit 12 generates predicted image data based on the input motion vector, and the predicted image data is input to the arithmetic circuit 3. The arithmetic circuit 3 calculates difference data between the value of the macroblock to be encoded and the value of the predicted image, and outputs it to the DCT circuit 4. In the case of an intra macroblock, the arithmetic circuit 3 outputs the macroblock signal to be encoded to the DCT circuit 4 as it is.
[0018]
In the DCT circuit 4, the input signal is subjected to DCT (Discrete Cosine Transform) processing and converted to DCT coefficients. This DCT coefficient is input to the quantization circuit (Q) 5, quantized in a quantization step corresponding to the data accumulation amount (buffer accumulation amount) of the transmission buffer 7, and then the quantized data is converted into a variable length coding circuit. (VLC) 6 is input.
[0019]
The variable length encoding circuit 6 corresponds to the quantization step (scale) supplied from the quantization circuit 5 and converts the quantized data (for example, I picture data) supplied from the quantization circuit 5 to, for example, Huffman. The data is converted into a variable length code such as a code and output to the transmission buffer 7. The variable length coding circuit 6 is also set with a quantization step (scale) by the quantization circuit 5 and a prediction mode (intra-picture prediction, forward prediction, backward prediction, or bidirectional prediction) set by the motion vector detection circuit 2. ) And a motion vector are input, and these are also variable-length encoded.
[0020]
The transmission buffer 7 temporarily stores the input encoded data, and outputs data corresponding to the storage amount to the quantization circuit 5. When the remaining amount of data increases to the allowable upper limit value, the transmission buffer 7 increases the quantization scale of the quantization circuit 5 by the quantization control signal, thereby reducing the data amount of the quantized data. On the other hand, when the remaining data amount is reduced to the allowable lower limit value, the transmission buffer 7 reduces the quantization scale of the quantization circuit 5 by the quantization control signal, thereby reducing the data amount of the quantized data. Increase. In this way, overflow or underflow of the transmission buffer 7 is prevented. The encoded data stored in the transmission buffer 7 is read at a predetermined timing, and is output as a bit stream to the transmission path.
[0021]
On the other hand, the quantized data output from the quantizing circuit 5 is input to the inverse quantizing circuit (IQ) 8 and is inversely quantized corresponding to the quantization step supplied from the quantizing circuit 5. Output data of the inverse quantization circuit 8 (DCT coefficient obtained by inverse quantization) is input to an IDCT (inverse DCT) circuit 9. The IDCT circuit 9 performs inverse DCT processing on the input DCT coefficient, and the obtained output data (difference data) is supplied to the arithmetic circuit 10. The arithmetic circuit 10 adds the difference data and the predicted image data from the motion compensation circuit 12, and the output image data is stored in the frame memory (FM) group 11. In the case of an intra macroblock, the arithmetic circuit 10 supplies the output data from the IDCT circuit 9 to the frame memory group 11 as it is.
[0022]
Next, a configuration example of an MPEG MP @ ML decoder will be described with reference to FIG. The encoded image data (bit stream) transmitted through the transmission path is received by a reception circuit (not shown), reproduced by a reproduction device, temporarily stored in the reception buffer 21, and then encoded. The data is supplied to the variable length decoding circuit (IVLC) 22 as data. The variable-length decoding circuit 22 performs variable-length decoding on the encoded data supplied from the reception buffer 21, the motion vector and prediction mode to the motion compensation circuit 27, and the quantization step to the inverse quantization circuit (IQ) 23. , And outputs the decoded quantized data to the inverse quantization circuit 23.
[0023]
The inverse quantization circuit 23 inversely quantizes the quantized data supplied from the variable length decoding circuit 22 according to the quantization step supplied from the variable length decoding circuit 22 and obtains output data (obtained by being inversely quantized). The obtained DCT coefficient) is output to the IDCT circuit 24. The output data (DCT coefficient) output from the inverse quantization circuit 23 is subjected to inverse DCT processing by the IDCT circuit 24, and the output data (difference data) is supplied to the arithmetic circuit 25.
[0024]
When the output data output from the IDCT circuit 24 is I picture data, the output data is output from the arithmetic circuit 25 as image data, and image data (P or B picture data) that is input to the arithmetic circuit 25 later. ) Is supplied to the frame memory group 26 and stored therein. The image data is output to the outside as it is as a reproduced image. When the data output from the IDCT circuit 24 is a P or B picture, the motion compensation circuit 27 is supplied from the variable length decoding circuit 22 and is stored in the frame memory group 26 according to the motion vector and the prediction mode. Predictive image data is generated from the data and output to the arithmetic circuit 25. The arithmetic circuit 25 adds the output data (difference data) input from the IDCT circuit 24 and the predicted image data supplied from the motion compensation circuit 27 to obtain output image data. In the case of a P picture, the output data of the arithmetic circuit 25 is also stored as predicted image data in the frame memory group 26 and used as a reference image of an image signal to be decoded next.
[0025]
In addition to MP @ ML, MPEG defines various profiles and levels and provides various tools. Scalability is one such tool. In addition, in MPEG, a scalable encoding method that realizes scalability corresponding to different image sizes and frame rates is introduced. For example, in the case of spatial scalability, when only a lower layer bitstream is decoded, a small image size image signal is decoded, and when a lower layer and upper layer bitstream is decoded, a large image size image signal is decoded. .
[0026]
The spatial scalability encoder will be described with reference to FIG. In the case of spatial scalability, the lower layer corresponds to an image signal having a small image size, and the upper layer corresponds to an image signal having a large image size.
[0027]
The lower layer image signal is first input to the frame memory group 1 and encoded in the same manner as MP @ ML. However, the output data of the arithmetic circuit 10 is not only supplied to the frame memory group 11 and used as the predicted image data of the lower layer, but also the same image size as the image size of the upper layer by the image enlarging circuit (up sampling) 31. After being enlarged to the upper layer, it is also used for the predicted image data of the upper layer.
[0028]
The upper layer image signal is first input to the frame memory group 51. The motion vector detection circuit 52 determines a motion vector and a prediction mode, similarly to MP @ ML. The motion compensation circuit 62 generates predicted image data according to the motion vector determined by the motion vector detection circuit 52 and the prediction mode, and outputs the predicted image data to the weight addition circuit (W) 34. The weight addition circuit 34 multiplies the predicted image data by the weight W and outputs the weight predicted image data to the arithmetic circuit 33.
[0029]
The output data (image data) of the arithmetic circuit 10 is input to the frame memory group 11 and the image enlargement circuit 31 as described above. The image enlargement circuit 31 enlarges the image data generated by the arithmetic circuit 10 so as to have the same size as the image size of the upper layer, and outputs it to the weight addition circuit (1-W) 32. The weight addition circuit 32 multiplies the output data of the image enlargement circuit 31 by the weight (1-W) and outputs the result to the arithmetic circuit 33 as weight prediction image data.
[0030]
The arithmetic circuit 33 adds the output data of the weight addition circuit 32 and the output data of the weight addition circuit 34 and outputs the result to the arithmetic circuit 53 as predicted image data. The output data of the arithmetic circuit 33 is also input to the arithmetic circuit 60, added to the output data of the inverse DCT circuit 59, input to the frame memory group 61, and then the predicted reference data frame of the image data to be encoded. Used as The arithmetic circuit 53 calculates a difference between the image data to be encoded and the output data (predicted image data) of the arithmetic circuit 33 and outputs the difference as difference data. However, in the case of an intra-frame encoded macroblock, the arithmetic circuit 53 outputs the image data to be encoded to the DCT circuit 54 as it is.
[0031]
The DCT circuit 54 performs DCT (discrete cosine transform) processing on the output data of the arithmetic circuit 53, generates DCT coefficients, and outputs the DCT coefficients to the quantization circuit 55. As in the case of MP @ ML, the quantization circuit 55 quantizes the DCT coefficient according to the quantization scale determined from the data accumulation amount of the transmission buffer 57 and outputs the quantized data to the variable length coding circuit 56. The variable length coding circuit 56 performs variable length coding on the quantized data (quantized DCT coefficient), and then outputs it as a bit stream of the upper layer via the transmission buffer 57.
[0032]
The output data of the quantization circuit 55 is also inversely quantized by the inverse quantization circuit 58 at the quantization scale used in the quantization circuit 55. The output data of the inverse quantization circuit 58 (DCT coefficient selected by being inversely quantized) is supplied to the IDCT circuit 59, subjected to inverse DCT processing by the IDCT circuit 59, and then input to the arithmetic circuit 60. In the arithmetic circuit 60, the output data of the arithmetic circuit 33 and the output data (difference data) of the inverse DCT circuit 59 are added, and the output data is input to the frame memory group 61.
[0033]
The variable length coding circuit 56 also receives the motion vector and prediction mode detected by the motion vector detection circuit 52, the quantization scale used by the quantization circuit 55, and the weight W used by the weight addition circuits 34 and 32. Are encoded and supplied to the buffer 57 as encoded data. The encoded data is transmitted as a bit stream via the buffer 57.
[0034]
Next, an example of a spatial scalability decoder will be described with reference to FIG. After the lower layer bit stream is input to the reception buffer 21, it is decoded in the same manner as MP @ ML. However, the output data of the arithmetic circuit 25 is output to the outside, stored in the frame memory group 26, and used as predicted image data of an image signal to be decoded thereafter. After being enlarged to the same image size as that of the image signal, it is also used as the predicted image data of the upper layer.
[0035]
The upper layer bit stream is supplied to the variable length decoding circuit 72 via the reception buffer 71, and the variable length code is decoded. At this time, the quantization scale, the motion vector, the prediction mode, and the weighting coefficient are decoded together with the DCT coefficient. The quantized data decoded by the variable length decoding circuit 72 is inversely quantized by the inverse quantization circuit 73 using the decoded quantization scale, and then DCT coefficients (DCT obtained by inverse quantization). Coefficient) is supplied to the IDCT circuit 74. The DCT coefficient is subjected to inverse DCT processing by the IDCT circuit 74, and output data is supplied to the arithmetic circuit 75.
[0036]
The motion compensation circuit 77 generates predicted image data according to the decoded motion vector and the prediction mode, and inputs the predicted image data to the weight addition circuit 84. The weight addition circuit 84 multiplies the decoded weight W by the output data of the motion compensation circuit 77 and outputs the result to the arithmetic circuit 83.
[0037]
The output data of the arithmetic circuit 25 is output as reproduced image data of the lower layer and also output to the frame memory group 26. At the same time, the image data is enlarged to the same image size as the image size of the upper layer by the image signal enlargement circuit 81. Thereafter, it is output to the weight addition circuit 82. The weight addition circuit 82 multiplies the output data of the image signal expansion circuit 81 by (1-W) using the decoded weight W 1 and outputs the result to the arithmetic circuit 83.
[0038]
The arithmetic circuit 83 adds the output data of the weight addition circuit 84 and the output data of the weight addition circuit 82 and outputs the result to the arithmetic circuit 75. In the arithmetic circuit 75, the output data of the IDCT circuit 74 and the output data of the arithmetic circuit 83 are added and output as a reproduction image of the upper layer, supplied to the frame memory group 76, and then the predicted image of the image data to be decoded Use as data.
[0039]
In the above description, the processing of the luminance signal has been described, but the processing of the color difference signal is similarly performed. However, in this case, the motion vector used is a luminance signal halved in the vertical and horizontal directions.
[0040]
Although the MPEG system has been described above, various other high-efficiency encoding systems for moving images have been standardized. For example, ITU-T prescribes H.261 and H.263 as the main encoding methods for communication. H.261 and H.263 are basically a combination of motion-compensated predictive coding and DCT transform coding as in the MPEG system, and the details of the header information differ, but the image signal coding device ( The encoder and the image signal decoding device (decoder) have the same configuration.
[0041]
Also in the above-described MPEG system, standardization of a new high-efficiency encoding system for moving image signals called MPEG4 is in progress. A major feature of MPEG4 is that it is possible to encode and process an image in units of objects (divide it into a plurality of images). On the decoding side, an image signal of each object, that is, a plurality of image signals is synthesized to reconstruct one image.
[0042]
For example, a chroma key method is used for an image composition system that composes a plurality of images to form one image. This is a method in which a predetermined object is photographed in front of a background of a specific uniform color such as blue, an area other than blue is extracted therefrom, and is synthesized with another image. At this time, a signal indicating the extracted region is called a key signal.
[0043]
Next, a method for encoding a composite image will be described with reference to FIG. Image F1 is the background and image F2 is the foreground. The foreground F2 is an image that is generated by shooting in front of a background of a specific color and extracting an area other than that color. At this time, the signal indicating the extracted region is the key signal K1. The synthesized image F3 is synthesized using these F1, F2, and K1. When this image is encoded, normally, F3 is directly encoded by an encoding method such as MPEG. At this time, information such as the key signal is lost, and it becomes difficult to re-edit and re-synthesize the image such that the foreground F2 remains unchanged and only the background F1 is changed.
[0044]
On the other hand, as shown in FIG. 20, it is also possible to configure the bit stream of the image F3 by separately encoding the images F1, F2 and the key signal K1, and multiplexing the respective bit streams. is there.
[0045]
FIG. 21 shows a method for obtaining the composite image F3 by decoding the configured bitstream as shown in FIG. The bit stream is decomposed into F1, F2 and K1 bitstreams by demultiplexing, and each is decoded to obtain decoded images F1 ′, F2 ′ and a decoded key signal K1 ′. At this time, if F1 ′ and F2 ′ are synthesized in accordance with the key signal K1 ′, a decoded synthesized image F3 ′ can be obtained. In this case, re-editing and resynthesizing can be performed such that the foreground F2 ′ is left as it is, and only the background F1 ′ is changed with the bit stream as it is.
[0046]
As described above, in MPEG4, each image sequence constituting a composite image such as images F1 and F2 is called VO (VideoObject). An image frame at a certain time of VO is called VOP (Video Object Plane). VOP consists of luminance and color difference signals, and key signals. An image frame means one image at a predetermined time, and an image sequence means a set of image frames at different times. That is, each VO is a set of VOPs at different times. Each VO varies in size and position depending on the time. That is, the size and position of VOPs belonging to the same VO are different.
[0047]
The configurations of the encoder and decoder for encoding and decoding in units of objects described above are shown in FIGS. FIG. 22 shows an example of an encoder. The input image signal is first input to the VO configuration circuit 101. The VO configuration circuit 101 divides an input image for each object and outputs an image signal representing each object (VO). Each VO image signal consists of an image signal and a key signal. The image signal output from the VO configuration circuit 101 is output to the VOP configuration circuits 102-0 to 102-n for each VO. For example, the VO 0 image signal and key signal are input to the VOP configuration circuit 102-0, the VO 1 image signal and key signal are input to the VOP configuration circuit 102-1, and so on. The signal and the key signal are input to the VOP configuration circuit 102-n.
[0048]
In the VO component circuit 101, for example, in the case of an image signal generated with a chroma key as shown in FIG. 20, the VO is composed of each image signal and its key signal as it is. For an image that has no key signal or has been lost, image region segmentation is performed, a predetermined region is extracted, a key signal is generated, and is set to VO.
[0049]
The VOP configuration circuits 102-0 to 102-n extract a minimum rectangular portion including an object in the image from each image frame. At this time, however, the number of pixels in the horizontal and vertical directions of the rectangle is a multiple of 16. The VOP configuration circuits 102-0 to 102-n extract the image signals (luminance and color difference signals) and key signals included in the above-described rectangle and output them. It also outputs a flag indicating the size of the VOP (VOP size) and a flag indicating the position of the VOP in absolute coordinates (VOP POS).
[0050]
Output signals from the VOP configuration circuits 102-0 to 102-n are input to the VOP encoding circuits 103-0 to 103-n and encoded. Outputs of the VOP encoding circuits 103-0 to 103-n are input to the multiplexing circuit 104, configured as one bit stream, and output to the outside as a bit stream.
[0051]
FIG. 23 shows an example of a decoder. The multiplexed bit stream is demultiplexed by the demultiplexing circuit 111 and decomposed into bit streams of each VO. The bit stream of each VO is input to the VOP decoding circuits 112-0 to 112-n and decoded. The VOP decoding circuits 112-0 to 112-n decode the VOP image signal, the key signal, the VOP size flag (VOP size), and the VOP absolute position flag (VOP POS). , Input to the image reconstruction circuit 113. The image reconstruction circuit 113 synthesizes an image using each VOP image signal, a key signal, a size flag (VOP size), and a position in absolute coordinates (VOP POS), and outputs a reproduced image. .
[0052]
Next, an example of the VOP encoding circuit 103-0 (the other VOP encoding circuits 103-1 to 103-n are configured similarly) will be described with reference to FIG. The image signal and key signal constituting each VOP are input to the image signal encoding circuit 121 and the key signal encoding circuit 122, respectively. The image signal encoding circuit 121 performs encoding processing by a method such as MPEG or H.263. The key signal encoding circuit 122 performs encoding processing using, for example, DPCM. There is also a method of encoding a difference signal by performing motion compensation using a motion vector detected by the image signal encoding circuit 121 when encoding a key signal. The bit amount generated by the key signal encoding is input to the image signal encoding circuit 121 and controlled to have a predetermined bit rate.
[0053]
The bit stream of the encoded image signal (motion vector and texture information) and the bit stream of the key signal are input to the multiplexing circuit 123, configured as one bit stream, and output via the transmission buffer 124.
[0054]
FIG. 25 illustrates a configuration example of the VOP decoding circuit 112-0 (the other VOP decoding circuits 112-1 to 112-n are configured similarly). First, the bit stream is input to the demultiplexing circuit 131 and is decomposed into a bit stream of an image signal (motion vector and texture information) and a bit stream of a key signal, and the image signal decoding circuit 132 and the key signal decoding circuit 133 , Respectively. In this case, when encoding is performed with motion compensation of the key signal, the motion vector decoded by the image signal decoding circuit 132 is input to the key signal decoding circuit 133 and used for decoding.
[0055]
The method for encoding an image for each VOP has been described above. This method is currently being standardized as MPEG4 in ISO-IEC / JTC1 / SC29 / WG11. However, a method for efficiently encoding each VOP as described above has not been established yet, and a function such as scalability has not been established.
[0056]
Hereinafter, a method for performing scalable coding of an image in units of objects will be described. As described above, the rendering circuit 155 pastes the texture recorded in the texture memory 152 to the polygon regardless of the image format, whether it is a moving image or a still image, and the content thereof. What can be pasted to one polygon is always one texture stored in the memory, and a plurality of textures cannot be pasted to one polygon. In many cases, the image is compressed and transmitted, and after the compressed bit stream is decoded on the terminal side, the image is stored in a predetermined texture pasting memory.
[0057]
In the conventional case, the number of image signals generated by decoding a bit stream is always one. For example, when an MP @ ML bit stream in MPEG is decoded, one image sequence is decoded. In the case of scalability in MPEG2, when a lower-layer bitstream is decoded, a low-quality image is obtained, and when a lower-layer and upper-layer bitstream is decoded, a high-quality image signal is obtained. In either case, one image sequence is decoded.
[0058]
However, in the case of a system such as MPEG4 that encodes an image in object units, the situation is different. That is, one object may be composed of a plurality of bit streams. In such a case, a plurality of images are obtained for each bit stream. Therefore, for example, a texture cannot be pasted on a three-dimensional object described in VRML or the like.
[0059]
As a method for solving this, it is conceivable to assign one VRML node (polygon) to one image object (VO). For example, in the case of FIG. 21, it can be considered that the background F1 ′ is assigned to one node, and the foreground F2 ′ and the key signal K1 ′ are assigned to one node. However, if one image object consists of multiple bitstreams and multiple images are generated during decoding, the following problems But is there. This will be described with reference to FIGS.
[0060]
A description will be given taking a three-layer scalable coding as an example. In the case of three-layer scalable coding, in addition to the lower layer (base layer), there are two upper layers, namely, a first upper layer (enhancement layer 1, hereinafter referred to as upper layer 1 as appropriate) and a second upper layer ( There is an enhancement layer 2 (hereinafter referred to as upper layer 2 as appropriate). Compared with the image decoded up to the first upper layer, the image decoded up to the second upper layer has improved image quality. Here, the improvement in image quality is the spatial resolution in the case of spatial scalable coding, the frame rate in the case of temporal scalable coding, and the image quality in the case of SNR (Single to Noise Ratio) scalable coding. SNR.
[0061]
In the case of MPEG4 encoded in object units, the relationship between the first upper layer and the second upper layer is one of the following.
(1) The second upper layer includes all areas of the first upper layer.
(2) The second upper layer corresponds to a partial region of the first upper layer.
(3) The second upper layer corresponds to a wider area than the first upper layer.
[0062]
The relationship (3) exists when scalable coding of three or more layers is performed. This is because the first upper layer corresponds to a partial region of the lower layer and the second upper layer includes all the regions of the lower layer, or the first upper layer is a partial region of the lower layer. Correspondingly, the second upper layer corresponds to a wider area than the first upper layer and corresponds to a partial area of the lower layer. In the case of the relationship (3), when decoding up to the first upper layer, only a part of the lower layer image is improved in image quality, and when decoding up to the second upper layer, all of the larger area or lower layer images The image quality of the area is improved. In the relationship (3), the shape of the VOP may be a rectangle or an arbitrary shape.
[0063]
FIG. 26 to FIG. 31 show examples of spatially scalable coding with three layers. FIG. 26 shows an example in which the VOPs are all rectangular in the spatial scalability in the relationship (1). FIG. 27 shows an example of the spatial scalability in the relationship (2) when the VOP shape is a rectangle. Further, FIG. 28 shows an example of the case where the VOP shapes of all layers are rectangular in the spatial scalability in the relationship (3). FIG. 29 shows the spatial scalability in the relationship (3), where the VOP shape of the first upper layer is an arbitrary shape, and the VOP shapes of the lower layer and the second upper layer are rectangular. An example is shown. FIG. 30 and FIG. 31 show an example of the spatial scalability in the relationship (1), where the VOP has a rectangular shape and an arbitrary shape, respectively.
[0064]
Here, as shown in FIG. 26, when the image quality of the entire image is improved, it is sufficient to display one image with the highest image quality as in the conventional scalable encoding such as MPEG2. However, there are cases as shown in FIG. 27, FIG. 28, and FIG. 29 in MPEG4 encoded in object units. For example, in the case of FIG. 27, when the bitstreams of the lower layer and the upper layers 1 and 2 are decoded, after the resolution conversion of the images of the lower layer and the upper layer 1, the two image sequences after the resolution conversion are converted into the upper layer 2 The entire image is reconstructed by combining with the decoded image sequence. In the case of FIG. 29, only the upper layer 1 and the lower layer may be decoded, and only the image of the upper layer 1 may be output and synthesized with another image sequence decoded from another bitstream.
[0065]
[Problems to be solved by the invention]
As described above, when an image is encoded in units of objects, a method of simply assigning one node to one object generates a texture when a plurality of images are generated for one object. As a result, there is a problem that it cannot be pasted to the object.
[0066]
The present invention has been made in view of such a situation, and even when a plurality of images are generated for one object, the images can be reliably pasted on the object as a texture. Is.
[0067]
[Means for Solving the Problems]
The present invention of The image signal multiplexing apparatus selects a scene descriptor indicating spatial configuration information describing a predetermined object, and selects a bit stream that constitutes the predetermined object from a plurality of hierarchically encoded bit streams. Selecting means for selecting; generating means for generating an object descriptor indicating information relating to an object composed of the selected bitstream; a start code; a selected scene descriptor and bitstream; and an generated object descriptor And multiplexing means for outputting in the order of a start code, a scene descriptor, a predetermined number of object descriptors, and a predetermined number of bitstreams.
[0068]
The present invention of In the image signal multiplexing method, a scene descriptor indicating spatial configuration information describing a predetermined object is selected, and a bit stream constituting the predetermined object is selected from a plurality of hierarchically encoded bit streams. A selection step to select, a generation step to generate an object descriptor indicating information about an object comprising the selected bitstream, a start code, a selected scene descriptor and bitstream, and a generated object descriptor And a multiplexing step of outputting in order of a start code, a scene descriptor, a predetermined number of object descriptors, and a predetermined number of bitstreams.
[0069]
The present invention of The recording medium selects a scene descriptor indicating spatial configuration information describing a predetermined object, and selects a bit stream constituting the predetermined object from a plurality of hierarchically encoded bit streams. A step of generating an object descriptor indicating information about an object comprising the selected bitstream; and multiplexing the start code, the selected scene descriptor and bitstream, and the generated object descriptor , A program for causing a computer to execute processing including a start code, a scene descriptor, a predetermined number of object descriptors, and a multiplexing step for outputting in the order of a predetermined number of bitstreams.
[0078]
The transmission medium according to claim 20 includes spatial configuration information describing an object, bit streams of a plurality of layers having different qualities constituting the object, and dependency information indicating dependency relationships of information between different bit streams. Based on the dependency information, the separation step for separating the information on the spatial configuration information, the bit streams of the plurality of layers constituting the object, and the information on the object from the multiplexed bit stream in which the information on the object including at least is multiplexed and transmitted A spatial configuration information describing a predetermined object, or a control step for controlling the processing in the separation step to select a bit stream of a plurality of layers constituting the object, and an analysis step for analyzing the selected spatial configuration information And multiple levels of bitstreams A decoding step for decoding the output signal, a mixing step for mixing output signals corresponding to the same object among the output signals decoded in the decoding step, and mixing with the output data analyzed in the analysis step based on the information about the object A program including a reconstruction step of reconstructing an image signal from the output signal mixed in the step is transmitted.
[0079]
The present invention of In the image signal multiplexing apparatus and method, and the recording medium program, a scene descriptor indicating spatial configuration information describing a predetermined object is selected, and a plurality of hierarchically encoded bitstreams are selected. A bitstream comprising a given object is selected, an object descriptor is generated indicating information about the object comprising the selected bitstream, a start code, the selected scene descriptor and bitstream are generated, and The object descriptors are multiplexed and output in the order of a start code, a scene descriptor, a predetermined number of object descriptors, and a predetermined number of bitstreams.
[0083]
DETAILED DESCRIPTION OF THE INVENTION
Embodiments of the present invention will be described below. First, the bit stream multiplexer and demultiplexer in the first embodiment will be described with reference to FIG. In the following description, encoded audio and video bit streams (Elementary Stream (ES)) are described as being recorded in advance in a predetermined storage device 202. The bit stream may be directly input from the multiplexing device to the multiplexing circuit 203 without passing through the storage device 202. Hereinafter, the encoding and decoding methods will be described assuming the MPEG4 method, but any method can be applied in the same manner as long as the image is divided into a plurality of images and encoded.
[0084]
The storage device 202 includes a bit stream ES (Elementary Stream) corresponding to each AV (audio and video) object, object stream information OI necessary for decoding each bit stream, and a two-dimensional or three-dimensional scene. A scene descriptor SD (Scene Descriptor) describing (a virtual space constituted by images to be transmitted) is recorded. Here, the object stream information OI includes, for example, a buffer size necessary for decoding, a time stamp of each access unit (frame or VOP), and the like. Details will be described later.
[0085]
In the object information OI, all the information of the bit stream ES corresponding to each AV (audio and video) object is described. The object descriptor generation circuit 204 generates an object descriptor OD (Object Descriptor) corresponding to the object information OI supplied from the storage device 202.
[0086]
The multiplexing circuit 203 multiplexes the bit stream ES and the scene descriptor SD recorded in the storage device 202 and the object descriptor OD supplied from the object descriptor generation circuit 204 in a predetermined order. The bit stream FS is transmitted.
[0087]
Here, the configuration of the bit stream forming each object will be described. For example, a scene as shown in FIG. 21 includes two objects, a background F1 ′ and a foreground F2 ′. However, the key signal K1 ′ and the foreground F2 ′ are composed of one bit stream ES. Therefore, in the case of FIG. 21, when composed of two video objects VO and not using scalable coding, each VO is composed of one bit stream ES.
[0088]
In the case of FIGS. 26 to 29, the frame is composed of one video object VO. However, in this case, since scalable encoding is performed, one video object VO is composed of three bit streams ES. FIG. 26 to FIG. 29 show examples of scalable encoding of three layers, but the number of layers may be arbitrary.
[0089]
In FIGS. 30 and 31, the scene is composed of two video objects VO of the background (FIG. 30) and the foreground (FIG. 31), and each video object VO is composed of three bit streams ES.
[0090]
The user can arbitrarily set which video object is displayed by sending a request signal from the terminal, and which layer is displayed in the case of scalable coding.
[0091]
In the embodiment of FIG. 1, the user transmits a request signal REQ for specifying a necessary video object and a bit stream from an external terminal (not shown) to the transmission side. The request signal REQ is supplied to the stream control circuit 201. Object stream information OI of the bit stream of each video object is recorded in the storage device 202. As described above, the object stream information OI includes, for example, information indicating how many bitstreams a given object is composed of, information necessary for decoding each bitstream, buffer size, and other information for decoding. Contains information such as whether a bitstream is required.
[0092]
The stream control circuit 201 refers to the object stream information OI supplied from the storage device 202 according to the request signal REQ, determines which bit stream to transmit, and multiplexes the stream request signal SREQ into the multiplexing circuit 203 and the storage device. 202 and the object descriptor generation circuit 204. Further, the storage device 202 reads a predetermined bit stream ES and scene descriptor SD in accordance with the stream request signal SREQ and outputs the read bit stream ES and the scene descriptor SD to the multiplexing circuit 203.
[0093]
The object descriptor generation circuit 204 reads the object stream information OI related to the bit stream of each object (VO) recorded in the storage device 202 according to the stream request signal SREQ, and information on the bit stream requested by the stream request signal SREQ. Extract only the object descriptor OD. Also, the object descriptor occurrence time Road 204 generates an ID number OD_ID indicating which object corresponds to the object descriptor OD. For example, in the case of FIG. 26, when only the lower layer and the upper layer 1 are requested for a predetermined object, the object descriptor generation circuit 204 uses only the information of the lower layer and the upper layer 1 as the object stream information OI. And an object descriptor OD is generated, and an ID number OD_ID indicating the object is generated and written to the object descriptor OD. Then, the object descriptor OD generated in this way is supplied to the multiplexing circuit 203. Details of the syntax of the object descriptor OD and the object stream information OI and the scene descriptor SD will be described later.
[0094]
Next, the operation of the multiplexing circuit 203 will be described with reference to FIG. The multiplexing circuit 203 is supplied with bit streams ES1 to ESn to be transmitted in accordance with the stream request signal SREQ. Each bit stream ES1 to ESn is supplied to the switch 231. Similarly, the scene descriptor SD and the object descriptor OD are supplied to the switch 231. Further, the multiplexing circuit 203 is provided with a start code generation circuit 232, and the start code generated by the start code generation circuit 232 is also supplied to the switch 231. The switch 231 outputs data obtained by switching connections in a predetermined order to the outside as a multiplexed bit stream FS.
[0095]
First, the start code generated by the start code generation circuit 232 is output as the multiplexed bit stream FS. Next, the connection of the switch 231 is switched, and the scene descriptor SD is output. After the scene descriptor SD is output, the connection of the switch 231 is switched again, and the object descriptor OD is output. Since there are as many object descriptors OD as there are objects, the same number of object descriptors are output. FIG. 2 shows a case where the number of objects is three. After the object descriptor OD is output, the connection of the switch 231 is switched again, and the bit streams ES1 to ESn are selected and output for each predetermined data size. As shown in FIG. 1, the multiplexed bit stream ES is supplied to the demultiplexing circuit 205 after passing through a predetermined transmission path.
[0096]
Next, details of the demultiplexing circuit 205 will be described with reference to FIG. First, the multiplexed bit stream FS is supplied to the switch 241. First, the switch 241 recognizes each subsequent data by detecting a start code. After detecting the start code, the scene descriptor SD is read from the switch 241 and output. Next, the connection of the switch 241 is changed, and the object descriptor OD is read and output. There are as many object descriptors OD as the number of objects, and they are output sequentially. After all the object descriptors OD are output, the connection of the switch 241 is changed again, and each bit stream ES1 to ESn is read and output according to a predetermined connection.
[0097]
The read scene descriptor SD is supplied to a parsing circuit (parser) 208 and analyzed as shown in FIG. The parsed scene description is supplied to the reconstruction circuit 209 as three-dimensional object information. The three-dimensional object information is actually composed of information such as nodes and polygons, but in the following description, it will be described as a node as appropriate.
[0098]
Further, the read object descriptor OD is supplied to the parsing circuit (parser) 206 and analyzed as shown in FIG. The parsing circuit 206 identifies the type and number of necessary decoders, and causes the necessary decoders 207-1 to 207-n to supply the respective bit streams ES1 to ESn from the demultiplexing circuit 205. Further, the buffer amount necessary for decoding each bit stream is read from the object descriptor OD, and is output from the syntax analysis circuit 206 to each decoder 207-1 to 207-n. Each of the decoders 207-1 to 207-n is initialized based on initialization information such as a buffer size supplied from the syntax analysis circuit 206 (that is, transmitted by the object descriptor OD). Further, the syntax analysis circuit 206 reads the ID number OD_ID of each object descriptor OD in order to identify which object each bitstream ES1 to ESn belongs to. Then, the ID number OD_ID of each object descriptor OD is output from the syntax analysis circuit 206 to the decoders 207-1 to 207-n that decode the bit stream described in the object descriptor OD.
[0099]
Each of the decoders 207-1 to 207-n decodes the bit stream based on a predetermined decoding method corresponding to encoding, and outputs a video or audio signal to the reconstruction circuit 209. Each decoder 207-1 to 207-n outputs an ID number OD_ID indicating to which object the image belongs to the reconstruction circuit 209. In the case of an image signal, each of the decoders 207-1 to 207-n decodes a signal (POS, SZ) indicating the position and size from the bit stream and outputs the decoded signal to the reconstruction circuit 209. Further, in the case of an image signal, the decoders 207-1 to 207-n decode a signal indicating a transparency (key signal) from the bit stream and output the decoded signal to the reconstruction circuit 209.
[0100]
Next, the correspondence between signals for reconstructing an image and the reconstruction circuit 209 will be described with reference to FIGS. 4 and 5. FIG. FIG. 4 shows an example in the case where scalable coding is not performed, and FIG. 5 shows an example in the case where scalable coding is performed.
[0101]
In FIG. 4, the reconstruction circuit 209 includes a synthesis circuit 252, and an image signal generated by the synthesis circuit 252 is supplied to the display 251 and displayed. In FIG. 4, the synthesis circuit 252 and the display 251 are shown as the reconstruction circuit 209, but this is to show how the image constituted by the synthesis circuit 252 is shown on the display 251. In practice, the reconstruction circuit 209 does not include a display.
[0102]
In FIG. 4, a rectangular image sequence and a triangular pyramid generated by CG are displayed on the screen of the display 251. The decrypted texture is also attached to the object of the triangular pyramid. Here, the texture may be a moving image or a still image.
[0103]
FIG. 4 shows the correspondence between the scene descriptor SD and the output screen. As the scene descriptor SD, for example, a descriptor such as VRML is used. The scene descriptor SD is composed of a group of descriptions called nodes. There is a parent (root) node SD0 describing how to arrange each object in the entire image. As a child node, there is a node SD1 describing information about a triangular pyramid. In addition, information regarding a rectangular plane on which an image is pasted is described in a node SD2 as a child node of the root node SD0. In the example of FIG. 4, the image signal is composed of three video objects VO. Information relating to the background as the first video object VO is described in the node SD2. In addition, information regarding a plane for attaching the sun as the second video object VO is described in the node SD3. Further, information regarding a plane on which a person as the third video object VO is pasted is described in the node SD4. Nodes SD3 and SD4 are child nodes of node SD2.
[0104]
Therefore, one scene descriptor SD is constituted by the nodes SD0 to SD4. Each node SD0 to SD4 corresponds to one three-dimensional or two-dimensional object. In the example of FIG. 4, the node SD0 is an object of the entire scene, the node SD1 is a triangular pyramid object, the node SD2 is a background object, the node SD3 is a sun object, and the node SD4 is a person object. It corresponds. When a texture is pasted to each node, a flag indicating which bit stream corresponds to each node is required. In order to identify this, the ID number OD_ID of the object descriptor supplied from the decoder of the corresponding bit stream is described in each node. As a result, one object descriptor OD corresponds to one node. Thus, one video object VO is pasted on one two-dimensional or three-dimensional object.
[0105]
Each node SD0 to SD4 constituting the scene descriptor SD is interpreted by the syntax analysis circuit 208 and supplied to the synthesis circuit 252 of the reconstruction circuit 209 as three-dimensional object information. Also, the decoders 207-1 to 207-4 are supplied with the bitstreams ES1 to ES4 from the demultiplexing circuit 205, and are supplied with the ID number OD_ID of the corresponding object descriptor OD from the syntax analysis circuit 206. . Each decoder 207-1 to 207-4 decodes the bit stream, and in addition to an ID number OD_ID and a decoded signal (image or audio), in the case of an image, a key signal and a signal (POS) indicating the position and size of the image , SZ) is supplied to the synthesis circuit 252 of the reconstruction circuit 209 as a decoded signal. Here, the position of the image means a relative position with respect to the parent node one level above that node belongs.
[0106]
A configuration example of the synthesis circuit 252 is shown in FIG. In FIG. 6, parts corresponding to those shown in FIG. 14 are given the same reference numerals. Input 3D object information (including nodes SD0 to SD4 and polygon information), image signal (Texture), key signal (key signal), ID number OD_ID, position and size signals (POS, SZ) are Are supplied to the object composition circuits 271-1 to 271-n, respectively. One object composition circuit 271-i corresponds to one node SDi (i = 1, 2, 3,..., N). The object synthesis circuit 271-i receives the decoded signal having the ID number OD_ID indicated by the node SDi from the decoder 207-i, and in the case of an image signal, pastes it on the generated two-dimensional or three-dimensional object. As described above, when the ID number OD_ID and the decoded signal are supplied to the corresponding object synthesis circuit 271-i, it is necessary to search which node each decoded signal corresponds to. Therefore, the correlation is recognized by comparing the ID number OD_ID supplied to the reconfiguration circuit 209 with the ID number OD_ID including the node. Based on the recognition result, the decoded signal is supplied to the object composition circuit 271-i to which the corresponding node is supplied.
[0107]
The texture (image signal) to be pasted, the signal indicating the transparency (key signal), and the signal indicating the position and size (VOP, SZ) supplied from the decoder 207-i are predetermined in the memory group 151-i. Is stored in the area. Similarly, the node (two-dimensional or three-dimensional object information) supplied from the syntax analysis circuit 208 is stored in a predetermined storage area of the memory group 151-i. The texture (image signal) is stored in the texture memory 152-i, the signal indicating the transparency (key signal) and the ID number OD_ID are stored in the grayscale memory 153-i, and the node is stored in the three-dimensional information memory 154-i. The An ID number OD_ID is supplied and used to identify the object. Furthermore, the signals (POS, SZ) indicating the position and the magnitude may be stored in any memory, but for example, in this example, are stored in the gray scale memory 153-i. Here, the three-dimensional object information includes polygon formation information and illumination information. A signal indicating the position and size is stored at a predetermined position in the memory group 151-i.
[0108]
The rendering circuit 155-i forms a two-dimensional or three-dimensional object with polygons based on the nodes recorded in the three-dimensional information memory 154-i. The rendering circuit 155-i reads a signal indicating a predetermined texture and transparency from the texture memory 152-i and the grayscale memory 153-i and pastes it on the generated three-dimensional object. The signal indicating the transparency indicates the transparency of the texture at the corresponding position, and indicates the transparency of the object at the position where the texture at the corresponding position is pasted. The rendering circuit 155-i supplies the signal with the texture pasted to the two-dimensional conversion circuit 156. Similarly, a signal indicating the position and size of the image (relative position with respect to the parent node) is read out from a predetermined position (in this example, the grayscale memory 153-i) of the memory group 151-i, The data is output to the two-dimensional conversion circuit 156.
[0109]
The two-dimensional conversion circuit 156 is supplied with two-dimensional or three-dimensional objects to which textures are pasted from the object composition circuits 271-1 to 271-n corresponding to the number of nodes. The two-dimensional conversion circuit 156 maps a three-dimensional object to a two-dimensional plane and converts it into a two-dimensional image signal based on viewpoint information supplied from the outside and signals (POS, SZ) indicating the position and size of the image. To do. The three-dimensional object converted into the two-dimensional image signal is further output to the display 251 and displayed. When all the objects are two-dimensional objects, output data from the rendering circuits 155-1 to 155-n are synthesized according to the transparency (key signal) and a signal indicating the position and size of the image and output. Is done. In this case, conversion based on the viewpoint is not performed.
[0110]
Next, an example when the scalable coding of FIG. 5 is performed will be described. In this case, the reconfiguration circuit 209 includes a mixing circuit 261 and a synthesis circuit 252, and an image signal generated by the mixing circuit 261 and the synthesis circuit 252 is supplied to the display 251 and displayed. In FIG. 5, as in FIG. 4, the mixing circuit 261, the synthesis circuit 252, and the display 251 are shown as the reconstruction circuit 209, but this shows which image is composed of the mixing circuit 261 and the synthesis circuit 252. The display 251 does not include a display in the reconstruction circuit 209 in practice. In the example of FIG. 5, a rectangular image sequence and a triangular pyramid generated by CG are displayed on the display 251. The decrypted texture is also attached to the object of the triangular pyramid. Here, the texture may be a moving image or a still image.
[0111]
FIG. 5 shows the correspondence between the scene descriptor SD and the output screen. In the case of FIG. 5, there is a parent node SD0 describing how to arrange each object in the entire image. As its child nodes, there are a node SD1 in which information about a triangular pyramid is described and a node SD2 in which information about a rectangular plane to which an image is pasted are described. Unlike the example of FIG. 4, the image signal corresponding to the node SD2 in FIG. 5 is composed of one video object VO. However, in the case of FIG. 5, it is assumed that the image corresponding to the node SD2 has been subjected to three-layer scalable coding, and a video object VO is composed of three video object layers. In addition, although FIG. 5 illustrates an example of three layers, the number of layers may be arbitrary.
[0112]
Each node SD0 to SD2 constituting the scene descriptor SD is interpreted by the syntax analysis circuit 208, and the analysis result is supplied to the synthesis circuit 252. Bit streams ES1 to ESn are supplied from the demultiplexing circuit 205 to the decoders 207-1 to 207-4, and the ID number OD_ID of the corresponding object descriptor OD is supplied from the syntax analysis circuit 206. After the decoder 207-1 to 207-4 decodes the bit stream, in addition to the decoded signal, in the case of an image, a key signal, a signal (VOP, SZ) indicating the position and size of the image, and a signal FR indicating the magnification are received. This is supplied to the mixing circuit 261. Here, the position of the image means the relative position of each layer in the same video object VO. Each decoder 207-1 to 207-4 supplies the ID number OD_ID to the synthesis circuit 252. Since the configuration of the synthesis circuit 252 is the same as that shown in FIG. 6, the description thereof is omitted here.
[0113]
As described above, when the ID number OD_ID and the decoded signal are supplied to the corresponding object synthesis circuit 271-i, it is necessary to search which node each decoded signal corresponds to. Therefore, the correlation is recognized by comparing the ID number OD_ID supplied to the reconfiguration circuit 209 with the ID number OD_ID included in the node. Based on the recognition result, the decoded signal is supplied to the object composition circuit 271-i to which the corresponding node is supplied.
[0114]
In the case of scalable coding, the bit stream of each layer (VOL) belongs to the same video object VO and therefore has the same ID number OD_ID. One video object VO corresponds to one node, and one texture memory 152-i corresponds to one video object VO corresponding to the video object VO. Therefore, in the case of scalable coding, the output of each layer (the output of the decoders 207-2 to 207-4) is once supplied to the mixing circuit 261 and synthesized into one image sequence.
[0115]
The mixing circuit 261 first synthesizes the image of each layer based on the image signal, the key signal, the signal indicating the magnification, and the signal indicating the position and size of the image supplied from each decoder 207-2 to 207-4. Thereafter, the data is output to the synthesis circuit 252. Therefore, the composition circuit 252 can correspond one image sequence to one object.
[0116]
For example, when scalable coding as shown in FIG. 29 is performed and the lower layer and the upper layer 1 are transmitted and decoded, the image signal of the lower layer is subjected to resolution conversion based on the signal FR indicating the magnification. . Next, the decoded image of the upper layer 1 is combined with this image at a position corresponding to the decoded image according to the key signal.
[0117]
The image sequence synthesized by the mixing circuit 261 is supplied to the synthesis circuit 252. The composition circuit 252 constructs an image in the same manner as in FIG. 4 and outputs it to the display 251 to obtain a final output image.
[0118]
As described above, in this example, one object (video object VO in the case of video) is allocated to one node, and the mixing circuit is provided in the previous stage of the memory group 151 that stores the texture, three-dimensional information, and the like in the rendering circuit 155. 261 is provided, and a plurality of images are mixed according to a predetermined key signal and then recorded in the texture memory 152 to enable texture mapping of an image signal having a plurality of resolutions.
[0119]
As described above, in the example of FIG. 1, for a certain object, a descriptor that records the system information of the bit stream that constitutes the object is generated, and information on the bit stream that must be decoded at that time is generated. Only the bit stream described in the descriptor is decoded, so that a combination of the decodable bit streams can be identified and a predetermined signal can be decoded. In this case, the descriptor is generated and transmitted one-to-one on the transmission side and the reception side.
[0120]
Next, FIGS. 7 to 9 show the structure of the object descriptor OD. FIG. 7 shows the overall configuration (syntax) of the object descriptor OD.
[0121]
Node ID is a 10-bit flag indicating the ID number of the descriptor. Corresponds to the above OD_ID. StreamCount is an 8-bit flag indicating the number of bit streams ES included in the object descriptor. This number of information, ES_Descriptor, necessary for decoding the bitstream ES is transmitted. Furthermore, extensionFlag is a flag indicating whether or not to transmit other descriptors. When this value is 1, other descriptors are transmitted.
[0122]
ES_Descriptor is a descriptor indicating information on each bit stream. FIG. 8 shows the configuration (syntax) of ES_Descriptor. ES_Number is a 5-bit flag indicating an ID number for identifying the bit stream. StreamType is an 8-bit flag indicating the format of the bit stream, for example, MPEG2 video. Furthermore, QoS_Descriptor is an 8-bit flag indicating a request to the network at the time of transmission.
[0123]
ESConfigParams is a descriptor in which information necessary for decoding the bitstream is described, and its configuration (syntax) is shown in FIG. Details of ESConfigParam are described in MPEG4 System VM.
[0124]
FIG. 10 shows a scene descriptor for pasting a moving image. SFObjectID is a flag indicating an ID number OD_ID that is an ID of an object descriptor of a texture to be pasted. FIG. 11 shows a scene descriptor for pasting a still image. SFObjectID is a flag indicating the ID number OD_ID of the object descriptor of the texture to be pasted. 10 and 11 conform to the VRML node description.
[0125]
Next, FIG. 12 shows a bitstream multiplexing apparatus and a demultiplexing apparatus in the second embodiment. In this embodiment, all bit streams belonging to an object are multiplexed and transmitted. In the first embodiment of FIG. 1, only the bit stream requested from the receiving side is multiplexed and transmitted. At that time, the object descriptor OD was generated according to the bit stream to be transmitted. Since all the bitstreams described in the object descriptor OD are decoded on the receiving side, there is no need to particularly transmit information dependency between the bitstreams.
[0126]
On the other hand, in the second embodiment, the object descriptor OD is stored in the storage device 202 in advance, and all the bit streams recorded in the object descriptor OD are multiplexed and transmitted on the transmission side. To do. At this time, the object descriptor OD in the second embodiment is different from the first embodiment in that the dependency relationship of information between bit streams is described. The other points are the same as those in the first embodiment.
[0127]
The multiplexing circuit 203 reads the scene descriptor SD, the object descriptor OD, and the bit stream group ES recorded in the storage device 202, multiplexes them in a predetermined order, and transmits them. The transmission order and the configuration of the multiplexing circuit 203 are the same as those in the first embodiment. The multiplexed bit stream FS is supplied to the demultiplexing circuit 205 via the transmission path.
[0128]
The user inputs a request signal REQ indicating which object is to be displayed from the terminal. The request signal REQ is supplied to the demultiplexing circuit 205, the syntax analysis circuit 206, and the reconfiguration circuit 209. The parsing circuit 206 analyzes each transmitted object descriptor OD, generates a signal SREQ requesting a necessary bit stream, and supplies the signal SREQ to the demultiplexing circuit 205. When the user requests a predetermined bitstream, the other bitstreams necessary for decoding it and which bitstream is required are recorded in the object descriptor OD.
[0129]
The demultiplexing circuit 205 supplies only the necessary bit stream to the decoders 207-1 to 207-n according to the request signal REQ from the user and the signal SREQ for requesting the necessary bit stream, and the necessary object descriptor OD. Is supplied to the syntax analysis circuit 206. The parsing circuit 206 analyzes the object descriptor OD, and based on the object descriptor OD and the request signal REQ from the user, the initialization information of the decoders 207-1 to 207-n and the ID number OD_ID are assigned to each decoder 207-1. To 207-n. Thereafter, decoding, synthesis, and display are performed in the same manner as in the first embodiment.
[0130]
As described above, in this example, a descriptor (object descriptor) in which system information of a bit stream constituting the object is recorded is generated for an object, and at that time, it is necessary to decode each bit stream. By recording a flag indicating a bitstream and decoding a predetermined bitstream according to the flag described in the descriptor, it is possible to identify a combination of decodable bitstreams and decode a predetermined signal To do. In this case, after the descriptor is generated once on the transmission side, a common descriptor is transmitted to all recipients.
[0131]
In the second embodiment, unlike the first embodiment, the object descriptor OD describes information for identifying another bit stream necessary for decoding a predetermined bit stream. . The object descriptor OD in the second embodiment will be described. The overall configuration of the object descriptor OD is the same as that in the first embodiment shown in FIG.
[0132]
FIG. 13 shows an ES_Descriptor that describes information about each bitstream. isOtherStream is a 1-bit flag that indicates whether another bitstream is required to decode this bitstream. If this value is 0, this bitstream can be decoded alone. When the value of isOtherStream is 1, this bit stream cannot be decoded alone.
[0133]
streamCount is a 5-bit flag indicating how many other bit streams are required. Based on streamCount, ES_Number is transmitted by that number.
[0134]
ES_Number is an ID for identifying a bit stream necessary for decoding. The other configuration of ES_Descriptor is the same as that of the first embodiment. Further, the configuration of ESConfigParams representing information necessary for decoding each bitstream is the same as that in the first embodiment shown in FIG.
[0135]
The above-described processing (multiplexing and demultiplexing) can be realized by a program, and the program can be transmitted (provided) to a user. As a transmission medium, a magnetic disk, CD-ROM, solid In addition to recording media such as memory, communication media such as networks and satellites can be used. Needless to say, the above-described processing can be realized not only as a program but also as hardware.
[0136]
Various modifications and application examples can be considered without departing from the gist of the present invention. Therefore, the gist of the present invention is not limited to the embodiment.
[0137]
【The invention's effect】
The present invention of First Image signal multiplexer And method, and recording medium program According to Duplicate It is possible to texture-map a scalable bitstream in units of objects having several layers.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a configuration example of an image signal multiplexing device and an image signal demultiplexing device according to the present invention.
FIG. 2 is a block diagram illustrating a configuration example of a multiplexing circuit 203 in FIG.
3 is a block diagram showing a configuration example of a demultiplexing circuit 205 in FIG. 1. FIG.
4 is a diagram illustrating a correspondence relationship between signals for reconstructing an image and the reconstruction circuit 209 in FIG. 1;
FIG. 5 is a diagram illustrating a correspondence relationship between signals for reconstructing an image and the reconstruction circuit 209 in FIG. 1;
6 is a block diagram illustrating a configuration example of a synthesis circuit 252 in FIG. 5;
FIG. 7 is a diagram illustrating a configuration of an object descriptor.
FIG. 8 is a diagram illustrating a configuration of an ES_Descriptor.
FIG. 9 is a diagram showing a configuration of ESConfigParams.
FIG. 10 is a diagram illustrating a configuration of a scene descriptor for moving images.
FIG. 11 is a diagram illustrating a configuration of a scene descriptor for a still image.
FIG. 12 is a block diagram illustrating another configuration example of the image signal multiplexing device and the image signal demultiplexing device according to the present invention.
FIG. 13 is a diagram illustrating a configuration of an ES_Descriptor.
FIG. 14 is a block diagram illustrating a configuration example of a conventional object composition circuit.
FIG. 15 is a block diagram illustrating a configuration example of a conventional image signal encoding device.
FIG. 16 is a block diagram illustrating a configuration example of a conventional image signal decoding apparatus.
FIG. 17 is a block diagram illustrating another configuration example of a conventional image signal encoding device.
FIG. 18 is a block diagram illustrating another configuration example of a conventional image signal decoding device.
FIG. 19 is a diagram for explaining conventional image composition;
FIG. 20 is a diagram for explaining image composition;
FIG. 21 is a diagram for explaining image composition;
FIG. 22 is a block diagram showing still another configuration example of a conventional image signal encoding device.
FIG. 23 is a block diagram illustrating still another configuration example of a conventional image signal decoding device.
24 is a block diagram illustrating a configuration example of the VOP encoding circuit 103-0 in FIG.
25 is a block diagram illustrating a configuration example of the VOP decoding circuit 112-0 in FIG.
FIG. 26 is a diagram illustrating an image object.
FIG. 27 is a diagram illustrating an image object.
FIG. 28 is a diagram illustrating an image object.
FIG. 29 is a diagram illustrating an image object.
FIG. 30 is a diagram illustrating an image object.
FIG. 31 is a diagram illustrating an image object.
[Explanation of symbols]
201 stream control circuit, 202 storage device, 203 multiplexing circuit, 204 object descriptor generation circuit, 205 demultiplexing circuit, 206 syntax analysis circuit, 207-1 to 207-n decoder, 208 syntax analysis circuit, 209 reconfiguration circuit

Claims (4)

所定のオブジェクトを記述する空間構成情報を示すシーン記述子を選択するとともに、スケーラブル符号化されている複数の階層のビットストリームのうち、前記所定のオブジェクトを構成する前記ビットストリームを選択する選択手段と、
選択されたビットストリームで構成される前記オブジェクトに関する情報を示すオブジェクト記述子を生成する生成手段と、
スタートコード、選択された前記シーン記述子およびビットストリーム、並びに生成された前記オブジェクト記述子を多重化し、前記スタートコード、前記シーン記述子、所定数の前記オブジェクト記述子、所定数の前記ビットストリームの順序で出力する多重化手段と
を備える画像信号多重化装置。
Selecting means for selecting a scene descriptor indicating spatial configuration information describing a predetermined object, and selecting the bitstream constituting the predetermined object from a plurality of hierarchically encoded bitstreams; ,
Generating means for generating an object descriptor indicating information on the object composed of the selected bitstream;
The start code, the selected scene descriptor and bitstream, and the generated object descriptor are multiplexed, and the start code, the scene descriptor, the predetermined number of the object descriptors, the predetermined number of the bitstreams are multiplexed. An image signal multiplexing apparatus comprising: multiplexing means for outputting in order.
前記オブジェクト記述子は、そのオブジェクトを記述している空間構成情報を示すフラグ、ビットストリームの数を示すフラグ、またはビットストリームを復号する際に必要な情報の少なくとも1つを含んでいる
請求項1に記載の画像信号多重化装置。
The object descriptor includes at least one of a flag indicating spatial configuration information describing the object, a flag indicating the number of bit streams, and information necessary for decoding the bit stream. 2. An image signal multiplexing device according to 1.
所定のオブジェクトを記述する空間構成情報を示すシーン記述子を選択するとともに、スケーラブル符号化されている複数の階層のビットストリームのうち、前記所定のオブジェクトを構成する前記ビットストリームを選択する選択ステップと、
選択されたビットストリームで構成される前記オブジェクトに関する情報を示すオブジェクト記述子を生成する生成ステップと、
スタートコード、選択された前記シーン記述子およびビットストリーム、並びに生成された前記オブジェクト記述子を多重化し、前記スタートコード、前記シーン記述子、所定数の前記オブジェクト記述子、所定数の前記ビットストリームの順序で出力する多重化ステップと
を含む画像信号多重化方法。
Selecting a scene descriptor indicating spatial configuration information describing a predetermined object, and selecting the bit stream constituting the predetermined object from a plurality of hierarchically encoded bit streams; ,
Generating an object descriptor indicating information about the object composed of the selected bitstream;
The start code, the selected scene descriptor and bitstream, and the generated object descriptor are multiplexed, and the start code, the scene descriptor, the predetermined number of the object descriptors, the predetermined number of the bitstreams are multiplexed. And a multiplexing step for outputting in order.
所定のオブジェクトを記述する空間構成情報を示すシーン記述子を選択するとともに、スケーラブル符号化されている複数の階層のビットストリームのうち、前記所定のオブジェクトを構成する前記ビットストリームを選択する選択ステップと、
選択されたビットストリームで構成される前記オブジェクトに関する情報を示すオブジェクト記述子を生成する生成ステップと、
スタートコード、選択された前記シーン記述子およびビットストリーム、並びに生成された前記オブジェクト記述子を多重化し、前記スタートコード、前記シーン記述子、所定数の前記オブジェクト記述子、所定数の前記ビットストリームの順序で出力する多重化ステップと
を含む処理をコンピュータに実行させるプログラムが記録されている記録媒体
Selecting a scene descriptor indicating spatial configuration information describing a predetermined object, and selecting the bit stream constituting the predetermined object from a plurality of hierarchically encoded bit streams; ,
Generating an object descriptor indicating information about the object composed of the selected bitstream;
The start code, the selected scene descriptor and bitstream, and the generated object descriptor are multiplexed, and the start code, the scene descriptor, the predetermined number of the object descriptors, the predetermined number of the bitstreams are multiplexed. A recording medium on which is recorded a program that causes a computer to execute processing including multiplexing steps that are output in order .
JP20212498A 1997-07-18 1998-07-16 Image signal multiplexing apparatus and method, and transmission medium Expired - Fee Related JP4499204B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP20212498A JP4499204B2 (en) 1997-07-18 1998-07-16 Image signal multiplexing apparatus and method, and transmission medium

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP9-193641 1997-07-18
JP19364197 1997-07-18
JP20212498A JP4499204B2 (en) 1997-07-18 1998-07-16 Image signal multiplexing apparatus and method, and transmission medium

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2010038228A Division JP4930810B2 (en) 1997-07-18 2010-02-24 Image processing apparatus, image processing method, and recording medium

Publications (2)

Publication Number Publication Date
JPH1185966A JPH1185966A (en) 1999-03-30
JP4499204B2 true JP4499204B2 (en) 2010-07-07

Family

ID=26507990

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20212498A Expired - Fee Related JP4499204B2 (en) 1997-07-18 1998-07-16 Image signal multiplexing apparatus and method, and transmission medium

Country Status (1)

Country Link
JP (1) JP4499204B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6650705B1 (en) * 2000-05-26 2003-11-18 Mitsubishi Electric Research Laboratories Inc. Method for encoding and transcoding multiple video objects with variable temporal resolution
AU2006346224A1 (en) * 2005-07-20 2008-05-02 Vidyo, Inc. System and method for jitter buffer reduction in scalable coding
MX2013008311A (en) 2011-02-16 2013-09-06 Panasonic Corp Video encoder, video encoding method, video encoding program, video reproduction device, video reproduction method, and video reproduction program.
WO2012111325A1 (en) * 2011-02-17 2012-08-23 パナソニック株式会社 Video encoding device, video encoding method, video encoding program, video playback device, video playback method, and video playback program
US20170078694A1 (en) * 2014-03-04 2017-03-16 Mitsubishi Electric Corporation Image encoding apparatus, image decoding apparatus, image encoding method, image decoding method, and computer readable medium

Also Published As

Publication number Publication date
JPH1185966A (en) 1999-03-30

Similar Documents

Publication Publication Date Title
JP4930810B2 (en) Image processing apparatus, image processing method, and recording medium
KR100563013B1 (en) Generation of bitstreams containing binary image / audio data multiplexed with code specifying objects in ASCII format
US6031575A (en) Method and apparatus for encoding an image signal, method and apparatus for decoding an image signal, and recording medium
US6330280B1 (en) Method and apparatus for decoding enhancement and base layer image signals using a predicted image signal
US6427027B1 (en) Picture encoding and/or decoding apparatus and method for providing scalability of a video object whose position changes with time and a recording medium having the same recorded thereon
KR100417932B1 (en) Image encoder, image encoding method, image decoder, image decoding method, and distribution media
KR100620270B1 (en) Method and apparatus for transcoding compressed video bitstreams
CN101116340A (en) Apparatus for universal coding for multi-view video
WO2002023914A2 (en) Apparatus and method for conserving memory in a fine granularity scalability coding system
JP2007266749A (en) Encoding method
JP3371191B2 (en) Image signal encoding method and decoding method, and encoding apparatus and decoding apparatus
JP4499204B2 (en) Image signal multiplexing apparatus and method, and transmission medium
WO2007007923A1 (en) Apparatus for encoding and decoding multi-view image
JPH08130733A (en) Device and method for processing moving picture
JP2004537931A (en) Method and apparatus for encoding a scene
JP3263901B2 (en) Image signal encoding method and apparatus, image signal decoding method and apparatus
KR102312668B1 (en) Video transcoding system
JP3318707B2 (en) Image signal encoding device and image signal encoding method, image signal decoding device and image signal decoding method, image signal transmission method, and image signal recording medium
JPH1141558A (en) Device and method for decoding image signal, and transmission medium
JP3318712B2 (en) Image signal encoding device and image signal encoding method, image signal decoding device and image signal decoding method, image signal transmission method, and image signal recording medium
JP2001346214A (en) Image information transform device and method
Angelides et al. Capabilities and Limitations of PC’s in the Networked Multimedia Environment
MXPA98007713A (en) Generation of a bits flow containing binary image / audio data that multiplexes with a code defining an object in format as

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050308

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050308

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080417

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080616

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080715

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080916

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20080922

A912 Removal of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20081114

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100224

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100415

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130423

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees