Panduan lengkap WBPP: antarmuka, master kalibrasi, dan pipeline eksekusi
Artikel ini disusun dari catatan tahun 2021–2024. Sebagian perkakas atau alur kerja sudah diperbarui sejak itu, jadi harap diperhatikan saat membaca; antarmuka, opsi, dan perilaku versi tertentu yang disebut di dalamnya (misalnya versi 2.1.2 dan 2.5) semuanya mencerminkan keadaan pada saat itu. Adapun kesalahan yang Anda temui saat eksekusi dan bug yang sudah diketahui, lihat artikel tersendiri “WBPP Troubleshooting”.
WBPP (WeightedBatchPreprocessing) adalah script di PixInsight yang menjalankan “kalibrasi, registrasi, dan integrasi” secara otomatis dari ujung ke ujung, dan kemudahannya sungguh mengejutkan. Beberapa tahun terakhir ia sering direvisi, dan saya pun berangsur-angsur menulis cukup banyak catatan tercecer tentangnya; artikel ini merangkum semuanya menjadi satu penjelasan yang relatif lengkap, dibagi ke dalam tiga lapis: konsep inti yang hampir tidak berubah antarversi, pipeline eksekusi yang berlaku sekarang, dan beberapa perubahan penting antarversi selama ini. Versi mana pun yang Anda pakai, kalau konsepnya sudah dipegang kuat lebih dulu, seberapa pun antarmukanya berubah Anda tidak akan panik.
Konsep inti 1: hasil integrasi WBPP hanyalah pratinjau
Inilah poin yang paling ingin saya sampaikan lebih dulu, sekaligus poin yang paling banyak diabaikan orang.
Saya sendiri pernah terjerumus: suatu kali setelah memakai Drizzle Integration, saya mendapati pusat bintang (bagian yang kelewat jenuh) malah berubah menjadi hitam. Setelah ditelusuri, ternyata biang keladinya adalah melakukan integrasi dengan WBPP.
Semudah apa pun WBPP, sikap pihak resmi terhadap master light yang diintegrasikannya secara otomatis sangat jelas — itu hanya pratinjau praktis dari “efek yang bisa dicapai”, yang seharusnya dibuang setelah dipakai, dan tidak boleh dijadikan hasil akhir resmi. Saya kutipkan jawaban pihak resmi di forum berikut ini:
The integrated image generated by WBPP is just a convenience preview of the achievable image, but it should always be deleted/ignored, and the integration should always be done manually with the registered frames. This is the only way to obtain an optimal integrated image with full control over the normalization, pixel rejection and noise reduction tasks.
Pihak resmi bahkan setengah bercanda mengatakan bahwa kalimat ini perlu diulang “n+1 kali, dengan n yang sudah mendekati tak hingga”: master light yang dihasilkan WBPP tidak boleh dipakai untuk keperluan resmi, itu sekadar pratinjau, dan hasil terbaik baru bisa diperoleh lewat Image Integration manual yang mengoptimalkan pixel rejection dan rasio sinyal terhadap noise (S/N).
Karena itu kebiasaan saya: WBPP paling jauh hanya saya pakai sampai langkah “registrasi bintang”; integrasi yang sesungguhnya saya kembalikan ke Image Integration secara manual. Cara baku yang memisah-misahkan prosedur — kalibrasi (diserahkan ke WBPP), registrasi (Star Alignment), integrasi (Image Integration) — memang menambah beberapa langkah, tetapi begitu ada masalah, jauh lebih mudah memastikan mata rantai mana yang rusak. Ini juga menjadi pendirian saya belakangan. Dua video tutorial WBPP yang sangat rinci dari rekan penggemar Jepang pada masa awal pun sangat saya rekomendasikan, tetapi tetap perlu ditambahi peringatan yang sama: anggap hasil integrasinya sebagai referensi saja.
Konsep inti 2: bedakan mana yang benar-benar hasil jadi di dalam folder Master
Setelah WBPP dijalankan sampai tuntas, di bawah folder Master bawaan akan tergeletak setumpuk file, dan banyak teman tidak bisa membedakan mana yang sebenarnya mereka cari. Berikut penjelasannya:

