Skip to main content

Allied Vision AVT-Prosilica camera controller with PLICO

Project description

PYSILICO: Prosilica AVT camera controller for Plico

Python package codecov Documentation Status PyPI version

pysilico is an application to control Allied AVT/Prosilica cameras (and possibly other GigE cameras) under the plico environment.

Installation

On client

On the client machine

pip install pysilico

On the server

On the server machine install the proprietary driver for the camera you want to control. Currently only AVT/Prosilica camera are supported through Vimba

For AVT / Prosilica

First install Vimba (that comes with the camera, or download Vimba SDK from AVT website). Check that the Vimba installation is successful and that the camera is accessible by the server using VimbaViewer, the standalone application provided in Vimba SDK. You should be able to see the cameras in the network and stream images.

Then install the Vimba python wrapper. Check that the installation is successfull by running the provided example, like the one below:

(pysilico) lbusoni@argos:~/Downloads/Vimba_5_0/VimbaPython/Examples$ python list_cameras.py 
//////////////////////////////////////
/// Vimba API List Cameras Example ///
//////////////////////////////////////

Cameras found: 1
/// Camera Name   : GC1350M
/// Model Name    : GC1350M (02-2130A)
/// Camera ID     : DEV_000F3101C686
/// Serial Number : 02-2130A-06774
/// Interface ID  : eno2

(pysilico) lbusoni@argos:~/Downloads/Vimba_5_0/VimbaPython/Examples$ 

Install server

As a last step you always have to install the generic pysilico-server

pip install pysilico-server

The pysilico-server package installs also the client package.

Usage

Starting Servers

Starts the 2 servers that control one device each.

pysilico_start

Using the GUI

Run pysilico_gui

Using the client module

In a python terminal on the client computer:

In [1]: import pysilico

In [2]: cam1= pysilico.camera('192.168.1.18', 7100)

In [3]: cam2= pysilico.camera('192.168.1.18', 7110)

In [4]: frames= cam1.getFutureFrames(10)

Stopping pysilico

To kill the servers run

pysilico_stop

More hard:

pysilico_kill_all

Administration Tool

For developers.

Testing

Never commit before tests are OK! To run the unittest and integration test suite cd in pysilico source dir

python setup.py test

Creating a Conda environment

Use the Anaconda GUI or in terminal

conda create --name pysilico

To create an environment with a specific python version

conda create --name pysilico python=2.6

It is better to install available packages from conda instead of pip.

conda install --name pysilico matplotlib scipy ipython numpy

Packaging and distributing

See https://packaging.python.org/tutorials/distributing-packages/#

To make a source distribution

python setup.py sdist

and the tar.gz is created in ../dist

You can make a universal wheel

python setup.py bdist_wheel 

The wheels are created in ../dist. I suppose one can delete pysilico/build now and distribute the files in ../dist

To upload on pip (but do you really want to make it public?)

twine upload ../dist/*

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for pysilico, version 0.19.0
Filename, size File type Python version Upload date Hashes
Filename, size pysilico-0.19.0-py2.py3-none-any.whl (26.2 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size pysilico-0.19.0.tar.gz (38.4 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page