Background Subtraction
22 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hello!
I have an image of some fluorescent samples http://imageshack.us/photo/my-images/440/washingexp.png and I need to get a "intensity" reading from them. All is good except for the background subtraction in the image. I want to sum up my samples only and not the background and I am having trouble doing this.
Does anyone have any tips on background subtracting? Every time I do it MatLab cuts out from my samples. I really want to single out my samples but not lose them! :)
Thank you!
I'm doing something like
I =imread('washingexp.tif');
for r=1:1024
for C=1:1360
B(r,C)=I(r,C)-88;
end
end
2 commentaires
Walter Roberson
le 12 Juin 2012
It is not immediately clear which parts are background or not? In particular it is not clear if the bright dots are part of the background or the foreground
Réponses (1)
Ryan
le 11 Juin 2012
There are various methods to better segment your image and most are best dealt with on a case by case basis.
Check out Image Analyst's tutorials on the file exchange: http://www.mathworks.com/matlabcentral/fileexchange/authors/31862
In particular this should be of help: http://www.mathworks.com/matlabcentral/fileexchange/25157-image-segmentation-tutorial-blobsdemo
2 commentaires
Ryan
le 11 Juin 2012
If you have the image processing toolbox:
I = imread('imagefile.png");
BW = im2bw(I,graythresh(I)); % "graythresh(I)" is Otsu's method for finding the optimal intensity level for performing an image threshold.
BW2 = imfill(BW,'holes');
Labels = bwlabel(BW2,8);
Properties = regionprops(Labels,'all');
help regionprops
Ryan
le 11 Juin 2012
use bwareaopen(Image,'200 or some other "area" value) to eliminate the glares if you need to.
Voir également
Catégories
En savoir plus sur Image Segmentation and Analysis dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!