Finding dominant directions in an image

37 views
Skip to first unread message

Kyle Lawlor

unread,
Aug 25, 2015, 12:50:35 PM8/25/15
to PyMKS General
Hi, all.

I have the following problem I am looking to solve.

Suppose I have an FFT spectrum like this one:


What I would like to able to do is find the dominant directions in an image.

Some of the data I am working with might have two dominant directions.

I would like to characterize the dominant direction in Fourier space by angles off the x-axis in the image above.

I would also like to compute the average amplitude along each of dominant directions.

In general I am very new to the Scipy stack, and have no experience with sklearn.

I have ideas for how I could do this, but I would like to know if there are tools in pymks that can help me with this problem.

To provide some context the data I am working with comes from experiments with wrinkled surfaces.

The group I work with studies wrinkling of gold nano-layers on shape memory polymers (among other things - http://www.mather.syr.edu/research.html).
 

Thanks,

Kyle

David Brough

unread,
Aug 25, 2015, 2:11:40 PM8/25/15
to Kyle Lawlor, PyMKS General
Hi Kyle,

Unfortunately I am not able to see the FFT spectrum you are referring to. PyMKS might be able to help you with this problem, but I need more background about the problem statement you are trying to solve to give you a definitive answer. Why did you decide to look at the dominant direction in Fourier space by angles off the x-axis in the image? Are you trying to quantify the structure of the wrinkled surfaces? Does the wrinkled surface affect a material property?

Thanks,

David


--
You received this message because you are subscribed to the Google Groups "PyMKS General" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pymks-genera...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/pymks-general/239012d2-2676-405d-8ec5-998184f4e51b%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Kyle Lawlor

unread,
Aug 25, 2015, 3:05:56 PM8/25/15
to David Brough, PyMKS General
Hi David,

Thanks for responding.
Here is the FFT again, hopefully it works this time:
Inline image 1
Here is some more background. The reason they are studying these particular wrinkle surfaces is for application to cell studies as a substrate material. The group has previously studied the effect of uniform wrinkling on cell motion. One possibility is to study the effect when there is more than one wrinkling direction. From a materials point of view, they are also interested in gaining control over two-direction wrinkling.

The way the wrinkling happens is essentially through buckling phenomenon.  The SMP has a glass transition temperature, above which the polymer can be strained. The carefully programmed strain is then "frozen" into the material by going below the glass transition temp.. The material is set up so that if you heat above the glass transition temperature, it will recover its shape nearly identically.

The gold nano layer is placed on the SMP after some strain is stored into the material. In general if you strain the material along one direction, there will be roughly uniform wrinkling along that same direction. The wrinkling takes place due to what is essentially a buckling phenomenon. This is a very well studied problem experimentally and in theory. Our group uses some of the theory to get ourselves into well controlled "wrinkling regime" where we expect to see uniform sinusoidal wrinkles. 

So the analysis that I am working on is AFM microscope images of these wrinkle features. The images span roughly 500nm by 500nm. The amplitudes are ~1-10 nm. Again in a nutshell, they are interested in exploring two-direction wrinkling to look at the effect on cell motion.

I am trying to isolate the dominant directions of wrinkling, and look at the average amplitudes along a given direction. So yeah, I am trying to quantify the structure of the wrinkles at the moment.

Thanks,
Kyle

David Brough

unread,
Aug 25, 2015, 3:49:20 PM8/25/15
to Kyle Lawlor, PyMKS General
Hi Kyle,

I am able to see your frequency spectrum this time.

Are you exploring the similarity between multiple images? From what I understand you want to predict an effective "cell mobility" for a given wrinkling, is that correct?

There are a few ways you can use PyMKS to help you answer either of these questions. One option is to use edge detection methods to identify the peaks (or valleys) of the wrinkles in your images and then use the MKSHomogenizationModel with the PrimitiveBasis to correlate it to a property. Can you share an example of the an AFM image?

If you only want to pick out the dominate directions of the wrinkles I would recommend just taking the autocorrelation of the images.

http://docs.scipy.org/doc/scipy/reference/generated/scipy.signal.convolve2d.html

Thanks,

David


Kyle Lawlor

unread,
Aug 25, 2015, 4:35:01 PM8/25/15
to David Brough, PyMKS General
I was horribly wrong about the dimensions of our wrinkle patterns and the size of our images. I apologize, the size of the images as you will see is something like 50micrometer by 50 micrometer. It has been some time since I have worked on this project. The amplitudes of wrinkling are ~1-10 **micro**-meters. (not nano-meters)

Currently, I am not yet looking at similarity. That will be the next goal in order to generate some statistics. I am just looking to figure out this dominant direction and average amplitude along a given direction problem.

It would be amazing if we could predict an effective mobility for a given wrinkling. I would have to incorporate some of the existing mobility data, right?

Do you have any references for how to use the auto-correlation to find the auto-correlation? Maybe you know of a good example of using the scipy.signal.convolve2d function?

Thanks,
Kyle 

.

Kyle Lawlor

unread,
Aug 28, 2015, 12:04:57 PM8/28/15
to David Brough, PyMKS General
Currently I do not have any cell mobility data.
I am working on getting this data.
I graduated from my Masters program recently, so I am actually no longer officially working with the group.
Though I am still in cohorts with a grad student who is leading the experimental side of the work.
So this will be on hold at least temporarily.

Thanks for the help so far.

Any references on auto-correlations? I am new to this tool. References that use scipy.signal would be awesome.

Thanks!
Kyle

On Wed, Aug 26, 2015 at 5:02 PM, David Brough <david.br...@gmail.com> wrote:

Kyle,

How many image/cell mobility pairs do you have?

Thanks,

David

--

David Brough

unread,
Aug 31, 2015, 11:12:12 AM8/31/15
to Kyle Lawlor, PyMKS General
Kyle,

I would following the examples in the following link.

http://docs.scipy.org/doc/scipy/reference/generated/scipy.ndimage.filters.convolve.html

When your two input arrays are the same, you get an autocorrelation.

Thanks,

David
Reply all
Reply to author
Forward
0 new messages