Integrating Vision Toolkit
Encyclopedia
The Integrating Vision Toolkit (IVT) is a powerful and fast C++ computer vision
Computer vision
Computer vision is a field that includes methods for acquiring, processing, analysing, and understanding images and, in general, high-dimensional data from the real world in order to produce numerical or symbolic information, e.g., in the forms of decisions...

 library with an easy-to-use object-oriented architecture. It offers its own multi-platform GUI toolkit.

Availability

The library is available as free software
Free software
Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...

 under a 3-clause BSD license. It is written in pure ANSI C++
C++
C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...

 and compiles using any available C++ compiler (e.g. any Visual Studio, any gcc, TI Code Composer). It is cross-platform
Cross-platform
In computing, cross-platform, or multi-platform, is an attribute conferred to computer software or computing methods and concepts that are implemented and inter-operate on multiple computer platforms...

 and runs on basically any platform offering a C++ compiler, including Windows
Microsoft Windows
Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...

, Mac OS X
Mac OS X
Mac OS X is a series of Unix-based operating systems and graphical user interfaces developed, marketed, and sold by Apple Inc. Since 2002, has been included with all new Macintosh computer systems...

 and Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...

. The included GUI toolkit offers implementations for Windows (Win32 API), Linux (GTK), Mac OS X (Cocoa) and Qt. The computer vision company Keyetech offers platform specific optimizations of various IVT functions with the Keyetech Performance Primitives (KPP), which are automatically loaded by the IVT.

History

The IVT has been developed at the formerly named University of Karlsruhe (TH), now Karlsruhe Institute of Technology
Karlsruhe Institute of Technology
The Karlsruhe Institute of Technology is a German academic research and education institution with university status resulting from a merger of the university and the research center of the city of Karlsruhe. The university, also known as Fridericiana, was founded in 1825...

 (KIT). The first version of the IVT was released on Sourceforge on December 22, 2005. Since 2009, the IVT is maintained in cooperation with the company Keyetech (see link below), who also offers training courses for the IVT as well as commercial products and customized solutions using the IVT.

Features

IVT's features include:
  • Camera interface and implementation for various cameras (IEEE1394 (CMU1394, Unicap1394), USB webcams (V4L and VfW), Quicktime, PointGrey Dragonfly, Videre SVS, etc.)
  • Camera model (monocular and stereo)
  • Camera calibration (using OpenCV 1.0)
  • Filters (Gaussian Smoothing, Sobel, Prewitt, Canny)
  • Color segmentation (HSV color space)
  • Hough transform (lines and circles)
  • Point operations (affine, thresholding)
  • SIFT features
  • Harris corner detector
  • Stereo vision (disparity map computation, stereo triangulation)
  • Undistortion
  • Rectification
  • Linear least squares
  • Particle filtering framework
  • Data structures (matrices, vectors, kd-tree, dynamic array)
  • POSIT (6 DoF pose from 2D-3D point correspondences)
  • Own GUI toolkit with implementations for several platforms (by Florian Hecht) (see below)

Relation to OpenCV

Compared to OpenCV
OpenCV
OpenCV is a library of programming functions mainly aimed at real time computer vision, developed by Intel and now supported by Willow Garage. It is free for use under the open source BSD license. The library is cross-platform. It focuses mainly on real-time image processing...

the IVT offers an object-oriented software architecture, is easier to read and easier to use. The implementations are as fast or even faster than those from the OpenCV. However, OpenCV offers some functionality that IVT does not offer (e.g. a face detector). Such functionality is integrated by optional OpenCV wrappers.

External links

  • Homepage (with documentation, installation guide, example applications, and links for support, services and related books)
  • Keyetech
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK