Как удалить короткую и отсоединенную линию, но сохранить все остальные связанные строки на следующем изображении?OpenCV - Удаление независимой короткой строки на изображении
ответ
Если изображение всегда это хорошо связан, вы можете выбрать компоненты, основываясь на их размере. Мой код в Python (может быть более простым способом, но это, как я это делаю):
#get all connected components in the image with their stats (including their size, in pixel)
nb_edges, output, stats, _ = cv2.connectedComponentsWithStats(img, connectivity=8)
#output is an image where every component has a different value
size=stats[1:,-1] #extracting the size from the statistics
#selecting bigger components
for e in range(0,nb_edges-1):
#replace this line depending on your application, here I chose to keep
#all components above the mean size of components in the image
if size[e]>=np.mean(size):
th_up = e + 2
th_do = th_up
#masking to keep only the components which meet the condition
mask = cv2.inRange(output, th_do, th_up)
result = cv2.bitwise_xor(original_img, mask)
Спасибо! Но не могли бы вы изменить его на C++. У Python есть некоторая ошибка с opencv3. И я также не знаком с Python. Извините –
Подключенные компоненты - лучший способ пойти. @BryanYU PLS не ожидают, что люди напишут явный код для вас. Существует достаточно документации для преобразования Python в C++ и наоборот –
Благодарим вас за предложение. –
- 1. OpenCV - Удаление шума в изображении
- 2. OpenCV: Рисование на изображении
- 3. Рисование прямоугольника на изображении opencv?
- 4. Номера печати на изображении OpenCV
- 5. Рейтинг Opencv в изображении
- 6. OpenCV - Удаление шума в изображении с помощью Java
- 7. удаление шума в двоичном изображении с использованием openCV
- 8. Независимая линия бегущей строки на независимой резьбе
- 9. Обнаружение документа на отсканированном изображении OpenCV
- 10. Использование openCV для реализации SIFT на изображении
- 11. Печать текста на изображении в OpenCV Python
- 12. Получение значений HSV пикселей на изображении OpenCV
- 13. Как нарисовать линию на изображении в OpenCV?
- 14. Рисование линии на белом изображении в OpenCV
- 15. Рисование одного контура в OpenCV на изображении
- 16. opencv: как рисовать стрелки на ориентировочном изображении
- 17. OpenCV, чтобы найти определенные координаты на изображении
- 18. Обнаружение капли на изображении с помощью OpenCV
- 19. Удаление пограничных линий в OpenCV и C++
- 20. Кастинг короткой строки из файла
- 21. PHP: Шифрование/Расшифровка короткой строки
- 22. OpenCV - удалить небольшие, нежелательные точки/шум на изображении
- 23. OpenCv, получить информацию об изображении
- 24. Рисование контрастной строки на изображении
- 25. Удаление шума из изображения с использованием OpenCV
- 26. Как различать две строки на изображении
- 27. Нарисуйте те же линии на холсте Tkinter на изображении OpenCV
- 28. OpenCV и JavaCv на Android - определить форму на изображении
- 29. Обнаружение текстуры на изображении
- 30. Удаление снеговика в цифровом изображении
Как об использовании морфологических операций искать переходы, а затем отбрасывая строки, которые не имеют перекрестков? –