2023年9月20日URLをコピーしました!※本ページはアフィリエイト広告を利用しています今回は、Pythonのプログラムを使用して画像中の文字をOCRで認識し、その内容をChatGPTで要約するプログラムを作成する方法をご紹介します。ライブラリとしてTesseract-OCRとOpenAIを利用し、短いコードで実現可能です。仕事の業務効率化などで活用してみてください。当ブログ内のChatGPTについての記事を以下のページでまとめていますので、あわせてご覧ください。今回は当サイトで公開しているChatGPTをまとめました。目次ChatGPTとはChatGPTは、OpenAIが提供する自然言語生成モデルです。Transformer)と呼ばれるモデルのアーキテクチャを採用しています。GPTは、Transformerと呼ばれるニューラルネットワークを使用して、文書や言語処理タスクでのテキスト生成を行うモデルです。GPTは、大量のテキストデータを学習し、そのデータをもとに新しい文章を生成することができます。ChatGPTは、GPTをもとにしたモデルであり、対話型システムやチャットボットなどで使われることを想定して開発されています。対話を続けることができるようになっており、ユーザーが入力するテキストに対して、自然で返答ができるようになっています。APIキーの取得PythonのプログラムからChatGPTを使用するためには、OpenAIのAPIキーを取得する必要があります。取得の手順については以下の記事で解説しています。今回はChatGPTのローカル環境での実行方法について解説します。するプログラムでは画像内に写っている文字の検出をTesseract-OCRを使って行います。Tesseract-OCRは、オープンソースの光学文字認識(OCR)エンジンで、Googleが開発およびメンテナンスを行っています。OCRは、スキャンされた文書や画像に含まれる文字をデジタルテキストデータに変換する技術です。コマンドラインツールとしても提供されており、画像ファイルやPDFファイルからテキストデータを抽出できます。Pythonや他のプログラミング言語からTesseract-OCRを利用するためのラッパーライブラリ(例:pytesseract)も存在し、プログラム内でOCR処理を行うことができます。日本語の言語ファイルを入手するTesseract-OCRを使って日本語の文字を認識するためには、事前に日本語の言語ファイルを入手しておく必要があります。言語ファイルの追加方法は以下の記事で解説していますので、事前に用意しておいてください。今回はPythonのプログラムで写真やキャプチャ画像からテキストを簡単に抽出できる方法を紹介します。光学式文字認識にはGoogleがオープンソースで公開しているTesseract...ライブラリのインストール必要なライブラリをインストールします。コマンドプロンプトで以下のコマンドを実行してください。今回は動画学習プラットフォームUdemyで受講可能なChatGPT関連のおすすめ講座を紹介します。画像ファイルのパス(img_file_path)を文字列として受け取ります。画像中の文字を認識した結果の文字列データを返します。入力として受け取った画像ファイルのパスから、画像を開き、RGBモードに変換します。その後、pytesseractライブラリを使用して画像中の文字列データを抽出します。最後に抽出された文字列データを返します。pytesseractの使い方の詳細は以下の記事で解説していますので、あわせてご覧ください。今回はPythonのプログラムで写真やキャプチャ画像からテキストを簡単に抽出できる方法を紹介します。OCRで抽出された文字列データ(ocr_text)を受け取ります。ChatGPTで要約された結果の文字列データを返します。入力として受け取ったOCRで抽出された文字列データを、事前に設定されたテンプレート(PROMPT_BASE)に追加してChatGPTへのプロンプトを作成します。その後、openaiライブラリを使用してChatGPTを利用して要約文を生成します。最後に要約結果の文字列データを返します。str)関数この関数では、以下の一連の処理を実行します。ocr_image_to_text関数を使用して、指定された画像ファイルのパスから文章をOCRで読み取り、文字列データを抽出します。抽出された文字列データをsummarize_text_with_chatgpt関数に渡して、ChatGPTで要約を生成します。要約された文字列データを出力します。"次の文章を200字程度で要約してください。今回は動画学習プラットフォームUdemyで受講可能なChatGPT関連のおすすめ講座を紹介します。龍之介の「魚河岸」の一部をスクリーンショットしたものを使用します。今回はOpenAIがAPIを提供している音声認識システム、WhisperとChatGPTを組み合わせたシステムを紹介します。Whisperは音声ファイルを自動で文字起こしすることが可能で...実際のスクリーンショットがこちらです。出力された要約プログラムを実行するとテンプレートの200文字程度という指示通り、以下のような要約文が生成されました。俳人の路西や画家の風中、除丹という三人の友人たちが、春の寒い夜に日本橋から歩いていた。道中で酒を飲み、菓子店に立ち寄るなどして過ごす。店内には他の客がいるが、靖吉が気になる男性を見つけた。客は注文し、煙草を吹かしながら存在感を放っていた。靖吉はその男性のことが気になって話しかけるが、路西も含めて彼らは無言でいた。/オンラインPython学習サービス「PyQTM(パイキュー)」まとめ今回は、Pythonを用いて画像からテキストを抽出し、要約するプログラムを作成する方法を解説しました。Tesseract-OCRを使った文字認識と、OpenAIのChatGPTを使ったテキスト要約を組み合わせることで、効率的な文書の電子化が可能です。要約テンプレートを改良することで様々な用途に対応できますので、ぜひ活用してみてください。以下の記事で効率的にPythonのプログラミングスキルを学べるプログラミングスクールの選び方について解説しています。最近ではほとんどのスクールがオンラインで授業を受けられるようになり、仕事をしながらでも自宅で自分のペースで学習できるようになりました。スキルアップや副業にぜひ活用してみてください。自分のキャリアアップに必要なカリキュラムがあるプログラミングスクールを探したいん...スクールではなく、自分でPythonを習得したい方には、いつでもどこでも学べる動画学習プラットフォームのUdemyがおすすめです。講座単位で購入できるため、スクールに比べ非常に安価(セール時1200円程度~)に学ぶことができます。私も受講しているおすすめの講座を以下の記事でまとめていますので、ぜひ参考にしてみてください。こんな悩みを解決します。Ud...それでは、また次の記事でお会いしましょう。※サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。上に表示された文字を入力してください。ExampleMurasan(むらさん)制御系エンジニアです。Piなどのマイコンボードを使ってアプリケーションを開発しています。好きなガジェットについても紹介していきたいと思います。トップページの画像はStableDiffusionというAIによって生成されたイラストです。