Anda perlu memasang gambar dan menambahkan ikhtisar agar seluruh gambar tidak pernah dibaca ke dalam memori pada saat yang bersamaan. GeoServer menyediakan datastore piramida gambar untuk tujuan ini.
Saya menulis catatan ini yang menjelaskan bagaimana saya mengatur ini di mesin saya. Langkah kuncinya adalah menggunakan GDAL untuk membangun piramida menggunakan perintah berikut:
mkdir bmpyramid
gdal_retile.py -v -r bilinear -levels 8 -ps 2048 2048 -co \
"TILED=YES" -targetDir bmpyramid \
bluemarble.tif
Dimana-
- -v: output verbose, memungkinkan pengguna untuk melihat setiap gulir pembuatan file dengan, sehingga mengetahui kemajuan sedang dibuat (konstruksi piramida besar bisa memakan waktu berjam-jam)
- -r bilinear: gunakan interpolasi bilinear saat membangun level resolusi yang lebih rendah. Ini adalah kunci untuk mendapatkan kualitas gambar yang baik tanpa meminta GeoServer untuk melakukan interpolasi yang mahal dalam memori
- -levels 8: jumlah level dalam piramida
- -ps 2048 2048: setiap ubin di piramida akan menjadi 2048x2048 GeoTIFF
- -co "TILED = YA": setiap ubin GeoTIFF di piramida akan menjadi ubin dalam
- (Tidak digunakan di sini) -co "COMPRESS = JPEG": setiap ubin GeoTIFF dalam piramida akan dikompresi JPEG (berdagang ukuran kecil untuk kinerja yang lebih tinggi, cobalah tanpa parameter ini juga)
- -targetDir bmpyramid: membangun piramida di direktori bmpyramid. Direktori target harus ada dan kosong
- bmreduced.tiff: file sumber
Catatan utilitas untuk gdal_retile.py .