#include <iostream>
#include<opencv2/opencv.hpp> //引入頭文件using namespace cv; //命名空間
using namespace std;//opencv這個機器視覺庫,它提供了很多功能,都是以函數的形式提供給我們
//我們只需要會調用函數即可int main(int argc, char *argv[])
{//讀一張圖片Mat image=imread("E:/C++/project/test.jpg"); //Mat圖片類型//顯示一張圖片imshow("1",image);//圖片轉hsv格式Mat hsv;cvtColor(image,hsv,COLOR_BGR2HSV);imshow("2",hsv);//截取顏色區域的范圍inRang 在hsv取值范圍內呈白色 不在范圍內呈黑色Mat mask;//模板inRange(hsv,Scalar(100,43,46),Scalar(124,255,255),mask); //藍色最小值最大值imshow("3",mask);//現在的mask就是摳出藍色的底色//取反操作 但是我們需要摳出的是人像bitwise_not(mask,mask);imshow("4",mask);//做一張紅色背景圖Mat redBack=Mat::zeros(image.size(),image.type());redBack=Scalar(40,40,200);//紅色三原色imshow("5",redBack);//實現圖片拷貝 要用到原始圖片 人物頭像模板 紅色背景image.copyTo(redBack,mask);imshow("6",redBack);//參數為0的時候表示等待用戶按下任意,鍵waitKey(0);return 0;
}
?