Releases: Baalkikhaal/KerrPy
Performed major refactoring of code
Since v0.2.4 following fixes are made.
space
file is updated after every iteration whenisWidget=True
- To improve readability of import statements of global Variables, the global variables are arranged as logical dictionaries
- In order to refactor the code,
- The save functions in the modules of
File
subfolder now take the root paths of various subfolders of PostProcessing from import statements from a newloadFilePaths
module in theFile
subfolder. - The customROI flow of processing is merged with the original adaptiveROI flow using optional keyword argument
list_counter
. - The
findEgdeCustomROI()
method for customROI is merged with originalfindEdge()
using optional keyword argumentcoordinates
.
- The save functions in the modules of
Faster ROI selection by blitting
Since v0.2.3 release, following fixes are made
- instead of rendering the figure everytime a event is generated, we blit the images by setting
useblit = True
flag. We observe drastic performance gain in the form of reduced latency while Rectangle Selection. - also a warning associated with pickling numpy arrays while saving is cleared by adding
dtype=object
key:value tonp.save()
ofKerrPy/File/processControls.py
- also another global variable
image_shape = tuple([1066, 1344])
is added.
Figure labels rendered using matplotlib
Bug fix
Reordered mpl.rcParams[]
assignment and fig, ax
initialization
Single Widget for ROI selection
Since 0.2.1 release, following fixes are made
- hashed filename prefixes using
sha1()
fromhashlib
built-in module- To avoid the very file path length limit related OS Error, we use SHA-1 for hashing filenames
- SHA-1, for secure hash algorithm, creates a unique 40 character hash of a string.
- The prefix, made up of experiment indices, which was earlier directly added to filepath is now first hashed and then added. This creates unique prefix for a particular subspace. The original prefix is stored in a file named with the hash string for reference.
- This method is inspired by the way hashes the commit objects within the
.git
directory.
- added global flags:
mpl_stylesheet
andusetex
- Default value for usetex= False so it is not assumed LaTeX is installed on system.
- implemented single widget for ROI selection
- Earlier implementation created new widget for every iteration as there was no way to retain the state information across iterations in an event based program structure
- In the current release, we use function attributes for retaining the state of the system during the iteration over images. Other ways to retain the state are to
- use global variables
- use nonlocal variables
- use classes
- process figures over a subspace
- use
processFiguresSubSpace.py
- At prompt enter the space separated experiment indices and finally press
Enter
- use
- process velocity over a subspace
- use
processVelocitySubSpace.py
- At prompt enter the space separated experiment indices and finally press
Enter
- use
KerrPy with CustomROI using Matplotlib Widget
Earlier version 0.1 required user to provide a center for the ROI. However in this update, the user can select a custom ROI selection using Matplotlib's Rectangle Selector widget
Bug Fix release
Minor bug fix
- added
speckless_second
flag toglobalVariables.py
KerrPy with staticROI
In this first release, the user needs to specify a rough center of the bubble domain in the image coordinate system. There are two strategies for the bubble domain
-
global ROI where the domain is searched across the whole of micrograph. This requires sufficient domain contrast as well as minimum topographical defects. Also the domain is captured if the histogram ''mass'' of the domain is sufficient to detect an optimum threshold for binarization.
-
adaptive ROI where the domain is searched in a sequence of zoomed out ROIs to optimized the ratio of bubble to background histogram ''mass''. This strategy is useful when
- the contrast is low
- there are topographic defects present
- other nucleation sites are present within the micrograph and need to be avoided for edge detection. In such case, the ROI can be restricted to certain part of the micrograph.