JP5061177B2 - Image processing apparatus, image data generation apparatus, image processing method, image data generation method, and data structure of image file - Google Patents
Image processing apparatus, image data generation apparatus, image processing method, image data generation method, and data structure of image file Download PDFInfo
- Publication number
- JP5061177B2 JP5061177B2 JP2009292939A JP2009292939A JP5061177B2 JP 5061177 B2 JP5061177 B2 JP 5061177B2 JP 2009292939 A JP2009292939 A JP 2009292939A JP 2009292939 A JP2009292939 A JP 2009292939A JP 5061177 B2 JP5061177 B2 JP 5061177B2
- Authority
- JP
- Japan
- Prior art keywords
- image
- map
- height
- display
- data
- 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.)
- Active
Links
Images
Landscapes
- Processing Or Creating Images (AREA)
- Image Generation (AREA)
Description
本発明は、視点の移動に伴い表示画像を変化させる画像処理技術に関する。 The present invention relates to an image processing technique for changing a display image as the viewpoint moves.
ゲームプログラムを実行するだけでなく、動画を再生できる家庭用エンタテインメントシステムが提案されている。この家庭用エンタテインメントシステムでは、GPUがポリゴンを用いた三次元画像を生成する(例えば特許文献1参照)。 Home entertainment systems have been proposed that not only execute game programs, but also play video. In this home entertainment system, the GPU generates a three-dimensional image using polygons (see, for example, Patent Document 1).
画像表示の目的に関わらず、画像をいかに効率よく表示するかは常に重要な問題となる。特に高精細な画像を高速に描画するためには様々な工夫が必要となり、例えばテクスチャデータを別に保持しマッピングを効率的に行う手法について提案がなされている(例えば非特許文献1および2参照)。
Regardless of the purpose of image display, how efficiently an image is displayed is always an important issue. In particular, various ideas are required to draw a high-definition image at high speed. For example, a technique for efficiently storing texture data and performing mapping efficiently has been proposed (see, for example, Non-Patent
表示画像が高精細化しても、データサイズを小さく抑えること、高速に描画することは、画像を応答性良く表示するためには常に重要な課題である。また高精細な画像を利用して、視点の様々な移動に対応させて表示画像を変化させ、臨場感を表現することのできる技術が望まれている。 Even if the display image has a high definition, keeping the data size small and drawing at high speed are always important issues in order to display the image with high responsiveness. In addition, there is a demand for a technique that can express a sense of reality by using a high-definition image to change a display image corresponding to various movements of the viewpoint.
本発明はこのような課題に鑑みてなされたものであり、その目的は、高精細な画像を効率的かつ臨場感をもって表示することのできる画像処理技術を提供することにある。 The present invention has been made in view of such problems, and an object thereof is to provide an image processing technique capable of displaying a high-definition image efficiently and with a sense of reality.
本発明のある態様は画像処理装置に関する。この画像処理装置は、表示対象の画像を描画するための複数の処理のそれぞれに用いる複数の画像データを格納した記憶部と、ユーザが入力した視点移動要求に従い、表示対象の画像のうち新たに表示すべき領域のフレーム座標を特定する描画領域特定部と、フレーム座標に対応する表示画像の領域を、記憶部に格納された画像データを用いて描画し、表示装置に出力する表示画像処理部と、を備え、表示画像処理部は、視点移動要求に基づく視点の高さによって、複数の画像データのいずれかを用いる複数の処理のうち実施する処理を異ならせることを特徴とする。 One embodiment of the present invention relates to an image processing apparatus. The image processing apparatus newly stores a display target image in accordance with a storage unit storing a plurality of image data used for each of a plurality of processes for rendering a display target image and a viewpoint movement request input by a user. A drawing area specifying unit that specifies the frame coordinates of the area to be displayed, and a display image processing unit that draws a display image area corresponding to the frame coordinates using image data stored in the storage unit and outputs the image to the display device The display image processing unit is characterized in that a process to be performed among a plurality of processes using any one of the plurality of image data is made different depending on the height of the viewpoint based on the viewpoint movement request.
本発明の別の態様は画像データ生成装置に関する。この画像データ生成装置は、対象物を撮影した画像のデータを生成する画像データ生成装置であって、光源の方向を異ならせて対象物を撮影した複数の計測画像を取得する計測画像取得部と、計測画像のうち所定の光源の方向での計測画像から、画素ごとの色情報を保持するカラーマップを作成するカラーマップ作成部と、計測画像を照度差ステレオ法により解析し、対象物の法線ベクトルを画像中の画素に対応させて表した法線マップを作成する法線マップ作成部と、法線マップを所定の方向にて全面走査し、法線ベクトルから得られる当該所定の方向における対象物の傾きを積分することにより当該対象物の高さを画素に対応させて表したハイトマップを作成するハイトマップ作成部と、カラーマップ、法線マップ、およびハイトマップを画像データとして格納する記憶部と、を備えることを特徴とする。 Another embodiment of the present invention relates to an image data generation apparatus. The image data generation device is an image data generation device that generates data of an image obtained by photographing an object, and a measurement image acquisition unit that obtains a plurality of measurement images obtained by photographing the object with different directions of light sources; A color map creation unit that creates a color map that holds color information for each pixel from a measurement image in a predetermined light source direction of the measurement image, and the measurement image is analyzed by an illuminance difference stereo method, A normal map creation unit that creates a normal map that represents a line vector corresponding to a pixel in the image, and scans the normal map in a predetermined direction in a predetermined direction, and in the predetermined direction obtained from the normal vector A height map creation unit that creates a height map that represents the height of the target object corresponding to the pixel by integrating the inclination of the target object, and a color map, normal map, and height map Characterized in that it comprises a storage unit for storing the image data.
本発明のさらに別の態様は画像処理方法に関する。この画像処理方法は、ユーザが入力した視点移動要求に従い、表示対象の画像のうち新たに表示すべき領域のフレーム座標を特定するステップと、記憶装置に格納された、表示対象の画像を描画するための複数の処理のそれぞれに用いる複数の画像データのうち少なくともいずれかを読み出し、それを用いて前記フレーム座標に対応する表示画像の領域を描画するステップと、描画した領域のデータを表示装置に出力するステップと、を含み、描画するステップは、視点移動要求に基づく視点の高さによって、複数の画像データのいずれかを用いる前記複数の処理のうち実施する処理を異ならせることを特徴とする。 Yet another embodiment of the present invention relates to an image processing method. According to the viewpoint movement request input by the user, the image processing method specifies a frame coordinate of a region to be newly displayed in the display target image, and renders the display target image stored in the storage device. Reading at least one of a plurality of image data used for each of a plurality of processes for rendering a display image region corresponding to the frame coordinates using the read image data, and displaying the rendered region data on a display device And the step of drawing is characterized in that the processing to be performed among the plurality of processes using any one of the plurality of image data is made different depending on the height of the viewpoint based on the viewpoint movement request. .
本発明のさらに別の態様は画像データ生成方法に関する。この画像データ生成方法は、対象物を撮影した画像のデータを生成する画像データ生成方法であって、光源の方向を異ならせて対象物を撮影した複数の計測画像を取得しメモリに格納するステップと、メモリより読み出した、計測画像のうち所定の光源の方向での計測画像を用いて、画素ごとの色情報を保持するカラーマップを作成するステップと、メモリより読み出した計測画像を、照度差ステレオ法により解析し、対象物の法線ベクトルを画像中の画素に対応させて表した法線マップを作成するステップと、法線マップを所定の方向にて全面走査し、法線ベクトルから得られる当該所定の方向における対象物の傾きを積分することにより当該対象物の高さを画素に対応させて表したハイトマップを作成するステップと、カラーマップ、前記法線マップ、および前記ハイトマップを画像データとして記憶装置に格納するステップと、を含むことを特徴とする。 Still another embodiment of the present invention relates to an image data generation method. This image data generation method is an image data generation method for generating data of an image obtained by photographing an object, and a step of acquiring a plurality of measurement images obtained by photographing an object with different directions of a light source and storing them in a memory And a step of creating a color map that holds color information for each pixel using a measurement image in the direction of a predetermined light source out of the measurement image read from the memory, and the measurement image read from the memory Analyzing with the stereo method, creating a normal map that represents the normal vector of the object corresponding to the pixels in the image, and scanning the normal map in the specified direction to obtain it from the normal vector A step of creating a height map representing the height of the object corresponding to the pixel by integrating the inclination of the object in the predetermined direction, a color map, And storing normal map, and the height map in the storage device as the image data, characterized in that it comprises a.
本発明のさらに別の態様は画像ファイルのデータ構造に関する。このデータ構造は、画像の少なくとも一部をディスプレイに表示するために記憶装置から読み出される画像ファイルのデータ構造であって、表示画像の色を表現するために用いる、色情報を画素ごとに保持するカラーマップと、画像中の対象物に対する視差を表現するために用いる、当該対象物の画像平面に対する高さの情報を画素ごとに保持するハイトマップと、画像中の対象物の表面に凹凸を表現するために用いる、当該対象物の表面の法線ベクトルの情報を画素ごとに保持する法線マップと、設定された光源の方向に対応する影をつけるために用いる、各画素に対象物の影が生じるときの光源の方向の情報を画素ごとに保持するホライズンマップと、を対応づけたことを特徴とする。 Still another embodiment of the present invention relates to a data structure of an image file. This data structure is a data structure of an image file read from a storage device to display at least a part of an image on a display, and holds color information used for expressing the color of a display image for each pixel. A color map, a height map used for expressing parallax with respect to an object in the image and holding height information for the image plane of the object for each pixel, and irregularities on the surface of the object in the image The normal map that holds the normal vector information of the surface of the target object for each pixel and the shadow of the target object for each pixel that is used to add a shadow corresponding to the set light source direction. And a horizon map that holds information on the direction of the light source for each pixel.
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。 It should be noted that any combination of the above-described constituent elements and a representation of the present invention converted between a method, an apparatus, a system, a computer program, etc. are also effective as an aspect of the present invention.
本発明によると、臨場感のある画像表示を効率的に行うことができる。 According to the present invention, realistic image display can be performed efficiently.
本実施の形態は、凹凸のある対象物の画像を精細かつ臨場感をもって表示する。対象物として油絵を例にとると、絵の具ののせ方を含む筆のタッチは作者によって様々であり、それが表現手法の一つとなる。展覧会などで鑑賞者は、絵画に顔を近づけてそのようなタッチを見たり、遠ざかって全体の構成を見たりすることにより作品を味わう。油絵に限らず対象物の表面にある凹凸はその物の質感を表現するために重要な要素である。対象物を画面上で再現する場合、画素数を多くして色情報を詳細にするのみではこのような凹凸感は出にくい。そこで本実施の形態では、表面の凹凸による陰影、細かい鏡面反射、視線の隠蔽などを表現することにより、臨場感のある画像表示を可能にする。 In the present embodiment, an image of an uneven object is displayed with a fine and realistic feeling. Taking oil painting as an example, the touch of a brush, including how to put a paint on it, varies depending on the author, which is one of the expression methods. At exhibitions etc., viewers can enjoy the work by bringing their faces closer to the painting and seeing such a touch, or moving away to see the entire composition. The unevenness on the surface of the object is not only an oil painting but an important element for expressing the texture of the object. When the object is reproduced on the screen, such unevenness is hard to appear only by increasing the number of pixels and making the color information detailed. Therefore, in the present embodiment, it is possible to display an image with a sense of presence by expressing shading due to surface irregularities, fine specular reflection, hiding the line of sight, and the like.
図1は、本実施の形態の画像処理システム1の使用環境を示す。画像処理システム1は、画像処理を含むアプリケーションプログラムを実行する画像処理装置10と、画像処理装置10による処理結果を出力する表示装置12とを備える。表示装置12は、画像を出力するディスプレイおよび音声を出力するスピーカを有するテレビであってよい。
FIG. 1 shows a use environment of an
表示装置12は、画像処理装置10に有線ケーブルで接続されてよく、また無線LAN(Local Area Network)などにより無線接続されてもよい。画像処理システム1において、画像処理装置10は、ケーブル14を介してインターネットなどの外部ネットワークに接続し、圧縮画像データを含むコンテンツなどをダウンロードして取得してもよい。なお画像処理装置10は、無線通信により外部ネットワークに接続してもよい。
The
画像処理装置10は、ユーザからの視点移動要求に応じて、表示装置12のディスプレイに表示する画像の拡大/縮小処理や、上下左右方向への移動処理など、表示領域を変更する処理を行う。ユーザが、ディスプレイに表示された画像を見ながら入力装置を操作すると、入力装置が、視点移動要求信号を画像処理装置10に送信する。
In response to a viewpoint movement request from the user, the
図2は、入力装置20の外観構成を示す。入力装置20は、ユーザが操作可能な操作手段として、十字キー21、アナログスティック27a、27bと、4種の操作ボタン26を備える。4種の操作ボタン26は、○ボタン22、×ボタン23、□ボタン24および△ボタン25から構成される。
FIG. 2 shows an external configuration of the
画像処理システム1において、入力装置20の操作手段には、視点の高さの変更要求、すなわち表示画像の拡大/縮小要求、および視点の水平面での移動要求、すなわち上下左右方向へのスクロール要求を入力するための機能が割り当てられる。たとえば、表示画像の拡大/縮小要求の入力機能は、右側のアナログスティック27bに割り当てられる。ユーザはアナログスティック27bを手前に引くことで、表示画像の縮小要求を入力でき、また手前から押すことで、表示画像の拡大要求を入力できる。
In the
また、上下左右方向へのスクロール要求の入力機能は、十字キー21に割り当てられる。ユーザは十字キー21を押下することで、十字キー21を押下した方向への移動要求を入力できる。なお、視点移動要求の入力機能は別の操作手段に割り当てられてもよく、たとえばアナログスティック27aに、スクロール要求の入力機能が割り当てられてもよい。
Also, the input function of the scroll request in the vertical and horizontal directions is assigned to the
図3は画像処理装置10の構成を示している。画像処理装置10は、無線インタフェース40、スイッチ42、表示処理部44、ハードディスクドライブ50、記録媒体装着部52、ディスクドライブ54、メインメモリ60、バッファメモリ70および制御部100を有して構成される。表示処理部44は、表示装置12のディスプレイに表示するデータをバッファするフレームメモリを有する。
FIG. 3 shows the configuration of the
スイッチ42は、イーサネットスイッチ(イーサネットは登録商標)であって、外部の機器と有線または無線で接続して、データの送受信を行うデバイスである。スイッチ42は、ケーブル14を介して外部ネットワークに接続し、サーバから画像データなどを受信できるように構成される。またスイッチ42は無線インタフェース40に接続し、無線インタフェース40は、所定の無線通信プロトコルで入力装置20と接続する。入力装置20においてユーザから入力された信号は、無線インタフェース40、スイッチ42を経由して、制御部100に供給される。
The
ハードディスクドライブ50は、データを記憶する記憶装置として機能する。スイッチ42を介して受信された画像データは、ハードディスクドライブ50に格納される。記録媒体装着部52は、メモリカードなどのリムーバブル記録媒体が装着されると、リムーバブル記録媒体からデータを読み出す。ディスクドライブ54は、読出専用のROMディスクが装着されると、ROMディスクを駆動して認識し、データを読み出す。ROMディスクは、光ディスクや光磁気ディスクなどであってよい。画像データはこれらの記録媒体に格納されていてもよい。
The
制御部100は、マルチコアCPUを備え、1つのCPUの中に1つの汎用的なプロセッサコアと、複数のシンプルなプロセッサコアを有する。汎用プロセッサコアはPPU(PowerPC Processor Unit)と呼ばれ、残りのプロセッサコアはSPU(Synergistic Processor Unit)と呼ばれる。
The
制御部100は、メインメモリ60およびバッファメモリ70に接続するメモリコントローラを備える。PPUはレジスタを有し、演算実行主体としてメインプロセッサを備えて、実行するアプリケーションにおける基本処理単位としてのタスクを各SPUに効率的に割り当てる。なお、PPU自身がタスクを実行してもよい。SPUはレジスタを有し、演算実行主体としてのサブプロセッサとローカルな記憶領域としてのローカルメモリを備える。ローカルメモリは、バッファメモリ70として使用されてもよい。
The
メインメモリ60およびバッファメモリ70は記憶装置であり、RAM(ランダムアクセスメモリ)として構成される。SPUは制御ユニットとして専用のDMA(Direct Memory Access)コントローラをもち、メインメモリ60とバッファメモリ70の間のデータ転送を高速に行うことができ、また表示処理部44におけるフレームメモリとバッファメモリ70の間で高速なデータ転送を実現できる。本実施の形態の制御部100は、複数のSPUを並列動作させることで、高速な画像処理機能を実現する。表示処理部44は、表示装置12に接続されて、ユーザからの要求に応じた画像処理結果を出力する。
The
本実施の形態の画像処理装置10は、表示画像の拡大/縮小処理や表示領域の移動処理を行う際に表示画像をスムーズに変更させるために、圧縮画像データの一部をハードディスクドライブ50からメインメモリ60にロードしておく。また、メインメモリ60にロードした圧縮画像データのさらに一部をデコードしてバッファメモリ70に格納しておく。これにより、後の必要なタイミングで、表示画像の生成に使用する画像を瞬時に切り替えることが可能となる。
The
本実施の形態において表示対象とする画像のデータ構造は特に限定されないが、ここでは高精細な画像をより効率よく表示することを可能とするため、階層構造を有する階層画像データを用いた形態について説明する。階層画像データは、原画像を複数段階に縮小して生成した異なる解像度の画像からなる画像データである。各階層の画像は一又は複数のタイル画像に分割される。たとえば最も解像度の低い画像は1つのタイル画像で構成し、最も解像度の高い原画像は、最も多い数のタイル画像で構成する。画像表示時は、描画に使用しているタイル画像を、表示画像が所定の解像度になったときに異なる階層のタイル画像に切り替えることで、拡大表示または縮小表示を迅速に行う。 In this embodiment, the data structure of the image to be displayed is not particularly limited. However, here, in order to display a high-definition image more efficiently, a form using hierarchical image data having a hierarchical structure is used. explain. Hierarchical image data is image data composed of images of different resolutions generated by reducing an original image in a plurality of stages. Each layer image is divided into one or a plurality of tile images. For example, the image with the lowest resolution is composed of one tile image, and the original image with the highest resolution is composed of the largest number of tile images. At the time of image display, the tile image used for drawing is switched to a tile image of a different hierarchy when the display image has a predetermined resolution, so that enlarged display or reduced display is quickly performed.
図4は、本実施の形態において使用する画像データの階層構造の概念図を示す。画像データは、深さ(Z軸)方向に、第0階層30、第1階層32、第2階層34および第3階層36からなる階層構造を有する。なお同図においては4階層のみ示しているが、階層数はこれに限定されない。以下、このような階層構造をもつ画像データを「階層データ」とよぶ。ただし同図の階層データは概念的なものであり、実際には後に述べるように複数のデータのセットで画像を表現する。
FIG. 4 shows a conceptual diagram of a hierarchical structure of image data used in the present embodiment. The image data has a hierarchical structure including a
図4に示す階層データは4分木の階層構造を有し、各階層は1以上のタイル画像38で構成される。すべてのタイル画像38は同じ画素数をもつ同一サイズに形成され、たとえば256×256画素を有する。各階層の画像データは、一つの画像を異なる解像度で表現しており、最高解像度をもつ第3階層36の原画像を複数段階に縮小して、第2階層34、第1階層32、第0階層30の画像データが生成される。たとえば第N階層の解像度(Nは0以上の整数)は、左右(X軸)方向、上下(Y軸)方向ともに、第(N+1)階層の解像度の1/2であってよい。
The hierarchical data shown in FIG. 4 has a quadtree hierarchical structure, and each hierarchy is composed of one or
画像処理装置10において、階層データは、所定の圧縮形式で圧縮された状態でハードディスクドライブ50などの記憶装置に保持されており、ディスプレイに表示される前に記憶装置から読み出されてデコードされる。本実施の形態の画像処理装置10は、複数種類の圧縮形式に対応したデコード機能を有し、たとえばS3TC形式、JPEG形式、JPEG2000形式の圧縮データをデコード可能とする。
In the
階層データの階層構造は、図4に示すように、左右方向をX軸、上下方向をY軸、深さ方向をZ軸として設定され、仮想的な3次元空間を構築する。画像処理装置10は、入力装置20から供給される視点移動要求信号から表示画像の変更量を導出すると、その変更量を用いて仮想空間におけるフレームの4隅の座標(フレーム座標)を導出する。仮想空間におけるフレーム座標は、後述するメインメモリへの圧縮データのロードおよび表示画像の描画処理に利用される。なお、仮想空間におけるフレーム座標の代わりに、画像処理装置10は、階層を特定する情報と、その階層におけるテクスチャ座標(UV座標)を導出してもよい。以下、階層特定情報およびテクスチャ座標の組み合わせも、フレーム座標と呼ぶ。
As shown in FIG. 4, the hierarchical structure of the hierarchical data is set with the horizontal direction as the X axis, the vertical direction as the Y axis, and the depth direction as the Z axis, thereby constructing a virtual three-dimensional space. When the
データ構造が階層構造であるか否かに関わらず画像は基本的に、画素ごとに色情報を保持するカラーマップを用いて表示される。本実施の形態ではカラーマップに加え、対象物の凹凸を表現するための凹凸情報を導入することにより、絵画表面のタッチなど微細な構造をより臨場感をもって表現する。したがって本実施の形態では、カラーマップと凹凸情報をまとめて画像データとする。 Regardless of whether the data structure is a hierarchical structure, the image is basically displayed using a color map that holds color information for each pixel. In this embodiment, in addition to the color map, uneven information for expressing the unevenness of the object is introduced, so that a fine structure such as a touch on the surface of the painting is expressed more realistically. Therefore, in the present embodiment, the color map and the unevenness information are combined into image data.
図5は本実施の形態において画像を表示する機能を有する制御部100の構成を詳細に示している。制御部100は、入力装置20からユーザが入力した情報を取得する入力情報取得部102、新たに表示すべき領域を特定する描画領域特定部110、新たにロードすべき画像データを決定するロードブロック決定部106、必要な圧縮画像データをハードディスクドライブ50からロードするロード部108を含む。制御部100はさらに、圧縮画像データをデコードするデコード部112、および表示画像を描画する表示画像処理部114を含む。
FIG. 5 shows in detail the configuration of the
図5や後に示す図6、図12において、さまざまな処理を行う機能ブロックとして記載される各要素は、ハードウェア的には、CPU(Central Processing Unit)、メモリ、その他のLSIで構成することができ、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。既述したように、制御部100は1つのPPUと複数のSPUとを有し、PPUおよびSPUがそれぞれ単独または協同して、各機能ブロックを構成できる。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。
In FIG. 5, FIG. 6 and FIG. 12, which will be described later, each element described as a functional block for performing various processes may be configured by a CPU (Central Processing Unit), a memory, and other LSIs in terms of hardware. In terms of software, it is realized by a program loaded in a memory. As described above, the
入力情報取得部102は、ユーザが入力装置20に対して入力した、画像表示の開始/終了、視点の移動などの指示内容を取得する。描画領域特定部110は、現在の表示領域のフレーム座標とユーザが入力した視点移動要求の情報に従い、新たに表示すべき領域のフレーム座標を特定する。そして当該領域を含むタイル画像のデータが既にメインメモリ60にロードされていれば、デコード部112に、ロードされていなければロードブロック決定部106に、当該情報を供給する。描画領域特定部110はその時点で表示すべき領域の他、以後必要と予測される領域も特定してよい。描画領域特定部110はまた、ユーザが入力した視点移動要求に対応する新たな視点の位置と、特定したフレーム座標を表示処理部44に供給する。
The input
ロードブロック決定部106は、描画領域特定部110からの情報に基づき、ハードディスクドライブ50からメインメモリ60へ新たにロードすべきタイル画像のデータを特定し、ロード部108にロード要求を発行する。ロードブロック決定部106は、ロード部108がロード処理中でない状態において、例えば所定の時間間隔、あるいは、ユーザが視点移動要求を行った際など、所定のタイミングでロード要求を行ってもよい。ロード部108は、ロードブロック決定部106からの要求に従い、圧縮画像のデータをハードディスクドライブ50からメインメモリ60にロードする。
Based on the information from the drawing
デコード部112は、描画領域特定部110から取得した新たに表示すべき領域のフレーム座標に基づきバッファメモリ70を検索し、該当するフレーム座標の領域がバッファメモリ70に格納されていなければ、メインメモリ60からタイル画像のデータを読み出しデコードし、バッファメモリ70にデコード後のデータを格納する。表示画像処理部114は、新たに表示すべき領域のフレーム座標に基づき、バッファメモリ70から対応する画像データを読み出し、表示処理部44のフレームメモリに表示画像を描画する。この際、視点の移動に伴って変化する、対象物の凹凸による見え方の変化を、凹凸情報を用いて表現する。
The
図6は表示画像処理部114およびバッファメモリ70のより詳細な構成を示している。上述したように本実施の形態では、画素ごとに色情報を保持するカラーマップの他、凹凸情報を画像データに含める。そのためロード部108やデコード部112はカラーマップ以外に、表示に必要な領域の凹凸情報もロードまたはデコードし、デコードされた各データはバッファメモリ70に格納される。凹凸情報としては同図に示すように、ハイトマップ132、法線マップ136、ホライズンマップ138を用いる。ハイトマップ132、法線マップ136、ホライズンマップ138はいずれも、画素ごとにデータを保持する。
FIG. 6 shows a more detailed configuration of the display
表示画像処理部114は、ハイトマップ132を用いて視差による座標のずれを算出する視差表現部124、カラーマップ134および法線マップ136を用いて、凹凸を考慮した対象物の色を表現する色表現部126、ホライズンマップ138を用いて画像に影をつける影表現部128、最終的な表示画像をフレームメモリに描画する画像出力部130を含む。
The display
視差表現部124は、画素ごとに対象物の高さ情報を保持するハイトマップ132を用いて、対象物に高さがあることによって発生する、視点の移動による見え方の違いを座標のずれとして表現する。具体的な計算は、視差マッピング(Parallax Mapping)として一般に提案されている技術を導入することができる(例えばNatalya Tatarchuk, Dynamic parallax occlusion mapping with approximate soft shadows, Symposium on Interactive 3D Graphics, Proceedings of the 2006 symposium on Interactive 3D graphics and games, P. 63-69, 2006 参照)。
The
図7は視差マッピングの原理を説明するための図である。対象物の形状210が図のように、画像平面218に対し凹凸を有する場合、視線212上にある対象物の表面の点214は、画像平面上では点216上に見える。したがって視差表現部124は、点214の画素の色情報などを点216の位置にずらすように、画素の位置を変換する新たなな座標を作成する。このため視差表現部124は、形状210を表すハイトマップを用い、描画領域特定部110から取得した新たな視点からの視線212が対象物の形状210および画像平面と交わる点214、点216を線形探索により求める。そして元の画像を表示画像として表すときの画素のずれを、テクスチャ座標値などで表す。
FIG. 7 is a diagram for explaining the principle of parallax mapping. When the
色表現部126は、視差表現部124が導出したテクスチャ座標値などを用い、カラーマップ134の画素をずらしてレンダリングを行う。この際、画素ごとに対象物表面の法線を保持する法線マップ136を用いて光の当たり具合を変化させ凹凸を表現する。色表現部126は、コンピュータグラフィクスで一般的に用いられるバンプマッピングによって同処理を行ってよい。
The
影表現部128は、光源の角度によって影が生じるか否かの情報を画素ごとに保持するホライズンマップ138を用いて、色表現部126が描画した画像に影をつける。この手法は、ホライズンマッピングとして一般に提案されている技術を導入することができる(例えばPeter-Pike J. Sloan et al., Interactive Horizon Mapping, Eurographics Rendering Workshop 2000 , June, 2000 参照)。
The
図8はホライズンマッピングの原理を説明するための図である。対象物の形状220が図のように、画像平面228に対し凹凸を有する場合、光源222からの光は対象物に遮られないため点230に影は生じないが、光源224からの光は対象物に遮られるため影が生じる。すなわち点230については、光源226の角度を境に、影ができる/できないが決定づけられる。そこで点230などの各画素における画像平面の垂線に対する、光源の角度θを多段階で変化させたときに、影ができるか否かの2値を表したデータをホライズンマップとして準備する。
FIG. 8 is a diagram for explaining the principle of horizon mapping. If the
そして影表現部128は、あらかじめ設定された光源の位置、または視点の移動などによってあらかじめ設定された規則に従い変化させるなどして決定した光源の位置と、ホライズンマップとを比較し、必要な画素に適宜影をつけていく。画像出力部130は、上述のように描画された画像のデータを表示処理部44のフレームメモリに出力する。
Then, the
ここでカラーマップ134を上述のように階層データとした場合、ハイトマップ132、法線マップ136、およびホライズンマップ138もまた、階層データとしてもよい。この場合、カラーマップ134と同様に、その他のマップもタイル画像に分割し、画像表示に必要な領域のタイル画像データを適宜ロードしデコードする。各マップを同じ解像度の階層構造とすれば、表示画像の解像度を大きく変化させても、用いるデータの階層を全て切り替えるのみで同様の処理により表示画像を描画でき、対象物の凹凸を表現した詳細な画像を迅速に表示させることができる。
Here, when the
カラーマップ134を階層データとした場合、一つの解像度の画像データを用いた場合と比較し、上述のとおり応答性よく表示できる解像度の幅が広がる。そのような解像度の変化に対応するように、実際に対象物を遠くから見たときと近接して見たときとでは、対象物の見た目の印象も変化する。本実施の形態では、表示画像においてそのような印象の変化を表現するため、上述した凹凸情報を用いた処理を、視点の高さ、すなわち解像度によって変化させてもよい。
When the
図9は視点の高さによって表示画像処理部114が行う処理を変化させる態様の例を説明するための図である。同図において横軸は視点の高さであり、右へ向かうほど画像平面へ近づくとする。そのような視点の変化に対して表された各チャートは、上から視差表現部124がハイトマップ132を用いて行う処理、色表現部126がカラーマップ134を用いて行う処理、法線マップ136を用いて行う処理、および影表現部128がホライズンマップ138を用いて行う処理の動作/非動作を示している。
FIG. 9 is a diagram for explaining an example of a mode in which the processing performed by the display
まず視点の高さが最大であるHmaxから所定のしきい値H1までの間は、対象物から十分離れたときの印象として凹凸や影は認識されにくく、視差も生じにくいことから、色表現部126のみが動作し、なおかつバンプマッピングは行わずにカラーマップのみで画像を描画する。視線の高さがH1から次のしきい値H2までの間は、凹凸を表現するために色表現部126がカラーマップ134および法線マップ136を用いて画像を描画する。このとき視差表現部124と影表現部128は動作しない。
First, between Hmax at which the height of the viewpoint is maximum and a predetermined threshold value H1, unevenness and shadow are hardly recognized as an impression when sufficiently away from the object, and parallax is not easily generated. Only 126 operates, and an image is drawn only with a color map without performing bump mapping. When the line-of-sight height is from H1 to the next threshold value H2, the
そして視線の高さがH2から次のしきい値H3までの間は、凹凸の影を認識できる状態として、色表現部126に加え影表現部128がホライズンマップ138を用いて影をつける。そして視点の高さがH3から最小であるHminまでの間は、視差の影響が大きくなるため色表現部126、影表現部128に加え、視差表現部124がハイトマップ132を用いて視差による画素のずれを表現する。
When the line-of-sight height is from H2 to the next threshold value H3, the
このように視点の高さによって画像描画のための処理内容を変化させることにより、実世界において対象物との距離の変化によって人が受ける印象の変化を表現できるとともに、必要十分な処理のみを行うことで処理の負荷を抑えることができる。処理を切り替える視点の高さのしきい値は、表示に用いる階層を切り替えるときの視点の高さと同じにしてもよい。また、ハイトマップから得られる対象物の高さの最大値と視点の高さの比によってしきい値を変化させてもよい。また、ホライズンマップを用いて影を付ける際は、視点の高さに応じて光源の方向を変化させるようにしてもよい。また、点光源、面光源を切り替えてもよい。このような光源の変化によっても、可能となる表現の幅が広がる。 In this way, by changing the processing content for image drawing according to the height of the viewpoint, it is possible to express changes in the impression received by people due to changes in the distance to the object in the real world, and only perform necessary and sufficient processing Thus, the processing load can be reduced. The threshold of the viewpoint height at which the process is switched may be the same as the viewpoint height when the hierarchy used for display is switched. Further, the threshold value may be changed according to the ratio between the maximum height of the object obtained from the height map and the height of the viewpoint. In addition, when applying a shadow using a horizon map, the direction of the light source may be changed according to the height of the viewpoint. Moreover, you may switch a point light source and a surface light source. Such a change in the light source also expands the range of possible expressions.
このように視点が低くなるほど表示画像処理部114が行う処理を多くした場合、図9の最下段に示すように、視点が低くなるほど表示領域の移動速度が遅くなるように調整して、処理に要する時間を吸収するようにしてもよい。具体的にはガウス関数などの伝達関数のピーク値を、視点が低くなるほど低く設定し、ユーザが入力した視点移動要求の信号と畳み込み演算することにより、信号の入力から当該信号に対応する表示画像が表示されるまでの時間を調整すればよい。
When the processing performed by the display
また、カラーマップ134、ハイトマップ132、法線マップ136、およびホライズンマップ138を階層データとした場合でも、上述のとおり視点の高さによって用いるマップを変化させるときは、マップごとに階層の数を異ならせてもよい。図10はカラーマップ134、ハイトマップ132、法線マップ136、およびホライズンマップ138のデータ構造を異ならせた場合の概念図を示している。同図において横軸は視点の高さであり、右へ向かうほど画像平面へ近づくとする。そして各マップの階層構造を図4に示したのと同様に示している。
Further, even when the
同図に示すようにカラーマップ134は、全ての視点の高さ、すなわち全ての解像度で必要であるため、その階層は最も多い。そして例えば、カラーマップ134の最上階層である第0階層の次の第1階層を用いて画像を表示する際の視点の高さから法線マップ136を用いたバンプマッピングを行うように設定すると、法線マップ136はカラーマップ134の第1階層に対応する階層から準備すればよくなる。
As shown in the figure, the
そして、カラーマップ134の第2階層を用いて画像を表示する際の視点の高さからホライズンマップ138を用いたホライズンマッピングを行うように設定すると、ホライズンマップ138はカラーマップ134の第2階層に対応する階層から準備すればよくなる。同様に、カラーマップ134の第3階層を用いて画像を表示する際の視点の高さから視差マッピングを行うように設定すると、ハイトマップ132はカラーマップ134の第3階層に対応する階層から準備すればよくなる。
If the horizon mapping using the
このようにデータを準備することにより、画像データ全体としてのデータサイズを小さくすることができる。なお図9、図10に示した、視点の高さの変化による処理の組み合わせの変化はあくまで例示であり、画像中の対象物の性質、画像データ作成者の表現意図などによって適宜設定してよい。また各種マップの階層数は、表示する画像の性質などによっては、視点の高さによる処理の変化とは独立に決定してもよい。 By preparing the data in this way, the data size of the entire image data can be reduced. Note that the change in the combination of processing due to the change in the height of the viewpoint shown in FIGS. 9 and 10 is merely an example, and may be set as appropriate depending on the nature of the object in the image, the expression intention of the image data creator, and the like. . Further, the number of layers of various maps may be determined independently of the change in processing depending on the height of the viewpoint, depending on the nature of the image to be displayed.
画像処理装置10がネットワークに接続されている状態では、一部のマップ、または一部の階層を有料とし、代金を支払ったユーザのみがダウンロードできるようにしてもよい。例えばカラーマップ134のみを安価で提供し、それを用いた画像を表示させているユーザが画像を拡大していき追加のマップが適用できる解像度となったら、当該マップを購入するか否かを確認するメッセージを表示する。ユーザが購入する意志表示を行ったら、追加のマップがダウンロードできるようにする。
In a state where the
そして画像処理装置10において、新たにダウンロードしたマップを用いて対応する処理を施す。これによりユーザは初めて、凹凸まで表現された高精細画像を見ることができる。またカラーマップ134も、最初は低解像度の階層のみ提供し、拡大時に必要となる高解像度の階層のダウンロードに対し課金するようにしてもよい。
Then, the
次にこれまで述べた構成による画像処理装置10の動作を説明する。図11は画像表示の処理手順を示すフローチャートである。まずユーザが画像表示を開始する指示を行った際などに、表示対象の画像の全体像などあらかじめ定めた初期画像の表示に必要な画像データをハードディスクドライブ50から読み出し、デコードしたうえで表示画像を作成し、表示する(S10)。ユーザが入力装置20に対し視点移動要求を入力するまで初期画像を表示し続ける(S12のN、S10)。表示領域移動要求がなされたら(S12のY)、制御部100の描画領域特定部110は、当該要求に従い新たに表示すべき表示領域のフレーム座標と新たな視点を導出する(S14)。
Next, the operation of the
新たな画像の描画に必要なデータは必要に応じてハードディスクドライブ50からロード部108によってロード、デコード部112によってデコードされ、バッファメモリ70に格納される(S16)。すると表示画像処理部114の視差表現部124は、バッファメモリ70のハイトマップ132を読み出し、視差マッピングを行うことにより視差による画素のずれを算出する(S18)。次に色表現部126は、バッファメモリ70のカラーマップ134および法線マップ136を読み出し、凹凸を表現しながら画像を描画する(S20)。
Data necessary for drawing a new image is loaded from the
次に影表現部128は、バッファメモリ70のホライズンマップ138を読み出し、ホライズンマッピングを行うことにより画像に影をつける(S22)。なお上述したように視点の高さ、またはそれ以外の設定により、S18、S20、S22の処理のいずれかを選択的に行ってもよい。またS20のバンプマッピングは、法線を全て垂直としてカラーマップ134をそのままマッピングしてもよい。このように描画した画像を表示処理部44のフレームメモリに描き出し、表示装置12に表示することにより、表示画像が更新される(S24)。
Next, the
次に本実施の形態で用いる画像データの作成方法について説明する。図12は本実施の形態において画像データを生成する画像データ生成装置の構成を示している。画像データ生成装置300は対象物を撮影した計測画像を取得する計測画像取得部302、計測画像や、場合によってはハイトマップから法線マップを取得する法線マップ作成部304、法線マップからハイトマップを作成するハイトマップ作成部306、およびハイトマップからホライズンマップを作成するホライズンマップ作成部308、計測画像からカラーマップを作成するカラーマップ作成部310、および作成した各マップのデータを圧縮して格納する記憶装置312を含む。
Next, a method for creating image data used in this embodiment will be described. FIG. 12 shows a configuration of an image data generation apparatus that generates image data in the present embodiment. The image
計測画像取得部302は、対象物の真上でカメラを固定し、光源の方向を3つ以上変化させて撮影した3つ以上の画像のデータを、計測画像のデータとして取得する。計測画像のデータはあらかじめ記憶装置312に格納しておいたものを読み出してもよいし、計測画像取得部自体をカメラとし、撮影することで取得してもよい。光源の方向は例えば、対象物の中心を取り巻く8方向、およびカメラと同じ方向の計9方向などとする。これにより9枚の計測画像が取得される。
The measurement
法線マップ作成部304は、計測画像を用いて各画素の法線ベクトルを取得する。法線ベクトルは照度差ステレオ法(photometric stereo)を用いることによって得られる。具体的には、法線ベクトルをn、表面反射率をρ、i番目の光源の方向ベクトルをLi、当該光源に対しカメラで撮影された明るさをIiとしたとき、各画素について次の式をnについて解く。
The normal
表面反射率ρを既知とした場合、法線ベクトルnの要素であるx、y、z座標を求めるには上記式が3つあればよい。計測画像が9方向の光源で取得した9枚の画像であるとすると、それらの画像のうち、鏡面反射している画像、影になっている画像を、画素の色情報より検出して除外したうえで上記式を立てることにより、精度よく法線ベクトルを導出できる。 If the surface reflectance ρ is known, three equations are sufficient to obtain the x, y, and z coordinates that are elements of the normal vector n. Assuming that the measurement image is nine images acquired by light sources in nine directions, among those images, the specularly reflected image and the shadowed image are detected from the pixel color information and excluded. The normal vector can be derived with high accuracy by establishing the above equation.
ハイトマップ作成部306は、法線マップ作成部304が作成した法線マップの法線ベクトルから、所定方向における対象物の傾きを求め、それから得られる高さの変位を足していくことにより画素の列ごとに高さ情報を取得し、ハイトマップを作成する。詳細は後に述べる。
The height
ホライズンマップ作成部308は、ハイトマップ作成部が作成したハイトマップを用いてホライズンマップを作成する。ホライズンマップは上述のとおり、光源の傾きによって影が出るか否かを表すデータであるため、対象物の高さ情報がハイトマップより得られていれば、仮想的に光源の方向を所定の角度に振ることによりデータが得られる。
The horizon
例えばRGBAカラーモデルでは、赤、緑、青、アルファ値の4種類のデータを画素ごとに保持し、一般的にはそれぞれに対し256階調の値を設定できる。このデータ構造をそのまま利用すると、光源の画像平面上での4方向に対し、画像平面の垂線からの角度を256段階に調節したときに影になるか否かを画素ごとに保持することができる。このようなデータを2つ準備すれば、合計8方向の光源によるホライズンマップを作成できる。 For example, in the RGBA color model, four types of data of red, green, blue, and alpha values are held for each pixel, and generally 256 gradation values can be set for each. If this data structure is used as it is, it is possible to hold for each pixel whether or not it becomes a shadow when the angle from the normal of the image plane is adjusted to 256 levels with respect to the four directions on the image plane of the light source. . If two such data are prepared, a horizon map with light sources in a total of eight directions can be created.
カラーマップ作成部310は計測画像のうち例えばカメラと同じ方向に光源を設置したときの計測画像から各画素の色情報を取得し、カラーマップを作成する。なお法線マップ作成部304、ハイトマップ作成部306、ホライズンマップ作成部308、およびカラーマップ作成部310が作成した各マップは、圧縮して記憶装置312に格納される。また後述するように、法線マップ作成部304、ハイトマップ作成部306、ホライズンマップ作成部308、およびカラーマップ作成部310は、各マップの階層データを作成してもよい。この場合、図4で示したように、各階層のデータは所定サイズの領域に分割したタイル画像ごとに圧縮してもよい。
The color
図13は、計測画像取得部302をカメラとした場合の、計測画像の取得態様を説明するための図である。絵画などの対象物314に対し、カメラ316は真上の位置に固定とする。そして対象物の中心を中心とし所定の高さにある円周上に光源318を配置する。図では円周上に8つの光源を表している。またカメラと同じ位置にも光源319を配置する。そして光源を一つ一つ点灯しながらカメラ316で対象物314を撮影する。
FIG. 13 is a diagram for explaining a measurement image acquisition mode when the measurement
この場合、光源318を複数備えたリング型のストロボ装置を用意し、各光源を順次点灯させてもよい。あるいは、円周上を回転可能な光源318を一つ備えたストロボ装置を用意し、カメラ316の撮影タイミングに合わせて円周上を回転させることにより、複数方向の光源による撮影を実現してもよい。
In this case, a ring-type strobe device including a plurality of
図14はハイトマップ作成部306が法線マップを用いてハイトマップを作成する原理を説明するための図である。同図において横方向が画像平面を表し、対象物が形状320を有するとする。縦の破線で区切られた領域を一つの画素とすると、法線マップは図中、各画素に対して矢印で表される法線ベクトルの成分情報を保持している。
FIG. 14 is a diagram for explaining the principle that the height
このような状況においてハイトマップ作成部306は、法線マップ上を所定の方向に走査していき、当該方向における画素ごとの対象物の傾きを、各法線ベクトルより算出する。そして走査線上の1つ前の画素との境界における対象物の高さに、対象画素の傾きから得られる高さの変位を足していくことにより、対象画素と次の画素の境界における高さを算出する。
In such a situation, the height
図14の場合、図の左から右、すなわち画素A、B、C、D、・・・と走査していくと、画素Aとその左隣の画素の境界における対象物の高さH1に、画素Aの傾きから得られる高さの変位Δ1を足した高さH2が、画素Aと画素Bの境界における高さとなる。次に高さH2に、画素Bの傾きから得られる高さの変位Δ2を足した高さH3が、画素Bと画素Cの境界における高さとなる。高さH3に画素Cの高さの変位D3を足した高さH4が画素Cと画素Dの境界における高さとなる。 In the case of FIG. 14, when scanning from left to right in the figure, that is, pixels A, B, C, D,..., The height H1 of the object at the boundary between pixel A and the pixel adjacent to the left is A height H2 obtained by adding a height displacement Δ1 obtained from the inclination of the pixel A is a height at the boundary between the pixel A and the pixel B. Next, the height H3 obtained by adding the height displacement Δ2 obtained from the inclination of the pixel B to the height H2 is the height at the boundary between the pixel B and the pixel C. A height H4 obtained by adding a displacement D3 of the height of the pixel C to the height H3 is a height at the boundary between the pixel C and the pixel D.
これを画像の左端から右端まで繰り返すことにより一行分の画素の高さ情報が得られる。なお左端の高さは0.5など初期値を与えておく。このような行ごとの処理を画像中の全ての行で行うことにより、画像を構成する全ての画素の高さ情報、すなわちハイトマップが得られる。行ごとの処理は独立しているため、並列に行うことにより処理に要する時間を短縮できる。 By repeating this process from the left end to the right end of the image, pixel height information for one line can be obtained. The left end height is given an initial value such as 0.5. By performing such processing for each row on all the rows in the image, height information of all the pixels constituting the image, that is, a height map can be obtained. Since the processing for each row is independent, the time required for processing can be shortened by performing the processing in parallel.
図14に示した処理により、連続的な勾配を有する対象物に対して精度よくハイトマップを取得できる。一方、対象物に不連続な段差がある場合、隣接する画素で高さは異なるが法線ベクトルが当該高さの差を反映していないことがあり得る。このような場合に精度を維持するため、ハイトマップ作成部306はさらに、同じ法線マップに対し、別の方向で同様の高さ情報を取得する。例えば上述の左端から右端の方向に加え、上端から下端、右端から左端、下端から上端の4方向で走査を行い、4つのハイトマップを作成する。そして4つのハイトマップが保持する高さを画素ごとに平均した値を、最終的なハイトマップの高さ情報とする。
With the process shown in FIG. 14, a height map can be obtained with high accuracy for an object having a continuous gradient. On the other hand, when there is a discontinuous step in the object, the normal vector may not reflect the difference in height although the height differs between adjacent pixels. In order to maintain accuracy in such a case, the height
油絵などでも絵の具の盛り上がりなどによって急な段差が形成されている場合があるが、どの方向から走査しても急な段差になっていることは稀であり、通常、筆の運びによって連続的な勾配がいずれかの方向で存在する。勾配が連続的であれば正確な高さを導出できるため、上述のように複数の方向で走査した結果、生成したハイトマップを平均化することにより、精度のよいハイトマップを生成できる。 Even in oil paintings, there are cases where steep steps are formed due to the rising of the paint, etc., but it is rare that the steps are steep even if scanned from any direction. A gradient exists in either direction. Since an accurate height can be derived if the gradient is continuous, a height map with high accuracy can be generated by averaging the height maps generated as a result of scanning in a plurality of directions as described above.
走査方向は縦、横のみならず斜めでもよい。図15は法線マップに対し斜めに走査してハイトマップを作成する手法を説明するための図である。同図の例では画像322に対し矢印に示すように、左上から右下へ、右上から左下へ、左下から右上へ、右下から左上へ、いずれも画像の縦横方向から45°の方向に走査する。矢印は4本のみ示しているが、この場合も同一の方向で全ての列について高さ情報を取得し、計4枚のハイトマップを作成する。そして上述同様、各画素における平均値を最終的なハイトマップのデータとする。
The scanning direction may be diagonal as well as vertical and horizontal. FIG. 15 is a diagram for explaining a method of creating a height map by scanning obliquely with respect to the normal map. In the example shown in the figure, as indicated by the arrows for the
同図では、このように斜めに走査した場合の、ある走査線324が横切る画素EおよびHと、それらに隣接する画素FおよびGの2×2個の画素を拡大した画素ブロック326を示している。同画素ブロック326において画素Hにおける対象物の高さを求めるときは、画素F、G、Hの法線を用いてEからHへの方向の傾きを求め、その方向の高さの変位を画素Eと画素Hとの境界における高さに足す。このように左上から右下への走査によるハイトマップを作成するときは、左端一列分の画素と上端一行分の画素に初期値を与えておく。その他の方向についても同様の処理により、各方向の走査によるハイトマップを取得できる。
In the figure, a
なお、縦横方向の走査と図15のような斜め方向の走査を行い8つのハイトマップを作成し、それら全ての平均値を最終的なハイトマップのデータとしてもよい。複数のハイトマップから最終的なハイトマップのデータを算出する手法は、単に平均値でなくてもよく、様々な統計手法を適用してよい。例えば画素ごとに各ハイトマップにおける高さの偏差を算出し、それが所定のしきい値を超える高さの値を除外した後、平均値を求めたり、ニューラルネットワークにかけたりしてもよい。 It should be noted that vertical and horizontal scanning and oblique scanning as shown in FIG. 15 are performed to create eight height maps, and the average value of all of them may be used as final height map data. The method of calculating final height map data from a plurality of height maps may not be simply an average value, and various statistical methods may be applied. For example, after calculating a height deviation in each height map for each pixel and excluding a height value that exceeds a predetermined threshold value, an average value may be obtained or applied to a neural network.
次に、法線マップ、ハイトマップ、ホライズンマップを階層データとするときのデータ作成手法について説明する。カラーマップは上述のように、高精細な画像を最下層とし、それを順次縮小した画像を作成することで階層化した。一方、高精細画像の計測画像を用いて法線マップやホライズンマップの最下層のデータを作成しても、これらのマップが保持するデータは基本的に画素ごとに独立した値であるため、縮小することが困難である。そのため、階層データにおける最下層以外の階層のデータを作成するのは容易でない。 Next, a data creation method when using a normal map, height map, and horizon map as hierarchical data will be described. As described above, the color map is hierarchized by creating a high-definition image as the lowest layer and sequentially reducing it. On the other hand, even if the lowest layer data of the normal map and the horizon map is created using the measurement image of the high-definition image, the data held in these maps is basically an independent value for each pixel, so it is reduced. Difficult to do. Therefore, it is not easy to create data of a hierarchy other than the lowest layer in the hierarchy data.
そこで本実施の形態ではまず、カラーマップの最下層にあたる高解像度の計測画像から、同じ解像度の法線マップを作成し、一旦ハイトマップのの階層データを作成してから法線マップの階層データ作成処理に戻すようにする。図16はカラーマップ、法線マップ、ハイトマップ、ホライズンマップの階層データを作成する手順を示すフローチャートである。 Therefore, in the present embodiment, first, a normal map having the same resolution is created from a high-resolution measurement image corresponding to the lowermost layer of the color map, and once the height map hierarchical data is created, the normal map hierarchical data is created. Return to processing. FIG. 16 is a flowchart showing a procedure for creating hierarchical data of a color map, normal map, height map, and horizon map.
まず計測画像取得部302は、階層データのうち最下層の解像度、すなわち最も高い解像度での計測画像を取得する(S30)。するとカラーマップ作成部310は、当該計測画像のうち光源がカメラと同じ方向にある画像を取得し、それを所定の解像度に縮小していくことにより、カラーマップの階層データを作成する(S32)。
First, the measurement
次に法線マップ作成部304は、計測画像を用いて、カラーマップの最下層の画像に対応する解像度の法線マップを作成する(S34)。これは法線マップの階層データにおける最下層のデータとなる。次にハイトマップ作成部306は、S34で得られた最下層の法線マップを所定の方向に走査して平均化するなどして、最下層のハイトマップを作成する(S36)。続いてハイトマップ作成部306は、画像を縮小する際一般的に用いられるバイリニア法などの手法によって、最下層のハイトマップを順次縮小していき、カラーマップの階層データに対応する階層データを作成する(S38)。
Next, the normal
法線マップ作成部304は、そのようにして作成されたハイトマップの階層データのうち、最下層を除く各階層のハイトマップを微分することにより法線マップの各階層を生成し、階層データとする(S40)。具体的には、各階層のハイトマップを例えば縦横2方向で走査してハイトマップを微分することにより各方向における対象物の傾き情報を得る。そして画素ごとに当該傾きから得られる走査方向ごとの法線ベクトルを合成することにより最終的な法線ベクトルを得、法線マップを生成する。一方、ホライズンマップ作成部308は、ハイトマップの各階層からホライズンマップの各階層を生成し、階層データとする(S42)。作成した各マップはそれぞれタイル画像に分割し、圧縮した後、記憶装置312に格納する(S44)。
The normal
図17はカラーマップ、法線マップ、ハイトマップ、ホライズンマップの階層データを作成する別の手順を示すフローチャートである。この例では、最初に計測画像を階層化し、カラーマップ、法線マップにおける各階層は、計測画像の対応する階層から直接生成する。まず計測画像取得部302は、階層データのうち最下層の解像度、すなわち最も高い解像度での計測画像を取得し(S50)、さらに当該画像を所定サイズに順次縮小していき複数の画像を生成することで階層化する(S52)。
FIG. 17 is a flowchart showing another procedure for creating hierarchical data of a color map, normal map, height map, and horizon map. In this example, the measurement image is first hierarchized, and each hierarchy in the color map and normal map is directly generated from the corresponding hierarchy of the measurement image. First, the measurement
次にカラーマップ作成部310は、光源がカメラと同じ方向にある計測画像の階層データの各階層から直接、カラーマップの各階層を生成して階層データとする(S54)。法線マップ作成部304は、同じ階層の計測画像を集めて階層ごとに方程式を解くことにより、対応する階層の法線マップを生成して階層データとする(S56)。ハイトマップ作成部306は、法線マップの階層データにおける各階層に対し走査を行うなどして、対応する階層のハイトマップを作成し階層データとする(S58)。ホライズンマップ作成部308は、ハイトマップの階層データにおける各階層から、対応する階層のホライズンマップを作成し階層データとする(S60)。そして作成した各マップはそれぞれタイル画像に分割し、圧縮した後、記憶装置312に格納する(S62)。
Next, the color
なお階層データを用いることにより、より広範囲な解像度の変化に対応させて画像を表示できるため、その最下層の画像は部分的な領域を撮影した複数の画像をつなぎ合わせて作成してもよい。このような場合、複数の画像をつなぎ合わせた画像を計測画像とし、各マップは、つなぎ合わせた後の計測画像を用いて作成してもよい。あるいは、つなぎ合わせる前の各領域の画像を計測画像とし、領域ごとにマップを生成した後で、マップごとにつなぎ合わせることで最終的なマップを作成してもよい。 Note that by using hierarchical data, an image can be displayed in response to a wider range of resolution changes, and therefore the lowermost image may be created by connecting a plurality of images obtained by capturing partial areas. In such a case, an image obtained by joining a plurality of images may be used as a measurement image, and each map may be created using the measurement image after joining. Alternatively, an image of each region before joining may be used as a measurement image, and after creating a map for each region, a final map may be created by joining each map.
以上述べた本実施の形態によれば、表示画像のデータとして、画素ごとの色情報を保持するカラーマップの他に、ハイトマップ、法線マップ、ホライズンマップを準備する。そして、画像表示装置において、視差や凹凸、影を表現することにより、色情報のみでは得られにくい、臨場感のある画像表示が可能となる。このような態様は、油絵など表面の詳細な構造が重要となる対象物の画像では特に顕著な効果を発揮する。 According to the present embodiment described above, a height map, a normal map, and a horizon map are prepared as display image data, in addition to a color map that holds color information for each pixel. In the image display device, by expressing parallax, unevenness, and shadow, it is possible to display an image with a sense of presence that is difficult to obtain with only color information. Such an embodiment is particularly effective for an image of an object in which a detailed surface structure is important, such as an oil painting.
また、視点の高さによって施す処理を変化させることにより、実際に対象物との距離を変化させたときに人に与える印象を再現できるとともに処理の負荷を調整することができる。また画像データ作成者の表現手法のひとつに用いることもできる。ユーザが拡大縮小の指示入力を行う場合は、画像に施す処理の数によって入力信号から画像更新までの遅延時間が連続的に変化するように制御することにより、より自然な動きで様々な効果を加えていくことができる。 Further, by changing the processing to be performed depending on the height of the viewpoint, it is possible to reproduce the impression given to the person when the distance to the object is actually changed, and to adjust the processing load. It can also be used as one of the representation methods of the image data creator. When the user inputs an instruction for enlargement / reduction, by controlling so that the delay time from the input signal to the image update changes continuously according to the number of processes applied to the image, various effects can be achieved with more natural movement. You can add.
このような特徴は、画像データを階層構造として、解像度の可変範囲を広げる態様でより効果的になる。このとき、カラーマップ以外の、ハイトマップ、法線マップ、ホライズンマップも階層データとし、対応する階層の同じ領域のデータを用いるようにすれば、解像度によらず処理が同等となるため、精度のよい処理を迅速に行える。ただし視点の高さ、すなわち解像度の範囲によって施す処理を異ならせる場合は、ハイトマップ、法線マップ、ホライズンマップについては必要な階層のみを準備することにより、画像データのサイズを抑えることができる。また画像表示に用いる階層の切り替えに伴って施す処理を切り替えれば、切り替えが容易になる。 Such a feature becomes more effective in a mode in which the image data has a hierarchical structure and the variable range of resolution is widened. At this time, if the height map, normal map, and horizon map other than the color map are also set as hierarchical data, and data in the same area of the corresponding hierarchy is used, the processing becomes equivalent regardless of the resolution. Good processing can be done quickly. However, when the processing to be performed differs depending on the height of the viewpoint, that is, the resolution range, the size of the image data can be suppressed by preparing only the necessary hierarchy for the height map, normal map, and horizon map. In addition, switching is facilitated by switching processing to be performed in accordance with switching of the hierarchy used for image display.
このような画像表示を容易に実現するため、画像データを生成する際は、ます計測画像から法線マップを生成し、それを積分することによってハイトマップを生成する。ハイトマップの生成には通常、レーザを用いて対象物を測定したり、複数の角度から撮影したりすることが求められる。本実施の形態によれば、カメラを固定とし光源のみを複数に動かした計測画像を用いることで、法線マップ、ハイトマップ、ホライズンマップを作成するため、より手軽に画像データを作成できる。また複数の方向から法線マップを走査した結果を利用することにより、ハイトマップの精度を高めることができる。 In order to easily realize such an image display, when generating image data, a normal map is generated from a measurement image, and a height map is generated by integrating the normal map. In order to generate a height map, it is usually required to measure an object using a laser or take images from a plurality of angles. According to the present embodiment, the normal map, height map, and horizon map are created by using a measurement image in which the camera is fixed and only the light source is moved, and thus image data can be created more easily. Also, the accuracy of the height map can be increased by using the result of scanning the normal map from a plurality of directions.
さらに各マップを階層データとする場合は、法線マップから一度ハイトマップの階層データを作成し、その後に法線マップの各階層を作成することで、容易に法線マップの階層データを生成できる。ホライズンマップも、ハイトマップの各階層から直接各階層を生成でき、生成が容易である。または計測画像を階層化した後で、各階層に対応するマップを作成していくことで各マップの階層データを作成するようにしても、容易に画像データを生成できる。 Furthermore, when each map is to be hierarchical data, normal map hierarchical data can be easily generated by creating height map hierarchical data once from the normal map and then creating each normal map hierarchy. . The horizon map can also be generated easily because each layer can be generated directly from each layer of the height map. Alternatively, the image data can be easily generated even if the hierarchical data of each map is created by creating a map corresponding to each hierarchy after the measurement image is hierarchized.
以上、本発明を実施の形態をもとに説明した。上記実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。 The present invention has been described based on the embodiments. Those skilled in the art will understand that the above-described embodiment is an exemplification, and that various modifications can be made to combinations of the respective constituent elements and processing processes, and such modifications are also within the scope of the present invention. is there.
例えば本実施の形態では、撮影した画像を元に、各マップを含む画像データを作成した。一方、画面上に擬似的な油絵のキャンバスを表示させ、ユーザがマウスなどの入力装置を用いて絵を描くことのできる画像描画機能を備えた画像データ生成装置を実現してもよい。このときユーザは自分の描いた絵を拡大縮小可能とし、所定の解像度以上では凹凸感が出るように、ユーザの筆の運びなどに対応させて法線マップ、ハイトマップ、ホライズンマップを生成していく。これによりユーザは、あたかも油絵を描いているような感覚で画面上に凹凸感のある絵を描くことができる。 For example, in the present embodiment, image data including each map is created based on a photographed image. On the other hand, a pseudo oil painting canvas may be displayed on the screen, and an image data generation device having an image drawing function that allows a user to draw a picture using an input device such as a mouse may be realized. At this time, the user can enlarge / reduce the picture drawn by the user and generate a normal map, height map, horizon map corresponding to the carrying of the user's brush etc. Go. Thereby, the user can draw a picture with a feeling of unevenness on the screen as if it were drawing an oil painting.
1 画像処理システム、 10 画像処理装置、 12 表示装置、 20 入力装置、 38 タイル画像、 44 表示処理部、 50 ハードディスクドライブ、 60 メインメモリ、 70 バッファメモリ、 100 制御部、 102 入力情報取得部、 106 ロードブロック決定部、 108 ロード部、 110 描画領域特定部、 112 デコード部、 114 表示画像処理部、 124 視差表現部、 126 色表現部、 128 影表現部、 130 画像出力部、 132 ハイトマップ、 134 カラーマップ、 136 法線マップ、 138 ホライズンマップ、 300 画像データ生成装置 、 302 計測画像取得部、 304 法線マップ作成部、 306 ハイトマップ作成部、 308 ホライズンマップ作成部、 310 カラーマップ作成部、 312 記憶装置。
DESCRIPTION OF
Claims (21)
ユーザが入力した視点移動要求に従い、表示対象の画像のうち新たに表示すべき領域のフレーム座標を特定する描画領域特定部と、
前記フレーム座標に対応する表示画像の領域を、前記記憶部に格納された画像データを用いて描画し、表示装置に出力する表示画像処理部と、を備え、
前記表示画像処理部は、前記視点移動要求によって定まる、表示対象の画像平面に対する視点の高さと、当該視点の高さにあらかじめ定めたしきい値とを比較することによって、前記複数種類の処理のうち実施する処理の種類を、当該視点の高さに応じて切り替え、当該実施する処理に光源の方向を必要とする処理が含まれるとき、設定する光源の方向を前記視点の高さによって変化させたうえ、当該処理を実施することにより前記表示画像の領域を描画することを特徴とする画像処理装置。 A storage unit storing a plurality of types of image data used for each of a plurality of types of processing for rendering an image to be displayed;
In accordance with the viewpoint movement request input by the user, a drawing area specifying unit that specifies the frame coordinates of the area to be newly displayed in the display target image;
A display image processing unit that draws an area of the display image corresponding to the frame coordinates using the image data stored in the storage unit and outputs the image data to a display device;
The display image processing unit compares the height of the viewpoint with respect to the image plane to be displayed, which is determined by the viewpoint movement request, and a threshold value predetermined for the height of the viewpoint, thereby performing the plurality of types of processing. The type of processing to be performed is switched according to the height of the viewpoint, and when the processing to be performed includes processing that requires the direction of the light source, the direction of the light source to be set is changed according to the height of the viewpoint. In addition, an image processing apparatus that renders a region of the display image by performing the processing.
前記画像データのうち、色情報を画素ごとに保持するカラーマップを用いて、色を表現する処理と、
前記画像データのうち、画像中の対象物の画像平面に対する高さの情報を画素ごとに保持するハイトマップと、前記視点とを用いて視差マッピングを行うことにより、対象物に対する視差を表現する処理と、
前記画像データのうち、画像中の対象物の表面の法線ベクトルの情報を画素ごとに保持する法線マップを用いてバンプマッピングを行うことにより、画像中の対象物の表面に凹凸を表現する処理と、
前記画像データのうち、各画素に対象物の影が生じるときの光源の方向の情報を画素ごとに保持するホライズンマップを用いてホライズンマッピングを行うことにより、設定された光源の方向に対応する影をつける処理と、
の少なくともいずれかを含むことを特徴とする請求項1に記載の画像処理装置。 The processing performed by the display image processing unit is as follows:
Among the image data, a process of expressing colors using a color map that holds color information for each pixel;
Processing for expressing parallax with respect to an object by performing parallax mapping using a height map that holds height information for each pixel in the image data with respect to the image plane of the image and the viewpoint. When,
By performing bump mapping using a normal map that holds information on the normal vector of the surface of the object in the image for each pixel in the image data, irregularities are expressed on the surface of the object in the image. Processing,
Of the image data, a shadow corresponding to the set light source direction is obtained by performing horizon mapping using a horizon map that holds information on the direction of the light source when the shadow of the object is generated in each pixel. And the process of attaching
The image processing apparatus according to claim 1, comprising at least one of the following.
前記表示画像処理部は、前記視点の高さによって、用いるデータの階層を切り替えることを特徴とする請求項1から3のいずれかに記載の画像処理装置。 Each of the plurality of types of image data has a hierarchical structure in which two-dimensional data corresponding to a plurality of image planes representing one image at different resolutions are layered in the order of resolution,
The image processing apparatus according to claim 1, wherein the display image processing unit switches a hierarchy of data to be used according to a height of the viewpoint.
前記記憶部が格納する複数種類の画像データは、前記表示画像処理部が描画に用いる階層のみからなることにより少なくとも一の種類において階層数が他と異なる画像データを含むことを特徴とする請求項4に記載の画像処理装置。 The display image processing unit also switches the type of processing to be performed at the height of the viewpoint when switching the hierarchy of data to be used,
The plurality of types of image data stored in the storage unit include image data having a number of layers different from that of at least one type by including only layers used for rendering by the display image processing unit. 5. The image processing apparatus according to 4.
前記表示画像処理部は、前記カラーマップを用いて対象物の色を表現するとともに、前記ホライズンマップを用いてホライズンマッピングを行うことにより、設定された光源の方向に対応する影をつけることを特徴とする請求項4または5に記載の画像処理装置。 The display image processing unit expresses a color of an object using the color map, and adds a shadow corresponding to a set light source direction by performing horizon mapping using the horizon map. The image processing apparatus according to claim 4 or 5.
光源の方向を異ならせて対象物を撮影した複数の計測画像を取得する計測画像取得部と、
前記計測画像のうち所定の光源の方向での計測画像から、画素ごとの色情報を保持するカラーマップを作成するカラーマップ作成部と、
前記計測画像を照度差ステレオ法により解析し、前記対象物の法線ベクトルを画像中の画素に対応させて表した法線マップを作成する法線マップ作成部と、
前記法線マップを所定の方向にて全面走査し、法線ベクトルから得られる当該所定の方向における対象物の傾きを積分することにより当該対象物の高さを画素に対応させて表したハイトマップを作成するハイトマップ作成部と、
前記カラーマップ、前記法線マップ、および前記ハイトマップを画像データとして格納する記憶部と、
を備えることを特徴とする画像データ生成装置。 An image data generation device that generates data of a plurality of types of images used to display an image of an object on a display device from a measurement image obtained by photographing the object with a camera,
A measurement image acquisition unit for acquiring a plurality of measurement images obtained by photographing the object with different directions of the light source;
A color map creation unit that creates a color map that holds color information for each pixel from a measurement image in a direction of a predetermined light source among the measurement images;
Analyzing the measurement image by illuminance difference stereo method, a normal map creating unit for creating a normal map representing the normal vector of the object corresponding to the pixels in the image;
A height map that represents the height of the target object in correspondence with the pixels by scanning the entire normal map in a predetermined direction and integrating the inclination of the target object in the predetermined direction obtained from the normal vector. A height map creation section for creating
A storage unit for storing the color map, the normal map, and the height map as image data;
An image data generation apparatus comprising:
前記ハイトマップ作成部は、前記法線マップ作成部が作成した、前記計測画像の解像度に対応する法線マップを用いて、同解像度のハイトマップを作成したうえ、当該ハイトマップを縮小して生成した異なる解像度の複数のハイトマップを解像度順に階層化した、ハイトマップの階層データを生成し、
前記法線マップ作成部は、前記ハイトマップの階層データにおける各階層のハイトマップのうち、計測画像の解像度に対応する階層以外の階層のハイトマップを複数の方向にて全面走査して対象物の高さを微分することで、各走査方向における前記対象物の傾き情報を取得し、当該傾きから得られる各走査方向の法線ベクトルを画素ごとに合成した法線ベクトルを算出することにより、異なる解像度の複数の法線マップを解像度順に階層化した、法線マップの階層データを生成することを特徴とする請求項8に記載の画像データ生成装置。 The color map creation unit generates color map hierarchical data in which a plurality of color maps of different resolutions generated by reducing the measurement image are layered in the order of resolution,
The height map creation unit creates a height map of the same resolution using the normal map corresponding to the resolution of the measurement image created by the normal map creation unit, and generates the reduced height map. Generate hierarchical data of height maps, which is a hierarchy of multiple height maps of different resolutions in the order of resolution,
The normal map creation unit scans the height map of the hierarchy other than the hierarchy corresponding to the resolution of the measurement image in a plurality of directions in the height map of each hierarchy in the hierarchy data of the height map in a plurality of directions. By differentiating the height, the inclination information of the object in each scanning direction is acquired, and the normal vector obtained by combining the normal vectors in each scanning direction obtained from the inclination for each pixel is calculated. 9. The image data generation apparatus according to claim 8, wherein normal image hierarchy data is generated by hierarchizing a plurality of resolution normal maps in the order of resolution.
前記記憶部は、画像データとしてホライズンマップも格納することを特徴とする請求項8に記載の画像データ生成装置。 A horizon map creating unit that creates a horizon map that represents information of the direction of the light source when a shadow of an object occurs in each pixel using the height map,
The image data generation apparatus according to claim 8, wherein the storage unit also stores a horizon map as image data.
前記記憶部は、画像データとしてホライズンマップも格納することを特徴とする請求項9に記載の画像データ生成装置。 By using the height map of each hierarchy in the hierarchy data of the height map, generating a horizon map that represents information on the direction of the light source for each pixel when the shadow of the object is generated in each pixel, A horizon map creation unit that generates hierarchical data of a horizon map obtained by hierarchizing a plurality of horizon maps different in resolution order,
The image data generation apparatus according to claim 9, wherein the storage unit also stores a horizon map as image data.
前記法線マップ作成部は、前記計測画像の階層データにおける各階層の計測画像データを解析し、各階層に対応する法線マップを作成することにより、解像度が異なる複数の法線マップを解像度順に階層化した階層データを生成することを特徴とする請求項8に記載の画像データ生成装置。 The measurement image acquisition unit generates, for each light source direction, hierarchical data of measurement images obtained by hierarchizing a plurality of measurement image data with different resolutions generated by reducing each measurement image having different directions of the light source.
The normal map creation unit analyzes the measurement image data of each layer in the hierarchy data of the measurement image, and creates a normal map corresponding to each layer, thereby generating a plurality of normal maps having different resolutions in the order of resolution. 9. The image data generation apparatus according to claim 8, wherein hierarchical image data is generated.
記憶装置に格納された、表示対象の画像を描画するための複数種類の処理のそれぞれに用いる複数種類の画像データのうち少なくともいずれかを読み出し、それを用いて前記フレーム座標に対応する表示画像の領域を描画するステップと、
描画した領域のデータを表示装置に出力するステップと、を含み、
前記描画するステップは、
前記視点移動要求によって定まる、表示対象の画像平面に対する視点の高さと、当該視点の高さにあらかじめ定めたしきい値とを比較することによって、前記複数種類の処理のうち実施する処理の種類を、当該視点の高さに応じて切り替え、当該実施する処理に光源の方向を必要とする処理が含まれるとき、設定する光源の方向を前記視点の高さによって変化させたうえ、当該処理を実施することにより前記表示画像の領域を描画することを特徴とする画像処理方法。 In accordance with the viewpoint movement request input by the user, specifying the frame coordinates of the area to be newly displayed in the display target image;
At least one of a plurality of types of image data stored in a storage device and used for each of a plurality of types of processing for rendering an image to be displayed is read out and used to display a display image corresponding to the frame coordinates. Drawing an area;
Outputting the data of the drawn area to a display device,
The drawing step includes:
By comparing the height of the viewpoint with respect to the image plane to be displayed, which is determined by the viewpoint movement request, and a threshold value predetermined for the height of the viewpoint, the type of processing to be performed among the plurality of types of processing is determined. When the process to be executed includes a process that requires the direction of the light source, the direction of the light source to be set is changed according to the height of the viewpoint, and the process is performed. An image processing method characterized by drawing a region of the display image.
光源の方向を異ならせて対象物を撮影した複数の計測画像を取得しメモリに格納するステップと、
前記メモリより読み出した、前記計測画像のうち所定の光源の方向での計測画像を用いて、画素ごとの色情報を保持するカラーマップを作成するステップと、
前記メモリより読み出した前記計測画像を、照度差ステレオ法により解析し、前記対象物の法線ベクトルを画像中の画素に対応させて表した法線マップを作成するステップと、
前記法線マップを所定の方向にて全面走査し、法線ベクトルから得られる当該所定の方向における対象物の傾きを積分することにより当該対象物の高さを画素に対応させて表したハイトマップを作成するステップと、
前記カラーマップ、前記法線マップ、および前記ハイトマップを画像データとして記憶装置に格納するステップと、
を含むことを特徴とする画像データ生成方法。 An image data generation method for generating data of a plurality of types of images used to display an image of a target object on a display device from a measurement image obtained by photographing the target object with a camera,
Acquiring a plurality of measurement images obtained by photographing the object with different directions of the light source and storing them in a memory;
Using the measurement image in the direction of a predetermined light source among the measurement images read out from the memory, creating a color map that holds color information for each pixel;
Analyzing the measurement image read from the memory by an illuminance difference stereo method, and creating a normal map representing the normal vector of the object corresponding to the pixels in the image;
A height map that represents the height of the target object in correspondence with the pixels by scanning the entire normal map in a predetermined direction and integrating the inclination of the target object in the predetermined direction obtained from the normal vector. The steps of creating
Storing the color map, the normal map, and the height map as image data in a storage device;
An image data generation method comprising:
記憶装置に格納された、表示対象の画像を描画するための複数種類の処理のそれぞれに用いる複数種類の画像データのうち少なくともいずれかを読み出し、それを用いて前記フレーム座標に対応する表示画像の領域を描画する機能と、
描画した表示画像のデータを表示装置に出力する機能と、
をコンピュータに実現させることを特徴とするコンピュータプログラムであって、
前記描画する機能は、
前記視点移動要求によって定まる、表示対象の画像平面に対する視点の高さと、当該視点の高さにあらかじめ定めたしきい値とを比較することによって、前記複数種類の処理のうち実施する処理の種類を、当該視点の高さに応じて切り替え、当該実施する処理に光源の方向を必要とする処理が含まれるとき、設定する光源の方向を前記視点の高さによって変化させたうえ、当該処理を実施することにより前記表示画像の領域を描画することを特徴とするコンピュータプログラム。 In accordance with the viewpoint movement request input by the user, a function for specifying the frame coordinates of the area to be newly displayed in the display target image;
At least one of a plurality of types of image data stored in a storage device and used for each of a plurality of types of processing for rendering an image to be displayed is read out and used to display a display image corresponding to the frame coordinates. The ability to draw areas,
A function of outputting the data of the drawn display image to a display device;
A computer program characterized by causing a computer to realize
The drawing function is
By comparing the height of the viewpoint with respect to the image plane to be displayed, which is determined by the viewpoint movement request, and a threshold value predetermined for the height of the viewpoint, the type of processing to be performed among the plurality of types of processing is determined. When the process to be executed includes a process that requires the direction of the light source, the direction of the light source to be set is changed according to the height of the viewpoint, and the process is performed. A computer program for drawing an area of the display image.
光源の方向を異ならせて対象物を撮影した複数の計測画像を取得しメモリに格納する機能と、
前記メモリより読み出した、前記計測画像のうち所定の光源の方向での計測画像を用いて、画素ごとの色情報を保持するカラーマップを作成する機能と、
前記メモリより読み出した前記計測画像を、照度差ステレオ法により解析し、前記対象物の法線ベクトルを画像中の画素に対応させて表した法線マップを作成する機能と、
前記法線マップを所定の方向にて全面走査し、法線ベクトルから得られる当該所定の方向における対象物の傾きを積分することにより当該対象物の高さを画素に対応させて表したハイトマップを作成する機能と、
前記カラーマップ、前記法線マップ、および前記ハイトマップを画像データとして記憶装置に格納する機能と、
をコンピュータに実現させることを特徴とするコンピュータプログラム。 A computer program that causes a computer to realize a function of generating data of a plurality of types of images used to display an image of the target object on a display device from a measurement image obtained by photographing the target object with a camera,
A function of acquiring a plurality of measurement images obtained by photographing the object with different light source directions and storing them in a memory;
A function of creating a color map that holds color information for each pixel by using a measurement image in the direction of a predetermined light source among the measurement images read from the memory;
A function of analyzing the measurement image read from the memory by an illuminance difference stereo method, and creating a normal map representing the normal vector of the object corresponding to the pixels in the image;
A height map that represents the height of the target object in correspondence with the pixels by scanning the entire normal map in a predetermined direction and integrating the inclination of the target object in the predetermined direction obtained from the normal vector. With the ability to create
A function of storing the color map, the normal map, and the height map as image data in a storage device;
A computer program for causing a computer to realize the above.
記憶装置に格納された、表示対象の画像を描画するための複数種類の処理のそれぞれに用いる複数種類の画像データのうち少なくともいずれかを読み出し、それを用いて前記フレーム座標に対応する表示画像の領域を描画する機能と、
描画した表示画像のデータを表示装置に出力する機能と、
をコンピュータに実現させることを特徴とするコンピュータプログラムを記録した記録媒体であって、
前記描画する機能は、
前記視点移動要求によって定まる、表示対象の画像平面に対する視点の高さと、当該視点の高さにあらかじめ定めたしきい値とを比較することによって、前記複数種類の処理のうち実施する処理の種類を、当該視点の高さに応じて切り替え、当該実施する処理に光源の方向を必要とする処理が含まれるとき、設定する光源の方向を前記視点の高さによって変化させたうえ、当該処理を実施することにより前記表示画像の領域を描画することを特徴とするコンピュータプログラムを記録した記録媒体。 In accordance with the viewpoint movement request input by the user, a function for specifying the frame coordinates of the area to be newly displayed in the display target image;
At least one of a plurality of types of image data stored in a storage device and used for each of a plurality of types of processing for rendering an image to be displayed is read out and used to display a display image corresponding to the frame coordinates. The ability to draw areas,
A function of outputting the data of the drawn display image to a display device;
A computer-readable recording medium on which a computer program is recorded,
The drawing function is
By comparing the height of the viewpoint with respect to the image plane to be displayed, which is determined by the viewpoint movement request, and a threshold value predetermined for the height of the viewpoint, the type of processing to be performed among the plurality of types of processing is determined. When the process to be executed includes a process that requires the direction of the light source, the direction of the light source to be set is changed according to the height of the viewpoint, and the process is performed. A recording medium having a computer program recorded thereon, wherein a region of the display image is drawn.
光源の方向を異ならせて対象物を撮影した複数の計測画像を取得しメモリに格納する機能と、
前記メモリより読み出した、前記計測画像のうち所定の光源の方向での計測画像を用いて、画素ごとの色情報を保持するカラーマップを作成する機能と、
前記メモリより読み出した前記計測画像を、照度差ステレオ法により解析し、前記対象物の法線ベクトルを画像中の画素に対応させて表した法線マップを作成する機能と、
前記法線マップを所定の方向にて全面走査し、法線ベクトルから得られる当該所定の方向における対象物の傾きを積分することにより当該対象物の高さを画素に対応させて表したハイトマップを作成する機能と、
前記カラーマップ、前記法線マップ、および前記ハイトマップを画像データとして記憶装置に格納する機能と、
をコンピュータに実現させることを特徴とするコンピュータプログラムを記録した記録媒体。 A recording medium on which a computer program for causing a computer to realize a function of generating data of a plurality of types of images used to display an image of the object on a display device from a measurement image obtained by photographing the object with a camera Because
A function of acquiring a plurality of measurement images obtained by photographing the object with different light source directions and storing them in a memory;
A function of creating a color map that holds color information for each pixel by using a measurement image in the direction of a predetermined light source among the measurement images read from the memory;
A function of analyzing the measurement image read from the memory by an illuminance difference stereo method, and creating a normal map representing the normal vector of the object corresponding to the pixels in the image;
A height map that represents the height of the target object in correspondence with the pixels by scanning the entire normal map in a predetermined direction and integrating the inclination of the target object in the predetermined direction obtained from the normal vector. With the ability to create
A function of storing the color map, the normal map, and the height map as image data in a storage device;
The recording medium which recorded the computer program characterized by making a computer implement | achieve.
表示画像の色を表現する処理に用いる、色情報を画素ごとに保持するカラーマップと、
画像中の対象物に対する視差を表現する処理に用いる、当該対象物の画像平面に対する高さの情報を画素ごとに保持するハイトマップと、
画像中の対象物の表面に凹凸を表現する処理に用いる、当該対象物の表面の法線ベクトルの情報を画素ごとに保持する法線マップと、
設定された光源の方向に対応する影をつける処理に用いる、各画素に対象物の影が生じるときの光源の方向の情報を画素ごとに保持するホライズンマップと、
を対応づけ、
前記カラーマップ、ハイトマップ、法線マップ、およびホライズンマップをそれぞれ用いる処理の種類のうち、前記画像処理装置が実施する処理の種類が、入力された視点移動要求によって定まる、画像平面に対する視点の高さに応じて切り替えられ、前記画像処理装置によって当該処理の種類に対応するマップが前記記憶装置より読み出され、さらに実施する処理に光源の方向を必要とする処理が含まれるとき、設定する光源の方向を前記視点の高さによって変化させたうえ当該処理が実施されることにより、新たに表示すべき領域の画像が描画されることを特徴とする画像ファイルのデータ構造。 A data structure of an image file read from a storage device by an image processing device for displaying at least a part of an image on a display,
A color map for storing color information for each pixel, which is used for processing to express the color of the display image
A height map that holds, for each pixel, information on the height of the object relative to the image plane, which is used for processing to express parallax with respect to the object in the image;
A normal map that holds information on the normal vector of the surface of the object for each pixel, which is used for processing to express irregularities on the surface of the object in the image;
A horizon map that holds information on the direction of the light source when the shadow of the object is generated on each pixel, which is used for the process of applying a shadow corresponding to the set direction of the light source,
,
Among the types of processing using the color map, height map, normal map, and horizon map, the type of processing performed by the image processing apparatus is determined by the input viewpoint movement request, and the viewpoint height relative to the image plane is determined. The light source to be set when the map corresponding to the type of processing is read from the storage device by the image processing device and the processing to be performed includes processing that requires the direction of the light source. A data structure of an image file, wherein an image of an area to be newly displayed is rendered by changing the direction of the image according to the height of the viewpoint and executing the processing.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009292939A JP5061177B2 (en) | 2009-12-24 | 2009-12-24 | Image processing apparatus, image data generation apparatus, image processing method, image data generation method, and data structure of image file |
PCT/JP2010/006512 WO2011077623A1 (en) | 2009-12-24 | 2010-11-05 | Image processing device, image data generation device, image processing method, image data generation method, and data structure of image file |
US13/517,097 US8947448B2 (en) | 2009-12-24 | 2010-11-05 | Image processing device, image data generation device, image processing method, image data generation method, and data structure of image file |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009292939A JP5061177B2 (en) | 2009-12-24 | 2009-12-24 | Image processing apparatus, image data generation apparatus, image processing method, image data generation method, and data structure of image file |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011134100A JP2011134100A (en) | 2011-07-07 |
JP5061177B2 true JP5061177B2 (en) | 2012-10-31 |
Family
ID=44346766
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009292939A Active JP5061177B2 (en) | 2009-12-24 | 2009-12-24 | Image processing apparatus, image data generation apparatus, image processing method, image data generation method, and data structure of image file |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5061177B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2012301604B2 (en) * | 2011-08-31 | 2015-11-12 | Zazzle Inc. | Tiling process for digital image retrieval |
CN111882632A (en) * | 2020-07-24 | 2020-11-03 | 上海米哈游天命科技有限公司 | Rendering method, device and equipment of ground surface details and storage medium |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2667835B2 (en) * | 1987-10-09 | 1997-10-27 | 株式会社日立製作所 | Computer Graphics Display |
JP4486175B2 (en) * | 1999-01-29 | 2010-06-23 | 株式会社日立製作所 | 3D map display apparatus and method |
JP3392088B2 (en) * | 1999-12-17 | 2003-03-31 | キヤノン株式会社 | Image storage method, image drawing method, image storage device, image processing device, image download method, computer, and storage medium |
US7436405B2 (en) * | 2004-05-14 | 2008-10-14 | Microsoft Corporation | Terrain rendering using nested regular grids |
JP4782583B2 (en) * | 2006-02-23 | 2011-09-28 | 株式会社バンダイナムコゲームス | Program, information storage medium, and image generation system |
-
2009
- 2009-12-24 JP JP2009292939A patent/JP5061177B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2011134100A (en) | 2011-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2011077623A1 (en) | Image processing device, image data generation device, image processing method, image data generation method, and data structure of image file | |
TWI602148B (en) | Gradient adjustment for texture mapping to non-orthonormal grid | |
JP5037574B2 (en) | Image file generation device, image processing device, image file generation method, and image processing method | |
JP6293923B2 (en) | Tilt adjustment of texture mapping for multiple rendering targets with different resolutions depending on screen position | |
US6222551B1 (en) | Methods and apparatus for providing 3D viewpoint selection in a server/client arrangement | |
JP4698893B2 (en) | Method, graphics system, and program for providing improved fog effects | |
KR101145260B1 (en) | Apparatus and method for mapping textures to object model | |
JP5419822B2 (en) | Image processing apparatus, image display apparatus, image processing method, and data structure of image file | |
CA2853761A1 (en) | Rendering system, rendering server, control method thereof, program, and recording medium | |
JP5826730B2 (en) | Video compression apparatus, image processing apparatus, video compression method, image processing method, and data structure of video compression file | |
US8698830B2 (en) | Image processing apparatus and method for texture-mapping an image onto a computer graphics image | |
JP2004005452A (en) | Image processor, image processing method, semiconductor device, computer program and record medium | |
JP5116742B2 (en) | Information processing apparatus, information processing method, and data structure of content file | |
JP2011134101A (en) | Image processor, image data generation device, image procession method, image data generation method, and data structure for image file | |
EP2954495B1 (en) | Information processing apparatus, method of controlling the same, program, and storage medium | |
Trapp et al. | Colonia 3D communication of virtual 3D reconstructions in public spaces | |
JP5061177B2 (en) | Image processing apparatus, image data generation apparatus, image processing method, image data generation method, and data structure of image file | |
US6864889B2 (en) | System for previewing a photorealistic rendering of a synthetic scene in real-time | |
CN115035231A (en) | Shadow baking method, shadow baking device, electronic apparatus, and storage medium | |
JP3501479B2 (en) | Image processing device | |
Oksanen | 3D Interior environment optimization for VR | |
US11727638B1 (en) | Adaptive geometric smoothing | |
JP2010204782A (en) | Image processor, image processing method, and data structure | |
Peddie | The GPUs’ Functions | |
WO2024105281A1 (en) | A method and a process for displaying video files for immersive experience without real-time rendering |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120214 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120413 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120522 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120702 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20120724 |
|
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: 20120806 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150810 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5061177 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |