awhite40 / MIC-Modeling-Polymer-Composites

Developing structure property linkages for glass fiber reinforced polymer systems.
awhite40.github.io/MIC-Modeling-Polymer-Composites
0 stars 0 forks source link

Initial Analytics #5

Open awhite40 opened 10 years ago

awhite40 commented 10 years ago

The fiber and the matrix need to be separated in these images to create a clear contrast in the images. By separating the components the fiber direction and density can then be determined.

A List of the Initial Analysis and Plots

tonyfast commented 10 years ago

Segmentation is an expensive and uncertain process. You are not the data generators and you are new to the domain which implies that your group doesn't have the means to vet the efficacy of a segmentation; you will need to bring in an expert to comment on the segmentation. Similarly, validating 3-d segmentations is not easy.

I would suggest ON THE 3-D STACK looking at the effect of simple thresholding on the volume fraction of fiber in the matrix. You density parameters will then been a function of the hyper parameter threshold_value.

I think with these datasets that it should be possible to get the fiber direction and density without segmentation.

Finish and close out #1 then get to the analysis.

glahoti6 commented 9 years ago

Since we are exploring various ways for thresholding, this method can also give us some idea (I hope so).

Global image threshold using Otsu's method (available in Matlab)-

Original image (first layer): 1st layer without contrast

Thresholded image for the above one; 1st layer thresholded

Normalized value of threshold intensity = 0.5725

I think: In this way, we can determine the threshold intensity for several layers and then we can decide on one value to be used for the complete sample.

tonyfast commented 9 years ago

Can you add a link to the code?

tonyfast commented 9 years ago

Can't find your email. The post and codes are up.

glahoti6 commented 9 years ago
info = dicominfo ('C0001656_00000.DCM');
Y = dicomread(info);
level=graythresh(Y);
BW = im2bw(Y,level);
figure, imshow(BW)
tonyfast commented 9 years ago

@glahoti6

  1. Please see how I changed your last issue for code syntax highlighting
  2. We are going to avoid using image processing algorithms that ONLY work on 2-D images. I think we have decided that they are incomplete for your dataset.

From now on, please coordinate with @awhite40 about the sample dataset we are going to use for testing.

glahoti6 commented 9 years ago

I found that the above method works for 3-D images also. I am gonna try it out and let y'all know the results.

glahoti6 commented 9 years ago

Multilevel image (3D) thresholds using Otsu's method:

Data Matrix Size: 301X301X300 Data Type: uint8 Min: -1858 Max: 17603

thresholding result

This plot may help us in selecting a reasonable number of thresholds and thereby threshold values.

Reference http://www.mathworks.com/help/images/ref/multithresh.html

tonyfast commented 9 years ago

How does the threshold value you compute with mutlithres fit onto the histogram we have?

On Thu, Oct 2, 2014 at 11:49 PM, glahoti6 notifications@github.com wrote:

Multilevel image (3D) thresholds using Otsu's method:

Data Matrix Size: 301X301X300 Data Type: uint8 Min: -1858 Max: 17603

[image: thresholding result] https://cloud.githubusercontent.com/assets/8506416/4501585/a454d83a-4aaf-11e4-9108-ef1392d8c4f6.jpg

This plot may help us in selecting a reasonable number of thresholds and thereby threshold values.

Reference http://www.mathworks.com/help/images/ref/multithresh.html

— Reply to this email directly or view it on GitHub https://github.com/awhite40/MIC-Modeling-Polymer-Composites/issues/5#issuecomment-57748611 .

Tony Fast, Ph.D. tonyfast.com Linkedin http://www.linkedin.com/pub/tony-fast/38/8b0/639 | SlideShare http://slideshare.net/tonyfast1 | GitHub http://github.com/tonyfast

Materials Data Scientist

Woodruff School of Mechanical Engineering

Georgia Institute of Technology

801 Ferst Drive NW

Atlanta, GA 30332-0405 m: 609.509.6492

glahoti6 commented 9 years ago

I am not able to draw a histogram for our 3D data quickly. So I couldn't plot threshold values (for different thresholdings: Single level, 2 levels, 3 levels,......., 15 levels) onto the histogram. But here are the threshold values which look almost similar to the ones we got using peak fitting.

threshold values

Across the rows, level of thresholding increases and across the columns, we have threshold values. (Pls ignore the zeroes)

Could you please tell me how to draw histogram for 3D matrix.

glahoti6 commented 9 years ago

Drawing histogram for 3D matrix:

Is it just reshaping 3D matrix into 2D and then using imhist?

tonyfast commented 9 years ago

Let's be consistent with the code we are using not. The histogram can be drawn using this line of code.

Easier question

What is the threshold value that the Otsu method is reporting in 3-D and how does that value map to the features in our first histogram

glahoti6 commented 9 years ago

Does this help us in understanding? thresholding on histogram

glahoti6 commented 9 years ago

Threshold Values reported by Otsu's method: Single Threshold: 4858 2-Level Thresholding: 3561, 6155 3-Level Thresholding: 2950, 4705, 7147

tonyfast commented 9 years ago

Yes this does help! Everything appears to be pointing towards this 5000 region as the cutoff. This is good.

Unfortunately, I don't think we know enough in that region to simply segment by thresholding. I think we need a more robust technique.

@awhite40, @glahoti6

What do you guys think we should do about the segmentation. We can try a naive technique like thresholding to start just to get some segmented data to build other codes out of. (I still don't think we know enough about the fiber/matrix region). Or, we can keep pressing on and trying to improve the segmentation.

I feel like it would be ideal if y'all could split up the project between image analysis and analytics on the image. We can be moving two pieces of the project along parallel.

On Fri, Oct 3, 2014 at 8:06 AM, glahoti6 notifications@github.com wrote:

Threshold Values reported by Otsu's method: Single Threshold: 4858 2-Level Thresholding: 3561, 6155 3-Level Thresholding: 2950, 4705, 7147

— Reply to this email directly or view it on GitHub https://github.com/awhite40/MIC-Modeling-Polymer-Composites/issues/5#issuecomment-57808569 .

Tony Fast, Ph.D. tonyfast.com Linkedin http://www.linkedin.com/pub/tony-fast/38/8b0/639 | SlideShare http://slideshare.net/tonyfast1 | GitHub http://github.com/tonyfast

Materials Data Scientist

Woodruff School of Mechanical Engineering

Georgia Institute of Technology

801 Ferst Drive NW

Atlanta, GA 30332-0405 m: 609.509.6492

glahoti6 commented 9 years ago

Its a good idea to split up. One question: Apart from a robust way of segmentation, are we looking for anything else while carrying out image analysis?

tonyfast commented 9 years ago

Our goal with image analysis is to extract whatever we can as best as we can. Everything we learn from the images will inform our further work and decisions.

awhite40 commented 9 years ago

@glahoti6 take a look at the analytics for the second image that I just put up. My commentary is in the text at the bottom. Let me know what you think about this.