JP2751171B2 - 画像のシェーディング装置 - Google Patents

画像のシェーディング装置

Info

Publication number
JP2751171B2
JP2751171B2 JP62332392A JP33239287A JP2751171B2 JP 2751171 B2 JP2751171 B2 JP 2751171B2 JP 62332392 A JP62332392 A JP 62332392A JP 33239287 A JP33239287 A JP 33239287A JP 2751171 B2 JP2751171 B2 JP 2751171B2
Authority
JP
Japan
Prior art keywords
pixel
processors
processing
inner product
pip
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.)
Expired - Fee Related
Application number
JP62332392A
Other languages
English (en)
Other versions
JPH01175088A (ja
Inventor
裕之 藤田
淳 長谷部
敦 菊池
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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP62332392A priority Critical patent/JP2751171B2/ja
Publication of JPH01175088A publication Critical patent/JPH01175088A/ja
Application granted granted Critical
Publication of JP2751171B2 publication Critical patent/JP2751171B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明は3次元画像のシューディング装置に関す
る。 〔発明の概要〕 この発明は画素(又はパッチ)演算用のプロセッサを
複数個設け、この複数のプロセッサを、複数の画素(又
はパッチ)で並列に使用するとともに、3次元ベクトル
の内積演算にも3個並列に使用することにより、各画素
(又はパッチ)の輝度値の演算を高速に行なえるように
したものである。 また、3次元ベクトルの内積演算に並列に使用した3
個のプロセッサに同じ内積演算結果を格納することによ
り、これらをR,G,Bデータとしてその値のバランスを変
えることで、色情報を持たない入力画素データからも着
色を容易に行うことができるようにしたものである。 〔従来の技術〕 コンピュータグラフィックスでは、物体が光が当たっ
たときの光学現象を数式モデルで表現し、このモデルに
基づいて物体に陰影をつけ、人間が眼でみたときと同様
な画像を生成するようにするシェーディングと呼ばれる
技術が知られている。 このシェーディング技術において曲面で表現される物
体面については、通常は曲面を細かな多角形の小平面
(以下これをパッチという)に分割し、各パッチごとに
輝度計算を行なう。このパッチ毎の輝度は、このパッチ
法線ベクトル と光源からの入射光線ベクトル を求め、この内積に応じてパッチ毎の輝度を求める。 しかし、このままではパッチ間の接続部分での輝度値
の変化が目立つので、パッチ内で輝度値を適当な補間処
理により内挿し、これによりパッチの接続部分での輝度
値の変化を滑らかにしている。 この方法はスムースシェーディングと呼ばれ、その一
方式としてホン(Phong)シェーディングと呼ばれる技
術が知られている。 これは第3図に示すような例えば四辺形パッチの各頂
点A,B,C,Dの法線ベクトルから、パッチ内の各画素点の
法線ベクトルを内挿で求める。例えば、点Aを点Bの法
線ベクトルから線形補間して点Lの法線ベクトルを求
め、点Cと点Dの法線ベクトルから線形補間して点Rの
法線ベクトルを求め、点Lと点Rの法線ベクトルから線
形補間して点Pの法線ベクトルを求める。そして、求め
たその法線ベクトルを用いて各点の輝度値を算出する方
法である。 このホンシェーディングでは、すべての画素について
の法線ベクトルが求まるので、入射光線ベクトルと、こ
の画素毎の法線ベクトルとの内積から各画素の輝度値を
求めることができる。 ところで、従来、各パッチについての上記内積演算あ
るいは各画素についての上記内積演算は、各パッチ毎
に、あるいは各画素毎に順次行なっている。 〔発明が解決しようとする問題点〕 ところが、このように各パッチ毎、あるいは画素毎に
内積演算を順次行なう場合には、演算量が膨大になり、
一画面のシェーディング結果を得るのに、長時間を要す
るという欠点があった。 この発明は、この点にかんがみ、高速シェーディング
が可能な装置を提供しようとするものである。 〔問題点を解決するための手段〕 この発明においては、3次元法線ベクトル(x,y,z)
と入射光線ベクトル(a,b,c)との内積を求めるに当た
って、3N=(N=1,2)個設けられる画素(又はパッ
チ)演算用のプロセッサと、 この複数のプロセッサを1画素(又はパッチ)につい
てそれぞれ3個ずつ割り当てるとともに、N画素(又は
パッチ)についてこのプロセッサを同時に割り当て、上
記1画素(又はパッチ)について割り当てられる3個の
プロセッサのそれぞれにおいて、ax,by,czの各演算を並
列に行わしめて、同じ内積演算結果ax+by+czを3個の
プロセッサのそれぞれに格納せしめるとともに、上記N
画素(又はパッチ)並列に上記内積演算を行わしめる手
段とを設ける。 〔作用〕 3次元法線ベクトルと光線ベクトルとの内積演算のう
ちの各掛算ax,by,czが3個のプロセッサによって並列に
同時になされる。また、N個の画素についての内積演算
が3N個のプロセッサによって並列に同時になされる。し
たがって、シェーディングのための演算時間が大幅に短
縮される。 また、この3個のプロセッサに同じ内積演算結果ax+
by+czが格納されるので、これらをR,G,Bデータとして
その値のバランスを変えることで、色情報を持たない入
力画素データからも着色が容易に行われるようになる。 〔実施例〕 第1図はこの発明装置が適用されるビデオ画像処理装
置の全体の概要の一実施例を示すもので、この例はデー
タ処理の高速化を実現した例である。 すなわち、この例ではデータ処理部を主として画素値
を計算するプロセッサの系(以下PIPと称す)(30A)の
アドレスの管理等のデータの流れの管理と処理のタイミ
ング合わせを司るプロセッサの系(以下PVPと称す)(3
0B)とに分ける。 従来のデータ処理部ではこの両者の処理時間を合計し
た処理時間を必要とするのに対し、このように分ければ
両者のうち、より大きい方の処理時間で済む(例えば特
開昭58−215813号公報参照)。したがって、この例の場
合にはビデオデータ処理をリアルタイムで行うことが可
能になるほどの高速処理ができる。 また、同図において(10)は入出力部(以下10Cと称
す)、(20A)は入力画像メモリ(VIMIN)、(20B)は
出力画像メモリ(VIMOUT)で、これらによりメモリ部
(以下VIMと称す)(20)が構成される。 (40)は処理の実行,停止、プログラム交換をコント
ロールする全体のコントローラとしてのプロセッサ(以
下TCと称す)である。 (50)はホストのコンピュータで、TC(40)から各プ
ロセッサに供給するプログラムはこのホストのコンピュ
ータ(50)から供給しておく。TC(40)ではそのプログ
ラムを例えばRAMにストアしておく。 (60)はPIP(30A)に対して設けられたローカルフレ
ームメモリである。 IOC(10)は前述と同様にビデオカメラやVTRからのビ
デオ信号をA/D変換し、入力画像メモリ(20A)に画像イ
メージで書き込み、また、処理後の画像を出力画像メモ
リ(20B)から読み出し、D/A変換し、モニタ等に出力す
る。 この場合、このIOC(10)に入出力可能な信号はNTSC
方式あるいはR,G,B方式のビデオ信号であり、その方式
の指定はTC(40)によりなされる。また、1画素は例え
ば8ビットのデータとされる。 VIM(20)は複数枚のフレームメモリ、例えば、12枚
の765×512バイトのフレームメモリから構成されてい
る。この例の場合、これら12枚のフレームメモリの使わ
れ方は固定的ではなく、処理目的に応じ、あるいは処理
対象画像に応じ、入力画像メモリ(20A)と出力画像メ
モリ(20B)とに自由に割り当てることができるように
されている。また、メモリは2枚1組にして使用され、
一方が書き込み状態のとき、他方より読み出しができる
ようにされて、IOC(10)によるVIM(20)の外部からの
処理と、PIP(30A)及びPVP(30B)によるVIM(20)の
内部での処理が並行して行えるようにされている。 この場合において、このVIM(20)の複数枚のフレー
ムメモリが、IOC(10)の支配下におかれるか、PVP(30
B)の支配下におかれるかの支配モード信号はIOC(10)
より発生し、VIM(20)に供給されている。 PIP(30A)とPVP(30B)は基本的には同じアーキテク
チャで、制御部、演算部、メモリ部、入出力ポートから
なる独立のプロセッサで、それぞれ複数の単位プロセッ
サからなるマルチプロセッサ構成とされ、主として並列
処理方式により処理の高速化が図られている。 PIP(30A)は例えば60枚のPIPプロセッサと数枚のサ
ブのプロセッサを有し、VIM(20)よりの画像データを
加工又はこのPIP内部で画像データを生成する。 各1枚のPIPプロセッサは係数メモリCM,一時記憶メモ
リTM,メモリARAMを有する加減算器ALU及び掛算器MPYと
有する。 そして、60枚のプロセッサは並列処理が可能で、60画
素のデータを同時に並列処理することができる。 また、処理対象データが赤R,緑G,青Bの原色ビデオデ
ータであるときは、3枚のPIPプロセッサが1つの画素
のR,G,Bデータを並列処理するようにされる。そして、
この場合、PIPプロセッサは60枚であるので、20画素分
のR,G,BデータをPIP(30A)のプロセッサにおいて並列
処理することができる。 PVP(30B)は例えば30枚ほどのプロセッサを有し、VI
M(20)よりの画素データのPIP(30A)への割り当てや
回収などVIM(20)より内側の画像データの流れをコン
トロールする。 すなわち、PVP(30B)ではVIM(20)へのアドレスデ
ータ及びコントロール信号を生成し、これらをVIM(2
0)に供給するとともに、PIP(30A)の入出力コントロ
ール信号や他のコントロール信号を生成し、これらをPI
P(30A)に供給する。 この画像データ処理としては常に入力画像メモリ(20
A)の1枚のフレームよりのデータのみを処理して出力
画像メモリ(20B)にその処理後のデータを書き込む場
合のみではなく、複数枚のフレームメモリよりの複数フ
レームにまたがるデータを用いて処理を行うこともあ
る。 そして、PIP(30A)及びPVP(30B)での演算桁数は16
ビットが標準で画像データ処理の演算処理は1フレーム
の画像データは1フレーム以内の処理すなわちリアルタ
イム処理ができるような処理速度が可能とされる。もっ
とも、1フレーム以上の処理速度を必要とする処理もあ
る。 この場合、PIP(30A)及びPVP(30B)による画像デー
タ処理はフレームに同期して行われる。このため、PVP
(30B)にはIOC(10)よりフレームに同期した処理開始
タイミング信号PSが供給される。この信号PSは通常ハイ
レベルで、処理開始タイミングになるとローレベルとな
る。一方、PVP(30B)からは1つの処理が終了したこと
を示す信号OKがIOC(10)に供給される。この信号OKはP
VP(30B)のプロセッサのうち処理系のタイミング管理
を司るこのPVP(30B)の中核のプロセッサより処理が終
わると出力される。処理開始タイミング信号PSは各フレ
ームの1ライン目を示すふれーむ開始信号と処理終了信
号OKとからIOC(10)において生成する。 リアルタイムで処理をなす場合には、信号OKは各フレ
ームの終りで必ず得られるため、信号PSはフレーム開始
信号FLと同じ信号になる。 一方、処理時間が1フレームより長い場合には、信号
PSはフレーム周期とはならず、信号OKが出た次のフレー
ムの始めで得られる。 そして、IOC(10)からの処理開始タイミング信号PS
がローレベルになったことをPVP(30B)の中核のプロセ
ッサがプログラム的に検出すると、このプロセッサが走
り出し、他のプロセッサ(PIPも含む)にプログラムに
よりタイミング信号を出して、VIM(20)にアドレスを
供給し、VIM(20)よりの画像データを読み出してPIP
(30A)にて加工処理を行う。そして、処理が終わると
信号OKを出力して停止し、次の処理開始タイミング信号
PSを待つ。 この場合、同期信号やバースト信号は除かれた画像信
号部分のみが処理対象とされており、VIM(20)から読
み出されたデータは同期信号やバースト信号は含んでい
ない。このため、このIOC(10)では同期信号、バース
ト信号、垂直ブランキング信号を生成するROMを内蔵し
ており、NTSC信号の場合、VIMOUT(20B)からのデータ
を(必要なら組みかえて)これら同期信号、バースト信
号、垂直ブランキング信号とともにD/Aコンバータに送
る。 また、3原色信号である場合にも、外部同期信号が必
要であり、これもこのIOC(10)で生成され、モニター
等に供給されるようにされている。 以上の構成のビデオ画像処理装置を用いて、画像のシ
ェーディング処理を行なう場合、演算はPIP(30A)で高
速に行なわれる。 この演算の高速化のポイントは次の2点である。 (i)法線ベクトル (x,y,z)と光線ベクトル (a,b,c)との内積演算 において、ax,by,czの各項を並列に同時に計算する。 (ii)複数の画素についての上記内積演算を並列に同時
に行なう。 そして、PIP(30A)における演算に当たっては、各画
素についての法線ベクトル (x,y,z)はそれぞれ求められて、入力画像メモリ(20
A)に蓄えられており、また、各PIPプロセッサの係数メ
モリCMには入射光線ベクトル (a,b,c)が記憶されている。 前記(i)のポイントを実現するために、各画素につ
いての法線ベクトル (x,y,z)の各座標値を、3原色信号R,G,Bと同様に扱
い、x→R,y→G,z→Bとして演算処理する。このため、
1画素あたり3枚のPIPプロセッサを割り当てる。 前記(ii)のポイントを実現するためには、例えば60
枚のPIPプロセッサをR(x),G(y),B(z)用に分
けて、20枚ずつをR(x),G(y),B(z)にそれぞれ
割り当てた場合、この20枚ずつを20画素に割り当てる。 画像データの配給回収はPVP(30B)によって、R,G,B
の3原色データを扱うときと同様である。 次に、PIP(30A)における1画素についての演算手順
を第2図に示し、以下これについて説明する。 (1)R,G,B用のPIPプロセッサで黒レベルを求め、これ
を出力画像メモリ(20B)に出力し、全画面を黒で塗り
つぶす。 (2)法線ベクトルと光線ベクトルの内積を次の手順で
計算する。 a.入力画像メモリ(20A)からの法線ベクトル (x,y,z)のx,y,zの値をそれぞれ別のPIPプロセッサに
供給する。そして、xが配給されたPIPプロセッサで
は、その掛算器MPYにおいて、係数メモリCMからの光線
ベクトル (a,b,c)のaの値と、このxとの積axを求める。同様
にして、y,zの配給されたPIPプロセッサの掛算器MPYで
は積by,czを求める。そして、これら積ax,by,czはロー
カルメモリLMに一時ストアする。 b.ローカルメモリLMにストアした3つの積のうち、積ax
を3枚のPIPプロセッサの一時記憶メモリTMのすべてに
格納する。 c.この一時記憶メモリTMの内容と、ローカルメモリLMか
らの積byとの加算を、3枚のPIPプロセッサの加減算器A
LUにおいてそれぞれ求め、その加算結果ax+byをそれぞ
れの一時記憶メモリTMに格納する。 d.同様にして、一時記憶メモリTMの内容と、ローカルメ
モリLMからの積czとの加算を行ない、その加算結果ax+
by+czを、それぞれのPIPプロセッサの加減算器ALUのメ
モリARAMに格納する。 こうして、3枚のPIPプロセッサの加減算器ALUのそれ
ぞれには1画素についての法線ベクトルと光線ベクトル
の内積結果が得られる。 そして、この演算は20画素同時に行なわれるので、20
画素分の内積演算が同時に終了する。 以上で内積演算は終了するが、内積の結果が正の値の
ときは、ax+by+czの値をローカルメモリLMに出力す
る。また負の値のときは、光が当たっていないので、所
定の影レベルをローカルメモリLMに出力する。 内積の結果、光が当たっている部分(内積結果正)
は、内積結果に応じた輝度レベルにされる。また、光が
当たっていない部分(内積結果負)は影の輝度レベルと
される。 なお、以上の場合、入力画素データは色の情報を持っ
ていない。しかし、内積の結果として、R,G,Bデータと
して同じax+by+czが得られているので、この3成分の
値のバランスを変えることで、着色をすることが容易に
できる。 以上の計算結果は出力画像メモリ(20B)に出力され
る。 なお、以上は画素毎についての内積演算を行なう場合
であるが、冒頭で述べたようにパッチ毎に内積演算を行
なう場合にも全く同様に適用できる。 〔発明の効果〕 この発明によれば各画素についての3次元ベクトルの
内積演算を行なうに、内積演算ax+by+czの各項をそれ
ぞれ別個の演算器によって行なうとともに、複数の画素
について、この演算を同時に行なわせるように多数のプ
ロセッサを用いたので、画像の高速シェーディング処理
を行なうことができる。 また、この内積演算の各項を行った3個の演算器に同
じ内積演算結果ax+by+czが格納されるので、これらを
R,G,Bデータとしてその値のバランスを変えることで、
色情報を持たない入力画素データからも着色を容易に行
うことができる。
【図面の簡単な説明】 第1図はこの発明の一実施例のブロック図、第2図はこ
の発明における演算手順の一例を説明するための図、第
3図は画像のシェーディング方法の一例を説明するため
の図である。 (30A)は複数枚のプロセッサからなる演算用プロセッ
サ、CMは係数メモリ、TMは一時記憶メモリ、ALUは加減
算器、MPYは掛算器、LMはローカルメモリである。

Claims (1)

  1. (57)【特許請求の範囲】 1.各画素(又は各パッチ)についての3次元法線ベク
    トルi(x,y,z)と、この画素(又はパッチ)への入射
    光線ベクトルA(a,b,c)との内積i・A i・A=ax+by+cz を求め、それに応じて各画素(又はパッチ)の輝度を定
    めるシェーディング装置において、 3N(N=1,2…) 個設けられる画素(又はパッチ)演算用のプロセッサ
    と、 この複数のプロセッサを1画素(又はパッチ)について
    それぞれ3個ずつ割り当てるとともに、N画素(又はパ
    ッチ)についてこのプロセッサを同時に割り当て、上記
    1画素(又はパッチ)について割り当てられる3個のプ
    ロセッサのそれぞれにおいて、ax,by,czの各演算を並列
    に行わしめて、同じ内積演算結果ax+by+czを3個のプ
    ロセッサのそれぞれに格納せしめるとともに、上記N画
    素(又はパッチ)並列に上記内積演算を行わしめる手段
    とを備えてなる画像のシェーディング装置。
JP62332392A 1987-12-29 1987-12-29 画像のシェーディング装置 Expired - Fee Related JP2751171B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62332392A JP2751171B2 (ja) 1987-12-29 1987-12-29 画像のシェーディング装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62332392A JP2751171B2 (ja) 1987-12-29 1987-12-29 画像のシェーディング装置

Publications (2)

Publication Number Publication Date
JPH01175088A JPH01175088A (ja) 1989-07-11
JP2751171B2 true JP2751171B2 (ja) 1998-05-18

Family

ID=18254458

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62332392A Expired - Fee Related JP2751171B2 (ja) 1987-12-29 1987-12-29 画像のシェーディング装置

Country Status (1)

Country Link
JP (1) JP2751171B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6646640B2 (en) * 2001-02-06 2003-11-11 Sony Computer Entertainment Inc. System and method for creating real-time shadows of complex transparent objects
DE10255898B4 (de) * 2002-11-27 2006-06-14 Mannesmannröhren-Werke Ag Verfahren und Vorrichtung zur Erfassung des Nahtversatzes geschweißter Bleche oder Rohre

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61133482A (ja) * 1984-12-04 1986-06-20 Agency Of Ind Science & Technol 図形表示用マルチプロセツサ
JPS62274426A (ja) * 1986-05-23 1987-11-28 Daikin Ind Ltd 座標変換装置

Also Published As

Publication number Publication date
JPH01175088A (ja) 1989-07-11

Similar Documents

Publication Publication Date Title
CA1180438A (en) Method and apparatus for lightness imaging
US8169441B2 (en) Method and system for minimizing an amount of data needed to test data against subarea boundaries in spatially composited digital video
JP2549253B2 (ja) パーソナルコンピュータシステム動作方法及びパーソナルコンピュータシステム
CN103679759A (zh) 图像优化方法以及使用此方法的装置
CN112991366A (zh) 对图像进行实时色度抠图的方法、装置及移动端
JP2751171B2 (ja) 画像のシェーディング装置
US11120595B2 (en) Face swap method and computing device
CN111275648A (zh) 人脸图像处理方法、装置、设备及计算机可读存储介质
US7957612B1 (en) Image processing device, method and distribution medium
JPS62186373A (ja) 表示処理方法
US20050024377A1 (en) Programmable multiple texture combine circuit for a graphics processing system and method for use thereof
CN113409196A (zh) 一种用于实时视频拼接的高速全局色差矫正方法
JP2973432B2 (ja) 画像処理方法および装置
JPH02219184A (ja) 画像処理装置
JP3364343B2 (ja) 動画像生成装置
JP2525051B2 (ja) 並列画像処理装置
JPH07105404A (ja) 立体画像処理装置及びその処理方法
JPH01121930A (ja) データ処理装置
CN112102374B (zh) 图像处理方法、装置、电子设备及介质
JPS6290772A (ja) 三次元物体表示処理方式
JPH02242387A (ja) 空間分割型並列画像生成装置
CN117372496A (zh) 仿真图像生成过程中物体遮挡率的计算方法
JPH083842B2 (ja) 画像処理方法
CN116894909A (zh) 全景图的生成方法、装置及存储介质
CN117058316A (zh) 一种应用于数字孪生的天际线分析的制作方法及装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees