Hi All!
I would appreciate any input on the following problem:
After scanning my samples with TEM, I get images (JPEG or TIFF) which
contain many dimmers, e.g. gold nanoparticles connected via some
other molecule.
Approximately half of the popoulation is that of dimmers, while the
other half contains trimmers, monomers, etc. I would like to run some
statistics on the samples.
I read Theodore Gray's post in the Wolfram Blog about the new
capabilities of image processing in Mathematica 7.0.1 and I would like
to ask if it is possible to do the following in Mathematica:
Pick out a square that contains the dimmers, define that square as a
new image, and then let Mathematica search for such an image within
the original image.
I know that Mathematica has a new function MorphologicalComponents
that is apparently the key to getting this done, but I don't really
understand how to use it. It is also supposed to return the
coordinates of the located images, but I don't know how to extract
this output from the function.
Thanks,
Gideon
|
|
0
|
|
|
|
Reply
|
gidienator (13)
|
4/13/2009 7:31:20 AM |
|
Hi Gideon,
if I understand correctly, you want to find where a "subpicture" occurs
in a larger picture.
If you consider the picture as a numerrical array, then the correlation
is large at places ahere the subpicture appears.
Here is a simple example where we place a subpicture in the middle of a
larger array:
m1 = SparseArray[{{10, 10} -> 1, {10, 11} -> 1, {11, 10} ->
1, {11, 11} -> 1}, {20, 20}];
m2 = {{1, 1}, {1, 1}};
ListCorrelate[m2, m1] // MatrixForm
hope this helps, Daniel
GidiL wrote:
> Hi All!
>
> I would appreciate any input on the following problem:
>
> After scanning my samples with TEM, I get images (JPEG or TIFF) which
> contain many dimmers, e.g. gold nanoparticles connected via some
> other molecule.
> Approximately half of the popoulation is that of dimmers, while the
> other half contains trimmers, monomers, etc. I would like to run some
> statistics on the samples.
> I read Theodore Gray's post in the Wolfram Blog about the new
> capabilities of image processing in Mathematica 7.0.1 and I would like
> to ask if it is possible to do the following in Mathematica:
>
> Pick out a square that contains the dimmers, define that square as a
> new image, and then let Mathematica search for such an image within
> the original image.
>
> I know that Mathematica has a new function MorphologicalComponents
> that is apparently the key to getting this done, but I don't really
> understand how to use it. It is also supposed to return the
> coordinates of the located images, but I don't know how to extract
> this output from the function.
>
> Thanks,
>
> Gideon
>
|
|
0
|
|
|
|
Reply
|
dh1 (452)
|
4/16/2009 8:19:46 AM
|
|
All,
Mathematica 8 sheds new light on this old thread:
On 4/15/09 9:04 AM, Matthias Odisio wrote:
> Gideon,
>
> GidiL wrote:
>> Hi All!
>>
>> I would appreciate any input on the following problem:
>>
>> After scanning my samples with TEM, I get images (JPEG or TIFF) which
>> contain many dimmers, e.g. gold nanoparticles connected via some
>> other molecule.
>> Approximately half of the popoulation is that of dimmers, while the
>> other half contains trimmers, monomers, etc. I would like to run some
>> statistics on the samples.
>> I read Theodore Gray's post in the Wolfram Blog about the new
>> capabilities of image processing in Mathematica 7.0.1 and I would like
>> to ask if it is possible to do the following in Mathematica:
>>
>> Pick out a square that contains the dimmers, define that square as a
>> new image, and then let Mathematica search for such an image within
>> the original image.
>
> Yes, it is possible.
>
> You can use ImageCorrelate; if the appearance of the dimmers varies a
> lot in the image, this approach may not be good. You can then revert to
> ImageFilter with a more robust template matching function.
>
As of Mathematica 8, ImageCorrelate is equipped with most of these
robust template matching functions, e.g. as used in (J.P. Lewis,
"Fast Normalized Cross-Correlation"), etc.
Moreover, as a convenience the second argument of ImageCorrelate may
now be an image, ie. the template or pattern you want to find matches
of. See the documentation at:
http://reference.wolfram.com/mathematica/ref/ImageCorrelate.html
That being said, if my memory does not fail me, Gideon's specific
problem is perhaps better solved using various morphological
functions followed by queries to ComponentMeasurements.
Matthias Odisio
Wolfram Research
> We could probably be more specific if we could see one of your images.
>
> Matthias Odisio
> Wolfram Research
>
>>
>> I know that Mathematica has a new function MorphologicalComponents
>> that is apparently the key to getting this done, but I don't really
>> understand how to use it. It is also supposed to return the
>> coordinates of the located images, but I don't know how to extract
>> this output from the function.
>>
>> Thanks,
>>
>> Gideon
>
|
|
0
|
|
|
|
Reply
|
Matthias
|
11/24/2010 12:01:54 PM
|
|
|
2 Replies
45 Views
(page loaded in 0.081 seconds)
Similiar Articles: Shape detection and Image Processing - comp.soft-sys.matlab ...... and am looking for a way to identify these ... 422 Views (0.077 seconds) Tweet ... steps in image processing, image analysis, image pattern recognition ... objects ... Multiple Object Tracking - comp.soft-sys.matlab... on tracking multiple objects on a video file. I have a set of logic image ... in the nth frame to identify which objects ... 7 Replies 230 Views (0.259 seconds) Tweet image processing toolbox - comp.soft-sys.matlab... like this that I adapted from my image analysis demo ... I need some code to identify the circular shapes ... it will measure the areas of objects in a segmented image. how to calculate area of a grayscale image? - comp.soft-sys.matlab ...... can i calculate area for that image? is this perfect for analysis ... want to select some particular objects in image ... - use BWLABEL to identify your objects... - use ... how process each region of a grayscale image - comp.soft-sys ...... Connected Components Analysis >>I = padarray(I,[1 1], 0 ... you see, the original image is a woven fabric and I want to identify ... Image Analysis and Processing ... Overlapping Circular Area Problem - comp.soft-sys.matlab ...On the other hand, if r1+r2-d < 0, there is no ... The analysis is simple too: the histogram of the array ... binary image without erode. - comp.soft ..... objects binary image ... Cell Boundary Detection - comp.soft-sys.matlab... am currently having some problems focusing on Image ... to the nuclei however I have had some problems identifying the ... method to determine threshold value T = 0.5 ... Automatic gain control / exposure algorithm based on image ...... of the pixels are contained between bin 0 ... days cameras do all sorts of stuff to identify ... IOW, that's a human shaped object near the center, expose the image based on ... Target Recognition - comp.soft-sys.matlab... caption = sprintf('Masked Original Image\nShowing Only the Red > Objects ... highThresh/ > maxXValue(2)],[0.7 0.7 ... A factor analysis model based on multitask ... Table lookup or curve fitting? - comp.sys.hp48If table drivven, what object type? List or matrix? ... Smoothing image data - comp.soft-sys.matlab COMPGROUPS.NET ... Acquire data from a Digital Table Andrés 0 102 Image Processing - Wolfram Mathematica 8 Documentation... programmatic and interactive image processing, fully integrated with Mathematica ... has the form of a valid Image object and ... for shape and structure-based analysis of image ... Image Processing & Analysis - Wolfram Mathematica 8 Documentation... strength image processing—fully integrated with Mathematica ... Mathematica > Data Manipulation > Image Processing & Analysis> ... or any Mathematica object to ... 7/4/2012 12:49:51 PM
|