上手OpenCV_GUI-L03-绘图
目标
【上手OpenCV_GUI-L03-绘图】学习使用OpenCV绘制几何图型。
学习的函数:cv.line(), cv.circle(), cv.rectangle(), cv.ellipse(), cv.putText()...
通用参数解释
- img:图型对象
- color:形状的颜色。对于BGR,(255,0,0)代表蓝色
- thickness:线的宽度。如果设置为-1,封闭图形,例如:圆形,会被完全填充。
- lineType:线条的类型,cv.LINE_AA反锯齿线。
import numpy as np
import cv2 as cv# Create a black image
img = np.zeros((512,512,3), np.uint8)
# Draw a diagonal blue line with thickness of 5 px
cv.line(img,(0,0),(511,511),(255,0,0),5)
画矩形
cv.rectangle(img,(384,0),(510,128),(0,255,0),3)
画圆
cv.circle(img,(447,63), 63, (0,0,255), -1)
画椭圆
cv.ellipse(img,(256,256),(100,50),0,0,180,255,-1)
画多边形
pts = np.array([[10,5],[20,30],[70,20],[50,10]], np.int32)
pts = pts.reshape((-1,1,2))
cv.polylines(img,[pts],True,(0,255,255))
加文字
font = cv.FONT_HERSHEY_SIMPLEX
cv.putText(img,'OpenCV',(10,500), font, 4,(255,255,255),2,cv.LINE_AA)
完整代码
# coding: utf-8
import numpy as np
import cv2 as cv# Create a black image
img = np.zeros((512, 512, 3), np.uint8)
# Draw a diagonal blue line with thickness of 5 px
cv.line(img, (0, 0), (511, 511), (255, 0, 0), 5)cv.rectangle(img, (384, 0), (510, 128), (0, 255, 0), 3)cv.circle(img, (447, 63), 63, (0, 0, 255), -1)cv.ellipse(img, (256, 256), (100, 50), 0, 0, 180, 255, -1)pts = np.array([[10, 5], [20, 30], [70, 20], [50, 10]], np.int32)
pts = pts.reshape((-1, 1, 2))
cv.polylines(img, [pts], True, (0, 255, 255))font = cv.FONT_HERSHEY_SIMPLEX
cv.putText(img, 'OpenCV', (10, 500), font, 4, (255, 255, 255), 2, cv.LINE_AA)cv.imshow('image', img)
cv.waitKey(0)
cv.destroyAllWindows()
资料 上手OpenCV-目录
推荐阅读
- opencv|opencv C++模板匹配的简单实现
- Java|Java OpenCV图像处理之SIFT角点检测详解
- OpenCV|OpenCV-Python实战(18)——深度学习简介与入门示例
- OpenCV|OpenCV for Unity 通过WebCamTextureToMatHelper帮助类来获取摄像头的画面
- vue快速上手-3
- opencv学习
- 分享5个短小精悍的Python趣味脚本|分享5个短小精悍的Python趣味脚本,适合小白上手!
- docker资源小结
- opencv|图像处理之椒盐噪声的添加与去除
- opencv|网络爬虫入门练习