CropPlaneta: centriranje, kropovanje i RGB kombinacija planetarnih snimaka

“First, solve the problem. Then, write the code.” John Johnson

Muzika uz post: Alex Warren – Eternity 

Link za download programa

Kod planetarne astrofotografije rezultat jedne noći je često desetine slaganih snimaka (iz AutoStakkert!-a, PiPP-a, RegiStax-a i sličnih programa). Planeta je na svakom snimku na drugom mjestu, a veličine kadrova se razlikuju. Za animacije rotacije, poređenje serija, mozaike ili RGB kombinaciju kanala snimljenih kroz filtere sve slike trebaju biti iste veličine, s planetom tačno u centru. Ručno je to sporo i neprecizno, pa sam napravio mali program koji to radi automatski.

Šta program radi?

CropPlaneta je jednostavan Windows program s grafičkim interfejsom i dvije funkcije, svaka u svom tabu:

  1. Crop + grayscale (cijeli folder): sve TIFF slike iz foldera centrira, kropuje na istu veličinu i, po želji, pretvara u grayscale.
  2. RGB kombinacija: spaja tri mono kanala (R, G, B) u jednu sliku u boji, kao Merge Channels u Photoshopu ili LRGBCombination u PixInsightu.

Princip rada: detekcija i centriranje planete

Za svaku sliku program prolazi kroz nekoliko koraka:

  • “Zaglađivanje”: slika se blago “zagladi” Gaussovim filterom (σ = 2 px), da šum ne utiče na detekciju.
  • Prag: program automatski odredi prag koji najbolje odvaja svijetli objekt od tamne pozadine, tj. maksimizira varijansu između te dvije klase piksela. Prag ne može biti niži od 10 % raspona između pozadine (medijana) i maksimuma. Prag se može ručno pomjeriti parametrom osjetljivost praga: ispod 1 obuhvata slabije detalje (npr. prstenove), iznad 1 samo najsvjetlije dijelove.
  • Najveći objekt: od svih svijetlih područja zadržava se samo najveće. To je planeta, kod Saturna zajedno s prstenovima. Mjeseci i vruće tačke se tako ignorišu, a rupe unutar objekta se popune.
  • Centar: za centar se uzima sredina okvira (bounding box) objekta. To je stabilnije od težišta svjetline kad je osvjetljenje nejednako, npr. kod jače osvijetljenog dijela prstena.
  • Zajednička veličina: program pronađe najveći objekt u cijeloj seriji i pomnoži njegovu dimenziju marginom (default 1,3). Tako dobije kvadratni kadar u koji staje svaka slika. Veličina se može zadati i ručno, u pikselima.
  • Crop: iz svake slike se izreže kvadrat oko centra planete. Ako isječak izlazi van originalnog kadra, nedostajući dio se popuni crnom pozadinom.

Grayscale konverzija

Po izboru, slike u boji se pretvaraju u mono. Dostupne metode su:

  • luminancija po standardu Rec.709 (0,2126 R + 0,7152 G + 0,0722 B), koja je default;
  • luminancija po Rec.601;
  • običan prosjek kanala;
  • izdvajanje samo jednog kanala (R, G ili B). Korisno je npr. kad je jedan kanal izrazito oštriji ili za IR-pass snimke s kolor kamerom.

Bit-dubina se čuva: 8-bitni ulaz daje 8-bitni izlaz, 16-bitni daje 16-bitni, a podaci se ne razvlače i ne komprimuju.

RGB kombinacija

Ovaj modul je namijenjen snimanju mono kamerom kroz R, G i B filtere.

  • Normalizacija bit-dubine: svaki kanal se prvo svede na opseg 0–1 prema svom tipu podataka. Zato se ispravno kombinuju i kanali različite bit-dubine, npr. 8-bitni i 16-bitni.
  • Čisto slaganje (default): kanali se samo slažu u RGB sliku, bez pomjeranja. Rezultat je identičan onom iz PixInsighta ili Photoshopa, a podatak ostaje linearan za daljnju obradu.
  • Težine kanala: svaki kanal se može pomnožiti faktorom (npr. 1,0 / 0,9 / 1,2) radi grubog balansa bijele.
  • Opciono centriranje: za kanale koji još nisu kropovani, planeta se u svakom kanalu centrira po težištu intenziteta, sa subpikselnom korekcijom.
  • Opciono fino poravnanje: R i B kanal se subpikselno poravnavaju na G, koji obično ima najbolji odnos signal/šum. Pomak se računa kros-korelacijom “zaglađenih” slika preko FFT-a. Položaj vrha korelacije se precizira paraboličnom interpolacijom, a kanal se pomjera bilinearnom interpolacijom. Pomaci veći od 8 px se odbacuju kao nepouzdani, a pomaci manji od 0,15 px se ignorišu. Ovo korigira i atmosfersku disperziju, kad je planeta nisko nad horizontom.
  • Opciono izjednačavanje kanala: kanali se skaliraju tako da im se 99,9. percentil svjetline poklopi.

Izlazi iz programa

  • Tab 1: serija TIFF slika istih dimenzija (kvadrat), s planetom u centru. Mono ili u boji, u originalnoj bit-dubini. Imena se čuvaju, uz izborni sufiks (npr. _crop), a slike idu u izabrani folder (default crop/).
  • Tab 2: jedna RGB TIFF slika, 16-bitna ili 32-bitna float.
  • Log: za svaku sliku se ispisuje detektovani centar i veličina objekta, a kod RGB kombinacije i statistika kanala (min, medijan, max) te izmjereni pomaci.

Gdje se uklapa u workflow?

Program se koristi nakon slaganja (AutoStakkert!) i izoštravanja (RegiStax / wavelets), a prije:

  • izrade animacija rotacije (GIF/MP4),
  • derotacije u WinJUPOS-u,
  • RGB kombinacije i finalne obrade u PixInsightu ili Photoshopu,
  • poređenja snimaka iz različitih noći ili sa različitom opremom.

Tehnički detalji

Program je napisan (uz pomoć Claude Opus) u Pythonu i koristi biblioteke NumPy, SciPy (ndimage) i tifffile. Interfejs je u Tkinteru, a standalone .exe je spakovan PyInstallerom, pa za pokretanje nije potreban instaliran Python. Obrada je potpuno lokalna, bez ikakve veze s internetom.

Ograničenja

  • Program podrazumijeva jedan dominantan svijetli objekt na tamnoj pozadini. Kod jakog gradijenta pozadine ili planete koja ispunjava skoro cijeli kadar, prag treba ručno podesiti.
  • Ne radi derotaciju niti poravnanje detalja unutar diska. Centriranje je po obrisu planete, ne po površinskim detaljima.
  • Podržan je samo TIFF format, za sada.

Dole je dat primjer obrade za snimak Saturna, pojedinačni (nejednake geometrije) kanali R, G i B, te konačna slika sa RGB kombinacijom (bez dodatnih obrada).

Vidi se nejednaka geometrija (Planeti su za ovaj slučaj poravnati u centar ranije sa programom PiPP, ali u ovom programu je to nebitno)
Izlazni folder sa pravilno kropovanim slikama pojedinih kanala i zajednička slika (RGB kombinacija)
Konačna slika Saturna nakon poravnavanja geometrije i RGB kombinacije (SCT 8″ i 678M kamera sa RGB filterima)

Link za download programa

Leave a comment

close-alt close collapse comment ellipsis expand gallery heart lock menu next pinned previous reply search share star