diff options
| author | John Sun <jsun@sightmachine.com> | 2014-04-02 16:22:14 -0700 |
|---|---|---|
| committer | John Sun <jsun@sightmachine.com> | 2014-04-02 16:22:14 -0700 |
| commit | 01e24424971ffa9faa5dabf2e6724cea997a2afb (patch) | |
| tree | 8882d0e2c93e2a1f74178c21b6bffa02a2edee16 /pyvimba/tests/opencv_example.py | |
| parent | 54bec3f39dc7915593a29c22ed1aac0e29ab53b6 (diff) | |
| download | pymba-01e24424971ffa9faa5dabf2e6724cea997a2afb.tar.gz pymba-01e24424971ffa9faa5dabf2e6724cea997a2afb.zip | |
First pass at making pymba a pip installable module.
1) Moved all the source-code under a new folder "pyvimba". Yes I changed the name. Feel free to change it back
2) Added initial CHANGES.txt, MANIFEST.in, LICENSE, README.txt
3) Move opencv_example.py to "tests" directory
Diffstat (limited to 'pyvimba/tests/opencv_example.py')
| -rw-r--r-- | pyvimba/tests/opencv_example.py | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/pyvimba/tests/opencv_example.py b/pyvimba/tests/opencv_example.py new file mode 100644 index 0000000..36b5108 --- /dev/null +++ b/pyvimba/tests/opencv_example.py @@ -0,0 +1,80 @@ +from vimba import * +import numpy as np +import cv2 +import time + +#very crude example, assumes your camera is PixelMode = BAYERRG8 + +# 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 + +# read info of a camera feature +#featureInfo = camera0.getFeatureInfo('AcquisitionMode') +#for field in featInfo.getFieldNames(): +# print field, '--', getattr(featInfo, field) + +# 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 +count = 0 +while count < 10: + camera0.startCapture() + frame0.queueFrameCapture() + camera0.runFeatureCommand('AcquisitionStart') + camera0.runFeatureCommand('AcquisitionStop') + frame0.waitFrameCapture() + + # get image data... + imgData = frame0.getBufferByteData() + + moreUsefulImgData = np.ndarray(buffer = frame0.getBufferByteData(), + dtype = np.uint8, + shape = (frame0.height, + frame0.width, + 1)) + rgb = cv2.cvtColor(moreUsefulImgData, cv2.COLOR_BAYER_RG2RGB) + cv2.imwrite('foo{}.png'.format(count), rgb) + print "image {} saved".format(count) + count += 1 + camera0.endCapture() +# clean up after capture +camera0.revokeAllFrames() + +# close camera +camera0.closeCamera() + +# shutdown Vimba +vimba.shutdown() + |
