我是TensorFlow的新手,我正在寻找有关图像识别的帮助。是否有一个示例展示如何使用TensorFlow训练您自己的数字图像进行图像识别,如TensorFlow image recognition tutorial中使用的图像网模型
我查看了CIFAR-10模型培训,但它似乎没有提供培训自己图像的示例。
答案 0 :(得分:7)
我建议使用Google经过培训的Inception模型进行图像识别。 请参阅示例"如何重新启动新类别的最终层"在tensorflow网站上。它位于https://www.tensorflow.org/versions/r0.9/how_tos/image_retraining/index.html。
使用经过训练的模型很容易,并且可以达到合理的准确度您只需使用自己的数据集提供模型。谷歌的最后一个分类层将被修改,我们只训练最后一层。对于几个类别的数千个图像,完成培训只需要几个小时。 请注意:为了使用该示例,您必须从源代码构建张量流。
我正在使用转移学习功能并取得了非常好的效果。为了说明转学习的好处,我正在比较"转移学习在受过训练的GoogleNet"用"从头开始构建和训练一个5层的Convnet"。分类任务在5000个图像上完成,分为5个类别。
请参阅此简单示例:https://www.youtube.com/watch?v=QfNvhPx5Px8(在5分钟内构建TensorFlow图像分类器)
答案 1 :(得分:2)
此repo为您自己的图像提供最终图层图像重新训练。
将您的图像添加到training_“dataset文件夹”
添加越来越多的图像(每个类别至少需要30张图像。)
首先执行bash脚本以下载Imagenet文件。
接下来,运行python脚本重新训练您的图像,输出验证准确度等,