1 Introduction

The development of laser combustion diagnostics employing planar imaging techniques in the 1970s and 1980s has transformed combustion research (Dyer and Crosley 1982; Fourguette et al. 1986; Aldén et al. 2011; Thurow et al. 2013). Using a light sheet to illuminate an entire two-dimensional cross section of a flame and imaging the laser-induced emission onto a camera provide spatially correlated information in contrast to pointwise scanning. In particular, the use of short-pulse laser sources and gated cameras enables imaging on timescales that are shorter than flow and diffusion phenomena, and hence, a true snapshot of a flame can be taken. Consequently, studying transient phenomena is possible by capturing flame structures under turbulent conditions. However, processing and evaluating such images are a challenge. Appropriate methods must be reproducible, accurate, and quantitative. In addition, the information desired should be available within a reasonable period of time. This is particularly important when large data sets need to be processed.

The most common task is to identify and to characterize the flame front in an image recorded by planar laser-induced fluorescence (PLIF) (Sweeney and Hochgreb 2009), laser Rayleigh scattering (LRS) (Pfadler et al. 2007), or particle imaging velocimetry (PIV) (Pfadler et al. 2007). Regarding data processing, this task comes down to an edge detection problem. Needless to say, the edge detection step is crucial, as a slightly differently detected edge may suggest significantly different flame parameters, e.g., in terms of the flame front curvature.

The majority of existing approaches for detecting the flame front in an image are based either on direct binarization (Kiefer et al. 2008; Haq et al. 2002) or on local intensity gradients (Slabaugh et al. 2015; Bayley et al. 2012). When direct binarization is applied, an intensity threshold filter is used delivering a binary image containing areas of zeroes and ones, representing unburnt and burnt regions. The boundary between the two is the flame front, from which further information can be derived. In gradient-based methods, the first step is to convert the initial image by computing an approximation of the gradient pixel by pixel. Then a local or global threshold is applied in order to discriminate between the steep gradients typical for the flame front and less pronounced structures. This may be a simple threshold or a sophisticated combination of multiple thresholds via hysteresis (Canny 1986). Subsequently, the remaining flame front data points can be fitted with a mathematical function, from which parameters such as curvature and flame surface density can be derived eventually. Preprocessing the original images with filters for noise reduction and contour enhancement may be required in order to improve the clearness and robustness of the flame front detection (Slabaugh et al. 2015; Sweeney and Hochgreb 2009; Malm et al. 2000). However, when the signal-to-noise ratio is low or the edge to be detected is not sufficiently steep, the common data processing algorithms may reach their limits. Further, the typical results must be further processed (e.g., by fitting a cubic spline to the detected edge) in order to obtain geometric information like curvature (Pfadler et al. 2007). Finally, traditional edge detection algorithms are not capable of detecting ridges (lines) as coherent structures, which is problematic when analyzing images of short-lived radicals like CH and HCO. Instead, completely different ridge detection methods have to be applied, which often are based on approximating local optima (Lindeberg 1998; Staal et al. 2004) or matching ridges to set shapes like circles (Duda and Hart 1972).

To overcome the limitations of existing flame image analysis tools, we propose the application of an algorithm which we have named Complex Shearlet-Based Ridge and Edge Measure (CoShREM) for the detection and analysis of edges and ridges, based on a so-called shearlet transformation. Shearlets were introduced a decade ago (Kutyniok et al. 2005) to handle geometric structures in 2D data, and a novel method to use so-called complex shearlets in edge detection initially appeared in Reisenhofer (2014) and was fine-tuned in King et al. (2015). A description of the basic mathematical intuition behind CoShREM is given in Sect. 2. This is the first paper, to the best of the authors’ knowledge, to use any sort of shearlet-based method (complex shearlet-based or otherwise) in the processing of flame images.

In the present paper, we investigate the potential of shearlet transformations for evaluating data from planar laser diagnostics. As a first step, in Sects. 3.1 and 3.2 mock images with clearly defined structures, which have been corrupted by blurring, Gaussian noise and Poisson noise of varying levels, are processed in order to allow a systematic assessment of the method. The mock images were generated such that they represent the characteristics of typical flame data. One set of images exhibits thin ridges, which are commonly observed when short-lived radicals such as CH and HCO are visualized using PLIF. The other data set shows broader areas (edge detection), which are characteristic of LRS and PIV data, as well as PLIF images of long-lived radicals like OH. The new shearlet-based method will be shown to work well in detecting edges and ridges over a range of noise levels and amounts of added blur, in addition to giving geometric information—in particular tangent slope and curvature—about the edges. However, we shall also show that, given the correct parameters, the classical method of Canny (1986) is also quite successful at detecting edges (but not ridges or curvature). Thus, in addition to introducing a novel method of edge and ridge detection, a discussion of how to properly use a very classical method will be presented. In the second step, Sect. 3.3, CoShREM is applied to CH and OH PLIF images of a turbulent jet flame in order to demonstrate its performance in the analysis of experimental data.

