我试图在Android应用程序中复制QGIS软件的功能。我想在图像上应用颜色渐变(红色到绿色lut)以进一步有效分析。
在应用NDVI(归一化差异植被指数)指示器后生成如下图像。 NDVI的值范围从-1到+1。
在应用颜色渐变后生成下图所示的图像。现在可以有效地分析该图像,因为它将植物显示为绿色,地面显示为红色。
我在Android中尝试了以下代码,其结果是NDVI是从-1到+1的NDVI值。我没有添加用于查找NDVI的最大值和最小值的代码,但对于我的图像,NDVI的最小值为0.11,NDVI的最大值为0.57:
for (int i = 0; i < width; i++) {
for (int j = 0; j < height; j++) {
final int pixel1 = src1[i][j];
final int pixel2 = src2[i][j];
final double X = pixel2 - pixel1;
final double Y = pixel2 + pixel1;
final double NDVI = (X / Y);
R = (int) ((255 * NDVI) / maxNDVI);
G = (int) (((255 * (maxNDVI - NDVI)) / maxNDVI));
B = 0;
pixels[i][j] = Color.argb((Color.alpha(pixel1)), R, G, B);
}
}
但我没有得到适当的结果。请帮我解决这个问题。