(57)【要約】  学習データを利用する超解像度処理により画像を拡大するに当たり、各パッチから得られた基準値と各パッチの周辺画素の画素値との比較を行って、２値又は３値の比較コードを生成し、該比較コードから生成した２値パターンコード又は３値パターンコードに対応する高解像度成分のパッチを読み出す。高周波成分が含まれる場合には２値パターンコードを用い、そうでない場合には３値パターンコードを用いることとしても良い。係数データ記憶部の記憶容量を抑制して、高解像度感を向上させることができる。
2016002099.tif 000002
【特許請求の範囲】
【請求項１】
入力画像を線形補間により拡大して補間画像を生成する線形補間部と、
それぞれ前記補間画像の一部を成す複数のパッチの各々について、高解像度化を行って高解像度パッチを生成する高解像度パッチ生成部と、
前記入力画像のうちの前記補間画像の各パッチに対応する局所領域のパターンを判別し選択コードを出力するパターン判別部と、
前記選択コードの取り得る複数の値にそれぞれ対応する複数個の係数データを記憶する係数データ記憶部と、
前記係数データ記憶部に記憶されている複数個の係数データから前記選択コードに対応する係数データを読み出す係数データ読出し部とを有し、
前記高解像度パッチ生成部は、前記係数データ記憶部から読み出された係数データを用いて、前記高解像度パッチの生成を行い、
前記パターン判別部は、前記局所領域内の画素の画素値の平均値、又は該局所領域の中心に位置する画素の画素値を基準値とし、前記中心に位置する画素以外の複数の周辺画素の画素値と、前記基準値との比較を行い、該比較の結果を示す比較コードを生成する比較コード生成部と、
前記局所領域内の前記複数の周辺画素について生成された前記比較コードに基づいて前記選択コードを生成する選択コード生成部と
を有することを特徴とする画像拡大装置。
【請求項２】
前記比較コード生成部は、前記比較の結果を示す２値の比較コードを生成することを特徴とする請求項１に記載の画像拡大装置。
【請求項３】
前記比較コード生成部は、前記比較の結果を示す３値の比較コードを生成することを特徴とする請求項１に記載の画像拡大装置。
【請求項４】
前記比較コード生成部は、前記比較の結果を示す２値及び３値の比較コードを生成することを特徴とする請求項１に記載の画像拡大装置。
【請求項５】
前記比較コード生成部は、前記局所領域内の前記周辺画素の各々について、当該画素の画素値が、前記基準値以上か否かの判定、又は前記画素値が前記基準値以下か否かの判定を行って、該判定の結果に応じて前記２値の比較コードを生成することを特徴とする請求項２又は４に記載の画像拡大装置。
【請求項６】
前記選択コード生成部は、前記局所領域内の前記複数の周辺画素について生成された前記２値の比較コードを連結することで前記選択コードを生成することを特徴とする請求項５に記載の画像拡大装置。
【請求項７】
前記比較コード生成部は、前記局所領域内の前記周辺画素の各々について、当該画素の画素値が、前記基準値よりも大きくて且つその差の絶対値が予め定められた閾値以上か、前記画素値が前記基準値よりも小さくて且つその差の絶対値が前記閾値以上か、或いは、前記画素値と前記基準値との差の絶対値が前記閾値未満かの判定を行って、該判定結果に応じて前記３値の比較コードを生成することを特徴とする請求項３又は４に記載の画像拡大装置。
【請求項８】
前記選択コード生成部は、前記局所領域内の前記複数の周辺画素について生成された前記３値の比較コードを連結することで前記選択コードを生成することを特徴とする請求項７に記載の画像拡大装置。
【請求項９】
前記選択コード生成部は、前記局所領域内の前記複数の周辺画素について生成された前記２値の比較コード及び前記３値の比較コードに基づいて、前記選択コードを生成する
ことを特徴とする請求項４に記載の画像拡大装置。
【請求項１０】
前記選択コード生成部は、前記局所領域内の前記複数の周辺画素について生成された前記２値の比較コードに基づいて２値パターンコードを生成する２値パターンコード生成部と、
前記局所領域内の前記複数の周辺画素について生成された前記３値の比較コードに基づいて３値パターンコードを生成する３値パターンコード生成部と、
前記局所領域内の前記複数の周辺画素について生成された前記３値の比較コードに基づいて、当該局所領域内に高周波成分が含まれているか否かの判定を行う高周波成分検出部と、
前記高周波成分検出部により、高周波成分が含まれていると判定されたときは、前記２値パターンコードを選択し、それ以外のときは、前記３値パターンコードを選択して、前記選択コードとして出力するコード選択部とを有する
ことを特徴とする請求項９に記載の画像拡大装置。
【請求項１１】
前記３値パターンコード生成部は、前記局所領域内の前記局所領域内の前記複数の周辺画素について生成された前記３値の比較コードを連結することで、連結コードを生成するコード連結部と、
前記コード連結部で生成された連結コードを、取り得る値の範囲がより狭いコードに変換し、変換後のコードを前記３値パターンコードとして出力するコード変換部とを有する
ことを特徴とする請求項１０に記載の画像拡大装置。
【請求項１２】
前記コード変換部から出力される変換後のコードが取り得る値の数は、前記高周波成分が含まれないときに生成される前記連結コードが取り得る値の数と同じであり、すべての変換後のコードが取り得る値を昇順又は降順に並べたときに、隣接する値相互間の差が１であることを特徴とする請求項１１に記載の画像拡大装置。
【請求項１３】
前記高周波成分検出部は、前記局所領域内の中心に位置する画素については、当該画素の画素値と前記基準値との差の絶対値が前記閾値未満である場合の前記３値の比較コードが生成されているものとして扱い、
前記局所領域内において、それぞれ行方向又は列方向に整列した複数の画素から成る複数の群の各々に属する複数の画素の画素値を、それぞれの画素についての前記３値の比較コードを用いて比較し、
前記複数の群のいずれかにおいて、当該群に属する複数の画素のうち、中央に位置する画素の画素値が極大値又は極小値を取るとき、当該局所領域には、高周波成分が含まれていると判定することを特徴とする請求項１０、１１又は１２に記載の画像拡大装置。
【請求項１４】
前記比較コード生成部は、前記局所領域内の前記周辺画素の各々について、当該画素の画素値が前記基準値よりも小さくて且つその差の絶対値が前記閾値以上のときは、当該画素についての前記３値の比較コードを第１の値とし、当該画素の画素値と前記基準値との差の絶対値が前記閾値未満のときは、当該画素についての前記３値の比較コードを第２の値とし、当該画素の画素値が前記基準値よりも大きくて且つその差の絶対値が前記閾値以上のときは、当該画素についての前記３値の比較コードを第３の値とし、前記第１の値、前記第２の値、及び前記第３の値は、前記第１の値よりも前記第２の値が大きく、且つ前記第２の値よりも前記第３の値が大きいという条件、又は前記第１の値よりも前記第２の値が小さく、且つ前記第２の値よりも前記第３の値が小さいという条件のいずれかを満たし、前記高周波成分検出部は、前記局所領域内の中心に位置する画素については、当該画素についての前記３値の比較コードが前記第２の値を有するものとして扱い、
前記局所領域内において、前記複数の群の各々に属する複数の画素についての前記３値の比較コードを比較し、前記複数の群のいずれかにおいて、当該群に属する複数の画素のうち、中央に位置する画素についての前記３値の比較コードが極大値又は極小値を取るとき、当該局所領域には、高周波成分が含まれていると判定する
ことを特徴とする請求項１３に記載の画像拡大装置。
【請求項１５】
前記局所領域が矩形の領域であり、
前記高周波成分検出部は、前記局所領域の頂点に位置する画素と、その画素に対して行方向及び列方向に隣接する画素から成る複数の群の各々に属する複数の画素の画素値を、それぞれの画素についての前記３値の比較コードを用いて比較し、
前記複数の群のいずれかにおいて、当該群に属する複数の画素のうち、頂点に位置する画素の画素値が極大値又は極小値を取り、かつ前記隣接する画素のいずれについても、その画素値と、前記基準値との差の絶対値が前記閾値未満でないとき、当該局所領域には、高周波成分が含まれていると判定することを特徴とする請求項１０に記載の画像拡大装置。
【請求項１６】
前記局所領域が矩形状の領域であり、
前記高周波成分検出部は、前記局所領域内の中心に位置する画素については、当該画素の画素値と前記基準値との差の絶対値が前記閾値未満である場合の前記３値の比較コードが生成されているものとして扱い、
前記局所領域内において、それぞれ対角線方向に整列した複数の画素から成る複数の群の各々に属する複数の画素の画素値を、それぞれの画素についての前記３値の比較コードを用いて比較し、
前記複数の群のいずれかにおいて、当該群に属する複数の画素のうち、中央に位置する画素の画素値が極大値又は極小値を取り、且つ当該対角線上に位置している頂点の画素の比較コードが当該対角線上には位置しない２つの頂点の画素の比較コードのいずれとも異なるとき、当該局所領域には、高周波成分が含まれていると判定することを特徴とする請求項１０に記載の画像拡大装置。
【請求項１７】
前記３値パターンコード生成部は、
前記局所領域内の前記複数の周辺画素について生成された前記３値の比較コードを、予め定められた順に並べたときの、
前記３値の比較コードの出現パターンに応じた出現パターンコードを生成するとともに、
同一の値を有する前記３値の比較コードの連続数のシーケンスに応じた連続数コードのシーケンスを生成し、
前記出現パターンコードと、前記連続数コードのシーケンスとを連結することで、前記３値パターンコードを生成することを特徴とする請求項１０に記載の画像拡大装置。
【請求項１８】
前記３値パターンコード生成部は、
前記３値の比較コードの出現パターンから変換テーブルを用いてコード変換を行うことで、前記出現パターンコードを生成し、
同一の値を有する前記３値の比較コードの連続数から変換テーブルを用いてコード変換を行うことで、前記連続数コードのシーケンスを生成する
ことを特徴とする請求項１７に記載の画像拡大装置。
【請求項１９】
前記３値パターンコード生成部は、
前記同一の値を有する比較コードの連続数からコード変換を行う際に使用する変換テーブルとして、各局所領域の中で出現する比較コードの値の数によって、異なる変換テーブルを使用することを特徴とする請求項１８に記載の画像拡大装置。
【請求項２０】
前記高解像度パッチ生成部は、
前記補間画像の前記複数のパッチの各々の画素値から、低解像度の特徴成分と非特徴成分に分離する特徴成分分離部と、
前記低解像度の特徴成分を高解像度の特徴成分に変換する高解像度化変換部と、
前記高解像度の特徴成分と前記非特徴成分を合成して前記高解像度パッチを生成する特徴成分合成部とを有し、
前記高解像度化変換部は、前記係数データ読出し部で選択された前記係数データを用いて、前記低解像度の特徴成分を前記高解像度の特徴成分に変換する
ことを特徴とする請求項１から１９のいずれか一項に記載の画像拡大装置。
【請求項２１】
高解像度画像の各画素について前記高解像度パッチ生成部で生成された１つ以上の前記高解像度パッチの各々の生成において求められた当該画素の画素値を平均化することで出力画像における当該画素の画素値を生成するパッチ平均化部をさらに有することを特徴とする請求項１から２０のいずれか一項に記載の画像拡大装置。
【請求項２２】
監視を行う対象領域を撮影して画像を得る撮影部と、
前記撮影部により得られた画像に対し、拡大処理を行って拡大画像を出力する画像拡大装置とを有し、
前記画像拡大装置が請求項１から２１のいずれか一項に記載されたものであることを特徴とする監視カメラ。
【請求項２３】
入力画像を線形補間により拡大して補間画像を生成する線形補間ステップと、
それぞれ前記補間画像の一部を成す複数のパッチの各々について、高解像度化を行って高解像度パッチを生成する高解像度パッチ生成ステップと、
前記入力画像のうちの前記補間画像の各パッチに対応する局所領域のパターンを判別し選択コードを出力するパターン判別ステップと、
前記選択コードの取り得る複数の値にそれぞれ対応する複数個の係数データを記憶する係数データ記憶部に記憶されている複数個の係数データから前記選択コードに対応する係数データを読み出す係数データ読出しステップとを有し、
前記高解像度パッチ生成ステップは、前記係数データ記憶部から読み出された係数データを用いて、前記高解像度パッチの生成を行い、
前記パターン判別ステップは、前記局所領域内の画素の画素値の平均値、又は該局所領域の中心に位置する画素の画素値を基準値とし、前記中心に位置する画素以外の複数の周辺画素の画素値と、前記基準値との比較を行い、該比較の結果を示す比較コードを生成する比較コード生成ステップと、
前記局所領域内の前記複数の周辺画素について生成された前記比較コードに基づいて前記選択コードを生成する選択コード生成ステップとを有する
ことを特徴とする画像拡大方法。
【請求項２４】
請求項２３の画像拡大方法を各ステップの処理をコンピュータに実行させるためのプログラム。
【請求項２５】
請求項２４のプログラムを記録したコンピュータで読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力画像を拡大し、より高解像度の出力画像を生成する画像拡大装置及び画像拡大方法に関する。本発明はまた、上記の画像拡大装置を備えた監視カメラに関する。本発明はさらに、画像拡大装置又は方法をコンピュータで実現するためのプログラム、及び該プログラムを記録した記録媒体に関する。
【背景技術】
【０００２】
画像を電子的に拡大する場合、従来からバイリニア（Ｂｉｌｉｎｅａｒ）法、バイキュービック（Ｂｉｃｕｂｉｃ）法等による線形補間が行われてきた。これらの線形補間は、拡大率が大きくなるほど画像の高解像度感乃至鮮鋭感が低くなる傾向にある。これに対し、より鮮鋭感が高い高解像度画像を得る手法として、学習データベースを用いた超解像処理が知られている。この手法は、高解像度画像と低解像度画像の対応関係の事例を蓄積したデータベースを参照することにより、入力画像に存在しない高解像度成分を予測し、高解像度化を行うものである。【０００３】
例えば、特許文献１に記載の超解像処理では、補間された画像を分割することで形成されたパッチ毎に探索ベクトルを生成し、探索ベクトルに対する類似度が最も大きいインデックスベクトルに対応する高周波成分データを学習データベースから読み出して、高解像度のパッチを生成する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−０１８３９８号公報（段落００１４から００１７）
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に記載の超解像処理では、学習データベース（係数データベース）に大量のデータを蓄えなければならず、必要となる記憶容量及び回路規模が大きい。【０００６】
本発明は上記のような問題点を解決するためになされたものであり、必要となる記憶容量及び回路規模を小さくても、鮮鋭感が高い高解像度画像を得ることを可能にすることである。
【課題を解決するための手段】
【０００７】
本発明の画像拡大装置は、
入力画像を線形補間により拡大して補間画像を生成する線形補間部と、
それぞれ前記補間画像の一部を成す複数のパッチの各々について、高解像度化を行って高解像度パッチを生成する高解像度パッチ生成部と、
前記入力画像のうちの前記補間画像の各パッチに対応する局所領域のパターンを判別し選択コードを出力するパターン判別部と、
前記選択コードの取り得る複数の値にそれぞれ対応する複数個の係数データを記憶する係数データ記憶部と、
前記係数データ記憶部に記憶されている複数個の係数データから前記選択コードに対応する係数データを読み出す係数データ読出し部とを有し、
前記高解像度パッチ生成部は、前記係数データ記憶部から読み出された係数データを用いて、前記高解像度パッチの生成を行い、
前記パターン判別部は、
前記局所領域内の画素の画素値の平均値、又は該局所領域の中心に位置する画素の画素値を基準値とし、前記中心に位置する画素以外の複数の周辺画素の画素値と、前記基準値との比較を行い、該比較の結果を示す２値の比較コード及び３値の比較コードの少なくとも一方を生成する比較コード生成部と、
前記局所領域内の前記複数の周辺画素について生成された前記比較コードに基づいて前記選択コードを生成する選択コード生成部とを有する
ことを特徴とする。
【発明の効果】
【０００８】
本発明によれば、パッチに対応する局所領域内の画素の画素値を、該局所領域から得られた基準値と比較することで比較コードを生成し、該比較コードに基づいて生成された選択コードで、係数データ記憶部から係数データを選択するので、係数データ記憶部に記憶する係数データの量を少なくすることができ、しかも、鮮鋭感が高い高解像度画像を得ることができる。
【図面の簡単な説明】
【０００９】
【図１】監視システムの構成例を示すブロック図である。
【図２】図１の監視カメラの構成例を示すブロック図である。
【図３】図１のネットワークレコーダの構成例を示すブロック図である。
【図４】本発明の実施の形態１の画像拡大装置の構成を示すブロック図である。
【図５】（ａ）及び（ｂ）は、入力画像及び入力画像の線形補間による拡大で得られる補間画像を示す図である。
【図６】実施の形態１の画像拡大装置で用いられる高解像度パッチ生成部の構成を示すブロック図である。
【図７】補間画像におけるパッチの配列及び各パッチに含まれる画素を示す図である。
【図８】（ａ）及び（ｂ）は補間画像の各パッチにおける画素の配列と、各画素についての差分値による列ベクトルの構成要素との対応関係を示す図である。
【図９】高解像度拡大画像におけるパッチの配列及び各パッチに含まれる画素を示す図である。
【図１０】変換により得られた高解像度画像の特徴量による列ベクトルの構成要素に対応する高解像度画像の画素の配列を示す図である。
【図１１】係数データ記憶部５７が記憶する係数データの一例を示す図である。
【図１２】実施の形態１の画像拡大装置で用いられるパターン判別部の構成を示すブロック図である。
【図１３】入力画像における局所領域の配列及び各局所領域に含まれる画素を示す図である。
【図１４】（ａ）は、入力画像Ｄｉｎの各パッチの画素の画素値を、それぞれの画素の位置に示す図、（ｂ）は、比較コード生成部への、各パッチの画素の画素値ＩＮ（ｓ,ｔ）の入力順序を示す図である。
【図１５】（ａ）〜（ｃ）は、実施の形態１における、一つのパッチについての２値パターンコード生成の例を示す図である。
【図１６】実施の形態１の画像拡大装置における処理の手順を示すフロー図である。
【図１７】図１６のパターン判別ステップの処理の詳細を示すフロー図である。
【図１８】係数データの生成に用いられる装置（係数データ生成装置）を示すブロック図である。
【図１９】（ａ）〜（ｃ）は、教師画像、教師画像を縮小することで得られる縮小画像、縮小画像を線形補間により拡大することで得られる補間画像を示す図である。
【図２０】パッチペアの分類の例を示す図である。
【図２１】行数がＮＬ×ＮＬに等しく、列数がグループ内のパッチの数に等しい、係数の行列を示す図である。
【図２２】行数がＮＨ×ＮＨに等しく、列数がグループ内のパッチの数に等しい、係数の行列を示す図である。
【図２３】補間画像のＮＬ×ＮＬ個の画素で構成されるパッチと、高解像度画像のＮＨ×ＮＨ個の画素で構成されるパッチの関係を示す図である。
【図２４】回帰演算で求められるＮＬ×ＮＬ行、ＮＬ×ＮＬ列の係数の行列Ｍｓのうち、ＮＨ×ＮＨ個の画素の算出に用いられる係数を示す図である。
【図２５】本発明の実施の形態２の画像拡大装置の構成を示すブロック図である。
【図２６】実施の形態２の画像拡大装置で用いられるパターン判別部の構成を示すブロック図である。
【図２７】（ａ）〜（ｃ）は、実施の形態２における、一つのパッチについての３値パターンコード生成の例を示す図である。
【図２８】実施の形態２において、図１６のパターン判別ステップで行われる処理の詳細を示すフローチャートである。
【図２９】本発明の実施の形態３の画像拡大装置の構成を示すブロック図である。
【図３０】実施の形態３の画像拡大装置で用いられるパターン判別部の構成を示すブロック図である。
【図３１】（ａ）〜（ｄ）は、実施の形態３における、一つのパッチについての３値パターンコード生成の例を示す図である。
【図３２】実施の形態３において、図１６のパターン判別ステップで行われる処理の一部の詳細を示すフローチャートである。
【図３３】実施の形態３において、図１６のパターン判別ステップで行われる処理の他の一部の詳細を示すフローチャートである。
【図３４】実施の形態３において、図１６のパターン判別ステップで行われる処理の他の一部の詳細を示すフローチャートである。
【図３５】（ａ）及び（ｂ）は、行方向又は列方向に並んだ画素から成る画素群の構成を示す図である。
【図３６】（ａ）〜（ｃ）は、図３０のコード変換部の入力と出力の関係を示す図、（ｄ）は、各パッチの周辺画素に付される符号を示す図、（ｅ）は、周辺画素の画素値に付される符号を示す図である。
【図３７】（ａ）及び（ｂ）は、実施の形態３の問題を説明するための、３値比較コードの配列の一例を示す図である。
【図３８】（ａ）及び（ｂ）は、実施の形態３の問題を説明するための、３値比較コードの配列の他の例を示す図である。
【図３９】本発明の実施の形態４の画像拡大装置の構成を示すブロック図である。
【図４０】実施の形態４の画像拡大装置で用いられるパターン判別部の構成を示すブロック図である。
【図４１】図４０の３値パターンコード生成部の構成例を示すブロック図である。
【図４２】高周波成分検出の一つの条件を説明するための、局所領域における画素の配列を示す図である。
【図４３】高周波成分検出の他の条件を説明するための、局所領域における画素の配列を示す図である。
【図４４】実施の形態４において、図１６のパターン判別ステップで行われる処理の一部の詳細を示すフローチャートである。
【図４５】実施の形態４において、図１６のパターン判別ステップで行われる処理の他の一部の詳細を示すフローチャートである。
【図４６】実施の形態４において、図１６のパターン判別ステップで行われる処理の他の一部の詳細を示すフローチャートである。
【図４７】比較コードの出現パターンと、出現パターンコードとの関係を示す図である。
【図４８】（ａ）及び（ｂ）は、比較コードの配列の一例と、それに対して生成される３値パターンコードを示す図である。
【図４９】（ａ）及び（ｂ）は、比較コードの配列の他の例と、それに対して生成される３値パターンコードを示す図である。
【図５０】（ａ）及び（ｂ）は、同一比較コードの連続数と、連続数コードとの関係を示す図である。
【発明を実施するための形態】
【００１０】
実施の形態１．
図１は、本発明の実施の形態１に係る監視カメラを含む監視システムの構成例を示している。
【００１１】
監視システムは、監視カメラ１０とネットワークレコーダ２０とを含む。監視カメラ１０及びネットワークレコーダ２０は、ネットワーク３０を介して互いに接続されている。監視カメラ１０により監視対象領域を撮影することで得られた画像は、ネットワーク３０を通して送信され、ネットワークレコーダ２０に記録され、モニタ４０で表示される。
【００１２】
図２は、図１の監視カメラ１０の構成例を示している。図示の監視カメラ１０は、撮影部１１、画像入力部１２、画像処理部１３、画像スケーラ１４、画像符号化部１５、及び回線Ｉ／Ｆ部１６を有する。
【００１３】
撮影部１１は、監視対象領域を撮影して画像を得るものである。撮影部１１により得られた画像は画像入力部１２に入力される。
画像入力部１２は撮影部１１からの入力画像に対してＡ／Ｄ変換などの処理を施して画像処理部１３に出力し、画像処理部１３は画像入力部１２から供給される画像に対して画像処理を行って処理画像Ｄ１３を得る。
【００１４】
画像処理部１３が行う画像処理としては、ガンマ補正等の信号レベル補正、色補正、ホワイトバランス処理、ノイズリダクション処理、フリッカ補正、増感処理、画像合成処理、エッジ強調、レンダリング処理等が挙げられる。画像処理部１３は、上記の処理のうちの一つ又は複数の処理を組合せて画像処理を行う。また、画像処理部１３が、上記以外の周知の画像処理を、単独で、或いは上記の処理と組合せて行うようにしてもよい。
【００１５】
画像スケーラ１４は、処理画像Ｄ１３に対し、超解像処理による拡大処理を行って、高解像度画像Ｄ１４を生成し、画像符号化部１５に出力する。
【００１６】
画像符号化部１５は、高解像度画像Ｄ１４に対し、ＪＰＥＧ、Ｈ．２６４、ＭＰＥＧ−２、ＭＰＥＧ−４等の画像符号化方式により画像データの圧縮を行い、回線Ｉ／Ｆ部１６に映像ストリームＤ１５を出力する。
回線Ｉ／Ｆ部１６は、映像ストリームＤ１５に音声データ等他のデータを多重し、パケット化等の処理を行って、多重ストリームＤＳとしてネットワーク３０に送出する。
【００１７】
図３は、図１のネットワークレコーダ２０の構成例を示している。図示のネットワークレコーダ２０は、回線Ｉ／Ｆ部２１、記録再生部２２、記憶装置２３、画像復号部２４、画像スケーラ２５、及び表示画像生成部２６を有する。
【００１８】
回線Ｉ／Ｆ部２１は、ネットワーク３０を介して受信した多重ストリームＤＳから映像ストリーム、音声データ等を分離し、記録再生部２２に出力する。
【００１９】
記録再生部２２は、分離されたデータを記憶装置２３に記録する。
記録再生部２２はまた、回線Ｉ／Ｆ部２１から入力した映像ストリーム又は記憶装置２３から読み出した映像ストリームを画像復号部２４に出力する。
画像復号部２４は、ＪＰＥＧ、Ｈ．２６４、ＭＰＥＧ−２、ＭＰＥＧ−４等の画像符号化方式により圧縮された画像データの伸張を行い、復号画像Ｄ２４を画像スケーラ２５に出力する。
【００２０】
画像スケーラ２５は、復号画像Ｄ２４に対し、超解像処理による拡大処理を行って、高解像度画像Ｄ２５を生成し、表示画像生成部２６に出力する。
【００２１】
表示画像生成部２６は、画像データをモニタ４０で表示可能な形式に変換し、モニタ４０に出力する。
モニタ４０は、表示画像生成部２６からの画像データに応じて画像を表示する。
【００２２】
図１の監視システムにおいて、監視カメラ１０の画像スケーラ１４及びネットワークレコーダ２０の画像スケーラ２５の双方で、画像の拡大を行うこととしてもよく、一方のみで画像の拡大を行うこととしてもよい。例えば、ネットワークレコーダ２０が画像スケーラ２５を備える場合には、監視カメラ１０の画像スケーラ１４では画像拡大を行わず、ネットワークレコーダ２０の画像スケーラ２５で画像の拡大を行うこととし、ネットワークレコーダ２０が画像スケーラ２５を備えない場合には、監視カメラ１０の画像スケーラ１４で画像の拡大を行うこととしても良い。
【００２３】
図４は、図２の画像スケーラ１４及び図３の画像スケーラ２５として用い得る画像拡大装置５０を示している。画像拡大装置５０が画像スケーラ１４として用いられる場合には、処理画像Ｄ１３が入力画像Ｄｉｎとして供給され、出力画像Ｄｏｕｔが高解像度画像Ｄ１４として出力される。
画像拡大装置５０が画像スケーラ２５として用いられる場合には、復号画像Ｄ２４が入力画像Ｄｉｎとして供給され、出力画像Ｄｏｕｔが高解像度画像Ｄ２５として出力される。
また、以下に詳述する例では画像拡大装置５０による拡大率は水平方向及び垂直方向のいずれにおいても「２」である。
【００２４】
以下では、画像の輝度成分に対して超解像処理による拡大処理を行う場合について説明する。この場合、処理画像Ｄ１３又は復号画像Ｄ２４の輝度成分を入力画像Ｄｉｎとし、これに対して超解像処理による拡大処理を行う。しかしながら、本発明はこれに限定されず、色差成分に対しても同様の処理を行うことができる。また、画像が例えば赤、緑、青の色成分毎のデータで表されるものである場合、色成分ごとに超解像処理による拡大を行うこととしても良い。
【００２５】
図４に示される画像拡大装置５０は、線形補間部５２と、高解像度パッチ生成部５４と、パッチ平均化部５５と、パターン判別部５６と、係数データ記憶部５７と、係数データ読出し部５８とを有する。
【００２６】
線形補間部５２は、入力画像Ｄｉｎを線形補間により拡大して低解像度の拡大画像、即ち補間画像Ｄ５２を生成する。補間画像Ｄ５２は、後述の高解像度画像との対比で「低解像度拡大画像」とも呼ばれる。
【００２７】
高解像度パッチ生成部５４は、それぞれ補間画像Ｄ５２の一部を成す複数のパッチ（補間画像パッチ）を切出し、各パッチについて高解像度化を行って、対応する高解像度パッチを生成する。高解像度のパッチの生成により、パッチを構成する画素の画素値が求められる。
【００２８】
パッチ平均化部５５は、高解像度画像の各画素について１つ以上の前記高解像度パッチの各々の生成によって求められた当該画素の画素値を平均化することで出力画像における当該画素の画素値を生成する。
【００２９】
パターン判別部５６は、入力画像Ｄｉｎのうちの補間画像Ｄ５２の各パッチに対応する局所領域の特徴を判別し、判別結果に基づいて選択コードＤ５６を生成する。
本実施の形態のパターン判別部５６は、局所領域内の画素の画素値の平均値、又は該局所領域の中心に位置する画素の画素値を基準値とし、上記中心に位置する画素以外の周辺画素の画素値と、上記基準値との比較を行い、比較の結果に基づいて選択コードを生成する。
【００３０】
係数データ記憶部５７は、複数の互いに異なるパターンにそれぞれ対応する複数個の係数データを記憶する。各係数データは、１組の係数を表すデータを含み、その意味で係数組データとも呼び得る。
【００３１】
係数データ読出し部５８は、係数データ記憶部５７に記憶されている複数個の係数データから選択コードに対応する係数データを読み出して、選択された係数データとして出力する。
【００３２】
高解像度パッチ生成部５４は、係数データ記憶部５７から読み出された係数データを用いて、高解像度パッチの生成を行う。
【００３３】
以下、各部の動作をより詳しく説明する。
線形補間部５２は、例えば図５（ａ）に示される入力画像Ｄｉｎを線形補間によって拡大し、図５（ｂ）に示される補間画像Ｄ５２を生成する。線形補間の拡大率は、画像拡大装置５０による拡大率と同じであり、例えば水平方向及び垂直方向の各々について「２」である。図５（ａ）及び（ｂ）において、丸印の各々が１つの画素を表す。画像の補間は、例えばバイキュービック法により行われる。図５（ｂ）の補間画像Ｄ５２の画素のうち、黒丸で示される画素は、図５（ａ）に示される入力画像Ｄｉｎの画素に対応する位置にある画素である。
【００３４】
入力画像Ｄｉｎ内の位置は座標（ｐ，ｑ）で表される。ｐは、入力画像Ｄｉｎにおいて、水平方向における１画素ピッチ（隣接する画素間の間隔）を単位とする値であり、ｑは、入力画像Ｄｉｎにおいて、垂直方向における１画素ピッチを単位とする値であり、各画素の位置において、ｐ、ｑは整数値である。
【００３５】
補間画像Ｄ５２内の位置は、座標（ｘ，ｙ）で表される。ｘは、補間画像Ｄ５２において、水平方向における１画素ピッチを単位とする値であり、ｙは、補間画像Ｄ５２において、垂直方向における１画素ピッチを単位とする値であり、各画素の位置において、ｘ、ｙは整数値である。
【００３６】
例えば入力画像Ｄｉｎにおいて左上隅の画素の座標を（ｐ，ｑ）＝（１、１）とし、補間画像Ｄ５２において左上隅の画素の座標を（ｘ，ｙ）＝（１，１）とする場合、
ｘ＝２ｐ−１
ｙ＝２ｑ−１
の関係がある。
さらに、入力画像の右下隅の画素の座標を（Ｐ，Ｑ）で表すとき、補間画像Ｄ５２の右下隅の画素の座標は（Ｘ，Ｙ）＝（２Ｐ−１，２Ｑ−１）で表される。
【００３７】
高解像度パッチ生成部５４は、補間画像Ｄ５２から、それぞれ補間画像Ｄ５２の一部を成す複数のパッチ（補間画像パッチ）ＬＰｃを切出し、切出したパッチＬＰｃの各々について高解像度化を行って、対応する高解像度パッチのデータを出力する。高解像度のパッチのデータには、パッチを構成する画素の画素値を表すデータが含まれる。
【００３８】
複数の高解像度パッチの組合せにより高解像度画像Ｄ５４が構成される。高解像度画像Ｄ５４は、補間画像Ｄ５２と水平方向及び垂直方向の画素数が同じであり、高解像度画像Ｄ５４における画素の配置は、図５（ｂ）に示される補間画像Ｄ５２における画素の配置と同じである。
【００３９】
高解像度パッチ生成部５４は図６に示すように、特徴成分分離部６２と、高解像度化変換部６４と、特徴成分合成部６６とを有する。
【００４０】
特徴成分分離部６２は、補間画像Ｄ５２から、それぞれ補間画像Ｄ５２の一部を成す複数のパッチ（補間画像パッチ）ＬＰｃを切出し、切出したパッチの各々の画素値を、補間画像パッチの特徴成分（低解像度の特徴成分）Ｄ６２Ｈと補間画像パッチの特徴成分（低解像度の非特徴成分）Ｄ６２Ｌに分離する。
【００４１】
補間画像Ｄ５２からのパッチの切出しは、補間画像Ｄ５２の各画素が、該切出しにより形成される複数のパッチＬＰｃの少なくとも一つに含まれるように、さらに該切出しにより形成されるパッチが互いに重なり合うように行われる。
各パッチＬＰｃは、例えば、図７に示すように、ＮＬ×ＮＬ個の画素から成る矩形の領域である。ＮＬは例えば５であり、水平方向におけるパッチのピッチ（パッチの中心間の距離）ＬＰＰｈ、及び垂直方向におけるパッチのピッチ（パッチの中心間の距離）ＬＰＰｖは、ともに２画素ピッチであり、従って水平方向に隣接し合うパッチ間には水平方向に３画素の重なりがあり、垂直方向に隣接し合うパッチ間には垂直方向に３画素の重なりがある。
【００４２】
特徴成分分離部６２は、補間画像Ｄ５２の各パッチＬＰｃについて、当該パッチ内のＮＬ×ＮＬ個の画素の平均値ｌＭｅａｎを求めて非特徴成分Ｄ６２Ｌとして出力し、各画素の画素値から上記平均値ｌＭｅａｎを減算することで得られるＮＬ×ＮＬ個の差分値を特徴量とし、この特徴量を予め定められた順番で並べることで得られる列ベクトルを、特徴成分Ｄ６２Ｈとして出力する。
【００４３】
例えば、図８（ａ）に示されるように、画素Ｐ（１）〜Ｐ（２５）を、その番号（括弧内の数値）で示す順序で取り出して、それらの差分値ｄｌ１〜ｄｌ２５を特徴量として、図８（ｂ）に示すように、上から順に並べることで列ベクトルを形成する。
特徴成分Ｄ６２Ｈは各画素の画素値から平均値を減算することで得られるものであるので、当該パッチの高周波成分であり、非特徴成分Ｄ６２Ｌは当該パッチの低周波成分であると言える。
【００４４】
高解像度化変換部６４は、係数データ読出し部５８で選択された係数データＤ５８を用いて低解像度の特徴成分Ｄ６２Ｈを高解像度の特徴成分Ｄ６４Ｈに変換する。この変換は、補間画像（低解像度拡大画像）のパッチの特徴成分から、高解像度画像の対応するパッチの特徴成分への変換である。ここで「位置」に関して「対応する」とは、高解像度画像のパッチの中心の画素位置が、補間画像のパッチの中心の画素位置と同じであること、言い換えると、高解像度画像を補間画像にそれらの周縁が互いに一致するように重ねた場合に高解像度画像のパッチの中心の画素位置が、補間画像のパッチの中心の画素位置と一致する位置を意味する。互いに対応する位置に中心を有する補間画像のパッチと高解像度画像のパッチとでパッチペアが構成される。
【００４５】
高解像度画像におけるパッチも互いに重なり合うように形成される。
例えば、図９に示すように、各パッチＨＰｃは、例えばＮＨ×ＮＨ個の画素から成る矩形の領域である。ＮＨは例えば３であり、水平方向におけるパッチのピッチＨＰＰｈ、垂直方向ともにおけるパッチのピッチＨＰＰｖはともに２画素であり、従って水平方向に隣接し合うパッチ間には水平方向に１画素の重なりがあり、垂直方向に隣接し合うパッチ間には垂直方向に１画素の重なりがある。
【００４６】
係数データＤ５８は補間画像の各パッチＬＰｃの特徴部分値Ｄ６２Ｈと、高解像度画像の対応するパッチＨＰｃの特徴成分値Ｄ６４Ｈの関係を表すものであり、係数データ読出し部５８から供給される。
【００４７】
ここで、補間画像の各パッチの特徴成分Ｄ６２ＨをＮＬ×ＮＬ個の値（補間画像の各パッチを構成する画素の特徴成分値）ｄｌ１〜ｄｌＮＬ×ＮＬをもつ列ベクトルｎｌｐ、高解像度画像の対応するパッチの特徴成分Ｄ６４ＨをＮＨ×ＮＨ個の値（高解像度画像の対応するパッチを構成する画素の特徴成分値）ｄｈ１〜ｄｈＮＨ×ＮＨをもつ列ベクトルｎｈｐ、係数データＤ５８をＮＨ×ＮＨ行ＮＬ×ＮＬ列の要素（係数）から成る行列Ｍで定義すると、高解像度化変換部６４による変換は次式（１）で表される。
【００４８】
【数１】
2016002099.tif 000003
【００４９】
ＮＬ＝５、ＮＨ＝３の場合について式（１）を、行列を用いて書き直すと下記の式（２）の如くとなる。
【数２】
2016002099.tif 000004
【００５０】
式（２）の左辺は、例えば、図１０に示される画素Ｑ（１）〜Ｑ（９）を、その番号（括弧内の数値）で示す順序で取り出して、それらの差分値ｄｈ１〜ｄｈ９を上から順に並べたものである。但し、図１０に示される画素Ｑ（１）〜Ｑ（９）は、それぞれ、図８（ａ）に示される画素のうち、中央の３×３の位置、即ち、Ｐ（７）、Ｐ（８）、Ｐ（９）、Ｐ（１２）、Ｐ（１３）、Ｐ（１４）、Ｐ（１７）、Ｐ（１８）、Ｐ（１９）に対応する位置にあるものである。
【００５１】
式（１）及び式（２）は、高解像度の特徴成分Ｄ６４Ｈの各画素の値が、低解像度の特徴成分Ｄ６２ＨのＮＬ×ＮＬ個の全ての画素に対する重み付け加算により与えられることを示している。
行列Ｍは、係数データ読出し部５８で選択された係数データＤ５８で表される係数から成る行列である。係数データ読出し部５８は係数データ記憶部５７に記憶された複数個の係数データＤ５７のうちの１つの係数データを選択して、高解像度化変換部６４に供給する。係数データ記憶部５７に記憶されている複数個の係数データの各々は、教師画像から生成された補間画像の特徴成分Ｄ６２Ｈと高解像度画像の特徴成分Ｄ６４Ｈのペアの関係を表すものであり、その生成方法については後述する。
【００５２】
なお、低解像度の特徴成分Ｄ６２Ｈから高解像度の特徴成分Ｄ６４Ｈへの変換は非線形であってもよい。その場合、係数データとしては非線形関数の係数を与えるものを用いる。
【００５３】
特徴成分合成部６６は、高解像度の特徴成分Ｄ６４Ｈと非特徴成分Ｄ６２Ｌを合成して高解像度パッチＨＰｃを生成する。
【００５４】
特徴成分合成部６６は、例えば、補間画像のパッチの画素の平均値ｌＭｅａｎ（＝Ｄ６２Ｌ）を、高解像度の特徴成分Ｄ６４Ｈの各成分（各画素についての値）ｄｈ１〜ｄｈ９に加算する。
【００５５】
特徴成分合成部６６による合成は次式（３）により表される。
【数３】
2016002099.tif 000005
【００５６】
式（３）で、ｈｐは、高解像度パッチＨＰｃを構成する画素の画素値を表すＮＨ×ＮＨ個の値ｈ１〜ｈＮＨ×ＮＨをもつ列ベクトル、ｎｈｐは、高解像度パッチの特徴成分Ｄ６４Ｈを構成するＮＨ×ＮＨ個の画素の特徴成分値ｄｈ１〜ｄｈＮＨ×ＮＨをもつ列ベクトル、ｌＭｅａｎは、非特徴成分Ｄ６２Ｌを表すスカラー値、ｃは、高解像度の特徴成分（高周波成分）に対するゲインを調整するスカラー値（定数）である。
ＮＨ＝３の場合について、式（３）を、行列を用いて書き直すと下記の式（４）の如くとなる。
【００５７】
【数４】
2016002099.tif 000006
【００５８】
式（３）又は式（４）において、ｃ＝１とすることによって学習通りの推定結果を得ることができる。
ｃ＞１とすることによって、高解像度の特徴成分（高周波成分）を意図的に強調（エンハンス）して出力画像の解像感を高めることができる。
式（３）或いは式（４）による演算は、高解像度パッチの各々について行われる。
【００５９】
先にも述べたように、パッチは互いに重なりあうように形成されるので、高解像度画像の画素の中には複数のパッチに属するものがある。図９の例では、高解像度画像の画素のうち、各パッチの中心に位置する画素Ｐｘｃは、１つのパッチＨＰｃに属し、該中心画素Ｐｘｃに対し水平方向に隣接する画素Ｐｘａ及び垂直方向に隣接する画素Ｐｘｂは、２つのパッチＨＰｃに属し、中心画素Ｐｘｃに対し斜め方向に隣接する画素Ｐｘｄは４つのパッチＨＰｃに属する。
２つのパッチに属する画素については、式（３）或いは式（４）による演算の結果（各パッチについての演算で、当該画素について求められた画素値）が２つ得られ、４つのパッチに属する画素については、式（３）或いは式（４）による演算の結果が４つ得られる。１つのパッチにのみ属する画素については、式（３）或いは式（４）による演算の結果が１つだけ得られる。
【００６０】
パッチ平均化部５５は、高解像度画像の各画素について１つ以上の高解像度パッチの値（１つ以上の前記高解像度パッチの各々の生成において求められた当該画素の画素値）を平均化することで出力画像Ｄｏｕｔの上記画素の画素値Ｄｏｕｔ（ｘ，ｙ）を生成する。即ち、２つのパッチに属する画素については、２つのパッチの値を平均化し、４つのパッチに属する画素については、４つのパッチの値を平均化し、１つのパッチにしか属さない画素については１つのパッチの値をそのまま出力する。
【００６１】
先にも述べたように、高解像度画像Ｄ５４における画素の配置は、図５（ｂ）に示される補間画像Ｄ５２における画素の配置と同じであり、高解像度画像Ｄ５４の各画素の位置は座標（ｘ，ｙ）で表され、当該画素の画素値は、Ｄ５４（ｘ，ｙ）で表される。
一方、高解像度パッチＨＰｃ内における各画素の位置は、該パッチの中心画素に対するオフセット座標（ｕ，ｖ）（但し、ｕ＝−１〜１、ｖ＝−１〜１）により表される。
高解像度画像Ｄ５４における座標（ｘ，ｙ）と、高解像度パッチＨＰｃにおけるオフセット座標（ｕ，ｖ）との間には、下記の関係がある。
（ｘ,ｙ）＝（ｘｃ＋ｕ,ｙｃ＋ｖ）
但し、（ｘｃ，ｙｃ）は、高解像度パッチＨＰｃの中心画素の、高解像度画像Ｄ５４における座標である。
【００６２】
そこで、高解像度パッチ生成部５４により生成された、高解像度画像Ｄ５４の座標（ｘｃ，ｙｃ）の位置にある画素を中心とするパッチＨＰｃ内の座標（ｕ，ｖ）の画素の画素値が、高解像度画像Ｄ５４の座標（ｘ,ｙ）＝（ｘｃ＋ｕ，ｖｃ＋ｖ）の画素の画素値として取得される。
【００６３】
パッチ平均化部５５は、高解像度画像Ｄ５４の座標（ｘ,ｙ）の画素について、１つ以上の高解像度パッチＨＰｃから得られた画素値Ｄ５４（ｘ,ｙ）を平均化することで出力画像Ｄｏｕｔの画素値Ｄｏｕｔ（ｘ，ｙ）を算出する。
【００６４】
以上のようにして求められた画素値Ｄｏｕｔ（ｘ，ｙ）を有する画素の集合により出力画像Ｄｏｕｔが形成される。
高解像度画像Ｄ５４と同様に、出力画像Ｄｏｕｔも、補間画像Ｄ５２と水平方向及び垂直方向の画素数が同じであり、出力画像Ｄｏｕｔにおける各画素の配置は、図５（ｂ）に示される補間画像Ｄ５２における各画素の配置と同じである。
【００６５】
係数データ記憶部５７は、補間画像の特徴成分と高解像度画像の特徴成分との対応関係を表す複数個の係数データを記憶する。係数データは、画像内の各部における画素値の変化のパターンに対応して定められている。画像の各部分がどのようなパターンを有するかは、パターン判別部５６により判定される。
【００６６】
図１１は、係数データ記憶部５７が記憶する複数個の係数データＤ５７を表す。図１１に示す例では、各係数データＤ５７で表される係数の組は、式（１）或いは式（２）で用いたＮＨ×ＮＨ行ＮＬ×ＮＬ列の行列Ｍを構成するものであり、選択コードＤ５６の値０、１、…、ＮＰ−１（ＮＰは選択コードが取り得る値の数）の各々に対して定義されている。そして、選択コードＤ５６を係数データ記憶部５７に入力すると、入力された選択コードＤ５６の値に対応する（予め対応付けられた）係数データが選択される。
【００６７】
パターン判別部５６は、入力画像Ｄｉｎのうちの補間画像Ｄ５２の各パッチに対応する局所領域の特徴を判別し、判別結果に基づいて選択コードＤ５６を生成する。
【００６８】
図４のパターン判別部５６は、図１２に示すように、局所領域抽出部７１と、領域内平均算出部７２と、比較コード生成部７３と、選択コード生成部７４とを有する。
図示の例では、選択コード生成部７４は、２値パターンコード生成部７５で構成されている。
【００６９】
局所領域抽出部７１は、入力画像Ｄｉｎから、上記の補間画像のパッチＬＰｃに対応する部分を局所領域として切出し、切出した局所領域内の画素の画素値を表すデータを領域内平均算出部７２及び比較コード生成部７３に供給する。
図１３に示すように、局所領域ＡＰｃは例えば、ＮＡ×ＮＡ個の画素から成る矩形の領域、従って正方形の領域である。ＮＡは例えば３であり、水平方向における局所領域のピッチ（局所領域の中心間の距離）ＡＰＰｈ、及び垂直方向における局所領域のピッチ（局所領域の中心間の距離）ＡＰＰｖは、ともに１画素ピッチである。
切出された局所領域ＡＰｃ内における画素の位置を、当該局所領域の中心画素に対するオフセット座標（ｓ，ｔ）（但し、ｓ＝−１〜１、ｔ＝−１〜１）で表し、その画素値をＩＮ（ｓ，ｔ）で表す。
【００７０】
領域内平均算出部７２は、局所領域抽出部７１から供給される各局所領域ＡＰｃの画素の画素値ＩＮ（ｓ，ｔ）の平均値ＡＶＥを求める。
平均ＡＶＥは、各局所領域内のすべての画素の画素値の単純平均であってもよいし、加重平均、例えば、中心画素に対する重み付けが大きくなるようにした加重平均であってもよい。加重平均を求める演算の例を、次式（５）に示す。
【００７１】
【数５】
2016002099.tif 000007
【００７２】
比較コード生成部７３は、領域内平均算出部７２から出力された各局所領域内の画素の画素値の平均値ＡＶＥと、局所領域抽出部７１から出力された当該局所領域内の中心に位置する画素以外の画素（周辺画素）の画素値ＩＮ（ｓ，ｔ）との大小比較を行い、各周辺画素についての比較結果を示す２値の比較コード（２値比較コード）Ｄ（ｓ,ｔ）を出力する。
例えば、画素値ＩＮ（ｓ，ｔ）が、平均値ＡＶＥ未満の場合は比較コードＤ（ｓ，ｔ）を「０ｂ」とし、画素値ＩＮ（ｓ，ｔ）が平均値ＡＶＥ以上の場合は比較コードＤ（ｓ，ｔ）を「１ｂ」として出力する。
上記の比較コードＤ（ｓ,ｔ）の生成処理は次式（６）で表される。
【００７３】
【数６】
2016002099.tif 000008
「０ｂ」、「１ｂ」はそれぞれ十進数の「０」、「１」に相当する。
【００７４】
なお、画素値ＩＮ（ｓ,ｔ）が平均値ＡＶＥと等しい場合、上記の例では比較コードＤ（ｓ，ｔ）を「０ｂ」としているが、この場合に比較コードＤ（ｓ，ｔ）を「１ｂ」としても良い。要するに、比較コード生成部７３は、画素値ＩＮ（ｓ，ｔ）が平均値ＡＶＥ以上か否かの判定、及び画素値ＩＮ（ｓ，ｔ）が平均値ＡＶＥ以下か否かの判定のいずれかを行うものであれば良い。
また、コード「０ｂ」、「１ｂ」の割り当てを上記とは逆にしても良い。要するに、比較コード生成部７３は、判定結果に応じて第１の値又は第２の値を出力するものであれば良い。
【００７５】
２値パターンコード生成部７５は、各局所領域について比較コード生成部７３で生成された、８つの周辺画素についての比較コードＤ（ｓ，ｔ）を連結して２値パターンコードＰｎａを生成する。このようにして生成される２値パターンコードＰｎａは、比較コードＤ（ｓ,ｔ）を、対応する画素の位置に応じて予め定められた順序で並べて連結することで得られる数列である。
【００７６】
図１４（ａ）は、入力画像Ｄｉｎの１つの局所領域の９つの画素の画素値ＩＮ（ｓ,ｔ）を、それぞれの画素の位置（ｓ,ｔ）に示すとともに、比較コード生成部７３への画素値ＩＮ（ｓ，ｔ）の入力順を矢印付きの線ＡＲａで示している。
図１４（ｂ）は、比較コード生成部７３への、１つの局所領域の９つの画素の画素値ＩＮ（ｓ,ｔ）を入力順に示している。画素値ＩＮ（ｓ,ｔ）は、図１４（ｂ）において左から右へという順に入力される。
【００７７】
図１４（ａ）及び（ｂ）に示すように、まず、局所領域の中心に位置する画素が選択されてその画素値ＩＮ（０，０）が入力される。続いて左上隅の画素が選択されてその画素値ＩＮ（−１，−１）が入力され、それに続いて図に矢印付きの線ＡＲａで示すように、反時計回りに周辺画素が順次選択されてそれぞれの画素値が入力される。
なお、画素の選択順序は、図１４（ａ）に示すのとは逆に時計回りでも良い。また、中心画素に続いて選択される画素は左上隅の画素以外の画素であっても良い。
【００７８】
図１５（ａ）〜（ｃ）は、一つの局所領域に対して行われる、比較コード生成部７３による比較及び２値パターンコード生成部７５による２値パターンコードＰｎａの生成の例を示している。
図１５（ａ）において、３×３個のマス目は、それぞれ図１４（ａ）の３×３個の画素に対応し、各マス目内の数値は、当該マス目の位置の画素の画素値を表している。
ＡＶＥは、図示の３×３個の画素値の平均値を表し、図示の例では、平均値ＡＶＥとして「１１５」が領域内平均算出部７２で算出され、比較コード生成部７３に供給されている。
【００７９】
比較コード生成部７３は、平均値ＡＶＥと、図１５（ａ）に示される８つの周辺画素の画素値ＩＮ（ｓ,ｔ）とを比較し、各画素値を、平均値ＡＶＥ以上であれば「１ｂ」、平均値ＡＶＥ未満であれば「０ｂ」に二値化することで、図１５（ｂ）に示される比較コードＤ（ｓ,ｔ）、即ち、Ｄ（−１，−１）、Ｄ（−１，０）、Ｄ（−１，１）、Ｄ（０，−１）、Ｄ（０，１）、Ｄ（１，−１）、Ｄ（１，０）、Ｄ（１，１）を順に生成し、出力する。
比較コード生成部７３からの２値比較コードＤ（ｓ，ｔ）の出力順序は、図１５（ｂ）に矢印付きの線ＡＲｂで示す如くである。
【００８０】
２値パターンコード生成部７５は、比較コード生成部７３から図１５（ｂ）に示される順に出力される比較コードＤ（ｓ,ｔ）を順に並べて連結することによって、図１５（ｃ）に示される８ビットの２値パターンコードＰｎａを生成する。即ち、座標（ｓ，ｔ）＝（−１，−１）の画素の比較コードＤ（−１,−１）を第１ビット、座標（ｓ，ｔ）＝（−１，０）の画素の比較コードＤ（−１,０）を第２ビット、以降、図１５（ｂ）に矢印付きの線ＡＲｂで示すように、反時計回りに順次比較コードＤ（ｓ,ｔ）を並べる（各ビット位置に割り当てる）ことによって、図１５（ｃ）に示される８ビットの２値パターンコードＰｎａを生成する。２値パターンコードＰｎａの生成は、次式（７）で表される。
【００８１】
【数７】
2016002099.tif 000009
【００８２】
抽出された局所領域の３×３画素の画素値が図１５（ａ）に示す如くである場合、式（７）により決定される２値パターンコードＰｎａは、図１５（ｃ）に示すように、十進数の「４９」に相当するものとなる。
【００８３】
このようにして生成された２値パターンコードＰｎａは、選択コードＤ５６として出力される。
【００８４】
図１１で説明したように、係数データ記憶部５７は、選択コードＤ５６の値０、１、…、ＮＰ−１の各々に対して、式（１）或いは式（２）で用いるＮＨ×ＮＨ行ＮＬ×ＮＬ列の要素（係数）から成る行列Ｍを記憶している。
【００８５】
上記の例のように、２値パターンコードＰｎａが８個の画素についての２値比較コードＤ（ｓ，ｔ）の組合せ、即ち８ビットの２値比較コードから成る場合、２値パターンコードＰｎａ、従って、選択コードＤ５６の取り得る値の数は２５６である。この場合、係数データ記憶部５７には、２５６個の係数データが記憶されている。
【００８６】
係数データ読出し部５８は、係数データ記憶部５７に記憶されている２５６個の係数データＤ５７のうち、２値パターンコードＰｎａ（選択コードＤ５６）に対応する係数データを読出して、選択された係数データＤ５８として出力する。
【００８７】
以下、上記の画像拡大装置の動作を図１６のフローチャートを参照して説明する。
図１６は、実施の形態１に係る画像拡大装置における処理の手順を表す。
まず、線形補間ステップＳ１１にて、線形補間部５２が入力画像Ｄｉｎを線形補間部５２により拡大して補間画像Ｄ５２を生成する。
【００８８】
次にパッチ抽出ステップＳ１２において高解像度パッチ生成部５４の特徴成分分離部６２が、それぞれ補間画像Ｄ５２の一部を成す複数のパッチＬＰｃのうちの一つを選択して抽出する。
パッチの選択は例えばラスター順に、例えば画像を左上隅から右下隅へ（上から下へ、かつ同じ高さ位置においては左から右へ）と言う順に行われる。
【００８９】
次に、ステップＳ１３からステップＳ１７において、選択されたパッチに対する処理を行う。
【００９０】
選択されたパッチに対する処理（ステップＳ１３からステップＳ１７）においては、まず、特徴成分分離ステップＳ１３にて、特徴成分分離部６２が、各補間画像パッチＬＰｃを低解像度の特徴成分Ｄ６２Ｈと非特徴成分Ｄ６２Ｌに分離する。
ステップＳ１３の処理と並行して、パターン判別ステップＳ１４において、パターン判別部５６が、各パッチに対応する入力画像Ｄｉｎの局所領域ＡＰｃの画素を用いてパターンを判別し、選択コードＤ５６を生成する。
次に、係数データ読出しステップＳ１５において、係数データ読出し部５８が、ステップＳ１４で生成された選択コードＤ５６に対応する係数データを係数データ記憶部５７から読み出して出力する。
【００９１】
ステップＳ１３及びステップＳ１５の次に、高解像度化変換ステップＳ１６において、高解像度化変換部６４が、ステップＳ１３で得られた補間画像の各パッチの特徴成分Ｄ６２Ｈに対して、ステップＳ１５で選択した係数データＤ５８を用いて演算を行い、低解像度の特徴成分Ｄ６２Ｈから高解像度の特徴成分Ｄ６４Ｈへの変換を行う。
次に、ステップＳ１７において、特徴成分合成部６６が、ステップＳ１３で分離した非特徴成分Ｄ６２Ｌを、ステップＳ１６で生成された高解像度の特徴成分Ｄ６４Ｈと合成して、高解像度パッチを生成する。
【００９２】
次に判定ステップＳ１８において、画像中のすべてのパッチについてのステップＳ１２〜Ｓ１７の処理が行われたか否かの判定を行う。この判定は例えば特徴成分分離部６２によって行われる。まだ処理されていないパッチがあれば（ステップＳ１８でＮＯ）、ステップＳ１２に戻り、次のパッチを選択する。
【００９３】
ステップＳ１８ですべてのパッチについての処理が終わっていれば、パッチ平均化ステップＳ１９に進み、パッチ平均化部５５が、高解像度画像Ｄ５４の各画素についてパッチ毎の処理で得られた高解像度パッチＨＰｃの画素値を平均化し、出力画像Ｄｏｕｔの各画素の画素値Ｄｏｕｔ（ｘ,ｙ）を算出する。このようにして算出した画素値Ｄｏｕｔ（ｘ，ｙ）の集合により、出力画像Ｄｏｕｔが形成される。
【００９４】
なお、画像内のすべてのパッチが終わらなくても、高解像度画像Ｄ５４の各画素についてそれが属するすべてのパッチについてステップＳ１２〜Ｓ１７の処理が終わったら、直ちに当該画素についてステップＳ１９の処理を行うようにしても良い。この場合、ステップＳ１２〜Ｓ１７の処理と、ステップＳ１９の処理とが並行して行われることになる。
【００９５】
図１６のパターン判別ステップＳ１４の処理の詳細を図１７に示す。
図示のように、まず、局所領域抽出ステップＳ２１において、局所領域抽出部７１が局所領域を抽出する。この場合、ステップＳ１２で補間画像Ｄ５２から選択されるパッチＬＰｃに対応する局所領域ＡＰｃが切出され、切出された局所領域ＡＰｃのデータが取得される。
次に、領域内平均算出ステップＳ２２において、領域内平均算出部７２が、切出された局所領域ＡＰｃ内の画素の平均値ＡＶＥを算出する。
【００９６】
次に、比較コード生成ステップＳ２３において、比較コード生成部７３が、８つの周辺画素の各々について、当該画素の画素値と平均値ＡＶＥとの比較により２値比較コードＤ（ｓ,ｔ）を求める。
次に、選択コード生成ステップＳ２４において、選択コード生成部７４が、８つの周辺画素についての２値比較コードＤ（ｓ,ｔ）を組合せることで２値パターンコードＰｎａを生成し、選択コードとして出力する。
以上が、実施の形態１に係る画像拡大装置の動作の説明である。
【００９７】
次に、係数データＤ５７の生成方法について説明する。係数データＤ５７は、前述したように、教師画像から生成された補間画像の特徴成分Ｄ６２Ｈと高解像度画像の特徴成分Ｄ６４Ｈのペアの関係を表すものであり、予め学習を行って係数データ記憶部５７に記憶させておく。
【００９８】
図１８は、係数データの生成に用いられる装置（係数データ生成装置）を示している。
係数データの生成には、まず、画像縮小部１０１で、教師画像となる高解像度画像Ｄｔｉ（図１９（ａ））を縮小し、縮小画像（低解像度画像）Ｄ１０１（図１９（ｂ））を生成する。高解像度画像Ｄｔｉの解像度は、出力画像Ｄｏｕｔと同じであり、画像縮小部１０１による画像縮小の縮小率は、線形補間部５２における拡大率と同じである。縮小は間引きによって行っても良く、平均化によって行っても良い。図１９（ｂ）の縮小画像Ｄ１０１の画素は、図１９（ａ）の高解像度画像Ｄｔｉの画素のうちの黒丸で示される画素に対応する位置にある。
【００９９】
線形補間部１０２は、縮小画像Ｄ１０１（図１９（ｂ））を線形補間により拡大して補間画像、即ち低解像度拡大画像Ｄ１０２（図１９（ｃ））を生成する。線形補間部１０２の処理は、図４の線形補間部の処理と同じである。図１９（ｃ）の低解像度拡大画像Ｄ１０２の画素のうち、黒丸で示される画素は、図１９（ｂ）に示される縮小画像Ｄ１０１の画素に対応する位置にある画素である。
【０１００】
特徴成分分離部１０３は、低解像度拡大画像Ｄ１０２から、複数のパッチを切出し、各パッチの特徴成分を抽出する。即ち、特徴成分分離部１０３は、低解像度拡大画像Ｄ１０２内の、縮小画像Ｄ１０１の画素に対応する位置の画素（図１９（ｃ）に黒丸で示す）から、複数の画素を選択し、選択した複数の画素の各々を中心とするＮＬ×ＮＬ個の画素の大きさのパッチＬＰｃ（図７のＬＰｃと同様のもの）を切出し、切出された複数のパッチの各々について、当該パッチ内のＮＬ×ＮＬ個の画素の平均値ｔｌＭｅａｎを求め、各々の画素の画素値から平均値ｔｌＭｅａｎを減算することで得られるＮＬ×ＮＬ個の差分値を特徴量とし、この特徴量を予め定められた順番で並べることで得られる列ベクトルを特徴成分Ｄ１０３Ｈとして出力する。特徴成分Ｄ１０３Ｈを構成するＮＬ×ＮＬ個の特徴量を対応する画素と同様に配列したものを低解像度パッチと言う。
【０１０１】
なお、図６の特徴成分分離部６２は、補間画像Ｄ５２から一定の間隔で複数のパッチを切出し、補間画像Ｄ５２ｎのすべての画素の各々が少なくとも一つのパッチに属するようにするが、図１８の特徴成分分離部１０３には、パッチの抽出に関しそのような制約はなく、低解像度拡大画像Ｄ１０２の異なる部分をパッチとして抽出すればよい。例えば、縮小画像Ｄ１０１の画素に対応する低解像度拡大画像Ｄ１０２のすべての画素が順次パッチの中心となるようにパッチを切出しても良く、縮小画像Ｄ１０１の画素に対応する低解像度拡大画像Ｄ１０２の画素からランダムに選択したものが順次パッチの中心となるように、パッチを切出しても良い。
【０１０２】
特徴成分分離部１０４は、高解像度画像Ｄｔｉのうち、特徴成分分離部１０３で特徴成分の分離を行うことで得られるパッチの中心の画素に対応する画素を中心とするパッチを切出し、該パッチの特徴成分を抽出する。即ち、特徴成分分離部１０４は、高解像度画像（教師画像）Ｄｔｉ内の、特徴成分分離部１０３で切出したパッチの各々の中心の画素に対応する画素を中心とし、各々ＮＬ×ＮＬ個の画素から成る複数のパッチＴＰｃ（図７のＬＰｃと同じ大きさを有するもの）を切出し、切出したパッチの各々について、当該パッチ内のＮＬ×ＮＬ個の画素の平均値ｔｈＭｅａｎを求め、各々の画素の画素値から平均値ｔｈＭｅａｎを減算することで得られるＮＬ×ＮＬ個の差分値を特徴量とし、この特徴量を予め定められた順番で並べることで得られる列ベクトルを、特徴成分Ｄ１０４Ｈとして出力する。特徴成分Ｄ１０４Ｈを構成するＮＬ×ＮＬ個の特徴量を対応する画素と同様に配列したものを高解像度パッチと言う。
【０１０３】
パターン判別部１０５は、縮小画像Ｄ１０１のうち、特徴成分分離部１０３で特徴成分の分離を行うことで得られるパッチに対応する局所領域に対してパターン判別を行って判別の結果を示すコード（パターン判別コード）Ｄ１０５を生成する。このパターン判別コードＤ１０５は、画像拡大装置の選択コードＤ５６に対応するものであるので、以下では選択コードと呼ぶ。パターン判別部１０５によるパターン判別は、図１２のパターン判別部５６における処理と同内容のものである。
【０１０４】
特徴成分分離部１０３で特徴成分の分離を行うことで得られるパッチ（低解像度パッチ）と、特徴成分分離部１０４で特徴成分の分離を行うことで得られるパッチ（高解像度パッチ）とはともに、特徴成分分離部６２で特徴成分の分離を行うことで得られるパッチと同じ大きさ（ＮＬ×ＮＬ）を有する。
縮小画像Ｄ１０１のある画素に対応する低解像度拡大画像Ｄ１０２の画素を中心とし、特徴成分分離部１０３で特徴成分の分離を行うことで得られた低解像度パッチと、縮小画像Ｄ１０１の同じ画素に対応する教師画像Ｄｔｉの画素を中心とし、特徴成分分離部１０４で特徴成分の分離を行うことで得られた高解像度パッチとでペア（パッチペア）が構成される。
さらに、縮小画像Ｄ１０２の上記と同じ画素を中心とする局所領域についてパターン判別部１０５で、パターン判別を行った結果得られた選択コードＤ１０５が、上記のパッチペアに対応する選択コードとして得られる。
【０１０５】
分類部１０６は、各ペアを構成するパッチの特徴成分Ｄ１０３Ｈ及びＤ１０４Ｈを互いに対応付け、各ペアを、対応する選択コードＤ１０５の値に従って分類（グループ分け）する。
【０１０６】
分類の結果を表に纏めれば例えば図２０に示す如くとなる。図２０で選択コードＤ１０５の欄には、パターン判別部５６に関して説明した選択コードＤ５６の値（０から２５５までの値）が予め記入されている。
ペア番号欄には、選択コードＤ１０５に対応するペア番号（すべて「ｘｘ」で示すがその値は異なる）が記入されている。例えばあるペアについて、当該ペアを構成するパッチに対応する局所領域についてパターン判別の結果、ある値を持つ選択コードＤ１０５が生成されたら、その値の欄に当該ペアの番号が記入される。ペアの番号として、ペアを構成するパッチの中心の画素の座標を表すデータを用いても良い。
このようなグループ分けの結果、選択コードの各値と、それに対応するペア番号が対応付けて記憶される。
【０１０７】
以上、一つの教師画像Ｄｔｉが供給されて、それに対するパターン判別、パッチペアの形成及び分類を行う場合を想定して説明したが、複数の教師画像Ｄｔｉを順次供給して、パターン判別、パッチペアの形成、及び分類を行い、これらの処理の結果を分類部１０６に蓄積しても良い。
【０１０８】
演算部１０７は、選択コードＤ１０５の値が同じであるグループごとに、低解像度パッチと高解像度パッチの関係を近似するための係数の値を線形回帰演算により導出する。この演算は式（８）で表される。
【数８】
2016002099.tif 000010
【０１０９】
式（８）で、
Ｍｓは、当該グループの選択コードに対応するＮＬ×ＮＬ行ＮＬ×ＮＬ列の要素（係数）から成る行列（係数行列）、
Ｘｔは、図２１に示すように、当該グループに分類されたペアを構成する低解像度パッチの特徴成分Ｄ１０３Ｈを構成するＮＬ×ＮＬ個の特徴量、即ち差分値を列方向に並べ、互いに異なるパッチについての特徴成分Ｄ１０３Ｈを行方向に並べた（異なる列に配置した）行列、
Ｙｔは、図２２に示すように、当該グループに分類されたペアを構成する高解像度パッチの特徴成分Ｄ１０４Ｈを構成するＮＬ×ＮＬ個の特徴量、即ち差分値を列方向に並べ、互いに異なるパッチについての特徴成分Ｄ１０４Ｈを行方向に並べた（異なる列に配置した）行列、
λは予め定められた定数、
ｅｙｅ（ＮＬ×ＮＬ，ＮＬ×ＮＬ）はＮＬ行ＮＬ列の単位行列である。
また、ＸｔＴ、ＹｔＴはそれぞれＸｔ、Ｙｔの転置行列である。
なお、各グループ内でパッチの数が（ＮＬ×ＮＬ）個に満たない場合は、Ｍｓとして単位行列を出力する。
【０１１０】
係数データ抽出部１０８は、上記のようにして得られたＮＬ×ＮＬ行ＮＬ×ＮＬ列の行列Ｍｓから、高解像度パッチＨＰｃを構成するＮＨ×ＮＨ個の画素に対応する要素（ＮＨ×ＮＨ個の画素の特徴成分Ｄ６４Ｈの算出に用いられる係数）だけを取り出したＮＨ×ＮＨ行ＮＬ×ＮＬ列の行列Ｍを抽出して、抽出した行列Ｍを表すデータを係数データＤ５７として係数データ記憶部５７に記憶させる。
【０１１１】
図２３に示される、ＮＬ＝５、ＮＨ＝３の場合について、ＮＨ×ＮＨ行ＮＬ×ＮＬ列（９行２５列）の行列Ｍの生成のため、ＮＬ×ＮＬ行ＮＬ×ＮＬ列（２５行２５列）の行列Ｍｓから取り出されるＮＨ×ＮＨ行（９行）が図２４に示されている。図２３には、ＮＬ×ＮＬ個の画素から成るパッチ内の画素が符号Ｐ（１）〜Ｐ（２５）で示される。符号Ｐ（１）〜Ｐ（２５）のうち、括弧内の数値が画素に付与された番号である。図２３に示されるＮＬ×ＮＬ個の画素から成るパッチＬＰｃのうちの、高解像度パッチＨＰｃを構成するＮＨ×ＮＨ個の画素は、太線ＨＰｃで囲まれた部分内の画素であり、図１０のＮＨ×ＮＨ個の画素Ｑ（１）〜Ｑ（９）に対応する。
【０１１２】
図２４において、行を表す符号Ｒ（１）〜Ｒ（２５）のうち括弧内の数値が行の番号を表す。図２４の行Ｒ（１）〜Ｒ（２５）は、それぞれ画素Ｐ（１）〜（２５）に対応し、２５（＝ＮＬ×ＮＬ）個の係数を含む。図２４で取り出される行には左端に丸印が付してある。取り出されるのは、図１０のＮＨ×ＮＨ個の画素Ｑ（１）〜Ｑ（９）の算出に用いられる係数から成る行、即ち図２３において、ＮＬ×ＮＬ個の画素のうち、太線ＨＰｃで囲まれる領域内にある、画素（Ｐ（７）、Ｐ（８）、Ｐ（９）、Ｐ（１２）、Ｐ（１３）、Ｐ（１４）、Ｐ（１７）、Ｐ（１８）、Ｐ（１９）に対応する行Ｒ（７）、Ｒ（８）、Ｒ（９）、Ｒ（１２）、Ｒ（１３）、Ｒ（１４）、Ｒ（１７）、Ｒ（１８）、Ｒ（１９））である。
【０１１３】
以上の処理により１つの選択コードに対応する係数データが生成され、係数データ記憶部５７に記憶される。
以上の処理が選択コードの２５６個の値の各々について行われ、係数データ記憶部５７には、選択コードの２５６個の値の各々に対応する係数データＤ５７が記憶される。
【０１１４】
上記の係数データの生成方法は、高解像度化変換部６４による変換が線形である場合についてのものであるが、非線形である場合についても公知の最適化手法を用いて係数データを算出することが可能である。
以上が係数データの生成方法の説明である。
【０１１５】
なお、図１２に示すパターン判別部は、領域内平均算出部７２で算出した平均値ＡＶＥを用いて比較コード生成部７３で周辺画素の画素値との比較を行っているが、局所領域内の中心画素の画素値ＩＮ（０，０）と、周辺画素の画素値との比較を行うこととしても良い。要するに、比較コード生成部７３では、平均値ＡＶＥ又は中心画素の画素値ＩＮ（０，０）を基準値として周辺画素の画素値との比較を行えば良い。
なおまた、中心画素の画素値は、加重平均において、周辺画素に対する重み付けをゼロとして、中心画素の画素値ＩＮ（０，０）そのものを平均値ＡＶＥとすることで得られた値と見ることもできる。
【０１１６】
以上のように、本実施の形態１では、入力画像の各局所領域から得られる基準値と、当該局所領域内の周辺画素との大小比較を行い、比較の結果として得られる２値比較コードＤ（ｓ,ｔ）を組合せることで２値パターンコードＰｎａを生成し、該２値パターンコードＰｎａを選択コードとして、係数データを読み出す。８つの周辺画素についての２値比較コードＤ（ｓ,ｔ）の組は、２の８乗＝２５６個あり、従って、２値パターンコードＰｎａは２５６個の値のいずれかを表す。係数データ記憶部５７は、２５６個の係数データ（各々、１組の係数を表すデータを含む）を記憶しており、２値パターンコードＰｎａに応じて、対応する係数データを出力する。このようにすることによって、係数データ記憶部５７に記憶しておく必要のある係数データの数を２５６に抑えることができる。従って、係数データ記憶部５７の記憶容量を小さくすることができ、回路規模を小さくすることができる。記憶容量及び回路規模を小さくすることで、係数データ記憶部５７を集積回路で構成する場合にチップサイズを小さくすることが可能となる。チップサイズを小さくすることで、消費電力を少なくすることが可能となる。
【０１１７】
実施の形態２．
上記の実施の形態１には、以下のような問題がある。即ち、各局所領域の平均値又は中心画素の画素値を基準値として周辺画素の画素値との比較を行い、比較結果を２値比較コードＤ（ｓ,ｔ）で表し、２値比較コードを組合せることで得られる２値パターンコードＰｎａを選択コードＤ５６として係数データを読み出している。このため、周辺画素の画素値が基準値に近い場合にも、基準値よりも大きいか否かの判定をして、判定結果に基づいて２値パターンコードを生成し、生成した２値パターンコードで係数データの選択を行う。従って、周辺画素が基準値（平均値又は中心画素の画素値）に近い場合に、係数データとして必ずしも適切ではないものが用いられてしまい、出力画像の画質を劣化させることがある。
【０１１８】
そこで、実施の形態２では、各局所領域から得られた基準値と、周辺画素の画素値との比較結果を３値の比較コード（３値比較コード）で表し、３値比較コードを組合せることで得られる３値パターンコードを用いて係数データの選択を行う。
この場合３値比較コードは、周辺画素の画素値が基準値と同程度（差が小さい）であるか、同程度ではなく、基準値より大きいか、同程度ではなく、基準値より小さいかに応じて、３値のいずれかを取る。
【０１１９】
局所領域のサイズが実施の形態１と同様に３×３画素である場合、各局所領域の周辺画素は８個あり、周辺画素の各々について３値比較コードが生成されるため、その組合せは、３の８乗＝６５６１個存在する。
係数データ記憶部には、この数だけの係数データを記憶しておく。このようにすることにより、実施の形態１と比較して、高解像度画像の劣化を抑制することができる。
【０１２０】
図２５は、実施の形態２の画像拡大装置５０ｂを示している。図示の画像拡大装置５０ｂは実施の形態１の画像拡大装置５０の代わりに用い得るものであり、線形補間部５２と、高解像度パッチ生成部５４と、パターン判別部５６ｂと、係数データ記憶部５７ｂと、係数データ読出し部５８ｂと、パッチ平均化部５５とを有する。
線形補間部５２、高解像度パッチ生成部５４、及びパッチ平均化部５５は、実施の形態１と同じである。
【０１２１】
パターン判別部５６ｂは、図２６に示すように、局所領域抽出部７１と、領域内平均算出部７２と、比較コード生成部８３と、選択コード生成部８４とを有する。
図示の例では、選択コード生成部８４は、３値パターンコード生成部８５で構成されている。
局所領域抽出部７１及び領域内平均算出部７２は、実施の形態１に関し、図１２を参照して説明したものと同じである。
【０１２２】
比較コード生成部８３は、領域内平均算出部７２から出力された各局所領域内の画素の画素値の平均値ＡＶＥと、局所領域抽出部７１から出力された当該局所領域内の周辺画素の画素値ＩＮ（ｓ，ｔ）との大小比較を行い、各周辺画素についての比較結果を示す３値比較コードＴ（ｓ,ｔ）を出力する。
各比較コードＴ（ｓ,ｔ）は２ビットで表される。
例えば、画素値ＩＮ（ｓ,ｔ）が平均値ＡＶＥより小さく、且つその差の絶対値が閾値α以上である場合は比較コードＴ（ｓ,ｔ）を「００ｂ」とし、画素値ＩＮ（ｓ,ｔ）の値が平均値ＡＶＥより大きく、且つその差の絶対値が閾値α以上である場合は比較コードＴ（ｓ,ｔ）を「１０ｂ」とし、画素値ＩＮ（ｓ,ｔ）と平均値ＡＶＥの差の絶対値が閾値α未満の場合は比較コードＴ（ｓ,ｔ）を「０１ｂ」とする。
上記の比較コードＴ（ｓ,ｔ）の生成処理は、次式（９）で表される。
【０１２３】
【数９】
2016002099.tif 000011
「００ｂ」、「１０ｂ」、「０１ｂ」はそれぞれ十進数の「０」、「２」、「１」に相当する。
【０１２４】
なお、比較コードの割り当ては上記の例に限定されず、例えば、比較コードとして「１１ｂ」を用いても良い。また、コード「０ｂ」、「１ｂ」の割り当てを上記とは逆にしても良い。要するに、比較コード生成部８３は、判定結果に応じて第１の値、第２の値又は第３の値を出力するものであれば良い。
【０１２５】
３値パターンコード生成部８５は、各局所領域について比較コード生成部８３で生成された、８つの周辺画素についての比較コードＴ（ｓ，ｔ）を連結して３値パターンコードＰｎｂを生成する。このようにして生成される３値パターンコードＰｎｂは、比較コードＴ（ｓ,ｔ）を、対応する画素の位置に応じて予め定められた順序で並べて連結することで得られる数列である。
【０１２６】
比較コード生成部８３への１つの局所領域の９つの画素の画素値ＩＮ（ｓ，ｔ）の入力順は、実施の形態１に関し、図１４（ａ）及び（ｂ）を参照して説明したのと同様である。
【０１２７】
図２７（ａ）〜（ｃ）は、一つの局所領域に対して行われる、比較コード生成部８３による比較及び３値パターンコード生成部８５による３値パターンコードＰｎｂの生成の例を示している。
【０１２８】
比較コード生成部８３は、平均値ＡＶＥと、図２７（ａ）に示される８つの周辺画素の画素値ＩＮ（ｓ,ｔ）とを比較し、図２７（ｂ）に示される３値比較コードＴ（ｓ，ｔ）、即ち、Ｔ（−１，−１）、Ｔ（−１，０）、Ｔ（−１，１）、Ｔ（０，−１）、Ｔ（０，１）、Ｔ（１，−１）、Ｔ（１，０）、Ｔ（１，１）を順に生成し、出力する。
比較コード生成部８３からの３値比較コードＴ（ｓ，ｔ）の出力順序は、図２７（ｂ）に矢印付きの線ＡＲｃで示す如くである。
【０１２９】
３値パターンコード生成部８５は、比較コード生成部８３から図２７（ｂ）に示される順に出力される２ビットの比較コードＴ（ｓ,ｔ）を順に並べて連結することによって、図２７（ｃ）に示される１６ビットの３値パターンコードＰｎｂを生成する。即ち、座標（ｓ，ｔ）＝（−１，−１）の画素の比較コードＴ（−１,−１）を第１及び第２ビット、座標（ｓ，ｔ）＝（−１，０）の画素の比較コードＴ（−１,０）を第３及び第４ビット、以降、図２７（ｂ）に矢印付きの線ＡＲｃで示すように、反時計回りに順次、２ビットの比較コードＴ（ｓ,ｔ）を並べる（各ビット位置に割り当てる）ことによって、図２７（ｃ）に示される１６ビットの３値パターンコードＰｎｂを生成する。３値パターンコードＰｎｂの生成は、次式（１０）で表される。
【０１３０】
【数１０】
2016002099.tif 000012
【０１３１】
抽出された局所領域の３×３画素の画素値が図２７（ａ）に示す如くである場合、式（１０）により決定される３値パターンコードＰｎｂは、図２７（ｃ）に示すように、十進数の「１７９２６」に相当するものとなる。
【０１３２】
このようにして生成された３値パターンコードＰｎｂは、選択コードＤ５６ｂとして出力される。
【０１３３】
係数データ記憶部５７ｂは、３値パターンコードＰｎｂ（従って、選択コードＤ５６ｂ）が取り得るすべての値にそれぞれ対応する係数データを記憶している。
【０１３４】
上記の例のように、３値パターンコードＰｎｂが８個の画素についての３値比較コードＴ（ｓ,ｔ）の組合せから成る場合、３値パターンコードＰｎｂ、従って選択コードＤ５６ｂの取り得る値の数は６５６１である。この場合、係数データ記憶部５７ｂには、６５６１個の係数データが記憶されている。
【０１３５】
係数データ読出し部５８ｂは、係数データ記憶部５７ｂに記憶されている６５６１個の係数データのうち、３値パターンコードＰｎｂ（選択コードＤ５６ｂ）に対応する係数データを読み出して、選択された係数データとして出力する。
【０１３６】
実施の形態１と同様に、高解像度パッチ生成部５４は、補間画像Ｄ５２の各パッチＬＰｃについて、係数データ読出し部５８ｂによって読み出された係数データＤ５８ｂを用いて、高解像度パッチＨＰｃを生成する。
【０１３７】
パッチ平均化部５５は、実施の形態１で説明したのと同様に、高解像度画像Ｄ５４の各画素についての複数の高解像度パッチＨＰｃの画素値を平均化することで出力画像Ｄｏｕｔの画素値Ｄｏｕｔ（ｘ，ｙ）を算出する。
【０１３８】
実施の形態２の動作は全体として実施の形態１に関し図１６を参照して説明したのと同じである。但し、図１６のステップＳ１４として、図１７で示す処理の代わりに、図２８に示す処理が行われる。
図２８のステップＳ２１、Ｓ２２は、図１７と同じである。
比較コード生成ステップＳ３３では、比較コード生成部８３が、８つの周辺画素の各々について、当該画素の画素値と平均値ＡＶＥとの比較により３値比較コードＴ（ｓ,ｔ）を求める。
選択コード生成ステップＳ３４では、選択コード生成部８４が、８つの周辺画素についての３値比較コードＴ（ｓ,ｔ）を組合せることで３値パターンコードＰｎｂを生成し、選択コードＤ５６ｂとして出力する。
【０１３９】
上記の係数データ記憶部５７ｂに記憶される係数データの生成には、図１８に示したのと同様の装置を用い得る。但し、パターン判別部１０５として、図１２のパターン判別部５６と同様のものの代わりに、図２６のパターン判別部５６ｂと同様のものを用いる必要がある。
【０１４０】
このように、実施の形態２においては、入力画像の各局所領域から得られる基準値と、当該局所領域内の周辺画素との大小比較を行い、比較の結果として得られる３値比較コードＴ（ｓ,ｔ）を組合せることで３値パターンコードＰｎｂを生成し、該３値パターンコードＰｎｂを選択コードとして、係数データを読み出す。実施の形態１で説明した２値パターンコードＰｎａを用いる場合に比べて、画像の特徴をより細かく分類することが可能となり、鮮鋭感のより高い拡大画像を得ることができる。
【０１４１】
実施の形態３．
上記の実施の形態２には、以下のような問題がある。即ち、係数データの数が６５６１個と多く、係数データ記憶部５７ｂとして容量の大きいものが必要である。
実施の形態３は、この問題を解決するものであり、係数データ記憶部には、２値パターンコードに対応する係数データと、局所領域内に高周波成分が含まれない場合に生成される３値パターンコードに対応する係数データを記憶しておき、局所領域内に高周波成分が含まれる場合には、２値パターンコードを選択コードとして用い、局所領域内に高周波成分が含まれない場合には、３値パターンコードを選択コードとして用いる。
【０１４２】
画像中の空間周波数が高い成分は、ノイズによるもの、或いは芝、砂嵐等の細かい模様によるものであることが多く、画像の拡大時に忠実に再現しなくても人の目には違和感となって現れない。このことに着目し、実施の形態３では、高周波成分が含まれている局所領域については、２値パターンコードに対応する局所領域を用いることとしている。これにより、実施の形態２の場合に比べて、係数データ記憶部の容量を抑制しつつ、画質の劣化を抑えた拡大画像の生成を可能にしている。
【０１４３】
図２９は、実施の形態３の画像拡大装置５０ｃを示している。図示の画像拡大装置５０ｃは実施の形態１の画像拡大装置５０の代わりに用い得るものであり、線形補間部５２と、高解像度パッチ生成部５４と、パターン判別部５６ｃと、係数データ記憶部５７ｃと、係数データ読出し部５８ｃと、パッチ平均化部５５とを有する。
線形補間部５２、高解像度パッチ生成部５４及びパッチ平均化部５５は、実施の形態１と同じである。
【０１４４】
パターン判別部５６ｃは、図３０に示すように、局所領域抽出部７１と、領域内平均算出部７２と、比較コード生成部９３と、選択コード生成部９４とを有する。選択コード生成部９４は、２値パターンコード生成部７５と、３値パターンコード生成部９５と、高周波成分検出部９８と、コード選択部９９とを有する。
３値パターンコード生成部９５は、コード連結部９６と、コード変換部９７とを有する。
【０１４５】
２値パターンコード生成部７５は、実施の形態１の２値パターンコード生成部７５と同じものである。
【０１４６】
局所領域抽出部７１及び領域内平均算出部７２は、実施の形態１に関し、図１２を参照して説明したものと同じである。
【０１４７】
比較コード生成部９３は、領域内平均算出部７２から出力された各局所領域内の画素の画素値の平均値ＡＶＥと、局所領域抽出部７１から出力された当該局所領域の８つの周辺画素の画素値ＩＮ（ｓ,ｔ）との大小比較を行い、各周辺画素についての比較結果を示す２値比較コードＤ（ｓ,ｔ）及び３値比較コードＴ（ｓ,ｔ）を出力する。
このような処理のため、比較コード生成部９３は、２値比較コード生成部７３ｃと３値比較コード生成部８３ｃとを含む。比較コード生成部７３ｃ及び８３ｃは、それぞれ図１２の比較コード生成部７３及び図２６の比較コード生成部８３と同じ処理を行うものである。
【０１４８】
即ち、比較コード生成部７３ｃは、実施の形態１の比較コード生成部７３に関して説明したのと同様に、領域内平均算出部７２から出力された各局所領域内の画素の画素値の平均値ＡＶＥと、局所領域抽出部７１から出力された当該局所領域内の周辺画素の画素値ＩＮ（ｓ，ｔ）との大小比較を行い、各周辺画素についての比較結果を示す２値比較コードＤ（ｓ,ｔ）を出力する。
例えば、画素値ＩＮ（ｓ,ｔ）が、平均値ＡＶＥ未満の場合は比較コードＤ（ｓ,ｔ）を「０ｂ」とし、平均値ＡＶＥ以上の場合は比較コードＤ（ｓ,ｔ）を「１ｂ」として出力する。
上記の比較コードＤ（ｓ，ｔ）の生成処理は、上記の式（６）で表される。
【０１４９】
なお、画素値ＩＮ（ｓ,ｔ）が平均値ＡＶＥと等しい場合、上記の例では比較コードＤ（ｓ,ｔ）を「０ｂ」としているが、この場合に比較コードＤ（ｓ,ｔ）を「１ｂ」としても良い。要するに、比較コード生成部７３は、画素値ＩＮ（ｓ，ｔ）が平均値ＡＶＥ以上か否かの判定、及び画素値ＩＮ（ｓ，ｔ）が平均値ＡＶＥ以下か否かの判定のいずれかを行うものであれば良い。
また、コード「０ｂ」、「１ｂ」の割り当てを上記とは逆にしても良い。要するに、比較コード生成部７３は、判定結果に応じて第１の値又は第２の値を出力するものであれば良い。
【０１５０】
比較コード生成部８３ｃは、実施の形態２の比較コード生成部８３と同様に、領域内平均算出部７２から出力された各局所領域内の画素の画素値の平均値ＡＶＥと、局所領域抽出部７１から出力された当該局所領域内の周辺画素の画素値ＩＮ（ｓ，ｔ）との大小比較を行い、各周辺画素についての比較結果を示す３値比較コードＴ（ｓ,ｔ）を出力する。
各比較コードＴ（ｓ,ｔ）は２ビットで表される。
例えば、画素値ＩＮ（ｓ,ｔ）が平均値ＡＶＥより小さく、且つその差の絶対値が閾値α以上である場合は比較コードＴ（ｓ,ｔ）を「００ｂ」とし、画素値ＩＮ（ｓ,ｔ）の値が平均値ＡＶＥより大きく、且つその差の絶対値が閾値α以上である場合は比較コードＴ（ｓ,ｔ）を「１０ｂ」とし、画素値ＩＮ（ｓ,ｔ）と平均値ＡＶＥの差の絶対値が閾値α未満の場合は比較コードＴ（ｓ,ｔ）を「０１ｂ」とする。
上記の比較コードＴ（ｓ，ｔ）の生成処理は、上記の式（９）で表される。
【０１５１】
なお、比較コードの割り当ては上記の例には限定されず、例えば、比較コードとして「１１ｂ」を用いても良い。また、コード「０ｂ」、「１ｂ」の割り当てを上記とは逆にしても良い。要するに、比較コード生成部８３ｃは、判定結果に応じて第１の値、第２の値又は第３の値を出力するものであれば良い。
【０１５２】
２値パターンコード生成部７５は、実施の形態１と同様に、各局所領域について比較コード生成部７３ｃで生成された、８つの周辺画素についての比較コードＤ（ｓ，ｔ）を連結して２値パターンコードＰｎａを生成する。
【０１５３】
コード連結部９６は、実施の形態２の３値パターンコード生成部８５と同様に、各局所領域について比較コード生成部８３ｃで生成された、８つの周辺画素についての比較コードＴ（ｓ，ｔ）を連結して３値パターンコードＰｎｂを生成する。
【０１５４】
コード変換部９７は、コード連結部９６から出力された連結コードＰｎｂから、取り得る値の範囲がより狭い(より少ないビット数で表現可能な)コードを生成して、３値パターンコードＰｎｃとして出力する。コード変換部９７の出力が３値パターンコード生成部９５の出力となる。
【０１５５】
高周波成分検出部９８は、各局所領域内の画素についての比較コード生成部８３ｃによる比較の結果に基づいて当該局所領域内に高周波成分が含まれているか否か、即ち予め定められた空間周波数以上の成分が含まれているか否かの判定を行い、判定結果を示す信号ＳＬを出力する。この信号ＳＬは、例えば高周波成分が含まれているときは、第１の値、例えば「１」を表すものとなり、含まれていないときは、第２の値、例えば「０」を表すものとなる。
【０１５６】
例えば、高周波成分検出部９８は、局所領域内において、それぞれ行方向又は列方向に整列した複数の画素から成る複数の群の各々に属する複数の画素の画素値を、それぞれの画素についての３値比較コードを用いて比較し、複数の群のいずれかにおいて、当該群の中央に位置する画素の画素値が極大値又は極小値を取るとき、当該局所領域には、高周波成分が含まれていると判定する。この場合、当該局所領域内の中心に位置する画素については、当該画素の画素値と基準値との差の絶対値が閾値α未満であり、従ってその場合の３値比較コードが生成されているものとして扱う。
【０１５７】
「画素の画素値を３値に比較コードを用いて比較する」とは、３値比較コードＴ（ｓ,ｔ）によって、画素値が、基準値との比較の結果、画素値が基準値ＡＶＥよりも小さくて且つその差の絶対値が閾値α以上であり、従って、最も小さい値の範囲（階級）内に属することが表されているか、画素値が基準値ＡＶＥよりも大きくて且つその差の絶対値が閾値α以上であり、従って、最も大きい値の範囲（階級）に属することが表されているか、画素値と基準値ＡＶＥとの差の絶対値が閾値α未満であり、従って、中間の範囲（階級）に属することが表されているかに基づいて、該３値比較コードにより、画素値が属する階級を判断し、該階級同士の比較を行うことを意味する。
【０１５８】
画素値が最も小さい値の階級内に属する場合、当該画素についての３値比較コードＴ（ｓ,ｔ）を第１の値とし、画素値が中間の階級に属する場合、当該画素についての３値比較コードＴ（ｓ,ｔ）を第２の値とし、画素値が最も大きい値の階級に属する場合、当該画素についての３値比較コードＴ（ｓ,ｔ）を第２の値よりも大きい第３の値とし、上記の例のように第１の値（００ｂ）よりも第２の値（０１ｂ）が大きく、且つ第２の値よりも第３の値（１０ｂ）が大きいという条件を満たすようにした場合には、各群に属する画素についての３値比較コードＴ（ｓ,ｔ）の値の大小関係を判定することにより、「３値比較コードを用いた画素値の比較」、従って中央に位置する画素の画素値が極大値又は極小値を取るか否かの判定を行うことができる。
【０１５９】
また、上記とは逆に、上記の第１の値よりも上記第２の値が小さく、且つ上記第２の値よりも上記第３の値が小さいという条件を満たすようにした場合にも、各群に属する画素についての３値比較コードＴ（ｓ,ｔ）の値の大小関係を判定することにより、「３値比較コードを用いた画素値の比較」、従って中央に位置する画素の画素値が極大値又は極小値を取るか否かの判定を容易に行うことができる。
【０１６０】
要するに、画素値が属する階級に応じて生成される３値比較コードＴ（ｓ,ｔ）の値が、それぞれの階級に属する画素値の大きさの順（大きい順又は小さい順）に次第に大きくなるものであれば、各群に属する画素についての３値比較コードＴ（ｓ,ｔ）の値の大小関係を判定することにより、「３値比較コードを用いた画素値の比較」、従って中央に位置する画素の画素値が極大値又は極小値を取るか否かの判定を容易に行うことができる。
【０１６１】
コード選択部９９は、２値パターンコード生成部７５から出力される２値パターンコードＰｎａと、３値パターンコード生成部９５から出力される３値パターンコードＰｎｃの何れかを選択し、選択コードＤ５６ｃとして出力する。
コード選択部９９における選択は、高周波成分検出部９８から出力される選択信号ＳＬに応じて行われる。即ち、信号ＳＬの値が「１」の場合は２値パターンコード生成部７５から出力される２値パターンコードＰｎａが選択され、「０」の場合は３値パターンコード生成部９５から出力される３値パターンコードＰｎｃが選択される。
【０１６２】
比較コード生成部９３への各局所領域の画素の画素値を示すデータの入力順序は、実施の形態１に関し図１４（ａ）及び（ｂ）を参照して説明したのと同じである。
また、比較コード生成部７３ｃによる比較及び２値パターンコード生成部７５における２値パターンコードＰｎａの生成は、実施の形態１に関し図１５（ａ）〜（ｃ）を参照して説明したのと同様に行われる。この処理は、上記の式（７）で表される。
【０１６３】
図３１（ａ）〜（ｄ）は、一つの局所領域に対して行われる、比較コード生成部８３ｃによる比較及び３値パターンコード生成部９５による３値パターンコードＰｎｃの生成の例を示している。
比較コード生成部８３ｃは、領域内平均算出部７２から出力された各局所領域の平均ＡＶＥと、局所領域抽出部７１から出力された当該局所領域内の図３１（ａ）に示される８つの周辺画素の画素値ＩＮ（ｓ,ｔ）との比較を行い、図３１（ｂ）に示される周辺画素についての３値比較コードＴ（ｓ，ｔ）、即ち、Ｔ（−１，−１）、Ｔ（−１，０）、Ｔ（−１，１）、Ｔ（０，−１）、Ｔ（０，１）、Ｔ（１，−１）、Ｔ（１，０）、Ｔ（１，１）を生成する。
【０１６４】
次に、３値パターンコード生成部９５のコード連結部９６が、８つの周辺画素についての３値比較コードＴ（ｓ,ｔ）を矢印付きの線ＡＲｄで示す順序に並べて連結し、図３１（ｃ）に示される、１６ビットの連結コードＰｎｂを生成する。この処理は上記の式（１０）で表される。
【０１６５】
次に、３値パターンコード生成部９５のコード変換部９７が、連結コードＰｎｂを、図３１（ｄ）に示される取り得る値の範囲がより狭いコードに変換し、変換後のコードが３値パターンコードＰｎｃとして出力される。
【０１６６】
比較コード生成部８３ｃは、以下の説明から理解されるように、８つの画素のすべてについて比較コードＴ（ｓ,ｔ）の生成を行うとは限らず、８つの画素についての順次比較の途中で、高周波成分が含まれているとの判定がなされたときは、それ以降（残りの画素についての）比較及び比較コードＴ（ｓ,ｔ）の生成を省略する。この場合には、３値パターンコードＰｎｃは生成されない。
【０１６７】
高周波成分検出部９８は、比較コード生成部８３ｃの出力に基づいて、各局所領域内に高周波成分が含まれているか否か（高周波成分の有無）を判定する。
【０１６８】
この判定は、以下の考えに基づいて行われる。即ち、例えば芝、砂嵐等の細かい模様の画像では、局所領域内において行方向又は列方向に整列した画素(図示の例では３個の画素）から成る群の各々において、中央の画素の比較コードが両端の画素の何れの比較コードとも異なり、且つ中央の画素の画素値が極大又は極小となる確率が高い。従ってそのような場合には高周波成分が含まれていると判定する。例えば、中央の画素の比較コードが「０１ｂ」で、且つ両端の画素の比較コードが何れも「００ｂ」の場合がこれに該当する。また、中央の画素の比較コードが「００ｂ」で、且つ両端の画素の比較コードがそれぞれ「０１ｂ」、「１０ｂ」の場合もこれに該当する。
【０１６９】
実施の形態３の動作は全体として実施の形態１に関し図１６を参照して説明したのと同じである。但し、図１６のステップＳ１４として、図１７で示す処理の代わりに、図３２乃至図３４に示す処理が行われる。
【０１７０】
図３２乃至図３４において、ステップＳ２１、Ｓ２２は、図１７と同じである。
ステップＳ２２の次に、比較コード生成部８３ｃは、平均値ＡＶＥと第１列第１行の画素の画素値ＩＮ（−１,−１）を比較し（Ｓ１０１）、比較結果に応じて３値比較コードＴ（−１,−１）を生成する（Ｓ１０２）。生成された３値比較コードＴ（−１,−１）は、コード連結部９６及び高周波成分検出部９８に供給される。
【０１７１】
次に、比較コード生成部８３ｃは、平均値ＡＶＥと第１列第２行の画素の画素値ＩＮ（−１,０）を比較し（Ｓ１０３）、比較結果に応じて３値比較コードＴ（−１,０）を生成する（Ｓ１０４）。生成された３値比較コードＴ（−１,０）は、コード連結部９６及び高周波成分検出部９８に供給される。
【０１７２】
次に、比較コード生成部８３ｃは、平均値ＡＶＥと第１列第３行の画素の画素値ＩＮ（−１,１）を比較し（Ｓ１０５）、比較結果に応じて３値比較コードＴ（−１,１）を生成する（Ｓ１０６）。生成された３値比較コードＴ（−１,１）は、コード連結部９６及び高周波成分検出部９８に供給される。
【０１７３】
ここまでの処理で、図３５（ａ）に示される第１列ＧＣ１の３つ画素についての３値比較コードＴ（−１,−１）、Ｔ（−１,０）、及びＴ（−１,１）が揃う。この段階で、高周波成分検出部９８は、第１列ＧＣ１の３つ画素についての３値比較コードＴ（−１,−１）、Ｔ（−１,０）、及びＴ（−１,１）に基づいて高周波成分の有無の判定を行う（Ｓ１０７）。
【０１７４】
高周波成分検出部９８は、第１列ＧＣ１の画素に関し、下記の式（１１）が成り立つ場合に、高周波成分が含まれていると判定する。
【数１１】
2016002099.tif 000013
上記の式でＳｉｇｎ｛Ａ｝は、Ａの符号を表す。
【０１７５】
上記の判定において、高周波成分が含まれていると判定されたときは（Ｓ１０７でＹＥＳのときは）、ステップＳ１３１に進む。
【０１７６】
高周波成分が含まれていないと判定されたとき（ステップＳ１０７でＮＯのとき）は、比較コード生成部８３ｃは、平均値ＡＶＥと第３行第２列の画素の画素値ＩＮ（０,１）を比較し（Ｓ１０９）、比較結果に応じて３値比較コードＴ（０,１）を生成する（Ｓ１１０）。生成された３値比較コードＴ（０,１）は、コード連結部９６及び高周波成分検出部９８に供給される。
【０１７７】
次に、比較コード生成部８３ｃは、平均値ＡＶＥと第３行第３列の画素の画素値ＩＮ（１,１）を比較し（Ｓ１１１）、比較結果に応じて３値比較コードＴ（１,１）を生成する（Ｓ１１２）。生成された３値比較コードＴ（１,１）は、コード連結部９６及び高周波成分検出部９８に供給される。
【０１７８】
ここまでの処理で、図３５（ａ）に示される第３行ＧＲ３の３つ画素についての３値比較コードＴ（−１,１）、Ｔ（０,１）、及びＴ（１,１）が揃う。この段階で、高周波成分検出部９８は、第３行ＧＲ３の３つ画素についての３値比較コードＴ（−１,−１）、Ｔ（−１,０）、及びＴ（−１,１）に基づいて高周波成分の有無の判定を行う（Ｓ１１３）。
【０１７９】
高周波成分検出部９８は、第３行ＧＲ３の画素に関し、下記の式（１２）が成り立つ場合に、高周波成分が含まれていると判定する。
【数１２】
2016002099.tif 000014
【０１８０】
上記の判定において、高周波成分が含まれていると判定されたときは（Ｓ１１３でＹＥＳのときは）、ステップＳ１３１に進む。
【０１８１】
高周波成分が含まれていないと判定されたとき（ステップＳ１１３でＮＯのとき）は、比較コード生成部８３ｃは、平均値ＡＶＥと第３列第２行の画素の画素値ＩＮ（１,０）を比較し（Ｓ１１５）、比較結果に応じて３値比較コードＴ（１,０）を生成する（Ｓ１１６）。生成された３値比較コードＴ（１,０）は、コード連結部９６及び高周波成分検出部９８に供給される。
【０１８２】
ここまでの処理で、図３５（ｂ）に示される第２行ＧＲ２の、中央の画素以外の２つの画素（両端の画素）、即ち、第２行の第１列及び第３列の画素についての３値比較コードＴ（−１,０）、及びＴ（１,０）が揃う。
【０１８３】
この段階で、高周波成分検出部９８は、図３５（ｂ）の第２行ＧＲ２の両端の画素についての３値比較コードＴ（−１,０）、及びＴ（１,０）に基づいて高周波成分の有無の判定を行う（Ｓ１１７）。この判定は、上記のように、中央の画素（即ち、局所領域の中心画素）についての画素値は、平均値ＡＶＥとの差が小さく、中央の画素についての３値比較コードＴ（０,０）は「０１ｂ」であるとの仮定に基づいて行われる。
【０１８４】
このように仮定すると、両端の画素の比較コードが等しく、且つ比較コードＴ（ｓ,ｔ）が「０１ｂ」以外であれば、中央の画素についての比較コードが極大又は極小と判断することができ、高周波成分が含まれていると判定する。そこで、高周波成分検出部９８は、下記の式（１３）が満たされれば、高周波成分が含まれていると判定する。
【数１３】
2016002099.tif 000015
【０１８５】
上記の判定において、高周波成分が含まれていると判定されたときは（Ｓ１１７でＹＥＳのときは）、ステップＳ１３１に進む。
【０１８６】
高周波成分が含まれていないと判定されたとき（ステップＳ１１７でＮＯのとき）は、比較コード生成部８３ｃは、平均値ＡＶＥと第３列第１行の画素の画素値ＩＮ（１,−１）を比較し（Ｓ１１９）、比較結果に応じて３値比較コードＴ（１,−１）を生成する（Ｓ１２０）。生成された３値比較コードＴ（１,０）は、コード連結部９６及び高周波成分検出部９８に供給される。
【０１８７】
ここまでの処理で、図３５（ａ）に示される第３列ＧＣ３の３つ画素についての３値比較コードＴ（１,−１）、Ｔ（１,０）、及びＴ（１,１）が揃う。この段階で、高周波成分検出部９８は、第３列ＧＣ３の３つ画素についての３値比較コードＴ（１,−１）、Ｔ（１,０）、及びＴ（１,１）に基づいて高周波成分の有無の判定を行う（Ｓ１２１）。
【０１８８】
即ち、高周波成分検出部９８は、下記の式（１４）が満たされる場合には、高周波成分が含まれていると判定する。
【数１４】
2016002099.tif 000016
【０１８９】
上記の判定において、高周波成分が含まれていると判定されたときは（Ｓ１２１でＹＥＳのときは）、ステップＳ１３１に進む。
【０１９０】
高周波成分が含まれていないと判定されたとき（ステップＳ１２１でＮＯのとき）は、比較コード生成部８３ｃは、平均値ＡＶＥと第１行第２列の画素の画素値ＩＮ（０,−１）を比較し（Ｓ１２３）、比較結果に応じて３値比較コードＴ（０,−１）を生成する（Ｓ１２４）。生成された比較コードＴ（０,−１）は、コード連結部９６及び高周波成分検出部９８に供給される。
【０１９１】
ここまでの処理で、図３５（ａ）に示される第１行ＧＲ１の３つ画素についての３値比較コードＴ（−１,−１）、Ｔ（０,−１）、及びＴ（１,−１）が揃う。この段階で、高周波成分検出部９８は、第１行ＧＲ１の３つ画素についての３値比較コードＴ（−１,−１）、Ｔ（０,−１）、及びＴ（１,−１）に基づいて高周波成分の有無の判定を行う（Ｓ１２５）。
【０１９２】
即ち、高周波成分検出部９８は、下記の式（１５）が満たされる場合には、高周波成分が含まれていると判定する。
【数１５】
2016002099.tif 000017
【０１９３】
また、この段階で、高周波成分検出部９８は、図３５（ｂ）の第２列ＧＣ２の中央の画素以外の画素（第２列ＧＣ２の第１行及び第３行の画素）についての３値比較コードＴ（０,−１）、及びＴ（０,１）に基づいて高周波成分の有無の判定を行う（Ｓ１２７）。この判定も、ステップＳ１１７と同様に、中央の画素（即ち、局所領域の中心画素）についての画素値は、平均値ＡＶＥとの差が小さく、中央の画素についての３値比較コードＴ（０,０）は「０１ｂ」であるとの仮定に基づいて行われる。
即ち、高周波成分検出部９８は、下記の式（１６）が満たされれば、高周波成分が含まれていると判定する。
【数１６】
2016002099.tif 000018
【０１９４】
ステップＳ１２５及びＳ１２７のいずれかにおいて、高周波成分が含まれていると判定されたときは（Ｓ１２５又はＳ１２７の少なくとも一方でＹＥＳのときは）、ステップＳ１３１に進む。
【０１９５】
ステップＳ１２５及びＳ１２７の双方において、両方高周波成分が含まれていないと判定されたとき（ステップＳ１２５及びＳ１２７の両方でＮＯのとき）は、ステップＳ１４１に進む。
【０１９６】
ステップＳ１３１では、２値比較コード生成部７３ｃが、２値比較コードＤ（ｓ,ｔ）を生成する。次に、ステップＳ１３２で、２値パターンコード生成部７５が２値パターンコードＰｎａを生成する。次に、ステップＳ１３３で、コード選択部９９が２値パターンコードＰｎａを選択し、選択コードＤ５６ｃとして出力する。
【０１９７】
ステップＳ１４１では、コード連結部９６が３値比較コードＴ（ｓ，ｔ）を連結して連結コードＰｎｂを生成し、次に、ステップＳ１４２で、コード変換部９７が連結コードの変換を行って３値パターンコードＰｎｃを生成し、次に、ステップＳ１４３で、コード選択部９９が、３値パターンコードＰｎｃを選択して選択コードＤ５６ｃとして出力する。
【０１９８】
なお、局所領域に高周波成分が含まれているか否かの判定を行った後に、２値比較コードの生成（Ｓ１３１）及び２値パターンコードＰｎａの生成（Ｓ１３２）、又は連結コードＰｎの生成（Ｓ１４１）及びコード変換（Ｓ１４２）を行うものとしているが、局所領域に高周波成分が含まれているか否かの判定を行うとともに、２値比較コードの生成（Ｓ１３１）及び２値パターンコードＰｎａの生成（Ｓ１３２）、並びに連結コードＰｎｂの生成（Ｓ１４１）及びコード変換（Ｓ１４２）を並行して行い、局所領域に高周波成分が含まれているか否かの判定の結果に応じて、２値パターンコードＰｎａ又は３値パターンコードＰｎｃの選択（Ｓ１３３、Ｓ１４３）を行うこととしても良い。
【０１９９】
上記のステップＳ１１７では、中央の画素の画素値は平均値ＡＶＥとの差が小さく、中央の画素についての３値比較コードＴ（０,０）が「０１ｂ」であると仮定して、式（１３）により、高周波成分が含まれているか否かの判定をしているが、代わりに、中央の画素の画素値についても平均値ＡＶＥとの比較の結果に基づく３値比較コードＴ（０,０）を生成し、この３値比較コードを用いて、式（１２）などと同様の下記の式（１７）が成り立つ場合に、高周波成分が含まれていると判定することとしても良い。
【数１７】
2016002099.tif 000019
【０２００】
上記のステップＳ１２７でも同様に、式（１６）の代わりに、下記の式（１８）が成り立つ場合に、高周波成分が含まれていると判定することとしても良い。
【数１８】
2016002099.tif 000020
【０２０１】
上記のように、コード変換部９７は、コード連結部９６から出力される連結コードを、取り得る値の範囲がより狭いコードに変換し、変換後のコードを３値パターンコードＰｎｃとして出力する。コード連結部９６から出力される連結コードは、実施の形態２で述べたように、６５６１個の値のいずれかを取るが、コード変換部９７は、コード連結部９６から出力される連結コードＰｎｂが上記の６５６１個の値のうちの予め定められた５７７６個の値のいずれかを取るときは、３値パターンコードＰｎｃを出力せず、コード連結部９６から出力される連結コードＰｎｂが上記の６５６１個の値のうちの予め定められた７８５個の値のいずれかを取るときは、対応する、変換後の３値パターンコードＰｎｃを出力する。
【０２０２】
コード変換部９７による変換の前の連結コードと変換の後の３値パターンコードの値との対応関係の一部が図３６（ａ）〜（ｃ）に示されている。変換前の連結コードＰｎｂは、８つの画素Ａ〜Ｈ（図３６（ｄ））についての３値比較コードＴａ〜Ｔｈ（それぞれ図３６（ｅ）に示す関係がある）を連結した連結コード（図３６（ｂ））と、対応する十進数による番号（図３６（ａ））とで示され、変換後の３値パターンコードＰｎｃは、十進数による番号（図３６（ｃ））のみで示されている。
【０２０３】
３値パターンコードＰｎｃは、３値パターンコードＰｎｂが取り得る値とは異なる値を取るように定められる。
【０２０４】
コード変換部９７から出力される変換後のコードＰｎｃは、高周波成分が含まれないときに生成される連結コードＰｎｂに対して１対１に対応するものであり、コード変換部９７から出力される変換後の３値パターンコードＰｎｃが取り得る値の数は、高周波成分が含まれないときに生成される連結コードＰｎｂが取り得る値の数と同じであり、すべての変換後のコードＰｎｃの取り得る値を昇順又は降順に並べたときに、隣接する値相互間の差が１である。
【０２０５】
図３６（ｂ）で３値比較コードＴａ〜Ｔｈの値を囲む点線の枠は、それらの３値比較コードを用いた判定で高周波成分が検出されたことを示す。
図３６（ａ）のＮｏ．１からＮｏ．１３まで、ＮＯ．１５、Ｎｏ．１６、Ｎｏ．１９からＮｏ．２５までの連結コードに対しては、変換後の３値パターンコードが存在せず、コード変換部９７からは３値パターンコードが出力されない。
これは、これらの番号に対応する連結コードＰｎｂ（図３６（ｂ））の場合には、高周波成分が含まれているとの判定が行われ、従って、コード選択部９９では２値パターンコードＰｎａが選択され、３値パターンコードＰｎｃが選択されないためである。即ち、これらの場合には、３値パターンコードＰｎｃが選択されないので、コード変換部９７では、変換後のコードを出力しないこととしている。
【０２０６】
このような処理をする結果、コード選択部９９で３値パターンコードＰｎｃが選択される場合には、係数データ読出し部５８ｃには、７８５個の値のいずれかを取る３値パターンコードＰｎｃが選択コードＤ５６ｃとして供給される。一方、コード選択部９９で２値パターンコードＰｎａが選択される場合には、２５６個の値のいずれかを取る２値パターンコードＰｎａが選択コードＤ５６ｃとして供給される。従って、係数データ記憶部５７ｃには、２５６＋７８５＝１０４１個の係数データが記憶されている。
【０２０７】
２値パターンコードＰｎａが選択コードＤ５６ｃとなるときと、３値パターンコードＰｎｃが選択コードＤ５６ｃになるときでは、選択コードＤ５６ｃは異なる値となる。例えば、２値パターンコードＰｎａが選択されるときの選択コードＤ５６ｃは０から２５５までの値となり、３値パターンコードＰｎｃが選択されるときの選択コードＤ５６ｃは、例えば、図３６（ｃ）に示すように、２５６以降の値、例えば、２５６から１０４１までの値となる。
【０２０８】
なお、上記のように、３値パターンコードＰｎｃは、３値パターンコードＰｎｂが取り得る値とは異なる値を取るように定められ、２値パターンコードＰｎａが選択コードＤ５６ｃとなるときと、３値パターンコードＰｎｃが選択コードＤ５６ｃになるときでは、選択コードＤ５６ｃは異なる値となるようにする代わりに、２値パターンコードＰｎａが選択コードＤ５６ｃとなるときと、３値パターンコードＰｎｃが選択コードＤ５６ｃになるときでは、係数データ記憶部５７ｃの異なる領域、或いは異なる記憶ユニットから係数データを読み出すようにしておいても良い。即ち、係数データ記憶部５７ｃが第１の記憶領域乃至記憶ユニットと、第２の記憶領域乃至記憶ユニットとを有し、第１の記憶領域乃至記憶ユニットには、２値パターンコードＰｎａが選択コードＤ５６ｃとなるときに読み出されるべき係数データを記憶させておき、第２の記憶領域乃至記憶ユニットには、３値パターンコードＰｎｃが選択コードＤ５６ｃとなるときに読み出されるべき係数データを記憶させておき、２値パターンコードＰｎａが選択コードＤ５６ｃとなるときには、第１の記憶領域乃至記憶ユニットが選択され、３値パターンコードＰｎｃが選択コードＤ５６ｃになるときには、第２の記憶領域乃至記憶ユニットが選択されるようにしても良い。この選択のために、例えば係数データ読出し部５８ｃが、高周波成分検出部９８による判定の結果を示す信号ＳＬに基づいて選択のための信号を生成することとしても良い。
【０２０９】
実施の形態１と同様に、高解像度パッチ生成部５４は、補間画像Ｄ５２の各パッチＬＰｃについて、係数データ読出し部５８ｃによって読み出された係数データＤ５８ｃを用いて、高解像度パッチＨＰｃを生成する。
【０２１０】
パッチ平均化部５５は、実施の形態１で説明したのと同様に、高解像度画像Ｄ５４の各画素についての複数の高解像度パッチＨＰｃの画素値を平均化することで出力画像Ｄｏｕｔの画素値Ｄｏｕｔ（ｘ，ｙ）を算出する。
【０２１１】
上記の係数データ記憶部５７ｃに記憶される係数データの生成には、図１８に示したのと同様の装置を用い得る。但し、パターン判別部１０５として、図１２のパターン判別部５６と同様のものの代わりに、図３０のパターン判別部５６ｃと同様のものを用いる必要がある。
【０２１２】
以上のように、実施の形態３では、係数データ記憶部には、２値パターンコードに対応する係数データと、局所領域内に高周波成分が含まれない場合に生成される３値パターンコードに対応する係数データを記憶しておき、局所領域内に高周波成分が含まれる場合には、２値パターンコードを選択コードＤ５６ｃとして用い、局所領域内に高周波成分が含まれない場合には、３値パターンコードを選択コードＤ５６ｃとして用いて、係数データを選択する。これにより、実施の形態２の場合に比べて、係数データ記憶部の容量を抑制しつつ、画質の劣化を抑えた拡大画像の生成を可能にしている。
【０２１３】
また、高周波成分検出部９８が、局所領域内において、行方向又は列方向に整列した画素から成る群のいずれかにおいて、中央の画素の画素値が極大又は極小となるときは、高周波成分が含まれていると判定することとし、画素値が極大又は極小になるか否かの判定を３値比較コードを用いて行うので、高周波成分が含まれているか否かの判定を小さい回路規模で実現することができる。
【０２１４】
実施の形態４．
上記の実施の形態３には、以下のような２つの問題がある。第１の問題は、局所領域についての３値比較コードの配列が図３７（ａ）又は図３８（ａ）に示す如くである場合、実施の形態３では、高周波数成分が含まれるとは判定されないが、図３７（ａ）又は図３８（ａ）のように、局所領域内において、同一比較コードを持つ画素乃至画素の群が、異なる比較コードを持つ画素乃至画素の群により分断されている場合には、高周波成分が含まれると判定する方が適切であることである。実施の形態４は、このような場合に、高周波成分が含まれると判定するようにしたものである。
【０２１５】
第２の問題は、連結コードＰｎｂから３値パターンコードＰｎｃへの変換のための処理が複雑で、処理のための回路規模が大きいということである。実施の形態４は、３値パターンコードの生成のための回路規模が小さくて済むようにしたものである。
【０２１６】
図３９は、実施の形態４の画像拡大装置５０ｄを示している。図示の画像拡大装置５０ｄは実施の形態３の画像拡大装置５０ｃと概して同じであるが、パターン判別部５６ｃ、係数データ記憶部５７ｃ、及び係数データ読出し部５８ｃの代わりに、パターン判別部５６ｄ、係数データ記憶部５７ｄ、及び係数データ読出し部５８ｄが設けられている。
【０２１７】
パターン判別部５６ｄは、図４０に示すように、図３０のパターン判別部５６ｃと概して同じであるが、図３０の選択コード生成部９４の代わりに、選択コード生成部９４ｄを備えている。選択コード生成部９４ｄは、選択コード生成部９４と概して同じであるが、図３０の３値パターンコード生成部９５及び高周波成分検出部９８の代わりに、３値パターンコード生成部９５ｄ及び高周波成分検出部９８ｄを備えている。
【０２１８】
３値パターンコード生成部９５ｄは、図４１に示すように、出現パターンコード生成部１９１と、連続数コード生成部１９２と、コード組合せ部１９３とを含み、出現パターンコード生成部１９１は、基本コード生成部１９４と拡張コード生成部１９５とを含む。
【０２１９】
実施の形態４では、高周波成分検出部９８ｄにおける高周波成分の検出（高周波成分が含まれているとの判断）の条件が、実施の形態３よりも緩やかであり、逆に言えば、高周波成分が含まれていないとの判断がされる条件が実施の形態３よりも厳しい。即ち、実施の形態４の高周波成分検出部９８ｄは、実施の形態３の高周波成分検出部９８が、高周波成分が含まれていると判断する条件が満たされた場合のみならず、それ以外の条件が満たされた場合にも、高周波成分が含まれていると判断する。ここで言う「それ以外の条件」とは、比較コードＴ（ｓ，ｔ）の配列が図３７（ａ）或いは図３８（ａ）に示す場合には、高周波成分が含まれていると判断する一方、比較コードＴ（ｓ，ｔ）の配列が図３７（ｂ）或いは図３８（ｂ）に示す如くである場合には、高周波成分が含まれていないと判断するためのものである。
【０２２０】
具体的には、実施の形態４では、実施の形態３の条件に対し、高周波成分を検出する条件を２つ追加する。
【０２２１】
一つ目の条件を、図４２を参照して説明する。３×３画素から成る矩形の局所領域の頂点に位置する画素の各々と、これに隣接する２画素（行方向に隣接する画素及び列方向に隣接する画素）を含めた３画素から成る群ＧＶ１、ＧＶ２、ＧＶ３、ＧＶ４の各々について、当該群に属する複数の画素の画素値をそれぞれの画素についての３値比較コードを用いて、高周波成分が含まれているか否かの判定を行う。即ち、上記の複数の群ＧＶ１、ＧＶ２、ＧＶ３、ＧＶ４のいずれかにおいて、当該該群に含まれる頂点の画素の画素値が極大値又は極小値を取り、且つ当該群の上記隣接する２画素の画素値がいずれも基準値ＡＶＥに近い値ではない（基準値ＡＶとの差の絶対値が閾値α以上である）場合、高周波成分が含まれていると判定する。
【０２２２】
３値比較コードＴ（ｓ，ｔ）が上記の式（９）で表される処理で生成され、局所領域の中心の画素の３値比較コードが「０１ｂ」であるものとされる場合には、上記の複数の群ＧＶ１、ＧＶ２、ＧＶ３、ＧＶ４のいずれかにおいて、当該該群に含まれる頂点の画素についての３値比較コードが極大値又は極小値を取り、且つ当該群の上記隣接する２画素についての３値比較コードがいずれも「０１ｂ」ではない場合、高周波成分が含まれていると判定する。
【０２２３】
即ち、下記の式（１９Ａ）〜（１９Ｄ）のいずれかが満たされる時、高周波成分が含まれていると判定する。
【数１９】
2016002099.tif 000021
【０２２４】
２つ目の条件を、図４３を参照して説明する。３×３画素から成る矩形の局所領域の対角線上に並ぶ３画素から成る群ＧＤ１、ＧＤ２の各々について、当該群に属する画素、並びに当該群に属さず上記局所領域の頂点に位置する画素の画素値をそれぞれの画素についての３値比較コードを用いて、高周波成分が含まれているか否かの判定を行う。即ち、上記の複数の群ＧＤ１、ＧＤ２のいずれかにおいて、その中央の画素（矩形の局所領域の中心の画素）の画素値が極大値又は極小値を取り、且つ当該群に属しない（該当する対角線上に位置しない）、局所領域の２つの頂点に位置する画素の画素値が、当該群に属し、且つ局所領域の２つの頂点に位置する画素の画素値との差が大きい（画素値が異なる階級に属する）場合、高周波成分が含まれていると判定する。
【０２２５】
３値比較コードＴ（ｓ，ｔ）が上記の式（９）で表される処理で生成され、局所領域の中心の画素の３値比較コードが「０１ｂ」であるものとされる場合には、上記の複数の群ＧＤ１、ＧＤ２のいずれかにおいて、その中央の画素（矩形の局所領域の中心の画素）についての３値比較コードが極大値又は極小値を取り、且つ当該群に属しない（該当する対角線上に位置しない）、局所領域の２つの頂点に位置する画素についての３値比較コードが、当該群に属し、且つ局所領域の２つの頂点に位置する画素についての３値比較コードとは異なる場合、高周波成分が含まれていると判定する。
【０２２６】
即ち、下記の式（２０Ａ）及び（２０Ｂ）のいずれかが満たされる時、高周波成分が含まれていると判定する。
【数２０】
2016002099.tif 000022
【０２２７】
なお、上記のように、局所領域の中心の画素についての３値比較コード（Ｔ（０，０）が「０１ｂ」であるものとされる場合、対角線上に位置する２つの頂点の比較コードが、どちらも「００ｂ」となる場合、或いは、どちらも「１０ｂ」となる場合に限り上記の条件が満たされる。
【０２２８】
上記の２つの検出条件を加えた場合のパターン判別処理を図４４〜図４６に示す。図４４〜図４６は、実施の形態３の図３２〜図３４と同様であるが、ステップＳ１５１〜Ｓ１５６が挿入されており、ステップＳ１４１〜Ｓ１４３がステップＳ１６１及びＳ１６２で置き換えられている点で異なる。このうち、ステップＳ１５１、Ｓ１５２、Ｓ１５５、Ｓ１５６は、上記の１つ目の条件を満たすか否かの判定であり、ステップＳ１５３、Ｓ１５４は、上記の２つ目の条件を満たすか否かの判定である。
【０２２９】
具体的には、ステップＳ１５１では、上記の式（１９Ａ）の条件が満たされているか否かの判定を行う。
ステップＳ１５２では、上記の式（１９Ｂ）の条件が満たされているか否かの判定を行う。
ステップＳ１５３では、上記の式（２０Ａ）の条件が満たされているか否かの判定を行う。
ステップＳ１５４では、上記の式（２０Ｂ）の条件が満たされているか否かの判定を行う。
ステップＳ１５５では、上記の式（１９Ｃ）の条件が満たされているか否かの判定を行う。
ステップＳ１５６では、上記の式（１９Ｄ）の条件が満たされているか否かの判定を行う。
【０２３０】
ステップＳ１６１では、３値パターンコード生成部９５ｄが、３値パターンコードＰｎｄを生成する。
ステップＳ１６２では、コード選択部９９が、３値パターンコードＰｎｄを選択して選択コードＤ５６ｄとして出力する。
【０２３１】
なお、局所領域に高周波成分が含まれているか否かの判定を行った後に、２値比較コードの生成（Ｓ１３１）及び２値パターンコードＰｎａの生成（Ｓ１３２）、又は３値パターンコードＰｎｄの生成（Ｓ１６１）を行うものとしているが、局所領域に高周波成分が含まれているか否かの判定を行うとともに、２値比較コードの生成（Ｓ１３１）及び２値パターンコードＰｎａの生成（Ｓ１３２）、並びに３値パターンコードＰｎｄの生成（Ｓ１６１）を並行して行い、局所領域に高周波成分が含まれているか否かの判定の結果に応じて、２値パターンコードＰｎａ又は３値パターンコードＰｎｄの選択（Ｓ１３３、Ｓ１６２）を行うこととしても良い。
【０２３２】
上記のように２つの検出条件を追加することで、３値パターンコード生成部９５ｄが出力する３値パターンコードＰｎｄは、４５５個の値のいずれかを取ることになり、係数データ記憶部５７ｄには、３値パターンコードＰｎｄに対応する係数データとして、４４５個の係数データを記憶すれば足りる。なお、２値パターンコードＰｎａに対応する係数データの数は２５６であり、実施の形態３と同じである。
【０２３３】
実施の形態３では、パターンコード生成部９５が出力する３値パターンコードＰｎｃが取り得る値の数が７８５個であるのに対し、実施の形態４のパターンコード生成部９５ｄが出力する３値パターンコードＰｎｄが取り得る値の数は４４５個である。
【０２３４】
実施の形態３では、コード変換部９７で６５６１個の値のいずれかを取る連結コードＰｎｂから７８５個の値のいずれかを取る３値パターンコードＰｎｃに変換する際に大規模な変換テーブル回路が必要となる。この結果、係数データ記憶部５７ｃの容量を減らすことができるにも拘らず、回路規模の削減効果が小さくなってしまう。実施の形態４は、この問題をも解決するものであり、局所領域における比較コードの配列から比較コードの出現パターンと、同一の値を有する比較コードが連続する回数（連続数）のシーケンス（列）を求め、これらに基づいて変換テーブルを用いてコード変換を行って、３値パターンコードＰｎｄを生成することとしており、これによりコード生成のための回路規模の抑制を図る。
【０２３５】
具体的には、本実施の形態では、上記の出現パターンに対応する出現パターンコードと、連続数のシーケンスに対応する連続数コードのシーケンスとを生成し、これらを組合わせることで３値パターンコードＰｎｄを生成する。
【０２３６】
まず、出現パターンコードの生成について説明する。出現パターンコードの生成は、出現パターンコード生成部１９１で行われる。
局所領域の周辺画素についての３値比較コードＴ（ｓ，ｔ）を図３１（ｂ）に矢印付きの線ＡＲｄで示す順序に並べた場合に出現する比較コードの出現パターン（変遷パターン）は、図４４〜図４６のパターン判別処理によって、高周波成分が含まれるとは判定されなかった局所領域（従って、３値パターンコードＰｎｄの生成が必要とされる局所領域）については、図４７に記載された１７個のいずれかである。ここで出現パターンとは、比較コードを図３１（ｂ）に矢印付きの線ＡＲｄで示す順序で並べたときに、比較コードの値がどのように変化するかを表すものであり、比較コードの値が同じ値を維持する限り変化はないものとして扱う。なお、図４７では、出現パターンの最後に現れる比較コードに括弧を付けているがその理由については後述する。
【０２３７】
例えば、図４７のＮｏ．１の「００ｂ→０１ｂ→（００ｂ）」は、比較コードの値が「００ｂ」である画素が１つ以上連続して現れた後、比較コードの値が「０１ｂ」である画素が１つ以上連続して現れ、さらにその後、比較コードの値が「００ｂ」である画素が１つ以上連続して現れることを意味する。
【０２３８】
図４７は、出現パターンを３つのカテゴリーに分けている。
第１のカテゴリーは、比較コードが３つの値のうちの１つの値しかとらない場合であり、この場合の出現パターンの番号をＮｏ．０としている。この場合、比較コードはすべて０１ｂを取る。
【０２３９】
第２のカテゴリーは、比較コードが３つの値のうちの２つの値しかとらない場合であり、パターンＮｏ．１からＮｏ．６までを含む。
第３のカテゴリーは、比較コードが３つの値のすべてを取る場合であり、パターンＮｏ．７からＮｏ．１６までを含む。
【０２４０】
図４７にはさらに、それぞれの出現パターンに対して生成される出現パターンコードが示されている。出現パターンコードは、基本コードと拡張コードとに分けられる。
基本コードの生成は、基本コード生成部１９４で行われ、拡張コードの生成は、拡張コード生成部１９５で行われる。
【０２４１】
パターンＮｏ．０の場合には、パターンＮｏ．５の場合と同じ出現パターンコードを生成する。その理由は後述する。
【０２４２】
パターンＮｏ．１とパターンＮｏ．２とは「００ｂ」と「１０ｂ」とが置き換わった関係であり、この場合、基本コードはともに「１１１０ｂ」であるが、拡張コードが異なる。即ちパターンＮｏ．１に対する拡張コードは「０ｂ」であり、パターンＮｏ．２に対する拡張コードは「１ｂ」である。
同様に、パターンＮｏ．３とパターンＮｏ．４とは「００ｂ」と「１０ｂ」とが置き換わった関係である。この場合、基本コードはともに「１１０１ｂ」であるが、拡張コードが異なる。即ちパターンＮｏ．３に対する拡張コードは「０ｂ」であり、パターンＮｏ．４に対する拡張コードは「１ｂ」である。
同様に、パターンＮｏ．５とパターンＮｏ．６とは「００ｂ」と「１０ｂ」とが置き換わった関係である。この場合、基本コードはともに「１１００ｂ」であるが、拡張コードが異なる。即ちＮｏ．５に対する拡張コードは「０ｂ」であり、Ｎｏ．６に対する拡張コードは「１ｂ」である。
【０２４３】
第３のカテゴリーにおいても同様である。即ち、パターンＮｏ．７とパターンＮｏ．８とは「００ｂ」と「１０ｂ」とが置き換わった関係であり、この場合、基本コードはともに「１０１０ｂ」であるが、拡張コードが異なる。即ちパターンＮｏ．７に対する拡張コードは「０ｂ」であり、パターンＮｏ．８に対する拡張コードは「１ｂ」である。
同様に、パターンＮｏ．９とパターンＮｏ．１０とは「００ｂ」と「１０ｂ」とが置き換わった関係である。この場合、基本コードはともに「１００１ｂ」であるが、拡張コードが異なる。即ちパターンＮｏ．９に対する拡張コードは「０ｂ」であり、パターンＮｏ．１０に対する拡張コードは「１ｂ」である。
同様に、パターンＮｏ．１１とパターンＮｏ．１２とは「００ｂ」と「１０ｂ」とが置き換わった関係である。この場合、基本コードはともに「１０００ｂ」であるが、拡張コードが異なる。即ちパターンＮｏ．１１に対する拡張コードは「０ｂ」であり、パターンＮｏ．１２に対する拡張コードは「１ｂ」である。
【０２４４】
同様に、パターンＮｏ．１３とパターンＮｏ．１４とは「００ｂ」と「１０ｂ」とが置き換わった関係である。この場合、基本コードはともに「０１ｂ」であるが、拡張コードが異なる。即ちパターンＮｏ．１３に対する拡張コードは「０ｂ」であり、パターンＮｏ．１４に対する拡張コードは「１ｂ」である。
同様に、パターンＮｏ．１５とパターンＮｏ．１６とは「００ｂ」と「１０ｂ」とが置き換わった関係である。この場合、基本コードはともに「００ｂ」であるが、拡張コードが異なる。即ちパターンＮｏ．１５に対する拡張コードは「０ｂ」であり、パターンＮｏ．１６に対する拡張コードは「１ｂ」である。
【０２４５】
以上のように、本実施の形態では、比較コード「００ｂ」と「１０ｂ」が置き換わった関係にある２つのパターン（例えば、Ｎｏ．１とＮｏ．２）を１組とし、組毎の基本コードと、組の中での２パターンを区別する為の拡張コードが割り当てられている。
そして、パターンＮｏ．０、及びパターンＮｏ．１〜Ｎｏ．１２に対する出現パターンコードは５ビットであるのに対し、パターンＮｏ．１３〜Ｎｏ．１６に対する出現パターンコードは３ビットである。
【０２４６】
例えば、比較コードの配列が図４８（ａ）の如くである場合、比較コードの出現順序は、「０１ｂ」→「１０ｂ」→「０１ｂ」（「０１ｂ」が２回続けて現れ、「１０ｂ」が５回続けて現れ、「０１ｂ」が１回現れる）であり、図４７のパターンＮｏ．６に該当する。この場合、図４８（ｂ）に示すように、拡張コードとして「１ｂ」が生成され、基本コードとして「１１００ｂ」が生成される。
【０２４７】
また、比較コードの配列が図４９（ａ）の如くである場合、比較コードの出現順序は、「１０ｂ」→「０１ｂ」→「００ｂ」→「０１ｂ」→「１０ｂ」{（「１０ｂ」、「０１ｂ」、「００ｂ」がそれぞれ１回ずつ現れ、その後「０１ｂ」が４回続けて現れ、最後に「１０ｂ」が１回現れる）であり、図４７のパターンＮｏ．１４に該当する。この場合、図４９（ｂ）に示すように、拡張コードとして「１ｂ」が生成され、基本コードとして「０１ｂ」が生成される。
【０２４８】
次に、連続数コードの生成について説明する。連続数コードの生成は、連続数コード生成部１９２で行われる。
【０２４９】
局所領域の周辺画素についての３値比較コードＴ（ｓ，ｔ）を図３１（ｂ）に矢印付きの線ＡＲｄで示す順序に並べた場合に、同じ値の比較コードが連続する回数（連続数：ランレングス）に応じた連続数コードを生成し、生成された連続数コードを順に出力する。この連続数コードの生成は、連続数コード生成部１９６で行われる。
この場合、出現する比較コードの値の数が２の場合と３の場合とについてそれぞれ用意された別箇の変換テーブルにより、各連続数に対応する連続数コードを生成する。但し、最後に現れるラン（同じ値の連続）については、連続数コードを生成しない。最後に現れるランの長さは、それ以前に現れるランの長さから自ずと決まるものであるためである。
図４７の出現パターンにおいて、最後の比較コードに括弧が付けてあるのは、その比較コードについては連続数に基づく連続数コードを生成しないことを表す。最後の比較コードの連続数は０となる場合もある。
【０２５０】
出現する比較コードの値の数が２の場合には、図５０（ａ）の変換テーブルにより連続数コードを生成し、出現する比較コードの値の数が３の場合には、図５０（ｂ）の変換テーブルにより連続数コードを生成する。
図５０（ａ）に示すように、出現する比較コードの値の数が２の場合、各連続数に対応する連続数コードは３ビットである。即ち、図５０（ａ）の変換テーブルは、出力される連続数コードが３ビットに固定された固定長テーブルである。
【０２５１】
図５０（ｂ）に示すように、出現する比較コードの値の数が３の場合、連続数が３までは、各連続数に対応する連続数コードは２ビットであり、連続数が４以上では、各連続数に対応する連続数コードは３ビットである。即ち、図５０（ｂ）の変換テーブルは、出力される連続数コードが２ビット又は３ビットである可変長テーブルである。
なお、出現する比較コードの値の数が３の場合、高周波成分が含まれない配列における連続数の最大値は５である。即ち、出現する比較コードの値の数が３で、連続数が６の場合には、高周波成分が存在すると判定される。なお、連続数が７の場合には、出現する比較コードの値の数は２となり、連続数が８の場合には、出現する比較コードの値の数は１となる。
【０２５２】
生成された連続数コードは、対応するランの出現の順に出力される。
例えば、比較コードの配列が図４８（ａ）に示す如くである場合、出現する比較コードの値の数は２であり、「０１」が２回続き、「１０」が５回続くので、連続数コードとして「００１ｂ」と「１００ｂ」が生成され、これらが順に出力される。順に出力される連続数コードを連結することで生成されるシーケンスは図４８（ｂ）に示すように「００１１００ｂ」となる。
【０２５３】
また、比較コードの配列が図４９（ａ）に示す如くである場合、出現する比較コードの値の数は３であり、「１０」１回、「０１」が１回、「００」が１回現れた後、「０１」が４回続き、最後に「１０」が現れので、連続数コードとして「００ｂ」が３回生成され、その後で、「１１０ｂ」が生成され、これらが順に出力される。順に出力される連続数コードを連結することで生成されるシーケンスは図４９（ｂ）に示すように「００００００１１０ｂ」となる。
【０２５４】
以上のようにして生成された拡張コードと、基本コードと、連続数コードのシーケンスとが連結されて３値パターンコードＰｎｄが生成される。この連結はコード組合せ部１９３で行われる。
【０２５５】
例えば、図４８（ｂ）の場合、出現パターンコード「１１１００ｂ」と連続数コード「００１ｂ」、「１００ｂ」とを連結して、１１ｂｉｔの組合せコード「１１１００００１１００ｂ」を生成する。
【０２５６】
図４９（ｂ）の場合、出現パターンコード「１０１ｂ」と、連続数コード「００ｂ」、「００ｂ」、「００ｂ」、「１１０ｂ」とを連結して、１２ｂｉｔの組合せコード「１０１００００００１１０ｂ」を生成する。
【０２５７】
１２ビットの組合せコードが生成された場合には、そのまま３値パターンコードＰｎｄとして出力する。１１ビットの組合せコードが生成された場合には、最下位に「０ｂ」又は「１ｂ」を付加し、３値パターンコードＰｎｄとして出力する。
【０２５８】
上記のように、比較コードが同じ値しかとらない出現パターン（Ｎｏ．０）の場合には、比較コードの値はすべて「０１ｂ」である。この場合、連続数コードが「１１１ｂ」となるので、出現パターンコードをどのように定めても、パターンＮｏ．１〜Ｎｏ．６のいずれとも区別できる。しかし、出現する比較コードの値が「０１ｂ」であることを考慮して、パターンＮｏ．５又はパターンＮｏ．６と同じ出現パターンコードとするのが望ましい。本実施の形態では、パターンＮｏ．５と同じ出現パターンコードを生成することとしている。
なお、出現する比較コードの値の数が３である場合に、連続数コードが「１１１ｂ」となる場合があるが、出現パターンコードが異なるので、区別が可能である。
【０２５９】
コード選択部９９は、以上のようにして生成された３値パターンコードＰｎｄと、２値パターンコード生成部７５で生成された２値パターンコードＰｎａのいずれかを選択して出力する。即ち、高周波成分検出部９８ｄで高周波成分が含まれていると判断されたときは２値パターンコードＰｎａを選択して出力し、高周波成分検出部９８ｄで高周波成分が含まれているとは判断されなかったときは３値パターンコードＰｎｄを選択して出力する。
【０２６０】
本実施の形態では、可変長テーブル等によって得られる３値パターンコードＰｎｄのｂｉｔ長が最大１２ｂｉｔとなり、上記のようにして生成される３値パターンコードＰｎｄの最小値は、「００００００１０００００ｂ」となり、２値パターンコードＰｎａの最大値「１１１１１１１１ｂ」よりも小さい。従って、２値パターンコードＰｎａとして「００００００００ｂ」から「１１１１１１１１ｂ」までの値を用いる場合、３値パターンコードＰｎｄと取り得る値の範囲が重なることになる。その場合には、２値パターンコードＰｎａに対応する係数データを記憶するメモリ領域と、３値パターンコードＰｎｄに対応する係数データを記憶するメモリ領域として、互いに同じアドレス値でアクセス可能な別個の領域を有する係数データ記憶部５７ｄを用いても良く、２値パターンコード生成部７５で生成された２値パターンコードＰｎａに予め定めた値を加えることで得られたコード（変換された２値パターンコード）Ｐｎａ’を、２値パターンコードＰｎａの代わりに用いても良い。例えば、図４７の出現パターンコードとして、「１１１１ｂ」及び「１０１１ｂ」が用いられていないことを考慮し、２値パターンコードＰｎａの上位に「１１１１」又は「１０１１」を加えたものを、変換後の２値パターンコードＰｎａ’として用いても良い。このようにすれば、係数データ記憶部５７ｄのメモリの容量はアドレス１２ｂｉｔ幅分（４０９６）あれば足りる。
【０２６１】
仮に、組合せコードを、実施の形態３と同様にアドレス変換して昇順又は降順に並んだ３値パターンコードＰｎｄに変換した場合には、４４５個の値となり、これと、２値パターンコードの取り得る値の数（２５６）との和である、７０１個が、選択コードＤ５６ｄの取り得る値の総数となり、係数データ記憶部は、７０１個のアドレス、或いは７０１個以上で最小の２のべき乗である１０２４（２の１０乗）個のアドレスを用意すれば十分である。これに対し、本実施の形態では、その４倍の数のアドレス、従ってそれに応じた容量のメモリを使用する。
一方、比較コードの配列に基づく３値パターンコードＰｎｄの生成を、図４７のような１６個の出現パターンコードのいずれかを生成する変換テーブルと、図５０（ａ）のような８個の連続数コードのいずれかを生成する変換テーブルと、図５０（ｂ）のような５個の連続数コードのいずれかを生成する変換テーブルと、これらの周辺回路で構成することができ、小規模な回路で実現することができるというメリットがある。
【０２６２】
実施の形態１〜実施の形態４では、補間画素が１以下、つまり１倍より大きく２倍以下の拡大処理について説明した。２倍より大きい拡大処理、つまり補間画素が１より多くなる場合は、実施の形態１〜実施の形態４に開示した方式を複数回繰り返すことで実現できる。
【０２６３】
以上本発明を画像拡大装置として説明したが、画像拡大装置で実施される画像拡大方法もまた本発明の一部を成す。上記の画像拡大装置を構成する要素の一部又は全部、或いは上記の画像拡大方法における処理の一部又は全部は、ソフトウェアにより、即ちプログラムされたコンピュータによって実現することができる。従って、上記の画像拡大装置の要素の一部又は全部、或いは上記の画像拡大方法における処理の一部又は全部をコンピュータに実行させるためのプログラム、及び該プログラムを記録したコンピュータで読み取り可能な記録媒体もまた本発明の一部を成す。
【０２６４】
以上で説明したように、本発明によれば、回路規模、メモリ容量を削減しつつ、ノイズへの耐性を向上させて、ハードウェア化に適した高品質な高解像度化を行うことができる。
【符号の説明】
【０２６５】
５２  線形補間部、  ５４  高解像度パッチ生成部、  ５５  パッチ平均化部、  ５６  パターン判別部、  ５７、５７ｂ、５７ｃ  係数データ記憶部、  ５８、５８ｂ、５８ｃ  係数データ読出し部、  ６２  特徴成分分離部、  ６４  高解像度化変換部、  ６６  特徴成分合成部、  ７１  局所領域抽出部、  ７２  領域内平均算出部、  ７３、８３、９３  比較コード生成部、  ７３ｃ  ２値比較コード生成部、  ７４、８４、９４  選択コード生成部、  ７５  ２値パターンコード生成部、  ８３ｃ  ３値比較コード生成部、  ８５  ３値パターンコード生成部、  ９５  ３値パターンコード生成部、  ９６  コード連結部、  ９７  コード変換部、  ９８  高周波成分検出部、  ９９  コード選択部、  １０１  画像縮小部、  １０２  線形補間部、  １０３  特徴成分分離部、  １０５  パターン判別部、  １０４  特徴成分分離部、  １０６  分類部、  １０７  演算部、  １０８  係数データ抽出部、  １９１  １９１  出現パターンコード生成部、  １９２  連続数コード生成部、  １９３  コード組合せ部、  Ｓ１１  線形補間、  Ｓ１２  パッチ抽出、  Ｓ１４  パターン判別、  Ｓ１５  係数データ読出し、  Ｓ１６  高解像度化変換、  Ｓ１７  合成、  Ｓ１８  判定、  Ｓ１９  パッチ平均化、  Ｓ２１  局所領域抽出、  Ｓ２２  領域内平均算出、  Ｓ２３  ２値比較コード生成、  Ｓ２４  ２値パターンコード生成、  Ｓ３３  ３値比較コード生成、  Ｓ３４  ３値パターンコード生成。
【図１】
2016002099.tif 000023
【図２】
2016002099.tif 000024
【図３】
2016002099.tif 000025
【図４】
2016002099.tif 000026
【図５】
2016002099.tif 000027
【図６】
2016002099.tif 000028
【図７】
2016002099.tif 000029
【図８】
2016002099.tif 000030
【図９】
2016002099.tif 000031
【図１０】
2016002099.tif 000032
【図１１】
2016002099.tif 000033
【図１２】
2016002099.tif 000034
【図１３】
2016002099.tif 000035
【図１４】
2016002099.tif 000036
【図１５】
2016002099.tif 000037
【図１６】
2016002099.tif 000038
【図１７】
2016002099.tif 000039
【図１８】
2016002099.tif 000040
【図１９】
2016002099.tif 000041
【図２０】
2016002099.tif 000042
【図２１】
2016002099.tif 000043
【図２２】
2016002099.tif 000044
【図２３】
2016002099.tif 000045
【図２４】
2016002099.tif 000046
【図２５】
2016002099.tif 000047
【図２６】
2016002099.tif 000048
【図２７】
2016002099.tif 000049
【図２８】
2016002099.tif 000050
【図２９】
2016002099.tif 000051
【図３０】
2016002099.tif 000052
【図３１】
2016002099.tif 000053
【図３２】
2016002099.tif 000054
【図３３】
2016002099.tif 000055
【図３４】
2016002099.tif 000056
【図３５】
2016002099.tif 000057
【図３６】
2016002099.tif 000058
【図３７】
2016002099.tif 000059
【図３８】
2016002099.tif 000060
【図３９】
2016002099.tif 000061
【図４０】
2016002099.tif 000062
【図４１】
2016002099.tif 000063
【図４２】
2016002099.tif 000064
【図４３】
2016002099.tif 000065
【図４４】
2016002099.tif 000066
【図４５】
2016002099.tif 000067
【図４６】
2016002099.tif 000068
【図４７】
2016002099.tif 000069
【図４８】
2016002099.tif 000070
【図４９】
2016002099.tif 000071
【図５０】
2016002099.tif 000072
【国際調査報告】
2016002099.tif 000073
2016002099.tif 000074