A system for the dynamic industrial inspection of specular freeform surfaces

A system for the dynamic industrial inspection of specular freeform surfaces

Optics and Lasers in Engineering 50 (2012) 632–644 Contents lists available at SciVerse ScienceDirect Optics and Lasers in Engineering journal homep...

1MB Sizes 3 Downloads 23 Views

Optics and Lasers in Engineering 50 (2012) 632–644

Contents lists available at SciVerse ScienceDirect

Optics and Lasers in Engineering journal homepage: www.elsevier.com/locate/optlaseng

A system for the dynamic industrial inspection of specular freeform surfaces Raphael D. Wedowski n, Gary A. Atkinson, Melvyn L. Smith, Lyndon N. Smith Machine Vision Laboratory, University of the West of England, Coldharbour Lane, Bristol, BS16 1QY, UK

a r t i c l e i n f o

a b s t r a c t

Article history: Received 12 January 2011 Received in revised form 2 October 2011 Accepted 11 November 2011 Available online 10 December 2011

The inspection of moving specular freeform surfaces is an industrial challenge so far largely unsolved, even for the qualitative case, i.e. the mere determination of the presence of surface defects as opposed to the quantitative reconstruction of a surface. Products produced in high quantities therefore still have to be inspected manually which is labour intensive, expensive, monotonous and subjective. We propose a novel hardware setup and methodology to overcome this shortfall. The reflection of a line laser from a moving surface is captured on a translucent screen; surface defects show as gaps or bulges. Two methods to extract the resulting information are proposed and ways for its interpretation are shown. The proposed method is very cost effective and easy to implement. While limitations to surface geometry exist and absolute precision is not achievable, it is shown that the system is able to reliably detect, characterise and localise a range of typical surface defects on moving glazed ceramic tiles, our example application. The method is however applicable to a wide range of hybrid and specular surfaces. & 2011 Elsevier Ltd. All rights reserved.

Keywords: Specular freeform surfaces Dynamic inspection Defect detection Multi-scale line extraction

1. Introduction Surface inspection is crucial for control of the quality of goods. Its ongoing automation is at the heart of the manufacturing industry as well as of a large research community. The two fundamentally different cases of Lambertian and specular object inspection have to be distinguished. Due to the reflective characteristics of specular surfaces, their morphology features cannot easily be detected by evaluation of the scene. Instead the surfaces themselves are invisible to the observer and only the reflection of the surrounding environment is visible in them. A further categorisation can be made between static and dynamic inspection, i.e. the inspection of moving objects as found in manufacturing environments. The latter requires all information to be captured in an instant or through some form of scanning process. So far, the dynamic inspection of non-flat, specular goods is only possible with complex setups including moving parts [1,2] or limited to highly specular surfaces with uniform reflectivity [3]. The research described in this paper presents a novel hardware setup and its associated methodology that together are able to detect defects on hybrid and specular freeform surfaces in a direct and cost effective way. Unlike similar setups [2], it uses a line laser to scan the whole width of a surface in one instant. The reflection from the laser of the surface is captured on a translucent screen that, in turn, is monitored by a CCD camera. The resulting line pattern on the screen, that we have named specular

n

Corresponding author. E-mail address: [email protected] (R.D. Wedowski).

0143-8166/$ - see front matter & 2011 Elsevier Ltd. All rights reserved. doi:10.1016/j.optlaseng.2011.11.007

signature, can take on highly complex shapes of virtually arbitrary nature but contains all the sought information about the surface, i.e. the topology and presence of defects. While our ultimate goal is the complete quantitative on-line reverse engineering of specular surfaces, in this paper we present a cost effective, simple and reliable way to qualitatively inspect moving specular freeform surfaces. The common surface defects of cracks/scratches as well as blisters, pinholes and dirt inclusions can be characterised and localised. We use ceramic tiles as an example application. They are known to be among the most difficult surfaces to inspect [4] and are often used as a means to verify research results [5,6]. This is because of their specularity, their curvedness, their varying colour and reflectivity as well as the high quality demands put upon them. A crucial operation of the methodology of the device is to extract the precise centre position of the signature with high accuracy and at high speed. Furthermore, gaps in the signature must be detected. We propose two ways to extract the signature and thereby give the operator the choice between high speed at a lower accuracy and a higher accuracy at the cost of processing time. The first is a standard column-wise centre of gravity computation while the second is a novel, high speed line detection algorithm. It is created by interweaving the extraction and tracing steps of a well known differential geometric line extraction algorithm [7]. We carry out these two phases simultaneously instead of sequentially. By exploiting the signature’s inherent continuity, we can extract every line point using knowledge of its characteristics, most importantly its position, orientation, scale and degree of ‘‘bulging’’. This brings a large reduction in processing time. Moreover, the method makes redundant any global

R.D. Wedowski et al. / Optics and Lasers in Engineering 50 (2012) 632–644

thresholds as required in previous work. As these are notoriously difficult to set, it is virtually impossible to satisfy all regions of an image, especially if different scales are present. Besides introducing our novel setup and methodology, we will also introduce above named algorithm. Furthermore we show how the gathered information can be used to detect, characterise and localise defects on moving specular surfaces and show examples of successful defect detection on difficult to inspect surfaces. The remainder of this paper is organised as follows: section two reviews the existing literature about object inspection and line tracing algorithms. Section three will introduce our device and lay out its working principles while section four is concerned with the analysis of the specular signature. Section five will show experimental results and section six is formed by the conclusion.

2. Related work 2.1. Object inspection Decades of research have resulted in a wide range of systems for the qualitative and quantitative inspection of Lambertian objects, both static and dynamic. Capabilities range from defect detection to surface reconstruction. Techniques include photometric stereo, passive stereo and laser triangulation/active light scanning methods. Photometric stereo is traditionally limited to static specimens although setups can be found that take all measurements virtually instantly [8] and dynamic photometric stereo setups also exist [9]. Research has also aimed to extend these techniques for the use on specular surfaces. In shape from shading the number of light sources has been increased [10,11] to provide at least three non-specular measurements for every surface point. In a similar manner, it has been proposed to increase the number of cameras in passive (binocular) stereo setups [12]. Specularity detection through colour or polarisation [13] has also been applied to both methods. These efforts however are still limited to the occurrence of minor specularities on primarily Lambertian objects and cannot work on fully specular ones. The same is true for active light scanning. While it probably is the most popular technique for Lambertian on-line inspection, speckle noise and interreflections permit an immediate transfer to specular objects. Both these problems have been tackled, for example through spacetime analysis [14] or identification of interreflections through colour [15] or polarisation [16] but so far a sufficient robustness and accuracy could not be achieved. As a result, it is popular to overcome the above problems by altering the reflection characteristics by spraying the surface with a Lambertian coating [17]. This obviously is not always possible or desirable, introduces inaccuracies and makes the determination of any fine scale surface features, such as surface roughness or gloss, impossible. Polarisation and its dependence on the angle of light incidence were also directly exploited to compute surface normals. Examples exist for diffuse as well as specular reflecting surfaces [18]. Results in general are very promising but the vast amount of required pictures under different illumination settings and with different polarisation filter angles render it unsuitable for on-line application. The specific problem of ceramic tile inspection has also seen many developments but these mostly focus on colour or specific defects on flat samples. Boukouvalas et al. [19] present a complete system for the defect detection and colour grading of ceramic tiles. They use a series of colour and black and white, area and line scan cameras, each tuned for the detection of different specific defects. The detection itself is then mostly handled by tuned

