# Lens Studio

Roboflow에서 학습된 모델이 준비되면, 모델을 SnapML에 배포할 수 있습니다.

## 작업 지원

다음 작업 유형은 호스팅 API에서 지원됩니다:

| 작업 유형       | Lens Studio 지원 |
| ----------- | -------------- |
| 객체 감지       | ✅              |
| 분류          |                |
| 인스턴스 세그멘테이션 |                |
| 시맨틱 세그멘테이션  |                |

*참고: Roboflow Train 3.0을 사용해 학습된 모델만 지원됩니다. 모델과 연결된 Versions 페이지를 확인하여 모델이 Roboflow Train 3.0으로 학습되었는지 확인할 수 있습니다.*

## Lens Studio에 모델 배포하기

Roboflow 사이드바에서 “Deploy”를 클릭한 다음, “Use with Snap Lens Studio” 상자가 보일 때까지 아래로 스크롤합니다. “Export to Lens Studio”를 클릭합니다.

<figure><img src="/files/18ab1314b7444338bab12d9a5adc3f582bccd84d" alt=""><figcaption></figcaption></figure>

이 버튼을 클릭하면 모델의 클래스에 대한 정보를 보여주는 팝업이 나타납니다.

이 클래스들은 순서대로 정렬되어 있으며, 다음 단계에서 Lens Studio에서 모델을 구성할 때 사용됩니다. 나중에 사용할 수 있도록 클래스 목록을 기록해 두세요.

또한, 두 개의 파일이 다운로드됩니다:

1. Roboflow Lens Studio 템플릿은 최소한의 설정으로 애플리케이션에서 가중치를 사용할 수 있게 해 주며,
2. 그리고 모델 가중치입니다.

Roboflow Lens Studio 템플릿은 100 MB이므로, 인터넷 연결 상태에 따라 템플릿 다운로드에 몇 분이 걸릴 수 있습니다.

템플릿이 준비되면 Lens Studio에서 모델 설정을 시작할 수 있습니다.

### Lens Studio에서 모델 구성하기

아직 Lens Studio를 설치하지 않았다면 [Snap AR 웹사이트](https://ar.snap.com/lens-studio) 로 이동하여 최신 버전의 Lens Studio를 다운로드하세요. Lens Studio가 설치되면 모델 구성을 시작할 준비가 된 것입니다.

이 섹션에서는 Roboflow Lens Studio 템플릿을 사용합니다. 하지만 [MLController 컴포넌트](https://docs.snap.com/lens-studio/references/templates/ml/object-detection).

로 `Roboflow-Lens-Template.Isproj` 파일을 여세요.

<figure><img src="/files/587635ae00d3c80da044a36de3e15457d364b14f" alt=""><figcaption></figcaption></figure>

애플리케이션을 열면 다음과 비슷한 화면이 보일 것입니다:

<figure><img src="/files/a203b1b32304d83b56c1c0783e22a94550ce8683" alt=""><figcaption></figcaption></figure>

기본적으로 템플릿은 동전 개수 세기 모델을 사용합니다. 이 예제에서는 앞서 만든 카드 놀이 모델을 사용하겠습니다. 이 애플리케이션은 각 예측 주위에 박스를 그리지만, Lens Studio를 사용해 자신만의 필터와 로직을 추가할 수 있습니다.

Lens Studio의 왼쪽 사이드바 상단에 있는 “ML Controller” 상자를 클릭합니다:

<figure><img src="/files/e31a73906813314610e717163270f13234189628" alt=""><figcaption></figcaption></figure>

그러면 미리보기 창 옆의 애플리케이션에서 사용할 모델을 구성할 수 있는 상자가 열립니다:

<figure><img src="/files/d191f535d9f397fbde08bc404dc965eda44bf1e9" alt=""><figcaption></figcaption></figure>

데모 애플리케이션은 동전 카운터 예제에 맞게 구성되어 있습니다. 자신의 모델을 사용하려면 먼저 “ML Model” 상자를 클릭합니다:

<figure><img src="/files/32074e33971eb57cd4164f4bcc6d0475e77d11ef" alt=""><figcaption></figcaption></figure>

그런 다음 Roboflow에서 다운로드한 가중치를 팝업 상자에 드래그합니다:

{% embed url="<https://blog.roboflow.com/content/media/2023/06/Screen-Recording-2023-06-21-at-11.02.58.mp4>" %}

가중치를 드래그하면 몇 가지 구성 옵션이 표시됩니다. 팝업의 “Inputs” 섹션에서 각 “Scale” 값을 0.0039로 설정합니다. bias 값은 기본값 그대로 두세요.

<figure><img src="/files/963b86f9bb659d35f640eb485dc61a1a5fdae3dd" alt=""><figcaption></figcaption></figure>

그런 다음 “Import”를 클릭하여 모델을 가져옵니다.

### Lens Studio에서 클래스 구성하기

이제 모델이 Lens Studio에 로드되었습니다. 한 가지 단계가 더 남았습니다: 모델이 어떤 클래스를 사용하는지 알려주는 것입니다.

이전에 사용한 ML Model 버튼 아래의 “Class Settings” 탭에서 클래스 목록을 볼 수 있습니다. 이것들은 데모 프로젝트의 동전 카운터 예제에 맞게 구성되어 있지만, 자신만의 Lens Studio 프로젝트를 사용하고 있다면 이 값들은 비어 있을 것입니다.

<figure><img src="/files/deedbaddc143055bc366a2b5ec25a28ec5fe4a5c" alt=""><figcaption></figcaption></figure>

여기서는 클래스 이름과 레이블을 설정해야 합니다. 레이블은 Roboflow 대시보드에 표시된 순서대로 입력해야 합니다. 다음은 카드 놀이 애플리케이션용 값 중 하나를 설정하는 예시입니다:

<figure><img src="/files/f0620ae657f541d5a997bd8a8d0f2f7db35e1a56" alt=""><figcaption></figcaption></figure>

모델의 각 클래스에 대해 이 구성을 해야 합니다. Snap이 모델 가중치의 정보를 해석할 수 있도록 모델의 모든 클래스를 지정해야 합니다.

이제 애플리케이션을 사용할 준비가 되었습니다! “Preview” 상자를 사용해 컴퓨터에서 애플리케이션을 실행할 수 있고, 또는 [Snapchat과 페어링 기능](https://docs.snap.com/lens-studio/references/guides/general/pairing-to-snapchat).


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.roboflow.com/roboflow/roboflow-ko/deploy/sdks/lens-studio.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
