Getting emguCV to run

hi there,

i’m desperatly trying to check out @elliotwoods emgucv opencv contribution but having problems getting it to run properly.

i installed all the plugins (first in my repository, afterwards in the bin/managed folder) but anyhow only get a few of the nodes working in VVVV.

these are working:

others from the samples (i found in the git source) like:
*AsTexture(EmguCV RGB)

aren’t. any clue what i’m missing? i’ve been spending two hours on this now and can’t figure it out. or did i misunderstand something?

thanks for your help!

I’m interested on this too…
I installed for the third time in the last 2 year Visual Studio C#…
…and downloaded EmguCV… (my learning curve in programming seems to be monodimensional for now)

One day I’ll understand all this devvvv stuff…
…Until that day… Is there any Contour EmguCV node?

Until that day I’m playng with OpticalFlow and dottore’s particles.
Really NICE!

Thanks Elliot!

EDIT: The VC# 2008.sln installed by Emgu is not compatible with VC# Express Edition… AAAARGGHGHH…
Anybody knows if it works with Sharp Develop?

hey all
sorry for the incompatibility. not at all sure where that comes from.
i’m on vs2010 pro. not sure what particular feature i’m using which may be causing the incompatability. do you get an issue when loading the csproj or the solution?

there is currently no emgucv contour node. but i’m doing something today that might need it

i think videoplayer is also disabled at the moment
but that will change of course.

as mentioned, the contrib is pre-release alpha
AsTexture(EmguCV RGB) is unnecessary.
all nodes works with almost every image type now, and instead of having ImageRGB, ImageGrey, ImageRGB32F, etc as seperate types
all are passed through CVImageLink, which is a double buffer capable of automatically converting the image type to whatever is required. in the future it’ll do more as well to get the speed up / make it even more trivial for users / allow more options for advanced users.

I’ll have a look at contour, it should be trivial to wrap up.
one thing to note is that the VVVV contour node also does some extra functions (matches objects from one frame with those from the previous frame, so you have a ‘blob ID’)

Trautner (DirectShow) is similar to FrameDifference (EmguCV)
There is no background subtraction node at the moment.

My current node list is:

Some of the naming will change (i need to re-read up on standards / tighten up my own a little, and i think i’ll change ‘EmguCV’ to ‘OpenCV’)

to note:
do the nodes you currently have work properly?
that’d cheer me up if they did :)

many things have been redesigned since that binary release
i’d say the current version on github is slightly less stable (there’s been bug fixes, but also a rush to add the features i need for a project).

also i made a 3D optical flow example (OpenNI) which works great with particles (i’ll make it into a proper example and post it)


And paste this into your VVVV to get your own node list:
(don’t worry if Clipboard node is red, just copy the text manually)

ObjectTracking was broken in latest commits during some API refactorings, currently i have fixed version, but need to test it.

Hi elliot,
all the links in the long list above seem to be broken


thanks for your quick reply! here are the nodes that work (list is equivalent to first post):

and: they work fine! i tried VideoIn->GaussianBlur/OpticalFlow->AsTexture , but not the Intrinsics, FindBoard, …

just to make shure that there is no misunderstanding from my side:

  • until now i just installed the binary release from your contribution into the v4root/plugins/managed folder. should this binary release enable most of the nodes posted by you above?
  • i also checked out your latest git version to have a look at your samples (which only worked partly because of the missing nodes)
  • i did not compile the VVVV.Nodes.KC.EmguCV.csproj since i don’t have Visual Studio installed (might that be the reason for the missing nodes?)

Hi Elliot!
All those node are working like a charm for me:

Did extensive testing on VideoIn, AsTexture, GaussianBlur, ImageResize, OpticalFlow.

All the other EmguStuff I tested in your fantastic Art&Code kinect project.
Is there a way to merge the OpenNI things of that project in this release?

Because If I add the folder in the root.v4p patch lots of nodes doesn’t work anymore.


PS: It will be possible to add a config pin on VideoIn to bring up the camera settings? I’m using Ps3Eye and sometimes it restore to default settings (AutoExposure, AutoColor etc…)

@robe - camera settings is something i want as well
on top of offering the property page, it’s possible to expose the camera settings in the graph

really glad things are working for other people so far

the art&code examples have been updated at my end to use the new versions of VVVV.Nodes.EmguCV and VVVV.Nodes.OpenNI

I’ll put up some more binaries soon (of both projects)

@h99 - that was me using the ordinary syntax for nodes in the forum (which by default links to as yet non-existent help page)

@motzi - you should be putting the plugins in another location (doesn’t really matter where) and linking to them from your root patch. dumping them inside VVVV will also work but may be difficult to remove later

@elliotwoods: i usually put all the stuff in my repository (linked from my root patch) but in this case i was suspecting a hard link in your code (i was trying all kinds of possibly solutions to get it running). this suspicion came from the fact that in your “Requisites” folder in the contribution all the dlls from the bin/managed folder were included. is there a reason for this?


@elliotwoods,i had some problems,the emguCV plugin only working when i put it to the bin/release folder(i did complied myself from your git). but somehow all emguCVstuff node missing from the nodelist,after i did complied the plugin from your git last night.the only way to make it working is that i have to drag it into the patch window. really strange. am i missing something? btw,thxs for this great plugins.

You also need to put all the opencv dll’s into your build folder (they’re in the contrib, opencv*.dll, cvextern.dll)
And of course add it to the nodelist input in your root patch (remember to save!)

If you have VVVV.Nodes.EmguCV.dll in your vvvv folder, then perhaps best remove it from there before expecting vvvv to correctly find the dll when it’s in another path

I compiled with VsStudio 2008 xpress opening the .csproj and setting the reference folder.

Then I overwrited the new compiled .dll in /obj/Release to /Prerequisites
(in my contribution folder)

Now when I type emgu, nodebrowser lists all the beatiful node Elliot created…

I’m so happy because I’m not a programmer at all and I don’t know exactly what compile means… WOW…

What about the openNI emgu stuff, I can’t find it…
I need another day of random empiric trying.

Thank Elliot again!

PS: Why…

…ImageViewQuad is red (ok, maybe the old name)
I replaced with ImageQuad:
I also added AsTexture (was missing I guess)

What is that graph you’ve made for scaling?

The graph should make a grid of images if you input a spread
Or just 1 image filling the renderer otherwise

Its not tested but my guess is it works properly
But I presume if you have 3 images, it’ll create a grid of 4 with the first repeated
Also there’s options to scale the colour values (e.g. For float images)

yes,i did all of this. put opencv dll,add to nodelist. like i said its working before,also i tried to regenerated my nodelist.xml,but it gave me share address violation error message. i might did something wrong,will let you know if it’s working. thxs!

i get an error using contourPerimeter :
Error in Line(EX9.Geometry)
Error in layer Line (EX9.Geometry)
i see lines a few seconds and then errors occur in TTY
any ideas…

and the contourDelauney returns wrong values at the TriangleAera output Pin
like 1.302E-005

same for the contour node @ Aera output pin