當前位置:首頁 > IT技術 > 編程語言 > 正文

linspace函數c++實現
2022-05-11 11:02:06

matlab里的linspace函數是均分計算指令,用法是:linspace(x1,x2,N),用于產生x1,x2之間的N點行線性的矢量。其中x1、x2、N分別為起始值、終止值、元素個數。若默認N,默認點數為100。

?

C++實現為

[cpp]?view plain?copy
?
  1. //linspace函數??
  2. Mat?linspace(double?begin,?double?finish,?int?number)?{??
  3. ????double?interval?=?(finish?-?begin)?/?(number?-?1);//??
  4. ????Mat?f(1,?number,?CV_64FC1);??
  5. ????for?(int?i?=?0;?i?<?f.rows;?i++)?{??
  6. ????????for?(int?j?=?0;?j?<?f.cols;?j++)?{??
  7. ????????????f.at<double>(i, j) = begin + j * interval;??
  8. ????????????//cout?<<?"(" << i + 1 << "," << j + 1 << ")" << f.at<double>(i,? j)?<<?endl;??
  9. ????????}??
  10. ????}??
  11. ????return?f;??
  12. }??

這里的Mat f(1,number,CV_64FC1)指的是opencv里的矩陣Mat 定義一個f,大小是1xnumber,CV_64FC1指的是double類型,通道數為1。

當然這里可以改成雙精度數組,即:double f[1][number],更改應與函數返回值相對應。

本文摘自 :https://www.cnblogs.com/

開通會員,享受整站包年服務
国产呦精品一区二区三区网站|久久www免费人咸|精品无码人妻一区二区|久99久热只有精品国产15|中文字幕亚洲无线码