Skip to main content
Log in

Restoration of Noisy Orientation Maps from Electron Backscatter Diffraction Imaging

  • Technical Article
  • Published:
Integrating Materials and Manufacturing Innovation Aims and scope Submit manuscript

Abstract

Crystallographic orientations can be measured using scanning electron microscope-based techniques, such as electron backscatter diffraction (EBSD). The orientation data thus obtained may contain noise and misindexed data. There are several methods to restore the orientation data. The restorations from these methods may have varying levels of quality. Moreover, many such methods are parameter-dependent. Therefore, finding suitable parameter settings for optimal restorations can take time and effort for users of such methods. In this paper, we propose an algorithm to obtain high-quality restorations of noisy orientation data and to circumvent the parameter selection problem by automating it. We estimate the noise variance in the data to determine the amount of denoising to apply. We then use this information to determine the stopping criteria for a vector-valued weighted total variation flow, a nonlinear diffusion applied to the noisy orientation map. We compare the results obtained by our approach with the results from other commonly used denoising filters. As benchmarks, we used simulated EBSD maps with varying noise levels. Our proposed method outperformed denoising methods, such as mean, median, spline, half-quadratic, and Kuwahara filters. The denoising results were statistically significantly better for higher levels of noise.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4

Similar content being viewed by others

