以下、図面を参照しながら本発明の好適な実施の形態を説明する。
(第1の実施形態)
本発明の第1の実施形態についての説明をする。図1は、本発明の第1の実施形態による撮像装置(画像処理装置)のブロック図の例である。以下、画像処理装置の画像処理方法を説明する。入力端子から入力された映像信号は、着目画素を移動しながら着目画素を中心として、画像の走査方向及び直交方向の周辺の画素を一時的に保持するバッファメモリ1に入力される。
バッファメモリ1は、入力信号を画像の走査方向及び直交方向に保持するとともに、保持された着目画素を含む周辺画素信号を、図9にあるような小区画画像信号Iとして、全画素信号を同時に出力する。小区画画像信号Iは、周波数解析回路2及び周期性解析回路3に入力される。
周波数解析回路2は、入力された小区画画像信号Iに対し、空間周波数の解析処理を施し、解析結果から、小区画画像Iにおける空間周波数分布Hfを出力する。
周期性解析回路3は、入力された小区画画像信号Iに対し、画像の少なくとも走査方向及び直交方向について時間波形の解析処理を施し、解析結果から、小区画画像Iにおける時間周期性分布Hcを出力する。空間周波数分布Hf及び時間周期性分布Hcは、判別分析回路4に入力される。
さらに判別分析回路4には、例えば図8のような意味で区別された、既存の画像信号からあらかじめ得られている小区画画像のパターン群定義情報が、画像パターンデータIpkとして入力される。判別分析回路4は、空間周波数分布Hf及び時間周期性分布Hcから、入力された小区画画像の画像パターン定義Mを出力し、出力端子から外部に出力する。
マイコン5は、バッファメモリ1に対して、1走査線期間を指示するとともに、周波数解析回路2及び周期性解析回路3には、解析する小区画領域を指示し、さらに、判別分析回路4には、判別分析に必要な画像パターンの制御を指示する。
次に、バッファメモリ1について詳細に述べる。バッファメモリ1は、例えば図2のような回路で構成されている。この例の場合、着目画素を中心とした5×5の範囲で画素信号を出力する。
ラインメモリ制御回路100は、マイコン5から指示されたタイミングを基に、1走査線期間の画素信号をラインメモリから読み出し書き込むための制御信号を生成し、出力する。入力された画素信号は、ラインメモリ101〜105により、順次走査方向とは直交方向に、1走査線期間の画素信号を保持する。
保持された各走査線の画素信号は順次読み出され、ラインメモリ101〜105にそれぞれ接続された遅延素子111〜114、121〜124、131〜134、141〜144、151〜154で走査方向に画素サンプリング周期で順次遅延される。各遅延素子からの出力は、同時に外部に対して小区画画像Iとして出力される。
次に、周波数解析回路2について詳細に述べる。周波数解析回路2は、例えば図3のような回路で構成されている。バッファメモリ1からの小区画画像Iは、n個の評価関数フィルタ201〜20nに入力される。評価関数フィルタは、小区画画像Iが特定の周波数帯の応答をどれほど持つかを解析するフィルタである。このような周波数解析フィルタは、例えばBPF、DCTやアダマール変換などの直交変換、短時間フーリエ変換、連続ウェーブレット変換などを適用することで構成できる。
さらに、これらの処理は、評価関数フィルタを変更することで周波数解析の分解能を調整できるので、構成するハードウェア規模や処理時間の制約に応じて、評価関数の数nを調整すればよい。
各評価関数フィルタ201〜20nの出力は、ヒストグラム生成回路210に入力される。ヒストグラム生成回路210は、マイコン5から指示された期間の各評価関数フィルタ201〜20nの出力を統計処理し、図12のような空間周波数分布Hfを出力する。
周波数解析回路2は、上記実施形態のほかにも、例えば図4のような回路で構成しても良い。この場合、入力された小区画画像Iは、図2のような構成のバッファメモリ220に一時保持される。
領域制御回路200は、マイコン5からの評価関数の設定数kの指示により、保持した小区画画像Iを同時に外部に対してk回繰り返し出力するように、制御信号Akを出力する。係数発生器230は、マイコン5からの評価関数の種別指示により、対応したフィルタ係数Fkを出力する。
評価関数フィルタ201には、バッファメモリ220から出力された小区画画像Iが入力され、係数発生器230から出力されたフィルタ係数を使用して、小区画画像Iが特定の周波数帯の応答をどれほど持つかを解析する。
このような周波数解析フィルタは、例えばBPF、DCTやアダマール変換などの直交変換、短時間フーリエ変換、連続ウェーブレット変換などを適用することで構成できる。
さらに、これらの処理は、評価関数フィルタ数を変更することで周波数解析の分解能を調整できるので、構成するハードウェア規模や処理時間の制約に応じて、評価関数の数kを調整すればよい。
評価関数フィルタ201の出力は、ヒストグラム生成回路210に入力される。ヒストグラム生成回路210は、評価関数フィルタ201のk回の出力を統計処理し、図12のような空間周波数分布Hfを出力する。
周波数解析回路2は、映像の出力データレートに対してk倍速い動作出力を与えることにより、図3の並列処理と同等の分解能を持って動作が可能となる。
次に、周期性解析回路3について詳細に述べる。周期性解析回路3は、例えば図5のような回路で構成されている。バッファメモリ1からの小区画画像Iは、m個の水平差分検出回路301〜30m及びn個の垂直差分検出回路321〜32nに入力される。このとき、小区画画像Iの入力は(m+1)行×(n+1)列の空間領域であることを想定している。
水平差分検出回路301〜30mは、小区画画像Iの各行に対して、隣接する画素間の差分値を順次出力する。垂直差分検出回路321〜32nは、小区画画像Iの各列に対して、隣接する画素間の差分値を順次出力する。
水平カウンタ311〜31mは、それぞれ水平差分検出回路301〜30mの出力の符号を見て、符号の変化があったときに、直前の出力値に1を加算して出力するとともに、出力した値を保持する。
垂直カウンタ331〜33nは、それぞれ垂直差分検出回路321〜32nの出力の符号を見て、符号の変化があったときに、直前の出力値に1を加算して出力するとともに、出力した値を保持する。
なお、水平カウンタ311〜31m及び垂直カウンタ331〜33nは、ノイズ等の微少な変動による符号の変化を抑圧するために、差分値に閾値を設定し、閾値以上の変化を伴う場合にのみ、直前の出力値に1を加算して出力すると共に、出力値を保持してもよい。
水平カウンタ311〜31m及び垂直カウンタ331〜33nの出力は、ヒストグラム生成回路310に入力される。ヒストグラム生成回路310は、マイコン5から指示された期間の水平カウンタ311〜31m及び垂直カウンタ331〜33nの出力を統計処理し、図13のような時間周期性分布Hcを出力する。
周期性解析回路3は、上記実施形態のほかにも、例えば図7のような回路で構成しても良い。この場合、入力された小区画画像Iは、図2のような構成のバッファメモリ320に一時保持される。
領域制御回路300は、マイコン5からの差分検出の設定数kの指示により、保持した小区画画像Iを同時に外部に対してk回繰り返し出力するように、制御信号Akを出力する。このとき、小区画画像Iの入力は(m+1)行×(n+1)列の空間領域であることを想定すれば、k=m×nである。
差分回路301は、領域制御回路300で指定された行又は列について、隣接する画素間の差分値を順次出力する。カウンタ311は、差分検出回路301の出力の符号を見て、符号の変化があったときに、直前の出力値に1を加算して出力するとともに、出力した値を保持する。
カウンタ制御回路340は、マイコン5から設定された期間が経過するごとに、リセット信号を発生する。カウンタ311は、カウンタ制御回路340からリセット信号を受け取ると、保持されたカウント値をリセットする。
なお、カウンタ311は、ノイズなどの微少な変動による符号の変化を抑圧するために、差分値に閾値を設定し、閾値以上の変化を伴う場合にのみ、直前の出力値に1を加算して出力するとともに、出力した値を保持するようにしてもよい。
カウンタ311の出力は、ヒストグラム生成回路310に入力される。ヒストグラム生成回路310は、カウンタ311の出力を統計処理し、図13のような時間周期性分布Hcを出力する。
周期性解析回路3は、映像の出力データレートに対してk倍速い動作出力を与えることにより、図5の並列処理と同等の分解能を持って動作が可能となる。
次に、判別分析回路4について詳細に述べる。判別分析回路4は、例えば図6のような回路で構成されている。周波数代表値算出回路401は、空間周波数分布Hfを入力し、分布の中央値、平均値などを算出して、空間周波数分布Hfの代表値Sfを出力する。周期性代表値算出回路402は、時間周期性分布Hcを入力し、分布の中央値、平均値などを算出して、時間周期性分布Hcの代表値Scを出力する。
判別関数回路403には、空間周波数代表値Sf及び時間周期性代表値Scが入力されるとともに、画像パターンデータIpkが入力される。ここで、画像パターンデータIpkは、マイコン5からの判別パターンの設定数kの指示により、画像パターン制御回路406及び画像パターンデータベース407から、例えば図8に示すような画像パターンに応じて出力される。画像パターンは、例えば、平坦、ステップ、線、テクスチャ等である。
画像パターンデータIpkは、予め解析された、画像パターンkにおける空間周波数代表値の平均Akf、分散Dkf、時間周期性代表値の平均Akc、分散Dkc、空間周波数代表値と時間周期性代表値の相関係数Ck、画像パターンの識別値Rkで構成される。
なお、画像パターンデータIpkは、空間周波数代表値Sf及び時間周期性代表値Scに対して、図11に示すような領域で判別されるように、既知の画像データを使用してあらかじめ解析されて生成したものである。画像パターンとして、テクスチャ、線、ステップ及び平坦は、周波数及び周期性が異なる。
判別関数回路403は、画像パターンkに対するマハラノビス距離Mkを、以下の式(1)で求め、出力する。
ここで、uf、ucはそれぞれ以下の式(2)で求める。
ハードウェアでの演算負荷の高い自乗演算や平方根演算は、あらかじめ計算されたものを画像パターンデータIpkに含めてしまっても良い。
バッファメモリ404は、画像パターンの識別値Rkに従い、判別回路403が出力したマハラノビス距離Mkを一時的に保持する。
パターン判定回路405は、バッファメモリ404から読み出されるマハラノビス距離Mkのうち、もっとも値の小さいものを決定し、該当する画像パターンの識別値Rkを画像パターン定義Mとして出力する。画像パターン定義Mは、平坦、ステップ、線、テクスチャ等のうちのいずれかである。
(第2の実施形態)
本発明の第2の実施形態についての説明をする。図10は、本発明の第2の実施形態による撮像装置のブロック図の例である。本実施形態は、第1の実施形態の出力に対する処理が加わるものであるので、第1の実施形態と重複する部分、即ちパターン判定回路405の出力までは解説を省略する。
パターン判定回路405が出力した画像パターン定義Mは、判定回路6に入力されるとともに、バッファメモリ7に入力される。バッファメモリ7は、例えば画素単位の複数の遅延素子によるシフトレジスタで構成されており、入力された画像パターン定義Mを順次遅延させて保持するとともに、各遅延素子に保持されている画像パターン定義群Mxが出力される。
判定回路6は、バッファメモリ7からの画像パターン定義群Mxに対して平均化フィルタ、メディアンフィルタなど、周囲の画像パターン判定に対して特異な結果が排除、緩和されるような処理を行い、新しい画像パターン定義M'を出力する。
バッファメモリ7の容量を大きくし、フレーム単位で複数の画像パターン定義Mを一時的に保持できるようにすれば、時間方向の特異点除去も可能となるため、動画像に本実施形態を適用した際にも、画像パターン定義M'が好適に得られる。
以上のように、第1及び第2の実施形態では、前後の信号処理とは独立に、簡単な構成で、画像中の小区画における被写体の意味や特徴を判別することを実現することができる。
また、周囲の小区画画像と比較して、判別結果が孤立している場合はそれを破棄し、周囲の判別結果から推定される判別結果に置き換えることで、判別結果の正当性を確保している。
また、時間的に前後のフレームとなる同一位置の小区画画像と比較して、判別結果が孤立している場合はそれを破棄し、時間的に前後の判別結果から推定される判別結果に置き換えることで、判別結果の正当性を確保している。
以上のように、既知の画像データから生成された複数の画像パターン群が定義され、各画像パターン群に、空間周波数分布と時間周期性分布を関数として得られている固有値群とを有する。判別分析回路4は、小区画画像の空間周波数分布と時間周期性分布を関数として得られる固有値と、各画像パターン群の固有値から判別距離を出力し、各画像パターン群で最も判別距離の近い画像パターンに、小区画画像を定義して出力する。
第1及び第2の実施形態では、バッファメモリ1は、複数の画素からなる小区画画像Iを入力画像から切り出して記憶する。周波数解析手段(回路)2は、前記バッファメモリ1内の小区画画像Iを周波数解析し、前記小区画画像Iの空間周波数分布Hfを出力する。周期性解析手段(回路)3は、前記バッファメモリ1内の小区画画像Iを周期性解析し、前記小区画画像Iの時間周期性分布Hcを出力する。判別分析手段(回路)4は、前記小区画画像Iの空間周波数分布Hf及び時間周期性分布Hcを基に、前記小区画画像Iの画像パターンの判別結果Mを出力する。
前記バッファメモリ1は、着目画素を移動しながら前記着目画素を中心とした複数の画素からなる小区画画像を切り出して記憶する。判定手段(回路)6は、前記判別分析手段4が出力する空間的に近傍の複数の小区画画像Iの画像パターンの判別結果を基に、前記判別分析手段4が出力する小区画画像Iの画像パターンの判別結果を補正する。また、判定手段6は、前記判別分析手段4が出力する時間的に近傍の複数の小区画画像Iの画像パターンの判別結果を基に、前記判別分析手段4が出力する小区画画像Iの画像パターンの判別結果を補正してもよい。
前記周波数解析手段2は、バンドパスフィルタ処理、直交変換処理、短時間フーリエ変換又は連続ウェーブレット変換により前記小区画画像Iの空間周波数分布を出力する。
前記周期性解析手段3は、前記小区画画像Iを少なくとも2つの異なる方向で時間波形解析し、前記波形の傾きの符号が切り替わる回数を基に前記小区画画像Iの時間周期性分布を出力する。
また、前記周期性解析手段3は、閾値を超えたレベル変動を伴う前記波形の傾きの符号が切り替わる回数を基に前記小区画画像Iの時間周期性分布を出力する。
前記判定手段6は、メディアンフィルタを用いて前記判別分析手段4が出力する小区画画像Iの画像パターンの判別結果を補正する。
また、前記判定手段6は、平均化フィルタを用いて前記判別分析手段4が出力する小区画画像の画像パターンの判別結果を補正する。
(第3の実施形態)
本発明の第3の実施形態についての説明をする。図14は、本発明の第3の実施形態による縮小処理を行う撮像装置のブロック図の例である。入力端子から入力された映像信号は、帯域制限フィルタ1001に入力されるとともに、画像判別回路1002に入力される。
画像判別回路1002は、マイコン1004から指示された、判別分析に必要な画像パターンの制御情報群Cをもとに判別分析を行い、着目画素を中心とした小区画画像における画像パターン定義Mとして画素単位に出力する。
係数発生回路1003は、マイコン1004から指示されたリサイズ倍率設定値Zoom及び画像判別回路1002からの画像パターン定義Mを入力する。そして、係数発生回路1003は、マイコン1004から指示された、リサンプリング後の周波数帯域に映像信号を帯域制限するためのフィルタ係数Coefに対し、係数制御を施したのち、フィルタ係数Coef'を出力する。
帯域制限フィルタ1001には、係数発生回路1003からのフィルタ係数Coef'が入力され、帯域制限フィルタ1001は、フィルタ係数Coef'に基づいて、入力信号に帯域制限を施して出力する。
帯域制限フィルタ1001の出力はリサイズ回路1005に入力される。リサイズ回路1005は、マイコン1004から指示された補間係数K、画素飛ばし制御信号skip、画素ホールド制御信号holdに従い、映像信号に対して補間処理を施し、リサンプリングしたのち、出力端子より出力する。
次に、画像判別回路1002について詳細に述べる。画像判別回路1002は、例えば図16のような回路で構成されている。入力端子から入力された映像信号は、着目画素を中心として、画像の走査方向及び直交方向の周辺の画素を一時的に保持するバッファメモリ1201に入力される。
バッファメモリ1201は、入力信号を画像の走査方向及び直交方向に保持するとともに、保持された着目画素を含む周辺画素信号を、図9にあるような小区画画像信号Iとして、全画素信号を同時に出力する。
小区画画像信号Iは、周波数解析回路1202及び周期性解析回路1203に入力される。周波数解析回路1202は、入力された小区画画像信号Iに対し、空間周波数の解析処理を施し、解析結果から、小区画画像Iにおける空間周波数分布Hfを出力する。
周期性解析回路1203は、入力された小区画画像信号Iに対し、画像の少なくとも走査方向及び直交方向について時間波形の解析処理を施し、解析結果から、小区画画像Iにおける時間周期性分布Hcを出力する。
周波数代表値算出回路1204は、空間周波数分布Hfを入力し、分布の中央値、平均値などを算出して、空間周波数分布Hfの代表値Sfを出力する。周期性代表値算出回路1205は、時間周期性分布Hcを入力し、分布の中央値、平均値などを算出して、時間周期性分布Hcの代表値Scを出力する。
判別関数回路1206には、空間周波数代表値Sf及び時間周期性代表値Scが入力されるとともに、画像パターンデータIpkが入力される。マイコン1004からの判別パターンの設定数Cipの指示により画像パターン制御回路1209は、例えば図8に示すような画像パターンに応じた画像パターンデータIpkを出力するように画像パターンデータベース1210に指示する。画像パターンデータベース1210は、画像パターンデータIpkを出力する。
画像パターンデータIpkは、予め解析された、画像パターンkにおける空間周波数代表値の平均Akf、分散Dkf、時間周期性代表値の平均Akc、分散Dkc、空間周波数代表値と時間周期性代表値の相関係数Ck、画像パターンの識別値Rkで構成される。
なお、画像パターンデータIpkは、空間周波数代表値Sf及び時間周期性代表値Scに対して、図11に示すような領域で判別されるように、既知の画像データを使用してあらかじめ解析されて生成したものである。
判別関数回路1206は、画像パターンkに対するマハラノビス距離Mkを、上記の式(1)で求め、出力する。ここで、uf、ucはそれぞれ上記の式(2)で求める。
ハードウェアでの演算負荷の高い自乗演算や平方根演算は、あらかじめ計算されたものを画像パターンデータIpkに含めてしまっても良い。
バッファメモリ1207は、画像パターンの識別値Rkに従い、判別関数回路1206が出力したマハラノビス距離Mkを一時的に保持する。
パターン判定回路1208は、バッファメモリ1207から読み出されるマハラノビス距離Mkのうち、もっとも値の小さいものを決定し、該当する画像パターンの識別値Rkを画像パターン定義Mとして出力する。画像パターン定義Mは、平坦、ステップ、線、テクスチャ等のうちのいずれかである。
次に、周波数解析回路1202について詳細に述べる。周波数解析回路1202は、例えば図3のような回路で構成されている。その説明は、上記と同様である。
次に、周期性解析回路1203について詳細に述べる。周期性解析回路1203は、例えば図5のような回路で構成されている。その説明は、上記と同様である。
次に、帯域制限フィルタ1001の周波数特性の決定方法について、図25、図26により説明する。図25(A)は、リサイズ処理前の画像のサンプリング周波数をfs、ナイキスト周波数をfnとした周波数領域での様子を示している。ここで、実線の周波数帯はベースバンド信号であり、破線の周波数帯は折り返しの信号である。
リサイズで縮小処理を施すと、図25(B)のようにサンプリング周波数がfs'、ナイキスト周波数fn'になるが、このときに、ベースバンド信号と折り返し信号が重なることがない状態が理想的である。
マイコン1004は、リサイズの縮小率が与えられると、図26(A)のリサイズ前のサンプリング周波数の信号(図25(A)と同一)に対して、フィルタ係数を算出する。そのフィルタ係数は、図26(B)の太線に示すような、リサイズ後のナイキスト周波数fn'で十分に信号帯域が抑圧される帯域制限特性のフィルタ係数である。
帯域制限フィルタ1001の処理の結果、映像信号は、図26(C)のように、サンプリング周波数fsで、帯域がfn'程度の周波数成分に制限されたものになる。従って、帯域制限フィルタ1001の周波数特性は、図18のような連続的な帯域変化を示す周波数特性を有しており、リサイズの倍率に対して可変制御され、縮小倍率が高くなるほど狭帯域な特性を取る。
次に、係数発生回路1003の制御フローについて、図28及び図29で詳細に説明する。図28は、係数発生回路1003の内部で行われる制御のフローチャートである。係数発生回路1003には、マイコン1004から指示された帯域制限フィルタ係数Coefが入力されるとともに、画像判別回路1002の出力である、着目画素における画像パターン定義Mが入力される。
まず、係数発生回路1003は、マイコン1004から指示されたリサイズ倍率設定値Zoomにより、リサイズ倍率が縮小か拡大かを判定する。縮小の場合(拡大の場合は第4の実施形態で述べる)、縮小時の帯域シフト量の算出ルーチンに進む。縮小時の帯域シフト量の算出ルーチンは、例えば図29に示すようなフローチャートの制御である。
画像パターン定義Mにより、周波数リサンプリング比率によりマイコン1004が決定した既定のフィルタ係数に対して、通過帯域を操作する帯域シフト量Shiftが規定される。この例では、画像パターン定義Mが平坦であれば、帯域制限の必要性が低いと判断できるので、帯域制限フィルタ1001は既定よりも超広帯域となるように、帯域シフト量Shiftはbroad+(超広帯域を示す値)が選択される。
画像パターン定義Mがステップであれば、急峻な波形変動付近に発生しやすい高周波の折り返しを低減するために、帯域制限フィルタ1001は既定よりもやや狭帯域となるように、帯域シフト量Shiftはnarrow(やや狭帯域を示す値)が選択される。
画像パターン定義Mが線であれば、線自体の鮮鋭さを維持するために、帯域制限フィルタは既定よりもやや広帯域となるように、帯域シフト量Shiftはbroad(やや広帯域を示す値)が選択される。
画像パターン定義Mがテクスチャであれば、高周波成分が集中する付近に発生しやすい折り返しを低減するために、帯域制限フィルタは既定よりも超狭帯域となるように、帯域シフト量Shiftはnarrow+(超狭帯域を示す値)が選択される。
画像パターン定義Mがその他であれば、画像による帯域の操作の効果は出ないと判断できるので、帯域シフト量Shiftは0が選択され、帯域シフト量の算出ルーチンを抜ける。
決定された帯域シフト量Shiftに基づき、係数発生回路1003は、マイコン1004から指示された帯域制限フィルタ係数Coefを変更し、画像パターンとリサイズ倍率に応じた所望の帯域制限特性の得られる帯域制限フィルタ係数Coef'を出力する。
次に、帯域制限フィルタ1001について詳細に述べる。帯域制限フィルタ1001は、例えば図17のような回路で構成されている。この例では、フィルタのタップ数は5タップである。
入力端子からの映像信号は、遅延素子1101〜1104で1画素分の遅延を順次施されるとともに、入力映像信号及び遅延素子1104の出力が加算器1105で加算され、遅延素子1101の出力及び遅延素子1103の出力が加算器1106で加算される。
外部から入力されたフィルタ係数Coef'は、各々のフィルタタップに対して1つのフィルタ係数Coef'0、Coef'1、Coef'2で構成されている。
フィルタタップの中央の画素値にあたる遅延素子1102の出力は、乗算器1109でCoef'0と乗算されて出力される。
フィルタタップの中央から1番目の画素値にあたる加算器1106の出力は、乗算器1108でCoef'1と乗算されて出力される。
フィルタタップの中央から2番目の画素値にあたる加算器1105の出力は、乗算器1107でCoef'2と乗算されて出力される。
乗算器1107,1108,1109の出力は、加算器1110で加算され、フィルタ係数のゲイン分をビットシフトされ、出力端子に出力される。
次に、リサイズ回路1005について詳細に述べる。図21は、リサイズ回路1005の補間処理とリサンプリングにより、リサイズ前のサンプリング周波数のデータ列(A/B)が、リサイズ後のサンプリング周波数のデータ列Iになる様子の模式図である。
ここでは、説明を簡単にするために、補間処理は図20に示すような、補間画素近傍2点の画素と、補間位置への距離Kを使用する線形補間処理とする。
図21の上から下への矢印が、補間画素近傍2点の画素から、補間画素位置に補間画素を生成することを示しており、補間画素近傍の画素A及びBと、図20の補間位置への距離Kから、補間画素は次式で求められる。
I=K×(A−B)+B (AはBの一つ前の画素位置)
リサイズ回路1005は、例えば図19のような回路で構成されている。この例では、フィルタのタップ数は2タップの線形補間フィルタである。
入力端子からの映像信号は、バッファメモリ1501に1走査線分保持され、読み出し時に、マイコン1004から指示された繰り返し読み出しの制御信号holdにより、hold = high(ハイレベル)のときに、前回読み出した画素をもう一度読み出す。
また、遅延素子1502、1503は、制御信号holdにより、hold = lowのときに、1画素分の遅延を順次施す。ただし、この繰り返し読み出し制御は縮小処理では不要であり、hold = low(ローレベル)に固定されている。
そして、各画素信号A及びB、補間位置への距離Kから、加算器1504(演算は減算)、乗算器1505、加算器1506で上記線形補間式を実現し、補間処理結果をバッファメモリ1507に1走査線分保持する。
バッファメモリ1507に書き込む際の制御を示したのが、図22である。縮小の補間処理では、リサイズ前のサンプリング周波数よりも小さい周波数にリサンプリングされる。このため、リサイズ前のサンプリング周波数で補間処理された出力には、リサンプリング後には不要となる画素(図22の網掛けの演算結果)が含まれていることになる。
そこで、補間画素近傍の画素データ列Ai及びBi+1と、補間画素位置までの距離Kiにより、補間画素データ列Iiが次式で表される時に、以下の制御を行う。すなわち、マイコン1004から指示された書き飛ばし制御信号skipにより、skip = highでは補間演算結果はバッファメモリ1507に書き込まないように制御する。
Ii = Ki×(Ai - Bi+1) + Bi+1 (Ai = Bi)
バッファメモリ1507の出力は、図26(D)のように、サンプリング周波数fs'で、帯域がfn'程度の周波数成分に制限されたものであると同時に、画像パターン定義により、画像の内容に好適な帯域に適宜調整された映像信号として出力される。
なお、ここでは帯域制限フィルタ1001とリサイズ回路1005を水平方向の処理のみで記述しているが、各回路内の遅延素子を1走査期間分のラインメモリとし、バッファメモリを1フィールド又はフレームとすることで、垂直方向にも同様の構成を適用できる。
(第4の実施形態)
本発明の第4の実施形態についての説明をする。図15は、本実施形態による拡大処理を行う撮像装置のブロック図の例である。本実施形態が第3の実施形態と異なるのは、リサイズ回路1005の前段にあった帯域制限フィルタ1001がなく、代わりに後段に波形整形フィルタ1006が挿入されたことである。
図27(A)は、リサイズ処理前の画像のサンプリング周波数をfs、ナイキスト周波数をfnとした周波数領域での様子を示している。ここで、実線の周波数帯はベースバンド信号であり、破線の周波数帯は折り返しの信号である。
リサイズで拡大処理を施すと、図27(B)のようにサンプリング周波数がfs'、ナイキスト周波数fn'になるが、このときに、ベースバンド信号と折り返し信号は、原サンプリング以上の周波数を持たないために、重なることはない。従って、拡大処理では、帯域制限は原理的には不要であるが、補間処理による波形歪みにより、高調波が発生する場合がある。
以下は、構成、制御の相違点のみ詳細に記述し、本実施形態が第3の実施形態と構成、制御を同じくする部分については、詳細の記述を省略する。
入力端子から入力された映像信号は、リサイズ回路1005に入力されるとともに、画像判別回路1002に入力される。
リサイズ回路1005は、マイコン1004から指示された補間係数K、画素飛ばし制御信号skip、画素ホールド制御信号holdに従い、映像信号に対して補間処理を施し、リサンプリングしたのち出力する。
画像判別回路1002は、マイコン1004から指示された、判別分析に必要な画像パターンの制御情報群Cをもとに判別分析を行い、着目画素を中心とした小区画画像における画像パターン定義Mとして画素単位に出力する。
係数発生回路1003は、マイコン1004から指示された、リサイズ倍率Zoomが大きくなるほど、映像信号の高調波抑圧の特性を強くするようなフィルタ係数Coefを入力する。そして、マイコン1004から指示されたリサイズ倍率設定値Zoomと、画像判別回路1002からの画像パターン定義Mに従って係数制御を施す。その後、フィルタ係数Coef'を出力する。
波形整形フィルタ1006には、係数発生回路1003からのフィルタ係数Coef'が入力され、波形整形フィルタ1006は、フィルタ係数Coef'に基づいて、リサイズ回路1005からの入力信号に波形整形処理を施したのち、出力端子より出力する。
次に、リサイズ回路1005について詳細に述べる。図23は、リサイズ回路1005の補間処理とリサンプリングにより、リサイズ前のサンプリング周波数のデータ列(A/B)が、リサイズ後のサンプリング周波数のデータ列Iになる様子の模式図である。
ここでは、説明を簡単にするために、補間処理は図20に示すような、補間画素近傍2点の画素と、補間位置への距離Kを使用する線形補間処理とする。
図23の上から下への矢印が、補間画素近傍2点の画素から、補間画素位置に補間画素を生成することを示しており、補間画素近傍の画素A及びBと、図20の補間位置への距離Kから、補間画素は次式で求められる。
I = K×(A - B) + B (AはBの一つ前の画素位置)
リサイズ回路1005は、第3の実施形態と同様に、例えば図19のような回路で構成された、フィルタのタップ数は2タップの線形補間フィルタである。
入力端子からの映像信号は、バッファメモリ1501に1走査線分保持され、読み出される。
バッファメモリ1501から読み出す際の制御を示したのが、図24である。拡大の補間処理では、リサイズ前のサンプリング周波数よりも大きい周波数にリサンプリングされる。このため、倍率によっては、リサイズ前のサンプリング周波数における同一組の画素間に対し、補間処理された出力には、複数のリサンプリング後の画素が含まれる場合がある(図24の網掛けの演算結果)ことになる。
そこで、補間画素近傍の画素データ列Ai及びBi+1と、補間画素位置までの距離Kiにより、補間画素データ列Iiが次式で表される時に、以下の制御を行う。すなわち、マイコン1004から指示された繰り返し読み制御信号holdにより、hold = highではバッファメモリ1501の読み出し画素を進めずに、前回読み出した画素をもう一度読み出すように制御する。
Ii = Ki×(Ai - Bi+1) + Bi+1 (Ai = Bi)
また、遅延素子1502、1503は、制御信号holdにより、hold = lowのときに、1画素分の遅延を順次施すとともに、hold = highのときは、画素遅延動作を行わないように制御される。
そして、各画素信号A及びB、補間位置への距離Kから、加算器1504(演算は減算)、乗算器1505、加算器1506で上記線形補間式を実現する。そして、マイコン1004から指示された書き飛ばし制御信号skipにより、skip = highでは補間演算結果はバッファメモリ1507に書き込まないように制御して、補間処理結果をバッファメモリ1507に1走査線分保持する。ただし、この書き飛ばし制御は拡大処理では不要であり、skip = lowに固定されている。バッファメモリ1507の出力は、所望のリサイズ倍率で拡大処理がなされた映像信号として出力される。
次に、係数発生回路1003の制御フローについて、図28及び図30で詳細に説明する。図28は、係数発生回路1003の内部で行われる制御のフローチャートである。
係数発生回路1003には、マイコン1004から指示された波形整形フィルタ係数Coefが入力されるとともに、画像判別回路1002の出力である、着目画素における画像パターン定義Mが入力される。
まず、係数発生回路1003は、マイコン1004から指示されたリサイズ倍率設定値Zoomにより、リサイズ倍率が縮小か拡大かを判定する。
拡大の場合(縮小の場合は第3の実施形態で述べた)、拡大時の高調波抑圧量の算出ルーチンに進む。拡大時の高調波抑圧量の算出ルーチンは、例えば図30に示すようなフローチャートの制御である。
画像パターン定義Mにより、マイコン1004が決定した既定のフィルタ係数Coefに対して、通過帯域を操作するフィルタ係数Coef'が規定される。この例では、画像パターン定義Mが平坦であれば、波形整形の必要性が低いと判断できるので、フィルタ係数Coef'は、as is(拡大倍率に応じて設定された高調波抑圧特性)が選択される。
画像パターン定義Mがステップであれば、急峻な波形変動付近に発生しやすい高調派歪みを低減するために、フィルタ係数Coef'はweak(拡大倍率に応じて設定された高調波抑圧特性を少し強くする)が選択される。
画像パターン定義Mが線であれば、線自体の鮮鋭さを維持するために、フィルタ係数Coef'はas is(拡大倍率に応じて設定された高調波抑圧特性)が選択される。
画像パターン定義Mがテクスチャであれば、高周波成分が集中する付近に発生しやすい高調派歪みを低減するために、フィルタ係数Coef'はstrong(拡大倍率に応じて設定された高調波抑圧特性を強くする)が選択される。
画像パターン定義Mがその他であれば、画像による波形整形の効果は出ないと判断できるので、フィルタ係数Coef'はas is(拡大倍率に応じて設定された高調波抑圧特性)が選択される。
係数発生回路1003は、マイコン1004から指示された帯域制限フィルタ係数Coefを変更し、画像パターン定義Mとリサイズ倍率Zoomに応じた所望の帯域制限特性の得られる帯域制限フィルタ係数Coef'を出力する。
波形整形フィルタ1006は、所望のリサイズ倍率で拡大処理がなされた画像パターンに、より好適な波形整形を行い、映像信号を出力する。
(第5の実施形態)
本発明の第5の実施形態についての説明をする。図31は、本実施形態による縮小処理を行う撮像装置のブロック図の例である。本実施形態が第3の実施形態と異なるのは、画像判別回路1002の出力に対して、バッファメモリ1007、判定回路1008が接続されたことである。
以下は、構成、制御の相違点のみ詳細に記述し、本実施形態が第3の実施形態と構成、制御を同じくする部分については、詳細の記述を省略する。
入力端子から入力された映像信号は、帯域制限フィルタ1001に入力されるとともに、画像判別回路1002に入力される。
画像判別回路1002は、マイコン1004から指示された、判別分析に必要な画像パターンの制御情報群Cをもとに判別分析を行い、着目画素を中心とした小区画画像における画像パターン定義Mとして画素単位に出力する。
バッファメモリ1007は、画像判別回路1002の出力である画像パターン定義Mを入力し、入力された画像パターン定義Mを順次遅延させて保持するとともに、保持されている画像パターン定義群Mxを出力する。
判定回路1008は、画像判別回路1002の出力である画像パターン定義M及びバッファメモリ1007からの画像パターン定義群Mxを入力する。そして、平均化フィルタ、メディアンフィルタなど、着目画素位置とその周囲の画像パターン判定結果から、空間的に特異な結果が排除、緩和されるような処理を行い、着目画素位置における新しい画像パターン定義M'を出力する。
係数発生回路1003は、マイコン1004から指示された、リサンプリング後の周波数帯域に映像信号を帯域制限するためのフィルタ係数Coefに対し、フィルタ係数Coef'を出力する。係数発生回路1003は、マイコン1004から指示されたリサイズ倍率設定値Zoomと、判定回路1008からの画像パターン定義M'に従って係数制御を施したのち、フィルタ係数Coef'を出力する。
帯域制限フィルタ1001には、係数発生回路1003からのフィルタ係数Coef'が入力され、帯域制限フィルタ1001は、フィルタ係数Coef'に基づいて、入力信号に帯域制限を施して出力する。
帯域制限フィルタ1001の出力はリサイズ回路1005に入力される。リサイズ回路1005は、マイコン1004から指示された補間係数K、画素飛ばし制御信号skip、画素ホールド制御信号holdに従い、映像信号に対して補間処理を施し、リサンプリングしたのち、出力端子より出力する。
バッファメモリ1007の容量を大きくし、フレーム単位で複数の画像パターン定義Mを一時的に保持できるようにすれば、時間方向の特異点除去も可能となるため、動画像に本実施形態を適用した際にも、画像パターン定義M'が好適に得られる。
(第6の実施形態)
本発明の第6の実施形態についての説明をする。図32は、本実施形態による拡大処理を行う撮像装置のブロック図の例である。本実施形態が第4の実施形態と異なるのは、画像判別回路1002の出力に対して、バッファメモリ1007、判定回路1008が接続されたことである。
以下は、構成、制御の相違点のみ詳細に記述し、本実施形態が第4の実施形態と構成、制御を同じくする部分については、詳細の記述を省略する。
入力端子から入力された映像信号は、リサイズ回路1005に入力されるとともに、画像判別回路1002に入力される。
リサイズ回路1005は、マイコン1004から指示された補間係数K、画素飛ばし制御信号skip、画素ホールド制御信号holdに従い、映像信号に対して補間処理を施し、リサンプリングしたのち出力する。
画像判別回路1002は、マイコン1004から指示された、判別分析に必要な画像パターンの制御情報群Cをもとに判別分析を行い、着目画素を中心とした小区画画像における画像パターン定義Mとして画素単位に出力する。
係数発生回路1003は、マイコン1004から指示された、リサイズ倍率Zoomが大きくなるほど、映像信号の高調波抑圧の特性を強くするようなフィルタ係数Coefを入力する。そして、マイコン1004から指示されたリサイズ倍率設定値Zoomと、判定回路1008からの画像パターン定義M'に従って係数制御を施したのち、フィルタ係数Coef'を出力する。
波形整形フィルタ1006には、係数発生回路1003からのフィルタ係数Coef'が入力され、波形整形フィルタ1006は、フィルタ係数Coef'に基づいて、入力信号に波形整形処理を施したのち、出力端子より出力する。
バッファメモリ1007は、画像判別回路1002の出力である画像パターン定義Mを入力し、入力された画像パターン定義Mを順次遅延させて保持するとともに、保持されている画像パターン定義群Mxを出力する。
判定回路1008は、画像判別回路1002の出力である画像パターン定義M及びバッファメモリ1007からの画像パターン定義群Mxを入力する。そして、平均化フィルタ、メディアンフィルタなど、着目画素位置とその周囲の画像パターン判定結果から、空間的に特異な結果が排除、緩和されるような処理を行い、着目画素位置における新しい画像パターン定義M'を出力する。
バッファメモリ1007の容量を大きくし、フレーム単位で複数の画像パターン定義Mを一時的に保持できるようにすれば、時間方向の特異点除去も可能となるため、動画像に本実施形態を適用した際にも、画像パターン定義M'が好適に得られる。
以上のように、第3〜第6の実施形態では、簡単な構成で、画像中の小区画における被写体の意味や特徴を判別し、かつ、リサイズ処理が縮小か拡大かに応じて、補間処理の前後に配置されたプレ又はポストフィルタ処理を、より好適に制御することが実現できる。
また、周囲の小区画画像と比較して、判別結果が孤立している場合はそれを破棄し、周囲の判別結果から推定される判別結果に置き換えることで、判別結果の正当性を確保している。
また、時間的に前後のフレームとなる同一位置の小区画画像と比較して、判別結果が孤立している場合はそれを破棄し、時間的に前後の判別結果から推定される判別結果に置き換えることで、判別結果の正当性を確保している。
以上のように、バッファメモリ1201は、複数の画素からなる小区画画像Iを入力画像から切り出して記憶する。周波数解析手段(回路)1202は、前記バッファメモリ1201内の小区画画像Iを周波数解析し、前記小区画画像Iの空間周波数分布を出力する。周期性解析手段(回路)1203は、前記バッファメモリ1201内の小区画画像Iを周期性解析し、前記小区画画像Iの時間周期性分布を出力する。判別分析手段は、回路1204〜1210を有し、前記小区画画像Iの空間周波数分布及び時間周期性分布を基に、前記小区画画像Iの画像パターンの判別結果を出力する。
リサイズ手段(回路)1005は、前記入力画像をリサイズ倍率で拡大又は縮小する。帯域制限フィルタ1001は、前記小区画画像Iの画像パターンの判別結果及び前記リサイズ倍率に応じて、前記リサイズ手段1005の入力信号又は出力信号に対して帯域制限処理を行う。
前記帯域制限フィルタ1001は、前記リサイズ倍率が縮小の場合、縮小後のサンプリング周波数に合わせて帯域制限を行うためのフィルタ係数を設定する。そして、前記小区画画像の画像パターンの判別結果が高周波成分を多く含むもの(テクスチャ又はステップ等)と判別されている場合には、より狭い帯域制限を行うために前記フィルタ係数をシフトする。
前記帯域制限フィルタ1001は、前記リサイズ倍率が縮小の場合、縮小後のサンプリング周波数に合わせて帯域制限を行うためのフィルタ係数を設定する。そして、前記小区画画像の画像パターンの判別結果が輪郭成分を多く含むもの(線等)と判別されている場合には、より広い帯域制限を行うために前記フィルタ係数をシフトする。
前記帯域制限フィルタ1001は、前記リサイズ倍率が縮小の場合、縮小後のサンプリング周波数に合わせて帯域制限を行うためのフィルタ係数を設定する。そして、前記小区画画像の画像パターンの判別結果が高周波成分をほとんど含まないもの(平坦等)と判別されている場合には、より広い帯域制限を行うために前記フィルタ係数をシフトする。
前記帯域制限フィルタ1001は、前記リサイズ倍率が拡大の場合、前記小区画画像の画像パターンの判別結果が高周波成分を多く含むもの(テクスチャ又はステップ等)と判別されている場合には、波形歪みによる高調波を抑圧するようにフィルタ係数を変更する。
前記帯域制限フィルタ1001は、前記リサイズ倍率が拡大の場合、拡大率が大きくなるに従って、波形歪みによる高調波の抑圧度を高めるようにフィルタ係数を変更する。
前記帯域制限フィルタ1001は、前記リサイズ倍率が2つの異なる方向に対して独立に設定されており、フィルタ係数を各方向に対して独立に制御する。
(第7の実施形態)
本発明の第7の実施形態についての説明をする。図33は、本実施形態による縮小処理を行う撮像装置のブロック図の例である。
入力端子から入力された映像信号は、帯域制限フィルタ1001に入力されるとともに、画像判別回路1002に入力される。画像判別回路1002は、マイコン1004から指示された、判別分析に必要な画像パターンの制御情報群Cをもとに判別分析を行い、着目画素を中心とした小区画画像における画像パターン定義Mとして画素単位に出力する。
係数発生回路1003は、マイコン1004から指示された、リサンプリング後の周波数帯域に映像信号を帯域制限するためのフィルタ係数Coefを入力する。そして、マイコン1004から指示されたリサイズ倍率設定値Zoomと、画像判別回路1002からの画像パターン定義Mに従って係数制御とフィルタ機能選択信号Selectを生成する。その後、フィルタ係数Coef'とフィルタ機能選択信号Selectを出力する。
帯域制限フィルタ1001には、係数発生回路1003からのフィルタ係数Coef'とフィルタ機能選択信号Selectが入力される。帯域制限フィルタ1001は、フィルタ係数Coef' とフィルタ機能選択信号Selectに基づいて、入力信号に帯域制限を施して出力する。
帯域制限フィルタ1001の出力はリサイズ回路1005に入力される。リサイズ回路1005は、マイコン1004から指示された補間係数K、画素飛ばし制御信号skip、画素ホールド制御信号holdに従い、映像信号に対して補間処理を施し、リサンプリングしたのち、出力端子より出力する。
次に、画像判別回路1002について詳細に述べる。画像判別回路1002は、例えば図16のような回路で構成されている。その説明は、上記と同様である。
次に、帯域制限フィルタ1001の周波数特性の決定方法については、上記の図25、図26の説明と同様である。
次に、係数発生回路1003の制御フローについて、図36及び図37で詳細に説明する。図36は、係数発生回路1003の内部で行われる制御のフローチャートである。
係数発生回路1003には、マイコン1004から指示された帯域制限フィルタ係数Coefが入力されるとともに、画像判別回路1002の出力である、着目画素における画像パターン定義Mが入力される。
まず、係数発生回路1003は、マイコン1004から指示されたリサイズ倍率設定値Zoomにより、リサイズ倍率が縮小か拡大かを判定する。
縮小の場合(拡大の場合は第8の実施形態で述べる)、縮小時のフィルタ機能選択信号の算出ルーチンに進む。
縮小時のフィルタ機能選択信号の算出ルーチンは、例えば図37に示すようなフローチャートの制御である。画像パターン定義Mにより、使用するフィルタを選択するフィルタ機能選択信号Selectが規定される。この例では、画像パターン定義Mが平坦であれば、帯域制限よりもノイズを抑圧する必要性が高いと判断できるので、帯域制限フィルタはノイズをより抑圧できるεフィルタが選択されるように、フィルタ機能選択信号Selectはefilterが選択される。このとき、マイコン1004から指示された帯域制限フィルタ係数Coefに変更を加えず、そのままCoef'とする。
画像パターン定義Mがステップであれば、ステップ自体の鮮鋭さを維持するため、エッジを残すことができるメディアンフィルタが選択されるように、フィルタ機能選択信号Selectはmedianが選択される。
画像パターン定義Mが線であれば、線自体の鮮鋭さを維持するため、エッジを残すことができるメディアンフィルタが選択されるように、フィルタ機能選択信号Selectはmedianが選択される。
画像パターン定義Mがテクスチャであれば、高周波成分が集中する付近に発生しやすい折り返しを低減するため、既定よりも狭帯域となるLPF(ローパスフィルタ)が選択されるように、フィルタ機能選択信号Selectはlpf_nが選択される。
画像パターン定義Mがその他であれば、画像によるフィルタ機能操作の効果は出ないと判断できるので、フィルタ機能選択信号Selectはlpf_sが選択され、フィルタ機能選択信号の算出ルーチンを抜ける。
決定されたフィルタ機能選択信号Selectがlpf_nであったならば、係数発生回路1003は、マイコン1004から指示された帯域制限フィルタ係数Coefを変更する。そして、画像パターン定義Mとリサイズ倍率Zoomに応じた所望の帯域制限特性の得られる帯域制限フィルタ係数Coef'とフィルタ機能選択信号Selectを出力する。
一方、決定されたフィルタ機能選択信号Selectがlpf_n以外であれば、マイコン1004から指示された帯域制限フィルタ係数Coefに変更を加えず、そのままCoef'とし、フィルタ機能選択信号Selectとともに出力する。
次に、帯域制限フィルタ1001について詳細に述べる。帯域制限フィルタ1001は、例えば図35のような回路で構成されている。
入力端子からの映像信号は、それぞれLPF2101、εフィルタ2102、メディアンフィルタ2103に入力される。ここで、LPF2101は、外部から入力されるフィルタ係数Coef'を用いてローパスフィルタ処理を行う。また、εフィルタ2102は、外部から入力されるフィルタ係数Coef'を用いてεフィルタ処理を行う。また、メディアンフィルタ2103は、メディアンフィルタ処理を行う。LPF2101、εフィルタ2102、メディアンフィルタ2103からの出力はセレクタ2104に入力される。
セレクタ2104は外部から入力されるSelectが、lpf_n、lpf_sであったならば、LPF2101からの入力を出力端子に出力する。Selectがefilterであったならば、εフィルタ2102からの入力を出力端子に出力する。Selectがmedianであったならば、メディアンフィルタ2103からの入力を出力端子に出力する。
次に、リサイズ回路1005について述べる。リサイズ回路1005は、上記の第3の実施形態と同様である。
(第8の実施形態)
本発明の第8の実施形態についての説明をする。図34は、本実施形態による拡大処理を行う撮像装置のブロック図の例である。本実施形態が第7の実施形態と異なるのは、リサイズ回路1005の前段にあった帯域制限フィルタ1001がなく、代わりに後段に波形整形フィルタ1006が挿入されたことである。
図27(A)は、リサイズ処理前の画像のサンプリング周波数をfs、ナイキスト周波数をfnとした周波数領域での様子を示している。ここで、実線の周波数帯はベースバンド信号であり、破線の周波数帯は折り返しの信号である。
リサイズで拡大処理を施すと、図27(B)のようにサンプリング周波数がfs'、ナイキスト周波数fn'になるが、このときに、ベースバンド信号と折り返し信号は、原サンプリング以上の周波数を持たないために、重なることはない。
従って、拡大処理では、帯域制限は原理的には不要であるが、補間処理による波形歪みにより、高調波が発生する場合がある。
以下は、構成、制御の相違点のみ詳細に記述し、本実施形態が第7の実施形態と構成、制御を同じくする部分については、詳細の記述を省略する。
入力端子から入力された映像信号は、リサイズ回路1005に入力されるとともに、画像判別回路1002に入力される。リサイズ回路1005は、マイコン1004から指示された補間係数K、画素飛ばし制御信号skip、画素ホールド制御信号holdに従い、映像信号に対して補間処理を施し、リサンプリングしたのち出力する。
画像判別回路1002は、マイコン1004から指示された、判別分析に必要な画像パターンの制御情報群Cをもとに判別分析を行い、着目画素を中心とした小区画画像における画像パターン定義Mとして画素単位に出力する。
係数発生回路1003は、マイコン1004から指示された、リサイズ倍率Zoomが大きくなるほど、映像信号の高調波抑圧の特性を強くするようなフィルタ係数Coefを入力する。そして、マイコン1004から指示されたリサイズ倍率設定値Zoomと、画像判別回路1002からの画像パターン定義Mに従って係数制御とフィルタ機能選択信号Selectを生成する。その後、フィルタ係数Coef'とフィルタ機能選択信号Selectを出力する。
波形整形フィルタ1006には、係数発生回路1003からのフィルタ係数Coef' とフィルタ機能選択信号Selectが入力される。波形整形フィルタ1006は、フィルタ係数Coef' とフィルタ機能選択信号Selectに基づいて、入力信号に波形整形処理を施したのち、出力端子より出力する。
次に、リサイズ回路1005について詳細に述べる。リサイズ回路1005の説明は、上記の第4の実施形態と同様である。
次に、係数発生回路1003の制御フローについて、図36及び図38で詳細に説明する。図36は、係数発生回路1003の内部で行われる制御のフローチャートである。
係数発生回路1003には、マイコン1004から指示された波形整形フィルタ係数Coefが入力されるとともに、画像判別回路1002の出力である、着目画素における画像パターン定義Mが入力される。
まず、係数発生回路1003は、マイコン1004から指示されたリサイズ倍率設定値Zoomにより、リサイズ倍率が縮小か拡大かを判定する。
拡大の場合(縮小の場合は第7の実施形態で述べた)、拡大時の高調波抑圧量及び機能選択信号の算出ルーチンに進む。拡大時の高調波抑圧量及び機能選択信号の算出ルーチンは、例えば図38に示すようなフローチャートの制御である。
画像パターン定義Mにより、マイコン1004が決定した既定のフィルタ係数Coefに対して、通過帯域を操作するフィルタ係数Coef'が規定される。この例では、画像パターン定義Mが平坦であれば、波形整形の必要性は低く、ノイズを抑圧する必要性の方が高いと判断できる。したがって、フィルタ係数Coef'は、as is(拡大倍率に応じて設定された高調波抑圧特性)が選択され、フィルタ機能選択信号Selectは、ノイズをより抑圧できるεフィルタが選択されるようにefilterが選択される。
画像パターン定義Mがステップであれば、ステップ自体の鮮鋭さを維持するため、エッジを残すことができるメディアンフィルタが選択されるように、フィルタ機能選択信号Selectはmedianが選択される。
画像パターン定義Mが線であれば、線自体の鮮鋭さを維持するため、エッジを残すことができるメディアンフィルタが選択されるように、フィルタ機能選択信号Selectはmedianが選択される。
画像パターン定義Mがテクスチャであれば、鮮鋭感を確保するため、フィルタ係数Coef'はstrong(ナイキスト周波数fn付近を抽出するBPFとなる)が選択される。フィルタ機能選択信号Selectは、輪郭補償フィルタが選択されるように、sharpnesが選択される。
画像パターン定義Mがその他であれば、画像による波形整形の効果は出ないと判断できるので、フィルタ係数Coef'はas is(拡大倍率に応じて設定された高調波抑圧特性)が選択され、フィルタ機能選択信号Selectは、othersが選択される。
係数発生回路1003は、マイコンから指示された帯域制限フィルタ係数Coefを変更し、画像パターン定義Mとリサイズ倍率Zoomに応じた所望の帯域制限特性の得られる帯域制限フィルタ係数Coef'及びフィルタ機能選択信号Selectを出力する。
次に、波形整形フィルタ1006について詳細に述べる。波形整形フィルタ1006は、例えば図41のような回路で構成されている。入力端子からの映像信号は、それぞれ係数フィルタ2701、εフィルタ2703、メディアンフィルタ2704に入力される。
ここで、係数フィルタ2701は、外部から入力されるフィルタ係数Coef'を用いて高調波抑圧又はBPF処理を行う。ここで、係数フィルタ2701がBPF処理を行う時、映像信号と係数フィルタ2701との出力を、加算器2702で加算することで輪郭補償フィルタ処理となる。また、εフィルタ2703は、外部から入力されるフィルタ係数Coef'を用いてεフィルタ処理を行う。また、メディアンフィルタ2704は、メディアンフィルタ処理を行う。
係数フィルタ2701、加算器2702、εフィルタ2703、メディアンフィルタ2704からの出力はセレクタ2705に入力される。
セレクタ2705は外部から入力されるSelectが、othersであったならば、係数フィルタ2701の出力を出力端子に出力する。Selectがsharpnesであったならば、加算器2702の出力を出力端子に出力する。Selectがefilterであったならば、εフィルタ2703の出力を出力端子に出力する。Selectがmedianであったならば、メディアンフィルタ2704の出力を出力端子に出力する。
波形整形フィルタ1006は、所望のリサイズ倍率で拡大処理がなされた画像パターンに、より好適な波形整形を行い、映像信号を出力する。
(第9の実施形態)
本発明の第9の実施形態についての説明をする。図39は、本実施形態による縮小処理を行う撮像装置のブロック図の例である。本実施形態が第7の実施形態と異なるのは、画像判別回路1002の出力に対して、バッファメモリ1007、判定回路1008が接続されたことである。
以下は、構成、制御の相違点のみ詳細に記述し、第7の実施形態と構成、制御を同じくする部分については、詳細の記述を省略する。
入力端子から入力された映像信号は、帯域制限フィルタ1001に入力されるとともに、画像判別回路1002に入力される。
画像判別回路1002は、マイコン1004から指示された、判別分析に必要な画像パターンの制御情報群Cをもとに判別分析を行い、着目画素を中心とした小区画画像における画像パターン定義Mとして画素単位に出力する。
バッファメモリ1007は、画像判別回路1002の出力である画像パターン定義Mを入力し、入力された画像パターン定義Mを順次遅延させて保持するとともに、保持されている画像パターン定義群Mxを出力する。
判定回路1008は、画像判別回路1002の出力である画像パターン定義M及びバッファメモリ1007からの画像パターン定義群Mxを入力する。そして、平均化フィルタ、メディアンフィルタなど、着目画素位置とその周囲の画像パターン判定結果から、空間的に特異な結果が排除、緩和されるような処理を行い、着目画素位置における新しい画像パターン定義M'を出力する。
係数発生回路1003は、マイコン1004から指示された、リサンプリング後の周波数帯域に映像信号を帯域制限するためのフィルタ係数Coefを入力する。そして、マイコン1004から指示されたリサイズ倍率設定値Zoomと、判定回路1008からの画像パターン定義M'に従って係数制御とフィルタ機能選択信号Selectを生成する。その後、フィルタ係数Coef'とフィルタ機能選択信号Selectを出力する。
帯域制限フィルタ1001には、係数発生回路1003からのフィルタ係数Coef'とフィルタ機能選択信号Selectが入力される。帯域制限フィルタ1001は、フィルタ係数Coef'とフィルタ機能選択信号Selectに基づいて、入力信号に帯域制限を施して出力する。
帯域制限フィルタ1001の出力はリサイズ回路1005に入力される。リサイズ回路1005は、マイコン1004から指示された補間係数K、画素飛ばし制御信号skip、画素ホールド制御信号holdに従い、映像信号に対して補間処理を施し、リサンプリングしたのち、出力端子より出力する。
バッファメモリ1007の容量を大きくし、フレーム単位で複数の画像パターン定義Mを一時的に保持できるようにすれば、時間方向の特異点除去も可能となるため、動画像に本実施形態を適用した際にも、画像パターン定義M'が好適に得られる。
(第10の実施形態)
本発明の第10の実施形態についての説明をする。図40は、本実施形態による拡大処理を行う撮像装置のブロック図の例である。本実施形態が第8の実施形態と異なるのは、画像判別回路1002の出力に対して、バッファメモリ1007、判定回路1008が接続されたことである。
以下は、構成、制御の相違点のみ詳細に記述し、本実施形態が第8の実施形態と構成、制御を同じくする部分については、詳細の記述を省略する。
入力端子から入力された映像信号は、リサイズ回路1005に入力されるとともに、画像判別回路1002に入力される。
リサイズ回路1005は、マイコン1004から指示された補間係数K、画素飛ばし制御信号skip、画素ホールド制御信号holdに従い、映像信号に対して補間処理を施し、リサンプリングしたのち出力する。
画像判別回路1002は、マイコン1004から指示された、判別分析に必要な画像パターンの制御情報群Cをもとに判別分析を行い、着目画素を中心とした小区画画像における画像パターン定義Mとして画素単位に出力する。
バッファメモリ1007は、画像判別回路1002の出力である画像パターン定義Mを入力し、入力された画像パターン定義Mを順次遅延させて保持するとともに、保持されている画像パターン定義群Mxを出力する。
判定回路1008は、画像判別回路1002の出力である画像パターン定義M及びバッファメモリ1007からの画像パターン定義群Mxを入力する。そして、平均化フィルタ、メディアンフィルタなど、着目画素位置とその周囲の画像パターン判定結果から、空間的に特異な結果が排除、緩和されるような処理を行い、着目画素位置における新しい画像パターン定義M'を出力する。
係数発生回路1003は、マイコン1004から指示された、リサイズ倍率Zoomが大きくなるほど、映像信号の高調波抑圧の特性を強くするようなフィルタ係数Coefを入力する。そして、マイコン1004から指示されたリサイズ倍率設定値Zoomと、判定回路1008からの画像パターン定義M'に従って係数制御とフィルタ機能選択信号Selectを生成する。その後、フィルタ係数Coef'とフィルタ機能選択信号Selectを出力する。
波形整形フィルタ1006には、係数発生回路1003からのフィルタ係数Coef'とフィルタ機能選択信号Selectが入力される。波形整形フィルタ1006は、フィルタ係数Coef'とフィルタ機能選択信号Selectに基づいて、入力信号に波形整形処理を施したのち、出力端子より出力する。
バッファメモリ1007の容量を大きくし、フレーム単位で複数の画像パターン定義Mを一時的に保持できるようにすれば、時間方向の特異点除去も可能となるため、動画像に本実施形態を適用した際にも、画像パターン定義M'が好適に得られる。
以上のように、第7〜第10の実施形態では、簡単な構成で、画像中の小区画における被写体の意味や特徴を判別し、かつ、リサイズ処理が縮小か拡大かに応じて、補間処理の前後に配置されたプレ又はポストフィルタ処理を、より好適に制御することができる。
また、周囲の小区画画像と比較して、判別結果が孤立している場合はそれを破棄し、周囲の判別結果から推定される判別結果に置き換えることで、判別結果の正当性を確保している。
また、時間的に前後のフレームとなる同一位置の小区画画像と比較して、判別結果が孤立している場合はそれを破棄し、時間的に前後の判別結果から推定される判別結果に置き換えることで、判別結果の正当性を確保している。
以上のように、バッファメモリ1201は、複数の画素からなる小区画画像Iを入力画像から切り出して記憶する。周波数解析手段(回路)1202は、前記バッファメモリ1201内の小区画画像Iを周波数解析し、前記小区画画像Iの空間周波数分布を出力する。周期性解析手段(回路)1203は、前記バッファメモリ1201内の小区画画像Iを周期性解析し、前記小区画画像Iの時間周期性分布を出力する。判別分析手段は、回路1204〜1210を有し、前記小区画画像Iの空間周波数分布及び時間周期性分布を基に、前記小区画画像Iの画像パターンの判別結果を出力する。
リサイズ手段1005は、前記入力画像をリサイズ倍率で拡大又は縮小する。帯域制限フィルタ1001は、前記小区画画像Iの画像パターンの判別結果及び前記リサイズ倍率に応じて、前記リサイズ手段1005の入力信号又は出力信号に対して帯域制限処理を行う。
前記帯域制限フィルタ1001は、機能が異なる複数のフィルタ手段を有し、前記小区画画像Iの画像パターンの判別結果に応じて前記複数のフィルタ手段から1つを選択する。
前記複数のフィルタ手段は、ローパスフィルタ2101、εフィルタ2102及びメディアンフィルタ2103を有する。
また、前記複数のフィルタ手段は、ローパスフィルタ、輪郭補償フィルタ、εフィルタ及びメディアンフィルタを有する。
前記帯域制限フィルタ1001は、前記リサイズ倍率が縮小の場合、縮小後のサンプリング周波数に合わせて帯域制限を行うためのフィルタ係数を設定する。そして、前記小区画画像の画像パターンの判別結果が輪郭成分を多く含むもの(線又はステップ等)と判別されている場合には、メディアンフィルタを選択する。
前記帯域制限フィルタ1001は、前記リサイズ倍率が縮小の場合、縮小後のサンプリング周波数に合わせて帯域制限を行うためのフィルタ係数を設定する。そして、前記小区画画像の画像パターンの判別結果が高周波成分をほとんど含まないもの(平坦等)と判別されている場合には、εフィルタを選択する。
前記帯域制限フィルタ1001は、前記リサイズ倍率が拡大の場合、前記小区画画像の画像パターンの判別結果が高周波成分を多く含むもの(テクスチャ等)と判別されている場合には、ナイキスト周波数周辺を抽出するようにフィルタ係数を設定する。そして、輪郭補償フィルタを選択する。
前記帯域制限フィルタ1001は、前記リサイズ倍率が拡大の場合、前記小区画画像の画像パターンの判別結果が輪郭成分を多く含むもの(線又はステップ等)と判別されている場合には、メディアンフィルタを選択する。
前記帯域制限フィルタ1001は、前記リサイズ倍率が拡大の場合、前記小区画画像の画像パターンの判別結果が高周波成分をほとんど含まないもの(平坦等)と判別されている場合には、εフィルタを選択する。
(第11の実施形態)
本発明の第11の実施形態についての説明をする。図42は、本実施形態によるリサイズ処理を行う撮像装置のブロック図の例である。入力端子から入力された映像信号は、帯域制限フィルタ1001に入力されるとともに、画像判別回路1002に入力される。画像判別回路1002は、マイコン1004から指示された、判別分析に必要な画像パターンの制御情報群Cをもとに判別分析を行い、着目画素を中心とした小区画画像における画像パターン定義Mとして画素単位に出力する。
帯域制限フィルタ1001には、マイコン1004から指示された、リサンプリング後の周波数帯域に映像信号を帯域制限するためのフィルタ係数Coefが入力される。帯域制限フィルタ1001は、フィルタ係数Coefに基づいて、入力信号に帯域制限を施して出力する。帯域制限フィルタ1001の出力はリサイズ回路1005に入力される。リサイズ回路1005は、マイコン1004から指示された補間係数K、画素飛ばし制御信号skip、画素ホールド制御信号hold及び、画像判別回路1002の出力信号Mに従い、映像信号に対して補間処理を施す。そして、リサンプリングしたのち、出力端子より出力する。
次に、画像判別回路1002について詳細に述べる。画像判別回路1002は、例えば図16のような回路で構成されており、上記の第3の実施形態の説明と同様である。
次に、帯域制限フィルタ1001の周波数特性の決定方法について、図25、図26により説明する。図25(A)は、リサイズ処理前の画像のサンプリング周波数をfs、ナイキスト周波数をfnとした周波数領域での様子を示している。ここで、実線の周波数帯はベースバンド信号であり、破線の周波数帯は折り返しの信号である。
リサイズで縮小処理を施すと、図25(B)のようにサンプリング周波数がfs'、ナイキスト周波数fn'になるが、このときに、ベースバンド信号と折り返し信号が重なることがない状態が理想的である。
マイコン1004は、リサイズの縮小率が与えられると、図26(A)のリサイズ前のサンプリング周波数の信号(図25(A)と同一)を入力する。そして、図26(B)の太線に示すような、リサイズ後のナイキスト周波数fn'で十分に信号帯域が抑圧される帯域制限特性のフィルタ係数を算出する。
帯域制限フィルタ1001の処理の結果、映像信号は、図26(C)のように、サンプリング周波数fsで、帯域がfn'程度の周波数成分に制限されたものになる。
従って、帯域制限フィルタ1001の周波数特性は、図18のような連続的な帯域変化を示す周波数特性を有しており、リサイズの倍率に対して可変制御され、縮小倍率が高くなるほど狭帯域な特性を取る。
次に、帯域制限フィルタ1001について詳細に述べる。帯域制限フィルタ1001は、例えば図17のような回路で構成されている。ただし、本実施形態では、フィルタ係数Coef'の代わりにフィルタ係数Coefを入力するので、図17のフィルタ係数Coef'、Coef'0、Coef'1、Coef'2はフィルタ係数Coef、Coef0、Coef1、Coef2に置き換えられる。この例では、フィルタのタップ数は5タップである。
入力端子からの映像信号は、遅延素子1101〜1104で1画素分の遅延を順次施されるとともに、入力映像信号及び遅延素子1104の出力が加算器1105で加算され、遅延素子1101の出力及び遅延素子1103の出力が加算器1106で加算される。
マイコン1004から入力されたフィルタ係数Coefは、各々のフィルタタップに対して1つのフィルタ係数Coef0、Coef1、Coef2で構成されている。フィルタタップの中央の画素値にあたる遅延素子1102の出力は、乗算器1109でCoef0と乗算されて出力される。フィルタタップの中央から1番目の画素値にあたる加算器1106の出力は、乗算器1108でCoef1と乗算されて出力される。フィルタタップの中央から2番目の画素値にあたる加算器1105の出力は、乗算器1107でCoef2と乗算されて出力される。乗算器1107,1108,1109の出力は、加算器1110で加算され、フィルタ係数のゲイン分をビットシフトされ、出力端子に出力される。
次に、リサイズ回路1005について詳細に述べる。リサイズ回路1005は例えば図44のような回路で構成されている。この例では、フィルタのタップ数は4タップの補間フィルタである。
入力端子からの映像信号は、バッファメモリ3301に1走査線分保持し、マイコン1004から指示された繰り返し読み出しの制御信号holdにより、前回に読み出した画素をもう一度読み出すように制御される。
バッファメモリ3301で保持されたデータは、マイコン1004から指示された繰り返し読みの制御信号holdにより、遅延素子3302〜3305で1画素分の遅延を順次施される。
データ操作回路3306では、遅延素子3302〜3305及び、マイコン1004から指示された補間位置への距離K、画像判別回路1002の出力信号Mに従い、補間処理演算で使用する画素データdata0〜data3の出力を行う。
係数発生回路3307は、マイコン1004から指示された補間位置への距離Kから、補間演算で使用する補間係数coef0,coef1,coef2,coef3を算出し、出力する。
データ操作回路3306から出力された画素データdata0,data1,data2,data3と、係数発生回路3307から出力された補間係数coef0,coef1,coef2,coef3を、乗算器3308〜3311を使用して乗算を行う。
乗算器3308〜3311の出力は、加算器3312で加算され、フィルタ係数のゲイン分をビットシフトされ、バッファメモリ313において、マイコン1004から指示された書き込みの制御信号skipによって制御されながら書き込みを行い、出力される。
次に、このリサイズ回路1005において、縮小処理時の動作について詳細に述べる。図45は、リサイズ回路1005の補間処理とリサンプリングにより、リサイズ前のサンプリング周波数のデータ列(A/B/C/D)が、リサイズ後のサンプリング周波数のデータ列Iになる様子の模式図である。ここでは、補間処理は図43に示すような、補間画素近傍4点の画素と、補間位置への距離Kを使用する補間処理とする。
図45の上から下への矢印が、補間画素近傍4点の画素から、補間画素位置に補間画素を生成することを示しており、補間画素近傍の画素A及びB,C,Dと、図43の補間位置への距離Kから、補間画素は次式で求められる。
I = f(A,B,C,D,K)
これは、補間位置への距離Kから求めた補間画素近傍の画素A及びB,C,Dを合成するための補間係数と、補間画素近傍の画素A及びB,C,Dの積の和から補間画素値を求める事を意味している。
補間係数は、係数発生回路3307において、補間位置への距離Kを入力信号として生成し、出力信号coef0,coef1,coef2,coef3として出力する。補間係数の生成方法の概念図を図55に示す。補間係数は、例えば図55の特性を持つ、参照画素区間の時間関数として表現できる。参照画素と補間画素との距離Kは、時間関数の位相差であることから、前記時間関数に距離Kのオフセットをつけて、画素区間単位で関数値を取得すれば、それが各参照画素位置での補間係数となる。
入力端子からの映像信号は、バッファメモリ3301に1走査線分保持され、読み出し時に、マイコン1004から指示された繰り返し読み出しの制御信号holdにより、hold = highのときに、前回読み出した画素をもう一度読み出す。
また、遅延素子3302、3303、3304、3305は、制御信号holdにより、hold = lowのときに、1画素分の遅延を順次施す。ただし、この繰り返し読み出し制御は縮小処理では不要であり、hold = lowに固定されている。
そして、データ操作回路3306には、各画素信号A及びB,C,D、補間位置への距離K,画像判別回路1002の出力である、着目画素における画像パターン定義Mが入力され、補間処理で演算に使用する画素値の出力を行う。
乗算器3308,3309,3310,3311は、データ操作回路3306の出力信号data0,data1,data2,data3及び係数発生回路3307の出力信号coef0,coef1,coef2,coef3をそれぞれ乗算する。それらの出力は、加算器3312によって加算され、フィルタゲイン分をビットシフトしてバッファメモリ3313に1走査線分保持される。
バッファメモリ3313に書き込む際の制御を示したのが、図46である。縮小の補間処理では、リサイズ前のサンプリング周波数よりも小さい周波数にリサンプリングされる。このため、リサイズ前のサンプリング周波数で補間処理された出力には、リサンプリング後には不要となる画素(図46の網掛けの演算結果)が含まれていることになる。
そこで、補間画素近傍の画素データ列Ai-1及びBi、Ci+1、Di+2と、補間画素位置までの距離Kiにより、補間画素データ列Iiが次式で表される時に、以下の制御を行う。すなわち、マイコン1004から指示された書き飛ばし制御信号skipにより、skip = highでは補間演算結果はバッファメモリ3313に書き込まないように制御する。
Ii = f(Ai-1 , Bi , Ci+1 , Di+2 , Ki) (Ai = Bi = Ci = Di )
バッファメモリ3313の出力は、図26(D)のように、サンプリング周波数fs'で、帯域がfn'程度の周波数成分に制限されたものであると同時に、画像パターン定義により、画像の内容に好適な帯域に適宜調整された映像信号として出力される。
次に、このリサイズ回路1005において、拡大処理時の動作について詳細に述べる。図27(A)は、リサイズ処理前の画像のサンプリング周波数をfs、ナイキスト周波数をfnとした周波数領域での様子を示している。ここで、実線の周波数帯はベースバンド信号であり、破線の周波数帯は折り返しの信号である。
リサイズで拡大処理を施すと、図27(B)のようにサンプリング周波数がfs'、ナイキスト周波数fn'になるが、このときに、ベースバンド信号と折り返し信号は、原サンプリング以上の周波数を持たないために、重なることはない。
図47は、リサイズ回路1005の補間処理とリサンプリングにより、リサイズ前のサンプリング周波数のデータ列(A/B/C/D)が、リサイズ後のサンプリング周波数のデータ列Iになる様子の模式図である。ここでは、補間処理は図43に示すような、補間画素近傍4点の画素と、補間位置への距離Kを使用する補間処理とする。
図47の上から下への矢印が、補間画素近傍4点の画素から、補間画素位置に補間画素を生成することを示しており、補間画素近傍の画素A及びB,C,Dと、図43の補間位置への距離Kから、補間画素は次式で求められる。
I = f(A,B,C,D,K)
補間係数は、係数発生回路3307において、補間位置への距離Kを入力信号として生成し、出力信号coef0,coef1,coef2,coef3として出力される。補間係数の生成方法の概念図を図55に示す。補間係数は、例えば図55の特性を持つ、参照画素区間の時間関数として表現できる。参照画素と補間画素との距離Kは、時間関数の位相差であることから、前記時間関数に距離Kのオフセットをつけて、画素区間単位で関数値を取得すれば、それが各参照画素位置での補間係数となる。
入力端子からの映像信号は、バッファメモリ3301に1走査線分保持され、読み出される。バッファメモリ3301から読み出す際の制御を示したのが、図48である。拡大の補間処理では、リサイズ前のサンプリング周波数よりも大きい周波数にリサンプリングされる。このため、倍率によっては、リサイズ前のサンプリング周波数における同一組の画素間に対し、補間処理された出力には、複数のリサンプリング後の画素が含まれる場合がある(図48の網掛けの演算結果)ことになる。
そこで、補間画素近傍の画素データ列Ai-1及びBi、Ci+1、Di+2と、補間画素位置までの距離Kiにより、補間画素データ列Iiが次式で表される時に、以下の制御を行う。すなわち、マイコン1004から指示された繰り返し読み制御信号holdにより、hold=highではバッファメモリ3301の読み出し画素を進めずに、前回読み出した画素をもう一度読み出すように制御する。
Ii = f(Ai-1 , Bi , Ci+1 , Di+2 , Ki) (Ai = Bi = Ci = Di )
また、遅延素子3302,3303,3304,3305は、制御信号holdにより、hold=lowのときに、1画素分の遅延を順次施すとともに、hold=highのときは、画素遅延動作を行わないように制御される。
そして、データ操作回路3306には、各画素信号A及びB,C,D、補間位置への距離K,画像判別回路1002の出力である、着目画素における画像パターン定義Mが入力され、補間処理で演算に使用する画素値の出力を行う。
乗算器3308,3309,3310,3311は、データ操作回路3306の出力信号data0,data1,data2,data3及び係数発生回路3307の出力信号coef0,coef1,coef2,coef3をそれぞれ乗算する。それらの出力は、加算器3312によって加算され、フィルタゲイン分をビットシフトしてバッファメモリ3313に1走査線分保持される。
そして、マイコン1004から指示された書き飛ばし制御信号skipにより、skip=highでは補間演算結果はバッファメモリ3313に書き込まないように制御して、補間処理結果をバッファメモリ3313に1走査線分保持する。ただし、この書き飛ばし処理は拡大処理では不要であり、skip=lowに固定されている。バッファメモリ3313の出力は、所望のリサイズ倍率で拡大処理がなされた映像信号として出力される。
次に、データ操作回路3306の処理のフローチャートが図49に示す。ステップS3491では、画像パターン定義Mが線か否かをチェックする。画像パターン定義Mが線であれば、補間点の前後の値が同じ値であるため、その値をそのまま使用して補間を行う。したがって、ステップS3492において、前置ホールド又は後置ホールドの判定をホールド判定処理によって行い、ステップS3493において、data0,data1,data2,data3はホールド判定処理の結果のデータを出力信号として出力する。
ステップS3492のホールド判定処理のフローチャートを図50に示す。ステップS3501では、補間位置への距離Kが0.5よりも小さいか否かをチェックする。補間位置への距離Kが0.5よりも小さい場合は、ステップS3502で前置ホールドを行い、補間位置への距離Kが0.5以上の場合は、ステップS3503で後置ホールドを行うように制御する。
前置ホールドを行った場合の制御を示したのが、図53である。前置ホールドを行った場合、全ての画素の出力をBの位置の値として出力を行う(網掛けの部分)。
また、後置ホールドを行った場合の制御を示したのが、図54である。後置ホールドを行った場合、全ての画素の出力をCの位置の値として出力を行う(網掛けの部分)。
図49のステップS3494では、画像パターン定義Mがステップである否かをチェックする。画像パターン定義Mがステップであれば、補間点は補間点の前後の画素のどちらかに値が近いため、線形合成による補間演算を行うよりも、補間点の前後の値で置き換えた方がエッジの先鋭度を保つ事が出来る。したがって、ステップS3492で前置ホールド又は後置ホールドの判定をホールド判定処理によって行い、ステップS3493でdata0,data1,data2,data3はホールド判定処理の結果のデータを出力信号として出力する。
ステップS3495では、画像パターン定義Mが平坦であるか否かをチェックする。画像パターン定義Mが平坦であれば、周囲の画素も同じ値で高周波成分が少ないので、補間演算に使用する画素は少なくすることができる。したがって、少タップでの補間処理を行うようにするため、ステップS3496において、data0,data3の出力信号を0とし、data1の出力信号をB,data2の出力信号をCとして出力する。
画像パターン定義Mが上記のものに当てはまらなかった場合は、データ操作回路における特殊制御を行わない。そのため、ステップS3497において、data0の出力信号としてA、data1の出力信号としてB、data2の出力信号としてC、data3の出力信号としてDを出力する。
また、補間点と現画素との距離を考慮に入れた場合のフローチャートを、図51に示す。現画素との距離を考慮に入れることによって、補間画素との相関性をより考慮にいれた補間処理が可能となる。
ステップS3491では、画像パターン定義Mが線であるか否かをチェックする。画像パターン定義Mが線であれば、補間点の前後の値が同じ値であるため、その値をそのまま使用して補間を行う。したがって、ステップS3492で前置ホールド又は後置ホールドの判定をホールド判定処理によって行い、ステップS3493でdata0,data1,data2,data3はホールド判定処理の結果のデータを出力信号として出力する。ステップS3492のホールド判定処理は、上記の図50、図53及び図54の説明と同じである。
画像パターン定義Mが線でない場合は、ステップS3511で補間位置への距離Kによって距離判定処理を行う。距離判定処理のフローチャートを図52に示す。
距離判定処理では、ステップS3521及びS3522で補間位置への距離Kが次の式を満たしている場合に、ステップS3523で遠いと判定し、この式を満たしていない場合は、ステップS3524で近いと判定する。なお、この式のnは予め実験等により求められ、設定された値である。
K>n かつ K<1-n
図51のステップS3512では、距離判定処理で近いと判定されたか否かをチェックする。近いと判定された場合にはステップS3494に進み、遠いと判定された場合にはステップS3497に進む。ステップS3494では、画像パターン定義Mがステップであるか否かをチェックする。ステップでなければ、ステップS3495で画像パターン定義Mが平坦であるか否かをチェックする。
距離判定処理で近いと判定され、かつ、画像パターン定義Mがステップであれば、補間点は補間点の前後の画素のどちらかに値が近いため、線形合成による補間演算を行うよりも、補間点の前後の値で置き換えた方がエッジの先鋭度を保つ事が出来る。したがって、ステップS3492で前置ホールド又は後置ホールドの判定をホールド判定処理によって行い、ステップS3493でdata0,data1,data2,data3はホールド判定処理の結果のデータを出力信号として出力する。
距離判定処理で近いと判定され、かつ、画像パターン定義Mが平坦であれば、周囲の画素も同じ値で高周波成分が少ないので、補間演算に使用する画素は少なくすることができる。したがって、少タップでの補間処理を行うようにするため、ステップS3496でdata0,data3の出力信号を0とし、data1の出力信号をB,data2の出力信号をCとして出力する。
距離判定処理で近いと判定されなかった場合、及び、距離判定処理で近いと判定されたが画像パターン定義Mが上記のものに当てはまらなかった場合は、データ操作回路3306における特殊制御を行わない。そのため、ステップS3497でdata0の出力信号としてA、data1の出力信号としてB、data2の出力信号としてC、data3の出力信号としてDを出力する。
なお、ここでは帯域制限フィルタ1001とリサイズ回路1005を水平方向の処理のみで記述しているが、各回路内の遅延素子を1走査期間分のラインメモリとし、バッファメモリを1フィールド又はフレームとすることで、垂直方向にも同様の構成を適用できる。
(第12の実施形態)
本発明の第12の実施形態についての説明をする。図56は、本実施形態によるリサイズ処理を行う撮像装置のブロック図の例である。本実施形態が第11の実施形態と異なるのは、画像判別回路1002の出力に対して、バッファメモリ1007、判定回路1008が接続されたことである。
以下は、構成、制御の相違点のみ詳細に記述し、本実施形態が第11の実施形態と構成、制御を同じくする部分については、詳細の記述を省略する。
入力端子から入力された映像信号は、帯域制限フィルタ1001に入力されるとともに、画像判別回路1002に入力される。
画像判別回路1002は、マイコン1004から指示された、判別分析に必要な画像パターンの制御情報群Cをもとに判別分析を行い、着目画素を中心とした小区画画像における画像パターン定義Mとして画素単位に出力する。
バッファメモリ1007は、画像判別回路1002の出力である画像パターン定義Mを入力し、入力された画像パターン定義Mを順次遅延させて保持するとともに、保持されている画像パターン定義群Mxを出力する。
判定回路1008は、画像判別回路1002の出力である画像パターン定義M及びバッファメモリ1007からの画像パターン定義群Mxを入力する。そして、平均化フィルタ、メディアンフィルタなど、着目画素位置とその周囲の画像パターン判定結果から、空間的に特異な結果が排除、緩和されるような処理を行い、着目画素位置における新しい画像パターン定義M'を出力する。
帯域制限フィルタ1001には、マイコン1004から指示された、リサンプリング後の周波数帯域に映像信号を帯域制限するためのフィルタ係数Coefが入力される。帯域制限フィルタ1001は、フィルタ係数Coefに基づいて、入力信号に帯域制限を施して出力する。
帯域制限フィルタ1001の出力はリサイズ回路1005に入力される。リサイズ回路1005は、マイコン1004から指示された補間係数K、画素飛ばし制御信号skip、画素ホールド制御信号hold及び、判定回路1008の出力信号M'に従い、映像信号に対して補間処理を施し、リサンプリングする。その後、出力端子より出力する。
バッファメモリ1007の容量を大きくし、フレーム単位で複数の画像パターン定義Mを一時的に保持できるようにすれば、時間方向の特異点除去も可能となるため、動画像に本実施形態を適用した際にも、画像パターン定義M'が好適に得られる。
以上のように、第11及び第12の実施形態では、簡単な構成で、画像中の小区画における被写体の意味や特徴を判別することで、補間フィルタの参照画素構成を、より好適に制御することが実現できる。
また、周囲の小区画画像と比較して、判別結果が孤立している場合はそれを破棄し、周囲の判別結果から推定される判別結果に置き換えることで、判別結果の正当性を確保している。
また、時間的に前後のフレームとなる同一位置の小区画画像と比較して、判別結果が孤立している場合はそれを破棄し、時間的に前後の判別結果から推定される判別結果に置き換えることで、判別結果の正当性を確保している。
以上のように、バッファメモリ1201は、複数の画素からなる小区画画像Iを入力画像から切り出して記憶する。周波数解析手段(回路)1202は、前記バッファメモリ1201内の小区画画像Iを周波数解析し、前記小区画画像Iの空間周波数分布を出力する。周期性解析手段(回路)1203は、前記バッファメモリ1201内の小区画画像Iを周期性解析し、前記小区画画像Iの時間周期性分布を出力する。判別分析手段は、回路1204〜1210を有し、前記小区画画像Iの空間周波数分布及び時間周期性分布を基に、前記小区画画像Iの画像パターンの判別結果を出力する。
リサイズ手段(回路)1005は、前記入力画像を拡大又は縮小する。また、前記リサイズ手段1005は、前記小区画画像Iの画像パターンの判別結果に応じて、異なる参照画素を基に補間を行う。
前記リサイズ手段1005は、前記小区画画像Iの画像パターンの判別結果が輪郭成分を多く含むもの(線等)と判別されている場合には、前置ホールド又は後置ホールドによって補間点を生成する。
前記リサイズ手段1005は、前記小区画画像Iの画像パターンの判別結果が高周波成分を多く含むもの(ステップ等)と判別されている場合には、前置ホールド又は後置ホールドによって補間点を生成する。その際、前記リサイズ手段1005は、補間点の前後の画素と補間点との距離が近い場合に、補間点を前置ホールド又は後置ホールドによって生成する。
前記リサイズ手段1005は、前記小区画画像Iの画像パターンの判別結果が高周波成分をほとんど含まないもの(平坦等)と判別されている場合には、前記参照画素を少なくする。その際、前記リサイズ手段1005は、補間点の前後の画素と補間点との距離が近い場合に、前記参照画素を少なくする。
なお、上記実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。