Ultralytics 솔루션: YOLO26을 활용하여 실세계 문제 해결하기

Ultralytics 솔루션은 YOLO 모델의 최첨단 애플리케이션을 제공하며, 객체 카운팅, 블러링, 보안 시스템과 같은 실세계 솔루션을 통해 다양한 산업 분야에서 효율성과 정확도를 향상시킵니다. 실용적이고 영향력 있는 구현을 위한 YOLO26의 강력한 기능을 확인해 보십시오.

Ultralytics 솔루션 썸네일



Watch: How to Run Ultralytics Solutions from the Command Line (CLI) | Ultralytics YOLO26 🚀

솔루션

다음은 훌륭한 컴퓨터 비전 프로젝트를 만드는 데 사용할 수 있는 엄선된 Ultralytics 솔루션 목록입니다.

  • 분석: YOLO26을 활용한 기술적, 예측적, 처방적 분석을 통해 포괄적인 데이터 분석을 수행하여 패턴을 발견하고 정보에 입각한 의사결정을 내릴 수 있습니다.
  • 거리 계산: YOLO26에서 바운딩 박스 중심점을 사용하여 객체 간 거리를 계산하며, 이는 공간 분석에 필수적입니다.
  • 히트맵: 탐지 히트맵을 활용하여 매트릭스 전체의 데이터 밀도를 시각화하고, 컴퓨터 비전 작업에서 명확한 통찰력을 제공합니다.
  • 객체 추적을 포함한 인스턴스 분할: YOLO26으로 인스턴스 분할 및 객체 추적을 구현하여 정확한 객체 경계를 파악하고 지속적으로 모니터링합니다.
  • Streamlit을 활용한 실시간 추론: 사용자 친화적인 Streamlit 인터페이스를 통해 웹 브라우저에서 직접 YOLO26의 강력한 객체 탐지 기능을 활용하십시오.
  • 객체 블러링: 이미지 및 영상 처리 시 개인정보 보호를 위해 YOLO26을 사용하여 객체 블러링을 적용합니다.
  • 객체 카운팅: YOLO26을 사용하여 실시간 객체 카운팅 수행 방법을 배웁니다. 라이브 비디오 스트림에서 객체를 정확하게 세는 전문 지식을 습득하십시오.
  • 영역별 객체 카운팅: 다양한 영역에서 정확한 탐지를 위해 YOLO26을 사용하여 특정 영역 내 객체를 카운트합니다.
  • 객체 크롭: 이미지와 영상에서 객체를 정밀하게 추출하기 위해 YOLO26을 사용한 객체 크롭 기능을 마스터하십시오.
  • 주차 관리: YOLO26을 사용하여 주차 공간 내 차량 흐름을 정리 및 유도하고, 공간 활용도와 사용자 경험을 최적화합니다.
  • 대기열 관리: YOLO26을 사용하여 대기 시간을 최소화하고 생산성을 높이는 효율적인 대기열 관리 시스템을 구현합니다.
  • 보안 알람 시스템: 새로운 객체 탐지 시 경고를 발생시키는 보안 알람 시스템을 YOLO26으로 구축합니다. 특정 요구 사항에 맞춰 시스템을 커스터마이징하십시오.
  • 유사도 검색: OpenAI CLIP 임베딩과 Meta FAISS를 결합하여 지능형 이미지 검색을 활성화하고, "가방을 들고 있는 사람" 또는 "움직이는 차량"과 같은 자연어 쿼리를 사용할 수 있습니다.
  • 속도 추정: 자율주행 차량 및 교통 모니터링과 같은 애플리케이션에 중요한 YOLO26 및 객체 추적 기술을 사용하여 객체 속도를 추정합니다.
  • 영역 내 객체 추적: 정밀하고 효율적인 모니터링을 위해 YOLO26을 사용하여 비디오 프레임의 특정 영역 내에서 객체를 추적하는 방법을 배웁니다.
  • VisionEye 객체 매핑: 인간의 눈이 특정 객체에 집중하는 방식을 모방한 시스템을 개발하여 컴퓨터의 세부 정보 식별 및 우선순위 지정 능력을 향상시킵니다.
  • 운동 모니터링: YOLO26을 사용하여 운동을 모니터링하는 방법을 알아봅니다. 다양한 피트니스 루틴을 실시간으로 추적하고 분석하는 방법을 익히십시오.

솔루션 인수

