メーリングリストに流れている重要情報メモ
ただ、これは、位置指定を合理化するためで、実は、マークから読み取りセルの位置を正確に指定できるのであれば、何もすべてのセルが整数倍の位置に整列していなくてもOKのような気がしています。
また、セルも、正方形が理想的ですが、仮に長方形であったとしても、 OCR処理には関係が無いような気もします。
ただ、複数文字で一つの数値を表す場合など、一つの枠で一気に読んでしまうか、 並んでいる同じ大きさの枠を複数個読んで一つの値にするか考えないといけません。現在は、整数倍で枠を複数個読む、後者の実装です。
(今までの資産を使うことができ、修正は少ないと考えられる)
新しい流れを作るため、一から作り直す感じですかね。
これも一長一短がありますが、アグレッシブにやるとしても、多くのパーツは再利用かリファクタリングということになるかと思うのと、目標は高くという気もします。
一方で、「excel → 画面確認 → PDF生成」といった技術検証も必要でしょうから、まずは保守的アプローチで目に見える成果を出したうえで、開発者が集まれば、version 2へのメジャーアップデートを目指すという2段階作戦もあるのかなという気もします。
本当は、ここでドライバ経由でmysqlに直接データを返すのだと思いますが、sheetreaderは、sqlを吐くことで、そうしたバックエンドからの独立性を確保しているようです。
ただ、一昨年に半年間の実証実験を行ったのですけれども、誤読率が3~4%あり、その辺はOCR処理の改善が求められています。
今回、コードを読んでみると、certaintyやdustサイズなど、いろいろパラメータが変更可能で、モジュール性も高い
xmlで定義されているsrmlファイルをもとに、シートからデータを読み取り。
このsheetreaderはCで書かれておりますので、faxocrのリポジトリではなく、sheetreader単体のリポジトリにしています。
オリジナルも別でしたので。