Image processing 如何改进我的图像分类器来识别真实世界的图像

Image processing 如何改进我的图像分类器来识别真实世界的图像,image-processing,deep-learning,pytorch,Image Processing,Deep Learning,Pytorch,我想用Pytork训练手势识别器。 我尝试使用resnet34和某种数据扩充。我在测试集上得到了很高的准确度,但在现实世界中试图识别自己的手势时,准确度很低。当背景为白色时效果很好,当其他东西(我的脸、椅子、床等)出现在背景中时会变得疯狂。也许这是因为测试图像有一个纯背景,所以如何改进分类器? 此外,我还想在分类符中添加一个“非手势”类别。我该怎么做? 这是我的数据增强转换: transform = torchvision.transforms.Compose([ torch

我想用Pytork训练手势识别器。

我尝试使用resnet34和某种数据扩充。我在测试集上得到了很高的准确度,但在现实世界中试图识别自己的手势时,准确度很低。当背景为白色时效果很好,当其他东西(我的脸、椅子、床等)出现在背景中时会变得疯狂。也许这是因为测试图像有一个纯背景,所以如何改进分类器? 此外,我还想在分类符中添加一个“非手势”类别。我该怎么做? 这是我的数据增强转换:

transform = torchvision.transforms.Compose([
         torchvision.transforms.Grayscale(3),
         torchvision.transforms.RandomHorizontalFlip(),
         torchvision.transforms.RandomRotation(20),
         torchvision.transforms.RandomResizedCrop(64, (0.6, 1.2)),
         torchvision.transforms.ToTensor(),
         torchvision.transforms.Normalize((0.5, 0.5, 0.5), std=(0.5, 0.5, 0.5)),
    ])

任何建议都将不胜感激。谢谢

除了更改分类器外,您还应该查看培训数据:

问问自己:

  • 我的样本量够大吗? 如果你的图像太少,无法进行训练,那么世界上任何数据扩充都无法弥补这一点。目的获取标签分布均匀的大型异构数据集

  • 您的训练数据是否准确地反映了您希望在其中使用分类器的情况。您提供的图像似乎有一个较轻的背景,可能尝试获取具有不同背景的手势图像


  • 之后,您应该查看分类器并对其进行改进。由于您没有包括您的模型,我无法对此发表评论。

    谢谢,但我没有找到任何图像具有不同背景的手势数据集。我会尝试搜索更多的数据。你可以试着把手弄脏,做一些前景提取,得到手势,并将它们叠加到不同的背景上,尽管这的确是一个很大的工作,可能不如我希望的那样好。。。