序列数据结构 (CvSeq)
来源:互联网 发布:php教材推荐 编辑:程序博客网 时间:2024/06/08 12:21
序列是内存存储器中可以存储的一种对象。在opencv中,序列可以存储多种不同的结构。你可以将序列想象为许多编程语言中都存在的容器类或容器类模版(如C++中的vector).序列在内存被实现为一个双端队列(deque).因此序列可以实现快速的随机访问,已经快速删除顶端的元素,但是从中间删除元素则稍慢些.
结构CvSeq的定义
typeedef struct CvSeq{int flags; /* 标识. */ int header_size; /* 序列头的大小 */CvSeq* h_prev; /* 水平方向上的前一个序列 */CvSeq* h_next; /* 水平方向上的下一个序列 */CvSeq* v_prev; /*垂直方向上的上一个序列 */
CvSeq* v_next /* 垂直方向上的下一个序列 */
int total; /* 元素总和 */int elem_size; /* 序列元素的大小,用字节表示 */
schar* block_max; /* 最后块的最大区间 */
schar* ptr; /* 写指针的当前位置 */
int delta_elems; /* 当序列增长时有多少元素需要重新分配(序列的粒度). */
CvMemStorage* storage; /* Where the seq is stored. */
CvSeqBlock* free_blocks; /* 自由块列表 */
CvSeqBlock* first; /* 指向第一个块的指针 */
}
序列中有一些重要的属性,首先,最常用到的是total成员,total存储序列中保存数据的个数。
其次是h_prev,h_next,v_prev和v_next,他们是CV_TREE_NODE_FIELDS的一部分,指向其他的序列(分别为上下左右四个方向)。
这四个指针不是用来访问序列中的元素,而是用来链接不同的序列。仅仅使用h_prev,h_next,可实现一个简单的链表。
另外两个变量v_prev和v_next可用来创建那些比较密切的复杂的拓扑结构。
通过这四个变量,函数cvFingdeContours可以将图像中复杂的轮廓构造为轮廓树。
0 0
- 序列数据结构 (CvSeq)
- OpenCV的序列数据结构(CvSeq)
- OpenCV中的数据结构CvSeq(序列)
- OpenCV中的数据结构CvSeq(序列)
- CvSeq 序列
- CvSeq动态结构序列
- CvSeq动态结构序列
- OpenCV 序列CvSeq
- (三)CvSeq数据结构
- 【opencv】CvSeq数据结构及函数
- CvSeq
- cvSeq
- CvSeq
- 数据结构 序列
- OpenCV中寻找轮廓函数cvFindContours的使用说明以及序列cvSeq的用法说明
- OpenCV中寻找轮廓函数cvFindContours的使用说明以及序列cvSeq的用法说明
- opencv序列结构CvSeq和轮廓提取cvFindContours的简单运用
- OpenCV中寻找轮廓函数cvFindContours的使用说明以及序列cvSeq的用法说明
- 7.Git代码<仓库基本操作>-4(自我整理) 2016/11/12
- 为什么构造函数不可以被声明为虚函数而析构函数有时候必须声明为虚函数
- Yii2 ajax验证表单输入
- 文章标题
- MySQL中的主键以及设置其自增的用法教程
- 序列数据结构 (CvSeq)
- [luogu1284] 三角形牧场
- 三岁小孩最爱用的操作系统--汉澳sinox2016安装图解教程
- javascript 树形数据转化维数组
- [未解决]The connection pool for database has been unable to grant a connection to thread 1304
- 浅析B-树
- [linux] signal 0 for running process test
- HashMap、TreeMap、Hashtable
- 计算机视觉