콘텐츠로 건너뛰기

Ultralytics VS 코드 확장



Watch: Ultralytics Visual Studio 코드 확장 프로그램 사용 방법 | 바로 사용 가능한 코드 스니펫 | Ultralytics YOLO 🎉

기능 및 이점

Ultralytics 으로 컴퓨터 비전 애플리케이션을 구축하는 데이터 과학자 또는 머신 러닝 엔지니어이신가요?

✅ 같은 코드 블록을 반복해서 작성하는 것을 싫어하시나요?

내보내기, 예측, 훈련, 추적 또는 메서드의 인수 또는 기본값을 항상 잊어버리고 있나요?

Ultralytics 를 시작하고 싶은데 코드 예제를 더 쉽게 참조하거나 실행할 수 있는 방법이 있었으면 좋겠어요?

Ultralytics 로 작업할 때 개발 주기를 단축하고 싶으신가요?

Visual Studio Code를 사용 중이고 위의 질문에 '예'라고 답했다면 VS Code용 Ultralytics-스니펫 확장 프로그램이 도움이 될 것입니다! 확장 기능, 설치 방법 및 사용 방법에 대해 자세히 알아보려면 계속 읽어보세요.


코드조각 예측 미리보기
Ultralytics YOLO 을 사용하여 예제 코드를 20초 이내에 실행하세요! 🚀

Ultralytics 커뮤니티에서 영감을 얻었습니다.

이 확장 기능을 개발하게 된 영감은 Ultralytics 커뮤니티에서 얻었습니다. 비슷한 주제와 사례에 대한 커뮤니티의 질문이 이 프로젝트의 개발 동력이 되었습니다. 또한 Ultralytics 팀 중 일부도 VS 코드를 사용하기 때문에 저희도 작업 속도를 높이기 위한 도구로 사용하고 있습니다 ⚡.

왜 VS 코드일까요?

비주얼 스튜디오 코드는 전 세계 개발자들에게 매우 인기가 있으며 2021년, 2022년, 2023년, 2024년 스택 오버플로 개발자 설문조사에서 가장 인기 있는 도구로 선정되었습니다. 높은 수준의 사용자 지정, 기본 제공 기능, 광범위한 호환성 및 확장성 덕분에 많은 개발자가 VS Code를 사용하는 것은 놀라운 일이 아닙니다. 더 넓은 개발자 커뮤니티와 Ultralytics Discord, Discourse, RedditGitHub 커뮤니티에서의 인기를 고려할 때, 워크플로를 간소화하고 생산성을 높이는 데 도움이 되는 VS Code 확장 프로그램을 구축하는 것이 합리적입니다.

코드 개발에 어떤 것을 사용하고 계신지 알려주시겠어요? Discourse 커뮤니티 설문조사에 참여하여 알려주세요! 그곳에 있는 동안 저희가 가장 좋아하는 컴퓨터 비전, 머신 러닝, AI 및 개발자 밈을 확인하거나 좋아하는 밈을 게시해 보세요!

확장 프로그램 설치

참고

VS Code 확장을 설치할 수 있는 모든 코드 환경 Ultralytics-스니펫 확장자와 호환됩니다. 확장 프로그램을 게시한 후 다음과 같은 문제가 발견되었습니다. neovim 를 VS 코드 확장과 호환되도록 만들 수 있습니다. 자세한 내용은 neovim 설치 섹션 의 읽기 설명서의 Ultralytics-스니펫 리포지토리.

VS 코드에 설치

  1. VS 코드에서 확장 메뉴로 이동하거나 단축키 Ctrl+Shift⇑+x를 사용하여 Ultralytics-스니펫을 검색합니다.

  2. 설치 버튼을 클릭합니다.


VS 코드 확장 메뉴

VS 코드 확장 마켓플레이스에서 설치

  1. VS 코드 확장 마켓플레이스를 방문하여 Ultralytics-스니펫을 검색하거나 VS 코드 마켓플레이스의 확장 페이지로 바로 이동하세요.

  2. 설치 버튼을 클릭하고 브라우저에서 VS 코드 세션을 시작하도록 허용합니다.

  3. 안내에 따라 확장 프로그램을 설치합니다.


VS Code 마켓플레이스 확장 설치
Visual Studio 코드 확장 마켓플레이스 페이지 Ultralytics-스니펫

Ultralytics-스니펫 확장자 사용

  • 🧠 지능형 코드 완성: Ultralytics API에 맞춘 고급 코드 완성 제안을 통해 코드를 더 빠르고 정확하게 작성하세요.

  • 개발 속도 향상: 반복적인 코딩 작업을 없애고 미리 빌드된 코드 블록 스니펫을 활용하여 시간을 절약하세요.

  • 🔬 코드 품질 향상: 지능형 코드 완성 기능으로 더 깔끔하고 일관되며 오류 없는 코드를 작성하세요.

  • 💎 간소화된 워크플로: 일반적인 작업을 자동화하여 프로젝트의 핵심 로직에 집중하세요.

