Всякий раз, когда вы выполняете обработку изображений с помощью OpenCV, вы хотите, чтобы нужные объекты обрабатывались белым цветом, а фон - черным. В этом случае, поскольку вы хотите изменить линии, сначала необходимо инвертировать изображение, чтобы линии были белым, а фон - черным. Отсюда мы можем построить горизонтальное ядро и выполнить морфологическое закрытие, чтобы соединить линии вместе. Точно так же, если вы хотите закрыть пробелы между вертикальными линиями, вы можете выполнить те же шаги с вертикальным ядром.
Результат
Код
import cv2
image = 255 - cv2.imread('1.png', 0)
kernel = cv2.getStructuringElement(cv2.MORPH_RECT, (60,1))
result = 255 - cv2.morphologyEx(image, cv2.MORPH_CLOSE, kernel, iterations=1)
cv2.imshow('result', result)
cv2.waitKey()