You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Dear All,
I though I should mention something now, instead of waiting till the MTEX Workshop to tell you about it!
When importing EBSD data from TSL .ang files, the "truly" not indexed points (not just points with poor statistics, but points where no solution was found) are thrown away by MTEX and not imported. Thus, they are not available to be processes as notIndexed points and just appear as holes in the map. This is a problem if you scan something with e.g. gas bubbles in the microstructure, where there is no chance of any kind of EBSD pattern generation. Later, during grain reconstruction, grains "expand" into these empty holes in the map, and the image quality data for the deleted points is also lost.
The code that does the deleting is on lines 74 and 75 of the file loadHelper.m , found in mtex-5.10.2/interfaces/tools:
% eliminate rows where angle is 4*pi
ind = abs(data(:,cols(1))*dg-4*pi)<1e-3;
data(ind,:) = [];
I would like these "error" points still to be imported and be available as notIndexed points , at the very least optionally.
To combat this problem I usually modify the loadHelper.m file at the quoted lines to instead convert the three Euler angles to 0 radians (as a placeholder), and remove the line that deletes the points. This gets me what I want - the points are imported, and their associated (very bad) "quality" statistics like fit, confidence index etc allow me to set them to notIndexed during cleaning of the map.
e.g.
% DON'T eliminate rows where angle is 4*pi
ind = abs(data(:,cols(1))*dg-4*pi)<1e-3;
data(ind,cols(1))=0;
data(ind,cols(2))=0;
data(ind,cols(3))=0;
I am sure the MTEX developers can come up with a more elegant solution! I don't know the reason for the original code - perhaps it was never imagined the user might want to see these points, or perhaps having Euler angles of 4*pi leads to errors, so these have to be removed?
best regards and huge thanks for developing MTEX!
Tom Griffiths
The text was updated successfully, but these errors were encountered:
Hi Tom,
I'm not entirely convicene that importing it as an orientation would be a good thing since it bears the potential for other problems.
The 4pi - if I remember correctly - is the way that edax expresses something is not indexed. Is that true for .ang files from all sorts of software versions which produce them?
I agree it might be easier if they'd appear in the list of points as nonIndexed instead of simply not there (which still can be easily recovered via gridify and setting e.g. points with nan data to the notIndexed phase).
How about altering the phase for those points? Do you have a small example file?
While trying to compose a short piece of code as an example, I discovered that this problem has actually been solved for the .ang interface for a long time! The problem was, I was using the 'generic' interface command out of habit, because I sometimes have non-standard datasets to import.
If you explicitly use EBSD.load( fname, CS, 'interface', 'ang' ) there is a well-commented piece of code in loadEBSD_ang.m (from line 163 in MTEX 5.10.2) which re-fills all of the holes in the data with dummy 'notIndexed' points. These do not include the "true" measured image quality for the points, but this is more-or-less irrelevant, seeing as this value will be close to zero for such points, so only minimal visual information is lost.
A small quality of life change would however be to assign an image quality (.iq) value of zero automatically to these points during import - that way, when you plot an image quality map, the not indexed points appear as dark (or whatever colour you chose for lowest image quality), not white "holes" (these are only apparent holes, as there are actually data points there).
I think I will just use the 'ang' interface from now on, and assign the initially imported 'notIndexed' points an iq of 0 as part of my code, before any other filtering.
Dear All,
I though I should mention something now, instead of waiting till the MTEX Workshop to tell you about it!
When importing EBSD data from TSL .ang files, the "truly" not indexed points (not just points with poor statistics, but points where no solution was found) are thrown away by MTEX and not imported. Thus, they are not available to be processes as notIndexed points and just appear as holes in the map. This is a problem if you scan something with e.g. gas bubbles in the microstructure, where there is no chance of any kind of EBSD pattern generation. Later, during grain reconstruction, grains "expand" into these empty holes in the map, and the image quality data for the deleted points is also lost.
The code that does the deleting is on lines 74 and 75 of the file loadHelper.m , found in mtex-5.10.2/interfaces/tools:
I would like these "error" points still to be imported and be available as notIndexed points , at the very least optionally.
To combat this problem I usually modify the loadHelper.m file at the quoted lines to instead convert the three Euler angles to 0 radians (as a placeholder), and remove the line that deletes the points. This gets me what I want - the points are imported, and their associated (very bad) "quality" statistics like fit, confidence index etc allow me to set them to notIndexed during cleaning of the map.
e.g.
I am sure the MTEX developers can come up with a more elegant solution! I don't know the reason for the original code - perhaps it was never imagined the user might want to see these points, or perhaps having Euler angles of 4*pi leads to errors, so these have to be removed?
best regards and huge thanks for developing MTEX!
Tom Griffiths
The text was updated successfully, but these errors were encountered: