关于Opencv编程入门的基础知识点
2016-04-09 22:29
363 查看
Opencv编程入门的基础知识点
1.对于opencv使用的几个库文件的功能说明:
(1).opencv-core模块,包含了程序库的核心功能,特别是基本的数据结构和算法函数
(2).opencv-highgui模块,包含了图像、视频读写函数和部分用户界面的函数
(3).opencv-features2d模块,包含了特征点检测器、描述子以及特征点匹配框架
(4).opencv-video模块,包含运动估计、特征跟踪以及前景提取函数和类
2.在Opencv编程中,waitkey(0);// 0表示永远等待按键;正数表示等待指定的毫秒数
对于程序中保存图片到当前工程目录中:imwrite(“out.bmp”,result); // 保存图像时会根据文件名后缀决定使用哪种编码方式,其他常见的受支持图像格式是JPG、TIFF、PNG。
3.指令:Mat image(240,320,CV-8UC3,Scalar(0,0,255)); 对该指令中的参数进行解释
行:240;列:320 ;8位unsigned char 3通道 ;红色 。 注:对CV-8UC3的解释,首先先理解公式:CV-[位数] [带符号与否] [类型前缀]C[通道数]
这里我们使用CV-8U表示每一个像素对应1字节,用字母U表示无符号;你也可以用字母S表示有符号。对于彩色图像,你应该用三通道类型(CV_8UC3),也可以定义16位和32位的整数(有符号和无符号),例如CV_16SC3。
对于Scalar,则要是是三通道的,则Scalar(A,B,C)要有三个值,分别表示三个通道的像素值;要是只有单通道,则Scalar(A)只要有一个值。
4.对图像进行深度复制的最简单方法是使用clone()方法,例如 Mat image = image1.clone();
1.对于opencv使用的几个库文件的功能说明:
(1).opencv-core模块,包含了程序库的核心功能,特别是基本的数据结构和算法函数
(2).opencv-highgui模块,包含了图像、视频读写函数和部分用户界面的函数
(3).opencv-features2d模块,包含了特征点检测器、描述子以及特征点匹配框架
(4).opencv-video模块,包含运动估计、特征跟踪以及前景提取函数和类
2.在Opencv编程中,waitkey(0);// 0表示永远等待按键;正数表示等待指定的毫秒数
对于程序中保存图片到当前工程目录中:imwrite(“out.bmp”,result); // 保存图像时会根据文件名后缀决定使用哪种编码方式,其他常见的受支持图像格式是JPG、TIFF、PNG。
3.指令:Mat image(240,320,CV-8UC3,Scalar(0,0,255)); 对该指令中的参数进行解释
行:240;列:320 ;8位unsigned char 3通道 ;红色 。 注:对CV-8UC3的解释,首先先理解公式:CV-[位数] [带符号与否] [类型前缀]C[通道数]
这里我们使用CV-8U表示每一个像素对应1字节,用字母U表示无符号;你也可以用字母S表示有符号。对于彩色图像,你应该用三通道类型(CV_8UC3),也可以定义16位和32位的整数(有符号和无符号),例如CV_16SC3。
对于Scalar,则要是是三通道的,则Scalar(A,B,C)要有三个值,分别表示三个通道的像素值;要是只有单通道,则Scalar(A)只要有一个值。
4.对图像进行深度复制的最简单方法是使用clone()方法,例如 Mat image = image1.clone();