The main contributions of this paper are the introduction of a new method of flame image analysis and a systematic analysis of methods of edge detection, ridge detection, and local curvature calculation. Through this analysis, the new shearlet-based method CoShREM is shown to be robust to noise and blurring when detecting edges or ridges and also determining curvature. The proper way to parameterize the Canny method to obtain good results for basic edge detection is also presented.

2 Mathematical background

A very common approach to edge detection is to say that edges occur where the gradient—a generalization of the derivative to higher dimensions—is high, so one approximates the gradient and looks for where it is large (Roberts 1963; Prewitt 1970; Sobel and Feldman 1968; Danielsson 1990). Simply approximating the gradient is very sensitive to noise, so the image is typically smoothed with a Gaussian kernel (Canny 1986) or is approximated in a multiscale manner using wavelets (Mallat and Hwang 1992; Mallat and Zhong 1992) or even shearlets (Yi et al. 2009). The method presented in this paper is different in that it does not attempt to approximate the gradient. In order to explain the mathematical intuition of the approach, we begin by defining some notation.

We shall denote the set of integers by \(\mathbb {Z}\), the set of real numbers by \(\mathbb {R}\), the set of complex numbers by \(\mathbb {C}\), and the square root of \(-1\) by i. For functions of finite energy f and g, \(\langle f,g\rangle\) represents the standard inner product, which is conjugate linear in the second component

$$\begin{aligned} \langle f,g\rangle = \int _{-\infty }^{\infty } f(x) \overline{g(x)} \hbox {d}x. \end{aligned}$$

We wish to detect both edges and ridges. Examples of what is meant by “edge” and “ridge” in one and two dimensions are shown in Fig. 1. Figure 1a shows a 1D model edge, (b) a 1D model ridge, (c) a 2D model edge, and (d) a 2D model ridge. The approach we shall use involves two key ideas: phase congruency and shearlets. First, the phase congruency approach (Morrone and Owens 1987; Morrone et al. 1986; Kovesi 1999, 2000) to edge and ridge detection is strengthened (see also van Deemter and Buf 2000). Then, it is implemented using systems of complex shearlets (Kutyniok et al. 2005; Storath 2013; Reisenhofer 2014), which are wavelet-like functions that yield geometric information. A detailed explanation of the mathematics behind the method will be in a forthcoming paper with a shorter synopsis in King et al. (2015) and an earlier version appearing in Reisenhofer (2014).

Fig. 1
figure 1

a A 1D model edge (jump). b A 1D model ridge. c A 2D model edge. d A 2D model ridge

We first summarize the intuition behind phase congruency, which is a type of harmonic-analysis-based signal processing. That is, given a signal or image represented as a function f, we want to obtain information about f by considering the inner products of f with some collection of functions \(\{\varphi _j\}\), namely the set \(\{\langle f,\varphi _j\rangle \}\). Examples of common functions \(\varphi _j\) used in this context are complex exponential functions (used in Fourier analysis) and wavelets. For simplicity’s sake, we describe the approach in one dimension. Further, while the original papers about phase congruency (Morrone and Owens 1987; Morrone et al. 1986) dealt with Fourier-based phase congruency, this is highly sensitive to noise and the spacing between edges. Thus, for brevity, we shall explain wavelet-based phase congruency, which avoids these issues.

Wavelets were first introduced by Haar (1909, 1910) in the early twentieth century and rose to prominence about 80 years later. Unlike the Fourier basis, formed from periodic sines and cosines, wavelet collections are built from functions which take values close to zero away from the origin and which are stretched and shrunk. This means that inner products of a function with sines and cosines yield information about periodic phenomena, while inner products with wavelets result in a characterization of local traits. See, for example (Daubechies 1992) for a general reference. Given a function \(\psi : \mathbb {R}\rightarrow \mathbb {C}\) which satisfies certain mathematical properties, we define a wavelet system as

$$\begin{aligned} \{ \psi _{a,y}(x) := (\sqrt{a})\psi ( a(x - y)): a > 0, y \in \mathbb {R}\}. \end{aligned}$$
(1)

That is, we form the system by dilating by a and translating by y the function \(\psi\). Figure 2a contains an example of a wavelet, and Fig. 2b shows various shifts and translates of that wavelet. The quantities of interest for us are the so-called wavelet coefficients,

$$\begin{aligned} \langle f,\psi _{a,y}\rangle , \quad a > 0, \quad y \in \mathbb {R}. \end{aligned}$$

Often in applications instead of dilating by all possible \(a > 0\) and translating by all possible \(y \in \mathbb {R}\), one dilates by \(2^n\) for \(n \in \mathbb {Z}\) and shifts by \(k \in \mathbb {Z}\); however, for our purposes, we gain more information by allowing more dilations and translations. Furthermore, since we will always use \(\psi\) which are centered at the origin, the parameter y tells one where—regardless of the value of \(a - \psi _{a,y}\) is centered, namely at y.

We shall use a special type of \(\psi\) called a complex wavelet. A complex wavelet is formed as

