Ridge detection

Last updated

In image processing, ridge detection is the attempt, via software, to locate ridges in an image, defined as curves whose points are local maxima of the function, akin to geographical ridges.

Contents

For a function of N variables, its ridges are a set of curves whose points are local maxima in N − 1 dimensions. In this respect, the notion of ridge points extends the concept of a local maximum. Correspondingly, the notion of valleys for a function can be defined by replacing the condition of a local maximum with the condition of a local minimum. The union of ridge sets and valley sets, together with a related set of points called the connector set, form a connected set of curves that partition, intersect, or meet at the critical points of the function. This union of sets together is called the function's relative critical set. [1] [2]

Ridge sets, valley sets, and relative critical sets represent important geometric information intrinsic to a function. In a way, they provide a compact representation of important features of the function, but the extent to which they can be used to determine global features of the function is an open question. The primary motivation for the creation of ridge detection and valley detection procedures has come from image analysis and computer vision and is to capture the interior of elongated objects in the image domain. Ridge-related representations in terms of watersheds have been used for image segmentation. There have also been attempts to capture the shapes of objects by graph-based representations that reflect ridges, valleys and critical points in the image domain. Such representations may, however, be highly noise sensitive if computed at a single scale only. Because scale-space theoretic computations involve convolution with the Gaussian (smoothing) kernel, it has been hoped that use of multi-scale ridges, valleys and critical points in the context of scale space theory should allow for more a robust representation of objects (or shapes) in the image.

In this respect, ridges and valleys can be seen as a complement to natural interest points or local extremal points. With appropriately defined concepts, ridges and valleys in the intensity landscape (or in some other representation derived from the intensity landscape) may form a scale invariant skeleton for organizing spatial constraints on local appearance, with a number of qualitative similarities to the way the Blum's medial axis transform provides a shape skeleton for binary images. In typical applications, ridge and valley descriptors are often used for detecting roads in aerial images and for detecting blood vessels in retinal images or three-dimensional magnetic resonance images.

Differential geometric definition of ridges and valleys at a fixed scale in a two-dimensional image

Let denote a two-dimensional function, and let be the scale-space representation of obtained by convolving with a Gaussian function

.

Furthermore, let and denote the eigenvalues of the Hessian matrix

of the scale-space representation with a coordinate transformation (a rotation) applied to local directional derivative operators,

where p and q are coordinates of the rotated coordinate system.

It can be shown that the mixed derivative in the transformed coordinate system is zero if we choose

,.

Then, a formal differential geometric definition of the ridges of at a fixed scale can be expressed as the set of points that satisfy [3]

Correspondingly, the valleys of at scale are the set of points

In terms of a coordinate system with the direction parallel to the image gradient

where

it can be shown that this ridge and valley definition can instead be equivalently [4] written as

where

and the sign of determines the polarity; for ridges and for valleys.

Computation of variable scale ridges from two-dimensional images

A main problem with the fixed scale ridge definition presented above is that it can be very sensitive to the choice of the scale level. Experiments show that the scale parameter of the Gaussian pre-smoothing kernel must be carefully tuned to the width of the ridge structure in the image domain, in order for the ridge detector to produce a connected curve reflecting the underlying image structures. To handle this problem in the absence of prior information, the notion of scale-space ridges has been introduced, which treats the scale parameter as an inherent property of the ridge definition and allows the scale levels to vary along a scale-space ridge. Moreover, the concept of a scale-space ridge also allows the scale parameter to be automatically tuned to the width of the ridge structures in the image domain, in fact as a consequence of a well-stated definition. In the literature, a number of different approaches have been proposed based on this idea.

Let denote a measure of ridge strength (to be specified below). Then, for a two-dimensional image, a scale-space ridge is the set of points that satisfy

where is the scale parameter in the scale-space representation. Similarly, a scale-space valley is the set of points that satisfy

An immediate consequence of this definition is that for a two-dimensional image the concept of scale-space ridges sweeps out a set of one-dimensional curves in the three-dimensional scale-space, where the scale parameter is allowed to vary along the scale-space ridge (or the scale-space valley). The ridge descriptor in the image domain will then be a projection of this three-dimensional curve into the two-dimensional image plane, where the attribute scale information at every ridge point can be used as a natural estimate of the width of the ridge structure in the image domain in a neighbourhood of that point.

In the literature, various measures of ridge strength have been proposed. When Lindeberg (1996, 1998) [5] coined the term scale-space ridge, he considered three measures of ridge strength:

