opencv 用c++语言 怎样识别出一片区域的红绿灯并判别颜色。

 我来答
匿名用户
2014-05-14
展开全部
你看传感器输入值然后相应的函数很好写
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cdyzxy
2014-05-14 · TA获得超过2.1万个赞
知道大有可为答主
回答量:1.4万
采纳率:84%
帮助的人:3561万
展开全部
判别颜色:取某区域内颜色的RGB各分量数值(或YUV分量数值)和,分别判断各分量之间的比例关系,当满足一个自己定义的范围时,实现判定。
比如:RGB的比例中R的比例远高于G和B时,判定为红色;R和B、G和B都是前者比例非常大,而且R和G的比例差不多时判断为黄色;G的比例都大于R和B时为绿色。
这个自定义的范围需要用不同的图片、不同照明、不同对比度、不同背景色彩、不同透明度,这些来验证数据,取一个在各种情况下都能工作的范围。
更多追问追答
追问
颜色的判别我可以做到,但是区域的确定我做不出来,怎么样能够识别出信号灯的区域呢
追答
可进行平滑滤波后统计区域象素颜色特性,最后大致有一个圆形区域内的特征在特征值范围内。或者在此基础上统计此区域的重心所在,再用附近的象素RGB分量求和进行特征判定。
如果摄像头固定,则可利用以前统计过的区域。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式