Menggunakan opsi Hillshade di ArcMap?

15

Berikut ini adalah gambar cantik dari raster yang saya gunakan - tanpa efek diterapkan - hanya jalur warna dan histogram yang disesuaikan untuk menunjukkan semua bantuan - meskipun dengan cara yang sangat 2D!

masukkan deskripsi gambar di sini

Saya memiliki layer raster yang ingin saya tampilkan dengan hillshade sebagai default. Saya dapat melakukan ini dalam kode dan efeknya sama dengan memilih opsi Hillshade di ArcMap (lihat di bawah):

masukkan deskripsi gambar di sini

Namun ketika Anda melakukan ini - itu terlihat mengecewakan:

masukkan deskripsi gambar di sini

Terutama jika Anda memperbesar raster Anda melihat semua jenis articfacts grid - yang tidak terlihat bagus sama sekali!

masukkan deskripsi gambar di sini

Namun jika saya membuat layer Hillshade yang tepat menggunakan raster dengan Spatial Analyst dan overlay dengan transparansi 85% itu terlihat cukup bagus dan sangat berbeda !:

masukkan deskripsi gambar di sini

  1. Bagaimana saya dapat mencapai efek ini di ArcMap dan mengganti fungsi default dari opsi Hillshade (saya yakin ini tidak mungkin, atau apakah itu beberapa pengaturan yang saya lewatkan yang menyebabkan raster ditampilkan dengan buruk). Jika dimungkinkan untuk menimpa atau memilih pengaturan yang benar - apakah mungkin dilakukan di ArcObjects.
  2. Jika opsi 1 tidak memungkinkan, dapatkah saya membuat efek saya dengan membuat layer Hillshade (tanpa menggunakan Spatial Analyst) dan secara efektif menggabungkannya ke raster asli - yaitu saya tidak ingin orang melihat dua lapisan dalam daftar isi di ArcMap . Saya hanya ingin satu layer tetapi dengan rendering hillshade pilihan saya / konfigurasi. Saya perlu melakukan ini secara pemrograman juga yaitu ArcObjects.

Satu hal yang saya pelajari adalah bahwa Anda harus memiliki DEM Anda di Unit Referensi Spasial dan pengukuran yang benar atau hillshade yang dihasilkan terlihat terlalu hitam dan berlebihan - lihat video ini untuk mencari tahu lebih lanjut - ini adalah penjelasan yang sangat bagus.

Jadi saya pikir saya sekarang tahu apa yang harus saya lakukan dalam memproduksi beberapa hillshading berkualitas tinggi, tapi saya pikir itu akan mengambil beberapa kode ArcObjects tweaker tingkat rendah. Saya pikir saya perlu membuat rendering grafik saya sendiri dan pasang ini ke ArcMap (saya punya dll yang membuat bitmap grid dengan cara yang keren). Saya pikir tempat yang baik untuk menunjukkan ini adalah untuk menimpa acara Draw () pada sesuatu seperti IRasterRenderer, dan masukkan rendering gambar saya sendiri. Tentu saja mungkin akan sedikit rumit dengan proyeksi ulang dll.

Adakah yang pernah melakukan rendering grafis tingkat rendah apa pun di ArcMap - jika demikian, bisakah Anda menawarkan panduan atau hal-hal yang harus saya ketahui?

