aboutsummaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
authormorefigs <morefigs@gmail.com>2013-04-02 14:58:29 +1200
committermorefigs <morefigs@gmail.com>2013-04-02 14:58:29 +1200
commit112ce379cb43bdd334ae3f2a766ca46d146a7d7d (patch)
treec5ca4887cef852659ea3de2ce3562a78d9096b5c /README.md
parent79c047c8dcfbfc468b1a77d4137095fa44c45d31 (diff)
downloadpymba-112ce379cb43bdd334ae3f2a766ca46d146a7d7d.tar.gz
pymba-112ce379cb43bdd334ae3f2a766ca46d146a7d7d.zip
Update README.md
Diffstat (limited to 'README.md')
-rw-r--r--README.md80
1 files changed, 77 insertions, 3 deletions
diff --git a/README.md b/README.md
index 4682c94..949720c 100644
--- a/README.md
+++ b/README.md
@@ -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()