Prev: how to convert all frames of particular video into corresponding images?
Next: How does interpolation work in interp2?
From: Anna on 28 Jul 2010 11:30 ImageAnalyst <imageanalyst(a)mailinator.com> wrote in message <dbb64306-c55a-45f3-9377-a2861b766a99(a)k19g2000yqc.googlegroups.com>... > Anna: > Post some images with the object your interested in identified > (outlined, pointed to with arrows, etc.) You can use http://drop.io > if you're looking for a place to post your images. > > Your question is too vague otherwise. Maybe you're looking to find an > exact array of 8 numbers in a 2 by 4 array in a larger array. Like > 100 234 213 211 > 194 166 241 188 > in a 1280x1024 uint8 image array. > Or maybe those numbers are not exact and you're just looking for some > kind of general pattern or shape. No way of telling unless you supply > an image. Hello, thank you for your reply and sorry for being vague. At this link.. http://drop.io/lzqfnrl/asset/s17-sequence0002-edit-tiff you will find the image. It is actually is a very high resolution image taken from a computed tomography scan. You can make out a very small dark rectangular shape (which in reality is about 7µm in diameter). My data consists of a sequence of similar images, where these small rectangles are located at random through out. I would like to be able to locate these rectangles. However due to the presence other dark objects (found in other images) I can not threshold out just the rectangles. I do however know the shape and the range of intensity values at these rectangles, so thought this may be the best way to locate them. Thank you for your help, Anna
From: Anna on 28 Jul 2010 11:42 you can also find a link to another picture here... http://drop.io/r1hcygo/asset/s17-sequence0098-edit-tiff showing the small rectangle I would like to locate and the other dark areas which prevent me from thresholding out the rectangle as they are of similar grayscale Anna
From: ImageAnalyst on 28 Jul 2010 11:54 Anna Why can't you just threshold and filter based on size or shape? See my demo for examples: http://www.mathworks.com/matlabcentral/fileexchange/25157 Aternatively try a tophat or bottomhat filter.
From: Anna on 29 Jul 2010 10:35 ImageAnalyst <imageanalyst(a)mailinator.com> wrote in message <ee7fea5c-ebe0-419e-a055-1b823b4f57da(a)q12g2000yqj.googlegroups.com>... > Anna > Why can't you just threshold and filter based on size or shape? See > my demo for examples: > http://www.mathworks.com/matlabcentral/fileexchange/25157 > > Aternatively try a tophat or bottomhat filter. Dear ImageAnalyst, Thank you for your help, the example was very useful. However if I use the code and the bottomhat filter I am still left with a little bit of noise. See http://drop.io/5xkj4fh5135/asset/example-of-results-tiff however I dont know how clear this picture is. I was wondering if it is possible to be more specific when filtering the area, can I specify the shape aswell as area?. As at the moment I am using: allBlobIntensities = [blobMeasurements.MeanIntensity]; allBlobAreas = [blobMeasurements.Area]; % Get a list of the blobs that meet our criteria and we need to keep. allowableIntensityIndexes = (allBlobIntensities > 45) & (allBlobIntensities < 60); allowableAreaIndexes = allBlobAreas < 8; % Take the small objects. keeperIndexes = find(allowableIntensityIndexes & allowableAreaIndexes); % Extract only those blobs that meet our criteria, and % eliminate those blobs that don't meet our criteria. % Note how we use ismember() to do this. keeperBlobsImage = ismember(labeledImage, keeperIndexes); % Re-label with only the keeper blobs kept. labeledDimeImage = bwlabel(keeperBlobsImage, 4); % Label each blob so we can make measurements of it % Now we're done. We have a labeled image of blobs that meet our specified criteria. Thanks again, Anna
From: ImageAnalyst on 29 Jul 2010 11:46
Anna: Yes, you can specify the shape as well. There are a number of regionprops measurements related to shape, plus you can use things like ratios of area to perimeter squared. ImageAnalyst |