> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dwe.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Coverage Mapping (VSLAM)

## 개요

<Warning>
  **VSLAM은 베타 제품입니다.** 적극적으로 개선 및 테스트가 진행되고 있지만,
  간헐적인 버그, 성능 저하 또는 예기치 않은 동작이 발생할 수 있습니다.
  버그 리포트와 기능 요청은 [support@dwe.ai](mailto:support@dwe.ai)로 보내주세요.
</Warning>

DeepWater Desktop은 환경에 대한 조밀한 재구성을 자동으로 생성할 수 있으며, 이는 실시간 Coverage Mapping 및 측정에 유용합니다.

## 요구 사항

* SVC Pro 모듈 - dweOS Pro 실행
* 토프사이드 컴퓨터/노트북 - DeepWater Desktop 실행

## 시작 매개변수

<Steps>
  <Step title="네트워크 프로토콜 변경">
    "Add Stream" 대화 상자를 열고, 카메라를 선택한 후 Network Protocol을 Coverage Mapping으로 전환하세요. 자세한 방법은 [빠른 시작 가이드](/ko/dw-desktop/quickstart)를 참고하세요.

    <Frame caption="">
      <img width="400px" src="https://mintcdn.com/deepwaterexplorationinc/XQu0YI4ZP0f0zWio/dw-desktop/guides/images/vslam/dw-desktop-vslam-1.png?fit=max&auto=format&n=XQu0YI4ZP0f0zWio&q=85&s=d13d554be6d25dbf8a23f0360d013bf1" data-path="dw-desktop/guides/images/vslam/dw-desktop-vslam-1.png" />
    </Frame>
  </Step>

  <Step title="추적 및 필터 매개변수 조정 (선택 사항)">
    <Info>
      최상의 즉시 사용 경험을 위해서는 기본 매개변수를 그대로 사용하세요. 수동 조정은
      전적으로 선택 사항이며 고급 성능 최적화를 위해 마련된 기능입니다.
    </Info>

    VSLAM 추적 성능은 추적 및 voxel 필터 매개변수를 조정하여 사용 환경에 최적화할 수 있습니다.

    <Card title="추적 및 필터 매개변수" icon="sliders" href="/ko/dw-desktop/guides/vslam-parameters" horizontal>
      VSLAM 추적 및 voxel 필터 매개변수 튜닝에 대한 참조 자료입니다.
    </Card>
  </Step>

  <Step title="스트림 시작">
    "Start Stream" 버튼을 누르세요. 스트림이 시작되면 DeepWater Desktop이 데이터를 처리하기 시작합니다.
    카메라가 움직임에 따라 3D 포인트 클라우드가 생성되는 것을 볼 수 있습니다.

    데이터를 후처리할 계획이라면 여기서 녹화도 함께 시작하세요.

    <Frame caption="">
      <video playsinline="true" muted="muted" autoplay="autoplay" loop="loop" preload="metadata" type="video/mp4" src="https://dwe.ai/cdn/shop/videos/c/vp/ced793c107f24d01881ef1f911c640db/ced793c107f24d01881ef1f911c640db.HD-1080p-7.2Mbps-85197215.mp4?v=0" />
    </Frame>
  </Step>
</Steps>

## 루프 클로저(Loop closures)

모든 SLAM 시스템은 시간이 지남에 따라 오차가 누적됩니다. 이를 보정하기 위해 루프 클로저(loop closure)라는 개념을 사용합니다. 즉, 동일한 위치를 서로 다른 시점에 동일한 자세로 다시 관찰하는 것입니다.
DeepWater Desktop은 루프 클로저를 자동으로 인식하고, 이전에 측정된 자세와 포인트 클라우드를 그에 맞춰 보정합니다.

루프 클로저를 발생시키려면 이전 자세로 돌아가 같은 방향을 바라보기만 하면 됩니다. 우측 하단에 메시지가 나타납니다:

<Frame caption="">
  <img width="250px" src="https://mintcdn.com/deepwaterexplorationinc/XQu0YI4ZP0f0zWio/dw-desktop/guides/images/vslam/dw-desktop-vslam-loop-closure.png?fit=max&auto=format&n=XQu0YI4ZP0f0zWio&q=85&s=a729873ad91a59c98e980d2519bf7b56" data-path="dw-desktop/guides/images/vslam/dw-desktop-vslam-loop-closure.png" />
</Frame>

루프 클로저가 발생했음을 알리는 메시지가 표시된 후,
포인트 클라우드와 이전 자세에 대한 전역 보정이 이루어집니다.

<Frame caption="오차가 누적된 루프 클로저 이전의 포인트 클라우드">
  <img width="400px" src="https://mintcdn.com/deepwaterexplorationinc/XQu0YI4ZP0f0zWio/dw-desktop/guides/images/vslam/dw-desktop-vslam-pre-loop-closure.png?fit=max&auto=format&n=XQu0YI4ZP0f0zWio&q=85&s=fad615fd06e541445793ba14d0911256" data-path="dw-desktop/guides/images/vslam/dw-desktop-vslam-pre-loop-closure.png" />