expressed in terms of -normalized derivatives with
.

The notion of -normalized derivatives is essential here, since it allows the ridge and valley detector algorithms to be calibrated properly. By requiring that for a one-dimensional Gaussian ridge embedded in two (or three dimensions) the detection scale should be equal to the width of the ridge structure when measured in units of length (a requirement of a match between the size of the detection filter and the image structure it responds to), it follows that one should choose . Out of these three measures of ridge strength, the first entity is a general purpose ridge strength measure with many applications such as blood vessel detection and road extraction. Nevertheless, the entity has been used in applications such as fingerprint enhancement, [6] real-time hand tracking and gesture recognition [7] as well as for modelling local image statistics for detecting and tracking humans in images and video. [8]

There are also other closely related ridge definitions that make use of normalized derivatives with the implicit assumption of . [9] Develop these approaches in further detail. When detecting ridges with , however, the detection scale will be twice as large as for , resulting in more shape distortions and a lower ability to capture ridges and valleys with nearby interfering image structures in the image domain.

History

The notion of ridges and valleys in digital images was introduced by Haralick in 1983 [10] and by Crowley concerning difference of Gaussians pyramids in 1984. [11] [12] The application of ridge descriptors to medical image analysis has been extensively studied by Pizer and his co-workers [13] [14] [15] resulting in their notion of M-reps. [16] Ridge detection has also been furthered by Lindeberg with the introduction of -normalized derivatives and scale-space ridges defined from local maximization of the appropriately normalized main principal curvature of the Hessian matrix (or other measures of ridge strength) over space and over scale. These notions have later been developed with application to road extraction by Steger et al. [17] [18] and to blood vessel segmentation by Frangi et al. [19] as well as to the detection of curvilinear and tubular structures by Sato et al. [20] and Krissian et al. [21] A review of several of the classical ridge definitions at a fixed scale including relations between them has been given by Koenderink and van Doorn. [22] A review of vessel extraction techniques has been presented by Kirbas and Quek. [23]

Definition of ridges and valleys in N dimensions

In its broadest sense, the notion of ridge generalizes the idea of a local maximum of a real-valued function. A point in the domain of a function is a local maximum of the function if there is a distance with the property that if is within units of , then . It is well known that critical points, of which local maxima are just one type, are isolated points in a function's domain in all but the most unusual situations (i.e., the nongeneric cases).

Consider relaxing the condition that for in an entire neighborhood of slightly to require only that this hold on an dimensional subset. Presumably this relaxation allows the set of points which satisfy the criteria, which we will call the ridge, to have a single degree of freedom, at least in the generic case. This means that the set of ridge points will form a 1-dimensional locus, or a ridge curve. Notice that the above can be modified to generalize the idea to local minima and result in what might call 1-dimensional valley curves.

This following ridge definition follows the book by Eberly [24] and can be seen as a generalization of some of the abovementioned ridge definitions. Let be an open set, and be smooth. Let . Let be the gradient of at , and let be the Hessian matrix of at . Let be the ordered eigenvalues of and let be a unit eigenvector in the eigenspace for . (For this, one should assume that all the eigenvalues are distinct.)

The point is a point on the 1-dimensional ridge of if the following conditions hold:

  1. , and
  2. for .

This makes precise the concept that restricted to this particular-dimensional subspace has a local maximum at .

This definition naturally generalizes to the k-dimensional ridge as follows: the point is a point on the k-dimensional ridge of if the following conditions hold:

  1. , and
  2. for .

In many ways, these definitions naturally generalize that of a local maximum of a function. Properties of maximal convexity ridges are put on a solid mathematical footing by Damon [1] and Miller. [2] Their properties in one-parameter families was established by Keller. [25]

Maximal scale ridge

The following definition can be traced to Fritsch [26] who was interested in extracting geometric information about figures in two dimensional greyscale images. Fritsch filtered his image with a "medialness" filter that gave him information analogous to "distant to the boundary" data in scale-space. Ridges of this image, once projected to the original image, were to be analogous to a shape skeleton (e.g., the Blum medial axis) of the original image.

What follows is a definition for the maximal scale ridge of a function of three variables, one of which is a "scale" parameter. One thing that we want to be true in this definition is, if is a point on this ridge, then the value of the function at the point is maximal in the scale dimension. Let be a smooth differentiable function on . The is a point on the maximal scale ridge if and only if

  1. and , and
  2. and .

