×
INDI Library v1.8.6 Released (21 Aug 2020)

August 2020 release of INDI Library v1.8.6 introduces new drivers while providing fixes and improvements to existing devices and core framework.

New KStars/Ekos Module: Analyze

1 month 3 weeks ago
rickbassham
Expert Boarder
Expert Boarder
Posts: 80
More
New KStars/Ekos Module: Analyze #58976
This is awesome work. I've been using github.com/fenriques/AstroDom to analyze sessions after the fact, but having it live during a session is even better.

Feature request: Another checkbox to calculate and show star eccentricity in the images would be awesome. Guiding RMS approximates what I can expect from the image, but actually measuring eccentricity and seeing graphed next to the guiding info would be useful to me.

Gayle H Riggsbee Observatory
Charlotte Amateur Astronomers Club

CGX
AT72EDII w/Homemade Moonlite Compatible Arduino Focuser
AT8RC w/Moonlite CSL 2.5" w/Moonlite Stepper v3
ZWO ASI1600MC-Pro
ZWO ASI1600MM-Pro
ZWO ASI174MM-Mini
ZWO OAG
ZWO EFW
AT2FF
The following user(s) said Thank You El Corazon

Please Log in or Create an account to join the conversation.

1 month 3 weeks ago
Herrhausen
Platinum Boarder
Platinum Boarder
Posts: 664
Karma: 3
More
New KStars/Ekos Module: Analyze #58982
Seeing will largely influence HFR so I deem HFR an excellent indication for seeing. Eccentricity will go into HFR, too albeit to a lesser extent (unless it is huge).

Please Log in or Create an account to join the conversation.

1 month 3 weeks ago
sonny486
Junior Boarder
Junior Boarder
Posts: 37
More
New KStars/Ekos Module: Analyze #58984
Great work! I appreciate all your hard work!

Please Log in or Create an account to join the conversation.

1 month 3 weeks ago
Gonzothegreat
Administrator
Administrator
Posts: 1951
Karma: 6
More
New KStars/Ekos Module: Analyze #58985
Great evidence of a fantastic community we have here.

Kstars Mac osx
Odroid C1 running indiserver (kept up-to-date with apt-get update/upgrade)
Megrez72 / HEQ5 pro / QHY5L-II-M (OAG) / Atik 314L+ / Gerd Neumann drawer
The following user(s) said Thank You El Corazon, maxthebuilder, gilesco

Please Log in or Create an account to join the conversation.

1 month 3 weeks ago
fmozza
Expert Boarder
Expert Boarder
Posts: 121
More
New KStars/Ekos Module: Analyze #59051
During my session, I noticed an issue with calculating RMS. I used PHD2 for guiding, and I use the Z-filter algorithm for DEC control. According to the folks at PHD2, when Z-filter is used, PHD2 shifts the image - RA is centered, but DEC is shifted by 1 arc-second. I'm not sure why, but this will throw off the calculation of RMS due to the DEC shift. Take a look at the attached pictures so you can see what I mean.

But very nice tool!

Regards,

jmh
Attachments:

Please Log in or Create an account to join the conversation.

1 month 3 weeks ago
kengs
Gold Boarder
Gold Boarder
Posts: 163
Karma: 3
More
New KStars/Ekos Module: Analyze #59054

fmozza wrote: During my session, I noticed an issue with calculating RMS. I used PHD2 for guiding, and I use the Z-filter algorithm for DEC control. According to the folks at PHD2, when Z-filter is used, PHD2 shifts the image - RA is centered, but DEC is shifted by 1 arc-second. I'm not sure why, but this will throw off the calculation of RMS due to the DEC shift. Take a look at the attached pictures so you can see what I mean.

But very nice tool!

Regards,

jmh

Who told you that? The Z-filter algorithm might result in an off center plot if guiding starts with the star off center and a large X-factor is used. This happens because it works in the frequency domain and a constant offset corrresponds to zero frequency so it does not get corrected. But it does not necessarily result in a 1 arc-second shift under all conditions. In fact, it is arguably preferable for the offset to be retained as it results in a better image.
On the other hand, RMS values should be calculated about the mean so a constant offset becomes the mean and therefore cancels out of the RMS value.. This is how PHD2 calculates the RMS as you can see.

