EmguCv常用数据类型及容器间转换

常用容器间转换 

//常用容器间转换
Bitmap bitmap = new Bitmap(100, 100);
Image<Bgr, byte> img = new Image<Bgr, byte>(imgBox.Width,imgBox.Height);
Mat mat = new Mat();
Bitmap bitmap2 = img.Bitmap;//Image->Bitmap
Image<Bgr, byte> img2 = new Image<Bgr, byte>(bitmap);//Bitmap->Image
Mat mat2 = img.Mat;//Image->Mat
Image<Bgr, byte> img3 = mat.ToImage<Bgr, byte>();//Mat->Image
//线段
LineSegment2D line1 = new LineSegment2D(new Point(0, 0), new Point(50, 50));
LineSegment2D line2 = new LineSegment2D(new Point(0, 50), new Point(50, 0));
double length = line1.Length;
double angle= line1.GetExteriorAngleDegree(line2);//计算两直线夹角
img.Draw(line1, new Bgr(Color.Red), 5);
imgBox.Image = img;
//绘制字符串
            string str = "Hello xu";
            img.Draw(str, new Point(50, 50), Emgu.CV.CvEnum.FontFace.HersheyComplexSmall, 1, new Bgr(Color.Red), 2);
            imgBox.Image = img;
//圆
            CircleF circle = new CircleF(new PointF(100, 100), 50);//指定圆形位置、半径
//三角形
            Triangle2DF tri = new Triangle2DF(new PointF(50, 0), new PointF(0, 50), new PointF(100, 50));
            PointF centerOid= tri.Centeroid;//重心
            PointF v0= tri.V0;
//矩形
            RotatedRect rect1 = new RotatedRect(new PointF(100, 100), new SizeF(50, 50), 0);
            Rectangle rect2 = new Rectangle(50, 50, 100, 100);

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值