Relations between edge detection and ridge detection

The purpose of ridge detection is usually to capture the major axis of symmetry of an elongated object,[ citation needed ] whereas the purpose of edge detection is usually to capture the boundary of the object. However, some literature on edge detection erroneously[ citation needed ] includes the notion of ridges into the concept of edges, which confuses the situation.

In terms of definitions, there is a close connection between edge detectors and ridge detectors. With the formulation of non-maximum as given by Canny, [27] it holds that edges are defined as the points where the gradient magnitude assumes a local maximum in the gradient direction. Following a differential geometric way of expressing this definition, [28] we can in the above-mentioned -coordinate system state that the gradient magnitude of the scale-space representation, which is equal to the first-order directional derivative in the -direction , should have its first order directional derivative in the -direction equal to zero

while the second-order directional derivative in the -direction of should be negative, i.e.,

.

Written out as an explicit expression in terms of local partial derivatives , ... , this edge definition can be expressed as the zero-crossing curves of the differential invariant

that satisfy a sign-condition on the following differential invariant

(see the article on edge detection for more information). Notably, the edges obtained in this way are the ridges of the gradient magnitude.

See also

Related Research Articles

<span class="mw-page-title-main">Lorentz force</span> Force acting on charged particles in electric and magnetic fields

In physics, specifically in electromagnetism, the Lorentz force law is the combination of electric and magnetic force on a point charge due to electromagnetic fields. The Lorentz force, on the other hand, is a physical effect that occurs in the vicinity of electrically neutral, current-carrying conductors causing moving electrical charges to experience a magnetic force.

<span class="mw-page-title-main">Potential flow</span> Velocity field as the gradient of a scalar function

In fluid dynamics, potential flow or irrotational flow refers to a description of a fluid flow with no vorticity in it. Such a description typically arises in the limit of vanishing viscosity, i.e., for an inviscid fluid and with no vorticity present in the flow.

<span class="mw-page-title-main">Curvature</span> Mathematical measure of how much a curve or surface deviates from flatness

In mathematics, curvature is any of several strongly related concepts in geometry that intuitively measure the amount by which a curve deviates from being a straight line or by which a surface deviates from being a plane. If a curve or surface is contained in a larger space, curvature can be defined extrinsically relative to the ambient space. Curvature of Riemannian manifolds of dimension at least two can be defined intrinsically without reference to a larger space.

In mathematics, the Laplace operator or Laplacian is a differential operator given by the divergence of the gradient of a scalar function on Euclidean space. It is usually denoted by the symbols , (where is the nabla operator), or . In a Cartesian coordinate system, the Laplacian is given by the sum of second partial derivatives of the function with respect to each independent variable. In other coordinate systems, such as cylindrical and spherical coordinates, the Laplacian also has a useful form. Informally, the Laplacian Δf (p) of a function f at a point p measures by how much the average value of f over small spheres or balls centered at p deviates from f (p).

In continuum mechanics, the infinitesimal strain theory is a mathematical approach to the description of the deformation of a solid body in which the displacements of the material particles are assumed to be much smaller than any relevant dimension of the body; so that its geometry and the constitutive properties of the material at each point of space can be assumed to be unchanged by the deformation.

Unit quaternions, known as versors, provide a convenient mathematical notation for representing spatial orientations and rotations of elements in three dimensional space. Specifically, they encode information about an axis-angle rotation about an arbitrary axis. Rotation and orientation quaternions have applications in computer graphics, computer vision, robotics, navigation, molecular dynamics, flight dynamics, orbital mechanics of satellites, and crystallographic texture analysis.

In vector calculus, Green's theorem relates a line integral around a simple closed curve C to a double integral over the plane region D bounded by C. It is the two-dimensional special case of Stokes' theorem. In one dimension, it is equivalent to the fundamental theorem of calculus. In three dimensions, it is equivalent to the divergence theorem.

In mathematics, the covariant derivative is a way of specifying a derivative along tangent vectors of a manifold. Alternatively, the covariant derivative is a way of introducing and working with a connection on a manifold by means of a differential operator, to be contrasted with the approach given by a principal connection on the frame bundle – see affine connection. In the special case of a manifold isometrically embedded into a higher-dimensional Euclidean space, the covariant derivative can be viewed as the orthogonal projection of the Euclidean directional derivative onto the manifold's tangent space. In this case the Euclidean derivative is broken into two parts, the extrinsic normal component and the intrinsic covariant derivative component.

