es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Convertir boundingPoly al formato YOLO.

Yolov5 no admite etiquetas de segmentación y necesito convertirlo al formato correcto.

¿Cómo convertirías esto al formato de yolov5?

La formato de yolov5 se ve así:

0 0.588196 0.474138 0.823607 0.441645

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Para convertir el “boundingPoly” dado al formato yolo, primero debemos calcular las coordenadas del centro, el ancho y el alto de la caja delimitadora utilizando los vértices normalizados.

    # Vértices normalizados dados
    vertices = [
        {"x": 0.026169369},
        {"x": 0.99525446},
        {"x": 0.99525446, "y": 0.688811},
        {"x": 0.026169369, "y": 0.688811}
    ]
    
    # Calcular coordenadas del centro, ancho y alto
    x_center = (vertices[0]["x"] + vertices[1]["x"]) / 2
    y_center = (vertices[1]["y"] + vertices[2]["y"]) / 2
    width = vertices[1]["x"] - vertices[0]["x"]
    height = vertices[2]["y"] - vertices[1]["y"]
    

    Ahora podemos usar estos valores para crear la anotación en formato yolo.

    0 {x_center} {y_center} {width} {height}
    

    Entonces, la anotación final en formato yolo para el “boundingPoly” dado sería:

    0 0.5107119195 0.588196 0.9690850909999999 0.441645
    

    Donde 0 es el índice de la clase del objeto (asumiendo que solo hay una clase presente).

Comments are closed.