220 likes | 517 Views
The CLIP. Henning Lorch & Mario Kiekebusch et. al. What is the CLIP? (1). „ C ommon L ibrary for I mage P rocessing“ Use the latest pipeline SW technology (CPL) for the 2 nd Generation Instruments‘ control SW. Instrument Control SW. Pipeline DRS. Control SW. Display. VLT SW. CLIP.
E N D
The CLIP Henning Lorch & Mario Kiekebusch et. al.
What is the CLIP? (1) • „Common Library for Image Processing“ • Use the latest pipeline SW technology (CPL) for the 2nd Generation Instruments‘ control SW Instrument Control SW Pipeline DRS
Control SW Display VLT SW CLIP Common Library for Image Processing CPL Pipelines DRS What is the CLIP? (2)
Goals • To provide a suitable image processing toolkit, flexible and well integrated with the INS SW • To share the same image processing algorithms whenever possible between INS SW and pipeline DRS • To improve observation efficiency
Some LPO Image Processing Tasks • Eclipse based: • Slit Position ISAAC, VISIR, NACO • Jitter Pattern ISAAC, VISIR, NACO • Cube Computation ISAAC • Midas based: • Center/Gauss ISAAC, VISIR, VIMOS • Center/Moment UVES, FORS1, FORS2 • Polynomial Fitting VIMOS • Custom: • Image Reconstruction SINFONI • Visibilities Computation AMBER • Nodding Computation VISIR
CLIP Definition • CLIP is a package made up of several modules, • providing an interface to CPL for VLTSW applications, • defining a framework to add image processing capabilities to the INS SW, • including a set of common image processing functions for Paranal.
Templates for • Custom Extension • Interfaces • Tcl/Tk • („xxclipvTcl“) • Tcl/Tk • („clipvTcl“) • C++ • („xxclipv“) • C++ • („clipv“) • Custom Image Processing Lib • („xxclipm“) • Image Proc. • Library („clipm“) CLIP Package • CLIP DFS VLT SW CPL
Main Features • Provide a common framework to use image processing during instrument acquisition • Extendability of the CPL to generic and specific instrument data handling / processing requirements. • Data handling directly from the shared memory areas avoiding the I/O overhead. • Direct access to the image processing algorithms. • Standard error reporting.
Interfaces • Tcl/Tk • („clipvTcl“) • C++ • („clipv“) • Image Processing • Library („clipm“) • VLTSW Interface
C++ Interface • Main Services: • Logging and error handling • Wrappers for CPL objects • Interface with RTD image event library
Server Mode Register RTD App. Notify Read Shared Memory Shared Memory Write Clipv Server Create/ Remove Shared Memory Client Mode Acq. Process RTD Server Notify Register/ Notify Notify Create/ Write Clipv Client Read
Tcl interface Commands: Input/Output (7) Image basic operations (13) Image statistics (8) Image Processing (6) Others (3) Special Features Image Store Vector by references
Tcl Example • # create clip object • clipvtcl Clip • # attach to camera • Clip rtd_image_attach -c VIS • # wait for the first image event • Clip rtd_image_wait -camera VIS -timeout 10000 • # Get the image from shared memory • Clip rtd_image_retrieve –camera VIS –store “image1” • # wait for second image even • Clip rtd_image_wait -camera VIS -timeout 10000 • # call the image processing algorithm • Clipimage_cross_correlation -npoints 10 • -store “image1” –camera VIS \ • -ref1 reference -maxd 7 –wsize 64 \ • –mode SHIFT_ROBUST -tran transVector
Development and Testing • Camera Simulator (Clip Image Acquisition Simulator „clipias“) • Supported modes: BIAS, SKY and FILE • Supported sky objects: Gaussian star • Supported star parameters: pos, sigma, maxflux and gaussian norm. • Template module • Customizable module to develop instrument specifics interfaces (C++ and Tcl).
Interfaces • Tcl/Tk • („clipvTcl“) • C++ • („clipv“) • Image Processing • Library („clipm“) • Image Processing Algorithms
Image Processing Library (“clipm”) (1) • Cover special image processing needs • Serve as temporary development platform (until routines are accepted for CPL), • thus providing flexibility by separating DFS and INS SW development cycles • Thus instrument-only
“clipm” (2) • Provided Functionality • Mathematical Routines Linear Regression Cross-Correlation Random Number Generation Image Gradient Operations (Image Resampling/Stacking) • Common Recipes Centroiding Object / Image Alignment Aperture Characterisation • Error Handling Macros • ...and future requirements! Current Schedule: Done Pending
Templates for • Custom Extension • Tcl/Tk • („xxclipvTcl“) • C++ • („xxclipv“) • Custom Image Processing Lib • („xxclipm“) clipm Extension Template (“xxclipm”) • To be used for shared code between Pipeline and INS control SW • Containing Pipeline and VLT Build Procedures
<xx>clipm DRL (Master) DFS CLIP Responsible Copy Slave <xx>clipm How to Use the xxclipm Template Consortium ESO Repositories Observatory CVS Pipeline World DRL Developer Pipeline Responsible Pipeline DRL Pipeline Integration CMM INS World INS Developer <xx>clipv (Wrappers) INS / RTD Integration
Status & Outlook • Status • First prototype of the complete framework running, to be used by X-Shooter soon • New module clipd: interactive display (to come soon) • Next Steps • Implementation: • Remaining image processing algorithms • RTD / display features • Plotting capabilities • Code Polishing • Documentation: • User manual
Whom To Ask • Andreas Kaufer (LPO) Head • Pascal Ballester (SDD) Management • Peter Biereichel (SDD) Dev. RTD • Mario Kiekebusch (SDD) Dev. VLTSW Interfaces • Henning Lorch (SDD) Dev. Image Processing