Find a square in an image and give back it's location and color in the image

30 views (last 30 days)
I'm trying to make a code that could detect a square in an image and then give me the color and the coordinates of the square back to then move a robot to the given position. Problem is I can't find a function that can detect squares. My code works with circles by using the imfindcircles function but I can't seem to find a square version of this function.

Answers (2)

Pratyush Roy
Pratyush Roy on 28 Sep 2020
The following link might be helpful for solving your problem:

Matt J
Matt J on 12 Oct 2020
Edited: Matt J on 12 Oct 2020
Instead of detecting squares as the first step, couldn't you just detect red, yellow, or blue pixel regions? I see some small blue circular regions, but it should be easy to use bwareafilt to reject those based on their size. Or you could exclude them based on the fact that they lie inside a larger circle, which you could detect using imfindcircles and bwconvhull.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!