Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 闪烁轮廓线_C++_Image Processing_Opencv_Video Processing_Contour - Fatal编程技术网

C++ 闪烁轮廓线

C++ 闪烁轮廓线,c++,image-processing,opencv,video-processing,contour,C++,Image Processing,Opencv,Video Processing,Contour,是从摄像机中识别出最大的轮廓并用红线画出来 我发现,当检测到最大轮廓(在我的程序中称为最大\u轮廓)时,轮廓的轮廓线将闪烁,有时会中断在其周围绘制红线的功能(因为轮廓线不再连接,因此在图像中检测不到更多轮廓) 我的问题是: 发生此问题的原因是什么 如何避免(或我们可以避免)这个问题的发生 有什么改进我的轮廓检测程序的建议吗 提前谢谢 备注:有关代码、图片和更多信息,请单击 findContoursOpenCV的API修改用于查找轮廓的图像 Mat displayContours = Mat::z

是从摄像机中识别出最大的轮廓并用红线画出来

我发现,当检测到最大轮廓(在我的程序中称为
最大\u轮廓
)时,轮廓的轮廓线将闪烁,有时会中断在其周围绘制红线的功能(因为轮廓线不再连接,因此在图像中检测不到更多轮廓)

我的问题是:

  • 发生此问题的原因是什么
  • 如何避免(或我们可以避免)这个问题的发生
  • 有什么改进我的轮廓检测程序的建议吗
  • 提前谢谢


    备注:有关代码、图片和更多信息,请单击

    findContours
    OpenCV的API修改用于查找轮廓的图像

    Mat displayContours = Mat::zeros(image.rows,image.cols,CV_8UC1);
    for(int i = 1;i<(int)largest_contours[0].size();i++)
    {
       line(displayContours,largest_contours[0][i-1],largest_contours[0][i],255,2,8,0);
       line(image,largest_contours[0][i-1],largest_contours[0][i],cv::Scalar(0,0,255),2,8,0);
    }
    
    Mat displayContours=Mat::zero(image.rows,image.cols,CV_8UC1);
    
    对于(int i=1;即“闪烁”问题很可能是由噪音/灯光引起的,是的,但这也可能表明您没有使用以前的任何其他帧。您可能希望平均帧,然后是使用此方法的典型建议。但是,要提供准确的帮助,您必须包含一些有问题的您自己的短示例视频ms you description.添加了视频。这是您的应用程序运行的视频,没有人需要它。需要的是您的原始帧,请检查
    VideoWriter