OpenCV掩模mask的原理和作用

2022-07-20 10:18:13 字數 1074 閱讀 7126

opencv中很多函式都帶有乙個mask引數,mask被稱為掩模。影象掩模一般用來對處理的影象(全部或者區域性)進行遮擋,來控制影象處理的區域或處理過程。

掩模一般是小於等於源影象的單通道矩陣,掩模中的值分為兩種0和非0。以mat::copyto為例,當mask的值不為0,則將源影象拷貝到目標影象,當mask為0,則不進行拷貝,目標影象保持不變。

源影象            目標影象          mask            源影象拷貝疊加到目標影象上得到新的目標影象

34//255或者1都行,只要非0就行

5 mat mask(logoimage.size(),cv_8uc1,scalar::all(255

));6 rect r1(0,10,mask.cols,10

);7 mask(r1).setto(0);8

9 mat roiimage = srcimage(rect(100, 100

, logoimage.cols, logoimage.rows));

10logoimage.copyto(roiimage, mask);

1112 imshow("

srcimage

", srcimage);

13 waitkey(0);

OpenCV 對矩陣的掩模操作

1 mask operations 掩膜模板以及運算規則 2 示例 void sharpen const mat myimage,mat result result.row 0 setto scalar 0 result.row result.rows 1 setto scalar 0 result...

openCV中的矩陣掩模演算法

include include include using namespace cv int main int argc,char argv namedwindow input image cv window normal imshow input image src int cols src.co...

OpenCV系列 詳解掩膜mask

在opencv中我們經常會遇到乙個名字 mask 掩膜 很多函式都使用到它,那麼這個mask到底什麼呢?一開始我接觸到mask這個東西時,我還真是一頭霧水啊,也對無法理解mask到底有什麼用。經過查閱大量資料後,也對mask有一點自己的理解了,下面就說說我的理解。比如我要對一幅圖進行摳圖操作,這就要...