openCV(三)绘制几何图形

openCV内置了几何图形绘制函数,通过简单的操作就可以绘制几何图形。例如,可以绘制直线、矩形、圆形、椭圆、多边形、文字等,分别对应函数cv2.line()cv2.rectangle()cv2.circle()cv2.ellipse()cv2.polylines()cv2.putText()
下面来详细看一下这些函数的用法:

  1. 直线

    • 函数:img = line(img, pt1, pt2, color[, thickness[,lineType[, shift]]])

      • img:表示要绘制的图像
      • pt1:表示绘制直线的起始点坐标
      • pt2:表示绘制直线的终止点坐标
      • color:表示直线的颜色,需要传入BGR元组
      • thickness:表示绘制直线的宽度
      • lineType:表示绘制直线的类型
      • shift:表示点坐标系中的小数位数
    • 实际应用:画一条对角线的直线

      import cv2
      import numpy as np
      img = np.zeros((256,256,3),np.uint8)
      cv2.line(img,(0,0),(255,255),(255,255,255),5)
      cv2.imshow("draw line", img)
      cv2.waitKey(0)
      

      在这里插入图片描述

  2. 矩形

    • 函数:img = rectangle(img, pt1, pt2, color[, thickness[,lineType[, shift]]])
      • pt1:表示绘制的矩形的左上角
      • pt2:表示绘制的矩形的右下角
        在这里插入图片描述
  3. 圆形

    • 函数:img = circle(img, center, radius, colorr[, thickness[,lineType[, shift]]])
      • center:表示要绘制圆的圆心

      • raius:表示要绘制圆的半径

      • 注意:如果将thickness设为-1,那么会绘制实心圆

        在这里插入图片描述在这里插入图片描述

  4. 椭圆

    • 函数:img = ellipse(img, center, axes, angle, startAngle, endAngle,color[, thickness[,lineType[, shift]]])
      • center:表示要绘制的椭圆圆心

      • axes:表示轴的长度(短半径(X)和长半径(Y))

      • angle:表示偏转的角度(逆时针旋转)

      • starAngle:表示圆弧起始的角度(逆时针)

      • endAngle:表示圆弧终止的角度(逆时针)

      • 注意:起始角度和终止角度不足360°时,椭圆不闭合,画的是圆弧。同画圆,如果将thickness设为-1,那么会绘制实心椭圆

        在这里插入图片描述 在这里插入图片描述

  5. 多边形

    • 函数:img = polylines(img, pts, isClosed, color[, thickness[,lineType[, shift]]])
      • pts:表示绘制多边形的曲线阵列
      • isClosed:表示是否闭合,True表示闭合
        ](https://img-blog.csdnimg.cn/efce6306279e47519025d2c16316693a.png)
  6. 文字

    • 函数 :img = putText(img, text, org, fontFace, fontScale, color[, thickness[,lineType[, bottomLeftOrigin]]])
      • text:表示要绘制的文字
      • org:表示要绘制的位置,文字的左下角
      • fontFace:表示字体类型
      • fontScale:表示字体大小
      • bottomLeftOrigin:如果为真,则数据原点位于左下角,否则在左上角
        在这里插入图片描述
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值