Category — Crazy Weekend Project 2: Wesley Crusher Removal
Useful Not Found! Abort, Retry, Fail?
And apparently OpenCVSharp doesn’t have a readily downloadable source distribution. Looks like you have to pull it from SVN. Lovely.
November 27, 2009 No Comments
By Any Other Name
Looks like that failure is due to a filename mismatch. The OpenCVSharp P/Invoke stuff is apparently looking for “cvcore200.dll”, but the actual file is “libcvcore200.dll”.
Easy enough, just change the name. It’s hacky, but it’ll get me through.
Try again…
Same failure.
Looks like the failure is now due to a filename mismatch. The OpenCVSharp P/Invoke stuff is apparently looking for “libcvcore200.dll” but the file has now been renamed “cvcore200.dll”.
How wonderful.
Looks like it’s time to go all open source and see about fixing stuff…
November 27, 2009 No Comments
Warp Drive Disabled
Well, the upgrade to OpenCV 2.0 went just wonderfully. Now, instead of having one function that’s not implemented, I have a hundred functions that won’t even run.
Maybe I should just give up and go back to playing games.
November 27, 2009 No Comments
Upgrade!
Looks like I have to go to OpenCV version 2 after all. Apparently cvCalcEigenObjects wasn’t wrapped in the OpenCVSharp 1.1pre1a release, but it looks like it is there in 2.0. I could, of course, P/Invoke my way into the OpenCV DLL and use the function, but, uh… No. So upgrade it is!
November 27, 2009 No Comments
Slight Setback
The function I was going to use doesn’t actually seem to exist. That might be a problem.
November 27, 2009 No Comments
How am I going to steal their code now?
Source code examples in .PNG format really suck.
November 27, 2009 No Comments
Spatial Anomalies
I think I may have run into a problem on my quest to remove Wesley Crusher from Star Trek before I’ve even started writing the algorithm to do so. The algorithm I was planning on using appears to require highly normalized data. As in every face needs to be looking in exactly the same direction and be the same size in the frame. As the images I pulled are random grabs from an episode, they’re looking left or right or straight ahead or are blurry or have varying degrees of Face vs. Hair, etc. I’m concerned that I’ll just get a completely muddled recognizer that is looking for one totally random blob of pixels vs. another.
I’ll try it anyway, though. Even if it doesn’t work, I’m sure it will come up with some interesting results…
November 27, 2009 No Comments
End of Day 2.
Today definitely involved more work than yesterday. At the end of the day, I’ve got a decent face detector written, with massive help from OpenCV. More importantly, I’ve got over 1500 facial images extracted from an Star Trek episode that I can use for training the face recognizer. That’ll be tomorrow.
It should be noted that when you’re randomly grabbing frames of people’s faces from a video, you end up with a lot of goofy looking facial expressions.
Anyway, if you want to see the rest of the facial images, they’re in SVN, located here:Â https://mathpirate.net/svn/Projects/AlternativeInputDevices/Data/TNGFaces/
November 26, 2009 No Comments
Images Acquired
It finished processing the first episode and extracted 1829 things it thinks are faces. The vast majority of them are good quality faces. The remainder are poor quality or blurry faces of people in the background, various body parts that aren’t faces, and, of course, random pieces of the ship. Still, this should work quite well for training data.
Thing is, I have to manually classify this first bunch…
November 26, 2009 No Comments
Cloak Engaged
The face detector doesn’t seem to be noticing Geordi or Worf. That’s understandable, since Geordi has the VISOR on and Worf’s got the ridged forehead. However, it IS finding a Cardassian, who is completely covered in makeup. Oh well. Since the main use of this won’t be for Starfleet Security, I think I can get away without fixing that particular problem…
November 26, 2009 No Comments