シフト表の画像をAIで表に起こす精度検証
手書き風で読めないマス・空欄を推測せず返すか
シフト表を写真で受け取り、人ごと・日ごとの勤務時間を台帳や表計算に写す作業は、店舗や施設で毎週発生します。AIに任せるときに困るのは、読めないマスや空欄をAIが推測で埋めてしまうことです。埋められた時間は、そのまま人手の配置ミスになります。そこで、読めないマスと空欄を仕込んだシフト表を、答えを知らないAIに読ませて確かめました。
検証方法
当社で架空のシフト表を2枚作成しました。店名・氏名・時間はすべて架空で、実在の店舗・人物とは関係ありません。どちらも5人×7日の35マスで、時間は「開始-終了」の24時間表記、休みは「休」です。
- サンプル1(印字):読めないマス・空欄は無い。
- サンプル2(手書き風フォント):マスごとに文字を傾けた。佐藤さんの金曜は開始時刻の部分を黒く塗りつぶし、「-22」の一部しか見えない状態にした。伊藤さんの水曜は空欄にした。残りの33マスはサンプル1と同じ内容。


答えを知らないClaude(Opus 5.5・Haiku 4.5)に、下のプロンプトと、画像を開く手順の指示だけを渡し、画像1枚ずつを別々に読み取らせました(各1回)。塗りつぶしと空欄があることは伝えていません。正解表と、35マスを1マスずつ照合しました。
結果:勤務時間帯の転記と、読めないマス・空欄の扱い
| 条件 | 勤務時間帯の転記 | 読めないマス・空欄の扱い |
|---|---|---|
| Opus 5.5・印字 | 35 / 35マス正確 | 読めないマス・空欄はなしと回答(正しい) |
| Haiku 4.5・印字 | 35 / 35マス正確 | 読めないマス・空欄はなしと回答(正しい) |
| Opus 5.5・手書き風 | 読めるはずの33マスは33 / 33正確 | 佐藤・金曜を「読めない」、伊藤・水曜を「空欄」と回答(正しい)。休みか書き忘れかは画像から分からないと添え、作成者への確認を勧めた |
| Haiku 4.5・手書き風 | 読めるはずの33マスは33 / 33正確 | 佐藤・金曜を「読めない」、伊藤・水曜を「空欄」と回答(正しい)。佐藤・金曜は「●22」のような記号に見えると備考に書いた |
読めないマス・空欄に対するAIの回答の原文(手書き風の表)
正解表で「読めない」「空欄」が正解のマスについて、保存した回答の原文から実例を抜き出しました(各条件1回)。
| マス | モデル | 回答の原文 |
|---|---|---|
| 佐藤さん・金曜16日(開始時刻を黒く塗りつぶし) | Opus 5.5 | 表は「読めない」。「開始時刻の部分が黒いインクのしみで隠れています。見えるのは終わりの「22」だけなので、開始時刻は書いていません。」 |
| 同上 | Haiku 4.5 | 表は「読めない」。備考に「「●22」のような記号に見えます」 |
| 伊藤さん・水曜14日(空欄) | Opus 5.5 | 表は「空欄」。「休みなのか書き忘れなのかは、画像からは分かりません。」と書き、作成者に確かめるよう勧めた |
| 同上 | Haiku 4.5 | 表は「空欄」。備考に「伊藤の水14日のセルは空欄です」 |
| 文章の日付 | Opus 5.5 | 表は正しいが、説明文に「伊藤さんの水曜16日ではなく14日は「空欄」にしました。」という書き間違いが混ざった |
わかったこと
- 読めるマスの転記は、4回とも誤りが0件だった。印字は35マス、手書き風は読めるはずの33マスを、2モデルとも取り違えませんでした。
- 塗りつぶしたマスと空欄のマスは、2モデルとも推測で埋めなかった。佐藤さんの金曜は、終了時刻の「22」が見えていても開始時刻を書かず「読めない」と返しました。伊藤さんの水曜は「空欄」と返しました。
- この結果は、指示で「推測で埋めず」と書いた条件のものです。この一文を外した場合にどうなるかは試していません。
- Opus 5.5は、空欄が休みか書き忘れかは画像から分からないと書き添えた。伊藤さんの水曜について、その旨を書き、佐藤さんの金曜の開始時刻とあわせて、作成者に確かめるよう勧めました。ただし回答の説明文には、伊藤さんの水曜を「水曜16日ではなく14日」と書き直すような言い回しがあり、表は正しいものの、文章に日付の書き間違いが混ざっていました。
シフト表の読み取りプロンプト
添付したシフト表の画像を、人ごと・日ごとの勤務時間帯の表に起こしてください。読めないマスや空欄のマスは、推測で埋めず、「読めない」「空欄」と書いてください。
使うときのコツ
- 「読めない」「空欄」と書かせる。この検証で2モデルが推測で埋めなかったのは、この一文を添えた条件です。空欄を埋めないよう先に指示しておくと、確認が必要なマスが表の中で分かります。
- 読めない・空欄のマスは、作成者に確かめてから確定する。空欄が休みなのか書き忘れなのかは、画像だけでは決められません。
- 勤務時間の合計や人数の過不足は、別の手順で確かめる。この検証で確かめたのは、マスの転記だけです。時間帯ごとの人数の過不足や労働時間の合計は対象外です。
まとめ
シフト表の転記は、この検証ではOpus 5.5・Haiku 4.5のどちらも、読めるマスを1件も取り違えず、読めないマスと空欄を推測で埋めませんでした。きれいな画像で、読めない・空欄と書くよう指示した条件での結果です。実際の手書きのシフト表や、撮影した画像で同じ結果になるかは確かめていません。
よくある質問
シフト表の画像をAIに読ませると、勤務時間を取り違えませんか。
この検証では、架空の5人×7日(35マス)のシフト表を印字と手書き風の2枚で試し、Opus 5.5とHaiku 4.5のどちらも、読めるマスの勤務時間帯を1件も取り違えませんでした。ただし各条件1回の結果で、きれいな画像での検証です。
読めないマスや空欄を、AIは推測で埋めますか。
この検証では、埋めませんでした。手書き風の表で黒く塗りつぶして開始時刻を隠したマスは、2モデルとも「読めない」と返し、空欄のマスは「空欄」と返しました。この結果は、プロンプトで「推測で埋めず、「読めない」「空欄」と書いてください」と指示した条件のものです。
このシフト表は実在の店のものですか。
いいえ。店名・氏名・時間はすべて当社が作成した架空のデータで、実在の店舗・人物とは関係ありません。
シフト表の空欄は、AIの回答では「休み」と同じ扱いになりますか?
当社の検証では、同じ扱いになりませんでした。休みのマスは「休」、何も書かれていないマスは「空欄」と、2モデルとも別の値で返しました。Opus 5.5は、空欄が休みか書き忘れかは画像から分からないと書き添え、シフト表を作った人に確かめるよう勧めました。
AIの回答の説明文にも間違いが混ざることはありますか?
当社の検証では、Opus 5.5の手書き風の表で1件ありました。表の中身は正しいのに、説明文に「伊藤さんの水曜16日ではなく14日」という日付の書き間違いが入っていました。表だけでなく説明文の日付や数字も、元の画像と照らし合わせてください。
合同会社フューチャープロンプト(AIプロダクト開発・業務自動化/東京・渋谷)がまとめました。AIの検証は2026年9月29日に行いました。検証の進め方は実測の進め方、方針は検証・編集・AI利用方針をご覧ください。