An Enhanced Edge Detection Algorithm

Download Full-Text PDF Cite this Publication

Text Only Version

An Enhanced Edge Detection Algorithm

Distributed Canny Edge Method

Mrs. Kavana D Kundapur

IV Sem M. Tech Digital Communication & Networking

T. John Institute of Technology Bengaluru, India

Mr. Anand Swamy A S

Assistant professor, Dept. of ECE

  1. John Institute of Technology Bengaluru, India

    Abstract One of the step involved in image processing is edge detection. Although many edge detection algorithms are available among them, Canny edge detection is quite popular, but even this has its own drawbacks such as latency and computation procedure is very rigorous. As this Canny edge detection in general, uses the frame by frame analysis to detect edges, which would eventually lead to lag of the system and not very feasible for real-time applications. And directly applying to block level would lead to loss of information as its based on a thresholds from the frame statistics.

    There emerges a techniques which is distributed Canny edge detection which is quite faster and more applicable for real-time scenarios, as this is based on block technique in detection, where in the threshold is found out adaptively (as in a feedback computation) based on gradient block of image. The resulting block-based algorithm has a significantly reduced latency and can be easily integrated with other block-based image codecs.

    It is capable of supporting fast edge detection of images and videos with high resolution, since the time taken is now a function of the block size instead of the frame size. Also, quantitative conformance evaluation and subjective tests show that the performance of the proposed edge detection algorithm is better in terms of speed and throughput.

    As an enhancement to the edge detection, image segmentation is performed. The output of the edge detector algorithm is taken as input image to the segmentation procedure. The segmentation methodology being used is level set method with Chan-Vese algorithm. The method segments portion of the image and reduces noise and interpolation of that segmented part is produced.

    KeywordsEdge Detection; Distributed Canny Edge; Image Segmentation; Level Set Method

    1. INTRODUCTION

      Many variety of applications in the field of image processing require the detection of the edges from a noisy image. Edge detection is the most common preprocessing step in many image processing algorithms such as image enhancement, image segmentation, tracking and image/video coding. Among the existing edge detection algorithms, the canny edge detector has remained a standard for many years and has best performance. Its superior performance is due to the fact that the canny algorithm performs hysteresis thresholding which requires computing high and low thresholds based on the entire image statistics.

      Unfortunately, this feature makes the Canny edge detection algorithm not only more computationally complex as compared to other edge detection algorithms, such as the Roberts and Sobel algorithms, but also necessitates additional pre-processing computations to be done on the entire image.

      As a result, a direct implementation of the canny algorithm has high latency and cannot be employed in real-time applications.

      The proposed technique which is distributed Canny edge detection is comparatively faster and more applicable for real-time scenarios, as this is based on block technique for detection, where in the threshold is found out adaptively (as in a feedback computation) based on gradient block of image. The resulting block-based algorithm has a significantly reduced latency and can be easily integrated with other block- based image codecs.

      It is capable of supporting fast edge detection of images and videos with high resolutions, since the latency is now a function of the block size instead of the frame size. Also, quantitative conformance evaluations and subjective tests show that the performance of the proposed edge detection algorithm is better in terms of speed and throughput. It also performs well in the case of noisy images.

      As an enhancement to the edge detection, image segmentation is performed. The output of the edge detector algorithm is taken as input image to the segmentation procedure. The segmentation methodology being used is level set method with Chan-Vese algorithm. The method segments portion of the image and reduces noise and interpolation of that segmented part is produced.

    2. PROBLEM STATEMENT

      1. Edge Detection

        Many edge detectors, perform poorly at edge junctions and corners. As this is mainly caused by the difficulty in estimating the correct direction information at edge junctions and corners. Consequently, edge detection usually produces incorrect or incomplete topology around corners and junctions. Canny edge detection algorithm is computationally more expensive compared to others. Also due to high latency involved in Canny method it is not easily applicable to real time application. And some method do not do well for noisy images.

      2. Segmentation

        The output of the edge detector is taken up and segmentation operation is performed to get more clarity on a certain portion. The methodology being used for segmentation is level set method with Chan-Vese algorithm. The method helps reduce noise and interpolation of that

        segmented part is produced. Also by segmenting it, assists image compression.

      3. Related Work

        One of the most important tasks in any vision system is the detection of edges in digitized images. The requirements of a good edge detector are that it responds only to true edge structure and is relatively insensitive to noise. Computationally efficient realization is also required. Several methods have been proposed and most of them suggest considering local operations on the elements of the input image to extract edges. Thresholding and thinning operations are applied to localize boundaries and remove edge segments that arise from noise in the imaging process. With blurred and noisy edges, the performance of local gradient operators deteriorates rapidly. This has led to the development of some particular methods more specialized for detecting edges in noisy pictures [1].

        The edge detection is the primary step in identifying an image object. The filters are used in the process of identifying the image by locating the sharp edges which are discontinuous. These discontinuities bring changes in pixels intensities which define the boundaries of the object. In this edge detection method the assumption edges are the pixels with a high gradient. A fast rate of change of intensity at some direction is given by the angle of the gradient vector is observed at edge pixels. At the edge pixel, the intensity changes from 0 to 255 at the direction of the gradient. The magnitude of the gradient indicates the strength of the edge. If we calculate the gradient at uniform regions we end up with a 0 vector which means there is no edge pixel. In natural images we usually do not have the ideal discontinuity or the uniform regions and we process the magnitude of the gradient to make a decision to detect the edge pixels. The elementary processing is applied for a threshold. If the gradient magnitude is larger than the threshold, we decide the method in corresponds to the edge pixel [2].

        Edge detectors of some kind, particularly step edge detectors, have been an essential part of many computer vision systems. The edge detection process serves to simplify the analysis of images by drastically reducing the amount of data to be processed, while at the same time preserving useful structural infrmation about object boundaries. There is certainly a great deal of diversity in the applications of edge detection, but it is felt that many applications share a common set of requirements. To estimate noise from an operator output, we need to be able to separate its response to noise from the response due to step edges. The performance of the system will be critically dependent on the accuracy of this estimate. Even with noise estimation, the edge detector will be susceptible to streaking if it uses only a single threshold. Streaking is the breaking up of an edge contour caused by the operator output fluctuating above and below the threshold along the length of the contour [3].

      4. Methodology

        Many edge detectors, perform poorly at edge junctions and corners. As this is mainly caused by the difficulty in estimating the correct directional information at edge

        junctions and corners. There are some more drawbacks listed below.

        Disadvantages of other methods

        • Complex Computations

        • High Latency

        • Directly applying the methodology at the block-level leads to excessive edges in smooth regions and to loss of significant edges in high-detailed regions since it computes the high and low thresholds based

          on the frame-level statistics.

          Fig 1. The proposed method

          To solve this problem, we present a distributed canny edge detection algorithm that adaptively computes the edge detection thresholds based on the block type and the local distribution of the gradients in the image block. In addition, the new algorithm uses a non-uniform gradient magnitude histogram to compute block-based hysteresis thresholds. This method works better for noisy images.

          When images are noisy, too small details can crowd the gradient image and makes dicult the edge detection.

          • Smoothing can handle this problem.

          • Thresholding can help in simplifying the edge detection.

            A novel edge-detection algorithm tries to provide an errorless solution that is adaptable to the different noise levels of these images to help in identifying the valid image contents produced by noise.

            As an enhancement to the edge detection, image segmentation is performed. The output of the edge detector algorithm is taken as input image to the segmentation procedure. The segmentation methodology being used is level set method with Chan-Vese algorithm. The method segments

            portion of the image and reduces noise and interpolation of that segmented part is produced.

      5. Algorithm

        Step 1: An input image which is noisy is taken up. Step 2: Convert to gray scale.

        Step 3: Filter out any noise in the original image before trying to locate and detect any edges.

        Step 4: Next is to find the edge strength by taking the gradient of the image.

        Step 5: Fine tune the directions.

        Step 6: Aligning the directions of the edges. Step 7: Trace along the edges of the image.

        Step 8: Finally, hysteresis is used as a means of eliminating streaking.

        Step 9: Output part 1- Output image with approximated edges is produced.

        Step 10: Output image is taken up and image segmentation is performed using Level set method(Chan- Vese algorithm)

        Step 11: Output part 2- Output image is obtained that focuses on a portion of the edge detected output image.

      6. Process Flow

      The algorithm above describes the process flow of how the edge detection and image segmentation is performed.

    3. EXPERIMENTAL RESULTS

      This section of the given paper provides the simulation of expected result.

      1. Edge Detection

        Distributed Canny Edge Method: When a noisy image is given as an input and the edge detection technique is applied to it, the output image is formed which tries to show as much details as the original image.

        Figure 7. Input image: here a colored image is used

        Fig 2. Output from distributed canny edge detection with four sigma values, Sigma = 1.0, 2.0, 3.0, 4.0

      2. Image Segmentation

      Level Set Method: The output of the distributed canny edge detector with sigma = 1 is given as input to the level set method segmentation algorithm and part of the edge detected image is focused.

      (a)

      (b)

      Fig 3. (a) Segmented part in gray scale. (b) Segmented part in binary

      format.

    4. CONCLUSION