<span class="mw-page-title-main">Curvilinear coordinates</span> Coordinate system whose directions vary in space

In geometry, curvilinear coordinates are a coordinate system for Euclidean space in which the coordinate lines may be curved. These coordinates may be derived from a set of Cartesian coordinates by using a transformation that is locally invertible at each point. This means that one can convert a point given in a Cartesian coordinate system to its curvilinear coordinates and back. The name curvilinear coordinates, coined by the French mathematician Lamé, derives from the fact that the coordinate surfaces of the curvilinear systems are curved.

In linear algebra, a rotation matrix is a transformation matrix that is used to perform a rotation in Euclidean space. For example, using the convention below, the matrix

In physics, the Hamilton–Jacobi equation, named after William Rowan Hamilton and Carl Gustav Jacob Jacobi, is an alternative formulation of classical mechanics, equivalent to other formulations such as Newton's laws of motion, Lagrangian mechanics and Hamiltonian mechanics.

In mathematics, the discrete Laplace operator is an analog of the continuous Laplace operator, defined so that it has meaning on a graph or a discrete grid. For the case of a finite-dimensional graph, the discrete Laplace operator is more commonly called the Laplacian matrix.

Scale-space theory is a framework for multi-scale signal representation developed by the computer vision, image processing and signal processing communities with complementary motivations from physics and biological vision. It is a formal theory for handling image structures at different scales, by representing an image as a one-parameter family of smoothed images, the scale-space representation, parametrized by the size of the smoothing kernel used for suppressing fine-scale structures. The parameter in this family is referred to as the scale parameter, with the interpretation that image structures of spatial size smaller than about have largely been smoothed away in the scale-space level at scale .

<span class="mw-page-title-main">Corner detection</span> Approach used in computer vision systems

Corner detection is an approach used within computer vision systems to extract certain kinds of features and infer the contents of an image. Corner detection is frequently used in motion detection, image registration, video tracking, image mosaicing, panorama stitching, 3D reconstruction and object recognition. Corner detection overlaps with the topic of interest point detection.

The gradient theorem, also known as the fundamental theorem of calculus for line integrals, says that a line integral through a gradient field can be evaluated by evaluating the original scalar field at the endpoints of the curve. The theorem is a generalization of the second fundamental theorem of calculus to any curve in a plane or space rather than just the real line.

In mathematics and economics, transportation theory or transport theory is a name given to the study of optimal transportation and allocation of resources. The problem was formalized by the French mathematician Gaspard Monge in 1781.

In computer vision, blob detection methods are aimed at detecting regions in a digital image that differ in properties, such as brightness or color, compared to surrounding regions. Informally, a blob is a region of an image in which some properties are constant or approximately constant; all the points in a blob can be considered in some sense to be similar to each other. The most common method for blob detection is by using convolution.

In probability theory and statistics, partial correlation measures the degree of association between two random variables, with the effect of a set of controlling random variables removed. When determining the numerical relationship between two variables of interest, using their correlation coefficient will give misleading results if there is another confounding variable that is numerically related to both variables of interest. This misleading information can be avoided by controlling for the confounding variable, which is done by computing the partial correlation coefficient. This is precisely the motivation for including other right-side variables in a multiple regression; but while multiple regression gives unbiased results for the effect size, it does not give a numerical value of a measure of the strength of the relationship between the two variables of interest.

<span class="mw-page-title-main">Stokes' theorem</span> Theorem in vector calculus

Stokes' theorem, also known as the Kelvin–Stokes theorem after Lord Kelvin and George Stokes, the fundamental theorem for curls or simply the curl theorem, is a theorem in vector calculus on . Given a vector field, the theorem relates the integral of the curl of the vector field over some surface, to the line integral of the vector field around the boundary of the surface. The classical theorem of Stokes can be stated in one sentence:

<span class="mw-page-title-main">Manifold regularization</span>

In machine learning, Manifold regularization is a technique for using the shape of a dataset to constrain the functions that should be learned on that dataset. In many machine learning problems, the data to be learned do not cover the entire input space. For example, a facial recognition system may not need to classify any possible image, but only the subset of images that contain faces. The technique of manifold learning assumes that the relevant subset of data comes from a manifold, a mathematical structure with useful properties. The technique also assumes that the function to be learned is smooth: data with different labels are not likely to be close together, and so the labeling function should not change quickly in areas where there are likely to be many data points. Because of this assumption, a manifold regularization algorithm can use unlabeled data to inform where the learned function is allowed to change quickly and where it is not, using an extension of the technique of Tikhonov regularization. Manifold regularization algorithms can extend supervised learning algorithms in semi-supervised learning and transductive learning settings, where unlabeled data are available. The technique has been used for applications including medical imaging, geographical imaging, and object recognition.

