pydicom.dataset.FileDataset

class pydicom.dataset.FileDataset(filename_or_obj, dataset, preamble=None, file_meta=None, is_implicit_VR=True, is_little_endian=True)

An extension of Dataset to make reading and writing to file-like easier.

preamble

The optional DICOM preamble prepended to the FileDataset, if available.

Type:str or bytes or None
file_meta

The Dataset’s file meta information as a Dataset, if available (None if not present). Consists of group 0x0002 elements.

Type:Dataset or None
filename

The filename that the FileDataset was read from (if read from file) or None if the filename is not available (if read from a io.BytesIO or similar).

Type:str or None
fileobj_type

The object type of the file-like the FileDataset was read from.

is_implicit_VR

True if the dataset encoding is implicit VR, False otherwise.

Type:bool
is_little_endian

True if the dataset encoding is little endian byte ordering, False otherwise.

Type:bool
timestamp

The modification time of the file the FileDataset was read from, None if the modification time is not available.

Type:float or None
__init__(filename_or_obj, dataset, preamble=None, file_meta=None, is_implicit_VR=True, is_little_endian=True)

Initialize a FileDataset read from a DICOM file.

Parameters:
  • filename_or_obj (str or BytesIO or None) – Full path and filename to the file, memory buffer object, or None if is a io.BytesIO.
  • dataset (Dataset or dict) – Some form of dictionary, usually a Dataset returned from dcmread().
  • preamble (bytes or str, optional) – The 128-byte DICOM preamble.
  • file_meta (Dataset, optional) – The file meta Dataset, such as the one returned by read_file_meta_info(), or an empty Dataset if no file meta information is in the file.
  • is_implicit_VR (bool, optional) – True (default) if implicit VR transfer syntax used; False if explicit VR.
  • is_little_endian (bool) – True (default) if little-endian transfer syntax used; False if big-endian.

Methods

__init__(filename_or_obj, dataset[, …]) Initialize a FileDataset read from a DICOM file.
add(data_element) Add an element to the Dataset.
add_new(tag, VR, value) Create a new element and add it to the Dataset.
clear() Delete all the elements from the Dataset.
convert_pixel_data([handler_name]) Convert pixel data to a numpy.ndarray internally.
copy()
data_element(name) Return the element corresponding to the element keyword name.
decode() Apply character set decoding to the elements in the Dataset.
decompress([handler_name]) Decompresses Pixel Data and modifies the Dataset in-place.
dir(*filters) Return an alphabetical list of element keywords in the Dataset.
elements() Yield the top-level elements of the Dataset.
ensure_file_meta() Create an empty Dataset.file_meta if none exists.
fix_meta_info([enforce_standard]) Ensure the file meta info exists and has the correct values for transfer syntax and media storage UIDs.
formatted_lines([element_format, …]) Iterate through the Dataset yielding formatted str for each element.
from_json(json_dataset[, bulk_data_uri_handler]) Add elements to the Dataset from DICOM JSON format.
fromkeys Create a new dictionary with keys from iterable and values set to value.
get(key[, default]) Simulate dict.get() to handle element tags and keywords.
get_item(key) Return the raw data element if possible.
get_private_item(group, element_offset, …) Return the data element for the given private tag group.
group_dataset(group) Return a Dataset containing only elements of a certain group.
items() Return the Dataset items to simulate dict.items().
iterall() Iterate through the Dataset, yielding all the elements.
keys() Return the Dataset keys to simulate dict.keys().
overlay_array(group) Return the Overlay Data in group as a numpy.ndarray.
pop(key, *args) Emulate dict.pop() with support for tags and keywords.
popitem() 2-tuple; but raise KeyError if D is empty.
private_block(group, private_creator[, create]) Return the block for the given tag group and private_creator.
private_creators(group) Return a list of private creator names in the given group.
remove_private_tags() Remove all private elements from the Dataset.
save_as(filename[, write_like_original]) Write the Dataset to filename.
set_original_encoding(is_implicit_vr, …) Set the values for the original transfer syntax and encoding.
setdefault(key[, default]) Emulate dict.setdefault() with support for tags and keywords.
to_json([bulk_data_threshold, …]) Return a JSON representation of the Dataset.
to_json_dict([bulk_data_threshold, …]) Return a dictionary representation of the Dataset conforming to the DICOM JSON Model as described in the DICOM Standard, Part 18, Annex F.
top() Return a str representation of the top level elements.
trait_names() Return a list of valid names for auto-completion code.
update(dictionary) Extend dict.update() to handle DICOM tags and keywords.
values() Return the Dataset values to simulate dict.values().
walk(callback[, recursive]) Iterate through the Dataset's elements and run callback on each.

Attributes

default_element_format
default_sequence_element_format
indent_chars
is_original_encoding Return True if the encoding to be used for writing is set and is the same as that used to originally encode the Dataset.
pixel_array Return the pixel data as a numpy.ndarray.