Object Detection vTool#
Object Detection vTool은 Image 입력 핀을 통해 수신한 이미지의 객체를 분류할 수 있습니다. 결과는 InferenceImage, BBoxes_px, Classes, Scores 출력 핀을 통해 출력됩니다. 감지된 각 객체 주위에는 경계 상자(bounding box)가 그려집니다.
감지 전에 ROI Creator vTool을 사용하여 관심 영역을 지정하는 경우, Object Detection vTool은 Roi 입력 핀을 통해 ROI 데이터를 받습니다. 이 경우 관심 영역에서만 감지가 수행됩니다. 부수적인 효과로 처리 속도가 빨라집니다.
Object Detection vTool 라이선스를 구매하려면 Basler 웹사이트를 방문하십시오.

작동 원리#
사람이나 장면 내의 기타 요소 등 이미지에서 특정 객체를 감지하고 식별하려는 경우를 가정해 보겠습니다.
스키 장비를 착용한 여섯 명의 어린이가 표시된 입력 이미지입니다.

사람과 스키 장비를 비롯한 다양한 객체를 감지하도록 학습된 모델을 로드하여 vTool을 구성합니다.

다음으로, 감지하고 분할할 클래스를 선택할 수 있습니다. 일부 모델은 사용 사례에 정확히 맞춰져 있을 수 있습니다. 이 경우 원하는 모든 클래스가 이미 선택되어 있습니다.

vTool을 구성한 후 추론 프로세스를 시작하는 레시피를 실행합니다. vTool은 모델을 사용하여 이미지를 분석하고 존재하는 객체를 식별 및 찾습니다. 분석이 완료되면 분할 결과가 반환됩니다. 여기에는 이미지에서 감지된 각 개별 객체 인스턴스에 대한 경계 상자, 클래스 레이블, 신뢰도 점수가 포함됩니다.
결과를 보여주는 핀 데이터 뷰입니다:

person으로 레이블이 지정된 보라색 경계 상자 내에서 6명이 사람으로 감지되었습니다. 마찬가지로 skis로 레이블이 지정된 경계 상자 내에서 스키 5개가 감지되었습니다.
상세 출력
- Bounding Box: 경계 상자는 감지된 객체 주변에 그려지는 직사각형입니다. 각 경계 상자에 대해 중심 픽셀, 너비, 높이, 회전이 출력됩니다.
- Class: person, skis
클래스 레이블은 모델이 경계 상자의 객체를 사람 또는 스키로 식별했음을 보여줍니다. - Score: 예를 들어 0.890817과 같은 점수 값은 모델이 감지에 대해 얼마나 확신하는지(예: 89.08%)를 나타냅니다. 1.0에 가까운 높은 점수는 더 높은 수준의 신뢰도를 나타냅니다.
vTool 설정하기#
Object Detection vTool을 구성하려면:

