上海网站推广优化,购物网站建设技术难点,小型购物网站模板,网站设计三把火形态学操作包含以下操作#xff1a;
腐蚀 (Erosion)膨胀 (Dilation)开运算 (Opening)闭运算 (Closing)形态梯度 (Morphological Gradient)顶帽 (Top Hat)黑帽(Black Hat)
其中腐蚀和膨胀操作是最基本的操作#xff0c;其他操作由这两个操作变换而来。
腐蚀 用一个结构元素…形态学操作包含以下操作
腐蚀 (Erosion)膨胀 (Dilation)开运算 (Opening)闭运算 (Closing)形态梯度 (Morphological Gradient)顶帽 (Top Hat)黑帽(Black Hat)
其中腐蚀和膨胀操作是最基本的操作其他操作由这两个操作变换而来。
腐蚀 用一个结构元素扫描图像中每一个像素结构元素中的每一个像素与其覆盖像素与操作都为1则该像素为1否则为0腐蚀的作用是消除物体边界点消除小于结构元素的噪声点。
void erode( 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结构元素一般使用Ma来确定结构元素
anchor:结构元素的描点
iterations:操作次数
borderType:边界类型
borderValue:边界值当borderTypeBORDER_CONSTANT时有效
实例 Mat kernal Mat::ones(3,3,CV_8UC1);kernal.atuchar(0,1) 0;kernal.atuchar(1,1) 0;kernal.atuchar(2,1) 0;cv::erode(_src,_src,kernal,Point(-1,-1),3); 原始图像 腐蚀图像
膨胀
void dilate( InputArray src, OutputArray dst, InputArray kernel,Point anchor Point(-1,-1), int iterations 1,int borderType BORDER_CONSTANT,const Scalar borderValue morphologyDefaultBorderValue() );
参数意义与腐蚀完全相同
实例 Mat kernal Mat::ones(3,3,CV_8UC1);kernal.atuchar(1,0) 0;kernal.atuchar(1,1) 0;kernal.atuchar(1,2) 0;cv::dilate(_src,_src,kernal,Point(-1,-1),3); 膨胀图像
开运算 开运算是先腐蚀后膨胀作用是分离物体消除小区域消除噪点而不影响原来图像 morphologyEx( InputArray src, OutputArray dst,int op, InputArray kernel,Point anchor Point(-1,-1), int iterations 1,int borderType BORDER_CONSTANT,const Scalar borderValue morphologyDefaultBorderValue() );
其中op设置为MORPH_OPEN
实例
Mat kernal Mat::ones(3,3,CV_8UC1);
cv::morphologyEx(src,src,MORPH_OPEN,kernal,Point(-1,-1),2);
原图 开运算后的图像 闭运算
闭运算是先膨胀后腐蚀作用是消除闭合物体里面的孔洞可以填充闭合区域。
morphologyEx( InputArray src, OutputArray dst,int op, InputArray kernel,Point anchor Point(-1,-1), int iterations 1,int borderType BORDER_CONSTANT,const Scalar borderValue morphologyDefaultBorderValue() );
其中op设置为MORPH_CLOSE
形态梯度 膨胀图与腐蚀图之差能够保留物体的边缘轮廓。 cv.morphologyEx(img,cv.MORPH_TOPHAT)
礼帽运算 原图像与开运算的结果差开运算放大了裂缝或者局部低亮度的区域因此从原图中减去开运算后的图,得到的效果图突出了比原图轮廓周围的区域更明亮的区域操作和选择的核的大小相关。礼帽运算用来分离比邻近点亮一些的斑块。 当一幅图像具有大幅的背景的时候而微小物品比较有规律的情况下可以使用顶帽运算进行背景提取。 cv.morphologyEx(img,cv.MORPH_TOPHAT)
黑帽运算 闭运算的结果图与原图像之差闭运算填充了裂缝或者扩大局部高亮度的区域因此从结果图中减去原图后,得到的效果图突出了比原图区域更暗的区域且这一操作和选择的核的大小相关黑帽运算用来分离比邻近点暗一些的斑块。 cv.morphologyEx(img,cv.MORPH_BLACKHAT)