目标:学习contours, hierarchy=cv.findContours(...)函数中的hierarchy层次关系。
在前面我们学习了很多关于轮廓的函数,发现使用cv.findContours()函数时,要向这个函数输入一个参数cv.RETR_EXTERNAL、cv.RETR_LIST、cv.RETR_CCOMP或者 cv.RETR_TREE,这个参数有什么用呢?同时在调用这个函数时,返回有两个参数contours, hierarchy,第一个参数contours是轮廓列表,第二个参数hierarchy是什么呢?前面的例子里都没有使用这个返回值里的值,这个返回值与上面输入参数又有什么关系呢? 这是本文正要解决的问题。
Hierarchy是什么返回值?
前面一直使用cv.findContours()函数来从图像里查找对象的轮廓,有时候发现轮廓在不同的位置上,但是有时候发现图像的轮廓还会有内外关系,就像嵌套的情况类似。在这种情况下,将在外面的图形轮廓叫做父节点轮廓,里面的图形轮廓