本文へジャンプ

画像認識技術 深層学習を用いた高精度な手書き文字認識 東芝デジタルソリューションズ株式会社 ソフトウェア&AIテクノロジーセンター 知識・メディア処理技術開発部

画像認識技術 深層学習を用いた高精度な手書き文字認識 東芝デジタルソリューションズ株式会社 ソフトウェア&AIテクノロジーセンター 知識・メディア処理技術開発部

文字単位への分割が難しい手書き文字列も深層学習によって高精度に認識

労働力不足や働き方改革により業務の効率化が求められる昨今、多くの時間と労力を必要とする書類のデータ入力を自動化できる光学文字認識技術(OCR: Optical Character Recognition)の需要がますます高くなっています。技術的には、一般画像認識、音声認識、機械翻訳などの分野と同様に、OCRにおいても深層学習を用いることで高い認識精度が達成されるようになってきています

従来、画像中の文字列を文字認識するには、例えば「1958」という文字列画像を「1」、「9」、「5」、「8」という1文字ずつの画像に分割した上で、それぞれがどの文字であるかを認識する方法が主流でした。しかし、文字単位に分割してから認識する手法では、文字列を文字ごとに正しく分割できる必要があります。通常、文字列の分割では文字と文字の間の空白を手掛かりに分割位置を見つけるため、図1に示すような文字同士の接触や続け字が多くみられる手書き文字列を分割することは困難で、このような文字列に対する認識精度は低いものとなっていました。これに対し、深層学習を用いた文字列認識では、音声認識など時系列データの認識に使われる仕組みと同様に、文字列画像を系列データとして扱うことにより、文字単位に分割することなく認識することが可能です。この手法では、まず、文字列方向に少しずつ注視領域をずらしながら各領域に対応する文字を予測します。注視領域に複数の文字が含まれる、いずれの文字も含まれないといった場合もありますが、それらも含めて全ての領域の認識結果を統合し、最終的な文字列を予測します(図2)。文字列を文字単位でなく文字列単位で学習することで、図1に示す「00」といった頻出する続け字パターンを学習できるという効果もあります。文字認識に関する学会でも、このような文字単位への分割を行わない文字認識手法が盛んに研究され、文字単位への分割を行う手法の精度を上回る例が多く報告されています。

東芝デジタルソリューションズではこれまでもOCRシステムを開発してきましたが[1]、現在は深層学習を用いた高精度な手書き文字認識システムの開発にも取り組んでいます。また、深層学習を用いた文字列認識において「自動的に賢くなる認識システム」[2]を実現する自動適応技術の研究も行っており、従来技術よりもはるかに効果的な自動適応技術を提案し学会で発表するなどの成果もあげています[3]。今後も本技術の実用化に向けて研究開発を加速していきます。

文字単位への分割が難しい画像

手書き文字では図のように文字同士が接触する文字列や続け字といった文字単位への分割が難しい文字列が多くみられる。

文字単位への分割が難しい画像

文字単位への分割が難しい画像

深層学習を用いた文字列認識のイメージ図

文字列方向に少しずつ注視領域をずらしながら各領域に対応する文字を予測し、それらの文字の予測結果を統合して文字列を予測。

深層学習を用いた文字列認識のイメージ図

深層学習を用いた文字列認識のイメージ図