'스트리트 뷰 호환 (전문가 등급)' 사양

소개

이 사양은 매우 정확한 고속 스트리트 뷰 캡처 및 게시 기능을 제공하는 고급 360도 카메라의 모든 하드웨어, 타이밍, 데이터 요구사항을 상세히 설명합니다. (이 프로그램은 작동 또는 기계적 기능에는 적용되지 않습니다.)

이미지

  • 5FPS에서 8k 이상
  • 360° 수평 FOV
  • 135° 이상의 연속 수직 FOV
  • Google에서 이미지와 도형의 품질을 검토합니다.

IMU : IMU : IMU : API)

권장 구성요소:

가속도계는 다음 사양을 충족해야 합니다.

  • 해상도: ≥16비트
  • 범위: ≥ +/- 8G, ≥ 4096 LSB/g 일반적으로
  • 샘플링 레이트: ≥200Hz(지터 1% 미만)
  • 앨리어싱을 제거하려면 로우 패스 필터링을 사용 설정해야 합니다. 차단 주파수는 Nyquist 주파수보다 낮은 최대값(샘플링 레이트의 절반)으로 설정해야 합니다. 예를 들어 주파수가 200Hz인 경우 저역 통과 필터 컷오프는 100Hz 미만이지만 가능한 한 가까워야 합니다.
  • 노이즈 밀도는 ≤ 300μg/√Hz여야 하고 150μg/√Hz 이하여야 합니다.
  • 24시간 정적 데이터 세트에서 15μg * √Hz 미만의 고정된 노이즈 편향 안정성
  • 온도 대비 바이어스 변화: ≤ +/- 1mg / °C
  • 최적선 비선형성: ≤ 0.5%
  • 온도 대비 민감도 변화 ≤ 0.03%/°C

자이로스코프는 다음 사양을 충족해야 합니다.

  • 해상도: ≥16비트
  • 범위: ≥ +/- 1000deg/s(≥32 LSB/dps)
  • 샘플링 레이트: ≥200Hz(지터 1% 미만)
  • 앨리어싱을 제거하려면 로우 패스 필터링을 사용 설정해야 합니다. 차단 주파수는 Nyquist 주파수보다 낮은 최대값(샘플링 레이트의 절반)으로 설정해야 합니다. 예를 들어, 샘플링 주파수가 200Hz인 경우 저역 통과 필터 컷오프는 100Hz 미만이지만 가능한 한 가까워야 합니다.
  • 노이즈 밀도: ≤0.01 °/s/√Hz
  • 고정 편향 안정성(24시간 정적 데이터 세트에서 얻은 <0.0002°/s *√Hz)
  • 온도 대비 바이어스 변화: ≤ +/- 0.015 °/ s / °C
  • 최적선 비선형성은 0.2% 이하, 0.1% 이하여야 합니다.
  • 온도 대비 민감도 변화: ≤ 0.02% / °C

GPS

권장 구성요소

  • u-blox MAX-M8 시리즈 또는 u-blox NEO-M8 시리즈 중 하나

요구사항

  • 샘플링 레이트: ≥4Hz
  • 집합: 최소한 GPS와 GLONASS를 동시에 추적
  • 첫 번째 수정 시간:
    • 콜드: 40초 이하
    • 핫: 5초 이하
  • 민감도:
    • 추적: -158dBm
    • 획득: -145dBm
  • 수평 위치 정확도: 2.5미터 (CEP (원형 오류 가능성), 50%, 24시간 정적, 6SV 초과)
  • 속도 정확도: 0.06m/s (30m/s에서 50%)
  • 작업 제한: 4g 이상
  • 알려진 유형의 내부 안테나 또는 단단히 고정된 외부 안테나

안테나 디자인

GPS 수신기 시스템과 수많은 복잡한 전자 시스템이 모두 포함된 카메라와 같이 물리적으로 작은 제품은 포함된 전자 시스템의 RF 방출로 인해 무선 수신기 성능에 문제가 발생하기 쉽습니다. 이러한 간섭은 무선 수신기의 대역 내인 경우가 많으므로 필터링할 수 없습니다. 이를 감안하여 아래의 GPS 테스트 섹션에서 기기가 제대로 작동하는지 확인하기 위한 일련의 테스트를 지정했습니다.

카메라 아키텍처

각 센서와 각 카메라의 기준계 (FOR) 사이의 6 자유도 (6-DOF) 변환 (상대 위치 및 방향)은 가속도계 FOR 와 관련하여 지정되어야 합니다. FOR 센서는 센서 데이터 시트에 정의되어 있으며 기기 내 센서의 실제 위치에 맞춰 정렬되어야 합니다. 각 카메라의 FOR에는 기기에서 광학 축을 따라 카메라의 FOV를 향하는 양의 z축이 있고, x축은 오른쪽을 가리키고, y축은 위에서 아래로 가리키며, FOR의 원점은 카메라의 광학 중심에 있습니다. GPS FOR는 안테나에 있습니다.

각 센서 또는 카메라의 6-DOF 변환(위치의 경우 3-DOF, 방향의 경우 3-DOF)은 3x4 변환 행렬 T = [R p]로 표현됩니다. 여기서 R은 가속도계 FOR에서 센서 또는 카메라의 방향을 나타내는 3x3 회전 행렬이며, p는 FOR의 센서 또는 카메라 원점(FOR z)에서 x, y, FOR(카메라)의 센서 또는 카메라의 방향을 나타내는 3x3 회전 행렬입니다.

요청된 변환은 기기의 컴퓨터 지원 설계 (CAD) 모델에서 가져올 수 있으며 제조상의 변형을 설명하기 위해 기기별 변환이 아니어도 됩니다.

카메라 구성

  • 카메라는 이미지에 대해 모션 떨림 보정을 실행해서는 안 됩니다.
  • 실내 및 실외에서 이미지를 촬영할 수 있도록 카메라 설정을 조정해야 합니다.

기타

전력 (다음 모델 중 하나 또는 둘 다를 사용해야 함):

  • USB 3.1 테더링 전원 및 충전, 4시간 이상 녹화 지원
  • 1시간 이상 녹화 및 업로드를 지원하는 배터리 전원 지원

기계적, 환경적

  • 테더링된 전원에 연결되어 있는 동안 카메라 등급은 IP65 이상이어야 합니다.

타이밍 사양

모든 센서 측정값은 동일한 안정적인 시스템 시계를 기준으로 정확하게 타임스탬프가 지정되어야 합니다. 측정값은 프로세서가 센서 칩에서 메시지를 수신한 때가 아니라 센서가 수량을 측정할 때 타임스탬프가 되어야 합니다. 서로 다른 센서 판독값 간의 타임스탬프 잡음은 1ms 미만이어야 합니다. 동일한 센서 데이터 로그에 기록된 모든 타임스탬프는 불연속성 없이 연속적이어야 합니다. 하드웨어가 재부팅되거나 재설정되고 시스템 시계가 재설정되면 새 로그를 생성하여 새로 수신되는 데이터를 저장해야 합니다.

GPS

GPS 센서는 시간 펄스의 출력과 시간 펄스에 해당하는 GPS 시간과 관련된 메시지를 지원해야 합니다. 이 값은 동일한 GPS 에포크 타임스탬프를 갖는 다른 GPS 데이터 패킷의 타임스탬프를 지정하는 데 사용할 수 있습니다. 기기에는 이러한 시간 펄스를 수신할 입력이 있어야 하며, 선행 또는 후행 에지 (둘 중 적절한 기준)를 수신하면 안정적인 시스템 클럭에서 타임스탬프를 기록해야 합니다. GPS 시간이 포함된 해당 메시지 패킷이 수신되면, 기기는 GPS 시간이 포함된 GPS 센서로부터 내비게이션 메시지를 수신할 때 안정적인 시스템 시계에 대한 타임스탬프를 계산할 수 있습니다.

동영상 / 이미지

