diff options
| author | morefigs <morefigs@gmail.com> | 2013-04-02 14:58:29 +1200 |
|---|---|---|
| committer | morefigs <morefigs@gmail.com> | 2013-04-02 14:58:29 +1200 |
| commit | 112ce379cb43bdd334ae3f2a766ca46d146a7d7d (patch) | |
| tree | c5ca4887cef852659ea3de2ce3562a78d9096b5c /README.md | |
| parent | 79c047c8dcfbfc468b1a77d4137095fa44c45d31 (diff) | |
| download | pymba-112ce379cb43bdd334ae3f2a766ca46d146a7d7d.tar.gz pymba-112ce379cb43bdd334ae3f2a766ca46d146a7d7d.zip | |
Update README.md
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 80 |
1 files changed, 77 insertions, 3 deletions
@@ -1,4 +1,78 @@ -pymba -===== +# pymba -Python wrapper for Allied Vision Technologies Vimba SDK
\ No newline at end of file +pymba is a Python wrapper for the Allied Vision Technologies (AVT) Vimba C API. It wraps (and requires) the VimbaC.dll file included in the AVT Vimba installation. + +## Usage + + from pymba.Vimba import Vimba + from pymba.VimbaFrame import VimbaFrame + from pymba.VimbaCamera import VimbaCamera + from pymba.VimbaException import VimbaException + + # start Vimba + vimba = Vimba.Vimba() + vimba.startup() + + # show Vimba version + print '\nVimba API version:' + print ' ', vimba.getVersion() + + # list available camera IDs + camIds = vimba.listCameras() + print '\nAvailable cameras:' + for cam in camIds: + print ' ', cam + + # open a camera + cam0 = VimbaCamera(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 + + # set the value of a feature + #cam0.Gain = 999 + + # create a frame for a camera + cam0.frame0 = VimbaFrame(cam0) + cam0.frame0.announceFrame() + + # grab a camera image + cam0.startCapture() + cam0.frame0.queueFrameCapture() + cam0.runFeatureCommand('AcquisitionStart') + cam0.runFeatureCommand('AcquisitionStop') + cam0.frame0.waitFrameCapture() + imgData = cam0.frame0.getBufferByteData() + # can use NumPy and OpenCV for faster image display + #import numpy as np + #import cv2 + #moreUsefulImgData = np.ndarray(buffer = cam0.frame0.getBufferByteData(), + # dtype = np.uint8, + # shape = (cam0.frame0.height, + # cam0.frame0.width, + # 1)) + + # clean up after capture + cam0.endCapture() + cam0.revokeAllFrames() + + # close camera + cam0.closeCamera() + + # shutdown Vimba + vimba.shutdown() |