- Citra di dalam kotak merah adalah master light hasil integrasi yang Anda cari.
- Citra di dalam kotak kuning adalah citra acuan (Ref) untuk Local Normalization, bukan master light — jangan sampai tertukar.
- Citra tanpa kotak adalah master kalibrasi, yang di sini mencakup master flat, master bias, dan master dark.
(Meski begitu, mengikuti bagian sebelumnya, “master light” ini tetap bersifat pratinjau dari WBPP; kalau Anda ingin cermat, sebaiknya tetap diintegrasikan ulang sendiri sekali lagi.)
Pipeline eksekusi saat ini: paket lengkap untuk kamera warna
WBPP berjalan tuntas dengan satu klik, padahal di baliknya sebenarnya ada rangkaian panjang prosedur otomatis yang dijalankan berurutan. Dengan kamera warna (OSC) sebagai contoh, urutan eksekusi lengkapnya seperti berikut:

- Calibration File Integration: membuat master kalibrasi
- Calibration: mengkalibrasi light
- Cosmetic Correction: menghilangkan hot pixel atau baris rusak
- Debayer: debayering (memisahkan RGB)
- Measurements: mengukur light dan memberinya bobot
- Reference frame selection: menentukan citra acuan untuk registrasi
- Plate solving reference frames: melakukan plate solving (astrometri) pada citra acuan
- Registration: registrasi bintang
- LN reference generation: menghasilkan citra acuan untuk Local Normalization
- Local Normalization: menjalankan Local Normalization
- Integration: mengintegrasikan light
- RGB Combination: menggabungkan kembali tiga kanal RGB
Kalau dinyatakan dengan cara yang lebih ringkas, semuanya juga bisa dipadatkan menjadi delapan langkah: membuat file citra kalibrasi → kalibrasi citra → Cosmetic Correction → debayering (memisahkan tiga kanal RGB) → registrasi bintang → Local Normalization → integrasi citra → penggabungan tiga kanal RGB.

Ada dua langkah di sini yang layak dibahas sedikit lebih panjang: pemisahan RGB dimaksudkan untuk mengatasi dispersi kromatik (tepi bintang tampak berbeda warna di kedua sisinya), dengan konsekuensi waktu proses yang lebih lama; sedangkan Drizzle Integration, kalau memang dipakai, tujuannya di sini bukan memperbesar citra melainkan menghindari artefak, sehingga baru bermakna bila jumlah frame yang ter-dither cukup banyak — pada umumnya di bawah 50 frame sebenarnya boleh dilewati. Sekadar catatan tentang berapa lama waktu yang terasa dalam praktik: saya pernah memakai 360 frame beresolusi sembilan megapiksel, dari kalibrasi terus sampai Drizzle Integration 1x, dan itu pun menghabiskan lebih dari satu jam; resolusi yang lebih tinggi hanya akan membuatnya makin “menegangkan”.

Master kalibrasi: bagian cerdas dari WBPP
Dalam cara menangani frame kalibrasi (flat, dark, bias, dan seterusnya), WBPP menyimpan cukup banyak rancangan yang penuh perhatian — layak diberi satu bagian tersendiri.
Frame kalibrasi sebaiknya dibuat ulang dari file mentah di dalam WBPP. Tidak sedikit orang yang setelah kalibrasi mendapati light-nya bermasalah, dan penyebab utamanya sering kali adalah penggunaan “file Master yang dibuat oleh perangkat lunak atau prosedur lain” (master flat/bias/dark). Cara yang paling aman adalah melemparkan file mentah kalibrasi ke dalam WBPP dan membiarkannya membuat ulang Master-nya.
Waktu eksposur meleset sedikit? Serahkan pada Exposure tolerance. Seorang rekan penggemar pernah bertanya di grup: ia memotret dark dengan kendali sinyal Eqmod, dan karena masalah tundaan, dark 5 detik miliknya bisa jadi kenyataannya jatuh di antara 4,980 dan 5,02 detik, sehingga ia ingin beralih memotret dengan NINA. Sebenarnya WBPP sudah lama memikirkannya: frame kalibrasi dalam selisih waktu tertentu dapat ditetapkan sebagai satu kelompok yang sama, lalu WBPP otomatis melakukan pemrosesan yang semestinya atas frame kalibrasi dalam kelompok tersebut dan otomatis memasangkannya dengan light. Nilai toleransi itulah yang disebut Exposure tolerance.

Citra yang dipotret pada hari yang berbeda? Beres sekaligus dengan Grouping Keywords. Setelah direvisi, WBPP mendapat fungsi pengelompokan, sehingga citra yang dipotret pada tanggal berbeda pun bisa dilemparkan sekaligus dan diproses bersama-sama — asalkan Anda mengklasifikasikannya di Grouping Keywords dengan kata kunci (misalnya tanggal). Seperti kumpulan file saya: flat setiap harinya berbeda-beda, namun WBPP tetap bisa mengkalibrasinya secara otomatis dan terpisah menurut tanggal, tanpa perlu saya mengatur sendiri pasangan light dan flat satu per satu untuk tiap tanggal. Sangat praktis.

