跳至内容

Ultralytics VS 代码扩展


片段预测预览
使用Ultralytics YOLO 在 20 秒内运行示例代码!🚀

功能和优点

✅ 您是使用Ultralytics 构建计算机视觉应用程序的数据科学家或机器学习工程师吗?

✅ 您是否鄙视重复编写相同的代码块?

✅ 您是否总是忘记导出预测训练跟踪Val方法的参数或默认值?

✅ 想要开始使用Ultralytics ,并希望有一种更简便的方法来参考或运行代码示例?

✅ 使用Ultralytics 时,想加快开发周期吗?

如果您使用 Visual Studio Code,并且对上述任何一项回答 "是",那么 VS Code 的Ultralytics-snippets 扩展就能帮到您!请继续阅读,了解有关该扩展的更多信息、安装方法和使用方法。

灵感来自Ultralytics 社区

建立此扩展的灵感来自Ultralytics 社区。社区围绕类似主题和示例提出的问题推动了该项目的开发。此外,由于Ultralytics 团队的一些成员也使用 VS Code,我们也将其作为加快工作进度的工具⚡。

为什么选择 VS Code?

Visual Studio Code深受全球开发人员的欢迎,并在2021 年、2022 年2023 年和2024 年的 Stack Overflow 开发人员调查中被评为最受欢迎的软件。由于 VS Code 具有高度的定制性、内置功能、广泛的兼容性和可扩展性,因此有如此多的开发人员使用它也就不足为奇了。鉴于 VS Code 在更广泛的开发者社区以及Ultralytics DiscordDiscourseRedditGitHub社区中的受欢迎程度,开发一个 VS Code 扩展来帮助简化您的工作流程并提高您的工作效率是很有意义的。

想让我们知道您用什么来开发代码吗?前往我们的 Discourse社区投票,告诉我们!在这里,您还可以查看我们最喜欢的计算机视觉、机器学习、人工智能和开发人员备忘录,甚至发布您最喜欢的备忘录

安装扩展程序

备注

任何允许安装 VS Code 扩展程序的代码环境 应是 Ultralytics-snippets 扩展兼容。发布扩展后,发现 可与 VS Code 扩展兼容。要了解更多信息,请参阅 neovim 安装部分 中的 Ultralytics-片段库.

在 VS 代码中安装

  1. 导航至VS 代码中的扩展菜单,或使用快捷键Ctrl+Shift⇑+x 搜索Ultralytics-snippets。

  2. 点击安装按钮。


VS 代码扩展菜单

从 VS 代码扩展市场安装

  1. 访问VS Code 扩展市场,搜索Ultralytics-snippets 或直接进入VS Code 市场的扩展页面

  2. 单击安装按钮,让浏览器启动 VS Code 会话。

  3. 按照提示安装扩展。


安装 VS 代码市场扩展
Visual Studio 代码扩展市场页面 Ultralytics-片段

使用Ultralytics-Snippets 扩展程序

  • 智能代码自动补全:利用为Ultralytics API 量身定制的高级代码完成建议,更快、更准确地编写代码。

  • 提高开发速度:通过消除重复编码任务和利用预置代码块片段来节省时间。

  • 提高代码质量:利用智能代码自动补全功能,编写更简洁、更一致、无差错的代码。

  • 💎简化工作流程:通过自动化常见任务,专注于项目的核心逻辑。

概述

只有当 语言模式 配置为Python 🐍。这是为了避免在处理其他文件类型时插入片段。所有片段的前缀都以 ultra只需键入 ultra 将显示一个可能使用的片段列表。您还可以打开 VS 代码 命令调色板 使用 Ctrl+移位 ⇑+p 并运行命令 Snippets: Insert Snippet.

代码片段字段

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


多重更新字段和选项
插入片段后,重命名 model 作为 world_model 更新所有实例。按下 Tab ⇥ 移动到下一个字段,会打开一个下拉菜单,可以选择模型比例,移动到下一个字段,会提供另一个下拉菜单,可以选择 worldworldv2 型号变体。

代码片段完成

短的捷径

需要键入片段的完整前缀,甚至不需要从片段开始键入。请参见下图示例。

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


不完整片段示例
打字 ex-yolo-p静止的 得出正确的片段。

片段类别