633

morphological image filters. Their system is limited to plain and Lambertian tiles and is, due to the amount of cameras, very expensive to install. Martı´nez-Alajarı´n et al. [20] tackle texture classification on flat marble slabs and use different colour spaces and image filters to pronounce and detect defects. In [21] filters and morphological operations are employed to highlight surface defects in a static setup. Although specular surfaces are addressed, the system cannot reliably distinguish between surface defects and specularities. Specialised systems for specular inspection also exist. Qualitative on-line inspection has long been possible with the straight forward but functional technique of dark field illumination (e.g. [22,23]). It visualises surface gradient deviations on flat surfaces and is naturally not applicable to curved ones. Slight variations exist for non flat surfaces with defects that have known slopes [24]. A somewhat similar technique is retro-reflection [3,25], where, through the reflection from a retroreflective screen, different surface gradients can be made visible as different grey levels. While surface defects can be detected even on curved surfaces (if their curvature is significantly higher than that of defect free areas) the technique cannot differentiate between influences of the gradient and those of differing levels of reflectivity and furthermire requires expensive hardware. The first professional systems for the complete reconstruction of specular objects are now entering the marketplace [26]. They are based on deflectometry [27] that can nowadays be seen as the gold standard for specular surface inspection. It is suitable for qualitative [28] as well as quantitative measurements [29] and delivers high-quality results. However, it is only suited for static inspection as several dozens of images need to be recorded of the same scene. A known pattern of binary, grey level or colour encoded fringes is displayed on a screen and the distorted appearance of it on the specular surface is monitored. Differing patterns are displayed until every point of the screen visible in the surface has been uniquely encoded. To disambiguate between the resulting surface normal/surface height pairs, commonly either the procedure is repeated with the screen at a second, linearly independent position or two cameras are used in a binocular setup [30]. The number of necessary readings is further enlarged as a low frequency pattern that is insensible to blurring has to be displayed. This is because the camera(s) can only either focus on the surface or on the reflected image of the screen. Zheng and Murata [31] developed a system with on-line potential. They measure surface normals by monitoring the specular highlight stripe on a rotating specular body. From the way the stripe moves, e.g. faster in convex regions, they compute a coarse representation of the object surface. Similar work was already carried out by Blake and Brelstaff [32]. With this approach the global shape can be computed but finer features are likely to be missed. Saito et al. [33] also monitor moving reflections but move the light source. They use the sine/cosine characteristic of Lambertian reflection to separate the reflections and consecutively use both to compute the normals. This enhances the accuracy but a hybrid reflection is compulsory. Chen et al. [34] show that the accurate reconstruction of surface mesostructure is possible from capturing the specular reflection. In their setup, the surface is stationary whereas a light source is manually moved until sufficiently dense data is acquired. As a point light source is used, acquisition is slow and not adaptable to a linear relative movement as on a conveyor belt. An interesting method was also proposed by Lu and Forrest [2]. Their surface scanner comprises of a linear, one-dimensional array of photoactive diodes and a point laser. The laser scans along one dimension of the surface while it is moved along the other. The diode array is positioned around the specular direction but has a very limited size. The peak of the specular lobe is interpolated to give the exact specular direction.

634

R.D. Wedowski et al. / Optics and Lasers in Engineering 50 (2012) 632–644

However, only one degree of freedom of the normals can be resolved and because of the limited size of the array, only nominally flat surfaces can be inspected. While in essence an on-line system, surface points are scanned consecutively which is very time-consuming. 2.2. Line extraction Line detection, tracing and extraction are well known problems and have been investigated for several decades. Applications range from fingerprint ridge extraction to the extraction of roads from aerial images [35], the extraction of vessels from MRI-images [36] and the processing of solar images [37]. Popular methods include active contours [38] and Hough transform based approaches. The former is a notoriously slow technique whilst some effort has gone into creating a real time Hough transform [39,40]. However, the Hough transform, which normally relies on a binary input (and hence a pre-processed, thresholded image), does not compute line orientation or width and is limited to detecting predefined analytical functions such as straight lines or circles. Often multiple tuned filters [36] or filters in combination with subsequent region growing [41] are used. The result is a rough estimate of the line orientation with an undetermined line width. Sargin et al. [42] chose an initial line point and grew the line along a tree with a branching factor of eight where each branch represented a neighbouring pixel. As criterion they use a second directional derivative threshold. A real time line extraction algorithm was proposed in [43] where the Laplacian edge detector is applied to the area of pixels that are most likely to represent the following course of the line. Again, no sub-pixel accurate line point detection is possible and no accurate information on orientation and width are extracted. Further standard procedures include edge detectors such as Canny [44], which can be tweaked to detect lines. These are however very crude, very imprecise and very unspecific. Their benefit lies in their processing speed. More sophisticated methods employ differential geometry. The image is seen as a height map and line centre positions are defined as regions of high directional curvature. They return the line orientation in addition to reliable and sub-pixel accurate line centre positions and also extract the width of the lines. A particularly well designed algorithm was published by Carsten Steger in 1998 [7] and has since then been the basis of much research work and serves as foundation for our algorithm. Steger detects line centre points as positions of high absolute directional curvature (negative for ridges and vice versa). Line edges are defined as the points of maximum directional gradient on a sweep perpendicular to the line. In a first step, line pixels are identified

