java - 使用完全相同的图片进行空分类

标签 java watson visual-recognition

我正在摆弄 Watson VR,并尝试训练,然后针对在其中一个 zip 文件中添加为正例的同一张图片执行一个简单的自定义分类器。

<小时/>

我创建分类器的代码:

ClassifierOptions cOptions = new ClassifierOptions.Builder()
    .classifierName("Mena")
    .addClass("Mena", new File("/the/path/to/my_face.zip"))
    .addClass("Mena2", new File("/the/path/to/my_face_new.zip"))
    .build();

VisualClassifier classifier = VR_SERVICE.createClassifier(cOptions).execute();

.zip 文件包含我脸部的两张不同图像 (.jpg) - 各一张。

图像文件名不包含特殊字符。

<小时/>

然后我按如下方式运行分类服务:

ClassifyImagesOptions ciOptions = new ClassifyImagesOptions.Builder()
    .classifierIds(classifier.getId())
    .images(new File("/the/path/to/my_face.jpg")) // same file as one of the images 
    // uploaded previously in zip
    .threshold(0d) // tried specifying explicitly but changes nothing
    .build();

VisualClassification result = VR_SERVICE.classify(ciOptions).execute();
<小时/>

不幸的是,当我打印结果时,没有喜悦:

{
  "images_processed": 1,
  "images": [
    {
      "classifiers": [],
      "image": "my_face.jpg"
    }
  ]
}

考虑到我使用的是添加到分类器中的一张图片的完全相同的副本,我觉得我做的事情完全错误,特别是考虑到 "classifiers": []部分。

有什么指点吗?

最佳答案

The .zip files contain two different images (.jpg) of my face - one each.

训练时,包含示例的 zip 文件中每个文件必须至少有 10 个唯一示例。 (唯一性由每个图像文件内容的哈希码确定。)

您检查了训练请求返回的结果吗?我怀疑它返回了 400 代码和有关最少示例数的消息。

此外,分类器中的类应该是互斥的,因为分类器训练过程正在学习第 1 类与其他类的不同之处。例如,“ splinter 的 window ”与“正常的 window ”。该系统也没有针对人脸识别进行优化(它适用于一般场景),但提供多个类别中同一个体的图片将(在最佳情况下)导致它找到区分两组示例的任何随机差异,例如服装或照明条件。

关于java - 使用完全相同的图片进行空分类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41701209/

相关文章:

unity-game-engine - (Unity 5.6) (Watson SDK) 我的 'text to speech' 小部件不会解析/播放关联的字符串

尝试在 java spring 中连接 watson 音调分析器时出现 java.net.ConnectException

java - 我想深入了解 Softlayer 云中存储的图像,而无需使用 ibm watson Visual Recognition 将其下载到本地

swift - IBM Watson Visual Recognition API key 失败 - Xcode Swift

java - Zip 文件 Java 的文件权限

java - Puppet安装冗余的java 7

java对Byte的按位运算

java - 通过handleValidationErrors()调用在Stripes中显示验证错误

node.js - Watson Node.js SDK for Conversation Service 的更新

node.js - Watson Visual Recognition - 未经授权