bug opencv 矩陣操作

2021-06-21 05:57:24 字數 1021 閱讀 6356

下午在求homography的a矩陣。

程式功能:建立cvmat 賦值然後將mat列印出來。

實現方法:cvcreatmat() 建立矩陣

cvmat()給矩陣賦值

cvgetreal2d()提取矩陣元素,並列印

總結:整個過程不難,但是遇到乙個bug始終沒有搞明白。

我在 cvmat getmata()函式裡建立並賦值矩陣mat_a,getmata()返回mat_a.

printmat(cvmat) 將getmata()返回的矩陣作為引數列印矩陣。

結果:矩陣在printmat中發生資料丟失。原因可能是getmata()函式返回時發生了資料丟失。

因此,以後要規範**風格,在opencv中,不要將複雜的結構體作為return返回。應該採用

師兄建議的方法:

先定義乙個變數,然後所有函式都引用該變數。

如: cvmat mat;

getmata(mat);

printmat(mat);

附**

void

printmat(cvmat*mat)

printf("\n");
}
}
void

getmata()

;

cvmat*mat_a=cvcreatemat(8,9,cv_64fc1);

*mat_a=cvmat(8,9,cv_64fc1,mat_a_arry);
printf("array

data

\n");

sl::printmat(8,9,mat_a_arry);

printmat(mat_a);
}

Opencv矩陣操作

opencv 矩陣操作 cvmat 2009 06 08 20 10 分配矩陣空間 cvmat cvcreatemat int rows,int cols,int type type 矩陣元素型別.格式為cv s u f c.例如 cv 8uc1 表示8位無符號單通道矩陣,cv 32sc2表示32位...

矩陣操作(5)

矩陣操作主要是用在圖論裡面,求k步的方案或者最短路 hdu2157 題意 給定乙個有向圖,問從a點恰好走k步 允許重複經過邊 到達b點的方案數mod p的值 思路 把給定的圖轉為鄰接矩陣,即a i,j 1 當且僅當存在一條邊i j 令c a a,那麼 c i,j a i,k a k,j 實際上就等於...

Python 矩陣操作

numpy庫用於矩陣運算,所以一般先導入它。from numpy import import numpy as np1 矩陣建立 建立一維陣列 a1 array 1,2,3 將陣列轉為矩陣 a1 mat a1 輸出a1 matrix 1,2,3 當然也可以對矩陣操作 a1.reshape 3,1 這...