目的:
cvInRangeS 找出特定的顏色
函數介紹:
cvInRangeS 找出特定的顏色,找到的話,就顯示為白色,不然為黑色。
參數值:
C: void cvInRangeS(const CvArr* src, CvScalar lower, CvScalar upper, CvArr* dst)
Parameters: |
|
---|
使用範例:
sample12-1_cvInRangeS_找出皮膚顏色#include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> #include <opencv2/opencv.hpp> #include #include #include using namespace cv; int main(int argc,char **argv) { int width,height; if(argc<=1) { std::cout<<"Error:Please Load a picture!"<<std::endl; return 0; } IplImage *image; //建立視窗 namedWindow("image",CV_WINDOW_AUTOSIZE); //讀取圖片 image=cvLoadImage(argv[1]); width=image->width; height=image->height; // 畫出正方形的外框 IplImage * img2=cvCreateImage(cvGetSize(image), IPL_DEPTH_8U, 1); cvInRangeS(image, cvScalar(90,110,180), cvScalar(139,164,236), img2); cvShowImage("image", image); waitKey(0); cvShowImage("image2", img2); waitKey(0); cvDestroyAllWindows(); return 0; }結果:
補充資料: