我想制作一个《火影忍者》手势检测模型,以便以后在增强现实游戏中使用。我尝试在fastai中使用resnet50实现这一目标,数据主要是通过众包获得的(大部分是我自己收集的)。但是,我得到的模型总是预测为同一类别。
这是Kaggle链接:
https://www.kaggle.com/vikranthkanumuru/naruto-hand-sign-detection-usin-fastai-diff-method
不确定这是否是问题所在,但之前每个类别我只有大约28张图片,所以我录制了一个视频,展示了各种手势,并使用OpenCV逐帧保存。后来我删除了那些不符合任何类别的图片,这使得数据集从220MB增加到了2GB。这样做合适吗,还是这是导致模型效果不佳的原因?
这是数据集的链接
https://www.kaggle.com/vikranthkanumuru/naruto-hand-sign-dataset
我不知道该如何进一步进行,任何帮助都将不胜感激。非常感谢您。
编辑:如果有人对完成的项目感兴趣,这里是链接: https://www.linkedin.com/feed/update/urn:li:activity:6640529067936440320/
回答:
- 我对你的代码做了一些修复。请查看一下。虽然我没有完整运行它,但它应该能展示你所需要的效果。
- 测试集仅包含那些图片,但请查看验证集的情况。
- 另外,切换到vgg16。resnet50在这里不是必要的。
- https://www.kaggle.com/subhaditya/naruto-hand-sign-detection-using-fastai?scriptVersionId=29471636