cv::FindOntours OPenCV 2.4

cv::FindOntours OPenCV 2.4,opencv,kinect,contour,Opencv,Kinect,Contour,我正在使用OpenCV 2.4,我想检测手的轮廓并使用Kinect绘制它们。 我使用的是cv::findContours(图像轮廓、轮廓、cv_RETR_树、cv_链_近似_简单、点(0,0)); 它工作得很好,但是当我尝试添加层次结构时,它导致了一些问题。 cv::findContours(图像轮廓、轮廓、层次、cv_RETR_列表、cv_链_近似值、点(0,0)) 当我尝试在以下位置访问这些等高线时,也使用了第一个选项: 双面积0=轮廓面积(轮廓,假); 或 cv::drawContours

我正在使用OpenCV 2.4,我想检测手的轮廓并使用Kinect绘制它们。 我使用的是cv::findContours(图像轮廓、轮廓、cv_RETR_树、cv_链_近似_简单、点(0,0)); 它工作得很好,但是当我尝试添加层次结构时,它导致了一些问题。 cv::findContours(图像轮廓、轮廓、层次、cv_RETR_列表、cv_链_近似值、点(0,0))

当我尝试在以下位置访问这些等高线时,也使用了第一个选项: 双面积0=轮廓面积(轮廓,假); 或 cv::drawContours(图纸,轮廓,i,颜色,1,8)

我获得访问冲突写入位置0x00000014。 我不知道如何画出它们或得到面积,有什么线索吗


提前谢谢

你能发一些代码吗?无论如何,这可能会有所帮助:我通过迁移到Cvseq*解决了这个问题,并以这种方式实现了整个代码,它很有效,谢谢@nkInt,但是在转换代码时还有另一个棘手的问题,Cvseq*hull=cvConvexHull2(biggestContour,storage2,1,0);CvSeq*缺陷=CV凸面缺陷(最大轮廓、船体、仓库3);当我想使用一个方法时,返回CvSeq*,@nkintand,例如它的头是vector filterHulls(vector,vector,RotatedRect);我必须将全部转换为CvSeq*,或者当我想转换品脱[index]时。x点是轮廓,index是外壳。例如,我做了CvPoint*p=CV_GET_SEQ_ELEM(CvPoint,inputIndex,I);CvPoint*p1=CV\u GET\u SEQ\u ELEM(CvPoint,inputPoints,p->y)@NKINT然后通过'p1->y'而不是(inputPoints[inputIndex[i]].y]引用它…但它当然不起作用…你们有什么线索吗@nkint