Ope*_*ser 10 machine-learning image-processing tensorflow
我正在尝试使用Tensorflow训练模型来检测基本形状,如圆形,方形,矩形等.什么是最好的输入数据集?要直接加载形状或使用OpenCV查找图像边缘并仅加载边缘图像.
我们也可以使用OpenCV检测形状.使用机器学习会有什么附加优势.
用于训练模型的示例图像.
我建议从本指南开始进行分类,而不是对象检测:https : //kiosk-dot-codelabs-site.appspot.com/codelabs/tensorflow-for-poets/#0
分类是针对一张图片的唯一标签(99% 正方形,1% 圆形)。物体检测用于对图片中的多个物体进行分类(x_min=3,y_min=8,x_max=20,y_max30, 99% square)。您的案例看起来更像是分类问题。
您不需要像指南中那样安装完整的 Docker。如果你的系统上有 Python 3.6,你可以这样做:
pip install tensorflow
Run Code Online (Sandbox Code Playgroud)
然后跳到“4. 检索图像”
我不得不自己尝试一下,所以我从谷歌下载了前 100 张正方形和圆形的图片,并从 Chrome Web Store 下载了附加组件“fatkun 批量下载图片”。
在我的前 10 次测试中,我的准确率在 92.0% (0.992..) 和 99.58% 之间。如果您的示例比来自 Google 的许多不同图片更统一,您可能会得到更好的结果。
您可能想检查张量流中的客观检测。 https://github.com/tensorflow/models/tree/master/research/object_detection 这里有一个预训练的模型 http://download.tensorflow.org/models/object_detection/ssd_mobilenet_v1_coco_11_06_2017.tar.gz
使用神经网络进行检测的一个潜在优势是它可以减少计算的 CPU 周期。这在移动设备上很有用。例如 - 霍夫变换https://en.wikipedia.org/wiki/Hough_transform的计算成本太高/但如果使用卷积神经网络 - 为实时图像处理提供了更多可能性。
要实际训练新模型 - 请参阅此处https://www.tensorflow.org/tutorials/deep_cnn
| 归档时间: |
|
| 查看次数: |
7005 次 |
| 最近记录: |