【发布时间】:2016-11-30 20:03:49
【问题描述】:
我正在做一个关于神经网络的小项目。我读过关于数字识别的文章,使用 MNIST 数据集,并考虑是否可以制作相同的数据集,但使用我们每天看到的常规对象。 所以这里的算法(如果我们可以这么说): 一切都是用 python 的 opencv 库完成的 1)从图像中获取轮廓。这不是字面上的轮廓,而是看起来如此的东西。 我已经用这段代码完成了这个:
def findContour(self):
gray = cv2.cvtColor(self.image, cv2.COLOR_BGR2GRAY)
gray = cv2.bilateralFilter(gray, 11, 17, 17)
self.image = cv2.Canny(gray, 30, 200)
2) 接下来需要创建训练集。 我复制并编辑此消息。改变旋转并翻转它——现在我们有大约 40 张图像,它们由旋转的轮廓组成。 3) 现在我要将这些图像转储到 csv 文件中。 这些图像表示为 3D 数组,因此我使用 numpy 中的 .flatten 函数将它们展平。接下来这个扁平化向量被写入 csv 文件,标签作为最后一个字符
这就是我所做的,并想问:它会成功吗? 接下来我想使用除最后一个元素之外的所有元素作为输入 x 向量,最后一个元素作为 y 向量。 (如here)
识别方法相同:我们得到图像的轮廓,并将其输入神经网络,输出将是标签。
有没有可能,或者最好不要尝试?
【问题讨论】:
-
会成功吗? 不。真的,你在浪费时间。而是阅读有关对象识别的内容以及有关该主题的最新论文。您将了解到这比仅提取轮廓更困难(也更有趣)...
-
我不同意;不要阅读当前的论文,这比其他方法更令人困惑。谷歌“物体识别神经网络教程”,或者类似的东西,你会发现很多你可以看的教程!
-
@Christopher 也许我应该改写成:“从简单开始,看看在线教程,然后当你想做一些比玩具问题更有意义的事情时,看看新论文和最先进的方法” . ;D
标签: python opencv computer-vision neural-network