Download presentation
Presentation is loading. Please wait.
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): GE Private: openge.ge.com/projects/vxl Documentation (Doxygen, structured comments):
3
History of CV Environments at GE (Mundy)
Geometer demo fails TargetJr starts Morse Project Oxford Leuven VIP Fortran (Flex) Generic Graphics Xray Metrology Image Calc (SRI) Lisp Geometer (GE) Lisp XCV TargetJr Used in DARPA Research Focus Project Light Gauge TargetJr (C++) Segmentation, 3d Modeling, Video, Feature Extraction PDP-9 PDP-11 PC Platforms Unix Platforms Lisp Machine Dynamic DB Operator Paradigm Image Understanding Environment (IUE) Object Modeling Paradigm VACE VXL simple, light!
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 Clean, lightweight
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, Dashboard: Dart, public.kitware.com/Dart Changing code base with fast response to problems
8
Cartesian, cylindrical
VXL core hierarchy vxl GE Private vcl STL compatibility v3p contrib core vcl_cout vcl_string vcl_list <vcl_deque.h> … png netlib vpl POSIX compatibility vbl basics vul utilities vsl streaming vgl geometry vil image vnl numerics Each Independent Core Level 1 vpl_rmdir vpl_usleep … smart pointers arrays sparse arrays points, lines planes conic sections bounding boxes polygons region scan iterators homogeneous memory management file I/O convolution pyramids warping vectors, matrices SVD, QR, eigen conjugate gradient Levenberg-Marquart FFT command line directories regex binary object I/O vidl video vcsl coordinate systems vgui GUI Core Level 2 Call Anything AVI, mpeg2 frame iterator Cartesian, cylindrical geographic, geodetic manipulation tableaus simple and portable OR use of native GUI
9
VXL contrib hierarchy brl gel mul vxl contrib oul oxl rpl tbl
Video processing, segmentation Brown U. gel Dense image matcher, polygon triangulation, connected spatial objects, digital geometry, KLT GE Research 3D images, PDFs, classification mul Manchester U. vxl contrib Dense image matcher, polygon triangulation oul Otago U. oxl Epipolar geometry, segmentation Oxford U. Robust estimation rpl Rensselaer Image processing tbl KUL?
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)
regl retinal registration level 2 retl Retina Project libraries publ internal public rdbmel DBM-Estimator rtl retinal tracing rpl Rensselaer libraries racl active contours rrel robust estimation rsdl spatial data structures core vxl core v3p 3rd party vgui user interface vnl algo netlib level 1 vbl basics vul utilities vgl geometry vnl numerics vil imaging tiff png level 0 vcl C++ compatibility jpeg
12
What is in VXL Core Level 1?
VCL: compatibility layer library C/C++ Standard library interface V3P: 3rd 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.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.