質問編集履歴
3
質問された内容を追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -35,6 +35,8 @@
|
|
35
35
|
########## 確認 (結果が-1~1の範囲を超えてしまう)
|
36
36
|
print( 'above 1 : {}'.format( np.count_nonzero(ndvi > 1)) ) #above 1 : 1792215
|
37
37
|
print( 'below -1 : {}'.format( np.count_nonzero(ndvi < -1)) ) #below -1 : 583745
|
38
|
+
print('ndvi, min:{}, max:{}'.format(ndvi.min(), ndvi.max()))
|
39
|
+
#ndvi, min:-1.7976931348623157e+308, max:1.7976931348623157e+308
|
38
40
|
```
|
39
41
|
|
40
42
|
### 試したこと
|
2
codeを修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -28,7 +28,7 @@
|
|
28
28
|
########## 計算
|
29
29
|
|
30
30
|
ir = ir.astype(np.float) #小数計算ができるように浮動小数点に変換
|
31
|
-
red =
|
31
|
+
red = red.astype(np.float)
|
32
32
|
ndvi = (ir-red)/(ir+red) # 各要素に-1から1の間に値が入るはず
|
33
33
|
ndvi[ndvi==np.inf] = 0 #0割(ir+red=0の時発生)で生じたnp.infを変換
|
34
34
|
|
1
見やすく変更
title
CHANGED
File without changes
|
body
CHANGED
@@ -2,9 +2,7 @@
|
|
2
2
|
|
3
3
|
numpy同士の計算で原理的に-1から1の間にまとめられる指数を算出しようとしているのですが、
|
4
4
|
なぜか想定される範囲から値がはみ出てしまいます。
|
5
|
-
正規化植生指数:ndvi = (ir-red)/(ir+red)
|
6
|
-
参考URL:
|
7
|
-
https://ja.wikipedia.org/wiki/NDVI#:~:text=NDVI%EF%BC%88%E3%82%A8%E3%83%8C%E3%83%87%E3%82%A3%E3%83%BC%E3%83%96%E3%82%A4%E3%82%A2%E3%82%A4,%E6%8C%87%E6%95%B0%E3%80%81%E6%A4%8D%E7%94%9F%E6%8C%87%E6%95%B0%E3%81%AA%E3%81%A9%EF%BC%89%E3%80%82&text=%E3%81%AF%E8%B5%A4%E8%89%B2%E5%85%89%E3%81%AE%E5%8F%8D%E5%B0%84%E7%8E%87%E3%81%A7%E3%81%82%E3%82%8B%EF%BC%89%E3%80%82
|
5
|
+
正規化植生指数【[リンク](https://ja.wikipedia.org/wiki/NDVI#:~:text=NDVI%EF%BC%88%E3%82%A8%E3%83%8C%E3%83%87%E3%82%A3%E3%83%BC%E3%83%96%E3%82%A4%E3%82%A2%E3%82%A4,%E6%8C%87%E6%95%B0%E3%80%81%E6%A4%8D%E7%94%9F%E6%8C%87%E6%95%B0%E3%81%AA%E3%81%A9%EF%BC%89%E3%80%82&text=%E3%81%AF%E8%B5%A4%E8%89%B2%E5%85%89%E3%81%AE%E5%8F%8D%E5%B0%84%E7%8E%87%E3%81%A7%E3%81%82%E3%82%8B%EF%BC%89%E3%80%82)】:ndvi = (ir-red)/(ir+red)
|
8
6
|
|
9
7
|
おそらく内部で計算が発散しているのが原因だと思うのですが、正しく出力する方法はございますでしょうか
|
10
8
|
|