within the whole image matrix. In a second step, the detected line pixels are linked together. Because of their close proximity and the known line orientation, this is a fairly easy procedure. Like all differential line detection algorithms, it relies on robust and meaningful derivatives which can be obtained by convolution with the Gaussian kernel. For this to work reliably, the kernel parameters have to be precisely matched to the feature’s scale. Therefore a time intensive scale space iteration needs to be employed, a technique that greatly limits the speed of application. In this paper we begin to identify a requirement for a method that omits the need for iteration and guarantees best scale parameter selection at the same time. The classical approach consists of treating the scale space sequentially, i.e. by combining the responses and searching for maxima in scale space. Some publications deal with the optimum selection of the parameters. Lindeberg [45] proposed an automatic selection based on the local degree of diffuseness of the image while Vanhamel et al. [46] aim to select a set of best scales based on maximising the correlation between the smoothed and the noise free image which is estimated using robust statistics. However, all these methods iterate through scale space first and select the best scales by comparison afterwards. We propose a more direct approach for scale selection. This is made possible as we trace and detect lines simultaneously in a purely local approach and so make it possible to extract and employ information about the line at the same time.

3. Hardware We have designed a novel device that is shown in Fig. 1 as a photo and a sketch. It is placed above of a conveyor belt with the specular probes moving beneath it. The surfaces are scanned in segments. A line laser is inbound on the whole width of the specular surface and reflects of it towards the translucent screen. A camera monitors the screen on which for every sequential surface position, a single curve (coined ‘‘specular signature’’) will be generated. Depending on the surface topography, it can take on highly complex shapes and contains a very large amount of information about the surface. The point-wise direction of reflection and hence the curve centre position is determined by the surface normals at the intersection of the laser light plane and the surface (at least if the influence of the non-centred specular lobe can be neglected). As any change in the surface normal will show double in the angle of reflection, even for small normal deviations a large displacement of the signature will result. This makes the device very sensitive and surface defects can be detected through careful examination of the line. This is similar to

Fig. 1. Design and principle of the new device, (a) photograph and (b) sketch. Within the first implementation described in this paper, only camera 2 is used.

R.D. Wedowski et al. / Optics and Lasers in Engineering 50 (2012) 632–644

635

Fig. 2. (a) Comparison of a common static deflectometric setup and (b) the proposed reciprocal method. Picture (a) taken from (Werling et al., 2009).

dark field illumination but instead of generating a crude light/no light effect, defects show as bulges and holes in the signature. Crucially, this will work not only for flat surfaces but also for surfaces with a curved shape. The proposed device can be thought of as on-line or scanning deflectometry. By following the principle of Helmholtz reciprocity, it in effect reverses the deflectometric setup. The known point in space that was the focal point of the camera lens is replaced by the lens of the line laser while the screen that produced the pattern is replaced by a translucent one that instead visualises the reflection (see Fig. 2). As a result, our device can in general be employed for the same range of surfaces. As in deflectometry, the angular resolution as well as the maximum resolvable surface angles and surface area are functions of the surface-screen-distance (SSD). With increasing distance, the angular resolution will increase. The relationship hereof can for small inclinations be approximated by du/dup SSD as depicted in Fig. 2 and otherwise is a tangential relationship [47]. Similar, both the maximum resolvable normal inclinations and the size of the measuring field will approximately decrease inversely proportional to the distance but can be extended by increasing the size of the screen. Therefore a theoretically unlimited angular resolution can be achieved by a large SSD for very flat surfaces whereas curved and large surfaces can be inspected with a smaller distance and at a lower angular resolution. However, a limit is set as both, high convex curvature areas of the surface and a large SSD will lead to fading out signatures that at some point will no longer be perceivable. A further restriction applies. Unlike in deflectometry, information is lost if more than one surface point reflects to the same point on the screen. This can happen for small longitudinal concavities with focal lengths equal to or smaller than the SSD where the reflection of many points becomes focussed on one screen point or the signature becomes self overlapping respectively. As the focal length is equal to half the radius of curvature, for every surface point SSD o r=2

ð1Þ

where r is the radius of (concave) curvature has to hold. However, this proved unproblematic for the vast majority of specimen used in our experiments. As ceramic tiles usually have a maximum height deviation of only a few millimetres, it is possible to position the screen at a very low distance (o5 mm), just above the highest point of the surface and hence only a few millimetres above the lowest one. At this SSD, a satisfactory magnification can still be achieved.

Fig. 3. Fading out signature (detail); (a) Input; (b) Limitations of global threshold; (c) Result of novel method.

information is required: – exact signature centre position to determine the signature’s gradient – the positions of any occurring gaps We propose two different methods of extraction, the first being standard column-wise centre of gravity computation (1D–COG) [48,49] offering potential for real-time processing at a relatively low accuracy, the second being a specially designed algorithm to achieve high accuracy at the expense of processing time. COG is thereby only applicable to signatures representable as analytical functions, i.e. where every column of the screen is crossed once at most. For signatures only representable as parametrical functions the second, more complex algorithm has to be applied. The latter will be introduced in the following section.

4. Specular signature analysis 4.1. Groundwork A crucial process of the methodology is the precise extraction of the specular signature. Examples of signatures are shown in Figs. 3 and 6. As will be shown in Section 4.3, the following

In its least restricted form the signature is allowed to follow virtually arbitrary routes across the screen and can furthermore

636

R.D. Wedowski et al. / Optics and Lasers in Engineering 50 (2012) 632–644

vary in width, especially where it fades out at its sides. We have created a novel algorithm with the aim of extracting the signature with maximum accuracy at a reasonable processing time. Because of its accuracy we have chosen a well known differential geometric line extraction algorithm [7] as foundation and, by the simultaneous extraction and application of information about the line were able to severely speed up the processing. Furthermore we were able to incorporate multi scale processing and to improve the algorithm’s accuracy for lines of varying width and intensity. While tailored to our application, it is immediately applicable to any line extraction and tracing problem. In the following the working method of the original algorithm as well as our alterations will be outlined. As all differential line or edge detectors, [7] uses an intensity image and treats it as a height map. Along this topographical landscape, derivatives can be computed. These have to be present and meaningful over the whole width of a line. Since for bar shaped lines (see Fig. 4) the derivatives vanish in its interval, the original image is convolved with a Gaussian smoothing kernel Iðx,y, sÞ ¼ Iðx,yÞnGðx,y, sÞ

ð2Þ

where 2 2 1 ðx þ y Þ Gðx,y, sÞ ¼ pffiffiffiffiffiffi e 2s2 2ps

ð3Þ

is the kernel. The image derivatives can then be calculated using the central difference scheme: Ix ðx,y, sÞ ¼

Iðx þh,y, sÞIðxh,y, sÞ 2h

ð4Þ

