Bagaimana Anda merencanakan tiff dengan python?

Tip Python Matplotlib. Plot gambar kontur dari data yang memiliki skala besar dan perbedaan plus-minus menggunakan Python dan matplotlib. pyplot

Halaman ini menunjukkan saran saya untuk menghasilkan gambar kontur dari data yang memiliki skala besar dan perbedaan plus-minus menggunakan python dan matplotlib. pyplot. Nilai minimum dan nilai maksimum dapat ditentukan dalam kode ini

Pada artikel ini, kami telah memperkenalkan dua metode untuk mengubah data NetCDF menjadi format GeoTIFF. satu menggunakan contoh dan yang kedua menggunakan baris perintah sederhana yang memanggil

Sekarang, mari tunjukkan cara cepat membuka dan memvisualisasikan file GeoTIFF dengan baris kode Python sederhana

Metode dengan Python


Jika Anda merasa nyaman dengan bahasa Python dan ingin mengintegrasikan visualisasi .tiff data dalam proses skrip manipulasi, berikut adalah metode sederhana untuk mendapatkan gambaran umum menggunakan rutin Python

Langkah pertama adalah membuka file .tiff. Kami akan menggunakan paket rasterio_

import rasterio
import rasterio.plot

data_name = "./mydirectory/medsea_bottomT_rester.tiff"
tiff = rasterio.open(data_name)
rasterio.plot.show(tiff, title = "Bottom Temperature in the Medierranean Sea")

Bagaimana Anda merencanakan tiff dengan python?

Jika sumbu sesuai dengan koordinat bujur (x) dan lintang (y), dalam konfigurasi [-180;180]

Paket rasterio juga memungkinkan untuk mendapatkan beberapa informasi tentang file .tiff

  • tiff.bounds. menunjukkan kotak pembatas spasial

  • .tiff0. jumlah band

  • .tiff1. jumlah kolom dari dataset raster

  • .tiff2. jumlah baris dataset raster

  • .tiff3. sistem referensi koordinat

Untuk informasi lebih lanjut tentang paket Python ini, silakan baca halaman dokumentasi rasterio

Apa berikutnya?


Mari temukan cara membuka dan memvisualisasikan file GeoTIFF menggunakan QGIS juga

Jangan ragu untuk berbagi umpan balik Anda dengan kami


Jika Anda menghadapi masalah apa pun tentang langkah apa pun dari artikel ini, jangan ragu untuk menghubungi kami

  • melalui sesi chat yang tersedia di pojok kanan bawah halaman

  • melalui halaman web kontak kami

  • melalui email ke tim dukungan kami (servicedesk. cmemsATmercator-ocean. uni eropa)


Dokumen ini dibuat dalam konteks Copernicus Marine Environment Monitoring Service (CMEMS)

Kegiatan yang mengarah ke hasil ini telah dikontrak oleh Mercator Ocean International, operator CMEMS atas nama Uni Eropa. Semua informasi dalam dokumen ini diberikan "sebagaimana adanya" dan tidak ada jaminan atau jaminan yang diberikan bahwa informasi tersebut cocok untuk tujuan tertentu

Para penggunanya menggunakan informasi atas risiko dan tanggung jawab mereka sendiri. Untuk menghindari segala keraguan, Komisi Eropa dan Mercator Ocean International tidak bertanggung jawab sehubungan dengan dokumen ini, yang hanya mewakili pandangan penulis

Biasanya, bekerja dengan data geografis, Anda harus menggunakan perangkat lunak GIS. Untuk memplot banyak plot dengan kualitas yang sama mungkin merepotkan. Oleh karena itu, beberapa orang memilih untuk mengotomatiskan proses; . Jadi, inilah contoh sederhana memplot file GeoTIFF

Pertama-tama muat dataset Anda menggunakan xarray.open_rasterio

import xarray as xr
dem = xr.open_rasterio('https://download.osgeo.org/geotiff/samples/pci_eg/latlong.tif')
dem = dem[0] #getting the first band
_

Cara termudah untuk memplot adalah dengan menggunakan fungsi plot xarray dem.plot()

Bagaimana Anda merencanakan tiff dengan python?

Plot ini memiliki kelemahan tertentu. Pertama-tama, label x dan y terlalu kecil; . Anda dapat mengubahnya agar cocok untuk diterbitkan

Saya menggunakan ProPlot. Ini adalah perpustakaan yang mengesankan untuk plot berkualitas publikasi. Ini adalah keseluruhan skrip dan output

Membaca gambar sangat mudah dengan python, karena ada banyak pustaka yang tersedia untuk membaca, mengedit, dan memvisualisasikan berbagai format gambar. Contoh perpustakaan ini adalah Matplotlib, OpenCV, Bantal, dll. Pustaka ini bekerja sangat baik dengan format gambar populer seperti. png,. bertengkar,. jpg,. jpeg, dll. tetapi tampaknya tidak berfungsi untuk gambar GeoTiff

