Problem with smooth and fill operation for grain boundary identification (LAGB & HAGB)

62 views
Skip to first unread message

Daniel Varadaradjou

unread,
Oct 7, 2019, 8:36:18 AM10/7/19
to MTEX
Please be as detailed as possible, explain what you want to do, what kind of data you are using. Attaching simplified code and data is always useful. Click the the button { } to inline code and finally remove these lines before posting :)

Hello,

I'm facing a problem with grain smooth and fill. I will try to explain as much as I understand it.

When I operate calc grain from an raw ebsd data, I can easily identify LAGB and HAGB (See 'Raw ebsd data' & 'LAGB&HAGB without smooth' attached).
Note : I just separate core grains from shell grains, that why you see empty data.

ebsd=ebsd('Nickel','Nickel')


% gB Classes - Définition des GB :
gB
=core_grains3.boundary;
gB
=gB('Nickel','Nickel');


% Create classes of gB regarding threshold angle
gB_i15
=gB(gB.misorientation.angle<=15*degree);
gB_s15
=gB(gB.misorientation.angle>15*degree);


% Plot at once all gB
figure
;plot(gB_i15,'linecolor',[0 255 0]/255,'linewidth',2,'DisplayName',' LAGB < 15^\circ');
hold on
plot
(gB_s15,'linecolor',[255 0 0]/255,'linewidth',2,'DisplayName','  HAGB > 15^\circ');
hold off


As you can see, there are some data I want to remove : scratch and single pixel grains (especially in the pink grain on the right).
So I smooth and fill the data with this script : 

ebsd2=ebsd(core_grains);
F = medianFilter;
F.numNeighbours = 1


% smooth the data
ebsd3 = smooth(ebsd2,F,'fill');
[core_grains2,ebsd3.grainId] = calcGrains(ebsd3,'angle',2*degree);
core_grains3=core_grains2('indexed'); %Prendre en compte seulement les grains indexé




figure;plot(ebsd3('Nickel'),oM.orientation2color(ebsd3('Nickel').orientations),'micronbar','off')
hold on
plot(core_grains3.boundary,'linewidth',0.5);
hold off


And I use again my first script to identify LAGB and HAGB. But here is the problem. Some data are missing... (See 'Smoothed ebsd data' & 'LAGB&HAGB with smooth' attached).

Is the smooth and fill process erase some boundaries parameters (especially gB.misorientation) ?
I need to make an histogram to separate LAGB, HAGB and CSL, but if boundaries data are missing (or are erased) after smooth, it is not usefull to do it.

By advance thank you for your help MTEX community :)

Daniel V.
Raw ebsd data.png
LAGB&HAGB without smooth.png
Smoothed ebsd data.png
LAGB&HAGB with smooth.png

Rüdiger Kilian

unread,
Oct 8, 2019, 5:42:54 AM10/8/19
to mtex...@googlegroups.com
Hi,
filters like the median filter may indeed not be edge preserving for LAB (while others such as the halfQuadratic or the l1TV should be). However, the difference in your plots seems to arise that at first you plot all nickel boundaries and later on only Nickel-Nickel. Is that possible?
Cheers,
Rüdiger
________________________________________
From: mtex...@googlegroups.com <mtex...@googlegroups.com> on behalf of Daniel Varadaradjou <daniel...@gmail.com>
Sent: Monday, October 7, 2019 1:32:17 PM
To: MTEX
Subject: {MTEX} Problem with smooth and fill operation for grain boundary identification (LAGB & HAGB)
--
If you want to reduce the number of emails you get through this forum login to https://groups.google.com/forum/?fromgroups=#!forum/mtexmail, click "My membership" and select "Don't send me email updates". You can still get emails on selected topics by staring them.
---
You received this message because you are subscribed to the Google Groups "MTEX" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mtexmail+u...@googlegroups.com<mailto:mtexmail+u...@googlegroups.com>.
To view this discussion on the web visit https://groups.google.com/d/msgid/mtexmail/5e1132d7-774d-40a7-8021-b9172bee24c3%40googlegroups.com<https://groups.google.com/d/msgid/mtexmail/5e1132d7-774d-40a7-8021-b9172bee24c3%40googlegroups.com?utm_medium=email&utm_source=footer>.

Daniel Varadaradjou

unread,
Oct 8, 2019, 7:52:34 AM10/8/19
to MTEX
Hello Sir,
Thank you for your prompt answer.
My ebsd data is only indexed with nickel (no not indexed point). It is when I separate core/shell that not indexed point appear, that's why I'm using Nickel-Nickel after. It is not a problem about indexation.
But you right, I just test with halfQuadraticFilter (which is two times longer than the median filter) and I can plot LAB without any problem. 
I will use this for the moment.
Thank you again :)

Sincerly,

Daniel V.
To unsubscribe from this group and stop receiving emails from it, send an email to mtex...@googlegroups.com<mailto:mtexmail+unsubscribe@googlegroups.com>.
Reply all
Reply to author
Forward
0 new messages