一.形態學操作:
(1).開操作(open):先腐蝕後膨脹,可以去掉小的物件。
(2).閉操作(close):先腐蝕後膨脹,可以填充小的洞(fill hole)
(3).形態學梯度(morphological gradient):膨脹減去腐蝕,又稱為基本梯度(其它還包括-內部梯度、方向梯度)
(4).頂帽 (top hat):頂帽 是原影象與開操作之間的差值影象
(5).黑帽:黑帽是閉操作影象與源影象的差值影象
二.實現**
#include #include #include using namespace cv;
int main(int argc, char** argv)
namedwindow("input image", cv_window_autosize);
imshow("input image", src);
mat kernel = getstructuringelement(morph_rect, size(11, 11), point(-1, -1));
//開運算,第乙個引數是輸入影象,第二個影象是輸出影象,第三個引數形態學型別,第四個引數是j結構元素
morphologyex(src, dst, cv_mop_open, kernel);
namedwindow("open", cv_window_autosize);
imshow("open", dst);
//形態學操作
morphologyex(src, dst, cv_mop_gradient, kernel);
namedwindow("gradient", cv_window_autosize);
imshow("gradient", dst);
//閉運算
morphologyex(src, dst, cv_mop_close, kernel);
namedwindow("close", cv_window_autosize);
imshow("close", dst);
//禮帽
morphologyex(src, dst, cv_mop_tophat, kernel);
namedwindow("tophat", cv_window_autosize);
imshow("tophat", dst);
//黑帽
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 原影象與開操作之間的差值影象。黑帽 閉操作影象和原影象之間的差值影象。提取直線 提取步驟 輸入彩色影象 轉化為灰度影象 轉化為二值影...