形態學操作:根據影象形狀進行的簡單操作。
原理:卷積核沿著影象滑動,如果與卷積核對應的原影象的所有畫素值都是 1,那麼中心元素就保持原來的畫素值,否則就變為零。
效果:前景物體會變小,整幅影象的白色區域會減少。
用途:去除白雜訊;斷開兩個連在一塊的物體等。
cv2.erode(src, kernel[, dst[, anchor[, iterations[, bordertype[, bordervalue]]]]]) -> dst
import numpy as np
import cv2
img = cv2.imread('2.png', 0)
kernel = np.ones((5,5), np.uint8)
erosion = cv2.erode(img, kernel, iterations=1) #腐蝕
原理:與腐蝕相反,與卷積核對應的原影象的畫素值中只要有乙個是 1,中心元素的畫素值就是 1。
效果:增加影象中的白色區域(前景)。
用途:可以用來連線兩個分開的物體。
cv2.dilate(src, kernel[, dst[, anchor[, iterations[, bordertype[, bordervalue]]]]]) -> dst
import numpy as np
import cv2
img = cv2.imread('2.png', 0)
kernel = np.ones((5,5), np.uint8)
dilate = cv2.dilate(img, kernel, iterations=1) #膨脹
開運算:先腐蝕再膨脹。被用來去除雜訊。
先膨脹再腐蝕。它經常被用來填充前景物體中的小洞,或者前景物體上的
小黑點。
其實就是一幅影象膨脹與腐蝕的差別。看上去就像前景物體的輪廓。
OpenCV學習筆記 形態學
opencv提供了通用的形態學函式cvmorphologyex,該函式能夠實現開運算,閉運算,形態梯度,禮帽操作,黑帽操作,例題如下 include stdafx.h include cv.h include highgui.h include highgui.h int main int argc...
opencv學習 形態學
void cvdilate const cvarr src,cvarr dst,iplconvkernel element null,int iterations 1 void cverode const cvarr src,cvarr dst,iplconvkernel element null,...
OPenCV學習11 形態學
在opencv sources samples下面提供了很多的官方例程,是學習opencv的最好的資源。開運算 閉運算 形態學梯度 膨脹減去腐蝕 頂帽 top hat 原影象與開操作之間的差值影象。黑帽 閉操作影象和原影象之間的差值影象。提取直線 提取步驟 輸入彩色影象 轉化為灰度影象 轉化為二值影...