def yCos(parm, r=0): """ parm: (amp,freq,phase,mean) amp * N.sin(freq*r + phase(deg)) + mean r: degree (not radian!!) """ a, b, c, d = parm r = U.deg2rad(r) c = U.deg2rad(c) return a * N.cos(b * r + c) + d
def yCos(parm, r=0): """ parm: (amp,freq,phase,mean) amp * N.sin(freq*r + phase(deg)) + mean r: degree (not radian!!) """ a, b, c, d = parm r = U.deg2rad(r) c = U.deg2rad(c) return a * N.cos(b*r + c) + d
def transformMatrix(rot=0.0, mag=1.0): """ retrn invmat """ rotRadian = N.pi / 180. * rot cosTheta = N.cos(rotRadian) sinTheta = N.sin(rotRadian) affmatrix = N.array([[cosTheta, sinTheta], [-sinTheta, cosTheta]]) * mag invmat = N.linalg.inv(affmatrix) return invmat
def transformMatrix(rot=0.0, mag=1.0): """ retrn invmat """ rotRadian = N.pi / 180. * rot cosTheta = N.cos(rotRadian) sinTheta = N.sin(rotRadian) affmatrix = N.array([ [cosTheta, sinTheta], [-sinTheta, cosTheta] ]) * mag invmat = N.linalg.inv(affmatrix) return invmat
def logpolar(image, center=None, angles=None, radii=None): """Return log-polar transformed image and log base.""" shape = image.shape if center is None: center = shape[0] / 2, shape[1] / 2 if angles is None: angles = shape[0] if radii is None: radii = shape[1] theta = N.zeros((angles, radii), dtype=N.float64) theta.T[:] = -N.linspace(0, N.pi, angles, endpoint=False) #d = radii d = N.hypot(shape[0] - center[0], shape[1] - center[1]) log_base = 10.0**(N.log10(d) / (radii)) radius = N.empty_like(theta) radius[:] = N.power(log_base, N.arange(radii, dtype=N.float64)) - 1.0 x = radius * N.sin(theta) + center[0] y = radius * N.cos(theta) + center[1] output = N.zeros_like(x) ndii.map_coordinates(image, [x, y], output=output) return output, log_base
def logpolar(image, center=None, angles=None, radii=None): """Return log-polar transformed image and log base.""" shape = image.shape if center is None: center = shape[0] / 2, shape[1] / 2 if angles is None: angles = shape[0] if radii is None: radii = shape[1] theta = N.zeros((angles, radii), dtype=N.float64) theta.T[:] = -N.linspace(0, N.pi, angles, endpoint=False) #d = radii d = N.hypot(shape[0]-center[0], shape[1]-center[1]) log_base = 10.0 ** (N.log10(d) / (radii)) radius = N.empty_like(theta) radius[:] = N.power(log_base, N.arange(radii, dtype=N.float64)) - 1.0 x = radius * N.sin(theta) + center[0] y = radius * N.cos(theta) + center[1] output = N.zeros_like(x) ndii.map_coordinates(image, [x, y], output=output) return output, log_base