java - 我们可以在 java opencv 中为纹理/颜色特征创建词袋吗?

标签 java c++ opencv image-processing

我正在尝试进行花卉分类,我从花卉图像中提取了 3 个特征;纹理使用 MR8 过滤器,颜色使用 HSV 颜色模型,形状使用 SIFT。这是图片

现在我想创建所有这三个功能的视觉词汇。我完成了 Shape Feature (筛选描述符) 我怎样才能单独处理纹理和颜色,最后我还想结合所有特征进行分类。

最佳答案

您应该使用 k-means(或其他聚类算法)分别获取每个特征空间的视觉词汇(就像您使用 sift 所做的一样)。

在组合这三个特征之前,您应该将图像转换为高级表示,例如词袋表示。

因此,每个图像将表示为一个直方图,因为你使用了三个特征,所以会有三个直方图,然后你可以通过连接这三个直方图来获得组合特征,这就是所谓的< strong>后期融合。

您可以在 [1] 中查看更多详细信息。

[1]:花卉分类的视觉词汇表,CVPR 06

关于java - 我们可以在 java opencv 中为纹理/颜色特征创建词袋吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21728804/

相关文章:

c++ - 如何在 C++ OpenCv 中使用 vector 点?

java - toString.equals 不起作用?

c++ - C++ 和字符串 vector 中的内存泄漏或其他问题

c++ - 编译时 -pthread 标志的意义

c++ - 在 C++ 中打印对象列表

c++ - 当我运行曲线匹配代码时,出现错误

java - 重新定义/ rebase native 方法

java - 服务或属性(property)未注册错误

java - 如何将 jdbc 查询的结果存储为关系以便在下一个查询中使用它

opencv - 使用pip安装旧版本的cv2