450 likes | 472 Views
This talk outlines the use of CGAL in CAROL, a gel analysis software for proteome research. It discusses the algorithmic approach for gel matching, including local and global matching, as well as the use of scoring schemes and CGAL components. The talk also highlights the advantages and challenges of using CGAL in CAROL.
E N D
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 I. Seefeldt
Outline of the talk Application Background (Electrophoresis) Gel Matching with CAROL: . The Algorithmic Approach Using CGAL in CAROL Experience, Problems, and Further Perspectives
2D 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 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 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 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 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 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 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 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 CAROL Geometric primitives from the CGAL kernel: CGAL_Point_2 CGAL_Bbox_2 CGAL_squared _distance
CGAL Components in CAROL The Delaunay Triangulation from the CGAL basic library Delaunay Traits Vertex Circulators
Delaunay Traits class CAROL_Point : CGAL_Point_2 { private: double intensity; .................. } Defining special Traits classes triangulation vertices can be represented by CAROL_Points
Vertex 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 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++ PDQUEST Interface CAROL library with CGAL components
CGAL with Visual C++ PDQUEST virtual c++ stl Interface_1 Points Interface_2 CAROL library with CGAL components stl_port
The End http://gelmatching.inf.fu-berlin.de