VL: OpenCV is in da house!

March 29, 2018 posted by: joreg


we’re starting to collect the fruits of our hard efforts of making it easy to use thirdparty libraries. please give a warm welcome to VL.OpenCV

What the?

remember the amazing ImagePackbeta-contribution initiated by @elliotwoods years ago? VL.OpenCV is essentially the same, only for vl: a collection of nodes for computer-vision tasks based on the industry standard library OpenCV.

OpenCV is a vast library with an endless number of interesting features. elliot back in the days did a great job in hand-picking some of the most interesting ones and wrapping them into easy to use nodes for evvvveryone.

meanwhile OpenCV has progressed and so we thought we’d give it a try and make it accessible for everyone in vl. watch this first episode of vvvvTv where ravazquezuser who has been working on this for the past 2.5 months, explains how you can use the prerelease package today.


if we haven’t missed anything, most of the functionality you know from the ImagePack should already be available, except some special video input devices, StructuredLight and FeatureDetection stuff but on the other hand already much more:

so we have:

  • sources: ImageFile, VideoFile, VideoIn (Directshow)
  • sinks: ImageFile, VideoFile
  • filters: Blur, EdgeDetection, Average, FrameDifference…
  • different background substraction options
  • optical flow
  • camera/projector calibration
  • trackers: contours, face recognizer, houghlines, object detection (via haarcascades), different 2d tracker options
  • ar marker tracking and pose estimation
  • utils: Info, CountNonZero, FindNonZero, Resize, Crop, Insert, Split, Merge, Delaunay, Voronoi,…

and most of the nodes and pins come with documentation in the tooltips!


as opposed to the ImagePack, this library is completely free of the complexities of threading. instead a user can use the threading regions of vl to define their own threading. while this indeed puts a bit more effort on the user we hope that the flexibility in dealing with their own threading outweighs the cons of this.


the library is open for everyone to contribute. since it is mostly done in pure vl, with hardly any c# written, it is quite accessible for everyone to extend. so please do so and best join us in the chat to discuss matters when they arise.


Comments are no longer accepted for this post.

29.03.2018 - 17:33
Haha, vvvvtv hilarious! Great to hear that openCv is now working in vl!
29.03.2018 - 18:48
Great news! Thank you so much.
09.08.2019 - 12:54
@aelfwine you need to use a recent alpha version for this pack: /downloads/alphas
09.08.2019 - 13:07

I’m trying to run the alpha version but another error show up v4_alpha_error

I’ve tried with the last 4 releases.


09.08.2019 - 20:44
@aelfwine please note that latest alphas already ship with the correct VL.OpenCV version. no more need to install any nuget. does this help?
29.03.2018 - 23:16
Thanks guys, love the OpenCV stuff and vvvvTV is a cool idea!
30.03.2018 - 05:36
how does it look for dedicated videoins ? are they still required for optimal performance ?
30.03.2018 - 09:17

glad you like it…

@ggml not sure if dedicated devices have to do anything with performance necessarily, more with features not supported by directshow. so here is one eg https://github.com/vvvv/VL.Devices.uEye others should be as simple to do.

30.03.2018 - 11:24
where can i hear the full version of the intro jingle?
30.03.2018 - 16:21
@fleg download an old beta with the infamous crack.exe and start it ;)
08.05.2018 - 14:32
type nuget install VL.OpenCV -prerelease <—-you need this flag to install via Nuget
08.05.2018 - 22:16

From the Matrix for adding other fucntions

So the basic idea is that we are using this C# opencv wrapper called OpenCVSharp in the end for us to be able to use an opencv function it need to be supported by the wrapper K you can go to their website and check, but the easiest way would be to (in VL) open any of the currently available VL.OpenCV nodes, and once you are inside the VL.OpenCV document, just double click and type the name of the function you want to add, if it shows up you are already on the right track, if its not, it is probably not supported by the wrapper

if it does show up, then you can have a look at similar nodes we already added, and have a look at how we did it. In most cases its very straightforward (like the MinMaxLoc), some cases require a bit more work, but with that you should be able to explore already, and of course we are here to help with any questions/problems you might find

09.08.2019 - 12:04

Hello , I’m trying to install the library but when launch the command nuget install VL.OpenCV -prerelease ( like the Git readme) makes this error:

The process cannot access the file ‘\vvvv_50beta38.1_x64\lib\packs\SharpDX.Mathematics.4.0.1\lib/net45/SharpDX.Mathematics.dll’ because it is being used by another process.



vvvv - Dießl & Gregor GbR
Oranienstrasse 10
10997 Berlin/Germany
VAT: DE275566955


Follow us


Sign up for our Newsletter

Your subscription could not be saved. Please try again.
Your subscription has been successful.