applications of cgal in the gel analysis software carol

Post on 24-Jan-2016

38 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Applications of CGAL in the Gel Analysis Software CAROL. Klaus Kriegel Freie Universität Berlin Deutsches Herzzentrum Berlin DFG Projekt FL 165/4-2. CAROL (DFG 1997-2000). FU Berlin H. Alt F. Hoffmann K. Kriegel C. Schultz C. Wenk. German Heart Center E. Fleck K.-P. Pleißner - PowerPoint PPT Presentation

TRANSCRIPT

Applications of CGAL in the Gel Analysis Software CAROL

Klaus KriegelFreie Universität Berlin

Deutsches Herzzentrum Berlin

DFG Projekt FL 165/4-2

CAROL (DFG 1997-2000)CAROL (DFG 1997-2000)

FU Berlin

H. Alt

F. Hoffmann

K. Kriegel

C. Schultz

C. Wenk

German Heart Center

E. Fleck

K.-P. Pleißner

I. Seefeldt

Outline of the talkOutline of the talk

Application Background (Electrophoresis)

Gel Matching with CAROL: . The Algorithmic Approach

Using CGAL in CAROL

Experience, Problems, and Further Perspectives

2D Gel Electrophoresis2D Gel Electrophoresis

Two-dimensional Gel Electrophoresis (2DE) is an important method in proteome research

It is a high resolution technique which is capable to separate thousands of protein spots from a tissue sample

2D Gel Electrophoresis2D Gel Electrophoresis

Proteins are concentrated in so called SPOTS of elliptic shape

Protein analysis by mass spectrometry (expensive)

Gel Matching : Protein identification by gel image comparison is faster and not expensive

Gel Matching: The Assumptions Gel Matching: The Assumptions

Images which have to be compared are similar, but, possibly there are:

Local and global geometric distortions

Corresponding spot pairs with (very) different intensities

Missing spots

The Algorithmic Problem The Algorithmic Problem

Partial Approximate Point Pattern Matching

The CAROL Approach:

Design first an efficient algorithm finding all occurrencies of a small local pattern in a target image (Local Matching)

Global Matching via Local Matching

The Local Matching Approach The Local Matching Approach

Find a k-pattern in a set of n points

Naive Alignment Approach: O(k³n²log n)

Alignment with Delaunay Edges: O(k²n log n)

Scoring Scheme (Geometric Hashing): O(kn)

(+O(G) where G = size of the scheme)

Incremental Delaunay TriangulationIncremental Delaunay Triangulation

Alt et al.: If the intensity orderings are consistent with the matching then it is sufficient to use the history edges of the incremental Delaunay Triangulation where points are inserted by decreasing intensity.

Seidel: The expected number of edges in the history of the incremental Delaunay Triangulation is O(n).

To cope with differences in the intensity orderings we add all flip edges to the history!

Scoring SchemesScoring Schemes

It is also possible to take into account image scalings:

simple scaling --> 3-dimensional scheme

independend scalings of x-axis and y-axis

--> 4-dimensional scheme

Global MatchingGlobal Matching

........via local matching

1) Cover the source image by small patterns (5x5)

2) Compute all local matchings of the patterns

3) For many of the patterns the correct local

matching will be included (within a lot of proposals)

4) Find out the correct local matchings by a

consistency test

CGAL Components in CAROLCGAL Components in CAROL

Geometric primitives from the CGAL kernel:

CGAL_Point_2

CGAL_Bbox_2

CGAL_squared _distance

CGAL Components in CAROLCGAL Components in CAROL

The Delaunay Triangulation

from the CGAL basic library

Delaunay Traits

Vertex Circulators

Delaunay TraitsDelaunay Traits

class CAROL_Point : CGAL_Point_2

{ private:

double intensity;

..................

}

Defining special Traits classes triangulation vertices can be represented by CAROL_Points

Vertex CirculatorsVertex Circulators

Vertex circulators are used to get a list of the neighbors of an inserted vetex

Vertex circulators are used to construct flip edges

The Use of CGALThe Use of CGAL CGAL supplies various useful data structures and basic algorithms.

The concept is very flexible according to the user’s needs.

The user can be sure to get efficient implementations.

Several compilers are supported ( gnu, sun, virtual c++ )

CGAL with Visual C++CGAL with Visual C++

PDQUEST

CAROL library with CGAL components

Interface

CGAL with Visual C++CGAL with Visual C++

PDQUEST

virtual c++ stl

CAROL library with CGAL components

stl_port

Interface_1

Points

Interface_2

The End

http://gelmatching.inf.fu-berlin.de

top related