ホームページ  >  記事  >  バックエンド開発  >  Python を使用して画像のカテゴリ認識を実行する方法

Python を使用して画像のカテゴリ認識を実行する方法

王林
王林オリジナル
2023-08-17 23:06:231751ブラウズ

Python を使用して画像のカテゴリ認識を実行する方法

Python を使用して写真のカテゴリを識別する方法

今日の社会において、写真は日常生活に欠かせないものです。スマートフォンとソーシャルメディアの普及により、私たちは毎日大量の画像を撮影して共有しています。これらの写真を効果的に分類して識別する方法は、私たちの生活の質と仕事の効率を向上させる上で重要な役割を果たします。この記事では、Python プログラミング言語を使用して画像のカテゴリを識別する方法を紹介し、コード例を添付します。

Python を使用して画像カテゴリを識別するには、PIL (Python Imaging Library)、tensorflow、keras などの一般的に使用されるライブラリの助けが必要です。まず PIL ライブラリを使用して画像をロードして処理し、次に tensorflow と keras によって提供される深層学習モデルを分類に使用します。

まず、必要なライブラリをインストールする必要があります。 PIL、tensorflow、keras は、pip コマンドを使用してインストールできます。

pip install pillow tensorflow keras

必要なライブラリを準備したら、コードの記述を開始できます。まず、トレーニングされた深層学習モデルをロードする必要があります。この記事では、ImageNet データセットでトレーニングされた事前トレーニング済み ResNet50 モデルを例として使用します。

from tensorflow.keras.applications.resnet50 import ResNet50
from tensorflow.keras.preprocessing import image
from tensorflow.keras.applications.resnet50 import preprocess_input, decode_predictions
import numpy as np

model = ResNet50(weights='imagenet')

次に、PIL ライブラリを使用して、認識される画像をロードし、モデルの入力要件を満たすようにサイズを調整します。

img_path = 'test.jpg'
img = image.load_img(img_path, target_size=(224, 224))
x = image.img_to_array(img)
x = np.expand_dims(x, axis=0)
x = preprocess_input(x)

これで、ディープラーニングモデルのpredictメソッドを呼び出して画像のカテゴリ認識を実行し、認識結果を表示できます。

preds = model.predict(x)
pred_classes = decode_predictions(preds, top=3)[0]

for pred_class in pred_classes:
    print(pred_class[1], pred_class[2])

コード例では、decode_predictions 関数を使用して予測を人間が判読できるラベルにデコードし、最も信頼度の高い上位 3 つの予測のみを表示します。このようにして、画像のカテゴリ認識結果を得ることができます。

より正確な予測結果を得るために、独自の深層学習モデルをトレーニングするか、より複雑なモデルを使用することで ResNet50 モデルを置き換えることができることに注意してください。さらに、トレーニング データの量と種類を増やし、モデルのハイパーパラメーターを調整することで、予測の精度をさらに向上させることができます。

要約すると、この記事では、Python を使用して画像のカテゴリを識別する方法を紹介し、対応するコード例を示します。これらの方法を学び、応用することで、大量の写真を簡単に分類して識別できるようになり、生活や仕事の効率が向上します。

コード例:

from tensorflow.keras.applications.resnet50 import ResNet50
from tensorflow.keras.preprocessing import image
from tensorflow.keras.applications.resnet50 import preprocess_input, decode_predictions
import numpy as np

model = ResNet50(weights='imagenet')

img_path = 'test.jpg'
img = image.load_img(img_path, target_size=(224, 224))
x = image.img_to_array(img)
x = np.expand_dims(x, axis=0)
x = preprocess_input(x)

preds = model.predict(x)
pred_classes = decode_predictions(preds, top=3)[0]

for pred_class in pred_classes:
    print(pred_class[1], pred_class[2])

このテクノロジーはさらに拡張でき、Python を画像分類に使用できます。深層学習を使用して、画像内の特定のオブジェクトを識別して位置を特定することもできます。多くのタスクに使用できます。手動で扱うのは面倒ですが、深層学習は、特に大量のラベル付きデータが利用可能な場合に優れています。この記事が、画像分類に Python を使用する方法を理解し、実際のアプリケーションで役割を果たす方法を理解するのに役立つことを願っています。

以上がPython を使用して画像のカテゴリ認識を実行する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。