diff options
| author | François-Michel De Rainville <f.derainville@gmail.com> | 2015-01-26 08:36:07 -0500 |
|---|---|---|
| committer | François-Michel De Rainville <f.derainville@gmail.com> | 2015-01-26 08:36:07 -0500 |
| commit | ae2ed2f109c1357211ae4eb0cf157b4fc608a5aa (patch) | |
| tree | eb7d78f4c2a896da4e601793026591220da8c8fa /README.md | |
| parent | fa9afda26e17e07a4dfc5804c431627a07e6d29a (diff) | |
| download | pymba-ae2ed2f109c1357211ae4eb0cf157b4fc608a5aa.tar.gz pymba-ae2ed2f109c1357211ae4eb0cf157b4fc608a5aa.zip | |
Updated README.md as well for with statement
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 198 |
1 files changed, 91 insertions, 107 deletions
@@ -16,141 +16,125 @@ Install pymba. If Vimba and pymba are installed correctly, then the following code should give the installed Vimba version. No camera is needed. - from pymba import * - - vimba = Vimba() - print vimba.getVersion() + from vimba import * + + with Vimba() as vimba: + print vimba.getVersion() ### Interacting with cameras Discover, open, manipulate, and capture frames from a camera. - from pymba import * + from vimba import * import time # start Vimba - vimba = Vimba() - vimba.startup() - - # get system object - system = vimba.getSystem() - - # list available cameras (after enabling discovery for GigE cameras) - if system.GeVTLIsPresent: - system.runFeatureCommand("GeVDiscoveryAllOnce") - time.sleep(0.2) - cameraIds = vimba.getCameraIds() - for cameraId in cameraIds: - print 'Camera ID:', cameraId - - # get and open a camera - camera0 = vimba.getCamera(cameraIds[0]) - camera0.openCamera() - - # list camera features - cameraFeatureNames = camera0.getFeatureNames() - for name in cameraFeatureNames: - print 'Camera feature:', name - - # get the value of a feature - print camera0.AcquisitionMode - - # set the value of a feature - camera0.AcquisitionMode = 'SingleFrame' - - # create new frames for the camera - frame0 = camera0.getFrame() # creates a frame - frame1 = camera0.getFrame() # creates a second frame - - # announce frame - frame0.announceFrame() - - # capture a camera image - camera0.startCapture() - frame0.queueFrameCapture() - camera0.runFeatureCommand('AcquisitionStart') - camera0.runFeatureCommand('AcquisitionStop') - frame0.waitFrameCapture() - - # get image data... - imgData = frame0.getBufferByteData() - - # ...or use NumPy for fast image display (for use with OpenCV, etc) - import numpy as np - moreUsefulImgData = np.ndarray(buffer = frame0.getBufferByteData(), - dtype = np.uint8, - shape = (frame0.height, - frame0.width, - 1)) - - # clean up after capture - camera0.endCapture() - camera0.revokeAllFrames() - - # close camera - camera0.closeCamera() - - # shutdown Vimba - vimba.shutdown() + with Vimba() as vimba: + # get system object + system = vimba.getSystem() + + # list available cameras (after enabling discovery for GigE cameras) + if system.GeVTLIsPresent: + system.runFeatureCommand("GeVDiscoveryAllOnce") + time.sleep(0.2) + cameraIds = vimba.getCameraIds() + for cameraId in cameraIds: + print 'Camera ID:', cameraId + + # get and open a camera + camera0 = vimba.getCamera(cameraIds[0]) + camera0.openCamera() + + # list camera features + cameraFeatureNames = camera0.getFeatureNames() + for name in cameraFeatureNames: + print 'Camera feature:', name + + # get the value of a feature + print camera0.AcquisitionMode + + # set the value of a feature + camera0.AcquisitionMode = 'SingleFrame' + + # create new frames for the camera + frame0 = camera0.getFrame() # creates a frame + frame1 = camera0.getFrame() # creates a second frame + + # announce frame + frame0.announceFrame() + + # capture a camera image + camera0.startCapture() + frame0.queueFrameCapture() + camera0.runFeatureCommand('AcquisitionStart') + camera0.runFeatureCommand('AcquisitionStop') + frame0.waitFrameCapture() + + # get image data... + imgData = frame0.getBufferByteData() + + # ...or use NumPy for fast image display (for use with OpenCV, etc) + import numpy as np + moreUsefulImgData = np.ndarray(buffer = frame0.getBufferByteData(), + dtype = np.uint8, + shape = (frame0.height, + frame0.width, + 1)) + + # clean up after capture + camera0.endCapture() + camera0.revokeAllFrames() + + # close camera ### Interacting with the Vimba system Get a reference to the Vimba system object and list available system features. - from pymba import * + from vimba import * - vimba = Vimba() - vimba.startup() - - # get system object - system = vimba.getSystem() - - # list system features - for featureName in system.getFeatureNames(): - print 'System feature:', featureName + with Vimba() as vimba: + # get system object + system = vimba.getSystem() - # shutdown Vimba - vimba.shutdown() + # list system features + for featureName in system.getFeatureNames(): + print 'System feature:', featureName ### Interacting with transport layer interfaces Get a reference to an interface object and list available interface features. - from pymba import * - - vimba = Vimba() - vimba.startup() - - # get list of available interfaces - interfaceIds = vimba.getInterfaceIds() - for interfaceId in interfaceIds: - print 'Interface ID:', interfaceId - - # get interface object and open it - interface0 = vimba.getInterface(interfaceIds[0]) - interface0.openInterface() + from vimba import * - # list interface features - interfaceFeatureNames = interface0.getFeatureNames() - for name in interfaceFeatureNames: - print 'Interface feature:', name - - # close interface - interface0.closeInterface() + with Vimba() as vimba: + # get list of available interfaces + interfaceIds = vimba.getInterfaceIds() + for interfaceId in interfaceIds: + print 'Interface ID:', interfaceId + + # get interface object and open it + interface0 = vimba.getInterface(interfaceIds[0]) + interface0.openInterface() + + # list interface features + interfaceFeatureNames = interface0.getFeatureNames() + for name in interfaceFeatureNames: + print 'Interface feature:', name + + # close interface + interface0.closeInterface() - # shutdown Vimba - vimba.shutdown() ### Handling Vimba exceptions - from pymba import * + from vimba import * - vimba = Vimba() try: - camera0 = vimba.getCamera(123) - except VimbaException as ve: - print ve.message + with Vimba() as vimba: + except VimbaException as e: + print e.message |
