将m文件打包成jar包使用

清疚 2022-10-07 08:56 273阅读 0赞

将基于平稳小波变换和非线性能量毛刺检测打包成jar包后使用

具体新建java项目参考:
https://blog.csdn.net/qq_19865749/article/details/68932949

本次试验用的程序如下:

  1. package com;
  2. import com.mathworks.toolbox.javabuilder.MWClassID;
  3. import com.mathworks.toolbox.javabuilder.MWException;
  4. import com.mathworks.toolbox.javabuilder.MWNumericArray;
  5. import com.mathworks.toolbox.javabuilder.MWArray;
  6. import Detection.SpikesDetection;
  7. import com.FileUtils.*;
  8. import java.util.List;
  9. /* 输入输出数据与MWNumericArray参考: https://blog.csdn.net/cuiguanjun/article/details/52839986 https://blog.csdn.net/qq_22771739/article/details/81502230 */
  10. public class Demo {
  11. public static void main(String[] args) throws MWException {
  12. SpikesDetection sd = new SpikesDetection();
  13. List<String> strings = FileUtils.readFileContent("E:\\matlab_prj\\maoci.csv");
  14. int n = 512;
  15. //1xn数组,n必须为2的N次方
  16. double [][] array =new double[1][n]; //
  17. for(int i=0; i< n; i++){
  18. array[0][i] = Double.parseDouble(strings.get(i));
  19. }
  20. MWNumericArray inputWave = new MWNumericArray(array, MWClassID.DOUBLE);
  21. //第一个数表示输出多少个矩阵,1表示输出一个矩阵
  22. // 后面的不定参数表示输入的矩阵,第一个参数表示输入的数据数组,里面数量必须为2的N次方,第二个参数表示阈值,第三个参数表示是否打印图像
  23. Object[] objects2 = sd.spikesDetection(1, inputWave, 0.5, 1);
  24. MWNumericArray output2 = (MWNumericArray)objects2[0];
  25. int[] intData2 = output2.getIntData();
  26. for(int i=0 ;i< intData2.length; i++){
  27. //输出如果下标为1,则该位置为毛刺
  28. System.out.println(intData2[i]);
  29. }
  30. //释放本地资源
  31. //MWArray.disposeArray(output);
  32. //MWArray.disposeArray(objects);
  33. //sd.dispose();
  34. }
  35. }

发表评论

表情:
评论列表 (有 0 条评论,273人围观)

还没有评论,来说两句吧...

相关阅读