$$\begin{aligned} \psi ^{(c)} = \psi ^{(e)} + i \psi ^{(o)}, \end{aligned}$$

where \(\psi ^{(e)}\) and \(\psi ^{(o)}\) are both real-valued, \(\psi ^{(e)}\) is even-symmetric (that is, \(\psi ^{(e)}(-x) = \psi ^{(e)}(x)\) for all \(x \in \mathbb {R}\)), \(\psi ^{(o)}\) is odd-symmetric (that is, \(\psi ^{(o)}(-x) = -\psi ^{(o)}(x)\) for all \(x \in \mathbb {R}\)), and \(\psi ^{(e)}\) and \(\psi ^{(o)}\) have a particular relationship to each other (Kingsbury 1999; Selesnick 2001; Selesnick and Abdelnour 2004). In Fig. 2, one can see examples of \(\psi ^{(e)}\) (a) and \(\psi ^{(o)}\) (c), as well as the model for a one-dimensional edge (d) that we shall use as a motivating example. We shall call \(\langle f,\psi _{a,y}^{(e)}\rangle\) the even-symmetric coefficients and \(\langle f,\psi _{a,y}^{(o)}\rangle\) the odd-symmetric coefficients. The underlying idea of wavelet-based phase congruency is that when the wavelets \(\psi ^{(e)}_{a,y}\) and \(\psi ^{(o)}_{a,y}\) are properly normalized and there is an idealized edge in a function f at position y, \(\langle f,\psi _{a,y}^{(e)}\rangle = 0\) for all \(a > 0\) and \(\langle f,\psi _{a,y}^{(o)}\rangle\) is constant and nonzero for all \(a> 0\). This can be seen in Fig. 3. Figure 3a shows three dilations of \(\psi ^{(e)}\) centered on the edge, while Fig. 3b shows the values of the inner product of f with shifted versions of the three dilations of \(\psi ^{(e)}\). In particular, notice that when each of the dilated wavelets is centered on the edge, their inner product with f is zero. As the dilated wavelets are shifted away from the edge, the inner product increases or decreases rapidly away from zero. On the other hand, if we consider dilated and shifted odd-symmetric wavelets as in Fig. 3c, we can see in Fig. 3d that their inner product with f reaches a maximum, in fact the same maximum, when they are centered on the edge. As they are shifted away from the edge, the value of the inner product drops rapidly from that maximum. Of course, in real data, edges are not usually so sharp and are corrupted by noise. However, it is still true that for \(a>0\), \(\langle f,\psi _{a,y}^{(e)}\rangle\) is close to zero if f has an edge at y and \(\langle f,\psi _{a,y}^{(o)}\rangle\) is both “large” relative to nearby values of y and approximately equal across different values of a. We use these three properties to define a measure between 0 and 1 of—in some sense—the likelihood that a pixel is part of an edge.

Fig. 2
figure 2

a The so-called Mexican hat wavelet, an even-symmetric real-valued wavelet \(\psi ^{(e)}\). b Various shifts and dilations of the Mexican hat wavelet. \(\psi ^{(e)} = \psi _{1,0}^{(e)}\) is in black, \(\psi _{1/2,0}^{(e)}\) in dark red, \(\psi _{2,2}^{(e)}\) in blue, and \(\psi _{1/4,-2}^{(e)}\) in light green. c The odd-symmetric wavelet \(\psi ^{(o)}\) paired with the Mexican hat wavelet. d An idealized edge in one dimension

Fig. 3
figure 3

a \(\psi _{a,0}^{(e)}\), dilations of the even-symmetric wavelet centered on the edge. b A graph of the wavelet coefficients of the differently dilated even-symmetric wavelets at different positions. The horizontal axis is the shift y and the vertical axis is the value of \(\langle f,\psi _{a,y}^{(e)}\rangle\). c \(\psi _{a,0}^{(o)}\), dilations of the odd-symmetric wavelet centered on the edge. d A graph of the wavelet coefficients of the differently dilated odd-symmetric wavelets at different positions. The horizontal axis is the shift y and the vertical axis is the value of \(\langle f,\psi _{a,y}^{(o)}\rangle\)

Definition 2.1

Given a pair of even-symmetric and odd-symmetric wavelets \(\psi ^{(e)}\) and \(\psi ^{(o)}\) which satisfy certain hypotheses (in particular, a normalized version of the wavelets in Fig. 2a, c work), we choose a set of J positive dilations \(\{a_j\}_{j \in \{1, 2, \ldots , J\}}\) and a very small \(\epsilon > 0\). Then we define for a 1D signal \(f: \mathbb {R}\rightarrow \mathbb {C}\)

$$\begin{aligned} \tilde{E}(y) = \frac{\left| \sum _{j=1}^J \langle f,\psi _{a_j,y}^{(o)}\rangle \right| -\sum _{j=1}^J \left| \langle f,\psi _{a_j,y}^{(e)}\rangle \right| }{J \cdot \max _{j \in \{1,2,\ldots ,J\}} \left| \langle f,\psi _{a_j,y}^{(o)}\rangle \right| +\epsilon } \end{aligned}$$

