Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/12.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
Java OpenCV合并间隙阈值内的遮罩零件_Java_Algorithm_Opencv_Image Processing - Fatal编程技术网

Java OpenCV合并间隙阈值内的遮罩零件

Java OpenCV合并间隙阈值内的遮罩零件,java,algorithm,opencv,image-processing,Java,Algorithm,Opencv,Image Processing,我正在编写实时视频处理代码,使用mog2算法从输入中提取背景,然后使用形态学滤波器使其平滑 问题是,有时一个对象的遮罩中存在间隙。我想我可以用某种算法来弥补阈值内的漏洞,但OpenCV中有没有类似的算法,或者我必须自己编写 左边的图像是实际的遮罩,右边的图像是我绘制的预期结果: 关于编辑二进制掩码是一种二进制形态学操作:您需要关闭二进制掩码的 有关形态闭合的信息(包括图像) 来自(由我缩短) publicstaticvoidmorphologyex(matsrc、matdst、int-op、m

我正在编写实时视频处理代码,使用mog2算法从输入中提取背景,然后使用形态学滤波器使其平滑

问题是,有时一个对象的遮罩中存在间隙。我想我可以用某种算法来弥补阈值内的漏洞,但OpenCV中有没有类似的算法,或者我必须自己编写

左边的图像是实际的遮罩,右边的图像是我绘制的预期结果:


关于编辑二进制掩码是一种二进制形态学操作:您需要关闭二进制掩码的

有关形态闭合的信息(包括图像)

来自(由我缩短)

publicstaticvoidmorphologyex(matsrc、matdst、int-op、matkernel)

执行高级形态变换

该函数可以使用 作为基本操作的侵蚀和膨胀。 [...]> 注:

使用morphologyEx函数进行形态学分析的示例 打开和关闭操作可在以下位置找到: opencv_源代码/samples/cpp/morphology2.cpp

  • op
变形关闭-关闭操作

变形梯度-形态梯度

变形顶帽-“顶帽”

变形黑帽-“黑帽”

我对OpenCV的java绑定了解不多,但它可能与上面引用的C++示例非常相似:

// Close the image in C++
cv::Mat element5(5,5,CV_8U,cv::Scalar(1)); # 5 by 5 element set at 1
cv::Mat closed;
cv::morphologyEx(image,closed,cv::MORPH_CLOSE,element5);

你能指定一种编程语言吗?您能否提供一些显示问题的图像以及所需结果?完成。为问题添加了图像。我觉得这是因为阴影。!!尝试在拍摄后对图像进行模糊处理。!!或者试着在某种程度上使发光值为空,我想这会解决问题。。!!这或多或少是我想要的,并不总是理想的,但足以满足我的需要。