Hauptinhalt

Die Übersetzung dieser Seite ist veraltet. Klicken Sie hier, um die neueste Version auf Englisch zu sehen.

Objekterkennung

Klassifizierung, Objekterkennung, Transfer Learning mithilfe von Convolutional Neural Networks (CNNs oder ConvNets) durchführen, benutzerdefinierte Detektoren erstellen

Die Objekterkennung ist eine Computer-Vision-Technik zum Auffinden von Instanzen von Objekten in Bildern oder Videos. Objekterkennungsalgorithmen verwenden oft Machine Learning oder Deep Learning, um sinnvolle Ergebnisse zu erzielen. Wenn Menschen Bilder oder Videos betrachten, können sie innerhalb kürzester Zeit relevante Objekte erkennen und finden. Das Ziel der Objekterkennung besteht darin, diese Intelligenz mit einem Computer nachzubilden. Der beste Ansatz zur Objekterkennung hängt von der Anwendung und dem zu lösenden Problem ab.

Deep-Learning-Techniken benötigen eine große Anzahl gekennzeichneter Trainingsbilder. Daher wird empfohlen, eine GPU zu verwenden, um die für das Training eines Modells benötigte Zeit zu reduzieren. Deep-Learning-Ansätze für die Objekterkennung verwenden Convolutional Neural Networks (CNNs oder ConvNets) wie R-CNN und YOLO oder nutzen Single-Shot Detection (SSD). Sie können einen benutzerdefinierten Objektdetektor trainieren oder einen vortrainierten Objektdetektor verwenden, indem Sie Transfer Learning nutzen, ein Ansatz, bei dem Sie ein vortrainiertes Netzwerk auf Ihre Anwendung abstimmen. Convolutional Neural Networks benötigen die Deep Learning Toolbox™. Training und Prognose werden von CUDA®-kompatiblen CDUs unterstützt. Die Verwendung einer GPU wird empfohlen; hierfür wird die Parallel Computing Toolbox™ benötigt. Weitere Informationen finden Sie unter Einstellungen der Computer Vision Toolbox und Parallel Computing Support in MathWorks Products (Parallel Computing Toolbox).

Machine-Learning-Techniken für die Objekterkennung umfassen Aggregate Channel Features (ACF), Support Vector Machines (SVM), Klassifizierung mittels Histograms of Oriented Gradient-Merkmalen (HOG) und den Viola-Jones-Algorithmus zur Erkennung menschlicher Gesichter oder Oberkörper. Sie können mit einem vortrainierten Objektdetektor beginnen oder einen benutzerdefinierten Objektdetektor für Ihre Anwendung erstellen.

Labeled boats, neural network, and person detector

Apps

Image LabelerLabel images for computer vision applications
Video LabelerLabel video for computer vision applications

Funktionen

alle erweitern

Deep-Learning-Detektoren

rcnnObjectDetector(Not recommended) Detect objects using R-CNN deep learning detector
fastRCNNObjectDetector(Not recommended) Detect objects using Fast R-CNN deep learning detector
fasterRCNNObjectDetector(Not recommended) Detect objects using Faster R-CNN deep learning detector
ssdObjectDetectorDetect objects using SSD deep learning detector
yolov2ObjectDetectorDetect objects using YOLO v2 object detector
yolov3ObjectDetectorDetect objects using YOLO v3 object detector (Seit R2021a)
yolov4ObjectDetectorDetect objects using YOLO v4 object detector (Seit R2022a)

Merkmalbasierte Detektoren

readAprilTagDetect and estimate pose for AprilTag in image
readArucoMarkerDetect and estimate pose for ArUco marker in image (Seit R2024a)
generateArucoMarkerGenerate ArUco marker images (Seit R2024a)
readBarcodeDetect and decode 1-D or 2-D barcode in image
acfObjectDetectorDetect objects using aggregate channel features
peopleDetectorACFDetect people using aggregate channel features
vision.CascadeObjectDetectorDetect objects using the Viola-Jones algorithm
vision.ForegroundDetectorForeground detection using Gaussian mixture models
vision.PeopleDetector(Removed) Detect upright people using HOG features
vision.BlobAnalysisProperties of connected regions

Detektieren von Objekten mithilfe von Punktmerkmalen

detectBRISKFeaturesDetect BRISK features
detectFASTFeaturesDetect corners using FAST algorithm
detectHarrisFeaturesDetect corners using Harris–Stephens algorithm
detectKAZEFeaturesDetect KAZE features
detectMinEigenFeaturesDetect corners using minimum eigenvalue algorithm
detectMSERFeaturesDetect MSER features
detectORBFeaturesDetect ORB keypoints
detectSIFTFeaturesDetect scale invariant feature transform (SIFT) features (Seit R2021b)
detectSURFFeaturesDetect SURF features
extractFeaturesExtract interest point descriptors
matchFeaturesFind matching features

Auswählen detektierter Objekte