and

$$\begin{aligned} E(y) = \max \{\tilde{E}(y),0\}. \end{aligned}$$
(2)

E is a function of y, the location, which yields a value between 0 and 1 showing likelihood that there is an edge at y. Considering an idealized edge as in Fig. 2d, we can see from Fig. 3b, d that when y is the location of the jump, regardless of which \(a_j\) are chosen, \(\langle f,\psi _{a_j,y}^{(e)}\rangle\) are all 0 and each \(\langle f,\psi _{a_j,y}^{(o)}\rangle\) is equal, hence

$$\begin{aligned} \frac{\sum _j \langle f,\psi _{a_j,y}^{(o)}\rangle -\sum _j \langle f,\psi _{a_j,y}^{(e)}\rangle }{J \cdot \max _{j } \langle f,\psi _{a_j,y}^{(o)}\rangle } = \frac{{\sum _j \langle f,\psi _{a_j,y}^{(o)}\rangle }}{J \cdot \max _{j} \langle f,\psi _{a_j,y}^{(o)}\rangle } = 1. \end{aligned}$$

The absolute values are important because the edge may be a “negative edge”; that is, the edge to be detected looks like the mirror image of Fig. 2d. The epsilon is added to prevent division by zero. Note that when y is on an edge, the odd-symmetric coefficients are large and equal and the even-symmetric coefficients are zero. So as long as \(\epsilon\) is small, E(y) is still basically 1. If the even-symmetric coefficients are larger than the odd-symmetric coefficients, resulting in a negative \(\tilde{E}(y)\), then there is essentially no chance that there is an edge located at y. Thus we simply set the value to be 0 as in Eq. 2.

In order to get a ridge measure, one notes that when the wavelets are centered on a ridge (Fig. 1b) at y, across scales \(a>0\), each \(\langle f,\psi _{a,y}^{(e)}\rangle\) is large, while \(\langle f,\psi _{a,y}^{(o)}\rangle\) is close to zero. So basically, one more-or-less switches the roles of \(\psi _{a,y}^{(e)}\) and \(\psi _{a,y}^{(o)}\) in the above definition to get a ridge measure. This trick leads to a measure that truly picks up the structure of ridges, which is something gradient-based edge detectors by construction fail to do. Gradient-based detectors like Canny can only pick up the boundary edges of a ridge rather than the ridge itself, as shown in Fig. 4.

Fig. 4
figure 4

a A small portion of the image processed in Fig. 13. b Ridges detected by CoShREM. c Results of the Canny edge detector. The figure illustrates that gradient-based methods such as the Canny edge detector can only detect the boundary curves of ridges but fail to recognize ridges as coherent structures

This edge measure works quite well in one dimension, but we are of course interested in finding the edges of two-dimensional images. We want to generate a system by manipulating a function \(\psi :\mathbb {R}^2 \rightarrow \mathbb {C}\) that is wavelet-like. While it is possible to consider the most obvious generalization of Eq. 1 to two dimensions

$$\begin{aligned} \{ \psi _{a,y}(x) := \psi ( a(x - y)){:}\,a > 0,\quad y \in \mathbb {R}^2\}, \end{aligned}$$
(3)

such systems do not handle curvilinear structures well due to their isotropic nature. That is to say, when dilating by a to get \(\psi _{a,y}\), the function is stretched the same in each direction, so angled edges cannot be picked up very well. A number of systems like curvelets (Candès and Donoho 2004), ridgelets (Candès and Guo 2002), contourlets (Do and Vetterli 2003), bandlets (Pennec and Mallat 2005), wedgelets (Donoho 1999), and shearlets (Guo et al. 2006; Kutyniok and Labate 2009; Kutyniok et al. 2005) have been created over the last decade or so in an attempt to construct wavelet-like systems that give more geometric (directional) information in higher dimensions than wavelets can. The basic idea is to replace a scaling factor \(a>0\) with an anisotropic scaling matrix

$$\begin{aligned} A_a^\alpha = \left( \begin{array}{ll} a\quad & 0 \\ 0 \quad & a^\alpha \end{array} \right) , \end{aligned}$$

which treats the two dimensions differently and whose degree of anisotropy can be controlled via the parameter \(\alpha \in [0,1]\) [for more information on so-called \(\alpha\)-molecules, see Grohs et al. (2016)]. Naturally, anisotropic scaling requires the introduction of a third degree of freedom besides scaling and translating, namely a means to change the preferred orientation of an anisotropic two-dimensional function. The first idea which comes to mind is to add in rotations, that is to consider systems of the form

$$\begin{aligned} \left\{ \psi _{a,\theta ,y}(x) := \psi ( R_\theta A_{a}^\alpha (x - y)): a > 0, y \in \mathbb {R}^2, \theta \in [0,2\pi )\right\} , \end{aligned}$$

