在VSCode中使用Ultralytics扩展

概述

Visual Studio Code深受全球开发人员的欢迎,并在2021 年、2022 年2023 年和2024 年的 Stack Overflow 开发人员调查中被评为最受欢迎的软件。由于 VS Code 具有高度的定制性、内置功能、广泛的兼容性和可扩展性,因此有如此多的开发人员使用它也就不足为奇了。

VS Code 的Ultralytics-snippets 扩展能够使开发者显著加快开发Ultralytics应用。

安装Ultralytics-snippets扩展

打开VSCode扩展,搜索Ultralytics,选择Ultralytics-snippets,点击“安装”即可。

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

使用Ultralytics-snippets扩展

在开发Python程序时,使用Ultralytics-snippets扩展,具有以下优势:

  • **智能代码自动补全:**利用为Ultralytics API 量身定制的高级代码完成建议,更快、更准确地编写代码。
  • **提高开发速度:**通过消除重复编码任务和利用预置代码块片段来节省时间。
  • **提高代码质量:**利用智能代码自动补全功能,编写更简洁、更一致、无差错的代码。
  • **简化工作流程:**通过自动化常见任务,专注于项目的核心逻辑。

使用代码片段

片段的前缀是 ultra,键入 ultra 将显示一个可能使用的片段列表。还可以使用 Ctrl+Shift+P 打开 VS Code 命令面板 并运行命令 Snippets: Insert Snippet.

在这里插入图片描述

代码片段字段

许多片段的 "字段 "都有默认占位符值或名称。例如,predict方法的输出可以保存到 r, results, detections, preds 或开发人员选择的任何其他python变量,这就是为什么片段(snippets)包括 “字段”。在插入代码片段之后,使用 Tab ⇥,光标就会在字段之间快速移动。选中一个字段后,键入一个新变量名将改变该变量的实例,同时也会改变代码片段中该变量的所有其他实例。

代码片段补全

这些片段尽可能以描述性的方式命名,但这意味着要输入的内容可能会很多,如果目的是为了更快的移动,这将适得其反。 幸运的是,VS Code 可以让用户键入 ultra.example-yolo-predict, example-yolo-predict, yolo-predict甚至 ex-yolo-p 并仍能达到预期的片段选项!如果预定的片段实际上是 ultra.example-yolo-predict,然后使用键盘箭头 ↑ 或 ↓ 突出显示所需的片段,然后按 输入Enter ↵ 或 Tab ⇥ 将插入正确的代码块。
在这里插入图片描述

选择第一行后,自动填入了以下代码:

在这里插入图片描述

片段类别

这些是Ultralytics-snippets 扩展目前可用的片段类别。以后还会添加更多类别,请务必检查更新并启用扩展的自动更新功能。

片段格式:

{PREFIX}.{ROOT}*-{DESCRIPTOR}
  • {PREFIX}ultra
  • {ROOT} 例如 importresults. 至少一个root,也可能有多个,例如 result-boxes.
  • {DESCRIPTOR} 与片段功能相关联,所有单词使用 - 连接.
