포인트 클라우드 시퀀스 입력 매니페스트 생성 - Amazon SageMaker AI

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

포인트 클라우드 시퀀스 입력 매니페스트 생성

매니페스트는 각 행이 하나의 완성된 유효한 JSON 객체인 UTF-8 인코딩 파일입니다. 각 행은 표준 줄 바꿈인 \n 또는 \r\n으로 구분됩니다. 각 행이 유효한 JSON 객체여야 하므로 이스케이프되지 않은 줄 바꿈 문자를 사용할 수 없습니다. 포인트 클라우드 시퀀스 입력 매니페스트 파일에서 매니페스트의 각 라인에는 포인트 클라우드 프레임의 시퀀스가 포함되어 있습니다. 시퀀스의 각 프레임에 대한 포인트 클라우드 데이터는 바이너리 또는 ASCII 형식으로 저장할 수 있습니다. 자세한 내용은 허용되는 원시 3D 데이터 형식 섹션을 참조하세요. 이는 3D 포인트 클라우드 객체 추적에 필요한 매니페스트 파일 형식입니다. 선택에 따라 각 포인트 클라우드 프레임에 대해 포인트 속성 및 카메라 센서 융합 데이터를 제공할 수도 있습니다. 시퀀스 입력 매니페스트 파일을 생성할 때 세계 좌표계에서 LiDAR 및 비디오 카메라 센서 퓨전 데이터를 제공해야 합니다.

다음 예제에서는 매니페스트의 각 라인이 시퀀스 파일일 때 입력 매니페스트 파일에 사용되는 구문을 보여 줍니다. 입력 매니페스트 파일의 각 행은 JSON 행 형식이어야 합니다.

{"source-ref": "s3://amzn-s3-demo-bucket/example-folder/seq1.json"} {"source-ref": "s3://amzn-s3-demo-bucket/example-folder/seq2.json"}

포인트 클라우드 프레임의 각 시퀀스에 대한 데이터는 JSON 데이터 객체에 저장되어야 합니다. 다음은 시퀀스 파일에 사용되는 형식의 예입니다. 각 프레임에 대한 정보는 JSON 객체로 포함되며 frames 목록에 나열됩니다. 다음은 두 개의 포인트 클라우드 프레임 파일 frame300.binframe303.bin이(가) 있는 시퀀스 파일의 예제입니다. ...은 추가 프레임에 대한 정보를 포함해야 하는 위치를 표시하는 데 사용됩니다. 시퀀스의 각 프레임에 JSON 객체를 추가하세요.

다음 코드 블록에는 단일 시퀀스 파일에 대한 JSON 객체가 포함되어 있습니다. JSON 객체는 가독성을 위해 확장되었습니다.

