圖像讀取函數cv::imread()的幾種使用方式

string imgpath = "C:\Users\Y\Pictures\miao.jpg";

OpenCV的imread()函數不支持單右斜線形式的路徑,即不支持上述形式的路徑。可是imread()支持雙右斜線、雙左斜線、單左斜線、前述三種斜線混合形式。函數

#include<opencv2\opencv.hpp>
 
using namespace cv; int main(int argc,char* argv[]) { Mat img; //-- 1 --雙右斜線法 //string imgpath = "C:\\Users\\Y\\Pictures\\miao.jpg"; //-- 2 --雙左斜線法 //string imgpath = "C://Users//Y//Pictures//miao.jpg"; //-- 3 --單左斜線法 //string imgpath = "C:/Users/Y/Pictures/miao.jpg"; //-- 4 --以上三種混合法 //string imgpath = "C:/Users//Y\\Pictures//miao.jpg"; //-- 5 --相對路徑法 //string imgpath = "miao.jpg"; //-- 6 --命令行參數法
    string imgpath = argv[1]; img = imread(imgpath, 1); imshow("img", img); waitKey(0); return 0; }

 相對路徑法,只須要把圖像文件放在工程文件夾下和.cpp文件放在一塊兒就好了,讀取的時候就能夠直接用名字讀取,如imread("miao.jpg");spa

最後一種命令行參數法是源碼中比較常見的。設置方法是:工程——屬性——配置屬性——調試——命令行參數,而後設置就好了。如圖:.net

設置以後miao.jpg就是argv[1],2.jpg就是argv[2]。命令行

以上六種的運行結果:調試

函數原型code

Mat imread(const string& FileName, int flags = 1)blog

FileName:圖片路徑名圖片

flags:載入標識,指定一個加載圖像的顏色類型,默認值爲1,表示載入三通道的彩色圖像;原型

                                                                     -1,imread按解碼獲得的方式讀入圖像;源碼

                                                                      0,imread按單通道的方式讀入圖像,即灰白圖像。

 

參考文章:https://blog.csdn.net/qq_36969386/article/details/79195890

相關文章
相關標籤/搜索