Ask Your Question

Combining multiple webcam feeds to one large via stitching

asked 2012-12-07 04:50:33 -0600

ubehagelig gravatar image

What I want to do: In a large building (former factory building) I want to place several webcams in the ceiling pointing downwards. With enough webcams the entire length and width of the floor would be covered.

Each webcam covers a section of the floor beneath it. The floor section of neighboring webcams will overlap slightly.

Here is a sketch of what I mean. Note that I have only drawn 6 webcams (lazy me) and the floorplan is not of the actual building, but hopefully it still makes sense. Each square represent the area a webcam films:

image description

My questions:

  1. Is what I am trying to do the same (OpenCV-wise) as creating and stitching a panorama? I mean, with a panorama you take a picture, rotate on an axis, take a new picture. But with my example you take a picture, translate (move) along an axis, take a new picture.
  2. I am trying to understand the overall steps needed. Would the approach be: (1) Find features with SURF on all images. (2) Find matches on all images with BruteForceMatcher (3) Find homography with findHomography. (4) Find seams with seamsFinder (5) Blend images together to one large image.

I appreciate any help and comments! :)

edit retag flag offensive close merge delete



I think it's easier than panorama!

Are your webcams fixed?!

AMP gravatar imageAMP ( 2012-12-07 05:36:08 -0600 )edit

Yup, they are fixed. And each section will overlap slightly. Any specific suggestions as to how to solve it is appreciated :)

ubehagelig gravatar imageubehagelig ( 2012-12-07 05:40:34 -0600 )edit

If they are fixed so you only need to map the outputs of these cameras to a surface and then Blend them together(you can do that manually only one time).

AMP gravatar imageAMP ( 2012-12-07 05:50:31 -0600 )edit

That's great! Could you tell me specifically what I would need to do? Would I be using this (or parts of it)? I have spend a lot of time trying to understand the structure of image stitching, SURF, and all that stuff, so you would save me a LOT of time by being very specific :) Thanks again! :)

ubehagelig gravatar imageubehagelig ( 2012-12-07 06:01:07 -0600 )edit

just wondering whether you got anything running there? I'm kinda doing a very very similiar project right now and am currently a little bit stuck on the stitching part with more than 2 cams (and if possible with working blending). I'd appreciate any feedback, thanks.

Appuru gravatar imageAppuru ( 2014-09-11 04:11:09 -0600 )edit

any updates on this? I also want to do exactly the same thing.

mach gravatar imagemach ( 2014-11-23 09:27:46 -0600 )edit

1 answer

Sort by ยป oldest newest most voted

answered 2015-05-26 09:49:24 -0600

ubehagelig gravatar image

I ended up getting this to almost work. The problem is that it only works in an environment where:

  1. The floor has unique features. So, it will likely work on e.g. a wooden floor where there are many unique features, but not on e.g. a linoleum floor where the pattern is non-existing or uniform.
  2. There is nothing placed on the floor. This requires a bit of explaining: Let's say there is a chair on the floor, and both Cam1 and Cam2 can "see" this chair. So Cam 1 sees the chair from one angle and Cam2 sees the same chair from a different angle. This means that to Cam1 and Cam2 the same chair looks very different, because they are viewing the chair from different angles. So, when the stitching algorithm is looking for similar features in the image from Cam1 and Cam2 the chair will look very different and the algorithm will not recognize that the chair is the same "object". There may be a way around this, but I didn't find a solution myself.

I don't quite know how to solve this problem other than by creating your own reference points (e.g. by lighting an infrared grid on the floor and checking which of the cameras can "see" this grid OR by having people walk through the scene and have them work as reference points for the camera calibration).

edit flag offensive delete link more

Question Tools



Asked: 2012-12-07 04:50:33 -0600

Seen: 4,973 times

Last updated: Dec 07 '12