Ask Your Question

Libbux's profile - activity

2020-10-17 10:25:06 -0600 received badge  Notable Question (source)
2018-01-10 01:49:25 -0600 received badge  Popular Question (source)
2013-08-01 09:03:04 -0600 commented question OpenCV and MPI (Open MPI)

@StevenPuttemans I was looking at this article on creating an Open MPI cluster: http://techtinkering.com/2009/12/02/setting-up-a-beowulf-cluster-using-open-mpi-on-linux/ It looks like when you're using the MPI library (mpi.h header included in the sample on that page), you don't need to create separate executables and worry about image transportation and all that stuff - it looks like you can distribute the work between nodes from within a single executable.

2013-07-31 21:41:30 -0600 asked a question OpenCV and MPI (Open MPI)

I'm just wondering if anyone has any experience running OpenCV programs over multiple machines using MPI (Open MPI) and the MPI Libraries in C/C++.

Background:

I'm developing a project which detects and identifies all kinds of moving objects such as vehicles and pedestrians on 496 separate camera feeds, each at a resolution of 352x240, and 1 frame per second. This obviously requires a good amount of computing power, and this is being run on servers which do not have very powerful GPUs so that is out of the question. Instead I am going to attempt to run the program across multiple machines using MPI (or something else if anyone has any suggestions).

2013-07-29 05:42:30 -0600 received badge  Student (source)
2013-07-27 23:04:05 -0600 commented answer Performance question: vehicle & pedestrian detection

Yes, I am doing it in 'real' time, although the framerate is only 1fps per feed.

The GPUs I'm dealing with here have 8-16MB of memory - which is why I'm inclined to take the CPU approach, because the GPUs are basically useless. Am I taking the right approach here?

2013-07-27 13:00:41 -0600 asked a question Performance question: vehicle & pedestrian detection

I've got a massive collection of camera feeds (~496 of them) coming in, which I want to perform vehicle & pedestrian detection on. I'm just wondering if that's even possible.

The feeds are 352 x 240, so not very big, and they aren't video feeds, they're just JPEGs that change every second. So I basically need to do detection on 496 cameras (although I could definitely reduce this number, and just stick to the ones with the best angles) at 352 x 240, at 1 fps each. Seem like too much for a server or cluster of a couple servers to handle? (CPU obviously, server GPUs are potatoes)

2013-07-08 23:16:54 -0600 received badge  Scholar (source)
2013-07-08 00:42:25 -0600 received badge  Editor (source)
2013-07-08 00:41:14 -0600 answered a question Augmented Reality

This seems like a serious undertaking - and one that you could easily write a thesis on, let alone a high school science fair project.

If you want to finish this in the next hundred years, I'd say that you'll need to drop a couple of the features that were shown in the promotional video. First and foremost will be the 3-dimensional tools floating around showing you what to do - you may be able to work something out in OpenCV with image overlays for directions, but 3d is a bit far fetched; remember, you don't have an unlimited supply of computational power here; and you'll need every last drop of it for the object detection and recognition you're doing. And also, you won't be able to write this in Python. You'll have to bite the bullet and go C/C++, to leverage the full possibilities of OpenCV and other libraries. Sorry bud. :D

The barcode reading could be a challenge. I think you could use zxing or something like that to read the barcode and identify what the puzzle is, (although keep in mind that you'll only be able to have a few puzzles to solve, unless you want to go writing 'technician' AIs for every single electrical device with a barcode on it - which I doubt you want to do). Not only will you only be able to have a couple of puzzles, but also only a couple of solutions - just like in the pictures you show, only a single blatantly obvious loose cable or something - because you'll have to manually teach the machine what a puzzle looks like when it's solved, and what it looks like when it hasn't been solved yet.

The object detection and recognition, like the screwdriver, is actually not terribly difficult. You could adapt the method shown in this video. Like you said, you'd probably have to paint the tools a distinct colour so that other objects in the surrounding area aren't mistaken for tools or other objects of interest. Detecting the screws/bolts/nuts/other small things could also be a challenge, because they're small and monotonous and not distinct enough from the surrounding area; unless of course you painted them some wacky colour that made them really stand out. Colour matching is generally the way to go, because to detect objects based on their size and appearance (other than colour) is pretty much h*ll. You'd have to write your own algorithms to detect the patterns in the objects, and it's completely unnecessary. Not to mention how computationally intense detection and recognition algorithms (not based on colour) are. Colours are the way to go.

I'm not entirely sure how this whole system works with the funky glasses - are they a small embedded system that you develop on top of? Or is this whole system powered by a Raspberry Pi? Actually, with this level of detail a ... (more)

2013-07-08 00:01:04 -0600 received badge  Supporter (source)
2013-07-08 00:00:09 -0600 commented question Augmented Reality

I took a look at the project; it seems incredibly ambitious - but then again, the ones who are crazy enough to think they can change the world are the ones who do. I'm reading over it in depth now and trying to make sense of everything. I'll leave a reply on the above link, I can try and get you on the right track.

2013-07-07 23:43:48 -0600 received badge  Organizer (source)
2013-07-07 23:43:06 -0600 asked a question Overlay multiple detections/effects in a single window/image

I'm starting out with OpenCV, and I'm writing a program to do a bunch of detection and recognition on real time (although only about 1fps) camera feeds and images (face detection & recognition, human detection, keypoint detection, keypoint matching, object detection & matching, etc.). At the moment, I've got each new "detection" popping up in it's own window, so face detection has it's own window, keypoint detection has it's own window, etc. I'd like to merge a few of these into a single window, if possible, using either highgui or Qt.