이미지 센서는 안정적인 시스템 시계를 기준으로 정확한 시간을 결정하기 위한 하드웨어 타이밍을 지원해야 합니다. 프레임 드롭이 발생하더라도 후속 프레임은 여전히 정확한 타임스탬프를 반영해야 합니다. 타임스탬프는 이미지의 첫 번째 활성 광자를 기준으로 해야 합니다. 이 픽셀에 해당하는 픽셀은 제조업체가 지정해야 합니다.

IMU

IMU (가속도계 및 자이로스코프) 측정값은 수신된 시점이 아닌 측정값을 측정한 시점과 관련하여 타임스탬프가 있어야 합니다.

데이터 사양

스트리트 뷰에 최적화된 카메라와 시스템은 초당 여러 건의 센서별 데이터 측정값을 수집해야 합니다. 다음은 개별 측정에 대한 데이터 세부정보입니다.

IMU 데이터 요구사항

IMU (가속도계 및 자이로스코프) 측정 데이터:

int64 time_accel;    // The time in nanoseconds when the accelerometer
                     // measurement was taken. This is from the same stable
                     // system clock that is used to timestamp the GPS and
                     // image measurements.
// The accelerometer readings in meters/sec^2. The x, y, z refer to axes of
// the sensor.
float accel_x;
float accel_y;
float accel_z;

int64 time_gyro;     // The time in nanoseconds when the gyroscope
                     // measurement was taken. This is from the same stable
                     // system clock that is used to timestamp the GPS and
                     // image measurements.
// The gyro readings in radians/sec. The x, y, z refer to axes of the sensor.
float gyro_x;
float gyro_y;
float gyro_z;

GPS 데이터 요구사항

int64 time;         // Time in nanoseconds, representing when the GPS
                    // measurement was taken, based on the same stable
                    // system clock that issues timestamps to the IMU
                    // and image measurements
double time_gps_epoch;      // Seconds from GPS epoch when measurement was taken
int gps_fix_type;           // The GPS fix type
                            // 0: no fix
                            // 2: 2D fix
                            // 3: 3D fix
double latitude;            // Latitude in degrees
double longitude;           // Longitude in degrees
float altitude;             // Height above the WGS-84 ellipsoid in meters
float horizontal_accuracy;  // Horizontal (lat/long) accuracy in meters
float vertical_accuracy;    // Vertical (altitude) accuracy in meters
float velocity_east;        // Velocity in the east direction represented in
                            // meters/second
float velocity_north;       // Velocity in the north direction represented in
                            // meters/second
float velocity_up;          // Velocity in the up direction represented in
                            // meters/second
float speed_accuracy;       // Speed accuracy represented in meters/second

동영상 요구사항

동영상은 5Hz 이상의 프레임 속도로 녹화되어야 합니다. 카메라는 각 이미지 프레임과 관련된 메타데이터도 기록해야 합니다. 각 이미지마다

int64 time;   // The time in nanoseconds when the image was taken.
              // This is from the same stable system clock that is used to
              // timestamp the IMU and GPS measurements.

// The corresponding frame in the video.
int32 frame_num;

또한 MP4 360 동영상에 다음과 같은 사용자 데이터 Atom을 입력해야 합니다.

  • moov/udta/manu: 카메라 제조업체 (제조업체)이며, 문자열입니다.
  • moov/udta/modl: 문자열 형식의 카메라 모델
  • moov/udta/meta/ilst/FIRM: 문자열로 된 펌웨어 버전
ffprobe 명령어로 동영상을 확인할 수 있습니다.
$ ffprobe your_video.mp4
...
  Metadata:
    make            : my.camera.make
    model           : my.camera.model
    firmware        : v_1234.4321
...

GPS 테스트

노이즈, 안테나 선택, 안테나 구현, LNA, 필터 및 전송선 구현으로 인해 성능 제한이 매우 쉽습니다. 이 섹션에서는 최종 제품이 정확한 데이터 출력을 보장하고 스트리트 뷰 호환 자격을 얻는 데 필요한 성능 요구사항을 충족하는지 확인하는 테스트 프로세스를 정의합니다.

검증 서비스

