-
Notifications
You must be signed in to change notification settings - Fork 0
ImageP is a bunch of image processing algorithms I have written for myself first, but use in scientific image processing. All are meant to accurate work. And to avoid using a full scikit-image for simple work.
tomio13/ImageP
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
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!
About
ImageP is a bunch of image processing algorithms I have written for myself first, but use in scientific image processing. All are meant to accurate work. And to avoid using a full scikit-image for simple work.
Topics
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published