【发布时间】:2014-08-31 22:49:41
【问题描述】:
正如 berak 在 cmets 中所说,这段代码似乎已被弃用
在Opencv中有一个方法“cvmget”,示例用法是:
bool niceHomography(const CvMat * H)
{
const double det = cvmGet(H, 0, 0) * cvmGet(H, 1, 1) - cvmGet(H, 1, 0) * cvmGet(H, 0, 1);
if (det < 0)
return false;
const double N1 = sqrt(cvmGet(H, 0, 0) * cvmGet(H, 0, 0) + cvmGet(H, 1, 0) * cvmGet(H, 1, 0));
if (N1 > 4 || N1 < 0.1)
return false;
const double N2 = sqrt(cvmGet(H, 0, 1) * cvmGet(H, 0, 1) + cvmGet(H, 1, 1) * cvmGet(H, 1, 1));
if (N2 > 4 || N2 < 0.1)
return false;
const double N3 = sqrt(cvmGet(H, 2, 0) * cvmGet(H, 2, 0) + cvmGet(H, 2, 1) * cvmGet(H, 2, 1));
if (N3 > 0.002)
return false;
return true;
}
EmguCV 中是否有类似cvmget 的方法?
【问题讨论】:
-
嗯,这是过去十年的代码。避免它。
-
@berak,你为什么投反对票?
-
因为任何与已弃用的 c-api 相关的东西在 2015 年都不再有效。你不应该使用它,看到这个的菜鸟不应该误入歧途。 (顺便说一句,没有什么对你不利的。)
-
我不是 ac 程序员,或者对 cvmget 和贬低的 c-apis 一无所知,我只是有上面的代码,想要 EmguCv 方法,以及这样一个蹩脚且没有建设性的理由来投票。
-
StackOverflow 是问答的地方,我问了我的问题并得到了我的答案,我没有提供任何人使用我的方法,我只是想要一个 answers.opencv.org/question/2588/check-if-homography-is-good 的 emgucv 版本,但是你根本没有看到问题,您只是看到了 cvmget (或其他任何内容)并告诉自己,“是的,一个愚蠢的弃用问题,让我们对问题和答案投反对票”,我看到你的个人资料有 1400 次投反对票,所以很容易在没有解决方案的情况下投反对票,下次而不是那样,想出一个像 GeorgeChond 那样的解决方案。