where the matrix \(R_\theta\) rotates the input by \(\theta\) degrees. However, rotations are not easy to implement digitally, so instead, we apply shearing. Namely,

$$\begin{aligned} \left\{ \psi _{a,s,y}(x) := \psi (S_sA_{a}^\alpha (x - y)): y \in \mathbb {R}^2, a >0, s \in \mathbb {R}\right\} , \end{aligned}$$
(4)

where \(\alpha \in [0,1]\) and the shearing matrix is defined as

$$\begin{aligned} S_s = \left( \begin{array}{ll} 1 \quad& s \\ 0 \quad& 1 \end{array} \right) . \end{aligned}$$

When we defined a wavelet system in Eq. 1, \(\psi _{a,y}\) meant that we had taken the generating function \(\psi : \mathbb {R}\rightarrow \mathbb {C}\), dilated it by \(a > 0\) and then translated it by \(y \in \mathbb {R}\). For the shearlet system defined in Eq. 4, we start with a function \(\psi : \mathbb {R}^2 \rightarrow \mathbb {C}\) and fix the parameter of anisotropy \(\alpha\). Then \(\psi _{a,s,y}\) is \(\psi\) which has been sheared by parameter \(s \in \mathbb {R}\) (similar to rotation), anisotropically dilated by the matrix \(A_a^\alpha\), and then translated by \(y \in \mathbb {R}^2\). Thus in both systems, y indicates location and a scale. In the shearlet system, one also gets directional information from s.

In the left-hand (a) and middle (b) images of Fig. 5, the difference between systems stemming from Eq. 3 and systems generated from Eq. 4 is depicted via the respective essential frequency supports of their elements. Note that the latter yields a polar-like decomposition. The system used in what follows is formed by gluing together two systems of the form in Eq. 4 generated by an even-symmetric and real-valued \(\psi ^{\text {(e)}}\), one oriented horizontally and one oriented vertically (see the right-hand (c) image of Fig. 5) and then taking the even- and odd-symmetric pair formed from the Hilbert transform. Then at each point, essentially a one-dimensional edge (resp., ridge) measure is calculated in the direction with the largest odd-symmetric (resp., even-symmetric) coefficient. More details may be found in King et al. (2015).

Fig. 5
figure 5

Tiling of the frequency domain generated by the essential frequency support of a a wavelet system in the form of Eq. 3 [Meyer MRA], b a shearlet system in the form of Eq. 4, and c a shearlet system with the form we use [cone-adapted]. Source: Gitta Kutyniok and Martin Genzel, TU Berlin

There is another shearlet-based edge detector, which was introduced in Yi et al. (2009). Their approach may be seen as a generalization of Canny which uses shearlets. That is, they in some sense approximate the gradient of various smoothed versions of the image using a shearlet system. The shearlet system they use is generated from a single odd function \(\psi\) rather than a pair of even and odd functions \(\psi ^{(o)}\) and \(\psi ^{(e)}\) as in CoShREM. They search for which values of y give local maxima of \(\left| \langle f,\psi _{a,s,y}\rangle \right|\) for certain values of a and set those to be the initial guess of the edge locations. Then they use a sophisticated technique to decrease the number of false negatives and false positives. Since their method is built on a shearlet transform, they are also able to approximate the tangent direction of a detected edge. Our method leverages both even- and odd-symmetric shearlet coefficients, which distinguishes our approach from theirs and also allows us to detect ridges. Also, our implementation of the shearlet transform allows one to tune the anisotropy \(\alpha\) of the scaling matrix as well as employ a finer-grained (non-dyadic) range of dilations a, which is not part of Yi et al. (2009).

3 Results

3.1 Edge detection on mock data

We first demonstrate the applicability of CoShREM by processing a grayscale mock image containing structures typically occurring in experimentally obtained flame data which has been corrupted in various ways. Figure 6 contains the visual results of CoShREM being applied in one such experiment. Figure 6a shows the mock image after corruption by Gaussian blur (\(\sigma _{\text {blur}} = 1.0\)) and additive Gaussian white noise (\(\sigma _{\text {noise}} = 50\)). Alongside the original (Fig. 6b) and thresholded, thinned (Fig. 6c) values of the complex shearlet-based edge measure, estimates of the local tangent orientation and the local curvature are plotted in Fig. 6d–g.

Fig. 6
figure 6

Detection and analysis of edges in a noisy mock image with CoShREM. a Mock image perturbed with Gaussian blur (\(\sigma _{\text {blur}} = 1.0\)) and additive Gaussian white noise (\(\sigma _{\text {noise}} = 50\)). b Pixels colored in dark red correspond to a high value of the complex shearlet-based edge measure. For illustrative purposes, a brightened version of the processed image is shown in the background. c The dark red lines are obtained from thresholding and thinning the output of the shearlet-based edge measure, depicted in the previous image. d Color-coded estimates of the local tangent orientation, where light blue indicates a perfectly horizontal and dark red represents a perfectly vertical orientation. e Color-coded estimates of the local curvature, where light blue denotes zero curvature and dark red indicates a curvature greater or equal than \(5^{\circ }\). f Enlarged section of local tangent orientation estimates. g Enlarged section of the local curvature estimates

