首页 > 图像的矩,以及利用矩求图像的重心,方向

图像的矩,以及利用矩求图像的重心,方向

计算图像中特征图标的重心和方向

void main() { Mat image = imread("1198.jpg", 0);//读入灰度图Mat binary;threshold(image1, binary, 55, 255, CV_THRESH_BINARY);Moments m = moments(binary, true);//moments()函数计算出三阶及一下的矩Point2d center(m.m10 / m.m00, m.m01 / m.m00);//此为重心double a = m.m20 / m.m00 - center.x*center.x;double b = m.m11 / m.m00 - center.x*center.y;double c = m.m02 / m.m00 - center.y*center.y;double theta = fastAtan2(2 * b, (a - c)) / 2;//此为形状的方向cout << center << "   " << theta << endl;getchar();
}

更多相关:

  • Qt默认的QSlider和QSpinbox只能实现整数调整,不能实现浮点的变化,因此设计了如下可实现浮点变化的QFloatSlider和QFloatSpinner: QFloatSlider.h class QFloatSlider : public QSlider {Q_OBJECTpublic:QFloatSlider(QWi...

  • 一、概述 之前的文章介绍过卡尔曼滤波算法进行定位,我们知道kalman算法适合用于线性的高斯分布的状态环境中,我们也介绍了EKF,来解决在非高斯和非线性环境下的机器人定位算法。但是他们在现实应用中存在计算量,内存消耗上不是很高效。这就引出了MCL算法。 粒子滤波很粗浅的说就是一开始在地图空间很均匀的撒一把粒子,然后通过获取机器人的...

  • 1.精度问题 由于是double类型,r=mid 而不是r=mid-12.如果首位两端(f(0)和f(100))同号,证明解不在[1,100]区间内 这是我之所以TE的原因,没有预先判断3.若在这个区间内,则一定可要求出解 所以binarysearch 返回m#include #include ...

  • 代理(Proxy)模式给某一个对象提供一个代理,并由代理对象控制对原对象的引用。 代理模式的英文叫做Proxy或Surrogate,中文都可译成"代理"。所谓代理,就是一个人或者一个机构代表另一个人或者另一个机构采取行动。在一些情况下,一个客户不想或者不能够直接引用一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。 类图:...

  • 题目链接:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=41&page=show_problem&problem=1121 题意:给出两点坐标,用一条最短的线(曲线或者直线)连接起来,坐标系中原点处有一个半径为R的圆,连线不能...