JP2005045401A - Object generating apparatus and method thereof - Google Patents
Object generating apparatus and method thereof Download PDFInfo
- Publication number
- JP2005045401A JP2005045401A JP2003201159A JP2003201159A JP2005045401A JP 2005045401 A JP2005045401 A JP 2005045401A JP 2003201159 A JP2003201159 A JP 2003201159A JP 2003201159 A JP2003201159 A JP 2003201159A JP 2005045401 A JP2005045401 A JP 2005045401A
- Authority
- JP
- Japan
- Prior art keywords
- bifs
- source
- scene
- size
- information
- 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.)
- Withdrawn
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
【0001】
【発明の属する技術分野】
本発明はオブジェクト生成装置およびその方法に関し、例えば、シーン記述により画面中に配置すべき静止画、動画、コンピュータグラフィクスなどのオブジェクトの生成に関する。
【0002】
【従来の技術】
ディジタルデータ処理能力の向上と通信技術の発展によって、いわゆるマルチメディアを簡単に表現することができるようになり、複数の静止画、動画、音声、ベクトルグラフィクスなどを用いた複雑な表現が一般的になった。このような複合的なマルチメディア(あるいはマルチオブジェクト)表現の方法として、オブジェクトベース符号化方式がある。この具体的な例が、MPEG−4システムと呼ばれれる標準規格(ISO/IEC14496−1)である(例えば、非特許文献1参照)。
【0003】
ISO/IEC14496−1では、MPEG−4のオーディオビジュアルオブジェクトを空間にどのように配置して表示すべきかを示す、BIFS (Binary Format for Scenes)と呼ばれるバイナリ形式が規格化されている。BIFSは、オブジェクト記述子(Object Descriptor)およびその特殊な形式である初期オブジェクト記述子(Initial Object Descriptor)、さらに、音声や映像をエンコードしたMPEG−4ビジュアルやMPEG−4オーディオの定義によるビットストリームとともに、複合化されたいわゆるマルチメディアのシーンを合成する。
【0004】
BIFSは、その定義の根底にVRML (ISO/IEC14772−1 Virtual Reality Modeling Language)を使用したもので、VRMLを拡張したものと考えてよい。
【0005】
規格の詳細はISO/IEC14496−1に定義されているので、ここでは説明しないが、以下では、発明の本質をより簡潔に説明するため、VRMLを基本としたBIFSの表現をBIFSソースとよび、テキスト形式で表現する。BIFSのテキスト表現には、XMT (Extensible MPEG−4 Textual format)とよばれるXML形式の表現があり、以下では、このようなXMTによる表現も含めて、明示的にXMTと表現している場合を除き、BIFSソースとする。すなわち、BIFSソースは、オブジェクトベース符号化方式において、オブジェクトの配置や動作を定義するシーンを符号化するためのシーン記述方式の具体的な例である。
【0006】
図1から3はVRMLを基本としたBIFSソースの記述例を示す図である。
【0007】
先頭に記述された「#VRML V2.0 utf8」はコメントで、VRMLの規約上定められたものであって発明と直接関係はないが、一般的な記述法の例として記述されている。なお「utf8」は、ISO10646を基準とするUTF−8エンコーディングによる国際文字の指定である。
【0008】
図4は、図1から3に示すBIFSソースをエンコードした場合に、その結果として期待される表示の効果を模式的に示す図である。以下では、図1から3のBIFSソースの例と図4を用いて詳細に説明する。
【0009】
図1に示す二つ目のコメント行「# −−− 背景画像 −−−」以下は、背景の静止画像を示し、urlで指定されるオブジェクト「background.JPG」が図4に示す背景画201になる。
【0010】
同様に、三つ目のコメント行「# −−− 静止画:画像1 −−−」以下は図4に示す静止画202に、四つ目のコメント行「# −−− 動画:画像2 −−−」以下は図4に示す動画203にそれぞれ対応する。
【0011】
図2に示すコメント行「# −−− 動作 −−−」と、図3に示すコメント行「# −−− イベント間の接続 −−−」以下の記述は、ポインティングデバイスによってオブジェクトが選択された際の動作などをそれぞれ定義し、例えば、図4の拡大エリア204に、選択されたオブジェクトが拡大表示される、といった動作を定義する。
【0012】
以下では、図1から3のBIFSソース例についてごく簡単に説明する。
【0013】
まず、Group { … }の部分は、表示されるシーン全体をグループ化するノードを示す。次のchildren [ … ]はグループの子ノードの集合を示し、次のTransform2D { … }で最初のノードの座標変換を表す。
【0014】
Transform2Dは、さらに子ノードを保持し、Shape { … }によって特定のオブジェクトをシーンに取り込む。これは、Shapeで指定されたオブジェクトをTransform2Dによってシーン中の座標にマッピングすることと等価である。Shapeは、さらにappearance Appearance { … }とgeometry Bitmap { … }を保持し、前者はShapeの視覚特性、後者はその具体的な表示を指定する。視覚特性としては、texture ImageTexture { … }によって具体的な画像オブジェクトを指定し、そのオブジェクトを示すurlが記述される。scaleやtranslationはそれぞれ倍率と座標を記述する。
【0015】
ここで着目すべき点は、Transform2Dとgeometryに記述されたscaleやtranslationの値である。scaleの値は、ROUTEコマンドにより、オブジェクト選択時から一定の時間で、選択されたオブジェクトの拡大と縮小を行う。その動作は、例えばDEF PIC1SCALE(図2)で定義されたPositionInterpolator2D { … }によって値が変化することで行われる。この例では、縦横が0.5(半分)から1.0(等倍)へと変化し、さらに元の0.5へと戻される。
【0016】
同様に、translationの値も変化してオブジェクトの位置が変更される。translationは、対象になるオブジェクトの平行移動を意味し、この値が変化することによって、オブジェクトの位置が移動する。
【0017】
以上では、何ら具体的な説明なしに、オブジェクトという言葉を使って説明を行ったが、このオブジェクトの位置と大きさについてより詳しく説明するため、さらに具体的な表現を用いることにする。
【0018】
図1から3に示すBIFSソースでは、我々が目にする具体的なオブジェクトとして、背景画のbackground.JPG、静止画のpicture1.img、および、動画のpicture2.movieが使用されている。これらのオブジェクトは、urlの記述の後にURL (Uniform Resource Locator)形式で記述される。この表記は、よく知られたRFCに定義されたものであり、かつ、VRMLの定義形式であるので、ここでは詳しく説明しない。
【0019】
これら三つのオブジェクトは、この例では、background.JPGが横512ピクセル×縦384ピクセル、picture1.imgおよびpicture2.movieが横320ピクセル×縦240ピクセルと仮定されている。上述したscaleは、拡大縮小の割合を示すから、各オブジェクトは、1.0(等倍)で表現された後、それらを包含する領域としての背景画background.JPGを除き、初期値で0.5、すなわち半分のサイズに縮小される。背景画background.JPGはそのままのサイズであるが、静止画と動画は、半分に縮小され、初期段階のサイズは横160ピクセル×縦120ピクセルである。また、縮小された静止画と動画の位置は、translationによって座標(168、76)と座標(168、−76)に指定されるため、表示領域の右上と右下に移動される。
【0020】
このようにして、図4に示すような具体的な位置表現が行われる。注意すべきことは、このようなBIFSソースによって定義された表示の効果は、texture内のurlで指定されたオブジェクトの絶対的な大きさを何ら規定しない状態で表現されることである。ISO/IEC14496−1の定義は、その原型となったVRMLの定義と同様に、その座標系に、いわゆる右手系のデカルト三次元座標を使用し、表現されるテクスチャは、元の大きさに対する比率でのみ表現される。そのため、明示的に、この座標系の中に有限の大きさで定義されるオブジェクトを配置して、そのオブジェクトにテクスチャを貼り付けるといった記述を行わない限り、そのオブジェクトが表示される大きさは、オブジェクトしか知り得ないことになる。
【0021】
図1から3に示すBIFSソースの例では、背景画201が横512ピクセル×縦384ピクセルで、かつ、静止画202が横640ピクセル×縦480ピクセルである場合、背景画201は、その位置は静止画202と完全には重ならないとは言え、いわゆるオーバラップされた状態になり隠されてしまう。このような表示は、おそらく図1から3に示すBIFSソースの作成者の意図とは異なる。言い換えれば、BIFSソースの作成者は、表示されるオブジェクトの絶対的な大きさを認識してソースを記述しているから意図した表現が行われる。この例では、BIFSソースの作成者は、背景画201を横512ピクセル×縦384ピクセル、静止画202と動画203を横320ピクセル×縦240ピクセルと認識していて、それによりBIFSソースの作成者の意図が正しく表現される。
【0022】
ここまでは、図1から3に示すBIFSソースの例に従い、オブジェクトの配置を中心に説明したが、ISO/IEC14496−1の定義によれば、そのBIFSの表示領域については、DecoderConfigDescriptor(復号器設定記述子)内のDecoderSpecificInfo(復号器固有情報)に保持されるBIFSConfigにおいて定義される。BIFSConfigの定義は次のようなものである。
【0023】
もし、hasSizeが真(true)にセットされていれば(すなわちビットが立っていれば)、pixelWidthとpixelHeightによって、表示される具体的な表現(シーン)の領域サイズが指定されることになる。
【0024】
このように、エンコードされたビットストリーム中にサイズが指定されることにより、BIFSソースで指示された表現は、さらに、その表示領域が指定されることになる。
【0025】
このようにして、BIFSソースもしくはシーン記述と、これに記述されないビットストリーム中のデータ表現により、複数のオブジェクトが複雑に表現された、いわゆるマルチメディアのシーンを自在に表現することが可能である。
【0026】
上述したように、BIFSソースの作成者は、オブジェクトの配置と動作に関する定義、すなわちシーン記述を、シーン記述から参照される静止画や動画などの外部参照オブジェクトのサイズなどを予め判断し、意図した状態になるように設計しなければならない。しかし、現実には、それでも不充分な場合がある。任意のあらゆる参照オブジェクトに対して意図が反映されるようにシーン記述を設計することは、全く不可能であるとは言えないが、そのためには、シーン記述であるBIFSソースの作成者の充分な配慮が必須である。例えば、図1から3に例示したBIFSソースは、横320×縦240ピクセルのオブジェクトを参照する場合、図4に示すような表示が行われ得る。しかし、オブジェクトのサイズが異なれば、極端な場合、参照されるオブジェクトのほんの一部が表示されるだけになる。
【0027】
また、BIFSソースの作成者が予め特定の意図をもったBIFSソースを作成し、しかる後、第三者が参照されるオブジェクトを入れ替えると、BIFSソースの意図どおりに表現されない場合がある。この問題は、例えばMPEG−4の規格をよく知るデザイナがある意図をもってBIFSソースを設計し、しかる後、エンコードされたBIFSやBIFSソースと、BIFSを生成するエンコーダを含むMPEG−4データの簡易生成ツールを提供するといった場合に顕著に現れる。このような場合、提供されたBIFSやBIFSソース、あるいは、ツールなどを利用して、その利用者が欲する静止画や動画を埋め込むといったことが想定されるが、その利用者は、提供者の意図に合った大きさのオブジェクトを予め準備しなければならない。
【0028】
上記の問題に対処するため、BIFSソースに期待するオブジェトのサイズなどをコメントとして埋め込む手法や、提供するツールに期待するオブジェトのサイズへの変換機能を埋め込む、といったことが行われる。しかし、これらの手法は、ツールに固有の機能でのみ実現されたり、利用者がBIFSソースを読んで独自に判断する必要が生じるなど、不便である。また、ツールに固有の機能で実現する場合は、BIFS(もしくはBIFSソース)に独自の拡張を施したり、BIFSとは異なる別情報を用意したりする必要があり、さらに互換性の問題も発生する。
【0029】
【非特許文献1】
標準勧告書 ISO/IEC14496−1
【0030】
【発明が解決しようとする課題】
本発明は、上述の問題を個々にまたはまとめて解決するもので、シーン記述の意図に合うオブジェクトの生成を目的とする。
【0031】
【課題を解決するための手段】
本発明は、前記の目的を達成する一手段として、以下の構成を備える。
【0032】
本発明は、オブジェクトベース符号化に関連するオブジェクトを生成する際に、シーンを符号化するためのシーン記述からオブジェクトの実体の位置を示す情報を取得し、その位置情報に関連するサイズ情報を取得し、取得した位置情報およびサイズ情報に基づき、参照すべきオブジェクトの大きさを変更することを特徴とする。
【0033】
【発明の実施の形態】
以下、本発明にかかる実施形態の画像処理を図面を参照して詳細に説明する。
【0034】
[概要]
以下では、BIFSソース中にISO/IEC14496−1の定義に矛盾しない記述を付与し、それによってBIFSソースの作成者の意図に合うMPEG−4によるシーン表現を実現することが可能なMPEG−4データを生成する実施形態を説明する。
【0035】
実施形態において説明するMPEG−4データ生成装置は、オブジェクトベース符号化によるISO/IEC14496 (MPEG−4)に関するオブジェクトデータ生成装置である。ここで説明するMPEG−4データ生成装置は、細部においては異なる構成で表現される場合もあるが、ハードウェアで構成しても、コンピュータ装置にソフトウェアを供給するなどしてソフトウェアで構成しても実現可能で、その構成要素は、本発明の本質に合致する限り、組み替え、統合、再配置が可能である。
【0036】
なお、以下の説明では、簡略化のため、図1から3に示したBIFSソースと、図4に示した期待される表示の効果を説明の前提にする。
【0037】
[XMTによる記述]
図1から3においては、ISO/IEC14496−1の定義におけるBIFSの基本型とでもいうべきVRMLを起点とするBIFSソースを例示した。VRMLのような形式の場合、定義されない形式のノードや命令文を使用することは、暗黙のうちに受け入れることはできない。一方、ISO/IEC14496−1 Amendment 2のTextual Formatには、XML (eXtensible Markup Language)を利用したXMT (Extensible MPEG−4 Textual format)が定義されているが、これはXMLによる記述であるから自由に拡張することができる。
【0038】
図5は、図1から3に示した「静止画:画像1」の部分に含まれるShapeのXMT記述例を示す図である。
【0039】
図5に示す記述は、BIFSソースの記述と論理的に等価で、もし図1から3に示すBIFSソース全体をXMTで書き換えるならば、図4と同等の表示の効果が期待できる。しかし、XMTによる記述を、一般的なXMTを解釈することが可能なBIFSエンコーダを介してエンコードし、urlに指定されるオブジェクトをそのまま利用すれば、図1から3に示すBIFSソースの場合と同様、BIFSソースの作成者が意図した表示の効果を期待できるとは限らない。つまり、このような記述の場合、URL参照されるオブジェクトのサイズはBIFSソースを作成した段階で仮定されていて、その仮定されたサイズと異なるサイズのオブジェクトを使用する場合の結果は配慮されていない。
【0040】
実施形態は、XMTによるBIFSソースに記述を加え、それをXMTの解釈時に利用して、XMTの規格を逸脱しない範囲でBIFSソースの作成者の意図を反映するものである。
【0041】
図6は実施形態のXMTの記述例を示す図である。なお、図6に記述されたXMTは、図5に記述されたXMTと同等のものである。図6には、二つの例601および602を示すが、これらは本質的に同等であり、後述するMPEG−4データ生成装置のアプリケーション処理の細部に若干の違いを必要とするだけである。
【0042】
図6に示すXMTによるBIFSソースは、XMTの規格に定義されない、期待されるオブジェクトの幅を与えるwidthと、高さを与えるheightの属性を含む。これは、一見、XMTの規格を逸脱しているようにみえるが、XMTがXMLによって定義されているため、定義されない属性は、暗黙のうちに無視される。当然のことながら、追加した属性が無視されるならば属性を追加したことの意味はない。そこで実施形態のMPEG−4データ生成装置は、この無視される属性を利用するように構成する。
【0043】
ところで、XMTの規格を逸脱しないという点において、実施形態のMPEG−4データ生成装置を使用しない場合は追加の属性が無視される。言い換えれば、従来のMPEG−4データ生成装置に、属性が追加されたXMTの処理を行わせたとしても矛盾は生じない。
【0044】
[MPEG−4データ生成装置]
図7は、ソフトウェアでMPEG−4データ生成装置を構成する場合のコンピュータ装置の構成例を示すブロック図である。
【0045】
CPU 101は、ROM 102やハードディスク(HD)109に記憶されたデータや制御プログラム、オペレーティングシステム(OS)、MPEG−4データ生成用のアプリケーションプログラムなどに従い、RAM 103、操作部104、モニタ106などを制御して、MPEG−4データ生成にかかわる各種の制御や処理を行う。
【0046】
RAM 103は、CPU 101が各種プログラムを実行するための作業領域、操作部104から入力されるデータなどの一時保存領域である。
【0047】
操作部104は、マウスやキーボードなどで、MPEG−4データ生成にかかわる各種の制御や処理の設定データなどを、ユーザが入力するためのものである。
【0048】
モニタ106は、CRTやLCDなどで、画像処理結果や、操作部104による操作の際のユーザインタフェイス画面などが表示される。
【0049】
ネットワークインタフェイスカード(NIC)108は、BIFSデータ、MPEG−4データ、オブジェクトを含む各種データをネットワークを介して他のコンピュータ装置とやり取りするための通信インタフェイスである。
【0050】
なお、図7には示さないが、操作部104、モニタ106、NIC 108およびHD 109は、それぞれ所定のインタフェイスを介して、ホストコンピュータのシステムバス110に接続されている。
【0051】
図8はMPEG−4データ生成装置の機能構成例を示すブロック図である。なお、MPEG−4データ生成装置の一般的な構成は、例えばMPEG−4ビデオエンコーダのような様々な付加機能が追加し得るものの、図8に示す機能構成とほとんど変わらない。従って、図8においても、実施形態の説明に不要な付加機能は省略する。
【0052】
図8において、実施形態に重要な構成はBIFSソースプリプロセスモジュール501である。言い換えれば、BIFSソースプリプロセスモジュール501を除く他のモジュール群は、一般的に使用されるモジュールである。
【0053】
まず、BIFSソースプリプロセスモジュール501を除く他のモジュールについて簡単に説明する。
【0054】
オブジェクトトランスコーダモジュール502は、BIFSソース505のurlによって指定されるオブジェクトのURL情報508に従い、参照オブジェクト510の縦横の大きさを変換し、異なるサイズに変換(トランスコード)する。勿論、MPEG−4データ生成装置の機能として、例えば、いわゆるモーションJPEGからMPEG−4ビジュアルへ変換するといった圧縮符号化方式の変換(トランスコード)を行う可能性もあるし、動画だけでなく静止画の変換(トランスコード)を行う場合もある。このようなアプリケーション上の可能性に関しては、説明を簡略化するために一切配慮せず、単にトランスコードと表現する。
【0055】
BIFSエンコーダモジュール503は、BIFSソースもしくはBIFSソースを解釈した結果を入力し、BIFSデータ507を生成する。このようなモジュールは、ISOより出版されているリファレンスコードをはじめとして、様々な形で一般に使用されている。なお、BIFSエンコーダの機能は、BIFSソースを解釈してBIFSデータ507を生成することにあるが、BIFSソースの解釈は、前段のBIFSソースプリプロセスモジュール501が行ってもよいし、BIFSエンコーダモジュール503が行ってもよい。BIFSソースプリプロセスモジュール501がBIFSソースを解釈する場合は、BIFSエンコーダモジュール503の入力は、BIFSソースというよりは、むしろBIFSソースを何らかの形式で内部記憶メモリ(例えばRAM 103)などに保管したものになる。
【0056】
MPEG−4データ生成モジュール504は、最終的に、有効なMPEG−4データ512を生成する。例えば、ISO/IEC14496−1に定義されるMP4データファイルを作成する機能がこれに相当する。
【0057】
次に、BIFSソースプリプロセスモジュール501は、XMTで記述されたBIFSソース505に対して、一定の解釈を行う機能を有する。XMTは、XMLを使用して記述されるため、内部にXMLパーザもしくはそれに類した機能を保持する。XMLパーザには、一般的に、DOMまたはSAXと呼ばれるインタフェイス(I/F)形式が存在する。その詳細は実施形態に直接関係しないので、ここでは、木構造で表現されるXMLの各エレメントを順次処理するSAX形式の動作に似た処理と仮定する。この仮定は、XMLの各エレメントを木構造のまま内部記憶メモリ(例えばRAM 103)に格納するDOM形式であっても内部処理の違いだけであるので、とくに例外的なものとはならない。
【0058】
[動作]
図9および10はBIFSソースプリプロセスモジュール501の動作を説明するフローチャートである。
【0059】
BIFSソースプリプロセスモジュール501は、まず、BIFSソース505を順次読み込み(S601)、その木構造を取得して内部メモリ(RAM 103など)に記憶する(S602)。このとき、XMTとして未知の属性を含む場合(S603)、その属性と値を取得する(S604)。図4に示した例601では、最初のShapeエレメントの解釈において、属性widthと値”320”が取得される。
【0060】
次に、BIFSソースプリプロセスモジュール501は、この未知の属性が処理できるか否かを判断する(S605)。この例では、widthとheightは処理可能な属性であるから、内部メモリに保管する(S606)。この処理により、例えば属性width、値”320”の組み合わせが記憶される。
【0061】
次に、BIFSソースプリプロセスモジュール501は、現在処理中のエレメントにurlが含まれるか否かを判断し(S607)、urlが含まれるならば、次にその親もしくは同じエレメントにおいて、処理可能な属性、すなわち、この例においてwidthとheightが保管されているか否かを判断する(S608)。なお、親とは、XMTの木構造により直接辿ることができる親ノードまたはさらにその上位の親ノードなど「直系」の親である。
【0062】
BIFSソースプリプロセスモジュール501は、XMTの木構造の親に処理可能な属性が保管されている場合は、そのURLと、取得したwidth、heightの値を記憶する(S609)。そして、XML木構造のエレメントの取得が終わりか否かを判定し(S610)、未了であれば処理をステップS602に戻し、XML木構造のエレメントの取得が終わるまでステップS602からS610を繰り返す。
【0063】
ここで注意すべき点は、繰り返しエレメントを取得して処理を行う中で、親のエレメントで指定されたwidthとheightによるサイズ情報は、子エレメントに指定されたurlが現れた段階で、正しい組み合わせとして記憶されるという点である。このような処理判断を行うことによって、図6に例示した複数のBIFSソース記述方法に対して柔軟に対処することができる。
【0064】
エレメントがすべて解釈された後、BIFSソースプリプロセスモジュール501は、改変BIFSソース506を木構造から出力し(S611)、もし記憶されたURL、width、heightの値があれば(S612)、それらを出力する(S613)。
【0065】
改変BIFSソース506は、入力のBIFSソース505と同じものであるかもしれないが、BIFSソース505に未知の属性が含まれた場合は、未知の属性が木構造ではなく他の内部記憶メモリに保管されるため、未知の属性を含まない純粋なXMTとして出力される。このように、BIFSソースプリプロセスモジュール501には、XMTに含まれたXMTに準拠しない情報を削除し、純粋なXMTを出力する、副次的な効果も期待することができる。
【0066】
勿論、アプリケーションによっては、このような改変BIFSソース506ではなく、元のBIFSソース505をそのままBIFSエンコーダの入力に使いたい場合もあるだろう。そのような場合、BIFSソースの書き出し(S611)は不要であるかも知れないが、こうしたアプリケーションの要請は発明の本質に影響を与えるものではない。
【0067】
このようにして、BIFSソースプリプロセスモジュール501によって出力された改変BIFSソース506は、BIFSエンコーダモジュール503によってエンコードされ、BIFSデータ507が出力される。一方、URL情報508とサイズ情報509は、オブジェクトトランスコーダモジュール502の入力になる。なお、図10に示すURLおよび処理可能な属性の値の書き出し(S613)の出力が、オブジェクトトランスコーダモジュール502に入力されるURL情報508とサイズ情報509を意味することは言うまでもない。
【0068】
こうして、BIFSソース505からURL情報508およびサイズ情報509が取得されたため、これらの情報を利用して、オブジェクトトランスコーダモジュール502は処理を行うことができるようになる。オブジェクトトランスコーダモジュール502は、URL情報508を参照してオブジェクトを取得し、取得したオブジェクトをサイズ情報509を使用してトランスコードする。具体的な例を挙げるならば、BIFSソース505が図6の例602である場合、下記のように記述されていることから、ファイルpicture1.imgを読み込み、横320×縦240の画像に変換する。
【0069】
もし、picture1.imgが横1600×縦1200サイズの画像であれば、縦横が20%の大きさに変換されて、BIFSソースの作成者の意図に合う表現が期待されるオブジェクトになる。
【0070】
このようにして、参照オブジェクト510がトランスコードされる一方、BIFSソースプリプロセスモジュール501によって出力された改変BIFSソース506は、BIFSエンコーダモジュール503によって、BIFSデータ507にエンコードされる。
【0071】
最終的に、BIFSソースの作成者の意図に合うように変換された改変参照オブジェクト511と、BIFSデータ507により、MPEG−4データ生成モジュール504がMPEG−4データ512を出力し、最終的な結果が得られる。
【0072】
以上では、BIFSソースに記述されたURLがBIFSソースの利用者によって予め書き換えられているという仮定の基に説明を行ったが、当然、アプリケーションによってはその他の方法が使用される場合もある。例えば、URLとしてBIFSソースの利用者が参照すべきオブジェクトを取得するためのCGIプログラム(いわゆるWebサーバがクライアントシステムからの要求で起動するアプリケーションプログラム)を指定すれば、インターネット上のコンテンツを必要に応じて参照することが可能である。あるいは、特殊なプロトコルスキームを指定したURLを使用することにより、特定の記憶装置に保管されたファイルを自動参照させることも全く自然なことである。このような方法は、アプリケーションによって様々に対応可能であり、本発明は、そのような任意のアプリケーションにおいても、本発明の特徴を利用できる形態であれば適用可能である。以下では、具体例として、比較的単純な方法を例示する。
【0073】
図11は、BIFSソース例701および703に含まれるURLの例と、アプリケーションが記憶する参照テーブル702および704との組み合わせを示す図である。
【0074】
例701は、特殊なプロトコルスキームを指定したURLを使用する例で、urlには「user:」というスキームが指定されている。アプリケーションは、記憶する参照テーブル702を自動的に参照して、「user:」に続く「contentID?1」により、該当するURLになるuser01.jpgを取得する。参照テーブル702に記憶されたuser01.jpgが、まさしく、BIFSソースの利用者が参照を望むオブジェクトのURLを示していることにより、正しいURLの取得が可能になる。
【0075】
もし、BIFSソースの作成者が同様の仕組みを用いて、参照テーブルにBIFSソースの作成者が使用したオブジェクトのURLを記述しておけば、アプリケーションの単純な制御により、参照テーブルの値を入れ替えるだけで、作成者と利用者のオブジェクトを入れ替えることが簡単に行える。
【0076】
例703は、urlに、図6に示す例601と同じBIFSソースのURLが記述されている。BIFSソースの作成者はBIFSソースに記述されたpicture1.imgを使用し、BIFSソースの利用者は異なるURLのオブジェクトの参照を望むとする。この場合でも、オブジェクトトランスコーダモジュール502が参照テーブル704を利用するように設計されていれば、オブジェクトトランスコーダモジュール502は、参照テーブル704からpicture1.imgに対応するURLであるuser01.jpgを取得して、処理を行うことができる。
【0077】
このように、本実施形態は、アプリケーション設計に柔軟に対応することが可能である。
【0078】
上記の説明においては、BIFSソースプリプロセスモジュール501が出力するサイズ情報509や、BIFSソース505に記述するサイズ情報そのものを、幅と高さで与えるように説明したが、これらの記述方法は、例えば幅320、縦横比3対4のように縦横どちらかの一辺の大きさと、残る辺の比率との組み合わせで表現してもよい。あるいは、何らかの仮想的な大きさと、それに対する縦横の倍率であってもよい。例えば前者の方法であれば、幅320に比率3/4を乗ずることで、横320×縦240を容易に計算することができる。このように、どのような方法であれ、BIFSソースの作成者が、そのBIFSソースにおいて想定する大きさを与えることが可能であればよい。
【0079】
最後に、本実施形態における付加的な説明を加える。
【0080】
まず、XMTに非対応のBIFSエンコーダが使用される場合を説明する。
【0081】
このようなケースでは、図8に示すMPEG−4データ生成装置の基本的な動作に変わりはないが、BIFSエンコーダモジュール503の入力として、XMTで記述された改変BIFSソース506を使用することができない。先に説明したように、BIFSエンコーダモジュール503は、BIFSソースもしくはBIFSソースを解釈した結果を入力として、BIFSを生成する機能をもつ。従って、もし入力がBIFSソースを解釈した結果の記述方法としてBIFSソースの記述方法に依存しない形式が用いらる場合と何ら変わるところはない。異なるのは、BIFSエンコーダモジュール503が、例えばVRML形式のBIFSソースのみを解釈する場合である。
【0082】
こうした場合でも、BIFSソースプリプロセスモジュール501とオブジェクトトランスコーダモジュール502をフィルタモジュールとして、既存のBIFSエンコーダの前段として利用することで、本実施形態は適用可能である。
【0083】
BIFSソースプリプロセスモジュール501は、その内部にBIFSソースの解釈を行う機能を保持するため、ここで作成された木構造を基に、VRML形式のBIFSソースを生成するようにアプリケーションを設計すればよい。
【0084】
図12は、このようなフィルタモジュールの結果例を示す図である。XMTに記述されたwidthなどの属性は、BIFSソースプリプロセスモジュール501により削除されている。このように、図8に示すモジュールが、それぞれ独立したモジュールとして、上述した限定された機能だけをもたなくても、本実施形態を適用可能である。
【0085】
このように、本実施形態によれば、ISO/IEC14496−1の定義に矛盾しない方法によって、BIFSソースに期待されるオブジェクトの幅と高さを記述し、これを解釈することによって、オブジェクトの大きさを変更することができる。従って、予め作成済みの、あるいは、参照されるオブジェクトが未解決のBIFSソースであっても、オブジェクトが決定されたときに、参照されるオブジェクトに期待される幅と高さを利用する方法を提供し、作成者の意図に合う表現にすることができる。
【0086】
なお、上記のMPEG−4データ生成装置とそのモジュール構成は、必ずしもパーソナルコンピュータ上で動作するアプリケーションプログラムの分野に限定されるものではない。MPEG−4データ生成装置を、ディジタルカメラ、カムコーダ、携帯電話、ディジタルレコーダなどのハードウェア機器に適用することも可能である。
【0087】
XMLにより記述されるシーン記述に、参照すべきオブジェクトの大きさを記述し、これをオブジェクトデータ生成装置が読み込んで、オブジェクトの実体の位置を示す情報と、関連する大きさの情報を抽出し、該当するオブジェクトの大きさを変更する。従って、予め作成済みの、あるいは、参照すべきオブジェクトが未解決のBIFSソースもしくはシーン記述であっても、オブジェクトが決定された時点で、参照すべきオブジェクトに期待される幅と高さを利用して、BIFSソースの作成者の意図に合う表現が可能になる。
【0088】
また、シーン記述に記述されるオブジェクトの実体の位置を示す情報と、関連する大きさの情報との抽出を、ノードの親子関係とシーン記述方式の定義に含まれない属性の判断によって行う。従って、シーン記述方式に矛盾しない方法によって、BIFSソースの作成者の意図に合う表現が可能になる。
【0089】
さらに、オブジェクトの大きさを変更する際、抽出されたオブジェクトの実体の位置を示す情報と、実際にシーンに適用されるオブジェクトの関連を与える参照テーブルを利用して大きさを変更するオブジェクトを決定すれば、アプリケーションプログラムに対する適用の可能性を高めることができる。
【0090】
また、オブジェクトの実体の位置を示す情報と、関連する大きさの情報を抽出する際に、XMLにより記述されるシーン記述から、オブジェクトベース符号化によるシーンデータ符号化を行う手段が適用可能なシーン記述方式でシーン記述を出力すれば、アプリケーションプログラムに対する適用の可能性を高めることができる。
【0091】
このように、オブジェクトベース符号化方式に矛盾することなく、オブジェクトベース符号化方式を利用しながら、予め作成済みの、あるいは、参照すべきオブジェクトが未解決のBIFSソースもしくはシーン記述であっても、オブジェクトが決定された時点で、参照すべきオブジェクトに期待される幅と高さを利用して、BIFSソースの作成者の意図に合う表現が得られる。
【0092】
MPEG−4データ生成装置を構成するモジュールが、複数の機器に分散されているとしても、適当な通信機能やデータ共有などによりそれらが対話的に通信可能であれば、それら複数の機器が本発明を構成する。あるいは、複数の機器の一部がインターネットやその他の通信機能によって離れた場所にあってもよい。
【0093】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体(または記録媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0094】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0095】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【0096】
【発明の効果】
以上説明したように、本発明によれば、シーン記述の意図に合うオブジェクトを生成することができる。
【図面の簡単な説明】
【図1】VRMLを基本としたBIFSソースの記述例を示す図、
【図2】VRMLを基本としたBIFSソースの記述例を示す図、
【図3】VRMLを基本としたBIFSソースの記述例を示す図、
【図4】図1から3に示すBIFSソースをエンコードした場合に、その結果として期待される表示の効果を模式的に示す図、
【図5】図1から3に示した「静止画:画像1」の部分に含まれるShapeのXMT記述例を示す図、
【図6】実施形態のXMTの記述例を示す図、
【図7】ソフトウェアでMPEG−4データ生成装置を構成する場合のコンピュータ装置の構成例を示すブロック図、
【図8】MPEG−4データ生成装置の機能構成例を示すブロック図、
【図9】BIFSソースプリプロセスモジュール501の動作を説明するフローチャート、
【図10】BIFSソースプリプロセスモジュール501の動作を説明するフローチャート、
【図11】BIFSソース例に含まれるURLの例と、アプリケーションが記憶する参照テーブルとの組み合わせを示す図
【図12】フィルタモジュールの結果例を示す図である。[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an object generation apparatus and method, for example, to generation of objects such as still images, moving images, and computer graphics to be arranged on a screen by scene description.
[0002]
[Prior art]
With the improvement of digital data processing capability and the development of communication technology, so-called multimedia can be expressed easily, and complex expressions using multiple still images, moving images, audio, vector graphics, etc. are generally used. became. There is an object-based encoding method as a method of such complex multimedia (or multi-object) expression. A specific example is a standard (ISO / IEC 14496-1) called MPEG-4 system (for example, see Non-Patent Document 1).
[0003]
ISO / IEC 14496-1 standardizes a binary format called BIFS (Binary Format for Scenes) that indicates how an MPEG-4 audiovisual object should be arranged and displayed in a space. BIFS includes an object descriptor (Object Descriptor) and an initial object descriptor (Initial Object Descriptor), which is a special form of the object descriptor, and a bit stream defined by MPEG-4 visual and MPEG-4 audio encoding audio and video. The so-called multimedia scene is composed.
[0004]
BIFS uses VRML (ISO / IEC147772-1 Virtual Reality Modeling Language) as the basis of its definition, and can be considered as an extension of VRML.
[0005]
Details of the standard are defined in ISO / IEC 14496-1, and will not be described here, but in the following, in order to explain the essence of the invention more concisely, the representation of BIFS based on VRML is called BIFS source, Express in text format. The BIFS text representation includes an XML format representation called XMT (Extensible MPEG-4 Textual format). In the following, a case where the representation is explicitly expressed as XMT including such representation by XMT will be described. Except for the BIFS source. That is, the BIFS source is a specific example of a scene description method for encoding a scene that defines the arrangement and operation of an object in the object-based encoding method.
[0006]
1 to 3 are diagrams showing a description example of a BIFS source based on VRML.
[0007]
“#VRML V2.0 utf8” described at the beginning is a comment, which is defined in the VRML rules and is not directly related to the invention, but is described as an example of a general description method. “Utf8” is an international character designation based on UTF-8 encoding based on ISO10646.
[0008]
FIG. 4 is a diagram schematically showing the expected display effect when the BIFS source shown in FIGS. 1 to 3 is encoded. Hereinafter, a detailed description will be given using the example of the BIFS source of FIGS. 1 to 3 and FIG.
[0009]
The second comment line “# --- background image ---” shown in FIG. 1 shows a background still image, and an object “background” JPG designated by url is a
[0010]
Similarly, the third comment line “# −−− still image: image 1 −−−” and the following are added to the still
[0011]
The comment lines "# ---- Operation ---" shown in FIG. 2 and the comment lines "# ---- Connection between events ----" shown in FIG. For example, an operation in which the selected object is enlarged and displayed in the enlarged
[0012]
In the following, the BIFS source example of FIGS.
[0013]
First, the group {...} Indicates a node that groups the entire displayed scene. The next child [...] Represents a set of child nodes of the group, and the next Transform2D {.
[0014]
The Transform 2D further holds child nodes, and takes a specific object into the scene by using Shape {...}. This is equivalent to mapping the object specified by Shape to coordinates in the scene by Transform2D. Shape further holds appearance Appearance {...} And geometry Bitmap {...}, The former designates the visual characteristics of Shape and the latter designates its specific display. As a visual characteristic, a specific image object is specified by texture ImageText {...}, And url indicating the object is described. Scale and translation describe the magnification and coordinates, respectively.
[0015]
The points to be noted here are the values of scale and translation described in Transform2D and geometry. The scale value is enlarged or reduced by a ROUTE command in a certain time from the time of object selection. The operation is performed by changing the value by PositionInterpolator2D {...} Defined by, for example, DEF PIC1SCALE (FIG. 2). In this example, the aspect changes from 0.5 (half) to 1.0 (same size), and then returns to the original 0.5.
[0016]
Similarly, the translation value also changes to change the position of the object. “translation” means a parallel movement of a target object, and the position of the object is moved by changing this value.
[0017]
In the above description, the term “object” is used without any specific explanation. However, in order to explain the position and size of the object in more detail, more specific expressions will be used.
[0018]
In the BIFS source shown in FIGS. 1 to 3, the background object background. JPG, still picture picture1. img and picture of the
[0019]
These three objects, in this example, are bakground. JPG is 512 pixels wide by 384 pixels long, picture1. img and picture2. The movie is assumed to be 320 pixels wide × 240 pixels high. Since the scale described above indicates the ratio of enlargement / reduction, each object is expressed by 1.0 (same size), and then the background background. Except for JPG, the initial value is reduced to 0.5, that is, half the size. Background picture background. JPG is the size as it is, but still images and moving images are reduced in half, and the initial size is 160 pixels wide by 120 pixels high. Further, the positions of the reduced still image and moving image are designated by coordinates (168, 76) and coordinates (168, -76) by translation, and are thus moved to the upper right and lower right of the display area.
[0020]
In this way, a specific position expression as shown in FIG. 4 is performed. It should be noted that the display effect defined by such a BIFS source is expressed in a state that does not define the absolute size of the object specified by url in the texture. The definition of ISO / IEC14496-1 uses a so-called right-handed Cartesian three-dimensional coordinate system for the coordinate system, as in the original VRML definition, and the expressed texture is a ratio to the original size. Expressed only in Therefore, unless you explicitly place an object defined with a finite size in this coordinate system and paste a texture on that object, the size of the displayed object is Only objects will be known.
[0021]
In the example of the BIFS source shown in FIGS. 1 to 3, when the
[0022]
Up to this point, the description has focused on the arrangement of objects according to the example of the BIFS source shown in FIGS. 1 to 3, but according to the definition of ISO / IEC 14496-1, the display area of the BIFS has a DecoderConfigDescriptor (decoder setting). Defined in BIFSConfig held in DecoderSpecificInfo (decoder specific information) in the descriptor). The definition of BIFSConfig is as follows.
[0023]
If hasSize is set to true (that is, if a bit is set), the area size of a specific expression (scene) to be displayed is specified by pixelWidth and pixelHeight.
[0024]
Thus, by specifying the size in the encoded bitstream, the display area of the expression indicated by the BIFS source is further specified.
[0025]
In this way, a so-called multimedia scene in which a plurality of objects are expressed in a complex manner can be freely expressed by a BIFS source or scene description and data expression in a bitstream not described in the BIFS source or scene description.
[0026]
As described above, the creator of the BIFS source intended the definition regarding the arrangement and operation of the object, that is, the scene description in advance by determining the size of an external reference object such as a still image or a moving image referenced from the scene description. It must be designed to be in a state. In reality, however, there are still cases where it is insufficient. Designing a scene description to reflect intent for any given reference object is not impossible at all, but for that purpose, the author of the BIFS source that is the scene description is sufficient. Consideration is essential. For example, when the BIFS source illustrated in FIGS. 1 to 3 refers to an object of horizontal 320 × vertical 240 pixels, the display shown in FIG. 4 can be performed. However, if the object sizes are different, in extreme cases, only a portion of the referenced object is displayed.
[0027]
Also, if the BIFS source creator creates a BIFS source with a specific intention in advance and then replaces an object that is referred to by a third party, the BIFS source may not be expressed as intended. The problem is that, for example, a designer who is familiar with the MPEG-4 standard designs a BIFS source with the intention, and then easily generates MPEG-4 data including an encoded BIFS or BIFS source and an encoder that generates BIFS. This is especially true when providing tools. In such a case, it may be assumed that the user wants to embed a still image or video that the user wants using the provided BIFS or BIFS source, or a tool, etc. It is necessary to prepare in advance an object of a size suitable for.
[0028]
In order to cope with the above problem, a method of embedding the object size expected in the BIFS source as a comment or a function for converting the object size expected in the provided tool is embedded. However, these methods are inconvenient because they are realized only by functions unique to the tool, or the user needs to read the BIFS source and make an independent determination. In addition, when implementing with the function specific to the tool, it is necessary to give the BIFS (or BIFS source) a unique extension, or to prepare different information different from the BIFS, which also causes compatibility problems. .
[0029]
[Non-Patent Document 1]
Standard Recommendation ISO / IEC14496-1
[0030]
[Problems to be solved by the invention]
The present invention solves the above-mentioned problems individually or collectively, and aims to generate an object that meets the intention of scene description.
[0031]
[Means for Solving the Problems]
The present invention has the following configuration as one means for achieving the above object.
[0032]
When generating an object related to object-based encoding, the present invention acquires information indicating the position of the object entity from the scene description for encoding the scene, and acquires size information related to the position information. The size of the object to be referred to is changed based on the acquired position information and size information.
[0033]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, image processing according to an embodiment of the present invention will be described in detail with reference to the drawings.
[0034]
[Overview]
In the following, MPEG-4 data capable of providing a description in MPEG-4 conforming to the intention of the creator of the BIFS source by giving a description consistent with the definition of ISO / IEC 14496-1 in the BIFS source. An embodiment for generating the will be described.
[0035]
The MPEG-4 data generation apparatus described in the embodiment is an object data generation apparatus related to ISO / IEC14496 (MPEG-4) based on object-based encoding. The MPEG-4 data generation apparatus described here may be expressed in different configurations in detail, but may be configured by hardware or software by supplying software to a computer apparatus. It is feasible and its components can be rearranged, integrated and rearranged as long as they meet the essence of the present invention.
[0036]
In the following description, for simplification, the BIFS source shown in FIGS. 1 to 3 and the expected display effect shown in FIG.
[0037]
[Description by XMT]
1 to 3 exemplify a BIFS source starting from VRML, which may be called a basic type of BIFS in the definition of ISO / IEC 14496-1. In the case of a format such as VRML, using a node or statement in an undefined format cannot be accepted implicitly. On the other hand, in the Text / Format of ISO / IEC 14496-1
[0038]
FIG. 5 is a diagram illustrating an XMT description example of Shape included in the “still image: image 1” portion illustrated in FIGS.
[0039]
The description shown in FIG. 5 is logically equivalent to the description of the BIFS source. If the entire BIFS source shown in FIGS. 1 to 3 is rewritten with XMT, the display effect equivalent to that in FIG. 4 can be expected. However, if the description in XMT is encoded through a BIFS encoder capable of interpreting general XMT and the object specified in url is used as it is, the same as in the case of the BIFS source shown in FIGS. The display effect intended by the creator of the BIFS source is not always expected. In other words, in the case of such a description, the size of the object referenced by the URL is assumed at the stage of creating the BIFS source, and the result of using an object having a size different from the assumed size is not considered. .
[0040]
In the embodiment, a description is added to a BIFS source by XMT, and this is used when interpreting the XMT to reflect the intention of the creator of the BIFS source without departing from the XMT standard.
[0041]
FIG. 6 is a diagram illustrating a description example of the XMT according to the embodiment. Note that the XMT described in FIG. 6 is equivalent to the XMT described in FIG. FIG. 6 shows two examples 601 and 602, which are essentially equivalent and only require a slight difference in the application processing details of the MPEG-4 data generator described below.
[0042]
The BIFS source by XMT shown in FIG. 6 includes a width attribute that gives an expected object width and a height attribute that gives a height, which are not defined in the XMT standard. This appears to deviate from the XMT standard, but since XMT is defined by XML, undefined attributes are silently ignored. Of course, if the added attribute is ignored, there is no point in adding the attribute. Therefore, the MPEG-4 data generation apparatus of the embodiment is configured to use this ignored attribute.
[0043]
By the way, in the point of not deviating from the XMT standard, additional attributes are ignored when the MPEG-4 data generation apparatus of the embodiment is not used. In other words, even if the conventional MPEG-4 data generation apparatus performs the XMT processing with the added attribute, no contradiction occurs.
[0044]
[MPEG-4 data generator]
FIG. 7 is a block diagram showing a configuration example of a computer device when an MPEG-4 data generation device is configured by software.
[0045]
The
[0046]
A
[0047]
The
[0048]
The
[0049]
A network interface card (NIC) 108 is a communication interface for exchanging various data including BIFS data, MPEG-4 data, and objects with other computer apparatuses via a network.
[0050]
Although not shown in FIG. 7, the
[0051]
FIG. 8 is a block diagram showing a functional configuration example of the MPEG-4 data generation apparatus. The general configuration of the MPEG-4 data generation apparatus is almost the same as the functional configuration shown in FIG. 8 although various additional functions such as an MPEG-4 video encoder can be added. Therefore, also in FIG. 8, additional functions unnecessary for the description of the embodiment are omitted.
[0052]
In FIG. 8, a configuration important for the embodiment is a BIFS
[0053]
First, modules other than the BIFS
[0054]
The
[0055]
The
[0056]
The MPEG-4
[0057]
Next, the BIFS
[0058]
[Operation]
FIGS. 9 and 10 are flowcharts for explaining the operation of the BIFS
[0059]
The BIFS
[0060]
Next, the BIFS
[0061]
Next, the BIFS
[0062]
If the attributes that can be processed are stored in the parent of the XMT tree structure, the BIFS
[0063]
It should be noted that the size information by width and height specified in the parent element is the correct combination when the url specified in the child element appears, while acquiring and repeating the repeated elements. Is stored as. By performing such processing determination, it is possible to flexibly cope with the plurality of BIFS source description methods illustrated in FIG.
[0064]
After all the elements are interpreted, the BIFS
[0065]
The modified
[0066]
Of course, depending on the application, not the modified
[0067]
In this way, the modified
[0068]
Thus, since the
[0069]
If picture1. If img is an image having a horizontal size of 1600 × longitudinal size, the vertical and horizontal sizes are converted to a size of 20%, and an object that is expected to represent the BIFS source creator's intention is obtained.
[0070]
In this manner, the
[0071]
Finally, the MPEG-4
[0072]
In the above description, the URL described in the BIFS source has been described based on the assumption that the user of the BIFS source has been rewritten in advance, but naturally other methods may be used depending on the application. For example, if a CGI program (an application program that a so-called Web server starts in response to a request from a client system) for acquiring an object to be referred to by a BIFS source user is specified as a URL, content on the Internet can be used as needed. Can be referred to. Alternatively, it is quite natural to automatically refer to a file stored in a specific storage device by using a URL specifying a special protocol scheme. Such a method can be applied in various ways depending on the application, and the present invention can be applied to any arbitrary application as long as the features of the present invention can be used. Below, a comparatively simple method is illustrated as a specific example.
[0073]
FIG. 11 is a diagram illustrating combinations of URL examples included in the BIFS source examples 701 and 703 and reference tables 702 and 704 stored in the application.
[0074]
An example 701 is an example in which a URL specifying a special protocol scheme is used, and a scheme “user:” is specified in url. The application automatically refers to the stored reference table 702, and uses “contentID? 1” following “user:” to obtain the corresponding URL user01. Get jpg. User01.. Stored in the reference table 702. Since jpg indicates the URL of the object that the BIFS source user wants to refer to, the correct URL can be acquired.
[0075]
If the BIFS source creator describes the URL of the object used by the BIFS source creator in the reference table using the same mechanism, the value of the reference table is simply replaced by simple control of the application. Thus, it is easy to swap the creator and user objects.
[0076]
In Example 703, the URL of the same BIFS source as in Example 601 shown in FIG. 6 is described in url. The creator of the BIFS source is picture1. Using img, the BIFS source user wants to reference an object with a different URL. Even in this case, if the
[0077]
As described above, this embodiment can flexibly cope with application design.
[0078]
In the above description, the
[0079]
Finally, additional description in this embodiment will be added.
[0080]
First, a case where a BIFS encoder that does not support XMT is used will be described.
[0081]
In such a case, the basic operation of the MPEG-4 data generation apparatus shown in FIG. 8 is not changed, but the modified
[0082]
Even in such a case, the present embodiment can be applied by using the BIFS
[0083]
Since the BIFS
[0084]
FIG. 12 is a diagram illustrating a result example of such a filter module. Attributes such as width described in the XMT are deleted by the BIFS
[0085]
As described above, according to the present embodiment, the object size and size are described by interpreting the width and height of the object expected from the BIFS source by a method consistent with the definition of ISO / IEC14496-1. Can be changed. Therefore, even if a pre-created or referenced object is an unresolved BIFS source, a method is provided that uses the expected width and height of the referenced object when the object is determined. And can be expressed in accordance with the intention of the creator.
[0086]
The MPEG-4 data generation apparatus and its module configuration are not necessarily limited to the field of application programs that run on a personal computer. The MPEG-4 data generation apparatus can also be applied to hardware devices such as a digital camera, a camcorder, a mobile phone, and a digital recorder.
[0087]
In the scene description described in XML, the size of the object to be referred to is described, and this is read by the object data generation device, and the information indicating the position of the object entity and the related size information are extracted. Change the size of the corresponding object. Therefore, even if the object already created or the object to be referenced is an unresolved BIFS source or scene description, the width and height expected for the object to be referred to are used when the object is determined. Thus, an expression suitable for the intention of the creator of the BIFS source becomes possible.
[0088]
Also, extraction of information indicating the position of the object entity described in the scene description and related size information is performed by determining attributes not included in the definition of the parent-child relationship of the nodes and the scene description method. Therefore, an expression suitable for the intention of the creator of the BIFS source becomes possible by a method that is consistent with the scene description method.
[0089]
In addition, when changing the size of an object, the information indicating the position of the extracted object and the reference table that gives the relationship of the object actually applied to the scene is used to determine the object whose size is to be changed. Then, the possibility of application to the application program can be increased.
[0090]
A scene to which means for performing scene data encoding by object-based encoding from a scene description described in XML can be applied when extracting information indicating the position of an object entity and related size information. If the scene description is output by the description method, the possibility of application to the application program can be increased.
[0091]
In this way, while using the object-based encoding method without contradicting the object-based encoding method, even if the object that has been created in advance or the object to be referenced is an unresolved BIFS source or scene description, When the object is determined, the width and height expected for the object to be referenced is used to obtain a representation that fits the intention of the BIFS source creator.
[0092]
Even if the modules constituting the MPEG-4 data generation apparatus are distributed to a plurality of devices, the plurality of devices can be used as long as they can communicate interactively by an appropriate communication function or data sharing. Configure. Alternatively, some of the plurality of devices may be located away from each other by the Internet or other communication functions.
[0093]
Another object of the present invention is to supply a storage medium (or recording medium) in which a program code of software that realizes the functions of the above-described embodiments is recorded to a system or apparatus, and the computer (or CPU or CPU) of the system or apparatus. Needless to say, this can also be achieved by the MPU) reading and executing the program code stored in the storage medium. In this case, the program code itself read from the storage medium realizes the functions of the above-described embodiments, and the storage medium storing the program code constitutes the present invention. Further, by executing the program code read by the computer, not only the functions of the above-described embodiments are realized, but also an operating system (OS) running on the computer based on the instruction of the program code. It goes without saying that a case where the function of the above-described embodiment is realized by performing part or all of the actual processing and the processing is included.
[0094]
Furthermore, after the program code read from the storage medium is written into a memory provided in a function expansion card inserted into the computer or a function expansion unit connected to the computer, the function is based on the instruction of the program code. It goes without saying that the CPU or the like provided in the expansion card or the function expansion unit performs part or all of the actual processing and the functions of the above-described embodiments are realized by the processing.
[0095]
When the present invention is applied to the storage medium, the storage medium stores program codes corresponding to the flowcharts described above.
[0096]
【The invention's effect】
As described above, according to the present invention, it is possible to generate an object that meets the intention of the scene description.
[Brief description of the drawings]
FIG. 1 is a diagram showing a description example of a BIFS source based on VRML;
FIG. 2 is a diagram showing a description example of a BIFS source based on VRML;
FIG. 3 is a diagram showing a description example of a BIFS source based on VRML;
FIG. 4 is a diagram schematically showing a display effect expected as a result when the BIFS source shown in FIGS. 1 to 3 is encoded;
FIG. 5 is a view showing an XMT description example of Shape included in the “still image: image 1” portion shown in FIGS. 1 to 3;
FIG. 6 is a diagram showing a description example of XMT according to the embodiment;
FIG. 7 is a block diagram showing a configuration example of a computer device when an MPEG-4 data generation device is configured by software;
FIG. 8 is a block diagram illustrating a functional configuration example of an MPEG-4 data generation device;
FIG. 9 is a flowchart for explaining the operation of the BIFS
FIG. 10 is a flowchart for explaining the operation of the BIFS
11 is a diagram showing a combination of an example of a URL included in a BIFS source example and a reference table stored by an application. FIG. 12 is a diagram showing a result example of a filter module.
Claims (15)
シーンを符号化するためのシーン記述からオブジェクトの実体の位置を示す情報を取得し、その位置情報に関連するサイズ情報を取得し、
取得した位置情報およびサイズ情報に基づき、参照すべきオブジェクトの大きさを変更することを特徴とする生成方法。A generation method for generating an object related to object-based encoding,
Obtain information indicating the position of the object entity from the scene description for encoding the scene, obtain size information related to the position information,
A generation method characterized by changing a size of an object to be referred to based on acquired position information and size information.
符号化されたシーンデータおよび前記オブジェクトにより、符号化されたオブジェクトデータを生成することを特徴とする請求項1から請求項4の何れかに記載された生成方法。In addition, scene data encoding by object-based encoding is performed,
5. The generation method according to claim 1, wherein encoded object data is generated from the encoded scene data and the object.
シーンを符号化するためのシーン記述からオブジェクトの実体の位置を示す情報を取得し、その位置情報に関連するサイズ情報を取得する取得手段と、
取得した位置情報およびサイズ情報に基づき、参照すべきオブジェクトの大きさを変更する変更手段とを有することを特徴とする生成方法。A generation device for generating an object related to object-based encoding,
An acquisition means for acquiring information indicating a position of an object entity from a scene description for encoding a scene, and acquiring size information related to the position information;
A generation method comprising: changing means for changing a size of an object to be referred to based on the acquired position information and size information.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003201159A JP2005045401A (en) | 2003-07-24 | 2003-07-24 | Object generating apparatus and method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003201159A JP2005045401A (en) | 2003-07-24 | 2003-07-24 | Object generating apparatus and method thereof |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005045401A true JP2005045401A (en) | 2005-02-17 |
Family
ID=34261333
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003201159A Withdrawn JP2005045401A (en) | 2003-07-24 | 2003-07-24 | Object generating apparatus and method thereof |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005045401A (en) |
-
2003
- 2003-07-24 JP JP2003201159A patent/JP2005045401A/en not_active Withdrawn
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7203692B2 (en) | Transcoding between content data and description data | |
US6925597B2 (en) | Systems and methods for digital document processing | |
JP4356645B2 (en) | Subtitle generation apparatus and method | |
JP5306429B2 (en) | Method for digital document processing | |
US20030110297A1 (en) | Transforming multimedia data for delivery to multiple heterogeneous devices | |
CN110968944B (en) | Method for displaying and operating CAD drawing on Web front end | |
JP2004287595A (en) | Device and method for converting composite media contents and its program | |
JP2007025959A (en) | Multimedia data processor, multimedia data processing method and multimedia data processing program | |
JP2007151119A (en) | Method and system for controlling multimedia stream using dynamic prototype | |
KR20120006526A (en) | Data visualization platform performance optimization | |
KR20040071176A (en) | Methods for multimedia content repurposing | |
JP2003069965A (en) | Device for converting bifs text format into bifs binary format | |
Mekuria et al. | MP3DG-PCC, open source software framework for implementation and evaluation of point cloud compression | |
JP7049173B2 (en) | Sign language CG translation editing equipment and programs | |
CN117113957A (en) | Method and system for generating on-line structure digital document template | |
JP2005045401A (en) | Object generating apparatus and method thereof | |
Daras et al. | MPEG-4 authoring tool for the composition of 3D audiovisual scenes | |
JP2005045402A (en) | Object generating device and method therefor | |
JP2005045400A (en) | Object generating device and method therefor | |
JP2005045399A (en) | Object generating apparatus and method thereof | |
JP2007519068A (en) | Computer-based calculation method and computer system for generating a semantic description using conversion technology | |
KR20090000733A (en) | System for generating flash contents, and method therefor | |
CN100496124C (en) | Method for generating input file using meta language regarding graphic data compression | |
KR20120108550A (en) | Method and apparatus for providing richmedia contents authoring | |
US20230112894A1 (en) | Information processing apparatus, information processing method, and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20061003 |