기기 테스트를 간소화하기 위해 Google에서는 Taoglas Antenna Solutions와 협력하여 Google 스트리트 뷰 검증 GPS RF 서비스를 제공했습니다. Taoglas Antenna Solutions는 5개의 무향 테스트 챔버와 다음 테스트를 수행하는 데 필요한 모든 장비를 갖춘 GPS 기술 분야를 선도하고 있습니다. 그러나 비슷한 서비스 제공업체를 고용하여 다음 테스트를 수행할 수 있습니다.

테스트 설정

테스트는 3D 무향실에서 수행해야 합니다. 이 챔버는 CTIA 무선 무선 기기 테스트 계획[1]의 GPS L1/CA 주파수 1,575.42MHz에 대한 3항 및 4항의 범위 요구사항 및 테스트 현장 특성을 준수해야 합니다. 단, 아래의 다른 요구사항과 충돌하는 경우는 예외입니다.

기기는 GPS 상태 평가를 위해 NMEA GPS 결과 문자열[2]을 외부 컴퓨터에 보고할 수단을 제공해야 합니다. 이는 필수 항목이며 그 외에는 테스트가 불가능합니다.

챔버의 측정/전송 안테나는 축비가 1dB 이상인 오른쪽 원형 편극 (RHCP)이어야 합니다.

GPS 신호 생성기는 GPS 위성 L1/CA 신호 하나를 복제해야 합니다.

다음 테스트 프로세스에서 언급된 신호 강도는 측정 주파수 중심에 쌍극자가 중심을 두고 테스트 대상 기기 (DUT) 위치에서 측정된 오프셋이 3dB이고 정확도가 +/- 1dB인 것으로 정의됩니다. 예를 들어 테스트에서 -120dBm을 요청하면 약실 보정은 DUT 위치에서 측정된 전력을 -117dBm+/-1dB로 표시해야 합니다. 3dB 오프셋은 보정 안테나가 선형 편광 쌍극자임을 고려하기 위한 것입니다.

테스트 데이터 포인트는 기기의 일반적인 사용 사례를 가장 잘 나타내는 반구를 포괄해야 합니다. 제조업체는 광범위한 사용자의 사용을 지원하기 위해 안테나의 신호 전달 범위를 최대화하려고 노력해야 합니다.

통과/실패 판단

통과/실패를 판단하려면 다음과 같은 획득 및 추적 적합성 테스트가 필요합니다. 이러한 테스트는 GPS L1/CA 신호에 대해서만 실행됩니다.

DUT의 특정 샘플에 대해 변경되지 않는 값(예: 데이터 포인트 체류 시간(DPDT) 또는 필수 획득 신호 품질(RASQ))이 결정되면, 이러한 값을 이후 테스트에서 특정 DUT 샘플에 재사용하여 DUT 샘플이 어떤 식으로든 수정되지 않는 한 테스트 시간을 절약할 수 있습니다.

획득 적합성 테스트 절차

간단한 통과/실패 답변을 제공하는 단일 포인트 오프셋 테스트입니다. DUT가 측정 반구의 베이스 평면과 직각을 이루도록, 즉 세타 = 0° 또는 천정에 측정해야 합니다.

-120dBm에 해당하는 사고 신호가 제공되고 DUT가 트리거되어 콜드 스타트를 시작해야 합니다.

GPGSV 메시지[2]를 검사하여 확인된 것처럼 DUT가 테스트 신호를 획득한 후에는 테스트 신호를 끄고 GPGSV 신호가 기록된 신호의 손실을 반영하는 데 필요한 기간을 둬야 합니다. 3초를 더한 이 지속 시간을 데이터 포인트 체류 시간(DPDT)으로 정의합니다.

테스트 신호 전력은 DUT의 취합 민감도 수준으로 설정해야 합니다. 확신할 수 없는 경우 수신기 데이터시트에 명시된 수준을 사용하세요. {DUT에 콜드 스타트를 명령하고 45초 후에 GPGSV 문자열을 평가하여 수신기가 테스트 신호를 획득했는지 확인해야 합니다. 신호가 획득되지 않으면 테스트 신호를 1dB씩 높여야 합니다.} 대괄호 {}로 된 이전 섹션은 테스트 신호를 획득할 때까지 반복되어야 합니다.

