deleting leadind and trail zeros in an image
10 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Hassan Qassim
il 21 Nov 2017
Commentato: Imran Riaz
il 4 Ago 2022
Hi all I am working on enhancing a grayscal images, the first step should be cropping the image by removing lead and trail zeros (zeros rows an columns surrounding the image). i want t remove the surrounding zeros. please be advised that the cropping has be applied on zeros rows and columns that surrounding the image for different images, so i need a function or an algorithm does this cropping on different images. thanks in advance
0 Commenti
Risposta accettata
Image Analyst
il 21 Nov 2017
Try this:
mask = grayImage ~= 0; % Find all zeros, even those inside the image.
mask = imfill(mask, 'holes'); % Get rid of zeros inside image.
% Invert mask and get bounding box.
props = regionprops(~mask, 'BoundingBox');
% Crop image.
croppedImage = imcrop(grayImage, props.BoundingBox);
9 Commenti
Image Analyst
il 3 Ago 2022
@Imran Riaz I just copied the code and ran it on test1_paint.jpg and got exactly the output I posted below it. You must have changed something. Post your new image in a new question and we'll help.
Note I cropped the image - I did not mask it. I did not get a mask of "black" areas. Not sure what black pixels you want to remove but keep in mind that the image must remain rectangular. We can't have images with irregularly-shaped borders.
Imran Riaz
il 4 Ago 2022
My image have different dimensions, I think that is the mistake. I am also attaching the image here.![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1087600/image.bmp)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1087600/image.bmp)
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Image Data Workflows in Help Center e File Exchange
Prodotti
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!