[英]image processing(blur effect) in android
我在android中進行圖像處理,例如模糊效果和在圖像上畫圈。
我的目標是在特定點和周圍模糊圖像。 我可以使用高斯模糊和ConvolutionMatrix對整個圖像進行模糊處理。
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);
}
誰能給我一個在圖像的特定點進行模糊效果的想法?
我實際上只是回答了類似的問題。
我認為您要做的是創建原始圖像的兩個副本。 一種是清晰的,另一種是模糊的(使用所需的任何濾鏡)。 然后,對於要模糊的區域中的所有像素,將其值從模糊的圖像復制到清晰的圖像。
對所有像素分別進行模糊擬合處理可能會浪費您的時間。 除非您想做一些花哨的事情(如鏈接中的內容),否則只需執行一次並將其用作一種查找表。
但是,由於要在移動設備上執行此操作,因此可能需要執行一些特殊的內存管理。 在這種情況下,獲取原始圖像的裁剪版本(其大小略大於模糊區域),然后僅模糊該子圖像。 然后,跟蹤子圖像中的哪些像素與原始圖像中的哪些像素相對應,並復制這些值或對您的項目有效的任何內容。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.