- vTool Settings 영역의 Recipe Management 창에서 Open Settings를 클릭하거나 vTool을 더블 클릭합니다.
Object Detection 대화상자가 열립니다. - 다음에서 Server Selection 영역에서 연결할 서버를 선택합니다.
서버에 연결하려면 서버가 실행 중이어야 합니다.- 옵션 1: Triton Inference Server의 IP 주소와 포트를 수동으로 입력합니다.
- 옵션 2: 드롭다운 목록에서 서버의 IP 주소/호스트 이름과 포트를 선택합니다.
- Connect를 클릭하여 연결을 설정합니다.
그러면 vTool이 사용 가능한 모델을 로드합니다. - 다음에서 모델 선택 영역에서 드롭다운 목록의 원하는 모델이 포함된 번들을 선택합니다.
번들을 선택한 후, 드롭다운 목록 아래의 정보가 번들 세부 정보로 채워져 올바른 번들을 선택했는지 확인할 수 있습니다.
- 원하는 번들이 목록에 없는 경우 클릭하세요. 새 모델 배포 드롭다운 목록에서.
이것은 다음을 엽니다. pylon AI Agent 더 많은 모델을 배포할 수 있습니다.
새 모델을 배포한 후 다음 버튼을 클릭해야 합니다. Refresh button. -
Detection Settings 영역에서 Select Classes를 클릭하여 분류할 클래스를 선택합니다.
사용 가능한 클래스가 포함된 대화상자가 열립니다. 기본적으로 모든 클래스가 선택되어 있습니다. 원하는 만큼 클래스를 선택할 수 있습니다.정보
이 영역에서 사용할 수 있는 파라미터는 선택한 모델에 따라 다릅니다. 일부 파라미터는 특정 모델을 선택한 경우에만 사용할 수 있습니다(예: IOU Threshold). 기본값은 모델에서 제공됩니다.
-
감지 설정에서 다른 옵션을 지정합니다.
- Number of objects: 감지할 객체의 최대 수를 지정하거나 Unlimited를 선택할 수 있습니다.
이 제한은 각 클래스에 개별적으로 적용됩니다. 이미지에 여기에 지정된 것보다 많은 객체가 있는 경우 스코어가 가장 높은 일치 항목이 감지됩니다. - Maximum/Minimum height: 높이별로 바운딩 박스를 필터링하려는 경우 적절한 값을 지정합니다. 바운딩 박스의 높이는 객체의 높이에 해당하므로 이를 통해 원하는 크기의 객체만 감지할 수 있습니다.
- Maximum/Minimum width: 너비별로 바운딩 박스를 필터링하려는 경우 적절한 값을 지정합니다. 바운딩 박스의 높이는 객체의 너비에 해당하므로 이를 통해 원하는 크기의 객체만 감지할 수 있습니다.
- Confidence threshold: Confidence는 이미지의 객체가 선택한 클래스를 얼마나 잘 대표하는지를 나타내는 신경망용 계수입니다. 값이 높을수록 신뢰도가 높고 오탐지가 줄어듭니다.
- Edges: 박스의 각 모서리를 지정된 픽셀 수만큼 이동하여 감지된 객체 주변의 바운딩 박스를 확장할 수 있습니다. 이렇게 하면 객체가 박스 안에 완전히 들어가도록 보장할 수 있습니다.
- IOU Threshold: 일부 바운딩 박스가 겹칠 수 있습니다. 이 파라미터를 사용하여 바운딩 박스를 병합할지 여부를 제어할 수 있습니다. 값이 낮을수록 허용치가 낮아지며 대부분의 바운딩 박스가 병합됩니다.
- Number of objects: 감지할 객체의 최대 수를 지정하거나 Unlimited를 선택할 수 있습니다.
-
OK를 클릭합니다.
pin data view에서 object detection 결과를 확인할 수 있습니다. 여기에서 표시할 출력을 선택할 수 있습니다.
입력#
이미지#
Camera vTool 또는 이미지를 출력하는 vTool(예: Image Format Converter vTool)에서 직접 이미지를 허용합니다.
- 데이터 형식: 이미지
- 이미지 포맷: 8비트~16비트 컬러 이미지
ROI#
ROI Creator vTool 또는 직사각형을 출력하는 기타 vTool에서 ROI를 생합니다. 여러 개의 직사각형이 입력되는 경우, 첫 번째 직사각형이 단일 ROI로 사용됩니다.
- 데이터 타입: RectangleF, RectangleF Array
출력#
Starter vTools와 함께 vTool을 사용하려면 출력 핀의 데이터 타입을 다중 값 데이터에서 단일 값 데이터로 전환할 수 있습니다. 이렇게 하려면 Features - All 창에서 Data Type Selector 파라미터를 사용합니다.
InferenceImage#
결과를 시각화하기 위해 모든 입력 이미지에 대해 감지된 객체 주변에 바운딩 박스가 그려진 이미지를 반환합니다.
- 데이터 형식: 이미지
BBoxes_px#
감지된 모든 객체에 대한 바운딩 박스를 반환합니다. 각 바운딩 박스는 중심 픽셀의 좌표, 너비 및 높이(x_center, y_center, width, height)로 정의됩니다. 바운딩 박스 출력은 다른 vTools의 Roi 입력 핀의 입력으로 사용할 수 있습니다.
- Data type: RectangleF Array
Classes#
감지된 객체의 클래스 레이블을 반환합니다.
- 데이터 타입: String Array
Scores#
감지된 각 객체의 confidence 스코어를 반환합니다.
- 데이터 타입: Float Array
Payload#
평가를 위한 Inference Server의 성능과 관련된 추가 정보를 반환합니다. 이 출력 핀은 Debug Settings 파라미터 그룹의 Features - All 창에서 활성화한 경우에만 사용할 수 있습니다.
- 데이터 타입: String
관련 vTools#
일반적인 선행 vTools#
Typical Successors#
- Barcode Reader vTool
- Image Smoothing vTool (예: 프라이버시 블러 처리용)