Fix for spurious assert when comparing multi-channel histograms

When comparing histograms that look like multi-channel images (e.g a 3D histogram, of 4x4x4 bins, might appear as a CV_32FC4 matrix), cv::compareHist would complain because it was expecting the matrix type() == CV_32F. Now we test for matrix depth() == CV_32F instead.

This appeared to be a particular problem when using the Python API - presumably a 3D `i x j x k` element `numpy.ndarray` was getting automagically converted to a 2D `i x j` image with `k` channels.