(57)【特許請求の範囲】
【請求項１】
３次元形状の画像を作成・編集するための画像編集システムであって、
画像を入力する画像入力手段と、
ユーザが描いたストローク線から垂直方向に生じる面に前記の入力画像をマッピングする画像変形手段と、
を具備し、
前記画像変形手段は、３次元空間上に１以上の面を生成した場合、非選択中の面の基となるストローク線のみを残して表示を消滅させる、
ことを特徴とする画像編集システム。
【請求項２】
前記画像入力手段は、前記面に対してユーザが描いたストローク線を画像入力する、
ことを特徴とする請求項１に記載の画像編集システム。
【請求項３】
前記画像入力手段は、所定の記憶装置上に格納された画像ファイルを読み出して前記面に貼り付ける、
ことを特徴とする請求項１に記載の画像編集システム。
【請求項４】
前記画像変形手段は、前記面に対する回転又は移動のユーザ操作に追従して前記面に貼り付けられた前記入力画像を回転又は移動させる、
ことを特徴とする請求項１に記載の画像編集システム。
【請求項５】
ある１つの３次元空間に対して入力画像をマッピングするための複数の面の生成、及び各面に対する前記画像入力手段による画像入力を許容する、
ことを特徴とする請求項１に記載の画像編集システム。
【請求項６】
前記画像入力手段は、生成された面の他、３次元空間上の地面に対する画像入力を許容する、
ことを特徴とする請求項１に記載の画像編集システム。
【請求項７】
コンピュータを用いて構築される画像編集システム上で実行される、３次元形状の画像を作成・編集するための画像編集方法であって、
前記コンピュータが備える画像入力手段が、画像を入力する画像入力ステップと、
前記コンピュータが備える画像変形手段が、ユーザが描いたストローク線から垂直方向に生じる面に前記の入力画像をマッピングする画像変形ステップと、
を有し、
前記画像変形ステップでは、３次元空間上に１以上の面を生成した場合、非選択中の面の基となるストローク線のみを残して表示を消滅させる、
ことを特徴とする画像編集方法。
【請求項８】
３次元形状の画像を作成・編集するための画像編集処理をコンピュータ上で実行するように記述されたコンピュータ・ソフトウェアをコンピュータ可読形式で物理的に格納した記憶媒体であって、前記コンピュータ・ソフトウェアは前記コンピュータを、
画像を入力する画像入力手段、
ユーザが描いたストローク線から垂直方向に生じる面に前記の入力画像をマッピングする画像変形手段、
として機能させ、
前記画像変形手段は、３次元空間上に１以上の面を生成した場合、非選択中の面の基となるストローク線のみを残して表示を消滅させる、
ことを特徴とする記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、計算機システム上で３次元的なイメージを作成・編集するための画像編集システム及び方法に係り、特に、２次元的な入力イメージを基に計算機システム上で３次元的なイメージを作成・編集するための画像編集システム及び方法に関する。
【０００２】
更に詳しくは、本発明は、マウスなどの装置によって入力された手書きイメージを基に計算機システム上で３次元的なイメージを作成・編集するための画像編集システム及び方法に係り、特に、仮想的に設定されたキャンバス上に手書きにより描画されたイメージを基に３次元的なイメージを作成・編集するための画像編集システム及び方法に関する。
【０００３】
【従来の技術】
昨今の半導体技術や情報技術の進歩に伴い、パーソナル・コンピュータ（ＰＣ）やワークステーションと呼ばれる比較的安価で且つ高性能な計算機システムが広範に普及してきている。この種の計算機システム上では、一般に、オペレーティング・システム（ＯＳ）が提供する実行環境下で、各種のアプリケーションを起動することができる。
【０００４】
計算機システム上で使用されるアプリケーションの種類は、ワープロ、表計算、データベース、通信、グラフィックスなど多岐にわたる。例えば、演算能力や描画機能が強化された計算機システム上では、２Ｄや３Ｄなどのリアリティの高いグラフィックスを比較的容易に作成し、描画したり、さらに画像変形処理を行ったりすることができる。
【０００５】
計算機のディスプレイ・スクリーン上に描かれたイメージは、基本的には２次元画像である。しかしながら、計算機の演算能力を利用することで、２次元イメージを３次元の世界座標系に変換し、さらに視点座標系へ変換することで、３次元イメージを自動生成することができる。また、３次元空間上で描画オブジェクトに対して回転・移動などの作用を与えることで、別の視点から見たオブジェクトを表示することができる。
【０００６】
水彩画、油絵などを始めとする実世界におけるほとんどの描画は所望の絵の具が付された筆先をキャンバス上で所定の軌跡を描かせることによって実現する。他方、計算機システム上での描画は、例えば「筆」の機能を選択したマウス・カーソルをディスプレイ・スクリーン上で軌跡を描くことによって線画が入力される。
【０００７】
マウス操作により手書きと同じような素朴な線画を計算機に入力することができる。この場合、線画は、２次元平面に展開されたものであり、例えば点又は線の集合のデジタル・データとして計算機システムで処理される。但し、手書きにより入力されたデジタル・データをさらに計算機システム上で高度に画像変形したり、そもそも２次元イメージとして入力された手書きイメージを３次元的に処理するという手法は知られていない。
【０００８】
【発明が解決しようとする課題】
本発明の目的は、２次元的な入力イメージを基に計算機システム上で３次元的なイメージを作成・編集することができる、優れた画像編集システム及び方法を提供することにある。
【０００９】
本発明の更なる目的は、マウスなどの装置によって入力された手書きイメージを基に計算機システム上で３次元的なイメージを作成・編集することができる、優れた画像編集システム及び方法を提供することにある。
【００１０】
本発明の更なる目的は、仮想的に設定されたキャンバス上に、手書きにより描画されたイメージを基に３次元的なイメージを作成・編集することができる、優れた画像編集システム及び方法を提供することにある。
【００１１】
【課題を解決するための手段】
本発明は、上記課題を参酌してなされたものであり、その第１の側面は、３次元的なイメージを作成・編集するための画像編集システム又は方法であって、
３次元空間上にキャンバスを設定するキャンバス設定手段又はステップと、
該設定されたキャンバス上に対して画像を入力してキャンバス上に貼り付ける画像入力手段又はステップと、
キャンバスに対するユーザ操作に追従して入力画像を変形させる画像変形手段又はステップと、
を具備することを特徴とする画像編集方法である。
【００１２】
ここで、前記キャンバス設定手段又はステップは、地平線のみからなる３次元空間上に対してユーザがマウスのドラッグ操作により描いたストローク線を底辺とする壁をキャンバスとして設定するようにしてもよい。
【００１３】
また、画像入力手段又はステップは、設定されたキャンバスに対してユーザがマウスのドラッグ操作により描いたストローク線を画像入力してキャンバス上に貼り付けるようにしてもよい。
【００１４】
また、画像入力手段又はステップは、所定の記憶装置上に格納された画像ファイルを読み出して設定されたキャンバス上に貼り付けるようにしてもよい。
【００１５】
また、画像変形手段又はステップは、キャンバスに対する回転及び／又は移動の操作に追従して該キャンバスに貼り付けられた画像を回転及び／又は移動させるようにしてもよい。
【００１６】
また、ある１つの３次元空間に対して前記キャンバス設定手段又はステップによる複数のキャンバスの設定、及び各キャンバスに対する画像入力手段又はステップによる画像入力を許容するようにしてもよい。
【００１７】
また、前記画像入力手段又はステップは、設定されたキャンバスの他、地面に対する画像入力を許容するようにしてもよい。
【００１８】
また、前記キャンバス設定手段又はステップは、３次元空間上に１以上のキャンバスを設定した場合、非選択中のキャンバスの底辺のみを残して表示を消滅させるようにしてもよい。
【００１９】
また、本発明の第２の側面は、３次元的なイメージを作成・編集するための画像編集処理をコンピュータ・システム上で実行するように記述されたコンピュータ・ソフトウェアをコンピュータ可読形式で物理的に格納した記憶媒体であって、前記コンピュータ・ソフトウェアは、
３次元空間上にキャンバスを設定するキャンバス設定ステップと、
該設定されたキャンバス上に対して画像を入力してキャンバス上に貼り付ける画像入力ステップと、
キャンバスに対するユーザ操作に追従して入力画像を変形させる画像変形ステップと、
を具備することを特徴とする記憶媒体である。
【００２０】
本発明の第２の側面に係る記憶媒体は、例えば、様々なプログラム・コードを実行可能な汎用性のコンピュータ・システムに対して、コンピュータ・ソフトウェアをコンピュータ可読な形式で物理的に提供する媒体である。このような媒体は、例えば、ＣＤ（Compact Disc）やＦＤ（Floppy Disc）、ＭＯ（Magneto-Optical disc）などの着脱自在で可搬性の記憶媒体である。あるいは、ネットワーク（ネットワークは無線、有線の区別を問わない）などの伝送媒体などを経由してコンピュータ・ソフトウェアを特定のコンピュータ・システムにコンピュータ可読形式で提供することも技術的に可能である。
【００２１】
このような記憶媒体は、コンピュータ・システム上で所定のコンピュータ・ソフトウェアの機能を実現するための、コンピュータ・ソフトウェアと記憶媒体との構造上又は機能上の協働的関係を定義したものである。換言すれば、本発明の第２の側面に係る記憶媒体を介して所定のコンピュータ・ソフトウェアをコンピュータ・システムにインストールすることによって、コンピュータ・システム上では協働的作用が発揮され、本発明の第１の側面に係る画像編集システム及び方法と同様の作用効果を得ることができる。
【００２２】
【作用】
本発明に係る画像編集システムによれば、まず、地平線のみの３次元空間がディスプレイ・スクリーン上に現れる。
【００２３】
このような３次元空間上で、オペレータ／ユーザは、マウスや入力ペンなどの座標指示装置を用いて、ストロークで線を描く。このようなユーザ入力に応答して、画像編集システムは、ディスプレイ・スクリーン上に、ストローク線を底辺とする垂直な壁を表示する。勿論、ユーザが描いたストロークが曲線であれば、底辺も曲線となり、壁は曲面となる。
【００２４】
このように入力されたストロークを底辺とみなされた壁は、画像編集システム上では、ユーザが絵を描くための「キャンバス」として利用される。すなわち、ユーザがディスプレイ・スクリーンを介して描いた絵は、このキャンバス上にマッピングされるので、結果として３次元空間上で絵を描いたことになる。
【００２５】
そして、ストローク線を引いて壁すなわちキャンバスを設定し、キャンバス上に絵を描くという操作を複数回繰り返すことによって、３次元空間上で所望のシーンを構築することができる。
【００２６】
また、キャンバスの回転や視点移動などの操作を利用することによって、所望の３次元シーンを描画することができる。
【００２７】
本発明に係る画像編集システム及び方法によれば、２次元平面上でのスケッチ感覚で３次元シーンを構築することができる。また、描画はすべて３次元キャンバスへのプロジェクションという形式で行われるので、オペレータは３次元空間上でユーザ入力装置を操作するときのような難しさや煩わしさを感じなくてよい。
【００２８】
また、本発明によれば、３次元的な描画オブジェクトのモデリングとシーン構築を同時に扱うことができる。また、構築したシーンに対して様々な視線方向からのブラウジングを行うことができる。
【００２９】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。
【００３０】
【発明の実施の形態】
以下、図面を参照しながら本発明の実施例を詳解する。
【００３１】
図１には、本発明を実現するのに適した画像編集システム１０のハードウェア構成を模式的に示している。画像編集システム１０は、実際には、ワークステーションやパーソナル・コンピュータと呼ばれる一般的な計算機システム上で画像編集用アプリケーションを起動することによって実現される。計算機システムの一例は、米ＩＢＭ社のＰＣ／ＡＴ（Personal Computer/Advanced Technology）互換機又はその後継機である。以下、システム１０の各部について説明する。
【００３２】
システム１０のメイン・コントローラであるＣＰＵ（Central Processing Unit）１１は、オペレーティング・システム(ＯＳ)の制御下で、各種のアプリケーションを実行するようになっている。ＯＳは、より好ましくはビットマップ形式の描画機能並びにＧＵＩ（Graphical User Interface）環境を提供するが、例えば、ＵＮＩＸや、米Ｍｉｃｒｏｓｏｆｔ社のＷｉｎｄｏｗｓ９８／ＮＴでよい。
【００３３】
図示の通り、ＣＰＵ１１は、バス１７によって他の機器類（後述）と相互接続されている。バス１７上の各機器にはそれぞれ固有のメモリ・アドレス又はＩ／Ｏアドレスが付与されており、ＣＰＵ１１はアドレス指定することによってバス接続された各機器へのアクセスが可能となっている。バス１７の一例はＰＣＩ（Peripheral Component Interconnect）バスである。
【００３４】
メモリ１２は、プロセッサ１１において実行されるプログラム・コードを格納したり、実行中の作業データを一時保管するために使用される記憶装置である。同図に示すメモリ１２は、不揮発メモリ及び揮発メモリ双方を含むものと理解されたい。
【００３５】
ディスプレイ・コントローラ１３は、プロセッサ１１が発行する描画命令を実際に処理するための専用コントローラであり、例えばＳＶＧＡ（Super Video Graphic Array）又はＸＧＡ（eXtended Graphic Array）相当のビットマップ描画機能をサポートする。ディスプレイ・コントローラ１３において処理された描画データは、例えばフレーム・バッファ（図示しない）に一旦書き込まれた後、表示装置２１に画面出力される。表示装置２１は、例えば、ＣＲＴ（Cathode Ray Tube）ディスプレイや、液晶表示ディスプレイ（Liquid Crystal Display）などである。
【００３６】
入力機器インターフェース１４は、キーボード２２やマウス２３などのユーザ入力機器をシステム１０に接続するための装置である。入力機器インターフェース１４は、キーボード２２によるキー入力又はマウス２３を介した座標指示入力に応答して、プロセッサ１１に対して割り込みを発生する。
【００３７】
ネットワーク・インターフェース１５は、Ｅｔｈｅｒｎｅｔ（登録商標）などの所定の通信プロトコルに従って、システム１０をＬＡＮ（Local Area Network）などのネットワーク（図示しない）に接続することができる。ネットワーク・インターフェース１５は、一般に、ＬＡＮアダプタ・カードの形態で提供され、マザーボード（図示しない）上のＰＣＩバス・スロットに装着して用いられる。
【００３８】
ＬＡＮ上では、複数のホスト（コンピュータ）がトランスペアレントな状態で接続され、分散コンピューティング環境が構築されている。また、ホストの一部はルータとして稼動し、さらに他のＬＡＮやインターネットなどの外部ネットワークとの相互接続を実現している。インターネット上では、ソフトウェア・プログラムやデータ・コンテンツなどの配信が行われる。例えば、本実施例に係る画像編集アプリケーションや、画像編集アプリケーション上で作成・編集された３次元描画データなども、ネットワーク経由で配信・配布されてもよい。
【００３９】
但し、ネットワーク・インターフェース１５ではなく、モデム並びに一般電話回線（いずれも図示しない）経由で外部ネットワークに接続することもできる。
【００４０】
外部機器インターフェース１６は、ハード・ディスク・ドライブ（ＨＤＤ）２４やメディア・ドライブ２５などの外部装置をシステム１０に接続するための装置である。外部機器インターフェース１６は、例えば、ＩＤＥ（Integrated Drive Electronics）やＳＣＳＩ（Small Computer System Interface）などのインターフェース規格に準拠する。
【００４１】
ＨＤＤ２４は、記憶担体としての磁気ディスクを固定的に搭載した外部記憶装置であり（周知）、記憶容量やデータ転送速度などの点で他の外部記憶装置よりも優れている。ソフトウェア・プログラムを実行可能な状態でＨＤＤ２６上に置くことをプログラムのシステムへの「インストール」と呼ぶ。通常、ＨＤＤ２４には、プロセッサ１１が実行すべきオペレーティング・システムのプログラム・コードや、アプリケーション・プログラム、デバイス・ドライバなどが不揮発的に格納されている。例えば、本実施例に係る画像編集アプリケーションなどは、ＨＤＤ２４上にインストールされる。また、この画像編集アプリケーション上で作成された３次元描画データなども、所定のファイル・フォーマットでＨＤＤ２４上に蓄積しておくことができる。
【００４２】
また、メディア・ドライブ２５は、ＣＤ（Compact Disc）やＭＯ（Magneto-Optical disc）、ＤＶＤ（Digital Versatile Disc）などの可搬型メディアを装填して、データ記録面にアクセスするための装置である。可搬型メディアは、主として、ソフトウェア・プログラムやデータ・ファイルなどをコンピュータ可読形式のデータとしてバックアップすることや、これらを複数のシステム間で移動（販売・流通・配布を含む）する目的で使用される。例えば、本実施例に係る画像編集アプリケーションや、画像編集アプリケーション上で作成・編集された３次元描画データなどを、これら可搬型メディアを利用して流通・配布することができる。
【００４３】
次いで、この画像編集システム１０上において実現される画像編集作業について詳解する。
【００４４】
図２には、画像編集システム１０が提供する初期の画像編集画面を例示している。
【００４５】
画像編集画面は、ディスプレイ２１上のＧＵＩ（Graphical User Interface）ウィンドウ画面を利用して表示される。同図に示すように、初期ウィンドウ画面は、地平線のみを有する３次元空間で構成される。ユーザは、このような３次元空間に対して、マウス２３などの座標指示装置を用いて、マウスのクリックやドラッグ・アンド・ドロップなどの通常のＧＵＩ操作の他に、ストロークで線を描くなどの画像編集操作を行うことができる。
【００４６】
画像編集画面上には、図６に示すようなメニュー・ダイアログを出現させるようにしてもよい。同図に示す例では、キャンバス、ツール、ブラシサイズ、カラーパレット、オプション、アンドゥ、ウォーク、ターゲット、目線、トップビュー、ヘルプの１２種類のダイアログが用意されている。各メニューは、キャラクタ・ベースのアイコンで作られており、通常のＧＵＩ操作に従いマウス・クリックで選択することができる。
【００４７】
ダイアログ選択時のイベントは、クリックしてキャラクタの頭が上方に伸びる（又は床から出現する）と、クリックして表情が変わるの２通りである。
【００４８】
さらに詳細なメニュー（サブメニュー）を持つようなメニュー・ダイアログの場合、ダイアログをクリックして伸ばすことにより、サブメニューを出現させて選択可能な状態にすることができる。但し、ファイル入出力などをまとめているメニューは、キャラクタの頭が伸びる代わりに吹き出しが出る点で相違する。また、頭が完全に伸びた状態でキャラクタの頭をクリックすると、最初の位置に戻る（図７（ａ）を参照のこと）。
【００４９】
また、サブメニューを含まないメニューに対してクリック操作を印加しても、メニューは伸びないので視覚的なフィードバックを与えることができない。このような場合、ダイアログのキャラクタの表情を変えることによって、選択されたことを伝えることができる（図７（ｂ）を参照のこと）。
【００５０】
ダイアログ「メニュー」は、ファイル入出力に関する操作を選ぶためのものであり、メニュー・バー上の「ファイル」メニューに類似する。ダイアログ「メニュー」をクリックすると、さらに選択可能なサブメニューが吹き出しとなって出現する。図８には、ダイアログ「メニュー」の操作方法を描写している。同図に示す例では、吹き出しの中には、「新規作成」、「開く」、「重ねる」、「上書き保存」、「名前を付けて保存」…などのサブメニューが用意されている。
【００５１】
ダイアログ「キャンバス」は、キャンバスに関する操作を選択するためのダイアログである。本実施例では、キャンバスに関する操作として「作成」、「複製」、「削除」という３種類が用意されている（図９を参照のこと）。
【００５２】
「作成」とは、キャンバスを新規作成する機能である。また、「複製」とは、選択したキャンバスを複製する機能である。また、「削除」とは、キャンバスを削除する機能である。
【００５３】
ダイアログ「ツール」は、ペンの質感と消しゴムの選択を行うダイアログである。本実施例では、「ペン」、「ブラシ」という２種類のペンの質感と、「消しゴム」が用意されている（図１０を参照のこと）。
【００５４】
ペンは、アンチエイリアスの無い２値の、太さ１の線とする。また、ダイアログ「ブラシサイズ」は、ダイアログ「ツール」において選択したペンや消しゴムのペン先の太さを指定・変更するためのダイアログである。本実施例では、「大」、「中」、「小」という３種類の選択肢が用意されている。ブラシは、アンチエイリアスの無い２値のパターンを、ドラッグした軌跡上に一定間隔で描く。なお、ブラシ以外に、「スプレー」などを配設してもよい
【００５５】
ダイアログ「カラーパレット」は、ペン先の配色を指定するためのダイアログであり、図１１に示すように、該ダイアログをクリックすると、２５６色のパレットからなるダイアログが出現する。同図に示す例では、カラーパレットは、３×８マトリックス上に、頻繁に使用される各色が配置されている。該パレット上から選択色をクリックすると、ペン先の色が変更するようになっている。
【００５６】
ダイアログ「オプション」はオプション的な機能を選択するためのダイアログであり、本実施例では、「テクスチャ」、「ビルボード」、「サウンド」という３種類のオプション機能が用意されている。ダイアログの頭をクリックすると上方に伸び各サブメニューが出現する（図１２を参照のこと）。
【００５７】
「テクスチャ」は、テクスチャを読み込んで、現在開いているキャンバスにテクスチャをマッピングする機能である。テクスチャは、通常、ｐｎｇやｊｐｅｇなどの画像ファイルの形式で提供される。
【００５８】
また、「ビルボード」は、現在開いているキャンバスをビルボード・タイプにする機能である（デフォルトのキャンバスはビルボード・タイプではない）。ビルボード・タイプにすると、Ｙ軸を回転軸にしてユーザの視点方向に向きを変えるようになる。
【００５９】
また、「サウンド」とは、３次元空間上に音（ＢＧＭ）を配置する機能である。各キャンバス毎に最大１つのサウンドを貼り付けることができる。各サウンドはサウンドＩＤ番号で管理される。
【００６０】
ダイアログ「アンドゥ」は、キャンバスに対してユーザが行った描画操作の取り消しを行うダイアログである。例えば、該ダイアログをマウスでクリックした回数だけ、描画操作を遡って取り消し処理を行う（図１３を参照のこと）。
【００６１】
ダイアログ「ウォーク」は、キャンバスが配置された３次元空間における視点を前後左右への移動を行うダイアログである。該ダイアログの頭をクリックすると上方に伸び、前後並びに左右の各方向への視点の移動を指示する各ボタンで構成されるサブメニューが出現する（図１４を参照のこと）。
【００６２】
ダイアログ「ターゲット」は、例えば画像編集画面上に複数のキャンバスが配置されている場合に、ターゲットという機能を呼び出すダイアログである。ここで言うターゲットとは、クリックしたキャンバスの正面に移動する機能のことである。その際、ターゲット・キャンバスの法線を考慮したり、スローイン・スロー・アウトなど、動きにメリハリを付けてもよい。
【００６３】
ダイアログ「ターゲット」の頭をクリックすると上方に伸びて、ターゲットを指定する各ボタンで構成されるサブメニューが出現する（図１５を参照のこと）。このサブメニュー上には、「ターゲット」、「次前」、「ホーム」という３種類のボタンが用意されている。
【００６４】
マウスでキャンバスを指定して、「ターゲット」をクリックすると、キャンバス前に移動する。また、「次前」をクリックすると、編集対象のキャンバスに対して、その前又は後に設定されたキャンバスに移動する。また、「ホーム」をクリックすると、所定のホーム・ポジションに移動する。
【００６５】
ダイアログ「目線」は、画像編集画面上の視点を上下に移動する機能を呼び出すためのダイアログである。該ダイアログの頭をクリックすると上方に伸び、上下の各方向への視点の移動を指示する各ボタンと、目線をリセットするボタンとで構成されるサブメニューが出現する（図１６を参照のこと）。
【００６６】
ダイアログ「トップビュー」は、視点を９０度回転して、真上から地面を見る機能を呼び出すためのダイアログである。該ダイアログの頭をクリックすると、少し下方に沈み込んで、見下ろすような様子に切り替わる（図１７を参照のこと）。
【００６７】
ダイアログ「ヘルプ」は、いわゆるヘルプ機能を呼び出すためのダイアログである。画像編集システム１０（図１を参照のこと）が外部ネットワークに接続されているような場合、このヘルプ機能はオンライン・ヘルプと連携していてもよい。
【００６８】
図３には、画像編集画面の例えば最上段に配設されるメニュー・バーの構成例を示している。同図に示すように、メニュー・バー上には、「ファイル」メニュー、「編集」メニュー、「表示」メニュー、「シーン・オプション」メニュー、「ヘルプ」メニューなど複数のメニュー項目が配置されている。
【００６９】
図４には、メニュー「ファイル」を選択時に表示されるプルダウン・メニューの構成例を示している。同図に示すように、該プルダウン・メニュー中には、「新規」、「開く」、「マージロード」、「保存」、「別名保存」、「書き出し」、「プリント」、「シーン画像セーブ」、並びに「終了」などのサブメニュー項目が含まれている。
【００７０】
「新規」は、現在のデータを捨てて新規に画像作成を開始することを指示するメニュー項目である。現在のデータが未保存なら、新規作成の前に、保存するか否かがプロンプトされる。（この際のセーブは、現状のファイル名による強制上書きセーブのみ。）
【００７１】
「開く」は、既に保管されているデータを起動するためのメニュー項目であり、Ｗｉｎｄｏｗｓを始めとするユーザ・インターフェースにおける標準的なファイル・ダイアログを用いて実装される。
【００７２】
「マージロード」は、現在のデータへの付け加えを行うためのメニュー項目であり、Ｗｉｎｄｏｗｓを始めとするユーザ・インターフェースにおける標準的なファイル・ダイアログを用いて実装される。
【００７３】
「保存」は、現在編集中の画像データを現状のファイル名により強制上書きセーブを行うためのメニュー項目である。また、「別名保存」は、他のファイル名によりセーブを行うためのメニュー項目である。これらはいずれも、Ｗｉｎｄｏｗｓを始めとするユーザ・インターフェースにおける標準的なファイル・ダイアログを用いて実装される。
【００７４】
「書き出し」は、作成した画像データをＶＲＭＬ（Virtual Reality Modeling Language）２．０形式で書き出すためのメニュー項目であり、Ｗｉｎｄｏｗｓを始めとするユーザ・インターフェースにおける標準的なファイル・ダイアログを用いて実装される。
【００７５】
「プリント」は、画面上で指定された３次元シーンのプリント・アウトを行うためのメニュー項目である。見えている画面の状態をそのまま出力することが好ましく、メニューがプルダウンした状態にならないための処理が必要である。該メニュー項目は、Ｗｉｎｄｏｗｓを始めとするユーザ・インターフェースにおける標準的なファイル・ダイアログを用いて実装される。
【００７６】
「シーン画像セーブ」は、見えている画面の状態そのままの状態を画像ファイルにセーブするためのメニュー項目である。見えている画面の状態をそのまま出力することが好ましく、メニューがプルダウンした状態にならないための処理が必要である。該メニュー項目は、Ｗｉｎｄｏｗｓを始めとするユーザ・インターフェースにおける標準的なファイル・ダイアログを用いて実装される。
【００７７】
「終了」は、画像編集アプリケーションを終了させるためのメニュー項目である。現在編集中の画像データが未保存の状態であれば、終了する前に、保存するか否かがプロンプトされる。（この際のセーブは，現状のファイル名による強制上書きセーブのみ。）
【００７８】
また、図５には、メニュー「シーン・オプション」を選択時に表示されるプルダウン・メニューの構成例を示している。同図に示すように、該プルダウン・メニュー中には、「地面サイズ設定」、「地面カラー設定」、「グリッド」、「地面テクスチャ設定」、「空色設定」、並びに「地平線」などのサブメニュー項目が含まれている。
【００７９】
「地面サイズ設定」は、地面サイズを設定するためのメニュー項目であり，例えばデフォルトの地面サイズを２０ｍ×２０ｍとする。将来、３次元空間上で街を構築するような場合を考慮するならば、地面サイズ設定機能は重要となる。また、「地面カラー設定」は、地面の色又は配色を設定するためのメニュー項目であり、初期値はデフォルトの単一色とする。また、「地面テクスチャ設定」は、地面に貼り付ける模様・テクスチャを指定するためのメニュー項目である。
【００８０】
「グリッド」は、地面上に格子状の模様を表示するためのメニュー項目である。グリッドは、３次元空間上で距離感を表すために役立つ。
【００８１】
「空色設定」は、背景となる空の色を指定するためのメニュー項目であり、２次元的な上下方向のグラデーションを有している。
【００８２】
「地平線」は、画像編集画面上で地平線の高さを指定するためのメニュー項目である。地平線より下は、空の色ではなく地面カラー設定により指定された色で表示される。
【００８３】
次いで、本実施例に係る画像編集システム１０上で実現される３次元イメージの描画処理について説明する。
【００８４】
画像編集システム１０上での描画処理の全体的な流れは、以下の（１）〜（６）で構成される。
【００８５】
（１）地平線のみの３次元空間（図２を参照のこと）が現れる。
【００８６】
（２）３次元空間に対して、ストロークで線を引く。
【００８７】
（３）ストローク線を底辺とする壁が現れる。
ストロークが曲線ならば壁も曲面となる。
【００８８】
（４）壁をキャンバスとみなして、ユーザは絵を描く。
ユーザの描いた絵は、壁にマッピングされるので、結果として３Ｄの絵を描いたことになる。
【００８９】
（５）さらに他の壁を描いて、新たにキャンバスを設定して、その上に絵を描く。
キャンバス上に絵を描く操作の繰り返しにより、所望の３次元シーンを構築することができる。
【００９０】
（６）キャンバスの回転や、視点移動によって３次元イメージを描画する。
キャンバスの回転や視点移動には、例えば、該当するダイアログ・メニュー（前述）を使用することによって実現する。
【００９１】
次いで、図１８〜図２３を参照しながら、画像編集システム１０における３次元イメージの描画処理の例について説明する。
【００９２】
まず、地平線のみからなる３次元空間（図２を参照のこと）で、地面をマウスでドラッグして、ストローク線を引く。このようなユーザ入力操作に応答して、このストローク線を底辺とする壁が現れる（図１８を参照のこと）。元のストローク線が曲線であれば、このようなユーザ操作に従って、壁は曲面となる。
【００９３】
壁はキャンバスとみなされ、ユーザはその上に絵を描くことができる。すなわち、ユーザは、マウスをドラッグして壁に対して絵を描くことができる（図１９を参照のこと）。このとき、ペン先の太さや質感、色などは、例えばダイアログ・メニューを用いて指定することができる（前述）。また、ペン先を消しゴムに指定して、既に描いた線を消去することもできる。
【００９４】
壁に描かれた絵はそのまま壁すなわちキャンバスにマッピングされるので、結果として３次元的な絵を描いたことになる。図１９に示す例では、キャンバス上に、いわゆる「へのへのもへじ」が描かれている。
【００９５】
既に述べたように、ユーザは、ダイアログ・メニューを介して、キャンバスの回転や視点移動を行うことができる（図２０を参照のこと）。これにより、所望の３次元シーンを得ることができる。
【００９６】
また、「キャンバス」ダイアログを用いて、キャンバスを画面上から削除することができる（前述）。このような場合、画像編集画面上には地平線と描かれた絵の3次元イメージのみが残される（図２１を参照のこと）。
【００９７】
さらに、キャンバスを削除した上で、３次元イメージを回転や視点移動させることができる。このような操作は、キャンバスの回転や視点移動の操作に準じて行うことができる。図２２には３次元イメージをＺ軸に対して時計回りに回転させた様子を示し、図２３には３次元イメージをＺ軸に対して反時計回りに回転させた様子を示している。
【００９８】
次いで、図２４〜図２９を参照しながら、画像編集システム１０における３次元イメージの描画処理に関する他の例について説明する。
【００９９】
まず、地平線（図中では省略）のみからなる３次元空間上で、地面をマウスでドラッグしてストローク線を引く。これに応答して、ストローク線を底辺とする壁が現れキャンバスが設定される。ユーザは、このキャンバス上に、木の絵を描く（図２４を参照のこと）。
【０１００】
さらに、３次元空間上の別の場所（例えば、図２４に示したキャンバスよりも画面奥の場所）にストローク線を引いて、壁すなわちキャンバスを設定して、このキャンバス上に木の絵を描く（図２５を参照のこと）。なお、新たにキャンバスを設定したことに応答して、以前のキャンバスは画像編集画面上から一旦消滅する。
【０１０１】
さらに、３次元空間上の別の場所（例えば、図２４及び図２５に示したキャンバスよりも画面奥の場所）にストローク線を引いて壁すなわちキャンバスを設定して、このキャンバス上に家の絵を描く（図２６を参照のこと）。なお、新たにキャンバスを設定したことに応答して、以前のキャンバスは画像編集画面上から一旦消滅する。
【０１０２】
次いで、例えば「トップビュー」ダイアログを利用して、画面上の視点を９０度回転させて、真上から地面を見る画面に変換する（図２７を参照のこと）。この場合、最初のキャンバスで描いた木、２番目のキャンバスで描いた木、並びに３番目のキャンバスで描いた家の上面を画面で見ることができる。
【０１０３】
そして、今度は地面の上でストローク線を引いて、地面に道を描く（図２８を参照のこと）。壁すなわちキャンバス上での描画と同様に、地面上をマウスでドラッグして絵を描くことができるという点を充分理解されたい。
【０１０４】
そして、「トップビュー」ダイアログを用いて、視線を元の位置まで戻す。この結果、図２６に示したような、２組の木と家からなる風景に道が形成された３次元イメージを得ることができる（図２９を参照のこと）。
【０１０５】
地平線により近い位置に壁を描くことで、より奥に絵を描くことができる。また、遠くで大まかにしか描けなかった絵に対して、視点移動により近づくことでさらに詳細に絵を描くこともできる。
【０１０６】
なお、図２４〜図２９に示した描画例では、壁を描いてその上に絵を描くという操作を３回繰り返して行っているが、４回以上繰り返して行っても勿論構わない。キャンバスの設定とキャンバス上への描画を多数回繰り返すことで、より複雑な絵を描くことができる。
【０１０７】
図３０には、本実施例に係る画像編集システム１０上で実現される３次元イメージ編集処理の手順をフローチャートの形式で示している。該処理手順は、例えば、コンピュータ・システム上で所定のプログラム・コードを実行するという形態で実現することもできる。以下、このフローチャートに従ってイメージ編集処理について説明する。
【０１０８】
画像処理システム１を起動すると（あるいは、コンピュータ・システム上で画像処理アプリケーションを起動すると）、地平線のみからなる３次元空間の画面（図２を参照のこと）が現れる（ステップＳ１）。
【０１０９】
この画面上で、マウス２３をドラッグすることによって所望のストローク線を引く（ステップＳ２）。
【０１１０】
画面上にまだキャンバスがない場合には（ステップＳ３）、引いたストローク線を２Ｄ→３Ｄ変換して地面に割り付け（ステップＳ４）、この３Ｄストローク線を底辺とするキャンバスを画面上に出現させる（ステップＳ５）。
【０１１１】
また、画面上に既に他のキャンバスがある場合（ステップＳ３）、このキャンバス上に絵がなければ（ステップＳ６）、キャンバスを画面から消滅させた上で（ステップＳ７）、今回引いたストローク線を２Ｄ→３Ｄ変換して地面に割り付け（ステップＳ４）、この３Ｄストローク線を底辺とするキャンバスを画面上に出現させる（ステップＳ５）。
【０１１２】
また、画面上には、既に絵が描かれた他のキャンバスがある場合には（ステップＳ３，Ｓ４）、その絵とキャンバスの底辺（すなわち補助線）のみを残して（ステップＳ８）、今回引いたストローク線を２Ｄ→３Ｄ変換して地面に割り付け（ステップＳ４）、この３Ｄストローク線を底辺とするキャンバスを画面上に出現させる（ステップＳ５）。
【０１１３】
また、補助線すなわちキャンバスの底辺をマウスでクリックした場合には（ステップＳ９）、補助線を底辺とするキャンバスが現れる（ステップＳ１０）。
【０１１４】
画面上にキャンバスが出現した状態は、ユーザがキャンバスに向かって絵を描くことができる描画モードである。描画モード下では、ユーザには、「ペンの属性変更」（ステップＳ１１）、「絵を描くための線を引く」（ステップＳ１２）、「キャンバスの回転・移動」（ステップＳ１５）、「視点移動」（ステップＳ１７）、「画像を読み込む」（ステップＳ１８）などの操作が許容される。
【０１１５】
ペンの属性変更（ステップＳ１１）は、例えば、マウスの右ボタンをクリックしてプロパティ・ウィンドウ（図示しない）を開いて、該ウィンドウ上で行うことができる。あるいは、ダイアログ「ツール」（図１０を参照のこと）を用いてペンの太さや質感を変えたり、ダイアログ「カラーパレット」（図１１を参照のこと）を用いてペン先の色を指定することができる。
【０１１６】
また、絵を描くための線引き（ステップＳ１２）は、現在出現しているキャンバスに向かって、マウス２３をドラッグすることによって行われる。キャンバス上に線がある場合には（ステップＳ１３）、この線はキャンバス上にマッピングされ（ステップＳ１４）、以後の処理では３次元図形データとして扱われる。
【０１１７】
また、キャンバスの回転や移動（ステップＳ１５）、並びに視点移動（ステップＳ１６）は、ダイアログ「ウォーク」（図１４を参照のこと）や、ダイアログ「目線」（図１６を参照のこと）を用いて行うことができる。キャンバスの回転・移動又は視点移動が指示されたときには、視点座標の変換を行い（ステップＳ１６）、画面表示を更新する。
【０１１８】
また、ユーザは、逐次新たに絵を描く必要はなく、例えばハード・ディスク上に既に保存されている画像ファイルを読み込んで（ステップＳ１８）、この画像を編集するようにしてもよい。このような場合、読み込んだ画像のサイズをキャンバスに合わせ（ステップＳ１９）、キャンバスにマッピングすればよい（ステップＳ２０）。
【０１１９】
［追補］
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、冒頭に記載した特許請求の範囲の欄を参酌すべきである。
【０１２０】
【発明の効果】
以上詳記したように、本発明によれば、２次元的な入力イメージを基に計算機システム上で３次元的なイメージを作成・編集することができる、優れた画像編集システム及び方法を提供することができる。
【０１２１】
また、本発明によれば、マウスなどの装置によって入力された手書きイメージを基に計算機システム上で３次元的なイメージを作成・編集することができる、優れた画像編集システム及び方法を提供することができる。
【０１２２】
また、本発明によれば、仮想的に設定されたキャンバス上に手書きにより描画されたイメージを基に３次元的なイメージを作成・編集することができる、優れた画像編集システム及び方法を提供することができる。
【０１２３】
本発明に係る画像編集システム及び方法によれば、２次元平面上でのスケッチ感覚で３次元シーンを構築することができる。また、描画はすべて３次元キャンバスへのプロジェクションで行われるので、オペレータは３次元空間上でユーザ入力装置を操作するような難しさや煩わしさを感じなくてよい。
【０１２４】
また、本発明によれば、３次元的な描画オブジェクトのモデリングとシーン構築を同時に扱うことができる。また、構築したシーンに対して様々な視線方向からのブラウジングを行うことができる。
【図面の簡単な説明】
【図１】本発明を実現するのに適した画像編集システム１０のハードウェア構成を模式的に示した図である。
【図２】画像編集システム１０が提供する初期の画像編集画面を例示した図である。
【図３】画像編集画面の例えば最上段に配設されるメニュー・バーの構成例を示した図である。
【図４】メニュー「ファイル」を選択時に表示されるプルダウン・メニューの構成例を示した図である。
【図５】メニュー「シーン・オプション」を選択時に表示されるプルダウン・メニューの構成例を示した図である。
【図６】画像編集画面上に用意されたメニュー・ダイアログを示した図である。
【図７】メニュー・ダイアログの操作方法を描写した図である。
【図８】ダイアログ「メニュー」の操作方法を描写した図である。
【図９】ダイアログ「キャンバス」の操作方法を描写した図である。
【図１０】ダイアログ「ツール」の操作方法を描写した図である。
【図１１】ダイアログ「カラーパレット」の操作方法を描写した図である。
【図１２】ダイアログ「オプション」の操作方法を描写した図である。
【図１３】ダイアログ「アンドゥ」の操作方法を描写した図である。
【図１４】ダイアログ「ウォーク」の操作方法を描写した図である。
【図１５】ダイアログ「ターゲット」の操作方法を描写した図である。
【図１６】ダイアログ「目線」の操作方法を描写した図である。
【図１７】ダイアログ「トップビュー」の操作方法を描写した図である。
【図１８】本実施例に係る画像編集システム１０上で３次元イメージを描画する様子を示した図である。
【図１９】本実施例に係る画像編集システム１０上で３次元イメージを描画する様子を示した図である。
【図２０】本実施例に係る画像編集システム１０上で３次元イメージを描画する様子を示した図である。
【図２１】本実施例に係る画像編集システム１０上で３次元イメージを描画する様子を示した図である。
【図２２】本実施例に係る画像編集システム１０上で３次元イメージを描画する様子を示した図である。
【図２３】本実施例に係る画像編集システム１０上で３次元イメージを描画する様子を示した図である。
【図２４】本実施例に係る画像編集システム１０上で３次元イメージを描画する様子を示した図である。
【図２５】本実施例に係る画像編集システム１０上で３次元イメージを描画する様子を示した図である。
【図２６】本実施例に係る画像編集システム１０上で３次元イメージを描画する様子を示した図である。
【図２７】本実施例に係る画像編集システム１０上で３次元イメージを描画する様子を示した図である。
【図２８】本実施例に係る画像編集システム１０上で３次元イメージを描画する様子を示した図である。
【図２９】本実施例に係る画像編集システム１０上で３次元イメージを描画する様子を示した図である。
【図３０】本実施例に係る画像編集システム１０上で実現される３次元イメージ編集処理の手順を示したフローチャートである。
【符号の説明】
１０…画像編集システム
１１…ＣＰＵ
１２…メモリ
１３…ディスプレイ・コントローラ
１４…入力機器インターフェース
１５…ネットワーク・インターフェース
１６…外部機器インターフェース
１７…バス
２１…ディスプレイ
２２…キーボード
２３…マウス
２４…ＨＤＤ
２５…メディア・ドライブ
【図１】
0004449183.tif 000002
【図２】
0004449183.tif 000003
【図３】
0004449183.tif 000004
【図４】
0004449183.tif 000005
【図５】
0004449183.tif 000006
【図６】
0004449183.tif 000007
【図７】
0004449183.tif 000008
【図８】
0004449183.tif 000009
【図９】
0004449183.tif 000010
【図１０】
0004449183.tif 000011
【図１１】
0004449183.tif 000012
【図１２】
0004449183.tif 000013
【図１３】
0004449183.tif 000014
【図１４】
0004449183.tif 000015
【図１５】
0004449183.tif 000016
【図１６】
0004449183.tif 000017
【図１７】
0004449183.tif 000018
【図１８】
0004449183.tif 000019
【図１９】
0004449183.tif 000020
【図２０】
0004449183.tif 000021
【図２１】
0004449183.tif 000022
【図２２】
0004449183.tif 000023
【図２３】
0004449183.tif 000024
【図２４】
0004449183.tif 000025
【図２５】
0004449183.tif 000026
【図２６】
0004449183.tif 000027
【図２７】
0004449183.tif 000028
【図２８】
0004449183.tif 000029
【図２９】
0004449183.tif 000030
【図３０】
0004449183.tif 000031