public static List<double[]> histogramGray( List<File> images ) {
		List<double[]> points = new ArrayList<>();

		GrayU8 gray = new GrayU8(1,1);
		for( File f : images ) {
			BufferedImage buffered = UtilImageIO.loadImage(f.getPath());
			if( buffered == null ) throw new RuntimeException("Can't load image!");

			gray.reshape(buffered.getWidth(), buffered.getHeight());
			ConvertBufferedImage.convertFrom(buffered, gray, true);

			TupleDesc_F64 imageHist = new TupleDesc_F64(150);
			HistogramFeatureOps.histogram(gray, 255, imageHist);

			UtilFeature.normalizeL2(imageHist); // normalize so that image size doesn't matter

			points.add(imageHist.value);
		}

		return points;
	}
public static List < double [ ] > histogramGray ( List < File > images ) { List < double [ ] > points = new ArrayList < > ( ) ; GrayU8 gray = new GrayU8 ( 1 , 1 ) ; for ( File f : images ) { BufferedImage buffered = UtilImageIO . loadImage ( f . getPath ( ) ) ; if ( buffered == null ) throw new RuntimeException ( "Can't load image!" ) ; gray . reshape ( buffered . getWidth ( ) , buffered . getHeight ( ) ) ; ConvertBufferedImage . convertFrom ( buffered , gray , true ) ; TupleDesc_F64 imageHist = new TupleDesc_F64 ( 150 ) ; HistogramFeatureOps . histogram ( gray , 255 , imageHist ) ; UtilFeature . normalizeL2 ( imageHist ) ; points . add ( imageHist . value ) ; } return points ; }
Computes a histogram from the gray scale intensity image alone.  Probably the least effective at looking up
similar images.