How can i Blur the background of an image?
12 views (last 30 days)
Show older comments
Hello, I have to be able to blur only object of a .jpg not subject. I have tried many times but the whole picture both subject and object is getting blurry.,any help would be greatly appreciated.
0 Comments
Answers (1)
DGM
on 30 Apr 2024
Edited: DGM
on 30 Apr 2024
Create a mask which selects the foreground (or background). Compose the output using the mask, the original image, and a blurred copy.
% an image (RGB, uint8)
inpict = imread('peppers.png');
% an antialiased mask selecting the foreground (I, uint8)
mask = imread('chilipepmask.png');
% a blurred copy of the entire image
blurred = imgaussfilt(inpict,5);
% compose the output using MIMT tools
%outpict = replacepixels(inpict,blurred,mask);
% compose the output using base tools
mask = im2double(mask);
outpict = mask.*im2double(inpict) + (1-mask).*im2double(blurred);
outpict = im2uint8(outpict); % presuming the output should always be uint8
imshow(outpict,'border','tight')
See also:
0 Comments
See Also
Categories
Find more on Convert Image Type in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!