인수(Argument)유형(Type)기본값(Default)설명
modelstrNoneUltralytics YOLO 모델 파일 경로입니다.
regionlist'[(20, 400), (1260, 400)]'계수 영역을 정의하는 점들의 목록입니다.
show_inboolTrue비디오 스트림에 유입(in) 계수를 표시할지 여부를 제어하는 플래그입니다.
show_outboolTrue비디오 스트림에 유출(out) 계수를 표시할지 여부를 제어하는 플래그입니다.
analytics_typestr'line'그래프 유형으로 line, bar, area 또는 pie가 있습니다.
colormapintcv2.COLORMAP_DEEPGREEN히트맵에 사용할 컬러맵입니다.
json_filestrNone모든 주차 좌표 데이터가 포함된 JSON 파일 경로입니다.
up_anglefloat145.0'up' 자세에 대한 각도 임계값입니다.
kptslist[int]'[6, 8, 10]'운동 모니터링에 사용되는 세 개의 키포인트 인덱스 목록입니다. 이 키포인트는 팔굽혀펴기, 턱걸이, 스쿼트, 복근 운동과 같은 운동을 위해 어깨, 팔꿈치, 손목 등 신체 관절이나 부위에 해당합니다.
down_angleint90'down' 자세에 대한 각도 임계값입니다.
blur_ratiofloat0.5블러 강도의 백분율을 조정하며 값의 범위는 0.1 - 1.0입니다.
crop_dirstr'cropped-detections'잘라낸 탐지 결과를 저장하기 위한 디렉토리 이름입니다.
recordsint5보안 경보 시스템에서 이메일을 트리거하기 위한 총 탐지 횟수입니다.
vision_pointtuple[int, int](20, 20)VisionEye 솔루션을 사용하여 객체를 추적하고 경로를 그릴 기준점입니다.
sourcestrNone입력 소스(비디오, RTSP 등) 경로입니다. 솔루션 명령줄 인터페이스(CLI)에서만 사용할 수 있습니다.
figsizetuple[int, int](12.8, 7.2)히트맵이나 그래프와 같은 분석 차트를 위한 그림 크기입니다.
fpsfloat30.0속도 계산에 사용되는 초당 프레임 수(FPS)입니다.
max_histint5속도/방향 계산을 위해 객체당 추적할 최대 과거 지점 수입니다.
meter_per_pixelfloat0.05픽셀 거리를 실제 단위로 변환하는 데 사용되는 스케일링 계수입니다.
max_speedint120시각적 오버레이에서의 최대 속도 제한입니다(경보에 사용).
datastr'images'유사성 검색에 사용되는 이미지 디렉토리 경로입니다.
추적(track) 인수

Solutions also support some of the arguments from track, including parameters such as conf, line_width, tracker, model, show, verbose and classes.

인수(Argument)유형(Type)기본값(Default)설명
trackerstr'botsort.yaml'사용할 추적 알고리즘을 지정합니다. 예: bytetrack.yaml 또는 botsort.yaml.
conffloat0.1탐지에 대한 신뢰도 임계값을 설정합니다. 낮은 값을 사용할수록 더 많은 객체가 추적되지만 오탐지가 포함될 수 있습니다.
ioufloat0.7중복 탐지를 필터링하기 위한 Intersection over Union (IoU) 임계값을 설정합니다.
classeslistNone클래스 인덱스별로 결과를 필터링합니다. 예를 들어, classes=[0, 2, 3]은 지정된 클래스만 추적합니다.
verboseboolTrue추적 결과 표시를 제어하여 추적된 객체의 시각적 출력을 제공합니다.
devicestrNone추론을 위한 장치(예: cpu, cuda:0 또는 0)를 지정합니다. 모델 실행을 위해 CPU, 특정 GPU 또는 기타 컴퓨팅 장치 중 하나를 선택할 수 있습니다.
시각화 인수

show_conf, show_labels 및 언급된 기타 인수를 사용하여 시각화를 커스터마이징할 수 있습니다.

인수(Argument)유형(Type)기본값(Default)설명
showboolFalseTrue인 경우 주석이 달린 이미지나 비디오를 창에 표시합니다. 개발 또는 테스트 중 즉각적인 시각적 피드백을 얻는 데 유용합니다.
line_widthint or NoneNone바운딩 박스의 선 두께를 지정합니다. None인 경우 이미지 크기에 따라 선 두께가 자동으로 조정됩니다. 명확성을 위한 시각적 사용자 정의를 제공합니다.
show_confboolTrue레이블과 함께 각 탐지에 대한 신뢰도 점수를 표시합니다. 각 탐지에 대한 모델의 확신 수준을 알 수 있습니다.
show_labelsboolTrue시각적 출력에서 각 탐지에 대한 레이블을 표시합니다. 탐지된 객체를 즉시 이해할 수 있게 합니다.

