我有一个关于 Neuroph 2.6 的 Neuroph ImageRecognition 的 FractionRgbData
类的问题。我不完全理解静态 FractionRgbData.convertRgbInputToBinaryBlackAndWhite(double[] inputRGB)
方法的实现(请参阅下面的方法副本)。更具体地说,我不明白为什么在 for 循环条件中将输入数组的长度除以 3,并且 for 循环变量 i
每次迭代也递增 3?我认为将输入数组除以 3 就足够了。
请注意,此方法用于 ImageRecognitionHelper
类和此类显示 inputRGB
double 来自 FractionRgbData.getFlattenedRgbValues()
可以看出 here .据我所知,inputRGB
双数组依次包含图像的红色、绿色和蓝色 channel 。
希望有人可以阐明这个实现!
提前致谢
巴里荷兰
/**
* 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 Image Recognition Plugin 是否正确地将 RGB 图像转换为黑白图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10466260/