如何在CNN模型中处理不同的输入大小

时间:2017-07-24 21:50:59

标签: image tensorflow computer-vision image-recognition

提供一些背景信息:我对机器学习相当陌生,我已经阅读并看过一些关于CNN工作原理的教育视频。

到目前为止,我已经尝试了两种模式,一个随机的CNN模型和Google的Inception v3模型。我能理解随机的CNN模型以及那里发生的事情。我不明白的是如何使它不同的输出尺寸,不仅仅是不同的比例或旋转。我来解释一下我在做什么:

我基本上希望能够将图片(包含徽标)归类为品牌。例如,你给我一张包含星巴克标志的照片,我们的模特会告诉你它的星巴克。每张照片中只有一个标志(就我而言)。第一次尝试是使用初始模型:尝试了20,000次迭代,2000张星巴克收据图片,2,000张沃尔玛收据图片和2000张与星巴克或沃尔玛无关的随机图片,因此我也可以将图片归类为“不会”。 。得到88%的准确度,不够好,交叉熵不会低于0.4,然后我尝试从这些图片中裁剪徽标并再次尝试。这一次,在裁剪的图片上,它会像魅力一样工作,但是在包含星巴克标志的大图片上,或者沃尔玛就此而言,它会失败。

与DeepLo​​go的方式相同:https://github.com/satojkovic/DeepLogo

它可以很好地处理32 x 32图像,但是一旦我改变输入大小,就会失败。

我怎样才能克服这个?

编辑:我使用它在初始模型之上进行再培训:https://github.com/tensorflow/tensorflow/tree/master/tensorflow/examples/image_retraining

1 个答案:

答案 0 :(得分:1)

合并图层? 根据我的理解,汇集层提高了统计效率和翻译不变性。最重要的是,在您的情况下,它可以用于各种尺寸的图像。 也许你可以对此做一些研究。这本书"深度学习"来自Goodfellow的是我的推荐。

相关问题