2017-01-11 2 views
-3

я цвета сегментация моего образом с помощью Java OpenCV и порогов изображения может быть показана как изображение 1:Как рассчитать количество фигур, обнаруженных после пороговой

enter image description here

Я хочу, чтобы вычислить количество белое пятно в пороговом изображении. Я работал над функцией findcontour() и пытался получить счет белого пятна. Однако мне это не удалось. Пожалуйста, помогите мне. Мой код здесь.

Imgproc.findContours(destination, contours, hierarchy, 
     Imgproc.RETR_EXTERNAL,Imgproc.CHAIN_APPROX_SIMPLE); 
for(int j=0;j<contours.size();j++){ 
    sum=sum+contours.size(); 
} 
System.out.println("Sum"+sum); 
+0

Пожалуйста, помогите мне в ближайшее время ... –

+0

Можете ли вы загрузить изображение, с которым работаете? –

+0

Что вы имеете в виду: «Я был не в порядке»? каков был результат? и почему ваше входное изображение называется «destination» – Piglet

ответ

0

ответ Jeru является правильным для этого случая. Если у Вас есть случай с большим шумом, где morpholigocal операции не будут принимать их, вы можете сделать отсечку с размером контура, что-то вроде

for contour in contours 
    if cv2.contourArea(contour) > minimal_length 

перед подсчетом

+0

Большое спасибо за инструкцию: D –

0

Я применил морфологический Открытие операции.

Используя этот код: opening = cv2.morphologyEx(mask, cv2.MORPH_OPEN, kernel)

kernel является 5x5 массив 1-х.

Я получил это:

enter image description here

+0

Надеюсь, вы нашли аналогичную функцию на Java.) –

+0

Могу ли я узнать способ получения количества точек ... в качестве примера для этого количества точек = 1 –

+0

Да, я могу найти аналогичную функцию в java и поблагодарить очень много ... Однако могу ли я знать способ получения количества точек? в качестве примера для этого, число точек равно 1 –

Смежные вопросы