개요

확장 프로그램은 다음과 같은 경우에만 작동합니다. 언어 모드 는 Python 🐍로 구성됩니다. 이는 다른 파일 유형으로 작업할 때 코드조각이 삽입되지 않도록 하기 위한 것입니다. 모든 코드조각의 접두사는 ultra를 클릭하고 ultra 를 클릭하면 사용할 수 있는 스니펫 목록이 표시됩니다. VS 코드 명령 팔레트 사용 Ctrl+Shift ⇑+p 명령을 실행합니다. Snippets: Insert Snippet.

코드 스니펫 필드

많은 코드조각에는 기본 자리 표시자 값이나 이름이 있는 '필드'가 있습니다. 예를 들어 예측 메서드를 Python 변수에 저장할 수 있습니다. r, results, detections, preds 또는 개발자가 선택한 다른 무엇이든, 스니펫에 "필드"가 포함되는 이유입니다. 사용 탭 ☠ 를 키보드에서 누르면 커서가 필드 사이를 빠르게 이동합니다. 필드를 선택한 후 새 변수 이름을 입력하면 해당 인스턴스뿐만 아니라 해당 변수에 대한 코드 조각 코드의 다른 모든 인스턴스도 변경됩니다!


다중 업데이트 필드 및 옵션
스니펫 삽입 후 이름 바꾸기 model as world_model 모든 인스턴스를 업데이트합니다. 를 누르면 탭 ☠ 을 클릭하면 드롭다운 메뉴가 열리고 모델 배율을 선택할 수 있는 다음 필드로 이동하며, 다음 필드로 이동하면 다음 중 하나를 선택할 수 있는 또 다른 드롭다운이 제공됩니다. world 또는 worldv2 모델 변형.

코드 스니펫 완성

더 짧은 단축키

코드조각의 전체 접두사를 입력하거나 코드조각의 시작 부분부터 입력을 시작할 필요는 없습니다. 아래 이미지의 예를 참조하세요.

코드조각은 가능한 한 가장 설명적인 방식으로 이름이 지정되지만, 이는 입력할 내용이 많을 수 있고 이동이 목적이라면 비생산적일 수 있음을 의미합니다. 더 빠르게. 다행히도 VS Code를 사용하면 사용자가 ultra.example-yolo-predict, example-yolo-predict, yolo-predict또는 ex-yolo-p 를 클릭해도 의도한 코드조각 옵션에 도달할 수 있습니다! 의도한 코드조각이 실제로 ultra.example-yolo-predict-kwords를 클릭한 다음 키보드 화살표를 사용하여 또는 를 눌러 원하는 코드조각을 강조 표시하고 입력 ↵ 또는 탭 ☠ 를 누르면 올바른 코드 블록이 삽입됩니다.


불완전한 코드 조각 예시
입력 ex-yolo-p will still 를 입력하면 올바른 스니펫에 도착합니다.

스니펫 카테고리

다음은 Ultralytics-스니펫 확장 프로그램에서 사용할 수 있는 현재 스니펫 카테고리입니다. 앞으로 더 많은 카테고리가 추가될 예정이므로 업데이트를 확인하고 확장 프로그램의 자동 업데이트를 사용 설정하세요. 누락된 스니펫이 있다고 생각되면 추가 스니펫 추가를 요청할 수도 있습니다.

카테고리 시작 접두사 설명
예제 ultra.examples 학습 또는 시작에 도움이 되는 예제 코드 Ultralytics. 예제는 문서 페이지에 있는 코드의 복사본 또는 이와 유사한 코드입니다.
Kwargs ultra.kwargs 모든 키워드 인수와 기본값이 포함된 train, track, predict, val 메서드에 대한 스니펫을 추가하여 개발 속도를 높일 수 있습니다.
가져오기 ultra.imports 일반적인 Ultralytics 개체를 빠르게 가져오는 스니펫.
모델 ultra.yolo 다양한 초기화를 위한 코드 블록 삽입 모델 (yolo, sam, rtdetr등), 드롭다운 구성 옵션을 포함합니다.
결과 ultra.result 추론 결과로 작업할 때 일반적인 연산을 위한 코드 블록입니다.
유틸리티 ultra.util Ultralytics 패키지에 내장된 일반적인 유틸리티에 빠르게 액세스할 수 있으며, 간단한 유틸리티 페이지에서 이에 대해 자세히 알아보세요.

예제를 통한 학습

