opencv内存管理器1

本文介绍了OpenCV中的内存存储器Memory Storage,它通过双向链表管理动态对象内存。重点讲解了CvSeq序列对象的使用,包括创建、排序和比较函数。CvSeq可用于存储多种对象,类似C++的vector。示例中展示了如何利用cvSeqSort()根据自定义规则(如x坐标)对序列元素排序,这对于处理图像连通区域等任务非常有用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.opencv使用内存存储器memory storage 来统一管理各种动态对象的内存,在底层被实现为一个有许多 相同大小的内存块组成的双向链表,opencv可以快速的分配内存给内部存储器。以下是常用的操作内部存储器 的函数。



2.序列是内存存储器中的可以存储的一种对象,openc中序列CvSeq可以存储多种对象,类似C++中的模板类vector。常用的序列的操作如下图。

数据结构:


创建序列:


排序函数:



比较函数的原型





序列中一个有用的函数是排序,cvSeqSort()可以按照自己定义的规则将内存中的元素进行排序,这很有用,尤其是在找连通区域的时候,时常要将找到的连通区域存储在序列中,但是这种存储呢的顺序是按照找到连通区域的顺序来的,有时候我们想识别一块数字区域,想按照从左到右的顺序将数字分割出来。可以按照连通区域的x坐标来来进行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值