Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Crear un archivo de manifiesto de entrada de fotograma de nube de puntos
El manifiesto es un archivo codificado en formato UTF -8 en el que cada línea es un JSON objeto completo y válido. Cada línea se delimita con un salto de línea estándar, \n o \r\n. Como cada línea debe ser un JSON objeto válido, no puede tener caracteres de salto de línea sin escape. En el archivo de manifiesto de entrada de fotograma único, cada línea del manifiesto contiene datos para un fotograma de nube de puntos único. Los datos del marco de la nube de puntos se pueden almacenar en formato binario o en ASCII formato (consulteFormatos de datos 3D sin procesar aceptados). Este es el formato de archivo de manifiesto necesario para la detección de objetos y la segmentación semántica de nube de puntos 3D. Opcionalmente, también puede proporcionar datos de fusión de sensores de cámara para cada fotograma de nube de puntos.
Ground Truth es compatible con la fusión de sensores de cámara de vídeo y nube de puntos en el sistema de coordenadas mundial para todas las modalidades. Si puede obtener un sensor 3D extrínseco (como un extrínseco de Li), le recomendamos que transforme los marcos de nubes de puntos 3D en el sistema de coordenadas mundiales utilizando el DAR extrínseco. Para obtener más información, consulte Fusión de sensores.
Sin embargo, si no puede obtener una nube de puntos en el sistema de coordenadas mundial, puede proporcionar coordenadas en el sistema de coordenadas original en el que se capturaron los datos. Si va a proporcionar datos de cámara para la fusión de sensores, se recomienda que indique la posición DAR del sensor Li y de la cámara en el sistema de coordenadas mundial.
Para crear un archivo de manifiesto de entrada de un solo fotograma, debe identificar la ubicación de cada fotograma de nube de puntos que desea que los trabajadores etiqueten con la clave source-ref
. Además, debe usar la clave source-ref-metadata
para identificar el formato del conjunto de datos, una marca de tiempo para ese fotograma y, opcionalmente, los datos de fusión de sensores y las imágenes de la cámara de vídeo.
En el ejemplo siguiente se muestra la sintaxis utilizada para un archivo de manifiesto de entrada de un trabajo de etiquetado en nubes de puntos de fotograma único. El ejemplo incluye dos fotogramas de nube de puntos. Para obtener más información sobre cada parámetro, consulte la tabla que sigue a este ejemplo.
importante
Cada línea del archivo de manifiesto de entrada debe estar en formato de JSONlíneas
{ "source-ref": "
s3://amzn-s3-demo-bucket/examplefolder/frame1.bin
", "source-ref-metadata":{ "format": "binary/xyzi
", "unix-timestamp":1566861644.759115
, "ego-vehicle-pose":{ "position": { "x":-2.7161461413869947
, "y":116.25822288149078
, "z":1.8348751887989483
}, "heading": { "qx":-0.02111296123795955
, "qy":-0.006495469416730261
, "qz":-0.008024565904865688
, "qw":0.9997181192298087
} }, "prefix": "s3://amzn-s3-demo-bucket/lidar_singleframe_dataset/someprefix/
", "images": [ { "image-path": "images/frame300.bin_camera0.jpg
", "unix-timestamp":1566861644.759115
, "fx":847.7962624528487
, "fy":850.0340893791985
, "cx":576.2129134707038
, "cy":317.2423573573745
, "k1":0
, "k2":0
, "k3":0
, "k4":0
, "p1":0
, "p2":0
, "skew":0
, "position": { "x":-2.2722515189268138
, "y":116.86003310568965
, "z":1.454614668542299
}, "heading": { "qx":0.7594754093069037
, "qy":0.02181790885672969
, "qz":-0.02461725233103356
, "qw":-0.6496916273040025
}, "camera-model": "pinhole" }] } } { "source-ref": "s3://amzn-s3-demo-bucket/examplefolder/frame2.bin
", "source-ref-metadata":{ "format": "binary/xyzi
", "unix-timestamp":1566861632.759133
, "ego-vehicle-pose":{ "position": { "x":-2.7161461413869947
, "y":116.25822288149078
, "z":1.8348751887989483
}, "heading": { "qx":-0.02111296123795955
, "qy":-0.006495469416730261
, "qz":-0.008024565904865688
, "qw":0.9997181192298087
} }, "prefix": "s3://amzn-s3-demo-bucket/lidar_singleframe_dataset/someprefix/
", "images": [ { "image-path": "images/frame300.bin_camera0.jpg
", "unix-timestamp":1566861644.759115
, "fx":847.7962624528487
, "fy":850.0340893791985
, "cx":576.2129134707038
, "cy":317.2423573573745
, "k1":0
, "k2":0
, "k3":0
, "k4":0
, "p1":0
, "p2":0
, "skew":0
, "position": { "x":-2.2722515189268138
, "y":116.86003310568965
, "z":1.454614668542299
}, "heading": { "qx":0.7594754093069037
, "qy":0.02181790885672969
, "qz":-0.02461725233103356
, "qw":-0.6496916273040025
}, "camera-model": "pinhole" }] } }
Al crear un archivo de manifiesto de entrada, debe contraer JSON los objetos para que quepan en una sola línea. Por ejemplo, el bloque de código anterior aparecería de la siguiente manera en un archivo de manifiesto de entrada:
{"source-ref":"s3://amzn-s3-demo-bucket/examplefolder/frame1.bin","source-ref-metadata":{"format":"binary/xyzi","unix-timestamp":1566861644.759115,"ego-vehicle-pose":{"position":{"x":-2.7161461413869947,"y":116.25822288149078,"z":1.8348751887989483},"heading":{"qx":-0.02111296123795955,"qy":-0.006495469416730261,"qz":-0.008024565904865688,"qw":0.9997181192298087}},"prefix":"s3://amzn-s3-demo-bucket/lidar_singleframe_dataset/someprefix/","images":[{"image-path":"images/frame300.bin_camera0.jpg","unix-timestamp":1566861644.759115,"fx":847.7962624528487,"fy":850.0340893791985,"cx":576.2129134707038,"cy":317.2423573573745,"k1":0,"k2":0,"k3":0,"k4":0,"p1":0,"p2":0,"skew":0,"position":{"x":-2.2722515189268138,"y":116.86003310568965,"z":1.454614668542299},"heading":{"qx":0.7594754093069037,"qy":0.02181790885672969,"qz":-0.02461725233103356,"qw":-0.6496916273040025},"camera-model":"pinhole"}]}} {"source-ref":"s3://amzn-s3-demo-bucket/examplefolder/frame2.bin","source-ref-metadata":{"format":"binary/xyzi","unix-timestamp":1566861632.759133,"ego-vehicle-pose":{"position":{"x":-2.7161461413869947,"y":116.25822288149078,"z":1.8348751887989483},"heading":{"qx":-0.02111296123795955,"qy":-0.006495469416730261,"qz":-0.008024565904865688,"qw":0.9997181192298087}},"prefix":"s3://amzn-s3-demo-bucket/lidar_singleframe_dataset/someprefix/","images":[{"image-path":"images/frame300.bin_camera0.jpg","unix-timestamp":1566861644.759115,"fx":847.7962624528487,"fy":850.0340893791985,"cx":576.2129134707038,"cy":317.2423573573745,"k1":0,"k2":0,"k3":0,"k4":0,"p1":0,"p2":0,"skew":0,"position":{"x":-2.2722515189268138,"y":116.86003310568965,"z":1.454614668542299},"heading":{"qx":0.7594754093069037,"qy":0.02181790885672969,"qz":-0.02461725233103356,"qw":-0.6496916273040025},"camera-model":"pinhole"}]}}
La siguiente tabla muestra los parámetros que puede incluir en el archivo de manifiesto de entrada:
Parámetro |
Obligatoria |
Valores aceptados |
Descripción |
---|---|---|---|
|
Sí |
Cadena Formato de valor de cadena aceptado:
|
La ubicación de Amazon S3 de un fotograma de nube de puntos único. |
|
Sí |
JSONobjeto Parámetros aceptados:
|
Utilice este parámetro para incluir información adicional sobre la nube de puntos en |
|
No |
Cadena Valores de cadena aceptados: Valores predeterminados: Cuando el archivo identificado en Cuando el archivo identificado en |
Utilice este parámetro para especificar el formato de los datos de nube de puntos. Para obtener más información, consulte Formatos de datos 3D sin procesar aceptados. |
|
Sí |
Número Una marca de tiempo Unix. |
La marca de tiempo de Unix es el número de segundos transcurridos desde el 1 de enero de 1970 hasta el UTC momento en que un sensor recopiló los datos. |
|
No |
JSONobjeto |
La posición del dispositivo utilizado para recopilar los datos de nube de puntos. Para obtener más información sobre este parámetro, consulte Incluir información de posición del vehículo en el manifiesto de entrada. |
|
No |
Cadena Formato de valor de cadena aceptado:
|
La ubicación en Amazon S3 donde se almacenan los metadatos, como las imágenes de la cámara, para este fotograma. El prefijo debe terminar con una barra diagonal: |
|
No |
Lista |
Una lista de parámetros que describen las imágenes de la cámara en color utilizadas para la fusión de sensores. Puede incluir hasta 8 imágenes en esta lista. Para obtener más información sobre los parámetros necesarios para cada imagen, consulte Incluir los datos de la cámara en el manifiesto de entrada. |
Incluir información de posición del vehículo en el manifiesto de entrada
Utilice la ubicación del ego-vehículo para proporcionar información sobre la ubicación del vehículo utilizado para capturar datos de nube de puntos. Ground Truth utiliza esta información para calcular la matriz DAR extrínseca de Li.
Ground Truth utiliza matrices extrínsecas para proyectar etiquetas hacia y desde la escena 3D y las imágenes 2D. Para obtener más información, consulte Fusión de sensores.
En la siguiente tabla se proporciona más información sobre los parámetros position
y orientación (heading
) necesarios cuando proporciona información del ego-vehículo.
Parámetro |
Obligatoria |
Valores aceptados |
Descripción |
---|---|---|---|
|
Sí |
JSONobjeto Parámetros requeridos:
|
El vector de traslación del ego-vehículo en el sistema de coordenadas mundial. |
|
Sí |
JSONObjeto Parámetros requeridos:
|
La orientación del fotograma de referencia del dispositivo o sensor montado en el vehículo que detecta el entorno, medido en cuaterniones |
Incluir los datos de la cámara en el manifiesto de entrada
Si desea incluir los datos de la cámara de vídeo con un fotograma, utilice los siguientes parámetros para proporcionar información sobre cada imagen. La columna Obligatorio a continuación se aplica cuando el parámetro images
se incluye en el archivo de manifiesto de entrada en source-ref-metadata
. No es necesario incluir imágenes en el archivo de manifiesto de entrada.
Si incluye imágenes de la cámara, debe incluir información sobre la position
y heading
de la cámara utilizada para capturar imágenes en el sistema de coordenadas mundial.
Si las imágenes están distorsionadas, Ground Truth puede eliminar la distorsión automáticamente utilizando la información que proporcione sobre la imagen en el archivo de manifiesto de entrada, incluidos los coeficientes de distorsión (k1
, k2
, k3
, k4
, p1
, p1
), el modelo de cámara y la matriz intrínseca de la cámara. La matriz intrínseca se compone de la distancia focal (fx
, fy
) y el punto principal (cx
, cy)
). Consulte Matriz intrínseca para saber cómo utiliza Ground Truth la calibración intrínseca de la cámara. Si no se incluyen los coeficientes de distorsión, Ground Truth no eliminará la distorsión de una imagen.
Parámetro |
Obligatoria |
Valores aceptados |
Descripción |
---|---|---|---|
|
Sí |
Cadena Ejemplo de formato:
|
La ubicación relativa en Amazon del archivo de imagen. Esta ruta relativa se añadirá a la ruta especificada en |
|
Sí |
Número |
La marca de tiempo de Unix es el número de segundos transcurridos desde el 1 de enero de 1970 hasta el UTC momento en que una cámara recopiló los datos. |
|
No |
Cadena: Valores aceptados:
Valor predeterminado:
|
Modelo de la cámara utilizado para capturar la imagen. Esta información se utiliza para eliminar la distorsión de las imágenes de la cámara. |
|
Sí |
Números |
La distancia focal de la cámara, en las direcciones x ( |
|
Sí |
Números |
Las coordenadas x ( |
|
No |
Número |
Coeficientes de distorsión radial. Compatibles con modelos de cámaras de ojo de pez y estenopeicas. |
|
No |
Número |
Coeficientes de distorsión tangencial. Compatibles con modelos de cámaras estenopeicas. |
|
No |
Número |
Un parámetro para medir el sesgo de una imagen. |
|
Sí |
JSONobjeto Parámetros requeridos:
|
La ubicación u origen del fotograma de referencia de la cámara montada en el vehículo que captura imágenes. |
|
Sí |
JSONObjeto Parámetros requeridos:
|
La orientación del fotograma de referencia de la cámara montada en el vehículo que captura imágenes, medida mediante cuaterniones |
Límites de fotogramas de nube de puntos
Puede incluir hasta 100 000 fotogramas de nube de puntos en el archivo de manifiesto de entrada. El trabajo de etiquetado en nubes de puntos 3D tiene tiempos de preprocesamiento más largos que otros tipos de tareas de Ground Truth. Para obtener más información, consulte Tiempo de preprocesamiento del trabajo.