How do I apply a window on an image to keep the part in the window while reduce the resolution (clarity) of the remaining part of the picture?
1 view (last 30 days)
Show older comments
Suppose I have an image with three circles and a line as shown below. I want to apply a trapezoidal type window (see dotted lines) over certain x axis range to preserve the resolution in that section while reducing the resolution in the remaining part of the picture
0 Comments
Accepted Answer
Image Analyst
on 21 Mar 2020
Use poly2mask() to make a mask of the part you want to preserve. Then blur the whole image with imfilter() or conv2(). Then replace the image in the mask with the original. Something like
[rows, columns, numberOfColorChannels] = size(grayImage);
mask = poly2mask(x, y, rows, columns);
kernel = ones(9,9);
kernel = kernel / sum(kernel(:)); % Normalize so we don't change the mean intensity of the image.
blurredImage = conv2(grayImage, kernel, 'same'); % Blurs everything, including the masked region.
blurredImage(mask) = grayImage(mask); % Restore original to the masked region.
x and y are the points of the vertices of your trapezoid.
0 Comments
More Answers (0)
See Also
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!