Differences between revisions 1 and 2
Revision 1 as of 2008-10-02 04:09:01
Size: 1532
Editor: SteveLudtke
Comment:
Revision 2 as of 2008-10-02 06:00:40
Size: 3700
Editor: SteveLudtke
Comment:
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:
The EMData object, and its representation on disk in the BDB local database, XML files, and when serialized in Python using 'pickle', supports the concept of arbitrary header parameters also known as metadata. This metadata are key/value pairs. The keys are always simple ascii text, and the values may be virtually anything represented as an EMObject, including simple ints, floats and strings, as well as more complicated objects such as Transform classes. If an EMData object is stored in some fashion other than the 3 mechanisms above, some loss of metadata is almost guaranteed. The file i/o objects will try to preserve some of the basic metadata, but most of the cryoEM formats simply don't support arbitrary header-data. The EMAN2 convention is to use BDB for most internal purposes, and to use HDF5 for data transfer/exchange.
Line 3: Line 4:
The EMData object, and its representation on disk in the BDB local database, XML files, and when serialized in
Python using 'pickle', supports the concept of arbitrary header parameters also known as metadata. This metadata
are key/value pairs. The keys are always simple ascii text, and the values may be virtually anything represented
as an EMObject, including simple ints, floats and strings, as well as more complicated objects such as Transform
classes. If an EMData object is stored in some fashion other than the 3 mechanisms above, some loss of metadata
is almost guaranteed. The file i/o objects will try to preserve some of the basic metadata, but most of the
cryoEM formats simply don't support arbitrary header-data. The EMAN2 convention is to use BDB for most internal
purposes, and to use HDF5 for data transfer/exchange.
This page will serve as a repository for the officially supported parameter key/value pairs. While you are free to set any metadata keys/values you like in an EMData object, the names listed here may be interpreted in specific ways by specific modules within EMAN, so it would be unwise to abuse them. Also, if you make up your own name for some purpose, it wouldn't hurt to register it here in the 'unofficial' section, to avoid it being used by someone else for a different purpose.
Line 12: Line 6:
This page will serve as a repository for the officially supported parameter key/value pairs. While you are free
to set any metadata keys/values you like in an EMData object, the names listed here may be interpreted
in specific ways by specific modules within EMAN, so it would be unwise to abuse them. Also, if you make up your
own name for some purpose, it wouldn't hurt to register it here in the 'unofficial' section, to avoid it being
used by someone else for a different purpose.
=== Special tags (read-only for getting image info) ===
==== These values are cached and only recomputed if the image changes ====
||nx,ny,nz||int||Dimensions of the image, also available as get_xsize(),etc.||
||minimum||float||Smallest value in the image||
||maximum||float||Largest value in the image||
||mean||float||The average pixel value in the image||
||sigma||float||The standard deviation of the pixel values in the image||
||square_sum||float||Sum of the squares of the pixel values||
||mean_nonzero||float||The mean value of all nonzero pixels||
||sigma_nonzero||float||The standard deviation of the pixels ignoring pixels which are zero||
||is_complex||int||Flag indicating that the image is complex (R/I or A/P pairs)||
||is_complex_ri||int||Flag indicating that a complex image is R/I not A/P||
||changecount||int||An integer which is incremented every time the image is marked as changed||

==== These values are computed on the fly ====
||skewness||float||Skewness of the pixel values||
||kurtosis||float||Kurtosis of the pixel values||
||median||float||Median value of the pixel values||
||nonzero_median||float||Median value of nonzero pixels||
Line 20: Line 28:
||apix_x,y,z||float||Angstroms per pixel on the x-axis (also _y and _z)||
||xform.projection||Transform||A Transform object used by Projectors. It is applied to a 3-D model prior to projecting by summing along Z. The inverse of this Transform is used by Reconstructors||
||xform.align2d||Transform||A Transform object representing a 2-D transformation used to align this EMData object to a reference in 2-D||
||xform.align3d||Transform||A Transform object representing a 3-D transformation used to align this (3-D) EMData object to a (3-D) reference||
||ptcl_repr||int(float?)||If an image represents the average of one or more other images, this is the count of the number of particles that went into the average||
|| || ||
|| || ||
|| || ||
|| || ||
|| || ||
|| || ||
|| || ||
|| || ||
|| || ||

'''Proposed new Official tags (comments welcome):'''
||<tablewidth="200px" tablealign=""> || ||
|| || ||
|| || ||
Line 22: Line 49:

||<tablewidth="200px" tablealign=""> || ||
|| || ||
|| || ||

Parameters/Metadata stored in EMData Objects

The EMData object, and its representation on disk in the BDB local database, XML files, and when serialized in Python using 'pickle', supports the concept of arbitrary header parameters also known as metadata. This metadata are key/value pairs. The keys are always simple ascii text, and the values may be virtually anything represented as an EMObject, including simple ints, floats and strings, as well as more complicated objects such as Transform classes. If an EMData object is stored in some fashion other than the 3 mechanisms above, some loss of metadata is almost guaranteed. The file i/o objects will try to preserve some of the basic metadata, but most of the cryoEM formats simply don't support arbitrary header-data. The EMAN2 convention is to use BDB for most internal purposes, and to use HDF5 for data transfer/exchange.

This page will serve as a repository for the officially supported parameter key/value pairs. While you are free to set any metadata keys/values you like in an EMData object, the names listed here may be interpreted in specific ways by specific modules within EMAN, so it would be unwise to abuse them. Also, if you make up your own name for some purpose, it wouldn't hurt to register it here in the 'unofficial' section, to avoid it being used by someone else for a different purpose.

Special tags (read-only for getting image info)

These values are cached and only recomputed if the image changes

nx,ny,nz

int

Dimensions of the image, also available as get_xsize(),etc.

minimum

float

Smallest value in the image

maximum

float

Largest value in the image

mean

float

The average pixel value in the image

sigma

float

The standard deviation of the pixel values in the image

square_sum

float

Sum of the squares of the pixel values

mean_nonzero

float

The mean value of all nonzero pixels

sigma_nonzero

float

The standard deviation of the pixels ignoring pixels which are zero

is_complex

int

Flag indicating that the image is complex (R/I or A/P pairs)

is_complex_ri

int

Flag indicating that a complex image is R/I not A/P

changecount

int

An integer which is incremented every time the image is marked as changed

These values are computed on the fly

skewness

float

Skewness of the pixel values

kurtosis

float

Kurtosis of the pixel values

median

float

Median value of the pixel values

nonzero_median

float

Median value of nonzero pixels

Official tags (used in EMAN2/SPARX as distributed):

apix_x,y,z

float

Angstroms per pixel on the x-axis (also _y and _z)

xform.projection

Transform

A Transform object used by Projectors. It is applied to a 3-D model prior to projecting by summing along Z. The inverse of this Transform is used by Reconstructors

xform.align2d

Transform

A Transform object representing a 2-D transformation used to align this EMData object to a reference in 2-D

xform.align3d

Transform

A Transform object representing a 3-D transformation used to align this (3-D) EMData object to a (3-D) reference

ptcl_repr

int(float?)

If an image represents the average of one or more other images, this is the count of the number of particles that went into the average

Proposed new Official tags (comments welcome):

Unofficial tags (used by someone in their own code or for testing):

EMAN2/Eman2Metadata (last edited 2022-08-07 02:33:53 by SteveLudtke)