References

  1. Zaefferer S (2011) A critical review of orientation microscopy in SEM and TEM. Cryst Res Technol 46(6):607–628. https://doi.org/10.1002/crat.201100125

    Article  CAS  Google Scholar 

  2. Rauch EF, Portillo J, Nicolopoulos S, Bultreys D, Rouvimov S, Moeck P (2010) Automated nanocrystal orientation and phase mapping in the transmission electron microscope on the basis of precession electron diffraction. Zeitschrift für Kristallographie-Cryst Mater 225(2–3):103–109. https://doi.org/10.1524/zkri.2010.1205

    Article  CAS  Google Scholar 

  3. Epp J (2016) 4 - X-ray diffraction (XRD) techniques for materials characterization. In: Hübschen G, Altpeter I, Tschuncky R, Herrmann H-G (eds) Materials characterization using nondestructive evaluation (NDE) methods. Woodhead Publishing, Sawston, UK, pp 81–124. https://doi.org/10.1016/B978-0-08-100040-3.00004-3

    Chapter  Google Scholar 

  4. Poulsen HF (2004) Three-dimensional X-ray diffraction microscopy: mapping polycrystals and their dynamics, 1st edn. Springer, Berlin, Heidelberg. https://doi.org/10.1007/b97884

    Book  Google Scholar 

  5. Nolze G (2015) Euler angles and crystal symmetry. Cryst Res Technol 50(2):188–201. https://doi.org/10.1002/crat.201400427

    Article  CAS  Google Scholar 

  6. Creuziger A, Vaudin M (2011) Report on VAMAS round robin of ISO 13067: Microbeam analysis - electron backscatter diffraction - measurement of average grain size. Technical Report NISTIR 7814, National Institute of Standards and Technology. https://doi.org/10.6028/NIST.IR.7814

  7. Langer SA, Fuller ER, Carter WC (2001) OOF: an image-based finite-element analysis of material microstructures. Comput Sci Eng 3(3):15–23. https://doi.org/10.1109/5992.919261

    Article  Google Scholar 

  8. Arfken G (1967) Mathematical methods for physicists. Am J Phys 35(11):1097–1098. https://doi.org/10.1119/1.1973757

    Article  Google Scholar 

  9. Brewer L, Michael J (2010) Risks of cleaning electron backscatter diffraction data. Microsc Today 18(2):10–15. https://doi.org/10.1017/S1551929510000040

    Article  CAS  Google Scholar 

  10. Gonzalez RC, Woods RE (2018) Digital image processing, 4th edn. Pearson Publishing, London, UK

    Google Scholar 

  11. Kyprianidis JE (2011) Image and video abstraction by multi-scale anisotropic Kuwahara filtering. In: Proceedings of the ACM SIGGRAPH/Eurographics Symposium on Non-Photorealistic Animation and Rendering. ACM Press, Vancouver, British Columbia, Canada. https://doi.org/10.1145/2024676.2024686

  12. Charbonnier P, Blanc-Feraud L, Aubert G, Barlaud M (1994) Two deterministic half-quadratic regularization algorithms for computed imaging. In: Proceedings of 1st International Conference on Image Processing, vol 2. IEEE, pp 168–172. https://doi.org/10.1109/icip.1994.413553

  13. Immerkær J (1996) Fast noise variance estimation. Comput Vis Image Underst 64(2):300–302. https://doi.org/10.1006/cviu.1996.0060

    Article  Google Scholar 

  14. Rudin LI, Osher S, Fatemi E (1992) Nonlinear total variation based noise removal algorithms. Phys D Nonlinear Phenom 60(1–4):259–268. https://doi.org/10.1016/0167-2789(92)90242-f

    Article  Google Scholar 

  15. Athavale P, Xu R, Radau P, Nachman A, Wright GA (2015) Multiscale properties of weighted total variation flow with applications to denoising and registration. Med Image Anal 23(1):28–42. https://doi.org/10.1016/j.media.2015.04.013

    Article  Google Scholar 

  16. Blomgren P, Chan TF (1998) Color TV: total variation methods for restoration of vector-valued images. IEEE Trans Image Process 7(3):304–309. https://doi.org/10.1109/83.661180

    Article  CAS  Google Scholar 

  17. Meyer Y (2001) Oscillating Patterns in Image Processing and Nonlinear Evolution Equations: the Fifteenth Dean Jacqueline B. Lewis Memorial Lectures, vol 22. American Mathematical Society, Providence, RI, USA

    Google Scholar 

  18. Chambolle A (2004) An algorithm for total variation minimization and applications. J Math Imag Vis 20(1–2):89–97. https://doi.org/10.1023/B:JMIV.0000011325.36760.1e

    Article  Google Scholar 

  19. Athavale P, Jerrard RL, Novaga M, Orlandi G (2017) Weighted TV minimization and applications to vortex density models. J Convex Anal 24(4):1051–1084. https://doi.org/10.48550/arXiv.1509.03713

    Article  Google Scholar 

  20. Farid H, Simoncelli EP (2004) Differentiation of discrete multidimensional signals. IEEE Trans Image Process 13(4):496–508. https://doi.org/10.1109/TIP.2004.823819

    Article  Google Scholar 

  21. Lee T-C, Kashyap RL, Chu C-N (1994) Building skeleton models via 3-d medial surface axis thinning algorithms. CVGIP Graph Models Image Process 56(6):462–478. https://doi.org/10.1006/cgip.1994.1042

    Article  Google Scholar 

  22. Groeber MA, Jackson MA (2014) DREAM.3D: a digital representation environment for the analysis of microstructure in 3D. Integr Mater Manuf Innov 3:56–72. https://doi.org/10.1186/2193-9772-3-5

    Article  Google Scholar 

  23. Morawiec A (2003) Orientations and rotations. Springer, Berlin, Germany

    Google Scholar 

  24. Hielscher R, Silbermann CB, Schmidl E, Ihlemann J (2019) Denoising of crystal orientation maps. J Appl Crystallogr 52(5):984–996. https://doi.org/10.1107/S1600576719009075

    Article  CAS  Google Scholar 

  25. Bachmann F, Hielscher R, Jupp PE, Pantleon W, Schaeben H, Wegert E (2010) Inferential statistics of electron backscatter diffraction data from within individual crystalline grains. J Appl Crystallogr 43(6):1338–1355. https://doi.org/10.1107/S002188981003027X

    Article  CAS  Google Scholar 

  26. Schaeben H (1999) The de la vallée poussin standard orientation density function. Textures Microstruct 33(1–4):365–373. https://doi.org/10.1155/TSM.33.365

    Article  Google Scholar 

  27. MTEX (2020) MTEX Toolbox. https://mtex-toolbox.github.io/. Online; accessed September 9, 2020

  28. MTEX (2021) Denoising Orientation Maps. https://mtex-toolbox.github.io/EBSDDenoising.html. Online; accessed December 14, 2021

  29. Neter J, Kutner MH, Nachtsheim CJ, Wasserman W (1996) Applied linear statistical models. McGraw Hill/Irwin Series

  30. Creuziger A (2023) Real EBSD map examples. Accessed: 2023-03-15. https://doi.org/10.18434/mds2-2951

  31. Dream.3D (2020) Dream.3D. http://dream3d.bluequartz.net/. Online, accessed September 9, 2020

  32. Bunge H-J (2013) Texture analysis in materials science: mathematical methods. Elsevier, Amsterdam, Netherlands

    Google Scholar 

