首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >图像分割(MATLAB)

图像分割(MATLAB)
EN

Stack Overflow用户
提问于 2016-12-06 06:50:58
回答 1查看 570关注 0票数 1

我如何将这幅番茄图像从背景中分割出来?我尝试了mathworks的分水岭方法;不幸的是,一些背景的强度与番茄相同,并且在该背景点和周围较暗的点之间创建了一条边缘,因此番茄以及一些背景被分割在一起。

我试图找到梯度来揭示番茄的外缘,但并不是所有的梯度都非常明确,所以在某些部分,它似乎没有连接到番茄周围的所有地方。我的想法是,如果我可以连接它并填充整个边界,我就可以通过从原始图像中提取填充的像素来有效地分割这个西红柿。如果有人能帮上忙,我将不胜感激。

我包含了原始图像和渐变图像的图片,使用下面的命令完成。

代码语言:javascript
复制
I = imread('Insert Image');
figure, imshow(I);

hy = fspecial('sobel');

hx = hy';
Iy = imfilter(double(I), hy, 'replicate');
Ix = imfilter(double(I), hx, 'replicate');
gradmag = sqrt(Ix.^2 + Iy.^2);
figure, imshow(gradmag,[]), title('Gradient magnitude (gradmag)')

EN

回答 1

Stack Overflow用户

发布于 2016-12-27 20:38:25

您可以尝试使用Graphcut分割方法。我刚刚尝试了各种分割方法,发现Graphcut分割对于给定的图像效果很好:

链接:

https://www.youtube.com/watch?v=efUh0zcpsXc

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40984804

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档