1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > OpenCV:利用python-cv2绘制图形

OpenCV:利用python-cv2绘制图形

时间:2024-04-19 20:59:42

相关推荐

OpenCV:利用python-cv2绘制图形

文章目录

1.绘制线段2.绘制矩形、圆形和椭圆3.绘制任意多边形4.文字图片绘制

1.绘制线段

cv2.line(img, pt1, pt2, color, thickness, lineType):

-img: 目标图像-pt1: 起点-pt2: 终点-color: 绘制的颜色-thickness: 线段宽度-lineType: 线段类型

import cv2import numpy as npnewImageInfo = (200,200,3)dat = np.zeros(newImageInfo, np.uint8)# 绘制线段 1.目标图像 2.begin 3.end 4.colorcv2.line(dat, (0,0), (200, 200), (0,,255))cv2.line(dat, (50, 100), (150, 100), (0,255,255), 20)cv2.imshow('dat', dat)cv2.waitKey(0)

2.绘制矩形、圆形和椭圆

cv2.rectangle(img, pt1, pt2, color,thickness,lineType)

cv2.circle(img, center, radius, color,thickness,lineType

cv2.ellipse(mg, center, axes, angle, startAngle, endAngle, color,thickness,lineType)

cv2.ellipse?

import cv2import numpy as npnewImageInfo = (200,200,3)dat = np.zeros(newImageInfo, np.uint8)# -1表示填充cv2.rectangle(dat, (50,50), (150, 150), (0, 255, 0), -1) # 2.center 3 半径 4 color cv2.circle(dat, (100,100), (25), (0,0,255),2)# 1.图像 2 圆心 3 轴 4 角度 5 起始角度 6 终止角度 7 颜色 8宽度cv2.ellipse(dat,(100,100), (50,25),0,0,360,(255,0,0),2)cv2.imshow('dat', dat)cv2.waitKey(0)

3.绘制任意多边形

cv2.polylines(img, pts, isClosed, color,thickness,lineType)

import cv2import numpy as npnewImageInfo = (200,200,3)dat = np.zeros(newImageInfo, np.uint8)points = np.array([[25,25], [50, 25], [25, 75], [150, 175], [100, 75]], np.int32)points = points.reshape((-1, 1, 2))cv2.polylines(dat, [points], True, (0,255,255))cv2.imshow('dat', dat)cv2.waitKey(0)

4.文字图片绘制

绘制文字

cv2.putText(img, text, org, fontFace, fontScale, color,thickness,lineType)

import cv2import numpy as npimg = cv2.imread('img.jpg', 1)font = cv2.FONT_HERSHEY_SIMPLEX#2 text 3 坐标起点 4 字体类型 5 字体大小 6 颜色 7粗细 8 linetypecv2.putText(img,"this is flower",(100, 160), font, 1, (200,100,255),2,cv2.LINE_AA)cv2.imshow('img', img)cv2.waitKey(0)

绘制图片

import cv2import numpy as npimg = cv2.imread('img.jpg', 1)height = int(img.shape[0] * 0.3)width = int(img.shape[1] * 0.3)imgResize = cv2.resize(img, (width, height))for i in range(height):for j in range(width):img[i + 125, j + 125] = imgResize[i, j]cv2.imshow('img', img)cv2.waitKey(0)

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。