selectStrongestBboxSelect strongest bounding boxes from overlapping clusters using nonmaximal suppression (NMS)
selectStrongestBboxMulticlassSelect strongest multiclass bounding boxes from overlapping clusters using nonmaximal suppression (NMS)

Laden von Trainingsdaten

boxLabelDatastoreDatastore for bounding box label data
groundTruthGround truth label data
imageDatastoreDatastore for image data
objectDetectorTrainingDataCreate training data for an object detector
combineCombine data from multiple datastores

Trainieren merkmalbasierter Objektdetektoren

trainACFObjectDetectorTrain ACF object detector
trainCascadeObjectDetectorTrain cascade object detector model
trainImageCategoryClassifierTrain an image category classifier

Trainieren Deep-Learning-basierter Objektdetektoren

trainRCNNObjectDetector(Not recommended) Train R-CNN deep learning object detector
trainFastRCNNObjectDetector(Not recommended) Train Fast R-CNN deep learning object detector
trainFasterRCNNObjectDetector(Not recommended) Train Faster R-CNN deep learning object detector
trainSSDObjectDetectorTrain SSD deep learning object detector
trainYOLOv2ObjectDetectorTrain YOLO v2 object detector
trainYOLOv3ObjectDetectorTrain YOLO v3 object detector (Seit R2024a)
trainYOLOv4ObjectDetectorTrain YOLO v4 object detector (Seit R2022a)

Erweitern und Vorverarbeiten von Trainingsdaten für Deep Learning

balanceBoxLabelsBalance bounding box labels for object detection
bboxcropCrop bounding boxes
bboxeraseRemove bounding boxes (Seit R2021a)
bboxresizeResize bounding boxes
bboxwarpApply geometric transformation to bounding boxes
bbox2pointsConvert rectangle to corner points list
imwarpApply geometric transformation to image
imcropCrop image
imresizeResize image
randomAffine2dCreate randomized 2-D affine transformation
centerCropWindow2dCreate rectangular center cropping window
randomWindow2dRandomly select rectangular region in image (Seit R2021a)
integralImageCalculate 2-D integral image

R-CNN (Regions With Convolutional Neural Networks)

rcnnBoxRegressionLayer(Not recommended) Box regression layer for Fast and Faster R-CNN
fasterRCNNLayers(Not recommended) Create a faster R-CNN object detection network
rpnSoftmaxLayer(Not recommended) Softmax layer for region proposal network (RPN)
rpnClassificationLayer(Not recommended) Classification layer for region proposal networks (RPNs)
regionProposalLayer(Not recommended) Region proposal layer for Faster R-CNN
roiAlignLayerNon-quantized ROI pooling layer for Mask-CNN
roiInputLayer(Not recommended) ROI input layer for Fast R-CNN
roiMaxPooling2dLayerNeural network layer used to output fixed-size feature maps for rectangular ROIs
roialignNon-quantized ROI pooling of dlarray data (Seit R2021b)

YOLO v2 (You Only Look Once version 2)

yolov2Layers(To be removed) Create YOLO v2 object detection network
yolov2TransformLayerCreate transform layer for YOLO v2 object detection network
yolov2OutputLayer(To be removed) Create output layer for YOLO v2 object detection network
spaceToDepthLayerSpace to depth layer

Fokusverlust

focalCrossEntropyCompute focal cross-entropy loss

SSD (Single Shot Detector)

ssdMergeLayerCreate SSD merge layer for object detection

Ankerkästen

estimateAnchorBoxesEstimate anchor boxes for deep learning object detectors
cuboid2imgProject cuboids from 3-D world coordinates to 2-D image coordinates (Seit R2022b)
insertObjectAnnotationAnnotate truecolor or grayscale image or video
insertObjectMask Insert masks in image or video stream
insertShapeInsert shapes in image or video
showShapeDisplay shapes on image, video, or point cloud
evaluateObjectDetectionEvaluate object detection data set against ground truth (Seit R2023b)
objectDetectionMetricsObject detection quality metrics (Seit R2023b)
mAPObjectDetectionMetricMean average precision (mAP) metric for object detection (Seit R2024a)
bboxOverlapRatioCompute bounding box overlap ratio
bboxPrecisionRecallCompute bounding box precision and recall against ground truth

Blöcke

Deep Learning Object DetectorDetect objects using trained deep learning object detector (Seit R2021b)

Themen

Erste Schritte

Trainingsdaten für Objekterkennung und Instance Segmentation

Erste Schritte mit Deep Learning

  • Deep Learning in MATLAB (Deep Learning Toolbox)
    Discover deep learning capabilities in MATLAB® using convolutional neural networks for classification and regression, including pretrained networks and transfer learning, and training on GPUs, CPUs, clusters, and clouds.
  • Pretrained Deep Neural Networks (Deep Learning Toolbox)
    Learn how to download and use pretrained convolutional neural networks for classification, transfer learning and feature extraction.

Enthaltene Beispiele