Two‐dimensional DFT with sliding and hopping windows for edge map generation of road images

IET Image ProcessingVolume 16, Issue 4 p. 972-984 ORIGINAL RESEARCH PAPEROpen Access Two-dimensional DFT with sliding and hopping windows for edge map generation of road images Amit Kr. Vishwakarma, Amit Kr. Vishwakarma Department of Electrical Engineering, Indian Institute of Technology Roorkee, Roorkee, Uttarakhand, 247 667 IndiaSearch for more papers by this authorN. Sukumar, N. Sukumar Department of Electrical Engineering, Indian Institute of Technology Roorkee, Roorkee, Uttarakhand, 247 667 IndiaSearch for more papers by this authorP. Sumathi, Corresponding Author P. Sumathi [email protected] Department of Electrical Engineering, Indian Institute of Technology Roorkee, Roorkee, Uttarakhand, 247 667 India Correspondence P. Sumathi, Department of Electrical Engineering, Indian Institute of Technology Roorkee, Roorkee, Uttarakhand 247 667, India. Email: [email protected]Search for more papers by this author Amit Kr. Vishwakarma, Amit Kr. Vishwakarma Department of Electrical Engineering, Indian Institute of Technology Roorkee, Roorkee, Uttarakhand, 247 667 IndiaSearch for more papers by this authorN. Sukumar, N. Sukumar Department of Electrical Engineering, Indian Institute of Technology Roorkee, Roorkee, Uttarakhand, 247 667 IndiaSearch for more papers by this authorP. Sumathi, Corresponding Author P. Sumathi [email protected] Department of Electrical Engineering, Indian Institute of Technology Roorkee, Roorkee, Uttarakhand, 247 667 India Correspondence P. Sumathi, Department of Electrical Engineering, Indian Institute of Technology Roorkee, Roorkee, Uttarakhand 247 667, India. Email: [email protected]Search for more papers by this author First published: 08 March 2021 https://doi.org/10.1049/ipr2.12168AboutSectionsPDF ToolsRequest permissionExport citationAdd to favoritesTrack citation ShareShare Give accessShare full text accessShare full-text accessPlease review our Terms and Conditions of Use and check box below to share full-text version of article.I have read and accept the Wiley Online Library Terms and Conditions of UseShareable LinkUse the link below to share a full-text version of this article with your friends and colleagues. Learn more.Copy URL Abstract An edge map generation technique based on two-dimensional discrete Fourier transform with sliding and hopping windows is proposed for road images to detect the lanes and road markings. A 2 × $\times$ 2 sliding/hopping window DFT with bin indices ( k 1 , k 2 = 0 , 1 $k_1, k_2 = 0,1$ ) for horizontal edge detection and ( k 1 , k 2 = 1 , 0 $k_1, k_2 = 1,0$ ) for vertical edge detection has been proposed. The 2-D SDFT/HDFT-based edge detector has been proved to be more efficient for lane and road marking images in comparison with conventional edge detectors and cellular neural network based edge detectors. In the presence of noise and various signal to noise ratio conditions, the horizontal and vertical edges have been efficiently recovered with good Pratt figure of merit without applying any pre-processing, noise removal process, and post processing techniques. The PFOM was found to be quite stable with wide threshold range for various noise levels. The consistent performance of the proposed edge detector is proved with MSE and PSNR determination of detected edge images. Moreover, the proposed 2-D SDFT/HDFT-based edge detector performs well in developing edge maps for real-time road videos. The system-on-chip implementation of the 2-D SDFT/HDFT edge detector on Cyclone IV FPGA chip is also carried out for detecting the lane and road markings. 1 INTRODUCTION Vision based measurement (VBM) is being proposed and used in various automated applications such as advanced driver assistance systems (ADAS) and intelligent transportation systems [1, 4]. Camera-based vehicle instrumentation is becoming popular to analyze the intentions and state of a driver, and detect potential driver errors to significantly reduce car accidents [2]. The ADAS integrates a number of different functions such as lane change assist, forward and rear collision warning, park assist, and blind spot detection [3]. Edge detection is an important process for the lane position detection, tracking systems, advanced driver assistant systems, and intelligent transportation systems [4]. Lane detection is a two-step process, in which the first step is detecting the lanes and then fit to the parametric curve. The challenges involved in vision-based lane detection include the lack of clarity of lane markings, light reflections, illumination, shadows, poor visibility due to bad weather conditions and high noise levels. Due to the aforementioned conditions, the lane detection algorithms fail to distinguish lane lines from the road in an image [5]. This research work focuses on the first step to detect the lanes through developing edge maps. The performance of the lane detection process depends on the successful edge characterization on the road images. An edge in an image connects the boundary between two different regions. Edge provides sufficient information with reduced data size which is suitable for the image analysis for most of the applications. The image intensity shows abrupt changes at edges and the magnitude of derivative of the image intensity function is high at the location of edges [6]. A number of methods for edge detection involving different approaches could be found in literature. These are (i) statistical methods, (ii) difference methods, and (iii) curve fitting [6]. The conventional edge detectors such as Sobel [7], Canny [8], and Prewitt [9] are popular and employed for feature extraction of lane and road marking images. The classical methods such as Sobel and Prewitt detectors use the first directional derivative to determine the edges [6]. However, images with strong noise cannot be handled by classical edge detectors. In [10], the fuzzy reasoning-based algorithm of the Fuzzy Sobel method is introduced which automatically obtains four threshold values, and applies fuzzy reasoning for edge enhancement. The edges extracted by this method are very clear and provides better representation for image edges and object contours. An improvement is proposed in Sobel edge detector with soft-threshold wavelet technique [11] for the removal of noise. The problems encountered in FPGA implementation of Sobel algorithm has been solved and improved through gradient calculation template with increased processing speed [12]. The zero-crossing edge detectors of another category use the second derivative along with Laplacian operator. A Laplacian of Gaussian filter is used as an edge detector for texture analysis of glass production [13]. LoG method computes the second derivative in the image and then find zero-crossing points. Since the second derivative of the image is used for edge detection, this filter is very sensitive to noise. To overcome this problem, firstly the noise should be reduced by applying Gaussian smooth filter and then Laplacian filter must be implemented to the image. The Canny detector is a Gaussian edge detector, is one of the most popular edge detectors in the literature and it has been widely used in many applications. Although the Gaussian detectors exhibit relatively better performance, they are computationally much more complex than classical derivative based edge detectors [6]. An improvement in Canny edge detection algorithm [14] is proposed towards improving the sensitivity of noise and loss of weak edge information. The concept of gravitational field intensity was introduced to replace image gradient. Two adaptive threshold selection methods based on the mean standard deviation of image gradient were used to enhance the noise suppression. A robust edge detection algorithm using multiple threshold approach (B-Edge) is proposed [15] to cover limitations of edge connectivity and thickness. The widely used Canny edge operator uses two thresholds and still witnesses a few gaps for optimal results. To handle the loopholes of the Canny edge operator, this algorithm uses the simulated triple thresholds that target the prime issues of the edge detection such as image contrast, effective edge pixels selection, errors handling, and similarity to the ground truth. Apart from the conventional edge detectors, the Hough transform is a much applied algorithm in lane detection and tracking systems. The computationally efficient hierarchical additive Hough transform is proposed for detecting only the straight lanes [16]. An efficient method for reliably detecting road lanes based on spatio-temporal images is proposed using Hough transform [17]. The cellular neural network (CNN) is a novel class of information processing system which was proposed in [18]. Its two-dimensional inputs and output make it suitable for image processing [19]. The edge detection based on CNN is proposed in [6] with differential evolution algorithm to obtain edges of digital images. A template learning set-up has been proposed and resultant cloning template detects the edges; however, the noisy images are not considered for edge detection. Another edge detection method based CNN is proposed in [20] for noisy images. The edge detection is carried out with two steps; in the first step, noise is removed with a set of CNN cloning templates and in the second step, the resultant noise removed images are given as inputs to the CNN with another set of cloning templates. Moreover, the improved results of edge detection is shown with salt and pepper noise of different levels. The Gaussian noise is not considered for the evaluation. A CNN-based noise removal technique for color images have been proposed with hybrid linear matrix inequality and swarm optimization procedure [21]. The cloning templates were designed for salt and pepper noise, speckle noise, and Gaussian noise, and noise removal has been evaluated for color images. These templates can be used to remove the noise efficiently. However, for edge detection, an another set of templates need to be designed. A bias feed CNN model has been proposed for glass defect detection in [22]. Bias input is a single number value in traditional CNN algorithm which is converted into a bias template and used to balance the brightness level of the image. Through the contribution from bias input, background reflections and negative effects arising from transparency are decreased. These cloning templates are obtained through particle swarm optimization. Generally, for the CNN models, there are three major template design methods used. They are: (i) intuitive way, (ii) template learning, and (iii) direct template derivation. The first requires intuitive thinking of the designer. It leads to quick results in simple cases; however, it does not guarantee to obtain the desired template. Moreover, designers need to conduct lots of experiments in both image processing and array dynamics. The second design method, the template learning, is extensively studied and a popular field of the CNN research. Almost all classical neural network training methods have been applied to the CNN structure. The third method can be applied when the desired function is exactly determined. The design methods depend on the particular template class [23]. In general, the edge detection is performed as a linear filtering process which convolves the image pixel and kernel. In 1D sense, discrete Fourier transform (DFT) is a linear filter that performs the correlation between signal samples and basis function to extract the fundamental signal and harmonics. The 1D sliding DFT is computationally efficient as tuned filter to extract the particular fundamental and harmonic of interest from the input signal [24, 25]. Moreover, the instantaneous values of fundamental and harmonic can be extracted from the filter operation [26]. In 2D, similar to classical edge detectors, the 2D sliding DFT performs correlation between image pixel and kernel, in which correlation is the convolution of image pixel and 180 ∘ $^\circ$ rotated kernel [27]. The 2D SDFT can be tuned to extract only edge frequencies from the image and reject all other frequencies including high noise levels. The pre-processing and post-processing can be completely eliminated through the 2D Sliding DFT/Hopping DFT edge detector, since the sliding DFT is a tuned 2D filter which can sharply tuned to extract the edges. The existing edge detectors requires pre-processing like Gaussian filtering in Canny and post-processing such as thinning in Canny, Sobel and Prewitt edge detectors. The CNN requires noise removal process as a separate process before edge detection. Moreover, it involves the difficult process of designing the cloning templates for a particular application. The performance of the edge detectors in the presence of noise is poor for the traditional edge detectors. Hence, the existing edge detectors necessitates the following: (i) pre-processing, (ii) filtering, (iii) noise removal, (iv) post-processing, (v) high computational complexity, (vi) more resource utilization. To this end, an edge detector is proposed based on 2D SDFT/ HDFT and applied for road marking images in order to create an edge map. These edge maps can be employed in lane detection, tracking systems, and driver assistant systems. The proposed edge map generation method performs well for the road images. The performance is also verified for the known ground truth images corrupted with noise. The proposed method yields consistent performance for the noisy images with good PFOM, MSE, and PSNR. The SDFT based edge detector yields medium entropy for the detected edges compared to studied edge detectors. This paper is organized as follows: The proposed edge detection technique based on 2D SDFT/HDFT is described in Section 2. The performance evaluation and comparison of the proposed method with existing well-known edge-detectors and CNN-based edge detectors are discussed in Section 3. The FPGA implementation of the proposed edge detector is also presented in Section 3. Some important remarks are given in Section 4. 2 PROPOSED EDGE DETECTION TECHNIQUE The block diagram representation of proposed edge detection methodology is shown in Figure 1. As a first step in edge detection, the 2D SDFT is performed on input image with 2 × $\times$ 2 window as shown in Figure 2. FIGURE 1Open in figure viewerPowerPoint Block diagram representation of the proposed edge detection methodology FIGURE 2Open in figure viewerPowerPoint Graphical representation of 2 × $\times$ 2 window 2D sliding DFT The two-dimensional DFT is determined on a fixed-size window of pixels N × N $N \times N$ , which is regularly updated with new pixels and the oldest ones are discarded. Consider the N × N $N \times N$ window is moved in the horizontal direction on the image row by row. The ( x , y ) t h $(x,y)^{th}$ pixel of an input image is represented by f ( x , y ) $f(x,y)$ and ( k 1 , k 2 ) t h $(k_1,k_2)^{th}$ bin of the N × N $N \times N$ DFT at pixel position ( x , y ) $(x,y)$ is F x , y ( k 1 , k 2 ) $F_{x,y}(k_1,k_2)$ [28], which is represented by F x , y ( k 1 , k 2 ) = ∑ m = 0 N − 1 ∑ n = 0 N − 1 f x ̂ + m , y ̂ + n W N − k 1 m W N − k 2 n , \begin{eqnarray} F_{x,y}(k_1,k_2)=\sum \limits _{m=0}^{N-1}\sum \limits _{n=0}^{N-1}f_{\hat{x}+m,\hat{y}+n}W_{N}^{- {k_1 {m}}}W_{N}^{-k_2n} ,\end{eqnarray} (1)where x ̂ = x − N + 1 $\hat{x} = x -N+1$ , y ̂ = y − N + 1 $ \hat{y} = y-N+1$ , W N = e j 2 π / N $W_N = e^{j2\pi /N}$ , and k 1 , k 2 = 0 , 1 , . . . , N − 1 $k_1, k_2 = 0, 1, . . . , N-1$ . For the pixel ( x + 1 , y $x+1,y$ ), the 2D-DFT is represented as, F x + 1 , y ( k 1 , k 2 ) = ∑ m = 0 N − 1 ∑ n = 0 N − 1 f x ̂ + m + 1 , y ̂ + n W N − k 1 m W N − k 2 n . \begin{eqnarray} F_{x+1,y}(k_1,k_2)&=&\sum \limits _{m=0}^{N-1}\sum \limits _{n=0}^{N-1}f_{\hat{x}+m+1,\hat{y}+n}W_{N}^{- {k_1 {m}}}W_{N}^{-k_2n} .\end{eqnarray} (2)Let m + 1 = p $m+1 = p$ and shifting the limits of summation in (2), F x + 1 , y ( k 1 , k 2 ) = W N k 1 ∑ p = 0 N − 1 ∑ n = 0 N − 1 f x ̂ + p , y ̂ + n W N − k 1 p W N − k 2 n + ∑ n = 0 N − 1 f x ̂ + N , y ̂ + n W N k 1 W N − k 2 n − ∑ n = 0 N − 1 f x ̂ , y ̂ + n W N k 1 W N − k 2 n . \begin{eqnarray} F_{x+1,y}(k_1,k_2) & = & W_{N}^{k_1}\sum \limits _{p=0}^{N-1}\sum \limits _{n=0}^{N-1}f_{\hat{x}+p,\hat{y}+n}W_{N}^{- {k_1 {p}}}W_{N}^{-k_2n} \nonumber \\ && + \sum \limits _{n=0}^{N-1}f_{\hat{x}+N,\hat{y}+n}W_{N}^{k_1} W_{N}^{-k_2n} \nonumber \\ && - \sum \limits _{n=0}^{N-1}f_{\hat{x},\hat{y}+n}W_{N}^{k_1} W_{N}^{-k_2n} .\end{eqnarray} (3)Equation (3) can be rewritten in terms of current pixel ( x , y $x,y$ ) and previous pixel ( x − 1 , y $x-1,y$ ) as F x , y ( k 1 , k 2 ) = W N k 1 F x − 1 , y ( k 1 , k 2 ) + W N k 1 ∑ n = 0 N − 1 [ f x ̂ + N − 1 , y ̂ + n − f x ̂ − 1 , y ̂ + n ] W N − k 2 n . \begin{eqnarray} F_{x,y}(k_1,k_2) & = & W_{N}^{k_1}F_{x-1,y}(k_1,k_2)+ W_{N}^{k_1} \nonumber \\ && \sum \limits _{n=0}^{N-1}[f_{\hat{x}+N-1,\hat{y}+n}-f_{\hat{x}-1,\hat{y}+n}]W_{N}^{-k_2 n} .\end{eqnarray} (4)Let d x , y = f x ̂ + N − 1 , y ̂ + n − f x ̂ − 1 , y ̂ + n $d_{x,y}=f_{\hat{x}+N-1,\hat{y}+n}-f_{\hat{x}-1,\hat{y}+n}$ and 1-D DFT of d x , y $d_{x,y}$ is D x , y ( k 2 ) = ∑ n = 0 N − 1 d x , y ̂ + n W N − k 2 n . \begin{eqnarray} D_{x,y}(k_2)=\sum \limits _{n = 0}^{N-1}d_{x,\hat{y}+n}W_{N}^{-k_2n} .\end{eqnarray} (5)Using (5), Equation (4) can be written as F x , y ( k 1 , k 2 ) = W N k 1 F x − 1 , y ( k 1 , k 2 ) + D x , y ( k 2 ) . \begin{eqnarray} F_{x,y}(k_1,k_2) & = & W_{N}^{k_1}\left[F_{x-1,y}(k_1,k_2)+ D_{x,y}(k_2)\right] .\end{eqnarray} (6) D x , y ( k 2 ) $D_{x,y}(k_2)$ can be determined by 1-D sliding DFT [25] D x , y ( k 2 ) = W N k 2 D x , y − 1 ( k 2 ) + d x , y − d x , y − N . \begin{eqnarray} D_{x,y}(k_2)&=& W_{N}^{k_2}\left[D_{x,y-1}(k_2)+d_{x,y}-d_{x,y-N}\right] . \end{eqnarray} (7)Replacing D x , y ( k 2 ) $D_{x,y}(k_2)$ in (6), F x , y ( k 1 , k 2 ) = W N k 1 [ F x − 1 , y ( k 1 , k 2 ) + W N k 2 [ D x , y − 1 ( k 2 ) + d x , y − d x , y − N ] ] , \begin{eqnarray} F_{x,y}(k_1,k_2) & = & W_{N}^{k_1}\Big[F_{x-1,y}(k_1,k_2)+ W_{N}^{k_2}\big[D_{x,y-1}(k_2)\nonumber \\ && + d_{x,y}-d_{x,y-N}\big]\Big] ,\end{eqnarray} (8)Equation (8) confirms that the 2D sliding DFT at position ( x , y $x,y$ ) can be directly computed from the position ( x − 1 , y $x-1,y$ ) using 1D sliding DFT. For 2 × 2 $2\times 2$ window, Equation (8) becomes F x , y ( k 1 , k 2 ) = W 2 k 1 [ F x − 1 , y ( k 1 , k 2 ) + W 2 k 2 [ D x , y − 1 ( k 2 ) + d x , y − d x , y − 2 ] ] . \begin{eqnarray} F_{x,y}(k_1,k_2)& = & W_{2}^{k_1}\Big[F_{x-1,y}(k_1,k_2)+ W_{2}^{k_2}\big[D_{x,y-1}(k_2)\nonumber \\ && +d_{x,y}-d_{x,y-2}\big]\Big] .\end{eqnarray} (9)For detecting horizontal edges F x , y ( 0 , 1 ) = W 2 0 [ F x − 1 , y ( 0 , 1 ) + W 2 1 [ D x , y − 1 ( 1 ) + d x , y − d x , y − 2 ] ] . \begin{eqnarray} F_{x,y}(0,1) & = & W_{2}^{0}\Big[F_{x-1,y}(0,1)+ W_{2}^{1}\big[D_{x,y-1}(1)\nonumber \\ & & + d_{x,y}-d_{x,y-2}\big]\Big] .\end{eqnarray} (10)For detecting vertical edges F x , y ( 1 , 0 ) = W 2 1 [ F x − 1 , y ( 1 , 0 ) + W 2 0 [ D x , y − 1 ( 0 ) + d x , y − d x , y − 2 ] ] . \begin{eqnarray} F_{x,y}(1,0) &= & W_{2}^{1}\Big[F_{x-1,y}(1,0)+ W_{2}^{0}\big[D_{x,y-1}(0)\nonumber \\ & & +d_{x,y}-d_{x,y-2}\big]\Big] .\end{eqnarray} (11) The 1D DFT is the correlation of samples and basis functions, whose frequencies of k $k$ cycles within N $N$ samples width [24]. Correlation is either the convolution of flipped samples and basis function or the convolution of samples and flipped basis function. In the proposed 2D SDFT technique, the image pixel and sliding window are correlated. The horizontal (refer (10)) and vertical edges (refer (11)) have been detected by kernels, obtained from basis function, moving on the image as shown in Figure 2 as shaded pixels. The 2D SDFT performs linear filtering, which is equivalent to the convolution of 180 ∘ $180^\circ$ rotated kernel and image pixel in horizontal and vertical directions. After computing the 2D SDFT on each pixel of the image, each pixel is compared with a threshold to determine edge map of the image. Threshold is chosen as 4 × $\times$ mean of F n o n − d i r $F_{non-dir}$ . 2D hopping DFT The 1D hopping DFT [29] computes the N $N$ -point DFT at time index n $n$ using the precalculated N $N$ -point DFT at time index n − L $n-L$ , where L $L$ is time hop. The HDFT can adjust the time hop between successive DFT outputs. For 2D HDFT, using (5) and (6) F x , y ( k 1 , k 2 ) = W N k 1 F x − 1 , y ( k 1 , k 2 ) ∑ n = 0 N − 1 + ∑ n = 0 N − 1 d x , y ̂ + n W N − k 2 n . \begin{eqnarray} F_{x,y}(k_1,k_2) &= & W_{N}^{k_1}{\left[F_{x-1,y}(k_1,k_2)\vphantom{\sum_{n=0}^{N-1}}\right.} \nonumber \\ &&+ {\left.\sum \limits _{n=0}^{N-1}d_{x,\hat{y}+n}W_{N}^{-k_2n}\right]} .\end{eqnarray} (12)To obtain 2-D HDFT F x , y ( k 1 , k 2 ) $F_{x,y} (k_1,k_2)$ with L $L$ time hop F x − L , y ( k 1 , k 2 ) $F_{x-L,y} (k_1,k_2)$ , F x − 1 , y ( k 1 , k 2 ) $F_{x-1,y} (k_1,k_2)$ is repeatedly applied L $L$ times in F x , y ( k 1 , k 2 ) $F_{x,y} (k_1,k_2)$ , that is, Equation (12). The resultant expression of 2-D HDFT is F x , y ( k 1 , k 2 ) = W N L k 1 F x − L , y ( k 1 , k 2 ) ∑ n = 0 N − 1 + ∑ n = 0 N − 1 d x − L + 1 , y ̂ + n W N − k 2 n + W N − k 1 ∑ n = 0 N − 1 d x − L + 2 , y ̂ + n W N − k 2 n + ⋯ + W N − ( L − 1 ) k 1 ∑ n = 0 N − 1 d x , y ̂ + n W N − k 2 n . \begin{eqnarray} F_{x,y}(k_1,k_2)&=& W_{N}^{Lk_1}{\left[F_{x-L,y}(k_1,k_2)\vphantom{\sum_{n=0}^{N-1}}\right.}\nonumber \\ &&+ \sum \limits _{n=0}^{N-1}d_{x-L+1,\hat{y}+n}W_{N}^{-k_2n}\nonumber \\ &&+ W_{N}^{-k_1}\sum \limits _{n=0}^{N-1}d_{x-L+2,\hat{y}+n}W_{N}^{-k_2n}+\cdots\nonumber \\ &&+{\left. W_{N}^{-(L-1)k_1}\sum \limits _{n=0}^{N-1}d_{x,\hat{y}+n}W_{N}^{-k_2n}\right]} .\end{eqnarray} (13)Equation (13) can be written as F x , y ( k 1 , k 2 ) = W N L k 1 F x − L , y ( k 1 , k 2 ) + ∑ n = 0 N − 1 ∑ p = 0 L − 1 ∑ n = 0 N − 1 d x − p , y ̂ + n W N ( p − L + 1 ) k 1 W N − k 2 n . \begin{eqnarray} F_{x,y}(k_1,k_2)&=& W_{N}^{Lk_1}{\left[F_{x-L,y}(k_1,k_2)+\vphantom{\sum_{n=0}^{N-1}}\right.}\nonumber \\ &&{\left. \sum \limits _{p=0}^{L-1}\sum \limits _{n=0}^{N-1}d_{x-p,\hat{y}+n}W_{N}^{(p-L+1)k_1}W_{N}^{-k_2n}\right]} .\end{eqnarray} (14)The second term of Equation (14) is 1D DFT. Let D x , y ( k 2 ) = ∑ p = 0 L − 1 ∑ n = 0 N − 1 d x − p , y ̂ + n W N ( p − L + 1 ) k 1 W N − k 2 n . \begin{eqnarray} D_{x,y}(k_2)&=& \sum \limits _{p=0}^{L-1} \sum \limits _{n=0}^{N-1}d_{x-p,\hat{y}+n}W_{N}^{(p-L+1)k_1}W_{N}^{-k_2n}.\end{eqnarray} (15) Equation (15) can be written in the form of 1-D SDFT as follows: D x , y ( k 2 ) = W N k 2 D x , y − 1 ( k 2 ) + ∑ p = 0 L − 1 d x − p , y W N ( p − L + 1 ) k 1 − ∑ p = 0 L − 1 d x − p , y − N W N ( p − L + 1 ) k 1 = W N k 2 ∑ p = 0 L − 1 D x , y − 1 ( k 2 ) + ∑ p = 0 L − 1 ( d x − p , y − d x − p , y − N ) W N ( p − L + 1 ) k 1 . \begin{eqnarray} D_{x,y}(k_2)& = & W_{N}^{k_2}{\left[D_{x,y-1}(k_2)+\sum \limits _{p=0}^{L-1}d_{x-p,y}W_{N}^{(p-L+1)k_1}\right.}\nonumber \\ &&-{\left.\sum \limits _{p=0}^{L-1}d_{x-p,y-N}W_{N}^{(p-L+1)k_1}\right]}\nonumber \\ &=& W_{N}^{k_2}{\left[{\vphantom{\sum \limits _{p=0}^{L-1}}}D_{x,y-1}(k_2)\right.}\nonumber \\ &&{\left. +\sum \limits _{p=0}^{L-1}(d_{x-p,y}-d_{x-p,y-N})W_{N}^{(p-L+1)k_1}\right]} .\end{eqnarray} (16)Let e x , y $e_{x,y}$ = d x , y − d x , y − N $d_{x,y}-d_{x,y-N}$ . Hence, Equation (16) can be written as D x , y ( k 2 ) = W N k 2 D x , y − 1 ( k 2 ) + ∑ p = 0 L − 1 ( e x − p , y ) W N ( p − L + 1 ) k 1 . \begin{eqnarray} D_{x,y}(k_2) = W_{N}^{k_2}{\left[D_{x,y-1}(k_2)+\sum \limits _{p=0}^{L-1}(e_{x-p,y})W_{N}^{(p-L+1)k_1}\right]} .\quad\end{eqnarray} (17)The 1D SDFT of Equation (17) can be expressed in terms of 1D HDFT by repeating L $L$ times of SDFT as D x , y ( k 2 ) = W N L k 2 D x , y − L ( k 2 ) + ∑ p = 0 L − 1 ∑ p = 0 L − 1 e x − p , y − L + 1 + W N − k 2 e x − p , y − L + 2 + ⋯ + W N − ( L − 1 ) k 2 e x − p , y ∑ n = 0 N − 1 W N ( p − L + 1 ) k 1 . \begin{eqnarray} D_{x,y}(k_2) & = & W_{N}^{Lk_2}{\left[D_{x,y-L}(k_2)+\sum \limits _{p=0}^{L-1}{\left[{\vphantom{\sum \limits _{p=0}^{L-1}}}e_{x-p,y-L+1}\right.}\right.}\nonumber \\ &&+\,W_{N}^{-k_2}e_{x-p,y-L+2}+\cdots\nonumber \\ &&+{\left.{\left.W_{N}^{-(L-1)k_2}e_{x-p,y}\vphantom{\sum_{n=0}^{N-1}}\right]}W_{N}^{(p-L+1)k_1}\right]} .\end{eqnarray} (18) Equation (18) can be rewritten as D x , y ( k 2 ) = W N L k 2 D x , y − L ( k 2 ) + ∑ n = 0 N − 1 ∑ p = 0 L − 1 ∑ q = 0 L − 1 e x − p , y − q W N ( q − L + 1 ) k 2 W N ( p − L + 1 ) k 1 . \begin{eqnarray} D_{x,y}(k_2)&=& W_{N}^{Lk_2}{\left[D_{x,y-L}(k_2)+\vphantom{\sum_{n=0}^{N-1}}\right.}\nonumber \\ &&{\left.\sum \limits _{p=0}^{L-1}\sum \limits _{q=0}^{L-1}e_{x-p,y-q}W_{N}^{(q-L+1)k_2}W_{N}^{(p-L+1)k_1}\right]}.\quad\end{eqnarray} (19)The 2D HDFT equation can be expressed as F x , y ( k 1 , k 2 ) = W N L k 1 F x − L , y ( k 1 , k 2 ) + D x , y ( k 2 ) . \begin{eqnarray} F_{x,y}(k_1,k_2)&=& W_{N}^{Lk_1}\left[F_{x-L,y}(k_1,k_2)+D_{x,y}(k_2)\right]. \end{eqnarray} (20)For L $L$ = 2 and N $N$ = 4, Equation (20) can be represented as F x , y ( k 1 , k 2 ) = W 4 2 k 1 F x − 2 , y ( k 1 , k 2 ) + D x , y ( k 2 ) . \begin{eqnarray} F_{x,y}(k_1,k_2)&=& W_{4}^{2k_1}\left[F_{x-2,y}(k_1,k_2)+D_{x,y}(k_2)\right]. \end{eqnarray} (21)For horizontal edges, F x , y ( 0 , 1 ) = W 4 0 F x − 2 , y ( 0 , 1 ) + D x , y ( 1 ) . \begin{eqnarray} F_{x,y}(0,1)&=& W_{4}^{0}\left[F_{x-2,y}(0,1)+D_{x,y}(1)\right] . \end{eqnarray} (22)For vertical edges. F x , y ( 1 , 0 ) = W 4 2 F x − 2 , y ( 1 , 0 ) + D x , y ( 0 ) . \begin{eqnarray} F_{x,y}(1,0)&=& W_{4}^{2}\left[F_{x-2,y}(1,0)+D_{x,y}(0)\right] .\end{eqnarray} (23)From Equation (1), the equivalent kernal of 2D SDFT and 2D HDFT for 2 × 2 $2\times 2$ and 4 × 4 $4\times 4$ size windows are shown in Figures 3 and 4, respectively. FIGURE 3Open in figure viewerPowerPoint Equivalent kernel of 2D SDFT and 2D HDFT for 2 × $ \times$ 2 size window: (a) horizontal edges and (b) vertical edges FIGURE 4Open in figure viewerPowerPoint Equivalent kernel of 2D SDFT and 2D HDFT for 4 × $ \times$ 4 size window: (a) horizontal edges and (b) vertical edges 3 IMPLEMENTATION The performance of the proposed edge detector is evaluated for different dataset of road images and compared with the well-known edge detectors such as Canny, Sobel, Prewitt, and CNN. The performance for the noisy images are determined for various noise level. The qualitative analysis has been carried out by computing the PFOM, entropy, MSE, and PSNR. 2D SDFT based edge detector The performance of the proposed 2D SDFT based edge detector is evaluated with road marking images from ROad MArkings (ROMA) image database [30]. The images of ROMA database possessing the following details have been considered for evaluating the proposed 2D SDFT based edge detector. Camera: Balser A101CP, image size: 1280 × $ \times$ 1024, Pixel size: 6.7 micro-meter × $ \times$ 6.7 micro-meter; all are color images and they are converted to gray scale for evaluation. The input images used for edge detection, edge map developed through the proposed method (refer Figure 1), overlaying the original image and the detected edges, red in color are shown in Figure 5. The detected lanes, lane markings, trees, and objects could be seen with clarity in the edge map. The performance of this edge detector is compared with the conventional edge detection algorithms such as Canny, Sobel, and Prewitt edge detectors. The comparison of the output of each edge detector for ROMA images are shown in F