Release Notes
1.2.1
Fixed Siemens CSA ASCCONV header parsing (#85).
1.2.0
Changed license to MIT.
Removed NiBabel from requirements.
Made pandas an optional requirement.
Added new
Image
attributes and properties:
data()
now also applies rescaling as (and if) defined by the Rescale Slope and Rescale Intercept header fields. See:Fixed private tag exclusion in the
Header
class’to_dict()
method (see #59).Created the
dicom_parser.utils.multi_frame.multi_frame.MultiFrame
class to handle multi-frame images.Improved sequence detection logic and created a new
bids
module, meant to enable automated BIDS-compatible relative path generation based on the detected sequences.Fixed partial CSA reads to include both the general header and the nested ASCII-encoded (ASCCONV) header as parsed dictionaries.
Fixed ValueError raised when calling the
dicom_parser.image.Image
class’dicom_parser.image.Image.data()
property with a missing ImageType header field.Improved CSA ASCCONV header parsing based on NiBabel’s implementation.
1.1.1
Added Codacity and CodeFactor integrations to improve code quality and implemented suggestions.
Added issue templates, code of conduct, and RTD configuration file.
Added documentation building and test execution instructions in the project’s README.
1.1.0
Updated project structure and packaging to conform with PEP517 and PEP518.
Migrated CI to GitHub Actions.
Fixed dcm generation by mime-type bug (#30) for nested directories.
Improved tests and increased coverage.
1.0.1
Fixed ImportError bug upon importing the python-magic library in a non-Linux OS.
1.0.0
Improved test coverage and added more docstrings.
0.1.7
Added the
keyword_contains()
method to easily look for data elements using a substring of the keyword.Increased tests coverage.
0.1.6
Lots of documentation updates and linting fixes.
Integrated isort.
Changed invalid integer strings (“IS” data elements) to return None (see
IntegerString
).Added mime option to
Series
.Updated development status classifier to beta.
0.1.5
Changed
PrivateDataElement
’sparse_value()
method to try and callbytes.decode()
on the raw value by default.Removed deprecated
dicom_parser.parser.Parser
class.Fixed some linting and docstring issues.
0.1.4
Changed the return type of data elements with a value multiplicity greater than 1 from list to tuple.
0.1.3
Changed Code String (CS) parsing to return verbose value or set of values using the
code_strings
module. This feature can be disabled by setting theParser
’sverbose_code_strings
attribute to False.Added warnings for invalid pixel arrays and invalid Code String (CS) values.
Updated the
sequences
module to work with verbose Code String (CS) data element values and renamed known MR sequences.Refactored the
Parser
class to a bit to improve readability.Fixed CSA header bug for headers with a duplicate “### ASCCONV END ###” pattern.
Created the
DataElement
class as a wrapper around pydicom'sDataElement
to support some custom functionality and provide better integration with django_dicom.
0.1.2
Improved private tags definition so that the
Header
model’sget()
method will work using the private tag’s keyword.Added support for calling
len()
over aSeries
instance to return the number of images in it.Added support for querying header information from a
Series
instance using theget()
method or the indexing operator ([]) using astr
or atuple
.Added support for indexing the
Image
instances from aSeries
using anint
orslice
.
0.1.1
Improved support for accessing CSA headers.
Added auto-decoding for Siemens mosaic encoded data (applies to data extraction in both
Image
andSeries
instances).
0.1.0
First release!
Type correction based on value-representation (VR).
Simple
Series
class for reading DICOM series directories.Basic support for reading CSA headers using the
CsaHeader
class.