Alasannya bisa dengan mudah ditebak jika kita memahami perbedaan format GeoTiff dengan format gambar lainnya. Definisi sederhana akan menjadi sesuatu yang diberikan di bawah ini

GeoTIFF adalah .tif_ standar atau format file gambar yang menyertakan informasi spasial (georeferensi) tambahan yang disematkan di. tif file sebagai tag

Dengan tag, itu berarti memiliki beberapa metadata tambahan seperti Luas spasial, CRS, Resolusi, dll. beserta nilai pikselnya. Ini adalah format distribusi populer untuk citra satelit dan foto udara

Artikel ini membahas berbagai cara membaca dan memvisualisasikan gambar-gambar ini dengan python menggunakan notebook jupyter. Pustaka yang digunakan adalah GDAL, rasterio, georaster, dan Matplotlib (untuk visualisasi). Pustaka ini akan membantu kita mengonversi gambar tersebut ke format array numpy sederhana dari sana kita juga dapat melakukan transformasi gambar lainnya menggunakan numpy atau TensorFlow meskipun saya belum membahas transformasi dalam artikel ini

Langkah-langkah instalasi disebutkan dalam dokumentasi perpustakaan ini, saya telah menyediakan tautannya di bagian referensi, silakan baca

Menggunakan RasterIO

RasterIO diimplementasikan oleh Mapbox dan menyediakan API python untuk membaca dataset yang direferensikan secara geografis. Juga, dokumentasi menyebutkan bahwa tidak seperti binding python GDAL, ia tidak mengalami masalah penunjuk C yang menggantung dan masalah penunjuk lainnya yang dapat merusak program Anda

import rasterio
from rasterio.plot import show
fp = r'GeoTiff_Image.tif'
img = rasterio.open(fp)
show(img)

Jangan bingung dengan nilai skala sumbu x dan y, itu hanya nilai bujur dan lintang. Jika Anda ingin membaca masing-masing band, gunakan kode di bawah ini

fp = r'GeoTiff_Image.tif'
img = rasterio.open(fp)
# mention band no. in read() method starting from 1 not 0
show(img.read(3))

Data terkait gambar dengan RasterIO

# No. of Bands and Image resolution
dataset.count, dataset.height, dataset.width
# Coordinate Reference System
dataset.crs
_

data terkait gambar dengan RasterIOUs menggunakan georaster

Versi yang diinstal dengan pip untuk georaster adalah 1. 25. Versi ini mungkin memberi Anda beberapa masalah, jika Anda menghadapinya, buka saja direktori instalasi georaster Anda terlebih dahulu. Kode di bawah ini akan memberi tahu Anda jalur direktori instalasi

import georaster
print(georaster.__file__)

Sekarang, temukan georaster. py di sana dan ubah isinya dengan konten di georaster ini. file py

Di bawah ini adalah kode untuk memvisualisasikan gambar yang memiliki lebih dari satu pita (atau saluran)

import georaster
import matplotlib.pyplot as plt
# Use SingleBandRaster() if image has only one band
img = georaster.MultiBandRaster('GeoTiff_Image.tif')
# img.r gives the raster in [height, width, band] format
# band no. starts from 0
plt.imshow(img.r[:,:,2])
_

Merencanakan gambar tanpa matplotlib

Kita dapat langsung menggunakan metode plot daripada memilih dan memvisualisasikan masing-masing band

metode plot georasterMenggunakan GDAL

Ini adalah pustaka paling populer saat menangani gambar GeoTiff tetapi terkadang sulit untuk dipasang dan membutuhkan banyak usaha untuk akhirnya dapat menggunakannya. GDAL memiliki sebagian besar metode dan kelasnya diimplementasikan dalam C++, kami menggunakan binding python di sini. Sebagian besar perpustakaan seperti georaster menggunakan GDAL dan menyediakan antarmuka python yang bagus dan sederhana

Bagaimana cara membuka gambar TIF dengan Python?

File tiff yang akan dibuka dapat diunduh disini. .
Mengimpor modul. Impor modul gdal dan ogr dari osgeo
Membuka file. Dataset raster dapat dibuka menggunakan gdal. open() dengan meneruskan nama file dan path
Mendapatkan metadata. Kita dapat mengambil metadata dari file tif menggunakan metode GetMetadata()

Bagaimana cara menyimpan angka sebagai TIFF?

Pada menu “File”, arahkan ke “Save as”, lalu pilih “TIFF ” di kotak dialog “File type” . 1. Pilih gambar di Excel atau PowerPoint.

Bagaimana cara membaca geotiff python?

Untuk membaca data, gunakan the. metode baca() . Ini akan mengembalikan array zarr karena sering kali file geotiff tidak dapat masuk ke dalam memori.

Bisakah OpenCV membaca TIFF?

Jadi, OpenCV selalu dapat membaca JPEG, PNG, dan TIFF .