Я ищу простой и элегантный способ подсчета белых пикселей в каждом блобе отдельно. Например, у меня есть картина, как это:Как подсчитать белые пиксели в каждом блоке в opencv?
Код:
cv2.findContours(mat.copy(), cv2.RETR_LIST, cv2.CHAIN_APPROX_SIMPLE)
areas = [(lambda c: cv2.moments(c)['m00'])(c) for c in contours]
возвращается [255.0, 482.5, 6480.5, 6230.0, 15531.0, 19810.0], но я хочу иметь только 3 значения, есть 3 отдельных капли.
Вы хотите площадь каждого блоба? Что заставляет вас думать, что есть только три капли? Два или более пикселей вместе считаются blob !! – Arjun
@ Арджун, что? Здесь есть 3 белых пятна. – Miki
@ dragon7 вы предложили решение на основе 'connectedComponentsWithStats'. Если это сработает, можете ли вы дать новый ответ с примером кода и пометить это как ответ? – Miki