In the experiments, we compare the newly proposed measure to a number of established methods such as the Canny edge detector (Canny 1986), the Sobel edge detector (Sobel and Feldman 1968), and the phase congruency measure (Kovesi 1999, 2000) as well as another shearlet-based edge detector developed by Yi et al. (2009). This comparison is made visually but also numerically by computing Pratt’s figure of merit (PFOM) (Abdou and Pratt 1979) on the obtained results.Footnote 1 To put an emphasis on testing the stability of CoShREM, two different types of experiments were performed on the mock image. First, in line with traditional image processing literature, the image analyzed in Fig. 6 was perturbed by four levels of Gaussian blur (i.e., convolution with a Gaussian filter kernel) and five levels of additive Gaussian white noise for a total of 20 different levels of corruption before CoShREM and other edge detection algorithms were applied. Second, there are a number of different sources of noise (electronic noise, photon noise/shot noise; readout noise, etc) in combustion diagnostics, and their accumulated effect on the image depends on the camera model, the laser source, the flame condition, the imaging optics, etc. (Pfadler et al. 2006; Frank et al. 2005; Seitzman et al. 1994; McMillin et al. 1993). Therefore, the assumption of an overall Gaussian noise distribution is reasonable. However, for completeness we have run a comparison of the edge detection algorithms on the mock data which has been corrupted by five different levels of additive Gaussian noise and then Poisson/shot noise. For each of these test images, the parameters configuring the various edge detection algorithms remained fixed. However, for each method, the set of parameters was chosen such that both visually and with respect to the PFOM metric, the maximal error was minimized across all levels of noise. To highlight the importance of carefully choosing fitting parameters for each edge detector, the Canny edge detector applied with its default parameters in MATLAB was also included in the comparison.

In the case of the Canny and the Sobel edge detectors, the implementations provided by the MATLAB Image Processing Toolbox (version 9.2) were applied. The software used to compute the phase congruency measure can be downloaded from Peter Kovesi’s homepage (Kovesi 2015) while an implementation of the other shearlet-based edge detector was kindly provided by the authors of Yi et al. (2009). For the latter, preprocessing with a Gaussian smoothing filter was added such that the algorithm could also handle more severe levels of noise.

All results of the success of the edge detection algorithms applied to the images corrupted by Gaussian blur and additive Gaussian noise with respect to the PFOM metric are compiled in Table 1 while detection results for all algorithms for the noisiest case are plotted in Fig. 7. The PFOM values of the different methods applied to the mock image perturbed by Gaussian noise followed by Poisson noise are given in Table 2. Under all noise and blurring regimes, CoShREM yields the best PFOM values.

While the Canny and Sobel edge detectors are based on approximations of the local gradients in horizontal and vertical directions, the three other methods considered apply analyzing elements associated with numerous orientations, thereby automatically yielding more or less refined estimates of the local tangent orientation. A visual comparison of the approximated local orientation and curvature of the edges in the distorted mock image from Fig. 6 is depicted in Fig. 8. Please note that the computation of the local tangent orientations differs in all three applied edge detectors. However, all curvature estimates were made by computing the central difference with respect to the local tangent orientation.

Table 1 Numerical comparison of CoShREM with five other edge detectors
Table 2 Numerical comparison of the stability under additional Poisson noise
Fig. 7
figure 7

Visual comparison of different edge detection algorithms. The processed image was perturbed with Gaussian blur (\(\sigma _{\text {blur}} = 1.5\)) and additive Gaussian white noise (\(\sigma _{\text {noise}} = 100\)). The displayed results were obtained from a CoShREM, b the Canny edge detector, c the Sobel edge detector, d the phase congruency measure, e Yi et al.’s shearlet edge detector, and f the Canny edge detector with its default configuration in MATLAB. The PFOM values corresponding to the results shown here can be found in the last column of Table 1. For illustrative purposes, brightened versions of the processed images are shown in the background

Fig. 8
figure 8

Visual comparison of tangent orientation and curvature estimates obtained from different algorithms. The processed image is the same as in Fig. 6 (\(\sigma _{\text {blur}} = 1.0\), \(\sigma _{\text {noise}} = 50\)). Light blue indicates a perfectly horizontal and dark red represents a perfectly vertical orientation in the first column while light blue denotes zero curvature and dark red indicates a curvature greater or equal than \(5^{\circ }\) in the middle column. The final column shows enlarged sections of the preceding images. ac Results obtained from CoShREM. df Results obtained from the phase congruency measure. gi Results obtained from Yi et al.’s shearlet edge detector

3.2 Ridge detection on mock data

Just as in the edge detection case, we demonstrate the applicability of the complex shearlet-based ridge measure by processing a distorted grayscale mock image (see Fig. 9).

Fig. 9
figure 9