{ "seq-no": 1, "prefix": "s3://amzn-s3-demo-bucket/example_lidar_sequence_dataset/seq1/", "number-of-frames": 100, "frames":[ { "frame-no": 300, "unix-timestamp": 1566861644.759115, "frame": "example_lidar_frames/frame300.bin", "format": "binary/xyzi", "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 } }, "images": [ { "image-path": "example_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" }] }, { "frame-no": 303, "unix-timestamp": 1566861644.759115, "frame": "example_lidar_frames/frame303.bin", "format": "text/xyzi", "ego-vehicle-pose":{...}, "images":[{...}] }, ... ] }

다음 테이블에는 시퀀스 파일의 최상위 파라미터에 대한 세부 정보가 나와 있습니다. 시퀀스 파일의 개별 프레임에 필요한 파라미터에 대한 자세한 내용은 개별 포인트 클라우드 프레임에 대한 파라미터 섹션을 참조하세요 .

파라미터

필수

허용되는 값

Description

seq-no

Integer

순서가 지정된 시퀀스 번호입니다.

prefix

String

허용되는 값:

s3://<bucket-name>/<prefix>/

시퀀스 파일이 있는 Amazon S3 위치입니다.

접두사는 슬래시(/)로 끝나야 합니다.

number-of-frames

Integer

시퀀스 파일에 포함된 총 프레임 수입니다. 이 숫자는 다음 행의 frames 파라미터에 나열된 총 프레임 수와 일치해야 합니다.

frames

JSON 객체 목록

프레임 데이터의 목록입니다. 목록의 길이는 number-of-frames과 같아야 합니다. 작업자 UI에서 시퀀스의 프레임은 이 배열의 프레임 순서와 동일합니다.

각 프레임의 형식에 대한 자세한 내용은 개별 포인트 클라우드 프레임에 대한 파라미터 섹션을 참조하세요.

개별 포인트 클라우드 프레임에 대한 파라미터

아래 표에서는 입력 매니페스트 파일에 포함시킬 수 있는 파라미터를 보여 줍니다.

파라미터

필수

허용되는 값

설명

frame-no

아니요

Integer

프레임 번호입니다. 이 식별자는 고객이 시퀀스 내의 프레임을 식별하기 위해 지정하는 선택적 식별자입니다. Ground Truth에서는 사용하지 않습니다.

unix-timestamp

숫자

Unix 타임스탬프는 1970년 1월 1일 이후 센서에서 데이터가 수집된 UTC 시간까지 소요된 시간(초)입니다.

각 프레임의 타임스탬프는 달라야 하며 타임스탬프는 직육면체 보간에 사용되므로 순차적이어야 합니다. 데이터를 수집한 시점의 실제 타임스탬프인 것이 가장 좋습니다. 이를 사용할 수 없는 경우 시퀀스 파일의 첫 번째 프레임이 시퀀스의 첫 번째 타임스탬프에 대응하는 증분 타임스탬프 시퀀스를 사용해야 합니다.

frame

String

형식 예

<folder-name>/<sequence-file.json>

Amazon S3에서 시퀀스 파일의 상대적인 위치입니다. 이 상대 경로는 prefix에서 지정한 경로에 추가됩니다.

format

아니요

String

허용되는 문자열 값: "binary/xyz", "binary/xyzi", "binary/xyzrgb", "binary/xyzirgb", "text/xyz", "text/xyzi", "text/xyzrgb", "text/xyzirgb"

기본 값:

source-ref에서 식별된 파일의 확장자가 .bin인 경우 binary/xyzi

source-ref에서 식별된 파일의 확장자가 .txt인 경우 text/xyzi

이 파라미터를 사용하여 포인트 클라우드 데이터의 형식을 지정합니다. 자세한 내용은 허용되는 원시 3D 데이터 형식 섹션을 참조하세요.

ego-vehicle-pose

아니요

JSON 객체

포인트 클라우드 데이터를 수집하는 데 사용되는 디바이스의 포즈입니다. 이 파라미터에 대한 자세한 내용은 입력 매니페스트에 차량 포즈 정보 포함 섹션을 참조하세요.

prefix

아니요

String

허용되는 문자열 값 형식:

s3://<bucket-name>/<folder-name>/

이 프레임에 대해 카메라 이미지와 같은 메타데이터가 저장되는 Amazon S3의 위치입니다.

접두사는 슬래시(/)로 끝나야 합니다.

images

아니요

나열

센서 융합에 사용되는 컬러 카메라 이미지를 설명하는 목록 파라미터. 이 목록에 최대 8개의 이미지를 포함시킬 수 있습니다. 각 이미지에 필요한 파라미터에 대한 자세한 내용은 입력 매니페스트에 카메라 데이터 포함 섹션을 참조하세요 .

입력 매니페스트에 차량 포즈 정보 포함

ego 차량 위치를 사용하여 포인트 클라우드 데이터를 캡처하는 데 사용된 차량의 자세에 대한 정보를 제공합니다. Ground Truth는 이 정보를 사용하여 LiDAR 외부 행렬을 계산합니다.

Ground Truth는 외부 행렬을 사용하여 3D 장면 및 2D 이미지에서 레이블을 투영합니다. 자세한 내용은 센서 융합 섹션을 참조하세요.

아래 표에서는 ego 차량 정보를 제공할 때 필요한 position 및 방향(heading) 파라미터에 대한 자세한 정보를 제공합니다.

파라미터

필수

허용되는 값

Description

position

JSON 객체

필수 파라미터:

x, yz. 이러한 파라미터의 숫자를 입력합니다.

세계 좌표계에서 ego 차량의 변환 벡터입니다.

heading

JSON 객체

필수 파라미터:

qx, qy, qzqw. 이러한 파라미터의 숫자를 입력합니다.

주변을 감지하는 차량에 장착된 디바이스 또는 센서의 참조 프레임 방향이며, 좌표계에서 4원수(,qx, qy, qz, qw)로 측정됩니다.

입력 매니페스트에 카메라 데이터 포함

프레임에 컬러 카메라 데이터를 포함시키려면 다음 파라미터를 사용하여 각 이미지에 대한 정보를 제공합니다. 아래 표의 필수 열은 images 파라미터가 입력 매니페스트 파일에 포함되어 있을 때 적용됩니다. 입력 매니페스트 파일에 이미지를 포함시킬 필요는 없습니다.

카메라 이미지를 포함하는 경우에는 이미지 캡처에 사용된 카메라의 position 및 방향(heading)에 대한 정보를 포함해야 합니다.

이미지가 왜곡된 경우, Ground Truth는 왜곡 계수(k1, k2, k3, k4, p1, p1), 카메라 모델 및 초점 길이(fx, fy) 및 주요점(cx, cy))을 포함해 입력 매니페스트 파일에서 이미지에 대해 제공된 정보를 사용해 자동으로 왜곡을 해제할 수 있습니다. 이러한 계수 및 이미지 왜곡 해제에 대한 자세한 내용은 OpenCV를 사용한 카메라 보정을 참조하세요. 왜곡 계수가 포함되지 않은 경우 Ground Truth는 이미지의 왜곡을 해제하지 않습니다.

파라미터

필수

허용되는 값

Description

image-path

String

형식 예:

<folder-name>/<imagefile.png>

Amazon S3에서 이미지 파일의 상대 위치입니다. 이 상대 경로는 prefix에서 지정한 경로에 추가됩니다.

unix-timestamp

숫자

이미지의 타임스탬프입니다.

camera-model

아니요

문자열:

허용되는 값:

"pinhole", "fisheye"

기본 값:

"pinhole"

이미지를 캡처하는 데 사용되는 카메라의 모델입니다. 이 정보는 카메라 이미지의 왜곡을 해제하는 데 사용됩니다.

fx, fy

숫자

x(fx) 및 y(fy) 방향의 카메라 초점 거리입니다.

cx, cy

숫자

주점의 x(cx) 및 y(cy) 좌표입니다.

k1, k2, k3, k4

아니요

숫자

방사형 왜곡 계수입니다. 어안핀홀 카메라 모델 모두에서 지원됩니다.

p1, p2

아니요

숫자

접선 왜곡 계수입니다. 핀홀 카메라 모델에서 지원됩니다.

skew

아니요

숫자

이미지에서 알려진 기울기를 측정하는 파라미터입니다.

position

JSON 객체

필수 파라미터:

x, yz. 이러한 파라미터의 숫자를 입력합니다.

이미지를 캡처하는 차량에 탑재된 카메라의 참조 프레임 위치 또는 원점.

heading

JSON 객체

필수 파라미터:

qx, qy, qzqw. 이러한 파라미터의 숫자를 입력합니다.

4원수, (qx, qy, qz, qw)를 사용하여 측정된 이미지를 캡처하는 차량에 장착된 카메라의 참조 프레임 방향입니다.

시퀀스 파일 및 포인트 클라우드 프레임 제한

입력 매니페스트 파일에 최대 100,000개의 포인트 클라우드 프레임 시퀀스를 포함시킬 수 있습니다. 각 시퀀스 파일에 최대 500개의 포인트 클라우드 프레임을 포함시킬 수 있습니다.

3D 포인트 클라우드 레이블 지정 작업은 다른 Ground Truth 태스크 유형보다 사전 처리 시간이 길다는 점에 유의하세요. 자세한 내용은 작업 사전 처리 시간 섹션을 참조하세요.