矩阵变换是一种将矩阵进行变换的方法,其计算公式为:

其中, 是输入矩阵, 是变换矩阵,并且皆为逆矩阵。

标准代码如下

def transform_matrix(A,T,S):
    A = np.array(A, dtype=float)
    T = np.array(T, dtype=float)
    S = np.array(S, dtype=float)
    
    if np.linalg.det(T) == 0 or np.linalg.det(S) == 0:
        return -1
    
    T_inv = np.linalg.inv(T)

    transformed_matrix = np.round(T_inv @ A @ S, 3)
    
    return transformed_matrix.tolist()