Divooka.Onnx.zh

Divooka.Onnx.MLModels.YoloV2

一个用于图像中物体检测的 YoLoV2 (Tiny) 简单接口。 需要模型文件。目前的实现仅在 Windows 上工作,但应该容易通过 SkiaSharp 进行更改。

Remarks

参考: https://learn.microsoft.com/en-us/dotnet/machine-learning/tutorials/object-detection-onnx https://github.com/dotnet/machinelearning-samples/tree/main/samples/csharp/getting-started/DeepLearning_ObjectDetection_Onnx

Divooka.Onnx.MLModels.YoloV2.OnnxModelScorer

对输入数据上的ONNX模型进行评分。

Divooka.Onnx.MLModels.YoloV2.OnnxModelScorer.#ctor()

初始化 OnnxModelScorer 类的新实例。

Parameters

NameDescriptionDefault
imagesFolder 包含图像的文件夹。
modelLocation ONNX 模型文件的路径。
mlContext MLContext 实例。

Divooka.Onnx.MLModels.YoloV2.OnnxModelScorer.Score()

使用ONNX模型对数据进行评分。

Parameters

NameDescriptionDefault
data 输入数据视图。

模型输出概率集合

模型输出概率集合。

Divooka.Onnx.MLModels.YoloV2.ImageNetSettings

ImageNet 设置。

Divooka.Onnx.MLModels.YoloV2.TinyYoloModelSettings

Tiny YOLO模型设置。

Divooka.Onnx.MLModels.YoloV2.DimensionsBase

基类,表示维度。

Divooka.Onnx.MLModels.YoloV2.DimensionsBase.X

获取或设置 X 坐标。

Divooka.Onnx.MLModels.YoloV2.DimensionsBase.Y

获取或设置 Y 坐标。

Divooka.Onnx.MLModels.YoloV2.DimensionsBase.Height

获取或设置高度。

Divooka.Onnx.MLModels.YoloV2.DimensionsBase.Width

获取或设置宽度。

Divooka.Onnx.MLModels.YoloV2.DimensionsBase.Right

获取右边界(X + 宽度)。

Divooka.Onnx.MLModels.YoloV2.DimensionsBase.Bottom

获取底部边界 (Y + Height)。

Divooka.Onnx.MLModels.YoloV2.DimensionsBase.#ctor

初始化 DimensionsBase 类的新实例。

Divooka.Onnx.MLModels.YoloV2.DimensionsBase.#ctor()

使用指定的值初始化 DimensionsBase 类的新实例。

Parameters

NameDescriptionDefault
x X 坐标。
y Y 坐标。
height 高度值。
width 宽度值。

Divooka.Onnx.MLModels.YoloV2.BoundingBoxDimensions

代表边界框的维度。

Divooka.Onnx.MLModels.YoloV2.CellDimensions

Represents cell dimensions.

Divooka.Onnx.MLModels.YoloV2.YoloBoundingBox

表示一个检测到的YOLO边界框。

Divooka.Onnx.MLModels.YoloV2.YoloBoundingBox.Dimensions

获取或设置边界框的尺寸。

Divooka.Onnx.MLModels.YoloV2.YoloBoundingBox.Label

获取或设置检测到的对象的标签。

Divooka.Onnx.MLModels.YoloV2.YoloBoundingBox.Confidence

获取或设置置信度分数。

Divooka.Onnx.MLModels.YoloV2.YoloBoundingBox.Rect

获取表示边界框的矩形。

Divooka.Onnx.MLModels.YoloV2.YoloBoundingBox.BoxColor

获取或设置边界框的颜色。

Divooka.Onnx.MLModels.YoloV2.YoloV2MiniParameters

包含YoloV2迷你模型的参数。

Divooka.Onnx.MLModels.YoloV2.BatchProcess()

批量处理图像以进行目标检测。

Parameters

NameDescriptionDefault
imagesFolder 包含输入图像的文件夹。
outputsFolder 保存处理后图像的文件夹。

处理结果

处理后的图像结果。

Divooka.Onnx.MLModels.YoloV2.DrawBoundingBox()

在图像上绘制边界框。

Parameters

NameDescriptionDefault
inputImageLocation 输入图像的位置。
outputImageLocation 保存输出图像的位置。
imageName 图像文件的名称。
filteredBoundingBoxes 要绘制的边界框列表。

返回图像

返回处理后的图像。

Divooka.Onnx.MLModels.YoloV2.LogDetectedObjects()

记录图像中检测到的对象。

Parameters

NameDescriptionDefault
imageName 图像文件的名称。
boundingBoxes 检测到的边界框列表。

Divooka.Onnx.MLModels.YoloV2.ParseOutputs()

解析模型输出为边界框。

Parameters

NameDescriptionDefault
yoloModelOutputs Array of model outputs.
threshold Threshold for detection.

检测到的边界框列表

List of detected bounding boxes.

Divooka.Onnx.MLModels.YoloV2.FilterBoundingBoxes()

根据重叠过滤边界框。

Parameters

NameDescriptionDefault
boxes 检测到的边界框列表。
limit 返回的最大边界框数量。
threshold 交集与并集阈值。

过滤后的边界框列表

过滤后的边界框列表。

Divooka.Onnx.MLModels.YoloV2.GetAbsolutePath()

将文件夹路径和相对路径组合成绝对路径。

Parameters

NameDescriptionDefault
folderPath 文件夹路径。
relativePath 相对路径。

组合的绝对路径

组合的绝对路径。

Divooka.Onnx.OnnxRunner.Example()

将 imagesFolder 中的图像加载到 IDataView 中。

Parameters

NameDescriptionDefault
imagesFolder
imagesDataFile 包含两列:图像路径和名称的 TSV 文件

返回的 IDataView