opencv關於取整的問題以及矩陣的建立及訪問

2021-08-29 02:40:46 字數 927 閱讀 6019

opencv 或 c++

向下取整的時候,會把0取整為 -1

從而導致了訪問特徵點位置,出現(0,298.249251)取整變成了(-1,298)

還有建立矩陣時候,如果矩陣內的數字大於255,就不能使用uchar

比如:

mat statisticsleft(queryimage.size().height, queryimage.size().width, cv_8u, scalar::all(0));
上面是部落格中經常看到的,如果不加思索,直接照搬

如果你的值大於255,放入矩陣某個位置,就會出錯了

應該改為float

mat statisticsleft(queryimage.size().height, queryimage.size().width, cv_32f, scalar::all(0));
不僅如此,

訪問此矩陣時候,也要改為float

float* data = null;

for (size_t i = 0; i < mnumbermatches; i++)

關於erlang的向上取整和向下取整

在erlang的api中,erlang trunc 1 是就近取整,erlang round 1是四捨五入的,1 向上取整 2 ceil n 3 t trunc n 4case n t of 5true t 6false 1 t 7end.1 向下取整 2 floor x 3 t trunc x 4...

關於Oracle取整的函式

關於oracle取整的函式分別有以下幾種 1.取整 大 select ceil 1.001 value from dual 向大的進製 ceil 0.12 02.取整 小 select floor 1.001 value from dual 向小的進製 floor 0.12 13.取整 擷取 sel...

關於js的取整操作

寫js的時候,我們經常會使用一些js的數學方法,來將字串轉化成數字,經常會用到取整操作。比如將得到的字串 09.09 轉化成整數數字。常用的有4中方法 parseint math.ceil math.floor math.round 1.parseint 丟棄小數部分,保留整數部分 2.math.c...