人机协同控制模块
视觉算法+运动控制引擎
开发周期缩短40%+

五.模板模块

头文件:msk.h

库文件:msk.lib,msk.dll

模板模块提供ROI(RvRegion)有效像素点的功能。表示在一个数字图象上,哪些像素点参与运算,哪些像素点不参与运算。

5.1常量

模板形状

标记 说明
RV_MT_NONE 无。虽然建立了一定大小的模板,但是,并没有一个有效的标记值
RV_MT_LINE 直线形状
RV_MT_RECT 方形
RV_MT_CIRCLE 圆形
RV_MT_CROSS 十字线
RV_MT_DEFAULT 默认。方形

下面的常量为两模板进行合并的操作方式。

标记 说明
RV_MT_NOT_B 取不是模板 B 的像素点,但是模板 A 标记有效的像素点
RV_MT_NOT_A 取不是模板 A 的像素点,但是模板 B 标记有效的像素点
RV_MT_A_AND_B 取模板 A 和模板 B 都标记的像素点
RV_MT_A_OR_B 取模板 A 或模板 B 都标记的像素点
RV_MT_A_XOR_B 取模板 A 和模板 B 不相同的标记值的像素点
RV_MT_ONLY_B 只取模板 B 的像素点

5.2函数

rvCreateMask

声明:RvMask rvCreateMask(int shape, int width, int height)

描述:创建模板。

参数:1、int shape – 形状,

2、int width – 宽度

3、int height – 高度

返回:模板对象

rvCreateMaskEx

声明:RvMask rvCreateMaskEx( int width, int height, void* pDataSource, size_t size, int pitch );

描述:创建模板,可以从外部传入模板数据。

参数:1、int width – 宽度

2、int height – 高度

3、void* pDataSource – 数据内存区

4、size_t size – 数据大小

5、int pitch – 对齐字节长度

返回:模板对象

rvDestroyMask

声明:void rvDestroyMask(RvMask mask);

描述:创建模板,可以从外部传入模板数据。

参数:RvMask mask –模板对象

返回:

rmkGetWidth

声明:int rmkGetWidth(RvMask mask);

描述:获取宽度。

参数:RvMask mask –模板对象

返回:宽度(单位:像素)

rmkGetHeight

声明:int rmkGetHeight(RvMask mask);

描述:获取模板高度。

参数:RvMask mask –模板对象

返回:高度(单位:像素)

rmkGetPitch

声明:int rmkGetPitch(RvMask mask);

描述:获取模板行对齐宽度。

参数:RvMask mask –模板对象

返回:对齐行长度(单位:字节)

rmkGetMatrix

声明:RvByte* rmkGetMatrix(RvMask mask);

描述:获取模板数据内存指针。

参数:RvMask mask –模板对象

返回:数据内存首地址。

rmkToggle

声明:void rmkToggle(RvMask mask);

描述:将模板标记置反,即1变成0, 0变成1。

参数:RvMask mask –模板对象

返回。

rmkSetZero

声明:void rmkSetZero(RvMask mask);

描述:将模板标记置成0 。

参数:RvMask mask –模板对象

返回:无。

rmkSetOne

声明:void rmkSetOne(RvMask mask);

描述:将模板标记置成1 。

参数:RvMask mask –模板对象

返回:无。

rmkGetReferPos

声明:RvPoint rmkGetReferPos(RvMask mask);

描述:获取参考点位置 。

参数:RvMask mask –模板对象

返回:参考点坐标。

rmkSetReferPos

声明:void rmkSetReferPos(RvMask mask, int x, int y);

void rmkSetReferPos(RvMask mask, RvPoint point);

描述:获取参考点位置 。

参数:1、RvMask mask –模板对象

2、int x – x坐标

3、int y – y坐标

4、RvPoint point – 点坐标

返回: 无。

rmkMergeEx

声明:void rmkMergeEx(RvMask mask1, RvMask mask2, int x0, int y0, int x1, int y1, int opType);

描述:将两个模板合并为一个, 将结果存放在模板1。

参数:1、RvMask mask1 – 模板1

2、RvMask mask2 – 模板2

3、int x0 – 模板1的x 坐标

4、 int y0 – 模板1的y坐标

5、int x1 – 模板2的x 坐标

6、int y1 – 模板2 的y坐标

7、nt opType – 合并方式

返回: 无。

rmkMerge

声明:void rmkMerge(RvMask mask1, RvMask mask2, int opType);

描述:将两个模板合并为一个,将结果存放在模板1。

参数:1、RvMask mask1 – 模板1

2、RvMask mask2 – 模板2

3、int opType – 合并方式

返回: 无。



QQ技术交流群:
微信技术交流群:
Marklab工作室
研发中心: 广东省东莞市大岭山镇元岭小区翠云街1巷16号
商务中心: 广东省东莞市松湖智谷B6栋225b

二维码1 二维码2 二维码3


Marklab工作室 版权所有  粤ICP备13082990号-2   友情链接 hao123 绿盟 搜狗 站长之家 太平洋下载 天极下载 淘宝店 软云动力

赞助和协作单位 广东省科学院自动化研究所 深圳市东百胜技术有限公司

统计显示 ▼