- 13
- 0
- 约1.04万字
- 约 9页
- 2017-08-10 发布于河北
- 举报
opencv笔记.pdf
Opencv 中 open 为openSource,CV为computerVision计算机视觉
Opencv特征:
1. 开源计算机视觉库采用C/C++编写
2. 目的是开发实时应用程序
3. 独立于操作系统、硬件和图形管理器
4. 具有通用的图像、视频载入,保存和获取模块
5. 具有底层和高层的应用开发包
Opencv 目标:为解决计算机视觉问题提供基本工具
基本组成:高层函数、基本函数
Opencv模块 (主要)
1、CV 主要的OpenCV 函数:图像处理与视觉算法
2、ML 机器学习、模式分类和回归分析,统计分离器
3、HighGUI 图像视频输入/出
4、CXcore 数据结构与线性代数支持,基本函数
常用的视频处理:
彩色跟踪,点跟踪,动运分割,边缘检测
常用的图像处理:
边缘检测,分割,形态学操作,直方图,距离变换,椭圆拟合
命名规则:
1. 通用矩阵数据类型 :CV_(位数)(S |U |F)C (通道数) 位数也叫作深度
S:带符,U:无符,F:浮点, CV_32FC2 :32位浮点数双通道矩阵
2. 通用图像数据类型:IPL_DEPTH_(位数)(S |U |F)
IPL_DEPTH_8U :8位无符号整数图像
一、基础知识
1.基础数据结构
1.1.CvPoint
CvPoint 二维坐标系下的点,类型为整型
typedef struct CvPoint
{
int x; /* X坐标, 通常以0为基点 */
int y; /* y坐标, 通常以0为基点 */
}
1.2.CvSize 矩形框大小,以像素为精度
typedefstructCvSize
{
intwidth; /* 矩形宽 */
int height; /* 矩形高 */
}
1.3.CvRect 矩形框的偏移和大小
typedefstructCvRect
{
intx; /* 方形的最左角的x-坐标 */
inty; /* 方形的最上或者最下角的y-坐标 */
intwidth; /* 宽 */
int height; /* 高 */
}
1.4.CvScalar 定义存放1-4个数值的数组。
typedef struct Cvscalar{
double val[4];
}CvScalar; //可用来表示RGBA 的值,A=alpha透明度
1.5.IplImage
width,height,depth(深度),nchannels(通道数),origin(原点坐标)
imageData ,ROI
1.6 CvMemStorage 内存存储器
typedefstructCvMemStorage
{
structCvMemBlock*bottom;/*firstallocatedblock*/
struct CvMemBlock* top; /* the current memory block - top of
thestack*/
structCvMemStorage*parent; /*borrowsnewblocksfrom*/
int block_size; /*blocksize */
intfree_space; /*freespaceinthetopblock(inbytes)*/
}CvMemStorage;
内存存储器是一个可用来存储诸如序列,轮廓,图形,子划分等动态增长数据结构
的底层结构。它是由一系列以同等大小的内存块构成,呈列表型 bottom 域指
的是列首,top 域指的是当前指向的块但未必是列尾.在bottom和top之间所有
的块(包括bottom, 不包括top)被完全占据了空间;在 top和列尾之间所有的
原创力文档

文档评论(0)