Как распознать гистограммы с определенной формой в opencv / python

Я хочу сегментировать изображения (из журналов) в части текста и изображения. У меня есть несколько гистограмм для нескольких областей интереса на моей картинке. Я использую OpenCV с Python (CV2).

Я хочу распознать гистограммы, которые выглядят так

http://matplotlib.sourceforge.net/users/image_tutorial-6.png

как это типичная форма для текстовой области. Как я могу это сделать?

Изменить: Спасибо за вашу помощь до сих пор.

Я сравнил гистограммы, которые я получил от своих областей интереса, с образцом гистограммы, которую я предоставил:

hist = cv2.calcHist(roi,[0,1], None, [180,256],ranges)
compareValue = cv2.compareHist(hist, samplehist, cv.CV_COMP_CORREL)
print "ROI: {0}, compareValue: {1}".format(i,compareValue)

Предполагая, что ROI 0, 1, 4 и 5 являются текстовыми областями, а ROI является областью изображения, я получаю вывод примерно так:

ROI: 0, compareValue: 1.0 ROI: 1, compareValue: -0.000195522081574 <--- wrong classified ROI: 2, compareValue: 0.0612670248952 ROI: 3, compareValue: -0.000517370176887 ROI: 4, compareValue: 1.0 ROI: 5, compareValue: 1.0

Что я могу сделать, чтобы избежать неправильной классификации? Для некоторых изображений уровень ошибочной классификации составляет около 30%, что слишком много.

(Я пытался также с CV_COMP_CHISQR, CV_COMP_INTERSECT, CV_COMP_BHATTACHARYY и (hist * samplehist) .sum (), но они также предоставляют неправильные значения сравнения)

Ответы на вопрос(2)

Ваш ответ на вопрос