Presentation is loading. Please wait.

Presentation is loading. Please wait.

What is VXL ? Vision Something Libraries A collection of Computer Vision libraries Open Source, grass roots effort, 53 developers –Supported by good community,

Similar presentations


Presentation on theme: "What is VXL ? Vision Something Libraries A collection of Computer Vision libraries Open Source, grass roots effort, 53 developers –Supported by good community,"— Presentation transcript:

1 What is VXL ? Vision Something Libraries A collection of Computer Vision libraries Open Source, grass roots effort, 53 developers –Supported by good community, fast response C++ with pragmatic use of templates 600k lines of code (over-estimate) 1.0 beta release, CVS Widely ported Research to Customer delivery

2 Where is VXL? Home: vxl.sourceforge.net Dashboard (continuous and nightly test builds): www.cs.rpi.edu/research/vision/vxl/Testing/Dashb oard/MostRecentResults-Nightly/Dashboard.html GE Private: openge.crd.ge.com/projects/vxl Documentation (Doxygen, structured comments): www.isbe.man.ac.uk/public_vxl_doc

3 History of CV Environments at GE (Mundy) 1975 1980 1985 1990 1995 2000 VIP Fortran (Flex) Generic Graphics TargetJr (C++) Segmentation, 3d Modeling, Video, Feature Extraction Image Understanding Environment (IUE) Geometer demo fails TargetJr starts TargetJr Used in DARPA Research Morse Project Oxford Leuven Focus Project Xray Metrology VXL simple, light! Dynamic DB XCV Image Calc (SRI) Lisp Geometer (GE) Lisp VACE Light Gauge Operator Paradigm Object Modeling Paradigm PDP-9PDP-11 Lisp Machine Unix Platforms PC Platforms

4 Why Common Environments? (Mundy) Accumulation of effort –Basic libraries endure –Useful algorithms endure Application delivery –Direct from research to application –Matlab not viable Sharing of effort –Code/algorithm exchange between projects

5 Other Toolkits TargetJr: Computer Vision VTK: Visualization ITK: Image Segmentation and Registration

6 Motivation for VXL Replace TargetJr and IUE –bulky, inconsistent interfaces, slow due to design Clean, lightweight Consistent interface to classes Coding standards Portability

7 VXL Portability Platforms: Windows, Solaris, IRIX, Linux, FreeBSD, OSF, Cygwin, PlayStation2 Compilers: Visual C++, gcc, MipsPro, aCC VCL: Interface to “standard” library No RTTI, exceptions, nested classes, member templates … CMake: Cross-platform Make, www.cmake.org Dashboard: Dart, public.kitware.com/Dart Changing code base with fast response to problems

8 VXL core hierarchy vcl_cout vcl_string vcl_list … vpl_rmdir vpl_usleep … smart pointers arrays sparse arrays points, lines planes conic sections bounding boxes polygons region scan iterators homogeneous GE Private corevxlv3ppngnetlibcontrib vcl STL compatibility vpl POSIX compatibility vbl basics vidl video vcsl coordinate systems vgui GUI AVI, mpeg2 frame iterator Cartesian, cylindrical geographic, geodetic manipulation tableaus simple and portable OR use of native GUI Core Level 2 Call Anything Core Level 1 Each Independent command line directories regex vul utilities memory management file I/O convolution pyramids warping binary object I/O vsl streaming vgl geometry vil image vectors, matrices SVD, QR, eigen conjugate gradient Levenberg-Marquart FFT vnl numerics

9 VXL contrib hierarchy vxlcontribtblbrlrplmuloxlgeloul Brown U. GE Research Manchester U. Otago U. Oxford U. Rensselaer KUL? Dense image matcher, polygon triangulation, connected spatial objects, digital geometry, KLT Video processing, segmentation 3D images, PDFs, classification Robust estimation Epipolar geometry, segmentation Dense image matcher, polygon triangulation Image processing

10 Who Uses VXL? Brown University GE Research Katholieke Universiteit Leuven, Belgium Manchester University, UK Oxford University, UK Rensselaer Polytechnic Institute University of Otago, New Zealand

11 VXL Library Level Concept (Perera) vcl C++ compatibility level 0 level 1 level 2 vil imaging vnl numerics vgl geometry vbl basics vul utilities vnl algo vgui user interface netlib tiff png jpeg racl active contours rdbmel DBM-Estimator rrel robust estimation rsdl spatial data structures rtl retinal tracing regl retinal registration publ internal public retl Retina Project libraries v3p 3 rd party core vxl core rpl Rensselaer libraries

12 What is in VXL Core Level 1? VCL: compatibility layer library –C/C++ Standard library interface V3P: 3 rd party libraries –jpeg, png, tiff, netlib, mpeg2 VBL: Basics library –Smart pointers, arrays, sparse arrays VGL: Geometry –Points, lines, planes, conic sections, bounding boxes, polygons, region scan iterators, homogeneous VIL: Imaging –Image memory management, file I/O, convolution, pyramids, warping VNL: Numerics –Vectors, matrices, basic ops, SVD, QR, eigen systems –Amoeba, Brent, conjugate gradient, Levenberg Marquart, LBFGS (v3p) –Polynomials, FFT (v3p)

13 What is in VXL Core Level 2? VIDL: video sequence library –AVI, mpeg2, frame iterator VCSL: coordinate systems –Cartesian, cylindrical, geographic, geodetic –Manipulation operations VGUI: multi-platform, OpenGL based, GUI –Tableaus –Simple and portable, or make use of native GUI –Display image in 8 lines

14 What is in VXL GE Contrib? VSRL: Dense image matcher GTRL: Polygon triangulation VSOL: Connected Spatial Objects GST: Simplified 2D Topology representations VDGL: Digital Geometry VTOL: 1, 2 and 3D Topology representations GKLL: Kanade-Lucas_Tomasi feature tracker VMAL: Multi-View Line matching GEVD: Van-duc region finder

15 How does GE Use VXL (GE Private)? Optical metrology for turbine blades –Fold detection, reconstruction Multiple view image enhancement and superresolution –Registration, numerics Airway tracking in CT –B-Splines, flexible template matching Surveillance –Particle filters, articulated object modeling Pipeline inspection –Multiple hypothesis tracking, Kalman filters GE Private, project based

16 Segmentation in VXL Recently ported from TargetJr to VXL (Mundy, Brown) –Van-duc edge detector –Region segmentation based on Van-duc edge detector

17 Questions that should be answered in these slides What is in Target that is not in VXL? Is there anything in the C Standard Library or STL that is not in VCL? Need to improve the listing of what is available in contrib. Next time ask the reflector.


Download ppt "What is VXL ? Vision Something Libraries A collection of Computer Vision libraries Open Source, grass roots effort, 53 developers –Supported by good community,"

Similar presentations


Ads by Google