マークシート処理システム MarkScan の使い方まとめ 2日目

マークシート処理システム MarkScan の使い方まとめ 2日目

前回の記事で、何となくはMarkScanの使い方がわかったかと思いますが、MarkScanを使って楽をするためには「様式」をしっかりと設定してやる必要があります。ということで、2日目の今回は様式の設定方法のまとめ。

様式とは何か

様式とは何かを説明する前に、MarkScanがどのように回答欄を認識しているかを知ってもらうために、前回も見せた↓の図の「プレビュー」のパネルを見てみてください。

MarkScanの読取結果画面

読み込まれたマークシート画像が、いくつかのセクションやエリアに分けられて認識されているのが分かると思います。そして、その各エリアに「Q(2)-(8)」のような番号が振ってあるのが見えると思います。この(2)などの数字が、MarkScanが認識している回答欄の番号です。

↑の画像のプレビュー画像を見てもらえばわかるとおり、エリアごとにブロックわけして、(1)からずっと連番で回答欄番号が振られています。↑の例では、全部で(1)から(55)までの回答欄があるようです。

このように、MarkScanは全ての回答欄を連番で認識しているので、認識した時点では「大問IIの小問7」や「学年」といった回答欄の意味は全て失われてしまっています。また、本当にそこに回答欄があるのかどうかの情報すらも失われているので、例えば、↑の画像の例のエリア5を見てみると、回答欄は4つしかないのに、連番は(23)-(29)の7つも振られています。小問25の下の空欄3つも回答欄として認識されてしまっているわけですね。

このように、MarkScanによって連番で与えられる回答欄番号に名前をつけてわかりやすくするための設定ファイルが、「様式」と呼ばれるものだったりします。概念的には↓のようになりますね。

学年 <- (1)
I-1  <- (2)
I-2  <- (3)
 ...
II-1 <- (30)
 ...

実際の様式ファイルでは、↑のように回答欄に名前をつけるだけでなく、重複されてマークされたときの処理や、マークが無かったときの処理を指定することもできます。実際の調査で使う際に重要なのは、むしろこの機能ですよね。なので、実際にデータを取る前に、しっかりと様式ファイルを作っておきましょう。

様式ファイルの作り方

様式ファイルを作るための一番シンプルな方法は、MarkScanから作ることです。MarkScanを起動したら、左上の「設定」ボタンを押し、出てきた設定ダイアログの上の「指定様式を使用」チェックボックスをonにします。すると、様式設定画面が出てくると思います。新しい様式を作るためには、左上の「新規」ボタンを押します。↓のような画面になるはずです。

新規様式ダイアログを開いた図

適当な様式名を入力したら、データの出力先にCSVファイルを指定します。すると、下の「ファイルを選択」という大きなボタンを押すことができるようになるので、そのボタンを押します。画像ファイルを指定するように求められるので、MarkBuilderでマークシート用紙を作成したときに出力したJPEGファイルを指定します。その後OKボタンを押すと、↓のような画面に変わるはずです (画像では「データ内容のヘルプ」を表示しています)。

新しい様式が作成された図

左側に解析されたマークシートの画像と、右側に回答欄名と回答欄番号の対応表のようなものがあるのが見えると思います。この対応表をしこしこと編集することで、様式ファイルを作っていくわけですが、その前に確認事項が二点ほど。

一つは、左上の「様式」欄がちゃんと新規登録ダイアログで指定した様式名になっているかどうか。様式ファイルの実体はその上の「場所」と書かれている場所に保存されるわけですが、保存されるタイミングがなかなかトリッキーなので、様式欄の値を指定した様式名に変更しておかないと、指定したとおりのファイル名で様式ファイルを保存することができません。新規登録したダイアログで指定した様式名は、プルダウンメニューで指定できるようになっているはずなので、しっかりと指定しておきます。そのさい、エラーが出たりしますが気にしません (たぶん、ここら辺の挙動はバグでしょう)。

もう一つの確認点は、左側のマークシート画像が、意図したとおりに解析されているかどうかです。エリアの構成が意図したものと違う場合は、様式ファイルの設定次第でまだ何とかすることができますが、読み込まれるべき回答欄が読み込まれていない場合などは、今後どうすることもできなくなります。基本的に、この回答欄認識の挙動をユーザー側で制御することはできません (一部は環境設定で変えられるが)。もし、回答欄の認識がうまくいかない場合は、もう一度マークシートを作り直しましょう。