SolutionAnnotator 사용

All Ultralytics Solutions use the separate class SolutionAnnotator, that extends the main Annotator class, and have the following methods:

메서드반환 타입설명
draw_region()None지정된 포인트, 색상 및 두께를 사용하여 영역을 그립니다.
queue_counts_display()None지정된 영역의 대기열 수를 표시합니다.
display_analytics()None주차장 관리를 위한 전체 통계를 표시합니다.
estimate_pose_angle()float객체 자세의 세 포인트 사이의 각도를 계산합니다.
draw_specific_points()None이미지에 특정 키포인트를 그립니다.
plot_workout_information()None이미지에 라벨이 붙은 텍스트 상자를 그립니다.
plot_angle_and_count_and_stage()None운동 모니터링을 위해 각도, 단계 카운트 및 단계를 시각화합니다.
plot_distance_and_line()None중심점 사이의 거리를 표시하고 선으로 연결합니다.
display_objects_labels()None객체 클래스 라벨과 함께 바운딩 박스를 주석 처리합니다.
sweep_annotator()None수직 스윕 라인과 선택적 라벨을 시각화합니다.
visioneye()None객체 중심점을 시각적 "눈" 지점에 매핑하고 연결합니다.
adaptive_label()None바운딩 박스 중앙에 원형 또는 직사각형 배경 모양의 라벨을 그립니다.

SolutionResults 작업

Except Similarity Search, each Solution call returns a list of SolutionResults objects.

  • 객체 카운팅의 경우, 결과에는 in_count, out_countclasswise_count가 포함됩니다.
SolutionResults
import cv2

from ultralytics import solutions

im0 = cv2.imread("path/to/img")

region_points = [(20, 400), (1080, 400), (1080, 360), (20, 360)]

counter = solutions.ObjectCounter(
    show=True,  # display the output
    region=region_points,  # pass region points
    model="yolo26n.pt",  # model="yolo26n-obb.pt" for object counting with OBB model.
    # classes=[0, 2],  # count specific classes i.e. person and car with COCO pretrained model.
    # tracker="botsort.yaml"  # Choose trackers i.e "bytetrack.yaml"
)
results = counter(im0)
print(results.in_count)  # display in_counts
print(results.out_count)  # display out_counts
print(results.classwise_count)  # display classwise_count

SolutionResults 객체는 다음과 같은 속성을 가집니다:

속성유형(Type)설명
plot_imnp.ndarray카운트, 블러 효과 또는 솔루션별 개선 사항과 같은 시각적 오버레이가 포함된 이미지입니다.
in_countint비디오 스트림에서 정의된 영역으로 들어오는 것으로 탐지된 객체의 총 수입니다.
out_countint비디오 스트림에서 정의된 영역 밖으로 나가는 것으로 탐지된 객체의 총 수입니다.
classwise_countDict[str, int]고급 분석을 위해 클래스별 입/출력 객체 수를 기록하는 딕셔너리입니다.
queue_countint현재 미리 정의된 대기열 또는 대기 영역 내에 있는 객체 수입니다(대기열 관리에 적합).
workout_countint운동 추적 중 완료된 총 운동 반복 횟수입니다.
workout_anglefloat자세 평가를 위해 운동 중 계산된 관절 또는 자세 각도입니다.
workout_stagestr현재 운동 단계 또는 동작 단계입니다(예: 'up', 'down').
pixels_distancefloat두 객체 또는 포인트(예: 바운딩 박스) 사이의 픽셀 기반 거리입니다(거리 계산에 적합).
available_slotsint모니터링 영역 내 비어 있는 슬롯 수입니다(주차 관리에 적합).
filled_slotsint모니터링 영역 내 점유된 슬롯 수입니다(주차 관리에 적합).
email_sentbool알림 또는 경고 이메일이 성공적으로 전송되었는지 여부를 나타냅니다(보안 알람에 적합).
total_tracksint비디오 분석 중 관찰된 고유한 객체 트랙의 총 수입니다.
region_countsDict[str, int]사용자가 정의한 영역 또는 구역 내의 객체 수입니다.
speed_dictDict[str, float]속도 분석에 유용한 계산된 객체 속도의 트랙별 딕셔너리입니다.
total_crop_objectsintObjectCropper 솔루션에 의해 생성된 크롭된 객체 이미지의 총 수입니다.
speedDict[str, float]트래킹 및 솔루션 처리에 대한 성능 지표가 포함된 딕셔너리입니다.

