artyom-beilis / OpenLiveStacker

Live Stacker Project - C++ backend and frontend
GNU General Public License v3.0
37 stars 4 forks source link

Streaming: add ROI support option to look to subsection of image only. #31

Closed han-k59 closed 1 year ago

han-k59 commented 1 year ago

To improve focussing, I would be beneficial to add the following features:

1) Add an option to download only a subsection of the image. .e.g inner 10 x10% or 20x20% adjustable. This will speed up the download significantly and give faster visual feedback when focussing manually.

2) Add an second option to auto zoom on the brightest star (within this subsection or full image). Such that the star itself is filling about 10% to 20% of the screen making it easy to see the focus quality. A star on the image is maybe 6x6 pixels large, So it should show a "sub-subsection" of 40x40 pixels only.

han-k59 commented 1 year ago

An other option would be to show a star profile curve or report the median HFD values.

artyom-beilis commented 1 year ago

From your video I didn't see issue with download speed, especially when using exposures of 1s or more.

For for me streaming cropped image would be quite complicated since all processing is queue based. Currently it is quite complex at infrastructure level.

What I can add is ROI - support at camera level so instead of using full frame, just to set camera ROI and so you'll be able to reach higher frame-rates. I think the bottle neck is rather USB communication and not video streaming even with large frames.

An other option would be to show a star profile curve or report the median HFD values.

This is quite complex feature. I need to see how it works in other applications like NINA, SharpCap etc. Because I'm not familiar with this method. I use simple 3d printed Bahtinov mask and it works nicely.

artyom-beilis commented 1 year ago

From re-reading your ticket. Do you mean ROI support?

han-k59 commented 1 year ago

Yes ROI is what I mean with subsection. The images are maybe 12 mbytes in bin 2x2. I haven't measured it but I estimate the download time is a few seconds. The ROI should be the center of the image. A 20%x20% ROI would speed up the download by a factor 5x5=25x. So adding ROI would be a big improvement.

Not everybody has Bahtinov mask.

Star detection and HFD measurement requires some smart routines. Maybe a first step would be to report the peak value of the histogram. E.g. report the histogram value where 0.001 (0.1%) of the pixels are above. (I call this star level). The sharper the image the higher the value will be. But adding the ROI is more important.

artyom-beilis commented 1 year ago

Fixed in f18a2a46d8ddd6b330a56372cb70f5305afd309c

artyom-beilis commented 1 year ago

fix released in https://github.com/artyom-beilis/OpenLiveStacker/releases/tag/beta12