这些是Ultralytics-snippets 扩展目前可用的片段类别。今后还会添加更多类别,请务必检查更新并启用扩展的自动更新功能。如果您觉得缺少任何片段,也可以申请添加其他片段

类别 起始前缀 说明
实例 ultra.examples 帮助学习或开始使用Ultralytics 的示例代码。示例是文档页面代码的副本或类似代码。
Kwargs ultra.kwargs 通过为traintrackpredictval方法添加包含所有关键字参数和默认值的代码段,加快开发速度。
进口 ultra.imports 快速导入常见Ultralytics 对象的片段。
机型 ultra.yolo 插入代码块,用于初始化各种 模型 (yolo, sam, rtdetr等),包括下拉式配置选项。
成果 ultra.result 用于处理推理结果时常用操作的代码块。
公用设施 ultra.util 可快速访问Ultralytics 软件包内置的常用实用程序,更多信息请访问简单实用程序页面

举例学习

"(《世界人权宣言》) ultra.examples 对于希望学习如何开始使用Ultralytics YOLO 基础知识的人来说,这些代码段非常有用。示例片段插入后即可运行(有些片段还有下拉选项)。下面的动画就是一个例子 顶级 在该页面中,插入代码段后,所有代码都会被选中,并通过使用 移位 ⇑+输入 ↵.

示例

就像在 顶级 的代码段。 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 时让开发工作变得更加简单快捷。在许多项目中,一个常用的代码块是遍历列表中的 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 支持众多 任务处理推理结果 还有其他 Results 您可能希望访问的属性,这就是 代码段字段 将是强大的。


结果循环选项
一旦标签页转到 boxes 字段,会出现一个下拉菜单,允许根据需要选择另一个属性。

关键词 论点

有超过 💯个关键字参数,用于各种Ultralytics 任务模式!要记住的东西太多了,如果论点是 save_framesave_frames 绝对 save_frames 顺便说一句)。这就是 ultra.kwargs 片段可以提供帮助!

示例

插入 预言 方法,包括所有 推理论据使用 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
)

该代码段不仅为所有关键字参数设置了字段,还为 modelsrc 以防你在代码中使用了不同的变量。在包含关键字参数的每一行中,都有简要说明供参考。

所有代码片段

要知道有哪些片段可用,最好的办法是下载并安装扩展并试用!如果你好奇并想事先看看列表,可以访问VS Code 市场上的 软件仓库扩展页面,查看所有可用片段的表格。

结论

Ultralytics-Snippets 扩展用于 VS Code,旨在帮助数据科学家和机器学习工程师更高效地使用Ultralytics YOLO 构建计算机视觉应用程序。通过提供预构建的代码片段和有用的示例,我们可以帮助您专注于最重要的事情:创建创新的解决方案。请访问VS Code 市场上的扩展页面并留下评论,分享您的反馈意见。⭐

常见问题

如何申请新片段?

您可以使用Ultralytics-Snippets软件源上的 "问题 "申请新片段。

Ultralytics-Extension 的费用是多少?

100% 免费!

为什么看不到代码片段预览?

VS 代码使用Ctrl+Space组合键在预览窗口中显示更多/更少信息。如果在输入代码片段前缀时看不到片段预览,使用该组合键应能恢复预览。

如何禁用Ultralytics 中的扩展推荐?

如果您使用 VS Code,并开始看到提示您安装Ultralytics-snippets 扩展的消息,但不想再看到该消息,有两种方法可以禁用该消息。

  1. 安装Ultralytics-snippets 后,信息将不再显示 😆!

  2. 您可以使用 yolo settings vscode_msg False 来禁用信息显示,而无需安装扩展。有关 Ultralytics 设置快速入门 如果您不熟悉,请访问

我有一个关于Ultralytics 新代码片段的想法,如何添加?

访问Ultralytics-snippets软件源并打开一个问题或 Pull Request!

如何卸载Ultralytics-Snippets 扩展?

与其他 VS Code 扩展一样,你可以通过导航到 VS Code 的 "扩展 "菜单来卸载它。在菜单中找到Ultralytics-snippets 扩展,单击齿轮图标(⚙),然后单击 "卸载 "删除该扩展。


VS 代码扩展菜单

📅创建于 3 个月前 ✏️已更新 2 个月前

评论