(57)【要約】【課題】  画像の特性に応じた最適な補間法で原画像を補間した補間画素の画素データを生成できる画像処理方法、画像処理装置及び電子機器を提供する。【解決手段】  原画像のスケール処理後の画素データを求めるための画像処理方法は、原画像がべた画像であるか否かを判定するステップと、べた画像であると判定されたとき、第１の補間処理方法により、該補間画素の画素データを求めるステップと、べた画像ではないと判定されたとき、少なくとも第１及び第２の画素を含む複数の画素の画素データに基づいてエッジを検出するステップと、前記複数の画素の画素データに基づいてエッジが検出されたとき、前記第１の補間処理方法により前記補間画素の画素データを求めるステップと、前記複数の画素の画素データに基づいてエッジが検出されないとき、第２の補間処理方法により前記補間画素の画素データを求めるステップとを含む。【選択図】      図３
2008234426.tif 000002
【特許請求の範囲】
【請求項１】
原画像の拡大画像又は該原画像の縮小画像の画素データを求めるための画像処理方法であって、
前記原画像の水平方向又は垂直方向に隣接する第１及び第２の画素の画素データが同一であるか否かを判定するステップと、
前記第１及び第２の画素の画素データが同一であると判定されたとき、前記第１及び第２の画素の補間画素の画素データとして前記第１又は第２の画素の画素データを出力する第１の補間処理方法により、該補間画素の画素データを求めるステップと、
前記第１及び第２の画素の画素データが同一ではないと判定されたとき、少なくとも前記第１及び第２の画素を含む複数の画素の画素データに基づいてエッジを検出するステップと、
前記複数の画素の画素データに基づいてエッジが検出されたとき、前記第１の補間処理方法により前記補間画素の画素データを求めるステップと、
前記複数の画素の画素データに基づいてエッジが検出されないとき、フィルタ効果を有する第２の補間処理方法により前記補間画素の画素データを求めるステップとを含むことを特徴とする画像処理方法。
【請求項２】
請求項１において、
前記第１の補間処理方法が、最近傍法であり、
前記第２の補間処理方法が、双３次補間法であることを特徴とする画像処理方法。
【請求項３】
請求項１又は２において、
前記複数の画素の画素データに基づいてエッジが検出されないとき、前記第１の画素の周囲画素の少なくとも一部が斜め線を構成するか否かを判定するステップと、
前記周囲画素の少なくとも一部が斜め線を構成すると判定されたとき、前記補間画素の画素データを前記第２の補間処理方法により求めるステップと、
前記周囲画素の少なくとも一部が斜め線を構成しないと判定されたとき、前記補間画素の画素データを前記第１の補間処理方法により求めるステップとを含むことを特徴とする画像処理方法。
【請求項４】
請求項３において、
前記第１の補間処理方法が、
線形補間法であることを特徴とする画像処理方法。
【請求項５】
請求項３又は４において、
前記周囲画素の少なくとも一部が斜め線を構成しないと判定されたとき、前記補間画素の画素データを、前記第１の補間処理方法に代えて前記第２の補間処理方法により求め、
該第２の補間処理方法によるカットオフ周波数が、
前記複数の画素の画素データに基づいてエッジが検出されないときに前記補間画素の画素データを求める第２の補間処理方法のカットオフ周波数より高いことを特徴とする画像処理方法。
【請求項６】
請求項３乃至５のいずれかにおいて、
前記周囲画素の少なくとも一部が斜め線を構成するか否かを判定するステップが、
前記第１の画素を中心画素とする所与の画素ブロック単位で、前記周囲画素の各画素の画素データと前記中心画素の画素データとの差分値を求めるステップと、
前記画素ブロック内の画素データの最大値と最小値との間に設定された閾値に基づいて、前記画素ブロック内の差分値を２値化するステップと、
前記画素ブロックの２値化されたデータに基づいて、前記周囲画素の少なくとも一部が斜め線を構成するか否かを判定するステップとを含むことを特徴とする画像処理方法。
【請求項７】
請求項３乃至６のいずれかにおいて、
前記画素ブロックが、前記中心画素を中心に、前記水平方向に３画素が並ぶと共に前記垂直方向に３画素が並ぶブロックであり、
前記原画像の水平方向の前記補間画素の画素データを求める際に、前記中心画素の水平方向に隣接する画素に垂直方向に隣接する両画素がエッジである場合、及び該両画素がエッジではなく、且つ前記中心画素の垂直方向に隣接する両画素がエッジではない場合を除いて、前記周囲画素の少なくとも一部が斜め線を構成すると判定することを特徴とする画像処理方法。
【請求項８】
請求項３乃至７のいずれかにおいて、
前記画素ブロックが、前記中心画素を中心に、前記水平方向に３画素が並ぶと共に前記垂直方向に３画素が並ぶブロックであり、
前記原画像の垂直方向の前記補間画素の画素データを求める際に、前記中心画素の垂直方向に隣接する画素に水平方向に隣接する両画素がエッジである場合、及び該両画素がエッジではなく、且つ前記中心画素の水平方向に隣接する両画素がエッジではない場合を除いて、前記周囲画素の少なくとも一部が斜め線を構成すると判定することを特徴とする画像処理方法。
【請求項９】
請求項６乃至８のいずれかにおいて、
前記画素ブロックの各位置を重み付けすることにより得られる数値データを用いて、前記周囲画素の少なくとも一部が斜め線を構成するか否かを判定することを特徴とする画像処理方法。
【請求項１０】
請求項１乃至９のいずれかにおいて、
前記第１及び第２の画素の画素データを用いたハイパスフィルタ処理の結果に基づいて、前記エッジを検出することを特徴とする画像処理方法。
【請求項１１】
原画像の拡大画像又は該原画像の縮小画像の画素データを求めるための画像処理装置であって、
前記原画像の水平方向又は垂直方向に隣接する第１及び第２の画素の画素データが同一であるか否かを判定するベタ画像判定部と、
少なくとも前記第１及び第２の画素を含む複数の画素の画素データに基づいてエッジを検出するエッジ検出部と、
前記第１及び第２の画素の補間画素の画素データを求める補間画素データ演算部とを含み、
前記補間画素データ演算部が、
前記第１及び第２の画素の画素データが同一であると判定されたとき、前記補間画素の画素データとして前記第１又は第２の画素の画素データを出力する第１の補間処理方法により前記補間画素の画素データを求め、前記複数の画素の画素データに基づいてエッジが検出されたとき、前記第１の補間処理方法により前記補間画素の画素データを求め、前記複数の画素の画素データに基づいてエッジが検出されないとき、フィルタ効果を有する第２の補間処理方法により前記補間画素の画素データを求めることを特徴とする画像処理装置。
【請求項１２】
請求項１１において、
前記第１の補間処理方法が、最近傍法であり、
前記第２の補間処理方法が、双３次補間法であることを特徴とする画像処理装置。
【請求項１３】
請求項１１又は１２において、
前記周囲画素の少なくとも一部が斜め線を構成するか否かを判定する斜め線判定部を含み、
前記複数の画素の画素データに基づいてエッジが検出されず、且つ前記周囲画素の少なくとも一部が斜め線を構成すると判定されたとき、前記補間画素データ演算部が、前記補間画素の画素データを前記第２の補間処理方法により求め、
前記複数の画素の画素データに基づいてエッジが検出されず、且つ前記周囲画素の少なくとも一部が斜め線を構成しないと判定されたとき、前記補間画素データ演算部が、前記補間画素の画素データを前記第１の補間処理方法により求めることを特徴とする画像処理装置。
【請求項１４】
請求項１３において、
前記第１の補間処理方法が、
線形補間法であることを特徴とする画像処理装置。
【請求項１５】
請求項１３又は１４において、
前記周囲画素の少なくとも一部が斜め線を構成しないと判定されたとき、前記補間画素の画素データを、前記第１の補間処理方法に代えて前記第２の補間処理方法により求め、
該第２の補間処理方法によるカットオフ周波数が、
前記複数の画素の画素データに基づいてエッジが検出されないときに前記補間画素の画素データを求める第２の補間処理方法のカットオフ周波数より高いことを特徴とする画像処理装置。
【請求項１６】
請求項１３乃至１５のいずれかにおいて、
前記斜め線判定部が、
前記第１の画素を中心画素とする所与の画素ブロック単位で、該中心画素の周囲画素の各画素の画素データと前記中心画素の画素データとの差分値を求める差分値演算部と、
前記画素ブロック内の画素データの最大値と最小値との間に設定された閾値に基づいて、前記画素ブロック内の差分値を２値化する２値化部とを含み、
前記画素ブロックの２値化されたデータに基づいて、前記周囲画素の少なくとも一部が斜め線を構成するか否かを判定することを特徴とする画像処理装置。
【請求項１７】
請求項１３乃至１６のいずれかにおいて、
前記画素ブロックが、前記中心画素を中心に、前記水平方向に３画素が並ぶと共に前記垂直方向に３画素が並ぶブロックであり、
前記原画像の水平方向の前記補間画素の画素データを求める際に、前記中心画素の水平方向に隣接する画素に垂直方向に隣接する両画素がエッジである場合、及び該両画素がエッジではなく、且つ前記中心画素の垂直方向に隣接する両画素がエッジではない場合を除いて、前記周囲画素の少なくとも一部が斜め線を構成すると判定することを特徴とする画像処理装置。
【請求項１８】
請求項１３乃至１７のいずれかにおいて、
前記画素ブロックが、前記中心画素を中心に、前記水平方向に３画素が並ぶと共に前記垂直方向に３画素が並ぶブロックであり、
前記原画像の垂直方向の前記補間画素の画素データを求める際に、前記中心画素の垂直方向に隣接する画素に水平方向に隣接する両画素がエッジである場合、及び該両画素がエッジではなく、且つ前記中心画素の水平方向に隣接する両画素がエッジではない場合を除いて、前記周囲画素の少なくとも一部が斜め線を構成すると判定することを特徴とする画像処理装置。
【請求項１９】
請求項１６乃至１８のいずれかにおいて、
前記画素ブロックの各位置を重み付けすることにより得られる数値データを用いて、前記周囲画素の少なくとも一部が斜め線を構成するか否かを判定することを特徴とする画像処理装置。
【請求項２０】
請求項１３乃至１９のいずれかにおいて、
前記第１及び第２の画素の画素データを用いたハイパスフィルタ処理の結果に基づいて、前記エッジを検出することを特徴とする画像処理装置。
【請求項２１】
請求項１３乃至２０のいずれか記載の画像処理装置と、
前記画像処理装置によって画像データが供給される駆動部と、
前記駆動部によって駆動される表示パネルとを含むことを特徴とする電子機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理方法、画像処理装置及び電子機器に関する。
【背景技術】
【０００２】
近年、携帯電話機等の携帯機器の進化が著しく、インターネット等のコンピュータネットワークへの接続が可能となり、携帯機器に搭載される表示パネルには、種々のコンテンツが表示される。一方、表示パネルの画面サイズの拡大化や高精細化により、携帯機器の表示パネルとして例えばＶＧＡ（Video Graphics Array）サイズが採用されるようになっている。そのため、上述のような種々のコンテンツを表示パネルに表示させるため、近年の携帯機器には、画像のスケーラ機能を実現することが求められる。このスケーラ機能では、スケール処理後の画像の画質の低下をできるだけ抑え、且つ見やすい画像を生成する必要がある。
【０００３】
そこで、例えば特許文献１には、原画像を拡大する際に得られる補間点がエッジ部にあるか否かを検出し、その検出結果に応じてレプリケーション補間方法やスプライン補間方法を切り替えて、補間点の画像データを求めるようにした技術が開示されている。また例えば特許文献２には、原画像が文字か自然画かを判別し、その判別結果に応じてキュービックコンボリューション方式の補間回路の係数を切り替えるようにした技術が開示されている。
【特許文献１】特開平９−２５２４０１号公報
【特許文献２】特開２００１−１８９８５０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、一般的に、携帯機器が表示するコンテンツは、文字等のテキスト情報、ＣＧ（Computer Graphics）画像や自然画が混在する情報である。従って、このようなコンテンツをキュービックコンボリューション方式でのみ補間してしまうと、テキスト情報やＣＧ画像等の急峻なエッジがぼやけた画像となるという問題がある。
【０００５】
また、レプリケーション補間方法やスプライン補間方法を切り替える場合であっても、エッジの検出を前後の画素のみの差分や一次微分のみで判定してしまうと、斜め線を有するテキスト情報のエッジ部等において、ジャギーが目立つ画像になる場合があるという問題がある。
【０００６】
更に、いわゆるべた画像にキュービックコンボリューション方式で補間すると、該画像のエッジ付近でリンギングが発生するという問題がある。
【０００７】
本発明は、以上のような技術的課題に鑑みてなされたものであり、その目的とするところは、画像の特性に応じた最適な補間法で原画像を補間した補間画素の画素データを生成できる画像処理方法、画像処理装置及び電子機器を提供することにある。
【課題を解決するための手段】
【０００８】
上記課題を解決するために本発明は、
原画像の拡大画像又は該原画像の縮小画像の画素データを求めるための画像処理方法であって、
前記原画像の水平方向又は垂直方向に隣接する第１及び第２の画素の画素データが同一であるか否かを判定するステップと、
前記第１及び第２の画素の画素データが同一であると判定されたとき、前記第１及び第２の画素の補間画素の画素データとして前記第１又は第２の画素の画素データを出力する第１の補間処理方法により、該補間画素の画素データを求めるステップと、
前記第１及び第２の画素の画素データが同一ではないと判定されたとき、少なくとも前記第１及び第２の画素を含む複数の画素の画素データに基づいてエッジを検出するステップと、
前記複数の画素の画素データに基づいてエッジが検出されたとき、前記第１の補間処理方法により前記補間画素の画素データを求めるステップと、
前記複数の画素の画素データに基づいてエッジが検出されないとき、フィルタ効果を有する第２の補間処理方法により前記補間画素の画素データを求めるステップとを含む画像処理方法に関係する。
【０００９】
本発明においては、原画像の水平方向又は垂直方向に隣接する第１及び第２の画素の画素データが同一であるか否かを判別し、べた画像であるか否かを判別している。そして、ベタ画像であることが検出されたとき、又はエッジ出ることが検出されたときに、フィルタ効果を有しない第１の補間処理方法で補間画素の画素データを求め、エッジが検出されないときにはフィルタ効果を有する第２の補間処理方法で補間画素の画素データを求めるようにしている。こうすることで、べた画像、エッジ部分にある画素を補間した補間画素の画素データはフィルタ効果のない状態で画素データが求められるため、テキスト情報やＣＧ画像等の急峻なエッジがぼやけた画像となるという事態を確実に回避できるようになる。
【００１０】
また本発明に係る画像処理方法では、
前記第１の補間処理方法が、最近傍法であり、
前記第２の補間処理方法が、双３次補間法であってもよい。
【００１１】
本発明によれば、公知の補間処理方法を採用したので、簡素な構成で画像処理方法を実現できるようになる。
【００１２】
また本発明に係る画像処理方法では、
前記複数の画素の画素データに基づいてエッジが検出されないとき、前記第１の画素の周囲画素の少なくとも一部が斜め線を構成するか否かを判定するステップと、
前記周囲画素の少なくとも一部が斜め線を構成すると判定されたとき、前記補間画素の画素データを前記第２の補間処理方法により求めるステップと、
前記周囲画素の少なくとも一部が斜め線を構成しないと判定されたとき、前記補間画素の画素データを前記第１の補間処理方法により求めるステップとを含むことができる。
【００１３】
本発明においては、当該画素の周囲画素の少なくとも一部が斜め線を構成するか否かを判別している。そして、斜め線を構成すると判別されたときには、第２の補間処理方法により補間画素の画素データを求め、斜め線を構成しないと判定されたときには、第１の補間処理方法により補間画素の画素データを求めるようにしている。こうすることで、テキストやＣＧ画像等のエッジが急峻な画像を拡大又は縮小する場合において、拡大処理後又は縮小処理後の画像がぼやけたり、リンギングを発生させたりすることなく、エッジ部分が維持されたシャープな画像を得ることができる。しかも、急峻なエッジが斜め線である場合にはジャギーの発生を確実に抑えるようにしたので、滑らかさも兼ね備えた画像を得ることができるようになる。
【００１４】
また本発明に係る画像処理方法では、
前記第１の補間処理方法が、
線形補間法であってもよい。
【００１５】
また本発明に係る画像処理方法では、
前記周囲画素の少なくとも一部が斜め線を構成しないと判定されたとき、前記補間画素の画素データを、前記第１の補間処理方法に代えて前記第２の補間処理方法により求め、
該第２の補間処理方法によるカットオフ周波数が、
前記複数の画素の画素データに基づいてエッジが検出されないときに前記補間画素の画素データを求める第２の補間処理方法のカットオフ周波数より高くてもよい。
【００１６】
本発明によれば、同じフィルタ効果を有する補間処理方法であるため、第１及び第２の補間処理方法を実現する構成（例えば積和演算回路）を共用化できるようになる。
【００１７】
また本発明に係る画像処理方法では、
前記周囲画素の少なくとも一部が斜め線を構成するか否かを判定するステップが、
前記第１の画素を中心画素とする所与の画素ブロック単位で、前記周囲画素の各画素の画素データと前記中心画素の画素データとの差分値を求めるステップと、
前記画素ブロック内の画素データの最大値と最小値との間に設定された閾値に基づいて、前記画素ブロック内の差分値を２値化するステップと、
前記画素ブロックの２値化されたデータに基づいて、前記周囲画素の少なくとも一部が斜め線を構成するか否かを判定するステップとを含むことができる。
【００１８】
本発明によれば、簡素な構成で、斜め線の判別処理を実現できるようになる。
【００１９】
また本発明に係る画像処理方法では、
前記画素ブロックが、前記中心画素を中心に、前記水平方向に３画素が並ぶと共に前記垂直方向に３画素が並ぶブロックであり、
前記原画像の水平方向の前記補間画素の画素データを求める際に、前記中心画素の水平方向に隣接する画素に垂直方向に隣接する両画素がエッジである場合、及び該両画素がエッジではなく、且つ前記中心画素の垂直方向に隣接する両画素がエッジではない場合を除いて、前記周囲画素の少なくとも一部が斜め線を構成すると判定することができる。
【００２０】
また本発明に係る画像処理方法では、
前記画素ブロックが、前記中心画素を中心に、前記水平方向に３画素が並ぶと共に前記垂直方向に３画素が並ぶブロックであり、
前記原画像の垂直方向の前記補間画素の画素データを求める際に、前記中心画素の垂直方向に隣接する画素に水平方向に隣接する両画素がエッジである場合、及び該両画素がエッジではなく、且つ前記中心画素の水平方向に隣接する両画素がエッジではない場合を除いて、前記周囲画素の少なくとも一部が斜め線を構成すると判定することができる。
【００２１】
上記のいずれかの発明によれば、画素ブロックの所定のパターンを解析するのみで斜め線の判別処理を実現できるので、処理及び構成を非常に簡素化できる。
【００２２】
また本発明に係る画像処理方法では、
前記画素ブロックの各位置を重み付けすることにより得られる数値データを用いて、前記周囲画素の少なくとも一部が斜め線を構成するか否かを判定することができる。
【００２３】
本発明によれば、数値データの比較により斜め線の判別処理をできるようにしたので、非常に高速且つ簡素な構成で画像処理方法を実現できるようになる。
【００２４】
また本発明に係る画像処理方法では、
前記第１及び第２の画素の画素データを用いたハイパスフィルタ処理の結果に基づいて、前記エッジを検出することができる。
【００２５】
本発明によれば、例えば１ドットの太さを有するテキスト情報をエッジ部分として検出できない場合を回避する。
【００２６】
また本発明は、
原画像の拡大画像又は該原画像の縮小画像の画素データを求めるための画像処理装置であって、
前記原画像の水平方向又は垂直方向に隣接する第１及び第２の画素の画素データが同一であるか否かを判定するベタ画像判定部と、
少なくとも前記第１及び第２の画素を含む複数の画素の画素データに基づいてエッジを検出するエッジ検出部と、
前記第１及び第２の画素の補間画素の画素データを求める補間画素データ演算部とを含み、
前記補間画素データ演算部が、
前記第１及び第２の画素の画素データが同一であると判定されたとき、前記補間画素の画素データとして前記第１又は第２の画素の画素データを出力する第１の補間処理方法により前記補間画素の画素データを求め、前記複数の画素の画素データに基づいてエッジが検出されたとき、前記第１の補間処理方法により前記補間画素の画素データを求め、前記複数の画素の画素データに基づいてエッジが検出されないとき、フィルタ効果を有する第２の補間処理方法により前記補間画素の画素データを求める画像処理装置に関係する。
【００２７】
また本発明に係る画像処理装置では、
前記第１の補間処理方法が、最近傍法であり、
前記第２の補間処理方法が、双３次補間法であってもよい。
【００２８】
また本発明に係る画像処理装置では、
前記周囲画素の少なくとも一部が斜め線を構成するか否かを判定する斜め線判定部を含み、
前記複数の画素の画素データに基づいてエッジが検出されず、且つ前記周囲画素の少なくとも一部が斜め線を構成すると判定されたとき、前記補間画素データ演算部が、前記補間画素の画素データを前記第２の補間処理方法により求め、
前記複数の画素の画素データに基づいてエッジが検出されず、且つ前記周囲画素の少なくとも一部が斜め線を構成しないと判定されたとき、前記補間画素データ演算部が、前記補間画素の画素データを前記第１の補間処理方法により求めることができる。
【００２９】
また本発明に係る画像処理装置では、
前記第１の補間処理方法が、
線形補間法であってもよい。
【００３０】
また本発明に係る画像処理装置では、
前記周囲画素の少なくとも一部が斜め線を構成しないと判定されたとき、前記補間画素の画素データを、前記第１の補間処理方法に代えて前記第２の補間処理方法により求め、
該第２の補間処理方法によるカットオフ周波数が、
前記複数の画素の画素データに基づいてエッジが検出されないときに前記補間画素の画素データを求める第２の補間処理方法のカットオフ周波数より高くてもよい。
【００３１】
また本発明に係る画像処理装置では、
前記斜め線判定部が、
前記第１の画素を中心画素とする所与の画素ブロック単位で、該中心画素の周囲画素の各画素の画素データと前記中心画素の画素データとの差分値を求める差分値演算部と、
前記画素ブロック内の画素データの最大値と最小値との間に設定された閾値に基づいて、前記画素ブロック内の差分値を２値化する２値化部とを含み、
前記画素ブロックの２値化されたデータに基づいて、前記周囲画素の少なくとも一部が斜め線を構成するか否かを判定することができる。
【００３２】
また本発明に係る画像処理装置では、
前記画素ブロックが、前記中心画素を中心に、前記水平方向に３画素が並ぶと共に前記垂直方向に３画素が並ぶブロックであり、
前記原画像の水平方向の前記補間画素の画素データを求める際に、前記中心画素の水平方向に隣接する画素に垂直方向に隣接する両画素がエッジである場合、及び該両画素がエッジではなく、且つ前記中心画素の垂直方向に隣接する両画素がエッジではない場合を除いて、前記周囲画素の少なくとも一部が斜め線を構成すると判定することができる。
【００３３】
また本発明に係る画像処理装置では、
前記画素ブロックが、前記中心画素を中心に、前記水平方向に３画素が並ぶと共に前記垂直方向に３画素が並ぶブロックであり、
前記原画像の垂直方向の前記補間画素の画素データを求める際に、前記中心画素の垂直方向に隣接する画素に水平方向に隣接する両画素がエッジである場合、及び該両画素がエッジではなく、且つ前記中心画素の水平方向に隣接する両画素がエッジではない場合を除いて、前記周囲画素の少なくとも一部が斜め線を構成すると判定することができる。
【００３４】
また本発明に係る画像処理装置では、
前記画素ブロックの各位置を重み付けすることにより得られる数値データを用いて、前記周囲画素の少なくとも一部が斜め線を構成するか否かを判定することができる。
【００３５】
また本発明に係る画像処理装置では、
前記第１及び第２の画素の画素データを用いたハイパスフィルタ処理の結果に基づいて、前記エッジを検出することができる。
【００３６】
上記のいずれかの発明によれば、テキスト情報やＣＧ画像等の急峻なエッジがぼやけた画像の生成を確実に回避できる。或いは、上記のいずれかの発明によれば、斜め線を有するテキスト情報のエッジ部等において、ジャギーが目立つ画像の生成を確実に回避できるようになる。或いは、上記のいずれかの発明によれば、画像のエッジ付近でリンギングが発生するという問題を回避できるようになる。
【００３７】
また本発明は、
上記のいずれか記載の画像処理装置と、
前記画像処理装置によって画像データが供給される駆動部と、
前記駆動部によって駆動される表示パネルとを含む電子機器に関係する。
【００３８】
本発明によれば、画像の特性に応じた最適な補間法で原画像を補間した補間画素の画素データを生成できる画像処理装置が適用された電子機器を提供できる。
【発明を実施するための最良の形態】
【００３９】
以下、本発明の実施の形態について図面を用いて詳細に説明する。なお、以下に説明する実施の形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また以下で説明される構成のすべてが本発明の必須構成要件であるとは限らない。
【００４０】
１．  液晶表示装置
図１に、本実施形態を携帯電話機に適用した場合の構成例を示す。
【００４１】
図１において、ベースバンドエンジン（ＢＢＥ）１０は携帯電話機の基本機能を司る中央演算処理装置（Central Processing Unit：ＣＰＵ)を搭載するＬＳＩ（Large Scale Integration）であり、インターネット経由で受信した動画や静止画、カメラで撮影した自然画、携帯電話機の操作上で必要なメニュー画面、アイコンなどの文字・図形情報等の各種画像データの出力源である。
【００４２】
図１において、携帯電話機のディスプレイとして液晶表示パネル（広義には表示パネル）２０が設けられている。この液晶表示パネル２０は、２枚のガラス基板３０、３２間に液晶を封入したものである。大きなガラス基板３０は例えばアクティブマトリクス基板であり、各画素にアクティブ素子であるＴＦＴ（Thin Film Transistor）が設けられている。各画素のＴＦＴのドレイン端子に透明画素電極が、ソース端子にデータ線であるソース線が、ゲート端子に走査線であるゲート線がそれぞれ接続されている。このガラス基板３０と対向するガラス基板３２には透明電極が設けられている。ガラス基板３２上には、ガラス基板３０の短辺に沿って、液晶表示パネル２０を駆動する表示ドライバ（広義には駆動部）４０がＣＯＧ実装されている。表示ドライバ４０は、液晶表示パネル２０のゲート線に走査信号を、ソース線にデータ信号を供給して液晶表示パネル２０を表示駆動する。
【００４３】
ベースバンドエンジン１０と表示ドライバ４０との間には、画像処理コントローラ（広義には画像処理装置）５０が設けられている。ベースバンドエンジン１０と画像処理コントローラ５０との間、画像処理コントローラ５０と表示ドライバ４０との間は、複数本のバスラインで接続され、画像データ、水平・垂直同期信号、クロック信号、各種コマンドが転送される。
【００４４】
本実施形態では、ベースバンドエンジン１０がネットワーク上のコンテンツデータを受信し、該コンテンツデータに含まれる画像データを画像処理コントローラ５０に供給する。画像処理コントローラ５０は、ベースバンドエンジン１０からの画像データにより表される画像のサイズを拡大又は縮小して、拡大処理後又は縮小処理後の画像データを表示ドライバ４０に供給する。
【００４５】
２．  画像処理コントローラ
図２に、図１の画像処理コントローラ５０の構成例のブロック図を示す。
【００４６】
なお、本実施形態では、図２に示す構成に限定されるものではなく、図２に示す回路ブロックのうち少なくとも１つの回路ブロックが省略された構成であってもよい。
【００４７】
画像処理コントローラ５０は、ホストインタフェース（InterFace：Ｉ／Ｆ）５２、回転処理部５４、メモリ５６、第１及び第２のスケーラ１００、１１０、オーバレイ処理部５８、ドライバＩ／Ｆ６０を含む。なお、図２では、第１及び第２のスケーラ１００、１１０を含むものとして説明するが、第１及び第２のスケーラ１００、１１０の一方のみであってもよい。
【００４８】
ホストＩ／Ｆ５２は、ベースバンドエンジン１０に接続されたバスラインを介して入出力される信号のインタフェース処理を行う。
【００４９】
回転処理部５４は、ベースバンドエンジン１０から供給された画像の天地方向の向きを、例えば該天地方向の向きを基準に所定の回転角度だけ回転させた画像を生成する回転処理を行う。そして回転処理部５４は、回転処理後の画像データをメモリ５６に出力する。
【００５０】
メモリ５６は、フレームバッファとして機能し、例えば液晶表示パネル２０の１画面分の画像データが記憶可能な容量を有する。
【００５１】
第１及び第２のスケーラ１００、１１０は、互いに同期して、又は互いに非同期で、メモリ１２０からの画像データを読み出す。そして、各スケーラは、メモリ５６から読み出された画像データにより表される画像を原画像とし、該原画像のサイズを拡大又は縮小する処理を行って原画像のサイズの拡大処理後の画像データ又は該原画像のサイズの縮小処理後の画像データを出力する。
【００５２】
オーバレイ処理部５８は、第１及び第２のスケーラ１００、１１０からの画像データに対して重ね合わせ処理を行う。なお、図２において、画像処理コントローラ５０は、第２のスケーラ１１０及びオーバレイ処理部５８が省略された構成を有していてもよい。
【００５３】
ドライバＩ／Ｆ６０は、表示ドライバ４０に接続されたバスラインを介して入出力される信号のインタフェース処理を行う。例えば、ドライバＩ／Ｆ６０は、オーバレイ処理部５８により行われた重ね合わせ処理後の画像の画像データを、上記のバスラインを介して表示ドライバ４０に出力する処理を行う。
【００５４】
本実施形態では、原画像の画像サイズ（水平走査方向のサイズ、垂直方向のサイズ）を拡大又は縮小する際に、第１及び第２のスケーラ１００、１１０が、原画像の画素を補間した補間画素の画素データを生成する。このとき、第１及び第２のスケーラ１００、１１０は、原画像がテキスト情報、ＣＧ画像や自然画が混在していた場合であっても、拡大又は縮小後の画像が、ぼやけた画像やジャギーが目立つ画像とならないように、補間画素の画素データを求めることができる。更に、第１及び第２のスケーラ１００、１１０は、原画像のべた画像（solid image）のエッジ付近において、拡大又は縮小後の画像においてリンギングの発生を回避するように補間画素の画素データを求めることができる。このような第１及び第２のスケーラ１００、１１０は、拡大処理又は縮小処理対象の原画像の特性に応じて補間処理方法を切り替えることで、画質の劣化を抑え、且つ見やすい画像の画像データを求める。
【００５５】
より具体的には、第１及び第２のスケーラ１００、１１０は、第１及び第２の画素の補間画素の画素データを求める際に、原画像の画素データに対するフィルタ効果を有しない第１の補間処理方法と、該フィルタ効果を有する第２の補間処理方法とを切り替えながら、補間画素の画素データを求める。第１の補間処理方法では、補間画素の画素データとして、例えば原画像の第１又は第２の画素の画素データが出力される。第２の補間処理方法では、補間画素の画素データとして、少なくとも第１又は第２の画素の画素データを用いてフィルタ処理によって得られた画素データが出力される。このような第１の補間処理方法としては、例えば最近傍法（ニアレストネーバー法）がある。また、第２の補間処理方法としては、例えば双３次補間法（バイキュービック法）や線形補間法（バイリニア法）がある。双３次補間法は、フィルタ効果としてローパスフィルタとしての効果を有する。線形補間法は、フィルタ効果として三角フィルタとしての効果を有する。なお、線形補間法において、第１又は第２の画素が同一の画素データである場合には、結果として最近傍法と同じ出力結果が得られるため、上記の場合には最近傍法に代えて線形補間法を採用することができる。
【００５６】
以下では、主として第１の補間処理方法として最近傍法を採用し、第２の補間処理方法として双３次補間法又は線形補間法を採用した場合を例に説明するが、本実施形態が以下で説明する補間処理方法に限定されるものではない。
【００５７】
２．１  画像処理方法
図３に、本実施形態における画像処理方法の処理例のフロー図を示す。
【００５８】
図３では、図２の第１のスケーラ１００において、例えば１画素単位で行われる処理例を示すが、第２のスケーラ１１０においても同様の処理が行われる。
【００５９】
まず、第１のスケーラ１００は、当該画素がべた画像であるか否かを判別する（ステップＳ１０）。べた画像は、画像の水平走査方向（水平方向）又は垂直走査方向（垂直方向）に隣接する２つの画素の画素データが同一である画像をいう。例えば、１つの画素の画素データがＲＧＢの各色成分のデータにより構成される場合、色成分毎に両画素のデータが同一であり、且つ水平走査方向又は垂直走査方向に隣接する２つの画素が、べた画像を構成するということができる。同様に、例えば、１つの画素の画素データがＹＵＶの輝度成分及び色差成分のデータにより構成される場合、両画素の輝度成分のデータが同一であり、且つ色差成分毎の該両画素のデータが同一である、水平走査方向又は垂直走査方向に隣接する２つの画素が、べた画像を構成するということができる。
【００６０】
図４に、べた画像の判定処理の説明図を示す。
【００６１】
図４では、原画像の水平走査方向に隣接する画素ＰＸ０（第１の画素）、ＰＸ１（第２の画素）に対して、拡大処理後の画像の補間画素ＰＸＯＵＴを求めるものとする。このとき、第１のスケーラ１００では、画素ＰＸ０の画素データ（例えばＲＧＢの各色成分のデータ）と画素ＰＸ１の画素データ（例えばＲＧＢの各色成分のデータ）とが同一であるか否かを判別する。
【００６２】
図３に戻って説明を続ける。ステップＳ１０において、図４に示すように画素ＰＸ０、ＰＸ１の画素データが同一であり、画素ＰＸ０がべた画像を構成すると判別されたとき（ステップＳ１０：Ｙ）、第１のスケーラ１００は、ニアレストネーバー法（最近傍法）で補間画素ＰＸＯＵＴの画素データを求める（ステップＳ１１）。
【００６３】
ステップＳ１０において、画素ＰＸ０がべた画像を構成しないと判別されたとき（ステップＳ１０：Ｎ）、第１のスケーラ１００は、画素ＰＸ０の画素データを用いてエッジ部分にあるか否かを検出する（ステップＳ１２）。
【００６４】
図５に、エッジ部分の検出処理の説明図を示す。
【００６５】
図５では、原画像の水平走査方向に隣接する画素ＰＸ０（第１の画素）、ＰＸ１（第２の画素）に対して、拡大処理後の画像の補間画素ＰＸＯＵＴを求めるものとする。このとき、第１のスケーラ１００は、例えば画素ＰＸ０、ＰＸ１の画素データのみならず、画素ＰＸ−１の画素データを用いた一次微分によりエッジ量を検出し、該エッジ量が閾値以上のときにエッジ部分にあると判別する。こうすることで、１ドットの太さを有するテキスト情報をエッジ部分として検出できない場合を回避する。
【００６６】
図３において、ステップＳ１２で、画素ＰＸ０がエッジ部分にあることが検出されたとき（ステップＳ１２：Ｙ）、第１のスケーラ１００は、ニアレストネーバー法で補間画素ＰＸＯＵＴの画素データを求める（ステップＳ１１）。
【００６７】
図６（Ａ）、図６（Ｂ）に、ニアレストネーバー法の説明図を示す。
【００６８】
図６（Ａ）では、原画像の水平走査方向に隣接する画素ＰＸ０（第１の画素）、ＰＸ１（第２の画素）に対して、拡大処理後の画像の補間画素ＰＸＯＵＴを求めるものとする。ここで、画素ＰＸ０、ＰＸ１の距離を正規化して「１」とした場合に、ニアレストネーバー法により求められる補間画素ＰＸＯＵＴの画素データは、画素ＰＸ０、ＰＸ１のうち該補間画素ＰＸＯＵＴからの距離が近い方の画素の画素データとなる。
【００６９】
画素ＰＸ０、補間画素ＰＸＯＵＴの距離をｔ（０≦ｔ≦１）とすると、ｔが１／２より大きいか小さいかを判別することで、補間画素ＰＸＯＵＴの画素データを求めることができる。例えば図６（Ｂ）に示すように、ｔが１／２以下のとき、補間画素ＰＸＯＵＴの画素データとして画素ＰＸ０の画素データを採用し、ｔが１／２より大きいとき、補間画素ＰＸＯＵＴの画素データとして画素ＰＸ１の画素データを採用する。
【００７０】
以上のように、本実施形態によれば、べた画像、エッジ部分にある画素を補間した補間画素の画素データは、ニアレストネーバー法により求められるため、テキスト情報やＣＧ画像等の急峻なエッジがぼやけた画像となるという事態を確実に回避できる。
【００７１】
図３において、ステップＳ１２において、画素ＰＸ０がエッジ部分にないことが検出されたとき（ステップＳ１２：Ｎ）、第１のスケーラ１００は、バイキュービック法（双３次補間法）で補間画素ＰＸＯＵＴの画素データを求める（ステップＳ１３）。
【００７２】
ステップＳ１１又はステップＳ１３の後、次の画素があるとき（ステップＳ１４：Ｙ）、第１のスケーラ１００は、ステップＳ１０に戻って処理を継続する。また、次の画素がないとき（ステップＳ１４：Ｎ）、第１のスケーラ１００は、一連の処理を終了する（エンド）。
【００７３】
図７（Ａ）、図７（Ｂ）に、バイキュービック法の説明図を示す。
【００７４】
図７（Ａ）では、原画像の水平走査方向に隣接する画素ＰＸ０（第１の画素）、ＰＸ１（第２の画素）に対して、拡大処理後の画像の補間画素ＰＸＯＵＴを求めるものとする。ここで、係数ｋ−１、ｋ０、ｋ１、ｋ２と、画素ＰＸ−１、ＰＸ０、ＰＸ１、ＰＸ２の画素データとにより、図７（Ｂ）に示すように補間画素ＰＸＯＵＴの画素データが求められる。
【００７５】
以上のように、本実施形態によれば、べた画像ではなく、且つエッジ部分にない画素の補間画素については、バイキュービック法で画素データを求めるようにしたので、３次関数補間により精度良く画素を補間できる。
【００７６】
なお、図３のステップＳ１１では、ニアレストネーバー法により補間画素ＰＸＯＵＴの画素データを求めるものとしたが、本実施形態はこれに限定されるものではない。例えば、図３のステップＳ１１において、ニアレストネーバー法に代えてバイリニア法（線形補間法）により補間画素ＰＸＯＵＴの画素データを求めてもよい。
【００７７】
図８（Ａ）、図８（Ｂ）に、バイリニア法の説明図を示す。
【００７８】
図８（Ａ）では、原画像の水平走査方向に隣接する画素ＰＸ０（第１の画素）、ＰＸ１（第２の画素）に対して、拡大処理後の画像の補間画素ＰＸＯＵＴを求めるものとする。ここで、画素ＰＸ０、ＰＸ１の距離を正規化して「１」とした場合に、画素ＰＸ０、補間画素ＰＸＯＵＴの距離をｔ（０≦ｔ≦１）とすると、バイリニア法により求められる補間画素ＰＸＯＵＴの画素データは、図８（Ｂ）に示すように、画素ＰＸ０、ＰＸ１の画素データを合成したデータとなる。
【００７９】
べた画像やエッジ部分にない画素については、補間前の画素データが補間画素の画素データとして出力できるので、ニアレストネーバー法に代えてバイリニア法を採用した場合であっても、テキスト情報やＣＧ画像等の急峻なエッジがぼやけた画像となるという事態を確実に回避できる。
【００８０】
ところで、エッジ部の検出を前後の画素のみの差分や一次微分のみで判定してしまうと、斜め線を有するテキスト情報のエッジ部等において、ジャギーが目立つ画像になる場合がある。そこで、本実施形態では、更に、当該画素の周囲画素が斜め線を構成するか否かを判別して、斜め線を構成すると判別されたときにバイキュービック法で補間画素の画素データを求める一方、斜め線を構成しないと判別されたときにニアレストネーバー法（又はバイリニア法）で補間画素の画素データを求める。こうすることで、斜め線を有するテキスト情報については、ジャギーの発生を抑えて滑らかな画像を得ることができるようになる。
【００８１】
図９に、本実施形態における画像処理方法の他の処理例のフロー図を示す。
【００８２】
図９において、図３と同一部分には同一符号を付し、適宜説明を省略する。図９に示す画像処理方法が図３に示す画像処理方法と異なる点は、当該画素の周囲画素が斜め線を構成するか否かを判別する処理が含まれている点である。
【００８３】
即ち、図９では、第１のスケーラ１００は、ステップＳ１２において、画素ＰＸ０がエッジ部分にあることが検出されたとき（ステップＳ１２：Ｙ）、画素ＰＸ０の周囲画素（例えば画素ＰＸ０の水平走査方向に隣接する画素や垂直走査方向に隣接する画素）の少なくとも一部が斜め線を構成するか否かを判別する（ステップＳ２０）。ステップＳ２０において、画素ＰＸ０の周囲画素の少なくとも一部が、斜め線を構成すると判別されたとき（ステップＳ２０：Ｙ）、バイキュービック法で補間画素ＰＸＯＵＴの画素データを求める（ステップＳ１３）。ステップＳ２０において、画素ＰＸ０の周囲画素の少なくとも一部が、斜め線を構成しないと判別されたとき（ステップＳ２０：Ｎ）、ニアレストネーバー法（又はバイリニア法）で補間画素ＰＸＯＵＴの画素データを求める（ステップＳ１１）。なお、ステップＳ１２において、画素ＰＸ０がエッジ部分にないことが検出されたとき（ステップＳ１２：Ｎ）、第１のスケーラ１００は、バイキュービック法（双３次補間法）で補間画素ＰＸＯＵＴの画素データを求める（ステップＳ１３）。
【００８４】
図１０に、斜め線の判別処理の説明図を示す。
【００８５】
図１０では、原画像の画素ＰＸ０の水平走査方向に隣接する画素ＰＸ１、垂直走査方向に隣接する画素ＰＸ１０、画素ＰＸ１に対し垂直走査方向に隣接する画素ＰＸ１１が、テキスト情報の斜め線を構成しているものとする。このとき、図１０に示すように、画素ＰＸ０の周囲画素のうち、画素ＰＸ１、ＰＸ１０、ＰＸ１１が斜め線を構成するため、第１のスケーラ１００は、画素ＰＸ０の周囲画素の少なくとも一部が斜め線を構成するものと判別し、例えば画素ＰＸ０、ＰＸ１を補間した補間画素ＰＸＯＵＴの画素データをバイキュービック法により求める。
【００８６】
次に、図１１及び図１２を用いて、本実施形態における斜め線の判別処理について説明する。
【００８７】
図１１に、本実施形態における斜め線の判別処理の処理例のフロー図を示す。図１１に示す処理が、例えば図９のステップＳ２０において行われる。
【００８８】
図１２に、図１１の斜め線判定処理の説明図を示す。
【００８９】
第１のスケーラ１００は、画素ＰＸ０（第１の画素）を中心画素とする所与の画素ブロック単位で斜め線の判別処理を行う。以下では、画素ブロックが、画素ＰＸ０を中心画素としてその周囲の画素を含み、原画像の水平走査方向に３画素が並ぶと共に垂直走査方向に３画素が並ぶブロック（３×３ブロック）であるものとするが、２×２ブロックや７×７ブロック等の他のブロック単位でもよい。図１２では、各画素（又は各画素の画素データ）をＰ０〜Ｐ８とすると、画素ブロックが、水平走査方向にＰ０、Ｐ１、Ｐ２、垂直走査方向にＰ０、Ｐ３、Ｐ６が並ぶものとする。この画素ブロックでは、Ｐ４が中心画素となる。
【００９０】
第１のスケーラ１００は、画素ＰＸ０の周囲の周囲画素の各画素の画素データと中心画素である画素ＰＸ０の画素データとの差分値を求める（ステップＳ３０）。即ち、中心画素をＣＰとすると、画素ブロックを構成する各画素の差分値は、次のようになる。
【００９１】
ｐｊ＝Ｐｊ−ＣＰ  （０≦ｊ≦８、ｊは４を除く整数）      ・・・（１）
次に第１のスケーラ１００は、ステップＳ３０で求めた画素ブロック内の差分値のうち、最大値と最小値を検出する（ステップＳ３１）。なお、ステップＳ３１において、第１のスケーラ１００は、画素ブロック内の画素データの最大値と最小値とを検出するようにしてもよい。
【００９２】
続いて、第１のスケーラ１００は、ステップＳ３１で検出した差分値（又は画素データ）の最大値と最小との間の閾値を生成する（ステップＳ３２）。ステップＳ３１で検出した最大値をＭＡＸ、最小値をＭＩＮとすると、第１のスケーラ１００は、上記の閾値を、最大値と最小値との中間値（（ＭＡＸ＋ＭＩＮ）／２）として求めることができる。
【００９３】
そして、第１のスケーラ１００は、ステップＳ３２で求めた閾値に基づいて、画素ブロック内の差分値を２値化する（ステップＳ３３）。閾値以上の差分値を有する画素を「エッジ有」、閾値より小さい差分値を有する画素を「エッジ無」と判断できる。そして、第１のスケーラ１００は、画素ブロック内で、閾値以上の差分値を有する画素に「１」、閾値より小さい差分値を有する画素に「０」を設定することで、ステップＳ３３における２値化処理を実現できる。
【００９４】
その後、第１のスケーラ１００は、２値化処理された画素ブロックの画素のパターンを用いて、中心画素の周囲画素の少なくとも一部が斜め線を構成するか否かを判別し（ステップＳ３３）、一連の処理を終了する（エンド）。より具体的には、第１のスケーラ１００は、２値化処理された画素ブロックの画素のパターンと予め設けられた斜め線判別用の判定パターンとにより、図１２のＰ４を除くＰ０〜Ｐ８の画素データを有する画素の少なくとも一部が斜め線を構成するか否かを判別する。
【００９５】
このとき、画素ブロックの各位置を重み付けすることにより得られる数値データを用いて、周囲画素の少なくとも一部が斜め線を構成するか否かを判定することが望ましい。例えば、図１２に示すように、Ｐ０の位置には「１」、Ｐ１の位置には「２」、Ｐ２の位置には「４」、｀３の位置には「８」、・・・、Ｐ８の位置には「１２８」を重み付けし、２値化されたデータを数値化データとする。これにより、中心画素を除く周囲画素の２値化データが８ビットデータとして表すことができ、予め用意された判定パターンも同様に数値化データに変換しておけば、単純な数値比較により、周囲画素の少なくとも一部が斜め線を構成するか否かを判定することができるようになる。
【００９６】
以上のような画像処理方法は、原画像の水平走査方向と垂直走査方向のそれぞれについて行うことが望ましい。これに対して、斜め線の判別処理は、原画像の水平走査方向と垂直走査方向のいずれか１方向について行うだけでよい。
【００９７】
図１３（Ａ）、図１３（Ｂ）に、本実施形態における水平走査方向の斜め線判別用の判定パターンの一例を示す。
【００９８】
図１３（Ａ）に示す第１の判定パターンでは、中心画素ＣＰの水平走査方向に隣接する画素Ｐ５´に対し、垂直走査方向に隣接する両画素Ｐ３´、Ｐ８´がエッジであることを示す「０」が設定されている。従って、第１の判定パターンを８ビットデータの数値化した場合、第１の判定パターンは「８´ｂ０ＸＸＸ＿Ｘ０ＸＸ」という数値データで表される（「Ｘ」は「０」でも「１」でも可）。
【００９９】
図１３（Ｂ）に示す第２の判定パターンでは、中心画素ＣＰの垂直走査方向に隣接する画素Ｐ２´、Ｐ７´がエッジではないことを示す「１」が設定されている。従って、第２の判定パターンを８ビットデータの数値化した場合、第２の判定パターンは「８´ｂＸ１ＸＸ＿ＸＸ１Ｘ」という数値データで表される（「Ｘ」は「０」でも「１」でも可）。
【０１００】
本実施形態において水平走査方向について斜め線の判別処理を行う場合、図１３（Ａ）に示す第１の判定パターン、図１３（Ｂ）に示す第２の判定パターンを用いることで、斜め線を有するテキスト情報についても、簡素な構成で、且つ精度良く画素を補間できる。
【０１０１】
図１４に、第１及び第２の判定パターンを用いた斜め線の判別処理の一例のフロー図を示す。図１４に示す処理が、図１１のステップＳ３６において行われる。
【０１０２】
まず、第１のスケーラ１００は、図１２に示すように重み付けられた画素ブロック単位の数値データと、図１３（Ａ）に示す第１の判定パターンを表す判定データ（８´ｂ０ＸＸＸ＿Ｘ０ＸＸ）とを比較し、当該画素ブロックのパターンが第１の判定パターンと一致するか否かを検出する（ステップＳ４０）。
【０１０３】
第１の判定パターンと一致することが検出されたとき（ステップＳ４０：Ｙ）、第１のスケーラ１００は、例えば当該画素ブロックが、垂直走査方向に伸びる縦パターンを構成するものと判断して、当該画素ブロックの中心画素の周囲画素の少なくとも一部が斜め線を構成しないと判別し（ステップＳ４１）、一連の処理を終了する（エンド）。このとき、第１のスケーラ１００は、図９に示すようにニアレストネーバー法で補間画素の画素データを求める。
【０１０４】
ステップＳ４０において、当該画素ブロックのパターンが第１の判定パターンと一致しないことが検出されたとき（ステップＳ４０：Ｎ）、第１のスケーラ１００は、図１２に示すように重み付けられた画素ブロック単位の数値データと、図１３（Ｂ）に示す第２の判定パターンを表す判定データ（８´ｂＸ１ＸＸ＿ＸＸ１Ｘ）とを比較し、当該画素ブロックのパターンが第２の判定パターンと一致するか否かを検出する（ステップＳ４２）。
【０１０５】
第２の判定パターンと一致することが検出されたとき（ステップＳ４２：Ｙ）、第１のスケーラ１００は、例えば当該画素ブロックが、中心画素上に垂直走査方向に伸びる縦パターンを構成するものと判断して、当該画素ブロックの中心画素の周囲画素の少なくとも一部が斜め線を構成しないと判別し（ステップＳ４１）、一連の処理を終了する（エンド）。このとき、第１のスケーラ１００は、図９に示すようにニアレストネーバー法で補間画素の画素データを求める。
【０１０６】
ステップＳ４２において、当該画素ブロックのパターンが第２の判定パターンと一致しないことが検出されたとき（ステップＳ４２：Ｎ）、第１のスケーラ１００は、当該画素ブロックの中心画素の周囲画素の少なくとも一部が斜め線を構成すると判別し（ステップＳ４３）、一連の処理を終了する（エンド）。このとき、第１のスケーラ１００は、図９に示すようにバイキュービック法で補間画素の画素データを求める。
【０１０７】
以上のように、本実施形態では、原画像の水平走査方向の補間画素の画素データを求める際に、当該画素ブロックの中心画素ＣＰの水平走査方向に隣接する画素Ｐ５´に垂直走査方向に隣接する両画素Ｐ３´、Ｐ８´がエッジである場合、及び該両画素がエッジではなく、且つ中心画素ＣＰの垂直走査方向に隣接する両画素Ｐ２´、Ｐ７´がエッジではない場合を除いて、該中心画素ＣＰの周囲画素の少なくとも一部が斜め線を構成すると判定する。
【０１０８】
図１５（Ａ）、図１５（Ｂ）に、本実施形態における水平走査方向の斜め線の判別処理結果の一例を示す。図１５（Ａ）は、斜め線ではないと判別された画素ブロックのパターンを示し、図１５（Ｂ）は、斜め線であると判別された画素ブロックのパターンを示す。
【０１０９】
図１５（Ａ）、図１５（Ｂ）に示すように斜め線を構成するか否かを判別し、斜め線であると判別されたときにバイキュービック法で補間画素の画素データを求め、斜め線ではないと判別されたときにニアレストネーバー法で補間画素の画素データを求めることで、斜め線を有するテキスト情報のエッジ部等において、ジャギーが目立つ画像を確実に回避できるようになる。
【０１１０】
図１６（Ａ）、図１６（Ｂ）に、本実施形態における垂直走査方向の斜め線判別用の判定パターンの一例を示す。
【０１１１】
図１６（Ａ）に示す第３の判定パターンでは、中心画素ＣＰの垂直走査方向に隣接する画素Ｐ７´に対し、水平走査方向に隣接する両画素Ｐ６´、Ｐ８´がエッジであることを示す「０」が設定されている。従って、第３の判定パターンを８ビットデータの数値化した場合、第３の判定パターンは「８´ｂ０Ｘ０Ｘ＿ＸＸＸＸ」という数値データで表される（「Ｘ」は「０」でも「１」でも可）。
【０１１２】
図１６（Ｂ）に示す第４の判定パターンでは、中心画素ＣＰの水平走査方向に隣接する画素Ｐ３´、Ｐ５´がエッジではないことを示す「１」が設定されている。従って、第４の判定パターンを８ビットデータの数値化した場合、第４の判定パターンは「８´ｂＸＸＸ１＿１ＸＸＸ」という数値データで表される（「Ｘ」は「０」でも「１」でも可）。
【０１１３】
本実施形態において垂直走査方向について斜め線の判別処理を行う場合、図１６（Ａ）に示す第３の判定パターン、図１６（Ｂ）に示す第４の判定パターンを用いることで、斜め線を有するテキスト情報についても、簡素な構成で、且つ精度良く画素を補間できる。
【０１１４】
図１７に、第３及び第４の判定パターンを用いた斜め線の判別処理の一例のフロー図を示す。図１７に示す処理が、図１１のステップＳ３６において行われる。
【０１１５】
まず、第１のスケーラ１００は、図１２に示すように重み付けられた画素ブロック単位の数値データと、図１６（Ａ）に示す第３の判定パターンを表す判定データ（８´ｂ０Ｘ０Ｘ＿ＸＸＸＸ）とを比較し、当該画素ブロックのパターンが第３の判定パターンと一致するか否かを検出する（ステップＳ５０）。
【０１１６】
第３の判定パターンと一致することが検出されたとき（ステップＳ５０：Ｙ）、第１のスケーラ１００は、例えば当該画素ブロックが、水平走査方向に伸びる横パターンを構成するものと判断して、当該画素ブロックの中心画素の周囲画素の少なくとも一部が斜め線を構成しないと判別し（ステップＳ５１）、一連の処理を終了する（エンド）。このとき、第１のスケーラ１００は、図９に示すようにニアレストネーバー法で補間画素の画素データを求める。
【０１１７】
ステップＳ５０において、当該画素ブロックのパターンが第３の判定パターンと一致しないことが検出されたとき（ステップＳ５０：Ｎ）、第１のスケーラ１００は、図１２に示すように重み付けられた画素ブロック単位の数値データと、図１６（Ｂ）に示す第４の判定パターンを表す判定データ（８´ｂＸＸＸ１＿１ＸＸＸ）とを比較し、当該画素ブロックのパターンが第４の判定パターンと一致するか否かを検出する（ステップＳ５２）。
【０１１８】
第４の判定パターンと一致することが検出されたとき（ステップＳ５２：Ｙ）、第１のスケーラ１００は、例えば当該画素ブロックが、中心画素上に水平走査方向に伸びる横パターンを構成するものと判断して、当該画素ブロックの中心画素の周囲画素の少なくとも一部が斜め線を構成しないと判別し（ステップＳ５１）、一連の処理を終了する（エンド）。このとき、第１のスケーラ１００は、図９に示すようにニアレストネーバー法で補間画素の画素データを求める。
【０１１９】
ステップＳ５２において、当該画素ブロックのパターンが第４の判定パターンと一致しないことが検出されたとき（ステップＳ５２：Ｎ）、第１のスケーラ１００は、当該画素ブロックの中心画素の周囲画素の少なくとも一部が斜め線を構成すると判別し（ステップＳ５３）、一連の処理を終了する（エンド）。このとき、第１のスケーラ１００は、図９に示すようにバイキュービック法で補間画素の画素データを求める。
【０１２０】
以上のように、本実施形態では、原画像の垂直走査方向の補間画素の画素データを求める際に、当該画素ブロックの中心画素ＣＰの垂直走査方向に隣接する画素Ｐ７´に水平走査方向に隣接する両画素Ｐ６´、Ｐ８´がエッジである場合、及び該両画素がエッジではなく、且つ中心画素ＣＰの水平走査方向に隣接する両画素Ｐ３´、Ｐ５´がエッジではない場合を除いて、該中心画素ＣＰの周囲画素の少なくとも一部が斜め線を構成すると判定する。
【０１２１】
図１８（Ａ）、図１８（Ｂ）に、本実施形態における垂直走査方向の斜め線の判別処理結果の一例を示す。図１８（Ａ）は、斜め線ではないと判別された画素ブロックのパターンを示し、図１８（Ｂ）は、斜め線であると判別された画素ブロックのパターンを示す。
【０１２２】
図１８（Ａ）、図１８（Ｂ）に示すように斜め線を構成するか否かを判別し、斜め線であると判別されたときにバイキュービック法で補間画素の画素データを求め、斜め線ではないと判別されたときにニアレストネーバー法で補間画素の画素データを求めることで、斜め線を有するテキスト情報のエッジ部等において、ジャギーが目立つ画像を確実に回避できるようになる。
【０１２３】
以上、第１のスケーラ１００の処理例について説明したが、第２のスケーラ１１０の処理についても同様である。また、上記の実施形態では、原画像の拡大処理における補間画素の画素データを求める例について説明したが、原画像の縮小処理における補間画素の画素データを求める場合も同様である。
【０１２４】
以上のように、本実施形態によれば、テキストやＣＧ画像等のエッジが急峻な画像を拡大又は縮小する場合において、拡大処理後又は縮小処理後の画像がぼやけたり、リンギングを発生させたりすることなく、エッジ部分が維持されたシャープな画像を得ることができる。しかも、急峻なエッジが斜め線である場合にはジャギーの発生を確実に抑えるようにしたので、滑らかさも兼ね備えた画像を得ることができるようになる。
【０１２５】
２．２  第１及び第２のスケーラの構成例
次に、本実施形態における画像処理方法を実現する第１のスケーラ１００の詳細な構成例について説明する。以下では、第１のスケーラ１００の構成例について説明するが、第２の構成例１１０も第１のスケーラ１００と同様の構成を有することができる。
【０１２６】
図１９に、本実施形態における画像処理方法を実現する画像処理コントローラの第１のスケーラ１００の構成例のブロック図を示す。
【０１２７】
第１のスケーラ１００は、ラインバッファ２００、補間データ演算部２１０、補間処理方法決定回路２２０、補間情報スケーラ２３０を含む。この第１のスケーラ１００には、スケール処理（画像サイズの拡大処理間又は縮小処理）前の画素データが入力され、スケール処理後の画素データを出力する。
【０１２８】
ラインバッファ２００は、原画像の水平走査方向の複数ラインの画素データをバッファリングする。
【０１２９】
補間データ演算部２１０は、原画像の水平走査方向又は垂直走査方向に隣接する第１及び第２の画素を補間する補間画素の画素データを求める。補間データ演算部２１０は、原画像の垂直走査方向に隣接する画素を補間する補間画素を求めるＶスケーラ（垂直方向スケーラ）２１２と、原画像の水平走査方向に隣接する画素を補間する補間画素を求めるＨスケーラ（水平方向スケーラ）２１４とを含む。Ｖスケーラ２１２が垂直走査方向に拡大又は縮小する処理を行った画素データに対して、Ｈスケーラ２１４が水平走査方向に拡大又は縮小する処理を行って、スケール処理後の画素データとして出力する。この順序でスケール処理を行うことで、水平走査方向に拡大処理された画素データを保存する必要がなくなり、順次Ｖスケーラ２１２に画素データを供給すればよいので、ラインバッファ２００が有するラインバッファの数を削減できる。
【０１３０】
補間処理方法決定回路（補間処理方法決定部）２２０は、ラインバッファ２００にバッファリングされた画素データに基づいて、原画像の水平走査方向又は垂直走査方向に隣接する画素の補間画素を求めるための補間処理方法を決定する。補間処理方法決定回路２２０は、原画像の垂直走査方向の補間処理方法を示すＶ方向補間情報（垂直走査方向の補間情報）と、原画像の水平走査方向の補間処理方法を示すＨ方向補間情報（水平走査方向の補間情報）とを出力する。Ｖ方向補間情報は、補間画素毎に、ニアレストネーバー法、バイキュービック法又はバイリニア法のいずれで補間するかを指定する情報である。Ｈ方向補間情報もまた、補間画素毎に、ニアレストネーバー法、バイキュービック法又はバイリニア法のいずれで補間するかを指定する情報である。以下では、例えば各補間情報が、補間画素毎に設けられた、ニアレストネーバー法又はバイキュービック法のいずれで補間するかを指定する１ビット情報であるものとするが、上記のようにニアレストネーバー法、バイキュービック法又はバイリニア法のいずれで補間するかを指定する場合には多値の情報であってもよい。
【０１３１】
補間データ演算部２１０は、Ｖ方向補間情報及びＨ方向補間情報により指定された補間処理方法で、補間画素の画素データを求める。より具体的には、Ｖスケーラ２１２は、補間処理方法決定回路２２０からのＶ方向補間情報に基づいて、ラインバッファ２００にバッファリングされた画素データを垂直走査方向に拡大又は縮小する処理を行う。Ｈスケーラ２１４は、補間処理方法決定回路２２０からのＨ方向補間情報に基づいて、Ｖスケーラ２１２による処理後の画素データを水平走査方向に拡大又は縮小する処理を行う。
【０１３２】
また本実施形態では、Ｖスケーラ２１２による処理後の画素データに対して水平走査方向のスケール処理を行う。そのため、Ｖスケーラ２１２とＨスケーラ２１４の構成を共通にして簡素化するために、補間処理方法決定回路２２０からＨ方向補間情報を補間情報スケーラ２３０で水平走査方向に拡大又は縮小する処理を行う。このとき補間情報スケーラ２３０は、ニアレストネーバー法（広義には第１の補間処理方法）によりＨ方向補間情報を拡大又は縮小する処理を行う。そして、Ｈスケーラ２１４は、補間情報スケーラ２３０によって拡大又は縮小された補間情報に基づいて、Ｖスケーラ２１２からの画素データを水平走査方向に拡大又は縮小する処理を行う。
【０１３３】
なお、補間情報スケーラ２３０に入力されるＨ方向補間情報（水平方向に補間前のＨ方向補間情報）は、例えば補間処理方法決定回路２２０にて既にリプリケーション（replication）補間されている。Ｖスケーラ２１２においてラインシフトが発生しない場合、補間処理方法決定回路２２０に入力される画素ブロックもまた、垂直走査方向にホールドされた画素データを有する。その際、Ｖ方向補間情報が垂直走査方向に拡大又は縮小されると同時に、Ｈ方向補間情報もまた垂直走査方向に拡大又は縮小処理される。例えば水平走査方向に画像を拡大する場合、Ｈ方向補間情報は垂直走査方向に拡大された後に水平走査方向に拡大されるようになっている。
【０１３４】
本実施形態によれば、補間情報スケーラ２３０を設け、画素データのみならず補間情報についても拡大又は縮小する処理を行って該補間情報自体を補間するようにしたので、Ｈスケーラ２１４の処理対象の画素データを保持させるバッファを用意させる必要がなくなり、Ｖスケーラ２１２及びＨスケーラ２１４により順次画素データに対してスケール処理を行うことができるようになる。そのため、第１のスケーラ１００（補間データ演算部２１２）の構成を大幅に簡素化できる。
【０１３５】
２．３  補間データ演算部
２．３．１  Ｖスケーラ
図２０に、図１９のＶスケーラ２１２の構成例のブロック図を示す。
【０１３６】
図２０では、Ｖスケーラ２１２が、原画像の拡大処理をするものとする。Ｖスケーラ２１２は、Ｖ方向用ルックアップテーブル（ＬＵＴ）２５０Ｖ、補間処理制御回路２６０Ｖ、セレクタ２６２Ｖ、積和演算回路（第１の積和演算回路）２６４Ｖを含む。
【０１３７】
Ｖ方向用ルックアップテーブル２５０Ｖには、各係数セットが補間処理方法に対応した複数の係数群を有する複数種類の係数セットが予め登録されており、Ｖ方向補間情報により指定された補間処理方法に対応した係数セットを出力する。各係数セットは、積和演算回路２６４Ｖに供給され、積和演算回路２６４Ｖは、この係数セットと画素データとを用いて補間画素の画素データを求める。
【０１３８】
図２０では、Ｖ方向補間情報がニアレストネーバー法又はバイキュービック法を指定する情報である。このとき、Ｖ方向用ルックアップテーブル２５０Ｖは、第１及び第２の係数セット２５２Ｖ、２５４Ｖ、セレクタ２５６Ｖを含む。第１の係数セット２５２Ｖは、第１の補間処理方法としてのニアレストネーバー法で補間画素の画素データを求めるために予め登録された係数群である。第２の係数セット２５４Ｖは、第２の補間処理方法で補間画素の画素データを求めるために予め登録された係数群である。セレクタ２５６Ｖは、Ｖ方向補間情報に基づいて第１及び第２の係数セット２５２Ｖ、２５４Ｖのいずれかを選択して出力する。
【０１３９】
補間処理制御回路２６０Ｖは、補間処理のタイミングや補間画素の位置を求める処理を行う。補間処理制御回路２６０Ｖで生成されたラインシフトイネーブルが積和演算回路２６４Ｖに供給される。補間処理制御回路２６０Ｖによって求められた補間画素の位置（座標）は、セレクタ２６２Ｖに供給される。
【０１４０】
セレクタ２６２Ｖは、補間処理制御回路２６０Ｖからの補間画素の座標に基づいて、Ｖ方向用ルックアップテーブル２５０Ｖからの係数セットを出力する。
【０１４１】
積和演算回路２６４Ｖは、ラインシフトイネーブルに同期して画素データをシフトし、セレクタ２６２Ｖからの係数セットを用いて補間画素データを求め、拡大処理後の画素データとして出力する。
【０１４２】
図２１に、図２０の積和演算回路２６４Ｖの構成例の回路図を示す。
【０１４３】
積和演算回路２６４Ｖは、データバッファ２８０Ｖ、シフトレジスタ２８２Ｖ、乗算器２８４Ｖ１〜２８４Ｖ４、加算器２８６Ｖを含む。データバッファ２８０Ｖには、画素データがバッファリングされる。シフトレジスタ２８２Ｖは、ラインシフトイネーブルがアクティブのときに、データバッファ２８０Ｖからの画素データを画素クロックでシフトする。乗算器２８４Ｖ１〜２８４Ｖ４は、シフトレジスタを構成するフリップフロップの出力と、係数セットｋ１、ｋ２、ｋ３、ｋ４とを乗算する。加算器２８６Ｖは、乗算器２８４Ｖ１〜２８４Ｖ４の出力を加算する。
【０１４４】
例えば、係数セットとしてバイキュービック法を実現する係数セットが選択された場合、加算器２８６Ｖの出力は、図７（Ｂ）に示す式となる。
【０１４５】
図２２に、係数に応じた積和演算回路２６４Ｖの動作説明図を示す。
【０１４６】
例えば、ある画素ＰＸ−１、ＰＸ０、ＰＸ１、ＰＸ２の画素データに対して第１の係数セットを与えた場合、図２２のＴＫ１のような特性が得られる。これに対して、同じ画素ＰＸ−１、ＰＸ０、ＰＸ１、ＰＸ２の画素データに対して第２の係数セットを与えた場合、図２２のＴＫ２のような特性が得られる。従って、係数セットを切り替え、補間画素の位置を参照することで、積和演算回路２６４Ｖでは、第１及び第２の補間処理方法を実現したり、フィルタ効果（フィルタ特性）を異ならせたりすることができる。
【０１４７】
また、第１の補間処理方法で補間画素の画素データを求める場合であっても、第１の補間処理方法に代えてバイキュービック法等の第２の補間処理方法により画素データを求めるようにしてもよい。この場合、第２の補間処理方法によるカットオフ周波数が、エッジ部が検出されないときに補間画素の画素データを求めるときの第２の補間処理方法のカットオフ周波数より高くなるような係数セットを用いる。こうすることで、回路を共用化できるようになる。
【０１４８】
２．３．２  Ｈスケーラ
図２３に、図１９のＨスケーラ２１４の構成例のブロック図を示す。
【０１４９】
図２３では、Ｈスケーラ２１４が、原画像の拡大処理をするものとする。Ｈスケーラ２１４は、Ｈ方向用ルックアップテーブル（ＬＵＴ）２５０Ｈ、補間処理制御回路２６０Ｈ、セレクタ２６２Ｈ、積和演算回路（第２の積和演算回路）２６４Ｈを含む。
【０１５０】
Ｈ方向用ルックアップテーブル２５０Ｈには、各係数セットが複数の係数群を有する複数種類の係数セットが予め登録されており、補間情報スケーラ２３０により拡大処理されたスケール処理後のＨ方向補間情報により指定された補間処理方法に対応した係数セットを出力する。各係数セットは、積和演算回路２６４Ｈに供給され、積和演算回路２６４Ｈは、この係数セットと画素データとを用いて補間画素の画素データを求める。
【０１５１】
図２３では、Ｈ方向補間情報がニアレストネーバー法又はバイキュービック法を指定する情報である。このとき、Ｈ方向用ルックアップテーブル２５０Ｈは、第３及び第４の係数セット２５２Ｈ、２５４Ｈ、セレクタ２５６Ｈを含む。第３の係数セット２５２Ｈは、第１の補間処理方法としてのニアレストネーバー法で補間画素の画素データを求めるために予め登録された係数群である。第４の係数セット２５４Ｈは、第２の補間処理方法で補間画素の画素データを求めるために予め登録された係数群である。セレクタ２５６Ｈは、スケール処理後のＨ方向補間情報に基づいて第３及び第４の係数セット２５２Ｈ、２５４Ｈのいずれかを選択して出力する。
【０１５２】
補間処理制御回路２６０Ｈは、補間処理のタイミングや補間画素の位置を求める処理を行う。補間処理制御回路２６０Ｈで生成された画素シフトイネーブルが積和演算回路２６４Ｈに供給される。補間処理制御回路２６０Ｈによって求められた補間画素の位置（座標）は、セレクタ２６２Ｈに供給される。
【０１５３】
セレクタ２６２Ｈは、補間処理制御回路２６０Ｈからの補間画素の座標に基づいて、Ｈ方向用ルックアップテーブル２５０Ｈからの係数セットを出力する。
【０１５４】
積和演算回路２６４Ｈは、画素シフトイネーブルに同期して画素データをシフトし、セレクタ２６２Ｈからの係数セットを用いて補間画素データを求め、拡大処理後の画素データとして出力する。
【０１５５】
積和演算回路２６４Ｈの構成は、図２１に示す積和演算回路２６４Ｖと同様であり、詳細な説明を省略する。
【０１５６】
２．４  補間処理方法決定回路
図２４に、図１９の補間処理方法決定回路２２０の構成の概要を示す。
【０１５７】
補間処理方法決定回路２２０は、Ｖ方向補間処理方法決定回路３００と、Ｈ方向補間処理方法決定回路３５０とを含む。Ｖ方向補間処理方法決定回路３００は、ラインバッファ２００に蓄積された画素データに基づいてＶ方向補間情報を生成する。Ｈ方向補間処理方法決定回路３５０は、ラインバッファ２００に蓄積された画素データに基づいてＨ方向補間情報を生成する。
【０１５８】
２．４．１  Ｖ方向補間処理方法決定回路
図２５に、図２４のＶ方向補間処理方法決定回路３００の構成例のブロック図を示す。
【０１５９】
Ｖ方向補間処理方法決定回路３００は、べた画像判定部としての比較器３１０Ｖ、原画像の垂直走査方向に対する斜め線判定部３２０Ｖ、エッジ検出部としてのエッジ検出器３４０Ｖ、決定回路３４８Ｖを含む。なおＶ方向補間処理方法決定回路３００は、図２５に示すすべての回路ブロックを含む必要はなく、図２５のいずれかの回路ブロックが省略されていてもよい。
【０１６０】
以下では、画素ブロックでは、原画像の水平走査方向に３画素Ｐ０、Ｐ１、Ｐ２、原画像の垂直走査方向に３画素Ｐ０、Ｐ３、Ｐ６が並ぶものとする。このとき、中心画素の画素データはＰ４となる。
【０１６１】
比較器３１０Ｖは、原画像の垂直走査方向に隣接する画素Ｐ４、Ｐ７（第１及び第２の画素）の画素データが同一であるか否かを判定する。斜め線判定部３２０Ｖは、中心画素の周囲画素の少なくとも一部が斜め線を構成するか否かを判定する。
【０１６２】
エッジ検出器３４０Ｖは、少なくとも画素Ｐ４、Ｐ７（第１及び第２の画素）を含む複数の画素の画素データに基づいてエッジを検出する。本実施形態では、エッジ検出器３４０Ｖが、画素Ｐ４、Ｐ７（第１及び第２の画素）の画素データを用いたハイパスフィルタ処理の結果の絶対値に基づいて、エッジを検出する。より具体的には、エッジ検出器３４０Ｖが、次の一次微分を用いて、外部から設定可能な閾値と比較することでエッジを検出する。
【０１６３】
Ｅｇｖ  ＝  ｜−Ｐ１＋２×Ｐ４−Ｐ７｜      ・・・（２）
エッジ検出器３４０Ｖは、エッジ成分Ｅｇｖが閾値ＴＨｖより大きいとき、エッジを検出したと判定し、エッジ成分Ｅｇｖが閾値ＴＨｖ以下のとき、エッジを検出しないと判定する。（２）式を用いてエッジを検出することで、例えば１ドット文字のような画像や、周波数成分の高いエッジを精度良く検出できるようになる。
【０１６４】
決定回路３４８Ｖは、比較器３１０Ｖの出力Ｓ、斜め線判定部３２０Ｖの出力Ｔ、エッジ検出器３４０Ｖの出力Ｕに基づいて、Ｖ方向補間情報である出力Ｘを生成する。より具体的には、決定回路３４８Ｖは、以下の論理式で出力Ｘを生成する。
【０１６５】
Ｘ＝！Ｓ ＆ ！Ｔ ＆ ！Ｕ        ・・・（３）
上記の式において、「＆」は論理積、「！」は否定を意味し、例えば「！Ｓ」は「Ｓ」が偽のときに真であることを意味する。このようなＶ方向補間情報では、出力Ｘが真のときバイキュービック法（第２の補間処理方法）で補間するように指定し、出力Ｘが偽のときニアレストネーバー法（第１の補間処理方法）で補間するように指定する。
【０１６６】
こうして、斜め線判定部３２０Ｖの機能がディセーブルのとき、決定回路３４８Ｖは、画素Ｐ４、Ｐ７の画素データが同一であると判定されたとき、補間画素の画素データとしてニアレストネーバー法で補間画素の画素データを求めるように指定できる。また決定回路３４８Ｖは、エッジが検出されたとき、バイキュービック法により補間画素の画素データを求めるように指定できる。更に決定回路３４８Ｖは、該エッジが検出されないとき、バイキュービック法により補間画素の画素データを求めるように指定できる。
【０１６７】
また、斜め線判定部３２０Ｖの機能がイネーブルのとき、決定回路３４８Ｖは、エッジが検出されず、且つ画素Ｐ４の周囲画素の少なくとも一部が斜め線を構成すると判定されたとき、補間画素の画素データをバイキュービック法により求めるように指定できる。また決定回路３４８Ｖは、該エッジが検出されず、且つ上記の周囲画素の少なくとも一部が斜め線を構成しないと判定されたとき、補間画素の画素データをニアレストネーバー法により求めるように指定できる。
【０１６８】
なお、図２５において、斜め線判定部３２０Ｖは、差分値演算部３２２Ｖ、２値化回路（２値化部）３２４Ｖ、最小値フィルタ（以下、ＭＩＮフィルタ）３２６Ｖ、最大値フィルタ（以下、ＭＡＸフィルタ）３２８Ｖ、閾値生成回路３３０Ｖ、パターン比較器３３２Ｖを含む。
【０１６９】
差分値演算部３２２Ｖは、画素Ｐ４（第１の画素）を中心画素とする所与の画素ブロック単位で、該中心画素の周囲画素（Ｐ０〜Ｐ３、Ｐ５〜Ｐ８）の各画素の画素データと中心画素の画素データとの差分値を求める。２値化回路３２４Ｖは、画素ブロック内の画素データの最大値と最小値との間に設定された閾値に基づいて、画素ブロック内の差分値を２値化する。この閾値は、閾値生成回路３３０Ｖによって生成される。閾値生成回路３３０Ｖは、ＭＩＮフィルタ３２６Ｖからの最小値、ＭＡＸフィルタ３２８Ｖからの最大値を用いて閾値を生成する。ＭＩＮフィルタ３２６Ｖは、画素ブロックの画素データの最小値を求める。ＭＡＸフィルタ３２８Ｖは、画素ブロックの画素データの最大値を求める。以上のような構成により、斜め線判定部３２０Ｖは、図１１、図１２に示す動作を実現する。
【０１７０】
パターン比較器３３２Ｖには、数値化された判定パターンが入力され、２値化回路３２４Ｖで２値化されたデータと比較する。パターン比較器３３２Ｖの出力が、斜め線の判定結果となる。
【０１７１】
２．４．２  Ｈ方向補間処理方法決定回路
図２６に、図２４のＨ方向補間処理方法決定回路３５０の構成例のブロック図を示す。
【０１７２】
Ｈ方向補間処理方法決定回路３５０は、べた画像判定部としての比較器３１０Ｈ、原画像の水平走査方向に対する斜め線判定部３２０Ｈ、エッジ検出部としてのエッジ検出器３４０Ｈ、決定回路３４８Ｈを含む。なおＨ方向補間処理方法決定回路３５０は、図２６に示すすべての回路ブロックを含む必要はなく、図２６のいずれかの回路ブロックが省略されていてもよい。
【０１７３】
以下では、画素ブロックでは、原画像の水平走査方向に３画素Ｐ０、Ｐ１、Ｐ２、原画像の垂直走査方向に３画素Ｐ０、Ｐ３、Ｐ６が並ぶものとする。このとき、中心画素の画素データはＰ４となる。
【０１７４】
比較器３１０Ｈは、原画像の水平走査方向に隣接する画素Ｐ４、Ｐ５（第１及び第２の画素）の画素データが同一であるか否かを判定する。斜め線判定部３２０Ｈは、中心画素の周囲画素の少なくとも一部が斜め線を構成するか否かを判定する。
【０１７５】
エッジ検出器３４０Ｈは、少なくとも画素Ｐ４、Ｐ５（第１及び第２の画素）を含む複数の画素の画素データに基づいてエッジを検出する。本実施形態では、エッジ検出器３４０Ｈが、画素Ｐ４、Ｐ５（第１及び第２の画素）の画素データを用いたハイパスフィルタ処理の結果の絶対値に基づいて、エッジを検出する。より具体的には、エッジ検出器３４０Ｈが、次の一次微分を用いて、外部から設定可能な閾値と比較することでエッジを検出する。
【０１７６】
Ｅｇｈ  ＝  ｜−Ｐ３＋２×Ｐ４−Ｐ５｜      ・・・（４）
エッジ検出器３４０Ｈは、エッジ成分Ｅｇｈが閾値ＴＨｈより大きいとき、エッジを検出したと判定し、エッジ成分Ｅｇｈが閾値ＴＨｈ以下のとき、エッジを検出しないと判定する。（４）式を用いてエッジを検出することで、例えば１ドット文字のような画像や、周波数成分の高いエッジを精度良く検出できるようになる。
【０１７７】
決定回路３４８Ｈは、比較器３１０Ｈの出力Ｓ、斜め線判定部３２０Ｈの出力Ｔ、エッジ検出器３４０Ｈの出力Ｕに基づいて、Ｈ方向補間情報である出力Ｘを生成する。より具体的には、決定回路３４８Ｈは、以下の論理式で出力Ｘを生成する。
【０１７８】
Ｘ＝！Ｓ ＆ ！Ｔ ＆ ！Ｕ        ・・・（５）
上記の式において、「＆」は論理積、「！」は否定を意味し、例えば「！Ｓ」は「Ｓ」が偽のときに真であることを意味する。このようなＶ方向補間情報では、出力Ｘが真のときバイキュービック法（第２の補間処理方法）で補間するように指定し、出力Ｘが偽のときニアレストネーバー法（第１の補間処理方法）で補間するように指定する。
【０１７９】
こうして、斜め線判定部３２０Ｈの機能がディセーブルのとき、決定回路３４８Ｈは、画素Ｐ４、Ｐ５の画素データが同一であると判定されたとき、補間画素の画素データとしてニアレストネーバー法で補間画素の画素データを求めるように指定できる。また決定回路３４８Ｈは、エッジが検出されたとき、バイキュービック法により補間画素の画素データを求めるように指定できる。更に決定回路３４８Ｖは、該エッジが検出されないとき、バイキュービック法により補間画素の画素データを求めるように指定できる。
【０１８０】
また、斜め線判定部３２０Ｈの機能がイネーブルのとき、決定回路３４８Ｈは、エッジが検出されず、且つ画素Ｐ４の周囲画素の少なくとも一部が斜め線を構成すると判定されたとき、補間画素の画素データをバイキュービック法により求めるように指定できる。また決定回路３４８Ｈは、該エッジが検出されず、且つ上記の周囲画素の少なくとも一部が斜め線を構成しないと判定されたとき、補間画素の画素データをニアレストネーバー法により求めるように指定できる。
【０１８１】
なお、図２６において、斜め線判定部３２０Ｈは、差分値演算部３２２Ｈ、２値化回路（２値化部）３２４Ｈ、最小値フィルタ（以下、ＭＩＮフィルタ）３２６Ｈ、最大値フィルタ（以下、ＭＡＸフィルタ）３２８Ｈ、閾値生成回路３３０Ｈ、パターン比較器３３２Ｈを含む。
【０１８２】
差分値演算部３２２Ｈは、画素Ｐ４（第１の画素）を中心画素とする所与の画素ブロック単位で、該中心画素の周囲画素（Ｐ０〜Ｐ３、Ｐ５〜Ｐ８）の各画素の画素データと中心画素の画素データとの差分値を求める。２値化回路３２４Ｈは、画素ブロック内の画素データの最大値と最小値との間に設定された閾値に基づいて、画素ブロック内の差分値を２値化する。この閾値は、閾値生成回路３３０Ｈによって生成される。閾値生成回路３３０Ｈは、ＭＩＮフィルタ３２６Ｈからの最小値、ＭＡＸフィルタ３２８Ｈからの最大値を用いて閾値を生成する。ＭＩＮフィルタ３２６Ｈは、画素ブロックの画素データの最小値を求める。ＭＡＸフィルタ３２８Ｈは、画素ブロックの画素データの最大値を求める。以上のような構成により、斜め線判定部３２０Ｈは、図１１、図１２に示す動作を実現する。
【０１８３】
パターン比較器３３２Ｈには、数値化された判定パターンが入力され、２値化回路３２４Ｈで２値化されたデータと比較する。パターン比較器３３２Ｈの出力が、斜め線の判定結果となる。
【０１８４】
２．５  補間情報スケーラ
図２７に、図１９の補間情報スケーラ２３０の構成例のブロック図を示す。
【０１８５】
図２７では、補間情報スケーラ２３０が、補間方法としてダブリングにより水平走査方向に拡大するものとして説明するが、その補間方法に限定されるものではない。また、Ｈスケーラ２１４で原画像が縮小される場合には、補間情報スケーラ２３０が、公知の補間処理方法で、Ｈ方向補間情報を水平走査方向に縮小すればよい。
【０１８６】
補間情報スケーラ２３０は、セレクタ３８０、フリップフロップ３９０を含む。補間情報スケーラ２３０には、拡大前のＨ方向補間情報が入力され、該Ｈ方向補間情報を拡大した補間情報を出力する。
【０１８７】
セレクタ３８０は、画素シフトイネーブルがアクティブのとき拡大前のＨ方向補間情報を選択して出力し、画素シフトイネーブルが非アクティブ部のとき拡大後のＨ方向補間情報を選択して出力する。フリップフロップ３９０は、表示用（表示ドライバ出力用）の画素クロックに基づいて、セレクタ３８０の出力をラッチする。フリップフロップ３９０にラッチされたセレクタ３８０の出力が、拡大後のＨ方向補間情報となる。
【０１８８】
以上のような構成で、画素シフトイネーブルで拡大処理のタイミングを制御することで、ニアレストネーバー法でＨ方向補間情報の拡大処理を実現できる。本実施形態によれば、補間情報自体がフィルタリングされることなく、そのまま補間前の情報が維持され、簡素な構成で補間情報の拡大又は縮小ができる。そのため、Ｈスケーラ２１４も既存の構成を流用できる。
【０１８９】
３．  電子機器
図２８に、本実施形態における電子機器としての携帯電話機の構成例のブロック図を示す。図２８において、図１と同一部分には同一符号を付し、適宜説明を省略する。
【０１９０】
携帯電話機９００は、カメラモジュール９１０を含む。カメラモジュール９１０は、ＣＣＤカメラを含み、ＣＣＤカメラで撮像した画像のデータを、例えばＹＵＶフォーマットで画像処理コントローラ５０（画像処理装置）に供給する。
【０１９１】
携帯電話機９００は、液晶表示パネル２０を含む。液晶表示パネル２０は、表示ドライバ４０（駆動部）によって駆動される。液晶表示パネル２０は、複数のゲート線、複数のソース線、複数の画素を含む。
【０１９２】
表示ドライバ４０は、ゲートドライバ４２、ソースドライバ４４及び電源回路４６を含む。ゲートドライバ４２は、液晶表示パネル２０（表示パネル）の複数のゲート線を走査する。ソースドライバ４４は、液晶表示パネル２０の複数のソース線を、画像データに基づいて駆動する。電源回路４６は、ゲートドライバ４２、ソースドライバ４４及び液晶表示パネル２０の電圧を生成する。電源回路４６は、ソースドライバ４４及びゲートドライバ４２に接続され、各ドライバに対して、駆動用の電源電圧を供給する。また電源回路４６は、液晶表示パネル２０の対向電極に、対向電極電圧Ｖｃｏｍを供給する。
【０１９３】
画像処理コントローラ５０は、表示ドライバ４０に接続され、ソースドライバ４４に対してＲＧＢフォーマットの画像データを供給する。
【０１９４】
ベースバンドエンジン１０は、画像処理コントローラ５０に接続される。ベースバンドエンジン１０は、画像処理コントローラ５０を制御する。またベースバンドエンジン１０は、アンテナ９６０を介して受信された画像データを、変復調部９５０で復調した後、画像処理コントローラ５０に供給できる。画像処理コントローラ５０は、この画像データに基づき、ソースドライバ４４及びゲートドライバ４２により液晶表示パネル２０に表示させる。
【０１９５】
ベースバンドエンジン１０は、カメラモジュール９１０で生成された画像データを変復調部９５０で変調した後、アンテナ９６０を介して他の通信装置への送信を指示できる。
【０１９６】
ベースバンドエンジン１０は、操作入力部９７０からの操作情報に基づいて画像データの送受信処理、カメラモジュール９１０の撮像、液晶表示パネル２０の表示処理を行う。
【０１９７】
なお、本発明は上述した実施の形態に限定されるものではなく、本発明の要旨の範囲内で種々の変形実施が可能である。例えば、本発明は上述の液晶表示パネルの駆動に適用されるものに限らず、エレクトロルミネッセンス、プラズマディスプレイ装置の駆動に適用可能である。
【０１９８】
また、本発明のうち従属請求項に係る発明においては、従属先の請求項の構成要件の一部を省略する構成とすることもできる。また、本発明の１の独立請求項に係る発明の要部を、他の独立請求項に従属させることもできる。
【図面の簡単な説明】
【０１９９】
【図１】本実施形態を携帯電話機に適用した場合の構成例を示す図。
【図２】図１の画像処理コントローラの構成例のブロック図。
【図３】本実施形態における画像処理方法の処理例のフロー図。
【図４】べた画像の判定処理の説明図。
【図５】エッジ部分の検出処理の説明図。
【図６】図６（Ａ）、図６（Ｂ）はニアレストネーバー法の説明図。
【図７】図７（Ａ）、図７（Ｂ）はバイキュービック法の説明図。
【図８】図８（Ａ）、図８（Ｂ）はバイリニア法の説明図。
【図９】本実施形態における画像処理方法の他の処理例のフロー図。
【図１０】斜め線の判別処理の説明図。
【図１１】本実施形態における斜め線の判別処理の処理例のフロー図。
【図１２】図１１の斜め線判定処理の説明図。
【図１３】図１３（Ａ）、図１３（Ｂ）は本実施形態における水平走査方向の斜め線判別用の判定パターンの一例を示す図。
【図１４】第１及び第２の判定パターンを用いた斜め線の判別処理の一例のフロー図。
【図１５】図１５（Ａ）、図１５（Ｂ）は本実施形態における水平走査方向の斜め線の判別処理結果の一例を示す図。
【図１６】図１６（Ａ）、図１６（Ｂ）は本実施形態における垂直走査方向の斜め線判別用の判定パターンの一例を示す図。
【図１７】第３及び第４の判定パターンを用いた斜め線の判別処理の一例のフロー図。
【図１８】図１８（Ａ）、図１８（Ｂ）は本実施形態における垂直走査方向の斜め線の判別処理結果の一例を示す図。
【図１９】本実施形態における画像処理方法を実現する画像処理コントローラの第１のスケーラの構成例のブロック図。
【図２０】図１９のＶスケーラの構成例のブロック図を示す。
【図２１】図２０の積和演算回路の構成例の回路図。
【図２２】係数に応じた積和演算回路の動作説明図。
【図２３】図１９のＨスケーラの構成例のブロック図。
【図２４】図１９の補間処理方法決定回路の構成の概要を示す図。
【図２５】図２４のＶ方向補間処理方法決定回路の構成例のブロック図。
【図２６】図２４のＨ方向補間処理方法決定回路の構成例のブロック図。
【図２７】図１９の補間情報スケーラの構成例のブロック図。
【図２８】本実施形態における電子機器としての携帯電話機の構成例のブロック図。
【符号の説明】
【０２００】
１０  ベースバンドエンジン、  ２０  液晶表示パネル、  ３０、３２  ガラス基板、
４０  表示ドライバ、  ４２  ゲートドライバ、  ４４  ソースドライバ、
４６  電源回路、  ５０  画像処理コントローラ、  ５２  ホストＩ／Ｆ、
５４  回転処理部、  ５６  メモリ、  ５８  オーバレイ処理部、
６０  ドライバＩ／Ｆ、  １００  第１のスケーラ、  １１０  第２のスケーラ、
２００  ラインバッファ、  ２１０  補間データ演算部、  ２１２  Ｖスケーラ、
２１４  Ｈスケーラ、  ２２０  補間処理方法決定回路、  ２３０  補間情報スケーラ、
２５０Ｈ、２５０Ｖ  Ｖ方向用ルックアップテーブル、  ２５２Ｈ  第３の係数セット、
２５４Ｈ  第４の係数セット、  ２５２Ｖ  第１の係数セット、
２５４Ｖ  第２の係数セット、
２５６Ｈ、２６２Ｈ、２５６Ｖ、２６２Ｖ、３８０  セレクタ、
２６０Ｈ、２６０Ｖ  補間処理制御回路、  ２６４Ｈ、２６４Ｖ  積和演算回路、
２８０Ｖ  データバッファ、  ２８２Ｖ  シフトレジスタ、
２８４Ｖ１〜２８４Ｖ４  乗算器、  ２８６Ｖ  加算器、
３００  Ｖ方向補間処理方法決定回路、  ３１０Ｈ、３１０Ｖ  比較器、
３２０Ｈ、３２０Ｖ  斜め線判定部、  ３２２Ｈ、３２２Ｖ  差分値演算部、
３２４Ｈ、３２４Ｖ  ２値化回路、  ３２６Ｈ、３２６Ｖ  ＭＩＮフィルタ、
３２８Ｈ、３２８Ｖ  ＭＡＸフィルタ、  ３３０Ｈ、３３０Ｖ  閾値生成回路、
３３２Ｈ、３３２Ｖ  パターン比較器、  ３４０Ｈ、３４０Ｖ  エッジ検出器、
３４８Ｈ、３４８Ｖ  決定回路、  ３５０  Ｈ方向補間処理方法決定回路、
３９０  フリップフロップ、  ９００  携帯電話機、  ９１０  カメラモジュール、
９５０  変復調部、  ９６０  アンテナ、  ９７０  操作入力部
【図１】
2008234426.tif 000003
【図２】
2008234426.tif 000004
【図３】
2008234426.tif 000005
【図４】
2008234426.tif 000006
【図５】
2008234426.tif 000007
【図６】
2008234426.tif 000008
【図７】
2008234426.tif 000009
【図８】
2008234426.tif 000010
【図９】
2008234426.tif 000011
【図１０】
2008234426.tif 000012
【図１１】
2008234426.tif 000013
【図１２】
2008234426.tif 000014
【図１３】
2008234426.tif 000015
【図１４】
2008234426.tif 000016
【図１５】
2008234426.tif 000017
【図１６】
2008234426.tif 000018
【図１７】
2008234426.tif 000019
【図１８】
2008234426.tif 000020
【図１９】
2008234426.tif 000021
【図２０】
2008234426.tif 000022
【図２１】
2008234426.tif 000023
【図２２】
2008234426.tif 000024
【図２３】
2008234426.tif 000025
【図２４】
2008234426.tif 000026
【図２５】
2008234426.tif 000027
【図２６】
2008234426.tif 000028
【図２７】
2008234426.tif 000029
【図２８】
2008234426.tif 000030