类别前缀说明
Examplesultra.examples帮助学习或开始使用Ultralytics 的示例代码。示例是文档页面代码的副本或类似代码。
Kwargs`ultra.kwargs通过为traintrackpredictval方法添加包含所有关键字参数和默认值的代码段,加快开发速度。
Importsultra.imports快速导入通用Ultralytics 对象的片段。
Modelsultra.yolo插入代码块,用于初始化各种 模型 (yolo, sam, rtdetr等),包括下拉式配置选项。
Resultsultra.result用于处理推理结果时常用操作的代码块。
Utilitiesultra.util可快速访问Ultralytics 软件包内置的常用实用程序,更多信息请访问简单实用程序页面

使用Examples学习

ultra.examples 对于希望学习如何开始使用Ultralytics YOLO 基础知识的人来说非常有用。示例片段插入后即可运行(有些片段还有下拉选项)。插入代码段后,所有代码都会被选中,并通过使用 Shift ⇑+Enter ↵交互运行.

例如,使用片段 ultra.example-yolo-predict 插入以下代码示例。插入后,唯一可配置的选项是模型比例,可以是以下任何一种: n, s, m, lx.

from ultralytics import ASSETS, YOLO

model = YOLO("yolo11n.pt", task="detect")
results = model(source=ASSETS / "bus.jpg")

for result in results:
    print(result.boxes.data)
    # result.show()  # uncomment to view each result image

加速开发

ultra.examples 外,代码片段都是为了在使用Ultralytics 时让开发工作变得更加简单快捷。在许多项目中,一个常用的代码块是遍历模型predict方法返回的Results 列表。 ultra.result-loop 代码段可以帮助解决这个问题。

使用 ultra.result-loop 将插入以下默认代码(包括注释)。

# reference https://docs.ultralytics.com/modes/predict/#working-with-results

for result in results:
    result.boxes.data  # torch.Tensor array

不过,由于Ultralytics 支持众多tasks, 当处理推理结果时,有其他您可能希望访问的Results属性,这就是代码段字段的强大之处。

在这里插入图片描述

关键字参数

有超过100个关键字参数,可用于各种Ultralytics 任务模式! 要记住的东西太多了,例如如果参数是 save_framesave_frames (应该是 save_frames)就很容易忘记。这就是 ultra.kwargs 片段可以提供的帮助!

插入 predict方法,包括所有推理参数,使用 ultra.kwargs-predict将插入以下代码(包括注释)。

model.predict(
    source=src,  # (str, optional) source directory for images or videos
    imgsz=640,  # (int | list) input images size as int or list[w,h] for predict
    conf=0.25,  # (float) minimum confidence threshold
    iou=0.7,  # (float) intersection over union (IoU) threshold for NMS
    vid_stride=1,  # (int) video frame-rate stride
    stream_buffer=False,  # (bool) buffer incoming frames in a queue (True) or only keep the most recent frame (False)
    visualize=False,  # (bool) visualize model features
    augment=False,  # (bool) apply image augmentation to prediction sources
    agnostic_nms=False,  # (bool) class-agnostic NMS
    classes=None,  # (int | list[int], optional) filter results by class, i.e. classes=0, or classes=[0,2,3]
    retina_masks=False,  # (bool) use high-resolution segmentation masks
    embed=None,  # (list[int], optional) return feature vectors/embeddings from given layers
    show=False,  # (bool) show predicted images and videos if environment allows
    save=True,  # (bool) save prediction results
    save_frames=False,  # (bool) save predicted individual video frames
    save_txt=False,  # (bool) save results as .txt file
    save_conf=False,  # (bool) save results with confidence scores
    save_crop=False,  # (bool) save cropped images with results
    stream=False,  # (bool) for processing long videos or numerous images with reduced memory usage by returning a generator
    verbose=True,  # (bool) enable/disable verbose inference logging in the terminal
)

结论

Ultralytics-Snippets 扩展用于 VS Code,旨在帮助数据科学家和机器学习工程师更高效地使用Ultralytics YOLO 构建计算机视觉应用程序。通过提供预构建的代码片段和有用的示例,开发人员可以专注于创建创新的解决方案。

<think>嗯,用户想知道如何在VSCode中配置YOLOv8的开发环境。首先,我需要回忆一下相关的引用资料。引用[1]提到在VSCode中安装和配置环境,引用[2]是关于YOLOv5的环境配置,但可能步骤类似,引用[3]则是在Mac上配置OpenCV和C++环境,不过部分步骤可能有参考价值。 首先,用户需要安装Python环境,YOLOv8应该需要Python 3.7或更高版本。然后,安装PyTorch,因为YOLOv8基于PyTorch。接下来是安装UltralyticsYOLOv8包,可以通过pip安装。同时,可能需要安装CUDA和cuDNN,如果用户有NVIDIA显卡的话,这样可以启用GPU加速。不过,用户的问题中没有提到是否需要GPU支持,可能需要分情况说明。 接下来,配置VSCode的步骤。用户需要安装Python扩展,然后创建一个项目文件夹,设置虚拟环境。在VSCode中选择正确的Python解释器,这一步引用[2]提到过,通过Ctrl+Shift+P选择Python解释器。然后安装必要的依赖库,比如ultralytics、opencv-python等。 还有,测试环境的部分,需要让用户写一个简单的检测脚本,运行看看是否正常。如果有问题,可能需要检查路径或者依赖项是否正确安装。另外,引用[3]中提到了配置tasks.json文件,但可能对于Python项目来说,这部分不是必须的,除非用户需要编译其他部分。不过用户可能只是需要运行Python脚本,所以可能不需要CMake的配置。 还要注意用户的操作系统,引用[1]和[2]是Windows,引用[3]是Mac,所以可能需要分不同系统说明,但用户的问题没有明确系统,可能需要通用步骤,或者在注意事项里提到不同系统的差异。 最后,生成相关问题,比如如何验证GPU是否启用,或者如何处理依赖冲突等。这些问题可以帮助用户进一步解决可能遇到的问题。 现在需要整理这些步骤,确保逻辑清晰,用户能一步步跟着操作。同时,引用正确的引用来源,比如安装VSCode和选择解释器的步骤来自引用[1]和[2],配置编译任务参考了引用[3],但可能只适用于C++的情况,这里可能不需要。另外,确保所有命令正确,比如pip install ultralytics等。 可能还需要提醒用户安装CUDA和cuDNN的步骤是可选的,如果他们没有GPU,可以跳过,但性能会受影响。同时,虚拟环境的使用是个好习惯,可以避免包冲突。 总之,步骤大概是:安装Python→安装VSCode→配置Python扩展→创建虚拟环境→安装YOLOv8和相关依赖→测试脚本→注意事项和常见问题。这样结构会比较清晰,用户容易跟随。</think>### 如何在 VSCode 中配置 YOLOv8 的运行环境 #### **1. 安装基础环境** - **安装 Python** YOLOv8 要求 Python 3.7 或更高版本。建议使用 [Anaconda](https://www.anaconda.com/) 或 [Miniconda](https://docs.conda.io/en/latest/miniconda.html) 管理 Python 环境。 ```bash conda create -n yolov8_env python=3.8 conda activate yolov8_env ``` - **安装 PyTorch** 根据 GPU 支持情况选择安装命令(以 CUDA 11.8 为例): ```bash # GPU 版本(需 NVIDIA 显卡) pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118 # CPU 版本 pip install torch torchvision torchaudio ``` - **安装 YOLOv8** 通过 `ultralytics` 包安装 YOLOv8: ```bash pip install ultralytics ``` --- #### **2. 配置 VSCode** - **安装 VSCode 扩展** 打开 VSCode,安装以下扩展: - **Python**(官方扩展,支持 Python 开发) - **Jupyter**(可选,用于调试 Notebook) - **Pylance**(代码自动补全)[^1][^2] - **设置 Python 解释器** 1. 按 `Ctrl+Shift+P` 打开命令面板,输入 `Python: Select Interpreter`。 2. 选择步骤 1 中创建的 `yolov8_env` 虚拟环境。 - **配置项目文件夹** 在 VSCode 中打开项目目录,并创建以下文件: - `main.py`(测试脚本) - `requirements.txt`(依赖列表,内容包含 `ultralytics`, `opencv-python` 等) --- #### **3. 安装依赖库** 在终端中运行: ```bash pip install opencv-python matplotlib pandas ``` --- #### **4. 测试 YOLOv8 环境** 在 `main.py` 中添加以下代码: ```python from ultralytics import YOLO # 加载预训练模型 model = YOLO("yolov8n.pt") # 执行目标检测 results = model.predict(source="https://ultralytics.com/images/bus.jpg", save=True) print(results[0].boxes) ``` 运行脚本: ```bash python main.py ``` 若输出检测结果且生成 `runs/detect` 目录,则环境配置成功[^3]。 --- #### **5. 注意事项** - **GPU 支持**:若需启用 GPU,确保已安装对应版本的 CUDA 和 cuDNN。 - **路径问题**:若出现模块导入错误,检查 VSCode 的当前工作目录是否为项目根目录。 - **依赖冲突**:建议使用虚拟环境隔离依赖(如 Conda 或 `venv`)。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值