Hanya ingin membuat master kalibrasi? Tanpa memasukkan light pun bisa. Ini pemakaian yang banyak orang tidak tahu: tanpa light sama sekali, lemparkan dark, bias, flat, dan flat dark ke dalam WBPP, maka ia akan dengan cerdas mengolah frame kalibrasi tersebut menjadi master kalibrasi menurut langkah yang benar, lalu mengeluarkannya ke folder yang Anda tentukan — menghemat repotnya membuat semua itu secara manual dengan bermacam-macam prosedur yang berbeda.

Opsi pada halaman Light dan trik mempercepat
Halaman Light pada WBPP memiliki sederet opsi yang dapat dicentang pengguna sesuai kebutuhan. Secara bawaan, semuanya tidak tercentang kecuali subframe weighting.

Karena langkah-langkah ini bisa dipilih-pilih, muncullah satu pertanyaan yang praktis: berapa banyak waktu yang bisa dihemat dengan mematikan pemrosesan yang tidak diperlukan? Saya menguji langsung dengan satu set data dari luar negeri yang bebas diunduh, seluruhnya 372 frame beresolusi enam belas megapiksel, dan setelah menyingkirkan pemrosesan yang tidak perlu, waktunya kira-kira 7 sampai 8 kali lebih cepat (25 menit 03 detik vs. 03 menit 30 detik), sementara kualitas citra hanya menurun sedikit — di mesin saya sendiri selisihnya sekitar 15%, dan setelah dikompresi lewat jaringan nyaris tidak terlihat. Untuk situasi ketika Anda sedang dikejar tenggat atau sekadar ingin melihat gambaran kasarnya lebih dulu, pertukaran ini sangat sepadan.

Adapun langkah mana yang paling memakan waktu dan mana yang paling efektif untuk dimatikan, akan saya bahas lagi dalam artikel “WBPP Troubleshooting”.
Perubahan versi: hal-hal berikut baru ada belakangan
Selama bertahun-tahun ini WBPP menambahkan cukup banyak hal; saya rangkumkan beberapa tonggak pentingnya agar mudah dibandingkan dengan versi yang ada di tangan Anda:
Beberapa hal tentang versi 2.1.2. Mulai versi ini ada tiga poin yang patut diperhatikan: pertama, light yang bermasalah setelah kalibrasi sering kali disebabkan tercampurnya file Master buatan luar (lihat penjelasan sebelumnya); kedua, Dark frame optimization terutama dipakai ketika panjang light dan dark tidak sepadan (misalnya light 20 menit dipasangkan dengan dark 30 menit), syarat terbaiknya adalah eksposur panjang dengan banyak frame, dan opsinya baru terlihat setelah Anda mengklik file light; ketiga, pengguna CCD lambat laun akan mengalami defect seiring pemakaian, terutama column defect — dahulu harus dihilangkan dengan defect map yang sangat memakan waktu, dan WBPP menyediakan Linear Pattern Subtraction untuk membantu menanganinya.

Execution Monitor (jendela pemantau eksekusi). Setelah diperbarui ke versi yang lebih baru, saat dijalankan WBPP akan memunculkan sebuah jendela WBPP Execution Monitor yang memberi tahu Anda sedang berada di langkah mana dan pekerjaan apa saja yang sudah dikerjakan; isinya bahkan bisa digulir dan diseret naik-turun. Pada versi lama, selain memelototi console yang sedang berjalan, pengguna sama sekali tidak punya cara untuk mengetahui kemajuannya — hanya bisa menunggu sampai semuanya selesai, atau sampai berhenti karena ada kesalahan, baru bisa memastikannya lewat console.

Fungsi cache (mulai versi 2.5). Ini termasuk perbaikan yang sangat krusial. Setelah menjalankan paket lengkap lalu mendapati ada yang keliru atau tidak sesuai harapan, dan Anda mengubah beberapa pengaturan, apakah semuanya harus diulang dari awal? Tidak perlu. Cache WBPP akan menimbang: selama pengaturan yang diubah tidak memengaruhi citra, ia langsung memakai hasil cache dari kali sebelumnya; hanya bagian citra yang benar-benar terpengaruh yang akan diproses ulang, sehingga waktu eksekusi kedua menjadi jauh lebih singkat.

