PDA

View Full Version : Suggested triggered camera controls



blazini36
August 16, 2017, 16:57:35
Hi,

Im setting up a system that uses a GUI built in glade to display the camera's output. The camera while in normal operation will run in triggered mode. Its basically going to take pictures of a fast moving object that repeats itself and based on encoder and index from the controller. There will likely be a selectable free run mode. I'd also like to have it so the camera's resolution can be changed to act as a digital zoom. There will also be a high power flash.

So I built a GUI file in glade that I'll have to send off to a Python programmer so he can add the functions I've laid out in glade. I have buttons for operator selectable camera controls. I'm wondering what functions I should leave in auto and what I should probably allow the operator to to control through the GUI. I'm thinking exposure and iris probably but I'm not sure. Obviously I have to test it in the field but I'm looking for a starting point. maybe the flash delay too?

Stefan Geissler
August 16, 2017, 17:04:22
Hello

If the camera runs triggered, the automatics of exposure, gain and white balance should be disabled, because you can get strange results, if the frame rate goes to low. Also a change of exposure and gain have an effect on the next image.

The other to be exported properties depend on what you want to do. e.g. if you always use the full resolution, you do not need partial scan properties to show in your gui (if partial scan properties are available).

At least: Show as less as possible properties, thus your user can not destroy too much.

The last "TIS.py" I have posted as zip file in the other thread should make the property handling easier and should work in your Python / GStreamer 1.0 environment.

blazini36
August 17, 2017, 03:55:40
Hello

If the camera runs triggered, the automatics of exposure, gain and white balance should be disabled, because you can get strange results, if the frame rate goes to low. Also a change of exposure and gain have an effect on the next image.

The other to be exported properties depend on what you want to do. e.g. if you always use the full resolution, you do not need partial scan properties to show in your gui (if partial scan properties are available).

At least: Show as less as possible properties, thus your user can not destroy too much.

The last "TIS.py" I have posted as zip file in the other thread should make the property handling easier and should work in your Python / GStreamer 1.0 environment.

What would be the preferred digital zoom method, setting the camera at different resolutions and displaying them larger or leaving it at full resolution and cropping?

Also, I know this camera supports binning but using uvcdynctrl returned a bunch of errors:

/program/tiscamera/data/uvc-extensions $ sudo uvcdynctrl -i usb3.xml -d /dev/video0
[libwebcam] Unknown V4L2 user control ID encountered: 0x0098090E (V4L2_CID_USER_BASE + 14)
[libwebcam] Unknown V4L2 user control ID encountered: 0x0098090F (V4L2_CID_USER_BASE + 15)
etc.

/program/tiscamera/data/uvc-extensions $ sudo uvcdynctrl -i tisEUVC.xml -d /dev/video0
[libwebcam] Unknown V4L2 user control ID encountered: 0x0098090E (V4L2_CID_USER_BASE + 14)
[libwebcam] Unknown V4L2 user control ID encountered: 0x0098090F (V4L2_CID_USER_BASE + 15)
etc.

Is this the proper usage?

Stefan Geissler
August 17, 2017, 09:12:57
What would be the preferred digital zoom method, setting the camera at different resolutions and displaying them larger or leaving it at full resolution and cropping?
Digital zoom is always keep the resolution and display bigger.

/program/tiscamera/data/uvc-extensions $ sudo uvcdynctrl -i usb3.xml -d /dev/video0
[libwebcam] Unknown V4L2 user control ID encountered: 0x0098090E (V4L2_CID_USER_BASE + 14)
[libwebcam] Unknown V4L2 user control ID encountered: 0x0098090F (V4L2_CID_USER_BASE + 15)
etc.

/program/tiscamera/data/uvc-extensions $ sudo uvcdynctrl -i tisEUVC.xml -d /dev/video0
[libwebcam] Unknown V4L2 user control ID encountered: 0x0098090E (V4L2_CID_USER_BASE + 14)
[libwebcam] Unknown V4L2 user control ID encountered: 0x0098090F (V4L2_CID_USER_BASE + 15)

This is proper usage and ca be ignored

blazini36
August 17, 2017, 18:43:40
Digital zoom is always keep the resolution and display bigger.


This is proper usage and ca be ignored

So all of the changes are still being applied? Also is there something to reference for the values being changed?

Stefan Geissler
August 18, 2017, 15:13:21
So all of the changes are still being applied? Also is there something to reference for the values being changed?

I do not understand which changes? "display" was meant as verb, not as substantive. That means, I wont change camera setting, but show the image bigger in your control. That would implement digital zoom.

blazini36
August 18, 2017, 23:22:41
I do not understand which changes? "display" was meant as verb, not as substantive. That means, I wont change camera setting, but show the image bigger in your control. That would implement digital zoom.

I was referring to the errors that are present with the uvcdynctrl command pointing to the xml files. You said they can be ignored. I assume you meant the new values if I were to change them would still be applied but I just reread the readme and I believe changing the file and leaving it in the /usr/share/uvcdynctrl/data/199e directory will load new values automatically when the camera connects. Can you provide an example of how to enable the hardware trigger in the xml files?

But I assume what you mean about the digital zoom is leave the camera at the highest resolution (2448x2048) and crop and resize the image larger?