Stereo Vision with Minoru 3d Webcam in Processing and OpenCV
Asked Answered
W

3

9

I recently purchased a Minoru 3d Webcam (http://www.minoru3d.com/) in the hopes of using it to do stereo vision in OpenCV. I thought I had done the proper research before ordering it verifying that it would work, but all of those resources are a number of years old.

At the moment, though OpenCV can be ignored. I am using processing just trying to access both cameras separately. It would appear some people have had success in various languages, but the documentation is sparse and in the end just takes me in circles.

Running a Capture.list() command in Processing produces a list shows

name=Vimicro USB2.0 UVC PC Camera,size=640x480,fps=5
name=Vimicro USB2.0 UVC PC Camera,size=640x480,fps=30
etc
name=Vimicro USB2.0 UVC PC Camera,size=640x480,fps=5
name=Vimicro USB2.0 UVC PC Camera,size=640x480,fps=30
etc
My Laptops Webcam

Although I can access the first set, the duplicates are blank, and other software has the device "Minoru 3D Webcam", such as Skype, etc. With this in mind, I have only been able to see the device working in one piece of capturing software, which was installed with the device from a CD. Skype has it listed, but says its in use, or just waits and waits. Note, it is possible to change from a Red/Blue to this side by side.

Minoru 3d Working in Software

I am running Windows 7 64 Bit, and did my best to find the most recent drivers. If I had a Linux computer working I would definitely try on that, but at the moment that's not an option.

If I could just access the one "Minoru 3d Webcam" with it side by side, that'd be great. But even hearing that it definitely wont work would be helpful.

Week answered 17/4, 2014 at 4:3 Comment(5)
Hmmm... a few quick questions: 1) what OS are you on and does the install cd have drivers for multiple OS's ? 2) What happens when you set the capture object to one of the duplicates and call the start() method on it ? <<according to their site it should be showing as duplicates btw, until you install the driver>>Superdominant
Some years ago (2?), I had some success in accessing a Minoru on MacOS through OpenCV. However, I could access only 1 of the 2 cameras at the same time, i.e., I could get the frames from the first camera I was addressing (either of them) then got a segfault as soon as I tried to get data form the other one.Sorcim
I edited the post with some additional information. And I am unsure if the CD, which is from 2008 has additional OSs. I have found a site or two which use the webcam in linux, though.Week
Why is this tagged computer-vision and stereo-3d when this clearly is a camera/peripheral problem ?Autotomize
Were you able to get it to work? I have Windows 8.1 and am thinking of buying the camera.Boric
B
1

I have this configuration (windows 7 64 bits, opencv 2.4.9). To make minoru 3d functional, i have re-compile opencv with USE_DSHOW flag on. In fact, it's only necessary to have a new opencv_highgui249.lib and dll re-compiled For DirectShow, you'll need Windows SDK

Brythonic answered 25/9, 2014 at 16:12 Comment(0)
C
0

I have had exactly the same problem as you (Windows 7 Enterprise , 64 bit). I am currently at the Opencv master branch, building for Visual Studio 2010 C++.

After several evenings failing to capture both Minoru cameras with e.g. : VideoCapture cap1(1); ::Sleep(200); VideoCapture cap2(2); if (!cap1.isOpened() || !cap2.isOpened()) { return -1; } ... // stereo calibration I found out by trial and error that both cameras were captured correctly if:

  1. Used the default Microsoft Vimicro USB2.0 PC Camera driver. I.e. I have completely uninstalled the Minoru software coming with the CD.

  2. Only plugged the Minoru into a USB 2.0 port. If i plug the Minoru into a USB 3.0 port, both cameras light up but OpenCV only captures from one of the cameras - rather unusable for stereo vision.

Cooncan answered 24/10, 2014 at 20:49 Comment(0)
D
0

I found a simple application running opencv with python on a raspberry pi that can help you. The code used for processing the image is:

Example.py

import cv2
import numpy as np

c = cv2.VideoCapture(0)
c.set(3,1280)
c.set(4,480)

while(1):
    _,visao = c.read()

    esquerdo = visao[0:480, 0:640]
    direito = visao[0:480, 640:1280]
    cv2.imshow('esquerdo',esquerdo)
    cv2.imshow('direito',direito)

    if cv2.waitKey(5)==27:
        break
    cv2.destroyAllWindows()

The reference is -> http://jeaeletronica.blogspot.com.br/2013/07/how-to-run-minoru-3d-webcam-on.html .

Diena answered 16/12, 2015 at 11:23 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.