2011-12-28 63 views
0
package matlab; 

import com.mathworks.toolbox.javabuilder.*; 
import com.eigenface.Eigenface; 

public class Test { 


    public static void main(String[] args) { 

     Eigenface core = null; 

     Object [] result = null; 




     try { 

      core = new Eigenface(); 
      result = core.EigenFace(2); 
      System.out.println(result[0]); 



     } catch (MWException e) { 

      e.printStackTrace(); 

     } 
    } 

} 

我在一個名爲Eigenface的包裝類中使用了Matlab函數。當我運行我的代碼時,我得到這個異常:{?錯誤使用==> EigenFace 輸出參數太多。 }。 由於該函數在Matalab中沒有問題,沒有人知道爲什麼我會得到這個異常?Java與Matlab異常

回答

0

相信此調用你的代碼是不正確的:

result = core.EigenFace(2); 

是您的MATLAB函數EigenFace的名字嗎?如果沒有,你應該調用類似:

result = core.yourfunction(2); 

你可以看到的例子getmagic.java MATLAB文檔中:

/* Create new magic object */ 
theMagic = new magic(); 

/* Compute magic square and print result */ 
result = theMagic.makesqr(1, n); 
System.out.println(result[0]); 
+0

是的,sintax是正確的。我也嘗試過你建議的例子,並且我得到了相同的異常,所以我猜這是代碼以外的東西... – 2011-12-28 19:20:17