where h is the spacing, in our case one pixel. Iy ,Ixx ,Iyy ,Ixy ,Iyx are calculated respectively. Alternatively convolution with the Gaussian derivative kernels is suitable as well. It was shown by [50,51] that the convolution with well chosen Gaussian kernels produces the desired second derivative maxima at the centre position for different line shapes, i.e. bar-shaped, parabolic and roof-like (see Fig. 4). The centre line point (the position of the zero crossing of the directional curvature) is found by setting the derivative of the second order Taylor polynomial to zero. In two dimensions it follows that the centre point location is: ½px ,py T ¼ ½tox ,toy T

ð5Þ

where t¼

I x ox þ I y oy Ixx o2x þ2Ixy ox oy þ Iyy o2y

ð6Þ

,

and ½ox ,oy T ¼ o , is a vector defining the orientation of the maximum second derivative computed as the eigenvector of

Fig. 4. Three different line profile shapes bar shaped, parabolic and roof-like and the result of convolution with a Gaussian kernel.

maximum eigenvalue of the Hessian matrix " H¼

Ixx

Ixy

Iyx

Iyy

# ð7Þ

and hence the orientation orthogonal to the signature. A pixel is declared a signature point if px ,py , the interpolated signature centre position, lies within its boundaries This alone creates manifold false positive responses. Therefore, as final criterion, thresholding of the magnitude of the curvature , in the direction o (from now on referred to as the degree of ‘‘bulging’’ of the line; not to be confused with the curvature along the path of the line) is applied. This reliably excludes pixels in the image background but has to be individually fine tuned to detect only signature centre pixels. Fig. 3 demonstrates the difficulty of defining this global threshold as in Fig. 3b false positives are present while a considerable part of the line was missed. Using our algorithm, it was accurately traced in Fig. 3c. Once a signature centre is defined, the signature edges are found along a sweep perpendicular to the signature orientation. In a second step the identified pixels are linked together. Therefore the found orientations have to be harmonised as initially they can point in either one of the two opposing directions of travel. For more details, please refer to [4]. The standard deviation s of the kernel has to be accurately matched to the scale of the signatures. In the case of lines, scale denotes line width. If s is chosen too small, the resulting convolution profile will be flat around the signature centre which hence cannot be detected. Steger as well as Canny [44] have shown that, in order for the second directional derivativepto ffiffiffi have its maximum at x¼ 0, the signature centre position, s Zð 3=6ÞW has to hold, where W is the full width of the signature. On the other hand, if s is chosen too large, oversmoothing will occur and relevant information can be lost. Steger, in the context of accurate width determination also observed that the edges of the line can never move closer to the centre than s. Hence pffiffiffi 1 3 W rsr W 2 6

ð8Þ

represents the lower and upper bounds of sigma. The range of scales of signatures that can be detected by a given fixed sigma is therefore very limited. In the original work of Steger, multi-scale processing is not included. The algorithm is for this reason limited to small bands of line widths. The algorithm follows a two step approach. In the first step, line pixels are identified in the whole image, in the second step, these pixels are linked to lines. The latter step was enhanced by [52] for cases where gaps appear in the line. They compute a first order Radon transform and search for the line segment that yields the maximum inner product with the image. In cases where no direct neighbour can be identified as line member, they search within a triangle centred on the average orientation of the last M line points and with internal angle y (see Fig. 5).

Fig. 5. Search sequence at gaps and intersections with increasing distance d.

R.D. Wedowski et al. / Optics and Lasers in Engineering 50 (2012) 632–644

637

4.2. Novel real-time, multi scale line tracing Through a change in the algorithm, scale space computation can be included, the algorithm can be sped up and global thresholds can be made superfluous, which enhances the adaptability and accuracy of the algorithm. We interweave the two steps of detection and linkage. Every successive step is only performed for those pixels that lie in the immediate extension of the latest previously detected pixel while non candidates are strictly excluded. For initialisation, a full scale space analysis is performed along one single column or row that the signature is guaranteed to cross. In our case, that is the centre column of the image. A line pixel is detected and its direction is computed. Then, only the pixels in the assumed direction of line travel are checked for line membership. All characteristics of a signature, be it width, profile shape or orientation, will only change gradually along its path. Therefore the previously employed global threshold can be omitted and instead a local threshold of the bulginess’ magnitude can be introduced that for every pixel depends on the bulginess of the previously detected signature pixel. Pixel P i þ 1 will be a member of the line if its directional curvature is close to that of pixel P i . P i þ 1 A Line2absðBi þ 1 Bi Þ oBThresh

ð9Þ

where B denotes the curvature orthogonal to the line direction. As also the width of the signature does not change abruptly, the optimal scale of the Gaussian kernel for Pixel Pi þ 1 can be determined through the width of pixel P i . The previously required scale space iteration can hence be avoided and sigma becomes pffiffiffi 1 3 W i r si þ 1 r W i ð10Þ 2 6

s however, is not computed for every pixel. A set of sigma classes is predefined and a matching one will automatically be chosen. Using local curvature thresholding is sufficient to trace curves with high precision and over various levels of width. Fading out signatures can be traced well (see Fig. 3). However if the signature fades out, the directional curvature, and with it the resulting threshold, are gradually reduced to zero. Consequently, in these conditions the algorithm detects false positives in the background of the image. However, these bogus signature pixels have no order; their width and orientation vary randomly. This characteristic can be used for their exclusion if two more variable local thresholds, defining the signature’s change in orientation and width, are introduced. P i þ 1 A Line2absðai þ 1 ai Þ o aThresh

ð11Þ

P i þ 1 A Line2absðW i þ 1 W i Þ oW Thresh

ð12Þ

where a is the line direction. As mentioned, a large difference between random changes in the image background and orderly changes along a line exist. Hence the thresholds can be set rather loosely. Without further investigation, we found that W Thresh ¼ 10pixels and aThresh ¼ 701 guarantee not to stop the detection/tracing prematurely while also guaranteeing to stop the algorithm after very few false positives. The same is true for BThresh ¼ 0:2. These values proved successful for a wide range of images and several hundred computed signatures. Due to the local approach, it is important that the algorithm is able to bridge gaps to guarantee continued processing. Otherwise whole parts of the signature can be missed. When no line pixels can be identified in the direct neighbourhood, the method described in [47] and depicted in Fig. 5 is applied. We search in an outwards sweep for line members. If none are detected, the search distance d is increased. If d gets larger than a predefined

Fig. 6. Signature 2 with gap and tracing result.

