Сначала я не опубликовал это как ответ, потому что я не думаю, что он завершен, но, как вы просили код в комментариях, вот он.
import cv2
import numpy as np
img = cv2.imread("room.png", 0)
cv2.imshow("original", img)
kernel = np.ones((4,4),np.uint8)
dilation = cv2.dilate(img,kernel,iterations = 1)
cv2.imshow("dilated", dilation)
ret, thresh = cv2.threshold(dilation, 150, 255, cv2.THRESH_BINARY)
cv2.imshow("thresholded", thresh)
Это просто базовыйрасширение и использование факта, что разбавленные тонкие черные линии станут серыми, так что я могу применить порог.
Результат:
Конечно, вы можете игратьнемного по параметрам, чтобы получить лучшие результаты, но вы не получите ожидаемый результат таким образом.