DUT의 획득을 허용하는 테스트 신호 수준이 결정되면 GPGSV 문자열을 10초 동안 평가하고 기록된 DUT에 의해 보고된 위성 신호 품질 값을 평가해야 합니다. 이 10개 값은 평균을 낸 후 필수 획득 신호 품질, 즉 RASQ로 정의됩니다.

그런 다음 테스트 신호 강도를 -138dBm로 설정하고 DUT가 획득하도록 허용해야 합니다. 그런 다음 남은 테스트 기간 동안 테스트 신호 강도가 일정하게 유지됩니다.

선택한 반구에서 15°씩 이동할 때마다 수신기는 DPDT 시간 동안 정지 상태로 유지되어야 합니다. 이 기간이 끝나면 GPS NMEA 문자열 GPGSV를 검사해야 합니다. 데이터 포인트를 통과하려면 DUT에서 보고한 위성 신호 품질 값이 이전에 기록된 RASQ 값과 같거나 그보다 높아야 합니다.

테스트를 통과하려면 모든 데이터 포인트가 통과해야 합니다.

적합성 테스트 절차 추적

간단한 통과/실패 답변을 제공하는 단일 포인트 오프셋 테스트입니다. DUT가 측정 반구의 베이스 평면과 직각을 이루도록, 즉 세타 = 0° (천정)에 측정해야 합니다.

-120dBm에 해당하는 사고 신호가 제공되고 DUT가 트리거되어 콜드 스타트를 시작해야 합니다.

DUT가 GPGSV 메시지[2]를 검사하여 표시된 것과 같이 테스트 신호를 획득한 후 테스트 신호를 끄고 GPGSV 신호가 기록된 신호의 손실을 반영하는 데 필요한 기간을 가져야 합니다. 이 기간에서 3초를 더한 값은 데이터 포인트 체류 시간(DPDT)으로 정의됩니다.

테스트 신호가 복원되고 DUT가 위성을 획득할 수 있도록 허용해야 합니다.

사고 테스트 신호는 -151dBm로 낮춰야 합니다.

선택한 반구에서 15°씩 이동할 때마다 수신기는 DPDT 시간 동안 정지 상태로 유지되어야 합니다. 이 기간이 끝나면 GPS NMEA 문자열 GPGSV를 검사하여 수신기가 테스트 신호를 계속 보고 있는지 그리고 해당 데이터 포인트에 대해 기록된 결과를 확인해야 합니다.

테스트를 통과하려면 모든 데이터 포인트가 통과해야 합니다.

참조

[1] CTIA, 'www.ctia.org', 2016년 6월: http://www.ctia.org/initiatives/certification/certification-test-plans

[2] 미국 해양 전자 협회, 'NMEA Standard 0183', 2008년

소프트웨어 구현

Street View Publish API를 통한 업로드 지원이 필요합니다. API에 대한 모든 요청은 여기에 설명된 대로 인증을 받아야 합니다.

스트리트 뷰에 업로드된 모든 이미지의 경우:

  • 이미지 생성 시간 (즉, 이미지가 캡처된 시간)을 지정해야 합니다.
  • 제품 제조업체, 모델, 펌웨어 버전을 보고해야 합니다.
  • 모션 안정화를 사용 중지해야 합니다.
  • 원본 GPS 및 IMU 데이터를 공유해야 합니다 (측정은 수신 시가 아니라 측정이 이루어진 시기와 관련하여 정확하게 타임스탬프가 지정되어야 함).

스트리트 뷰에 업로드된 모든 360도 동영상의 경우:

  • 원격 분석 데이터는 카메라 모션 메타데이터 카메라 모션 메타데이터를 사용하여 전달해야 합니다.
  • 사진 시퀀스가 동영상이 캡처된 올바른 프레임 속도로 인코딩되어야 합니다.

