|
|
|
![]() |
|
|||||||
|
||||||||
![]() |
|
|
Thread Tools |
Rating:
|
Display Modes |
|
|
|
#1
|
|||
|
|||
|
USB MS Lifecam HD 3000 Exposure Issues
After several weeks of adjusting and playing with calibrations, I have found that the lifecam's exposure seems to be binary. What we are using is a USB MS Lifecam HD 3000 on Labview with NI Vision example code, and we are using a green LED to try to track the target. In the code I am setting the exposure by making it custom.
When I set the exposure to zero, the camera sees a green target and recognizes it properly. However, even when I change the value to one, the camera sees a white target and cannot find the target. I will change the values to go from one to one-hundred, and I cannot see any change. So, is the exposure acting binary, or am I doing something wrong? |
|
#2
|
||||
|
||||
|
Re: USB MS Lifecam HD 3000 Exposure Issues
Quote:
|
|
#3
|
||||
|
||||
|
Re: USB MS Lifecam HD 3000 Exposure Issues
I have found this behavior to be typical for this camera.
Time to get creative! |
|
#4
|
||||
|
||||
|
Re: USB MS Lifecam HD 3000 Exposure Issues
I agree: this is a common issue with this camera and the tinted or polarized lens does help.
Last edited by techhelpbb : 16-03-2016 at 22:22. |
|
#5
|
||||
|
||||
|
Re: USB MS Lifecam HD 3000 Exposure Issues
I've been setting the exposure using the Lifecam software. It's been working well so far.
|
|
#6
|
||||
|
||||
|
Re: USB MS Lifecam HD 3000 Exposure Issues
I haven't tried using any of the FRC software to set the exposure, but I noticed that OpenCV has issues setting it as well. I've found that you can install v4l-utils (via opkg), and execute the following command:
Code:
v4l2-ctl -c exposure_auto=1 -c exposure_absolute=10 |
|
#7
|
||||
|
||||
|
Re: USB MS Lifecam HD 3000 Exposure Issues
I've been having the same problem with some vision I've been running with open cv. Is it possible to integrate that command into the camera capture object? If I could do this in the initiation of my code that would be great. If possible how so?
|
|
#8
|
||||
|
||||
|
Re: USB MS Lifecam HD 3000 Exposure Issues
Quote:
Code:
import os
...
os.system('v4l2-ctl ... ')
Code:
#include <stdlib.h>
...
system("v4l2-ctl ...");
Code:
Runtime.getRuntime().exec("v4l2-ctl ...");
|
|
#9
|
|||||
|
|||||
|
Re: USB MS Lifecam HD 3000 Exposure Issues
Java? http://stackoverflow.com/questions/8...d-line-in-java
C++? http://stackoverflow.com/questions/8...om-a-c-program Labview? http://digital.ni.com/public.nsf/all...2564C400579DBA |
|
#10
|
|||||
|
|||||
|
Re: USB MS Lifecam HD 3000 Exposure Issues
Anyone find a USB camera you can adjust exposure on?
|
|
#11
|
||||
|
||||
|
Re: USB MS Lifecam HD 3000 Exposure Issues
A few years ago, when Patrick was a student on FRC11, and doing hard core collection of frames from Video4Linux directly into his own Java code on my Dell Mini 9's with Microsoft USB cameras we discovered an annoying issue that basically abstracts away your ability to control the exposure (auto white balance) via the exposed registers on Linux (Ubuntu 9 Karmic at the time) with the Microsoft USB cameras we had and the newer models are not much different. Keeping in mind you have Linux on the RoboRIO but it is not Ubuntu.
We contacted the package maintainer who was part of the V4L project, which OpenCV draws from and GRIP depends on, but between us we weren't able to expose whatever Microsoft had done with the OmniVision CMOS sensor in the core of their camera. I've been a long time user of OmniVision products which are at the core of some of the best webcams (more than 10 years) and it's clearly something particular with the way this was used or the sensor was configured. I tried to pull in some friends from Microsoft but was not successful. A little transparency would have long ago solved this issue. We were able get this to work from V4L directly into Java and OpenCV with Logitech cameras. Logitech has been pretty forthcoming with the Linux community for a long time (considering how many Logitech 3 button mice I used to buy for X-terminals where the middle button was a tricky matter). This issue, by the way, is the reason I provided FRC11 the Logitech C920 USB cameras and why I recommended to several people on ChiefDelphi the Logitech cameras. Take those same Microsoft branded cameras and put them on a Windows laptop and you'll see the issue is much less a problem. The Windows drivers do something to the camera configuration that expands the response. I did consider, at one time, reversing the camera communications with my logic analyzer but, to be honest, the camera is too cheap to waste that kind of energy. Normally I don't expose this kind of interaction but this topic has been respectful so please continue to be polite so I don't regret pointing out the likely problem. Last edited by techhelpbb : 18-03-2016 at 11:50. |
|
#12
|
||||
|
||||
|
Re: USB MS Lifecam HD 3000 Exposure Issues
Please see the thread here: http://www.chiefdelphi.com/forums/sh...d.php?t=142633 (or other posts by robert1356).
Basically, you are not doing anything wrong, there's a problem in the USBCamera class that prevents it from working correctly. You might be able to copy and modify the existing class, but it sends a value between 0-100 when it should be something much greater. |
|
#13
|
||||
|
||||
|
Re: USB MS Lifecam HD 3000 Exposure Issues
Quote:
|
|
#14
|
|||
|
|||
|
Re: USB MS Lifecam HD 3000 Exposure Issues
Quote:
http://www.chiefdelphi.com/forums/sh....php?p=1560711 |
|
#15
|
|||
|
|||
|
Re: USB MS Lifecam HD 3000 Exposure Issues
http://comments.gmane.org/gmane.linu...uvc.devel/5717
This is from 2011, and for a slightly different camera, but it seems like this is how MS built their UVC descriptor. The WPILib wrapper turns all properties into a percentage, so these sorta-geometric scalings will be even more difficult to specify, but apparently there are special numbers that set exposure. Greg McKaskle |
![]() |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|