Ubuntu 16.04 AMD64 VM, RPi3 Ubuntu Mate 16.04, Windows 10 AMD64, Ubuntu 16.04 AAEON UP Core
Avalon M-Uno, EQ6 Pro, Atik420, ASI1600MM-C, ASI120MM-S, DBK21AU04, ZWO EFW, Optec TCFSi
Vixen R150S, GSO RC8, ST80

Please Log in or Create an account to join the conversation.

1 month 3 weeks ago
hy
Gold Boarder
Gold Boarder
Posts: 335
Karma: 4
More
Topic Author
New KStars/Ekos Module: Analyze #59055
This is what Analyze currently does re RMS guide error. Please let me know if you think I got something wrong.

Internal guider, see
invent.kde.org/education/kstars/-/blob/m...uide/gmath.cpp#L1242
SquareError(t) = ((RA(t) - RA_target(t))**2 + (DEC(t) - DEC_target(t))**2)

In the PHD2 case, the RA(t) - RA_target(t) or diff_ra_arcsecs is taken straight from PHD2 (PHD2 calculates that and sends it to Ekos).
See invent.kde.org/education/kstars/-/blob/m...lguide/phd2.cpp#L487 for PHD2 part.
So, in the PHD2 case, Ekos is taking as the RA or DEC error, what PHD2 says is the RA or DEC error.

Analyze implements an IIR filter with an approximate time constant of 40 samples (nothing magic about 40 samples == about 2 minutes with 3s samples)

// initialize
filteredRMS = 0;
constexpr double timeConstant = 40.0;
rmsFilterAlpha = 1.0 / pow(timeConstant, 0.865);

// at every time sample (x below is SquareError(t) above)
filteredRMS = rmsFilterAlpha * x + (1.0 - rmsFilterAlpha) * filteredRMS;
invent.kde.org/education/kstars/-/blob/m...yze/analyze.cpp#L485

and takes the sqrt of the (poorly named) filteredRMS to get the rms value you see. (I guess I should have named it filteredSquareError).
invent.kde.org/education/kstars/-/blob/m...yze/analyze.cpp#L542

It does not take the mean of the RA or DEC samples. I understand your logic, though, why that might be nice.

All that said, that's not quite true for the case of RMS error printed in the Details box, e.g. when you click on a guide timeline session or a capture timeline session.
There, it does not use an approximate IIR filter, but rather computes exactly the sqrt of the sum of the square error in the interval.

In any event, just to be clear, this is what is currently implemented.
Happy to entertain suggestions,

Hy
The following user(s) said Thank You kengs, xthestreams

Please Log in or Create an account to join the conversation.

1 month 3 weeks ago
fenriques
Gold Boarder
Gold Boarder
Posts: 172
More
New KStars/Ekos Module: Analyze #59059
awesome work! thank you. All the insight needed to monitor and review the session in one window; to me it should replace the Setup tab.

@Rick, I'm thinking to use the .analyze file as the only source of information for Astrodom. What do you think?

ferrante

Please Log in or Create an account to join the conversation.

1 month 3 weeks ago
kengs
Gold Boarder
Gold Boarder
Posts: 163
Karma: 3
More
New KStars/Ekos Module: Analyze #59064

hy wrote: This is what Analyze currently does re RMS guide error. Please let me know if you think I got something wrong.

Internal guider, see
invent.kde.org/education/kstars/-/blob/m...uide/gmath.cpp#L1242
SquareError(t) = ((RA(t) - RA_target(t))**2 + (DEC(t) - DEC_target(t))**2)

In the PHD2 case, the RA(t) - RA_target(t) or diff_ra_arcsecs is taken straight from PHD2 (PHD2 calculates that and sends it to Ekos).
See invent.kde.org/education/kstars/-/blob/m...lguide/phd2.cpp#L487 for PHD2 part.
So, in the PHD2 case, Ekos is taking as the RA or DEC error, what PHD2 says is the RA or DEC error.

