@Override public DoubleFV getFeatureVector(ColourDescriptor desc) { return new DoubleFV(desc.colmodel.mean); } },
@Override public DoubleFV getFeatureVector(BasicShapeDescriptor desc) { return new DoubleFV(new double[] { desc.area }); } },
@Override public DoubleFV extractFeature(double[] object) { return new DoubleFV(object); } }, LiblinearAnnotator.Mode.MULTICLASS,
@Override public DoubleFV getFeatureVector() { return new DoubleFV(new double[] { simplicity }); } }
@Override public DoubleFV getFeatureVector(BasicShapeDescriptor desc) { return new DoubleFV(new double[] { desc.cornerEst }); } };
@Override public DoubleFV getFeatureVector() { return new DoubleFV(getFeatureVectorArray()); } }
@Override public DoubleFV newInstance() { return new DoubleFV(length()); } }
@Override public DoubleFV normaliseFV(double min, double max) { double [] dvals = asDoubleVector(); for (int i=0; i<dvals.length; i++) { dvals[i] -= min; dvals[i] /= (max-min); if (dvals[i]<0) dvals[i] = 0; if (dvals[i]>1) dvals[i] = 1; } return new DoubleFV(dvals); }
@Override public DoubleFV getFeatureVector() { return new DoubleFV(getFeatureVectorArray()); } }
@Override public DoubleFV normaliseFV(double [] min, double [] max) { double [] dvals = asDoubleVector(); for (int i=0; i<dvals.length; i++) { dvals[i] -= min[i]; dvals[i] /= (max[i]-min[i]); if (dvals[i]<0) dvals[i] = 0; if (dvals[i]>1) dvals[i] = 1; } return new DoubleFV(dvals); }
@Override public DoubleFV getFeatureVector() { return new DoubleFV(getFeatureVectorArray()); } }
@Override public DoubleFV normaliseFV(double [] min, double [] max) { double [] dvals = asDoubleVector(); for (int i=0; i<dvals.length; i++) { dvals[i] -= min[i]; dvals[i] /= (max[i]-min[i]); if (dvals[i]<0) dvals[i] = 0; if (dvals[i]>1) dvals[i] = 1; } return new DoubleFV(dvals); }
/** * Convert the FV to a DoubleFV representation * @return the DoubleFV representation */ @Override public DoubleFV asDoubleFV() { return new DoubleFV(asDoubleVector()); }
@Override public DoubleFV normaliseFV(double [] min, double [] max) { double [] dvals = asDoubleVector(); for (int i=0; i<dvals.length; i++) { dvals[i] -= min[i]; dvals[i] /= (max[i]-min[i]); if (dvals[i]<0) dvals[i] = 0; if (dvals[i]>1) dvals[i] = 1; } return new DoubleFV(dvals); }
@Override public DoubleFV normaliseFV(double [] min, double [] max) { double [] dvals = asDoubleVector(); for (int i=0; i<dvals.length; i++) { dvals[i] -= min[i]; dvals[i] /= (max[i]-min[i]); if (dvals[i]<0) dvals[i] = 0; if (dvals[i]>1) dvals[i] = 1; } return new DoubleFV(dvals); }
@Override public DoubleFV normaliseFV(double min, double max) { double [] dvals = asDoubleVector(); for (int i=0; i<dvals.length; i++) { dvals[i] -= min; dvals[i] /= (max-min); if (dvals[i]<0) dvals[i] = 0; if (dvals[i]>1) dvals[i] = 1; } return new DoubleFV(dvals); }
@Override public DoubleFV getFeatureVector() { return new DoubleFV(new double[] { getNaturalness() }); } }
@Override public DoubleFV extractFeature( final SampleChunk object ) { final double[] d = this.mfcc.calculateMFCC( object.getSampleBuffer() )[0]; return new DoubleFV(d); } }
@Override public <T extends Image<?, T>> FeatureVector getFeatureVector(List<? extends DetectedFace> faces, T img) { final double[] fv = new double[faces.size()]; final double area = img.getWidth() * img.getHeight(); int i = 0; for (final DetectedFace df : faces) { fv[i++] = getConnectedComponent(df).calculateArea() / area; } return new DoubleFV(fv); } };