We closed this forum 18 June 2010. It has served us well since 2005 as the ALPHA forum did before it from 2002 to 2005. New discussions are ongoing at the new URL http://forum.processing.org. You'll need to sign up and get a new user account. We're sorry about that inconvenience, but we think it's better in the long run. The content on this forum will remain online.
IndexProgramming Questions & HelpVideo Capture,  Movie Playback,  Vision Libraries › Communication between EyesWeb and Processing
Pages: 1 2 3 
Communication between EyesWeb and Processing (Read 6290 times)
Communication between EyesWeb and Processing
Jul 30th, 2005, 3:10pm
 
Hello there,

for an upcoming project we are reseaching the possibilities of how to set up the following scenario:

[MACHINE A]
Analyse the images of a high-resolution camera into data-packets
|
[COMMUNICATION]
|
[MACHINE B]
Generate visual output

We are thinking to use the following scheme:
Machine A will run EyesWeb to analyse the movements/gestures on the video image and communicate via Open Sound Control to processing the resulting data.
Machine B will retrieve the data and generate the visualisation using processing.

Do you think that OSC will be able to handle such a constant massive flow of data, and what could be the fastest/savest solution to interconnect the 2 machines (e.g. is a OSC server required, or a direct connect between the machines possible via OSC).

Do you have any other suggestions about a different, better setup for this or other software then EyesWeb to analyse live video images for movements, structures etc.

Re: Communication between EyesWeb and Processing
Reply #1 - Jul 30th, 2005, 4:14pm
 
beachmeat wrote on Jul 30th, 2005, 3:10pm:
Do you have any other suggestions about a different, better setup for this or other software then EyesWeb to analyse live video images for movements, structures etc.


Could you maybe be more specific about your requirements for video analysis, what are movements and structures

If you intend to track moving objects/colours/people and send the position data about each one then OSC should be fine.
Re: Communication between EyesWeb and Processing
Reply #2 - Jul 30th, 2005, 4:31pm
 
Quote:
If you intend to track moving objects/colours/people and send the position data about each one then OSC should be fine.


That is correct for one of actually 2 projects:

The first one requires pretty basic reading of movements and silhouettes of bodies (e.g. dancer), the other is a bit more advanced: we want to be able to identify the parts of a body (e.g. heads, arms), and track them.
If someone has information about similar projects we would be delighted to hear about them Smiley
Re: Communication between EyesWeb and Processing
Reply #3 - Aug 1st, 2005, 4:59pm
 
Ok since no one is responding I assume we can proceed and skip that question Smiley

Since we will need to use highres cameras on video-machine we are looking for a way to integrate them as performant as possible.
Which cameras could be recommendable and which videocards/framegrabber or similar solutions help getting good framerates for that?

Thanks a lot for everybodies support!

Manuel
Re: Communication between EyesWeb and Processing
Reply #4 - Aug 1st, 2005, 10:11pm
 
Hi beachmeat,

The last years I have made a few camera-interaction applications (using macromedia director and processing). Now that I discovered the speed (fps) of eyesweb, i will also be exploring this OSC, Midi, servlet or whatever communication between the tracker-pc and the visualiser-pc.
I hope to find out more the next weeks.
Re: Communication between EyesWeb and Processing
Reply #5 - Aug 2nd, 2005, 11:42am
 
Great! Lets keep in touch to share some experiences!
my email: manuel (at) unshift (dot) de.
edit: I just saw you are in the netherlands, what a nice coincidence! Im in Amsterdam , where are you Smiley

I need to run to work, I will post the bookmarks that I regard as helpful later this day!

Anyone got some info regarding some videocards/ solution to get high-framerates with high-quality live video?
Re: Communication between EyesWeb and Processing
Reply #6 - Aug 2nd, 2005, 11:15pm
 
*still reading manuals and stuff in Eindhoven
Re: Communication between EyesWeb and Processing
Reply #7 - Aug 9th, 2005, 12:58am
 