자세한 내용은 SolutionResults 클래스 문서를 참조하십시오.

CLI를 통한 솔루션 사용

명령어 정보

대부분의 솔루션은 다음을 포함하여 명령줄 인터페이스(CLI)를 통해 직접 사용할 수 있습니다:

Count, Crop, Blur, Workout, Heatmap, Isegment, Visioneye, Speed, Queue, Analytics, Inference, Trackzone

구문

yolo SOLUTIONS SOLUTION_NAME ARGS
  • SOLUTIONS는 필수 키워드입니다.
  • SOLUTION_NAME['count', 'crop', 'blur', 'workout', 'heatmap', 'isegment', 'queue', 'speed', 'analytics', 'trackzone', 'inference', 'visioneye'] 중 하나입니다.
  • ARGS (optional) are custom arg=value pairs, such as show_in=True, to override default settings.
yolo solutions count show=True # for object counting

yolo solutions count source="path/to/video.mp4" # specify video file path

솔루션 기여하기

커뮤니티의 기여를 환영합니다! 아직 솔루션에서 다루지 않은 Ultralytics YOLO의 특정 측면에 통달하셨다면 전문 지식을 공유해 주시기 바랍니다. 가이드를 작성하는 것은 커뮤니티에 환원하고 문서를 더 포괄적이며 사용자 친화적으로 만드는 좋은 방법입니다.

시작하려면 기여 가이드를 읽고 Pull Request (PR)를 여는 방법에 대한 지침을 확인하십시오 🛠️. 귀하의 기여를 기다립니다!

함께 협력하여 Ultralytics YOLO 생태계를 더욱 강력하고 다재다능하게 만들어 봅시다 🙏!

FAQ

실시간 객체 카운팅을 위해 Ultralytics YOLO를 어떻게 사용합니까?

Ultralytics YOLO26은 고급 객체 탐지 기능을 활용하여 실시간 객체 카운팅에 사용할 수 있습니다. 라이브 비디오 스트림 분석을 위해 YOLO26을 설정하는 방법은 객체 카운팅에 대한 자세한 가이드를 참조하십시오. YOLO26을 설치하고 모델을 로드한 뒤 비디오 프레임을 처리하여 객체를 동적으로 카운트하면 됩니다.

보안 시스템에 Ultralytics YOLO를 사용하면 어떤 이점이 있습니까?

Ultralytics YOLO26은 실시간 객체 탐지 및 경고 메커니즘을 제공하여 보안 시스템을 강화합니다. YOLO26을 사용하면 감시 영역에서 새로운 객체가 감지될 때 경고를 트리거하는 보안 경보 시스템을 구축할 수 있습니다. 강력한 보안 모니터링을 위해 YOLO26으로 보안 경보 시스템을 설정하는 방법을 알아보십시오.

Ultralytics YOLO가 대기열 관리 시스템을 어떻게 개선할 수 있습니까?

Ultralytics YOLO26은 대기열 내의 인원을 정확하게 카운트하고 추적하여 대기 시간을 줄이고 서비스 효율성을 최적화함으로써 대기열 관리 시스템을 크게 개선할 수 있습니다. 효과적인 대기열 모니터링 및 분석을 위해 YOLO26을 구현하는 방법은 대기열 관리 가이드를 참조하십시오.

Ultralytics YOLO를 운동 모니터링에 사용할 수 있습니까?

네, Ultralytics YOLO26은 피트니스 루틴을 실시간으로 추적 및 분석하여 운동 모니터링에 효과적으로 사용할 수 있습니다. 이를 통해 운동 자세와 성과를 정확하게 평가할 수 있습니다. YOLO26을 사용하여 AI 기반 운동 모니터링 시스템을 설정하는 방법은 운동 모니터링 가이드를 살펴보십시오.

데이터 시각화를 위한 히트맵 생성에 Ultralytics YOLO가 어떻게 도움이 됩니까?

Ultralytics YOLO26은 히트맵을 생성하여 주어진 영역 전반의 데이터 밀도를 시각화하고 활동이나 관심도가 높은 지역을 강조할 수 있습니다. 이 기능은 다양한 컴퓨터 비전 작업에서 패턴과 추세를 이해하는 데 특히 유용합니다. 포괄적인 데이터 분석 및 시각화를 위해 YOLO26을 사용하여 히트맵을 생성하고 사용하는 방법에 대해 자세히 알아보십시오.

댓글