У меня есть изображения персонажей, такие как:
После получения contours
и convexHull
результат будет таким:
Для этого я использовал следующий код:
import cv2
img = cv2.imread('input.png', -1)
ret, threshed_img = cv2.threshold(cv2.cvtColor(img, cv2.COLOR_BGR2GRAY),
127, 255, cv2.THRESH_BINARY)
image, contours, hier = cv2.findContours(threshed_img, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_NONE)
for cnt in contours:
# get convex hull
hull = cv2.convexHull(cnt)
cv2.drawContours(img, [hull], -1, (0, 0, 255), 1)
cv2.imwrite("output.png", img)
Как видно на следующем рисунке , определены контуры, которые выровнены по вертикали с исходным символом.Но те разделены с оригинальным основным персонажем.(На самом деле это модификаторы языка, называемого синхала - සිංහල)
Теперь я хочу объединить эти вертикально выровненные контуры с основным персонажем.В конечном итоге вывод должен быть следующим.Как я могу сделать это эффективно?