如何在android中使图像模糊

如何在android中使图像模糊,android,image-processing,Android,Image Processing,嗨,我正在尝试在图像上实现一些效果,比如图像边框和各种颜色 现在我试着制作这样的模糊图像 图像的中心部分清晰可见,其他部分模糊 我指的是链接开关 但是它不同于这张图片(这是java中的库,所以我将BufferdImage转换为位图,但现在我想不起来了),有人能帮我吗?很抱歉回复太晚了。这个周末我忘了检查stackoverflow 无论如何,我认为您应该这样做(它被简化为灰度,但应该很容易为RGB工作): 尼姆现在是新形象 基本上,我们首先做一个查找表,告诉我们给定像素的模糊程度。焦点值是每个

嗨,我正在尝试在图像上实现一些效果,比如图像边框和各种颜色 现在我试着制作这样的模糊图像

图像的中心部分清晰可见,其他部分模糊

我指的是链接开关


但是它不同于这张图片(这是java中的库,所以我将BufferdImage转换为位图,但现在我想不起来了),有人能帮我吗?

很抱歉回复太晚了。这个周末我忘了检查stackoverflow

无论如何,我认为您应该这样做(它被简化为灰度,但应该很容易为RGB工作):

尼姆现在是新形象

基本上,我们首先做一个查找表,告诉我们给定像素的模糊程度。焦点值是每个像素与清晰区域距离的函数。这是矩阵fval。然后,我们对图像进行多次模糊,每次都使用模糊图像中的新像素数据更新新图像,并且仅在更新该去聚焦级别时更新给定像素

模糊函数可以是任何东西。当我自己测试时,我在MatLab中使用了平均模糊


希望这有帮助

从以下链接下载适用于Android的JHLabs库。这些库将在Android上运行


您希望模糊图像的哪些部分?你想让它像示例图片一样,只有一个清晰的区域(像一个圆圈),然后在它外面模糊吗?谢谢你的回答,但我是新的,在我的水平上,这对我来说很难(我很抱歉地说)你做过(找到)任何示例吗。再一次谢谢。@Youddh我恐怕没有其他的例子了。正如我所说,我自己开发了这个版本。所以你看到的和我的差不多(我可能也有MATLAB代码,但实际上是一样的)。哪一部分给你带来了麻烦?我真的只能就这个算法本身向你提供建议,而不是Android图像处理。
oim = original image
xc, yc = center point
d = distance from center point for in-focus
fval = zeros, matrix size of oim
max_blur = maximum blur radius
for all pixels (xp,yp) in oim
    dist = sqrt((xp-xc)^2+(yp-yc)^2)
    dist = dist-d // we only care about the area beyond the clear area
    if dist>0
       blur = dist
    end
    if blur>max_blur
       blur = max_blur // this can also be scaled or whatever works for your needs
    end
    blur = round(blur)
    fval(xp,yp) = blur
end
nim = oim
for b=1:max_blur
    blurred = blur_function(oim,b)
    for all pixels (xp,yp) in fval
       if fval(xp,yp) == b
          nim(xp,yp) = blurred(xp,yp)
       end
     end
end