两个位图中的模糊图像

Blur Image in Both Bitmaps

你好,我有模糊图像的问题..

我想在一个 Imageview 中设置模糊背景和原始图像..

我试着把所有的一个图像视图..现在我测试两个图像视图,但它是一样的..

我的代码

// Then later, when you want to display image
    ImageLoader.getInstance().displayImage(listKone.get(i).getCestaObrazok(), imgHorse); // Default options will be used

// ↑ thise method have link where are my image and download image and show it in imgHorse ImageView

        imgHorseB=imgHorse;


    ImageLoader.getInstance().displayImage(listKone.get(i).getCestaObrazok(), imgHorseB); // Default options will be used
    BitmapDrawable drawable = (BitmapDrawable) imgHorseB.getDrawable();
    Bitmap bitmap = drawable.getBitmap();

    Bitmap blurredBitmap = blur(bitmap);
    imgHorseB.setImageBitmap(blurredBitmap);





   public Bitmap blur(final Bitmap image) {
        if (null == image) return null;

        Bitmap outputBitmap = Bitmap.createBitmap(image);
        final RenderScript renderScript = RenderScript.create(activity);
        Allocation tmpIn = Allocation.createFromBitmap(renderScript, outputBitmap);
        Allocation tmpOut = Allocation.createFromBitmap(renderScript, outputBitmap);

//Intrinsic Gausian blur filter
        ScriptIntrinsicBlur theIntrinsic = ScriptIntrinsicBlur.create(renderScript, Element.U8_4(renderScript));
        theIntrinsic.setRadius(BLUR_RADIUS);
        theIntrinsic.setInput(tmpIn);
        theIntrinsic.forEach(tmpOut);
        tmpOut.copyTo(outputBitmap);
        return outputBitmap;
    }

在方法模糊之后所有位图中都有模糊图像。如果调试代码模糊只影响这条线 theIntrinsic.forEach(tmpOut);在两个位图中都是模糊图像imageenter code here 我不知道不知道为什么..

完成此方法后,模糊图像在 bluredBitmapbitmap 中,但它是错误的..

请帮帮我

 @SuppressLint("NewApi")
public static Bitmap blurRenderScript(Context context,Bitmap smallBitmap, int radius) {
    try {
        smallBitmap = RGB565toARGB888(smallBitmap);
    } catch (Exception e) {
        e.printStackTrace();
    }

    Bitmap bitmap = Bitmap.createBitmap(
            smallBitmap.getWidth(), smallBitmap.getHeight(),
            Bitmap.Config.ARGB_8888);

    RenderScript renderScript = RenderScript.create(context);

    Allocation blurInput = Allocation.createFromBitmap(renderScript, smallBitmap);
    Allocation blurOutput = Allocation.createFromBitmap(renderScript, bitmap);

    ScriptIntrinsicBlur blur = ScriptIntrinsicBlur.create(renderScript,
            Element.U8_4(renderScript));
    blur.setInput(blurInput);
    blur.setRadius(radius); // radius must be 0 < r <= 25
    blur.forEach(blurOutput);

    blurOutput.copyTo(bitmap);
    renderScript.destroy();

    return bitmap;

}


    Bitmap blurred = blurRenderScript(activity,bitmap, 25);
//second parametre is radius
        imgHorseB.setScaleType(ImageView.ScaleType.FIT_XY);
        imgHorseB.setImageBitmap(blurred);