JP3083995B2 - 画像処理方法および装置 - Google Patents

画像処理方法および装置

Info

Publication number
JP3083995B2
JP3083995B2 JP08246925A JP24692596A JP3083995B2 JP 3083995 B2 JP3083995 B2 JP 3083995B2 JP 08246925 A JP08246925 A JP 08246925A JP 24692596 A JP24692596 A JP 24692596A JP 3083995 B2 JP3083995 B2 JP 3083995B2
Authority
JP
Japan
Prior art keywords
pixel
image
filter
processing
coef
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
JP08246925A
Other languages
English (en)
Other versions
JPH1074258A (ja
Inventor
高志 三浦
秀陸 後藤
Original Assignee
株式会社ハドソン
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 株式会社ハドソン filed Critical 株式会社ハドソン
Priority to JP08246925A priority Critical patent/JP3083995B2/ja
Publication of JPH1074258A publication Critical patent/JPH1074258A/ja
Priority to US09/182,041 priority patent/US6252997B1/en
Application granted granted Critical
Publication of JP3083995B2 publication Critical patent/JP3083995B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • General Physics & Mathematics (AREA)
  • Image Processing (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はコンピュータにおけ
る画像処理方法および装置に関する。
【0002】
【従来の技術】立体感あるいは遠近感を表すもう一つの
方法に「ぼかし」がある。たとえば、カメラで写真を撮
ると、焦点の合ったところは鮮明に写り、焦点の合った
ところから離れるに従ってぼかし度合いが大きくなる。
このぼかしが、写真に遠近感を与えることが知られてい
る。
【0003】コンピュータでこのようなぼかしを表現す
る方法としては、各画素に対して物理的法則を仮想的に
適用して計算を行う分散光線追跡法がある。そのほかに
より簡易にぼかしを表現する方法として、特開平6-3602
5や特開平2-190898で示された方法のような、各画素の
奥行情報に応じて各画素のぼけの直径を計算し、近傍画
素へのぼけの広がり面積を求め、遠近感を表現する方法
がある。特開平6-36025では5×5のドットを対象に、
特開平2-190898では3×3のドットでボケ処理の計算を
行っている。
【0004】
【発明が解決しようとする課題】上記の従来技術で説明
した方法のうち、分散光線追跡法は1画素のぼかし画像
を形成するために複数の光線について計算を行うなど、
膨大な計算時間が必要である。対象となる画素の周囲の
画素からの影響を計算する方法は分散光線追跡法よりも
早い処理ができるが、問題もある。
【0005】例えば、特開平6-36025の方法では、遠近
感の実現のために5×5のカーネルを用いて周囲の画素
の影響を考慮しているが、着目している画素に対して、
外側2画素分の影響しか実現できない。1画素の表示用
のデータを計算するには、周囲の画素を含めて25画素
分のカーネルによる処理後のデータの加算が必要とな
り、計算負荷が重い。カーネルに含まれる25個の重み
係数は各画素ごとに算出しなければならず、計算負荷の
増加を招いている。カーネルの中心以外の重み係数を次
式で計算している。 fwi,j={(1−fw33)/(5×5−1)}×df
i,j
【0006】上式は、次のように書き換えられる。 fwi,j=(df33×dfi,j)/(5×5−1) この式は、距離と距離の乗算を示しており物理的には意
味があいまいである。このことから、ぼけの程度を制御
するためにフィルタをかける回数を設定して、フィルタ
処理の繰り返しが必要になるものと思われる。この繰り
返し処理も計算負荷の増加につながる。
【0007】特開平2-190898の方法では、遠近感の実現
のために3×3のマスクレジスタを用いて周囲の画素の
影響を考慮しているが、着目している画素に対して、外
側1画素分の影響しか実現できない。また、1画素の表
示用のデータを計算するには、周囲の画素を含めて9画
素分のマスクレジスタによる処理後のデータの加算が必
要となる。この場合、遠近情報から適切なマスクレジス
タを選択することは比較的容易だが、距離に応じたマス
クレジスタの内容(重み係数)を設計することは困難で
ある。
【0008】さらに、人間の視覚特性を考えると、距離
が非常に遠い場合には10画素程度離れた画素の影響を
受けることが考えられる。この状態を実現するには、マ
スクレジスタの大きさを21×21に拡大しなければな
らず、1画素の表示用データの計算には周囲の画素を含
めて441画素分のマスクレジスタによる処理後のデー
タの加算が必要となり、非現実的な計算負荷となってし
まう。同時に、マスクレジスタの内容の設計も非現実的
な困難が予想される。このため、現実的な応用において
は、自然な遠近感の表現において制約が生じることとな
る。
【0009】本発明は、上記のぼかしによる遠近感の表
現を機械的に自動処理する方法を開発し、ぼかし処理の
効率化を図ると同時に、より現実的な遠近感の表現を可
能にするとともに、計算負荷を少なくし、スピーディな
処理が可能な方法を開発することである。また本発明で
は、従来のレンダリングシステムと共存できるようにす
ることも考慮する。
【0010】
【課題を解決するための手段】上記課題を解決するため
に、本発明は、遠近情報を有する画像データにデジタル
ローパスフィルタ処理を行って前記遠近情報に応じたぼ
かしを有する画像生成処理方法において、前記遠近情報
に対応するカットオフ周波数を有するデジタルローパス
フィルタにより処理することにより遠近情報に応じたぼ
かしを有する画像データを生成する。
【0011】遠近情報に対応するカットオフ周波数は、
元の画像に含まれる最高周波数成分:fmにたいして、
デジタルローパスフィルタのカットオフ周波数:fdが fd=kfm という関係で表されるとき、遠近情報に対応する最小識
別可能なドット数の逆数を変数kの値とするデジタルロ
ーパスフィルタにより処理する。
【0012】このように、画像データに含まれる最高周
波数を操作することによって、ピンボケの効果を表現で
きることになる。そこで本発明は、この操作を人間の視
覚特性を遠近情報に応じた周波数特性のデジタルフィル
タで近似することにより、定量的に任意の遠近設定を可
能にするものである。
【0013】コンピュータで利用する画像データはデジ
タルデータである。自然界の情報はすべてのものが連続
したデータすなわちアナログデータである。したがって
コンピュータ用のデジタルデータするために、アナログ
データをA/D変換器(アナログ/デジタル変換器)を
通してデジタルデータにし、コンピュータで処理する。
一方、デジタルデータをテレビなどの表示装置に映し出
すには、D/A変換器(デジタル/アナログ変換器)を
通して再度電気的なアナログデータに変換する。図1は
アナログ映像をデジタル化(A/D変換)し、コンピュ
ータ処理したのち再びアナログ化(D/A変換)して画
像出力する一連の流れを図式化したものである。
【0014】標本化(サンプリング)は、ある周期でパ
ルスを発生させて入力信号を時間方向で離散信号に変換
することであり、量子化は振幅方向で離散信号に変換す
ることである。標本化信号y(t)は、 y(t)=Σx(t)δ(t−nT) で表せる。ここで「T」は一定周期、「Σ」は時間tを
マイナス無限大からプラス無限大までの総和、「x
(t)」は入力信号のアナログデータである。通常、
「x(t)」は電圧の時間に対するアナログ信号であ
る。また、「δ」はデルタ関数すなわち、 となる特殊関数である。信号x(t)が帯域幅W(ラジ
アン/秒)の有限帯域信号であるとき、 T=π/W f=W/2π となる。このfが最高周波数である。
【0015】テレビあるいはコンピュータのディスプレ
イ画面に画像を表示する場合、ドットという点の集まり
で表現する。図2はアナログ信号とドットとの関係を概
念的に表している。(1)は明、暗、明、暗……と並んだ
ドット表示の場合、(2)は明、明、明、暗、暗、暗……
と並んだドット表示の場合である。(1)の入力となる画
像アナログ信号は周期の短い波であり、(2)の場合は周
期の長い波である。
【0016】人間が小さな物体を識別しようとすると
き、ある限界以下の物体は一つの塊としてしか認識でき
ない。最終的には、識別可能な最小の物体の大きさは、
物体の輪郭と目を結んだ線の角度の最小値によって知る
ことができる。最小の視野角に対して近くの物体と遠く
の物体とではその大きさが異なる。このことはすなわ
ち、遠くを見ているときには広い面積全体を小さな点と
して認識していることになる。
【0017】図2の例では(1)の周波数は(2)の3倍にな
っている。このことからも、最高周波数成分を変化させ
るとそれに対応した人間の目で識別可能な物体の最小の
大きさを表す画像上のドット数が変化することがわか
る。
【0018】コンピュータで利用する画像データは、あ
るサンプリング周波数に基づいて取得された映像データ
の集まりとして捉えることができる。この画像データは
標本化定理によると、元の画像データに含まれる最高の
周波数成分:fmは、標本化定理によりサンプリング周
波数:fsの半分、fs/2となる。このとき、人間の目
で識別可能な物体の大きさは表示される画像における1
ドットの大きさである。
【0019】さらに画像データに含まれる最高周波数成
分がfm/2に変化したとすると、人間の目で識別可能
な最小物体の大きさは表示される画像では2ドットの大
きさに変化する。このように、元の画像を遠くの映像と
して利用する場合には、1ドット単位でなく、1.5ド
ットあるいは2ドット単位で識別可能な画像に変化させ
れば、遠近効果が出せることになる。2ドット単位で識
別する距離というのは比較的遠景に対しての要求であ
り、通常は10ドットが8ドットあるいは9ドットとし
て認識される距離を表現することになる。
【0020】ローパスフィルタのカット周波数:f
dを、 fd=kfm、(0<k≦1) と表すとき、k=1のときはローパスフィルタの処理を
受けた画像データは、元の画像データと同じ最高周波数
成分をもつことになり、結果的にはローパスフィルタ処
理をしなかったときと同じことになる。すなわち、1ド
ットごとに識別可能な状態を表していることになる。
【0021】k=0.5のときは、2ドットごとに識別可
能な距離の画像データを表すことになる。k=0.8のと
きは10ドットの画像情報を8ドット分として認識する
距離の画像データを表すことになる。結局、kの逆数分
のドット数が1ドットとして認識されることになる。し
たがって、kを距離に応じた値に変更するだけで遠近感
に応じたぼかしを有する画像データを生成することがで
きる。
【0022】このように、サンプリング周波数の画像デ
ータに含まれる最高周波数を操作することによって、ピ
ンボケの効果を表現できることになる。そこで本発明
は、この操作を人間の視覚特性を遠近情報に応じた周波
数特性のデジタルフィルタで近似することにより、定量
的に任意の遠近設定を可能にしている。
【0023】
【発明の実施の形態】コンピュータで利用する画像デー
タは様々なサンプリング周波数で採取される可能性があ
り、しかもそのサンプリング周波数の情報も得られない
ことが多い。しかしこの問題は以下の数式を用いれば重
大な欠陥とはならない。本発明の方法では与えられた画
像データをサンプリング周波数にかかわらず、1ドット
ごとから1/kドットごとに識別可能な画像へと変換す
ることが可能となるからである。
【0024】デジタルローパスフィルタの例としてバタ
ーワースフィルタについて説明する。フィルタの次数に
ついては偶数次であっても、奇数次であっても事情は変
わらないので、偶数について説明する。いま次数n=2
m、カットオフ周波数ωd=2πfd、サンプリング周波
数fs=1/tsのデジタルバターワースフィルタの伝達
関数は数1のように表される。
【0025】
【数1】
【0026】数1において fd=kfm ωd=2πfd,ωm=2πfm ωd=kωm=kωs/2 とすると、伝達関数の係数に含まれる tsωcp=tsωd の項は次のように表される。 tsωcp=tsωd =tskωs/2=(1/fs)×(2πkfs/2) =kπ
【0027】数1の最後の表現にはサンプリング周波数
sが現れない。したがって、伝達関数もサンプリング
周波数には無関係になり、サンプリング周波数の半分f
mとカットオフ周波数fdとの比率kだけで表されること
がわかる。なお数1で示される、次数n=2mのデジタ
ルローパスフィルタは図3で示されるようなデータ処理
をm段縦続で処理するフィルタである。
【0028】ローパスフィルタの伝達関数には数1の式
に示されたバターワースフィルタのほかに、チェビシェ
フ、逆チェビシェフ、楕円関数フィルタなどが挙げられ
る。しかしいずれも上記のパラメータkによって表すこ
とができる。
【0029】本発明を実際に適用した場合の伝達関数の
係数の例を示す。この実施例においては、デジタルにお
ける周波数をアナログにおける周波数に変換する際にプ
リワープという処理を行っている。プリワープの処理は
以下に示す式になる。 ωa=(2/ts)・tan(ωds/2)
【0030】この式の意味は、サンプリング周期ts
カットオフ周波数ωdのデジタルフィルタではカットオ
フ角周波数ωaのアナログフィルタをもとに設計すると
いうことである。この処理を行わないと、伝達特性にお
いて周波数が低い角周波数からωdに近づくに従って予
定の特性から誤差を生じることになる。数1の式を参照
にして、上式における tsωcp=tsωd は、 tsωcp→tsωd=ts(2/ts)tan(ωds/2)=
2tan(kπ/2) 伝達関数H2m(ωd,z)の係数の実例を下記の表1に
示す。
【0031】
【表1】
【0032】デジタルフィルタすなわち伝達関数は数1
の式に示されるように遠近情報すなわちz値の関数にな
っている。これにより、z値と係数kとを関連づけるこ
とによって遠近に応じたぼかしを表現できる。
【0033】
【実施例】本発明の実施例について説明する。なお、以
下ではC言語を想定した表記法を用いる。本発明の処理
は、図4〜7に示すような手順により実行される。前準
備として、次の項目を用意する。なお、画像データは横
w+1ドット、縦v+1ドットからなるものとする。 (1)画像データは、 d0、d1、d2、d3、…………、dw を1ライン分のデータとして、v+1ライン分あるものと
する。
【0034】(2)z値データ 画素ごとに、距離を表すz
値データは、 z0、z1、z2、z3、…………、zw を1ライン分のデータとして、v+1ライン分用意する。
【0035】(3)z値スレッシュホールドテーブルz_tbl
[n+1][5]を用意する。バターワースおよびチェビシェフ
フィルタの場合、配列z_tblは以下の表2の形態で表現
される。
【0036】
【表2】
【0037】C言語での2次元配列z[i][j]は数学のマ
トリックス表現ではZijであるから、iは行、jは列に
対応する。たとえば表2とz_tblの関係をi=2、j=
0〜4で見ると、 z_tbl[2][0]=z2 z_tbl[2][1]=k2 z_tbl[2][2]=a02 z
_tbl[2][3]=a12 z_tbl[2][4]=C02 である。
【0038】表2は、 Z0>Z1>Z2>………>Zn を満たすn+1個のz値に対して、対応するカットオフ変
数kを定義することにより、システムプログラムが全て
のa0k、a1k、c0kを計算してテーブルを作成するものと
する。なお逆チェビシェフおよび楕円関数フィルタを使
用する場合には、さらにb1というフィルタ係数が必要
となる。例えば、最後のz値であるZnに対するカット
オフ変数knは、ぼけを発生させない値である0.99にす
る。
【0039】(4)アイドリングカウンタの設定 0、1、
2、3、………、xなどの数値を設定する。 (5)フィルタの次数 2*p に応じて、メモリm1、m
2がp組、必要となる。1次なら、m1が1個のみで良
い。 (6)アイドリングカウンタの値に応じて、z値のバッフ
ァzbが0からx個必要になる。
【0040】以上の(1)〜(6)の項目を準備したあと、2
次フィルタ処理の例として、1ライン分のフィルタ処理
を以下に示す。
【0041】(アイドリング処理) (1)m1とm2をゼロに初期化する。 (2)zb[0]、………、zb[x-1] をZnに初期化する。 (3)アイドリングカウンタの値をレジスタ変数offsetに
代入する。 (4)その他の初期化
【0042】 for(I=0; I<offset;I++){ set_coef(z[0]); // 最初の画素のz値に応じたフィルタ係数をセット filter(d[0]); // 最初の画素データをフィルタに入力 zb[offset -1 - I] = z[0]; // offset=0 なら何もしない }
【0043】for(i=0; i<k;i++){……}は、iを0から
始めて1ずつカウントアップしながら“i<k”の条件
が満たされる間、ループすることを表す。すなわち、
{……}の処理がk回繰り返される。またset_coef(z[0])
とfilter(d[0])はユーザー定義の関数で、内容はあとで
示す。次に、1ライン分の実データ処理を以下のように
行う。
【0044】 for(I=0;I<w+1;I++){ if(offset){ zf = max(z[I],zb[offset - 1]); // より遠景のz値を選択 for(j=offset - 1;j>0;j--) zb[j] = zb[j - 1]; zb[0] = z[I]; } else zf = z[I]; set_coef(zf); // 画素の距離に応じたフィルタ係数に設定 // オブジェクトにより遠近効果をディスイネーブル に // したければ、 set_coef(Zn) とすればよい out = filter(d[I]); }
【0045】上記の処理をv+1回繰り返す。なお、上
記のプログラム中のmaxは最大値を選択する関数であ
り、max(a,b)と記述した場合には、aとbの、どちらか大
きい方の値が関数の戻り値として設定される。
【0046】set_coef(zf)は、変数zfがz_tbl[I][0]以
上のときにシステム変数coef_pntに係数のポインタを渡
す関数である。すなわち、 for(I=0;I<n+1;I++) if (zf >= z_tbl[I][0]) coef_pn
t=&z_tbl[I][2]; なる処理を行う関数である。上記の内容からもわかるよ
うに、Iは0〜nでループしており、coef_pntには“if
(zf >= z_tbl[I][0])”の条件が満たされる、z_tbl[I]
[2]のアドレス(=&z_tbl[I][0]、すなわち表2のa0
Iのポインタ<アドレス>)が設定される。filter(dat
a)の処理(2次フィルタの例)は以下の通りである。
【0047】 fm = data - *coef_pnt[0]*m1 - *coef_pnt[1]*m2; fout = *coef_pnt[2]*(fm +2*m1+m2); m2 = m1; m1 = fm; return fout;
【0048】coef_pnt[j]の前に付いている「*」はポイ
ンタcoef_pnt[j]が示すアドレスのエリア値を意味して
おり、m1やm2の前の*(乗算の演算子)とは異なる。ま
た関数filterの戻り値はfoutである。
【0049】次にフィルタ係数の切り換え時点における
問題点を考える。現在のフィルタ係数とフィルタ内のメ
モリの内容が次のように示されるとする。 a0、a1、c0およびm1、m2 ………(8) この状態のときに、フィルタに入力dが与えられた場合
の出力f0は次のようになる。 f0=c0*{d+(2-a0)*m1+(1-a1)*m2} ………(9) ここで、フィルタの係数だけをa0d、a1d、c0dのよう
に変更する場合を考える。この場合に、同じフィルタへ
の入力dに対する出力は(9)式と同様に次式で示され
る。 f0d=c0d*{d+(2-a0d)*m1+(1-a1d)*m2} ………(10) (9)式と(10)式の出力が等しければ問題はないが、通常
は大きな違いを生じて画像出力に悪影響を与える結果と
なる。
【0050】以上の問題点の解決法として(9)式と(10)
式の出力が等しくなるようにフィルタ内のメモリの内容
を変化させれば、画像出力に悪影響を及ぼさないように
改善できる。すなわち、 m1、m2 → m1d、m2d のように変化させるものとする。2つのメモリの内のm
1d、m2dにおいて、m2dは今回の出力にしか影響しないの
に対して、m1dは次の入力に対しても影響を及ぼすので
慎重に値を変化させる必要がある。したがって、m2
単純な方法で近似し、以下のようにm1を方程式により求
める方法を採用する。
【0051】(9)式と(10)式においてm2を含む項が等し
いとして、m2dを決定する。次に(10)式のm1をm1dとし
て、方程式f0=f0dによってm1dを求める。すなわち、以
下のようにm1d、m2dが決定できる。 c0*{d+(2-a0)*m1+(1-a1)*m2}=c0d*{d+(2-a0d)*m1d+(1-a
1d)*m2d} c0*(1-a1)*m2=c0d*(1-a1d)*m2d ∴ m2d=[{c0*(1-a1)}/{c0d*(1-a1d)}]*m2 c0*{d+(2-a0)*m1}=c0d*{d+(2-a0d)*m1d} ∴ m1d={(c0-c0d)*d+c0*(2-a0)*m1}/{c0d*(2-a0d)}
【0052】1次のフィルタを使用する場合のフィルタ
係数の切り替え時点における問題について説明する。1
次のフィルタの伝達関数は、カットオフ変数をkとした
とき、以下の数2のように表される。
【0053】
【数2】
【0054】この場合の、入力dに対するフィルタ処理
をプログラムで表すと以下のようになる。 fm=d-a1m1; f0=c0*(fm+m1)=c0*{d+(1-a1)m1}; 現在のフィルタ係数とフィルタ内のメモリの内容が、
a1、c0およびm1の状態の時に、フィルタに入力dが与え
られた場合の出力は以下のようになる。 f0=c0*{d+(1-a1)m1} ………(11)
【0055】ここで、フィルタの係数だけをa1d、c0dの
ように変更する場合を考える。この場合に、同じフィル
タへの入力dに対する出力は以下のように示される。 f0d=c0d*{d+(1-a1d)m1} ………(12) 式(11)と式(12)の出力が等しければ問題がないが、通常
は大きな違いを生じて画像出力に悪影響を与える結果と
なる。式(11)と式(12)の出力が等しくなるように、フィ
ルタ内のメモリの内容を変化させれば画像出力に悪影響
を及ぼさないように改善できる。
【0056】新しいフィルタの係数に対しては、 m1→m1d のように変化させるものとする。すなわち、式(12)のm1
をm1dとして、方程式 f0=f0d によって、m1dを求める。
【0057】 f0=c0*{d+(1-a1)m1}, f0d=c0d*{d+(1-a1d)m1d} f0=f0d ∴ m1d={d*(c0-c0d)+c0*(1-a1)*m1}/{c0d*(1-a1d)}
【0058】以上のフィルタ係数の切り換え時点におけ
る問題解決に伴う処理の変更は、以下のようになる。 (set_coef(zf)の処理の変更)システム変数coef_pntに
係数のポインタを渡す。同時に、係数が変更されたとき
には、フィルタ内の2つのメモリも適切な値に変更す
る。現在のフィルタ係数がa0、a1、a2に格納されている
ものとする。さらに、実データの処理のフラグjituと入
力データdを引数として増やす。
【0059】 set_coef(zf, jitu, d) for(I=0;I<n+1;I++){ if(zf>= z_tbl[I][0]) { coef_pnt = &z_tbl[I][2]; if(jitu && (a0 != *coef_pnt)) {// 実データ処理で係数が変更される 場合 a0d = *coef_pnt; a1d = *(coef_pnt+1); c0d = *(coef_pnt+2); m1 = ((c0-c0d)*d+c0*(2-a0)*m1) / c0d / (2-a0d); m2 = c0*(1-a1)*m2 / (1-a1d)/c0d; } a0 =*coef_pnt; a1=*(coef_pnt+1); c0 =*(coef_pnt+2); break; } } }
【0060】(1ライン処理におけるアイドリング処理
の変更) (1)初期化m1とm2及びa0,a1,c0をゼロに初期化す
る。 (2)zb[0],...,zb[x-1] をZnに初期化する。 (3)アイドリングカウンタの値をレジスタ変数offsetに
代入する (4)その他の値設定
【0061】 for(I=0; I<offset;I++){ set_coef(z[0],0,d[0]); //最初の画素のz値に応じたフィルタ係数を設定 filter(d[0]); // 最初の画素データをフィルタに入力する zb[offset -1 - I] = z[0]; // offset=0 なら何もしない }
【0062】 (1ライン分の実データ処理の変更) for(I=0;I<w+1;I++){ if(offset){ zf = max(z[I],zb[offset - 1]); // より遠景のz値を選択する for(j=offset - 1;j>0;j--) zb[j] = zb[j - 1]; zb[0] = z[I]; } else zf = z[I]; set_coef(zf, 1, d[I]); // 画素の距離に応じたフィルタ係数に設定す る // オブジェクトにより遠近効果をディスイネーブル に // したければ、set_coef(Zn,1,d[I]) とすればよい out = filter(d[I]); }
【0063】以上の変更によりフィルタ係数の変更時点
における問題は解決できた。実用上は係数が変更される
場合も変更されない場合も同じ処理時間とすることが望
ましいので、次に最終的な変更を示す。
【0064】(set_coef(zf)の処理の最終変更)システ
ム変数coef_pntに係数のポインタを渡す。同時に、係数
が変更された時には、フィルタ内の2つのメモリも適切
な値に変更する。現在のフィルタ係数がa0、a1、c0に格
納されているものとする。
【0065】 set_coef(zf, jitu, d) { for(I=0;I<n+1;I++){ // 全ての場合にm1, m2を調整する if(zf>=z_tbl[I][0]) { coef_pnt = &z_tbl[I][2]; if(jitu == 0) { // アイドリング処理の場合 a0 = *coef_pnt; a1 = *(coef_pnt+1); c0 = *(coef_pnt+2); break; } a0d = *coef_pnt; a1d = *(coef_pnt+1); c0d = *(coef_pnt+2); m1 = ((c0-c0d)*d+c0*(2-a0)*m1) / c0d / (2-a0d); m2 = c0*(1-a1)*m2/(1-a1d)/c0d; a0 = a0d; a1 = a1d; c0 = c0d; break; } } }
【0066】(1ライン処理におけるアイドリング処理
の最終変更) (1)初期化 m1とm2を零に初期化する。――――>
最初の仕様に戻す。 (2)zb[0],...,zb[x-1] をZnに初期化する。 以下同様である。 (1ライン分の実データ処理の最終変更)前に示した変
更のままで使用できる。
【0067】
【発明の効果】本発明では、ぼけの生成のためにフィル
タ手段では、出力する画素1個に要する計算負荷は常に
1画素分の計算量で済む。例えば10画素分の影響を表
現するような場合でも、カットオフ変数の値が変わるだ
けで、計算負荷に影響はない。また、横方向または縦方
向のどちらか1方向についてのみぼけ効果を実現する用
途では、出力用のイメージメモリを不要とすることが可
能である。
【0068】本発明では、ぼけ効果の強弱にかかわら
ず、1回のフィルタ処理で済み、ぼけ効果の強弱の設定
が、人間の視覚効果をシミュレートしているために、感
覚的に理解しやすい。z値スレッシュホールドテーブル
の設定時に、特定のz値におけるカットオフ変数kを
0.99程度に設定するだけで、その距離に目の焦点が
あっていることにできる。
【0069】z値スレッシュホールドテーブルの設定で
遠距離を表すz値に対してぼけ効果を実現するk値を設
定し、特定のz値に対してk=0.99を設定し、このz値
よりも近い距離のz値に対してぼけ効果を実現するk値
を設定することもできる。このことにより、非常に近く
の物を見たときにぼけて見える現象についても表現する
ことが容易に可能となる。
【0070】本発明では、ぼけの効果が影響する範囲を
カットオフ変数kのほかにアイドリングカウンタによっ
てもある程度の制御が可能であり、自由度の高いシステ
ムができる。さらに本発明は、従来のレンダリングシス
テムの後方に容易に追加することができる。
【図面の簡単な説明】
【図1】アナログ画像信号のデジタル化および再生処理
の一連の処理の流れの説明図である。
【図2】アナログ画像信号とドットの関係の説明図であ
る。
【図3】2次のデジタルフィルタの一例の構成図であ
る。
【図4】本発明の実施例における、ぼかし処理の全体
(メインルーチン)のフローチャートである。
【図5】本発明の実施例における、前処理のフローチャ
ートである。
【図6】本発明の実施例における、アイドリング処理の
フローチャートである。
【図7】本発明の実施例における、1ライン分の実デー
タ処理のフローチャートである。
フロントページの続き (56)参考文献 特開 平9−204542(JP,A) 特開 平6−231273(JP,A) 特開 平8−16812(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06T 5/00 - 5/20 G06T 11/00 - 15/70

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】画素ごとの遠近情報を有する画像データに
    対して前記遠近情報に応じたぼかしを有する画像を生成
    する処理方法において、 前記遠近情報に対応するカットオフ周波数を有するデジ
    タルローパスフィルタにより画素ごとに処理することに
    より前記画素ごとの遠近情報に応じたぼかしを有する画
    像データを生成することを特徴とする画像処理方法。
  2. 【請求項2】画素ごとの遠近情報を有する画像データに
    対して前記遠近情報に応じたぼかしを有する画像を生成
    する処理方法において、 元の画像に含まれる最高周波数成分:fmにたいして、
    前記デジタルローパスフィルタのカットオフ周波数:f
    dが fd=kfm という関係で表されるとき、 画素ごとの遠近情報に対応する最小識別可能なドット数
    の逆数を変数kの値とするデジタルローパスフィルタに
    より画素ごとに処理することにより前記画素ごとの遠近
    情報に応じたぼかしを有する画像データを生成すること
    を特徴とする画像処理方法。
  3. 【請求項3】画素ごとの遠近情報を有する画像データに
    対して前記遠近情報に応じたぼかしを生成する画像生成
    処理において、 元の画像に含まれる最高周波数成分:fmにたいして、
    前記デジタルローパスフィルタのカットオフ周波数:f
    dが fd=kfm という関係で表されるとき、 画素ごとの遠近情報に対応する最小識別可能なドット数
    の逆数を変数kの値とするデジタルローパスフィルタに
    より画素ごとに処理することにより前記画素ごとの遠近
    情報に応じたぼかしを有する画像データを生成する手段
    を備えたことを特徴とする画像処理装置。
JP08246925A 1996-08-30 1996-08-30 画像処理方法および装置 Expired - Fee Related JP3083995B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP08246925A JP3083995B2 (ja) 1996-08-30 1996-08-30 画像処理方法および装置
US09/182,041 US6252997B1 (en) 1996-08-30 1998-10-29 Method for image processing

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP08246925A JP3083995B2 (ja) 1996-08-30 1996-08-30 画像処理方法および装置
US09/182,041 US6252997B1 (en) 1996-08-30 1998-10-29 Method for image processing

Publications (2)

Publication Number Publication Date
JPH1074258A JPH1074258A (ja) 1998-03-17
JP3083995B2 true JP3083995B2 (ja) 2000-09-04

Family

ID=26537975

Family Applications (1)

Application Number Title Priority Date Filing Date
JP08246925A Expired - Fee Related JP3083995B2 (ja) 1996-08-30 1996-08-30 画像処理方法および装置

Country Status (2)

Country Link
US (1) US6252997B1 (ja)
JP (1) JP3083995B2 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3083995B2 (ja) * 1996-08-30 2000-09-04 株式会社ハドソン 画像処理方法および装置
JP3668019B2 (ja) 1998-10-27 2005-07-06 株式会社ソニー・コンピュータエンタテインメント 記録媒体、画像処理装置および画像処理方法
JP2000207549A (ja) * 1999-01-11 2000-07-28 Olympus Optical Co Ltd 画像処理装置
JP2001005959A (ja) * 1999-06-25 2001-01-12 Hudson Soft Co Ltd コンピュータ画像処理方法および装置
FR2857133A1 (fr) * 2003-07-03 2005-01-07 Thomson Licensing Sa Procede de generation de flou
JP4528235B2 (ja) * 2005-09-29 2010-08-18 富士フイルム株式会社 デジタルカメラ
TWI311679B (en) * 2006-04-28 2009-07-01 Primax Electronics Ltd A method of evaluating minimum sampling steps of auto focus
TWI524755B (zh) * 2008-03-05 2016-03-01 半導體能源研究所股份有限公司 影像處理方法、影像處理系統及電腦程式
KR102049080B1 (ko) 2013-03-28 2020-01-08 삼성전자주식회사 영상 처리 장치 및 방법
US11823355B2 (en) * 2021-02-02 2023-11-21 Nvidia Corporation Depth based image sharpening

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3083995B2 (ja) * 1996-08-30 2000-09-04 株式会社ハドソン 画像処理方法および装置
JP3668019B2 (ja) * 1998-10-27 2005-07-06 株式会社ソニー・コンピュータエンタテインメント 記録媒体、画像処理装置および画像処理方法
JP2001005959A (ja) * 1999-06-25 2001-01-12 Hudson Soft Co Ltd コンピュータ画像処理方法および装置

Also Published As

Publication number Publication date
US6252997B1 (en) 2001-06-26
JPH1074258A (ja) 1998-03-17

Similar Documents

Publication Publication Date Title
CN111275626B (zh) 一种基于模糊度的视频去模糊方法、装置及设备
US4731864A (en) Photographic camera simulation systems working from computer memory
CN106780336B (zh) 一种图像缩小方法及装置
EP0437074A2 (en) Special effects using polar image coordinates
JP3083995B2 (ja) 画像処理方法および装置
JPH0837648A (ja) 動ベクトル処理装置
JP2006526834A (ja) ボリューム・レンダリング用の適応画像補間
Greisen et al. Algorithm and VLSI architecture for real-time 1080p60 video retargeting
Sekar et al. An approach of image scaling using DWT and bicubic interpolation
EP1704535B1 (en) Method of rendering graphical objects
EP0986906B1 (en) A method and device for generating display frames from a sequence of source frames through synthesizing one or more intermediate frames exclusively from an immediately preceding source frame
EP0826194B1 (en) Image skewing and rotation using discrete cosine transforms
KR101888837B1 (ko) 스테레오 매칭 시스템의 전처리 장치
CN109996085B (zh) 模型训练方法、图像处理方法、装置及电子设备
US20130120461A1 (en) Image processor and image processing method
CN114885144B (zh) 基于数据融合的高帧率3d视频生成方法及装置
Dilip et al. Bilinear interpolation image scaling processor for VLSI architecure
US6414682B1 (en) System and method for transitioning between two filters, allowing for the use of higher order interpolation
CN1625757A (zh) 计算机图像中的无级三维纹理映射
CN113837945A (zh) 一种基于超分辨率重建的显示画质优化方法及系统
JP2017072954A (ja) 画像変換装置及び画像変換方法
Lee et al. Efficient algorithm and architecture for post-processor in HDTV
JP2916607B2 (ja) 画像拡大装置
US20050213851A1 (en) Scaling device and method for scaling a digital picture
Fan A Fast and Realistic Bloom Rendering Method for Large Scale 3D Scene

Legal Events

Date Code Title Description
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