Generating a grid around circles in an image
5 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hello,
I have created a costas array on matlab. Say I recreate this array on paper and take a picture of it. I want to detect if it is a costas array. Is there an way to make an interactive grid that I can drag over the image and detect if there is a black dot within each cell of the grid?
1 commentaire
Adam Danz
le 2 Août 2019
Modifié(e) : Adam Danz
le 2 Août 2019
You could load the image onto an axis. Then using image processing tools to get the coordinates of each black point. Once you decide on the width and height of your grid squares, you could merely +/- 1/2 of those dimentions from each data point so that each coordinate becomes a range in the x and y directions. Then determine if any ranges overlap. That doesn't fulfill all of the requirements of a Costas Array but it should get you started.
Réponse acceptée
David K.
le 2 Août 2019
So I felt like making it interactive so I used the built in guide function in matlab to create a GUI. Attached are the two files. Basically it lets you type in the x and y intervals for your grid. Then upon clicking update it will show the grid lines, put a red star at the center of each grid box that it believes the black dot is in and then will do a basic check for costas array.
Inside the m file is a lot of stuff that makes the gui work. You don't need most of it but I put a big stuff happens here comment to help find the main things. There is a function called testCostaArray where I do the test to see if any of the points are in the same column or horizontal. I think it should be set up well enough to let you check for the other conditions that make something a costas array since I did not put those in.
Godd luck, hope this helps.
3 commentaires
David K.
le 2 Août 2019
Oops, meant to mention the image requirement in my answer.
I do not actually know much about costas arrays so I was mainly focusing on the interactive part and determining where each dot is.
I am only checking that there are no repeat dots in each row or column since that is an easy condition. I did not know that (1) might be a condition, and I left (2) to be filled in by the questioner. I set it aside as a function in hopes that it would be a good enough framework to add the changes to the determination logic. If you want to add those condition in, go for it!
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Image Processing Toolbox dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!