Capture Speed
애플리케이션에서 중요한 요소 중 하나는 속도입니다. 애플리케이션의 작동 속도를 추정하려면 각 구성 요소에 걸리는 시간을 알아야 합니다. Zivid에 필요한 시간을 추정하는 데 중요한 두 가지 측정 기준은 다음과 같습니다.
- CaptureFunctionReturnTime
captureAPI를 실행하는 데 걸리는 시간입니다. API가 반환되면 카메라의 FOV를 차단하거나 카메라를 이동해도 안전합니다. Zivid Studio 에서 CaptureFunctionReturnTime은 Acquisition Time으로 표시됩니다.- CaptureTime
captureAPI를 호출한 후부터 GPU에서 포인트 클라우드를 사용할 수 있을 때까지 걸리는 시간입니다. GPU 메모리에서 시스템 메모리로 데이터를 복사하는 시간은 포함되지 않습니다.
캡처 프로세스는 Point Cloud Capture Process 에서 더 자세히 설명되어 있습니다.
Zivid는 다양한 하드웨어, high-end or low-end 에서 모든 프리셋을 벤치마크합니다. 이러한 벤치마크는 시간이 지남에 따라 변동될 수 있으며, 대부분의 경우 최신 SDK 버전으로 전환됨에 따라 개선됩니다. 관련 수치를 확인하려면 사용 중인 SDK 버전에 해당하는 이 문서 버전을 선택하세요.
Zivid Studio 와 SDK를 통해 획득 및 캡처 시간을 확인할 수 있습니다.
const auto frame = camera.capture2D3D(settings);
const auto frameInfo = frame.info();
std::cout << "Acquisition time:" << std::endl;
std::cout << std::chrono::duration_cast<std::chrono::milliseconds>(
frameInfo.metrics().acquisitionTime().value())
.count()
<< " ms" << std::endl;
std::cout << "Capture time:" << std::endl;
std::cout
<< std::chrono::duration_cast<std::chrono::milliseconds>(frameInfo.metrics().captureTime().value()).count()
<< " ms" << std::endl;
using (var frame = camera.Capture2D3D(settings))
{
var frameInfo = frame.Info;
Console.WriteLine("Acquisition time:");
Console.WriteLine(frameInfo.Metrics.AcquisitionTime.Milliseconds + " ms");
Console.WriteLine("Capture time:");
Console.WriteLine(frameInfo.Metrics.CaptureTime.Milliseconds + " ms");
C++ 샘플 ZividBenchmark.cpp 를 실행하여 새로운 하드웨어에서 직접 벤치마킹할 수도 있습니다.