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

YOLOv8的Python基础--函数篇2

1. YOLOv8 模型相关函数

函数用途参数说明返回值示例
model.train()训练YOLOv8模型。data: 数据集配置文件路径(YAML格式)。
epochs: 训练轮次。
imgsz: 输入图像尺寸。
无(模型权重自动保存到runs/目录)。model.train(data="coco.yaml", epochs=100)
model.val()在验证集上评估模型性能。data: 数据集路径(可选,默认使用训练时的配置)。
split: 验证集划分(如val)。
包含mAP、精度等指标的字典。results = model.val()
model.predict()对输入图像/视频进行目标检测。source: 输入路径(图像/视频/摄像头)。
conf: 置信度阈值。
save: 是否保存结果。
检测结果列表(每个元素对应一个输入)。results = model.predict("image.jpg", conf=0.5)

2. OpenCV (cv2) 函数

函数用途参数说明返回值示例
cv2.imread()读取图像文件。filename: 图像路径。
flags: 读取模式(如cv2.IMREAD_COLOR,默认BGR格式)。
NumPy数组(H×W×C),失败返回Noneimg = cv2.imread("test.jpg")
cv2.rectangle()在图像上绘制矩形框。img: 目标图像。
pt1: 左上角坐标。
pt2: 右下角坐标。
color: 边框颜色(BGR)。
thickness: 线宽。
无(直接修改输入图像)。cv2.rectangle(img, (10,10), (100,100), (255,0,0), 2)
cv2.putText()在图像上添加文本。img: 目标图像。
text: 字符串。
org: 文本左下角坐标。
fontFace: 字体类型。
fontScale: 字体大小。
color: 文本颜色(BGR)。
无(直接修改输入图像)。cv2.putText(img, "Text", (50,50), cv2.FONT_HERSHEY_SIMPLEX, 1, (0,255,0), 2)
cv2.imwrite()保存图像到文件。filename: 保存路径。
img: 图像数据。
params: 编码参数(如JPEG质量)。
布尔值(成功为True)。cv2.imwrite("output.jpg", img)

3. PyTorch/Tensor 操作函数

函数用途参数说明返回值示例
tensor.cpu()将张量从GPU移动到CPU。无参数。CPU上的张量。cpu_tensor = tensor.cpu()
tensor.numpy()将PyTorch张量转换为NumPy数组。无参数(需先调用.cpu()确保数据在CPU上)。NumPy数组。array = tensor.cpu().numpy()
len()返回对象的长度(如列表、张量等)。obj: 可迭代对象(如列表、张量、字符串)。整数(元素数量)。num_boxes = len(boxes)

4. 其他关键函数

函数用途参数说明返回值示例
plt.imshow()显示图像(Matplotlib)。X: 图像数据(需为RGB格式)。
cmap: 颜色映射(如gray)。
无(显示图像窗口)。plt.imshow(cv2.cvtColor(img, cv2.COLOR_BGR2RGB))
plt.show()弹出Matplotlib图像窗口。无参数。无。plt.show()
os.environ.get()获取环境变量值。key: 变量名。
default: 默认值(可选)。
变量值或Noneos.environ.get("KMP_DUPLICATE_LIB_OK")

参数详细说明示例

model.predict() 的常用参数
参数名类型默认值说明
sourcestr必填输入源路径(如"image.jpg""video.mp4"或摄像头ID 0)。
conffloat0.25置信度阈值(0~1),过滤低置信度检测框。
ioufloat0.7非极大抑制(NMS)的IoU阈值。
saveboolFalse是否保存检测结果到runs/detect/目录。
cv2.imread() 的读取模式
模式标志说明
cv2.IMREAD_COLOR默认,加载BGR三通道图像(忽略Alpha)。
cv2.IMREAD_GRAYSCALE加载灰度图像(单通道)。
cv2.IMREAD_UNCHANGED保留原始通道(如包含Alpha通道)。

相关文章:

  • 三款实用工具推荐:配音软件+Windows暂停更新+音视频下载!
  • WebRTC通信原理与流程
  • 解构与重构:自动化测试框架的进阶认知之旅
  • 学习整理使用php将SimpleXMLElement 对象解析成数组格式的方法
  • Qt重写相关事件,原来的默认功能是不是丢失了?
  • CVE体系若消亡将如何影响网络安全防御格局
  • 【AI News | 20250507】每日AI进展
  • windows下docker的使用
  • day18 python聚类分析对数据集模型性能影响
  • 1.3 Expression.Lambda表达式树的介绍
  • LVS中的DR模式,直接路由模式
  • LeetCode:二叉树的最大深度
  • 基于DR模式的LVS集群案例
  • oracle 触发器与commit的先后执行顺序
  • Linux如何安装AppImage程序
  • Postman中https和http的区别是什么?
  • 2025数字中国创新大赛-数字安全赛道数据安全产业积分争夺赛决赛Writeup
  • fedora系统详解详细版本
  • 信息系统项目管理师-软考高级(软考高项)​​​​​​​​​​​2025最新(十)
  • 初学Python爬虫
  • 电子凭证会计数据标准推广至全国
  • 证监会副主席李明:近期将出台深化科创板、创业板改革政策措施
  • 国家统计局答澎湃:我国投资的潜力依然巨大,支撑投资增长的有利因素仍然比较多
  • 国家统计局:4月社会消费品零售总额同比增长5.1%
  • 山东发布高温橙警:预计19日至21日局地可达40℃
  • 河南发布高温橙警:郑州、洛阳等地最高气温将达40℃以上