1.1.Mat類的所有內容
Mat這個類名是由矩陣借用而來的,是一個n維的陣列,能夠在單個或多個通道中存盤和處理不同的數學資料型別,計算機視覺中的影像就是像素矩形(因此是二維陣列),具有指定的寬度(矩陣中的列數)和高度(矩陣中的行數),此外,灰度圖中的一個像素可以用單個數字來表示(因此是單通道),最小值(通常是0)表示黑色,最大值(通常是255,即一個位元組能表示的最大的數字),表示白色,最大與最小值之間的所有值相應地對應于不同的灰度,

同樣地,在標準RGB彩色影像中一個像素有三個不同的元素而不是一個(因此是三通道),分別對應著紅、藍和綠三個顏色值
1.2.imread函式
函式原型: Mat cv::imread(char filename,int flag);
接受C++std::string類作為第一個引數,接受ImreadModes.flag為第二個引數,如果讀取影像失敗則回傳空Mat類(data== NULL),否則回傳一個填充料影像像素的Mat類,像素的型別和顏色是在第二個引數中指定的,
imread可以讀取常用的影像型別:\*.bmp, \*.jpeg, \*.jpg, \*.png
ImreadModes列舉可以傳遞給imread函式的可能的標志,
例如:
- IMREAD_UNCHANGED:不進行轉化,比如保存為了16位的圖片,讀取出來仍然是16位——可以寫成-1
- IMREAD_GRAYSCALE:進行轉化為灰度圖,比如保存為了16位圖片,讀取出來為8位,型別為CV_8UC1——可以寫為0
- IMREAD_COLOR:進行轉化為三通道影像,即讀入一副彩色影像,影像的透明度會被忽略,這是默認引數,——可以寫成1
- IMREAD_ANYDEPTH:如果影像深度為16位則讀出來為16位,32位則讀出為32位,其余的轉化為8位
- IMREAD_ANYCOLOR:如果設定,則以任何可能的顏色格式讀取影像
- IMREAD_LOAD_GDAL:使用GDAL驅動讀取檔案(GDAL是一個在X/MIT許可協議下的開源柵格空間資料轉換庫,它利用抽象資料模型來表達所支持的各種檔案格式)
1.3.imshow函式
函式原型:void cv::imshow(const String&vinname,InputArry mat);
第一個引數為顯示圖片的視窗名稱,第二個引數為存盤圖片資料的物件,即此處imread函式的回傳值,
1.4.創建我的第一個OpenCV專案
功能簡介
通過呼叫imread函式讀取圖片,imshow函式顯示圖片,
代碼

Mat類的所有內容
Mat這個類名是由矩陣借用而來的,是一個n維的陣列,能夠在單個或多個通道中存盤和處理不同的數學資料型別,計算機視覺中的影像就是像素矩形(因此是二維陣列),具有指定的寬度(矩陣中的列數)和高度(矩陣中的行數),此外,灰度圖中的一個像素可以用單個數字來表示(因此是單通道),最小值(通常是0)表示黑色,最大值(通常是255,即一個位元組能表示的最大的數字),表示白色,最大與最小值之間的所有值相應地對應于不同的灰度,

同樣地,在標準RGB彩色影像中一個像素有三個不同的元素而不是一個(因此是三通道),分別對應著紅、藍和綠三個顏色值
imread函式
函式原型: Mat cv::imread(char filename,int flag);
接受C++std::string類作為第一個引數,接受ImreadModes.flag為第二個引數,如果讀取影像失敗則回傳空Mat類(data== NULL),否則回傳一個填充料影像像素的Mat類,像素的型別和顏色是在第二個引數中指定的,
imread可以讀取常用的影像型別:\*.bmp, \*.jpeg, \*.jpg, \*.png
ImreadModes列舉可以傳遞給imread函式的可能的標志,
例如:
- IMREAD_UNCHANGED:不進行轉化,比如保存為了16位的圖片,讀取出來仍然是16位——可以寫成-1
- IMREAD_GRAYSCALE:進行轉化為灰度圖,比如保存為了16位圖片,讀取出來為8位,型別為CV_8UC1——可以寫為0
- IMREAD_COLOR:進行轉化為三通道影像,即讀入一副彩色影像,影像的透明度會被忽略,這是默認引數,——可以寫成1
- IMREAD_ANYDEPTH:如果影像深度為16位則讀出來為16位,32位則讀出為32位,其余的轉化為8位
- IMREAD_ANYCOLOR:如果設定,則以任何可能的顏色格式讀取影像
- IMREAD_LOAD_GDAL:使用GDAL驅動讀取檔案(GDAL是一個在X/MIT許可協議下的開源柵格空間資料轉換庫,它利用抽象資料模型來表達所支持的各種檔案格式)
imshow函式
函式原型:void cv::imshow(const String&vinname,InputArry mat);
第一個引數為顯示圖片的視窗名稱,第二個引數為存盤圖片資料的物件,即此處imread函式的回傳值,
waitKey函式
函式原型:int waitKey(int delay=0)
功能是不斷重繪影像,頻率為delay,單位是ms,回傳值為當前鍵盤按下的值,沒有按鍵時回傳-1.
delay:為0時,則會一直顯示這一幀,”delay“,在顯示視頻和攝像頭時有用,用于設定在顯示完一幀影像后程式等待“delay"ms再顯示下一幀視頻,
回傳值:每經過“delay”ms后更新,如果delay > 0,那么超過指定的時間則回傳-1,如果delay=0,由于一直顯示這一幀,將沒有回傳值,直到有按鍵按下的時候回傳按鍵的值,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/292815.html
標籤:其他
上一篇:安裝opencv-python時卡在 running setup.py bdist_wheel for opencv-python
