Noting the interesting discussion about optical flow and horizon finders in this thread, I undertook to add a simple horizon finder to the SRV-1 Blackfin Camera firmware. The algorithm uses a basic edge detection function that is already build into the SRV-1, dividing the image into 16 columns and searching from top-to-bottom for first edge hits. From the video, it appears that the edge threshold could be set a bit lower, but the results are pretty good without any tuning or filtering.The Google Code project is here - http://code.google.com/p/surveyor-srv1-firmware/ . Next step is to add a least-squares fit to draw a line through the edge segments and then compute pitch and roll angles.
Noting the interesting discussion about optical flow and horizon finders in this thread, I undertook to add a simple horizon finder to the SRV-1 Blackfin Camera firmware. The algorithm uses a basic edge detection function that is already build into the SRV-1, dividing the image into 16 columns and searching from top-to-bottom for first edge hits. From the video, it appears that the edge threshold could be set a bit lower, but the results are pretty good without any tuning or filtering.The Google Code project is here - http://code.google.com/p/surveyor-srv1-firmware/ . Next step is to add a least-squares fit to draw a line through the edge segments and then compute pitch and roll angles.
You need to be a member of diydrones to add comments!
Comments
However, for example, the software may be able to detect the runway in the PC/ground station displayed image at a distance ahead and try to maintain the UAV/plane on the centerline for landing.
-what happens if you have a cloud(s) in the picture - say clouds are in the middle of the sky (horizontally) and half way between top of the picture and real horizon (vertically)? How will your algo handle that
- are you finding edges using rising or falling edges, or best edge?
-are there any effects on edge detection (in your algorithm) from light conditions (just after sunrise or before sunset vs. middle of the day)?