неділя, 9 травня 2021 р.

Структурні елементи для морфологічної обробки

Mathedemo
Морфологічні методи обробки бінарного зображення є набором математично визначених нелінійних операцій результат яких залежить не стільки від значень пікселів, а більше від геометричної форми об'єктів на зображенні. Форма зображення послідовно зондується іншим невеликим еталонним зображенням, яке називається структурним елементом:
Жирна точка позначає центр структурного елемента.

Стандартні структурні елементи в OpenCV --- хрест, прямокутник, еліпс:

cross = cv2.getStructuringElement(cv2.MORPH_CROSS,(5,5)) 
rect=cv2.getStructuringElement(cv2.MORPH_RECT,(5,5))
rect=cv2.getStructuringElement(cv2.MORPH_RECT,(1,3))
rect=cv2.getStructuringElement(cv2.MORPH_RECT,(5,1))
elips=cv2.getStructuringElement(cv2.MORPH_ELLIPSE,(5,5)) 
Також структурні елементи довільної форми можна конструювати самому як numpy-масиви:
rect=np.ones((5,5),np.uint8)
rect
array([[1, 1, 1, 1, 1],
       [1, 1, 1, 1, 1],
       [1, 1, 1, 1, 1],
       [1, 1, 1, 1, 1],
       [1, 1, 1, 1, 1]], dtype=uint8)
st_el = np.array([[1, 1, 0, 1], [1, 0, 0, 1], [1, 1,0, 1]], dtype=np.uint8)
st_el
array([[1, 1, 0, 1],
       [1, 0, 0, 1],
       [1, 1, 0, 1]], dtype=uint8)

Немає коментарів:

Дописати коментар