開発ブログ一覧に戻る
しくみ解説2026年3月24日

採点枠自動検出の仕組みと課題 — テキストと罫線を見分ける難しさ

一括採点には、答案画像から解答欄の位置を自動で見つける「採点枠の自動検出」という機能があります。 この機能のおかげで、先生が1つずつ枠を手動で指定する手間が省けます。 しかし、答案に文字が多く書かれていると検出がうまくいかないことがあります。 本記事では、この仕組みがどのように動いているのか、なぜ文字があると難しくなるのかをわかりやすく解説します。

採点枠の自動検出とは

テストの答案には、「ここに答えを書いてください」という枠が印刷されています。 この枠のことを、一括採点では「採点枠」と呼んでいます。 採点を行うためには、画像の中のどの部分が設問1の解答欄で、どの部分が設問2の解答欄なのかを特定する必要があります。

採点枠の自動検出は、スキャンした答案画像を分析して、 この解答欄の位置を自動的に見つけ出す機能です。 10問のテストであれば10個の枠を自動で認識するので、 先生が1つずつ手作業で枠を指定する時間を大幅に短縮できます。

どうやって枠を見つけるのか

コンピュータは人間のように「ここが解答欄だ」と一目で理解することはできません。 そこで、答案画像をいくつかのステップで加工しながら、枠線を探していきます。 身近な例えを使って、順番に説明します。

ステップ1:画像を縮小する

まず、スキャンした画像が大きすぎる場合は、処理しやすいサイズに縮小します。 大きな画像のままだと処理に時間がかかるため、長辺を2000ピクセルに抑えます。 地図を大まかに眺めてから細部を見るのと同じ考え方です。

ステップ2:白黒にする

次に、画像をグレースケール(灰色の濃淡だけの画像)に変換し、 さらに白と黒の2色だけの画像にします。 これは「二値化」と呼ばれる処理です。 色の情報を捨てることで、「黒い部分」と「白い部分」だけのシンプルな画像になります。

ステップ3:線を太くする

白黒にした画像の黒い部分を少しだけ膨張させます。 罫線が細くて途切れている場合でも、少し太くすることでつながりやすくなります。 鉛筆で書いた薄い線をマーカーでなぞり直すようなイメージです。

ステップ4:横線と縦線を探す

ここが検出の中心となる処理です。 画像の中から、まっすぐな横線と縦線を探し出します。 解答欄の枠線は縦と横の直線でできているため、 これらの直線を見つけることが四角形を見つける第一歩になります。

ステップ5:四角形を組み立てる

見つけた横線と縦線の交差する点を調べ、 上辺・下辺・左辺・右辺の4本がそろっている場所を「四角形」として認識します。 なお、画像の端に近い線は用紙のフチである可能性が高いので、除外しています。 最後に、サイズや位置の条件で絞り込み、解答欄として適切な四角形だけを残します。

検出の流れまとめ
  1. 画像を処理しやすいサイズに縮小
  2. グレースケールに変換し、白黒の2色にする
  3. 黒い部分を少し膨張させて線をつなげる
  4. 横線と縦線を探す
  5. 交差する線から四角形を組み立てる
  6. 条件で絞り込み、解答欄の位置を確定

得意な答案と苦手な答案

採点枠の自動検出には、得意な答案と苦手な答案があります。 どのような答案だとうまくいくのか、逆にどのような答案だと失敗しやすいのかを知っておくと、 一括採点をスムーズに使えます。

検出が得意な答案

  • 太い罫線で区切られた表形式の答案:表(格子)のようにはっきりした線で解答欄が区切られていると、縦線・横線がきれいに検出されます。
  • 文字が少ない白紙に近い答案:まだ何も書かれていない答案用紙は、罫線以外の黒い部分が少ないため、線の検出精度が高くなります。
  • 解答欄が規則正しく並んでいる答案:同じ大きさの枠がきれいに並んでいると、縦線の位置がそろっているため正しく四角形が組み立てられます。

検出が苦手な答案

  • 模範解答が書き込まれた答案:解答欄の中に文字がびっしり入っていると、文字の線と枠の線が混ざってしまいます。
  • 解答欄のまわりに文字が多い答案:問題文や注釈が解答欄のすぐ近くにあると、それらの文字が検出を妨げます。
  • 枠線が細い・薄い答案:印刷が薄かったり線が細かったりすると、二値化の段階で枠線が消えてしまうことがあります。
答案の特徴検出結果理由
太い罫線・表形式得意縦線・横線がはっきりしている
白紙に近い答案得意ノイズが少なく線が見つけやすい
模範解答入り苦手文字が「偽の線」として検出される
枠線が細い・薄い苦手二値化で線が消えてしまう

なぜ文字があると難しいのか

ここが、採点枠の自動検出における最大の課題です。 人間の目には文字と罫線はまったく別のものに見えますが、 コンピュータにとっては、どちらも「黒い点(ピクセル)の並び」でしかありません。 ここにこのアルゴリズムの根本的な難しさがあります。

原因1:漢字の横画が「横線」に見えてしまう

