JP2015133630A - 画像処理装置、画像処理方法、及びプログラム - Google Patents
画像処理装置、画像処理方法、及びプログラム Download PDFInfo
- Publication number
- JP2015133630A JP2015133630A JP2014004319A JP2014004319A JP2015133630A JP 2015133630 A JP2015133630 A JP 2015133630A JP 2014004319 A JP2014004319 A JP 2014004319A JP 2014004319 A JP2014004319 A JP 2014004319A JP 2015133630 A JP2015133630 A JP 2015133630A
- Authority
- JP
- Japan
- Prior art keywords
- jaggy
- edge
- pixel
- line
- column
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Image Processing (AREA)
- Facsimile Image Signal Circuits (AREA)
Abstract
【課題】簡単な構成で、ジャギー端画素及びジャギーの傾きを検出することができる画像処理装置を提供すること。
【解決手段】本発明は、多値画像データのエッジ情報を検出するエッジ検出手段と、前記エッジ情報の隣接する3ライン(K−1ライン、Kライン、K+1ライン)のうちKラインを走査することにより、エッジ画素の変化点を検出して、ジャギー端画素位置を検出するジャギー端画素検出手段と、前記検出したジャギー端画素位置に基づき、K−1ラインまたはK+1ラインのエッジ画素の変化点を検出することにより、エッジ画素の連続数を計測し、ジャギー端画素間の距離を算出するジャギー端画素間距離算出手段と、前記算出したジャギー端画素間の距離に基づきジャギーの傾きを生成する傾き生成手段とを備える画像処理装置である。
【選択図】図3
【解決手段】本発明は、多値画像データのエッジ情報を検出するエッジ検出手段と、前記エッジ情報の隣接する3ライン(K−1ライン、Kライン、K+1ライン)のうちKラインを走査することにより、エッジ画素の変化点を検出して、ジャギー端画素位置を検出するジャギー端画素検出手段と、前記検出したジャギー端画素位置に基づき、K−1ラインまたはK+1ラインのエッジ画素の変化点を検出することにより、エッジ画素の連続数を計測し、ジャギー端画素間の距離を算出するジャギー端画素間距離算出手段と、前記算出したジャギー端画素間の距離に基づきジャギーの傾きを生成する傾き生成手段とを備える画像処理装置である。
【選択図】図3
Description
本発明は、画像処理装置、画像処理方法、及びプログラムに関する。具体的には、本発明は、画像のエッジ部のジャギーを改善するスムージング処理に関し、特にスムージング処理を行うためにジャギーの傾きを算出する画像処理装置、画像処理方法、及びプログラムに関する。
従来から、画像処理装置において、ジャギーと呼ばれる文字等のエッジ部に発生するガタツキを改善する技術が幾つか提案されている。ジャギーの発生理由は様々あり、主として低解像度のプリンタによる画素のガタツキ、スクリーン処理のような擬似中間調処理によるガタツキ等が挙げられる。
ジャギーを改善する技術としては、パターンマッチングを行い、パターンに一致した画素を別の画素に置き換えることで、ジャギーの原因となる画素を除去する方法が検討されている。例えば、2値の画像に対して5×5ウィンドウの画素のパターンによるパターンマッチングを行い、ジャギー端画素と、ジャギー端画素との間の傾き(本明細書では、「ジャギーの傾き」と呼ぶ)を検出する。そして、そのパターンに一致した画素を、対応する画素の置き換えパターンに従って置き換える手法(特許文献1参照)が提案されている。
しかしながら、特許文献1の手法では、2値の画像のパターンから補間計数を生成するためには、2次元の参照ウィンドウ(ここでは5×5ウィンドウ)が必要である。そのため、例えば、主走査方向には5画素分の小さな範囲しか参照できないので、副走査方向に対してわずかな角度(傾きが1/5未満)をなす直線のジャギーの検出精度が落ちてしまう問題がある。
そこで、本発明は、以上のような課題を解決するためになされたものであって、簡単な構成で、ジャギー端画素及びジャギーの傾きを検出することによってジャギーを改善する画像処理装置を提供することを目的とする。本発明は特に、主走査方向または副走査方向に対してわずかな角度をなす直線のジャギーに対して有効に作用する。
本発明の一実施形態は、多値画像データのエッジ情報を検出するエッジ検出手段と、前記エッジ情報の隣接する3ライン(K−1ライン、Kライン、K+1ライン)のうちKラインを走査することと、前記エッジ情報の隣接する3カラム(K−1カラム、Kカラム、K+1カラム)のうちKカラムを走査することとの少なくとも一方により、エッジ画素の変化点を検出して、ジャギー端画素位置を検出するジャギー端画素検出手段と、前記検出したジャギー端画素位置に基づき、K−1ラインまたはK+1ラインのエッジ画素の変化点を検出することと、K−1カラムまたはK+1カラムのエッジ画素の変化点を検出することとの少なくとも一方により、エッジ画素の連続数を計測し、ジャギー端画素間の距離を算出する距離算出手段と、前記算出したジャギー端画素間の距離に基づきジャギーの傾きを生成する傾き生成手段とを備えることを特徴とする画像処理装置である。
本発明によれば、簡単な構成で、ジャギー端画素及びジャギーの傾きを検出することができる。本発明は特に、主走査方向または副走査方向に対してわずかな角度をなす直線のジャギーに対して有効に作用する。
以下、添付の図面を参照して、本発明をその好適な実施例に基づいて詳細に説明する。なお、以下の実施例において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
[実施例1]
(画像処理装置の構成)
図1は、本発明の第1の実施例に係る画像処理装置の全体構成を示すブロック図である。エッジ検出部101は、多値画像データを入力し、公知のエッジ検出手法を用いて入力した多値画像データの中からエッジ情報を検出する。例えば、ラプラシアン演算により2次微分を行ったデータのゼロクロス点を検出する方法を用いることで、多値画像のエッジ部を検出する。そして、その検出結果は、例えば、0値は非エッジ画素を、1値はエッジ画素を表すエッジ情報として、ジャギー検出部102に出力される。
(画像処理装置の構成)
図1は、本発明の第1の実施例に係る画像処理装置の全体構成を示すブロック図である。エッジ検出部101は、多値画像データを入力し、公知のエッジ検出手法を用いて入力した多値画像データの中からエッジ情報を検出する。例えば、ラプラシアン演算により2次微分を行ったデータのゼロクロス点を検出する方法を用いることで、多値画像のエッジ部を検出する。そして、その検出結果は、例えば、0値は非エッジ画素を、1値はエッジ画素を表すエッジ情報として、ジャギー検出部102に出力される。
ジャギー検出部102は、エッジ検出部101から出力されたエッジ情報に基づいて、主走査方向におけるジャギー端画素の画素位置(本明細書では、「ジャギー端画素位置」と呼ぶ)及びそれに対応するジャギーの傾きを検出する。その検出結果は、ジャギー情報として補間処理部103に出力される。ジャギー検出部102の詳細については後述する(図3を参照)。
補間処理部103は、ジャギー検出部102から出力されたジャギー情報に基づいて、公知の手法を用いて画像からジャギーを除去する。ここで、図2を用いて、ジャギーを除去する公知の手法の例を説明する。
まず、図2について説明する。図2(a)は、白色の背景に黒色の文字が付加されている多値画像データの一部(36(=3×12)画素)を表している図である。正方形は単位画素を表している。本明細書では、任意の位置の画素を、画素P(ライン番号、カラム番号)と表記する。例えば、ライン番号0且つカラム番号1が示す位置の画素を画素P(0,1)と表記する。また、白画素は255値を、黒画素は0値を表している。
次に、ジャギーを除去する公知の手法の一例を説明する。ジャギー検出部102から出力されたジャギー情報のうちのジャギー端画素位置及びジャギーの傾きから、もう一つのジャギー端画素位置がわかる。例えば、図2(a)に示すライン番号1におけるジャギー端画素位置(1,2)及びジャギーの傾き1/5から、ライン番号0におけるジャギー端画素位置が(0,7)であることがわかる。そして、そのジャギー端画素間を公知の手法で補正することで、ジャギーを除去する。ジャギーを除去する方法は様々であり、その一つに、上下画素間で加重平均をとる方法がある。この方法ではジャギーの傾きに従って、上下画素の割合を変化させる。図2(b)は、上記公知の手法によるジャギー除去後の多値画像データの模式図である。図2(b)を参照すると、ライン番号0及び1且つカラム番号3〜6の画素が補正され、ジャギー端画素が無くなった結果、ジャギーが除去されていることがわかる。以上、公知の手法の一例を説明したが、他にもオーバーサンプリングを使用してスムージング処理することでジャギーを除去できる。尚、図2(c)は、オーバーサンプリング後の多値画像データの模式図である。
(ジャギー検出部)
次に、図3のブロック図を用いてジャギー検出部102の詳細を説明する。ジャギー検出部102は、図1に示すエッジ検出部101にて生成された2値のエッジ情報を3ライン分(K−1ライン、Kライン、K+1ライン)入力する。図4(a)は入力されたエッジ情報の一例を示し、図2(a)に示した多値画像データのエッジ情報を示す。尚、図4の図の説明(ライン番号やカラム番号など)は図2と同じであるため割愛する。ただし、図4では、黒画素はエッジ画素(1値)を示し、白画素は非エッジ画素(0値)を示すので留意されたい。また、図3に示すように、ジャギー検出部102は、ジャギー端画素検出部301と、ジャギー端画素間距離算出部302、303と、傾き生成部304、305とから構成される。
次に、図3のブロック図を用いてジャギー検出部102の詳細を説明する。ジャギー検出部102は、図1に示すエッジ検出部101にて生成された2値のエッジ情報を3ライン分(K−1ライン、Kライン、K+1ライン)入力する。図4(a)は入力されたエッジ情報の一例を示し、図2(a)に示した多値画像データのエッジ情報を示す。尚、図4の図の説明(ライン番号やカラム番号など)は図2と同じであるため割愛する。ただし、図4では、黒画素はエッジ画素(1値)を示し、白画素は非エッジ画素(0値)を示すので留意されたい。また、図3に示すように、ジャギー検出部102は、ジャギー端画素検出部301と、ジャギー端画素間距離算出部302、303と、傾き生成部304、305とから構成される。
(ジャギー検出部−ジャギー端画素検出部)
次に、図5を用いてジャギー端画素検出部301を説明する。図5は、ジャギー端画素検出部301がKラインのジャギー端画素位置を検出するまでの動作を示すフローチャートである。以下では、図4(a)に示すエッジ情報がジャギー端画素検出部301に入力された場合を例に挙げて説明する。
次に、図5を用いてジャギー端画素検出部301を説明する。図5は、ジャギー端画素検出部301がKラインのジャギー端画素位置を検出するまでの動作を示すフローチャートである。以下では、図4(a)に示すエッジ情報がジャギー端画素検出部301に入力された場合を例に挙げて説明する。
ステップS501において、ジャギー端画素検出部301は、入力された3ライン(即ちK−1ライン、Kライン、K+1ライン)の中で、Kライン(図4の例では、ライン番号1)の画素データを入力する。そして、続くステップS502〜S505において、ジャギー端画素検出部301は、Kラインにおいてエッジ画素から非エッジ画素(黒画素から白画素)に変化する変化点を見つける。以下、変化点を見つける手法(S502〜S505の各ステップ)を具体的に説明する。
ステップS502において、ジャギー端画素検出部301は、1×2ウィンドウを用いて入力されたKラインにおける隣接する左右の画素を参照画素とする。そして、この左右の画素を比較する。次いで、ステップS503に進む。
ステップS503において、ジャギー端画素検出部301は、参照画素がエッジ画素から非エッジ画素に変化しているか判定する。参照画素がエッジ画素から非エッジ画素に変化していると判定された場合、参照画素のうちの左の画素がジャギー端画素であると判定できる。参照画素がエッジ画素から非エッジ画素に変化していない場合は、ステップS504に進み、参照画素がエッジ画素から非エッジ画素に変化している場合は、ステップS505に進む。
ステップS504において、ジャギー端画素検出部301は、1×2ウィンドウを横方向(主走査方向)にずらすことで、参照画素を横方向(主走査方向)に1画素移動する。次いで、ステップS502に戻る。
ステップS505において、ジャギー端画素検出部301は、参照画素のうちの左の画素の画素位置をジャギー端画素位置として出力する。本実施例では、図4に示すように、(1,2)がKラインにおけるジャギー端画素位置となる。
(ジャギー検出部−ジャギー端画素間距離算出部)
次に、図6を用いてジャギー端画素間距離算出部302を説明する。図6は、ジャギー端画素間距離算出部302がジャギー端画素間の距離(本明細書では、「画素間距離」と呼ぶ)を算出するまでの動作を示すフローチャートである。尚、本実施例では、ジャギー端画素間距離算出部302は、横方向(主走査方向)の画素を十分にカウントできるカウンタを具備しており、カウンタがオーバーフローすることはないものとする。斯かる構成により、わずかな角度をなす直線のジャギーを測定することができる。具体的には、後述する傾き生成部304、305にて算出するジャギーの傾きは±1/(カウンタの最大値)まで算出可能となる。
次に、図6を用いてジャギー端画素間距離算出部302を説明する。図6は、ジャギー端画素間距離算出部302がジャギー端画素間の距離(本明細書では、「画素間距離」と呼ぶ)を算出するまでの動作を示すフローチャートである。尚、本実施例では、ジャギー端画素間距離算出部302は、横方向(主走査方向)の画素を十分にカウントできるカウンタを具備しており、カウンタがオーバーフローすることはないものとする。斯かる構成により、わずかな角度をなす直線のジャギーを測定することができる。具体的には、後述する傾き生成部304、305にて算出するジャギーの傾きは±1/(カウンタの最大値)まで算出可能となる。
ステップS601において、ジャギー端画素間距離算出部302は、K−1ライン(図4の例では、ライン番号0)及びKライン(図4の例では、ライン番号1)の画素データを入力する。次いで、ステップS602に進む。
ステップS602において、ジャギー端画素間距離算出部302は、ジャギー端画素検出部301から出力された、Kラインにおけるジャギー端画素位置を入力する。次いで、ステップS603に進む。
ステップS603において、ジャギー端画素間距離算出部302は、Kラインにおけるジャギー端画素位置の右に隣接する画素位置を、Kラインにおける参照画素の開始位置に設定する。また、このKラインにおける参照画素の開始位置の上に隣接する画素位置を、K−1ラインにおける参照画素の開始位置に設定する。図4(b)を参照すると、本実施例では、(0,3)がK−1ラインにおける参照画素の開始位置であり、(1,3)がKラインにおける参照画素の開始位置であることが分かる。以後、説明し易いように、K−1ラインにおける参照画素を「参照画素K−1」、Kラインにおける参照画素を「参照画素K」と呼ぶ。また、ステップS603において、ジャギー端画素間距離算出部302は、カウンタを0値にリセットする。次いで、ステップS604に進む。
ステップS604〜S609において、ジャギー端画素間距離算出部302は、参照画素K−1の開始位置から横方向(主走査方向)にK−1ラインの画素を走査しながら、エッジ画素(黒画素)の連続数をカウントしていく。これにより、ジャギー端画素間距離算出部302は、参照画素K−1の開始位置からエッジ画素が非エッジ画素に変化する変化点までの距離、即ちジャギー端画素間の距離(画素間距離)を計測する。ただし、この計測中、Kラインの画素に、エッジ画素(黒画素)が検出された場合は、計測を中止し、カウンタを0値にリセットする。これは、K−1ラインにジャギー端画素がないと判定し、後段の補間処理部103にて画素を補間処理させないようにするためである。なぜならば、Kラインにエッジ画素が多発する画像データは、例えば格子状の複雑な文字の一部を描画するデータである場合があり、このような場合に補間処理するとかえって画質劣化してしまうからである。以下、具体的な処理フローの詳細(S604〜S609の各ステップ)を説明する。
ステップS604において、ジャギー端画素間距離算出部302は、参照画素Kがエッジ画素であるか判定する。判定の結果、参照画素Kがエッジ画素であればステップS609に進み、参照画素Kがエッジ画素でなければステップS605に進む。
ステップS605において、ジャギー端画素間距離算出部302は、参照画素K−1がエッジ画素であるか判定する。判定の結果、参照画素K−1が非エッジ画素であれば、その時の参照画素K−1はエッジ画素から非エッジ画素となる変化点なので、この参照画素K−1のひとつ前の画素(左に隣接する画素)がK−1ラインにおけるジャギー端画素であると判断できる。判定の結果、参照画素K−1がエッジ画素であればステップS606に進み、参照画素K−1がエッジ画素でなければステップS608に進む。
ステップS606において、ジャギー端画素間距離算出部302は、カウンタをインクリメントする。次いで、ステップS607に進む。
ステップS607において、ジャギー端画素間距離算出部302は、参照画素K−1及び参照画素Kを、それぞれ右に1画素移動する。次いで、ステップS604に戻る。
ステップS608において、ジャギー端画素間距離算出部302は、それまでに計測したカウント値が横方向(主走査方向)のジャギー端画素間の距離になるので、このカウント値を画素間距離として出力する。尚、図4(b)に示す例では、(0,8)がエッジ画素から非エッジ画素への変化点なので、画素P(0,7)がK−1ラインにおけるジャギー端画素であると判断できる。従って、それまでにカウントされた図4(b)に示すカウント区間(画素P(0,3)〜画素P(0,7))の値5が画素間距離として出力される。
ステップS609において、ジャギー端画素間距離算出部302は、カウンタを0値にリセットする。次いで、ステップS608に進む。
以上のようにして、横方向(主走査方向)のジャギー端画素間の距離(画素間距離)を算出できる。
ジャギー端画素間距離算出部303は、ジャギー端画素間距離算出部302と構成が同じなので説明を割愛する。ただし、ジャギー端画素間距離算出部303では、K−1ライン(図4の例ではライン番号0)ではなく、K+1ライン(図4の例ではライン番号2)の画素が入力されて、ジャギー端画素間距離算出部302と同様に画素間距離を算出する。従って、例えば、参照画素K+1の開始位置は、(2,3)である(図4(b)を参照)。そして、画素P(2,3)は非エッジ画素であるため、画素間距離は0となる。
(ジャギー検出部−傾き生成部)
傾き生成部304は、K−1ラインのジャギー端画素と、Kラインのジャギー端画素との間のジャギーの傾きを算出する。具体的には、傾き生成部304は、ジャギー端画素間距離算出部302から出力された横方向(主走査方向)の画素間距離を入力し、式1にてジャギーの傾きを算出する。
H=L/W・・・(式1)
ただし、Hはジャギーの傾きであり、Wは横方向(主走査方向)のジャギー端画素間距離であり、Lは縦方向(副走査方向)のジャギー端画素間距離である。図4(c)の例の場合、横方向(主走査方向)の画素間距離はW=5であり、縦方向の画素間距離はL=1であるから、ジャギーの傾きはH=1/5と算出される。
傾き生成部304は、K−1ラインのジャギー端画素と、Kラインのジャギー端画素との間のジャギーの傾きを算出する。具体的には、傾き生成部304は、ジャギー端画素間距離算出部302から出力された横方向(主走査方向)の画素間距離を入力し、式1にてジャギーの傾きを算出する。
H=L/W・・・(式1)
ただし、Hはジャギーの傾きであり、Wは横方向(主走査方向)のジャギー端画素間距離であり、Lは縦方向(副走査方向)のジャギー端画素間距離である。図4(c)の例の場合、横方向(主走査方向)の画素間距離はW=5であり、縦方向の画素間距離はL=1であるから、ジャギーの傾きはH=1/5と算出される。
傾き生成部305は、生成部304と同様の方法で、K+1ラインのジャギー端画素と、Kラインのジャギー端画素との間のジャギーの傾きを算出する。ただし、傾き生成部304はプラスの傾きを算出するので、傾き生成部305はマイナスの傾きを算出する。具体的には、傾き生成部305は、ジャギー端画素間距離算出部303から出力された横方向(主走査方向)の画素間距離を入力し、式2にてジャギーの傾きを算出する。
H=―L/W・・・(式2)
図4(c)の例の場合、横方向(主走査方向)の画素間距離はW=0であり、縦方向の画素間距離はL=1であるから、ジャギーの傾きはH=0と算出される。
H=―L/W・・・(式2)
図4(c)の例の場合、横方向(主走査方向)の画素間距離はW=0であり、縦方向の画素間距離はL=1であるから、ジャギーの傾きはH=0と算出される。
以上のようにして、ジャギー検出部102は、傾き生成部304、305から出力された2つのジャギーの傾き及びジャギー端画素検出部301から出力されたジャギー端画素位置を、ジャギー情報として出力する。
上述した例では、横方向(主走査方向)のジャギー除去について説明した。しかし、上述した例においてラインをカラムに、カラムをラインにそれぞれ変更し、3カラム(K−1カラム、Kカラム、K+1カラム)を走査することで、縦方向(副走査方向)のジャギー除去も可能である。また、本実施例を適用した同一回路を用いて、横方向(主走査方向)及び縦方向(副走査方向)に計2回スキャンすることで、広範囲なジャギー傾きを検出できる。
以上のように、本実施例によれば、簡単な構成で、ジャギー端画素及びジャギーの傾きを検出可能な画像処理装置を提供することができる。特に、本実施例によれば、主走査方向または副走査方向に対してわずかな角度をなす直線のジャギーに対して有効に作用する画像処理装置を提供することができる。
[実施例2]
実施例1で説明したジャギー端画素間距離算出部302、303は、横方向(主走査方向)の画素を十分にカウントできるカウンタを具備していたため、カウンタがオーバーフローすることはないものとしていた。つまり、実施例1では、具備するカウンタの上限値が横方向(主走査方向)の画素数に依存する。一方、本実施例では、具備するカウンタの上限値を固定し、横方向(主走査方向)の画素数に依存しない画像処理装置を提供する。
実施例1で説明したジャギー端画素間距離算出部302、303は、横方向(主走査方向)の画素を十分にカウントできるカウンタを具備していたため、カウンタがオーバーフローすることはないものとしていた。つまり、実施例1では、具備するカウンタの上限値が横方向(主走査方向)の画素数に依存する。一方、本実施例では、具備するカウンタの上限値を固定し、横方向(主走査方向)の画素数に依存しない画像処理装置を提供する。
本実施例に係る画像処理装置の構成は、実施例1と同じである(図1を参照)。図7は、本実施例に係るジャギー検出部102の構成を示すブロック図である。ただし、ジャギー端画素検出部701は、ジャギー端画素検出部301と同じ構成である。また、傾き生成部704、705は、それぞれ傾き生成部304、305と同じ構成である。
以後、実施例1と異なる点について主に説明する。その際、図9(a)に示すエッジ情報がジャギー検出部102に入力された場合を例に挙げて説明する。尚、図9(a)は、図4(a)と同じエッジ情報を示す。
(ジャギー端画素間距離算出部)
図8を用いてジャギー端画素間距離算出部702を説明する。図8は、ジャギー端画素間距離算出部702が画素間距離を算出するまでの動作を示すフローチャートである。尚、本実施例では、ジャギー端画素間距離算出部702は、2ビットカウンタ(上限値が3)を具備するものとする。
図8を用いてジャギー端画素間距離算出部702を説明する。図8は、ジャギー端画素間距離算出部702が画素間距離を算出するまでの動作を示すフローチャートである。尚、本実施例では、ジャギー端画素間距離算出部702は、2ビットカウンタ(上限値が3)を具備するものとする。
図8は、図6のフローチャートにステップS810〜S813が追加されたものである。ステップS801〜S809の処理は、実施例1で説明したステップS601〜S609の処理と同様なため、詳細な説明を割愛する。
ステップS801〜S807の処理では、参照画素K−1の開始位置(図9(b)を参照)からK−1ラインにおけるエッジ画素をカウントしている。そして、S807の処理で、参照画素K−1、Kを右に1画素移動した後、ステップS811に進む。
ステップS811において、ジャギー端画素間距離算出部702は、カウンタが上限値に達したか判定する。例えば、カウンタが2ビット(上限値が3)の場合は、カウンタが3に達したか判定する。その判定の結果、カウンタが上限値に達していない場合、ステップS804に戻る。一方、その判定の結果、カウンタが上限値に達した場合、ステップS812に進む。
ステップS812において、ジャギー端画素間距離算出部702は、ホールド信号TRUEを出力する。このホールド信号は、後述するジャギー端画素位置補正部706で、ジャギー端画素位置を補正するために使用する。次いで、ステップS813に進む。
ステップS813において、ジャギー端画素間距離算出部702は、カウンタを0値にリセットする。次いで、ステップS804に戻る。
図8のフローチャートでは最終的に、ステップS608と同様にステップS808において、ジャギー端画素間距離算出部702は、カウント値を画素間距離として、傾き生成部704に対して出力する。そして、ステップS810において、ジャギー端画素間距離算出部702は、ホールド信号FALSEをジャギー端画素位置補正部706に対して出力する。尚、図9(b)の例では、K−1ラインにおけるエッジ画素をカウントしている間、参照画素K−1の位置が(0,5)であるときが、ホールド信号TRUEを出力するタイミングである。また、参照画素K−1の位置が(0,8)であるときが、ホールド信号FALSEを出力するタイミングである。そして、このホールド信号FALSEを出力するとき、画素間距離として2が出力されている。
ジャギー端画素間距離算出部703は、ジャギー端画素間距離算出部702と同じ構成であるため、説明を割愛する。
(ジャギー端画素位置補正部)
次に、ジャギー端画素位置補正部706を説明する。ジャギー端画素位置補正部706は、ジャギー端画素検出部701から出力されたジャギー端画素位置及びジャギー端画素間距離算出部702、703から出力されたホールド信号を入力する。ホールド信号TRUEが入力された場合に、ジャギー端画素位置補正部706は、ジャギー端画素間距離算出部702、703が具備しているカウンタの上限値分ジャギー端画素の位置を移動させる。
次に、ジャギー端画素位置補正部706を説明する。ジャギー端画素位置補正部706は、ジャギー端画素検出部701から出力されたジャギー端画素位置及びジャギー端画素間距離算出部702、703から出力されたホールド信号を入力する。ホールド信号TRUEが入力された場合に、ジャギー端画素位置補正部706は、ジャギー端画素間距離算出部702、703が具備しているカウンタの上限値分ジャギー端画素の位置を移動させる。
例えば図9(b)では、ジャギー端画素位置は(1,2)であるが、ジャギー端画素間距離算出部702からのホールド信号TRUEを受け取ったジャギー端画素位置補正部706は、カウンタの上限値の3画素分、右方向にジャギー端画素位置を移動させる。その結果、ジャギー端画素位置は、(1,5)となる(図9(c)を参照)。
本実施例ではこのようにして、ジャギー端画素位置を右方向(主走査方向)に移動させる。ジャギー端画素位置の移動は、ジャギー端画素位置補正部706がジャギー端画素間距離算出部702からのホールド信号FALSEを入力されるまで継続する。そして、ホールド信号FALSEが入力されたタイミングで、ジャギー端画素位置補正部706は、ジャギー端画素位置を出力する。図9(b)の例では、ジャギー端画素位置補正部706は、Kラインのジャギー端画素位置(1,5)を出力する。
上述した例では、カウンタのビット数が2ビットであったが、任意のビット数のカウンタを使用して本発明を実現できる。
本実施例によれば、カウンタのビット数によらず、ジャギー端画素及びジャギーの傾きを検出することができるので、横方向(主走査方向)の画素数に依存しない画像処理装置を提供することができる。
[その他の実施形態]
前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、本発明の目的が達成される。この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、本発明の目的が達成される。この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM,CD−R、磁気テープ、不揮発性のメモリカード、ROMなどを用いることができる。
また、コンピュータが読み出したプログラムコードを実行することによって、前述した実施形態の機能が実現される。他に、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOSなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。そして、その書き込まれたプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
尚、本発明は、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記憶媒体から、そのプログラムを、パソコン通信など通信ラインを介して要求者に配信する場合にも適用できる。
Claims (8)
- 多値画像データのエッジ情報を検出するエッジ検出手段と、
前記エッジ情報の隣接する3ライン(K−1ライン、Kライン、K+1ライン)のうちKラインを走査することと、前記エッジ情報の隣接する3カラム(K−1カラム、Kカラム、K+1カラム)のうちKカラムを走査することとの少なくとも一方により、エッジ画素の変化点を検出して、ジャギー端画素位置を検出するジャギー端画素検出手段と、
前記検出したジャギー端画素位置に基づき、K−1ラインまたはK+1ラインのエッジ画素の変化点を検出することと、K−1カラムまたはK+1カラムのエッジ画素の変化点を検出することとの少なくとも一方により、エッジ画素の連続数を計測し、ジャギー端画素間の距離を算出する距離算出手段と、
前記算出したジャギー端画素間の距離に基づきジャギーの傾きを生成する傾き生成手段と
を備えることを特徴とする画像処理装置。 - 前記距離算出手段は、主走査方向または副走査方向の画素数をカウントできるカウンタを備えることを特徴とする請求項1に記載の画像処理装置。
- ジャギー端画素位置を補正する画素位置補正手段をさらに備え、
前記距離算出手段は、前記計測したエッジ画素の連続数が前記カウンタの上限値に達したか否かを示すホールド信号を出力し、
前記画素位置補正手段は、前記ホールド信号に従ってジャギー端画素位置を補正することを特徴とする請求項2に記載の画像処理装置。 - 前記距離算出手段は、K−1ライン及びK+1ラインのエッジ画素の連続数の計測中に、参照しているK−1ライン及びK+1ラインのエッジ画素に対応する、Kラインの画素がエッジ画素であった場合、前記算出するジャギー端画素間の距離を0値とし、K−1カラム及びK+1カラムのエッジ画素の連続数の計測中に、参照しているK−1カラム及びK+1カラムのエッジ画素に対応する、Kカラムの画素がエッジ画素であった場合、前記算出するジャギー端画素間の距離を0値とすることを特徴とする請求項1乃至3の何れか一項に記載の画像処理装置。
- 前記距離算出手段は、カウント値が前記カウンタの上限値に達した場合、ホールド信号TRUEを出力し、カウント値が前記カウンタの上限値に達していない場合、ホールド信号FALSEを出力することを特徴とする請求項3に記載の画像処理装置。
- 前記画素位置補正手段は、前記ホールド信号TRUEが入力された場合、前記カウンタの上限値だけ、主走査方向または副走査方向にジャギー端画素位置を移動させることにより、ジャギー端画素位置を補正することを特徴とする請求項5に記載の画像処理装置。
- 多値画像データのエッジ情報を検出するエッジ検出ステップと、
前記エッジ情報の隣接する3ライン(K−1ライン、Kライン、K+1ライン)のうちKラインを走査することと、前記エッジ情報の隣接する3カラム(K−1カラム、Kカラム、K+1カラム)のうちKカラムを走査することとの少なくとも一方により、エッジ画素の変化点を検出して、ジャギー端画素位置を検出するジャギー端画素検出ステップと、
前記検出したジャギー端画素位置に基づき、K−1ラインまたはK+1ラインのエッジ画素の変化点を検出することと、K−1カラムまたはK+1カラムのエッジ画素の変化点を検出することとの少なくとも一方により、エッジ画素の連続数を計測し、ジャギー端画素間の距離を算出する距離算出ステップと、
前記算出したジャギー端画素間の距離に基づきジャギーの傾きを生成する傾き生成ステップと
を備えることを特徴とする画像処理方法。 - コンピュータを請求項1乃至6の何れか一項に記載の画像処理装置として機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014004319A JP2015133630A (ja) | 2014-01-14 | 2014-01-14 | 画像処理装置、画像処理方法、及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014004319A JP2015133630A (ja) | 2014-01-14 | 2014-01-14 | 画像処理装置、画像処理方法、及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2015133630A true JP2015133630A (ja) | 2015-07-23 |
Family
ID=53900533
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014004319A Pending JP2015133630A (ja) | 2014-01-14 | 2014-01-14 | 画像処理装置、画像処理方法、及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2015133630A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117036206A (zh) * | 2023-10-10 | 2023-11-10 | 荣耀终端有限公司 | 一种确定图像锯齿化程度的方法及相关电子设备 |
-
2014
- 2014-01-14 JP JP2014004319A patent/JP2015133630A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117036206A (zh) * | 2023-10-10 | 2023-11-10 | 荣耀终端有限公司 | 一种确定图像锯齿化程度的方法及相关电子设备 |
CN117036206B (zh) * | 2023-10-10 | 2024-03-26 | 荣耀终端有限公司 | 一种确定图像锯齿化程度的方法及相关电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5980294B2 (ja) | データ処理装置、撮像装置、およびデータ処理方法 | |
RU2721188C2 (ru) | Улучшение контраста и снижение шума на изображениях, полученных с камер | |
US20100246972A1 (en) | Image processing apparatus, image processing method, and recording medium | |
JP2006245677A (ja) | 画像処理装置、画像処理方法および画像処理プログラム | |
JP2009212969A (ja) | 画像処理装置、画像処理方法、及び画像処理プログラム | |
US8538191B2 (en) | Image correction apparatus and method for eliminating lighting component | |
US9077926B2 (en) | Image processing method and image processing apparatus | |
JP5870745B2 (ja) | 画像処理装置、二値化閾値算出方法及びコンピュータプログラム | |
JP6395429B2 (ja) | 画像処理装置、その制御方法及び記憶媒体 | |
US10785484B2 (en) | Motion vector calculation method, information processing apparatus, recording medium recording motion vector calculation program | |
JP5093364B2 (ja) | 画像処理システム、画像処理装置及び画像処理方法 | |
JP4875564B2 (ja) | フリッカ補正装置及びフリッカ補正方法 | |
JP2015133630A (ja) | 画像処理装置、画像処理方法、及びプログラム | |
JP2005184685A (ja) | 画像処理装置、プログラムおよび記録媒体 | |
JP2006270897A (ja) | 画像処理装置、方法及びプログラム | |
JP2015176488A (ja) | 情報処理装置及びその制御方法、プログラム | |
JP2015056043A (ja) | 画像処理装置、その制御方法、および制御プログラム | |
JP2011171991A (ja) | 画像処理装置、電子機器、画像処理方法、および、画像処理プログラム | |
JP2010039968A (ja) | オブジェクト検出装置及び検出方法 | |
JP2017033200A (ja) | 画像処理装置 | |
JP2007156954A (ja) | 信頼度テーブル作成方法、オプティカルフロー推定方法、信頼度テーブル作成装置、オプティカルフロー推定装置、及びプログラム | |
JP7377661B2 (ja) | 画像の意味的領域分割装置、領域検知感度向上方法、及びプログラム | |
JP6230467B2 (ja) | 画像処理装置及び画像処理方法 | |
JP6091082B2 (ja) | 画像処理装置、画像処理方法、及び、プログラム | |
JP2010072901A (ja) | 画像処理装置およびその方法 |