REVA-QCAV

1aurent
Detección de objetos

Un modelo Transformer de detección (DETR) con una infraestructura ResNet-50 (facebook/detr-resnet-50) afinado en un conjunto de datos personalizado de esferas de calibración fotogramétrica.

Como usar

Object Detection (usando transformers)

from transformers import AutoImageProcessor, AutoModelForObjectDetection
from huggingface_hub import hf_hub_download
from PIL import Image
import torch

# descargar imagen de ejemplo
img_path = hf_hub_download(repo_id="1aurent/REVA-QCAV", filename="examples/chevaux.jpg")
img = Image.open(img_path)

# transformar imagen usando image_processor
image_processor = AutoImageProcessor.from_pretrained("1aurent/REVA-QCAV")
data = image_processor(img, return_tensors="pt")

# obtener salidas del modelo
model = AutoModelForObjectDetection.from_pretrained("1aurent/REVA-QCAV")
with torch.no_grad():
    output = model(**data)

# usar post procesamiento de image_processor
img_CHW = torch.tensor([img.height, img.width]).unsqueeze(0)
output_processed = image_processor.post_process_object_detection(output, threshold=0.9, target_sizes=img_CHW)

Object Detection (usando onnxruntime)

from transformers.models.detr.modeling_detr import DetrObjectDetectionOutput
from transformers import AutoImageProcessor
from huggingface_hub import hf_hub_download
import onnxruntime as ort
from PIL import Image
import torch

# descargar onnx y comenzar sesión de inferencia
onnx_path = hf_hub_download(repo_id="1aurent/REVA-QCAV", filename="model.onnx")
session = ort.InferenceSession(onnx_path)

# descargar imagen de ejemplo
img_path = hf_hub_download(repo_id="1aurent/REVA-QCAV", filename="examples/chevaux.jpg")
img = Image.open(img_path)

# transformar imagen usando image_processor
image_processor = AutoImageProcessor.from_pretrained("1aurent/REVA-QCAV")
data = image_processor(img, return_tensors="np").data

# obtener logits y predicciones de bbox usando sesión onnx
logits, pred_boxes = session.run(
    output_names=["logits", "pred_boxes"],
    input_feed=data,
)

# envolver salidas dentro de DetrObjectDetectionOutput
output = DetrObjectDetectionOutput(
    logits=torch.tensor(logits),
    pred_boxes=torch.tensor(pred_boxes),
)

# usar post procesamiento de image_processor
img_CHW = torch.tensor([img.height, img.width]).unsqueeze(0)
output_processed = image_processor.post_process_object_detection(output, threshold=0.9, target_sizes=img_CHW)

Funcionalidades

Detección de objetos
Transformers
Soporte ONNX
Safetensors
Calibración fotogramétrica

Casos de uso

Detección de objetos en imágenes
Calibración de iluminación mediante la detección de esferas en imágenes

Recibe las últimas noticias y actualizaciones sobre el mundo de IA directamente en tu bandeja de entrada.