Category Archives: OpenSource

Belajar Flask (1)

Flask itu adalah sebuah micro-framework berbasis Python, awalnya dibuat Armin Ronacher untuk lucu-lucuan saat April Mop 2010. Ia terkejut setelah menyadari banyaknya orang yang serius mengembangkan proyek Flask.

Flask, berbeda 180 derajat dengan Django, framework Python popular lainnya. Bila Django didesain dengan kemampuan palugada (apa lu minta gua ada), maka Flask didesain secara minimalis. Aplikasi Hello World-nya dapat dibuat hanya dengan menggunakan 7 baris kode saja.

Instalasi Flask pun cukup mudah. Dengan pip, Anda cukup mengetikkan perintah pip install Flask, maka semua dependensi akan diinstal secara otomatis.

Setelah Flask terinstal, untuk membuat program sederhana, silakan Anda coba seperti baris kode di bawah:

from flask import Flask
app = Flask(__name__)
@app.route(‘/‘)
def index():
return ‘Hello, cantik!’
if __name__ == ‘__main__’:
app.run(debug=True)

… sudah cukup sampai di sini dulu ya, susah payah saya menulisnya nih, sudah lama saya tidak menulis blog ..

Iklan

Convert image data using gdal_translate

In remote sensing data analyses, usually we have to convert Landsat data to Top of Atmosphere value. This process will change the original digital number, in Landsat 5 from 8 bit to decimal with the range between 0 and 1. If the data is Landsat 8 then it will change from 16bit data to decimal with range between 0 and 1.

If you want to analyze the ToA (reflectance), i.e., land cover classification, you can directly use the image. The problem will appear if you want to analyze with certain formula that require 8bit data, for example Forest Canopy Density Model. So, after you do radiometric correction to reflectance, you have to rescale into 8bit integer.

Usually I use GRASS GIS for this purpose. But somehow today I found it’s difficult to use GRASS GIS. The result seems strange. After hours of trying, I found I trick to do the process.

GDAL to the rescue

We can use gdal_translate to convert data from any kind of range into 8bit integer. There are two steps to do this :

  1. Investigate the statistics of the data source. Use the minimum and maximum value in the data source
    • gdal_info filename.tif -stats
    • Metadata:

          STATISTICS_MAXIMUM=0.38453308863717

          STATISTICS_MEAN=0.11160144537989

          STATISTICS_MINIMUM=0.010000000000004

          STATISTICS_STDDEV=0.063021296050904

  2. Translate the data using gdal_translate command
    • gdal_translate -of GTiff -ot Byte -scale 0.010000000000004 0.38453308863717 1 255 source.tif target.tif

RGB Color Correction di TileMill

Semalam suntuk kami berusaha mencari cara bagaimana melakukan setting RGB di TileMill, sehingga data yang bernilai NULL atau NODATA menjadi transparan. Kami menemukan situs http://www.mapbox.com/blog/tilemill-raster-colorizer-analysis/ , namun setelah (seperti biasa), copy-paste kodenya, ada pesan kesalahan bahwa raster-colorizer-default-mode tidak dikenal. Pesan ini muncul karena TileMill yang kami gunakan merupakan versi stabil, sedangkan fungsi di atas baru ada di versi development. Oleh karena itu, kami update TileMill menjadi versi development. Sebagai catatan, kita hanya bisa melakukan update apabila memilih Install Developer Builds pada Updates Preferences.

Berikut kode yang kami gunakan, sehingga citra awal seperti pada Gambar 1, berubah menjadi seperti pada Gambar 2. Yang perlu diperhatikan adalah:

raster-colorizer-epsilon:0.2; 
Nilai 0.2 merupakan simpangan baku dari histogram
stop(0,transparent)
Angka 0 adalah angka digital yang merupakan representasi nilai NULL atau NODATA

