For the complete documentation index, see llms.txt. This page is also available as Markdown.

YOLOv7

Serverless Hosted API를 통해 YOLOv7 instance segmentation을 사용합니다.

저희는 우리의 Serverless Hosted API. Roboflow에서는 YOLOv7 학습을 지원하지 않지만, 다음을 할 수 있습니다 자체 가중치를 업로드하고 그 가중치에 대해 추론을 실행할 수 있습니다.

자체 호스팅 배포는 다음을 참조하세요 Roboflow Inference.

YOLOv7 입력 크기는 Roboflow 외부에서 모델을 학습할 때 설정됩니다(일반적인 값: 640x640 또는 1280x1280).

코드 샘플

1

API Key를 받으세요

Roboflow 계정을 만들고, 다음에서 키를 찾으세요: Roboflow API 설정 페이지 그리고 이를 셸에서 사용할 수 있도록 설정하세요:

export ROBOFLOW_API_KEY="your-key-here"
2

종속성을 설치하세요

Inference SDK를 설치하고 supervision 마스크를 디코딩하고 그리기 위해:

pip install inference-sdk supervision opencv-python
3

모델을 실행하세요

이 예제는 다음에서 학습된 공개 YOLOv7 인스턴스 세그멘테이션 모델을 실행합니다 콘크리트 표면 결함 (concrete-pugqq/3), 그런 다음 supervision을 사용해 예측된 마스크를 렌더링합니다. 자체 가중치를 서빙하려면, 여러분의 {workspace}/{model-slug} ID로 호출할 수 있습니다(참조 Versions, Trainings, and Models).

import os
import cv2
import numpy as np
import requests
import supervision as sv
from inference_sdk import InferenceHTTPClient

content = requests.get("https://media.roboflow.com/docs/concrete-crack.jpg").content
image = cv2.imdecode(np.frombuffer(content, np.uint8), cv2.IMREAD_COLOR)

client = InferenceHTTPClient(
    api_url="https://serverless.roboflow.com",
    api_key=os.environ["ROBOFLOW_API_KEY"],
)
results = client.infer(image, model_id="concrete-pugqq/3")

detections = sv.Detections.from_inference(results)

annotated = sv.MaskAnnotator().annotate(image.copy(), detections)

cv2.imwrite("annotated.png", annotated)

설정 api_url 을 배포 대상에 맞게 설정하세요:

  • https://serverless.roboflow.com Serverless Hosted API용입니다.

  • http://localhost:9001 로컬 Inference 서버용입니다.

  • 귀하의 Dedicated Deployment 비공개 엔드포인트용 URL입니다.

마지막 업데이트

도움이 되었나요?