You can't save spelling words.

Clear message

Transform Class

# Usage

## Examples

All angles are in degrees

def get_params2D(ima, xform = "xform.align2d"):

• """
• retrieve 2D alignment parameters from the header alpha tx ty mirror scale
"""
• t = ima.get_attr(xform)
• d = t.get_params("2D")
• return d[ "alpha" ], d[ "tx" ], d[ "ty" ], d[ "mirror" ], d[ "scale" ]

def set_params2D(ima, p, xform = "xform.align2d"):

• """
• set 2D alignment parameters in the header alpha tx ty mirror scale
"""
• t = Transform({"type":"2D","alpha":p[0],"tx":p[1],"ty":p[2],"mirror":p[3],"scale":p[4]})
• ima.set_attr(xform, t)

def get_params3D(ima, xform = "xform.align3d"):

• """
• retrieve 3D alignment parameters from the header phi theta psi tx ty tz mirror scale
"""
• t = ima.get_attr(xform)
• d = t.get_params("spider")
• return d[ "phi" ], d[ "theta" ], d[ "psi" ], d[ "tx" ], d[ "ty" ], d[ "tz" ], d[ "mirror" ], d[ "scale" ]

def set_params3D(ima, p, xform = "xform.align3d"):

• """
• set 3D alignment parameters in the header phi theta psi tx ty tz mirror scale
"""
• t = Transform({"type":"spider","phi":p[0],"theta":p[1],"psi":p[2],"tx":p[3],"ty":p[4],"tz":p[5],"mirror":p[6],"scale":p[7]})
• ima.set_attr(xform, t)

def get_params_proj(ima, xform = "xform.projection"):

• """
• retrieve projection alignment parameters from the header phi theta psi s2x s2y
"""
• t = ima.get_attr(xform)
• d = t.get_params("spider")
• return d[ "phi" ], d[ "theta" ], d[ "psi" ], -d[ "tx" ], -d[ "ty" ]

def set_params_proj(ima, p, xform = "xform.projection"):

• """
• set projection alignment parameters in the header phi theta psi s2x s2y
"""
• t = Transform({"type":"spider","phi":p[0],"theta":p[1],"psi":p[2]})
• t.set_trans(Vec2f(-p[3], -p[4]))
• ima.set_attr(xform, t)

Notes:

• a) We could have used EMAN, IMAGIC, SPIN, QUATERNION, SGIROT, MRC, XYZ, MATRIX instead of the SPIDER of EULER_SPIDER above.

# Description

Purpose: to apply rotation/shift/scaling operations for 2D or 3D images via a variety of methods.

P.A. Penczek

P. R. Baldwin

category 1
FUNDAMENTALS

libEM

Infancy

# Bugs

transformClass (last edited 2013-07-01 13:12:38 by localhost)