그리고 ultra.examples 스니펫은 Ultralytics YOLO 으로 작업하는 기본 방법을 배우고자 하는 모든 사람에게 매우 유용합니다. 예시 코드조각은 삽입하면 실행되도록 되어 있습니다(일부에는 드롭다운 옵션도 있습니다). 이에 대한 예는 애니메이션의 top 의 스니펫을 삽입한 후 모든 코드가 선택되어 대화형으로 실행되며 Shift ⇑+입력 ↵.

애니메이션에서 보여주는 것처럼 top 의 스니펫을 사용할 수 있습니다. ultra.example-yolo-predict 를 클릭하여 다음 코드 예제를 삽입합니다. 삽입한 후에는 구성 가능한 유일한 옵션은 모델 스케일이며, 다음 중 하나를 선택할 수 있습니다: n, s, m, l또는 x.

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 모델을 사용하여 반환된 예측 메서드를 사용합니다. The 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_frame 또는 save_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
)

이 코드조각에는 모든 키워드 인수를 위한 필드뿐만 아니라 다음과 같은 필드도 있습니다. model 그리고 src 코드에서 다른 변수를 사용한 경우. 키워드 인수가 포함된 각 줄에는 참조를 위해 간단한 설명이 포함되어 있습니다.

모든 코드 스니펫

어떤 코드조각을 사용할 수 있는지 확인하는 가장 좋은 방법은 확장 프로그램을 다운로드하여 설치한 후 사용해 보는 것입니다! 궁금해서 미리 목록을 살펴보고 싶다면 VS Code 마켓플레이스의 리 포지토리 또는 확장 프로그램 페이지를 방문하여 사용 가능한 모든 스니펫의 표를 확인할 수 있습니다.

결론

VS Code용 Ultralytics 코드 조각 확장 프로그램은 데이터 과학자와 머신 러닝 엔지니어가 Ultralytics YOLO 을 사용하여 컴퓨터 비전 애플리케이션을 보다 효율적으로 구축할 수 있도록 설계되었습니다. 미리 빌드된 코드 스니펫과 유용한 예제를 제공함으로써 가장 중요한 일, 즉 혁신적인 솔루션을 만드는 데 집중할 수 있도록 도와드립니다. VS Code 마켓플레이스의 확장 프로그램 페이지를 방문하여 리뷰를 남기고 피드백을 공유해 주세요. ⭐

자주 묻는 질문

새 스니펫을 요청하려면 어떻게 하나요?

새 코드조각은 Ultralytics-Snippets 리포지토리의 이슈를 사용하여 요청할 수 있습니다.

Ultralytics-연장 비용은 얼마인가요?

100% 무료입니다!

코드 스니펫 미리보기가 표시되지 않는 이유는 무엇인가요?

VS Code는 미리 보기 창에 더 많은/더 적은 정보를 표시하기 위해 Ctrl+스페이스 키 조합을 사용합니다. 코드 조각 접두사를 입력할 때 코드 조각 미리 보기가 표시되지 않는 경우 이 키 조합을 사용하면 미리 보기가 복원됩니다.

Ultralytics 에서 확장 프로그램 추천을 비활성화하려면 어떻게 하나요?

VS Code를 사용하면서 Ultralytics-스니펫 확장 프로그램을 설치하라는 메시지가 표시되기 시작했는데 이 메시지를 더 이상 보고 싶지 않다면 두 가지 방법으로 이 메시지를 비활성화할 수 있습니다.

  1. Ultralytics-스니펫을 설치하면 메시지가 더 이상 표시되지 않습니다 😆!

  2. 다음을 사용할 수 있습니다. yolo settings vscode_msg False 를 클릭해 확장 프로그램을 설치하지 않고도 메시지가 표시되지 않도록 설정할 수 있습니다. 자세한 내용은 Ultralytics 설정 에서 빠른 시작 페이지를 참조하세요.

새로운 Ultralytics 코드 스니펫에 대한 아이디어가 있는데 어떻게 추가할 수 있나요?

Ultralytics-스니펫 리포지토리를 방문하여 이슈 또는 풀 리퀘스트를 열어보세요!

Ultralytics-Snippets 확장 프로그램을 제거하려면 어떻게 하나요?

다른 VS 코드 확장 프로그램과 마찬가지로 VS 코드의 확장 프로그램 메뉴로 이동하여 제거할 수 있습니다. 메뉴에서 Ultralytics-스니펫 확장 프로그램을 찾아 톱니바퀴 아이콘(⚙)을 클릭한 다음 "제거"를 클릭하여 확장 프로그램을 제거합니다.


VS 코드 확장 메뉴

📅 6 개월 전에 생성됨 ✏️ 1 일 전 업데이트됨

댓글