我试着这样做:
connect(this, SIGNAL(signalClicked(int&)), classA, SLOT(doWork(int&)));
Run Code Online (Sandbox Code Playgroud)
但我在标题中得到了消息.所以我已经探索了互联网,我想出了这个不起作用的解决方案:
qRegisterMetaType<int&>("Type");
connect(this, SIGNAL(signalClicked(Type)), classA, SLOT(doWork(Type)));
Run Code Online (Sandbox Code Playgroud)
(错误:没有用于调用'qRegisterMetaType(const char [5])'的匹配函数)
有解决方案吗 谢谢你的帮助.
我正在进行一个对象跟踪项目,我想改进我使用卡尔曼滤波器获得的结果.
我在互联网上发现了许多有效的例子,但我真的想了解它背后的原因.
使用opencv,这是代码的一部分:
KalmanFilter KF(6, 2, 0);
Mat_ state(6, 1);
Mat processNoise(6, 1, CV_32F);
...
KF.statePre.at(0) = mouse_info.x;
KF.statePre.at(1) = mouse_info.y;
KF.statePre.at(2) = 0;
KF.statePre.at(3) = 0;
KF.statePre.at(4) = 0;
KF.statePre.at(5) = 0;
KF.transitionMatrix = *(Mat_(6, 6) << 1,0,1,0,0.5,0, 0,1,0,1,0,0.5, 0,0,1,0,1,0, 0,0,0,1,0,1, 0,0,0,0,1,0, 0,0,0,0,0,1);
KF.measurementMatrix = *(Mat_(2, 6) << 1,0,1,0,0.5,0, 0,1,0,1,0,0.5);
Run Code Online (Sandbox Code Playgroud)
这个结果比KalmanFilter(4,2,0)更平滑,但我真的不明白为什么.有人可以解释一下这个(6,6)转换矩阵的背后是什么吗?
编辑:解决方案可能在这里,但显然我不够好自己找到它...
谢谢您的帮助.