What can I build with VisionLab?

VisionLab allows full-featured computer vision applications with almost zero lines of code!

 

VisionLab allows rapid development of fully featured computer vision applications for the security industry, scientific and other applications. It also includes Hough Lines, edge detection, contour detection, Haar face and object detection, robust features, and target detecting/tracking components.

 

Applications include: 

  • Motion detection – Create security systems with motion detection, or activate the video recording when motion is detected.
  • Detect objects – Detect objects with different shapes in the video.
  • Face Detect and recognition – Detect and/or recognize faces in images or video.
  • Fingerprint compare – Process and compare fingerprint in image or video.
  • Find and Track Targets – Find and track objects in the video.
 
 
 
Capture and detect motion:
 

Capture, detect and track targets:

Capture and detect contours and objects in the video:
 
 
VisionLab includes a full set of video capturing components. They support the old fashion Win32 API( Video For Windows ( VFW ), WaveAPI, Audio ACM), the newer DirectShow, and even allows if needed any mixture of them. The developer can choose to go with any of them, to use all, or can switch from the one to the other at any moment. The components hide the complexity of all of the approaches, and make them look almost identical from the users prospective.
 
Here is the full list of the supported technologies:
 
Win32 API:
  • Video For Windows ( VFW )
  • Audio Compression Manager ( ACM )
  • WaveAPI
 
DirectX:
  • DirectShow
 
Intel:
  • Intel MMX
  • Intel Performance Primitives ( IPP )
 
The library includes Motion Detection component, Hough Lines and Circles components, Canny and Adaptive Threshold edge detectors, contour detector, Haar face and object detector, target finding and tracking components, robust features component, Video Display, and DirectShow video Render, a Win32 API and DirectShow Video Capture component. Number of additional component from the SignalLab, and from AudioLabare included to allow basic audio processing.
Our component libraries come in 3 versions a VCL – Firemonkey version (for Delphi / C++ Builder / RAD Studio XE4 to 10.1 Berlin), an MFC compatible Visual C++ version, and a .NET 2.0 and 4.0 (4.5 and 4.6 compatible) supporting Visual Studio 2005 to 2015.
 
The RAD Studio version is a set of native VCL and Firemonkey components of which all include now the powerful Mitov Runtime.
 
The Visual C++ version is a set of native Visual C++ classes (components).
 
The NET 2.0 and 4.0 (4.5 and 4.6 compatible) version is a set of managed .NET components.  The .NET version has the same performance as the native versions, and supports all the Microsoft .NET languages including Visual Basic, C#, J#, F# and C++/CLI.
 
Due to the unique architecture of the OpenWire platform, the components are implemented the same way in Managed .NET and native Windows (32 and 64 bit) environments. The code to control a component from VB.NET, C++/CLI, C#, and J#, Visual C++ MFC, Delphi, and C++ Builder is almost identical. This allows the developers to migrate and share code between the different environments thus significantly improving the productivity.
 
OpenWire Libraries: for fast, complex data stream processing with almost zero lines of code!

 

 

Audio Filters

ALAudioToReal  ALAudioToReal  Converts Wave Audio Data Buffers into Real Data Buffers
ALGenericFilter  ALGenericFilter User defined filter for Audio data

Audio generators

ALGenericGen  ALGenericGen  User defined generator for Audio data

Audio output components

ALAudioOut  ALAudioOut  Sends audio data to an audio output device

Color transformations

VLGrayScale  VLGrayScale  Converts the video to gray scale

Computer Vision

