반응형
이미지를 벡터화한 후, 이미지 벡터를 다른 용도로 사용하고 싶다면 image_vector 변수를 해당 용도에 맞게 활용하시면 됩니다.
예를 들어, 이미지 간 유사도를 계산하거나 이미지 검색에 활용할 수 있습니다.
import numpy as np
from keras.applications.vgg19 import VGG19, preprocess_input
from keras.preprocessing import image
from keras.models import Model
def vectorize_image(image_path):
# 이미지 불러오기
img = image.load_img(image_path, target_size=(224, 224))
# 이미지 전처리
x = image.img_to_array(img)
x = np.expand_dims(x, axis=0)
x = preprocess_input(x)
# VGG19 모델 불러오기
base_model = VGG19(weights='imagenet')
# VGG19의 마지막 fully connected layer 이전의 layer 가져오기
model = Model(inputs=base_model.input, outputs=base_model.get_layer('fc2').output)
# 이미지 벡터화
features = model.predict(x)
vectorized_image = features.flatten()
return vectorized_image
# 이미지 경로 지정
image_path = '이미지_파일_경로.jpg'
# 이미지 벡터화
image_vector = vectorize_image(image_path)
# 벡터 출력
print(image_vector)
반응형
'데이터 분석 > 머신러닝' 카테고리의 다른 글
Transformer hidden_states 란? (0) | 2023.07.27 |
---|---|
이미지를 이용하여 텍스트를 생성하는 모델 Image to Text(이미지 캡셔닝) (0) | 2023.07.27 |
이미지 벡터화와 압축 / 유사 이미지 탐색 (0) | 2023.05.26 |
다양한 산업 분야에서 머신러닝이 활용되고 있는 사례 (0) | 2023.04.25 |
머신러닝 학습 방향 및 학습 예제 (0) | 2023.04.25 |