利用MATLAB扩展图像中对象的边界并填充封闭区域

利用MATLAB扩展图像中对象的边界并填充封闭区域,matlab,image-processing,curve-fitting,fill,edge-detection,Matlab,Image Processing,Curve Fitting,Fill,Edge Detection,我有一个二值图像,它有一个弯曲的物体,如下所示 我试图从两端延伸这个弯曲的对象(最好是具有相同的曲率),使其到达x轴,然后找到封闭区域,如下所示 有人能告诉我如何使用MATLAB实现这一点吗?鉴于您的图像中的形状都与您的示例相似,我将执行以下操作: 提取二值图像每列中的顶部像素 创建一个对称多项式拟合函数(一个二次函数,或者四次函数,看起来已经足够好了)来匹配那些顶级像素 从与拟合函数下面的值对应的所有像素创建新的二值图像 这不会完全匹配您的原始图像,但考虑到二进制图像首先是不完整的,我认为

我有一个二值图像,它有一个弯曲的物体,如下所示

我试图从两端延伸这个弯曲的对象(最好是具有相同的曲率),使其到达x轴,然后找到封闭区域,如下所示


有人能告诉我如何使用MATLAB实现这一点吗?

鉴于您的图像中的形状都与您的示例相似,我将执行以下操作:

  • 提取二值图像每列中的顶部像素

  • 创建一个对称多项式拟合函数(一个二次函数,或者四次函数,看起来已经足够好了)来匹配那些顶级像素

  • 从与拟合函数下面的值对应的所有像素创建新的二值图像

  • 这不会完全匹配您的原始图像,但考虑到二进制图像首先是不完整的,我认为这不是一个大问题