有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

即使维度匹配,java Jama矩阵维度也必须符合错误

我正在用JAMA做一些图像处理中的矩阵运算。 这里,我将矩阵与其转置相乘。当然这是可能的。 但我收到了以下错误:

Exception in thread "main" java.lang.IllegalArgumentException: Matrix dimensions must agree.
    at Jama.Matrix.checkMatrixDimensions(Matrix.java:1041)
    at Jama.Matrix.arrayTimes(Matrix.java:615)
    at javaapplication52.JavaApplication52.main(JavaApplication52.java:66)

我的代码片段是:

double dd[][]={{0,1,2,3,4,5,6,7,8},{1,2,3,4,5,6,7,8,9},{2,3,4,5,6,7,8,9,10}};
       Matrix M=new Matrix(dd);
       Matrix MT=M.transpose();
       Matrix C=MT.arrayTimes(M);
       double CC[][]=C.getArray();

     for(int i=0;i<3;i++)
{
    for(int j=0;j<3 ;j++)
    { System.out.println(CC[i][j]+" ");
    }
    System.out.println("\n ");
    //nextLine();
}

共 (2) 个答案

  1. # 1 楼答案

    对于矩阵乘法,应该使用MT.times(M)

    MT.arrayTimes(M)用于元素乘法

  2. # 2 楼答案

    对于矩阵乘法,应使用MT.times(M)