(57)【要約】    【課題】  ユーザビリティを向上させることができる矩形領域設定装置、及び該装置を備えるマーク判定装置、並びに矩形領域設定方法、プログラム、及び記憶媒体を提供する。    【解決手段】  ＰＣ１００は、複数のマーク記入枠３１０ａが印刷されたマークシートの領域を示す領域イメージを光学的に読取るスキャナ１０１と、二値化されたイメージから黒画素の情報を取得する黒画素情報取得部１０６と、マーク横幅及び横マーク間隔を格納する横幅取得部１０７と、マーク縦幅及び縦マーク間隔を格納する縦幅取得部１０８と、マーク記入枠３１０ａを内包する矩形領域を設定するマーク領域決定部１０９と、マーク記入枠３１０ａ内にマークが施されているか否かを判定するマーク認識部１１０とを備える。【選択図】      図１
2006189935.tif 000002
【特許請求の範囲】
【請求項１】
略マトリックス形状に配置された複数の有色の所定形状のマーク領域の領域内に有色でマークを施すためのマークシートの領域を示す領域画像において、前記複数のマーク領域の各マーク領域を内包する矩形領域を設定する矩形領域設定装置であって、前記領域画像における垂直方向及び水平方向から成る所定方向の有色画素の濃度情報を取得する有色画素情報取得手段と、前記取得された有色画素の濃度情報から、前記マーク領域の形状の前記所定方向と垂直な方向におけるマーク寸法、及び前記複数のマーク領域のうち前記所定方向と垂直な方向において互いに隣接する２つのマーク領域間のマーク間隔を取得するマーク領域情報取得手段と、前記取得されたマーク寸法及びマーク間隔に基づいて前記矩形領域を設定する矩形領域設定手段とを備えることを特徴とする矩形領域設定装置。
【請求項２】
前記領域画像を有色画素と無色画素に区分するための二値化手段を備えることを特徴とする請求項１記載の矩形領域設定装置。
【請求項３】
前記マーク領域情報取得手段は、前記有色画素のうち、その濃度が所定の閾値を超えている有色画素が黒色画素であると判別する判別手段を備えることを特徴とする請求項１又は２記載の矩形領域設定装置。
【請求項４】
前記閾値を前記有色画素の濃度の平均値に基づいて算出する閾値算出手段を備えることを特徴とする請求項３記載の矩形領域設定装置。
【請求項５】
前記有色画素は黒色画素から成り、前記マーク領域情報取得手段は、前記黒色画素の有無情報から前記マーク寸法及び前記マーク間隔を取得することを特徴とする請求項１乃至４のいずれか１項に記載の矩形領域設定装置。
【請求項６】
前記マーク領域内における前記有色画素の濃度の誤差の最大値を規定する閾値を設定する閾値設定手段を備えることを特徴とする請求項１乃至５のいずれか１項に記載の矩形領域設定装置。
【請求項７】
請求項１乃至６のいずれか１項に記載の矩形領域設定装置により設定された矩形領域に内包されるマーク領域の有色画素の濃度情報に基づいて、前記マーク領域内に前記マークが施されているか否かを判定する判定手段を備えることを特徴とするマーク判定装置。
【請求項８】
略マトリックス形状に配置された複数の有色の所定形状のマーク領域内に有色でマークを施すためのマークシートの領域を示す領域画像において、前記複数のマーク領域の各マーク領域を内包する矩形領域を設定する矩形領域設定方法であって、前記領域画像における垂直方向及び水平方向から成る所定方向の有色画素の濃度情報を取得する有色画素情報取得ステップと、前記取得された有色画素の濃度情報から、前記マーク領域の形状の前記所定方向と垂直な方向におけるマーク寸法、及び前記複数のマーク領域のうち前記所定方向と垂直な方向において互いに隣接する２つのマーク領域間のマーク間隔を取得するマーク領域情報取得ステップと、前記取得されたマーク寸法及びマーク間隔に基づいて前記矩形領域を設定する矩形領域設定ステップとを有することを特徴とする矩形領域設定方法。
【請求項９】
略マトリックス形状に配置された複数の有色の所定形状のマーク領域内に有色でマークを施すためのマークシートの領域を示す領域画像において、前記複数のマーク領域の各マーク領域を内包する矩形領域を設定する矩形領域設定方法をコンピュータに実行させるプログラムであって、前記領域画像における垂直方向及び水平方向から成る所定方向の有色画素の濃度情報を取得する有色画素情報取得モジュールと、前記取得された有色画素の濃度情報から、前記マーク領域の形状の前記所定方向と垂直な方向におけるマーク寸法、及び前記複数のマーク領域のうち前記所定方向と垂直な方向において互いに隣接する２つのマーク領域間のマーク間隔を取得するマーク領域情報取得モジュールと、前記取得されたマーク寸法及びマーク間隔に基づいて前記矩形領域を設定する矩形領域設定モジュールとを備えることを特徴とするプログラム。
【請求項１０】
請求項９記載のプログラムを格納することを特徴とするコンピュータ読取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、矩形領域設定装置、及び該装置を備えるマーク判定装置、並びに矩形領域設定方法、プログラム、及び記憶媒体に関し、特に、有色でマークを施すためのマークシートのマーク枠を内包する矩形領域を設定する矩形領域設定装置、及び該装置を備えるマーク判定装置、並びに矩形領域設定方法、プログラム、及び記憶媒体に関する。
【背景技術】
【０００２】
複数のマーク記入欄がマトリックス状に印刷されたマークシートに記入されたマークの有無を自動認識処理する光学式マーク読取装置（ＯＭＲ：Optical Mark reader）が様々な業界において非常に多く利用されている。多くの場合、ＯＭＲのユーザは、図１８に示すように、マーク記入欄１８１０が有色であるとＯＭＲが認識しないようにマーク記入欄１８１０の印刷にドロップアウトカラーなどの特殊なインクを用いたマークシート１８００を印刷業者から購入したり、自動認識の精度を向上させるためにＯＭＲは高価なものを使用したりする。また、マークシート１８００には、その端部、例えば右端部及び下端部に黒色のインクでタイミングマーク１８２０，１８２１が印刷されており、ＯＭＲは、タイミングマーク１８２０，１８２１に基づいてマーク記入欄の位置情報を取得する。
【０００３】
近年では、普通紙に自前でマーク記入欄を印刷したマークシートの使用、及びマークシートの画像の読込みに一般的なスキャナなどの画像入力装置の使用を可能にするための簡易版のＯＭＲソフトウェア（以下、「簡易版ＯＭＲソフト」という）などが提案されている。簡易版ＯＭＲソフトでマーク判定結果を得るためには、図１９に示したように、マーク記入欄の領域を設定するための設定画面において、グループ番号１９１０、グループ領域数１９２０、及びグループ内インデックス１９３０などを設定する。簡易版ＯＭＲソフトにより、安価に自由度の高いＯＭＲシステムを構築することができる。
【０００４】
このようなＯＭＲシステムでは、上記タイミングマークの代わりに、マーク記入欄の周囲に４つの位置マークを印刷したマークシートを作成し、簡易版ＯＭＲソフトにより、位置マークからマーク記入欄の位置を取得し、取得したマーク記入欄の位置に基づいて上記画像入力装置によるマークシート読込み時の読込み方向のズレを補正する（例えば、特許文献１参照）。
【０００５】
また、上記タイミングマークの印刷を省略して、位置合わせを行うための「照合用部分画像」を簡易版ＯＭＲソフトに登録しておくことにより、読込み方向のズレを補正する技術が提案されている（例えば、特許文献２参照）。
【０００６】
すなわち、上述したような技術では、読込み方向のズレを補正するために、タイミングマーク、位置マーク、又は位置合わせ用部分画像を介してマーク記入欄の位置を間接的に特定している。
【特許文献１】特開平０６−３０１８０４号公報
【特許文献２】特許第３４９８６５３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上述したような技術では、読込み方向のズレを補正するために、マークシートにタイミングマークや位置マークを印刷する必要があるか、又は照合用部分画像をＯＭＲソフトに登録する必要があり、ユーザビリティが低い。
【０００８】
本発明の目的は、マーク領域の位置を直接的に特定することにより、ユーザビリティを向上させることができる矩形領域設定装置、及び該装置を備えるマーク判定装置、並びに矩形領域設定方法、プログラム、及び記憶媒体を提供することにある。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、請求項１記載の矩形領域設定装置は、略マトリックス形状に配置された複数の有色の所定形状のマーク領域内に有色でマークを施すためのマークシートの領域を示す領域画像において、前記複数のマーク領域の各マーク領域を内包する矩形領域を設定する矩形領域設定装置であって、前記領域画像における垂直方向及び水平方向から成る所定方向の有色画素の濃度情報を取得する有色画素情報取得手段と、前記取得された有色画素の濃度情報から、前記マーク領域の形状の前記所定方向と垂直な方向におけるマーク寸法、及び前記複数のマーク領域のうち前記所定方向と垂直な方向において互いに隣接する２つのマーク領域間のマーク間隔を取得するマーク領域情報取得手段と、前記取得されたマーク寸法及びマーク間隔に基づいて前記矩形領域を設定する矩形領域設定手段とを備えることを特徴とする。
【００１０】
また、請求項７記載のマーク判定装置は、上記矩形領域設定装置により設定された矩形領域に内包されるマーク領域の有色画素の濃度情報に基づいて、前記マーク領域内に前記マークが施されているか否かを判定する判定手段を備えることを特徴とする。
【００１１】
上記目的を達成するために、請求項８記載の矩形領域設定方法は、略マトリックス形状に配置された複数の有色の所定形状のマーク領域内に有色でマークを施すためのマークシートの領域を示す領域画像において、前記複数のマーク領域の各マーク領域を内包する矩形領域を設定する矩形領域設定方法であって、前記領域画像における垂直方向及び水平方向から成る所定方向の有色画素の濃度情報を取得する有色画素情報取得ステップと、前記取得された有色画素の濃度情報から、前記マーク領域の形状の前記所定方向と垂直な方向におけるマーク寸法、及び前記複数のマーク領域のうち前記所定方向と垂直な方向において互いに隣接する２つのマーク領域間のマーク間隔を取得するマーク領域情報取得ステップと、前記取得されたマーク寸法及びマーク間隔に基づいて前記矩形領域を設定する矩形領域設定ステップとを有することを特徴とする。
【００１２】
また、請求項９記載のプログラムは、略マトリックス形状に配置された複数の有色の所定形状のマーク領域内に有色でマークを施すためのマークシートの領域を示す領域画像において、前記複数のマーク領域の各マーク領域を内包する矩形領域を設定する矩形領域設定方法をコンピュータに実行させるプログラムであって、前記領域画像における垂直方向及び水平方向から成る所定方向の有色画素の濃度情報を取得する有色画素情報取得モジュールと、前記取得された有色画素の濃度情報から、前記マーク領域の形状の前記所定方向と垂直な方向におけるマーク寸法、及び前記複数のマーク領域のうち前記所定方向と垂直な方向において互いに隣接する２つのマーク領域間のマーク間隔を取得するマーク領域情報取得モジュールと、前記取得されたマーク寸法及びマーク間隔に基づいて前記矩形領域を設定する矩形領域設定モジュールとを備えることを特徴とする。
【００１３】
また、請求項１０記載の記憶媒体は、上記プログラムを格納することを特徴とする。
【発明の効果】
【００１４】
本発明によれば、マークシートの領域を示す領域画像における垂直方向及び水平方向から成る所定方向の有色画素の濃度情報を取得し、取得した有色画素の濃度情報から、マーク領域のマーク寸法及びマーク間隔を取得し、取得したマーク寸法及びマーク間隔に基づいて各マーク領域を内包する矩形領域を設定するので、マーク領域の位置を直接的に特定することができて、ユーザビリティを向上させることができる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明の実施の形態を図面を参照しながら詳細に説明する。
【００１６】
図１は、本発明の実施の形態に係る矩形領域設定装置を備えるマーク判定装置の構成を概略的に示すブロック図である。
【００１７】
図１において、本実施の形態に係る矩形領域設定装置を備えるマーク判定装置としてのパーソナルコンピュータ（ＰＣ）１００は、原稿の領域を示す領域画像（イメージ）を光学的に読取るイメージ入力装置としてのスキャナ１０１と、スキャナ１０１などから入力されたイメージを格納するためのイメージ外部記憶部１０２と、イメージ外部記憶部１０２に格納されている所定のイメージを選択してそのイメージの所定の領域を指定するためのユーザインターフェース（ＵＩ）としての領域指定部１０３と、ＲＡＭ１０４と、イメージ外部記憶部１０２に格納されているイメージを有色画素と無色画素に区分するための二値化処理部１０５と、二値化されたイメージから有色画素を黒色画素（以下、単に「黒画素」という）としてその濃度情報を取得する黒画素情報取得部１０６（有色画素情報取得手段）と、後述するマーク横幅及び横マーク間隔を格納するバッファとして機能する横幅取得部１０７（マーク領域情報取得手段）と、後述するマーク縦幅及び縦マーク間隔を格納するバッファとして機能する縦幅取得部１０８（マーク領域情報取得手段）と、図２で後述するステップＳ５０の矩形取得処理を行うマーク領域決定部１０９（矩形領域設定手段）と、図２で後述するステップＳ６０のマーク判定処理を行うマーク認識部１１０と、図２で後述するステップＳ７０の結果出力処理を行う出力部１１４とを備え、これらはバスやインターフェースなどを含むネットワークを介して互いに接続されている。
【００１８】
原稿には、略マトリックス形状に配置され且つ実質的に同一形状を有する複数の有色のマーク記入欄内に有色でマークを施すためのマークシートが含まれ、該マーク記入欄は、非ドロップアウトカラーのインクで印刷されている。
【００１９】
スキャナ１０１は、所定の方向で原稿を読み込み、原稿の領域を示す領域イメージを取得し、所定の方向補正技術によって正立された画像をイメージ外部記憶部１０２に入力する。
【００２０】
二値化処理部１０５は、マークシートの領域を示す領域イメージを有色画素と無色画素に区分するために、有色画素を黒色画素と同等の画素値１に変換すると共に、マークシートの余白部分及びドロップアウトカラー部分に対応する画像の画素値を０に変換する。
【００２１】
ＰＣ１００を構成する構成要素のうち、少なくとも黒画素情報取得部１０６、横幅取得部１０７、縦幅取得部１０８、及びマーク領域決定部１０９は、本実施の形態に係る矩形領域設定装置を構成する。
【００２２】
図２は、図１のＰＣ１００によって実行されるマーク判定処理のフローチャートである。
【００２３】
図２において、まず、スキャナ１０１がイメージ外部記憶部１０２に記憶させたマークシートの領域イメージに対してＵＩを介して指定された矩形のＵＩ指定領域３００ａ（図３）を処理対象の領域としてＵＩ指定領域３００ａの各画素を二値化する（ステップＳ５）。したがって、マーク記入欄３１０ａ（マーク領域）の画像は、少なくともマーク記入欄３１０ａの形状を規定する黒画素情報が含まれている。
【００２４】
次いで、後述する図６の垂直方向黒画素情報取得処理を実行することにより、二値化した認識対象領域イメージにおける垂直方向（縦方向）の黒画素の濃度情報としてビット数を各列ごとに取得し（ステップＳ１０）、後述する図７のマーク横幅取得処理を実行することにより、取得した垂直方向の黒画素の情報からマーク記入欄３１０ａの列幅を示すマーク横幅と、２つの隣接するマーク記入欄３１０ａ，３１０ａの間隔を示す横マーク間隔とを取得する（ステップＳ２０）。
【００２５】
ステップＳ２０において取得されるマーク横幅と横マーク間隔の具体例を図４における符号４１で示す。
【００２６】
続くステップＳ３０では、後述する図９の水平方向黒画素情報取得処理を実行することにより、二値化した認識対象領域イメージにおける水平方向（横方向）の黒画素の濃度情報としてビット数を各行ごとに取得し、次いで、後述する図１０のマーク縦幅取得処理を実行することにより、取得した水平方向の黒画素の情報からマーク記入欄３１０ａの行幅を示すマーク縦幅と、２つの隣接するマーク記入欄３１０ａ，３１０ａの間隔を示す縦マーク間隔とを取得する（ステップＳ４０）。
【００２７】
ステップＳ４０において取得されるマーク縦幅と縦マーク間隔の具体例を図４における符号４２で示す。
【００２８】
続いて、後述する図１２の矩形取得処理を実行することにより、取得したマーク横幅及びマーク縦幅と、横マーク間隔及び縦マーク間隔とに基づいて、マーク記入欄３１０ａを内包する矩形領域３１０ｂを設定すると共に、各矩形領域３１０ｂの座標を特定し（ステップＳ５０）、設定した矩形領域３１０ｂの情報と、矩形領域３１０ｂにおける黒画素情報とに基づいて、マーク記入欄３１０ａ内にマークが施されているか否か、即ちマークの有無を判定するマーク判定処理を行い（ステップＳ６０）、マーク判定処理の結果を、例えば図５に示すように表示する出力を行い（ステップＳ７０）、そして、本処理を終了する。
【００２９】
図２のマーク判定処理によれば、マークシートの領域イメージにおいてマーク記入欄３１０ａを内包する矩形領域３１０ｂを設定する（ステップＳ５０）ので、全てのマーク記入欄３１０ａを自動的に且つ直接的に特定することができる。具体的には、マークシートにドロップアウトカラーで印刷したり、非ドロップアウトカラーでタイミングマークを印刷したりするのを省略することができると共に、ＰＣ１００に位置合わせ用部分画像を登録するのを省略することができる。したがって、ＰＣ１００のユーザビリティを向上させることができる。
【００３０】
図６は、図２のステップＳ１０において実行される垂直方向黒画素情報取得処理の詳細を示すフローチャートである。
【００３１】
図６において、まず、ステップＳ１０１では、垂直方向のビット情報を読込み、ＵＩ指定領域３００ａの水平方向の座標をＸとして、これに０を代入する初期化を行う（ステップＳ１０２）。この初期化により、ＵＩ指定領域３００ａの左端を示す座標を座標Ｘの値０で規定する。
【００３２】
次いで、座標Ｘの値がＵＩ指定領域３００ａの右端を示す座標に到達していないときは（ステップＳ１０３でＹＥＳ）、各列の垂直方向における黒画素情報を取得して（ステップＳ１０４）、座標Ｘをインクリメントし（ステップＳ１０５）、ステップＳ１０３〜Ｓ１０５の処理を繰り返すことにより、ＵＩ指定領域３００ａの左端から右端までの垂直方向における黒画素情報を１列ごとに順番に取得して、ステップＳ１０５のインクリメントの結果、座標Ｘの値がＵＩ指定領域３００ａの右端を示す座標を超えたときは（ステップＳ１０３でＮＯ）、本処理を終了する。
【００３３】
図６の処理によれば、垂直方向における黒画素情報をＵＩ指定領域３００ａの左端から右端まで取得するので、スキャナ１０１によってマークシートを読込むときの横方向のズレを補正することができる。
【００３４】
図７は、図２のステップＳ２０において実行されるマーク横幅取得処理の詳細を示すフローチャートである。
【００３５】
図７において、まず、上記ステップＳ１０４で取得した垂直方向における黒画素のビット数を列数で割った値である平均値を算出すると共に、この平均値に基づいて後述する閾値Ａを算出する（ステップＳ２０１）、マーク横幅及び横マーク間隔を格納するバッファである横幅取得部１０７を初期化し（ステップＳ２０２）、座標Ｘの値、後述するインデックスｍ、及び後述する左端マークの位置を示す左端マーク位置座標の各初期値を０にする初期化を行い、Ｘ座標の位置がマーク記入欄３１０ａ内にあるか否かを示すフラグをリセットすることによりオフする（ステップＳ２０４）。
【００３６】
上記マーク記入欄３１０ａのインデックスｍは、図３における横軸が示すカテゴリー「アルファベット小文字（ａ，ｂ，ｃ，ｄ）」に対応すべくＵＩ指定領域３００ａの水平方向におけるマーク記入欄３１０ａの順番を示すためのものであり、上記左端マーク位置座標は、ＵＩ指定領域３００ａにおいて垂直方向と垂直な水平方向において最初の、即ち左端のマーク記入欄３１０ａの左端部を示すものである。
【００３７】
続くステップＳ２０５では、ＵＩ指定領域３００ａにおける座標Ｘの値がＵＩ指定領域３００ａにおける右端座標の値に到達していないときは（ステップＳ２０５でＹＥＳ）、黒画素のビット数が閾値Ａよりも大きいか否かを判別することにより、座標Ｘの位置がマーク記入枠３１０ａ内にあるか否かを判定する（ステップＳ２０６）。
【００３８】
上記閾値Ａは、全列数のうち黒画素のある列の列数Ｌｂとすると、上記平均値から、黒画素の全ビット数Ｂｌｋを列数Ｌｂで割ったものと上記平均値の差の値を引いたもの、即ち、平均値の２倍から黒画素の全ビット数を列数Ｌｂを割ったものを引いたものに等しく、下記式１のように示される。なお、列数Ｌｂの最小値は０であるが、０である場合には、原稿が白紙であることを示すので図２の処理を終了するように構成されている。
【００３９】
閾値Ａ＝平均値−（Ｂｌｋ／Ｌｂ−平均値）
＝２×平均値−Ｂｌｋ／Ｌｂ            …（１）
ステップＳ２０６の判別の結果、黒画素のビット数が閾値Ａよりも大きいときは、上記フラグがオフであるかを否か、即ちＵＩ指定領域３１０ａの左端であるか否かを判別し（ステップＳ２０７）、フラグがオフであるときは、左端マーク位置座標が初期値０であるか否かを判別し（ステップＳ２０８）、初期値０であるときは、座標Ｘの位置がＵＩ指定領域３００ａの左端のマーク記入枠３１０ａ内の左端部にあるので、左端マーク位置座標としてＸをセットすると共に（ステップＳ２０９ａ）、水平方向における横マーク間隔Interval_Ｘ[ｍ]を再初期化してその値を０にし（ステップＳ２０９ｂ）、フラグをオンにし（ステップＳ２１０）、マーク横幅Mark_Ｘ[ｍ]の値をインクリメントし（ステップＳ２１１）、座標Ｘの値をインクリメントして（ステップＳ２１２）、ステップＳ２０５〜Ｓ２１２の処理を、ステップＳ２１２のインクリメントの結果、ＵＩ指定領域３００ａにおける座標Ｘの値が右端座標の値を超えるまで繰り返す。
【００４０】
ステップＳ２０５〜Ｓ２１２の処理において、左端マーク位置座標が０でないときは（ステップＳ２０８でＮＯ）、インデックスｍの値をインクリメントし（ステップＳ２１３）、ステップＳ２１０〜Ｓ２１２の処理を実行する。また、ステップＳ２０５〜Ｓ２１２の処理において、黒画素のビット数が閾値Ａ以下であるときは（ステップＳ２０６でＮＯ）、フラグをオフにして（ステップＳ２１４）、横マーク間隔Interval_Ｘ[ｍ]の値をインクリメントして、ステップＳ２１２の処理に進む。
【００４１】
上記ステップＳ２０５〜Ｓ２１２の処理により、バッファには、図８（ａ）及び図８（ｂ）に示すように、インデックスｍで特定されるマーク記入欄３１０ａのマーク横幅Mark_Ｘ[ｍ]と、インデックスｍで特定される２つの隣接するマーク記入欄３１０ａ，３１０ａの横マーク間隔Interval_Ｘ[ｍ]とが格納される。
【００４２】
一方、ステップＳ２１２のインクリメントの結果、ＵＩ指定領域３００ａにおける座標Ｘの値が右端座標を示す座標の値を超えたときは（ステップＳ２０５でＮＯ）、図８（ａ）からマーク横幅Mark_Ｘ[ｍ]の平均値を算出することによりマーク横幅を取得すると共に、図８（ｂ）から横マーク間隔Interval_Ｘ[ｍ]の平均値を算出することにより横マーク間隔を取得し（ステップＳ２１６）、水平方向（横方向）に配列されているマーク記入欄３１０ａのマーク数として、インデックスｍの値に１を加えた値を取得し（ステップＳ２１７）、そして、本処理を終了する。
【００４３】
図７の処理によれば、ＵＩ指定領域３００ａの水平方向において、マーク横幅及び横マーク間隔を取得すると共に（ステップＳ２１６）、マーク記入欄３１０ａのマーク数を取得する（ステップＳ２１７）ので、ＵＩ指定領域３００ａにおいて水平方向に配列された全てのマーク記入欄３１０ａの情報を取得することができる。
【００４４】
図９は、図２のステップＳ３０において実行される水平方向黒画素情報取得処理の詳細を示すフローチャートであり、図１０は、図２のステップＳ４０において実行されるマーク縦幅取得処理の詳細を示すフローチャートである。
【００４５】
図９及び図１０の処理は、水平方向へ行う図６の処理を垂直方向にＵＩ指定領域３００ａの上端から下端まで行う処理と同様であるので、それらの説明を省略する。
【００４６】
図９の処理によれば、水平方向における黒画素情報をＵＩ指定領域３００ａの上端から下端まで取得するので、スキャナ１０１によってマークシートを読込むときの縦方向のズレを補正することができる。
【００４７】
図１０の処理により、マーク縦幅及び縦マーク間隔を格納するバッファとしての縦幅取得部１０８には、図１１（ａ）及び図１１（ｂ）に示すようなインデックスｎで特定されるマーク記入欄３１０ａのマーク縦幅Mark_Ｙ[ｎ]と、インデックスｎで特定される２つの隣接するマーク記入欄３１０ａ，３１０ａの縦マーク間隔Interval_Ｙ[ｎ]が格納される。
【００４８】
図１０の処理によれば、ＵＩ指定領域３００ａの垂直方向において、マーク縦幅及び縦マーク間隔を取得すると共に（ステップＳ４１６）、マーク記入欄３１０ａのマーク数を取得する（ステップＳ４１７）ので、ＵＩ指定領域３００ａにおいて垂直方向に配列された全てのマーク記入欄３１０ａの情報を取得することができる。
【００４９】
図１２は、図２のステップＳ５０において実行される矩形取得処理の詳細を示すフローチャートである。
【００５０】
図１２において、まず、図７のステップＳ２１６で取得したマーク横幅及びマーク間隔、並びに図１０のステップＳ４１６で取得したマーク縦幅及びマーク縦隔に基づいて、ＵＩ指定領域３００ａにおける図１３で後述する原点Ｏの原点座標（Ｘ0，Ｙ0）を算出し（ステップＳ５０１）、原点Ｏの位置を基準にして各矩形領域３１０ｂの左上角部の座標を算出することにより、各矩形領域３１０ｂを設定し（ステップＳ５０２）、本処理を終了する。
【００５１】
図１３は、図１２の矩形取得処理によって設定された矩形を説明する図である。
【００５２】
図１３に示すように、図１２のステップＳ５０１で算出された原点座標（Ｘ0，Ｙ0）に基づいてＵＩ指定領域３００ａの左上角部には原点Ｏが設定される。
【００５３】
原点座標（Ｘ0，Ｙ0）及び各矩形領域３１０ｂの位置座標は、以下のように算出される。
【００５４】
まず、インデックスｍの値が０及びインデックスｎの値が０であるマーク記入欄３１０ａが実質的に内接する矩形領域は、そのサイズが、マーク横幅Ｗとマーク縦幅Ｈによって特定され、その左上角部の座標（ａ，ｂ）は、図７における左端マーク位置座標と図１０における上端マーク位置座標によって特定される。
【００５５】
原点Ｏの原点座標（Ｘ0，Ｙ0）は、上記座標（ａ，ｂ）に対して、横マーク間隔Ｉｗの半分だけ水平方向の左方に平行移動し、且つ縦マーク間隔Ｉｈの半分だけ垂直方向の上方に平行移動したもので定義され、下記式２のように表される。
【００５６】
（Ｘ0，Ｙ0）＝（ａ−Ｉｗ／２，ｂ−Ｉｈ／２）      …（２）
また、各矩形領域３１０ｂのサイズは、その横方向寸法がマーク横幅Ｗと横マーク間隔Ｉｗの和（Ｗ＋Ｉｗ）で表され、縦方向寸法がマーク縦幅Ｈと縦マーク間隔Ｉｈの和（Ｈ＋Ｉｈ）で表される。したがって、各矩形領域３１０ｂの左上角部の座標（Ｘm，Ｙn）は、原点Ｏを基準にしてインデックスｍの値及びインデックスｎの値に応じて設定され、下記式３のように表される。
【００５７】
（Ｘm，Ｙn）＝（(a−Iw/2)＋m(W＋Iw)，(b−Ih/2)＋n(H＋Ih)）      …（３）
図１２の処理によれば、平均値である横マーク間隔及びに縦マーク間隔、並びに左端マーク位置座標及び上端マーク位置座標に基づいて原点Ｏの原点座標（Ｘ0，Ｙ0）を算出する（ステップＳ５０１）ので、ＵＩを介して指定されたＵＩ指定領域３００ａの原点の位置を原点Ｏの位置に補正することができ、原点Ｏの位置を基準にして各矩形領域３１０ｂを設定する（ステップＳ５０２）ので、マーク記入欄３１０ａの位置のズレを補正してより高い精度で特定することができる。
【００５８】
また、設定された矩形領域３１０ｂは、その大きさがマーク記入欄３１０ａが実質的に内接する矩形領域の面積よりも大きいので、多少の誤差には対応可能なゆとりを矩形領域３１０ｂに持たせることができ、図２のステップＳ６０のマーク判定処理を高い精度で行うことができる。
【００５９】
図１４は、図２のステップＳ７０において表示される表示画面の構成の一例を示す図である。
【００６０】
図１４に示す表示画面は、図２のステップＳ７０においてマーク判定処理の結果の出力方法を設定するために用いられる。出力方法には、２次元配列形式と、回答出力形式とがある。また、この表示画面を介して、カテゴリー及び添字から成る文字などを縦情報及び横情報として設定することができる。
【００６１】
出力方法として２次元配列形式を選択した場合であって、領域の設定（不図示）として「ＯＮ／ＯＦＦ」（不図示）を設定したときは、図５に示したように、マーク記入欄３１０ａ内にマークが施されているものに「ＯＮ」、施されていないものに「ＯＦＦ」が対応した出力結果が得られる。また、領域の設定として「１／０」を設定することにより、図１５（ａ）に示したような出力結果を得ることができる。
【００６２】
また、出力方法として回答出力形式を選択した場合であって、縦情報としてカテゴリー「問」及び添字「数字（１〜）」、並びに横情報としてカテゴリー「指定なし」及び添字「アルファベット小文字」を設定したときは、図１５（ｂ）に示したように、マーク記入欄３１０ａ内にマークが施されているもののみが出力結果として得られる。
【００６３】
図１４及び図１５に示したように、出力方法を設定するだけで出力結果を得ることができるので、図１９に示したようなグループ番号１９１０及びグループ領域数１９２０などを設定することをなくすことができ、もって、ユーザビリティを向上させることができる。
【００６４】
図１６は、図７のマーク横幅取得処理の変形例を示すフローチャートである。
【００６５】
本処理は、図７の処理に、後述するカウント処理を加えたものであるので、図７の処理と同一のステップには同一の符号を付し、それらの説明を省略する。
【００６６】
本変形例において実行するカウント処理は、黒画素のビット数が予め設定された閾値Ｂを超えない列の数を不図示のカウンタでカウントするものである。
【００６７】
上記閾値Ｂは、マーク記入欄３１０ａ内にチェックが黒画素で十分に施されていないために生じた白色画素の列と判別するための、即ち誤差の範囲内であると判別するための垂直方向におけるピクセル幅の値を示すもの、即ちマーク記入欄３１０ａ内における黒色画素のビット数の誤差の最大値を規定するものであり、例えば以下のように設定される。なお、誤差の範囲は、マーク記入欄の形状に応じて決定されることが好ましい。
【００６８】
閾値Ｂは、解像度に関する情報から自動的に算出され、例えば、ＵＩ指定領域３００ａの解像度が３００ｄｐｉである場合において、誤差の最大値を０．２５４ｍｍに収めるときには、下記式４のようにして３ドットと算出される。
【００６９】
閾値Ｂ＝３００ｄｐｉ×０．２５４ｍｍ÷２５．４ｍｍ／ｉｎｃｈ      …（４）
図１６において、まず、ステップＳ２０１〜Ｓ２０４では、図７の処理と同様に初期化を行う。続くステップＳ１６０１では、上記カウント値に０を代入してカウンタの初期化を行う。次いで、ステップＳ２０５〜Ｓ２１２の処理で、図７の処理と同様に、インデックスｍで特定されるマークのマーク横幅Mark_Ｘ[ｍ]と、インデックスｍで特定される２つの隣接するマーク記入欄３１０ａ，３１０ａの横マーク間隔Interval_Ｘ[ｍ]とをバッファに格納する。
【００７０】
ステップＳ２０５〜Ｓ２１２の処理において、ステップＳ２０６の判別の結果、黒画素のビット数が閾値Ａよりも小さいときは、カウント値をインクリメントして（ステップＳ１６０６）、ステップＳ２１２の処理に進む。
【００７１】
また、ステップＳ２０８の判別の結果、左端マーク位置座標が０でないときは、カウント値が閾値Ｂよりも小さいか否かを判別し（ステップＳ１６０３）、小さいときは、バッファに格納される横マーク間隔Interval_Ｘ[ｍ]の値に０を代入すると共に（ステップＳ１６０４）、バッファに格納されるマーク横幅Mark_Ｘ[ｍ]の値にカウント値を加算して（ステップＳ１６０５）、ステップＳ２１０の処理に進む。一方、カウント値が閾値Ｂよりも大きいときは（ステップＳ１６０３でＮＯ）、図７の処理と同様にインデックスｍの値をインクリメントして、ステップＳ２１０の処理に進む。次いで、ステップＳ２１０でフラグをオンにしたときは、座標Ｘで特定される列の黒画素のビット数が閾値Ａよりも大きいこととなり、座標Ｘの位置がマーク記入欄３１０ａ内にあるので、カウント値に０を代入するクリアを行って（ステップＳ１６０２）、ステップＳ２１１に進む。
【００７２】
ステップＳ２１２のインクリメントの結果、座標Ｘの値が右端座標の値を超えたときは、ステップＳ２１６〜Ｓ２１７で図７と同様の処理を行って本処理を終了する。
【００７３】
なお、図１６の垂直方向における処理は、図９の水平方向における処理にも同様に適用され、その処理は、図１６の処理と同様に行われるので、その説明を省略する。
【００７４】
図１６の処理によれば、マーク記入欄３１０ａ内における黒色画素のビット数の誤差の最大値を規定する閾値Ｂを設定するので、マーク記入欄３１０ａが内接する矩形領域のマーク横幅やマーク縦幅を確実に取得することができる。
【００７５】
また、マーク記入欄３１０ａが内接する矩形領域を規定するマーク横幅及びマーク縦幅を確実に取得することから、該矩形領域がマトリックス状に配置されているようなマークシートであれば、マーク記入欄３１０ａの形状はいかなる形状であってもよい。例えば、インデックスｍの値が０のマーク記入欄３１０ａの形状が楕円形、インデックスｍの値が１のマーク記入欄３１０ａの形状が長方形であってもよい。これにより、マークシートを作成する際の自由度を向上させることができる。なお、複数のマーク記入欄３１０ａは、同一の幅及び同一の高さを持つことが好ましく、これにより、矩形領域３１０ｂの設定精度を向上させることができる。
【００７６】
なお、上記実施の形態では、マーク記入欄３１０ａの形状を、楕円としたが、マークを施すべき領域が規定されるような形状であればいかなる形状であってもよく、例えば、図１７に示すような領域イメージのＵＩ指定領域３００ｂにおけるマーク記入欄３１０ａ’の矩形などの枠型形状などであってもよい。枠型形状などのマーク記入欄であっても、矩形領域設定装置により、マーク記入欄を内包する矩形領域が設定されるので、マーク判定装置であるＰＣ１００は、マーク判定処理を容易に行うことができる。
【００７７】
上記実施の形態において、マークシートは、略マトリックス状にマーク記入欄が記入された用紙であればいかなるものであってもよく、また、これらは、便箋やメモ帳などの帳票から分離されたものであってもよい。
【００７８】
また、上記実施の形態において、イメージ入力装置として、スキャナ１０１を用いたが、他のＰＣや、ＦＡＸ送受信装置などであってもよい。なお、ＦＡＸ送受信装置などの解像度の低いイメージデータであっても、本実施の形態によれば、高い精度で矩形領域を設定してマーク判定処理を行うことができる。
【００７９】
上記実施の形態では、マークシートの領域イメージにおけるマーク判定処理の対象となる領域として、ＵＩを介してＵＩ指定領域３００ａを指定したが、他の方法でマーク判定処理の対称となる領域を指定してもよい。例えば、マークシートの領域イメージから、黒画素が略マトリックス状に配置された部分を自動的に取得するようにしてもよい。また、記憶領域、例えばＲＡＭ１０４に保存されているフィールド位置情報を元に処理対象領域を決定してもよい。
【００８０】
上記実施の形態において、図５は、図２のステップＳ７０におけるマーク判定処理の結果の表示例を示すものとしたが、出力結果情報のメモリバッファを示すものであってもよい。また、図１４は、図２のステップＳ７０において表示される表示画面の構成の一例を示すものとしたが、表示画面に限られることはなく、ファイル、メモリなどに出力させる構成を設定するＵＩであればいかなるものであってもよい。
【００８１】
上記実施の形態では、マーク判定結果の出力を表示により行ったが、表示に限られることはなく、ファイル出力やメモリ出力、印刷や発音などによって行ってもよい。例えば、図１５のような表示画面に表示させることに代えて、ファイル、メモリなどに出力させてもよい。
【００８２】
また、本発明の目的は、上述した実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出して実行することによっても達成される。
【００８３】
この場合、記憶媒体から読み出されたプログラムコード自体が上記実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００８４】
また、プログラムコードを供給するための記憶媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。又は、プログラムコードをネットワークを介してダウンロードしてもよい。
【００８５】
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）等が実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれる。
【００８６】
更に、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれる。
【産業上の利用可能性】
【００８７】
本発明の実施の形態に係る矩形設定装置は、マークシートの有色で印刷されたマーク領域にマークが施されているか否かを判定するマーク判定装置などに適用することができる。
【図面の簡単な説明】
【００８８】
【図１】本発明の実施の形態に係る矩形領域設定装置を備えるマーク判定装置の構成を概略的に示すブロック図である。
【図２】図１のＰＣによって実行されるマーク判定処理のフローチャートである。
【図３】図１におけるイメージ外部記憶部に記憶させたマークシートの領域イメージにおけるＵＩ指定領域の配置を説明する図である。
【図４】図３におけるＵＩ指定領域における黒画素の分布を説明する図である。
【図５】図２のステップＳ７０におけるマーク判定処理の結果の表示例を示す図である。
【図６】図２のステップＳ１０において実行される垂直方向黒画素情報取得処理の詳細を示すフローチャートである。
【図７】図２のステップＳ２０において実行されるマーク横幅取得処理の詳細を示すフローチャートである。
【図８】（ａ）は、図１における横幅取得部に格納されるマーク横幅を説明する図であり、（ｂ）は、図１における横幅取得部に格納される横マーク間隔を説明する図である。
【図９】図２のステップＳ３０において実行される水平方向黒画素情報取得処理の詳細を示すフローチャートである。
【図１０】図２のステップＳ４０において実行されるマーク縦幅取得処理の詳細を示すフローチャートである。
【図１１】（ａ）は、図１における縦幅取得部に格納されるマーク縦幅を説明する図であり、（ｂ）は、図１における縦幅取得部に格納される縦マーク間隔を説明する図である。
【図１２】図２のステップＳ５０において実行される矩形取得処理の詳細を示すフローチャートである。
【図１３】図１２の矩形取得処理によって設定された矩形を説明する図である。
【図１４】図２のステップＳ７０において表示される表示画面の構成の一例を示す図である。
【図１５】図１４の表示画面において設定された情報に基づいて表示された出力結果の表示画面の構成を例示する図である。
【図１６】図７のマーク横幅取得処理の変形例を示すフローチャートである。
【図１７】図３におけるマーク記入欄の形状の変形例の一例を示す図である。
【図１８】背景技術において、ドロップアウトカラーで印刷されたマークシートの構成の一例を示す平面図である。
【図１９】図１８のマークシートのマーク判定結果を得るためにマーク記入枠の領域を設定するための設定画面の構成の一例を示す図である。
【符号の説明】
【００８９】
１００  パーソナルコンピュータ（ＰＣ）
１０１  スキャナ
１０２  イメージ外部記憶部
１０３  領域指定部
１０５  二値化処理部
１０６  黒画素情報取得部
１０７  横幅取得部
１０８  縦幅取得部
１０９  マーク領域決定部
１１４  出力部
３００ａ，３００ｂ  ＵＩ指定領域
３１０ａ，３１０ａ’  マーク記入欄
３１０ｂ  矩形領域
【図１】
2006189935.tif 000003
【図２】
2006189935.tif 000004
【図３】
2006189935.tif 000005
【図４】
2006189935.tif 000006
【図５】
2006189935.tif 000007
【図６】
2006189935.tif 000008
【図７】
2006189935.tif 000009
【図８】
2006189935.tif 000010
【図９】
2006189935.tif 000011
【図１０】
2006189935.tif 000012
【図１１】
2006189935.tif 000013
【図１２】
2006189935.tif 000014
【図１３】
2006189935.tif 000015
【図１４】
2006189935.tif 000016
【図１５】
2006189935.tif 000017
【図１６】
2006189935.tif 000018
【図１７】
2006189935.tif 000019
【図１８】
2006189935.tif 000020
【図１９】
2006189935.tif 000021