VLMotionDetect  VLMotionDetect  Motion detection component
VLCanny VLCanny Canny edge detection
VLHoughLines VLHoughLines Finds lines in the image using Hough transform
VLFindContours VLFindContours Finds contours in binary image
VLAdaptiveThreshold VLAdaptiveThreshold Adaptive threshold edge detection
VLProbableLines VLProbableLines Finds probable line segments in the image using Hough transform
VLHoughCircles VLHoughCircles Finds circles in the image using Hough transform
VLFindTargets VLFindTargets Finds possible tracking targets in the image
VLTrackTargets VLTrackTargets Tracks moving targets on the image
VLExtractRobustFeatures VLExtractRobustFeatures Extracts robust features using SURF algorithm
VLHaarDetectObjects VLHaarDetectObjects Detects objects by using Haar like features
VLConnectedComponents VLConnectedComponents Labels connected components in the image
VLConvexHulls VLConvexHulls Finds the convex hulls for polygons or contours.
VLMinEnclosingCircles VLMinEnclosingCircles Finds the smallest enclosing circles for polygons or contours.
VLMinAreaRectangles VLMinAreaRectangles Finds the smallest area rectangles for polygons or contours.
VLFitLines VLFitLines Fits lines to polygons or contours.
VLFitEllipses VLFitEllipses Fits ellipses to polygons or contours.
VLChamferMatchingContour  VLChamferMatchingContour Finds contours in the image using Chamfer Contour Matching.
VLHOGDetectObjects VLHOGDetectObjects Detects objects by using Histogram Oriented Gradients.
VLHOGCompute VLHOGCompute Computes non optimized Histogram Oriented Gradients.
VLBackgroundSubtractor  VLBackgroundSubtractor Subtracts the background using statistical background model.

Converters

ALAudioToReal  ALAudioToReal  Converts Wave Audio Data Buffers into Real Data Buffers
SLPair SLPair Pairs multiple data buffers together

Custom Filters

SLGenericReal SLGenericReal  User defined filter for Real data
SLGenericFilter SLGenericFilter User defined filter for Binary data
SLGenericRealMatrix  SLGenericRealMatrix User defined generator for Real matrix data

DirectShow Audio output components

ALDSAudioOut  ALDSAudioOut  Sends audio data to an audio output device

DirectShow Video output components

VLDSImageDisplay  VLDSImageDisplay  Video display component using DirectShow
VLDSVideoLogger  VLDSVideoLogger Records Video files using DirectShow

DirectShow Video source components

VLDSCapture VLDSCapture  Captures Video from device using DirectShow
VLDSVideoPlayer  VLDSVideoPlayer Plays Video files using DirectShow

DirectShow support components

VLDSVideoPreviewDock  VLDSVideoPreviewDock  Docking location for video preview

Displays

MLDSGraphView  MLDSGraphView  DirectShow graph display

Generic Filters

SLGenericReal SLGenericReal  User defined filter for Real data
SLGenericFilter SLGenericFilter User defined filter for Binary data
SLGenericRealMatrix  SLGenericRealMatrix User defined generator for Real matrix data

Generic Generators

SLGenericGen SLGenericGen  User defined generator for Binary data
SLGenericRealGen  SLGenericRealGen User defined generator for Real data

Geometric transformations

VLResize  VLResize  Resizes the image
VLCrop VLCrop Crops the video

Other

VLDraw VLDraw  Applies(draws) graphical layers over the video frames
VLSnapshot  VLSnapshot Takes a snapshot frame

Signal Filters

SLGenericReal SLGenericReal  User defined filter for Real data
SLGenericFilter SLGenericFilter User defined filter for Binary data
SLGenericRealMatrix  SLGenericRealMatrix User defined generator for Real matrix data

Signal Generators

SLGenericGen SLGenericGen  User defined generator for Binary data
SLGenericRealGen  SLGenericRealGen User defined generator for Real data

Timing components

TLWatchDogTimer TLWatchDogTimer  Implements a Watch Dog Timer.
TLMainThredEvent TLMainThredEvent Allows other threads to generate main thread notifications.
TLClockGen TLClockGen Provides clock for other components.
TLThreadEvent TLThreadEvent Use this component to execute code in a separated thread
TLStopWatch TLStopWatch Use this component to implement a Stop Watch
TLFrequencyMeter  TLFrequencyMeter Use this component to implement a Frequency meter
TLCounter TLCounter Use this component to implement a Counter

Video filters

VLMorphFilter VLMorphFilter  Erodes or deludes the video
VLWienerFilter  VLWienerFilter Performs Wiener filter over the video
VLGenericFilter  VLGenericFilter User defined filter for Video data

