opencv里的CvConnectedComp
我使用cvPyrSegmentation对一副图像进行色彩分割,返回的结果有一个CvConnectedComp
它包含了各个连通域的信息,我现在想对每个连通域进行遍历,请问如何操作。。。
谢谢
[解决办法]
你这个是个CvSeq序列吧,每个元素是CvConnectedComp类型?
CvSeq是跟CvMemStorage搭配使用的,数据存储在CvMemStorage里,怎么遍历跟c++的STL容器差不多,简单说就是个数组,你看看CvSeq的成员函数就知道了
CvConnectedComp结构:
typedef struct CvConnectedComp
{
double area;
CvScalar value;
CvRect rect;
CvSeq* contour;
} CvConnectedComp;
openCV的问题去这里看比较好:http://www.opencv.org.cn/
[解决办法]
好像cvPyrSegmentation得到的CvConnectedComp 并不包含contour信息,估计你得对每个区域转成二值图像来提取,或者直接在分割图上提取
typedef struct CvConnectedComp
{
double area; /* 连通域的面积 */
float value; /* 分割域的灰度缩放值 */
CvRect rect; /* 分割域的 ROI */
} CvConnectedComp;
[解决办法]