PCの画面や画像ファイルに含まれる文字を読み取って使いたい!

PCを使っていると、たまにこんなことがあります。

f:id:bigbamboo-jp:20211225214211p:plain

「え...なんだって?」(画像:EmEditorのメッセージダイアログ)

こんなとき、大体の人は翻訳サイトを使って意味を理解しようとします。ですが、これはメッセージダイアログです。

ドラッグして範囲選択をした後に右クリックして「コピー」をクリック...        なんてことはできません。

なので、普通は翻訳サイトに手打ちで入力することになるのですが、ある程度長いテキストになってくるともう面倒くさくて仕方ないわけです。そうなると、人は楽したい生き物なので「画面上の文字をぱっと読み取る方法はないかな~」なんて考えますよね?

今回はそれを簡単に実現するソフトをご紹介したいと思います。

フリーソフト:Cloud OCR Snip

前置きが長くなりましたが、今回紹介するのは「Cloud OCR Snip」というフリーソフトです。

画面上の文字を読み取る方法は他のブログでも紹介されていたりするのですが、大体どの方法も手順が多い認識精度が微妙などの問題を抱えています。

f:id:bigbamboo-jp:20211225211550p:plain

北海道=j七海道 では使い物にならない (画像:「日本」の検索結果をGT Textで文字認識させた結果)

上の画像のような認識結果を返すソフトはみんなローカルの文字認識エンジンを使用して文字認識をしています。確かに簡単な文であればそれできちんと読み取れるかもしれませんが、少し難しい文字が入ってきたりすると一気に精度が落ちてしまいます。

同じ文章を今度はCloud OCR Snipで文字認識させてみます。

f:id:bigbamboo-jp:20211225213445p:plain

ぱっと見、間違いが見つからない (画像:「日本」の検索結果をCloud OCR Snipで文字認識させた結果)

こちらは一字一句しっかりと読み取れています。

ここまで差が出る理由は、画像の解像度の違いなどではなく、データをクラウドで処理している点にあります。詳しく言うと、撮影した画像をクラウドサービスに送信して、クラウドサービスで分析して返ってきた結果を表示しているためです。

ただそれだけを聞くと、「なぜ画像を処理する場所が変わっただけでこれほど差が出るの?」と疑問を抱くと思います。

それはそれぞれのクラウドサービスが独自技術で認識精度を上げているからなのですが、上の例で使ったクラウドサービスの「Google Cloud Vision API」の場合は以下のようなことを行っていると思われます。

  • 世界中の人々が行ったウェブ検索で収集したデータを分析する
  • ウェブ上の画像を収集して分析する
  • これまでに行った文字認識のデータを分析する

このような文字認識の機能はクラウドサービスによっては完全に有料だったりするんですが、Google Cloud Vision API」については毎月1000回まで無料です(1000回を超えると1000回ごとに$1.50 (約170円)かかります)。

※上記の情報は2021年12月時点のものです。最新の情報はこちらから確認してください。

また、タスクバーの右にあるアイコンをクリックするかショートカットキーを押すだけで文字認識を始められるので、ちょっと調べたいような時でも手軽に使用できます。

まとめると、Cloud OCR SnipとGoogle Cloud Vision APIを使えば(毎月1000回まで)無料かつ簡単にとても高精度な文字認識を利用できるというわけです。

使い方

細かく説明するためにページを分けました。

インストール・初期設定方法:

https://bigbamboo-jp.hatenablog.com/entry/cos-introduction-2

画面上の文字を読み取る方法:

https://bigbamboo-jp.hatenablog.com/entry/cos-introduction-3

画像ファイルから文字認識する方法:

https://bigbamboo-jp.hatenablog.com/entry/cos-introduction-4

リンク