Sommaren kom och sommaren gick, men inte så mycket hände ändå. Nu däremot har jag iaf fått klart centroid beräkning och FWHM. När jag grävt ner mig i dessa algoritmer så inser jag varför FWHM blir lite olika beroende på vilket program man använder. Bara sättet att beräkna en stjärnas mittpunkt har drösvis med variationer som i sin tur slår mot FWHM. Övergav dessutom HFD beräkningen tills vidare. Den är intressant för robust autofokus, men man kan inte i en och samma bild jämföra olika stjärnors HFD vilket däremot går bra med en exakt FWHM beräkning. Jag var mest ute efter nåt sätt att mäta seeing förhållanden så för mig kommer FWHM funka bättre.
När det gäller FWHM så kan man tex ta de pixlar som ligger horisontellt utmed stjärnans mittposition, men då använder man ju inte all information i bilden. Andra produkter som tex
Mira Pro gör en radial profile + gaussian curve fitting för att estimera FWHM. Jag använder också alla pixlar, men har hittills fuskat med curve fitting. Jag kör en mindre exakt, men snabb approximation istället.
I grova drag så gör mitt program följande:
- Läs in råbild (TIFF, CR2 etc)
- Konvertera bilden till greyscale
- Gaussian blur -> Threshold bild där gränsen är median + bias
- Skapa lista över stjärnor i threshold bilden
- Sortera bort överexponerade stjärnor
- Sortera bort stjärnor som ligger för nära bildkanten (kommer orsaka problem senare)
- Sätt estimerat centrum för varje stjärna utifrån maxvärde i blur bild (pixel noggrannhet)
- Utvidga stjärnans radie en pixel i taget, avbryt då median värdet för cirkeln inte minskar nämnvärt längre
- Beräkna exakt mittpunkt för stjärnan utifrån föregående yta med "center of mass" algoritm (sub pixel)
- Beräkna FWHM i pixels och i arcsec per stjärna (se bild nedan)
- FWHM för bilden = Median värdet av alla FWHM
För att approximera FWHM värdet så sorterar jag varje stjärnpixel i fallande värden. MIN värdet får bli medelvärdet av de 20 pixlar som är längst från centrum. Half Maximum blir då värdet mitt i mellan MAX pixel (dvs första värdet i listan) och MIN värde. För att hitta Full Width så summerar jag värdet av de två pixlar som ligger närmast Half Maximum (på respektive sida). Som sagt är det fusk, men eftersom det är många pixlar för varje stjärna och dessutom många stjärnor bakom den totala beräkningen så verkar det funka hyfsat.
- FWHM.png (23.68 KiB) Viewed 7788 times
Exempel bild som visar FWHM för respektive stjärna.
Här en bild som jämför samma bilders FWHM i DSS respektive mitt program. Har alltid tyckt att DSS är väldigt pessimistisk i sin FWHM beräkning och jag har fått vatten på min kvarn
Hur som helst så stämmer kurvornas utseende överlag så det är jag nöjd med.