0

我正在android中进行图像处理,例如模糊效果和图像上的圆圈。

我的目标是在特定点及其周围模糊图像。我可以使用高斯模糊和卷积矩阵对整个图像进行模糊效果。

public static Bitmap applyGaussianBlur(Bitmap src) {

    double[][] GaussianBlurConfig = new double[][] { { 1, 2, 1 }, { 2, 4, 2 }, { 1, 2, 1 } };
    ConvolutionMatrix convMatrix = new ConvolutionMatrix(3);
    convMatrix.applyConfig(GaussianBlurConfig);
    convMatrix.Factor = 16;
    convMatrix.Offset = 0;
    return ConvolutionMatrix.computeConvolution3x3(src, convMatrix);
}

谁能给我一个想法,在图像中的特定点做模糊效果?

4

1 回答 1

0

我实际上只是回答了类似的问题。

尝试与此相反。

我认为您想要做的是创建原始图像的两个副本。一个是清晰的,一个是模糊的(使用你想要的任何过滤器)。然后,对于您想要模糊的区域中的所有像素,将它们的值从模糊图像复制到清晰图像。

单独对所有像素进行模糊拟合可能会浪费您的时间。除非您尝试做一些花哨的事情(如链接中的),否则请执行一次并将其用作一种查找表。

但是,由于您是在移动设备上执行此操作,因此您可能需要进行一些特殊的内存管理。在这种情况下,获取原始图像的裁剪版本(尺寸略大于模糊区域)并仅模糊该子图像。然后跟踪子图像中的哪些像素对应于原始像素中的哪些像素,并将这些值复制过来,或者对您的项目有用的任何内容。

于 2012-10-23T15:49:53.837 回答