Download references

Acknowledgements

The NIST SURF program in the Summer of 2021 supported Peter Lef. Real EBSD maps were courtesy of Dr. Adam Creuziger from NIST, Gaithersburg, MD.

Funding

This research was funded by NIST grant # 70NANB21H047.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Prashant Athavale.

Ethics declarations

Conflict of interest

On behalf of all authors, the corresponding author states that there is no conflict of interest.

NIST Disclaimer

Certain equipment, instruments, software, or materials, commercial or non-commercial, are identified in this paper in order to specify the experimental procedure adequately. Such identification is not intended to imply recommendation or endorsement of any product or service by NIST, nor is it intended to imply that the materials or equipment identified are necessarily the best available for the purpose.

Appendices

Appendix A: The Preprocessing Algorithm

There are two main sources of jump discontinuities in the orientation data: non-unique representations of orientations due to crystal symmetry, and limited range of Euler angle representation. To address the non-unique representation owing to the crystal symmetry, we project the orientations data onto the fundamental region. Note that for each orientation in the data, there is a unique symmetrically equivalent orientation within the fundamental region. In the remainder of the section, we describe the preprocessing algorithm we propose to identify and correct the jump discontinuities due to the range of the Euler angle representation of the data.

The Euler angles range from \(0^{\circ }\) to \(360^{\circ }\) (or \(180^{\circ }\)), depending on the axes representation used. For the range [0, 360), the jump discontinuities around angles \(0^{\circ }\) and \(360^{\circ }\) can cause misorientation errors. As example, consider that an Euler angle is \(350^{\circ }\), which due to noise of \(15^{\circ }\) changes to \(350^{\circ }+15^{\circ }=365^{\circ }\). However, since \(365^{\circ }\) is not in the range \([0^{\circ }, 360^{\circ })\), it is recorded as the equivalent angle of \(5^{\circ }\) causing a jump discontinuity within a grain, with a large error of \((\, 350^{\circ }-5^{\circ }) = 345^{\circ }\), rather than the original small error of \(15^{\circ }\). Fig. 5b shows the jump discontinuities in Euler angles arising from adding \(15^{\circ }\) disorientation angle error to data in Fig. 5a. Hence, before applying a denoising algorithm, we need to correct the jump discontinuities at \(0^{\circ }\) and \(360^{\circ }\) in the data using a preprocessing algorithm. Note that the jump discontinuities are the feature of Euler angles, all images in this Appendix depict normalized Euler angles and are visualized as red, green, and blue (RGB) channels.

Fig. 5
figure 5

This figure shows the Euler angles in multiple grains of an example EBSD map as an RGB image. Image a shows the ground truth orientations. Image b shows the noisy data with up to \(15^{\circ }\) error in Euler angles. The green pixels show the jumps due to the angle discontinuity around \(360^\circ -0^\circ \)

We demonstrate the steps of this algorithm in Fig. 6. We depict a clean EBSD map example obtained from DREAM.3D software [22, 31] in Fig. 6a. The EBSD maps contain orientations as Euler angles in Bunge notation i.e. ZXZ format [32]. Figure 6b shows the local standard deviations computed in the neighborhood of a \(3 \times 3\) window centered at each data point. The brighter spots in Fig. 6b correspond to larger values of the local standard deviations. In Fig. 6c, we see the histogram of the local standard deviations. The orientation values within a single grain of clean EBSD data are comparable, as seen in Fig. 6a. Thus, we expect the local standard deviation near each data point within a single grain to be close to 0. Indeed, this phenomenon is apparent in the histogram of the local standard deviations shown in Fig. 6c. Around 90% of the local standard deviations in Fig. 6c are equal to 0, an effect more pronounced due to the map being synthetically generated.

