Deep Learning Object Detector
라이브러리:
Computer Vision Toolbox /
Analysis & Enhancement
설명
Deep Learning Object Detector 블록은 블록 파라미터를 통해 지정된 훈련된 객체 검출기를 사용하여 입력 영상에 대한 경계 상자, 클래스 레이블 및 점수를 예측합니다. 이 블록을 사용하면 MAT 파일 또는 MATLAB® 함수에서 사전 훈련된 객체 검출기를 Simulink® 모델로 불러올 수 있습니다. 이 블록은 Simulink에서 detector 객체를 사용하기 위한 그래픽 인터페이스를 제공합니다. Deep Learning Object Detector 블록의 일부 파라미터를 활성화하려면 해당 파라미터를 지원하는 객체 검출기를 선택해야 합니다. 예를 들어, 이 블록에 yolov2ObjectDetector 객체를 사용하면 연결된 detect 객체 함수의 이름-값 인수와 비슷한 파라미터를 선택할 수 있습니다.
예제
Lane and Vehicle Detection in Simulink Using Deep Learning
Use deep convolutional neural networks inside a Simulink® model to perform lane and vehicle detection. This example takes the frames from a traffic video as an input, outputs two lane boundaries that correspond to the left and right lanes of the ego vehicle, and detects vehicles in the frame.
(Deep Learning Toolbox)
포트
입력
H×W×C 숫자형 배열로, 여기서 H, W, C는 각각 영상의 높이, 너비, 채널 개수입니다. 시간 스텝당 하나의 영상만 입력으로 허용됩니다.
출력
입력 영상 내에서 검출된 객체의 위치로, M×4 행렬 또는 M×5 행렬로 반환됩니다. M은 영상에서 검출된 경계 상자의 개수입니다. 최대 검출 개수 파라미터를 지정하여 상한을 크기 M으로 설정할 수 있습니다.
다음 표에서는 경계 상자의 형식을 설명합니다.
| 경계 상자 | Description |
|---|---|
축 정렬된 사각형 | 공간 좌표에서 M×4 숫자형 행렬로 정의되며, 행의 형식은 [x y w h]입니다. 여기서
|
회전된 사각형 | 공간 좌표에서 M×5 숫자형 행렬로 정의되며, 행의 형식은 [xctr yctr w h yaw]입니다. 여기서
|
자세한 내용은 Datastores for Deep Learning (Deep Learning Toolbox) 항목을 참조하십시오.
경계 상자의 레이블로, M×1 열거형 벡터로 반환됩니다. M은 영상에서 검출된 경계 상자의 개수입니다.
각 레이블의 검출 신뢰 점수로, M×1 벡터로 반환됩니다. M은 영상에서 검출된 경계 상자의 개수입니다. 점수가 높을수록 검출의 신뢰도가 더 높음을 의미합니다.
파라미터
아래 옵션에서 detector 객체의 출처를 선택합니다.
MAT 파일에서 가져온 검출기— MAT 파일에서 detector 객체를 가져옵니다. 예를 들어,yolov2ObjectDetector객체가 포함된 MAT 파일을 선택합니다.MATLAB 함수에서 가져온 검출기— MATLAB 함수에서 detector 객체를 가져옵니다. 예를 들어, 훈련된yolov2ObjectDetector객체를 반환하는 함수vehicleDetectorYOLOv2를 지정합니다.
가져온 검출기는 다음 지원되는 객체 중 하나여야 합니다.
rcnnObjectDetectorfastRCNNObjectDetectorfasterRCNNObjectDetectorrtmdetObjectDetectorssdObjectDetectoryolov2ObjectDetectoryolov3ObjectDetectoryolov4ObjectDetectoryoloxObjectDetector
프로그래밍 방식 사용
블록 파라미터: Detector |
| 유형: 문자형 벡터, string형 |
값: Detector from MAT file' | 'Detector from MATLAB function' |
디폴트 값: Detector from MAT file' |
이 파라미터는 불러올 detector 객체가 포함된 MAT 파일의 이름을 지정합니다. 파일이 MATLAB 경로에 있지 않으면 찾아보기 버튼을 사용하여 파일을 찾습니다.
종속 관계
이 파라미터를 활성화하려면 검출기 파라미터를 MAT 파일에서 가져온 검출기로 설정하십시오.
프로그래밍 방식 사용
블록 파라미터: DetectorFilePath |
| 유형: 문자형 벡터, string형 |
| 값: MAT 파일 경로 또는 이름 |
디폴트 값: 'untitled.mat'
|
이 파라미터는 훈련된 객체 검출기를 반환하는 MATLAB 함수의 이름을 지정합니다. 예를 들어, 훈련된 yolov2ObjectDetector 객체를 반환하는 함수 vehicleDetectorYOLOv2를 지정하거나 사용자 지정 함수를 지정하십시오.
종속 관계
이 파라미터를 활성화하려면 검출기 파라미터를 MATLAB 함수에서 가져온 검출기로 설정하십시오.
프로그래밍 방식 사용
블록 파라미터: DetectorFunction |
| 유형: 문자형 벡터, string형 |
| 값: MATLAB 함수 이름 |
디폴트 값: 'untitled' |
검색 관심 영역을 [x y width height] 형식의 벡터로 지정합니다. 벡터는 영역의 왼쪽 위 코너 및 크기(단위: 픽셀)를 지정합니다.
종속 관계
이 파라미터를 활성화하려면 관심 영역 지정 파라미터를 선택하십시오.
프로그래밍 방식 사용
블록 파라미터: ROI |
| 유형: 문자형 벡터, string형 |
값: '[x y width height]'로 지정된 문자형 벡터 |
디폴트 값: '[1 1 100 100]' |
검출 임계값을 [0, 1] 범위의 스칼라로 지정합니다. 이 임계값보다 낮은 점수를 갖는 검출은 제거됩니다. 거짓양성 결과를 줄이려면 이 값을 늘리십시오.
종속 관계
이 파라미터를 활성화하려면 검출 임계값 파라미터를 지원하는 검출기를 사용해야 합니다. 예를 들어, yolov2ObjectDetector 객체를 사용합니다.
프로그래밍 방식 사용
블록 파라미터: Threshold |
| 유형: 문자형 벡터, string형 |
| 값: 스칼라 |
디폴트 값: '0.5' |
가장 강한 영역 제안의 최대 개수를 정수로 지정합니다. 검출 정확도를 희생하여 처리 속도를 높이려면 이 값을 줄이십시오. 모든 영역 제안을 사용하려면 이 파라미터를 Inf로 지정하십시오.
종속 관계
이 파라미터를 활성화하려면 가장 강한 영역 개수 파라미터를 지원하는 검출기를 사용하십시오. 예를 들어, rcnnObjectDetector 객체를 사용합니다.
프로그래밍 방식 사용
블록 파라미터: NumStrongestRegions |
| 유형: 문자형 벡터, string형 |
| 값: 정수 |
디폴트 값: '2000' |
최대 영역 크기를 [height width] 형식의 벡터로 지정합니다. 단위는 픽셀입니다. 최대 영역 크기는 객체가 포함된 가장 큰 영역의 크기를 정의합니다. 예를 들어, [50 50]은 객체가 포함된 가장 큰 영역의 크기를 50×50 픽셀로 설정합니다. 계산 시간을 줄이려면 이 값을 입력 테스트 영상에서 검출할 수 있는 객체에 대해 알려진 최대 영역 크기로 설정하십시오.
종속 관계
이 파라미터를 활성화하려면 다음을 수행하십시오.
최대 영역 크기 지정 파라미터를 선택합니다.
최대 영역 크기 파라미터를 지원하는 검출기를 사용합니다. 예를 들어,
yolov2ObjectDetector객체를 사용합니다.
프로그래밍 방식 사용
블록 파라미터: MaxSize |
| 유형: 문자형 벡터, string형 |
값: '[height width]'로 지정된 문자형 벡터 |
디폴트 값: '[50 50]' |
최소 영역 크기를 [height width] 형식의 벡터로 지정합니다. 단위는 픽셀입니다. 최소 영역 크기는 객체가 포함된 가장 작은 영역의 크기를 정의합니다. 예를 들어, [1 1]은 객체가 포함된 가장 작은 영역의 크기를 1×1 픽셀로 설정합니다.
종속 관계
이 파라미터를 활성화하려면 다음을 수행하십시오.
최소 영역 크기 지정 파라미터를 선택합니다.
최소 영역 크기 파라미터를 지원하는 검출기를 사용합니다. 예를 들어,
yolov2ObjectDetector객체를 사용합니다.
프로그래밍 방식 사용
블록 파라미터: MinSize |
| 유형: 문자형 벡터, string형 |
값: '[height width]'로 지정된 문자형 벡터 |
디폴트 값: '[1 1]' |
최대 검출 개수를 양의 정수로 지정합니다. 이 값은 검출 개수에 대한 상한으로, 2보다 크거나 같아야 합니다.
프로그래밍 방식 사용
블록 파라미터: MaxDetections |
| 유형: 문자형 벡터, string형 |
| 값: 정수 |
디폴트 값: '500' |
확장 기능
사용법 관련 참고 및 제한 사항:
구성 파라미터 > 코드 생성 일반 범주의 언어 파라미터는
C++로 설정해야 합니다.코드 생성을 지원하는 신경망과 계층 목록은 Networks and Layers Supported for Code Generation (MATLAB Coder) 항목을 참조하십시오.
YOLOv3, YOLOv4 또는 RTMDet를 객체 검출기로 사용하여 MKL-DNN(Math Kernel Library for Deep Neural Networks) 타깃 라이브러리의 코드를 생성하려면
MaxStackSize및TLCOptions모델 파라미터를 더 높은 값으로 설정하십시오. 예를 들어, 다음 구문을 사용하여MaxStackSize및TLCOptions파라미터 값을 'inf'로 설정할 수 있습니다.>> set_param(modelName,'MaxStackSize','inf') >> set_param(modelName,'TLCOptions','-aMaxStackVariableSize=inf')
사용법 관련 참고 및 제한 사항:
구성 파라미터 > 코드 생성 일반 범주의 언어 파라미터는
C++로 설정해야 합니다.CUDA® 코드 생성을 지원하는 신경망과 계층 목록은 지원되는 신경망, 계층 및 클래스 (GPU Coder) 항목을 참조하십시오.
버전 내역
R2021b에 개발됨R2024b부터 Deep Learning Object Detector 블록은 RTMDet(Real-Time Model for object Detection)를 지원합니다. 사전 훈련된 RTMDet 객체 검출기 객체인 rtmdetObjectDetector를 가져와서 객체 검출을 수행할 수 있습니다.
R2024b부터 Deep Learning Object Detector 블록은 YOLOX(You Only Look Once X) 객체 검출을 지원합니다. 사전 훈련된 YOLOX 객체 검출기 객체인 yoloxObjectDetector를 가져와서 객체 검출을 수행할 수 있습니다.
참고 항목
객체
rcnnObjectDetector|fastRCNNObjectDetector|fasterRCNNObjectDetector|ssdObjectDetector|yolov2ObjectDetector|yolov3ObjectDetector|yolov4ObjectDetector|yoloxObjectDetector
블록
- Image Classifier (Deep Learning Toolbox) | Predict (Deep Learning Toolbox)
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
웹사이트 선택
번역된 콘텐츠를 보고 지역별 이벤트와 혜택을 살펴보려면 웹사이트를 선택하십시오. 현재 계신 지역에 따라 다음 웹사이트를 권장합니다:
또한 다음 목록에서 웹사이트를 선택하실 수도 있습니다.
사이트 성능 최적화 방법
최고의 사이트 성능을 위해 중국 사이트(중국어 또는 영어)를 선택하십시오. 현재 계신 지역에서는 다른 국가의 MathWorks 사이트 방문이 최적화되지 않았습니다.
미주
- América Latina (Español)
- Canada (English)
- United States (English)
유럽
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)

