PDFファイルの中身を検索するとき、検索ボックスにキーワードを入力しても、思うように検索できないことがありますよね。
これは、PDFがどのように作成されたかによって、検索できるかどうかが決まるためです。
例えば、Officeソフト(WordやPowerPointなど)から作成されたPDFは、作成したときにテキスト情報が埋め込まれるため簡単に検索できます。
ですが、文書をスキャンしてPDF化した場合、文字も画像データとして扱われているため、通常の方法では検索できません。
今回は、PDFが検索できない原因や、画像PDFをOCR処理で文字検索可能にする方法、さらに複数のPDFをクラウドストレージで効率的に検索する方法について解説します。
PDFの中身を検索できるようにする方法
そもそもPDFの中身が検索できないのはどうして?
PDFファイルが検索できない理由は、そのPDFファイルにテキスト情報が埋め込まれていないからです。
テキスト情報が埋め込まれているPDFは、内容が直接検索可能ですが、スキャンした書類や画像データをPDFに変換した場合は、文字も画像として保存されてしまうため、テキスト情報が含まれず、通常の方法では中身を検索することができません。
つまり、「画像」の文字は、そのままではテキスト検索ができないわけです。
これを解決するには、画像内の文字をテキストとして認識させる必要があり、そのためにOCR(光学文字認識)処理が必要になります。
OCR処理で画像PDFを文字検索可能にする
OCR処理とは、画像内の文字をテキストデータとして認識し、検索可能な状態にする技術です。
これにより、通常は検索できない画像データのPDFも、文字検索が可能になります。
OCR処理を行うには、専用のソフトウェアやオンラインツールを使用し、対象のPDFファイルに対して処理を行います。
ただし、OCR処理には限界があり、特に日本語の場合、手書き文字や特殊なフォントは正確に認識されないことがあります。
そのため、あとからOCR処理をする場合には、完全な精度を求めるのではなく、ある程度の認識ができれば良しとするのが一般的かと思います。
検索可能なPDFを作成する方法
検索可能なPDFを作成する方法の1つめは、PDFを生成する際に、テキストデータを保持するように作成することです。
例えば、Microsoft Wordや他のOffice製品で文書を作成し、これをPDFにエクスポートする場合、デフォルトでテキストデータが保持されるため、そのまま内容を検索することができます。
スキャンした文書のPDFなどは、そのままでは画像扱いのため、OCR処理を加えることでテキストデータを作成することが可能です。
Acrobat ProでのOCR処理例
画像をPDFにしたファイルでは、そのままではテキスト選択できない
画像からPDFにしたデータを例に解説します。
このデータでは、PDF内の文字は画像であり、テキストとして認識されていないので、マウスでテキストを選択しようとしても、範囲選択しただけになってしまいます。
そこで、Acrobat Pro でOCR処理をする手順を解説します。
とても簡単ですが、有料のソフトとなります。
無料での試用期間がありますので、ご興味のある方はお試しください。
OCR処理①
OCR処理をして、PDF内のテキストを読み込んで、文字情報として埋め込むには、スキャンとOCRをクリック。
OCR処理②
「このファイル」から「テキストを認識」をクリックすることで、PDF内のテキスト情報を読み取ります。
OCR処理③
OCR処理が完了し、マウスで範囲選択すると、文字として選択できるようになりました。
このあと、上書き保存をすれば、PDFファイルにテキスト情報が埋め込まれたPDFとして保存されます。
OCR処理④
上記で選択した部分をコピーし、メモ帳に貼り付けました。
「USB」が「USS.」となりました。日本語部分でなく、アルファベットが読み取りミスとなるのは、少し意外でしたが、やはり完全に読み取れるわけではないようです。
全部を範囲選択して、コピーして、そのまま転用するような使い方は、あまりないのかもしれませんが、参考資料として引用するような場合には、これで十分使える機能だと思います。
OCR技術の今後
今後、技術の進歩に伴い、OCR(光学文字認識)の精度はさらに向上すると予想されます。特に、人工知能(AI)の発展がOCR技術に大きな影響を与えています。
現在でも、AIの機能を活用した「AI-OCR」が既に実用化されています。
これは、前後の文脈を考慮してテキストを認識し、意味として整合性が取れているかどうかをチェックして、不明瞭な文字や誤認識を、文脈に基づいて自動的に補正するというものです。
これらの機能により、AI-OCRは従来のOCRシステムと比較して、大幅に高い読み取り精度を実現しています。
ただ現時点では、AI-OCRは利用料が高額であり、個人で使うものではないなぁ、という印象です。
しばらくは様子を見ながら、OCR機能付きのPDFソフトを使うのがよいでしょう。
複数のPDFをクラウドストレージで中身検索する方法
もう1つ、OCR処理したPDFのメリットがあります。
それは、PDFファイルを開かずに、中身検索が可能という点です。
つまり、「あの資料はどのPDFだったっけ?」を、PDFファイルを開いていない状態で、思い当たるキーワードで検索するということができるのです。
個人的には、この使い方が、OCR処理したPDFの、もっとも便利なところだと考えています。
ただし、その場合、クラウドストレージ(オンラインのファイルサーバ)に保存する必要があります。
クラウドストレージでのPDF管理と検索の仕組み
クラウドストレージでは、複数のPDFファイルを一元管理できるだけでなく、アップロードされたPDFファイルの内容を検索できる機能があります。
これを実現するのが「インデックス処理」です。
インデックス処理とは、クラウドストレージがファイル内容を自動的にスキャンし、テキストデータを抽出してキーワードを解析する、というものです。
この処理によって、クラウド上に保存されたPDFファイル内のテキストを高速に検索できるようになります。
このインデックスは定期的に更新され、新しくアップロードされたファイルや変更されたファイルの内容も反映されます
ただし、インデックス処理には時間がかかることもあり、ファイルの数や容量に応じて処理時間が変動しますし、再インデックス処理もタイミングがわかりづらいこともありますので、保存してすぐには、インデックスには反映されないもの、と考えておくとよいでしょう。
各クラウドストレージサービスの利用方法と注意点
Google DriveやOne Drive、Dropboxなどのクラウドストレージサービスでは、PDFファイルの内容を検索するための機能が備わっています。
アップロードされたPDFに自動でOCR処理が施され、検索可能な状態になりますが、検索機能の精度や対応フォーマットに違いがあります。
また、クラウドにアップロードする際のプライバシー保護やデータセキュリティも注意が必要です。
これらのサービスを利用することで、複数のPDFを効率的に検索・管理することが可能です。
インデックス処理後の検索の例
先ほどのOCR処理で使用したPDFを、Google Driveに保存し、内容テキストで検索したときの例です。
上記のとおり、検索文字列を含むPDFファイルが検索結果として表示されます。
資料が増えてくると、キーワードだけなんとなく覚えているけれど、どのフォルダに入っているか思い出せない、ということはありませんか?
このファイルだっただろうか、と、片っ端から開いていくのは、結構な手間ですよね。
それもあって、私は保存先はクラウドストレージ(私の場合はOneDriveがメイン)にしています。
PDFだけではなく、WordやPowerPointの内容も検索してくれるので、とても便利です。
補足:OCR機能を使うならどれがよいか
OCR機能があるPDFソフトはいくつかありますが、やはり精度がよいのはAdobe Acrobatだという印象です。
ただAcrobat以外は、買い切り版があることもあり、どれにするかは悩ましいところです。
ちなみに、AcrobatにはStandardとProがあり、OCR機能があるのはPro版です。
執筆時点でのPro版の価格は、次のとおりです。
年間契約をしたうえでの月額は、1,980円/月です。これは年計では23,760円/年です。
使わなくなったタイミングでやめたいときは、月々払いがよいですが、3,380 円/月となります。
年間契約するのであれば、Amazonで購入するほうが若干リーズナブルとなっています。