How can I find the length of Interfaces in Plastic Mixture

Hallo Everybody,
A Plastic Mixture consists of different components.I have to find the length of Interfaces between these Components. I can find the boundaries between the component wirh various way,for instance thresholding,sobel...
Can anyone help me that i can find the length of these boundaries???
Thanks

댓글 수: 4

Türker
Türker 2013년 12월 17일
편집: Walter Roberson 2013년 12월 17일
I attached a picture,hopefully you can see it
My Duty is to compare homogenity of different Plastic Mixtures.I can find a certain method if I can say how grow the interface between components
First of all I wannt to explain my strategy.
1)I convert my picture in binary image
(the question is what is true thresholding level.Because of this question I will make a GUI with slide control therewith the user can adjust thresholding level himself)
2) I calculated the number of black pixels as first component,for instance 122500 pixels
3) I used pixel-meter as a unit for one edge of one pixel
4)It means that the black component has a 122500 m^2 area.
5)Let us assume that this black component was a square before we mix it It means that this square has edges which are 350 pixel-m long.And the perimeter of this square is 350*4 pixel-m, the boundaries (interface) between two components was 350*4 pixel before mixing.
6) Now I have to find the length of boundaries on originall image therewith I can say how it expanded
I can not calculate the length of these boundaries
The image did not make it. If you need to, use one of the sites I linked to above and post the link here.

댓글을 달려면 로그인하십시오.

 채택된 답변

Image Analyst
Image Analyst 2013년 12월 16일

0 개 추천

Once you have classified your image you will probably need to use glcm() to take the gray level cooccurrence matrix.

댓글 수: 9

I attached a picture,hopefully you can see it My Duty is to compare homogenity of different Plastic Mixtures.I can find a certain method if I can say how grow the interface between components
First of all I wannt to explain my strategy. 1)I convert my picture in binary image (the question is what is true thresholding level.Because of this question I will make a GUI with slide control therewith the user can adjust thresholding level himself)
2) I calculated the number of black pixels as first component,for instance 122500 pixels
3) I used pixel-meter as a unit for one edge of one pixel
4)It means that the black component has a 122500 m^2 area.
5)Let us assume that this black component was a square before we mix it It means that this square has edges which are 350 pixel-m long.And the perimeter of this square is 350*4 pixel-m, the boundaries (interface) between two components was 350*4 pixel before mixing.
6) Now I have to find the length of boundaries on originall image therewith I can say how it expanded
I can not calculate the length of these boundaries
I need also advice for my method.For example I'm not sure that I lost many information if I filter my image od do I need intesity trasformation.
Thanks a lot
Best regards
That is not what you described initially where you wanted the lengths of the various interfaces, like you have classes 1, 2, and 3 and you need to know how many pixels of class 1 touch class 2, and how many pixels of class 1 touch class 3, and how many pixels of class 2 touch class 3.
I don't know what's what in that image. Can you draw red lines on it with the lengths you want to measure, or upload the binary image that you're happy with?
First off all merry christmas if you celebrate christmas
its with thresholding
its with canny edge detector and imdilate
Actually here is first question whether I have to be happy with this binary or not ??.I use here graythresh but I think that I will make a gui with slide control therewith every users can adjust threshold...
As I said beforehand,I calculate first black pixels on my binary image.After that I calculate the perimeter of the black areas.
here is a sample that will describe what I mean
I calculate the length of redlines on my sketch with loops but with this way the length is bigger root 2 . Assume a stair ...
Maybe I need free chain code or something like this.
As you can unterstand Im confused..
Thanks and again happy christmas...
Thank you - I am having Christmas with my family and it is wonderful (except for the cold weather). Merry Christmas to you too.
I think that some things would be highly correlated with the black boundary lengths, if you could get those. For example, if all the black striations are about the same width, the black area fraction or the mean intensity should correlate very well. Or you could do a texture filter like stdfilt() or entropyfilt() and get the mean of that. It's easier to do any or all of that, so if you can't get what you think you want, then get what you can get, especially if it correlates well with what you can't get. Whatever you're thinking that the black boundary length might characterize (for example, strength or homogeneity or whatever) might just as well correlate with some other measurement. Mean of the std and entropy images is used as a measure of uniformity. Another measure used in uniformity is to divide your image up into several tiles and calculate the mean of each one. If it's uniform all the means will be the same. If it's not uniform there will be a standard deviation to the mean. The higher the SD, the more variable it is. You could also look at image moments like skew and kurtosis. If you want to also measure your black line lengths then you'd probably have to do CLAHE first with adapthisteq so that you could then use global thresholding. Or you could use a Wallis filter which sets every window to a specified mean and standard deviation (within limits). It could take a few weeks of experimenting with different algorithms to find what works well.
Türker
Türker 2013년 12월 26일
편집: Türker 2013년 12월 26일
Hi Image Analyst; Here there are some other photos.You can understand better why I think the black boundary length characterize homogeneity.Its my brillant idea :)) Maybe you can help me also how I can find the length of boundaries if these boundaries are also in diagonal form.Please see the 4.sketch
Please assume that we throw the big black cube into a can which has white paint within
Thanks a lot...
If you can get a good binary image, you can just call bwperim and sum up the image to count the number of boundary pixels. To get a good image you mgiht have to use an algorithm that makes sharp edges such as mean shift, or maybe this one: http://www.mathworks.com/matlabcentral/fileexchange/25619-image-segmentation-using-statistical-region-merging
Otherwise you can try the mean of the standard deviations, like I suggested. An alternative to the mean is the MAD - median absolute deviation, which is less prone to outliers than the mean. There is a Wikipedia article on it.
You should also look up web sites on spatial statistics. It is a whole field that is kind of like a melding of image analysis and statistics. Brian Ripley is a world expert in that area. So is Prof. Adrian Baddeley http://www.csiro.au/Organisation-Structure/Divisions/Computational-Informatics/CCI-People/AdrianBaddeley.aspx who has a good book on "Analysing spatial point patterns in R". Chapter 19 is especially interesting because it details methods that can be used to determine randomness (Poisson) vs. periodicity (grids) vs. clustering/clumping. I believe the book is online somewhere.
I will search your advices thanks a lot ...

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Keith Dalbey
Keith Dalbey 2013년 12월 26일

0 개 추천

You need to convert your image into an array of numbers (easy), then call countourc at the number/color of the interface you want to find, this will return multiple disconnected countours, from that you need to extract the specific countour you desire based on its location (which you will probably need to do manually) and then add up the lengths of the segments in that contour.

질문:

2013년 12월 16일

댓글:

2013년 12월 26일

Community Treasure Hunt

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

Start Hunting!

Translated by