A fast, generic, and easy to use clusterizer to cluster hits of a pixel matrix in Python.
Project description
Pixel Clusterizer

Intended Use
Pixel_clusterizer is an easy to use pixel hit clusterizer for Python. It clusters hits connected to unique event numbers in space and time.
The hits must be provided in a numpy recarray. The array must contain the following columns ("fields"):
event_numberframecolumnrowcharge
If the column names are different, a mapping of the names to the default names can be provided. The data type of each column can vary and is not fixed. The column/row values can be either indices (integer, default) or positions (float). Charge can be either integer or float (default).
After clustering, two new arrays are returned:
- The cluster hits array is the hits array extended by the following columns:
cluster_IDis_seedcluster_sizen_cluster
- The cluster array contains in each row the information about a single cluster. It has the following columns:
event_numberIDn_hitschargeseed_columnseed_rowmean_columnmean_row
Installation
Python 2.7 or Python 3 or higher must be used. There are many ways to install Python, though we recommend using Anaconda Python or Miniconda.
Prerequisites
The following packages are required:
numpy numba>=0.24.0
Installation of pixel_clusterizer
The stable code is hosted on PyPI and can be installed by typing:
pip install pixel_clusterizer
For developer, clone the pixel_clusterizer git repository and use the following command to install pixel_clusterizer:
pip install -e .
For testing the basic functionality of pixel_clusterizer, execute the following command:
nosetests pixel_clusterizer
Usage
import numpy as np
from pixel_clusterizer import clusterizer
hits = np.ones(shape=(3, ), dtype=clusterizer.default_hits_dtype) # Create some data with std. hit data type
cr = clusterizer.HitClusterizer() # Initialize clusterizer
cluster_hits, clusters = cr.cluster_hits(hits) # Cluster hits
Also please have a look at the examples folder!
Support
Please use GitHub's issue tracker for bug reports/feature requests/questions.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pixel_clusterizer-3.2.0.tar.gz.
File metadata
- Download URL: pixel_clusterizer-3.2.0.tar.gz
- Upload date:
- Size: 22.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
34523273eac36f070e61626c6db728395ba8fe311e45bf5c7ea9c64074f36e6c
|
|
| MD5 |
3ed06bfb6fb79c022217c2f36722d989
|
|
| BLAKE2b-256 |
8dcd8b690a6f0bb050b80a507143cc1af7befedf9ec6661ca229fa1c1bfae540
|
File details
Details for the file pixel_clusterizer-3.2.0-py3-none-any.whl.
File metadata
- Download URL: pixel_clusterizer-3.2.0-py3-none-any.whl
- Upload date:
- Size: 21.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6f763043bbd2dfd53a1a190ae7bb345921b551e6efc3e0f1db76ba9d6803f333
|
|
| MD5 |
6e58ffa7dcd88ac22d2297f6d844c6ab
|
|
| BLAKE2b-256 |
b6489e103f590fb2ac12a3bfb912b969aa35b933869e7b0cadd12cbf254f6bdf
|