'Args:
std (float): maximum standard deviation
eigval: a vector of (3,). The eigenvalues of 3 channels.
eigvec: a 3x3 matrix. Each column is one eigen vector.'

def __init__(self, std, eigval, eigvec):

    eigval = np.asarray(eigval)
    eigvec = np.asarray(eigvec)
    assert (eigval.shape == (3,))
    assert (eigvec.shape == (3, 3))
    self._init(locals())
