The battle to retake OpenCV (Or MyRobotLab finds my face)

The thing that I really REALLY like about MyRobotLab, is that GroG has taken really difficult things like speech recognition and vision processing and made it "monkey pushes the button" easy.

Seriously.  There aren't that many robot systems that give OpenNI function buttons.  Well, for me, OpenNI never worked but I knew it would.  And finally, in my last blog post, I described (at painful length,) my heavy handed efforts at getting OpenNI to work.  I had some victories, and hopefully gave GroG, (the real brains here)  enough information to fix and stabilize OpenNI.

But OpenNI isn't the only vision system included in MyRobotLab.  There's also OpenCV, which is a bit more general purpose, and uses hardware that most people actually have--webcams.

When I first tried OpenCV, several dozen Bleeding Edges ago, I was surprised to see that it actually worked.  I was pleased, but more concerned about OpenNI which required hardware that I had spent Real Money on.  But I knew there was always OpenCV to fall back on if it never did.

Until suddenly there wasn't.

If any of you are at all familiar with Ubuntu Linux, you're probably aware that recently, a new version--12.10 Quantal Quetzal, was released.  You might even know that Canonical is pushing towards NEW IMPROVED open source GPU drivers--That break a lot of stuff.  The annoying thing is these drivers were pushed into the older "long term support" release that came before.

What it meant for me, was that one day, OpenCV in MyRobotLab worked.  And then one day it didn't.  Grog noticed the same issues on his Ubuntu test platform.

SO I did what any typical user of MyRobotLab would do--wait for Grog to get around to fixing it.

Problem with that is. . .Grog is busy.  And there are other important and more interesting but simpler issues.    Also, I suspect he might have been a little cranky about having to fix something that WAS working just fine, and STILL works just fine on normal peoples OS of choice--Windows, of course.  So. . .there's not a whole lot of obvious benefit for GroG to jump right on something that only I'm using when there was so much more to do.

I don't blame him.  Not one little bit.  I'm only one user with oddball problems.  Not much help.  Not even much help with things that I COULD be doing.  Promised to do.  But I digress.  I have a problem with OpenCV which used to work.

SO, I did what I did with OpenNI.  Make it work outside of MyRobotLab, so I could compare it to MyRobotLab.

I found a relatively recent tutorial on installing OpenCV in Ubuntu 12.04.  The hard way.  Compiling and everything.

It's HERE if anyone is interested.  And if you're doing anything with OpenCV outside of MyRobotLab, I highly reccomend it.

I had one issue, near the end, where the article has you verify a few key lines in the make output.  (Look at me--using programming terminology as if I actually understand it!)  A small part of my output was wrong, and I had to take a short trip to a troubleshooting page.  But it probably doesn't affect anything that's important in MyRobotLab, so I'm not going into detail.)

The next step would be to find some OpenCV tutorial to run so I could see if it works.  But. . .why not try it out in MyRobotLab first.

Open Up MyRobotLab.  Start an OpenCV service.  Select camera 0. . .capture and

There I am.  Crazy mad scientist hair and everything.  Haven't seen THAT in a while.

Add a face detect filter and pyramid down (makes the image smaller for faster processing.)  And. . .MyRobotLab finds my face.

I fixed OpenCV.  All by myself.  (Well, with the help from some tutorial web site.)  Even GroG was pleased. 

Life is good.


Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
GroG's picture

YOU ROCK ! Tremendous

YOU ROCK !

Tremendous research and detective work !

Way to fix it up ! -  A Super Worky-Award !   I am one happy monkey !

I'm still working @ "work"   Grrr... - but wanted to comment on your awesome progress .. First OpenNI now OpenCV !  Next OpenSLAM :D

So, I'm still betting on the V4L driver .. but have not had the time to prove it...

And it IS benefitial to have Linux working :

1. If it wasnt for open source there would be no MRL (anyway all the really cool source IS open)- so it's a priority to keep this running on Linux (now which Flavors?) :P
2. I use Linux and I want to support myself :)
3. You use Linux and your about 1/3 of the serious users ...

Oh...
You might find it even faster with PyramidDown BEFORE FaceFinder.... 
What is happening your filter pipeline .. is FaceFinder is searching the full resolution image - then its being reduced, rather than FaceFinder searching through a reduced resolution image ...  sometimes its more accurate that way too...

Oh...

YOU ROCK !

GroG's picture

You might be happy to know

You might be happy to know that your post is (hopefully) going to get me through a frustrating spot of trying (GRRR) to get OpenCV to play nice with Ubuntu.

I recently changed my build server from very old Fedora to 12.10 Ubuntu - but have found the transition a bit bumpy.  I am very close of scraping the Ubuntu off the disc and going with a newer version of Fedora.  One of the reasons of my migration was Fedora's horrible Gnome3 desktop, with all its compwiz glitter, errors and crashes. I found Ubuntu's desktop just as stressful.  

Anyway I managed to install all of my bazillion dev tools on Ubuntu, I'm even starting to get (a little) used to apt-get, although I still manage to always type yum whenever I need something... :P

Now, OpenCV will not run on the blasted thing !!! - so I'm following your reference script !!!  Yay!

So I wanted to say thanks for this post and the coding karma - hopefully it will all worky !

Hope studies are going well,

GroG