def __init__(self, std, eigval, eigvec, clip=True):
        """
        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.
            clip (bool): clip results to [0,255] even when data type is not uint8.
        """
        super(Lighting, self).__init__()
        eigval = np.asarray(eigval, dtype="float32")
        eigvec = np.asarray(eigvec, dtype="float32")
        assert eigval.shape == (3,)
        assert eigvec.shape == (3, 3)
        self._init(locals())

        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.
            clip (bool): clip results to [0,255] even when data type is not uint8.
        
tensorpack/dataflow/imgaug/imgproc.py