操作畫素 OpenCV2 4 11

2021-07-27 04:17:44 字數 1409 閱讀 6454

操作畫素------opencv2.4.11

1、mat類

mat是乙個n維矩陣類,宣告在中1711-2034行。

class cv_exports mat

;

2、scalar類

templateclass scalar_

: public vec<_tp, 4>

;typedef scalar_

scalar;

templateclass vec : public matx

<_tp, cn, 1>

;    //! default constructor

vec();

.........

templatevec(const matx<_tp, cn, 1>& a, _t2 alpha, matx_scaleop);

};

templateclass matx

;    //! default constructor

matx();

.........

//! extract the matrix row

matx<_tp, 1, n> row(int i) const;

//! extract the matrix column

matx<_tp, m, 1> col(int i) const;

_tp val[m*n]; //< matrix elements

};

3、獲取畫素的亮度值

(1)獲取單通道灰度圖(型別 8uc1)的(x, y)位置處的畫素值:

scalar intensity = img.at(x, y);
intensity.val[0] 中儲存從0到255的值

(2)獲取3通道影象的(x, y)位置處的畫素值:

vec3b intensity = img.at(x, y);

uchar blue = intensity.val[0];

uchar green = intensity.val[1];

uchar red = intensity.val[2];

(3)處理浮點影象(例如通對乙個3通道影象進行sobel運算得到的浮點影象):

vec3f intensity = img.at(x, y);

float blue = intensity.val[0];

float green = intensity.val[1];

float red = intensity.val[2];

(4)畫素值的修改:

img.at(x, y) = 128;

示例

OpenCV 2 4 11 的安裝與配置

雙擊 計算機 開啟 系統屬性 點選 高階系統設定 然後開啟 環境變數 編輯path,在變數值中新增以下語句 d opencv opencv build x86 vc10 bin d opencv opencv build x86 mingw bin d opencv opencv build com...

opencv畫素操作

1 bit depth 位元數 代表8bite,16bites,32bites,64bites 舉個例子吧 比如說,如 如果你現在建立了乙個儲存 灰度的mat物件,這個影象的大小為寬100,高100,那麼,現在這張 灰度中有10000個畫素點,它每乙個畫素點在記憶體空間所佔的空間大小是8bite,8...

OpenCV 操作畫素(訪問畫素值)

為構建計算機視覺應用程式,我們需要學會訪問影象的內容,有時也要修改或者建立影象。本章將講講如何操作影象的元素 即畫素 影象本質上就是由陣列組成的矩陣。opencv使用了cv mat結構來操作影象。矩陣中的每乙個元素表示乙個畫素。對灰度影象而言,畫素是8位無符號數 資料型別為unsigned char...