Detection and analysis of ridges in a noisy mock image with CoShREM. a Mock image perturbed with Gaussian blur (\(\sigma _{\text {blur}} = 1.0\)) and additive Gaussian white noise (\(\sigma _{\text {noise}} = 50\)). b Pixels colored in dark red correspond to a high value of the complex shearlet-based ridge measure. For illustrative purposes, a brightened version of the processed image is shown in the background. c The red lines are obtained from thresholding and thinning the output of CoShREM, depicted in the previous image. d Color-coded estimates of the local tangent orientation, where light blue indicates a perfectly horizontal and dark red represents a perfectly vertical orientation. e Color-coded estimates of the local curvature, where light blue denotes zero curvature and dark red indicates a curvature greater or equal than \(5^{\circ }\). f Enlarged section of local tangent orientation estimates. g Enlarged section of the local curvature estimates

Out of the five algorithms considered in Sect. 3.1 only CoShREM and the phase congruency measure are capable of detecting ridges as coherent structures (see Fig. 4). To the other methods, a ridge just looks like a thin homogeneous region bounded by two edges. Hence, instead of a single ridge, two edges would be detected. This behavior is highly unfeasible for the detection of flame fronts as these edges will get increasingly weak and hidden by noise as ridges get thinner. Furthermore, merging two detected edges to calculate the location of a single ridge would require an additional post-processing step that again is non-trivial and could also destroy finer structure.

Again, the robustness of CoShREM is subjected to a detailed analysis by processing a total of 20 differently distorted mock images with a fixed set of parameters. This time however, for the aforementioned reasons, only the phase congruency measure is included in this analysis, which again is based on a visual comparison and a numerical comparison via the PFOM metric. The numerical results are summarized in Table 3. A visual comparison of the detection results of the complex shearlet-based measure and the phase congruency measure for three differently perturbed test images is provided in Fig. 10.

Finally, a visual comparison of the tangent orientation and curvature estimates obtained from the complex shearlet-based ridge measure and the phase congruency measure for the distorted mock image from Fig. 9 can be found in Fig. 11.

Table 3 Numerical comparison of CoShREM and the phase congruency-based ridge detector
Fig. 10
figure 10

Visual comparison of CoShREM (ac) and the phase congruency-based ridge detector (df). The PFOM values corresponding to the results shown here can be found in the first (\(\sigma _{\text {blur}} = 0\), \(\sigma _{\text {noise}} = 0\)), thirteenth (\(\sigma _{\text {blur}} = 1.0\), \(\sigma _{\text {noise}} = 50\)), and last (\(\sigma _{\text {blur}} = 1.5\), \(\sigma _{\text {noise}} = 100\)) column of Table 3. For illustrative purposes, brightened versions of the processed images are shown in the background

Fig. 11
figure 11

Visual comparison of tangent orientation and curvature estimates obtained from CoShREM (ac) and the phase congruency measure (df). The processed image is the same as in Fig. 9 (\(\sigma _{\text {blur}} = 1.0\), \(\sigma _{\text {noise}} = 50\)). Light blue indicates a perfectly horizontal and dark red represents a perfectly vertical orientation in the first column while light blue denotes zero curvature and dark red indicates a curvature greater or equal than \(5^{\circ }\) in the middle column. The final column shows enlarged sections of the preceding images

3.3 Edge and ridge detection on PLIF images

We conclude Sect. 3 with two real-world applications of CoShREM. For this purpose, we reuse images recorded in simultaneous single-shot CH/OH PLIF experiments of a turbulent jet flame. A description of the experimental conditions as well as an analysis of the images can be found in a previous article (Kiefer et al. 2008), where the burner and the diagnostic setup as well as the two images are discussed from a combustion point of view in detail. In Fig. 12, detected flame front locations, local tangent orientations, and local curvature in a PLIF recording of long-lived OH radicals are shown. Figure 13 depicts detected flame front locations, local tangent orientations, and local curvature in a PLIF recording of short-lived CH radicals. It can be seen that the flame front is picked up reliably in both cases.

Fig. 12
figure 12

Detection and analysis of flame fronts with CoShREM. a PLIF visualization of long-lived OH radicals. b Pixels colored in dark red correspond to a high value of CoShREM. For illustrative purposes, a brightened version of the processed image is shown in the background. c The red lines are obtained from thresholding and thinning the output of CoShREM, depicted in the previous image. d Color-coded estimates of the local tangent orientation, where light blue indicates a perfectly horizontal and dark red represents a perfectly vertical orientation. e Color-coded estimates of the local curvature, where light blue denotes zero curvature and dark red indicates a curvature greater or equal than \(15^{\circ }\). The second row depicts enlarged sections of the images shown in the top row

Fig. 13
figure 13