Video output components

VLImageDisplay VLImageDisplay  Video display component
VLAVILogger VLAVILogger Records AVI Video files

Video source components

VLImageGen VLImageGen  Generates video from image
VLAxisCapture  VLAxisCapture Captures Video from Axis IP Camera using the Axis media control
VLCapture VLCapture Captures Video from device
VLAVIPlayer VLAVIPlayer Plays AVI Video files
VLGenericGen VLGenericGen User defined generator for Video data
VLASFPlayer VLASFPlayer Plays ASF and WMV Video Files
VLIPCamera VLIPCamera Use this component to capture video data from a generic IP Camera

Video Layers

VLDrawShapeLayer VLDrawShapeLayer  Layer drawing simple shapes
VLDrawTextLayer VLDrawTextLayer Layer drawing text labels
VLDrawPictureLayer VLDrawPictureLayer Layer drawing image
VLDrawMarkersLayer VLDrawMarkersLayer Layer drawing markers
VLDrawXYFloatLayer VLDrawXYFloatLayer Layer drawing X,Y points
VLImageDisplayLayer VLImageDisplayLayer Layer drawing video
VLDrawMotionsLayer VLDrawMotionsLayer Layer drawing motion grid
VLDrawLinesLayer VLDrawLinesLayer Layer drawing detected lines
VLDrawContoursLayer VLDrawContoursLayer Layer drawing detected contours
VLDrawLineSegmentsLayer VLDrawLineSegmentsLayer Layer drawing detected line segments
VLDrawCirclesLayer VLDrawCirclesLayer Layer drawing detected circles
VLDrawTrackTargetLayer VLDrawTrackTargetLayer Layer drawing tracked targets
VLDrawRobustFeaturesLayer VLDrawRobustFeaturesLayer Layer drawing detected robust features
VLDrawRectanglesLayer VLDrawRectanglesLayer Layer drawing detected rectangles.
VLDrawEllipsesLayer VLDrawEllipsesLayer Layer drawing detected ellipses.
VLDrawPolygonsLayer VLDrawPolygonsLayer Layer drawing detected polygons.
VLChamferMatchedContoursLayer  VLChamferMatchedContoursLayer Layer drawing matched contours.
VLDrawDetectedObjectsLayer VLDrawDetectedObjectsLayer Layer drawing detected objects.

Matrix Layers

VLExternalImageDisplayMatrixLayer VLExternalImageDisplayMatrixLayer  Matrix element drawing video

Control Element

VLExternalImageDisplayElement VLExternalImageDisplayElement  Component element drawing video

 

VisionLab: What’s New

New in Version 7.8.0.0 (released on 2016-05-03)

  1. Added RAD Studio 10.1 Berlin support
  2. Removed the old .NET 2.0 Assemblies
  3. New mirrored border processing Multi-core, and OpenCL GPU Morph filter, and Wiener Filter, implementation
  4. New Multi-core, and OpenCL GPU Adaptive Threshold filter implementation
  5. Added Visual Live Binding property editors
  6. Added Reset to Default property editors
  7. Added Enum property editors
  8. Added Class events property editors
  9. Added Multi-Event property editors
  10. Added Make/Split Structure components
  11. Improved RTSP/IPCamera
  12. Introduced MAC support for some of the components when compiling with source code

New in Version 7.7.0.0 (released on 2015-10-28)

  1. Added 10 Seattle support
  2. Added support for VS2015
  3. Added TOWBoolToIntFormatConverter
  4. Improved threading support
  5. Improved OpenWire Editor
  6. Clock pins changed to MiltiSink
  7. Improved Design Time Editors
  8. Improved JSON support
  9. Improved collections
  10. Added more Live Binding types
  11. Added support for hosting OpenWire Studio projects
  12. Added serialization support in the buffers
  13. Improved support for IP Cameras
  14. Added TrigerLevel for the Motion Detector
 