maximum gap size, the last detected pixel is declared a line end and the algorithm stops. The complete algorithm is presented in the shape of a flow chart in Fig. 7. If directly neighbouring pixels are to be connected, a crude orientation accuracy of 0.75 p (1351) is sufficient to limit the search area to three pixels within the eight-pixel-neighbourhood. However, a precise measure is needed whenever the distance between two conjoint pixels is larger as caused by gaps in the line. As discussed in Section 4.3, an accurate curvature measure is furthermore needed for the identification of some typical defects. In the original work of Steger, the orientation of the maximum second derivative is used. This is a weak descriptor as it can be shown to have a tendency towards the horizontal, vertical and diagonal orientations. This is because it is only dependent on a limited neighbourhood (the 4-pixel neighbourhoods of its 4-pixel neighbourhood) and the discrete nature of an image does not allow for accurate interpolations. To improve the accuracy of the line direction computation, a wider neighbourhood has to be included. Therefore a weighted average of the orientations of the maximum gradients along a sweep perpendicular to the signature can be employed. As weighting factor, the gradient magnitude is used. This is sensible because gradients with a high magnitude, as they appear at the edges of the signature, are predominantly defined by the signature itself and are less vulnerable to surrounding noise. Noise sources, for example can be differences in the signature’s intensity. Expressed as an equation: Pw w ox ðP x ,P y Þr ðP x ,P y Þ2 ox ðpx ,py Þ ¼ a ¼P ð13Þ w a ¼ w rðP x ,P y Þ2 where Px ¼ px þaoxPrior

f orðw o a owÞ

ð14Þ

Py ¼ py þ aoyPrior

f orðw oa o wÞ

ð15Þ

