multimedia 2009 (mmsp09) paper number 239 sub-pixel accuracy edge fitting by means of b-spline.pdf

Upload: shadowbraz

Post on 29-May-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/9/2019 Multimedia 2009 (MMSP09) Paper Number 239 Sub-Pixel Accuracy Edge Fitting by Means of B-Spline.pdf

    1/5

    Sub-Pixel Accuracy Edge Fitting by Means of B-

    SplineRicardo Lucas Bastos Breder 1, Vania Vieira Estrela *2, Joaquim Teixeira de Assis 3

    State University of Rio de Janeiro (UERJ), Polytechnic Institute of Rio de Janeiro (IPRJ), CP 972825, CEP 28601-970,

    Nova Friburgo, RJ, [email protected]

    [email protected]

    [email protected]

    Abstract Local perturbations around contours strongly

    disturb the final result of computer vision tasks. It is common tointroduce a priori information in the estimation process.Improvement can be achieved via a deformable model such asthe snake model. In recent works, the deformable contour ismodeled by means of B-spline snakes which allows local control,concise representation, and the use of fewer parameters. Theestimation of the sub-pixel edges using a global B-spline model

    relies on the contour global determination according to aMaximum Likelihood framework and using the observed datalikelihood. This procedure guarantees that the noisiest data willbe filtered out. The data likelihood is computed as a consequence

    of the observation model which includes both orientation andposition information. Comparative experiments of this algorithmand the classical spline interpolation have shown that theproposed algorithm outperforms the classical approach forGaussian and Salt & Pepper noise.

    I. INTRODUCTIONOne of the greatest challenges of modeling remotely sensed

    images is the mixed pixel problem, that is, the level of spatial

    detail captured is less than the amount of expected details.

    This sub-pixel heterogeneity is important, but not readily

    capable of being known. In a traditional manner, each pixel is

    classified into one of many land cover types (hardclassification), implying that land cover exactly fits within the

    bounds of one or multiple pixels. However, several pixels

    consist of a mixture of different classes. The solution to the

    mixed pixel problem typically centers on soft classification,

    which allows proportions of each pixel to be partitionedbetween classes. An important edge extraction approach is

    concerned with improving the detection accuracy and

    different sub-pixel edge detectors [10].

    Popular approaches used to compute sub-pixel location of

    edges are based on the image moments [6, 11, 14, 15, 16, 18].

    Image interpolation is another way to find sub-pixel edge

    coordinates. [13] presents a technique where the first

    derivative perpendicular to the edge orientation is

    approximated by a normal function. The edge location is this

    function maximum. Other works are based on linear [7],

    quadratic interpolation [1], B-spline [17], non-linear functions

    [8], and as a segmentation by-product [22, 23].

    In all these methods, the estimation is local and does not

    include a noise model. Hence, the local perturbations heavily

    disturb the final result. A usual filtering approach requires

    introducing a priori information in the estimation processsuch as the snake model suggested by [9]. In newer works, the

    deformable contour is modeled using piecewise polynomialfunctions (B-spline snakes) [4, 12] allowing local control,

    concise representation, and it employs few parameters.

    This work introduces a model for estimating sub-pixel

    edges using a global procedure based on a B-spline model [3,

    18], but the statistical properties of the observations are

    computed and used in a Maximum Likelihood (ML)

    estimation framework which insures an efficient filtering of

    the noisy data. Section II briefly describes the classical B-

    spline formulation. Section III introduces the proposedextension to the sub-pixel case. Section IV discusses

    experimental results of this algorithm. Finally, Section Vpresents some conclusions.

    Fig. 1 Illustration of the mixed-pixel problem [20].

    COPYRIGHT NOTICE:

    MMSP09, October 5-7, 2009, Rio de Janeiro, Brazil.978-1-4244-4464-9/09/$25.00 2009 IEEE.

  • 8/9/2019 Multimedia 2009 (MMSP09) Paper Number 239 Sub-Pixel Accuracy Edge Fitting by Means of B-Spline.pdf

    2/5

    II. B-SPLINE CONTOUR FORMULATIONLet 0 1 1, ,..., kt t t be the set of so-called knots. Spline

    functions are polynomial inside each interval 1,i it t andexhibit a certain degree of continuity at the knots (see [3]).

    The set , ( ) , 0,..., 1i n t B i k n of the B-splines, constitutesa basis for the linear space of all the splines contained in

    ,n k nt t . Hence, a spline curvef(t) of degree n is given by :

    1

    ,

    0

    ( ) ( )k n

    i i ni

    f t p B t

    ,

    where pi is the weight applied to the corresponding basisfunctions Bi,n. The B-Spline functions are defined by therecursion formulas in [2]:

    1,0 0 1( )i i i B t t t t ifelse , and

    1

    , , 1 1, 1

    1 1

    ( ) ( ) ( )i i ni n i n i n

    i n i i n i

    t t t t B t B t B t

    t t t t

    .

    The , ( )i n tB are nonnegative, i yi xiJ G G and obey the

    relationship: , ( ) 1i n tiB for all values of t. Without loss ofgenerality, the index n for the cubic B-spline can be dropped.Eq. (1) can be re-written in matrix notation as:

    ( ) ( ).Tf t B t .

    ( t ) x t , y t v is the vector of B-spline functions

    0 2 N 1( t ) B ( t ),B ( t ),...,B ( t )B and is the weight vector:

    T

    0 N 1p , ...,p . The 2D version of Eq. (1) describes an

    open parametric snake on the plane: ( t ) x t , y t v . The

    pixels ,i xi yip p p are now 2D vectors and are called thecontrol points.

    III.SUBPIXEL B-SPLINE FITTINGThis sub-section aims to obtain a likelihood expression for

    the observation, supposing additive Gaussian noise b with

    standard deviation b.

    Let ( . ) ( . ), ( . ) , 1,...,e e e ev v i h x i h y i h i M be a set ofedge pixels with integer coordinatesh computed by a classical

    algorithm. To simplify notation, ( . )ev i h = ev for all variablesrelated to the pixel i.

    For each pixel i belonging to this set, an observation vectorOi= (Xi , Hi) is assumed, where vector Hi= (Hxi , Hyi) is the

    local gradient of the image andXi corresponds to a sub-pixel

    position estimation of the edge along Hi. Xi is estimated in

    the pixel local coordinate system by means of a quadratic

    interpolation [5]. These variables are supposed to be the

    observation version of the true variables ,i iY G , where

    ,oi oix y are the cartesian coordinates of the observation iO .

    ( ) ( ) ( ). , ( ) ( ).s s x s yv t x t B t y t B t is the edge B-

    spline model, where ,x y is the vector of k control

    points M k . The likelihood becomes

    / / , / i i i iP O P X H P H .

    To derive P / , ,i iX H these assumptions are made: iX

    depends only on ( ) ( ) , ( )s s si s siv t i X t i x y t i y , thecorresponding edge point in the direction iH has polar

    coordinates ,i iY H and / ,i i iP X H Y is Gaussian. Then,

    2

    2

    1/ , / , exp

    22

    oi si oi si

    i i i i i

    XiXi

    X X Y Y P X H P X H Y

    The computation of Xi is based on a modified version

    of the method described in [3]. Now, P /iH requires the

    components of iH . They can be computed by convolving the

    original image with the derivative kernels xK and yK .

    Assuming an additive Gaussian noise, it is straightforward to

    show that /i iP H G is also Gaussian. The cross-correlationand auto-correlation functions of the vertical and horizontal

    components ofH are given by:

    2, .

    , , * , .

    xy i j i j xi yj xi yj

    b i j i j x y

    C x x y y E H H E H E H

    x x y y K x y K x y

    xK

    and yK

    are the complex conjugate of the matrices of xK

    and yK , respectively. This relation leads to

    . / / / 0xi yi xi yi xi xi yi yi xi yiE H H G G E H G G E H G G ,

    and

    2 2,

    . / / / ( , )xi xi xi xi xi xi xi b xi j

    E H H G E H G E H G K i j 2 2 2

    ,

    ( , )b y Hi j

    K i j .

    P /iH represents the conditional expected value of w

    assuming z. Let Ji be the vector defined by i yi xiJ G G

    and letRi be the unit vector collinear to sv in siv . Hi and Ji

    are clearly related by a normal distribution. To find

  • 8/9/2019 Multimedia 2009 (MMSP09) Paper Number 239 Sub-Pixel Accuracy Edge Fitting by Means of B-Spline.pdf

    3/5

    P /iH , the well known property of the edge beingorthogonal to the local gradient is used:

    P( / )P( )P( / ) P( / ( ))

    P( ( )) i i ii i i

    i

    H J J H H R

    R ,

    for all the values of Ji collinear toRi, that isJi = a Ri. It can

    be rewritten as:

    i

    P / P / s i sO v O v .

    The gradient does not have a privileged direction. Uniform

    regions are supposed to be more frequent than the regions

    with a high gradient magnitude. Thus, the a priori probabilityofJi can be modelled by

    2 2

    2 2

    || ||1 1P( ) exp exp

    i

    i

    J aJ

    .

    Combining the two previous expressions results in

    2 2yi xi

    2 2H

    2 2

    xi xi yi yi

    2 2 2H H

    H HP( / ) .exp

    2

    ( H R H R )exp .

    2 ( 2 )

    iH K

    K is a normalization constant involving ( )iP R , and H .

    If H , then:

    2 2 2yi xi xi xi yi yi

    2 2H

    H H ( H R H R )P( / ) .exp exp .

    2

    iH K

    Vectors i || ||i iR T T and

    T

    s si

    x ( t( i )) y ( t( i )),

    t t

    T T

    are constant along an edge. iTcomponents are also B-spline

    functions having splinebasis as follows:

    n,i

    i ,n 1 i 1,n 1

    i n i i n 1 i 1

    ( t ) n n( t ) ( t ).

    t t t t t

    BB B

    If the iO s are conditionally independent, then the global

    likelihood becomes i

    P P s i sO / v O / v , and

    i

    arg .max P( / , )P( ) i i i

    X H H / , leading to the

    minimization of the quadratic energy function:

    ( ) ( ) ( )TE d B W d B .

    1 1( ,..., , ,..., ,0,...,0)T

    o oM o oM x x y yd is a (3MI) vector, Wis a

    (3M3M) diagonal matrix with 2, , 1/i i i i M i M XiW W W ,

    and 21 / 2i+2M,i+2MW T H .

    B is a (3M2N ) matrix whose components are ( )ij jB B t i . Currently, the points i are uniformly

    distributed: ( ) /t i i M . xB and yB are given by

    ,2 1,2( / ) ( / )xij xi i iB NH B i M B i M , and

    ,2 1,2( / ) ( / )yij xij yj j jB B NH B i M B i M .

    Fig. 2. Test image.

    Fig. 3. Results for the suggested algorithm (red), the true edge (white) and the

    CSI (blue). (a) 10% of noise, (b) 20% of noise, (c) 40% of noise and (d) 50%of noise.

    The solution arg min E( )*

    is given by theweighted

    leastsquare relation: arg min E( )*

    .

  • 8/9/2019 Multimedia 2009 (MMSP09) Paper Number 239 Sub-Pixel Accuracy Edge Fitting by Means of B-Spline.pdf

    4/5

    IV.EXPERIMENTALRESULTSSeveral tests were performed with the squared area of a

    synthetic image (Fig. 2). For all the tests, the gradient was

    computed by means of the derivative of a Gaussian kernel

    with a standard deviation equal to 1. The number of knots Nwas set toM/4.

    Fig. 4. Results for the suggested algorithm (red), the true edge (white) and

    the CSI (blue). (a)p0 = 0.2, = 0.3; (b)p0 = 0.2, = 0.6;(c)p0 = 0.4, = 0.3;and (d)p0 = 0.4, = 0.6.

    First, this algorithm was tested for an additive normal noise

    with standard deviations equal to 0.1, 0.2, 0.4 and 0.5 whichrepresent, respectively, 10%, 20%, 40% and 50% of themaximum amplitude. Fig. 3 shows the results obtained with

    this algorithm (red), the true edge (white) and the classical

    spline interpolation (CSI; blue). The suggested model hasbeen developed for Gaussian noise, but it remains efficient for

    other types of noise as well. In Fig. 4, the results obtained

    with Salt & Pepper noise are shown, with 02n y p , for low

    rate noise 0( 20)p and high rate noise 0( 40)p with two

    different values of the amplitude . The Salt & Pepper noise

    pdf is

    ( ) 0 ( ) (1 2. 0) ( ) 0 ( )P x p x p x p x .

    (a) (b)Fig. 5. Results for standard cubic B-spline fitting (red) and for stochastic

    cubic B-Sline (blue): (a) No noise; and (b) Gaussian noise with SNR=20 dB.

    (a) (b)

    Fig. 6. Results for standard cubic B-spline fitting (a) and for stochastic cubic

    B-Sline (b) for Gaussian noise with SNR=20 dB.

    Figures 5 and 6 show the performance of the proposed

    algorithm in real images. The rectangles mark regions whereone can check the results of standard cubic B-spline and its

    stochastic counterpart for noisy images with SNR=20 dB. In

    Fig. 6, the performance of our algorithm seems to be slightly

    better.

    V. CONCLUSIONIn this paper, a robust algorithm for edge estimation with

    sub-pixel accuracy based on a stochastic cubic B-spline is

    introduced. The model parameters are calculated according to

    an ML estimation framework relying on a Gaussian noise

    model. The data likelihood is computed from the observation

    model which includes both orientation and position

    information.Comparative numerical experiments between this algorithm

    and the CSI have been carried out for two different types ofnoise: Gaussian and Salt & Pepper. The experiments have

    shown that our algorithm outperforms the other two, for both

    kinds of noise. It remains accurate even for high noise levels

    while the usual methods are generally sensitive to local

    perturbations due to the global computation of a given

    boundary using a ML rule. The likelihood of the observations

    is explicitly computed.

    ACKNOWLEDGMENTProf. Estrela and Prof. de Assis are grateful for the support

    received by CAPES, FAPERJ and CNPq.

    REFERENCES

    [1] M. Baba, and K. Ohtani, A novel sub-pixel edge detection system fordimension measurement and object localization using an analogue-based

    approach, In IOP Publishing Journal of Optics A: Pure & AppliedOptics, 3, pp 27683, 2001

    [2] C. de Boor ,A Practical Guide to Splines, Springer Verlag, N.Y,, 1978.[3] F. Bouchara, Efficient algorithm for computation of the second-order

    moment of the sub-pixel edge position, Applied Optics 43, pp 4550

    4558, 2004.

    [4] P. Brigger, J. Hoeg, and M. Unser, B-splines snakes: a flexible tool forparametric contour detection, IEEE Trans.Im.Proc. 9, pp. 14841087,2000.

    [5] F. Devernay, A non-maxima suppression method for edge detectionwith sub-pixel accuracy, In: INRIA Sophia Antipolis Research Report

    Nb. 2724, 1995.[6] S. Ghosal, and R. Mehrotra, Orthogonal moment operators for sub-pixel

    edge detection, Patt. Recog., 26, pp. 295306, 1993.[7] S. Hussmann, and T.H. Ho, A high-speed sub-pixel edge detector

    implementation inside a FPGA, Real-Time Imaging 9, pp. 361368,2003.

  • 8/9/2019 Multimedia 2009 (MMSP09) Paper Number 239 Sub-Pixel Accuracy Edge Fitting by Means of B-Spline.pdf

    5/5

    [8] K. Jensen, and D. Anastassiou, Sub-pixel edge localization and theinterpolation of still images, IEEE Trans. Image Proc. 4, pp. 285295,

    1995.

    [9] M. Kass, A. Witkin, and D. Terzopoulos, Snakes: active contourmodels,Int. J. Comp. Vision 1, pp. 321331, 1988.

    [10]J.K. Kim, M.C. Lee, C.K. Ahn, and C.Y. Kim, Acquisition of 3Dinformation using stereo vision system by relative stereo disparity with

    sub-pixel resolution, In Proc. of the IEEE Intl. Symp. on Ind. Electronics

    - ISIE, Pusan, South Korea, pp. 1671-1676, 2001.[11] E.P. Lyvers, O.R. Mitchell, M.L. Akey, and A.P. Reeves, Sub-pixel

    measurements using a moment based edge operator, In IEEE Trans.PAMI11, pp. 12931309, 1989.

    [12] R.G.N. Meegama, and J.C. Rajapakse, NURBS, In Image and VisionComputing , 21, pp. 551562, 2003.

    [13] Y. Nomura, M. Sagara, and H. Naruse, An edge location to sub-pixel

    precision and analysis, In System Comp. in Japan, 22, pp. 7080, 1991.[14] Y. Shan, and G.W. Boon, Sub-pixel localisation of edges with non-

    uniform blurring: a finite closed-form approach, In Image and VisionComputing 18, pp. 10151023, 2000.

    [15] C. Shyi-Chyi, and W. Tian-Luu, Sub-pixel edge detection of color

    images by principal axis analysis and moment-preserving principle, In

    Patt. Recog., 38, pp. 527537, 2005.

    [16] A.J. Tabatabai, and R.Mitchell, Edge localisation to sub-pixel values in

    digital imagery,IEEE Trans. PAMI. 6, pp. 188-201, 1984.

    [17] F. Truchetet, F. Nicolier, and O. Laligant, Sub-pixel edge detection for

    dimensional control by artificial vision,Electronic Imaging 10, pp. 234239, 2001.

    [18] S. Venkatesh, M. Kisworo, and G.A. West, Detection of curved edges

    at sub-pixel accuracy using deformable models, In Proc. of IEEE Conf.Vis. Im. Sig. Proc., pp. 304312, 1995.

    [19] Q. Ying-Donga, C. Cheng-Songa, C. San-Benb, and L. Jin-Quan, A

    fast sub-pixel edge detection method using Sobel-Zernike moments

    operator, InImage and Vision Computing, 23, pp. 1117, 2005.[20] http://rst.gsfc.nasa.gov/Sect13_2.html

    [21] X. Ren, and J. Malik, A probabilistic multi-scale model for contour

    completion based on image statistics, In Proceedings of 7th European

    Conference on Computer Vision , Vol. 1, pp. 312327, 2002.[22] K. Blekas, A. Likas, N. Galatsanos, and I. E. Lagaris, A spatially-

    constrained mixture model for image segmentation, IEEE Trans. on

    Neural Networks, 16(2):494-498, 2005.[23] C. Nikou, N. Galatsanos, and A. Likas, A class-adaptive spatially

    variant finite mixture model for image segmentation, IEEE Trans. on

    Image Processing, 14(4):1121-1130, 2007.