또한 사용자가 앱을 게시하기 전 (최소한 한 번) 신청서에 다음 문구와 문구를 포함하세요.

'이 콘텐츠는 Google 지도에 공개되며 다른 Google 제품에도 표시될 수 있습니다. Google 지도의 사용자 제작 콘텐츠 정책에 대한 자세한 내용은 여기에서 확인하실 수 있습니다.'

예외

개별 요구사항과 일치하지 않지만 이 문서에 명시된 전체 엔드 투 엔드 성능 측정항목을 충족하는 특정 하드웨어 및 소프트웨어 솔루션에 대해서는 예외가 허용될 수 있습니다.

제품 평가

제품 평가에 관심이 있거나 궁금한 점이 있으면 여기에서 Google에 문의해 주세요. Street View Publish API의 360도 동영상 지원 메서드 및 문서는 현재 초대를 통해서만 액세스할 수 있습니다 (2018년 5월). 위에 링크된 양식을 사용하여 액세스를 요청하세요.

Google의 검토는 테스트, 테스트, 베타 사용자 테스트, 승인 단계로 구성됩니다. 각 단계에서 Google은 제품 데이터 품질, 텔레메트리 데이터, 메타데이터, 워크플로 등 각 테스트 데이터 세트를 사용하여 평가합니다. 이때 테스트 데이터 세트는 개발자가 공유한 데이터, Google에서 생성한 데이터 또는 베타 사용자가 제출한 데이터입니다 (테스트 세트 예시는 아래에서 확인 가능, 변경될 수 있음).

  • 스틸 사진
    • 실내에서 360도 파노라마 사진 5장
    • 실외에서 360도 파노라마 사진 5장 (가능한 경우 맑음)
    • 실외 360도 파노라마 사진 5장 (가능한 경우 흐리거나 흐림)
  • 이동 중 (약 30mph 또는 45kph)
    • 시골 풍경을 배경으로 하는 60분짜리 동영상 5개 (5fps)
    • 교외 환경에서 60분 길이의 동영상 (5fps) 5편
    • 도시를 배경으로 60분 길이의 동영상 5개 (5fps)

테스트

먼저 Google 지도에서 게시한 테스트 이미지로 연결되는 링크를 공유해 주시기 바랍니다. 또한 제품이 지원하는 다양한 기기 및 운영체제는 물론 다양한 네트워크 상태 (예: 집, 사무실, 야외)에서 테스트해야 합니다.

테스트

테스트가 성공적으로 완료되면 Google에서 귀하의 팀과 긴밀히 소통하면서 테스트를 시작합니다. Google이 스트리트 뷰를 시작하는 데 도움이 되도록 이미지를 캡처하거나 스트리트 뷰에 업로드하는 방법을 알려주세요.

사용자 테스트

여러분과 Google의 테스트가 모두 성공적으로 완료되면 최소 5명의 베타 사용자를 대상으로 1~2주 동안 테스트를 진행하여 최소한의 테스트만 포함합니다. 테스터와 연결하는 데 도움이 필요한 경우 Google에 알려주시면 관심 있는 사용자에게 연결해 드리겠습니다. 테스터와의 조정 (물류 및 지원을 포함하되 이에 국한되지 않음)에 대한 책임은 귀하에게 있습니다.

승인

테스트에서 긍정적인 결과가 나오면 스트리트 뷰 관련 지원 및 프로모션 콘텐츠 (웹 기반 또는 기타)를 포함한 출시 계획을 공유해야 합니다. 자료를 검토한 후 즉시 의견을 공유하겠습니다.

이러한 자료를 개발할 때는 Google 브랜드 가이드라인을 준수하시기 바랍니다.

승인되면 위의 가이드라인에 따라 스트리트 뷰 호환 배지를 사용하고 스트리트 뷰와 호환되는 제품을 홍보할 수 있습니다. 승인된 각 카메라에 대해 Google은 카메라 기능을 대표하기 위해 마케팅 자료에 파트너의 카메라 및 제품의 표면 이미지를 포함할 수 있습니다.