All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
This release fixes dependency conflicts that were caused by an improper dependency setup. As such, no functionality is changed. The same can be said for the way a user interacts with the package. The main change is related to the new dependency manager: Poetry.
We would still recommend using our new radiantkit
package instead.
Use pygpseq==3.3.6
only if strictly necessary and at your own risk, as this package is not currently maintained.
- Now supporting specifically only Python 3.6.
- Moved scripts to sub-module and updated entry points.
- Switched to Poetry for dependency management.
- Using black for format consistency.
- Analysis of 2D images now works properly.
- Dependency conflicts.
czi_to_tiff
- Support for 2D conversion.
nd2_to_tiff
- Support for 2D conversion.
tiff_findoof
- Parallelization.
- Now using
ggc
functions to export settings in:gpseq_anim
,gpseq_fromfish
andtiff_auto3dseg
. czi_to_tiff
- Refactored for easier development.
- Now using
seaborn
for color palettes.
- Missing dependencies in
setup.py
.- Installation through pypi.org.
tiff_auto3dseg
--neighbour
now works properly.- Provided better error message when 2D mask folder not found.
nd2_to_tiff
: case of single-channel stacks.gpseq_anim
: fixed skipping of boxplot step (previously broke skipping)
czi_to_tiff
: to convert CZI files to TIFF.gpseq_fromfish_merge
- Option for no-date prefix to output.
- Support for date in dataset name.
tiff_findoof
- Silent mode with
-s
.
- Silent mode with
gpseq_anim
- Now using
ggc.check_threads()
.
- Now using
tiff_auto3dseg
- Now using
ggc.check_threads()
.
- Now using
- Fixed
--compressed
option label (now compatible with ImageJ). tools.plot.save_tif
- Added support to retain voxel resolution in TIFF metadata (ImageJ compatible).
nd2_to_tiff
- Now saves Resolution (XYZ) metadata when exporting.
tiff_split v1.1.0
- Allowed for splitting into non-square/cubic images.
- Option to change splitting orientation.
gpseq_fromfish
- Incompatibility with newer version of
tiff_auto3dseg
(v3.1.0+
) script caused by unexpected channel axis in input mask.
- Incompatibility with newer version of
gpseq_fromfish
- Enforcing re-slicing to 3 axes of the input masks, to match the input images.
- Readable error message in case of inconsistent shape between input mask and image, reverting to binarization in that case.
gpseq_fromfish
- Bug in nuclear semi-axes length calculation.
- Clearer documentation for homologue copy pairs to
gpseq_fromfish
andgpseq_fromfish_merge
. gpseq_fromfish
- Additional help page with
-H
. - Option for 0-indexed input.
- New columns to output nuclear table:
- Using
slice
,row
andcol
for coordinates, instead ofz
,y
andx
. box_start_slice
,box_start_row
,box_start_col
: nuclear box starting point 1-indexed coordinates (integer).box_end_slice
,box_end_row
,box_end_col
: nuclear box ending point 1-indexed coordinates (integer).com_slice
,com_row
,com_col
: nuclear mask center of mass 0-indexed coordinates (float).
- Using
- New columns to output compartment table:
*_slice_component
,*_row_component
,*_col_component
: with the components of the three major nuclear axes over the image dimensions.
- Additional help page with
- Clarified warning when input image axes do not match with metadata.
gpseq_fromfish
- Split script help page in
-h
for attributes and standard help, and-H
for more descriptive and readable text. - FISH coordinates can now be floating point (integer is not enforced anymore). Lamina/Center distances are interpolated on the regulard grid.
- Silenced low contrast warnings when saving stacks in debugging mode.
- Changed extension of output tables to
.tsv
, for consistency with actual formatting. - Output compartment table renamed to
nuclear_compartment.out.dilate*.*
.
- Split script help page in
gpseq_fromfish_merge
- Clarified
no copy pairs found
warning message. --aspect
default changed to300. 130. 130.
(ZYX).- Now compatible with both new and old nuclear compartment table naming.
- Clarified
tiff_findoof
- Gradient magnitude mode now default, switch to intensity sum mode with
-S
or--intensity-sum
.
- Gradient magnitude mode now default, switch to intensity sum mode with
gpseq_anim
- Crash when 2D mask folder is not provided.
- Wrong variable name in
anim.series.Series
.
gpseq_fromfish
- Removed
com
(center of mass) column from the output dot table. Now the same information is available in the nuclei table (although the CoM coordinates are box-wise, and not image-wise). - Exporting dot table before
Allele
(homologue copy pair) labeling.
- Removed
- Now writing
tiff
files with properaxes
metadata.
gpseq_fromfish
- Removed double-negation in plot settings confirmation.
tiff_auto3dseg
- Added option to discard objects touching the Z borders during segmentation.
-F
option for dilate-fill-erode operation (10 as default).
tiff_findoof
-G
option for gradient magnitude mode.-R
rename option.
gpseq_fromfish
- Allowed for missing labels.
- Removing
NaN
andInf
when plotting aggregated visualization. - Bug due to high imprecision when calculating angles.
tiff_auto3dseg
- Combination with 2D mask now moved before border clearing.
tiff_auto3dseg
- Added option to combine 2D mask with 3D ones.
- Allowed for labeled input (2D masks).
gpseq_fromfish
&gpseq_anim
- Added option for 2D-to-3D mask combination (also labeled input).
tiff_auto3dseg
- Removed superfluous
nargs
argument inadd_argument
.
- Removed superfluous
- Version info to package dependencies in
setup.py
. - More flexible adaptive threshold behavior in
tools.binarize
. - Option to use dilated mask only for dots assignment, and not for distance calculation, as
gpseq_fromfish --dots-assignment-only
. - (Un)Compression log to
tiffcu
.
- Now depending on
scikit-image v0.14.0
(upgraded package). - Output directory now optional in
nd2_to_tiff
. gpseq_fromfish
now not crashing when a tiff file is corrupted, only an error message is showed.- Better error message during initialization if a series does not have either DNA or Signal channel(s).
- Minor bugs in
binarizer
that crashed the script with certain parameter combinations. - Local threshold behavior.
- Order of output table columns in
gpseq_fromfish
. nd2_to_tiff
now compatible with single-channel nd2 files.nd2_to_tiff
now exporting tiff files with proper axes order.- Mask import in
gpseq_anim
.
- Typo in
gpseq_fromfish
that rendered the--dilate-Z
flag useless.
- Bug that crashed
gpseq_anim
when option-m
is not used.
tiff_auto3dseg
minor bug due to unboundstaticmethod
.
- Enzyme diffusion simulation.
gpseq_fromfish
- Settings export.
- Debug mode.
gpseq_anim
--do-all/-y
option.-M
,-m
,--labeled
and--compressed
to export/import masks.
- Moved distance functions to separate
tools
sub-module. - Now using
ggc
to confirm settings ingpseq_anim
.
return
bug crashing the pipeline when a condition has no nuclei.
datetime
import ingpseq_anim
.
- Volume density merge through
gpseq_fromfish_merge
.
- Nuclear density merge through
gpseq_fromfish_merge
. - Volume profile to
gpseq_fromfish
.
- Center as percentile option is now used also for the nuclear density calculation in
gpseq_fromfish
.
- Bug in
gpseq_fromfish
due to wrong column labeling. - Bug in
gpseq_fromfish_merge
.
- Python version, command line and timestamp to
gpseq_anim
exported settings file.
- Option
--min-radius
/-R
togpseq_anim
to change the XY size filter of segmented objects.
- Intensity sum on sum Z-projection for each nucleus as
flat_sumI
. - Density profile for each nucleus to
gpseq_anim
andgpseq_fromfish
. - Settings confirmation to
gpseq_fromfish
- Plotting option to
tiff_findoof
script. - Option to skip hole filling in segmented masks (
--no-hole-filling
) ingpseq_anim
. - Option to define nucleus center as top percentile (
--center-as-percentile
). - Settings to file in
gpseq_anim
.
- Axes order in
nd2_to_tiff
. - Lamin distance calculation in 3D.
- Fixed dataset aggregated view file names.
- Extension now present in
nd2_to_tiff
output.
- Z dilation is now turned off by default.
- Compartment assignment.
- Fixed colors in aggregated visualization.
- Aggregated visualization per field of view and for the whole dataset, per channel and for all channels.
- Dilation can be enforced to XY dimensions only (
--no-Z-dilation
).
- In 3-ortho-view plot nuclei are now occupying as much space as possible.
- In 3-ortho-view plot are now colored based on the channel.
- Now rotating only on XY plane for nuclear compartmentalization.
- Option
--annotate-compart
is now the default behaviour.
- Fixed sub packages import.
- Now possible to install not in development status.
tiff_split
fromtiff-tools-gg
.--skip-channels
option togpseq_fromfish
.nd2_to_tiff
conversion script.- Progress bar to
tiff_findoof
.
- Fixed
gpseq_fromfish
missingistruct
passing. - Input directory list issue in
gpseq_fromfish_merge
. - Allowed for only partial information in
gpseq_fromfish_merge
input. - TIFF mask import/export in
gpseq_fromfish
.
- Cleaned up
const.py
. wraps
module renamedanim
, will contain all wrappers for GPSeq standard image dataset analysis.main
library moved toanim
module.- Cleaned up and re-structure comment style in all libraries and modules.
- License text in
bin/gpseq_anim
. - TIFF automatic 3D segmentation script from
tiff-tools-gg
. - TIFF (un)compress script from
tiff-tools-gg
. - Out Of Focus detection/plot scripts from
tiff-tools-gg
. - FISH lamin distance calculation script from
dotter2gpseq
. gpseq_fromfish
output merge fromdotter2gpseq
.
- Capturing TIFF read issues.
- Voxel aspect unit of measure.
Max
profile.
- Now borders are properly cleared when analyzing in 3D.
- Nuclear threshold plot size.
- Report format.
- Plot titles.
- Cleaned package structure.
- Renamed
pygpseq-run.py
togpseq_anim
and allowed for easy installation. VERSION
constant now source only fromsetup.py
.- Setup base for unit testing with
nosetests
. - Sigma used for smoothing and density curve production are now separate.
- Now normalizing lamin distance over its sum with central distance.
- Sigma option to
pygpseq-run.py
.
- CSV output files in separate folder.
- X-axis intercepts of profiles and profiles 1st/2nd derivatives are reported.
- Profile areas are reported.
- Single-nucleus data summaries are exported in CSV format.
- Background levels are now reported as barplots.
- Automatic stop if no conditions are found.
- Automatic stop if no series are found in a condition.
- Better documentation is now available.
- DocStrings are now in Napoleon format.
- Improved report.
- Nuclear selection can now be skipped.
- Nuclear selection can now be perform with up to 3 features.
- Moved image binarization in a separate class.
- Generalized channel reading function.
- Distribution comparison using Wilcoxon-Mann-Whitney U test.
- Implemented different middle-section definitions.
[Unreleased] https://github.com/ggirelli/gpseq-img-py [3.4.1] https://github.com/ggirelli/gpseq-img-py/releases/tag/v3.4.1 [3.3.5] https://github.com/ggirelli/gpseq-img-py/releases/tag/v3.3.5 [3.3.4] https://github.com/ggirelli/gpseq-img-py/releases/tag/v3.3.4 [3.3.3] https://github.com/ggirelli/gpseq-img-py/releases/tag/v3.3.3 [3.3.2] https://github.com/ggirelli/gpseq-img-py/releases/tag/v3.3.2 [3.3.1] https://github.com/ggirelli/gpseq-img-py/releases/tag/v3.3.1 [3.3.0] https://github.com/ggirelli/gpseq-img-py/releases/tag/v3.3.0 [3.2.1] https://github.com/ggirelli/gpseq-img-py/releases/tag/v3.2.1 [3.2.0] https://github.com/ggirelli/gpseq-img-py/releases/tag/v3.2.0 [3.1.0] https://github.com/ggirelli/gpseq-img-py/releases/tag/v3.1.0 [3.0.4] https://github.com/ggirelli/gpseq-img-py/releases/tag/v3.0.4 [3.0.3] https://github.com/ggirelli/gpseq-img-py/releases/tag/v3.0.3 [3.0.2] https://github.com/ggirelli/gpseq-img-py/releases/tag/v3.0.2 [3.0.1] https://github.com/ggirelli/gpseq-img-py/releases/tag/v3.0.1 [3.0.0] https://github.com/ggirelli/gpseq-img-py/releases/tag/v3.0.0 [2.1.8] https://github.com/ggirelli/gpseq-img-py/releases/tag/v2.1.8 [2.1.7] https://github.com/ggirelli/gpseq-img-py/releases/tag/v2.1.7 [2.1.6] https://github.com/ggirelli/gpseq-img-py/releases/tag/v2.1.6 [2.1.5] https://github.com/ggirelli/gpseq-img-py/releases/tag/v2.1.5 [2.1.4] https://github.com/ggirelli/gpseq-img-py/releases/tag/v2.1.4 [2.1.3] https://github.com/ggirelli/gpseq-img-py/releases/tag/v2.1.3 [2.1.2] https://github.com/ggirelli/gpseq-img-py/releases/tag/v2.1.2 [2.1.0] https://github.com/ggirelli/gpseq-img-py/releases/tag/v2.1.0 [2.0.1] https://github.com/ggirelli/gpseq-img-py/releases/tag/v2.0.1 [2.0.0] https://github.com/ggirelli/gpseq-img-py/releases/tag/v2.0.0 [1.1.0] https://github.com/ggirelli/gpseq-img-py/releases/tag/v1.1.0 [1.0.0] https://github.com/ggirelli/gpseq-img-py/releases/tag/v1.0.0 [0.1.3] https://github.com/ggirelli/gpseq-img-py/ [0.1.2] https://github.com/ggirelli/gpseq-img-py/ [0.1.1] https://github.com/ggirelli/gpseq-img-py/ [0.1.0] https://github.com/ggirelli/gpseq-img-py/