OpenCV背景减法/码本
OpenCV background subtraction/codebook?
我尝试了codebook方法,但不太理解在code_book结构体中使用int t的意义。它是用于"计数每次访问"的变量,但这完全让我迷惑了。计算什么访问权限?由谁?有人能给我解释一下成员变量的用途吗?请尽量使用非专业术语
其次,在ce结构体中,int t_last_update和int过期成员数据的意义是什么?T_last_update应该杀死陈旧的条目,但是陈旧的条目是什么?你说的"杀了它"是什么意思?对于int stale,它应该计算最大负运行?什么是负运行,它的用途是什么?
谢谢你的帮助
PS:只是确认我需要的:解释一下在code_book结构体中int t做什么,在ce结构体中int t_last_update和int _stale做什么。
我想你说的是OpenCV书中的这部分代码:
typedef struct code_book {
...
int t; // Count every access
} codeBook;
基本上,您可以将t字段视为每次向代码本添加新帧时的滴答计数。它用于确定距离代码本集合的开始或最后一次清除过时像素的时间有多长。编辑:您需要跟踪两个数据结构。codeBook类似于存储在其中的codeBook_elements(即ce结构)的父类。t在每次更新codeBook时递增。但是,该更新可能不会增加所有codeBook_elements。所以…
t_last_update是最后一次访问特定的codeBook_element。
stale帮助跟踪代码本条目在代码本中的"旧"程度。
negRun表示负运行时间。它跟踪代码本条目被访问的时间。如果时间过长,则认为过期,并将其删除以节省内存。
在OpenCV示例中有一个代码本方法的更新。看一下bgfg_codebook.cpp示例。
希望这对你有帮助!
相关文章:
- 从C++本机插件更新Vector3数组
- GCC本机矩阵运算库
- 无法链接 CMake 中的本地库
- 如何在全屏模式下(在OpenGL中)使背景透明
- VC++本机单元测试,找不到调试符号
- 使用窗口中的QSlider更改背景音量
- 在这种情况下,java对象是否可以调用本机函数
- luaL_dofile在已知良好的字节码上失败,可以使用未编译的版本
- PC中的程序和PHONE中的本机描述应用程序之间的数据连接
- 为什么导入Mixed native/CLR lib.dll的本机C++应用程序没有在Mixed lib.dll中的外部变
- 位移操作和位掩码未检测到重复字符
- 无法将标准库导入本机 android 项目中的头文件
- OpenCV - 带有掩码的absdiff
- 删除K的背景掩码-意味着Python或C++中的集群/
- 如何在本机C 中使用QML绘制QR码
- 如何在本机C/C 中用QT绘制QR码
- C++中的本码解析器
- 在c++中使用由iOS本地库公开的C位掩码(匿名enum)
- 在OpenCV中计算码本
- OpenCV背景减法/码本