OpenCV函数详解--------陆续更新....................
来源:互联网 发布:windows预览体验计划吧 编辑:程序博客网 时间:2024/04/30 03:06
交流:
QQ:345440305
Email:zhongstellar@gmail.com
cvCreateStructuringElementEx
创建结构元素 IplConvKernel* cvCreateStructuringElementEx( int cols, int rows, int anchor_x, int anchor_y, int shape, int* values=NULL );
cols:结构元素的列数目 rows:结构元素的行数目 anchor_x:锚点的相对水平偏移量 anchor_y:锚点的相对垂直偏移量 shape:结构元素的形状,可以是下列值:
CV_SHAPE_RECT, 长方形元素;
CV_SHAPE_CROSS, 交错元素 a cross-shaped element;
CV_SHAPE_ELLIPSE, 椭圆元素;
CV_SHAPE_CUSTOM, 用户自定义元素。这种情况下参数 values 定义了 mask,即象素的那个邻域必须考虑。
values:指向结构元素的指针,它是一个平面数组,表示对元素矩阵逐行扫描。(非零点表示该点属于结构元)。如果指针为空,则表示平面数组中的所有元素都是非零的,即结构元是一个长方形(该参数仅仅当shape参数是 CV_SHAPE_CUSTOM 时才予以考虑)。
函数 cv CreateStructuringElementEx 分配和填充结构 IplConvKernel, 它可作为形态操作中的结构元素。举个例子比较好说清楚
比如一个图
00000
01110
00000
用一个cvCreateStructuringElementEx( 3,1,0 0,CV_SHAPE_RECT)的元素来腐蚀,则结果为
00000
01000
00000
而用一个cvCreateStructuringElementEx( 3,1,1 0,CV_SHAPE_RECT)的元素来腐蚀,则结果为
00000
00100
00000
理解:cvCreateStructuringElementEx( 3,1,0 0,CV_SHAPE_RECT)中的3,1表示要腐蚀的对象是一个3列1行的矩阵,如果该矩阵里元素全为非零,则将其转化为同样大小只包含一个非零元素,而该非零元素的位置是(0,0)。同理cvCreateStructuringElementEx( 3,1,1 0,CV_SHAPE_RECT)中的3,1表示要腐蚀的对象是一个3列1行的矩阵,如果该矩阵里元素全为非零,则将其转化为同样大小只包含一个非零元素,而该非零元素的位置是(1,0)
假如用下面这个去腐蚀图像,中心是在右下角1 0 01 1 01 1 1 那么应该怎么表示呢?
理论上应该是int mask[9] = {1, 0, 0, 1, 1, 0, 1, 1, 1}; IplConvKernel* strel = cvCreateStructuringElementEx( 3, 3, 0, 2, CV_SHAPE_CUSTOM, mask );其中0,2可按自己要求设置。
- OpenCV函数详解--------陆续更新....................
- 面试(陆续更新)
- Java 相关[陆续更新]
- 好书不断(陆续更新)
- CSS 兼容性(陆续更新)
- 白名单 -- 会陆续更新
- RFID项目总结(陆续更新)
- PHP注意事项(陆续更新)
- 前端资源(陆续更新)
- Android_Service 笔记(陆续更新)
- JEECG v3视频陆续更新
- freeswitch常用命令 陆续更新中
- 华为机试题【陆续更新】
- 面试题(陆续更新)
- docker基础(陆续更新)
- opencv--groupRectangles函数详解
- opencv houghlinesp函数详解
- Opencv函数用法详解
- 荆棘鸟
- Linux常用命令
- 交换两个整数的值 Java_Note
- hdu2021发工资喽
- VI常用命令
- OpenCV函数详解--------陆续更新....................
- Android内存泄漏简介
- ZooKeeper典型使用场景总结
- c语言课程设计—学生成绩管理系统
- UITextField详解
- 15岁男孩杰克安德拉卡发明测癌试纸 彻底改变胰腺癌检测治疗进程
- c++学习步骤(记录)
- ios:设置视图背景图片的方法
- 如何学习arm linux