【実施例】
【0032】
図7のAは、一実施例に係る採点システムを示している。
図7のAにおいて、
図1と同一部分には同一符号を付してある。
この採点システム2には、イメージスキャナ4、PC(パーソナルコンピュータ)36が備えられる。PC36には処理部6、キーボード38、モニター40などが含まれ、これらはネットワーク42によって連係されている。
この実施例の採点システム2は既述した第1の実施の形態、第2の実施の形態および第3の実施の形態の一例であり、各実施の形態で既述した機能を備えている。
イメージスキャナ4は、PC36と連動し、答案用紙をスキャニングし、答案用紙から画像データである答案データを取得し、この答案データをPC36に提供する。このイメージスキャナ4には複写機能やファックス機能を有する複合機の画像読取り部を利用してもよい。
キーボード38は操作入力部10(
図1)の一例である。操作入力部10は、このキーボード38とともに、またはキーボード38に代え、マウスなどのユーザーインターフェイスの他、モニター40の表示画面に設置されるタッチパネルでもよい。
モニター40は情報提示部12の一例であり、たとえば、LCDを用いればよいし、モニターとともにプリンタを併用してもよい。
【0033】
<採点システム2のハードウェア>
図7のBは、採点システム2のハードウェアを示している。
図7のBにおいて、
図7のAと同一部分には同一符号を付してある。
PC36には処理部6、記憶部8、入出力部44が備えられる。処理部6は記憶部8にあるOSや採点プログラムを実行する。
記憶部8にはOS、採点プログラムなどを記憶する記憶素子が備えられる。この記憶素子にはROM(Read-Only Memory)やRAM(Random-Access Memory)が含まれる。この記憶部8には答案フォルダ32や採点フォルダ34などが格納される。
【0034】
<答案用紙46>
図8は、答案用紙46の表面側、
図9はその裏面側を示している。この答案用紙46は、答案用紙の一例であり、斯かる構成に本発明が限定されるものではない。
この答案用紙46の表面46−1はいわゆるマークシートと称される紙面を構成している。この表面46−1には、テーパカット48、位置決めマーク50、識別子52、氏名欄54、日付欄56、属性欄58、60、解答者識別欄62、解答欄64−1、64−2、64−3が印刷されている。
【0035】
テーパカット48は答案用紙46の天地識別に用いられる。位置決めマーク50はスキャニングされた際の答案データにおける、答案用紙46の識別子52、氏名欄54、日付欄56、属性欄58、60、解答者識別欄62、解答欄64−1、64−2、64−3の位置などを特定するためのアライメント情報に用いられる。
識別子52は、答案用紙46の型番などの識別情報である。氏名欄54には解答者の氏名が記入される。日付欄56には試験の実施日が記入される。属性欄58、60には答案用紙46が模範解答(正答)か受験者の解答かの識別するための属性が記入される。
解答者識別欄62には解答者の所属や番号などの識別情報が格納される。解答欄64−1、64−2、64−3には設問ごとに解答番号およびマーク記入部が備えられ、解答者により該当する解答番号を塗りつぶすなどにより解答できる。
【0036】
この答案用紙46の裏面46−2はいわゆる記入式シートと称される紙面を構成している。この裏面46−2には、テーパカット48、位置決めマーク50、識別子52、領域枠66、記入式解答欄68−1、68−2、68−3が印刷されている。テーパカット48、位置決めマーク50、識別子52は既述の通りであるので、その説明を割愛する。領域枠66は記入式解答欄68−1、68−2、68−3を特定する領域を表す包囲線である。この領域枠66には上側を特定するための識別情報として「用紙タテ 上」、横側を特定するための識別情報として「用紙ヨコ 上」が表示されている。
記入式解答欄68−1、68−2、68−3には設問を表す番号および記入部が備えられ、解答者により文字が記入される。
【0037】
<答案用紙46の処理の仕組み>
イメージスキャナ4で答案用紙46をスキャニングすれば、識別子52により答案用紙46の型番を選択できる。この型番が登録済であれば、答案用紙46の読取りが行える。この場合、表面46−1、裏面46−2の両面であれば、表面46−1の画像、裏面46−2の画像から両面用紙であることを判断し、その組合せが異なっていれば、読取りエラーと判断できる。この答案用紙46の読取り処理では、答案用紙46が上下逆でも問題なく処理可能である。
【0038】
なお、答案用紙46の型番を用いれば、次の情報を取得できる。
ア)片面か両面かの区別
イ)片面の場合は、表面46−1の識別子の解析値
ウ)両面の場合は、表面46−1の識別子の解析値と裏面46−2の識別子の解析値の双方
エ)解答欄の位置、解答欄の選択数、解答欄数、解答欄の属性、個人識別、楕円マークやチェックマークおよび記述解答
【0039】
<答案データにおける手書き文字の二値化処理>
図10のAは手書き文字、
図10のBは答案データ、
図10のCは二値化処理における中間段階データ、
図10のDは二値化処理された文字データを示している。
答案用紙46の裏面46−2の記入式解答欄68−1の解答「ア」について、
図10のAに示すように、解答者は掠れ文字で解答「ア」を記入した状態である。この解答「ア」は、片仮名の「ア」を彷彿とさせるも、各要素は白に近い要素から黒と認識する要素までグラデーションのある濃淡状態を呈している。
このような手書き文字をスキャニングしてイメージスキャナ4から処理部6に取り込むと、
図10のBに示すように、段階的な濃淡を持つ画像データに変換される。画像データは、説明上、4段階の濃淡(輝度)で示している。「ア」について、輝度レベルで各部を示すと、輝度レベルL1(=最も淡い)、L2(=やや淡い)、L3(=やや濃い)、L4(=最も濃い)の部分で構成される。
【0040】
この画像データに二値化処理を施すと、輝度レベルL1は背景色に同化し、輝度レベルL2およびL3は輝度レベルL4と同様に濃い部分に変換される。これにより、
図10のCおよびDに示すように、輝度レベルL1の部分70−1は背景色に同化し、これに対し、輝度レベルL2の部分70−2は背景色に対して際立った黒色に変化する。
この二値化処理で、画像データがコントラストの際立った画像データに変換される。
【0041】
<画像データから不要要素の削除>
答案データの文字認識の精度を上げるため、元画像を二値化処理した画像より直線情報を取得する。不要要素としてたとえば、取得した直線の長さがたとえば、15mm以上の線で、かつ抽出した線の角度がたとえば、85度ないし95度であれば、または−5度ないし5度であれば、削除対象の線情報として利用し、元画像から不要要素である線を削除する。
【0042】
<文字認識および判定の閾値操作>
答案データの二値化処理を行い、二値化処理された答案データについて、解答の文字認識を行う。認識した文字データと相違度(画像と文字認識した文字との違いを表す値)が、小さいほど画像と認識文字とが近いなどの判断を行う。
たとえば、文字認識結果の利用の閾値として、文字ごとの閾値の初期値たとえば、150とすれば、文字ごとに閾値を持ち、相違度が閾値を下回っているときは、文字認識結果を自動採点に利用する。採点画面で文字ごとの相違度が閾値以下で自動採点した結果が間違いだった場合は、文字の閾値を下げればよい。採点画面で文字ごとの相違度が閾値以上で自動採点を行わなかったが結果が正解だった場合は、文字の閾値を上げればよい。
【0043】
<正答データ登録および自動採点の処理>
図11は、正答データ登録および自動採点の処理手順を示している。この処理手順には、次の処理が含まれる。
答案用紙46の正答画像(正解画像1)は答案フォルダ32A(
図12のA)にたとえば、ファイル名「ttt.jpg 」として保存される。
解答欄候補リストを生成する。つまり、答案データの画像をモニター40に表示したとき、その画像から二値化処理した画像に生成され、直線で囲まれた長方形を抽出し、解答欄候補リストを作成する。
【0044】
画面に表示された画像において、直線で囲まれた長方形の選択(たとえば、長方形中をたとえば、マウスでダブルクリック)すれば、解答欄候補リストから解答欄候補が抽出される。これが解答欄として設定され、解答欄として長方形を表す直線が赤い線で表示される。長方形の選択および赤色表示に移行させる作業を全ての解答欄について繰り返す。
そして、自動採点設定では、解答欄をたとえば、マウスで選択し、「自動採点設定」を選択すれば、自動採点の設定画面が表示される。初回の自動採点設定画面を表示したとき、画像より線を除去した画像を作成する。この画像が答案フォルダ32B(
図12のB)にたとえば、ファイル名「ttt.bmp 」として保存される。
画像から切り出した解答欄の部分に二値化処理が施された画像が作成され、その部分について文字認識を行い、正答候補を設定画面内に表示し、その確認後、登録を行う。この結果が答案フォルダ32C(
図12のC)に保存される。
【0045】
斯かる処理について、
図11に示す処理手順に従って説明すると、イメージスキャナ4および処理部6が起動され、イメージスキャナ4が答案用紙46のスキャニングにより、答案データの読取りが行われる(S401)。
処理部6は答案データから識別子52が正しいかを判定する(S402)。識別子52が登録している識別子と違っていれば読取りエラーと判定し(S403)、この処理を終了する。識別子52が登録している識別子と一致すれば、識別子52を正しいと判定し、画像データである答案データを保存する(S404)。
処理部6は、保存した答案データについて、画像の濃淡の評価を行った後、この答案データに二値化処理を行い(S405)、答案データから長方形を抽出し(S406)、解答欄候補リストを作成し(S407)、モニター40に答案データの画像を表示する(S408)。
【0046】
画面上に表示されている長方形を選択して解答欄設定として、たとえば、長方形の上にカーソルを合わせ、マウスのダブルクリックにより、処理部6はその長方形を選択し(S409)、これを解答欄として設定する(S410)。処理部6は、その解答欄を赤く表示し(S411)、これにより、解答欄として設定されたことを明示する。S409〜S411の操作を繰り返すことで解答欄が設定される。処理部6は答案データについて解答欄の全てが設定されたかを判定し(S412)、解答欄の全てが設定されていなければ、S409〜S412を繰り返すことになる。
処理部6は答案データの解答欄の全てが設定されたと判定すれば、自動採点かの判定を行う(S413)。自動採点か否かはユーザー設定による。自動採点でなければ、つまり手採点であれば、この処理を終了する(S414)。
処理部6は自動採点であれば、モニター40に自動採点設定画面を表示し(S415)、画像に二値化処理を施し(S416)、不要要素である線の除去を含むノイズなどの不要要素の除去を行い(S417)、これらの処理を経た画像を保存し(S418)、答案データから文字の認識を行い(S419)、解答の登録を行い(S420)、この処理を終了する。
【0047】
<答案フォルダ32A、32B、32C>
図12のAに示すように、答案フォルダ32Aには識別部72、画像格納部74が備えられる。識別部72には画像格納部74に格納される画像の識別子が格納される。画像格納部74には識別子で特定される画像情報が格納され、正解画像の他、受験者である生徒aaaの答案画像、生徒bbbの答案画像、・・・の答案画像が格納される。
【0048】
図12のBに示すように、答案フォルダ32Bには識別部76、画像格納部78が備えられる。識別部76には画像格納部78に格納される画像の識別子が格納される。画像格納部78には識別子で特定される画像情報が格納され、正解画像の他、受験者である生徒aaaの答案画像、生徒bbbの答案画像、・・・の答案画像から不要要素である線が除去された画像が格納される。
【0049】
図12のCに示すように、答案フォルダ32Cには識別部80、画像格納部82が備えられる。識別部80には画像格納部82に格納される画像の識別子が格納される。画像格納部82には識別子で特定される答案画像が受験者(生徒)および解答欄1、2、3・・・ごとに格納される。つまり、画像格納部82には、二値化処理が施された各生徒aaa、生徒bbb・・・の答案画像が解答欄1、2、3・・・ごとに格納される。
【0050】
<自動採点処理>
図13は、自動採点処理の処理手順を示している。この処理手順では、処理部6はイメージスキャナ4で答案用紙を読み取り(S501)、その答案データを取得する。答案データは、答案フォルダ32にファイル名をたとえば、「aaa.jpg 」として保存される。
処理部6は保存された答案データから読み取った識別子52を確認する(S502)。この識別子52が登録されている識別子と一致しなければ、読取りエラー(S503)となり、この処理を終了する。この識別子が登録されている識別子と一致すれば、採点処理を継続し、その画像(答案データ)を保存する(S504)。
【0051】
処理部6は、解答欄の属性を確認し(S505)、解答欄の属性がマーク式解答(選択式解答)か記述式解答かの判断を行う。
処理部6は、マーク式であれば、正誤の判定を行う(S506)。この判定では、いずれのマークが塗りつぶされているかを認識し、事前に設定された正答と認識結果が合致した場合には正答と判定し、合致しない場合には誤答と判定する。正答であれば正答を保持し(S507)、誤答であれば誤答を保持し(S508)、このとき、解答欄の正誤情報または点数を保持し、マーク式解答の採点を終了する。
【0052】
処理部6は、記述式解答であれば、解答欄の属性判定として、解答欄が空欄かを判定する(S509)。この判定には解答欄の内側におけるピクセル数が用いられる。解答欄の内側のピクセル数を算出し、そのピクセル数が一定値以下たとえば、3ピクセル以下であればその解答欄は空欄であると判定する。解答欄が空欄であると判定した場合は、解答欄を誤答と判定し、解答欄の正誤情報として採点結果に誤答と点数に「点数0」を保持し(S510)、解答欄に反映させる(S520)。
処理部6は、解答欄を空欄と判定しなかった場合、つまり、解答欄が「解答有り」であれば、解答欄から線などの不要要素を除去した画像を作成し(S511)、この画像に二値化処理した後、その画像をたとえば、答案フォルダ32B(
図12のB)にファイル名をたとえば、「aaa.bmp 」として保存する(S512)。
【0053】
処理部6は、自動採点の処理かを確認する(S513)。自動採点であれば、画像にある解答を取得し(S514)、解答欄の画像に二値化処理を行い、文字の認識を行う(S515)。
処理部6は文字認識において、相違度の確認を行う(S516)。この相違度の確認(S516)では、相違度が文字ごとの閾値より小さいか否かを判断し、文字認識の結果を利用して自動採点を行い(S517)、文字認識の結果、解答データにおける文字が、解答欄の正答文字と合致していれば、正答であると判定する。この判定には解答欄・正答文字種フォルダ32D(
図14のA)が用いられる。処理部6は解答欄の正誤情報の採点結果に正当と点数にたとえば正解の点数5を保持、合致しなかった場合には誤答と判定し、解答欄・正誤フォルダ32E(
図14のB)の解答欄の正誤情報の採点結果に誤答と点数に点数0を保持する(S518)。
処理部6は、解答文字について濃か薄いかを確認し(S519)、薄い場合には画像の解答欄(S520)に反映させ、濃い場合には画像を画面に表示し(S521)、この処理を終了する。
【0054】
<解答欄・正答文字種フォルダ32D>
図14のAは、解答欄・正答文字種フォルダ32Dの一例を示している。
この解答欄・正答文字種フォルダ32Dには解答識別欄84、文字種欄86、正解欄88、自動採点欄90が備えられる。解答識別欄84には解答欄を表す識別情報が格納される。文字種欄86には解答欄に記載される文字としてカタカナ、数字などの文字種情報が格納される。正解欄88には文字などの文字データが正答情報として格納される。自動採点欄90には正誤の識別情報が格納される。
【0055】
<解答欄・正誤フォルダ32E>
図14のBは、解答欄・正誤情報フォルダ32Eの一例を示している。
この解答欄・正誤フォルダ32Eには解答者欄92、解答識別欄94、解答欄96、採点結果欄98、点数欄100が備えられる。解答者欄92には解答者の識別情報が格納される。解答識別欄94には解答欄の識別情報が格納される。解答欄96には解答情報が格納される。採点結果欄98には解答者による解答が正答か誤答かなどの採点の結果情報が格納される。点数欄100には解答者が獲得した点数が格納される。
【0056】
<答案データの不要要素の削除処理など>
図15は、答案データの採点前に行う不要要素の削除処理などの処理手順を示している。この処理手順には、不要要素としてノイズの除去、掠れた汚れの除去、小ノイズの除去、不連続線の接続などの処理が含まれる。
処理部6は、元画像(
図16)から罫線などを含む線を除去した画像(
図17)を作成し(S601)、線を除去した画像(
図17)からエッジのみの画像を作成し、文字の線のはっきりした部分を強調し、掠れた汚れや色が薄いノイズを除去した画像(
図18)を作成する(S602)。
処理部6は、エッジのみの画像(
図18)のエッジ部分をさらに膨張させて、不連続になっている部分を連続した線に加工した画像(
図19)を作成し、膨張後の画像(
図19)から収縮した画像(
図20)を作成し、線の太さを元に戻す(S603)。さらに、処理部6は、一定サイズ以下たとえば、1mm
2 以下を閾値とした小サイズ要素をノイズとして消去する(S604)。
そして、処理部6はエッジ検出時に白黒が反転している画像に対して再び白黒反転を施し、文字認識用の画像(
図21)を生成させる。
【0057】
<元画像から文字認識用の画像までの画像処理>
図16は、答案データの元画像を示している。この元画像には線および解答が明示されている。
図17は、元画像から線を除去した画像を示している。この元画像から線が除かれ、解答情報のみが明示されている。
図18は、線が除去された画像の白黒反転画像を示している。この画像ではエッジが強調されている。
図19は、膨張処理後の白黒反転画像を示している。この画像ではエッジが強調され、不連続になっている部分が連続した線となっている。
図20は、収縮処理後の白黒反転画像を示している。この画像ではエッジが強調され、解答情報のみが明示されている。
図21は、白黒反転を経て文字認識用の画像を示している。
図22のAおよびBは、ノイズが重畳した文字として「M」および「N」を示している。この「M」および「N」は、元画像中にローラの摩擦汚れが生じている。これに対し、
図22のCおよびDは、ノイズ除去された「M」および「N」を示している。
【0058】
<エッジ検出、膨張・収縮処理>
画像のエッジ検出には公知のアルゴリズムを用いればよい。
画像に施す膨張処理は、画像中の図形を1画素分だけ拡大する処理である。これに対し、収縮処理は、膨張処理の反対であり、画像中の図形を1画素分だけ狭める処理である。この処理にはたとえば、
図23のAに示すように、「4近傍」の処理が用いられる。
図23のBは、元画像を示している。この元画像に対する膨張処理は、元画像の各画素の近傍にある画素に
図23のAに示す画素の中央部Nを当て、近傍のいずれかひとつが元画像の「1」であれば中央部Nの4つの近傍の画素を「1」に移行させ、拡大する。この結果、元画像は
図23のCに示すように、膨張画像が生成される。
また、この元画像(
図23のB)に対する収縮処理は、元画像の各画素の近傍にある画素に
図23のAに示す画素の中央部Nを当て、近傍のいずれかひとつが元画像の「0」であれば中央部Nの4つの近傍の画素を「0」に移行させ、収縮する。この結果、元画像は
図23のDに示すように、収縮画像が生成される。
【0059】
<実施例の効果>
この実施例によれば、次の効果が得られる。
(1) 答案用紙からイメージスキャナにより答案データ(画像)を読み取り、その答案データにより自動採点を行うことができる。
(2) グレースケールによる二値化処理を行うので、濃淡に影響されることなく文字認識精度を高めることができ、自動採点の処理効率や採点精度を高めることができ、採点処理の信頼性が高められるとともに、採点者の労力の軽減と採点効率を高めることができる。
【0060】
以上説明したように、本発明の採点システム、プログラムおよび方法について、最も好ましい実施の形態等について説明した。本発明は、上記記載に限定されるものではない。特許請求の範囲に記載され、または発明を実施するための形態に開示された発明の要旨に基づき、当業者において様々な変形や変更が可能である。斯かる変形や変更が、本発明の範囲に含まれることは言うまでもない。