我使用下面的包从Matlab https://github.com/NicholasMcCarthy/wekalab中调用Weka函数。
我的代码是
close all; clear all; clc;
dbstop if error
%%
javaclasspath('C:\Program Files (x86)\Weka-3-8\weka.jar');
javaaddpath('C:\Users\PC\wekafiles\packages\imageFilters\imageFilters.jar');
%%
import weka.filters.*
import weka.filters.Filter.*
import weka.filters.unsupervised.instance.imagefilter.*
import weka.filters.unsupervised.instance.imagefilter.BinaryPatternsPyramidFilter.*
import weka.classifiers.Classifier.*
import weka.classifiers.functions.SMO.*
import weka.classifiers.Evaluation.*
import weka.core.Attribute.*
import weka.core.FastVector.*
import weka.core.Instances.*
import weka.core.DenseInstance.*
import weka.classifiers.Classifier.*
import weka.classifiers.Evaluation.*
import weka.core.converters.ArffLoader.*
import weka.filters.unsupervised.instance.imagefilter.*
import weka.core.converters.ConverterUtils.*;
D = wekaLoadData('E:\pro\program\selectedPics\character\test.arff', 'ARFF');
myFilter = wekaFilter('weka.filters.unsupervised.instance.imagefilter.BinaryPatternsPyramidFilter');
filteredData = wekaApplyFilter(D, myFilter);当我使用weka的默认过滤器时,
myFilter = wekaFilter('weka.filters.unsupervised.attribute.Standardize');它工作得很好,但是当我使用weka (imageFilters)的安装包时,它给我这个错误
Error using javaObjectJava类路径上不能有类weka.filters.unsupervised.instance.imagefilter.BinaryPatternsPyramidFilter
镜像过滤器(包)路径:C:\Users\PC\wekafiles\packages\ filter
weka路径: C:\Program Files (x86)\Weka-3-8
环境变量及其路径:
类空间
x86:\Program Files (x86)\Weka-3-8\weka.jar;C:\Program Files(x86)\Weka-3-8\imageFilters\imageFilters.jar;C:\Users\PC\wekafiles\packages\imageFilters\src\main\java;C:\Users\PC\wekafiles\packages\imageFilters\src\main\java\filters\unsupervised\instance\imagefilter;C:\Users\PC\wekafiles\packages\imageFilters\src\main\java\filters\unsupervised\instance;
java
C:\Program Files\Java\jre1.8.0_181\bin;
路径
C:\Program Files\Java\jdk1.8.0_181\bin;
PATH_HOME
C:\Program Files\Java\jdk1.8.0_181;
发布于 2018-10-11 04:55:20
您可以使用weka.Run来使用weka (weka.Run details)中的其他包
在终端上:
在使用它之前,您可能需要将weka.jar文件添加到CLASSPATH中:
export CLASSPATH=path_to_weka.jar例如,使用此命令的一种方法:
java weka.Run weka.filters.unsupervised.instance.imagefilter.BinaryPatternsPyramidFilter -D "directory were files to filter are located" -i "input arff" -o "output arff"欲了解更多信息,请访问:Weka official documenation
在我的例子中,我使用了Weka 3-7-8的手册。上面提到的信息在第26页的“运行安装的学习算法”下。这可能会因版本不同而不同。
下面列出了您可能需要的所有手册:Weka manuals for every version
关于在Java上使用它,我没有关于它的信息。我之所以想回答这个问题,是因为可能会有人需要命令行Weka的帮助。
https://stackoverflow.com/questions/51618275
复制相似问题