Python を使用して画像を分類する方法
画像処理と機械学習の分野の発展に伴い、画像分類は重要なタスクになりました。柔軟で強力なプログラミング言語である Python は、画像分類をより簡単かつ効率的に行うための多くのツールとライブラリを提供します。この記事では、Python を使用して画像を分類する方法を紹介し、関連するコード例を示します。
pip install opencv-python pip install keras
さらに、画像分類に適した事前トレーニング済みモデルをダウンロードする必要もあります。この記事では、ResNet50 モデルを使用します。次のコマンドを使用してダウンロードできます:
python -m keras.applications.resnet50
cv2.imread()
関数を使用して画像ファイルを読み取ることができます。以下は画像データをロードするサンプル コードです: import cv2 def load_image(image_path): img = cv2.imread(image_path) img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) # 转换为RGB格式 return img image = load_image('image.jpg')
import cv2 import numpy as np def preprocess_image(image): image = cv2.resize(image, (224, 224)) # 缩放图像为224x224像素 image = image.astype("float32") # 将图像数据类型转换为float32 image /= 255 # 归一化图像数据 return image preprocessed_image = preprocess_image(image)
from keras.applications.resnet50 import ResNet50 from keras.preprocessing import image from keras.applications.resnet50 import preprocess_input, decode_predictions import numpy as np model = ResNet50(weights='imagenet')
def classify_image(image): x = image[np.newaxis, ...] # 将图像数据加一维以适应模型输入 predictions = model.predict(x) # 进行图像分类 decoded_predictions = decode_predictions(predictions, top=3)[0] # 解码预测结果 return decoded_predictions predictions = classify_image(preprocessed_image) print(predictions)
def explain_predictions(predictions): for pred in predictions: print(f"类别:{pred[1]},概率:{pred[2]*100}%") explain_predictions(predictions)
この時点で、Python を使用して画像を分類するプロセスが完了しました。事前トレーニング済みモデルを読み込み、画像データを前処理することで、画像分類を簡単に実行し、予測結果を解釈できます。
概要:
この記事では、Python を使用して画像を分類する方法を紹介します。 OpenCV と Keras ライブラリをインストールすることで、画像データを読み込んで前処理することができます。事前トレーニングされたモデルを使用して、画像を分類し、予測を解釈できます。この記事が、読者が画像分類に Python を使用する方法を理解し、画像処理と機械学習の分野でさらに探求するための参考となることを願っています。
参考文献:
以上がPython を使用して画像の画像分類を実行する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。