OpenCV,全称Open Source Computer Vision Library,是一个开源的计算机视觉库,包含了众多图像处理和计算机视觉的功能。在这个“opencv绘制形状与文字实例”中,我们将会深入探讨如何利用OpenCV在图像上绘制各种形状以及添加文字,这些都是图像处理和机器学习项目中常见的需求。 让我们从基础开始,讲解如何在图像上画线。OpenCV提供了`line()`函数,它接受四个参数:起始点,结束点,线条颜色,以及线条的宽度。例如,要在图像上画一条从(10,10)到(200,200)的红色线条,我们可以这样写: ```python import cv2 import numpy as np img = np.zeros((500, 500, 3), np.uint8) cv2.line(img, (10, 10), (200, 200), (0, 0, 255), 2) cv2.imshow('Line', img) cv2.waitKey(0) cv2.destroyAllWindows() ``` 接下来是画矩形,OpenCV的`rectangle()`函数可以实现。同样,我们需要指定矩形的顶点坐标、颜色和线条宽度。例如,画一个左上角在(10, 10),右下角在(400, 400)的蓝色矩形: ```python cv2.rectangle(img, (10, 10), (400, 400), (255, 0, 0), 2) ``` 画椭圆和圆则可以使用`ellipse()`函数。椭圆需要中心点、轴长和旋转角度,而圆只需要中心点和半径。例如,画一个中心在(250, 250),长轴半径200,短轴半径100,颜色为绿色的椭圆: ```python cv2.ellipse(img, (250, 250), (200, 100), 0, 0, 360, (0, 255, 0), 2) ``` 对于画圆,比如半径为100,中心在(300, 300)的红色圆: ```python cv2.circle(img, (300, 300), 100, (0, 0, 255), 2) ``` 多边形的绘制可以使用`polylines()`函数,它接受一个点的序列和是否闭合的布尔值。例如,画一个三角形: ```python pts = np.array([[10, 5],[20, 30],[70, 20]], np.int32) pts = pts.reshape((-1,1,2)) cv2.polylines(img,[pts],True,(0,255,255),3) ``` 至于添加文字,OpenCV的`putText()`函数可以做到。需要指定文本字符串、位置、字体、字体大小、颜色以及文本厚度。例如,在(50, 50)位置写上"Hello, OpenCV!",字体大小为30,颜色为蓝色: ```python cv2.putText(img, "Hello, OpenCV!", (50, 50), cv2.FONT_HERSHEY_SIMPLEX, 3, (255, 0, 0), 2) ``` `random_line()`函数可能是用来随机绘制线条的,这可以增加图像的复杂性和多样性,有助于测试和训练算法。 这些基本操作是OpenCV图像处理中的基石,通过它们,你可以创建复杂的图像标注、可视化结果,甚至构建交互式的图像应用。这个实例下载包含了这些功能的实际应用,对于初学者和进阶者都是很好的学习资源。通过实践这些代码,你将更深入地理解OpenCV在图像处理中的强大功能。
- 1
- 2
- 3
- qq1608162019-11-06挺不错的资源,画线,画矩形,画圆,椭圆都给封成接口了,很清晰,以后可以直接拿来用,谢谢分享
- 粉丝: 3
- 资源: 44
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于OPENMV的视觉智能小车(车可自己动,实现方块,颜色识别)
- C# usb hid 设备控制
- MYSQL window安装包,版本8.0
- 三菱PLC药片自动装瓶机控制系统设计自动药片装瓶机电气控制
- 图形用户界面(GUI)应用程序
- 企业商户自动发卡运营版带WAP手机端【多种主题+亲测可用】
- Unity程序开发:创建一个2D平台游戏
- 矩形三维随机裂隙网络 使用COMSOL with Matlab接口编程 可以直接导入COMSOL中,无需CAD,无需提取数据,方便快捷可以直接计算 裂隙由matlab编程生成,能够生成两组不同产
- python+celery+AWVS 实现的漏洞扫描器
- 1.3M宽干式拉丝机(双道砂带)sw16可编辑全套技术资料100%好用.zip
- C# USB HID 读卡器 (CPU卡和IC卡的读和写)上位机源码
- EWSA中文版使用教程.doc
- 罗技鼠标接收器与罗技鼠标相连的软件
- 履带车底盘sw16全套技术资料100%好用.zip
- h2database 2.2.224 版本 Jar包
- 基于Springboot的梦宇飞行培训管理系统