如何获得彩色图像的特定边缘
Posted
技术标签:
【中文标题】如何获得彩色图像的特定边缘【英文标题】:How to get a specific edges of a coloured image 【发布时间】:2016-07-18 18:18:23 【问题描述】:我想获得 2 条曲线,如 Desire result。我尝试使用边缘检测技术来获得这 2 条曲线,但输出不如预期。第一步,我将原始图像转换为灰度图像。第二步,我将灰度图像转换为二值图像,阈值由以下公式计算:
threshold = floor((sum(sum("grayscale image here")))/(2 *high *width));
然后使用Sobel边缘检测算法找到边缘:
im_edge = edge("binary image here", 'sobel');
我只需用黑色填充它即可去除左侧和右侧不需要的边缘。 我在Result 中得到了结果,但这并不符合我的预期。结果也是通过以下方式找到的嵌入边缘:
im_edge = edge("grayscale image here", 'sobel');
谁能帮助我获得更好的结果
【问题讨论】:
【参考方案1】:由于我没有 50 名声望来写评论,所以我会在这里写下我的 cmets 作为答案。
您遇到的问题是输入图像中没有可见的边缘。就我所见,图像非常平滑。如果你没有在图像上放两条线,我将无法分辨。
要获得更好的结果,您需要获得更多特征,例如对输入图像应用一些变换。例如,你可以尝试在输入图像的梯度或梯度的绝对值上找到边缘,看看是否能更好地找到那两条线(imgradient
)。
【讨论】:
[期望结果][1]以上是关于如何获得彩色图像的特定边缘的主要内容,如果未能解决你的问题,请参考以下文章
IOS OpenGL ES 图像扩展边缘彩色模糊 GPUImageRGBDilationFilter
图像增强基于matlab HSI+同态滤波彩色图像增强含Matlab源码 1515期
数字图像处理课程设计(基于matlab的Hough变换检测图像边缘提取,包含完整代码)