我的Android应用程序加载图像,进行一些处理并将处理后的图像保存在SD卡上。我将临时文件保存到SD卡而不是使用缓冲区。例如,读取背景,滚动图像,绘制注释,将背景和注释合并到已保存的临时文件中以用作下一个背景,等等。典型片段:Android - 保存图像中的噪点
bitmap = Bitmap.createBitmap(imageSizeX,imageSizeY,Bitmap.Config.ARGB_8888);
bitmap = BitmapFactory.decodeFile(path,options);
bitmap.compress(Bitmap.CompressFormat.JPEG,100,output);
一切工作正常,但在某些情况下,保存的图像添加噪声类似于在这个岗位描述: Bitmap resizing and rotating: linear noise
引用的文章的作者解决了二次取样的问题,但我不希望去做。
我试图在这里提出的解决方案: http://www.curious-creature.org/2010/12/08/bitmap-quality-banding-and-dithering/#more-1218 其中,如果我理解正确,应通过设置来实现: getWindow()setFormat(PixelFormat.TRANSLUCENT); 强制32位。
哪个变化不大。设置或不设置抖动标志似乎也没有多大改变。任何其他想法?