Open RubenKelevra opened 1 year ago
@derekShaheen
Maybe you could chime in here, what you think about that.
I'm also going to chime in about potential physical limitations of the dish.
Multiple commenters on my Youtube channel have mentioned that these small dishes can't resolve down below ~2-3 degrees of azimuth, which is why commercial TV satellites are spaced relatively far apart, and why you need a bigger dish (with narrower beamwidth) to get some of the free TV satellites that are in between. According to this calculator (https://www.satsig.net/pointing/antenna-beamwidth-calculator.htm) using the 14-inch diameter of the Tailgater reflector (0.35 meters), my full beam width appears to be 1.39 degrees (in 12ghz Ku band).
Now I'm absolutely not a radio theory expert, but I think this means the dish won't resolve any smaller than a degree (or 1.4-ish), so using "nudge" will just give a lot of overlap and reflections. I think I'm already getting reflections, in the way each strong satellite signal in my bitmaps shows a "ring" around it. I think those rings might be the reflections from trying to image 1-degree increments with a 1.4-degree view. (Or I could be talking complete nonsense).
I really appreciate people improving this and coming up with ideas, but I suspect the nudge option might be something of a dead end, unless there's something I'm missing.
Hey @saveitforparts,
commercial TB satellites are spaces apart for multiple reasons, main one is that geostationary orbits are very limited, thus the positions have to be managed by agencies which assign the positions.
But sure, the advantage of assigning positions far apart is, that you can fully avoid getting similar signals on similar frequencies as noise, enhancing the SNR (signal-to-noise ratio).
Regarding the antenna “resolution”: I think there's a misconception here, as the antenna is neither blocking signals outside of this “beam” nor increasing signals inside this “beam” with an equal amount.
Antennas are meant to focus which signals are beeing received, by increasing gain while reducing gain in other regions. The beam
of antenna is not a binary pattern, but an arc. While there's a large gain from off the target
to on the target
, there's still a signal increase by more than 3 times if you aim the center of the beam to the signal – in this example:
So just as an example, if you use a linear signal to byte conversions:
If you see a strong signal, which you would render as an 255 on an image, you would see it just as an 63 if it's at the edge of your beam.
You could even “enhance” the resolution further in the resulting image, by using local contrast increasing image filters, like Unsharp Mask
, which suppresses the weaker signals next to a strong signal.
Apart from that, why not just add a higher gain reflector? :)
I still plan to try the high-res scan and run through all the PRs on the hardware again, I just haven't had time to ID or address some of the errors I ran into. I'm also still waiting to hear from another source with some hardware details. A higher gain reflector would be great, but I think the main way to do that is a larger diameter dish. While I do have a 2.5M reflector, I don't currently have motors large enough to move it!
A couple follow-ups on this, since I had some limited time to mess with it again:
High resolution scan actually seems feasible, if run in the same direction each time and reset back to the initial starting azimuth. Since each "nudge" is ~1/5th of a degree, a high res scan takes 5x elevation steps and 5x azimuth steps for a total of 25x the runtime as a low-res scan. So a full scan of the sky in high res would take over 3 days, vs 3 hours in low res.
I like the adaptive resolution idea, but... the image doesn't always look the same between two high-res runs. Again these "nudge" steps were never intended as repeatable standard movements. I've found that 3 steps per elevation degree and 5 per azimuth degree actually works a little better... sometimes. If someone implements adaptive scanning, they'll have to match the frames of reference between high and low resolution somehow.
I have had issues running most of the PRs. #1 works OK, but honestly I prefer my interactive prompts. #2 and #3 both get to a certain point and throw errors related to the lib and util files. I didn't have time to sit down and figure out where the errors come from (sorry!). I will try to do a follow-up video on my Youtube channel before I put the thing away for the summer.
Unfortunately it's not going to work to develop collaborative code or an org with the hardware here and the experienced coders elsewhere. I'm realizing that I don't work well that way, and my schedule won't allow me to stay on top of it. I appreciate everyone's interest in improving my code, and I'm sorry I don't have more time and attention for it right now! Coding is more of a winter hobby for me, and spring is now demanding all my free time. I'd recommend that folks interested in this find some Tailgater hardware to work with. There's at least one other person on Youtube who found one on eBay and is working on a similar project.
Here are a couple quick examples of high and low-res scans of a limited azimuth and elevation range (160 to 190 az and 30-40 degrees elevation). The high res was produced by running "nudge" 5x per degree counterclockwise, returning to the starting azimuth for each elevation.
Note that there are still some gear meshing and other indexing artifacts on the high res scan. In addition to the inconsistent "nudge" movements, I think I'm wearing out the little motors and plastic gears on this dish by running it way longer than intended.
Hey! Some thoughts about resolution of your dish. Due to small size it has pretty low resolution (~4 degrees). However, its possible to make it sharper using Richardson–Lucy deconvolution. There are some other approaches, but this one works best for me. Shortly speaking, this method finds an image which looks the same as yours when blurred with beam form of a parabolic antenna.
Result isn't too fascinating, but some satellites become distinguishable from groups, e.g. group of 3 or 4 at azimuth 60
Script is here. Maybe it would work better with hi-res scans if you return to this topic at future
That is very cool! I'll put that on the to-do list to look into when I get back to this!
https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail Virus-free.www.avast.com https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail <#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>
On Thu, May 11, 2023 at 12:33 PM Ilya Pogorelov @.***> wrote:
Hey! Some thoughts about resolution of your dish. Due to small size it has pretty low resolution (~4 degrees). However, its possible to make it sharper using Richardson–Lucy deconvolution https://en.wikipedia.org/wiki/Richardson%E2%80%93Lucy_deconvolution. There are some other approaches, but this one works best for me. Shortly speaking, this method finds an image which looks the same as yours when blurred with beam form of a parabolic antenna https://en.wikipedia.org/wiki/Parabolic_antenna#Radiation_pattern_formula .
Result isn't too fascinating, but some satellites become distinguishable from groups, e.g. group of 3 or 4 at azimuth 60 [image: sharp_image] https://user-images.githubusercontent.com/74183355/237766619-d9e9adbe-5318-4e21-af7b-311d56308bb0.png [image: sharp_image_large] https://user-images.githubusercontent.com/74183355/237766649-67b5ff1b-2130-4309-9cff-a752b0c14502.png
Script is here https://github.com/Vitzlitzveig/Tailgater-Microwave-Imaging/blob/RE_sharpening/sharpen_image.py. Maybe it would work better with hi-res scans if you return to this topic at future
— Reply to this email directly, view it on GitHub https://github.com/saveitforparts/Tailgater-Microwave-Imaging/issues/4#issuecomment-1544409662, or unsubscribe https://github.com/notifications/unsubscribe-auth/AUBUBKMRHCJ47C35NFYW77LXFUPFJANCNFSM6AAAAAAWV44U24 . You are receiving this because you were mentioned.Message ID: @.*** com>
Currently, the whole area is specified and scanned in one resolution.
Using the nudging feature, it should be possible to do 0.2° steps, but this would take a huge amount of time to complete.
Not only is it not necessarily feasible timewise to do such scans, also objects may move – if not (geo)-stationary.
Adapt resolution based on signal strength
Instead of doing a full resolution sweep, the antenna could first sweep the sky with a very low resolution, like 4°.
Then sort the signal strength received and mark areas of interest where the signal strength is in the upper 90th percentile.
In those areas it does a 2° sweep and sort/filter again.
Repeated by a 1° sweep.
To improve scan time the next resolution could be a "double nudge" to the right off plus a "double nudge" to the right off of -1 of the "interesting" value. While that's a delta of 0.4° it should still be close enough.
The whole progress would massively improve the scan time of the sky, as only small portions would be scanned with high accuracy, while sections which would only appear as “noise” wouldn't need to be scanned.
Display
While scanning the progress could be shown on the console by printing out the grid of 2°s as chars.
While just counting up how many measurements were taken in each 2° area. A simple
.
is no measurement and1-j
display would, e.g., look like that: