动画网页制作网站,怎样进入谷歌网站,射阳做网站多少钱,视频开放api文章目录用.py文件运行yolo模型设置默认终端启动虚拟环境在.py文件中输入测试代码启动测试代码的指令得到测试结果测试代码二保存检测结果模型预测部分常见参数及使用方法介绍安装 jupyterlabjupyterlab 使用用.py文件运行yolo模型 内容对应关系#xff1a; 两种方式实现的是同…文章目录用.py文件运行yolo模型设置默认终端启动虚拟环境在.py文件中输入测试代码启动测试代码的指令得到测试结果测试代码二保存检测结果模型预测部分常见参数及使用方法介绍安装 jupyterlabjupyterlab 使用用.py文件运行yolo模型内容对应关系两种方式实现的是同一目标对bus.jpg进行目标检测参数一一对应命令行方式通过yolo命令直接调用参数包括taskdetect任务目标检测、modepredict模式预测、model模型文件、source输入图片路径。Python API 方式通过导入ultralytics库的YOLO类加载模型后调用预测方法参数与命令行保持一致。设置默认终端注意到如果不进行默认终端设置默认使用的终端为powershell但不能直接运行conda activate yolov8这是因为一、PowerShell 和 CMD 的核心区别CMD 是基于 DOS 的传统命令行工具功能基础主要支持批处理脚本管道仅传递文本无执行策略限制。PowerShell 是现代自动化环境基于.NET支持 cmdlet 和面向对象编程管道传递数据对象自带脚本执行策略默认禁止运行脚本且兼容多数 CMD 命令。二、PowerShell 无法直接执行 conda activate yolov8 的原因默认执行策略限制PowerShell 默认禁止运行任何脚本Conda 激活脚本会被拦截Conda 的activate是专为 CMD 设计的批处理脚本PowerShell 对其环境变量传递支持不足未通过conda init powershell初始化PowerShell 缺少 Conda 环境的适配配置。故需要切换默认终端如下图选择cmd即可之后再次新建终端新建的终端即为cmd终端启动虚拟环境cmd终端中执行conda activate yolov8 yolov8 替换为你创建的虚拟环境的名称我的环境名称为yolov8_new ,故我需要输入的指令为 conda activate yolov8_new 在.py文件中输入测试代码from ultralyticsimportYOLO yoloYOLO(./yolov8n.pt,taskdetect)resultyolo(source./ultralytics/assets/bus.jpg)启动测试代码的指令激活yolov8_new环境后直接用环境内的python命令运行脚本无需指定系统 Python 路径cmd(yolov8_new) E:\biyesheji\ultralytics-mainpython e:/biyesheji/ultralytics-main/my_test.pypython e:/biyesheji/ultralytics-main/my_test.py得到测试结果检测任务核心信息处理对象路径为E:\biyesheji\ultralytics-main\ultralytics\assets\bus.jpg的图片尺寸为 640×480检测结果识别出 4 个行人persons、1 辆公交车bus、1 个停车标志stop sign单图检测耗时76.9ms。性能耗时分解检测流程的各阶段耗时反映模型运行效率预处理preprocess8.3ms负责图片缩放、格式转换等准备工作推理inference76.9ms模型对图片的核心计算过程后处理postprocess24.1ms负责合并重叠检测框、格式化结果等模型输入形状(1, 3, 640, 480)对应 1 张图片、3 通道RGB、宽高 640×480。测试代码二from ultralyticsimportYOLO yoloYOLO(./yolov8n.pt,taskdetect)# 检测测测试照片# pip install mssresult yolo(source./ultralytics/assets/bus.jpg)# screen参数代表检测当前屏幕resultyolo(sourcescrenn)需先安装依赖pipinstallmss -i https://pypi.org/simple/启动程序指令python e:/biyesheji/ultralytics-main/my_test.py# python 后面跟的文件地址就是程序代码所在的地址运行结果保存检测结果代码from ultralyticsimportYOLO yoloYOLO(./yolov8n.pt,taskdetect)# 检测测测试照片# result yolo(source./ultralytics/assets/bus.jpg)# screen参数代表检测当前屏幕#result yolo(sourcescreen)# 检测并保存照片resultyolo(source./ultralytics/assets/bus.jpg, saveTrue)执行指令python e:/biyesheji/ultralytics-main/my_test.py运行结果根据提示查看保存的结果模型预测部分常见参数及使用方法介绍source含义预测的输入源虽列在 “可选参数” 中但实际预测需必选支持图片路径、视频路径、文件夹路径、摄像头如source0、屏幕source“screen”等。调整 用法命令行yolo predict source“bus.jpg”Python APImodel.predict(source“bus.jpg”)show含义是否弹出窗口可视化预测结果默认False不显示。调整 用法场景需要实时查看检测 / 分割效果时开启。命令行yolo predict source“bus.jpg” showTruePython APImodel.predict(source“bus.jpg”, showTrue)save_txt含义是否将预测结果保存为.txt标签文件默认False保存的文件包含目标的类别 ID、归一化坐标等信息。调整 用法场景需要后续用标签文件做二次处理如统计目标数量时开启。命令行yolo predict source“bus.jpg” save_txtTruePython APImodel.predict(source“bus.jpg”, save_txtTrue)save_conf含义保存结果如save_txtTrue时是否包含置信度分数默认False。调整 用法场景需要在标签文件中记录目标的置信度时开启。命令行yolo predict source“bus.jpg” save_txtTrue save_confTruePython APImodel.predict(source“bus.jpg”, save_txtTrue, save_confTrue)save_crop含义是否保存裁剪后的目标区域图片默认False开启后会生成单独的目标截图如检测到的 “bus” 会被单独裁剪保存。调整 用法场景需要提取检测到的目标时开启。命令行yolo predict source“bus.jpg” save_cropTruePython APImodel.predict(source“bus.jpg”, save_cropTrue)hide_labels含义是否隐藏检测框上的类别标签默认False显示标签。调整 用法场景仅需要检测框、不需要类别名称时开启。命令行yolo predict source“bus.jpg” hide_labelsTruePython APImodel.predict(source“bus.jpg”, hide_labelsTrue)hide_conf含义是否隐藏检测框上的置信度分数默认False显示分数。调整 用法场景仅需要检测框 / 类别、不需要置信度时开启。命令行yolo predict source“bus.jpg” hide_confTruePython APImodel.predict(source“bus.jpg”, hide_confTrue)vid_stride含义视频预测的帧率步长默认1处理每 1 帧如设为2则每隔 1 帧处理 1 帧。调整 用法场景视频处理速度慢时增大该值如vid_stride2可减少处理帧数、提升速度但会降低结果连续性。命令行yolo predict source“video.mp4” vid_stride2Python APImodel.predict(source“video.mp4”, vid_stride2)line_thickness含义检测框的线条粗细单位像素默认3。调整 用法场景图片分辨率高时可调大如line_thickness5让检测框更清晰分辨率低时调小避免遮挡目标。命令行yolo predict source“bus.jpg” line_thickness5Python APImodel.predict(source“bus.jpg”, line_thickness5)visualize含义是否可视化模型的中间层特征图默认False。调整 用法场景模型调试如分析特征提取效果时开启。命令行yolo predict source“bus.jpg” visualizeTruePython APImodel.predict(source“bus.jpg”, visualizeTrue)augment含义是否对输入源做数据增强如翻转、缩放默认False。调整 用法场景需要提升预测的鲁棒性如应对不同角度的目标时开启但会增加预测耗时。命令行yolo predict source“bus.jpg” augmentTruePython APImodel.predict(source“bus.jpg”, augmentTrue)agnostic_nms含义是否使用 “类别无关的 NMS非极大值抑制”默认False开启后不同类别之间的重叠检测框也会被抑制。调整 用法场景多类别目标严重重叠时可减少冗余框但可能误删不同类的合理框。命令行yolo predict source“bus.jpg” agnostic_nmsTruePython APImodel.predict(source“bus.jpg”, agnostic_nmsTrue)classes含义按类别过滤预测结果仅保留指定类别的目标如classes0仅保留 “person” 类、classes[0,2]保留 “person” 和 “car” 类。调整 用法场景仅关注特定类别的目标时使用类别 ID 对应 COCO 数据集的类别或自定义数据集的类别。命令行yolo predict source“bus.jpg” classes5仅检测 “bus” 类COCO 中 5 对应 busPython APImodel.predict(source“bus.jpg”, classes[5])retina_masks含义是否使用高分辨率的分割掩码默认False仅在分割模型如 yolov8n-seg.pt 中生效。调整 用法场景需要更精细的分割区域时开启但会增加内存占用。命令行yolo segment predict source“bus.jpg” retina_masksTruePython APImodel.predict(source“bus.jpg”, retina_masksTrue)需加载分割模型boxes含义在分割预测中是否显示检测框默认True仅在分割模型中生效。调整 用法场景仅需要分割掩码、不需要检测框时设为False。命令行yolo segment predict source“bus.jpg” boxesFalsePython APImodel.predict(source“bus.jpg”, boxesFalse)需加载分割模型在官网中可以查到其他的选项的参数详细说明安装 jupyterlab确保你在所用的虚拟环境中执行以下指令# 用官方源安装 JupyterLabpipinstalljupyterlab -i https://pypi.org/simple/# 国内靠谱镜像如清华源pipinstalljupyterlab -i https://pypi.tuna.tsinghua.edu.cn/simple/JupyterLab 是 Jupyter 项目推出的下一代交互式开发环境IDE是经典 Jupyter Notebook 的升级版核心用于数据科学、机器学习、代码调试与文档编写以下是核心说明一、核心定位JupyterLab 以 “交互式计算” 为核心整合了代码编辑、文本编写、数据可视化、终端操作等能力支持 Python、R、Julia 等数十种编程语言核心适配 Python是数据科学、机器学习如 YOLOv8 开发场景下的主流工具。核心 变为交互式的编程二、核心优势对比传统 Notebook / 其他 IDE一站式开发同界面可打开代码文件.py、Jupyter 笔记本.ipynb、Markdown 文档、终端、图片 / 表格等无需切换软件支持多窗口拆分、拖拽布局适配复杂的代码 文档 数据联动场景比如一边写 YOLOv8 代码一边看检测结果可视化一边记实验笔记。完全兼容 Jupyter Notebook可直接打开、编辑、运行传统 .ipynb 笔记本文件保留 “代码块逐行运行”“实时输出结果” 的核心特性同时新增更多便捷功能如代码补全、语法高亮、一键格式化。轻量化 灵活基于浏览器运行无需安装厚重客户端启动后本地访问 localhost:8888 即可使用支持扩展插件如代码折叠、主题美化、版本控制可按需定制功能。交互性极强代码块运行结果如 YOLOv8 的检测结果、数据图表、打印日志实时显示在代码下方支持增量调试改一行运行一行适合算法迭代、参数调优。三、与你的场景YOLOv8 开发的适配性可在 JupyterLab 中编写 / 运行 YOLOv8 代码逐块调试比如先加载模型、再测试单张图片预测、最后调整参数实时查看检测结果可视化可整合 Markdown 笔记记录实验参数、结果分析比如 “conf0.3 时检测准确率 XX%”形成可复现的实验文档内置终端可直接执行 Conda 命令如激活环境、安装依赖、YOLOv8 命令行指令无需切换系统终端。四、核心使用流程极简版安装后执行 jupyter lab 启动自动打开浏览器界面新建 “Python 笔记本.ipynb” 或直接打开 .py 文件编写代码块如 YOLOv8 预测代码按 ShiftEnter 运行实时查看结果可保存文件、导出为 PDF/HTML便于分享实验结果。jupyterlab 使用创建一个.ipynd文件点击选择内核然后选择需要使用的虚拟环境。3 输入测试代码并运行4 点击 5 在弹出的输入框中输入 result 并运行6 再次添加代码并运行格式化importmatplotlib.pyplot as plt# 这是 Jupyter Notebook 的 “魔法命令”作用是让matplotlib绘制的图像直接嵌入到 Notebook 单元格中而非弹出独立窗口适配交互式开发场景。%matplotlib inline# [...,::-1]将 BGR 格式转换为 RGB 格式 ——matplotlib的imshow默认要求 RGB 格式若不转换会出现颜色异常如蓝色变红色plt.imshow(result[0].plot()[...,::-1])result[0].boxes输出结果转为numpy的示范8 注意事项第一点为啥必须加%matplotlib inline你在 Jupyter 里想看到 YOLO 的检测结果图比如带框的图片必须先写%matplotlib inline这行。因为 YOLO 自己把 “画图的显示方式” 设成了 “只在后台偷偷画、不往页面上显示” 的模式加了这行代码才能让画好的检测图直接显示在 Jupyter 页面里 —— 不然你跑了代码也看不到结果图。第二点为啥要重新加载模型比如你第一次用模型预测时把 “置信度阈值” 设成了 0.5后来想改成 0.3直接改参数再跑预测是没用的。因为模型加载一次后会 “记住” 第一次的参数必须重新写 “加载模型” 的代码比如重新写model YOLO(‘yolov8n.pt’)新参数才会生效 —— 不然改了参数也是白改模型还按老参数跑。9 补充一、 YOLOv8 结果的result.boxes对象在 YOLOv8 预测返回的Results对象中result.boxes存储的是当前图片所有检测目标的核心检测框信息是多个Box对象的集合包含的关键数据坐标信息支持多种格式如xyxy像素级左上角 右下角坐标、xywh像素级中心坐标 宽高、xyxyn归一化坐标等置信度conf检测框对应目标的置信度0-1 的数值代表模型对该目标的判断确信程度类别 IDcls检测目标对应的类别索引如 COCO 数据集里 0 对应 “person”、5 对应 “bus”附加信息若开启目标跟踪还会包含track_id跟踪 ID用于关联不同帧的同一目标。二、保存到文件的 “boxes 文件”如 labels 目录下的 txt当设置save_txtTrue时YOLOv8 会生成以.txt为后缀的 “boxes 文件”存于runs/detect/predict/labels目录每行对应一个检测框内容格式为基于归一化坐标类别IDx_centery_centerwidthheight[置信度]类别 ID目标对应的类别索引x_center/y_center/width/height检测框的中心坐标、宽、高均为相对于图片宽高的归一化值范围 0-1适配不同尺寸图片置信度仅开启save_confTrue时包含代表该检测框的置信度。