我想对图像进行预处理,以便创建一个黑白图像,其中包含每个像素的颜色渐变幅度。
让我详细描述问题。
假设我们有2个像素P_1,P_2
如果P_1 = [255, 0, 0]
和P_2 = [0,255,0]
它们在原始灰度上的灰度值为P_1 = 255/3, P_2 = 255/3
如果再次P_1 =[255,0,0]
和P2 = [255,0,0]
P_1 = P_2 = 255/3
但是,如果我们看一下这些像素处的梯度近似值。
对于第一种情况G = P_1 - P2 = [255, -255, 0]
,对于第二种情况G = [0,0,0]
显然这两个是不同的。
由于以下灰度问题,我需要获取此显着性图:
原始图片
缩放:
灰度:
如您所见,在进行灰度缩放时,两个具有不同颜色的区域将映射到相同的灰度值。
我的目标是增强边缘检测,因此我想要突出显示颜色发生变化的区域,这与灰度显示时可能发生的情况相反。
为此,我使用opencv laplacian函数获取渐变,然后将渐变的矢量幅度转换为标量。得到以下结果:
更好,但是我想知道除此以外是否还有其他事情可以做,例如反卷积算法。