我们可以使用函数edge()
在MATLAB中提取图像的边缘
我的问题是如何将边缘与原始图像重新组合以获得具有增强边缘的图像以增加图像的清晰度。
答案 0 :(得分:2)
忘记edge()
。只需致电imsharpen()
答案 1 :(得分:2)
您正在寻找的东西已经存在!
有问题的图像过滤器称为“非锐化掩码”。它基本上使用图像的边缘数据来锐化它。为了阐明,它实际上以各种方式做的是使用图像的差异和它的模糊版本,然后使用它来锐化图像。您可以阅读更多相关信息here。
要使用它,只需执行以下操作:
>> my_image = imread('lena.jpg');
>> subplot(1,2,1);
>> imshow(my_image);
>> subplot(1,2,2);
>> imshow(imfilter(my_image,fspecial('unsharp')));
这将是:
如您所见,第二张图像明显更清晰,这是通过使用非锐化蒙版将边缘数据“添加”到原始图像来完成的。