- 博客(75)
- 收藏
- 关注

原创 OpenCV深拷贝效率对比
通过其他char* data 构造的Mat,需要考虑使用copyTo 或者clone。因为Mat只是浅拷贝,指向的数据还是原来的数据,如果原来的数据被释放了,那么Mat就会指向一个无效的数据,导致内存错误。这里主要对比OpenCV中不同深拷贝方式的效率。clone 和 copyTo 的区别。clonecopyTo在视频帧处理中,大部分情况下,视频帧的大小都是不会变化的,所以可以考虑使用成员变量作为copyTo的目标Mat,这样可以减少内存的分配和释放,提高效率。
2024-04-10 10:29:03
883

原创 【OpenCV】Mat 构造函数
默认构造函数,拷贝构造,赋值拷贝,移动拷贝,移动赋值拷贝,默认析构函数。移动拷贝函数和移动赋值拷贝是后面新加的,移动构造函数使右值对象拥有的资源无需赋值即可移动到左值中。目前的经验来看,这三者主要是应对深拷贝,浅拷贝的问题。这类场景通常是对象持有一个数据指针。,直接赋值数据指针,那就有两个指针指向同一份数据,这个就引入了很多风险,比如重复释放导致Crash 的问题。,为了解决两个不同的对象持有同一份数据,深拷贝直接把数据复制一份,这样两个对象的数据就没有关联了。
2024-03-29 18:22:29
1187

原创 谷歌Coral-TPU win10/ubuntu/docker安装教程汇总
参考连接:https://coral.ai/software/https://github.com/google-coral/edgetpuhttps://github.com/google-coral/libedgetpuhttps://github.com/Air000/yolov3_to_edgetpu一、runtime 安装echo "deb https://packages.cloud.google.com/apt coral-edgetpu-stable main" | sudo t
2020-12-24 13:42:22
1294
2
原创 【Whisper】WhisperX: Time-Accurate Speech Transcription of Long-Form Audio
whisperx 语音处理pipeline
2024-07-04 09:56:46
555
原创 【CUDA】Nsight profile驱动的CUDA优化
有一个 L x M 的矩阵M1M_1M1对其每行取平均值 得到V1∈RL×1V1∈RL×1的列向量有一个 L x L 的矩阵M2M_2M2与V1V_1V1做矩阵乘法,最后得到V2∈RL×1V2∈RL×1的列向量。
2024-05-29 00:24:07
1241
原创 【Effective C++】41 了解隐式接口和编译器多态
Templates及泛型编程的世界,与面向对象有根本的不同。在此世界中显式接口和运行期多态仍然存在,但重要性降低。反倒是隐式接口(implicit interfaces)和编译期多态(runtime polymorphism)移到前头了。在 template 参数身上的隐式接口,就像class 对象身上的显示接口一样真实,而且两者都在编译期完成检查。就像你无法以在template 中使用 "不支持template所要求的隐式接口"的对象。但是隐式接口就完全不同了,它不基于函数签名式,而是由有效表达式组成。
2024-04-06 23:04:43
412
原创 【Effective C++】40 明智而审慎地使用多重继承
多重继承(multiple inheritance;MI),程序可能有可能从一个以上的 base class 继承相同名称(函数,typedef等等)。那会导致较多的歧义机会。例如。
2024-03-22 17:03:49
335
原创 【Effective C++】39 明智而审慎地使用private继承
现在可以讨论其显示意义。Private继承意味着 implemented-in-terms-of(根据某物实现出)。如果你让class D 以 private形式继承class B, 你的用意是为了采用 class B 内已经备妥的某些特性,不是因为B 对象和D对象存在有任何观念上的关系。在哪个例子里,class Student 以 public 形式继承class Person, 于是编译器在必要时刻将Students暗自转化为Person.如果此时我们以 private 继承替换 public继承。
2024-03-22 15:01:16
380
原创 【Effective c++】37 绝不重新定义继承而来的缺省参数值
virtual函数是动态绑定的,而缺省参数值确实静态绑定的。意思是你可能会在"调用一个定义在 derived class"内的virtual函数的同事,却使用 base class 为它所指定的缺省参数值。对于指针指向的动态类型来说, pc的动态类型时Circle*, pr的动态类型是Rectangle* ps没有动态类型。这个也不是的,比如子类的默认值和基类不一样的时候,还是使用基类的默认参数值。所以:缺省值是静态绑定的,和指针定义的类型有关。virtual 函数是动态绑定,而缺省参数值却是静态绑定。
2024-03-20 13:37:01
222
原创 【Effective C++】11 在operator=中处理“自我赋值“
这个代码如果 rhs 就是 自己,就会导致new Bitmap的时候出现异常行为。所以保险起见要判断是否出现自我赋值。operator= 实现。
2024-03-12 10:36:29
363
原创 【xv6】03 page table
一些操作系统(比如 Linux)会通过在用户空间和内核之间共享只读区域来加速特定的系统调用。这可以消除系统调用的消耗。这里只要求对getpid()加速。当每个进程被创建时,可以在USYSCALL上映射一个只读页。USYSCALL是定义在中定义的虚拟内存。在这一页的开始,保存一个(这个结构体也定义在),并且初始化它来保存当前进程的PID。对于这个实验,ugetpid()已经在用户空间提供了,并且会自动使用USYSCALL映射。
2024-03-05 10:45:03
599
原创 【MediaFoundation】OpenCV VideoCapture 读取音频源码
在windows7 以及OpenCV4 过后可以使用CAP_MSMF读取音频,但是OpenCV没有播放音频的API。代码示例如下。本文解析OpenCVCAP_MSMF进行文件、设备的 音频读取,学习MediaFoundation 的使用。
2024-01-08 18:47:35
1233
原创 pytorch 训练可视化
pytorch 训练可视化1.from torch.utils.tensorboard新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流...
2023-10-20 10:49:48
637
1
原创 【Paper】Transformers in Times Series: A Suervey
In this paper, we sysytematically review Transformer schemes for time series modeling by hignlighting their as well as .in particular, we examine the development of time series Transformers in two perspectives.Github: time-series-transformers-review or
2023-09-16 21:26:58
157
原创 【LSTM】理解LSTM
原文:https://colah.github.io/posts/2015-08-Understanding-LSTMs/
2023-07-16 23:45:34
276
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人