New in Version 7.6.0.0 (released on 2015-04-17)

  1. Added TTLGenericFilter
  2. Added more visual live binding types
  3. Significantly improved property Delphi editors
  4. Improved HOG support
  5. Added option to access Aplha Pixels in image buffer
  6. Timestamps interfaced
  7. IVLDateTime interfaced
  8. IVLTimeCode interfaced
  9. Added option to access Aplha Pixels in image buffer
  10. Improved IP Camera support

New in Version 7.5.1.0 (released on 2014-12-20)

  1. Improved .NET support
  2. Enchanced OpenWire Editor
  3. Added more visual live bindings
  4. Improved TVLDSVideoModes and TALDSAudioModes support for the TVLDSCapture

 

Click to view Larger images. )

VisionLab EXAMPLES

 

[table id=15 /]

 

OPENWIRE FREQUENTLY ASKED QUESTIONS

Do I have to purchase VisionLab?

VisionLab is free for non commercial purposes. This means that you can use it for personal pleasure, hobby, or evaluation purposes. If you are student you can also use it for free for your educational needs including school projects. If you are a tutor at present you also can use it for free for your classes. However in the near future a low cost tutor license will be available, and you will have to purchase it. Your students however will not need license to use the product at class.

Is VisionLab multithreading? Will it stop streaming while I move the window with the mouse?

Yes. VisionLab is fully multithreaded and will not stop streaming while the main thread is busy.

Does VisionLab include any video capture components?

es. VisionLab includes both DirectShow and Video For Windows (VFW) capture components. You don’t need separated capture libraries or components.

Does VisionLab support DirectShow?

Yes. VisionLab supports DirectShow 8.1 or higher.

What version of DirectShow I need to run VisionLab?

VisionLab supports DirectShow 8.1 or higher.

I want to use VisionLab. Do I have to install DirectShow?

DirectShow is not required on your system if you are not planning to write application using the DirectShow components of the package.

 

OPENWIRE STUDIO INSTALLERS

Firemonkey and VCL Installer: VisionLab 7.8.2.288 VCL and FireMonkey 32 & 64 bit support for 10.2 Tokyo and 10.3 Rio

Updated on 2018-12-21, downloaded 114 times.

Visual C++ Installer: VisionLab 7.8.2.152 for Visual C++ MFC

Updated on 2018-11-12, downloaded 5017 times.

.NET Installer: VisionLab 7.8.2.271 for Microsoft .NET 4.0 (4.5 and 4.6 compatible)

Updated on 2018-11-08, downloaded 8739 times.

Legacy Firemonkey and VCL Installer: VisionLab 7.8.2.0 VCL and FireMonkey 32 & 64 bit support for XE8 to 10.1 Berlin

Updated on 2016-06-06, downloaded 1642 times.

Legacy Firemonkey and VCL Installer: VisionLab 7.7.0.0 VCL and FireMonkey 32 & 64 bit support for XE7 to 10 Seattle

Updated on 2015-10-28, downloaded 972 times.

Legacy Firemonkey and VCL Installer: VisionLab 7.6.1.0 VCL and FireMonkey 32 & 64 bit support for XE6 to XE8

Updated on 2015-06-11, downloaded 873 times.

Legacy Firemonkey and VCL Installer: VisionLab 6.0.0. VCL and FireMonkey (Windows only) 32 and 64 bit support for XE2 to XE4

Updated on 2014-11-20, downloaded 523 times.

Legacy Firemonkey and VCL Installer: VisionLab 7.5.0.0 VCL and FireMonkey 32 & 64 bit support for XE4 to XE7

Updated on 2014-11-18, downloaded 799 times.

Legacy Firemonkey and VCL Installer: VisionLab 7.0.0.0 VCL and FireMonkey 32 & 64 bit support for XE3 to XE6

Updated on 2014-04-22, downloaded 824 times.

Legacy Firemonkey and VCL Installer: VisionLab 5.0.3 VCL and FireMonkey for XE2 Update4 Hotfix1

Updated on 2012-10-13, downloaded 922 times.

Legacy Firemonkey and VCL Installer: Legacy VisionLab 5.0.3 VCL and FireMonkey (Windows only) 32 and 64 bit support for 2010 to XE