Vidar
sumber
1
Saya belum pernah melakukan ini, tetapi saya merasa Anda dapat menggunakan IRasterRenderer untuk menyesuaikan cara membuat raster tertentu. Jika Anda memiliki dua dataset (hill + regular), Anda dapat menggunakan IRasterCursor untuk menyatukan dan menggambar masing-masing piksel.
George Silva
5
Untuk apa nilainya, saya baru saja mencoba hal yang sama kemarin di ArcMap dan terlihat mengerikan juga.
Chad Cooper
@ George, saya pikir RasterCursor mengubah nilai CELL - sedangkan saya pikir saya ingin mengubah nilai warna - yaitu secara efektif mengubah intensitas warnanya berdasarkan nilai hillshade - apakah Anda tahu cara mengubah nilai RGB spesifik piksel demi piksel?
Vidar
1
Sepertinya "efek hillshading" dihitung dengan terlebih dahulu membulatkan nilai ketinggian, yang secara efektif mengubah DEM Anda menjadi banyak teras kecil yang tiba-tiba. Jika ini benar, kemungkinan Anda tidak akan menemukan solusinya: kirimkan laporan bug. Anda dapat mengatasi masalah dua lapis dengan mengelompokkan kisi dan layer hillshade. BTW, saya percaya opsi ini baru dalam versi 10; akan membantu untuk memperbarui tag dengan menunjukkan versi ArcMap apa yang Anda gunakan.
whuber
@Vidar dokumen menentukan bahwa kursor Raster ada untuk "akses raster yang dioptimalkan". Mereka harus bisa membaca juga.
George Silva

Jawaban:

20

Gunakan Bilinear Interpolasi resampling selama tampilan

Anda dapat agak meningkatkan tampilan dengan mengubah metode resampling yang digunakan dari default Nearest Neighbor ke Bilinear Interpolasi. Layer Properties -> Display Tab -> Resample selama tampilan menggunakan: Bilinear Interpolasi.

Efek ini bekerja paling baik dengan DEM dan ramp warna hitam putih standar.

Anda akan mendapatkan hasil yang jauh lebih baik dan lebih banyak kontrol atas tampilan saat menggunakan 2 raster seperti yang telah Anda lakukan. Pastikan Anda juga menggunakan metode resampling Bilinear Interpolasi selama tampilan.

Tambahkan DEM:

masukkan deskripsi gambar di sini

Beralih "Gunakan Efek Hillshade" pada: masukkan deskripsi gambar di sini

Render sebagai berikut di layar: masukkan deskripsi gambar di sini

Ubah resampling selama tampilan ke Bilinear Interpolasi: masukkan deskripsi gambar di sini

Render sebagai berikut di layar: masukkan deskripsi gambar di sini

Jakub Sisak GeoGraphics
sumber
Anda benar dalam apa yang Anda katakan - ini memang menyingkirkan artefak gridding - tetapi hillshading masih terlihat mengerikan. Di satu sisi, saya kira artefak adalah semacam masalah sekunder - karena hillshading yang saya benar-benar ingin paku. Tetapi terima kasih atas upaya dalam jawaban Anda!
Vidar
10

Arcmap on the fly hillshade, metode yang dijelaskan, cepat dan kotor dan tidak pernah dimaksudkan untuk menggantikan hasil hillshade dari Spatial Analyst dan / atau 3D Analyst. Meskipun istilah yang sama digunakan untuk menggambarkan keduanya, keduanya tidak sama sekali.

Untuk membuat hillshade sejati tanpa Spatial Analyst, Anda dapat mencoba GDAL's gdaldem :

gdaldem hillshade dem.tif shade.tif

TileMill Terrain Data Tutorial memiliki ikhtisar yang bagus tentang cara menggunakan gdaldem untuk membangun hillshade komposit dengan pewarnaan hipsometrik.
detail hillshade dan bantuan komposit hypsometric

Jika utilitas tidak cukup langsung untuk aplikasi Anda, kode sumber C ++ untuk gdaldem ada di sini .

matt wilkie
sumber
1
Barang bagus! Terutama menyukai ide menggabungkan hasil dan menggunakan Hillshade serta lereng. Tidak pernah terpikir untuk menggabungkan keduanya. Harus mencobanya.
Jakub Sisak GeoGraphics
gdaldem jelas merupakan cara untuk pergi untuk beberapa operasi GIS atas ArcGIS. Hillshading, saya telah pelajari, jelas merupakan salah satu dari operasi semacam itu.
GIStack
1
@jakub, jika Anda menyukai gagasan hillshade yang dikombinasikan dengan kemiringan dan hypsometry, lihat karya Tom Patterson tentang warna hypsometric Cross-blended dan Memproduksi Peta Warna Alami dengan Data Penutupan Satelit . Teknik-teknik yang dibahas bertujuan untuk mengatasi keterbatasan dengan pewarnaan hipsometrik standar dari asosiasi yang sering tidak tepat dari dataran rendah kaya dengan sayuran dan dataran tinggi berwarna coklat / merah dengan gurun atau tanah tandus. Layak dibaca dan dipelajari.
matt wilkie
7

Jika Anda mencari hillshade berpenampilan bagus yang membutuhkan waktu untuk dibuat, tetapi bagus untuk proyek yang lebih besar di mana ia akan mendapatkan banyak paparan, Anda dapat mencoba Metode Swiss Hillshade - memerlukan 3 layer, tetapi Anda kemudian dapat mengekspornya ke satu tiff georeferensi untuk menghemat ruang dan untuk portabilitas. Metode ini TIDAK memerlukan Spatial Analyst, saya percaya, jadi ini bukan jawaban langsung untuk pertanyaan OP, tetapi mungkin bermanfaat bagi orang lain yang melihat metode hillshade di ArcGIS. Metode ini bekerja di sistem GIS lain juga, tetapi kotak alat yang ditautkan adalah untuk ArcGIS.

Sunting 11/2014: Esri baru-baru ini merilis alat baru untuk membuat Hillshades. Itu terlihat sangat apik dan harus menyatu dengan alur kerja si Penanya. Mereka memperkenalkannya di sini dan Anda dapat mengunduh kode dan instruksi pemasangan di sini

nicksan
sumber
Saya telah menggunakan ini beberapa kali baru-baru ini. Sangat bagus. Ditambahkan ke tas trik saya. Terima kasih telah berbagi.
Kstoney
Tidak masalah - Saya senang Anda menemukannya berguna. Itu pasti membuat hillshade yang lebih bagus, dan saya suka bahwa saya bisa menjaga layer saya di sekitar dan hanya mengubah warna pada dem untuk menekankan semuanya sedikit berbeda
nicksan
1
Terima kasih untuk ini. juga, pada 10.1, Raster Shader ( blogs.esri.com/esri/apl/2013/05/02/… ) memberikan kontrol yang jauh lebih baik terhadap tampilan raster dan memungkinkan Anda untuk membuat lereng bukit yang bagus.
SoilSciGuy
4

Ketika Anda mengatakan dalam item # 2 "bisakah saya membuat efek saya dengan membuat layer Hillshade (tanpa menggunakan Spatial Analyst)", apakah maksud Anda aplikasi alternatif untuk membuat hillshade?

Jika Anda ingin menggunakan aplikasi di luar Spatial Analyst, saya baru saja belajar tentang (tetapi tidak pernah menggunakan) " SEXTANTE for ArcGIS extension " ( gratis ), yang memungkinkan pengguna untuk mengkonsumsi alat SEXTANTE di ArcMap. Jika Anda menonton klip video ini , Anda dapat melihat bahwa mereka menunjukkan cara untuk membuat hillshade.

RyanKDalton
sumber
Tidak juga - saya hanya ingin menerapkan teknik hillshading sendiri tanpa menggunakan ESRI. Saya telah menambahkan komentar tambahan di posting pembuka saya.
Vidar
4

Saya selalu diperintahkan untuk meningkatkan z eksagerasi saat melakukan hillshade.
Saya baru saja mencoba 100 pada milik saya dan tampaknya agak ekstrim.
Juga mengubah jenis peregangan membuat perbedaan besar dalam tampilan hillshade.
Karena Anda berbicara tentang tampilannya, Anda mungkin juga melihat item bantuan ini. esir help
Yang mengatakan bahwa hillshading iis diterapkan pada resolusi tampilan pixel.
Dan untuk mengubah sudut penerangan,
Esri
juga membantu mengubah arah dan kontras

Brad Nesom
sumber