Script yang dapat direproduksi di dalam folder log. Setelah dijalankan, WBPP versi terbaru akan menyimpan log terperinci beserta script eksekusi di folder log. Begitu script itu dibaca dengan Script Editor milik PI, dikompilasi, lalu dijalankan, akan muncul sebuah Process Container yang berisi seluruh ICON prosedur dari submenu Pipeline pada jendela utama WBPP, dan masing-masing dapat dibuka sendiri-sendiri di PI. Ini sangat memudahkan Debug — misalnya kalau Anda ingin menyelidiki mengapa Cosmetic Correction tidak berjalan dengan benar atau tidak berefek, Anda bisa membuka langkah itu dari sini dan memeriksa apakah persoalannya ada pada parameter atau pada bug program. Kegunaan lainnya: orang yang belum akrab dengan prapemrosesan dapat memakai cara ini untuk membaca setiap langkah prosedur beserta parameter yang dipakai WBPP, sebagai contoh acuan ketika menjalankannya sendiri secara manual.

Langkah pertama setelah membuka WBPP sebenarnya bukan memuat file
Akhirnya kita kembali ke hal yang paling mendasar, tetapi justru paling mudah dilakukan secara keliru. Langkah pertama setelah membuka WBPP bukanlah buru-buru “memuat file light, dark, flat, dan bias”.
WBPP termasuk sedikit dari script yang menyimpan isi pemakaian sebelumnya. Kalau Anda pernah memakainya, semua pengaturan masih tertinggal di sana. Maka langkah pertama seharusnya adalah mengosongkan daftar file; adapun perlu tidaknya parameter lain ikut dibersihkan, tergantung kebutuhan.
Sementara itu, langkah kedua sangat mudah terlewat, dan banyak video tutorial pun tidak menyebutnya — tekan Purge Cache. Tadi sudah disinggung manfaat cache (mulai versi 2.5): ketika Anda hanya mengubah sebagian parameter, WBPP hanya menjalankan bagian yang berubah dan sisanya memakai cache. Namun sebaliknya, ketika Anda sudah pernah menjalankannya dan isi cache itu tidak diperlukan lagi, semuanya harus dihapus, sebab kalau tidak, menjalankan file baru bisa memunculkan kesalahan yang tak terduga akibat isi cache yang bertumpang tindih.

Pengaturan awal lingkungan bagi pengguna Windows
Kalau Anda menjalankan WBPP di Windows, ada dua pengaturan lingkungan yang sebaiknya dibereskan sejak awal, karena bisa menghindarkan Anda dari setumpuk kesalahan tak masuk akal di kemudian hari (untuk pesan kesalahan dan diagnosisnya, lihat selengkapnya “WBPP Troubleshooting”):
Aktifkan dukungan path panjang. Setelah suatu pembaruan, WBPP di Windows sering memunculkan peringatan path panjang yang menyatakan tidak dapat menghasilkan path lebih dari 256 karakter. Saya sendiri pernah mengalami file keluaran WBPP yang cacat gara-gara path-nya terlalu panjang (karena filenya tidak bisa disimpan). Solusinya adalah mencari regedit pada bilah tugas untuk membuka Registry Editor, menemukan lokasi yang bersangkutan, lalu mengubah nilai LongPathsEnabled menjadi 1; setelah PixInsight dimulai ulang, peringatan ini tidak akan muncul lagi.

Hindari path dengan karakter non-ASCII (misalnya, aksara Tionghoa). Inilah juga alasan saya tidak menganjurkan pemakaian karakter semacam itu pada path file. Di Windows, kalau program bawaan untuk membuka file adalah PI, klik ganda pada file yang path-nya mengandung karakter non-ASCII akan memunculkan pesan kesalahan, dan simbol-simbol kacau di dalamnya sebenarnya adalah aksara Tionghoa itu sendiri. Jalan pintasnya: tanpa mengubah path, seret saja file tersebut langsung ke dalam PI, maka ia akan terbuka.

Kalau semua hal di atas dirangkai, gambaran utuh WBPP kurang lebih menjadi jelas: ia adalah mesin prapemrosesan otomatis yang tangguh, tetapi Anda harus ingat bahwa hasil integrasinya hanyalah pratinjau, harus paham cara mengelompokkan kalibrasi, cara memanfaatkan cache, serta apa yang perlu dibersihkan dan lingkungan apa yang perlu disiapkan sebelum mulai bekerja. Kalau konsepnya sudah benar, sisanya tinggal soal kemahiran.