stop(1,#000)
Angka 1 adalah angka digital yang merupakan nilai minimum citra, dan diberikan warna hitam
stop(255,rgb(255,0,0))
Angka 255 adalah angka digital yang merupakan nilai maksimum citra. Apabila datanya 8bit, maka nilainya adalah 255, sedangkan apabila datanya 11 bit, maka nilainya adalah 2^11.

style.mss

#red {
raster-scaling:gaussian;
raster-comp-op:plus;
raster-colorizer-default-mode:linear;
raster-colorizer-default-color: transparent;
raster-colorizer-epsilon:0.2;
raster-colorizer-stops:
stop(0,transparent)
stop(1,#000)
stop(255,rgb(255,0,0))
}

#green {
raster-scaling:gaussian;
raster-comp-op:plus;
raster-colorizer-default-mode:linear;
raster-colorizer-default-color: transparent;
raster-colorizer-epsilon:0.2;
raster-colorizer-stops:
stop(0,transparent)
stop(1,#000)
stop(255,rgb(0,255,0))
}

#blue {
raster-scaling:gaussian;
raster-comp-op:plus;
raster-colorizer-default-mode:linear;
raster-colorizer-default-color: transparent;
raster-colorizer-epsilon:0.2;
raster-colorizer-stops:
stop(0,transparent)
stop(1,#000)
stop(255,rgb(0,0,255))
}

Visualisasi RGB

Gambar 1. Visualisasi RGB Sebelum Koreksi

Screen Shot 2013-06-06 at 12.31.22 PM

Gambar 2. Visualisasi RGB setelah koreksi

Konversi data vektor ke raster

GRASS GIS, sebuah perangkat lunak open source remote sensing / GIS, adalah perangkat lunak andalan saya dalam melakukan proses konversi data dari vektor ke raster. Mengapa? Karena GRASS GIS dapat diandalkan dalam cleaning topology. Seringkali kita mendapatkan data vektor yang tidak jelas asal-usulnya, tidak jelas pula topologinya. Kalau begini, kadang-kadang (atau sering), saat kita menghitung luas kelas lahan tertentu misalnya, luas total obyeknya akan lebih besar dari luas wilayah sebenarnya. Nah, di sinilah GRASS GIS bisa menjadi pahlawan bertopeng, penolong untuk mempercepat proses analisis 😀 .

Baca lebih lanjut

Berbagi Printer

Ada dan berfungsinya sebuah printer di kantor adalah sebuah kebutuhan. Setidaknya menurut pendapat saya. Ada tapi tidak berfungsi, ya pasti membuat kesal. Seperti yang saya alami berulang-ulang. Mengapa bisa demikian? Karena berbagi printer di kantor ternyata tidaklah mudah. Ada orang yang main angkut saja. Begitu perlu printer, diangkutlah printer tersebut ke mejanya. Dan lupa untuk dikembalikan. Ada orang yang tahunya pakai saja. Begitu rusak, ia beralih ke printer lain yang masih berfungsi, tidak mencoba untuk memperbaiki dahulu kondisi printer yang rusak tersebut. Karena tidak tahan, akhirnya saya terpaksa membeli printer. Untuk dipakai sendirikah? Tidak lah. Rekan yang lain boleh menggunakannya, asal dengan protokol tertentu.

Baca lebih lanjut

Vote for me, please

Rekan-rekan, saudara-saudara sebangsa dan setanah air,

Ini bukan pidato dari seorang calon presiden. Calon kepala desa pun bukan. Tulisan ini hanyalah sebuah permohonan, jikalau rekan-rekan sempat di sela-sela kesibukan bekerja atau mencuri-curi ketik ketika getol ber-facebook-ria.

Beberapa waktu lalu saya sempat corat-coret, sedikit beraturan, untuk membuat tulisan tentang pentingnya Akses Terbuka Pustaka Spektral untuk Klasifikasi Tata Guna Lahan. Pustaka Spektral ini dibangun dengan menggunakan perangkat lunak Open Source. Tulisan tersebut dibuat untuk Konferensi FOSS4G yang akan diadakan 20 – 23 Oktober 2009 di Sydney, Ostrali.

Pustaka Spektral itu adalah sebuah pustaka yang dibangun dari karakteristik obyek-obyek tertentu di permukaan bumi dalam memantulkan panjang gelombang elektromagnetik tertentu. Biasanya, untuk membangun pustaka spektral ini, digunakan sebuah alat yang namanya spektro-radiometer. Sebagai contoh, kalau tumbuhan, karena di dalamnya ada klorofil, maka ia akan lebih banyak memantulkan panjang gelombang Near Infra Red (0,79 – 0,90 mikron). Berbeda lagi dengan air, jika panjang gelombang semakin besar, maka gelombang tersebut akan diserap oleh air.

Apa sih manfaat pustaka spektral? Dengan pustaka spektral, kita seperti memiliki kunci identifikasi, sehingga proses klasifikasi obyek di permukaan bumi akan lebih akurat. Mengapa harus open access ? Karena tidak semua orang atau institusi memiliki kemampuan atau kesempatan untuk membangun pustaka spektral. Dengan adanya sebuah pustaka spektral yang bisa diakses bebas (open access spectral library), akan ada banyak orang atau instansi yang terbantu. Pustaka spektral yang diunduh dapat digunakan langsung dan juga akan mengurangi biaya pengambilan titik cuplikan di lapangan.

Lalu mengapa saya mengharapkan dukungan Anda? Pertama, karena hanya dua orang dari Indonesia yang sempat menulis dan berniat untuk hadir di acara tersebut. Kedua, pihak panitia menerima lebih dari 180 makalah dan hanya akan menampilkan 96 di antaranya sehingga mereka membuat semacam sayembara. Ketiga, tulisan dan presentasi saya di sana mudah-mudahan dapat menjadi jalan agar akselerasi penggunaan perangkat lunak Open Source di bidang Remote Sensing dan GIS akan lebih baik lagi. Dan yang terakhir, mudah-mudahan dengan tulisan ini rekan-rekan akan mengasihani saya 😀 .

Okey-okey, jika saudara sudah bosan dengan basa-basi saya, silakan kunjungi alamat berikut Vote for Abstract , daftar terlebih dahulu, kemudian pilih di halaman 3 tulisan saya (Firman Hadi) yang berjudul Open Access Spectral Library.

Terima kasih.
Firman Hadi

Akses SSH via ponsel

Anda ketiban pulung jadi tukang merawat server kantor? Atau Anda punya website pribadi yang kadang-kadang perlu diakses via remote access? Biasanya kalau Anda sedang tidak berada di kantor atau tidak memiliki akses internet seperti biasa, pasti Anda akan kelimpungan. Kini Anda tak perlu khawatir lagi. Dengan akses SSH via ponsel bahkan Anda bisa merawat server ketika berada di kamar mandi!.

Agar bisa melakukan hal tersebut, Anda membutuhkan ponsel dengan OS Symbian dan satu perangkat lunak yang bisa diunduh di sini. Instal perangkat lunak tersebut di ponsel dan setelah itu Anda bisa langsung melakukan akses SSH, seperti yang biasa Anda lakukan dengan komputer. Seperti terlihat pada skrinsut di bawah ;

SSH via ponsel