-
Notifications
You must be signed in to change notification settings - Fork 0
/
README.txt
76 lines (60 loc) · 2.5 KB
/
README.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
This collection of algorithm is an implementation of particle tracking related
image processing. The work is based on the publications of prof. Grier, and
various internet resources of the code available for IDL and Matlab.
The whole thing was originally based on scipy and numpy, and also using pylab
as a plotting resource.
Some of these functions may be obsolete a bit, but others I find rather
useful. Each function has its documentation in the code, please have a look.
Lincense: as of 2024 May I put it under CC(4)-BY license, see:
https://creativecommons.org/licenses/by/4.0/
Installation:
old way:
python setup.py build
and as root:
python setup.py install
now:
pip install ImageP....whl
compiling:
python setup.py bdist_wheel
New way:
python -m build
Install (e.g. ImageP...whl)
pip install dist/ImageP....whl
Dependencies:
numpy, matplotlib, image (PIL)
* the numpy should be fresh enough to use the new histogram function
* now the plotting uses matplotlib.pyplot (it used to use the pylab, but
that is a bit overkill now)
* from the PIL it uses the open functionality to read images in the
read_img()
Functionality include:
* a image reader based on PIL
* a bit extended histogram (hist)
* a graythresh algorithm
* a bwlabel and bwfloodlist
Filters:
* an FFT based convolution with padding
* a simple 'convolution' point-by-point for small kernels (<10 pixels across)
* both of these filters using a 1D kernel (for 2D kernels which can be
composed from 1D kernel with an outer product)
* a Gaussian deblurr filter for fluorescence images
* Manders and Pearson image correlation (used in fluorescence microscopy)
Kernels:
* Boxcar kernel (1D or 2D)
* a 1D or 2D Gaussian kernel
* binomial kernel
* Soebel kernel (3, 5, 7 or 9 points)
* Rotating Gaussian (with 1st and 2nd derivative)
Others:
* a universal (and slow) despiking routine
* bwanalyze for some simple parameter determination of simple shapes -
usually generated by bwlabel
* PeakFind a simple peak finder with pixel precision, PeakPos refines these
hits to subpixel precision - like in the Grier article
* PeakPos: to refine the peak positions
* ParticleTrack to sort out position lists containing results of PeakPos
* display() an image display envelop to matplotlib.pyplot
Some of the funcitons can work faster if implemented in C. These are written
in C and in python, and the module checks if it can pick the C version first,
and falls back to the python if necessary.
Have fun!