References

  1. 1 2 Damon, J. (March 1999). "Properties of Ridges and Cores in Two-Dimensional Images". J Math Imaging Vis. 10 (2): 163–174. Bibcode:1999JMIV...10..163D. doi:10.1023/A:1008379107611. S2CID   10121282.
  2. 1 2 Miller, J. Relative Critical Sets in and Applications to Image Analysis. Ph.D. Dissertation. University of North Carolina. 1998.
  3. T. Lindeberg (2009). "Scale-space". In Benjamin Wah (ed.). Encyclopedia of Computer Science and Engineering. Vol. IV. John Wiley and Sons. pp. 2495–2504. doi:10.1002/9780470050118.ecse609. ISBN   978-0470050118.
  4. Lindeberg, T (1994). "Scale-space theory: A basic tool for analysing structures at different scales". Journal of Applied Statistics. 21 (2): 224–270. Bibcode:1994JApSt..21..225L. doi:10.1080/757582976.
  5. Lindeberg, T. (1998). "Edge detection and ridge detection with automatic scale selection". International Journal of Computer Vision. 30 (2): 117–154. doi:10.1023/A:1008097225773. S2CID   35328443. Earlier version presented at IEEE Conference on Pattern Recognition and Computer Vision, CVPR'96, San Francisco, California, pages 465–470, June 1996
  6. Almansa, A., Lindeberg, T. (2000). "Fingerprint Enhancement by Shape Adaptation of Scale-Space Operators with Automatic Scale-Selection". IEEE Transactions on Image Processing. 9 (12): 2027–42. Bibcode:2000ITIP....9.2027L. doi:10.1109/83.887971. PMID   18262941.{{cite journal}}: CS1 maint: multiple names: authors list (link)
  7. L. Bretzner, I. Laptev and T. Lindeberg: Hand Gesture Recognition using Multi-Scale Colour Features, Hierarchical Models and Particle Filtering, Proc. IEEE Conference on Face and Gesture 2002, Washington DC, 423–428.
  8. Sidenbladh, H., Black, M. (2003). "Learning the statistics of people in images and video" (PDF). International Journal of Computer Vision. 54 (1–2): 183–209. doi:10.1023/a:1023765619733. S2CID   1255196.{{cite journal}}: CS1 maint: multiple names: authors list (link)
  9. J. Furst and J. Miller, "The Maximal Scale Ridge: Incorporating Scale in the Ridge Definition", Scale Space Theory in Computer Vision: Proceedings of the First International Conference on, Scale Space '97, pp. 93–104. Springer Lecture Notes in Computer Science, vol. 1682.
  10. Haralick, R. (April 1983). "Ridges and Valleys on Digital Images". Computer Vision, Graphics, and Image Processing. 22 (10): 28–38. doi:10.1016/0734-189X(83)90094-4.
  11. Crowley, J.L., Parker, A.C. (March 1984). "A Representation for Shape Based on Peaks and Ridges in the Difference of Low Pass Transform" (PDF). IEEE Trans Pattern Anal Mach Intell. 6 (2): 156–170. CiteSeerX   10.1.1.161.3102 . doi:10.1109/TPAMI.1984.4767500. PMID   21869180. S2CID   14348919.{{cite journal}}: CS1 maint: multiple names: authors list (link)
  12. Crowley, J.L., Sanderson, A. (January 1987). "Multiple Resolution Representation and Probabilistic Matching of 2-D Gray-Scale Shape" (PDF). IEEE Trans Pattern Anal Mach Intell. 9 (1): 113–121. CiteSeerX   10.1.1.1015.9294 . doi:10.1109/TPAMI.1987.4767876. PMID   21869381. S2CID   14999508.{{cite journal}}: CS1 maint: multiple names: authors list (link)
  13. Gauch, J.M., Pizer, S.M. (June 1993). "Multiresolution Analysis of Ridges and Valleys in Grey-Scale Images". IEEE Trans Pattern Anal Mach Intell. 15 (6): 635–646. doi:10.1109/34.216734.{{cite journal}}: CS1 maint: multiple names: authors list (link)
  14. Eberly D.; Gardner R.; Morse B.; Pizer S.; Scharlach C. (December 1994). "Ridges for image analysis". Journal of Mathematical Imaging and Vision. 4 (4): 353–373. Bibcode:1994JMIV....4..353E. doi:10.1007/BF01262402. S2CID   9940964.
  15. Pizer, Stephen M., Eberly, David, Fritsch, Daniel S. (January 1998). "Zoom-invariant vision of figural shape: the mathematics of cores". Computer Vision and Image Understanding. 69 (1): 55–71. CiteSeerX   10.1.1.38.3116 . doi:10.1006/cviu.1997.0563. S2CID   676717.{{cite journal}}: CS1 maint: multiple names: authors list (link)
  16. S. Pizer, S. Joshi, T. Fletcher, M. Styner, G. Tracton, J. Chen (2001) "Segmentation of Single-Figure Objects by Deformable M-reps", Proceedings of the 4th International Conference on Medical Image Computing and Computer-Assisted Intervention, Springer Lecture Notes In Computer Science; Vol. 2208, pp. 862–871
  17. Steger C. (1998). "An unbiased detector of curvilinear structures". IEEE Trans Pattern Anal Mach Intell. 20 (2): 113–125. CiteSeerX   10.1.1.42.2266 . doi:10.1109/34.659930.
  18. Laptev I.; Mayer H.; Lindeberg T.; Eckstein W.; Steger C.; Baumgartner A. (2000). "Automatic extraction of roads from aerial images based on scale-space and snakes" (PDF). Machine Vision and Applications. 12 (1): 23–31. doi:10.1007/s001380050121. S2CID   2561801.
  19. Frangi AF, Niessen WJ, Hoogeveen RM, van Walsum T, Viergever MA (October 1999). "Model-based quantitation of 3-D magnetic resonance angiographic images". IEEE Trans Med Imaging. 18 (10): 946–56. CiteSeerX   10.1.1.502.5994 . doi:10.1109/42.811279. PMID   10628954. S2CID   6263198.
  20. Sato Y, Nakajima S, Shiraga N, Atsumi H, Yoshida S, et al. (1998). "Three-dimensional multi-scale line filter for segmentation and visualization of curvilinear structures in medical images" (PDF). Medical Image Analysis. 2 (2): 143–168. doi:10.1016/s1361-8415(98)80009-1. PMID   10646760.
  21. Krissian K.; Malandain G.; Ayache N.; Vaillan R.; Trousset Y. (2000). "Model-based detection of tubular structures in 3D images". Computer Vision and Image Understanding. 80 (2): 130–171. doi:10.1006/cviu.2000.0866. S2CID   3727523.
  22. Koenderink, Jan J., van Doorn, Andrea J. (May 1994). "2+1-D differential geometry". Pattern Recognition Letters. 15 (5): 439–443. doi:10.1016/0167-8655(94)90134-1.{{cite journal}}: CS1 maint: multiple names: authors list (link)
  23. Kirbas C, Quek F (2004). "A review of vessel extraction techniques and algorithms" (PDF). ACM Computing Surveys. 36 (2): 81–121. CiteSeerX   10.1.1.460.8544 . doi:10.1145/1031120.1031121. S2CID   810806.
  24. Eberly, D. (1996). Ridges in Image and Data Analysis. Kluwer. ISBN   978-0-7923-4268-7.
  25. Kerrel, R. Generic Transitions of Relative Critical Sets in Parameterized Families with Applications to Image Analysis. University of North Carolina. 1999.
  26. Fritsch, DS, Eberly, D., Pizer, SM, and McAuliffe, MJ. "Stimulated cores and their applications in medical imaging." Information Processing in Medical Imaging, Y. Bizais, C Barillot, R DiPaola, eds., Kluwer Series in Computational Imaging and Vision, pp. 365–368.
  27. Canny J. (1986). "A computational approach to edge detection". IEEE Trans Pattern Anal Mach Intell. 8 (6): 679–698. doi:10.1109/TPAMI.1986.4767851. PMID   21869365. S2CID   13284142.
  28. Lindeberg T. (1993). "Discrete Derivative Approximations with Scale-Space Properties: A Basis for Low-Level Feature Extraction". Journal of Mathematical Imaging and Vision. 3 (4): 349–376. Bibcode:1993JMIV....3..349L. doi:10.1007/BF01664794. S2CID   16396756.