Skip to main content

vxPy - Vision experiments in Python

Project description

vxPy

vxPy is a multiprocessing-based software for vision experiments in Python.

It leverages OpenGL-based 3D graphics rendering, using the Python visualization library VisPy, for dynamic generation and realtime updating of visual stimuli. vxPy utilizes multicore hardware for fast online aquisition and analysis of behavioral and other sensor data, as well as control of external devices, such as actuators or LEDs, via configurable microcontroller interfaces.

This is the core package for vxPy. The accompanying application to configure and run the UI is hosted at vxPy_app.

Requirements

vxPy has been tested on Windows 10 and Ubuntu 20.04 and 22.04 LTS. It requires Python 3.8 or higher.

Installation

Installing Python

Windows

Download and install the Python 3.8+ binaries if not already installed from https://www.python.org/downloads/

Ubuntu

Install from canonical

user@machine: ~$ sudo apt-get install python3.x 

Install vxPy with PyCharm (recommended)

TODO

Install vxPy with terminal

Linux

Create a new folder where you'd like to install the vxPy application (here ~/vxPy_app/). Using a terminal, create a virtual environment inside the empty folder

user@machine: ~/vxPy_app$ python3.x -m venv venv 

Activate the environment

user@machine: ~/vxPy_app$ ./venv/bin/activate

Install vxPy with all its dependencies

(venv) user@machine: ~/vxPy_app$ pip install git+https://github.com/thladnik/vxpy.git

Run vxPy setup to create application structure

(venv) user@machine: ~/vxPy_app$ python -m vxpy setup

Alternatively, you can forego downloading sample files

(venv) user@machine: ~/vxPy_app$ python -m vxpy setup nosamples

WARNING: the demonstration in default.ini requires the sample files to run properly

You can run the default configuration with

(venv) user@machine: ~/vxPy_app$ python main.py

Compatible devices

TheImagingSource (TIS) cameras

Under Windows TIS cameras are supported out of the box, using the TIS' original tisgrabber DLLs and their ctype bindings included in vxPy.

In order to use TIS cameras under Linux, you need to install tiscamera (Github repository) by following the instructions there.

Within the Python environment, you then need to install pycairo and PyGObject with

(venv) user@machine: ~/vxPy_app$ pip install pycairo PyGObject

WARNING: starting with version 1.0.0, tiscamera no longer supports older camera models (see list in repo). If you're using one of those, instead install the latest pre-1.0.0 stable release (0.14.0) by checking it out with

user@machine: ~/tiscamera$ git checkout tags/v-tiscamera-0.14.0

directly after cloning the repository and before installing the dependencies or building the binaries.

Basler cameras

Basler cameras are supported for Windows and Linux. Just download the pylon installer for your plattform from the Basler website.

Then install the respective Python pypylon package into your environment with

(venv) user@machine: ~/vxPy_app$ pip install gst PyGObject pypylon

Arduino

Arduino microcontrollers for analog and digital IO operations are supported natively (via standard Firmata).

Coming soon: Instructions for setting up controller with Firmata.

Project details


Download files

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

Source Distribution

vxpy-0.1.6.tar.gz (2.6 MB view details)

Uploaded Source

Built Distribution

vxpy-0.1.6-py3-none-any.whl (2.6 MB view details)

Uploaded Python 3

File details

Details for the file vxpy-0.1.6.tar.gz.

File metadata

  • Download URL: vxpy-0.1.6.tar.gz
  • Upload date:
  • Size: 2.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.18

File hashes

Hashes for vxpy-0.1.6.tar.gz
Algorithm Hash digest
SHA256 90c8a8ac8fae6cfbe382e2d548874b09dcf973497e79f1f3d358ac5e45a32441
MD5 83eeb08b90177f577cc24605ae5a08b4
BLAKE2b-256 8de37b7408e4ac920af9faa98ba5f6dd408a51d8371d7a8dc0b761959781b6a8

See more details on using hashes here.

File details

Details for the file vxpy-0.1.6-py3-none-any.whl.

File metadata

  • Download URL: vxpy-0.1.6-py3-none-any.whl
  • Upload date:
  • Size: 2.6 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.18

File hashes

Hashes for vxpy-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 7ca4aacab9e07ab6697d64502baa830feda6e9c52a0618cb21e5ec9f52716a87
MD5 32ad60528138e6e19a9a94ed977cf15b
BLAKE2b-256 fae71b6597290c7f6bbf7a2397ceb08f368227d529b77c553911e8c5abc8b8aa

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page