Figure 6d depicts the EBSD data with de la Vallée Poussin noise [26] with a half-width \(b=8\). We compute local standard deviations of the noisy data as shown in Fig. 6 e, with its corresponding histogram in Fig. 6f. Note that Fig. 6e also contains the grain boundaries. The distribution of the local standard deviation is multimodal, with one prominent peak corresponding to the misorientation noise in the EBSD data. The other peaks correspond to the jump discontinuities showing high local standard deviation. To separate the misorientation noise from the jump discontinuities and grain boundaries, we identify the end of the prominent peak. Figure 6g shows the locations with local standard deviations higher than the endpoint of the prominent peak. The Euler angles typically range from \(0^{\circ }\) to \(360^{\circ }\) (or \(180^{\circ }\)). If the range is from \(0^{\circ }\) to \(360^{\circ }\), the two angles are equivalent. In such cases, we only need to identify points corresponding to the jump discontinuities at \(0^{\circ }\) and \(360^{\circ }\). The jump discontinuities identified by our algorithm are depicted in Fig. 6 g. If the angle \(\theta \) at (xy), a point of discontinuity, is near \(0^{\circ }\) (or \(360^{\circ }\)) while majority of its neighbors are near \(360^{\circ }\) (or \(0^{\circ }\)), we correct the angle \(\theta \) to \(360-\theta \), otherwise \(\theta \) is unchanged. Fig. 6 h shows the EBSD data with the jump discontinuities corrected. The correction of jump discontinuities does not always capture all the discontinuous data points, and the remaining discontinuities may appear as misindexed points. We apply the algorithm given by Brewer and Michael [9] to identify misindexed points. We label a point misindexed if its angle differs from all its local neighbors by \(5^{\circ }\) or more. We then replace these misindexed data points with the local median. Figure 6 i depicts the image with the correction of isolated pixels. The circles in Fig. 6 i highlight some regions with these corrections.

Fig. 6
figure 6

Illustration of processing of noise due to jump discontinuities in the Euler angles: a clean image, b image of local standard deviations, c standard deviation histogram of clean data, d noisy image; the grains with jump discontinuities are highlighted in circles e local standard deviations of noisy data, f standard deviation histogram of noisy data, g region with jump discontinuities, h image with corrected jump discontinuities, i image with corrected isolated pixels. In some regions in h, the isolated pixels were corrected, and the corresponding corrected regions in i are shown in circles

Appendix B: Numerical Scheme

For the weighted TV flow,

$$\begin{aligned} \frac{ \partial u^{(k)}}{\partial t} = \frac{\Vert u^{(k)} \Vert _{TV_{\alpha }(\Omega )}}{\Vert {\textbf{u}} \Vert _{TV_{\alpha }(\Omega )}}\text {div}\left( \frac{\alpha ^{(k)}\nabla u^{(k)}}{|\nabla u^{(k)}|}\right) \quad \text {for } k=1, 2, 3. \end{aligned}$$

For a single channel, we have

$$\begin{aligned} \text {div}\left( \frac{\alpha \nabla u}{|\nabla u|}\right)&= D_{-x}\left[ \dfrac{\alpha _{i,j}D_{+x}u}{\sqrt{\varepsilon ^2 + (D_{+x}u_{i,j})^2 +(D_{0y}u_{i,j})^2 }} \right] \\&\quad + D_{-y}\left[ \dfrac{\alpha _{i,j}D_{+y}u}{\sqrt{\varepsilon ^2 + (D_{0x}u_{i,j})^2 +(D_{+y}u_{i,j})^2 }} \right] \\&= D_{-x}\left[ \dfrac{\alpha _{i,j}(u_{i+1,j}-u_{i,j})}{\sqrt{\varepsilon ^2 + (D_{+x}u_{i,j})^2 +(D_{0y}u_{i,j})^2}} \right] \\&\quad + D_{-y}\left[ \dfrac{\alpha _{i,j}(u_{i,j+1}-u_{i,j})}{\sqrt{\varepsilon ^2 + (D_{0x}u_{i,j})^2 +(D_{+y}u_{i,j})^2 }} \right] . \end{aligned}$$

Note,

$$\begin{aligned}&D_{-x}\left[ \dfrac{\alpha _{i,j} D_{+x}u}{\sqrt{\varepsilon ^2 + (D_{+x}u_{i,j})^2 +(D_{0y}u_{i,j})^2 }} \right] \\&\quad = D_{-x}\left[ \dfrac{\alpha _{i,j} (u_{i+1,j}-u_{i,j})}{\sqrt{\varepsilon ^2 + (D_{+x}u_{i,j})^2 + (D_{0y}u_{i,j})^2}} \right] \\&\quad = D_{-x}\left[ \dfrac{\alpha _{i,j} u_{i+1,j}}{\sqrt{\varepsilon ^2 + (D_{+x}u_{i,j})^2 + (D_{0y}u_{i,j,k})^2 }} \right] \\&\qquad - D_{-x}\left[ \dfrac{\alpha _{i,j} u_{i,j}}{\sqrt{\varepsilon ^2 +(D_{+x}u_{i,j})^2 + (D_{0y}u_{i,j})^2 }} \right] \end{aligned}$$

Apply backward difference on each term separately we obtain

$$\begin{aligned}&D_{-x}\left[ \dfrac{\alpha _{i,j} u_{i+1,j}}{\sqrt{\varepsilon ^2 + (D_{+x}u_{i,j})^2 + (D_{0y}u_{i,j})^2 }} \right] \\&\quad =\dfrac{\alpha _{i,j} u_{i+1,j}}{\sqrt{\varepsilon ^2 + (D_{+x}u_{i,j})^2 + (D_{0y}u_{i,j})^2 }} \\&\qquad - \dfrac{\alpha _{i-1,j}u_{i,j}}{\sqrt{\varepsilon ^2 + (D_{+x}u_{i-1,j})^2 + (D_{0y}u_{i-1,j})^2}} ,\\ \end{aligned}$$

and

$$\begin{aligned}&D_{-x}\left[ \dfrac{\alpha _{i,j} u_{i,j}}{\sqrt{\varepsilon ^2 + (D_{+x}u_{i,j})^2 + (D_{0y}u_{i,j})^2 }} \right] \\&\quad = \dfrac{\alpha _{i,j} u_{i,j}}{\sqrt{\varepsilon ^2 + (D_{+x}u_{i,j})^2 + (D_{0y}u_{i,j})^2}} \\&\qquad - \dfrac{\alpha _{i-1,j} u_{i-1,j}}{\sqrt{\varepsilon ^2 + (D_{+x}u_{i-1,j})^2 + (D_{0y}u_{i-1,j})^2}}. \end{aligned}$$

Note that \(D_{+x}u_{i-1,j}=D_{-x}u_{i,j}\) and thus,

$$\begin{aligned}&D_{-x}\left[ \dfrac{\alpha _{i,j} u_{i+1,j}}{\sqrt{\varepsilon ^2 + (D_{+x}u_{i,j})^2 + (D_{0y}u_{i,j})^2}} \right] \\&\quad =\dfrac{\alpha _{i,j} u_{i+1,j}}{\sqrt{\varepsilon ^2 + (D_{+x}u_{i,j})^2 + (D_{0y}u_{i,j})^2 }} \\&\qquad - \dfrac{\alpha _{i-1,j} u_{i,j}}{\sqrt{\varepsilon ^2 + (D_{-x}u_{i,j})^2 + (D_{0y}u_{i-1,j})^2 }},\\&D_{-x}\left[ \dfrac{\alpha _{i,j} u_{i,j}}{\sqrt{\varepsilon ^2 + (D_{+x}u_{i,j})^2 + (D_{0y}u_{i,j})^2}} \right] \\&\quad = \dfrac{\alpha _{i,j} u_{i,j}}{\sqrt{\varepsilon ^2 + (D_{+x}u_{i,j})^2 + (D_{0y}u_{i,j})^2}} \\&\qquad - \dfrac{\alpha _{i-1,j} u_{i-1,j}}{\sqrt{\varepsilon ^2 + (D_{+x}u_{i-1,j})^2 + (D_{0y}u_{i-1,j})^2 }}, \end{aligned}$$

and,

$$\begin{aligned}&D_{-x}\left[ \dfrac{\alpha _{i,j}(u_{i+1,j} - u_{i,j})}{\sqrt{\varepsilon ^2 + (D_{+x}u_{i,j})^2 + (D_{0y}u_{i,j})^2}} \right] \\&\quad = \dfrac{\alpha _{i,j}(u_{i+1,j} - u_{i,j})}{\sqrt{\varepsilon ^2 + (D_{+x}u_{i,j})^2 + (D_{0y}u_{i,j})^2 }} \\&\qquad - \dfrac{\alpha _{i-1,j}(u_{i,j} - u_{i-1,j})}{\sqrt{\varepsilon ^2 + (D_{-x}u_{i,j})^2 + (D_{0y}u_{i-1,j})^2}} . \end{aligned}$$

Therefore,

$$\begin{aligned}&\text {div}\left( \frac{\alpha _{i,j}\nabla u^k}{|\nabla u|}\right) \\&\quad = D_{-x}\left[ \dfrac{\alpha _{i,j} (u_{i+1,j}^{k}-u_{i,j}^{k})}{\sqrt{\varepsilon ^2 + (D_{+x}u_{i,j}^{k})^2 +(D_{0y}u_{i,j}^{k})^2 }} \right] \\&\qquad + D_{-y}\left[ \dfrac{\alpha _{i,j}(u_{i,j+1}^{k}-u_{i,j}^{k})}{\sqrt{\varepsilon ^2 + (D_{0x}u_{i,j}^{k})^2 +(D_{+y}u_{i,j}^{k})^2 }} \right] \\&\quad =\left[ \dfrac{\alpha _{i,j}(u_{i+1,j}^{k} - u_{i,j}^{k})}{\sqrt{\varepsilon ^2 + (D_{+x}u_{i,j}^{k})^2 + (D_{0y}u_{i,j}^{k})^2 }} \right. \\&\qquad \left. - \dfrac{\alpha _{i-1,j}(u_{i,j}^{k} - u_{i-1,j}^{k})}{\sqrt{\varepsilon ^2 + (D_{-x}u_{i,j}^{k})^2 + (D_{0y}u_{i-1,j}^{k})^2 }} \right] \\&\qquad +\left[ \dfrac{\alpha _{i,j}(u_{i,j+1}^{k} - u_{i,j}^{k})}{\sqrt{\varepsilon ^2 +(D_{0x}u_{i,j}^{k})^2 + (D_{+y}u_{i,j}^{k})^2 }} \right. \\&\qquad \left. - \dfrac{\alpha _{i,j-1}(u_{i,j}^{k} - u_{i,j-1}^{k})}{\sqrt{\varepsilon ^2 + (D_{0x}u_{i,j-1}^{k})^2 + (D_{-y}u_{i,j}^{k})^2}} \right] \\&\quad = \left[ \alpha _{i,j}{C_E}(u_{i+1,j}^{k} - u_{i,j}^{k}) - \alpha _{i-1,j}{C_W}(u_{i,j}^{k} - u_{i-1,j}^{k}) \right] \\&\qquad + \left[ \alpha _{i,j}{C_S}(u_{i,j+1}^{k} - u_{i,j}^{k}) - \alpha _{i,j-1}{C_N}(u_{i,j}^{k} - u_{i,j-1}^{k}) \right] \\&\quad = \alpha _{i-1,j}{C_W} u_{i-1,j}^{k} + \alpha _{i,j}({C_E}u_{i+1,j}^{k} + {C_S}u_{i,j+1}^{k})\\&\qquad + \alpha _{i,j-1}{C_N} u_{i,j-1}^{k} - (\alpha _{i,j}{C_E} +\alpha _{i-1,j}{C_W} + \alpha _{i,j}{C_S} \\&\qquad + \alpha _{i,j-1}{C_N})u_{i,j}^{k} \end{aligned}$$

where

$$\begin{aligned} C_E&= \dfrac{1}{\sqrt{\varepsilon ^2 + (D_{+x}u_{i,j}^{k})^2 + (D_{0y}u_{i,j}^{k})^2 }},\\ C_W&= \dfrac{1}{\sqrt{\varepsilon ^2 + (D_{-x}u_{i,j}^{k})^2 + (D_{0y}u_{i-1,j}^{k})^2 }},\\ C_S&= \dfrac{1}{\sqrt{\varepsilon ^2 + (D_{0x}u_{i,j}^{k})^2 + (D_{+y}u_{i,j}^{k})^2 }}, \\ C_N&= \dfrac{1}{\sqrt{\varepsilon ^2 + (D_{0x}u_{i,j-1}^{k})^2 + (D_{-y}u_{i,j}^{k})^2}}, \end{aligned}$$