Detection and analysis of flame fronts with CoShREM. a PLIF visualization of short-lived CH radicals. b Pixels colored in dark red correspond to a high value of CoShREM. For illustrative purposes, a brightened version of the processed image is shown in the background. c The red lines are obtained from thresholding and thinning the output of CoShREM, depicted in the previous image. d Color-coded estimates of the local tangent orientation, where light blue indicates a perfectly horizontal and dark red represents a perfectly vertical orientation. e Color-coded estimates of the local curvature, where light blue denotes zero curvature and dark red indicates a curvature greater or equal than \(15^{\circ }\). The second row depicts enlarged sections of the images shown in the top row

4 Conclusion and outlook

A novel edge and ridge detection technique for the automated extraction of flame fronts in recordings obtained from imaging techniques such as PLIF or LRS was introduced. Both in the edge and the ridge detection case this method is based on complex-valued anisotropic analyzing elements—so-called complex shearlets—and exploits the special scale-independent behavior of the real and imaginary parts of the coefficients associated with these elements at the locations of edges and ridges. Furthermore, the newly proposed CoShREM yields estimates of the local tangent orientations as well as the local curvatures at the locations of edges and ridges. This new method was also honestly compared to the state of the art. That is, the authors attempted to optimize the success of the competing methods which were tested.

Detection results on PLIF recordings of OH and CH radicals suggest the applicability of the measures proposed in this paper for real-world data. In addition, numerical experiments on mock images distorted by Gaussian blur and additive Gaussian white noise or Gaussian white noise followed by Poisson noise indicate that the performance of CoShREM is at least visually similar to already established methods such as the properly parameterized Canny edge detector or the phase congruency measure. However, it should be highlighted at this point that for certain applications requiring edge but not ridge detection, all needs might be satisfied by using the well-known Canny edge detector or the shearlet-based edge detector more recently proposed by Yi et al. While the former, when given the correct parameters, seems to provide very stable and precise detection results in the presence of noise, the latter also yields approximations of the local tangent orientation and curvature, although not as fine-tuned as our method.

The arguably most important feature of CoShREM is that it offers a unified approach to edge and ridge detection while naturally yielding approximations of the local tangent orientations, which can then be used for an effortless computation of local curvature estimates. It hence provides a self-contained package capable of computing many things that might be of interest in the computer-assisted evaluation of experimental data from planar combustion diagnostics. While the current implementation of CoShREM is at least partially outperforming many well-established methods, there is room for future improvement given the relative novelty of the approach.

As it is the case with many edge detectors, CoShREM sometimes has difficulties precisely locating corners and intersections, especially when the parameters are chosen in the expectancy of severe distortions. Concerning approximations of the local curvature, there seems to be an imbalance between the curvature detected in the vicinity of corners formed by one vertical and one horizontal edge and the curvature detected around meeting points of two diagonal edges (see, e.g., Fig. 8). Furthermore, the curvature patterns in Figs. 8 and 11 both show small oscillations—especially on the detected circles—that are clearly not present in the analyzed image. However, it seems to be likely that both these issues can be overcome by refining the approximations of the local tangent orientations.

The CoShREM-based analysis of the PLIF recording of long-lived OH radicals depicted in Fig. 12 took roughly 9.5 s on a 3.60 GHz Intel Core i7-4790 CPU, where 6.5 s were required for constructing a set of analyzing complex-valued shearlets that can be stored and reused for processing images of the same size. While this seems to be fast enough to put the algorithm to use in most practical situations, it should be noted that processing one image of similar size with the Canny edge detector, Yi et al.’s shearlet-based edge detector or the phase congruency measure only took about 1 s on the same machine.

The current implementation of CoShREM requires the user to set a total of ten different parameters, where six parameters are needed to define a system of complex-valued shearlets and four parameters configure the actual edge or ridge detection. Especially in comparison with the Canny edge detector and the shearlet-based edge detector introduced by Yi et al., which do not require more than three parameters in the implementations used for this work, this is a lot. However, all of the parameters used in the paper for all of the methods (not just CoShREM) as well as a discussion on how to choose the proper parameters for CoShREM may be found on http://www.math.uni-bremen.de/cda. Furthermore, we would also like to emphasize again that when testing our method on the mock data, we used the same parameters across all noise levels. In particular, the parameters remained the same whether or not the mock image was corrupted by Poisson noise. Also, since CoShREM is implemented with a GUI, it is very easy to modify the parameters. Finally, it seems reasonable that all ten parameters currently required might be derived from a set of only two to three parameters, specifying the expected degree of distortions, the scale of the structures that are to be detected and the expected smoothness of their boundary curves.

Besides the possible improvements outlined in the preceding paragraphs, there is a straightforward generalization of CoShREM to 3D via the three-dimensional shearlet transform (Kutyniok et al. 2012, 2016; Negi and Labate 2012). While computationally demanding, such a generalization could again significantly improve the detection of flame fronts in high-frequency videos or 3D snapshots of combustion processes.

A Matlab toolbox implementing CoShREM—including a GUI—as well as scripts reproducing all results shown in the figures and tables of Sect. 3 can be downloaded from http://www.math.uni-bremen.de/cda. A video of detected flame fronts is also hosted on the site.