opencv中contour hierarchy的理解

参考资料:官方文档

我用官方文档的例子来解释一下opnecv中contour hierarchy的概念:
opencv中contour hierarchy的理解
比如说,在一张图片里会有好几个物品,它们可能位于不同的位置,也可能A物体嵌在B物体里,这时候我们可以把A物体称作父体(parent),B物体称为子体(child)。这样一来,同一个图像里不同轮廓之间就存在一种关系,而hierarchy就是用来描述这种关系的

  • 上图中的0,1,2,是图像里的最外层轮廓,那么hierarchy-0就有3个轮廓:0,1,2;
  • 2a是2的孩子,所以hierarchy-1只有1个轮廓:2a
  • 3是2a的孩子,所以hierarchy-2只有1个轮廓:3
  • 其它的依次类推
    官网有另一张图说得更直白一点:
    opencv中contour hierarchy的理解
    橙字是轮廓的编号,绿括号里的数字是该轮廓所在的层级,但是我举得6号轮廓的层级应该是5才对,不知道是不是我的理解和官网有出入(溜