使用TensorFlow.NET与NumSharp进行图像识别

本文介绍了如何使用TensorFlow.NET v0.3版本和NumSharp进行图像识别。通过加载预先训练的GoogLeNet模型,对图像进行预处理和标准化,然后在.NET环境中运行预测并获取结果,最终展示最佳概率和分类。
摘要由CSDN通过智能技术生成

在这里插入图片描述
TensorFlow.NET
发布了v0.3版本,让我们尝试将其用于图像识别。使用TensorFlow.NET和[ ](https://github.com/scisharp/NumSharp)进行图像识别的示例,它将使用预先训练的初始模型来预测输出按概率排序的类别的图像。原始论文在这里GoogLeNetInception体系结构设计为即使在严格的内存和计算预算约束下也能很好地运行。 Inception的计算成本也远低于其他之前的方案。这使得在大数据场景中利用初始网络变得可行,其中需要以合理的成本处理大量数据,或者存储器或计算容量本身受限的场景,例如在移动视觉设置中。

GoogLeNet架构符合以下设计原则:

  • 避免代表性瓶颈,特别是在网络早期。
  • 更高维度的表示更容易在网络内本地处理。
  • 空间聚合可以在较低维度嵌入上完成,而表征能力没有太大或任何损失。
  • 平衡网络的宽度和深度。

让我们开始使用实际代码。

1.准备数据

此示例将下载数据集并自动解压缩。省略了一些外部路径,请参考实际路径的源代码。

private void PrepareData()
{
    Directory.CreateDirectory(dir);
​
    // get model file
    string url = "models/inception_v3_2016_08_28_frozen.pb.tar.gz";
​
    string zipFile = Path.Join(dir, $"{pbFile}.tar.gz");
    Utility.Web.Download(url, zipFile);
​
    Utility.Compress.ExtractTGZ(zipFile, dir);
​
    // download sample picture
    string pic &#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值