how to remove four black frame of image

Hi All,
I have an image and I want to remove four black frame of its corners without to remain any black pixel(i.e skin only ) in the image,please could any one explain to me using Matlab code how to do that without cropping ,using masking? thanks in advance.

2 Commenti

hamed abdulaziz
hamed abdulaziz il 13 Gen 2014
Spostato: DGM il 13 Feb 2023
hamed abdulaziz
hamed abdulaziz il 13 Gen 2014
Spostato: DGM il 13 Feb 2023
the image after resizing

Accedi per commentare.

Risposte (1)

Image Analyst
Image Analyst il 13 Gen 2014
If you take an image of a white scene, then you can divide your image by that to reduced or eliminate the vignetting.

14 Commenti

Image Analyst: nice new icon,I downloaded this image and others from a data bast from medical site on the internet,and I want to segment the lesion in it for diagnosis,so that could help again, thank you in advance.
Image Analyst,I am waiting your answer
Can you just take the blue channel and threshold it? Or, use the delta E app in my File Exchange. Or run a texture filter on it like stdfilt() or entropyfilt() and then threshold. Or else look for published algorithms here: http://iris.usc.edu/Vision-Notes/bibliography/contents.html
hamed abdulaziz
hamed abdulaziz il 13 Gen 2014
Modificato: hamed abdulaziz il 13 Gen 2014
I wrote this piece of code:
Image1 = imread('d:\10.bmp');
blue=Image1(:,:,3);
level=graythresh(blue);
bw=im2bw(blue,level);
figure, imshow(bw);
but I get this image
hamed abdulaziz
hamed abdulaziz il 13 Gen 2014
Spostato: DGM il 13 Feb 2023
hamed abdulaziz
hamed abdulaziz il 13 Gen 2014
Modificato: hamed abdulaziz il 13 Gen 2014
then I tried
Image1 = imread('d:\10.bmp');
j=entropyfilt(Image1);
level=graythresh(j);
bw=im2bw(j,level);
figure, imshow(bw);
but no reasonable result!
hamed abdulaziz
hamed abdulaziz il 13 Gen 2014
Spostato: DGM il 13 Feb 2023
Image Analyst,I am waiting your pretty answers for difficult questions as we are accustomed.
Why no answer?
Image Analyst
Image Analyst il 13 Gen 2014
Modificato: Image Analyst il 13 Gen 2014
I'm at work, doing my real job. I'm not a paid Mathworker who helps people in this forum all day. And I'm sure it's going to be a lot more complicated than just some 3-line piece of code.
I am sorry to bother you ,I wish to you more and more of success in your job because you are smart person,and if you have a moment of the time,I am waiting your answer. Best regards
Image Analyst
Image Analyst il 13 Gen 2014
Modificato: Image Analyst il 13 Gen 2014
Try inverting the binary image, then do a hole fill, then extract the biggest blob (see my code for that attached). You might also try activecontour() - a demo for activecontour is also attached.
hamed abdulaziz
hamed abdulaziz il 14 Gen 2014
Spostato: DGM il 13 Feb 2023
Thank you very much,I tried inverting the binary image, then did a hole fill, then extract the biggest blob using activecontour_demo ,I got the below result but no lesion only please guide me the modified activecontour_demo is also attached for reviewing if you have a time?
Image Analyst
Image Analyst il 14 Gen 2014
Spostato: DGM il 13 Feb 2023
See my attached code.
hamed abdulaziz
hamed abdulaziz il 16 Gen 2014
Spostato: DGM il 13 Feb 2023
Image Analyst : Thank you very much it is so useful code and excellent work.

Accedi per commentare.

Richiesto:

il 13 Gen 2014

Spostato:

DGM
il 13 Feb 2023

Community Treasure Hunt

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

Start Hunting!

Translated by