我有几张这样的图片,并尝试使用 Neural Networks
和 GIST
作为特征来识别对象。我的数据集有 50 个类别,每个类别有 4 张图像。使用 75% 的图像作为训练数据,我得到了 83% 的测试准确率
为了提高准确性,我想对图像进行预处理,即我想使背景透明或白色,同时保留原始对象。我一直在尝试 cv2.BackgroundSubtractorMOG2()
但它使整个图像变灰。
预处理此图像的最佳方法是什么?
最佳答案
您可以尝试使用 GrabCut这个问题的算法。由于您知道对象大致位于中心,因此您可以尝试构建对象的颜色分布并从图像的边界收集背景样本。
OpenCV 文档可以在这里找到: http://docs.opencv.org/modules/imgproc/doc/miscellaneous_transformations.html#grabcut
这里有一个例子:https://github.com/Itseez/opencv/blob/master/samples/cpp/grabcut.cpp
关于opencv - 使图像的背景变白,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30273249/