API 레퍼런스

Video Inference API는 Roboflow Python SDK와 REST API를 통해 사용할 수 있습니다.

기본 URL

API는 다음 URL을 사용합니다:

https://api.roboflow.com

API 메서드

비디오 추론에 대해서는 roboflow Pip 패키지를 통해 접근할 것을 강력히 권장합니다. 원시 Video Inference API는 https://api.roboflow.com 다음 세 가지 메서드를 가집니다:

메서드
설명

POST /video_upload_signed_url/?api_key={{WORKSPACE_API_KEY}}

이 엔드포인트는 사용자가 비디오를 업로드할 수 있는 서명된 URL을 반환합니다. 엔드포인트는 파일 이름을 포함한 JSON 입력을 허용합니다. 예:

{
    "file_name": "my_video_file.mp4"
}

서명된 URL이 반환됩니다

{
    "signed_url": "https://storage.googleapis.com/roboflow_video_inference_input/GNPwawe7dxWthlZZ24r72VRTV852/oct27_video_file.mp4?X-Goog-Algorithm=GOOG4-RSA-SHA256&X-Goog-Credential=roboflow-staging%40appspot.gserviceaccount.com%2F2023110......."
}

그런 다음 선호하는 업로드 프로그램(예: cURL)을 사용하여 비디오 파일을 서명된 URL에 PUT할 수 있습니다.

curl -X PUT "my_signed_url" \
-H "Content-Type: application/octet-stream" \
--data-binary "@your_video.mp4"

POST /videoinfer/?api_key={{WORKSPACE_API_KEY}}

이 엔드포인트는 처리할 비디오 추론 작업을 예약하기 위해 JSON 입력을 받습니다. INPUT_URL은 공개적으로 접근 가능한 아무 URL이나 될 수 있으므로, 먼저 서명된 URL을 만들고 Roboflow에 비디오를 업로드할 필요는 없습니다.

요청 본문의 예시는 아래에 나와 있습니다:

{
    "input_url": "{{INPUT_URL}}",
    "infer_fps": 5,
    "models": [
        {
            "model_id": "rock-paper-scissors-presentation",
            "model_version": "4",
            "inference_type": "object-detection",
            "inference_params": {"confidence": 0.4}
        }
    ]
}

다음에 유의하십시오 models[*].inference_params 은 선택 항목입니다.

응답은 다음과 같은 JSON 문자열입니다

{
    "job_id": "fec28362-f7d9-4cc0-a805-5e94495d063d",
    "message": "This endpoint will create videojob"
}

여러 모델을 models 배열에 지정할 수 있습니다. 이 infer_fps 필드는 최소한 다음으로 설정되어야 하며 1 그 값은 비디오 프레임 속도를 초과해서는 안 됩니다. 대부분의 사용 사례에서 비디오 프레임 속도는 infer_fps .

GET /videoinfer/?api_key={{WORKSPACE_API_KEY}}&job_id={{JOB_ID}}

이 엔드포인트는 작업의 현재 상태를 반환합니다. 이 엔드포인트는 속도 제한이 있으므로 1분에 한 번보다 자주 폴링하지 마십시오. 작업이 성공하면 반환된 JSON의 status 키는 0으로 설정되고, output_signed_url 키에는 비디오 추론 결과 다운로드 링크가 포함됩니다. 만약 status 가 1로 설정되어 있으면, 이는 작업 처리가 완료되지 않았음을 나타냅니다. 더 높은 값은 작업 실패를 나타냅니다.

해당 위치에 저장된 JSON 파일을 다운로드한 후에는 이를 파싱하여 추론 정보를 얻을 수 있습니다. JSON 파일의 형식은 output_signed_url 여기에 설명되어 있습니다 설명되어 있습니다.

Last updated

Was this helpful?