Downloads · 30 days
0
ondame/room-image-similarity
room-image-similarity is a image feature extraction model from ondame. Use it for the image feature extraction task on the model card, and read the license before you ship it in a product. It is set up for transformers. The card lists the license as apache-2.0.
Downloads · 30 days
0
Access
Public
Updated Nov 18, 2025
Repo size
247 MB
Likes
0
Public
Click a slice to open those files.
.onnx165 MB · 66%
From the Hugging Face model README
객실 이미지 유사도 측정을 위한 Siamese 네트워크 모델입니다.
이 모델은 숙소 객실 이미지 간의 유사도를 측정하여 동일한 물리적 객실을 식별하는 데 사용됩니다. EfficientNetV2 기반 Siamese 네트워크를 사용하여 이미지 유사도를 계산합니다.
similarity_model_0.6timm/tf_efficientnetv2_simport torch
import onnxruntime as ort
import numpy as np
from PIL import Image
from torchvision import transforms
# PyTorch 모델 로드
model = torch.load('similarity_model_0.6.pth', map_location='cpu')
model.eval()
# ONNX 모델 사용 (더 빠른 추론)
onnx_session = ort.InferenceSession('similarity_model_0.6.onnx')
# 이미지 전처리
transform = transforms.Compose([
transforms.Resize((224, 224)),
transforms.CenterCrop(224),
transforms.ToTensor(),
transforms.Normalize([0.485, 0.456, 0.406], [0.229, 0.224, 0.225])
])
def calculate_similarity_pytorch(img1_path, img2_path):
"""PyTorch 모델을 사용한 유사도 계산"""
img1 = transform(Image.open(img1_path)).unsqueeze(0)
img2 = transform(Image.open(img2_path)).unsqueeze(0)
with torch.no_grad():
similarity = torch.sigmoid(model(img1, img2))
return similarity.item()
def calculate_similarity_onnx(img1_path, img2_path):
"""ONNX 모델을 사용한 유사도 계산 (권장)"""
img1 = transform(Image.open(img1_path)).numpy()
img2 = transform(Image.open(img2_path)).numpy()
# ONNX 모델 추론
input_feed = {
'input1': img1.astype(np.float32),
'input2': img2.astype(np.float32)
}
similarity = onnx_session.run(None, input_feed)[0]
return similarity[0][0]
# 예시 사용
similarity_score = calculate_similarity_onnx("room1.jpg", "room2.jpg")
print(f"유사도: {similarity_score:.4f}")
def calculate_batch_similarity(image_pairs):
"""여러 이미지 쌍의 유사도를 한 번에 계산"""
similarities = []
for img1_path, img2_path in image_pairs:
similarity = calculate_similarity_onnx(img1_path, img2_path)
similarities.append(similarity)
return similarities
# 예시
image_pairs = [
("room1.jpg", "room2.jpg"),
("room3.jpg", "room4.jpg"),
("room5.jpg", "room6.jpg")
]
similarities = calculate_batch_similarity(image_pairs)
for i, sim in enumerate(similarities):
print(f"쌍 {i+1} 유사도: {sim:.4f}")
similarity_model_0.6.pth: PyTorch 모델 파일similarity_model_0.6.onnx: ONNX 모델 파일 (추론 최적화)similarity_model_0.6_model_info.json: 모델 메타데이터similarity_model_0.6_inference_example.py: 추론 예제 코드이 모델은 다음과 같은 데이터로 훈련되었습니다:
Apache 2.0 License
이 모델은 Room Clusterer 프로젝트의 일부로 개발되었습니다. 더 자세한 정보는 프로젝트 저장소를 참조하세요.
이 모델은 다음과 같은 용도로 직접 사용할 수 있습니다:
이 모델을 기반으로 다음과 같은 애플리케이션을 구축할 수 있습니다:
이 모델은 다음과 같은 용도로는 적합하지 않습니다:
위의 "사용법" 섹션의 코드 예제를 참조하여 모델을 시작하세요.
이 모델을 사용하시는 경우, 다음 형식으로 인용해 주세요:
BibTeX:
@misc{room_image_similarity_model,
title={Room Image Similarity Model: Siamese Network for Hotel Room Image Comparison},
author={Your Name},
year={2024},
howpublished={Hugging Face Model Hub},
url={https://huggingface.co/ondame/room-image-similarity}
}
APA:
Your Name. (2024). Room Image Similarity Model: Siamese Network for Hotel Room Image Comparison. Hugging Face Model Hub. https://huggingface.co/your-username/room-image-similarity