JPH07234947A - 画像合成装置 - Google Patents

画像合成装置

Info

Publication number
JPH07234947A
JPH07234947A JP6326068A JP32606894A JPH07234947A JP H07234947 A JPH07234947 A JP H07234947A JP 6326068 A JP6326068 A JP 6326068A JP 32606894 A JP32606894 A JP 32606894A JP H07234947 A JPH07234947 A JP H07234947A
Authority
JP
Japan
Prior art keywords
image data
memory
original image
data
processors
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
Application number
JP6326068A
Other languages
English (en)
Other versions
JP3465975B2 (ja
Inventor
Kazuo Nobori
一生 登
Yoshiyasu Sumi
義恭 角
Go Kamogawa
郷 鴨川
Masahiro Hamada
正宏 浜田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP32606894A priority Critical patent/JP3465975B2/ja
Publication of JPH07234947A publication Critical patent/JPH07234947A/ja
Application granted granted Critical
Publication of JP3465975B2 publication Critical patent/JP3465975B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Image Generation (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

(57)【要約】 【目的】 複数のプロセッサから同時にアクセス可能な
メモリを有する、テクスチャマッピングを行う画像合成
装置を提供する。 【構成】 複数のプロセッサ10a、10b、・・・に
接続されたアービタ部12によって、複数のメモリブロ
ック11a、11b、・・・のアドレス配置をインター
リーブする。各メモリブロック11a、11b、・・・
には、原画像データ30及び合成画像データ33を2次
元座標空間上で分割して得られる矩形領域の1つを格納
する。これにより、複数のプロセッサ10a、10b、
・・・からメモリブロック11a、11bへの複数同時
アクセスが可能となり、また、プロセッサ10a、10
b、・・・が画像を合成する際のメモリアクセスの競合
を少なくすることができ、高速な画像合成が可能にな
る。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、テクスチャマッピング
によって画像を合成する装置に関するものであり、特
に、画像合成に必要なデータを保存するメモリの構成法
を提供することにより、少ないメモリ容量による安価な
構成で、高速な処理が可能になるよう構成された画像合
成装置に関する。
【0002】
【従来の技術】コンピュータを用いて物体の3次元的な
構造から2次元画像を合成する、いわゆる3次元コンピ
ュータ・グラフィックス(CG)の手法の1つとして、
テクスチャマッピングという手法がある。
【0003】このテクスチャマッピングによれば、合成
画像データの各画素値を原画像データの画素値から得る
ので自然な画像を合成することができる。しかしその反
面、画像の合成に必要な演算量、及びメモリアクセスの
両方が大きいために、テクスチャマッピングによる画像
合成には、複数のプロセッサを備えたいわゆるマルチプ
ロセッサ構成の合成装置が利用されることが多い。
【0004】以下に、テクスチャマッピングにより画像
合成を行う従来のマルチプロセッサ構成の画像合成装置
を、図10を参照しながら説明する。
【0005】図10に示すように、複数のプロセッサ1
00a、100b、・・・(以下まとめて100とす
る)は、それぞれ、バス101a、101b、・・・
(以下まとめて101とする)によってローカルメモリ
102a、102b、・・・(以下まとめて102とす
る)と、フレームメモリ103a、103b、・・・
(以下まとめて103とする)に接続されており、フレ
ームメモリ103は、画像パス104によって1つに接
続されている。
【0006】このような構成の従来の画像合成装置にお
いて、各プロセッサ100は、処理する合成画像データ
の領域によって負荷を分散して処理を行う。各プロセッ
サ100は、原画像データ、及び画像合成に必要な描画
データをそれぞれローカルメモリ102に格納し、これ
を処理することによって割り当てられた領域の合成画像
データを生成する。各プロセッサ100によって生成さ
れた合成画像データは、対応するフレームメモリ103
へ格納される。フレームメモリ103は、VRAM等の
2つのポートを有するメモリで構成されている。複数の
プロセッサ100によってそれぞれ分割して生成された
合成画像データは、画像パス104で1つにまとめられ
て出力される。
【0007】一般的に、マルチプロセッサ構成による装
置では、プロセッサ間で共有するデータのアクセスの際
に発生するメモリアクセスの競合をいかに少なくするか
が性能を左右する。上記従来の画像合成装置では、原画
像データ及び描画データはローカルメモリへ、合成画像
データは分割した領域毎にフレームメモリへ格納するこ
とにより、複数のプロセッサからのメモリアクセス競合
に起因する性能低下を回避し、高速な画像合成を実現し
ていた。
【0008】
【発明が解決しようとする課題】しかしながら、従来の
画像合成装置では、透過や写り込みなどの処理を含む画
像合成のように、生成された合成画像データ(または合
成途中の画像データ)を原画像データとして再度利用す
る必要がある場合、他のプロセッサが生成した合成画像
データへのアクセスしなければならない。しかし、合成
画像データへアクセスすることのできるプロセッサが限
られているため、このような画像の合成は高速に行うこ
とができないという問題点を有していた。
【0009】また、原画像データや描画データのための
メモリ領域を、複数のプロセッサがローカルメモリ内に
重複して確保する必要があり、多くのメモリ容量が必要
となるために装置が高価になるという問題点も有してい
た。
【0010】本発明はこのような現状に鑑みてなされた
ものであり、本発明の目的は、複数のプロセッサから同
時にアクセス可能なメモリを構成することにより、安価
で高速な画像合成装置を提供することである。
【0011】
【課題を解決するための手段】本発明の画像合成装置
は、複数の面を有する対象物の3次元構造を定義する情
報を含むモデルデータと、該複数の面に属する画素の値
を表す原画像データと、該原画像データ及び該モデルデ
ータを用いて合成された3次元画像を2次元画像に変換
するためのレンダリングデータとを用いて、画像を合成
する画像合成装置であって、所定のアドレス単位で複数
のメモリブロックに分割されているメモリ手段であっ
て、該モデルデータ、該原画像データ、該レンダリング
データ、及び合成された2次元画像を表す合成画像デー
タを格納するメモリ手段と、アドレス空間を有するアー
ビタ部であって、該アドレス空間において連続するアド
レスは、異なるメモリブロックに割り当てられており、
それにより該複数のメモリブロックのアドレスがインタ
ーリーブされているアービタ部と、該対象物の該複数の
面のうちの異なる面の画像をそれぞれが合成する複数の
プロセッサ部であって、該複数のプロセッサ部のそれぞ
れは、該アービタ部を介して該メモリ手段にアクセス
し、該複数の面のうちの特定の面に対応する該モデルデ
ータの部分、該原画像データのうちの該特定の面に対応
する部分、及び該レンダリングデータのうちの該特定の
面に対応する部分に基づいて該特定の面の画像を合成す
る複数のプロセッサ手段とを備えており、該原画像デー
タ及び該合成画像データのそれぞれは、2次元座標空間
上で複数の矩形領域に分割されており、該複数の矩形領
域は、該複数のメモリブロックにそれぞれ割り付けられ
ており、そのことにより上記目的を達成する。
【0012】前記3次元構造を定義する情報は、前記複
数の面を定義する情報の1次元配列であり、前記複数の
プロセッサは、該複数の面を定義する情報が並べられて
いる順に該複数の面の画像を合成し、それにより該複数
の面のうちの該複数のプロセッサの個数と同じ数の面の
画像を同時に合成し、前記画像合成装置は、原画像デー
タのうちの該同時に合成される面に対応する部分が同一
のメモリブロックに格納されているか否かを判別し、該
同時に合成される面に対応する部分が該同一のメモリブ
ロックに格納されているときには、該複数の面を定義す
る情報の配列を変更する手段をさらに備えていてもよ
い。
【0013】前記複数のプロセッサは、前記複数の面の
うちの該複数のプロセッサの個数と同じ数の面の画像を
同時に合成し、前記複数の矩形領域は、第1の方向にお
いて距離uλ毎、または第2の方向において距離vλ毎
に同じメモリブロックに割り付けられており、前記画像
合成装置は、前記原画像データのうちの任意の1つの面
に対応する部分の該第1の方向の大きさはuλよりも小
さく、該第2の方向の大きさはvλよりも十分に小さく
なるように、該原画像データが前記メモリ部に格納され
る前に該原画像データの構成を変更する手段と、該同時
に合成される面に対応する原画像データの部分が異なる
メモリブロックに存在するように、該同時に合成される
面を選択する手段とをさらに備えていてもよい。
【0014】前記メモリ手段はDRAMを有しており、
前記複数のメモリブロックのそれぞれは、該DRAMの
1つのメモリセルアレイであり、前記複数の矩形領域の
それぞれはさらに複数の小矩形領域に分割されており、
該複数の小矩形領域は、該メモリセルアレイ内の複数の
列アドレスにそれぞれ割り付けられていてもよい。
【0015】前記メモリ手段はDRAMを有しており、
前記複数のメモリブロックのそれぞれは、該DRAMの
1つのメモリセルアレイであり、前記複数の矩形領域の
それぞれはさらに複数の小矩形領域に分割されており、
該複数の小矩形領域のそれぞれは、該メモリセルアレイ
内の1つの列アドレスに割り付けられており、かつ隣接
する小矩形領域が互いに異なるメモリセルアレイに対応
するように割り付けられていてもよい。
【0016】前記モデルデータのうちの前記特定の面に
対応する部分は、前記原画像データのうちの該特定の面
に対応する部分と同一のメモリブロックに格納されてい
てもよい。
【0017】前記メモリ手段及び前記アービタ部は、単
一のLSIによって実装されていてもよい。
【0018】
【作用】本発明は、上記の構成により、複数のプロセッ
サから同時にアクセスすることができるメモリ部に、原
画像データ、合成画像データ等を格納する。従って、合
成画像データに対しても、再度原画像データとして複数
のプロセッサから同時にアクセスすることが可能とな
る。これにより、従来のように複数のプロセッサのロー
カルメモリに原画像データまたは合成画像データを重複
して確保する必要をなくすことができ、少ないメモリ容
量で、高速かつ安価な画像合成装置を実現することがで
きる。
【0019】また、原画像データ及び合成画像データを
2次元座標空間上で複数の矩形領域に分割し、各矩形領
域を1つのメモリブロックに割り当てている。これによ
り、1つのプロセッサが1つの面の画像を合成する際に
アクセスするメモリブロックの数を減らすことができ
る。さらに、複数のプロセッサによって同時に処理され
る面の選択方法を制御することにより、メモリアクセス
競合の頻度を減少させることができる。
【0020】さらに、各矩形領域をさらに細かく小矩形
領域に分割し、各小矩形領域を、メモリセルアレイ内の
同一列に割り当てると、列アドレス変更による画像合成
の速度の低下を防ぐことができ、更なる高速化を実現す
ることができる。
【0021】
【実施例】
(実施例1)以下、本発明の画像合成装置の実施例1を
図面を参照しながら説明する。
【0022】図1は、本発明の画像合成装置の実施例1
の概略構成を示す図である。プロセッサ部10は、複数
のプロセッサ10a、10b、・・・を有しており、各
プロセッサは、プロセッサバス13によってアービタ部
12に接続されている。メモリ部11は、メモリバス1
4によってそれぞれアービタ部12に接続されている複
数のメモリブロック11a、11b・・・を有してい
る。複数のプロセッサ10a、10b、・・・は、アー
ビタ部12を介して複数のメモリブロック11a、11
b、・・・にアクセスする。
【0023】図2は、アービタ部12がプロセッサ部1
0から見て上位8ビット、下位8ビットを合わせた16
ビットのアドレス空間を有している場合のアドレスイン
ターリーブの例、つまり、アービタ部12のアドレス
と、複数のメモリブロック11a、11b、・・・及び
そのメモリブロック内のアドレスとの関係を示す例であ
る。この例では、アドレスインターリーブによって、ア
ービタ部12の連続するアドレス空間は異なるメモリブ
ロック11a、11b、・・・に割り当てられている。
例えば、プロセッサ部10から見たアドレス0x000
1及び0x0002は、それぞれ、メモリブロック11
bのアドレス0x00、メモリブロック11cのアドレ
ス0x00に割り当てられており、それゆえに同時にア
クセス可能である。
【0024】同一のメモリブロックに割り当てられたア
ービタ部12の複数のアドレスに対して、複数のプロセ
ッサから同時にアクセスがあった場合、つまりメモリア
クセスの競合が発生した場合、1つのアクセスが即時に
処理され、残りのアクセスに対しては待ち時間が生じ
る。このことが複数のプロセッサを有するプロセッサ部
10の処理能力低下の原因となる。しかし、メモリアク
セス競合の頻度は、複数のプロセッサへの処理の割り当
ての方法を工夫することによって、減少させることがで
きるし、またアクセス数に対してメモリブロックの数を
大きくすることによっても減少させることができる。
【0025】図3は、メモリ部11内に格納されている
データを示している。メモリ部11には、原画像データ
30、モデルデータ31、レンダリングデータ32、及
び合成画像データ33が格納されている。原画像データ
30及び合成画像データ33は、対象物の複数の面に属
する画素値の2次元配列からなるデータである。モデル
データ31は、複数の面を有する対象物の3次元的構造
を規定する情報と、この構造情報と原画像データ30と
の対応関係の情報を含むデータである。レンダリングデ
ータ32は、原画像データ30及びモデルデータ31を
用いて合成された画像を2次元座標空間に投影するため
に必要な、合成時の視点、投影面等の情報を含むデータ
である。合成画像データ33は、原画像データ30、モ
デルデータ31、レンダリングデータ32を用いて生成
される画像のデータである。
【0026】図4は、図3に示すようにメモリ部11に
格納されたモデルデータ31の例である。モデルデータ
31は、原画像データ30を参照する原画像データ参照
情報、対象物が面p0、p1、・・・によって構成され
ることを示すモデル構成情報、面のそれぞれが有する頂
点を示す面の構成情報、各頂点の原画像上の2次元座標
と、それに対応する3次元座標を示している頂点の構成
情報とを含んでいる。原画像データ参照情報は、モデル
構成情報において面が並べられている順番にしたがって
順に参照される。例えば、図3に示すような立方体を合
成する場合には、対象物は6つの面を有しており、各面
は4つの頂点から構成され、頂点は全部で8つ存在し、
それぞれの頂点は原画像に対応して存在する。
【0027】以上のような構成を有する画像合成装置の
動作を説明する。
【0028】複数のプロセッサ10a、10b、・・・
のそれぞれは、予め与えられたプログラムにしたがって
複数の面p0、p1、・・・うちの1つの画像の合成を
別個に行う。各プロセッサに処理を行うべき面を割り当
てる制御は、図示しない制御部によって行われる。な
お、複数のプロセッサ10a、10b、・・・の任意の
1つに制御部を兼ねさせることもできる。各プロセッサ
は、アービタ部12を経由してメモリ部11にアクセス
し、モデルデータ31、原画像データ30、及びレンダ
リングデータ32のうちの、それぞれに割り当てられた
面に対応する部分を読み込む。ここで、複数のプロセッ
サ10a、10b、・・・によるテクスチャマッピング
処理においては、メモリアクセスのほとんどが原画像デ
ータ30及び合成画像データ33へのアクセスである。
各プロセッサは、読み込まれたデータに基づいてテクス
チャマッピング処理によりそれぞれ割り当てられた面の
合成画像データ33を生成すると、合成画像データ33
をメモリ部11に書き込む。以上で画像合成処理を終了
する。
【0029】上述した動作において、各プロセッサに処
理すべき面を割り当てる制御は、以下のようにして行わ
れる。まず、複数のプロセッサ10a、10b、・・・
は、制御部によって定められた順にメモリ部11にアク
セスし、モデルデータ31を参照する。モデルデータ3
1には、面や頂点などの構造的な情報に加えて、各面の
画像合成が未処理か否かを示す未処理フラグが各面に1
つずつ備えられている。これらの未処理フラグは、画像
合成処理を各プロセッサが開始する以前に全て0にセッ
トされる。複数のプロセッサ10a、10b、・・・
は、モデル構成情報において面が並べられている順に未
処理フラグを参照し、未処理フラグが0である面を選択
し、選択した面の未処理フラグを1にしてから画像合成
を始める。このとき、制御部は、1つのプロセッサが選
択した面の未処理フラグを0から1に書き換えている間
は、他のプロセッサはモデルデータを参照することがで
きないように各プロセッサを制御する。このようにし
て、複数のプロセッサ10a、10b、・・・は、それ
ぞれ異なる面の画像処理を行うことができる。このよう
な制御により、モデル構成情報内に並べられている複数
の面p0、p1、・・・のうち、複数のプロセッサ10
a、10b、・・・の総数に等しい数だけ連続した面の
画像合成処理が同時に行われることになる。
【0030】以上説明したように、本実施例の画像合成
装置では、複数のプロセッサ10a、10b、・・・が
それぞれ異なる面の画像合成を行う。同時に行われる複
数のプロセッサ10a、10b、・・・からのメモリア
クセスは、原画像データ30及び合成画像データ33の
異なるアドレスへのアクセスがほとんどである。このた
め、複数のプロセッサ10a、10b、・・・から、複
数のメモリブロック11a、11b、・・・へのアクセ
スは、多くの場合同時に処理可能となり、その結果、高
速な画像合成を実現することができる。
【0031】また、本実施例によると、生成された合成
画像データは、プロセッサ部10から見て、原画像デー
タ30が存在するメモリ空間と等価なメモリ空間に書き
込まれる。したがって、図5に示すように、生成された
合成画像データ33aを原画像データとして利用して別
の合成画像データ33bを生成する必要がある場合で
も、どのプロセッサからでもアクセスが可能となり、従
来のマルチプロセッサ構成の画像合成装置よりも高速な
画像合成を行うことができる。また、原画像データ3
0、モデルデータ31、レンダリングデータ32及び合
成画像データ33a、33bの複数のコピーを重複して
格納しておく必要がないので、少ないメモリ容量のメモ
リ部11を備えた画像合成装置を実現することができ
る。
【0032】(実施例2)以下、本発明の画像合成装置
の実施例2を説明する。
【0033】実施例2では、画像合成装置の動作及び構
成は、アービタ部12のアドレスインターリーブの方法
が異なることを除けば、上記実施例1の画像合成装置と
同じである。
【0034】図6に、本実施例におけるアービタ部12
のアドレスインターリーブの方法の例を示す。アービタ
部12のアドレス空間は所定ワードずつ複数のメモリブ
ロック11a、11b、・・・に割り当てられており、
ここでは256ワードのアドレス空間が1つのメモリブ
ロックに割り当てられているものとする。また、1つの
メモリブロックに割り当てられたインターリーブのブロ
ック(ここでは16×16のブロック)は、原画像デー
タ30及び合成画像データ33のそれぞれを2次元座標
空間上で複数の矩形領域に分割したときの1矩形領域に
割り当てられている。このようにアドレスインターリー
ブを行うことにより、ほとんどの場合において、それぞ
れのプロセッサが、割り当てられた1つの面の画像を合
成する際にアクセスするメモリブロックの数を、実施例
1と比べて少なくすることができる。
【0035】さらに、本実施例では、各プロセッサに画
像を合成すべき面を1つずつ割り当てる制御に加えて、
画像合成が同時に行われる複数の面として、原画像デー
タ30等の各面に対応する部分が異なるメモリブロック
に存在している面を選択する制御が行われる。これによ
りメモリアクセス競合の頻度を減少させることができ
る。
【0036】以下に、このような制御の方法の例を2つ
説明する。なお、モデルデータ31及びレンダリングデ
ータ32へのアクセス量は、原画像データ30及び合成
画像データ33へのアクセス量よりも小さいため、ここ
では原画像データ30及び合成画像データ33へのアク
セス衝突を回避する制御を主に説明する。
【0037】上述したように、複数のプロセッサ10
a、10b、・・・は、モデルデータ31のモデル構成
情報内の順番にしたがって、プロセッサの総数と同じ数
の面の画像合成処理を同時に行う。このため、同時に処
理される面に対応する原画像データ30及び合成画像デ
ータ33が異なるメモリブロックに存在するように、モ
デル構成情報内の面の配列順を決定すればよい。
【0038】第一の制御方法では、モデルデータ31の
モデル構成情報内に、任意の順番で面を予め配列してお
く。原画像データ30及びモデルデータ31が2次記憶
装置から読み込まれることにより、あるいは計算により
生成され、メモリ部11に読み込まれると、モデルデー
タ31及び原画像データ30の各面に対応する部分が存
在するメモリブロックが定まる。上述した制御部(不図
示)は、読み込まれたモデル構成情報を基に、原画像デ
ータ30の各面に対応する部分がどのメモリブロックに
存在するかを調べる。その結果、プロセッサの総数と同
数の連続する面、つまり同時に画像合成処理が行われる
可能性が高い面に対応する原画像データ30の部分が異
なるメモリブロックに存在していればそのままにしてお
く。これに対して、同一のメモリブロックに存在するも
のがあれば、連続する面に対応する原画像データ30の
部分が異なるメモリブロックに存在するように、モデル
構成情報内の面の配列順を入れ替える。
【0039】図11に示す制御のフローを参照しなが
ら、第一の制御方法をより具体的に説明する。ここで
は、3個のプロセッサ10a〜10cと、6個のメモリ
ブロック11a〜11fに分割されたメモリ部11とを
備えている画像合成装置が面p0〜p5の6つの面を有
する対象物の画像を合成する場合を例として考える。ま
た、原画像データ30の面p0、p1、p2、p3、p
4及びp5に対応する部分は、それぞれ、メモリブロッ
ク11a、11b、11a、11c、11d及び11e
に格納されるものとする。
【0040】原画像データ30及びモデルデータ31が
メモリ部11に読み込まれた後、制御部は図11に示さ
れる処理を実行する。まず、制御部は、複数の面のうち
からプロセッサの個数に等しい数の面を、モデル構成情
報内の配列順に、同時に画像合成が行われる面として特
定する(ステップS1)。例えば、面p0、p1及びp
2の3つの面が、同時に画像合成が行われる面として特
定される。続いて制御部は、特定された面に対応する原
画像データ30の部分のうち、同一メモリブロックに格
納されているものの数がn以下か否かを判断する(ステ
ップS2)。nは0以上の整数であり、画像合成装置に
備えられているプロセッサの数、及びメモリブロックの
個数等を考慮して予め決定される。同一メモリブロック
に格納されているものの数がnを超えたときには、制御
部は、同一メモリブロックに対応する原画像データ30
の部分が格納されているn個以上の面から1つを、面の
配列順の入れ替えの対象として選び出す(ステップS
3)。例えば、制御部は、該当する面のうちで配列順が
一番早いものを選択する。ここではn=0としており、
面p0及びp2に対応する原画像データ30の部分が同
一メモリブロック11aに格納されているので、面p0
が順番の入れ替えの対象となる面として選択される。
【0041】続いて、制御部は、複数の面のうちのステ
ップS1で特定された面よりも後に配列されている面の
うちから、原画像データ30の対応する部分が、ステッ
プS3で選択された面とは異なるメモリブロックに格納
されている面の有無を調べ(ステップS4)、該当する
面があれば、該当する面のうちの1つ、例えば配列順が
一番早いものと、ステップS3で選択された面との間で
配列順の入れ替えを行う(ステップS5)。このような
面の配列順の入れ替えを、特定された面に対応する原画
像データ30の部分のうち、同一のメモリブロックに存
在するものの数がn以下となるまで繰り返す。なお、ス
テップS4において特定された面よりも後には面が残っ
ていない場合には、ステップS6に進み、処理を終了す
る。このような処理を未判別の面が無くなるまで繰り返
すことにより、同時に処理する面として、原画像データ
30の対応する部分ができるだけ異なるメモリブロック
に存在する面を選択する制御が行われる。
【0042】上述した例では、面p3と選択された面p
0との間で配列順の入れ替えが行われる。この時点でモ
デル構成情報内の6つの面の配列は、p3、p1、p
2、p0、p4、p5の順となる。次に、同時に処理さ
れる面として面p0、p4及びp5を選択し、上述した
処理と同様の処理を行う。ここではこれらの面に対応す
る原画像データ30の部分は、それぞれメモリブロック
11a、11d及び11eに存在しており、全て異な
る。したがって面の配列順の入れ替えは行われない。
【0043】このようにして、複数のプロセッサ10
a、10b、・・・によって複数の面の画像合成を同時
に行う際に、原画像データ30へのアクセスができるだ
け衝突しないようにすることができる。また、一般に、
原画像データ30の2次元座標空間上で隣接していない
面同士は、合成画像データ33の2次元座標空間上でも
隣接していない可能性が高い。なぜなら、通常、エリア
ノイズの少ない画質のよい画像を合成するためには、原
画像データ30と合成画像データ33の面積比がなるべ
く1:1の面が多くなるようにモデルデータ31及び原
画像データ30が用意され、それゆえに原画像データ3
0での面間の関係と、合成画像データ33での面間の関
係とは近い可能性が高いからである。したがって、上述
した方法により原画像データ30へのアクセスができる
だけ衝突しないようにすれば、合成画像データ33への
アクセス衝突の可能性も低減することができる。
【0044】次に、第二の制御方法を説明する。
【0045】計算によって生成された原画像データ30
及びモデルデータ31がメモリ部11に読み込まれる前
に、メモリ空間内で、原画像データ30、モデルデータ
31、レンダリングデータ32及び合成画像データ33
が格納されるべき領域が定められる。このとき、原画像
データ30の各矩形領域に対応する部分は、一定の周期
で同一のメモリブロックに割り当てられる。以下、2次
元座標空間上でのu方向及びv方向の周期をそれぞれu
λ、vλとする。各データが格納される領域が確保され
ると、制御部は、メモリ部11に読み込まれる前の原画
像データ30及びモデルデータ31を参照し、所定の条
件を満足するように原画像データ30及びモデルデータ
31を再構成する。これについては後で詳述する。続い
て、制御部は、メモリ部11内に読み込まれたモデルデ
ータ31内の頂点構成情報に基づいて、同一メモリブロ
ックに原画像データ30の対応する部分が存在する確率
が低い面の組を決定する。これに基づき、制御部は、複
数のプロセッサによって画像が合成される面の順番を制
御する。
【0046】図12は、原画像データ30及びモデルデ
ータ31の再構成処理の流れの例を示す図である。まず
制御部は、原画像データ30の各矩形領域が割り当てら
れたメモリブロックを調べ、これに基づいて、上記周期
uλ、vλを求める(S101)。続いて、制御部は、
原画像データ30の各面に対応する部分の2次元座標空
間上での大きさを調べ、複数の面に対応する部分のu方
向、v方向の平均的な大きさが、それぞれ周期uλ、v
λよりも小さいか否かを判別する(S102)。複数の
面に対応する部分のu方向、v方向の平均的な大きさ
が、それぞれ周期uλ、vλよりも大きければ、原画像
データ30を生成する上での面の大きさの設定が変更さ
れる(S103)。これに対応してモデルデータ31も
再構成される(S104)。
【0047】例えば、対象物が面p0〜p5を有してい
る場合に、原画像データ30のこれらの面に対応する部
分の平均的な大きさが周期uλ、vλよりも大きけれ
ば、制御部は各面をさらに細かに分割する。分割によ
り、対象物が有する面が面p0〜p23になったとする
と、これに対応してモデルデータ31は、モデル構成情
報は面p0〜p23の配列に変更され、原画像データ参
照情報は、1つの面の画像合成に用いられる原画像デー
タ30の部分が1つとなるように変更される。あわせて
面構成情報及び頂点構成情報も変更される。
【0048】上述した処理を、原画像データ30の複数
の面に対応する部分の平均的な大きさが周期uλ、vλ
よりも小さくなるまで繰り返す。このようにして原画像
データ30及びモデルデータ31は再構成される。
【0049】再構成された原画像データ30及びモデル
データ31がメモリ部11に読み込まれると、続いて、
対応する原画像データ30の部分が同じブロックに存在
する確率の低い面の組が決定される。モデルデータ31
内の各頂点の構成情報は、図4に示すように原画像デー
タ30の2次元座標空間における座標(ui,vi)を
含んでいる。これを用いて、制御部は各面の重心の座
標、及び重心間のu方向、v方向の距離を求める。ある
2つの面の重心間のu方向、v方向のそれぞれにおける
距離が、上述した周期uλ、vλのそれぞれの自然数倍
に近ければ、これらの2つの面に対応する原画像データ
30の部分は同じメモリブロックに存在する確率が高
い。逆に近くなければ(ある程度離れていれば)、同じ
メモリブロックに存在する確率は低い。実際には、制御
部は、2つの面の重心間のu方向、v方向における距離
と周期uλ、vλの自然数倍との近さを表す数値を「類
似度」として全ての面に対して算出し、類似度に基づい
て、同一のメモリブロックに原画像データ30の対応す
る部分が存在する確率の低い面を決定する。
【0050】この決定に基づいて、制御部は複数のプロ
セッサ10a、10b、・・・が画像合成を行う面の順
番を制御する。これにより、複数の面の画像をそれぞれ
異なるプロセッサによって同時に合成する際のアクセス
の衝突を低減することができる。
【0051】ここでは、計算によって生成された原画像
データ30及びモデルデータ31がメモリ部31に読み
込まれる前の段階において、原画像データ30の各面に
対応する部分の2次元座標空間上での大きさを調べ、そ
れに基づき原画像データ30及びモデルデータ31の再
構成を行っている。しかし、2次元座標空間での矩形領
域が同一のメモリブロックに割り当てられる周期uλ、
vλは事前に分かるので、原画像データ30及びモデル
データ31を生成するための計算の際に、原画像データ
30の各面に対応する部分のu方向及びv方向での大き
さが周期uλ、vλよりも小さくなるようにしてもよ
い。
【0052】以上説明したように、本実施例では、アド
レスインターリーブさせたメモリブロックの1つを、原
画像データ30及び合成画像データ33を2次元座標空
間上で格子状に分割して得られる矩形領域の1つに割り
付けている。これにより、任意の1つのプロセッサが、
1つの面の画像を合成する際にアクセスするメモリブロ
ックの数を少なくすることができる。さらに、同時に画
像合成が行われる面に対応する原画像データ30の部分
が異なるメモリブロックに存在するように、画像合成を
行う面の順序を制御している。これによりアクセス衝突
を低減させることができ、その結果、高速な画像合成を
行うことができる画像合成装置を実現することができ
る。
【0053】なお、本実施例では、同時に画像合成が行
われる複数の面を、原画像データ等のが異なるメモリブ
ロックに存在するような面とするための制御の例として
2つの方法を説明したが、他の制御方法を適用した場合
にも同様の効果を得ることができる。また、制御部を備
える代わりに、複数のプロセッサ10a、10b、・・
・の任意の1つに上述した制御部の機能と同様の機能を
持たせてもよい。
【0054】(実施例3)以下、本発明の画像合成装置
の実施例3を説明する。
【0055】実施例3では、画像合成装置の動作及び構
成は、アービタ部12のアドレスインターリーブの方法
が異なることを除けば、上記実施例2の画像合成装置と
同じである。また、本実施例では、複数のメモリブロッ
ク11a、11b、・・・のそれぞれとしてDRAMの
1つのメモリセルアレイを用いている。
【0056】図7は、DRAMの1つのメモリセルアレ
イの一般的な構成図である。セルアレイ70に格納され
たデータは、行アドレス71と列アドレス72の2つを
合わせたアドレスによって特定される。このDRAMの
メモリセルアレイ内の特定のアドレスのデータを読み出
す際には、まずそのデータの列アドレスを指定すること
により同一の列アドレスを持つ1列分のデータが一旦全
て読み出される。続いて、行アドレスを指定することに
より特定のアドレスのデータにアクセスする。したがっ
て、同じ列アドレスを有するデータへ連続してアクセス
する場合には、異なる列アドレスを有するデータに連続
してアクセスする場合よりも、高速にアクセスを行うこ
とができる。
【0057】DRAMのメモリセルの上述した利点を生
かすために、本実施例では、実施例2と同様に原画像デ
ータ30及び合成画像データ33の矩形領域を1つのメ
モリブロック、すなわち1つのメモリセルアレイに割り
付け、この矩形領域をさらに分割して得られる小矩形領
域を、1つのメモリセルアレイの1つの列に割り付けて
いる。図8に本実施例におけるアービタ部12のアドレ
スインターリーブの方法の例を示す。ここでは、1つの
メモリブロックとして、行アドレス4ビット、列アドレ
ス4ビットの計8ビットの256ワード空間を持つメモ
リセルアレイを用いており、メモリブロック内のアドレ
スの下位4ビットが行アドレスを、上位4ビットが列ア
ドレスを示すものとする。
【0058】上記実施例1及び2で述べたように、複数
のプロセッサの1つ1つに画像合成を行う面を割り当
て、複数の面の画像合成を同時に行う場合、原画像デー
タ30及び合成画像データ33のうちの2次元座標空間
上で隣接する領域に対応する部分を、連続してアクセス
する頻度が高くなる。しかし、本実施例のように小矩形
領域を1つの列に割り付ければ、隣接する領域に対応す
る原画像データ30及び合成画像データ33の部分はメ
モリセルの同一列に格納される。したがって、列アドレ
スの変更によるDRAMのメモリセルへのアクセス速度
低下を防ぐことができる。
【0059】また、本実施例において、実施例2と同様
に、同時に画像を合成する面の順番の制御を行えば、D
RAMを用いた画像合成装置においてもメモリアクセス
競合の頻度を減少させることができる。これにより、D
RAMを用いた高速な画像合成装置を実現することがで
きる。
【0060】(実施例4)以下、本発明の画像合成装置
の実施例4を説明する。
【0061】実施例4では、画像合成装置の動作及び構
成は、アービタ部12のアドレスインターリーブの方法
が異なることを除けば、上記実施例3の画像合成装置と
同じである。
【0062】図9に、本実施例におけるアービタ部12
のアドレスインターリーブの方法の例を示す。本実施例
においても、上記実施例3と同様に、DRAMの1つの
メモリセルアレイを1つのメモリブロックとして用い、
原画像データ30及び合成画像データ33の1つの小矩
形領域に対応する部分を、メモリセルアレイ内の1つの
列に割り付けている。また、本実施例では、2次元座標
空間上で隣接する小矩形領域に対応する部分を異なるメ
モリブロックに割り付けている。
【0063】実施例3では、複数のプロセッサ10a、
10b、・・・によって同時に画像が合成される面を2
次元座標空間上で離れた面とする制御、つまり画像を合
成する面の順番の制御を行うことにより、メモリアクセ
ス競合の頻度を減少させることができると述べた。しか
し、それとは逆に、例えば、同時に画像の合成を行う面
として、1周期uλ、vλ内に全ての面が存在するよう
な面を選択する、等の制御により、同時に画像が合成さ
れる面を2次元座標空間上で近接した面とすることもで
きる。本実施例のアドレスインターリーブの方法はこの
ような場合に有効であり、メモリアクセス競合の頻度を
減少させることができる。
【0064】なお、上記実施例1〜4ではモデルデータ
31のメモリ配置には言及していない。しかし、図4に
示すように各面を規定する頂点の配列を含む面構成情報
の特定の面に対応する部分を、その面に対応する原画像
データ30の部分と同一のメモリブロックに格納すれ
ば、モデルデータ31へのアクセス時のメモリアクセス
の競合の頻度を減少させることができる。また、各頂点
の座標を含む頂点構成情報に関しても同様であり、頂点
構成情報の特定の面に対応する部分を、できるだけそ、
の面に対応する原画像データ30の部分と同一のメモリ
ブロックに格納することにより、メモリアクセス競合の
頻度を減少させることができる。これにより、より高速
な画像合成装置を実現することができる。
【0065】なお、実施例1において、プロセッサ部1
0から見たアービタ部12のアドレス空間を16ビット
としているが、16ビット以外のアドレス空間であって
も同様の効果を得ることができる。また、実施例2にお
いて、個々のメモリブロックは256ワードのアドレス
空間を持つものとしたが、256ワード以外であっても
同様の効果を得ることができる。
【0066】なお、実施例1〜4では、対象物が多角形
の面によって構成される場合を説明した。しかし、対象
物の複数の面のそれぞれが多角形である必要はなく、複
数の面の画像の合成を複数のプロセッサによって分担し
て行うものであれば、上記実施例1〜4で述べた効果と
同様の効果を得ることができる。
【0067】また、実施例1〜4のいずれにおいても、
メモリ部11とアービタ部12とを1つのLSIによっ
て実装すれば、画像合成装置全体の小型化につながり、
その結果、コストをさらに低減することができる。
【0068】
【発明の効果】以上説明したように、本発明の画像合成
装置では、複数のプロセッサから見て、原画像データが
存在するメモリ空間と等価なメモリ空間に合成画像デー
タを書き込む。このため、生成された合成画像データを
さらに原画像データとして用いて別の合成画像データを
生成する場合でも、どのプロセッサからでもアクセスが
可能となり、結果として従来のマルチプロセッサ構成の
画像合成装置よりも高速な画像合成を行うことができ
る。また、各データの複数のコピーを重複して格納して
おく必要が無くなるため、メモリ容量を少なくすること
ができる。
【0069】また、原画像データ及び合成画像データを
2次元座標空間上で分割して得られる矩形領域のそれぞ
れを、アドレスインターリーブさせたメモリブロックの
1つに割り付けている。これにより、1つのプロセッサ
が、割り当てられた1つの面の画像を合成する際にアク
セスするメモリブロックの数を減らすことができる。さ
らに、画像を合成する面の順序を制御して、原画像デー
タの対応する部分が異なるメモリブロックに存在するよ
うな面の画像を同時に合成することにより、守りアクセ
スの競合を低減させることができる。
【0070】メモリ部をDRAMで構成する場合には、
メモリブロックのそれぞれを1つのメモリセルアレイに
割り当て、さらに矩形領域をさらに細かく分割して得ら
れる小矩形領域を1つの列に割り当てる。これにより、
さらに高速な画像合成が可能となる。
【図面の簡単な説明】
【図1】本発明の画像合成装置の第1の実施例の構成を
示すブロック図である。
【図2】第1の実施例におけるアドレスインターリーブ
によるアドレス配置を示す図である。
【図3】第1の実施例におけるメモリ部でのデータ配置
を示す図である。
【図4】モデルデータの構成を示す図である。
【図5】第1の実施例における合成画像データの配置を
説明する図である。
【図6】第2の実施例におけるアドレスインターリーブ
によるアドレス配置を示す図である。
【図7】DRAMの1つのメモリセルアレイの構成を示
すブロック図である。
【図8】第3の実施例におけるアドレスインターリーブ
によるアドレス配置を示す図である。
【図9】第4の実施例におけるアドレスインターリーブ
によるアドレス配置を示す図である。
【図10】従来の画像合成装置の構成を示すブロック図
である。
【図11】画像を合成する面の順序を制御する第一の方
法の流れを示すフローチャートである。
【図12】画像を合成する面の順序を制御する第二の方
法の流れの主要部を示すフローチャートである。
【符号の説明】
10 プロセッサ部 10a、10b プロセッサ 11 メモリ部 11a、11b メモリブロック 12 アービタ部 13 プロセッサバス 14 メモリバス 30 原画像データ 31 モデルデータ 32 レンダリングデータ 33、33a、33b 合成画像データ 70 セルアレイ 71 行アドレス 72 列アドレス 100a、100b プロセッサ 101a、101b バス 102a、102b ローカルメモリ 103a、103b フレームメモリ 104 画像バス
フロントページの続き (72)発明者 浜田 正宏 大阪府門真市大字門真1006番地 松下電器 産業株式会社内

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 複数の面を有する対象物の3次元構造を
    定義する情報を含むモデルデータと、該複数の面に属す
    る画素の値を表す原画像データと、該原画像データ及び
    該モデルデータを用いて合成された3次元画像を2次元
    画像に変換するためのレンダリングデータとを用いて、
    画像を合成する画像合成装置であって、 所定のアドレス単位で複数のメモリブロックに分割され
    ているメモリ手段であって、該モデルデータ、該原画像
    データ、該レンダリングデータ、及び合成された2次元
    画像を表す合成画像データを格納するメモリ手段と、 アドレス空間を有するアービタ部であって、該アドレス
    空間において連続するアドレスは、異なるメモリブロッ
    クに割り当てられており、それにより該複数のメモリブ
    ロックのアドレスがインターリーブされているアービタ
    部と、 該対象物の該複数の面のうちの異なる面の画像をそれぞ
    れが合成する複数のプロセッサ部であって、該複数のプ
    ロセッサ部のそれぞれは、該アービタ部を介して該メモ
    リ手段にアクセスし、該複数の面のうちの特定の面に対
    応する該モデルデータの部分、該原画像データのうちの
    該特定の面に対応する部分、及び該レンダリングデータ
    のうちの該特定の面に対応する部分に基づいて該特定の
    面の画像を合成する複数のプロセッサ手段と、を備えて
    おり、 該原画像データ及び該合成画像データのそれぞれは、2
    次元座標空間上で複数の矩形領域に分割されており、該
    複数の矩形領域は、該複数のメモリブロックにそれぞれ
    割り付けられている、画像合成装置。
  2. 【請求項2】 前記3次元構造を定義する情報は、前記
    複数の面を定義する情報の1次元配列であり、前記複数
    のプロセッサは、該複数の面を定義する情報が並べられ
    ている順に該複数の面の画像を合成し、それにより該複
    数の面のうちの該複数のプロセッサの個数と同じ数の面
    の画像を同時に合成し、 前記画像合成装置は、原画像データのうちの該同時に合
    成される面に対応する部分が同一のメモリブロックに格
    納されているか否かを判別し、該同時に合成される面に
    対応する部分が該同一のメモリブロックに格納されてい
    るときには、該複数の面を定義する情報の配列を変更す
    る手段をさらに備えている、請求項1に記載の画像合成
    装置。
  3. 【請求項3】 前記複数のプロセッサは、前記複数の面
    のうちの該複数のプロセッサの個数と同じ数の面の画像
    を同時に合成し、前記複数の矩形領域は、第1の方向に
    おいて距離uλ毎、または第2の方向において距離vλ
    毎に同じメモリブロックに割り付けられており、 前記画像合成装置は、 前記原画像データのうちの任意の1つの面に対応する部
    分の該第1の方向の大きさはuλよりも小さく、該第2
    の方向の大きさはvλよりも十分に小さくなるように、
    該原画像データが前記メモリ部に格納される前に該原画
    像データの構成を変更する手段と、 該同時に合成される面に対応する原画像データの部分が
    異なるメモリブロックに存在するように、該同時に合成
    される面を選択する手段と、をさらに備えている、請求
    項1に記載の合成画像装置。
  4. 【請求項4】 前記メモリ手段はDRAMを有してお
    り、前記複数のメモリブロックのそれぞれは、該DRA
    Mの1つのメモリセルアレイであり、前記複数の矩形領
    域のそれぞれはさらに複数の小矩形領域に分割されてお
    り、該複数の小矩形領域は、該メモリセルアレイ内の複
    数の列アドレスにそれぞれ割り付けられている、請求項
    1、2または3に記載の画像合成装置。
  5. 【請求項5】 前記メモリ手段はDRAMを有してお
    り、前記複数のメモリブロックのそれぞれは、該DRA
    Mの1つのメモリセルアレイであり、前記複数の矩形領
    域のそれぞれはさらに複数の小矩形領域に分割されてお
    り、該複数の小矩形領域のそれぞれは、該メモリセルア
    レイ内の1つの列アドレスに割り付けられており、かつ
    隣接する小矩形領域が互いに異なるメモリセルアレイに
    対応するように割り付けられている、請求項1に記載の
    画像合成装置。
  6. 【請求項6】 前記モデルデータのうちの前記特定の面
    に対応する部分は、前記原画像データのうちの該特定の
    面に対応する部分と同一のメモリブロックに格納されて
    いる、請求項1〜5のいずれか1つに記載の画像合成装
    置。
  7. 【請求項7】 前記メモリ手段及び前記アービタ部は、
    単一のLSIによって実装されている、請求項1〜6の
    いずれか1つに記載の画像合成装置。
JP32606894A 1993-12-28 1994-12-27 画像合成装置 Expired - Fee Related JP3465975B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP32606894A JP3465975B2 (ja) 1993-12-28 1994-12-27 画像合成装置

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP5-337770 1993-12-28
JP33777093 1993-12-28
JP32606894A JP3465975B2 (ja) 1993-12-28 1994-12-27 画像合成装置

Publications (2)

Publication Number Publication Date
JPH07234947A true JPH07234947A (ja) 1995-09-05
JP3465975B2 JP3465975B2 (ja) 2003-11-10

Family

ID=26572067

Family Applications (1)

Application Number Title Priority Date Filing Date
JP32606894A Expired - Fee Related JP3465975B2 (ja) 1993-12-28 1994-12-27 画像合成装置

Country Status (1)

Country Link
JP (1) JP3465975B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007052394A1 (ja) * 2005-10-31 2007-05-10 Sony Computer Entertainment Inc. 描画処理装置、並列処理装置および排他制御方法
KR20220110832A (ko) 2019-12-10 2022-08-09 주식회사 쿠라레 다층 구조체 및 이의 제조방법, 이를 사용한 포장재, 진공 단열체 및 전자 디바이스의 보호 시트

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007052394A1 (ja) * 2005-10-31 2007-05-10 Sony Computer Entertainment Inc. 描画処理装置、並列処理装置および排他制御方法
US8363059B2 (en) 2005-10-31 2013-01-29 Sony Computer Entertainment Inc. Rendering processing apparatus, parallel processing apparatus, and exclusive control method
KR20220110832A (ko) 2019-12-10 2022-08-09 주식회사 쿠라레 다층 구조체 및 이의 제조방법, 이를 사용한 포장재, 진공 단열체 및 전자 디바이스의 보호 시트
DE112020005336T5 (de) 2019-12-10 2022-08-11 Kuraray Co., Ltd. Mehrschichtstruktur und verfahren zu deren herstellung, verpackungsmaterial und vakuumisolator, die diese umfassen, sowie schutzfolie für elektronische vorrichtungen

Also Published As

Publication number Publication date
JP3465975B2 (ja) 2003-11-10

Similar Documents

Publication Publication Date Title
JP2637931B2 (ja) テクスチャ・マッピングを行うコンピュータ・システム
USRE44347E1 (en) Method and device for creating a two-dimensional representation of a three-dimensional structure
US5757374A (en) Method and apparatus for performing texture mapping
US9478001B2 (en) Scalable high performance 3D graphics
JP3732593B2 (ja) 画像処理装置
US6940514B1 (en) Parallel initialization path for rasterization engine
US7872657B1 (en) Memory addressing scheme using partition strides
JP4410940B2 (ja) 3次元イメージングシステムで用いるためのテクスチャリングシステム
US5877770A (en) Texture pattern memory circuit for providing plural texel data in response to a single access operation
JP3138173B2 (ja) グラフィックス用フレームメモリ装置
US6999088B1 (en) Memory system having multiple subpartitions
KR100648293B1 (ko) 그래픽 시스템 및 그것의 그래픽 처리 방법
US6885384B2 (en) Method of creating a larger 2-D sample location pattern from a smaller one by means of X, Y address permutation
WO2000028477A1 (en) Image processing apparatus
US5586246A (en) Image synthesis apparatus
US6724396B1 (en) Graphics data storage in a linearly allocated multi-banked memory
JPH06175646A (ja) グラフィックス・システム用フレーム・バッファおよびラスタ・プロセッサならびにピクセル変数のバッファリング方法
US7069387B2 (en) Optimized cache structure for multi-texturing
US5719598A (en) Graphics processor for parallel processing a plurality of fields of view for multiple video displays
US5777625A (en) Clipper re-uses storage locations allocated for verticles
US5696944A (en) Computer graphics system having double buffered vertex ram with granularity
JP2003186740A (ja) メモリ制御装置、及びメモリ制御方法
JP3083724B2 (ja) グラフィックシステムの信号処理方法および装置
JP3465975B2 (ja) 画像合成装置
JP3397709B2 (ja) フレーム・バッファ線形アドレス指定方法

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20030819

LAPS Cancellation because of no payment of annual fees