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)
      

      openCV(三)绘制几何图形_第1张图片

  2. 矩形

    • 函数:img = rectangle(img, pt1, pt2, color[, thickness[,lineType[, shift]]])
      • pt1:表示绘制的矩形的左上角
      • pt2:表示绘制的矩形的右下角
        openCV(三)绘制几何图形_第2张图片
  3. 圆形

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

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

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

        openCV(三)绘制几何图形_第3张图片openCV(三)绘制几何图形_第4张图片

  4. 椭圆

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

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

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

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

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

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

        openCV(三)绘制几何图形_第5张图片 openCV(三)绘制几何图形_第6张图片

  5. 多边形

    • 函数:img = polylines(img, pts, isClosed, color[, thickness[,lineType[, shift]]])
      • pts:表示绘制多边形的曲线阵列
      • isClosed:表示是否闭合,True表示闭合
        openCV(三)绘制几何图形_第7张图片
  6. 文字

    • 函数 :img = putText(img, text, org, fontFace, fontScale, color[, thickness[,lineType[, bottomLeftOrigin]]])
      • text:表示要绘制的文字
      • org:表示要绘制的位置,文字的左下角
      • fontFace:表示字体类型
      • fontScale:表示字体大小
      • bottomLeftOrigin:如果为真,则数据原点位于左下角,否则在左上角
        openCV(三)绘制几何图形_第8张图片

你可能感兴趣的:(opencv,计算机视觉,python)