for \(\quad k=1,2,3.\) Thus,

$$\begin{aligned} \frac{ \partial u^{(k)}}{\partial t}&= \frac{\Vert u^{(k)} \Vert _{TV_{\alpha }(\Omega )}}{\Vert {\textbf{u}} \Vert _{TV_{\alpha }(\Omega )}}\text {div}\left( \frac{\alpha ^{(k)}\nabla u^{(k)}}{|\nabla u^{(k)}|}\right) \\&=R(u^{k})\text {div}\left( \frac{\alpha ^{(k)}\nabla u^{(k)}}{|\nabla u^{(k)}|}\right) \end{aligned}$$

is discretized as

$$\begin{aligned}&\frac{u_{i,j}^{k,n+1}-u_{i,j}^{k,n}}{\tau } \\&\quad = R(u^{k,n})\Big [ \alpha _{i-1,j}{C_W} u_{i-1,j}^{k,n} + \alpha _{i,j}({C_E}u_{i+1,j}^{k,n} + {C_S}u_{i,j+1}^{k,n}) \\&\qquad +\alpha _{i,j-1}{C_N} u_{i,j-1}^{k,n} - (\alpha _{i,j}{C_E} +\alpha _{i-1,j}{C_W} \\&\qquad + \alpha _{i,j}{C_S} + \alpha _{i,j-1}{C_N})u_{i,j}^{k,n+1}\Big ]\\&u_{i,j}^{k,n+1} \\&\quad = u_{i,j}^{k,n} + \tau R(u^{k,n})\Big [ \alpha _{i-1,j}{C_W} u_{i-1,j}^{k,n} + \alpha _{i,j}({C_E}u_{i+1,j}^{k,n} + {C_S}u_{i,j+1}^{k,n}) \\&\qquad + \alpha _{i,j-1}{C_N} u_{i,j-1}^{k,n} - (\alpha _{i,j}{C_E} +\alpha _{i-1,j}{C_W} + \alpha _{i,j}{C_S}\\&\qquad + \alpha _{i,j-1}{C_N})u_{i,j}^{k,n+1}\Big ] \end{aligned}$$

Note, \(\Vert {\varvec{u}} \Vert _{TV (\Omega )}:=\left[ \sum _{k=1}^3 \left( \int _{\Omega } |\nabla u^{(k)}|\right) ^2 \right] ^{\frac{1}{2}} = \left[ \sum _{k=1}^3 \left( \sum _{i,j} |\nabla u_{i,j}^{k}|\right) ^2 \right] ^{\frac{1}{2}}\) and \(\Vert u^k \Vert _{TV (\Omega )}:= \int _{\Omega } |\nabla u^{k}| = \sum _{i,j} |\nabla u_{i,j}^{k}| \) Thus,

$$\begin{aligned} R(u^{k,n}) = \frac{\Vert u^{(k)} \Vert _{TV_{\alpha }(\Omega )}}{\Vert {\textbf{u}} \Vert _{TV_{\alpha }(\Omega )}} = \frac{\sum _{i,j} |\nabla u_{i,j}^{k}|}{\left[ \sum _{k=1}^3 \left( \sum _{i,j} |\nabla u_{i,j}^{k}|\right) ^2 \right] ^{\frac{1}{2}}} \end{aligned}$$

Hence,

