如何用opencv取得一个小区域的颜色(比如红绿灯)
一张图片,远处有个红绿灯。假设图片的红绿灯位置固定(已知)
我用opencv把这个红绿灯的状态即颜色给判断出来
步骤是不是先对这个红绿灯区域设置感兴趣区域,然后识别感兴趣区域里的颜色??
如果是的话
请哪位写个源码出来,判断识别颜色的代码就行。
[解决办法]
这个我也在搞,但是还没进展
判断红色图片 IplImage* pImg_test = cvLoadImage("red7.jpg",1);; int r, g, b; int intRedCount = 0; int intS = 0; for(int x = 0; x < pImg_test->width; x++) { for(int y = 0; y < pImg_test->height; y++) { r = CV_IMAGE_ELEM(pImg_test, uchar, y, x * 3 + 2); g = CV_IMAGE_ELEM(pImg_test, uchar, y, x * 3 + 1); b = CV_IMAGE_ELEM(pImg_test, uchar, y, x * 3); if ((r >= 210) && (130 > g ) && (g > 110) && (150 > b ) && (b > 130)) { intRedCount++; } } } if (intRedCount >= 5) { AfxMessageBox("r==255,现在是红色信号灯\n"); }