Jag försöker beräkna Sérsic-profilen för olika galaxer från SDSS baserat på bilderna från webbplatsen för galaxzoo. Jag gör detta som en del av en kaggle-tävling om att använda maskininlärning för att förutsäga galaxmorfologi. Jag har ingen chans att få en hög rankning i den här tävlingen, så jag tvekar inte att be om hjälp.
Jag använde funktionen R contourLines för att identifiera isofoterna i galaxen och sedan passa ellipser till varje isofot. Detta verkade fungera bra, isofoterna passar nästan alltid bra av ellipserna och ellipserna är nästan koncentriska. Att sedan låta
log I (R) = log I_0 - k * R ^ (1 / n)
Det enkla tillvägagångssättet verkade vara att ta loggen för båda sidor och använda OLS-regression, så jag passar en linjär modell i R av formuläret
log (log (I)) ~ log (R)
De resulterande graferna visade en bra passform men de resulterande Sérsic-indexen n är nästan alltid mindre än en och aldrig så stora som två. Detta verkar inte stämma eftersom index på 4 eller högre verkar vanliga i min läsning. Jag kommer inte någonstans nära 4 för en bild av M87.
Eventuellt tar loggloggen ut saker för mycket och indexet svarar inte tillräckligt. Jag försökte använda nls för att arbeta med bara loggen men det flyttade inte indexen mycket.
Finns det någon standardprogramvara eller algoritm för att beräkna Sérsic-indexet från en bild? Finns det referensbilder som jag kan arbeta utifrån som låter mig kontrollera om min algoritm är rimlig? Eventuella rekommendationer om hur man går vidare är välkomna.
UPPDATERING: Jag har hittat programmen GALFIT och GIM2D som ser ut som de kan vara användbara. Någon annan programvara som ofta används för detta?