(57)【特許請求の範囲】
【請求項１】
画像の特定パターンを検出する画像処理装置において、
四角形の検出窓をｎ画素ずつ移動させる移動手段と、
前記検出窓の各辺から中心に向かって、特定パターンの端を検出する端検出手段と、
前記移動手段による前記検出窓の移動方向と一致する特定パターンの端の検出方向について、前記端検出手段により特定パターンの端を検出した走査の深さに応じて、前記移動手段による前記検出窓の移動量を変更させる移動量変更手段と
を備えることを特徴とする画像処理装置。
【請求項２】
前記端検出手段は、前記検出窓内で特定パターンの端を検出するときに、最初に、前記移動手段による前記検出窓の移動方向について特定パターンの端を検出し、次に、前記検出窓の移動方向に対して垂直な方向について特定パターンの端を検出することを特徴とする請求項１に記載された画像処理装置。
【請求項３】
画像の特定パターンを検出する画像処理方法において、
四角形の検出窓をｎ画素ずつ移動させ、
前記検出窓の各辺から中心に向かって、特定パターンの端を検出し、
前記検出窓の移動方向と一致する特定パターンの端の検出方向について、特定パターンの端を検出した走査の深さに応じて、前記検出窓の移動量を変更する
ことを特徴とする画像処理方法。
【請求項４】
特定パターンの端を検出する前記ステップは、前記検出窓内で特定パターンの端を検出するときに、最初に前記検出窓の移動方向について特定パターンの端を検出し、次に、前記検出窓の移動方向に対して垂直な方向について特定パターンの端を検出することを特徴とする請求項３に記載された画像処理方法。
【請求項５】
画像の特定パターンを検出する画像処理プログラムであって、四角形の検出窓をｎ画素ずつ移動させる手順と、前記検出窓の各辺から中心に向かって、特定パターンの端を検出する手順と、前記検出窓の移動方向と一致する特定パターンの端の検出方向について、特定パターンの端を検出した走査の深さに応じて、前記検出窓の移動量を変更する手順とをコンピュータに実行させるためのプログラムを記録することを特徴とするコンピュータ読み取り可能な記録媒体。
【請求項６】
特定パターンの端を検出する前記手順は、前記検出窓内で特定パターンの端を検出するときに、最初に前記検出窓の移動方向について特定パターンの端を検出し、次に、前記検出窓の移動方向に対して垂直な方向について特定パターンの端を検出することを特徴とする請求項５に記載されたコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像内における特定パターンを検出するための画像処理装置、画像処理方法、画像処理プログラムを記録した記録媒体に関するものである。
【０００２】
【従来の技術】
近年、カラー複写機の機能と性能が向上し、紙幣等の偽造も可能になりつつある。そのため、有効な偽造防止方法が検討され続けている。偽造防止方法の１つに、紙幣などの模様内に特定パターンを入れておき、スキャンされた画像を解析し、画像内において特定パターンを検出したならば、正常な像生成を禁止する方法がある。
【０００３】
【発明が解決しようとする課題】
ところで、近年では、走査を行う入力デバイスや画像データを印字プリントとして出力する出力デバイスとして、例えば高解像度データなどの情報量の大きい画像データを高速に処理可能なものが普及しつつあり、これら入出力デバイスと共働して、実時間内での特定パターンを検出することが要望されている。さらに従来よりも速く特定パターンを検出する画像処理装置が要望されている。特定パターンとして例えば円形パターンを用いるものがあり、円形パターンの検出も高速化されることが要望されている。
【０００４】
本発明は、特定パターンの検出を高速化する画像処理装置を提供することを目的とする。
さらに、本発明は、特定パターンの検出を高速化する画像処理方法を提供することを目的とする。
さらに、本発明は、特定パターンの検出を高速化する画像処理プログラムを記録する記録媒体を提供することを目的とする。
【０００５】
【課題を解決するための手段】
上記の目的を達成するために、請求項１に記載の画像処理装置は、画像の特定パターンを検出する画像処理装置であって、四角形の検出窓をｎ画素ずつ移動させる移動手段と、前記検出窓の各辺から中心に向かって、特定パターンの端を検出する端検出手段と、前記検出窓の移動方向と一致する特定パターンの端の検出方向について、前記端検出手段により特定パターンの端を検出した走査の深さに応じて、前記移動手段による前記検出窓の移動量を変更させる変更量変更手段とを備えることを特徴とするものである。
【０００６】
好ましくは、前記端検出手段は、前記検出窓内で特定パターンの端を検出するときに、最初に前記検出窓の移動方向について特定パターンの端を検出し、次に、前記検出窓の移動方向に対して垂直な方向について特定パターンの端を検出する。
【０００８】
請求項３に記載の画像処理方法は、画像の特定パターンを検出する画像処理方法であって、四角形の検出窓をｎ画素ずつ移動させ、前記検出窓の各辺から中心に向かって、特定パターンの端を検出し、前記検出窓の移動方向と一致する特定パターンの端の検出方向について、特定パターンの端を検出した走査の深さに応じて、前記検出窓の移動量を変更することを特徴とするものである。
【０００９】
好ましくは、検出ステップでは、前記検出窓内で特定パターンの端を検出するときに、最初に前記検出窓の移動方向について特定パターンの端を検出し、次に、前記検出窓の移動方向に対して垂直な方向について特定パターンの端を検出する。
【００１１】
請求項５に記載の記録媒体は、画像の特定パターンを検出する画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体である。その画像処理プログラムは、四角形の検出窓をｎ画素ずつ移動させる手順と、前記検出窓の各辺から中心に向かって、特定パターンの端を検出する手順と、前記検出窓の移動方向と一致する特定パターンの端の検出方向について、特定パターンの端を検出した走査の深さに応じて、前記検出窓の移動量を変更する手順とをコンピュータに実行させるためのプログラムである。
【００１２】
好ましくは、検出ステップでは、前記検出窓内で特定パターンの端を検出するときに、最初に前記検出窓の移動方向について特定パターンの端を検出し、次に、前記検出窓の移動方向に対して垂直な方向について特定パターンの端を検出する。
【００１４】
【発明の実施の形態】
以下、本発明の実施の形態について、図面を参照して説明する。
図１に本実施形態の画像処理装置（以下、「システム」という。）の概略構成図を示す。図１に示すように、システムは中央演算処理装置（以下、ＣＰＵという）を備え、システム全体を制御する制御装置１を中心として構成される。この制御装置１には、画像、文字等の表示や、操作のための表示等を行うディスプレイ２と、各種入力、指示操作等を行うためのキーボード３およびマウス４が備えられる。記録媒体として、フレキシブルディスク５ａ、ハードディスク６、ＣＤ−ＲＯＭ９ａが用いられ、フレキシブルディスク装置５ｂ、ＣＤ−ＲＯＭ装置９ｂおよびハードディスク装置６が備えられる。さらに、文字や画像データ等を印刷するプリンタ７と、画像データを取り込むためのスキャナ８と、音声出力のためのスピーカ１０と、音声入力のためのマイクロホン１１とが接続される。
【００１５】
図２に本システムの制御系のブロック図を示す。ＣＰＵ２０１には、データバス２２０を介して、本システムを制御するプログラムが格納されているＲＯＭ２０３と、ＣＰＵ２０１が制御のために実行するプログラムやデータを一時的に格納するＲＡＭ２０４とが接続される。また、ＣＰＵ２０１にデータバス２２０を介して接続される回路には、画像あるいは文字等の表示のためディスプレイ１２を制御する表示制御回路２０５と、キーボード３からの入力を転送制御するキーボード御回路２０６と、マウス４からの入力を転送制御するマウス制御回路２０７と、フレキシブルディスク装置１８ｂを制御するフレキシブルディスク装置制御回路２０８と、ハードディスク装置を制御するハードディスク装置制御回路２０９と、プリンタ２２への出力を制御するプリンタ制御回路２１０と、スキャナ２４を制御するスキャナ制御回路２１１と、ＣＤ−ＲＯＭ装置９ｂを制御するＣＤ−ＲＯＭ装置制御回路２１２と、スピーカ１０を制御するスピーカ制御回路２１３と、マイクロホン１１を制御するマイクロホン制御回路２１４とがある。さらに、ＣＰＵ２０１には、システムを動作させるために必要な基準クロックを発生させるためのクロック２０２が接続され、また、各種拡張ボードを接続するための拡張スロット２１５がデータバス２２０を介して接続される。
【００１６】
なお、このシステムでは、画像認識のプログラムをＲＯＭ２０３に格納する。しかし、本プログラムの一部または全部をフレキシブルディスク５ａ、ハードディスク６、ＣＤ−ＲＯＭ９ａなどの情報記録媒体に格納しておき、必要に応じて情報記録媒体よりプログラムをＲＡＭ２０４に読み出し、これを実行させてもよい。また、記録媒体は、光磁気ディスク（ＭＯ）等の他の情報記録媒体でもよい。また、画像データ入力装置としてスキャナ８を用いているが、スチルビデオカメラやデジタルカメラ等の他のデータ入力装置であってもよい。また、拡張スロット２１５にネットワーク用ボードを接続して、ネットワークを介してプログラムや画像データを受け取ることもできる。
【００１７】
図３は、本システムにおいてＣＰＵ２０１が実行するメインルーチンを示すフローチャートである。本システムが処理する入力画像データは、Ｒ(赤)、Ｇ(緑)、Ｂ(青)の各色がそれぞれ８ビット(２５６階調)の濃度値を有するデータである。この画像データは図２に示されているようにさまざまな入力手段によって入力された画像データである。この画像データは、必要に応じて、解像度変換、変倍等の前処理が行われる。ステップＳ３０１において、検出したい特定パターン（マーク）の色に応じて２値化処理が行われる。この２値化処理とは、画像データを構成する各画素の特定パターン（マーク）の色についての濃度値が、予め設定された「参照濃度範囲」に含まれるならば、該参照濃度範囲内の濃度値を有する画素をオン画素に設定し、含まれないならばオフ画素に設定することである。次に、ステップＳ３０２において、特定パターンの位置の検出が行われる。この特定パターンの位置の検出については、後に詳細に記載する。次に、ステップＳ３０３において、ステップＳ３０２において検出された特定パターンが、真に検出したい特定パターンか否か精査され、この精査によって検出したい特定パターンであるか否か判定される。
【００１８】
（検出窓の移動）
図４は、部分画像領域における検出窓の移動を説明する図である。この部分画像領域２２は、２値画像の全領域から、一定の領域を抽出したものである。図４の部分画像領域２２は、検出したい特定パターンが２つ以上入らない最大の大きさである。検出窓２０の一辺の長さは、検出したい特定パターンよりｎ画素長い。部分画像領域２２は、ｘ方向において、ｎ画素ずつずらした検出窓２０がｑ個入る長さであり、ｙ方向において、ｎ画素ずつずらした検出窓２０がｐ個入る長さである。
【００１９】
また、図４において図示されているように、特定パターンを検出する際に、検出窓２０は、左上からｘ方向にｎ画素または２ｎ画素ずつ移動する。右端に達したら、左端に戻り、ｙ方向にｎ画素移動してから、同様にｘ方向にｎまたは２ｎ画素移動する。以後、検出窓が右下に達するまでこれらの動作が繰り返される。なお、図４において、部分画像領域２２の左上の検出窓２０と右下の検出窓２０は、それぞれ別の画素を検出するように図示されているが、これは図を分かりやすくするためであり、実際にはそれぞれの検出窓２０はもっと大きく、それぞれの検出窓２０が検出する画素の大部分は共通している。
【００２０】
（特定パターンの位置の検出）
次に図３のステップＳ３０２における特定パターンの位置の検出について説明する。図５と図６は、本システムの特定パターンの位置を検出する画像処理（図３、ステップＳ３０２）のフローチャートである。上に記載されているように、ここで処理される画像データは、特定パターン（マーク）の色によって２値化処理された画像データである。２値画像の全領域の一部である部分画像領域２２において、特定パターンの位置の検出を行う。
【００２１】
まず、始めに初期設定を行う（Ｓ７０１）。例えばこのとき、検出窓２０は、部分画像領域２２の左上の位置に設定され、検出窓２０の左上の座標（ｘ，ｙ）を（ｘ，ｙ）＝（ｘＭｉｎ，ｙＭｉｎ）にする。次に、検出窓２０の▲１▼の方向から端の検出を始める（Ｓ７０２）。図７は、検出窓の辺から特定パターンの端を検出する際の検出方向を説明する図である。ここで▲１▼の方向とは、図７に示されているように検出窓２０の左から中心の方向である。以下の▲２▼の方向、▲３▼の方向、▲４▼の方向は図７に示されているように、それぞれ検出窓２０の上から中心の方向であり、検出窓２０の下から中心の方向であり、検出窓２０の右から中心の方向である。次に、▲１▼の方向から端を検出できたか否か判断する（Ｓ７０３）。端を検出できたならば、検出窓２０の▲２▼の方向から端の検出を始める（Ｓ７０４）。端を検出できなかったならば、ステップＳ８０４に進む。次に、▲２▼の方向から端を検出できたか否か判断する（Ｓ７０５）。端を検出できたならば、検出窓２０の▲３▼の方向からの端の検出を始める（Ｓ７０６）。端を検出できなかったならば、ステップＳ８０１に進む。次に、▲３▼の方向から端を検出できたか否か判断する（Ｓ７０７）。端を検出できたならば、検出窓２０の▲４▼の方向からの端の検出を始める（Ｓ７０８）。端を検出できなかったならば、ステップＳ８０１に進む。次に、▲４▼の方向から端を検出できたか否か判断する（Ｓ７０９）。端を検出できたならば、特定パターンの位置を検出したことになり、この特定パターンの位置は、本システムのいずれかに例えばＲＡＭ２０４に記憶される（Ｓ７１０）。それからステップＳ８０２に進む。端を検出できなかったならば、ステップＳ８０１に進む。この検出窓２０の▲１▼の方向、▲２▼の方向、▲３▼の方向、▲４▼の方向からの端の検出については、後に詳細に記載する。
【００２２】
図６のフローチャートを説明する前に、検出窓の移動量について説明する。図８は、検出窓の移動量の変化を説明する図である。検出窓２０の▲１▼の方向、▲２▼の方向、▲３▼の方向、▲４▼の方向のいずれかから端を検出できなかったならば、検出窓を移動させてから、再び検出窓２０の▲１▼の方向、▲２▼の方向、▲３▼の方向、▲４▼の方向の順番に端を検出し始める。この検出窓２０を移動させる場合、検出窓２０の▲１▼の方向からの端の検出の結果によって検出窓２０を移動させる量が異なる。図８（ａ）は、深さ２ｎ画素までに端を検出した場合の検出窓２０の移動量を説明する図である。この図８（ａ）に示されているように、深さ２ｎ画素までに端を検出した場合、検出窓２０は、右方向にｎ画素移動する。図８（ｂ）は、深さ２ｎ画素までに端を検出できなかった場合の検出窓２０の移動量を説明する図である。この図８（ｂ）に示されているように、深さ２ｎ画素までに端を検出できなかった場合、検出窓２０は、右に２ｎ画素移動する。検出窓２０は、特定パターンの横幅よりｎ画素程度大きいので、▲１▼の方向から深さ２ｎ画素までに端を検出できなかった場合、少なくとも検出窓２０の▲４▼の方向から端を検出できないことが明らかである。この明らかに４方向の少なくとも１方向から端を検出できない場合を省略することによって特定パターンの位置の検出の高速化を図ることができる。
【００２３】
なお、図５のフローチャートでは、端の検出の順番は、検出窓２０の▲１▼の方向、▲２▼の方向、▲３▼の方向、▲４▼の方向となっているが、これだけに限定されるわけではない。検出窓２０をｘ方向に、つまり主走査方向に移動させる場合、▲１▼の方向が最初であれば、▲２▼の方向、▲３▼の方向、▲４▼の方向の順番は、特に問題ではない。
【００２４】
図６に戻って、フローチャートを説明する。図６のフローチャートはステップＳ８０１、ステップＳ８０２、またはステップＳ８０４から始まる。ステップＳ８０１に進む場合は、図５のフローチャートにおいて示されているように、ステップＳ７０５、ステップＳ７０７、もしくはステップＳ７０９において端を検出できなかったと判断した場合である。いずれの場合も、検出窓２０を右にｎ画素移動させるか、右に２ｎ画素移動させるか判断する。つまり、検出窓２０の▲１▼の方向から端の検出をする際に、深さ２ｎ画素未満で端を検出できたか否か判断する（Ｓ８０１）。深さ２ｎ画素未満で端を検出できたならば、ステップＳ８０２に進む。また、ステップＳ８０２に進む場合として、図５のフローチャートにおいて図示されているように、さらに特定パターンの位置を検出し、特定パターンの位置を記憶した場合である。これらの場合は、ステップＳ８０２において、検出窓２０の左上のｘ座標が
ｘ＞ｘＭｉｎ＋（ｑ−２）ｎ
であるか否か、つまり検出窓２０が部分画像領域２２の右端までｎ画素未満の位置にあるか否か判断される。深さ２ｎ画素未満で端を検出できなかったならば、ステップＳ８０４に進む。検出窓２０が部分画像領域２２の右端までｎ画素未満の位置にあるならば、ステップＳ８０６に進む。検出窓２０が部分画像領域２２の右端までｎ画素未満の位置にないならば、次に検出窓２０の左上のｘ座標を
ｘ＝ｘ＋ｎ
にする。つまり、検出窓２０を右にｎ画素だけ移動させる（Ｓ８０３）。次に、ステップＳ７０２に戻る。
【００２５】
また、ステップＳ８０４に進む場合は、図５のフローチャートにおいて図示されているように、ステップＳ７０３において端を検出できなかったと判断した場合、またはステップＳ８０１において検出窓２０の▲１▼の方向から端の検出をする際に、深さ２ｎ画素未満で端を検出できなかった場合である。これらの場合、ステップＳ８０４において、検出窓２０の左上のｘ座標が
ｘ＞ｘＭｉｎ＋（ｑ−３）ｎ
であるか否か、つまり検出窓２０が部分画像領域２２の右端まで２ｎ画素未満の位置にあるか否か判断される。検出窓２０が部分画像領域２２の右端まで２ｎ画素未満の位置にないならば、検出窓２０の左上のｘ座標を
ｘ＝ｘ＋２ｎ
にし、ステップＳ７０２に戻る。検出窓２０が部分画像領域２２の右端まで２ｎ画素未満の位置にあるならば、ステップＳ８０６に進む。ステップＳ８０６に進む場合は、ステップＳ８０２において、検出窓２０が部分画像領域２２の右端までｎ画素未満の位置に配置されていると判断する場合、またはステップＳ８０４において検出窓２０が部分画像領域２２の右端まで２ｎ画素未満の位置に配置されていると判断する場合である。ステップＳ８０６において、検出窓２０の左上のｘ座標を
ｘ＝ｘＭｉｎ
に、つまり検出窓２０を左端の位置に設定し、次に検出窓２０の左上のｙ座標が
ｙ＞ｙＭｉｎ＋（ｐ−１）ｎ
であるか否か、つまり検出窓２０が部分画像領域２２の下端までｎ画素未満の位置にあるか否か判断される（Ｓ８０７）。検出窓２０が部分画像領域２２の下端までｎ画素未満の位置にあるならば、特定パターンの位置の検出を終了する。検出窓２０が部分画像領域２２の下端までｎ画素未満の位置にないならば、検出窓２０の左上のｙ座標を
ｙ＝ｙ＋ｎ
にし、ステップＳ７０２に戻る。これらのステップは、部分画像領域２２の全領域について特定パターンが存在するかどうか走査を終えるまで繰り返される。
【００２６】
次に、特定パターンの端の検出について、図９を用いて説明する。図９は、特定パターンの端を検出する手順を説明するための図である。検出する際に、例えばこの実施の形態においては、図９において示されているように検出窓２０の各辺の中心の９画素について９画素の深さまで走査する。なお、ここでは、９画素の深さまで走査しているが、特定パターンの幅の長さが検出窓の幅の長さよりｎ画素程度長い場合、検出窓の移動量はｎまたは２ｎ画素であるのが適当であり、ｎが４であるならば、２ｎ＋１、つまり９画素の深さまで走査することがもっとも適当であるからである。
【００２７】
端の検出の手順は以下のようになる。
（１）９画素内にオン画素が２つ以上あればカウントを始める。
（２）カウント開始で９画素内にオン画素が１つでもあればカウント対象とする。
（３）カウント合計が４以上になれば、カウントは終了し、カウント開始位置を特定パターンの端とする。
（４）検出窓の辺から９画素進んでもオン画素の総カウント数が４未満の場合は検出できなかったとする。
【００２８】
図９（ｂ）は、９画素幅で右方向から走査する手順を示す。深さ１または画素においては、９画素内にオン画素が１つしかないので、カウントされない。深さ３画素においては、オン画素がないので、当然カウントされない、深さ４画素においては、オン画素が３つあるので、深さ４画素からカウントを開始する。深さ５画素においては、オン画素が６つあるので、総カウント数が１０となり、カウント開始の深さ４画素で特定パターンの端が検出されたことになる。
【００２９】
次に、検出窓２０の▲１▼の方向、▲２▼の方向、▲３▼の方向、または▲４▼の方向からの端の検出（ステップＳ７０２、ステップＳ７０４、ステップＳ７０６、またはステップＳ７０８）について図１０のフローチャートを用いて説明する。図１０は、特定パターンの端の検出のサブルーチンを示すフローチャートである。まず、カウント数を０にセットする（Ｓ９０１）。次に、中心の９画素内にオン画素がｕ（ｕ≧２）個あるか否か判断される（Ｓ９０２）。オン画素がｕ個以上あるならば、カウントを開始し、
カウント数＝カウント数＋ｕ
となる（Ｓ９０３）。オン画素がｕ個未満であるならば、ステップＳ９１０に進む。次に、ステップ９０４において、カウント数の総数が４以上か否か判断される。カウント数の総数が４以上であるならば、特定パターンの端を検出できたと判断（Ｓ９０９）し、図５のサブルーチンに戻る。カウント数が４未満であるならば、深さ９画素まで走査したか否か判断する（Ｓ９０５）。深さ９画素まで走査したならば、端を検出できなかったと判断（Ｓ９１２）し、図５のサブルーチンに戻る。深さ９画素まで走査していないならば、１ライン内側にある中心の９画素を走査する（Ｓ９０６）。次に、中心の９画素内にオン画素がｖ個（ｖ≧１）あるか否か判断される（Ｓ９０７）。中心の９画素内にオン画素がｖ個未満であるならば、ステップＳ９０５に戻る。中心の９画素内にオン画素がｖ個以上あるならば、
カウント数＝カウント数＋ｖ
となり（Ｓ９０８）、ステップＳ９０４に進む。
【００３０】
また、ステップＳ９１０において、深さ９画素まで走査したか否か判断する（Ｓ９１０）。深さ９画素まで走査したならば、端を検出できなかったと判断（Ｓ９１２）し、図５のサブルーチンに戻る。深さ９画素まで走査していないならば、１ライン内側にある中心の９画素を走査し（Ｓ９１１）、ステップＳ９０２に戻る。
【００３１】
以上、検出窓２０を主走査方向に、つまりｘ方向に移動させ、検出窓２０が部分画像領域２２の右端に達したら、検出窓２０を部分画像領域の左端に戻し、ｙ方向にｎ画素移動させる。それから、再びｘ方向に移動させながら、特定パターンの端を検出して、特定パターンの位置を検出していたが、この方法に限定されるわけではない。例えば、検出窓２０を副走査方向に、つまりｙ方向に移動させ、検出窓２０が部分画像領域２２の下端に達したら、検出窓２０を上端に戻し、ｘ方向にｎ画素移動させる。それから、再びｙ方向に移動させながら、特定パターンの端を検出して、特定パターンの位置を検出することもできる。ｙ方向に移動させながら特定パターンの端を検出する場合、端の検出の順番は、検出窓２０の▲１▼の方向、▲２▼の方向、▲３▼の方向、▲４▼の方向の順番ではなく、▲２▼の方向の端の検出を最初に行う必要があるが、▲１▼の方向、▲３▼の方向、▲４▼の方向の順番は、特に問題ではない。また、さらに検出窓２０の移動量は、▲２▼の方向の端の検出結果に基づいて判断される。このように、ｙ方向に移動させながら、端の検出をすることも可能である。
【００３２】
なお、図７と図８では、円の端を検出する方法について図示しているが、本発明は、円の端を検出するためだけの方法ではなく、円以外の端も検出できるし、端を検出する手順を変えることによって、例えば、中心の９画素内のオン画素についてカウントするのではなく、この９画素を増やしたり減らしたりすることによって、または走査する深さを変えることによって、円以外の特定パターンの端の検出にも応用できる。
【００３３】
さらに、検出窓２０は四角形であるが、この形に限定されるわけではなく、四角形以外の多角形であってもよい。例えば、画素の形を六角形に変え、検出窓２０を六角形に変えることで、６方向から端の検出を行うことも可能である。
【００３４】
【発明の効果】
検出窓の移動方向に合わせて、特定パターンの端の検出の順番を変え、１つの方向からでも端が検出されない場合は、特定パターンの端の検出処理を中止し、次の位置に検出窓を移動させるため、高速化が図れる。さらに、特定パターンの端が検出されない場合、走査した深さに応じて検出窓の移動量を変更するので、無駄な時間が無くなり、処理速度も向上する。
【図面の簡単な説明】
【図１】  本発明に係る画像処理装置の構成の概略を示す図である。
【図２】  画像処理装置の制御装置を中心としたブロック図である。
【図３】  画像処理装置におけるメインルーチンのフローチャートである。
【図４】  部分画像領域における検出窓の移動を説明する図である。
【図５】  特定パターンの位置を検出する画像処理のフローチャートである。
【図６】  特定パターンの位置を検出する画像処理のフローチャートである。
【図７】  検出窓の辺から特定パターンの端を検出する際の検出方向を説明する図である。
【図８】  検出窓の移動量の変化を説明する図である。
【図９】  特定パターンの端を検出する手順を説明する説明図である。
【図１０】  特定パターンの端を検出する画像処理のフローチャートである。
【符号の説明】
１  制御装置、    ５ｂ  フレキシブルディスク、    ６  ハードディスク、７  プリンタ、    ８  スキャナ、    ９ｂ  ＣＤ−ＲＯＭ、    ２０１  ＣＰＵ、    ２０３  ＲＯＭ、    ２０４  ＲＡＭ。
【図１】
0004206606.tif 000002
【図２】
0004206606.tif 000003
【図３】
0004206606.tif 000004
【図４】
0004206606.tif 000005
【図５】
0004206606.tif 000006
【図６】
0004206606.tif 000007
【図７】
0004206606.tif 000008
【図８】
0004206606.tif 000009
【図９】
0004206606.tif 000010
【図１０】
0004206606.tif 000011