Updated on 2012-10-11, downloaded 2799 times.

Legacy Firemonkey and VCL Installer: VisionLab 5.0.1 for Delphi/C++ Builder 5 to 2009

Updated on 2011-10-18, downloaded 21930 times.

DEMOS

These demos are executable after downloading.   Also see: Demo source code downloads

Motion Detection demo Demonstrates application of the motion detection components

Video Layers demo Demonstrates the use of TVLDraw and draw layers to automatically superimpose detected object drawings on video

Hough Circles demo Demonstrates finding circles within video using a Hough Transform

Hough Lines demo Demonstrates finding lines within video using a Hough Transform

Canny demo Applys the Canny edge detection algorithm to video

Extract Robust Features demo Demonstrates extracting robust features, e.g., to eliminate noise for custom image analysis

Face Detection demo Demonstrates detecting faces in video

Find Countours demo Finds countours and bounding rectangles in playing video

Targets Track demo Demonstrates the use of the TVLTrackTargets component

Detect People in Image Demonstrates detecting people in images.

 

Mitov License

 

If you do not have a custom licensing agreement with Mitov Software then the following license applies:
 
The libraries are licensed per developer, and there are no royalties required. Once you have purchased a developer license, you are free to distribute your final product without the need to pay any royalties or other fees as long as you comply with the following license agreement:
 
 
LICENSE – AGREEMENT
 
Users of the LabPacks Component Pack(Software) must accept these terms of license.
 
If you refuse to accept the terms of license, you may not use this software, and you have the right to return it within 30 days of the purchase date, and to receive your money back.
 
For your convenience a copy of this license agreement will be stored on your system during the installation.
 
This license grants you the following rights:
 
You have a non exclusive license to the Software. The Title and all intangible rights to the Software are the property of Mitov Software .
 
You may install and use one copy of the Software per computer assuming only one and the same person will use the Software on all of the computers. You may distribute any application that includes Software without any additional royalties beyond your initial license registration fee.
 
You can also create a reasonable set of copies of the product on different types of media, such as CD Rom or Type Backup, as far as those copies are used only for your own back up protection.
 
Description of the limitations.
 
You may not reverse engineer, decompile, or disassemble the Software.
 
The Software is licensed as a single product. You may not rent or lease the Software. You must treat the Software like any other copyrighted material except that you may either (a) a reasonable amount of copies of the Software solely for backup or archival purposes, or (b) install the Software multiple computers provided you keep the original solely for backup or archival purposes and only a single developer will use all of the copies.
 
You may not separate Delphi and C++ Builder components from this Software.
Each developer must have a valid license for the Software.
 
You may not create a competing component product using this Software.
 
Additional restriction to Delphi-VCL and C++ Builder components:
 
You may not distribute the Delphi-VCL components in a DCU (Delphi Compiled Unit) format. You can distribute the component only as a part of your executable or dynamic link library program in a compiled form.
 
You may not distribute the C++ Builder components in OBJ format. You can distribute the component only as a part of your executable or dynamic link library program in a compiled form.
 
 
Mitov Software grants a limited warranty with these restrictions:
 
THE SOFTWARE IS SUPPLIED AS IT IS. MITOV SOFTWARE AND ITS SUPPLIERS DISCLAIM ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, WITH REGARD TO THE SOFTWARE. NO LIABILITY FOR CONSEQUENTIAL DAMAGES. TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT SHALL MITOV SOFTWARE OR ITS SUPPLIERS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT, OR CONSEQUENTIAL DAMAGES WHATSOEVER (INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF BUSINESS PROFITS, BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION, OR ANY OTHER PECUNIARY LOSS) ARISING OUT OF THE USE OF OR INABILITY TO USE THE SOFTWARE.
See the Features Tab for more detail.

Also, we offer custom licensing and vertical development of the VisionLab.  Please direct any questions about custom licensing to Boian Mitov ( mitov@mitov.com ).

PurchaseAll Products Page

 

[otw_is sidebar=otw-sidebar-1]