0

これが私の最初の質問です。できるだけ明確にしようと思います。

私は 2 つの tiff ファイルを持っています。そのうちの 1 つは、20 x 20 km の領域と 2.93m ピクセル サイズの 4 バンド PlanetScope 衛星画像です。2 番目の tiff ファイルは 1 バンドの Top10road 画像で、ピクセルが属する道路の種類を示す 0 から 9 までのラベルが含まれています。0 は非道路です。

ファイルは次のリンクからダウンロードできます: https://www49.zippyshare.com/v/5pR3GPv3/file.html

RGBN イメージには、形状 (6496、6723) と uint16 タイプの 5 つのバンドがあるように見えます。5 番目のバンドには 1 つの値しか含まれていませんが、それが何を意味するのかはわかりません。

私の目標は、CNN と U-net を実行して、セマンティック セグメンテーションによって衛星画像から道路を抽出し、結果を比較することです。(これは単なるサンプル セットです。最終的なセットは 140 x 140 km になりますが、この小さなサブセットで少しテストしています)

RGBN 画像の表示に問題があります。私は tifffile、PIL を試し、最終的に各バンドを numpy 配列としてインポートしてから、pyplot で視覚化しました。後者は各バンドの画像を個別に作成しましたが、すべてのバンドを積み重ねて RGBN 画像を表示することはできません。

次のコードは、私が試したものの簡略版です。

from matplotlib import pyplot as plt
import numpy
import rasterio
with rasterio.open('ede_subset_293_20180502_planetscope.tif') as src:
    r, g, b, n, x = src.read()

#works
plt.imshow(r, interpolation='nearest')
plt.show()

#does not work :(
rgbn = np.dstack((r,g,b,n))
plt.imshow(rgbn, interpolation='nearest')

rgb = np.dstack((r,g,b,n))
plt.imshow(rgb, interpolation='nearest')

提案をお寄せいただきありがとうございます。

4

0 に答える 0