我有一个问题,我找不到任何解决方案.
我必须用一个已知矩阵的逆来进行一些计算.
Matrix homography=
1.1688, 0.23, 62.2,
-0.013,1.225, -6.29,
0, 0, 1,
Run Code Online (Sandbox Code Playgroud)
然后:
Mat homoInv=homography.inv();
Run Code Online (Sandbox Code Playgroud)
矩阵的内容将是:
1.81381e-29, 15.1628, -7.57361e+17,
0, -0, 0,
5.4561e-33, -2.40123e+34, -1.38198e-05
Run Code Online (Sandbox Code Playgroud)
那当然是错的,因为我已经在Matlab中检查了结果.两个矩阵都显示并作为浮点读取,它们的深度为a 64FC1.
有没有人知道可以做些什么?
谢谢大家
更多代码:
int main(int argc, char ** argv )
{
Mat homogra(3,3,CV_64FC1);
Mat coord(3,1,CV_64FC1);
Mat result(target.size(),CV_8UC1);
homogra.at<float>(0,0)=1.1688;
homogra.at<float>(0,1)=0.23;
homogra.at<float>(0,2)=(-62.20);
homogra.at<float>(1,0)=(-0.013);
homogra.at<float>(1,1)=1.225;
homogra.at<float>(1,2)=-6.29;
homogra.at<float>(2,0)=0;
homogra.at<float>(2,1)=0;
homogra.at<float>(2,2)=1;
printMatrix(homogra);
Mat inverse=homogra.inv();
printMatrix(inverse);
}
Run Code Online (Sandbox Code Playgroud)
function printMatrix:
void printMatrix(Mat M){
cout<<"Tipo de matriz:"<<M.type()<<endl;
// dont print empty matrices
if (M.empty()){
cout << "---" << endl;
return; …Run Code Online (Sandbox Code Playgroud) 我正在研究应用于组织学图像的图像配准方法.
我有一个问题.我想使用MSER特征检测器来检测图像上的关键点.在使用opencv提供的MSER函数检索MSER轮廓之后,我计算每个轮廓的质心,以便将其用作有趣点.
如果我直接描述有趣的点,例如使用Surf描述符,描述符的大小就是1,并且不可能比较它们.
因此,有必要用合适的大小修改描述符的大小.
有没有人有想法?
谢谢