how to eliminate white pixels(smoke pixels) in the rgb image

5 views (last 30 days)
how to eliminate white pixels(smoke pixels) in the rgb image

Answers (1)

Gautam
Gautam on 24 Oct 2024
You can eliminate white pixels from an RGB image by identifying these pixels and then replacing them with a suitable value, such as the background color or making them transparent. This can be done in two steps
  1. Identify White Pixels: Define a threshold to identify white pixels based on their RGB values.
  2. Replace White Pixels: Replace these identified pixels with another color or make them transparent.
img = imread(image);
whiteThreshold = 240;
% Create a mask for white pixels
whiteMask = img(:,:,1) > whiteThreshold & img(:,:,2) > whiteThreshold & img(:,:,3) > whiteThreshold;
%Replace white pixels with black (or any other color)
replacementColor = [0, 0, 0];
img(repmat(whiteMask, [1, 1, 3])) = repmat(reshape(replacementColor, [1, 1, 3]), sum(whiteMask(:)), 1);

Categories

Find more on Image Processing Toolbox 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!