A simple case like sklearn's sift + vbow + multilabels, perhaps on mnist? See: https://ianlondon.github.io/blog/how-to-sift-opencv/