该项目旨在检测彩色方块,并相应地将控制信号发送到微控制器
这是我处理过的Image的输出..
RED:
格林:
如果检测到红色方块,则matlab通过串口发送字符“R” 如果检测到GREEN Square,则matlab通过串口发送字符'G'
区分已处理图像和发送数据的任何想法/技巧??
如果RED Square出现布尔值red=true
,并且当GREEN suware出现布尔值green=true
稍后或者我可以检查布尔值并发送字符true
答案 0 :(得分:4)
如果您的所有图像都像您在示例中显示的那样简单,则图像处理部分非常简单。您可以简单地检查哪个频道更占优势,红色或绿色。
green = im(:,:,2);
red = im(:,:,1);
if sum( green(:)) > sum(red(:))
% Send green!
else
% Send red!
end
如果图片不是那么简单,您可以将图片转换为HSV
色彩空间,并查看占优势的Hue
是什么,除了Sat
小于Hue
的图像一些门槛。需要后一部分才能从决策中删除黑色像素(它们往往几乎是随机的{{1}})。
您可以在此处阅读controlling serial ports