漢字には横方向の画(横画)がたくさんあります。 たとえば「書」「三」「王」といった字を思い浮かべてみてください。 これらの横画は、白黒画像にすると「短い横線」と区別がつきません。 数式の分数線やイコール記号も同様です。

自動検出では、画像の中から横線を最大100本まで抽出しています。 白紙の答案では、検出される横線は30本から90本程度で、そのほとんどが本物の罫線です。 しかし、模範解答が書かれた答案では、文字由来の「偽の横線」が大量に発生し、 100本から700本もの横線候補が見つかることがあります。

なぜ問題になるのか

検出処理では、見つかった横線のうち上位100本だけを使って四角形を組み立てます。 文字から生まれた「偽の線」が大量に混ざると、本物の罫線が上位100本から押し出されてしまい、 四角形を正しく組み立てられなくなります。

原因2:解答欄の縦線が短すぎる

解答欄の縦の辺は、画像全体から見るととても短く、高さの2〜3%程度しかありません。 このため、縦線が上の横線と下の横線の両方と交わらないことがあります。 四角形を組み立てるには4本の辺がすべてつながっている必要があるため、 1本でも交差を検出できないと枠として認識されません。

原因3:模範解答がノイズを増幅する

上の2つの原因が組み合わさることで、模範解答が書かれた答案は特に検出が難しくなります。 文字が多いほど偽の線が増え、さらに短い縦線の検出にも悪影響を及ぼします。 白紙の答案ではうまくいく検出が、模範解答入りの答案では失敗しやすい最大の理由がここにあります。

人間とコンピュータの違い

先生方は答案を見れば、「ここは文字、ここは罫線」と瞬時に区別できます。 それは、文字の意味を理解しているからです。 しかし現在のアルゴリズムは画像の明暗だけを手がかりにしているため、 文字と罫線の「意味の違い」を理解することができません。 これが、テキストと罫線を見分ける難しさの本質です。

検出がうまくいかないときの対処法

自動検出がうまくいかない場合でも、いくつかの方法で改善できます。 一括採点にはそのための設定が用意されています。

対処法1:線の延長(lineExtension)スライダーを調整する

一括採点の採点枠検出画面には「線の延長」というスライダーがあります。 このスライダーは、検出された線を少しだけ延長することで、 短い縦線が横線と交わりやすくする機能です。 通常は0(初期値)のままで問題ありませんが、 検出がうまくいかない場合は10から15程度に調整してみてください。

調整時の注意点

線の延長値を大きくしすぎると、本来は別々の枠が1つにつながってしまう 「過検出」が起きることがあります。 まずは10から試して、様子を見ながら少しずつ調整することをおすすめします。

対処法2:白紙の答案用紙で検出する

もっとも確実な方法は、何も書かれていない白紙の答案用紙を使って検出を行うことです。 白紙であれば文字によるノイズがまったくないため、 罫線だけがきれいに検出されます。 模範解答が書き込まれた答案で検出がうまくいかない場合は、 白紙のテンプレートを1枚スキャンして取り込むのが効果的です。

対処法のまとめ
  • まずは初期設定で試す:多くの答案は初期設定(線の延長 = 0)で正しく検出されます。
  • うまくいかなければスライダーを調整:線の延長を10〜15に設定してみてください。
  • それでもだめなら白紙テンプレートを使う:白紙の答案用紙で検出すれば、ノイズのない状態で枠を特定できます。

今後の改善予定

現在の検出アルゴリズムは「画像の明暗から直線を探す」というシンプルな方法に基づいています。 今後はより高度な画像処理技術を導入し、文字がある答案でも安定して検出できるよう改善を進めています。

  • 文字由来の線を除去する前処理の追加:モルフォロジー演算という画像処理技術を使い、短い線(文字由来)と長い線(罫線)を自動的に分離する仕組みを検討しています。 横方向・縦方向それぞれに特化したフィルターをかけることで、文字のノイズを減らせる見込みです。
  • 白紙テンプレートの活用強化:白紙テンプレートをあらかじめ登録しておくことで、 模範解答入りの答案でもテンプレートの枠位置を流用できる機能を検討しています。

これらの改善により、先生がスライダーを手動で調整する場面を減らし、 より多くの答案形式で自動検出がそのまま使えるようにすることを目指しています。

まとめ

一括採点の採点枠自動検出は、答案画像を白黒にして直線を探し、 四角形を組み立てることで解答欄の位置を見つけ出す仕組みです。 太い罫線で区切られた白紙に近い答案は得意ですが、 文字が多い答案では漢字の横画などが「偽の線」として検出され、精度が下がることがあります。

検出がうまくいかない場合は、線の延長スライダーを10〜15に調整するか、 白紙の答案用紙で検出を行うことで改善できます。

今後の改善で、文字があっても安定して検出できるよう取り組んでまいります。 検出結果に違和感があるときは、ぜひ上記の対処法をお試しください。

一括採点を使ってみませんか?

最新版をダウンロードして、採点作業を効率化しましょう。

最新版をダウンロード

一括採点

中学校の先生が、全国の先生のために作った、採点ツール。

© 2023-2026 KeppyNaushika. AGPLv3 オープンソースソフトウェアとして開発しています。