我对Neuroph 2.6的FractionRgbData类Neuroph ImageRecognition有疑问。我不完全了解静态FractionRgbData.convertRgbInputToBinaryBlackAndWhite(double[] inputRGB)方法的实现(请参见下面的方法的副本)。更具体地说,我不明白为什么在for循环条件下输入数组的长度除以3,并且for循环变量i每次迭代也以3递增?我认为将输入数组除以3应该足够了。

请注意,此方法在ImageRecognitionHelper类中使用,并且该类表明inputRGB的双精度字来自FractionRgbData.getFlattenedRgbValues(),可以在here中看到。据我了解,inputRGB双精度数组包含一个图像的红色,绿色和蓝色通道。

希望有人能对此实现有所启发!

提前致谢,

巴里(NL)

/**
 * Converts image rgb data to binary black and white data
 * @param inputRGB flatten rgb data
 * @return binary black and white representation of image
 */
public static double[] convertRgbInputToBinaryBlackAndWhite(double[] inputRGB) {
    double inputBinary[]= new double[inputRGB.length/3];

    for(int i=0; i<inputRGB.length/3; i+=3) {
        if (inputRGB>0) inputBinary = 0;
            else inputBinary = 1;
    }

    return inputBinary;
}

最佳答案

Neuroph开发人员已在Neuroph的支持论坛上回答了上述问题。可以找到here

简而言之,开发人员说实施不正确,无法正确转换为黑白。

关于java - Neuroph图像识别插件是否可以将RGB图像正确转换为黑白?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10466260/

10-11 23:16