E662 - OCRで識別できない大量の文字を,効率的に識別する方法?

カレントアウェアネス-E

No.109 2007.06.27

 

 E662

OCRで識別できない大量の文字を,効率的に識別する方法?

 

 近年,書籍をデジタル化する大規模なプロジェクトが,図書館,出版社,データベース提供事業者,インターネット検索サービス提供事業者など,多くの主体によって展開されている。これらのデジタル化プロジェクトの中には,書籍をスキャナーで読み取って画像化した上で,光学式文字認識(Optical Character Recognition: OCR)技術を用いてテキストデータを作成し,全文を検索可能としているものも多い。

 しかしながら,OCRが常に完全に文字を識別できるとは限らない。印刷の不鮮明さ,スキャニング時のページのゆがみ, OCRがサポートしていない言語の単語の出現など,さまざまな原因によって正しく識別できないことが起こり得る。誤って識別された文字があることは,スペルチェックや構文チェックによって単語単位で特定できるものの,その修正には相応の時間が必要となる。

 この問題を効率的に解決しようという試みが,米国カーネギーメロン大学のコンピュータ科学スクールで行われている。その名は“reCAPTCHA”。同大学が2000年に開発した“CAPTCHA(Completely Automated Public Turing test to tell Computers and Humans Apart)”と呼ばれる画像認証技術を利用するもので,CAPTCHA開発メンバーも参加している。

 CAPTCHAは,ウェブ上のブログや電子掲示板,投票サイトなどにおいて,嫌がらせや宣伝目的で行われる機械による大量書き込みを防止するために用いられる。書き込み時に,無作為に選ばれた文字・数字などが複数含まれている画像を表示し,その中の文字列を読み取って入力するよう求める。そして,正しく入力されたものだけを受け付ける。画像中の文字・数字は意図的にゆがめられたりしており,機械が読み取ることは困難なため,機械による書き込みを排除できるのである。

 reCAPTCHAは,デジタル化した書籍データの中から,OCRで正しく識別されなかった単語を切り取り,CAPTCHA用の画像データとして提供する。OCR=機械が読み取れなかったものを人間によって読み取ってもらうのである。ただし,CAPTCHAは機械と人間を区別することが主目的であり,正しく入力されたか判定するための「正解」が必要となる。そこで,OCRで正しく識別されなかった単語に加え,正しく識別された単語も用いる。1つの画像には2つの単語が含まれており,一方は正しく識別されており正解が存在する。他方は正しく識別されておらず,人間に読み取ってもらう必要のあるものである。

 これらは画像上では明示されておらず,2語とも入力してもらう。そして,正しく識別されていた方の単語に対する入力語が正解であれば,人間による書き込みであると判定されるとともに,他方の入力語は「OCRで読み取れなかったものを人間が読み取ったもの」として,テキストデータの修正に用いられるのである。なおreCAPTHCAの画像データには,OCA(E392参照)プロジェクトによって書籍のデジタル化を進めているInternet Archiveのデータが用いられている。

 CAPTCHAは現在,全世界で毎日6千万回も使われているという。画像の解読および入力に必要な時間が1回当たり約10秒だとすると,少なくとものべ16万時間以上の人力が毎日使われていることになる。この膨大な人力を,書籍のテキストデータの質の向上につなげるべく,reCAPTCHAはプロジェクトへの参加を積極的に呼びかけている。ウェブサイト設置者は登録することで,無料でreCAPTCHAの仕組みを利用できるようになっており,今後の拡大が期待される。

Ref:
http://recaptcha.net/
http://www.cnn.com/2007/TECH/05/29/blather.to.books.ap/index.html
http://arstechnica.com/news.ars/post/20070525-anew-twist-on-anti-spam-tech-can-help-digitize-books.html
E392