Лучший метод порогового изображения, который вернет высокий / низкий порог?
Мне трудно найти адаптивный метод порогового изображения для лабиринтов, который будет возвращать либо высокое, либо низкое значение, чтобы убедиться, что все пути имеют одинаковый цвет.
До сих пор я пробовал фиксированный порог, который явно не работал, и метод Оцу, который возвращает значение около середины, что означало, что некоторые пиксели не были преобразованы должным образом.
Исходное изображение - https://imgur.com/DqaUYfW
метод Оцу - https://imgur.com/a/V5t6rqZ
желаемый вывод - https://imgur.com/a/yvXuAqC
1 ответ
Извините, у меня нет Java, поэтому я просто опробую некоторые методы в Python и могу получить желаемый результат, который вы хотите. Надеюсь, это поможет вам.
import cv2
import numpy as np
image = cv2.imread("1.png")
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
_,thresh = cv2.threshold(gray,100,255,cv2.THRESH_BINARY)
cv2.imshow("thresh",thresh)
blur = cv2.GaussianBlur(gray,(5,5),0)
ret3,otsu = cv2.threshold(blur,0,255,cv2.THRESH_BINARY+cv2.THRESH_OTSU)
cv2.imshow("otsu",otsu)
adaptive_thresh = cv2.adaptiveThreshold(gray, 255, cv2.ADAPTIVE_THRESH_MEAN_C, cv2.THRESH_BINARY, 29, 30)
cv2.imshow("adaptive_thresh",adaptive_thresh)
cv2.imshow("img",image)
cv2.waitKey(0)
cv2.destroyAllWindows()
- Метод отсу
ht tps://stackru.com/images/72f05c976e60000ef13c63a981952f2f8b29b6a3.png
- Фиксированный бинарный порог
ht tps://stackru.com/images/7253f96853e464e11b5f5abf05948eae44042cb3.png
- Адаптивный порог
ht tps://stackru.com/images/4f387a18f91cc7035c6de89bf503d30217e10bc0.png