この2点を確認した後で、設定ダイアログ右下のOKボタンを押せば、様式ファイルが保存されます。「場所」で指定された場所 (デフォルトでは C:\Program Files\MarkScan\Config) を見に行くと、様式名.jpgと様式名.outというファイルが作成されていると思います (様式名.iniが作成されている場合も)。これらのファイルが様式ファイルで、特に.outファイルは、回答欄番号と回答欄名の対応表にあたる重要なファイルです。

様式ファイルの編集

作成した様式ファイルを編集するためには、もう一度MarkScanの設定ボタンを押して設定ダイアログを開き、「指定様式を使用」チェックボックスをonにした後、「様式」プルダウンメニューから編集したい様式名を選択します。すると、先ほどの画像と同じ状態になると思うので、「データ内容のヘルプ」等を参考にしながら、右側の「データ処理」パネルをしこしこと変更していきます。後々の解析を容易にするためにも、重複処理と空白処理は「禁止」を指定しておくと便利です。「禁止」を指定しておけば、マークを誤認識した時にエラー処理画面から目視で訂正することができます。「禁止」を指定しておかなければエラー処理画面で扱うことができないので。

とはいえ、こんな貧弱なインターフェースで一つ一つ「禁止」を選択してみたり、連番の回答欄番号や回答欄名をいちいち指定していくなんて、面倒くさいにもほどがあることですよね。少しでもコンピュータに慣れた人なら、「それはshellで(ry」とか「そこはPerl(ry」とかいうようなこと言い出しかねない単純作業です。

なので、基本的に様式ファイルはMarkScan経由で編集するのではなく、 C:\Program Files\MarkScan\Config に保存された.outファイルを直接編集してしまいます。.outファイルをテキストエディタで開いてみると、↓のような状態になっています。

.outをテキストエディタで開いた図

3行目辺りから「設問1」「禁止」「(1)」などの文字が見えると思います。察しのいい人なら気づいたとおり、これはMarkScanの設定画面で表の形で表示されていたデータが、改行で区切られて並べられているだけです。なので、これを直接書き換えてやれば、MarkScanの設定画面でも反映させることができます。

ただし、このファイルを下方向にスクロールして見ていくと、しばらく空行が続いた後に、2400行目辺りから謎の数列が続きます。この数列の意味は全くわからないので、これらの行番号がずれないように気を配ったほうがよさそうです。ということで、この.outファイルを編集するためには、

  1. 後半の謎の数字列の開始行番号を覚える
  2. 3行目から始まるデータ部分を一度削除する
  3. 新しく作成した様式データを3行目から後ろに貼り付ける
  4. 空行を挿入したり削除したりして、謎の数字列の開始行番号を元通りに調整する

というような手順を踏む必要があります。様式データを作成するためには、↓の図のようにExcelを使ってしまうのが楽でしょう。セルのコピーや連番の挿入はExcelの得意技のはずなので。

Excelで編集する図

C:\Program Files\MarkScan\Config の中の様式名.jpgのファイルを開けば、回答欄の認識方法を示した図を見ることができるので、それを見ながらExcelを使って編集していきます。↑の図でいうところの(27)-(29)のように、無視されるべきところは回答欄番号だけ書いて残りを空白にしておくのが、後のエラー処理を円滑に進めるためのコツだったりします。

Excelで編集し終わったら、その内容を適当なテキストエディタにコピー&ペーストして、タブを改行に置換した後、.outファイルの所定の位置に貼り付けてやればいいでしょう。その後に、.outファイル後半の数字列の開始行番号をしっかりと元通りに戻したら、.outファイルを保存します (文字コードはShift JIS、改行コードはCR+LFのようです)。普段あまりPCを使わない人は、タブを改行に置換する方法がわからなかったりするかもしれませんが、その場合は検索して調べてください。

様式ファイルの確認

様式ファイルを直接編集したら、それが適切に保存されているかどうかを確認しておいたほうが良いでしょう。先ほどと同じように、MarkScanの設定画面から「指定様式を使用」を選び、作成した様式ファイルを開いてみます。エラー等が出ずに開けて、意図したとおりに様式が設定されていれば特に問題はないでしょう。念のため、データ処理パネルの表を一番下までスクロールして、謎の数字列が現れたりしていないかどうかを確認しておきましょう。

問題がなければ、OKを押して設定ダイアログを閉じ、前回の最後にやったのと同じように、適当に塗りつぶしたマークシート画像を読み込ませてみましょう。前回と同じく、「ファイル選択」ボタンで塗りつぶしたマークシート画像を指定し、読み込みを実行します。

解析終了後の画面は前回と大きくは変わらないと思いますが、もしもマークし忘れた回答欄や重複してマークした回答欄があったり、あるいは様式ファイルの設定が間違っていたりすると、「エラーの修正」ボタンが押せるようになっているかもしれません。前回は出なかったはずですが、様式をしっかりと指定してやると、このような誤認識を知らせてくれるようになります。エラー処理画面は↓のような感じの画面で、回答欄の画像を見ながら誤認識を修正することができます。

エラー修正画面

ちなみに、このエラー処理画面の挙動もなかなかトリッキーで、「修正確定」ボタンを押しても見た目に大きな変化がなかったり、エラー総数が1つなのに2つめのエラーに飛べてしまったりしますが、エラーを大量に修正していくうちに慣れていくでしょう。

エラーの修正が終わったら、次は保存ボタンを押してデータをCSV形式で出力してみましょう。前回とは異なり、↓のようなデータになっていると思います。

グループ名,日付,時間,通番, 学年, I-1, I-2, I-3, I-4, I-5, I-6, I-7, I-8, I-9, I-10, I-11, I-12, I-13, I-14, I-15, I-16, I-17, I-18, I-19, I-20, I-21, I-22, I-23, I-24, I-25, II-1, II-2, II-3, II-4, II-5, II-6, II-7, II-8, II-9, II-10, III-1, III-2, III-3, III-4, III-5, III-6, III-7, III-8, III-9, III-10, III-11, III-12, III-13, III-14, III-15
,,,,> (1),> (2),> (3),> (4),> (5),> (6),> (7),> (8),> (9),> (10),> (11),> (12),> (13),> (14),> (15),> (16),> (17),> (18),> (19),> (20),> (21),> (22),> (23),> (24),> (25),> (26),> (30),> (31),> (32),> (33),> (34),> (35),> (36),> (37),> (38),> (39),> (40),> (41),> (42),> (43),> (44),> (45),> (46),> (47),> (48),> (49),> (50),> (51),> (52),> (53),> (54)
,2008/07/03,21:14:29,1,01,01,02,03,04,05,01,02,03,04,05,01,02,03,04,05,01,02,03,04,05,01,02,03,04,05,01,02,03,04,05,06,07,08,09,10,01,02,03,04,05,06,07,08,09,10,01,02,03,04,05

連番の回答欄番号の他に、様式ファイルで指定した回答欄名が反映されているのがわかると思います。様式ファイルをしっかりと作っておくと、このようにカラム名を簡単に指定することができます。今回のサンプルでは特に芸もなく、連番に名前をつけただけでしたが、様式ファイルの設定次第では、「一つ目のマークが十の位、二つ目のマークが一の位」といった指定ができたり、回答欄番号の順番に関わらず、好きな順にカラムを並べたCSVファイルを出力することができたりするので、様式の指定は円滑な解析をするためには必須のものだと言えるでしょう。

次回予告

今回の記事で、様式を指定する方法が何となくはわかってもらえたでしょうか。様式を上手に作れたら、ひとまず回答用紙を作成する作業は終了です。次は実際にマークシートに回答してもらったものをスキャナで取り込んで、回答を解析していく作業です。本当は今回の記事で実際の解析までまとめておきたかったんですが、様式だけでも長くなってしまったから分割。次回は実際にマークしてもらった回答用紙をスキャンする上での注意点や解析するときの設定方法などをまとめたいと思います。

MarkScanの使い方まとめ 目次

  1. マークシート処理システム MarkScan の使い方まとめ 1日目
  2. マークシート処理システム MarkScan の使い方まとめ 2日目
  3. マークシート処理システム MarkScan の使い方まとめ 3日目
  4. マークシート処理システム MarkScan の使い方まとめ 4日目
スポンサーサイト

関連記事

トラックバック URL

http://liosk.blog103.fc2.com/tb.php/129-b32d9331

トラックバック

コメント

コメントの投稿

お名前
コメント
編集キー