/** * @return the colourfulness class from the last image analysed */ public ColorfulnessAttr getColorfulnessAttribute() { return ColorfulnessAttr.getAttr(getColorfulness()); }
/** * Estimate the tone of the image. * * @see ToneAttr#getAttr(double, double) * * @return the estimated tone */ public ToneAttr getTone() { return ToneAttr.getAttr(getMeanHue(), getHueVariance()); }
@Override public FeatureVector extract(MBFImage image, FImage mask) { final AvgBrightness f = new AvgBrightness(AvgBrightness.Mode.NTSC_LUMINANCE, mask); return f.getFeatureVector(); } }
@Override public FeatureVector extract(MBFImage image, FImage mask) { Colorfulness f = new Colorfulness(); if (mask == null) image.analyseWith(f); else image.analyseWithMasked(mask, f); if (classMode) return f.getColorfulnessAttribute().getFeatureVector(); return f.getFeatureVector(); } }
@Override public FeatureVector extract(MBFImage image, FImage mask) { Naturalness f = new Naturalness(mask); image.analyseWith(f); return f.getFeatureVector(); } }
@Override public FeatureVector extract(MBFImage image, FImage mask) { LuoSimplicity cc = new LuoSimplicity(binsPerBand, gamma, alpha, maxKernelSize, kernelSizeStep, nbins, windowSize); image.analyseWith(cc); return cc.getFeatureVector(); } }
@Override public FeatureVector extract(MBFImage image, FImage mask) { ROIProportion cc = new ROIProportion(saliencySigma, segmenterSigma, k, minSize, alpha); image.analyseWith(cc); return cc.getFeatureVector(); } }
@Override public DoubleFV getFeatureVector() { return new DoubleFV(new double[] { getMeanHue(), getHueVariance() }); } }
@Override public FeatureVector extract(MBFImage image, FImage mask) { ColourContrast cc = new ColourContrast(sigma, k, minSize); image.analyseWith(cc); return cc.getFeatureVector(); } }
@Override public Float processGridElement(FImage patch) { patch.analyseWith(bpp); return (float) bpp.getBlurredPixelProportion(); } }
@Override public void analyseImage(MBFImage image) { brightness = mode.computeBrightness(image, mask); }
/** * Get the colourfulness class for a given colourfulness value. * * @param val * the colourfulness value * @return the colourfulness class */ public static ColorfulnessAttr getAttr(double val) { final ColorfulnessAttr[] attrs = values(); for (int i = attrs.length - 1; i >= 0; i--) { if (val >= attrs[i].threshold) return attrs[i]; } return null; }
@Override public FeatureVector extract(MBFImage image, FImage mask) { Colorfulness f = new Colorfulness(); if (mask == null) image.analyseWith(f); else image.analyseWithMasked(mask, f); if (classMode) return f.getColorfulnessAttribute().getFeatureVector(); return f.getFeatureVector(); } }
/** * @return the colourfulness class from the last image analysed */ public ColorfulnessAttr getColorfulnessAttribute() { return ColorfulnessAttr.getAttr(getColorfulness()); }
/** * Estimate the tone of the image. * * @see ToneAttr#getAttr(double, double) * * @return the estimated tone */ public ToneAttr getTone() { return ToneAttr.getAttr(getMeanHue(), getHueVariance()); }
@Override public FeatureVector extract(MBFImage image, FImage mask) { final AvgBrightness f = new AvgBrightness(AvgBrightness.Mode.NTSC_LUMINANCE, mask); return f.getFeatureVector(); } }
@Override public FeatureVector extract(MBFImage image, FImage mask) { LuoSimplicity cc = new LuoSimplicity(binsPerBand, gamma, alpha, maxKernelSize, kernelSizeStep, nbins, windowSize); image.analyseWith(cc); return cc.getFeatureVector(); } }
@Override public FeatureVector extract(MBFImage image, FImage mask) { ROIProportion cc = new ROIProportion(saliencySigma, segmenterSigma, k, minSize, alpha); image.analyseWith(cc); return cc.getFeatureVector(); } }
@Override public void analyseImage(MBFImage image) { brightness = mode.computeBrightness(image, mask); }
/** * Get the colourfulness class for a given colourfulness value. * * @param val * the colourfulness value * @return the colourfulness class */ public static ColorfulnessAttr getAttr(double val) { final ColorfulnessAttr[] attrs = values(); for (int i = attrs.length - 1; i >= 0; i--) { if (val >= attrs[i].threshold) return attrs[i]; } return null; }