</Frame>

<br />

<Frame caption="자세가 보정된 루프 클로저 이후의 포인트 클라우드">
  <img width="400px" src="https://mintcdn.com/deepwaterexplorationinc/XQu0YI4ZP0f0zWio/dw-desktop/guides/images/vslam/dw-desktop-vslam-post-loop-closure.png?fit=max&auto=format&n=XQu0YI4ZP0f0zWio&q=85&s=65d7803a4e9abcca452e2212203667f7" data-path="dw-desktop/guides/images/vslam/dw-desktop-vslam-post-loop-closure.png" />
</Frame>

## 맵

장시간 추적을 잃은 경우, 시스템은 처음부터 새로운 맵을 생성합니다. 이전 맵은 모두 메모리에 저장되며,
우측 상단의 라벨을 클릭하여 확인할 수 있습니다:

<Frame caption="강조 표시된 맵이 현재 추가 중인 맵입니다.">
  <img width="250px" src="https://mintcdn.com/deepwaterexplorationinc/XQu0YI4ZP0f0zWio/dw-desktop/guides/images/vslam/dw-desktop-vslam-map-selection.png?fit=max&auto=format&n=XQu0YI4ZP0f0zWio&q=85&s=94f7e91e338e8955ffa17ad54619f551" data-path="dw-desktop/guides/images/vslam/dw-desktop-vslam-map-selection.png" />
</Frame>

짧은 시간 동안 추적을 잃는 것에 대해서는 걱정하지 마세요. 맵은 가능할 때 자동으로 병합됩니다. 중첩되는 영역이 발견되면 다음과 같은 메시지가 표시됩니다:

<Frame caption="">
  <img width="250px" src="https://mintcdn.com/deepwaterexplorationinc/XQu0YI4ZP0f0zWio/dw-desktop/guides/images/vslam/dw-desktop-vslam-map-merge.png?fit=max&auto=format&n=XQu0YI4ZP0f0zWio&q=85&s=b6d1fa6a408c4f97b30caf446e75a5e9" data-path="dw-desktop/guides/images/vslam/dw-desktop-vslam-map-merge.png" />
</Frame>

잠시 기다리면 포인트 클라우드에 변경 사항이 반영됩니다.

자동 맵 생성은 <kbd>Z</kbd> 키 또는 Map 버튼을 눌러 켜고 끌 수 있습니다. 비활성화된 상태에서는 시스템이 기존 맵을 기준으로 자기 위치만 파악하려 합니다.

<Frame caption="">
  <img width="250px" src="https://mintcdn.com/deepwaterexplorationinc/XQu0YI4ZP0f0zWio/dw-desktop/guides/images/vslam/dw-desktop-vslam-togglemap.png?fit=max&auto=format&n=XQu0YI4ZP0f0zWio&q=85&s=02e4f48e93132e0b88bad9f76a4bf613" data-path="dw-desktop/guides/images/vslam/dw-desktop-vslam-togglemap.png" />
</Frame>

## 도구 및 컨트롤

### 내비게이션

Scene 뷰가 포커스된 상태에서, 가상 카메라를 이동하려면 다음 컨트롤을 사용하세요:

| 컨트롤                                                 | 동작          |
| --------------------------------------------------- | ----------- |
| <kbd>W</kbd> / <kbd>S</kbd>                         | 앞으로 / 뒤로 이동 |
| <kbd>A</kbd> / <kbd>D</kbd>                         | 왼쪽 / 오른쪽 이동 |
| <kbd>E</kbd> / <kbd>Q</kbd>                         | 위 / 아래 이동   |
| <kbd><Icon icon="computer-mouse" /> 우클릭</kbd> + 드래그 | 뷰 패닝        |

<Frame caption="이 버튼을 눌러 카메라 위치를 초기화할 수 있습니다.">
  <img width="250px" src="https://mintcdn.com/deepwaterexplorationinc/XQu0YI4ZP0f0zWio/dw-desktop/guides/images/vslam/dw-desktop-vslam-resetcamera.png?fit=max&auto=format&n=XQu0YI4ZP0f0zWio&q=85&s=5ca0ce440191a9a4d0e9f1e267545b01" data-path="dw-desktop/guides/images/vslam/dw-desktop-vslam-resetcamera.png" />
</Frame>

### Ruler

<kbd>Space</kbd>를 눌러 스트림을 일시 정지하세요.
<kbd>R</kbd>을 누르거나 우측 하단의 Ruler 아이콘을 선택하면 Ruler 도구가 활성화됩니다. 두 점을 선택하면 그 사이의 거리가 표시됩니다.

