Konfigurasikan band mana yang akan ditampilkan dari layanan gambar ArcGIS 4-band?

14

USDA (melalui Peta Nasional) menyediakan 4-band NAIP ArcGIS "ImageServer" ( layanan ) untuk sebagian besar negara bagian di AS. Saya berhasil terhubung ke layanan WMS di QGIS seperti dijelaskan di sini , yang memuat citra ke QGIS menggunakan pita RGB (1,2,3) default.

Namun, saya ingin mengubah citra untuk menampilkan CIR (band 4,1,2). Pada tab "Gaya", Jenis Render hanya menawarkan opsi "Data warna Singleband", bukan opsi "Warna multiband" yang dijelaskan dalam langkah 3.5 untuk raster khas di sini . Ini tampaknya merupakan batasan dari Layanan WMS .

Anda dapat melakukan ini dari layanan yang sama di ArcGIS Desktop menggunakan titik akhir REST. Contoh webmap ArcGIS Online untuk mengubah band layanan tersedia menggunakan titik akhir REST. Cukup buka "..." pada layer, pilih "Tampilan Gambar" dan kemudian "User Defined Renderer".

MEMPERBARUI:

Saya telah bermain-main dengan Alat Pengembang di Chrome dan sampel peta ArcGIS.com dari sini, dan saya pikir saya telah menemukan sedikit info. Setelah saya mengubah pengaturan tampilan gambar, saya perhatikan beberapa parameter permintaan ditetapkan sebagai:

https://gis.apfo.usda.gov/arcgis/rest/services/NAIP/Montana_2015_1m/ImageServer/exportImage?f=image&bandIds=3,0,1&bbox=...

Setelah saya mengubah ID band lagi, saya menyadari bahwa bandID dalam parameter kueri ini berbasis nol, bukan berbasis 1. Karenanya & bandIds = 3,0,1 benar-benar merujuk pada band 4,1,2 yang digunakan untuk menampilkan citra dalam format CIR. Jadi saya hanya perlu mencari cara mengkonfigurasi string kueri untuk QGIS untuk menerima parameter ini. Adakah pikiran?

RyanKDalton
sumber
1
Instruksi yang Anda tuju untuk berbicara tentang mengunduh data, daripada mengakses data dari WMS (Saya tahu itu berarti gambar diunduh tetapi ...) Dengan WMS Anda mendapatkan gambar yang telah dirender, biasanya Anda mengubah mengembalikan gaya gambar dengan memasok gaya Anda sendiri sebagai bagian dari SLD + WMS GetMap, permintaan, tetapi saya tidak yakin apakah Anda dapat mengubah urutan band (atau band mana) dengan SLD. Alih-alih, Anda harus mengunduh multiband tiff, dan menerapkan perubahan secara lokal. Apa yang benar-benar Anda inginkan adalah gambar yang disediakan sebagai WCS ...
nmtoken
Terima kasih atas masukannya. Saya tahu instruksi yang saya tunjuk adalah untuk bekerja dengan data lokal, tetapi saya bisa melakukan apa yang saya inginkan di ArcGIS Desktop menggunakan layanan gambar yang sama. Inilah yang ingin saya tiru di QGIS. Saya telah menambahkan contoh mengubah band melalui layanan web yang sama menggunakan peta web ArcGIS.com, demi kejelasan.
RyanKDalton
Apakah Anda menggunakan WMS dengan ArcGIS atau layanan sisa / sabun / gambar?
nmtoken
@nmta, Ah! Aku mengerti apa yang kamu ucapkan. Saya menggunakan layanan Citra yang dijelaskan dalam instruksi USDA di fsa.usda.gov/Assets/USDA-FSA-Public/usdafiles/APFO/… . Saya berpikir metode yang menggunakan API REST. Ketika saya mencoba menambahkan layer sebagai layanan WMS, saya mendapatkan hasil yang sama seperti di QGIS.
RyanKDalton
Mungkin dimungkinkan melalui minidriver GDAL ArcGIS REST gdal.org/frmt_ags_arcgisonline.xml dan gdal.org/frmt_wms.html tetapi contoh tidak mencakup kasus RGB / NIR Anda.
user30184

Jawaban:

1

Layanan WMS yang memenuhi OGC adalah gambar. Jika layanan gambar diterbitkan 4 band, versi WMS hanya bisa RGB bukan RGBI. Saat ini, QGIS tidak dapat memuat layanan Gambar ESRI (tidak ada plugin Layanan Gambar ESRI).

Layanan gambar itu sendiri dapat diubah menjadi inframerah dengan menggunakan ArcMap, atau Arc Pro. Klik kanan layer pada daftar isi, lalu pergi ke properti, lalu pergi ke symboloy, dan kemudian ubah band atas "Merah" ke Band_4, band kedua "Hijau" ke Band_2, dan kemudian band ketiga "Biru" ke Band_1.

Ada rute python QGIS tapi saya belum dapat menggunakannya Saya menggunakan 3.2). Saya mendapatkan kesalahan sertifikat GDAL ketika saya menjalankannya. Tetapi tidak yakin apakah itu pemasangan lokal saya plus firewall kami, atau kesalahan GDAL yang sebenarnya.

Di QGIS di bawah Plugin ada konsol python (jika Anda tidak memiliki ini maka Anda harus menginstalnya). Salin dan rekatkan apa yang saya miliki di bawah ini ke konsol python (ini adalah contoh menggunakan NAIP Alabama.)

qgis.utils.iface.addRasterLayer (" https://gis.apfo.usda.gov/arcgis/rest/services/NAIP/Alabama/ImageServer?f=json&pretty=true ", "raster")

Catatan: Url dimuat di luar QGIS - https://gis.apfo.usda.gov/arcgis/rest/services/NAIP/Alabama/ImageServer?f=json&pretty=true

Enolan
sumber