MATLAB Answers

How to remove white background from image

82 views (last 30 days)
Hello,I want to know how to remove white background completely from this image.what is the way?

Accepted Answer

Image Analyst
Image Analyst on 28 Jul 2016
Edited: Image Analyst on 28 Jul 2016
I'd use min() to get the min in all three color channels. Then use bwareafilt() to get just the largest blob. This will be the rectangle. You can use find to find the first and last row and column and finally crop the image, something like this untested code.
grayImage = min(rgbImage, [], 3);
binaryImage = grayImage < 200;
binaryImage = bwareafilt(binaryImage, 1);
[rows, columns] = find(binaryImage);
row1 = min(rows);
row2 = max(rows);
col1 = min(columns);
col2 = max(columns);
% Crop
croppedImage = rgbImage(row1:row2, col1:col2, :);

More Answers (1)


Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!