opencv - 图像分类 - 向现有模型添加新类

标签 opencv image-processing machine-learning computer-vision

我正在使用经典的 SIFT - BOW - SVM 进行图像分类。我的分类器是使用 1vsAll 范式创建的。

假设我目前有 100 个类(class)。 稍后,我想添加新类或者我想使用额外的训练集来提高对某些特定类的识别。

最好的方法是什么? 当然,最好的办法是重新执行训练阶段的每一步。 但是,仅使用与先前模型相同的词汇表来计算额外的(或修改的)类是否有意义,以避免重新计算新词汇表并再次训练所有类?

谢谢

最佳答案

简而言之 - 不。如果你添加新类,它应该被添加到每个“旧”分类器中,所以“一对一”仍然有意义。如果您假设新类会随时间出现,请考虑改用单类分类器,例如单类 SVM。这样,一旦您获得特定类别的新样本,您只需重新训练特定模型,或向系统添加一个全新的模型。

此外,对于大量类别,1 与所有 SVM 的效果非常差,而单类别方法通常要好得多。

关于opencv - 图像分类 - 向现有模型添加新类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32272729/

相关文章:

image-processing - OCR 处理前的图像预处理

machine-learning - 我可以将早期停止合并到 keras 网格搜索中吗?

opencv - 使用Aruco标记(OpenCV)将相机姿势映射到SceneKit

c++ - 无法在 RHEL 7 上使用 CUDA 构建 OpenCV

python - 为什么我在使用 scikit-image hog 和 OpenCV hog 时没有得到相同的特征描述?

python - MATLAB 的 'improfile' 函数是否有等效的 Python 函数?

c++ - 尝试均衡图像时出现分割错误

c++ - OpenCV 随机森林打破平局

machine-learning - SVM 训练的稍微倾斜的图

machine-learning - Syslog 上的异常检测