diff options
| author | morefigs <morefigs@gmail.com> | 2013-04-12 11:42:27 +1000 |
|---|---|---|
| committer | morefigs <morefigs@gmail.com> | 2013-04-12 11:42:27 +1000 |
| commit | 4d97a40f0e3debc80131c33f027fd03532523db7 (patch) | |
| tree | 34d6fb24a0490522b4f7e25de6d1176ba370d93b | |
| parent | 1d88bd0593a2578503499a50f4192e131ed6bf54 (diff) | |
| download | pymba-4d97a40f0e3debc80131c33f027fd03532523db7.tar.gz pymba-4d97a40f0e3debc80131c33f027fd03532523db7.zip | |
Update README.md
| -rw-r--r-- | README.md | 77 |
1 files changed, 42 insertions, 35 deletions
@@ -8,59 +8,62 @@ pymba is a Python wrapper for the Allied Vision Technologies (AVT) Vimba C API. The following code gives a good example of basic pymba usage. For clarity exceptions are not dealt with. - from vimba import Vimba - from vimba import VimbaCamera - from vimba import VimbaFrame + from vimba import * # start Vimba vimba = Vimba() vimba.startup() # show Vimba version - print '\nVimba API version:' - print ' ', vimba.getVersion() + print '\nVimba API version\n------' + print vimba.getVersion() # list available camera IDs - camIds = vimba.listCameras() - print '\nAvailable cameras:' + camIds = vimba.getCameraIds() + print '\nAvailable cameras\n------' for cam in camIds: - print ' ', cam + print cam - # open a camera - cam0 = VimbaCamera(camIds[0]) + # create and open a camera + cam0 = vimba.getCamera(camIds[0]) cam0.openCamera() # list features of a camera - featNames = cam0.listFeatures() - print '\nAvailable features for camera', cam0.cameraIdString - for feat in featNames: - print ' ', feat - - # query a camera feature - featName = 'Gain' - gainFeature = cam0.queryFeature(featName) - print '\nInformation for feature', featName, 'on camera', cam0.cameraIdString - for k, v in gainFeature.iteritems(): - print ' ', k, '---', v - - # read the value of a feature - print '\nValue of feature', featName, 'on camera', cam0.cameraIdString - print ' ', cam0.Gain + featNames = cam0.getFeatureNames() + print '\nAvailable features for camera', cam0.cameraIdString, '\n------' + for fn in featNames: + print fn + + # read info of a camera feature + featInfo = cam0.getFeatureInfo('AcquisitionMode') + print '\nProperties for feature', featInfo.name, 'on camera', cam0.cameraIdString, '\n------' + for field in featInfo.getFieldNames(): + print field, '--', getattr(featInfo, field) + + # get the value of a feature + print '\nValue of feature', featInfo.name, 'on camera', cam0.cameraIdString, '\n------' + print cam0.AcquisitionMode # set the value of a feature - #cam0.Gain = 999 + cam0.AcquisitionMode = 'SingleFrame' + + # create new frames for the camera + frame0 = cam0.getFrame() # creates a frame + frame1 = cam0.getFrame() # creates a second frame - # create a frame for a camera - cam0.frame0 = VimbaFrame(cam0) - cam0.frame0.announceFrame() + # announce frame + frame0.announceFrame() - # grab a camera image + # capture a camera image cam0.startCapture() - cam0.frame0.queueFrameCapture() + frame0.queueFrameCapture() cam0.runFeatureCommand('AcquisitionStart') cam0.runFeatureCommand('AcquisitionStop') - cam0.frame0.waitFrameCapture() - imgData = cam0.frame0.getBufferByteData() + frame0.waitFrameCapture() + + # get image data + imgData = frame0.getBufferByteData() + # can use NumPy and OpenCV for faster image display #import numpy as np #import cv2 @@ -80,13 +83,17 @@ The following code gives a good example of basic pymba usage. For clarity except # shutdown Vimba vimba.shutdown() + + + + + ### Handling Vimba exceptions Handling exceptions can be done as shown below. - from pymba.Vimba import Vimba - from pymba.VimbaException import VimbaException + from vimba import * try: vimba = Vimba() |
