cvb python prototyping - stemmer imaging€¦ · cvb python prototyping scripting vision...
Post on 22-Sep-2020
12 Views
Preview:
TRANSCRIPT
A STEMMER IMAGING PRODUCT
CVB PYTHON PROTOTYPING
SCRIPTING VISION APPLICATIONS
ANDREAS RITTINGER, IMAGE ACQUISITION
A STEMMER IMAGING PRODUCT
Why prototyping is important?
CONTENT
How can Python help you?
What is special about CVB Python bindings?
A STEMMER IMAGING PRODUCT
PROTOTYPES
Get in the right direction
Learn
Time and cost estimate
Present e.g. customer
Answers
A STEMMER IMAGING PRODUCT
WHY PYTHON?
What about the GIL?
A STEMMER IMAGING PRODUCT
PYTHON STATS
Source: Stack Overflow 2019
A STEMMER IMAGING PRODUCT
Python is the second best
language
for anything
just import antigravity
A STEMMER IMAGING PRODUCT
CVB PYTHON PHILOSOPHY
When we started…
Generate Python from C
Generate Python from C++
Do it manually?
A STEMMER IMAGING PRODUCT
CVB PYTHON
Source: https://en.wikipedia.org/wiki/NumPy#/media/File:NumPy_logo.svg
Source: https://qt-wiki-uploads.s3.amazonaws.com/images/3/33/Py-128.png
Explicit resource management
Build-in documentation
Multithreading and async support
Stable API (PEP 384)
Interface to NumPy
UI using PySide2
A STEMMER IMAGING PRODUCT
OBJECT ORIENTATION
The basic classes the wrappers provide
Device Factory
Device(vin)
Device(video)
Device(emu)
Stream Node
Map
Device(non
streaming)
Stream
Node
Ring
BufferImage
Plane Plane
Node
Map
Node
Interfaces
A STEMMER IMAGING PRODUCT
Hello World:
CVB PYTHON
import osimport cvb
with cvb.DeviceFactory.open(os.path.join(cvb.install_path(), "drivers", "CVMock.vin") as device:stream = device.streamstream.start()
for i in range(10):image, status = stream.wait()if status == cvb.WaitStatus.Ok:
print("Acquired image: " + str(i))
stream.abort()
A STEMMER IMAGING PRODUCT
EXAMPLE TASK
Live display
Works with any GenICam device
Responsive / designable UI
A STEMMER IMAGING PRODUCT
CVB DISPLAY
How To?
Multithreaded
Generic HW handling
Separate UI from Logic (MV… whatever)
A STEMMER IMAGING PRODUCT
DEMO
CVB Display Prototype
A STEMMER IMAGING PRODUCT
THANK YOU VERY MUCH FOR YOUR ATTENTION
Your contact:
Andreas Rittinger
STEMMER IMAGING AG
a.rittinger@stemmer-imaging.de
https://www.stemmer-imaging.dehttps://forum.commonvisionblox.com
© Copyright STEMMER IMAGING. Alle Rechte vorbehalten. Alle Texte, Bilder, Graphiken, Ton-, Video- und Animationsdateien
sowie ihre Arrangements unterliegen dem Urheberrecht und anderen Gesetzen zum Schutz geistigen Eigentums. Sie dürfen weder
für Handelszwecke oder zur Weitergabe kopiert, noch verändert und auf anderen Web-Sites verwendet werden. Einige STEMMER
IMAGING-Seiten enthalten auch Bilder, die dem Urheberrecht derjenigen unterliegen, die diese zur Verfügung gestellt haben.
top related