当前位置: 首页 > news >正文

opencv基础的图像操作

目录

1.安装opencv-python

2.基础的图像操作

3.绘制几何图形

3.1.绘制直线

3.2.绘制矩形

3.3.绘制圆形

3.4.向图像中添加文字

总结


1.安装opencv-python

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-python

2.基础的图像操作

# 导入库
import cv2
import numpy as np# 读取图像
img=cv2.imread("./src/jietu.png")# 显示图像
cv2.imshow("img",img) # 如果不写窗口名称,则默认为窗口名称为图像文件名cv2.waitKey(0) # 0表示无限等待# 保存图像
cv2.imwrite("./src/jietu1.png",img) # cv2.imwrite(arg1,arg2) arg1为保存的文件名,arg2为图像

3.绘制几何图形

原图:

3.1.绘制直线

# 导入库
import numpy as np
import cv2img=cv2.imread("./src/huitu.jpg")
cv2.imshow("img",img)# 绘制直线
# cv2.line(img,start,end,color,thickness)
# img:图像
# start:起点坐标
# end:终点坐标
# color:颜色
# thickness:线条粗细img_line=cv2.line(img,(20,10),(50,240),(0,0,255),3)
cv2.imshow("img_line",img_line)cv2.waitKey(0)

绘制效果图

3.2.绘制矩形

# 绘制矩形
# cv2.rectangle(img,start,end,color,thickness)img_rect=cv2.rectangle(img,(50,60),(300,200),(0,255,0),2)
cv2.imshow("img_rect",img_rect)

绘制效果图

3.3.绘制圆形

# 绘制圆形
# cv2.circle(img,center,radius,color,thickness)img_circle=cv2.circle(img,(150,150),30,(255,0,0),2)
cv2.imshow("img_circle",img_circle)

绘制效果图

3.4.向图像中添加文字

# 向图像中添加文字
# cv2.putText(img,text,station, font, Fontscale ,color,thickness,cv2.LINE_AA)
# - img: 图像# - text:要写入的文本数据# - station:文本的放置位置# - font:字体样式# - Fontscale :字体大小# - thickness字体线条宽度# - cv2.LINE_AA#   最后一个参数 `cv2.LINE_AA` 表示使用反走样(Anti-Aliasing)技术来绘制文本边框。img_text=cv2.putText(img,"happy",(350,50),cv2.FONT_HERSHEY_SIMPLEX,1,(0,255,255),2,cv2.LINE_AA)
cv2.imshow("img_text",img_text)

绘制效果图 

总结

通过以上示例,我们学习了 OpenCV 的基本安装方法和图像处理操作,包括图像的读取、显示、保存,以及在图像上绘制直线、矩形、圆形和添加文字。这些都是计算机视觉应用的基础,掌握它们后可以进一步探索更复杂的图像处理和分析任务。

http://www.xdnf.cn/news/1078273.html

相关文章:

  • 回顾JAVA中的锁机制
  • 2-RuoYi-UI管理平台的启动
  • 少样本学习在计算机视觉中的应用:原理、挑战与最新突破
  • 第8章网络协议-NAT
  • ai之RAG本地知识库--基于OCR和文本解析器的新一代RAG引擎:RAGFlow 认识和源码剖析
  • HTTP 协议深入理解
  • 【51单片机单595点阵8按键调节速度方向花样】2022-6-18
  • 运用逆元优化组合计算#数论
  • monorepo + Turborepo --- 构建仓库结构
  • 创客匠人解构知识付费爆单密码:产品力打造与 IP 变现的深度耦合
  • [转载]数据库锁分布式锁实现接口幂等性
  • 如何将文件从 iPhone 传输到 Android(新指南)
  • BUUCTF在线评测-练习场-WebCTF习题[ZJCTF 2019]NiZhuanSiWei1-flag获取、解析
  • 02-更换证件背景
  • 节点小宝内网穿透实测:告别“无网”烦恼,让你的设备“触手可及”
  • python实现基于资金分布、RSI及布林策略的方案
  • 智慧赋能高压并网:分布式光伏监控系统在5.88MW物流园项目的实践解析
  • [环境配置] 3. 使用 UV管理 Python 环境
  • 416. 分割等和子集
  • docker拉取redis并使用
  • STEP-BACK PROMPTING:退一步:通过抽象在大型语言模型中唤起推理能力
  • MySQL的5.0和8.0版本区别
  • 基于[coze][dify]搭建一个智能体工作流,使用第三方插件抓取热门视频数据,自动存入在线表格
  • vscode 下 LaTeX 使用配置
  • (一)大语言模型的关键技术<-AI大模型构建
  • Redis搭建集群模式
  • 微信小程序入门实例_____打造你的专属单词速记小程序
  • MAC 多应用切换技巧,单应用切换技巧
  • 文心快码答用户问|Comate AI IDE专场
  • C#调用C++导出的dll怎么调试进入C++ DLL源码