我的目标是使用 tinyYolov3 模型通过 HoloLens 实时进行物体检测。我想将模型作为 ONNX 文件直接合并到项目中,并计算 HoloLens 本身内部的预测。为此,我计划使用 Windows.media 和 Windows.AI.MachineLearning 库作为相机和我的预测之间的管道。
按照本教程,我能够将帧捕获为VideoFrame ,并且可以将它们转换为ImageFeatureValue以匹配我的输入类型要求。我现在的问题是关于形状要求。Yolo 模型需要一个 3x416x416 帧作为输入,我在网上找不到任何关于调整 VideoFrame 或 ImageFeatureValue 大小的文档。
非常感谢您的帮助。
using (var frameReference = CameraFrameReader.TryAcquireLatestFrame())
using (var videoFrame = frameReference?.VideoMediaFrame?.GetVideoFrame())
await ModelHelper.EvaluateVideoFrameAsync(videoFrame).ConfigureAwait(false);
public async Task EvaluateVideoFrameAsync(VideoFrame frame)
{
if (frame != null)
{
try
{
ModelInput inputData = new ModelInput();
inputData.image = ImageFeatureValue.CreateFromVideoFrame(frame);
//TODO: CHANGE SIZE FRAME
var output = await Model.EvaluateAsync(inputData).ConfigureAwait(false);
}
}
}