<Frame caption="">
  <video playsinline="true" muted="muted" autoplay="autoplay" loop="loop" preload="metadata" type="video/mp4" src="https://dwe.ai/cdn/shop/videos/c/vp/b687eeb8036540dc88ba9982ba5aa4b4/b687eeb8036540dc88ba9982ba5aa4b4.HD-1080p-7.2Mbps-85197296.mp4?v=0" />
</Frame>

### 컬러 모드

<kbd>C</kbd>를 누르거나 우측 하단의 컬러 팔레트 아이콘을 선택하면 Texture와 Coverage 보기 모드 간을 전환할 수 있습니다.

<Frame caption="Texture mode는 각 포인트에 대해 관찰된 평균 RGB 색상을 표시합니다.">
  <img width="400px" src="https://mintcdn.com/deepwaterexplorationinc/XQu0YI4ZP0f0zWio/dw-desktop/guides/images/vslam/dw-desktop-vslam-texture-mode.png?fit=max&auto=format&n=XQu0YI4ZP0f0zWio&q=85&s=7ce4cda80da8dfe376ea4ffe5d4e2342" data-path="dw-desktop/guides/images/vslam/dw-desktop-vslam-texture-mode.png" />
</Frame>

<br />

<Frame caption="Coverage 모드는 각 포인트가 관찰된 가장 가까운 거리를 표시합니다. 빨강은 더 가깝고, 파랑은 더 멀다는 의미입니다. 뎁스 뷰와 동일한 색상 매핑을 사용합니다.">
  <img width="400px" src="https://mintcdn.com/deepwaterexplorationinc/XQu0YI4ZP0f0zWio/dw-desktop/guides/images/vslam/dw-desktop-vslam-coverage-mode.png?fit=max&auto=format&n=XQu0YI4ZP0f0zWio&q=85&s=db74254149ca6e0ecc86097f67728bff" data-path="dw-desktop/guides/images/vslam/dw-desktop-vslam-coverage-mode.png" />
</Frame>

Coverage 모드는 어떤 영역이 디테일이 부족한지 더 쉽게 확인할 수 있게 해줍니다.

| 색상                                                                           | 관찰 거리  | 디테일                        |
| ---------------------------------------------------------------------------- | ------ | -------------------------- |
| <Badge color="orange" stroke>주황</Badge> <Badge color="red" stroke>빨강</Badge> | 가까움    | 좋은 디테일                     |
| <Badge color="green" stroke>초록</Badge> <Badge color="blue" stroke>파랑</Badge> | 멀리서 관찰 | 낮은 디테일 — 더 가까이서 다시 촬영하면 좋음 |

## 문제 해결

### UDP 수신 버퍼 구성

UDP 수신 버퍼 크기가 부족하면 RTP 패킷이 폐기될 수 있습니다. 기본값은 전체 프레임을 제대로 캡처하기에 부족한 경우가 많으므로 수동으로 늘리는 것을 권장합니다.

<Tabs>
  <Tab title="Linux" icon="linux">
    OS 최대 수신 버퍼 크기를 8MB로 설정하는 것을 권장합니다:

    ```bash theme={null}
    sudo sysctl -w net.core.rmem_max=8338608 
    sudo sysctl -w net.core.rmem_default=8338608 
    ```
  </Tab>

  <Tab title="Windows" icon="windows">
    <Steps>
      <Step>
        장치 관리자를 열고 SVC가 연결된 네트워크 어댑터를 우클릭하세요. "속성" 페이지를 엽니다.

        <Frame caption="">
          <img width="400px" src="https://mintcdn.com/deepwaterexplorationinc/XQu0YI4ZP0f0zWio/dw-desktop/guides/images/vslam/dw-desktop-vslam-device-manager.png?fit=max&auto=format&n=XQu0YI4ZP0f0zWio&q=85&s=02bd8713c60b218202cdc24e28cd38d2" data-path="dw-desktop/guides/images/vslam/dw-desktop-vslam-device-manager.png" />
        </Frame>
      </Step>

      <Step>
        "고급" 탭으로 이동한 다음 "Receive Buffers"를 선택하세요. 1024 또는 허용 가능한 가장 높은 값으로 설정하세요.

        <Frame caption="">
          <img width="400px" src="https://mintcdn.com/deepwaterexplorationinc/XQu0YI4ZP0f0zWio/dw-desktop/guides/images/vslam/dw-desktop-vslam-receive-buffers.png?fit=max&auto=format&n=XQu0YI4ZP0f0zWio&q=85&s=ae6fa1b22d8b7a75f7fe6ab424a524e8" data-path="dw-desktop/guides/images/vslam/dw-desktop-vslam-receive-buffers.png" />
        </Frame>
      </Step>
    </Steps>
  </Tab>
</Tabs>
