我想计算欧拉数,所以我需要连接组件的数量和图像中的孔数。我找到了如何查找连接组件的数量。使用此代码;
vector<vector<Point>>contours;
vector<Vec4i>hierarchy;
findContours(mat,contours,hierarchy,CV_RETR_CCOMP,CV_CHAIN_APPROX_SIMPLE );
objects_num=contours.size();
但我不确定用于计算连接组件的正确代码。你知道这段代码是对的吗?
其次**但是我不知道如何计算洞的数量?opencv doc说所有的轮廓都被组织成一个两层的层次结构, 你知道如何获得这些洞的数量。
答案 0 :(得分:1)
我正在尝试从该图像中提取特征。例如,我需要euler number,filledArea属性。为此原因;我试图找出黑色素瘤图片中的孔数和连接组件的数量。你知道找到这些属性的任何功能吗?
PS:我正在Android平台上使用opencv for android。
答案 1 :(得分:0)
所以,我可以建议你开始研究OpenCV如何处理blob(以及描述blob的轮廓)。
如果您对区域,质心等blob属性感兴趣,可以使用image moments(另请查看here)。