當前位置:
首頁 >
OPENCV入门教程十一:dilate图像膨胀
發(fā)布時間:2024/3/13
31
豆豆
生活随笔
收集整理的這篇文章主要介紹了
OPENCV入门教程十一:dilate图像膨胀
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、目標
學習如何使用opencv中的函數,學習對圖像的膨脹操作,學習dilate()函數的使用
二、函數說明
函數原型:
dilate(InputArray src,OutputArray dst,InputArray kernel,Point anchor=Point(-1,-1),int iterations=1,int borderType=BORDER_CONSTANT,const Scalar& borderValue=morphologyDefaultBorderValue() );參數詳解:
src:源圖像
dst:目標圖像。
kernel:膨脹操作的核。若為NULL時,表示的是使用參考點位于中心3x3的核。
我們一般使用函數 getStructuringElement配合這個參數的使用。getStructuringElement函數會返回指定形狀和尺寸的結構元素(內核矩陣)。
anchor:錨的位置,其有默認值(-1,-1),表示錨位于中心。
iterations:迭代使用erode()函數的次數,默認值為1。
borderType:用于推斷圖像外部像素的某種邊界模式。
borderValue:當邊界為常數時的邊界值
使用erode函數,一般我們只需要填前面的三個參數,后面的四個參數都有默認值。而且往往結合getStructuringElement一起使用。
三、程序代碼
#include "cv.h" // OpenCV 文件頭 #include "highgui.h" #include "opencv2/opencv.hpp" #include "opencv2/imgproc.hpp" #include <iostream> #include <string>using namespace cv; using namespace std;int main(int argc, char *argv[]) {Mat m_SrcImg;m_SrcImg = imread("C:\\Users\\lidabao\\Desktop\\Lena.bmp");namedWindow("原圖像", 1);imshow("原圖像", m_SrcImg);//獲取自定義核Mat element = getStructuringElement(MORPH_RECT, Size(10, 10));Mat m_ResImg;//進行膨脹操作dilate(m_SrcImg, m_ResImg, element);namedWindow("膨脹后圖像", 1);imshow("膨脹后圖像", m_ResImg);waitKey(0); }四、結果
程序運行如下圖:
五、注意
正確的配置opencv
正確使用dilate()函數
總結
以上是生活随笔為你收集整理的OPENCV入门教程十一:dilate图像膨胀的全部內容,希望文章能夠幫你解決所遇到的問題。