Analyze implements an IIR filter with an approximate time constant of 40 samples (nothing magic about 40 samples == about 2 minutes with 3s samples)

// initialize
filteredRMS = 0;
constexpr double timeConstant = 40.0;
rmsFilterAlpha = 1.0 / pow(timeConstant, 0.865);

// at every time sample (x below is SquareError(t) above)
filteredRMS = rmsFilterAlpha * x + (1.0 - rmsFilterAlpha) * filteredRMS;
invent.kde.org/education/kstars/-/blob/m...yze/analyze.cpp#L485

and takes the sqrt of the (poorly named) filteredRMS to get the rms value you see. (I guess I should have named it filteredSquareError).
invent.kde.org/education/kstars/-/blob/m...yze/analyze.cpp#L542

It does not take the mean of the RA or DEC samples. I understand your logic, though, why that might be nice.

All that said, that's not quite true for the case of RMS error printed in the Details box, e.g. when you click on a guide timeline session or a capture timeline session.
There, it does not use an approximate IIR filter, but rather computes exactly the sqrt of the sum of the square error in the interval.

In any event, just to be clear, this is what is currently implemented.
Happy to entertain suggestions,

Hy

This should be a really useful tool. Great work!
What would be really neat would be the RMS over the course of each capture to identify which ones might be sub-optimal due to poor guiding.
For info: The PHD2 remote interface returns the simple distance from the star centroid to the lock point. But in the Log Viewer (and I think also in the application but I havent checked) the RMS calculation subtracts the mean of the set from each sample before then calculating the RMS. So what is shown on the PHD2 screen is the RMS about the mean offset. What I think of as the "DC offset".

Ubuntu 16.04 AMD64 VM, RPi3 Ubuntu Mate 16.04, Windows 10 AMD64, Ubuntu 16.04 AAEON UP Core
Avalon M-Uno, EQ6 Pro, Atik420, ASI1600MM-C, ASI120MM-S, DBK21AU04, ZWO EFW, Optec TCFSi
Vixen R150S, GSO RC8, ST80

Please Log in or Create an account to join the conversation.

1 month 3 weeks ago
rickbassham
Expert Boarder
Expert Boarder
Posts: 80
More
New KStars/Ekos Module: Analyze #59080

fenriques wrote: awesome work! thank you. All the insight needed to monitor and review the session in one window; to me it should replace the Setup tab.

@Rick, I'm thinking to use the .analyze file as the only source of information for Astrodom. What do you think?

ferrante


@fenriques I think that would be fine. Might simplify things a lot for you, but it would tie your software really closely with Ekos, meaning anyone who uses other tools wouldn't be able to use it. But since I only use Ekos for imaging at the moment, it wouldn't affect me.

Gayle H Riggsbee Observatory
Charlotte Amateur Astronomers Club

CGX
AT72EDII w/Homemade Moonlite Compatible Arduino Focuser
AT8RC w/Moonlite CSL 2.5" w/Moonlite Stepper v3
ZWO ASI1600MC-Pro
ZWO ASI1600MM-Pro
ZWO ASI174MM-Mini
ZWO OAG
ZWO EFW
AT2FF

Please Log in or Create an account to join the conversation.

1 month 3 weeks ago
fmozza
Expert Boarder
Expert Boarder
Posts: 121
More
New KStars/Ekos Module: Analyze #59083
Regarding the Z-filter comment, a core member from PHD2 told me that Z-filter used an offset. See the discussion here .

Please Log in or Create an account to join the conversation.

1 month 3 weeks ago
porkyhttp
Expert Boarder
Expert Boarder
Posts: 96
More
New KStars/Ekos Module: Analyze #59084
@fenriques, It seems does not install under RaspbianOS (buster)

Please Log in or Create an account to join the conversation.

Time to create page: 1.250 seconds