Python은 컴퓨터 비전 및 이미지 처리 분야에서 널리 사용되는 프로그래밍 언어입니다. 이 기사에서는 Python의 이미지 분류 예제를 살펴보겠습니다. 이미지 분류는 이미지에서 객체나 장면을 식별하는 것과 관련된 컴퓨터 비전의 기본 작업입니다. 이 기사에서는 Python의 딥 러닝 프레임워크인 Keras를 사용하여 이미지 분류 모델의 훈련 및 예측을 구현하는 방법을 소개합니다.
이미지 분류를 수행하기 전에 필요한 소프트웨어 패키지를 설치해야 합니다. 다음은 필요한 패키지 목록입니다:
pip install keras pip install tensorflow pip install numpy pip install Pillow
from keras.datasets import mnist (train_images, train_labels), (test_images, test_labels) = mnist.load_data()모델 구축이미지 분류 모델을 구축하기 전에 모델의 아키텍처를 정의해야 합니다. 이 예에서는 CNN(Convolutional Neural Network) 모델을 사용합니다. CNN 모델은 이미지 분류에 좋은 성능을 보이는 딥러닝 모델입니다. Keras는 CNN 모델을 구축하는 쉬운 방법을 제공합니다. 다음은 예시 CNN 모델에 대한 코드입니다.
from keras import layers from keras import models model = models.Sequential() model.add(layers.Conv2D(32, (3, 3), activation='relu', input_shape=(28, 28, 1))) model.add(layers.MaxPooling2D((2, 2))) model.add(layers.Conv2D(64, (3, 3), activation='relu')) model.add(layers.MaxPooling2D((2, 2))) model.add(layers.Flatten()) model.add(layers.Dense(64, activation='relu')) model.add(layers.Dense(10, activation='softmax')) model.summary()위 코드에서는 두 개의 컨볼루셔널 레이어와 두 개의 최대 풀링 레이어가 포함된 CNN 모델을 정의합니다. 이 모델에는 각각 ReLU 활성화 함수를 사용하는 두 개의 밀집 레이어도 포함되어 있습니다. 모델 학습모델을 정의한 후에는 모델을 학습해야 합니다. 훈련 중에 모델은 입력 이미지를 올바른 숫자 범주에 매핑하는 방법을 학습합니다. Keras에서는 다음 코드를 사용하여 모델을 컴파일하고 훈련할 수 있습니다.
model.compile(optimizer='rmsprop', loss='categorical_crossentropy', metrics=['accuracy']) train_images = train_images.reshape((60000, 28, 28, 1)) train_images = train_images.astype('float32') / 255 test_images = test_images.reshape((10000, 28, 28, 1)) test_images = test_images.astype('float32') / 255 from keras.utils import to_categorical train_labels = to_categorical(train_labels) test_labels = to_categorical(test_labels) model.fit(train_images, train_labels, epochs=5, batch_size=64)위 코드에서는 먼저 이미지를 전처리한 다음 옵티마이저를 "rmsprop"로 사용하고 손실 함수를 교차로 사용하여 모델을 컴파일합니다. 엔트로피 모델. 그런 다음 훈련 이미지와 레이블을 사용하여 모델을 훈련합니다. 각 시대가 끝나면 테스트 이미지와 라벨을 사용하여 모델을 테스트합니다. 모델 테스트모델 훈련이 완료된 후 테스트 데이터 세트를 사용하여 모델의 정확성을 테스트할 수 있습니다. 모델은 다음 코드를 사용하여 테스트할 수 있습니다.
test_loss, test_acc = model.evaluate(test_images, test_labels) print('test_acc:', test_acc)
predictions = model.predict(test_images) import numpy as np print(np.argmax(predictions[0]))위 코드에서는 테스트 이미지 세트의 첫 번째 이미지를 예측한 다음 Numpy를 사용하여 최대값을 찾습니다. 값을 색인화하고 예측 결과를 인쇄합니다. 결론이 기사에서는 Python의 딥 러닝 프레임워크인 Keras를 사용하여 이미지 분류 모델의 학습 및 예측을 구현하는 방법을 소개했습니다. 테스트에는 MNIST 데이터세트를 사용하고 훈련에는 CNN 모델을 사용합니다. 마지막으로 테스트 이미지 세트에 대한 예측을 수행하여 모델의 정확성을 테스트합니다. 이 예제는 딥 러닝과 컴퓨터 비전의 입문 예제로 사용될 수 있으므로 초보자가 Python을 사용하여 이미지 분류 작업을 구현하는 방법을 이해할 수 있습니다.
위 내용은 Python의 이미지 분류 예의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!