Workflow 구축

워크플로는 모델 추론 실행, 로직 수행 또는 외부 서비스와의 인터페이스와 같은 특정 작업을 수행하는 블록들로 구성됩니다.

사용 가능한 블록 목록에 대해 더 자세히 알아보려면 블록 문서.

개요

이 가이드는 객체 감지 모델을 실행하고 예측을 집계하며 모델 결과를 시각화하는 네 개의 블록 워크플로를 만드는 방법을 설명합니다. 다음은 최종 워크플로 템플릿 입니다.

감지, 집계 및 시각화 워크플로

블록 연결

빌드를 시작하기 전에 블록 연결 방식이 어떻게 되는지 이해하는 것이 중요합니다.

어떤 위치에 블록을 추가하려면 이전 블록을 입력으로 사용해야 합니다. 예를 들어 위에 표시된 워크플로에서 속성 정의 블록은 Object Detection 블록 다음에 옵니다. 왜냐하면 속성 정의 블록이 모델 블록을 입력으로 사용하기 때문입니다. 경계 상자 시각화 블록은 오른쪽에 있습니다. 이는 해당 블록의 출력을 사용하지 않지만 모델 출력을 참조하기 때문입니다. 속성 정의 블록이지만 모델 출력을 참조합니다.

모델 비교 워크플로

위 예제 워크플로에서는 각 분기가 런타임에 병렬로 실행되고 다른 분기 블록들을 입력으로 의존하지 않기 때문에 네 개의 개별 경로가 있습니다.

워크플로 구성

객체 감지 모델

먼저 객체 감지 모델 블록을 추가하세요. COCO에서 학습된 YOLOv8n과 같은 공개 사전 학습 모델이나 워크스페이스의 파인튜닝된 모델 중에서 선택할 수 있습니다. COCO또는 워크스페이스의 파인튜닝된 모델을 선택할 수 있습니다. 여기서는 사전 학습된 yolov8n 모델을 사용해 사람과 차량을 감지하겠습니다.

객체 감지 블록에는 모델이 추론할 대상을 결정하는 필수 이미지 매개변수가 있습니다. 여러 선택적 매개변수가 있으며 핵심 항목은 아래에 자세히 설명되어 있습니다:

  • 클래스 필터: 모델이 반환할 클래스 목록입니다. 참고: 모델은 항상 학습된 클래스만 반환하므로 불필요한 클래스를 필터링할 수 있습니다.

  • 신뢰도(Confidence): 해당 신뢰도 이하의 객체는 반환되지 않습니다.

  • IoU 임계값: 더 높은 임계값은 더 많은 중복 예측을 반환합니다. 0.9는 90% 이하의 중첩을 가진 객체를 반환하며, 0.1은 10% 이상 중첩되는 객체는 포함하지 않는다는 의미입니다.

  • 최대 검출 수(Max Detections): 모델이 반환할 수 있는 객체의 최대 수

  • 클래스 무관 NMS(Class Agnostic NMS): 중복 필터링이 동일 클래스끼리만 비교해서 제외할지, 모든 클래스를 비교해서 제외할지 여부

속성 정의

속성 정의 블록을 사용하면 이미지 크기, 예측된 클래스 또는 감지된 객체 수와 같은 데이터에서 관련 정보를 추출할 수 있습니다. 이 예제에서는 객체 감지 모델이 찾은 객체 수를 집계할 것입니다.

속성 데이터 속성에 대해 모델 예측을 참조하세요. 그리고 작업에서 항목 수 세기(Count Items)를 선택하세요. 이 구성은 객체 감지 모델이 만든 예측 수를 반환합니다.

경계 상자 시각화

모델 결과를 시각화하려면 경계 상자 시각화 블록을 추가하세요. 이미지 매개변수에 대해 입력 이미지를 선택하세요. 예측에는 모델 결과를 선택하세요. 선택적 구성 속성을 사용하여 경계 상자의 색상과 크기를 변경할 수 있습니다. 이미지

레이벨 시각화

경계 상자를 그리는 것 외에도 예측의 클래스 이름을 표시하고자 합니다. 이를 위해 경계 상자 시각화 다음에 레이벨 시각화 블록을 추가하세요. 동일한 이미지에 경계 상자와 레이블을 모두 그리려면 참조 입력 이미지를 bounding_box_visualization 이미지로 설정해야 하며, 입력 이미지를 참조하지 마세요. 이렇게 하면 레이블이 경계 상자 위에 그려집니다.

선택적 텍스트 매개변수를 변경하여 표시 텍스트를 클래스 이름, 신뢰도, 또는 클래스 이름 및 신뢰도로 변경할 수 있습니다.

변경 사항 저장

워크플로 구성이 완료되면 "Save Workflow"를 클릭하세요. 워크플로를 배포한 경우 저장된 워크플로는 워크플로가 배포된 모든 디바이스에서 실행되기 시작합니다.

이제 워크플로 구성이 완료되었으니 테스트할 시간입니다.

Last updated

Was this helpful?