目的:
cvScalar 和 CV_RGB都是指定顏色
函數介紹:
cvScalar 顏色指定是 BGR
CV_RGB顏色指定是 RGB
參數值:
CvScalar s = cvScalar(double val0, double val1=0, double val2=0, double val3=0);
使用範例:
sample11_cvScalar_顏色BGR
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/opencv.hpp>
#include <iostream>
#include <string.h>
#include <fstream>
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;
// 畫出正方形的外框
cvRectangle(image,
cvPoint((width/4),(height/4)),
cvPoint((width/4)*3,(height/4)*3),
CV_RGB(255,0,0),3,CV_AA,1);
cvRectangle(image,
cvPoint((width/4)*4,(height/4)),
cvPoint((width/4)*6,(height/4)*3),
cvScalar(255,0,0),3,CV_AA,1);
cvShowImage("image",image);
waitKey(0);
cvDestroyAllWindows();
cvReleaseImage(&image);
system("pause");
return 0;
結果:
補充資料:
Black = cCvScalar::new_object(cvScalar(0x0,0x0,0x0))
Silver = cCvScalar::new_object(cvScalar(0x0c,0x0c,0x0c))
Gray = cCvScalar::new_object(cvScalar(0x80,0x80,0x80))
White = cCvScalar::new_object(cvScalar(0xff,0xff,0xff))
Maroon = cCvScalar::new_object(cvScalar(0x0,0x0,0x80))
Red = cCvScalar::new_object(cvScalar(0x0,0x0,0xff))
Purple = cCvScalar::new_object(cvScalar(0x80,0x0,0x80))
Fuchsia = cCvScalar::new_object(cvScalar(0xff,0x0,0xff))
Green = cCvScalar::new_object(cvScalar(0x0,0x80,0x0))
Lime = cCvScalar::new_object(cvScalar(0x0,0xff,0x0))
Olive = cCvScalar::new_object(cvScalar(0x0,0x80,0x80))
Yellow = cCvScalar::new_object(cvScalar(0x0,0xff,0xff))
Navy = cCvScalar::new_object(cvScalar(0x80,0x0,0x0))
Blue = cCvScalar::new_object(cvScalar(0xff,0x0,0x0))
Teal = cCvScalar::new_object(cvScalar(0x80,0x80,0x0))
Aqua = cCvScalar::new_object(cvScalar(0xff,0xff,0x0))
04 cvScalar 和 CV_RGB 指定顏色
No comments:
Post a Comment