JP2015188164A - 画像処理装置 - Google Patents
画像処理装置 Download PDFInfo
- Publication number
- JP2015188164A JP2015188164A JP2014064917A JP2014064917A JP2015188164A JP 2015188164 A JP2015188164 A JP 2015188164A JP 2014064917 A JP2014064917 A JP 2014064917A JP 2014064917 A JP2014064917 A JP 2014064917A JP 2015188164 A JP2015188164 A JP 2015188164A
- Authority
- JP
- Japan
- Prior art keywords
- image
- stamp
- data
- arrangement
- image 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.)
- Granted
Links
Landscapes
- Processing Or Creating Images (AREA)
- Image Processing (AREA)
- Editing Of Facsimile Originals (AREA)
Abstract
【解決手段】 原画像に対してスタンプ画像を合成する位置を記録した配置データを用意する。スタンプ画像を合成する際には、処理対象ピクセルの周囲の配置データを検索することによって、処理対象ピクセルにスタンプ画像の一部が重なる形で合成される全てのスタンプ画像を特定する。そして、この特定結果に基づいて、処理対象ピクセルに合成されるべき画素値を算出し、合成を行う。このように配置データを用いることにより、処理対象ピクセルに対して、繰り返しスタンプ画像の合成処理を行う必要なく、一度の処理で複数のスタンプ画像を合成した結果を得ることができるため、多数のスタンプ画像を重畳して合成する際の処理速度を向上させることができる。
【選択図】 図2
Description
図1は、夜景の3次元地図の表示例を示す説明図である。こうした夜景の地図は、3次元モデルを投影した画像上に、点光源を表す多数のスタンプ画像を重畳することで生成できる。線状の部分は道路を表す道路夜景であり、上方の光源が固まった部分は街を表す建物夜景である。
このように多数のスタンプ画像を重畳して画像を生成するには、多大な処理負荷がかかるため、処理負荷を軽減することが課題となる。特許文献1は、処理負荷を軽減する一つの方法として、多数のパーティクルを描いて水しぶき等を表現する際に、視点からの距離に応じてパーティクルの描画順序をソートする技術を開示している。
前記原画像を表す原画像データを記憶する原画像データ記憶部と、
前記スタンプ画像を表すスタンプ画像データを記憶するスタンプ画像データ記憶部と、
前記スタンプ画像が配置されるべき位置を、前記原画像データのピクセルで表した配置データを記憶する配置データ記憶部と、
前記原画像データに、前記スタンプ画像データを重畳する重畳処理部とを備え、
前記重畳処理部は、
前記原画像データから前記重畳処理を施す対象ピクセルを選択し、
前記配置データに基づいて、前記対象ピクセルに重畳される全ての前記スタンプ画像と、その配置を特定し、
前記特定された結果に基づいて、前記スタンプ画像データを参照して、前記対象ピクセルに全ての前記スタンプ画像を重畳した場合の画素値を算出し、
該算出結果を、前記合成画像における前記対象ピクセルの画素値として記憶する画像処理装置として構成することができる。
図2は、スタンプ画像の重畳方法を示す説明図である。図の下側にはスタンプ画像が重畳されるべき原画像データ、図の上方には重畳するスタンプ画像を、それぞれ模式的に示した。図中の破線で区切ったマス目は、それぞれピクセルを表している。スタンプ画像とは、このように画像上に多数貼り付けられる画像を言う。原画像上に多数貼り付けることを考えると、スタンプ画像は、原画像データよりも小さいサイズとすることが好ましいが、原画像データ以上のサイズとすることもできる。
矢印M1、M2で示すように、図中のピクセルP1、P2の位置にそれぞれスタンプ画像を重畳する場合を考える。従来技術においては、かかる場合、まず、ピクセルP1を中心とする太線の枠内の9つのピクセルに対して、それぞれスタンプ画像の画素値を合成する。そして、次に、ピクセルP2を中心とする太線の枠内の9つのピクセルに対して、それぞれスタンプ画像の画素値を合成する。かかる方法では、例えば、ピクセルP1に着目すると、矢印M1での合成のときと、矢印M2での合成の2回にわたって合成処理が行われる。このように、従来技術の合成方法では、合成すべきスタンプ画像の数が増えるほど、原画像データを繰り返し読み出し、合成処理を行って、その結果を書き込む処理の回数が増えることとなる。
これに対し、本発明では、配置データを参照することにより、対象ピクセルに全てのスタンプ画像を重畳した場合の画素値を算出することができる。図2の例で説明する。この例によれば、配置データには、スタンプ画像の位置として、ピクセルP1、P2が記録されることになる。そして、ピクセルP1の処理を行う場合には、この配置データを参照することにより、ピクセルP1にはスタンプ画像の中央の画素が合成され、またピクセルP2にスタンプ画像を配置することによって、ピクセルP1にはスタンプ画像の左上の画素が合成されることが特定できる。このように本発明の方法によれば、配置データを用いることにより、処理対象のピクセルP1に重畳される全てのスタンプ画像を特定でき、ピクセルP1に合成される画素値を一義的に算出することができる。
このように本発明によれば、多数のスタンプ画像を合成する場合であっても、原画像データの読み出し、書き込みを繰り返す必要がなくなり、原画像データの各ピクセルの合成処理を一度で済ませることができる。
一方、本発明の方法では、スタンプ画像を合成する過程で配置データを繰り返し参照する必要が生じるが、配置データへの書き込みは一切、行われない。即ち、従来技術では、原画像データに対して、読み出し、書き込みの双方の処理が行われるのに対し、本発明の方法では、配置データに対しては読み出しのみの処理が行われ、原画像データに対しては主として書き込みの処理が行われることになり、配置データと原画像データとの間で、読み出し/書き込みの処理を分離することができる。一般にデータへのアクセスは、読み出しと書き込みとを同時に行うことはできないため、原画像データに対して、読み出し、書き込みの双方の処理が行われる従来技術では、読み出しが完了するまで書き込みを待つ必要があり処理時間を要するが、本発明では、読み出し/書き込みの処理が分離されるため、配置データからの読み出しと、原画像データへの書き込みを同時に行うことも可能となる。こうした並列処理効果も奏し、本発明ではさらに処理速度を高速化することができる。
配置データは、スタンプ画像を合成する位置が特定できるものであれば、種々の構造で用意することができる。図2に示した例では、例えば、原画像データと同じ解像度の仮想的な画像データを用意し、スタンプ画像を配置すべきピクセルP1、P2に何らかの画素値を記録したものを配置データとして用意してもよい。この場合には、画素値によって、スタンプ画像を配置する数を表すこともできる。また、別の態様として、スタンプ画像を配置すべき原画像データ上の座標値と、そこに配置するスタンプ画像の数とを表すテーブルなどの形で配置データを用意してもよい。
また、配置データは、原画像データ内だけでなく、その周囲の画素に対するスタンプ画像の合成位置を特定可能なデータとしてもよい。例えば、図2のように仮想的な画像データの形式で配置データを用意する場合には、原画像データよりも縦横のサイズが大きい画像データを配置データとして使用する態様に相当する。
原画像よりも外側にスタンプ画像が配置される場合であっても、位置関係によっては、スタンプ画像の一部が原画像に重なることがある。原画像データの周囲の画素に対する情報も含める形で配置データを用意しておけば、このように原画像の外側に配置されるスタンプ画像についても、原画像の各ピクセルへの影響を特定することができ、隣接する原画像間での連続性を確保しつつ、原画像の境界付近の画素に対しても効率的にスタンプ画像の合成を行うことができる。
上述の態様において、配置データのサイズは任意に設定可能である。例えば、配置データは、原画像データの境界上のピクセルにスタンプ画像の境界上のピクセルが重なる位置までカバーしていれば足りることを考慮し、概ねスタンプ画像の縦方向、横方向の最大幅のそれぞれ半分を原画像データの周囲に付加した状態で用意してもよい。
前記重畳処理部は、前記対象ピクセルを中心として、前記スタンプ画像のサイズに応じた距離だけ離れた範囲内を検出範囲と設定し、
前記配置データから前記検出範囲内の各ピクセルに対応するデータを検索することによって、前記対象ピクセルに重畳される全ての前記スタンプ画像と、その配置を特定するようにしてもよい。
上記態様では、スタンプ画像のサイズに応じて配置データを参照する範囲を絞り込むため、無用な参照を抑制することができ、処理速度の向上を図ることが可能となる。
上記態様においても、スタンプ画像のサイズは統一されている必要はない。サイズの異なるスタンプ画像が用いられる場合には、例えば、最もサイズの大きいスタンプ画像に合わせて検出範囲を設定すればよい。
前記スタンプ画像は、透過部分を有する画像であり、
前記配置データは、さらに、前記スタンプ画像を重畳する回数を表す重畳回数を記憶しており、
前記重畳処理部は、前記重畳回数だけ繰り返し前記スタンプ画像を適用して、前記画素値を算出するものとしてもよい。
このように透過部分を有するスタンプ画像の場合は、同じ位置に繰り返し重畳することによって得られる画像が異なってくる。上記態様では、配置データにおいて、スタンプ画像を重畳する位置だけでなく、その回数まで記憶しているため、この繰り返し数も踏まえて処理対象画素に重畳される画素値を一義的に特定することが可能となり、処理速度の向上を図ることができる。
前記配置データ記憶部は、前記配置データとは別に、前記スタンプ画像が配置されるべき位置を、前記原画像データより粗い解像度の粗ピクセルで表した粗配置データを記憶しており、
前記重畳処理部は、
前記粗配置データに基づいて、前記対象ピクセルに重畳される全ての前記スタンプ画像と、その粗ピクセルでの配置を特定し、
前記特定された粗ピクセルでの配置に基づいて、前記配置データを参照することによって、前記原画像のピクセル単位での前記スタンプ画像の配置を特定するものとしてもよい。
粗配置データと配置データとの併用は、原画像データの全ての領域で一様に行う必要はなく、スタンプ画像の密度が比較的低い領域においてのみ粗配置データを併用するようにしてもよい。例えば、配置データを参照することによってスタンプ画像の位置が特定できた割合を監視しておき、これが所定値を下回ったときには、スタンプ画像が疎な領域に到達したと判断して、粗配置データの併用を開始し、所定値以上となったときには、粗配置データの併用を停止するなどの方法が考えられる。
粗配置データを、配置データに対してどの程度粗くするかは、任意に設定することができる。また上記態様においては、解像度に応じて、粗配置データを2段階以上備えるようにしてもよい。
前記原画像データは、地物の3次元モデルを投影して明度を低下させた夜景画像であり、
前記スタンプ画像は、前記地物の明かりを表す光源画像であり、
前記配置データは、前記夜景画像内での前記地物の位置を前記光源画像の配置位置とし、該夜景画像において同一のピクセルとなる地物の数を前記重畳回数として記憶するものとしてもよい。
図1に示したように、夜景画像においては、地物の位置に応じて光源画像を配置することにより、道路や建物、その密度などを反映させることができ、リアリティの高い夜景を実現することができる。しかしながら、地図内の地物の数は非常に多く、これに光源画像をスタンプ画像として重畳していくと、その処理は非常に大きな負荷となる。従って、かかる画像には、本発明の有用性が特に高くなる。
このように、本発明を適用すれば、短い時間で、リアリティの高い夜景画像を実現することが可能となるのである。
本発明は、その他、コンピュータによって画像処理を行う画像処理方法として構成してもよいし、かかる表示をコンピュータに実行させるためのコンピュータプログラムとして構成してもよい。また、かかるコンピュータプログラムを記録したCD−R、DVDその他のコンピュータが読み取り可能な記録媒体として構成してもよい。
A.装置構成:
図3は、実施例における3次元地図表示システムの構成を示す説明図である。サーバ200からネットワークNE2等を介して提供される地図データに基づいて、端末300に地図を表示する構成例を示した。地図を表示する端末としては、スマートフォン、携帯電話、タブレットなどの携帯端末の他、パーソナルコンピュータ、ナビゲーション装置などを用いてもよい。また、3次元地図表示システムは、端末300とサーバ200とからなるシステムの他、スタンドアロンで稼働するシステムとして構成してもよい。
図中には、3次元地図データを生成するデータ生成装置100も併せて示した。データ生成装置100は、点光源を重畳したテクスチャも生成する画像処理装置としての機能も有している。
送受信部301は、サーバ200とのネットワークNE2を介した通信を行う。本実施例では、3次元地図を表示するための地図データおよびコマンドの送受信が主として行われる。
コマンド入力部302は、端末の操作等を通じて、ユーザからの指示を入力する。本実施例における指示としては、3次元地図の表示範囲、拡大・縮小の指定、経路案内を行う際の出発地、目的地の設定などが揚げられる。
GPS入力部303は、GPS(Global Positioning System)の信号に基づいて緯度経度の座標値を得る。また、経路案内では、緯度経度の変化に基づいて進行方向を算出する。
地図情報記憶部305は、サーバ200から提供された地図データを一時的に記憶しておくバッファである。経路案内時のように表示すべき地図が時々刻々と移動していく場合、地図情報記憶部305では不足する範囲の地図データをサーバ200から受信して地図を表示する。
マップマッチング変換部307は、経路案内をする場合に、探索された経路および現在位置を、平行投影された3次元地図上の道路上にずれなく表示するため、経路位置および現在位置の座標値に対して必要な座標変換を施す。
表示制御部306は、地図情報記憶部305およびマップマッチング変換部307から提供されるデータに基づいて、端末300のディスプレイ300dに3次元地図を表示する。
地図データベース210は、3次元地図を表示するためのデータベースである。本実施例では、平行投影データ211、文字データ212、ネットワークデータ213を含む地図データを格納する。平行投影データ211は、道路、建物などの地物を3次元的に表示するためのデータであり、地物の3次元モデルを平行投影することで得られた2次元のポリゴンデータである。本実施例では、昼間の景色を表した平行投影データと、夜景を表した平行投影データとが用意されている。
文字データ212は、地図に表示すべき文字、例えば、地物の名称や地名などのデータである。ネットワークデータ213は、道路をノード、リンクの集まりで表現したデータである。
送受信部201は、ネットワークNE2を介して端末300とのデータの送受信を行う。本実施例では、3次元地図を表示するための地図データおよびコマンドの送受信が主として行われる。また、送受信部201は、ネットワークNE1を介してデータ生成装置100との通信も行う。本実施例では、生成された地図データの授受が主として行われる。
データベース管理部202は、地図データベース210からのデータの読み出し、書き込みを制御する。
経路探索部203は、地図データベース210内のネットワークデータ213を用いて、経路探索を行う。経路探索には、ダイクストラ法などを用いることができる。
送受信部104は、ネットワークNE1を介してサーバ200とデータの授受を行う。
コマンド入力部101は、キーボード等を介してオペレータの指示を入力する。本実施例では、地図データを生成すべき領域の指定、平行投影パラメータの指定、夜景モードの指定等が含まれる。
3D地図データベース110は、地図データを生成するために用いられる3次元モデルを格納するデータベースである。道路、建物などの地物については、3次元形状を表す電子データが格納されている。3D地図データベース110は、従来、透視投影によって3次元地図を表示するために備えられる3次元モデルを利用することができる。
平行投影部103は、3D地図データベース110に基づいて平行投影による描画を行って平行投影データを生成する。描画された投影図は、平行投影データ113に格納され、送受信部104を介してサーバ200の地図データベース210の平行投影データ211に格納される。
夜景テクスチャ生成部102は、3D地図データベース110に格納された3次元モデルを真上から投影した2次元地図上の建物および道路の位置に、スタンプ画像を重畳することで、夜景テクスチャを生成する。このスタンプ画像は、スタンプ画像データベース111に格納されている。夜景テクスチャ生成部102によって生成された夜景テクスチャは、夜景テクスチャデータベース112に格納される。本実施例では、夜景テクスチャは、3次元モデルが管理される地図上のメッシュ単位で生成される。
夜景の平行投影データを生成する際には、平行投影部103は、仮想3次元空間に3次元モデルを配置した上で、全体に夜景テクスチャデータベース112の夜景テクスチャを貼付し、平行投影を行う。こうすることによって、図1に示すような夜景を表した平行投影データが生成される。
B1.全体処理:
図4は、夜景テクスチャ生成処理のフローチャートである。データ生成装置100の夜景テクスチャ生成部102が実行する処理であり、ハードウェア的にはデータ生成装置100のCPUが実行する処理である。
データ生成装置100は、処理対象メッシュを選択する(ステップS10)。オペレータの指示に従うようにしてもよいし、未処理のメッシュから順次、自動的に選択するようにしてもよい。
次に、データ生成装置100は、処理対象メッシュ内の建物データ、ネットワークデータを読み込む(ステップS12)。そして、建物の重心位置を光源位置として設定する(ステップS14)。光源位置とは、点光源を表すスタンプ画像を重畳する位置を意味する。光源は、各位置に一定の数を重畳するように設定してもよいし、建物が高くなるほど光源の数が増えるように設定させてもよい。
また、データ生成装置100は、ネットワークデータのリンク上に光源位置を設定する(ステップS16)。図中に、光源位置の設定方法例を示した。高速道路の場合、ネットワークデータのリンクを所定の間隔d1で等間隔に分割した点においてリンクに添って2条の光源を設定する。国道の場合は、リンクを間隔d2(間隔d2<d1)で等間隔に分割した点においてリンクに添って1条の光源を設定する。細街路のリンク上には光源は設定しない。本実施例では、このように道路種別に応じて、光源の有無およびその設定方法を変えているが、道路種別に関わらず一定の方法で光源を設定してもよい。
データ生成装置100は、全てのメッシュに対して夜景テクスチャの生成が終了するまで(ステップS26)、以上の処理を繰り返し実行する。
図5および図6は、スタンプ描画処理のフローチャートである。夜景テクスチャ生成処理のステップS22に相当する処理である。
データ生成装置100は、処理対象メッシュに対してキャンバスおよびインデックス画像を読み込む(ステップS30)。キャンバスとは、スタンプ画像を重畳し、合成画像を描く画像データまたは画像領域である。画像データとしては、メッシュ内の3次元モデルを真上から投影し、夜景用に明度を低下させた2次元画像を用いることができる。また、画像領域としては、メッシュに相当する広さの2次元の白画像または透明画像とすることができる。キャンバスとインデックス画像とは同一の解像度となっている。
データ生成装置100は、インデックス画像を参照し、処理対象ピクセルに合成されるスタンプ画像を特定する(ステップS34)。
図中にスタンプ画像の特定方法を示した。ここでは、3×3画素のサイズからなるスタンプ画像を合成する場合を例示した。スタンプの合成位置を特定するため、データ生成装置100は、インデックス画像において処理対象ピクセルPPの周辺を検索する。検索範囲は、スタンプ画像の大きさに相当する範囲、即ち処理対象ピクセルPPを中心とする3×3画素の範囲である。
図の例では、インデックス画像中の画素P1、P2、P4にそれぞれ値1、2、4が記録されていることが分かる。画素P1の値1は、画素P1を中心としてスタンプ画像を1回重畳すること、即ち枠M1の範囲にスタンプ画像を重畳することを意味する。同様に、画素P2の値2は枠M2の範囲に2回、画素P4の値4は枠M4の範囲に4回、それぞれスタンプ画像を重畳することを意味している。枠M1、M2、M4にスタンプ画像を重畳することにより、処理対象ピクセルPPにそれぞれスタンプ画像の一部が合成されることになる。
これに対し、インデックス画像中の画素P3、P5にもそれぞれ値1が記録されている。これらの値もそれぞれ、枠M3、M5にスタンプ画像が重畳されることを意味する。しかし、枠M3、M5の範囲にスタンプ画像を重畳しても、処理対象ピクセルPPには影響はない。このように、処理対象ピクセルPPを中心としてスタンプ画像のサイズに応じた範囲でインデックス画像を検索しておけば、処理対象ピクセルPPに合成されるスタンプ画像を特定する処理としては足りる。図の例では、3×3のサイズからなるスタンプ画像を用いる例を示したが、種々のサイズからなる複数種類のスタンプ画像を用いる場合には、その中の最大のサイズのものに基づいて検索の範囲を設定すればよい。
データ生成装置100は、こうして画素値を算出すると、処理対象ピクセルに対して、算出された合成画素値を合成する(ステップS38)。この処理では、処理対象ピクセルに影響を与えるスタンプ画像の画素値は全て反映されているから、処理対象ピクセルの画素値は他のピクセルに対する処理による影響を受けることなく、一義的に定まることになる。
データ生成装置100は、以上の処理を全ての処理対象ピクセルについて終了するまで繰り返して実行する(ステップS40)。
図7は、本実施例における処理方法による効果を示す説明図である。図の上方には、サンプル地図画像およびスタンプ画像を例示した。左側に示す夜景のサンプル地図画像に対して、スタンプ画像を合成する処理を実行する。スタンプ画像の合成は3億回以上となる。
図の下側には、スタンプ描画時間を、従来技術と本実施例の方法とで比較した結果を示した。図示するとおり、実施例の方法によれば、処理時間は30分の1ほどに短縮された。
このように処理時間が短縮された理由は、次の通りである。
図5のステップS34の図中に示したように、処理対象ピクセルPPの周辺にスタンプ画像が重畳される場合、処理対象ピクセルPPは、枠M1、M2、M4のそれぞれに重畳されるスタンプ画像によって影響を受けることになる。従来技術では、枠M1、M2、M4の合成処理を順次、実行するため、処理対象ピクセルPPの画素値が決まるまでの間に、何度も、読み出し、合成、書き込みが繰り返し実行されていた。
これに対し、本発明では、インデックス画像を参照することにより、処理対象ピクセルPPに対して影響を与える全てのスタンプ画像を特定することができ、合成画素値を一義的に定めることができる。従って、キャンバスの各画素の読み出し、書き込みを繰り返す必要がなくなり、合成処理を一度で済ませることができるため、処理の高速化を図ることができるのである。
また、実施例の方法では、合成する過程でインデックス画像を繰り返し参照する必要が生じるが、インデックス画像への書き込みは一切、行われない。即ち、従来技術と異なり、実施例の方法では、スタンプ画像の合成位置を特定するためのデータの読み出しはインデックス画像に対してのみ行い、合成結果の書き込みはキャンバスに対してのみ行うというように、読み出し/書き込みの処理を分離することができる。一般にデータへのアクセスは、読み出しと書き込みとを同時に行うことはできないため、キャンバスに対して双方を分離していない従来技術では処理時間が長くなる傾向にあるが、本実施例のように読み出し/書き込みの処理を分離すれば、インデックス画像の参照と、キャンバスへの書き込みを同時に行うことも可能となる。こうした並列処理効果も奏し、本発明ではさらに処理速度を高速化することができる。
こうした並列化には、GPU(Graphics Processor Unit)が特に適している。従って、本実施例の処理方法は、GPU向けの処理であるとも言える。
C1.平行投影データを用いた地図表示:
次に、本実施例で生成された平行投影データを用いた地図表示の方法について説明する。
図8は、地図表示処理のフローチャートである。端末300の表示制御部306が主として実行する処理であり、ハードウェア的には端末300のCPUが実行する処理である。
この処理では、まず端末300は、表示範囲を設定する(ステップS50)。ユーザが指定するものとしてもよいし、GPSで得られる現在位置を中心とする所定範囲を表示範囲と設定してもよい。
また、端末300は夜景モードか否かを判断する(ステップS52)。これもユーザの指定に従うものとしてもよいし、地図を表示する時刻が所定の時間帯の場合には夜景モードに設定する方法等で自動的に設定してもよい。
端末300は、夜景モードの場合には、夜景用の平行投影データを読み込み(ステップS54)、そうでない場合には、昼景用の平行投影データを読み込む(ステップS56)。これらの読み込みは、従前の地図表示処理において既に取得し端末300内の地図情報記憶部305に保持されている地図情報から行われる。端末300は、地図情報記憶部305に保持されているデータでは、地図を表示するのに不足する場合には、サーバ200から不足部分の地図情報を取得する。
次に、変形例として、透視投影による地図表示の方法を示す。変形例では、平行投影データは用いず、データ生成装置100の夜景テクスチャ生成部102で生成される夜景テクスチャを使用する。また、平行投影データ211に代えて、データ生成装置100の3D地図データベース110に格納される3次元モデルを用いる。
図9は、変形例としての地図表示処理のフローチャートである。端末300の表示制御部306が実行する処理である。
端末300は、視点、視線方向、表示範囲を設定する(ステップS70)。ユーザの指定に従ってこれらを設定するものとしてもよいし、現在位置に基づいてこれらを自動的に設定するものとしてもよい。
端末300は、仮想3次元空間に3次元モデルを配置する(ステップS72)。そして、夜景モードが設定されている場合には(ステップS74)、これらの3次元モデルの全体に対して、夜景テクスチャを貼付する(ステップS76)。夜景モードでない場合には(ステップS74)、この処理はスキップされる。
こうして3次元モデルの配置が完了すると、端末300は透視投影を行い(ステップS78)、その投影図に文字を表示して(ステップS80)、地図表示を完了する。
変形例によれば、透視投影によって夜景の地図表示を実現することができる。
また、生成された夜景テクスチャを利用して、リアリティの高い夜景の3次元地図を表示することができる。
インデックス画像は、第1実施例と同様、ピクセルごとにスタンプ画像を重畳すべき位置および回数についての情報を格納している。図の例では、ピクセルIDX11には値1、ピクセルIDX22には値4が記録され、ピクセルIDX12、IDX21には値0が記録されている。低解像度インデックス画像には、画素ごとに、インデックス画像の4ピクセル分の情報が格納されている。図中のピクセルLDX11は、インデックス画像の4つのピクセルLDX11、LDX12、LDX21、LDX22に対応する。従って、低解像度インデックス画像のピクセルLDX11には、これらの4つのピクセルを統合した値、図の例では値5(=1+4)が格納される。
このように生成された低解像度インデックス画像を見れば、これに対応するインデックス画像の4ピクセルのいずれかにスタンプ画像を配置するか否かを判断することができる。例えば、図中のピクセルLDX11は値5であるため、これに対応する4つのピクセルのいずれかは値0でないこと、即ち、いずれかのピクセルにスタンプ画像が配置されることが分かる。仮に、ピクセルLDX11が値0であれば、これに対応する4つのピクセルのいずれも値0であり、いずれのピクセルにもスタンプ画像は配置されないことが分かる。このように、低解像度インデックス画像を見れば、インデックス画像の4ピクセル分をまとめて判断することができることになる。
図11、図12は、第2実施例におけるスタンプ描画処理のフローチャートである。実施例1の夜景テクスチャ生成処理(図4のステップS22)に代わる処理であり、データ生成装置100が実行する処理である。
データ生成装置100は、処理を開始すると、キャンバス、低解像度インデックス画像、およびインデックス画像を読み込む(ステップS130)。
データ生成装置100は、処理対象ピクセルを選択する(ステップS132)。そして、低解像度インデックス画像を参照し、スタンプ画像の合成位置を検索する(ステップS134)。図中に検索方法を示した。スタンプ画像が3×3の大きさであるとすれば、図の上側に示す処理対象ピクセルPPについての検索範囲は、図中の枠内となる。低解像度インデックス画像において、この検索範囲の各画素に対応する範囲は、図中に示す低解像度検索範囲となる。低解像度インデックス画像は、各ピクセルがキャンバスの4ピクセルに相当するため、低解像度検索範囲は、検索範囲よりも広くなる。
例えば、図中に示す通り、低解像度インデックス画像のピクセルLP1、LP4は値0であるとする。これは、インデックス画像において、ピクセルLP1、LP4に対応する範囲、即ち、ピクセルp1、p2、p4、pp、p8にはスタンプ画像は配置されないことを意味する。従って、インデックス画像において、これらのピクセルは参照するまでなく、値0であると判断できる。一方、図中に示す通り、低解像度インデックス画像のピクセルLP2、LP3はそれぞれ値1、値2であるとする。これは、インデックス画像において、これらのピクセルLP2、LP3に対応するピクセルp3,p5,p6,p7のいずれかにスタンプ画像が配置されることを意味している。従って、データ生成装置100は、これらの画素についてインデックス画像を参照し、スタンプ画像を合成する位置および数を特定する。
データ生成装置100は、全てのピクセルについてスタンプ画像の描画が完了するまで、繰り返し以上の処理を実行する(ステップS140)。
第2実施例では、全ての領域で低解像度インデックス画像とインデックス画像とを併用する例を示したが、両者を領域によって使い分けてもよい。また、低解像度インデックス画像は1種類に限らず、複数種類の解像度で用意してもよい。
インデックス画像の参照の要否の判断の前に、低解像度インデックス画像をピクセル単位で参照するか否かの判断を行うようにしてもよい。即ち、合計が値0でない場合には、低解像度インデックスの行または列内の各ピクセルを個別に参照するのである。そして、低解像度インデックスにおいて、値0でないピクセルを発見したら、それに対応するインデックス画像を参照するのである。
上述の態様によれば、低解像度インデックス画像を参照する際の分岐処理の回数を低減することができ、処理の高速化を図ることができる。特に、GPUなど、分岐処理に時間を要するプロセッサを利用する場合に有用な方法である。
もっとも、スタンプ画像の密度が高い領域では、上述の態様では、かえって分岐処理が増大するおそれもある。従って、上述の態様は、スタンプ画像の密度に応じて適用するか否かを切り換えるようにしてもよい。
また、合計値による判断手法は、低解像度インデックス画像ではなく、インデックス画像に直接適用することも可能である。インデックス画像におけるピクセルの格納値を行方向または列方向に合計し、その行または列の参照要否を判断すればよい。こうすることで低解像度インデックス画像を用いたのと同様の処理を擬似的に実現することができる。
以上の説明において、ピクセルの合計は、必ずしも行方向または列方向に限定されるものでもなく、隣接する4つのピクセル単位で合計を算出するなど、種々の条件で行うことができる。
本発明は上述の実施例に限定されず、その趣旨を逸脱しない範囲で種々の構成を採ることができることはいうまでもない。例えば、実施例においてハードウェア的に構成されている部分は、ソフトウェア的に構成することもでき、その逆も可能である。
実施例では、夜景地図を実現するための光源のスタンプ画像を合成する例を示したが、本発明の画像処理は、かかる場合のみならず、種々の画像およびスタンプ画像に対して適用可能である。
実施例では、比較的小さいサイズのスタンプ画像を利用する例を示したが、スタンプ画像のサイズは、原画像と同一またはそれ以上であってもよい。
実施例のようにメッシュ単位で画像データが用意され、これを並べて地図を表示する場合には、メッシュの境界部分における画像の連続性を確保することが重要となることがある。そして、メッシュの外側にスタンプ画像が配置される場合であっても、その位置関係によっては、スタンプ画像の一部がメッシュ内に重なることがある。従って、連続性を確保するためには、このようにメッシュの外側に配置されるスタンプ画像に対しても適切な合成処理を施す必要がある。かかる方法の一つとしては、キャンバス自体をメッシュよりも大きなサイズとしておき、スタンプ画像を合成した後、メッシュに対応する領域を切り出す方法が考えられる。しかし、この方法では、メッシュ周辺部分の無駄な画素についてまで合成処理を施すことになり、効率が悪い。
これに対し、上述のように、インデックス画像をキャンバスよりも大きなサイズとしておけば、キャンバス内の各ピクセルを処理する際に、その外側に配置されるスタンプ画像も考慮して各ピクセルの画素値を一義的に特定することが可能となる。従って、かかるインデックス画像を用意しておけば、キャンバスをメッシュと同サイズとし、無駄な画素に対する処理を回避して、メッシュの境界付近の画素に対しても効率的にスタンプ画像の合成を行うことができる。
101…コマンド入力部
102…夜景テクスチャ生成部
103…平行投影部
104…送受信部
110…3D地図データベース
111…スタンプ画像データベース
112…夜景テクスチャデータベース
113…平行投影データ
200…サーバ
201…送受信部
202…データベース管理部
203…経路探索部
210…地図データベース
211…平行投影データ
212…文字データ
213…ネットワークデータ
300…端末
300d…ディスプレイ
301…送受信部
302…コマンド入力部
303…GPS入力部
304…主制御部
305…地図情報記憶部
306…表示制御部
307…マップマッチング変換部
Claims (7)
- 複数のピクセルからなる原画像に対して、複数のスタンプ画像を重畳した合成画像を生成する画像処理装置であって、
前記原画像を表す原画像データを記憶する原画像データ記憶部と、
前記スタンプ画像を表すスタンプ画像データを記憶するスタンプ画像データ記憶部と、
前記スタンプ画像が配置されるべき位置を、前記原画像データのピクセルで表した配置データを記憶する配置データ記憶部と、
前記原画像データに、前記スタンプ画像データを重畳する重畳処理部とを備え、
前記重畳処理部は、
前記原画像データから前記重畳処理を施す対象ピクセルを選択し、
前記配置データに基づいて、前記対象ピクセルに重畳される全ての前記スタンプ画像と、その配置を特定し、
前記特定された結果に基づいて、前記スタンプ画像データを参照して、前記対象ピクセルに全ての前記スタンプ画像を重畳した場合の画素値を算出し、
該算出結果を、前記合成画像における前記対象ピクセルの画素値として記憶する画像処理装置。 - 請求項1記載の画像処理装置であって、
前記重畳処理部は、前記対象ピクセルを中心として、前記スタンプ画像のサイズに応じた距離だけ離れた範囲内を検出範囲と設定し、
前記配置データから前記検出範囲内の各ピクセルに対応するデータを検索することによって、前記対象ピクセルに重畳される全ての前記スタンプ画像と、その配置を特定する画像処理装置。 - 請求項1または2記載の画像処理装置であって、
前記スタンプ画像は、透過部分を有する画像であり、
前記配置データは、さらに、前記スタンプ画像を重畳する回数を表す重畳回数を記憶しており、
前記重畳処理部は、前記重畳回数だけ繰り返し前記スタンプ画像を適用して、前記画素値を算出する画像処理装置。 - 請求項1〜3いずれか記載の画像処理装置であって、さらに、
前記配置データ記憶部は、前記配置データとは別に、前記スタンプ画像が配置されるべき位置を、前記原画像データより粗い解像度の粗ピクセルで表した粗配置データを記憶しており、
前記重畳処理部は、
前記粗配置データに基づいて、前記対象ピクセルに重畳される全ての前記スタンプ画像と、その粗ピクセルでの配置を特定し、
前記特定された粗ピクセルでの配置に基づいて、前記配置データを参照することによって、前記原画像のピクセル単位での前記スタンプ画像の配置を特定する画像処理装置。 - 請求項3または4記載の画像処理装置であって、
前記原画像データは、地物の3次元モデルを投影して明度を低下させた夜景画像であり、
前記スタンプ画像は、前記地物の明かりを表す光源画像であり、
前記配置データは、前記夜景画像内での前記地物の位置を前記光源画像の配置位置とし、該夜景画像において同一のピクセルとなる地物の数を前記重畳回数として記憶する画像処理装置。 - 複数のピクセルからなる原画像に対して、複数のスタンプ画像を重畳した合成画像を生成する画像処理方法であって、
前記原画像を表す原画像データを記憶する原画像データ記憶部にアクセスするステップと、
前記スタンプ画像を表すスタンプ画像データを記憶するスタンプ画像データ記憶部にアクセスするステップと、
前記スタンプ画像が配置されるべき位置を、前記原画像データのピクセルで表した配置データを記憶する配置データ記憶部にアクセスするステップと、
前記原画像データに、前記スタンプ画像データを重畳する重畳ステップとを備え、
前記重畳ステップは、
前記原画像データから前記重畳処理を施す対象ピクセルを選択し、
前記配置データに基づいて、前記対象ピクセルに重畳される全ての前記スタンプ画像と、その配置を特定し、
前記特定された結果に基づいて、前記スタンプ画像データを参照して、前記対象ピクセルに全ての前記スタンプ画像を重畳した場合の画素値を算出し、
該算出結果を、前記合成画像における前記対象ピクセルの画素値として記憶する画像処理方法。 - 複数のピクセルからなる原画像に対して、複数のスタンプ画像を重畳した合成画像を生成するためのコンピュータプログラムであって、
前記原画像を表す原画像データを記憶する原画像データ記憶部にアクセスする機能と、
前記スタンプ画像を表すスタンプ画像データを記憶するスタンプ画像データ記憶部にアクセスする機能と、
前記スタンプ画像が配置されるべき位置を、前記原画像データのピクセルで表した配置データを記憶する配置データ記憶部にアクセスする機能と、
前記原画像データに、前記スタンプ画像データを重畳する重畳機能とをコンピュータに実現させ、
前記重畳機能として、
前記原画像データから前記重畳処理を施す対象ピクセルを選択し、
前記配置データに基づいて、前記対象ピクセルに重畳される全ての前記スタンプ画像と、その配置を特定し、
前記特定された結果に基づいて、前記スタンプ画像データを参照して、前記対象ピクセルに全ての前記スタンプ画像を重畳した場合の画素値を算出し、
該算出結果を、前記合成画像における前記対象ピクセルの画素値として記憶する機能をコンピュータに実現させるコンピュータプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014064917A JP6110807B2 (ja) | 2014-03-27 | 2014-03-27 | 画像処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014064917A JP6110807B2 (ja) | 2014-03-27 | 2014-03-27 | 画像処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015188164A true JP2015188164A (ja) | 2015-10-29 |
JP6110807B2 JP6110807B2 (ja) | 2017-04-05 |
Family
ID=54430202
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014064917A Expired - Fee Related JP6110807B2 (ja) | 2014-03-27 | 2014-03-27 | 画像処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6110807B2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE112016004312T5 (de) | 2015-09-25 | 2018-07-05 | Denso Corporation | Risikoindex-transformationsvorrichtung |
CN112651910A (zh) * | 2019-10-11 | 2021-04-13 | 新疆三维智达网络科技有限公司 | 一种叠加防伪***的生成方法及*** |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09311623A (ja) * | 1996-05-21 | 1997-12-02 | Alpine Electron Inc | 画像表示方法 |
JP2000057317A (ja) * | 1998-08-06 | 2000-02-25 | Victor Co Of Japan Ltd | 画像合成方法及び画像合成プログラムを記録したコンピュータ読み取り可能な記録媒体 |
JP2001056676A (ja) * | 1999-08-20 | 2001-02-27 | Nec Ic Microcomput Syst Ltd | グラフィックス処理装置、方法及び記録媒体 |
JP2011119832A (ja) * | 2009-12-01 | 2011-06-16 | Jvc Kenwood Holdings Inc | 画像表示装置および画像表示方法 |
-
2014
- 2014-03-27 JP JP2014064917A patent/JP6110807B2/ja not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09311623A (ja) * | 1996-05-21 | 1997-12-02 | Alpine Electron Inc | 画像表示方法 |
JP2000057317A (ja) * | 1998-08-06 | 2000-02-25 | Victor Co Of Japan Ltd | 画像合成方法及び画像合成プログラムを記録したコンピュータ読み取り可能な記録媒体 |
JP2001056676A (ja) * | 1999-08-20 | 2001-02-27 | Nec Ic Microcomput Syst Ltd | グラフィックス処理装置、方法及び記録媒体 |
JP2011119832A (ja) * | 2009-12-01 | 2011-06-16 | Jvc Kenwood Holdings Inc | 画像表示装置および画像表示方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE112016004312T5 (de) | 2015-09-25 | 2018-07-05 | Denso Corporation | Risikoindex-transformationsvorrichtung |
CN112651910A (zh) * | 2019-10-11 | 2021-04-13 | 新疆三维智达网络科技有限公司 | 一种叠加防伪***的生成方法及*** |
CN112651910B (zh) * | 2019-10-11 | 2023-12-26 | 新疆三维智达网络科技有限公司 | 一种叠加防伪***的生成方法及*** |
Also Published As
Publication number | Publication date |
---|---|
JP6110807B2 (ja) | 2017-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107423445B (zh) | 一种地图数据处理方法、装置及存储介质 | |
KR101799945B1 (ko) | 3차원 지도 묘화 시스템, 지물 데이터 생성 방법, 3차원 지도 묘화 방법 및 컴퓨터 판독가능한 기록 매체 | |
US7612777B2 (en) | Animation generating apparatus, animation generating method, and animation generating program | |
US9824482B2 (en) | Map viewer and method | |
US9549169B2 (en) | Stereoscopic map display system | |
JPWO2006092853A1 (ja) | 地図表示装置および地図表示方法 | |
JP5883818B2 (ja) | 3次元地図表示システム | |
US10733777B2 (en) | Annotation generation for an image network | |
CN104101348A (zh) | 导航***以及在导航***上显示地图的方法 | |
WO2016117267A1 (ja) | 3次元地図表示システム | |
JP6110780B2 (ja) | 付加情報表示システム | |
JP5883723B2 (ja) | 3次元画像表示システム | |
JP2007132972A (ja) | 情報処理装置、情報処理方法、およびプログラム | |
JP2014186175A (ja) | 3次元地図表示システム | |
US10409842B2 (en) | Storage medium, map information processing apparatus, and data generation method | |
JP6022386B2 (ja) | 3次元地図表示装置、3次元地図表示方法、および、コンピュータプログラム | |
JP2012150823A (ja) | 3次元地図描画システム | |
JP6110807B2 (ja) | 画像処理装置 | |
JP2015187795A (ja) | 画像表示システム | |
JP2003195744A (ja) | 地図表示装置 | |
JP6512425B2 (ja) | 3次元地図表示システム | |
JP6091676B2 (ja) | 3次元地図表示システム | |
JP2007133464A (ja) | 情報処理装置、情報処理方法、およびプログラム | |
JP5964611B2 (ja) | 3次元地図表示システム | |
JP6016765B2 (ja) | 3次元地図表示システムおよび合成テクスチャ生成装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160219 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170130 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170201 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170214 |
|
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: 20170306 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170310 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6110807 Country of ref document: JP 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 |
|
LAPS | Cancellation because of no payment of annual fees |