oxPrior , as a first approximation, is Steger’s orientation of maximum curvature and ( ox ðP x ,P y Þ ,a o 0 ox ðPx ,Py Þ ¼ ð16Þ ,a 4 0 ox ðP x ,P y Þ oy ðpx ,py Þ is calculated accordingly. The latter step takes into account that gradients on opposing sides have opposing orientations. Furthermore it harmonises the defined signature direction. As the preceding pixel position will always be known, once the sub pixel accurate centre position of the actual pixel is computed, the orientation can also be calculated using a backwards difference scheme. ox ¼

px pxPrior ox ,oy

ð17Þ

638

R.D. Wedowski et al. / Optics and Lasers in Engineering 50 (2012) 632–644

Fig. 7. Flow chart of the algorithm.

oy accordingly. Here, the weighted gradient neighbourhood orientation is used to define the sub-pixel centre position. Both the gradient neighbourhood method and the backwards difference scheme prove much more accurate than the orientation of maximum curvature. Fig. 8a and b shows direction computations for an artificial and a real image of the upper quartiles of circles. The real image was given as the aerial image of a circular automotive testing ground. As can be seen, the two novel methods for direction computation follow the ground truth much closer. This follows also from the key statistical error measures presented in Table 1. Errors of the new methods are only about 20% of those of the original method. As far as processing times are concerned, our algorithm was shown to be around 20 to 50 times faster than the underlying one. Fig. 3 shows details of a fading out signature, where (a) shows the

input image, (c) shows the result after tracing with our approach and (b) the result of the extraction step of the original algorithm. Processing time of a uniscalar implementation of our novel algorithm was 1.35 s while Steger’s algorithm took 24.75 s to compute. Image size was 2056  500 pixels and the detected signature had a length of 1920 pixels. Another example of a traced signature is given in Fig. 6 that also shows the input image. Note that the gap in the signature was well bridged. Also note that the background noise did not influence the tracing. The image size was again 2056  500 pixels while 1885 signature pixels were identified and processing took 1.29 s (24.4 s for the original method). However, the algorithm itself can also bring benefits to other areas and is not limited to the extraction of specular signatures but

R.D. Wedowski et al. / Optics and Lasers in Engineering 50 (2012) 632–644

639

Fig. 8. Comparison of three line direction computation methods using an artificial (a) and a real image (b).

Table 1 Comparison of the three methods of line direction computation. Error analysis (all values in degrees) Artificial image

SD WN FD

Fig. 9. Result of a fully automatic 8-scale implementation of the proposed algorithm on a line with vastly varying width. In (b) the areas where different scales were applied are marked.

Real image

Mean

Median

Std

Max

Mean

Median

Std

Max

10.108 1.816 2.227

11.040 1.992 2.108

1.638 0.281 0.417

19.115 3.579 6.180

10.501 2.466 2.346

10.512 2.008 1.719

1.741 0.596 0.643

25.568 7.692 11.405

can find various applications such as road or river extraction, the interpretation of MRI images and others. An example is shown in Fig. 9. In this image of a river delta the line/river width varies between 5 and 49 pixels. The algorithm was implemented using eight different scales. These were automatically applied to the eight different areas marked in the figure. The full eight-scale run time of our algorithm was 0.52 s for the image of size 287  320 pixels and 260 detected line pixels while eight runs of the original algorithm using the respective scales would take 17.6 s. However, for more details on the line tracing algorithm, more examples and a more detailed analysis of its processing time, multi scale ability and direction accuracy, the interested reader is forwarded to [53] where we show that the processing time is of the same order of magnitude as that of the common Canny edge detector while it delivers results of a complex differential geometrical line extractor. For now we conclude that our algorithm is well suited to our needs and delivers highly accurate results at a relatively high speed.

4.3. Defect detection and classification Different defects have different causes and hence demand different adjustments in the production process. A versatile tile inspection system must therefore be able to distinguish between them. Furthermore the defect position must be determined as this influences the severity of the defect also to possibly mark the defect in a subsequent step. Boukouvalas et al. [54] lists the most common surface defects on ceramic tiles. Of these, our system is able to detect cracks/scratches as well as blisters, pinholes and dirt inclusions. In the proposed setup, the Lambertian regions of dirt and the exposed clay of scratches and cracks will not specularly reflect while the slopes of pinholes will reflect the light away from the direction of defect free reflection. Therefore, these defects can be detected by detecting gaps in the signature. Bump defects or blisters on the other hand can be shown to have a volcanoe-like appearance with rotationally symmetric opposing slopes. This leads to their appearance on the signature as bulges that form to both sides of the signature. While deliberate surface features could lead to similar bulges, those created by blisters are identifiable by their variation over

640

R.D. Wedowski et al. / Optics and Lasers in Engineering 50 (2012) 632–644

space time, the variation in consecutive signatures of the moving surface. This is shown in Fig. 10 (a–c from left to right) where the lateral displacement of the surface in between the single scans is 0.5 mm. Note that the signature gap shown Fig. 10b is only present for large SSDs and can hence not be used to identify blister defects. Also note that in a and b towards the left of the signature a similar bulge is visible. This is not generated by a defect but by a decorative edge on the surface. It does not appear below the signature in later images. A unique condition for the appearance of blister defects is hence given by a pattern of high positive and high negative gradients, facing each other in both the spatial dimension along the signature and along the temporal dimension over consecutive scans. This pattern is shown in Fig. 11. As gradient threshold an absolute value of 1 is used and the named pattern is searched for in a limited neighbourhood of 50 pixels width and 2 mm height. This is because bulges were found to be usually not more than 50 pixels wide while the temporal magnitude is determined by the defect size. To localise the defect without any further knowledge of the surface geometry the following method is proposed. It neglects the influence of the surface as an optical component that is it assumes the length of the signature trace to depend only on the length of the surface while in reality it also depends on the surface’s concavities and convexities. The defect position is approximated in respect to the ratio of the lengths of the signature to each side of the gap/bump that flags the defect. The width of the defect is proportional to the width of the gap or bump. The signature length is the cumulated sum of the Euclidean distances between neighbouring points. Position ¼

Ll Ll þ Lr

with X absðPi þ 1 Pi Þ L¼

ð18Þ

ð19Þ

i

L denotes length, the subscripts l and r denote the left and right side of the gap and P denotes the 2/1 vector of signature point positions. The underlying assumption is very reasonable for small SSDs while it becomes less accurate for larger distances and more sculptured surfaces. Its actual accuracy is highly dependent on the surface geometry and symmetry as well as on the SSD and the defect position. It is therefore not possible to specify it in a universally valid way. However, it can be shown to be constantly accurate enough for the localisations to be congruent with the results of a visual inspection. The defect positions on the created maps fully resemble the actual defect positions on the surfaces. This can also be seen in the examples in Section 6. However, the result of the localisation is a binary defect map. In the next step, the defects need to be classified. As the outline of the defects is now known, a simple classification, based on binary blob analysis can be applied. Note that this does not affect defects of the bump type as these are readily classified by their method of

detection, the gradient patterns. Pinholes show as circular regions while cracks and scratches are oblong and dirt inclusions lead to an irregular shaped region. Blobs qualify as scratches if the major axis of the ellipse that has the same second-order moments as the blob itself is severely longer than the minor axis. We chose a factor of 5 as the threshold. Pinholes show as circular or elliptical regions. The ellipse will therefore very accurately follow the blob’s outline and the ratio of the ellipse’s and the blob’s area will be close to unity. For irregular regions on the other hand the fill factor will be considerably less. As threshold we used 0.8. This results in an accurate classification of larger defects. For areas smaller than about 30 pixels however, the low number of pixels does not allow for accurate percentages to be computed and the method cannot be applied.

5. Experimental validation Usually the reader might expect an analysis showing true/false positives and negative detection and classification results. For the proposed system however this is not applicable. This is because the differentiation between those surfaces and defects that can be inspected/detected and those that cannot is rather binary. That is the method will detect some defects with absolute reliability while it will not detect others. The threshold lies in the surface topography and the ability to satisfy requirement (1). If the SSD can be chosen so that (1) is fulfilled, defects will show and the method will detect them. The examples shown in this section are chosen to show that this threshold is satisfactory high and to give examples of inspectable surfaces that common machine vision systems would have difficulties with. The presented test set covers high as well as low albedo surfaces. On these all of the discussed defect types are present and were detected. The test set shows that the system is not limited to tiles that have a relatively flat global height profile but also comprises the inspection of a soup dish (Fig. 13). We also show examples of surfaces with very high ( 4451) surface gradients (Fig. 14) and the successful inspection of a small scale wave pattern, an especially difficult task (Fig. 15). With the exception of the first example, for which the SSD was 220 mm, it was always set to between 10 and 20 mm. Note that as the SSD

Fig. 11. Sketch of the characteristic gradient pattern of bump defects.

Fig. 10. Three scans of a curved surface showing pinhole defect. The distance between the single measurements is 0.5 mm. (a) A characteristic bulge above the signature is followed by (b) a gap and (c) a bulge below the signature. The region of high curvature to the left of the signature is not a defect but caused by a decorative edge on the surface.

R.D. Wedowski et al. / Optics and Lasers in Engineering 50 (2012) 632–644

is a variable, it can for every type and size of tile be set to an optimum level so that requirement (1) is fulfilled. Afterwards any number of this tile can be inspected. Note that the defects on the presented defect maps are localised very accurately. All examples show an example input image of the signature at a defect position on the top and the result of the application of our tracing algorithm to this very image below. The defect position is marked with a red border. At the bottom from left to right image(s) of the actual tile or plate are shown together with the resulting defect map. Within the latter, outlines of the inspected surfaces with detected defects are shown. The defects are shown in colours representing the classification result. Blisters are shown in blue, scratches in red, dirt inclusions in green and pinholes in yellow. Fig. 12 shows the processing of a curved, specular tile. The defect positions are marked with arrows. Note that from the viewpoint in (d), the two scratches are partly hidden in a specular highlight while the white stripe to the left of the scratches is also a specularity that it is not distinguishable from the scratches. In (e) the two scratches are well detected and correctly classified. Fig. 13 shows the application of the method and device to tableware. A dinner plate is processed. Again, the defect was

641

detected and classified. Note that even though the plate has steep and high contours, the small blister at its very centre is still detectable. The defect map only shows a centred part of the plate as the high prolate gradients at the top and bottom did not reflect onto the employed screen. The difficulty in inspecting the tile in Fig. 14 is the very high surface gradients present on the tile. Due to the high-reflective white colour of the tile the specular lobe is visible as a blur near the signature. This did not affect the signature extraction. With a very low SSD, the surface can still be detected as the concavity condition can be fulfilled. While the defect actually is a dirt inclusion, it was misclassified as a pinhole. This is because the defect coincidentally had an elliptic outline. Furthermore it had a small area of only 27 pixels. A detail of the defect and the fitted ellipse is shown in the lower right hand corner of the figure. Fig. 15 shows the defect detection on a tile showing a wave pattern. Two scratches were deliberately carved orthogonal and parallel to the existing pattern. A detail of the scratches is shown. The picture was taken from a viewpoint that maximised their visibility. Nevertheless, as can be seen, they are notoriously difficult to spot. However, neither this fact nor the fine height

Fig. 12. (a)–(e) from left to right and top to bottom. Processing of curved specular tile showing two scratches.

Fig. 13. (a)–(d) Processing of a plate and characteristic region of high gradient identifying defect.

642

R.D. Wedowski et al. / Optics and Lasers in Engineering 50 (2012) 632–644

Fig. 14. (a)–(d) Processing of a white tile with high surface gradients.

Fig. 15. (a)–(d) Processing of tile with small scale wave profile. Also showing detail of the two scratches.

pattern did pose a problem to the detection, localisation and classification of the defects.

6. Conclusion We have proposed a novel machine vision system that is able to detect a wide range of surface defects on moving specular freeform surfaces. Through what can be defined as a reciprocal deflectometric setup, defects appear as gaps in a line of varying complexity. The latter is dependent on the surface morphology and on the geometry of the device which can be adjusted. Its limitations thereby are clear and have to be named. The range of surfaces to be inspected is limited by the so called

concavity condition. Whether a defect can be detected is strongly dependant on the curvature of the surface at the defect position as well as the size of the defect. The sensitivity and specificity of the system can therefore not be defined. The presented method of defect localisation also is not exact but only approximate. It was however shown that it nevertheless delivers results whose accuracy is entirely sufficient for a reliable quality control. A further limitation is that the current method of defect classification has the named limitation of being unable to distinguish between small dirt inclusions and blisters. However, the systems benefits are also evident. A wide range of defects and surfaces can be inspected. Examples were presented that show that the system has enough potential to successfully detect defects on hard to inspect specular surfaces

R.D. Wedowski et al. / Optics and Lasers in Engineering 50 (2012) 632–644

in a dynamic fashion and hence to find applications in industry. It was shown that small scale defects can be detected and, by the inspection of a soup plate, that the inspection is not limited to globally flat surfaces either. This, in combination with the dynamic nature of the setup sets it apart from most other vision systems. Further crucial advantages of the proposed device are its ease and cost efficiency of implementation; a clear benefit when compared to e.g. retro-reflection. Further research will extend the principal design of the device to be able to quantitatively reconstruct specular surfaces on-line. This will include a second camera as a standard active light scanning stage whose relatively inaccurate results will be used to provide spatial information that can then be fused with the angular information of the signature to deliver accurate surface reconstructions. The results of this research should also be usable to heighten the accuracy of the defect localisation and classification procedures.

[20]

[21] [22]

[23]

[24]

[25] [26]

[27] [28]

Acknowledgments This work was jointly funded by Great Western Research and FIMA SI Ltd under project code 280. References [1] Sureshbabu,SK , Forrest,AK , McCollum,AJ 1999. Multichannel telecentric flying spot scanner for real-time surface inspection, S P I E, Proceedings of, 3823, p.168–77. [2] Lu RS, Forrest AK. 3D surface topography from the specular lobe of scattered light. Opt Lasers Eng 2007;45(10):1018–27. [3] Reynolds RL, Karpala F, Clarke DA, Hageniers OL. Theory and applications of a surface inspection technique using double-pass retroreflection. Opt Eng 1993;32(9):2122–9. [4] Silva JA, Pais CP, Freitas JCA, Carvalho FD and Rodrigues F.C. 1993. Detection and automatic classification of defects in ceramic products, Proceedings on the International Conference on Manufacturing Automation, 02. August 1992 1993, SPIE p. 22–9. [5] Boukouvalas C, Kittler J, Marik R and Petrou M 1994. Automatic grading of ceramic tiles using machine vision, Industrial Electronics, 1994. Symposium Proceedings, ISIE’94., 1994 IEEE International Symposium on, May 1994 1994, IEEE p. 13–8. [6] Costa CE, Petrou M. Automatic registration of ceramic tiles for the purpose of fault detection. Machine Vision and Applications 2000;11(5):225–30. [7] Steger C. An unbiased detector of curvilinear structures. IEEE Trans Pattern Anal Mach Intell 1998;20(2):113–25. 1998. [8] Hansen MF, Atkinson GA, Smith LN, Smith ML. 3D face reconstructions from photometric stereo using near infrared and visible light. Comput Vision Image Understanding 2010;114:942–51. [9] Farooq AR, Smith ML, Smith LN, Midha S. Dynamic photometric stereo for on line quality control of ceramic tiles. Comput Ind 2005;56(8–9):918–34. [10] Coleman EN, Jain R. Obtaining 3-dimensional shape of textured and specular surfaces using four-source photometry. Computer Vision Graphics and Image Processing 1982;18(4):309–28. [11] Sun J, Smith ML, Smith LN, Midha S, Bamber J. Object surface recovery using a multi-light photometric stereo technique for non-Lambertian surfaces subject to shadows and specularities. Image Vision Comput 2007;25(7):1050–7. [12] Bhat DN and Nayar SK 1995. Stereo in the presence of specular reflection, Proceedings on the fifth international conference on computer vision, 06/20/ 1995 - 06/23/1995 1995, p. 1086–92. [13] Yoon KJ. Specularity-Invariant Image Representation and Its Application to Correspondence Search and Reflection Components Separation. 12s10. Korea: Samsung Inc; 2005. [14] Curless B and Levoy M 1995. Better Optical Triangulation Through Spacetime Analysis, Computer Vision, 5th International Conference on, June 1995 1995, Computer Systems Laboratory, Stanford University p. 987–94. [15] Pont SC, Koenderink JJ. Reflectance from locally glossy thoroughly pitted surfaces. Comput Vision and Image Understanding 2005;98(2):211–22. [16] Clark J, Trucco E, Wolff LB. Using light polarization in laser scanning. Image Vision Comput 1997;15(2):107–17. [17] Goesele M, Lensch H, Lang J, Fuchs C and Seidel HP 2004. DISCO: acquisition of translucent objects, ACM SIGGRAPH 2004 Papers, 2004, ACM, p. 835–44. [18] Ferraton M, Stolz C and Meriaudeau F 2008. Surface Reconstruction of Transparent Objects by Polarization Imaging, Signal Image Technology and Internet Based Systems, 2008. SITIS’08. IEEE International Conference on, 2008, IEEE, p. 474–9. [19] Boukouvalas C, De Natale F, De Ton G, Kittler J, Marik R, Mirmehdi M, Petrou M, Le Roy P, Salgari R, Vernazza G. ASSIST: automatic system for surface

[29] [30]

[31]

[32] [33]

[34]

[35] [36] [37]

[38] [39] [40]

[41]

[42]

[43]

[44]

[45] [46]

[47] [48] [49]

[50]

[51]

643

inspection and sorting of tiles. J Mater Process Technol 1998;82(1–3): 179–88. Martı´nez-Alajarı´n J, Luis-Delgado JD, Toma´s-Balibrea LM. Automatic system for quality-based classification of marble textures. Systems, Man, and Cybernetics, Part C: Applications and Reviews. IEEE Trans 2005;35(4):488–97. Zheng H, Kong LX, Nahavandi S. Automatic inspection of metallic surface defects using genetic algorithms. J Mater Process Technol 2002;125:427–33. Braslavsky I, Amit R, Ali BMJ, Gileadi O, Oppenheim A, Stavans J. Objectivetype dark-field illumination for scattering from microbeads. Appl Opt 2001;40(31):5650–7. Boukouvalas C, Kittler J, Marik R, Mirmehdi M, Petrou M. Ceramic tile inspection for colour and structural defects. Proceedings of Advanced Materials and Processing Technologies 1995:390–9. Kosmopoulos D, Varvarigou T. Automated inspection of gaps on the automobile production line through stereo vision and specular reflection. Comput Ind 2001;46(1):49–63. Heida, JA, Bruinsma, AJA 1998. D-Sight technique for rapid impact damage detection on composite aircraft structures, ECNDT. Micro-Epsilon. (2010) reflectCONTROL [online]. Available from: /http:// www.micro-epsilon.co.uk/products/measuring-systems/Automotive-Anla gen/reflectCONTROL robotic/index.htmlS. [Accessed: 02.09.2010]. Kammel S, Leon FP. Deflectometric measurement of specular surfaces. IEEE Trans Instrum Meas 2008;57(4):763–9. Caulier Y, Spinnler K, Bourennane S, Wittenberg T. New structured illumination technique for the inspection of high-reflective surfaces: application for the detection of structural defects without any calibration procedures. Journal on Image and Video Processing 2008;1:1–14. Tarini M, Lensch H, Goesele M, Seidel HP. 3D acquisition of mirroring objects using striped patterns. Graphical Models 2005;67(4):233–59. Knauer MC, Kaminski J, Hausler G. Phase measuring deflectometry: a new approach to measure specular free- form surfaces. Proc SPIE 2004;2004: pp366–376. Zheng JY, Murata A. Acquiring a complete 3D model from specular motion under the illumination of circular-shaped light sources. IEEE Trans Pattern Anal Mach Intell 2002;22(8):913–20. Blake A, Brelstaff G. Geometry from specularities. ICCV 1988;1988:394–403. Saito H, Omata K, Ozawa S. Recovery of shape and surface reflectance of specular object from relative rotation of light source. Image Vision Comput 2003;21(9):777–87. Chen T, Goesele M and Seidel HP 2006. Mesostructure from Specularity, Proceedings of the 2006 IEEE Computer Society Conference on Computer Vision and Pattern Recognition, 2006, IEEE p. 1825–32. Porikli FM Road extraction by point-wise Gaussian models, Proceedings of SPIE, p. 758–64, 2003. Renault C, Desvignes M and Revenu M 3D curves tracking and its application to cortical sulci detection, ICIP 2000, Vancouver, p. 491–4, 2000. Lee JK, Newman TS and Gary GA Automated detection of solar loops by the oriented connectivity method, 17th International Conference on Pattern Recognition, Cambridge, UK, p. 315–8, August 2004. Bresson X, Vandergheynst P, Thiran JP. Multiscale active contours. Int J Comput Vision 2006;70(3):197–211. Fernandes LAF, Oliveira MM. Real-time line detection through an improved Hough transform voting scheme. Pattern Recognit 2008;41(1):299–314. Nakanishi M, Ogura T. Real-time CAM-based Hough transform algorithm and its performance evaluation. Machine Vision and Applications 2000;12(2): 59–68. Plaza A, Cernadas E, Duran ML, Rodriguez PG and Petron MJ Multi-Scale Detection of Curvilinear Structures with High Contour Accuracy, 5th Iberoamerican Symposium on Pattern Recognition, Lisbon, p. 405–12, 2000. Sargin ME, Altinok A, Rose K and Manjunath, BS Tracing curvilinear structures in live cell images, IEEE International Conference on Image Processing, San Antonio, p. 285–8, 2007. Gates J, Haseyama M and Kitajima H A real-time line extraction algorithm’’, Proceedings of the 1999 IEEE International Symposium on Circuits and Systems, Orlando, p. IV-68–IV-71, 1999. Canny J. A computational approach to edge detection in Readings in Computer Vision: Issues, Problems. In: Fischler MA, Firschlein O, editors. Principles and Paradigms, 1. Los Altos: Morgan Kaufmann Publishers; 1987. p. 184–203. Lindeberg T. Edge detection and ridge detection with automatic scale selection. Int J Comput Vision 1998;30(2):117–54. Vanhamel I, Mihai C, Sahli H, Katartzis A, Pratikakis I. Scale Selection for Compact Scale-Space Representation of Vector-Valued Images. Int J Comput Vision 2009;84(2):194–204. Werling S, Ma M, Heizmann M, Beyerer J. Inspection of specular and partially specular surfaces. Metrology and Measurement Systems 2009;16(3):415–31. Liu J, Tian L, Li L. Light power density distribution of image spot of laser triangulation measuring. Optics Lasers Eng 1998;29(6):457–63. Jecic, S, Drvar, N 2003. The assessment of structured light and laser scanning methods in 3D shape measurements. ICCSM 4, Proceedings of. September 2003. p. 237–44. Koller TM, Gerig G, Szekely G and Dettwiler D Multiscale detection of curvilinear structures in 2-D and 3-D image data, Proceedings of the Fifth International Conference on Computer Vision, Washington, p. 864–70, 1995. Streekstra GJ, van den Boomgaard R, Smeulders AWM. Scale dependency of image derivatives for feature measurement in curvilinear structures. Int J Comput Vision 2001;42(3):177–89.

644

R.D. Wedowski et al. / Optics and Lasers in Engineering 50 (2012) 632–644

[52] Raghupathy K and Parks TW Improved curve tracing in images, International Conference on Acoustics, Speech, and Signal Processing (ICASSP), Montreal, p. 581–4, 2004. [53] Wedowski RD, Farooq AR, Smith LN and Smith ML 2010. High speed, multiscale tracing of curvilinear features with automated scale selection and enhanced orientation computation, High Performance Computing and

Simulation (HPCS), 2010 IEEE International Conference on, June 2010, IEEE, p. 410–7. [54] Boukouvalas C, De Natale F, De Ton G, Kittler J, Marik R, Mirmehdi M, Petrou M, Le Roy P, Salgari R, Vernazza G. ASSIST: automatic system for surface inspection and sorting of tiles. J Mater Process Technol 1998;82(1–3): 179–88.