java - java中图像的视觉相似度

标签 java image image-processing image-segmentation feature-extraction

您好,我有一个与基于内容的图像检索相关的项目。我对这个项目应该采取什么标准有疑问。当我搜索这个时,我得到了两种方法特征提取和图像分割和区域操作。哪种方法更有效?

最佳答案

都不是。回答这个问题需要您进行一些研究。图像识别通常通过以下步骤完成

  • 进行一些预处理以过滤掉不必要的特征(取决于上下文,对于文本识别,您可以将图像二值化,对于面部识别,可以将它们设为灰度......)
  • 查找感兴趣的区域(在文本识别的情况下,您将尝试定位文本行/字形,在面部的情况下,应用一些 haar 级联来查找面部所在的位置 - 也取决于您的图像集)
  • 特征提取(有很多不同的方法,对于某些形状,像 Hu 这样的不变矩是很好的解决方案,对于人脸,您可以使用 Zernike 矩获得更好的结果 - 它们基于极坐标)
  • 匹配(更容易的部分:你有一些特征向量,通常是双倍的,现在你必须将它与其他特征向量/vector 类别相匹配 - 这里你可以进行聚类分析,也有不同的技术)

您可能会在 JavaOCR 项目(适用于 Android 的文本识别)中看到所有这些操作 - 但请从源代码编译它,因为版本相当旧):

http://sourceforge.net/projects/javaocr/

关于java - java中图像的视觉相似度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10444344/

相关文章:

java - 如何在android中以编程方式设置 Activity 的父 Activity ?

java - 按条件从数组列表中选择 3 个元素

html - 我无法将图像左对齐,然后将页脚标记内的文本与图像的右侧对齐

python - TensorFlow - 显示来自 MNIST 数据集的图像

python - 如何使用python将存储在列表中的像素转换为图像?

java - 如何在命令行参数中使用省略号?

java.concurrent.ReentrantLock - 为什么我们要多次获取同一个锁

php - 在 MySql 中保存图像文件

opencv - tesseract 无法准确读取所有数字

c# - 编码不带傅立叶函数的 UnsharpMask