1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

PythonでCloud Vision APIを使用して画像からJSON形式でテキストを読み込む

Last updated at Posted at 2024-03-04

コードのみ貼り付けます。
導入手順については画像内のテキストを検出するから。

from google.cloud import vision
import io
import json
import tkinter as tk
from tkinter import filedialog

def save_and_download_text(image_path):
    # クライアントを初期化
    client = vision.ImageAnnotatorClient()

    # 画像ファイルを読み込む
    with io.open(image_path, 'rb') as image_file:
        content = image_file.read()

    image = vision.Image(content=content)
    image_context = vision.ImageContext(language_hints=["ja"])  # 日本語のヒントを追加

    # APIを呼び出して画像からテキストを抽出
    response = client.document_text_detection(image=image, image_context=image_context)

    # 結果をJSON形式で保存
    extracted_texts = [text.description for text in response.text_annotations]
    output_file_path = 'extracted_text.json'  # 保存するファイルのパス
    with open(output_file_path, 'w', encoding='utf-8') as f:  # UTF-8エンコーディングを指定
        json.dump(extracted_texts, f, ensure_ascii=False, indent=4)

    # ダウンロードするファイルのパスを出力
    print(f"保存先: {output_file_path}")

# ファイル選択ダイアログを表示
root = tk.Tk()
root.withdraw()  # Tkのルートウィンドウを表示しない
file_path = filedialog.askopenfilename()  # ファイル選択ダイアログを開く

if file_path:
    save_and_download_text(file_path)
else:
    print("ファイルが選択されませんでした。")

参考リンク

画像内のテキストを検出する

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?