しつこいけど、Googleドキュメントが日本語OCRに対応したというので、Evernoteと比較してみたよ
以前のエントリーでGoogleドキュメントのOCRとEvernoteのOCRをざっくりと比較しました。
そのエントリーで、「EvernoteのOCRデータはPC版でエクスポートしたXMLに入ってますよ。」というコメントをいただきましたので、エクスポートしてどのようにOCRされているか見てみました。
Evernoteのエクスポートは、エクスポートしたいノートを選んで、右クリックのコンテキストメニューから「ノートのエクスポート」を選択し、「ENEXフォーマットファイル(.enex)でエクスポート」を選択します。そうすると選択していたノートがファイルとしてエクスポートできます。
エクスポートしたファイルはXML形式ですが、今回のノートは画像ファイルです。エクスポートしたファイルの大部分がBase64でエンコードされた文字列になっています。そのBase64でエンコードされた文字列の後ろに、OCRされたデータはあります。OCRされたデータは、以下のようなタグで始まります。
<recoIndex docType="handwritten" objType="image" objID="dd8e9c88fc45168fb359da555abe86ea" engineVersion="3.0.17.13" recoType="service" lang="ja" objWidth="480" objHeight="360">
docType="handwritten"というところがすごいですね。手書きと認識してそれようのOCRが動いたんではないかと推測できます。
そのタグの内容を詳しく見ていくと、<recoIndex>タグに囲まれた部分にOCRされたような文字が並んでいます。一つ抽出してみてみます。実際には改行が入っていませんが、見やすさのため改行を入れています。
<item x="96" y="43" w="202" h="74"> <t w="54">あえて</t> <t w="50">あえで</t> <t w="50">あえ乙</t> <t w="48">あえ2</t> <t w="45">あ云で</t> <t w="45">あ云て</t> <t w="43">あ之で</t> <t w="43">あ之て</t> <t w="42">あ之乙</t> <t w="37">あ云2</t> <t w="36">あ之2</t> <t w="36">あ云乙</t> <t w="26">源で</t> <t w="26">源て</t> <t w="25">源2</t> </item>
itemはOCRされた部分の座標と範囲です。(96,43)から横に202、縦に74ピクセルの範囲を対象としています。まず、画像のその範囲を確認してみます。
といい感じに、文字の部分が囲まれています。そのitem要素に囲まれる形でt要素が出てきます。t要素はitem要素の属性値で指定された範囲の画像をOCRでどのように解析したかを示しています。t要素の値はOCRで解析した結果、属性wはその信頼性というか確度の%となっています。つまり確度が高い順に読み取った候補をずらずらと並べています。複数の結果を持っているとは分かっていましたが、「あえて」の部分だけで15個も候補を持っています。
さて、本当にこのように解析されているか、いくつか検索して確認してみます。まず、「あ云乙」で検索してみます。
検索されました。もうひとつ、「源2」で検索してみます。さすが25%です、どうやったらそのようなOCRになるか想像しにくいです。
こちらも検索されますし、認識している範囲を表すマーカーもばっちりです。
このようにEvernoteのOCRは複数結果を保持し、その精度もかなり高いことが再確認できました。
通常はXMLファイルまで確認することはないですが、知的好奇心はかなり満たされました。