//Point类数据结构表示二维坐标系的点,由坐标x, y指定的2D点
Point pt = new Point(10, 10);
pt.X = 10;
pt.X = 20;
/* Rectangle类用来表示矩形,成员有x,
y, width, height,常用的属性:
Size:返回值Size表示大小
Contains(Point):判断点是否在矩形内
Left:矩形左边缘x坐标 Right:矩形右边缘x坐标
Top:矩形上边缘y坐标 Bottom:矩形下边缘y坐标 */
Rectangle rect = new Rectangle(100, 100, 200, 200);
rect.X = 10;
rect.Y = 10;
rect.Width = 100;
rect.Height = 100;
//打印大小
bool ret = rect.Contains(new Point(80, 80));
Console.WriteLine(ret);
Console.WriteLine(rect.Left);
Console.WriteLine(rect.Right);
Console.WriteLine(rect.Top);
Console.WriteLine(rect.Bottom);
Size size = rect.Size;
Console.WriteLine(size.Width);
Console.WriteLine(size.Height);
//1.Mat img = new Mat();
//2.Mat img = new Mat("1.jpg"); <==> Mat img = CvInvoke.Imread("1.jpg");
//4.Mat img = CvInvoke.Imread("1.jpg");
//Mat roi = new Mat(img, new Rectangle(10, 10, 100, 100));
//5.Mat img = new Mat(new Size(300, 100), DepthType.Cv8U, 3);
//img.SetTo(new MCvScalar(0, 255, 0));
//7.Mat img = new Mat(100, 300, DepthType.Cv8U, 3);
//img.SetTo(new MCvScalar(0, 255, 0));
MCvScalar color = new MCvScalar(255, 255, 0);
//Mat img = new Mat("1.jpg");
//Mat img = new Mat(new Size(300, 100), DepthType.Cv8U, 3);
Mat img = new Mat(100, 300, DepthType.Cv8U, 3);
img.SetTo(new MCvScalar(0, 255, 0));
CvInvoke.Imshow("img", img);
Mat img2 = img; //浅拷贝 (和原图像指向同一数据块)
Mat img3 = img.Clone(); //深拷贝(原图像的副本)
Mat img4 = new Mat();
img.CopyTo(img4); //深拷贝(原图像的副本)
img.SetTo(new MCvScalar(255, 255, 0));
/*
常用颜色空间
RBG颜色空间、HSV/HLS颜色空间、Lab颜色空间
转换所用函数CvtColor(IInputArray src, IOutputArray dst, ColorConversion code, int dstCn = 0);
ColorConversion.Bgr2Gray //BGR颜色空间转到灰度空间
ColorConversion.Bgr2Rgb //BGR颜色空间转到RGB颜色空间
ColorConversion.Bgr2Hsv //BGR颜色空间转到HSV颜色空间
ColorConversion.Bgr2Lab //BGR颜色空间转到Lab颜色空间
R/G/B取值范围[0,255]
H取值范围[0,360]
S/V取值范围[0,1]
L取值范围[0,100]
a/b取值范围[127,-128]
*/
Mat imgConvert = new Mat();
CvInvoke.CvtColor(img, imgConvert, ColorConversion.Bgr2Gray);
CvInvoke.Imshow("img4", img4);
mat类和 Image
Image imgTmp = srcImg.ToImage(); ; //mat转image
Mat dstImg = new Mat();
CvInvoke.BitwiseAnd(imgTmp, imgTmp, dstImg); //image 转 mat
针对图像像素点的操作: