【要約】介護書類からメタデータを自動抽出してみた [Zenn_Python] | Summary by TechDistill
> Source: Zenn_Python
Execute Primary Source
// Problem
- ・手作業による情報転記の非効率性とミス。
- ・OCRによるテキストの分断(セルをまたぐ文字の分離)。
- ・スキャン時のページの回転による認識精度低下。
- ・LLM利用時の高コスト、遅延、出力の揺れ、機密保持の懸念。
// Approach
1.Tesseract OCR (OSD) によるページの向き補正。
2.PyMuPDFによる画像化とOpenCVのモルフォロジー演算を用いた罫線検出。
3.水平線・垂直線の交点によるセル構造の構築。
4.Azure Document Intelligenceによるテキスト抽出と、セル座標を用いたテキスト結合。
5.GiNZA (NER) と正規表現を用いた、Key-Valueペアのスコアリング。
6.RapidFuzzによるラベルの正規化とマッピング。
7.和暦から西暦への日付正規化。
// Result
- ・居宅サービス計画書から、利用者名、生年月日、住所、要介護状態区分等をJSON形式で抽出。
- ・日付の和暦変換や敬称の除去にも成功。
- ・今後の課題として、階層構造(親セル・子セル関係)の解析によるコンテキスト把握、および画像前処理によるOCR精度の安定化を掲げている。
Senior Engineer Insight
> LLMを排除した設計は、実戦において極めて賢明である。コスト、レイテンシ、再現性の観点で、大規模処理における優位性が高い。機密書類を扱う現場において、オフライン動作可能な構成は必須要件を満たしている。ただし、座標ベースのロジックは、帳票フォーマットの微細な変更に弱い。実運用では、セルの階層構造をグラフとして捉える高度な解析が必要となる。また、スキャン品質への依存を抑えるための、堅牢な画像前処理の実装が鍵となる。