Edge detection is a common preprocessing step in many image processing algorithms. The proposed technique which is distributed Canny edge detection is comparatively faster and more applicable for real-time scenarios, as this is based on block technique in detection, where in the threshold is found out adaptively (as in a feedback computation) based on gradient block of image. It works well for the noisy input images. Also further segmentation of a certain part of the image is pursued.

ACKNOWLEDGMENT

The author would like to thank the staff and students of the Electronics and Communication Department, T. John Institute of Technology for their guidance and support during the course work.

REFERENCES

  1. R. Deriche, Using Canny criteria to derive a recursively implemented optimal edge detector, int. J. Comput. Vis. Vol. 1. No. 2. Pp. 167-187. 1987.

  2. A Comparison of various Edge Detection Techniques used in Image Processing IJCSI International Journal of Computer Science Issues, Vol. 9, Issue 5, No 1, September 2012

  3. J. F. Canny, A computation approach to edge detection, IEEE Trans. Pattern Anal. Mach. Intell., vol. 8, no. 6, pp. 769798, Nov. 1986.

  4. Digital Image Processing Using MATLAB, by Rafael C. Gonzalez, Richard E. Woods, Steven L. Eddins.

  5. Level Set Methods Implementation for Image Levelsets and Image Contour, by Nassir. H. Salman. IJCJNS International Journal of Computer Science and Network Security.

AUTHOR PROFILE

Mrs. Kavana D Kundapur is pursuing M.Tech degree in Digital Communication & Networking from T. John Institute of Technology, Bengaluru from Visvesvaraya Technological University. Her research interests include Digital Communication, Image Processing and Network Security.

Mr. Anand Swamy A S is currently working as an Assistant Prof. at T. John Institute of Technology, Bengaluru. Her research interest includes Digital Communication, Error control coding, Image Processing, image compression and related concepts.

Leave a Reply

Your email address will not be published. Required fields are marked *