$$\begin{aligned} u_{i,j}^{k,n+1}&=u_{i,j}^{k,n} + \tau R(u^{k,n})\Big [ \alpha _{i-1,j}{C_W} u_{i-1,j}^{k,n} + \alpha _{i,j}({C_E}u_{i+1,j}^{k,n} \\&\quad + {C_S}u_{i,j+1}^{k,n}) + \alpha _{i,j-1}{C_N} u_{i,j-1}^{k,n}\\&\quad - (\alpha _{i,j}{C_E} +\alpha _{i-1,j}{C_W} + \alpha _{i,j}{C_S} + \alpha _{i,j-1}{C_N})u_{i,j}^{k,n+1}\Big ]\\ \text {i.e. }&u_{i,j}^{k,n+1} + (\alpha _{i,j}{C_E} +\alpha _{i-1,j}{C_W} + \alpha _{i,j}{C_S} + \alpha _{i,j-1}{C_N})u_{i,j}^{k,n+1}\\&\quad =u_{i,j}^{k,n} + \tau R(u^{k,n})\Big [ \alpha _{i-1,j}{C_W} u_{i-1,j}^{k,n} + \alpha _{i,j}({C_E}u_{i+1,j}^{k,n} + {C_S}u_{i,j+1}^{k,n}) + \alpha _{i,j-1}{C_N} u_{i,j-1}^{k,n}\Big ]\\ \text {i.e. }&(1+\alpha _{i,j}{C_E} +\alpha _{i-1,j}{C_W} + \alpha _{i,j}{C_S} + \alpha _{i,j-1}{C_N})u_{i,j}^{k,n+1}\\&\quad =u_{i,j}^{k,n} +&\tau R(u^{k,n})\Big [ \alpha _{i-1,j}{C_W} u_{i-1,j}^{k,n} + \alpha _{i,j}({C_E}u_{i+1,j}^{k,n} + {C_S}u_{i,j+1}^{k,n}) + \alpha _{i,j-1}{C_N} u_{i,j-1}^{k,n}\Big ] \end{aligned}$$

This leads to the final discretization as follows

$$\begin{aligned} u_{i,j}^{k,n+1}=\frac{u_{i,j}^{k,n} + \tau R(u^{k,n})\Big [ \alpha _{i-1,j}{C_W} u_{i-1,j}^{k,n} + \alpha _{i,j}({C_E}u_{i+1,j}^{k,n} + {C_S}u_{i,j+1}^{k,n}) + \alpha _{i,j-1}{C_N} u_{i,j-1}^{k,n}\Big ]}{(1+\alpha _{i,j}{C_E} +\alpha _{i-1,j}{C_W} + \alpha _{i,j}{C_S} + \alpha _{i,j-1}{C_N})} \end{aligned}$$

Appendix C: Experiments with the Real Data

See Figure 7.

Fig. 7
figure 7

Results of denoising real EBSD map using various filters

Appendix D: Grain Boundaries After Restoration

In this section, we demonstrate the effect of the algorithms on the boundaries of the restored EBSD maps. We found the location of the boundaries using the Farid edge detector [20]. We see in Fig. 8 the details of the boundaries of ESBD maps shown in Fig. 2. Figure 9 shows the details of the boundaries of maps in Fig. 3. The yellow color in Figs. 8 and 9 indicates the locations where the boundaries from the restored maps match the true boundaries exactly. The red color indicated the true boundaries from the clean EBSD map. Thus, the red-colored pixels in images (b) - (h) in Figs. 8 and 9 show locations of the true boundaries that are missed by the algorithms. The green boundaries are the ones obtained from the restored algorithms. Thus, the green-colored boundaries in images (b) to (h) in Figs. 8 and 9 are the incorrect locations of the boundaries found by the corresponding algorithms. We can infer from these images that the boundaries found by the proposed algorithm are comparable in their accuracy with other algorithms discussed in this paper.

Fig. 8
figure 8

Details of the grain boundaries of EBSD map from Fig. 2. The yellow color represents accurate boundary detection. Red represents true grain boundaries that are missed by the algorithms. Green represents boundaries obtained by the corresponding algorithms which do not match the ground truth

Fig. 9
figure 9

Details of the grain boundaries of EBSD map from Fig. 3. The yellow color represents accurate boundary detection. Red represents true grain boundaries that are missed by the algorithms. Green represents boundaries obtained by the corresponding algorithms which do not match the ground truth

Rights and permissions

Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Atindama, E., Lef, P., Doğan, G. et al. Restoration of Noisy Orientation Maps from Electron Backscatter Diffraction Imaging. Integr Mater Manuf Innov 12, 251–266 (2023). https://doi.org/10.1007/s40192-023-00304-8

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s40192-023-00304-8

Keywords

Navigation