主要内容

yolov2ObjectDetector

使用YOLO v2对象检测器检测对象

描述

yolov2ObjectDetectorobject创建了一个你只看一次的版本2 (YOLO v2)对象检测器,用于检测图像中的对象。使用这个对象,你可以:

  • 通过使用在COCO数据集上训练的YOLO v2深度学习网络创建预训练的YOLO v2对象检测器。

  • 通过使用自定义训练过的YOLO v2深度学习网络创建一个自定义YOLO v2对象检测器。

您还可以创建一个yolov2ObjectDetector对象通过调用trainYOLOv2ObjectDetector函数与训练数据(需要深度学习工具箱™)。

检测器= trainYOLOv2ObjectDetector(trainingData,____)
YOLO v2对象检测器识别图像中的特定对象,基于训练图像和地面真相数据使用trainYOLOv2ObjectDetector函数。

要检测图像中的对象,将YOLO v2对象检测器传递给检测对象的功能。

创建

描述

预训练YOLO v2对象检测器

例子

探测器= yolov2ObjectDetector (的名字通过使用在COCO数据集上训练的YOLO v2深度学习网络创建预训练的YOLO v2对象检测器。

要使用在COCO数据集上训练的YOLO v2网络,必须下载并安装计算机视觉工具箱™YOLO v2对象检测模型金宝app支持包。你可以下载YOLO v2对象检测的计算机视觉工具箱模型从附加组件资源管理器。有关更多信息,请参见获取和管理外接组件

自定义YOLO v2对象检测器

探测器= yolov2ObjectDetector (网络通过使用在输入处指定的自定义预训练YOLO v2网络来创建YOLO v2对象检测器。

输入网络也可以是来自ONNX™(Open Neural network Exchange)的导入网络。有关如何从导入的ONNX YOLO v2网络创建YOLO v2对象检测器的详细信息,请参见导入预训练的ONNX YOLO v2对象检测器

探测器= yolov2ObjectDetector (___“TrainingImageSize”,trainingSizes在前面的语法中,除了输入参数外,还可以使用名值对指定训练期间使用的图像大小。

输入参数

全部展开

预训练YOLO v3深度学习网络的名称,指定为以下其中之一:

  • “darknet19-coco”-使用DarkNet-19作为基础网络创建的预训练YOLO v2深度学习网络,并在COCO数据集上进行训练。

  • “tiny-yolov2-coco”-使用小型基础网络创建的预训练YOLO v2深度学习网络,并在COCO数据集上进行训练。

数据类型:字符|字符串

自定义训练YOLO v2网络,指定为DAGNetwork对象。的DAGNetwork必须有一个图像输入层,YOLO v2转换层连接到YOLO v2输出层。

用于训练的图像大小集,指定为逗号分隔的对,由“TrainingImageSize”和一个2矩阵。每一行的形式为[高度宽度].默认值为网络图像输入层的大小。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

属性

全部展开

对象检测器的名称,指定为字符向量或字符串标量。

  • 如果输入yolov2ObjectDetector对象是预训练的YOLO v2网络,此属性的默认值设置为在输入处指定的预训练YOLO v2网络的名称。

  • 如果yolov2ObjectDetector对象创建trainYOLOv2ObjectDetector函数时,此属性的默认值设置为trainingData表中指定的trainYOLOv2ObjectDetector函数。

对象创建后,可以修改此名称yolov2ObjectDetector对象。

此属性是只读的。

训练YOLO v2对象检测网络,指定为DAGNetwork(深度学习工具箱)对象。该对象存储定义YOLO v2对象检测网络的层。

此属性是只读的。

训练YOLO v2对象检测器查找的对象类名称,指定为字符向量的单元格数组。属性设置此属性trainingData中的Input参数。trainYOLOv2ObjectDetector函数。类的一部分指定类名trainingData表格

此属性是只读的。

一组锚框,指定为N-by-2矩阵定义的宽度和高度N锚箱。属性设置此属性AnchorBoxesYOLO v2网络中输出层的属性。

控件创建YOLO v2网络时定义了锚框yolov2Layers函数。或者,如果逐层创建YOLO v2网络,则可以使用yolov2OutputLayer函数。

此属性是只读的。

用于训练的图像大小集,指定为-by-2矩阵,其中每一行的形式为[高度宽度].属性设置此属性trainingSizes输入参数。

如果trainingSizes未在输入处指定,则此属性由trainingSizes参数中的参数trainYOLOv2ObjectDetector函数。在这种情况下,yolov2ObjectDetector对象通过调用trainYOLOv2ObjectDetector函数。

对象的功能

检测 使用YOLO v2对象检测器检测对象

例子

全部折叠

要运行此示例,必须下载并安装YOLO v2对象检测支持包的计算机视觉工具箱模型™。金宝app

指定预先训练的YOLO v2深度学习网络的名称。

name =“tiny-yolov2-coco”

使用预先训练好的YOLO v2网络创建YOLO v2对象检测器。

探测器= yolov2ObjectDetector(name);

显示和检查YOLO v2对象检测器的属性。

disp(探测器)
yolov2ObjectDetector与属性:ModelName: 'tiny-yolov2-coco'网络:[1×1 DAGNetwork] TrainingImageSize:[416 416]锚箱:[5×2 double] ClassNames:[人自行车汽车摩托车飞机公共汽车火车卡车船交通灯…]

通过使用预先训练的YOLO v2对象检测器来检测未知图像中的对象。

Img = imread(“highway.png”);[bboxes,scores,labels] = detect(检测器,img);

显示检测结果。

detectedImg = insertObjectAnnotation(img,“矩形”、bboxes、标签);图imshow (detectedImg)

扩展功能

版本历史

在R2019a中引入