Assuming your image is of type double (i.e: intensity range is 0-1), then:
bins = linspace(0, 1, 16);
bincoords = discretize(rgbimage, bins);
bincoords(row, col, :) is a 3 element vector giving you the location of pixel(row, col) into that 16x16x16 histogram cube. If you want to change that into linear indices:
bincoordslinear = sub2ind([16 16 16], bincoords(:, :, 1), bincoords(:, :, 2), bincoords(:, :, 3));
Best Answer