すごいかもしれない

先日いきおいでぽちっとなしてしまったMVPenですが、届いたものを使ってみてその性能に驚いています。
ネットをみても結構崩した字でもきちんと読み取ってくれると評判だったのですが、実際につかってみると識字率はかなり高いです。
↓こんな感じです。(クリックで拡大)
MVPen OCR


さて、MVPenは通常ではOCRツールであるMyScript Notes 2.2 Liteが同梱されているのですが、これだといくつかの機能制限がなされています。
そこで思い切ってフルバージョンに移行してみました。
フルバージョンでは図形の取り込みなども行うことができます。
MVPen Translate
この段階でもかなりまともに変換しています。


ちなみに、変換にある程度方向性を指示することもできます。
MVPen Translate2
いかがでしょうか?テキストの識別がより正確になっていることが確認できると思います。


なにより、指示する前からきちんとフローチャートがかけているのがすばらしい!
(クラス図も描いてみましたがちゃんと描けました)
アップグレードに日本円で3500円程度かかりましたが満足しています。


その後いくつか試してみたところ、変換の癖らしきものもつかめてきました。
※MyScript Notes 2.2(完全版)の場合。


思ったように変換してくれないパターンだと以下のものがあるようです。
・文章が右肩上がりや右肩下がりになると別の文章として判定される。
・丸1などの特殊文字は変換ルールによって処理される
・破線は判定できない
ストロークが開いている文字は図形と判断されやすい(でかい文字を書いたときは、指定変換が吉)
・三角形・四角形・円以外の多角形は苦手。六角形以上は円として判定されるもよう。


図形認識や自動整形は私もZAURUSのFreeNoteQtで少しかじったのでこのあたりが難しいのはわかるような気がします。
MyScript Notesでは
(1).なんらかの方式で図形のまとまりを検出
(2).図形のまとまりに対しパターンマッチングを施し、類似性の高い図形から優先的に割付ける
(3).割り付けた図形のルールに基づき整形する
といった方法で整形をおこなっていると見受けました。
このため、用意されたパターンにマッチする図を描いた場合には恐ろしく再現度が高くなるのでしょう。
※反対に用意されていない図形については整形が弱い…というかなされない。


ちなみにFreeNoteQtでは図形モードの指定とグリッド表示によるストロークの誘導を前提とし、図形のマッチングはせずに角度の抽出のみに注力しています。*1
このあたり、同じフリーハンドの整形をやるのにもアプローチの違いが見えて大変興味深いです。
ただ、多くの場合定型的な図形しか必要ないことを考えれば、おそらく図形のマッチングのほうが効率がよい方法だろうなぁ…と感じています。

*1:円以外の多角形は線の集まりだとしか捉えていません。それが四角だとか三角だとかは、見た人の脳が判断すればよいことと割り切っているためです。