Yup, tried it and it works. I'm working on a project involving that exact workflow.
Re: Communication between EyesWeb and Processing
Reply #8 - Aug 12th, 2005, 11:36am
 
Cosmin,

That is really good to know!
Would you mind setting up a very small basic "tutorial" of how you connect these two from your experience? That would for sure also help future users...

How big was the amount of data you were sending every frame (@ which framerate), what were you reading with eyesWeb..
Have you encountered any stability issues with eyesWeb running for a long time?

Re: Communication between EyesWeb and Processing
Reply #9 - Aug 17th, 2005, 1:40am
 
Well, it's no big deal. I send 2 numbers, at the framerate EW can spill them, about 20-25 fps.

In P5, I get them with this:

Code:

void analyseMessage(OscIn oscIn) {
Object[] o = oscIn.getData();
println("["+o[0]+"] [" +o[1]+ "]");
}


The object "o" is an array with all the values (in my case, 2 values) I send from EW.
In EW I use the Output.Network.ScalarToOSC block with 2 outputs. You can have any number of outputs, plus a type, wich can be linked to anything you want. You can read that too in P5 but I don't see why I'd wanna go that way.

Processing works at it's own framerate, around 20. I haven't tested the whole thing for longer then half an hour but the EW block has been tested by other people for weeks and it seems stable.

I'll probably try sending larger amounts of data soon to see how it all works out, but at the moment I can't help you with that.
Re: Communication between EyesWeb and Processing
Reply #10 - Aug 31st, 2005, 3:20pm
 
Any idea on how to "packet" the data? I've tried communication on the same computer and it chokes the system. Getting another PC or Mac isn't a problem though, I'm pretty confident I can blag that kind of thing out of school. My main hurdle is that I have the data streaming over to Processing but I need to synchronise Processing and EyesWeb. Is there a block I can use that will do this? I assumed for the data to go over I would need a Matrix-to-Scalar block and then plug that into an OSC-output block. All good so far (I'll be able to upload the example when I have internet in the house again). However, without synschronising the two applications Processing has no idea what is x or y. Any suggestions?
Re: Communication between EyesWeb and Processing
Reply #11 - Sep 1st, 2005, 9:26am
 
"I've tried communication on the same computer and it chokes the system."  I haven't experienced that choking, and my EW patch isn't very simple. But on the other hand I just send 2 coords, wich is a small amount of data.

To know wich is wich, I convert the values to strings, and concat them so they will end up like   varA|varB.  And I split them in P5. It's not the most elegant solution but it works Smiley

Also, you COULD use a nicer one, that I haven't tried but I'm pretty sure it would work.  Send each value with a different OSCSend block and use a unique type for each (OSC_Command).
Re: Communication between EyesWeb and Processing
Reply #12 - Sep 2nd, 2005, 12:33pm
 
It was the colour tracking block that was causing the trouble. I like the String packet idea though, it's a lot neater than it sounds. I've already written a short program to extrapolate data from EyesWeb log files which comes in String format anyway. Thanks very much for the tip.
Re: Communication between EyesWeb and Processing
Reply #13 - Sep 6th, 2005, 7:40pm
 
I have made a very small example of a communication between EyesWeb and Processing using OSC, so if ever anybody comes along the situation to need a demo here it is:

http://www.unshift.de/admin/SAM//www/index.php?remoteID=458
Re: Communication between EyesWeb and Processing
Reply #14 - Sep 7th, 2005, 4:51pm
 
Hi,

I am also trying to send a matrix(120x90) over via OSC to P5.
Since I can only send a scalar or a string, I think I need to convert the matrix to a string and then split it, since convert to scalar results in one number only or do I miss the bigger picture? How can I convert a matrix to a string with a split sign as cosmin writes?

I tried using the matrixToScalar block, which should work from my understanding since it "Converts the input matrix to a sequence of scalar numbers." - But all I get is a single number...?
Im hunting this issue down for a whole day now basically checking out every single block in EyesWeb since I cant find any helpful ressources out there...pls pinpoint me to the right direction...
Pages: 1 2 3