拉普拉斯滤波器

时间:2013-11-19 06:18:51

标签: java image-processing edge-detection

我一直在尝试在java中应用laplacian过滤器。

int  red = 8 * red - imageOne.getRed(i - 1, j - 1)
                    - imageOne.getRed(i, j - 1)
                    - imageOne.getRed(i + 1, j - 1)
                    - imageOne.getRed(i - 1, j) - imageOne.getRed(i, j)
                    - imageOne.getRed(i + 1, j)
                    - imageOne.getRed(i - 1, j + 1)
                    - imageOne.getRed(i, j + 1)
                    - imageOne.getRed(i + 1, j + 1);

绿色和蓝色值以相同方式计算。

计算RGB值后,会出现一些非常大的值或负值。 范围为[ - 255 * 8 ... 255 * 8]

我尝试使用

进行缩放
     red = (int) (red / 16) + 128;
 green = (int) (green / 16) + 128;
 blue = (int) (blue / 16) + 128;

我也试过用以下代码

在[0 - 255]之间重新调整它
        red = Math.min(255, Math.max(0, red));

但图像仍未正确显示。

如何正确处理RGB值?

由于

0 个答案:

没有答案