巧妙的图像增强-随机缩小

时间:2020-11-07 12:38:42

标签: python neural-network pytorch conv-neural-network data-augmentation

我正在建立一个CNN以识别面部关键点。我想使网络更健壮,所以我考虑应用一些缩小变换,因为大多数图片的关键点位置都相同,因此网络学不到很多。

我的方法:

我希望增强图像保持原始图像大小,因此应用MaxPool2d,然后随机(不相等)填充直到达到原始大小。

第一个问题

它可以与简单的平均填充或零填充一起使用吗?我敢肯定,如果使填充看起来更像背景,那会更好,但是有一种简单的方法吗?

第二个问题

关键点是目标向量,它们作为30的行向量来。我对将它们转换到较小空间​​所需的逻辑感到困惑。 通常,如果原始点位于(x = 5,y = 7),它将转换为(x = 2,y = 3)-我不确定,但到目前为止已经手动检查了,这是正确的。但是如果关键点位于同一新像素中该怎么办?我无法用更少的目标值来投放网络。

就是这样。很高兴听到您的想法

1 个答案:

答案 0 :(得分:1)

我建议在您的torchvision.transforms.RandomResizedCrop语句中使用Compose。这将为您提供随机缩放,并将生成的图像调整为某些标准尺寸。这样可以避免两个问题都出现。