Ultralytics YOLO11을 사용한 객체 흐림 🚀
객체 블러링이란 무엇입니까?
Ultralytics YOLO11을 사용한 객체 흐림은 이미지 또는 비디오에서 특정 감지된 객체에 흐림 효과를 적용하는 것을 포함합니다. 이는 주어진 장면 내에서 객체를 식별하고 조작하는 YOLO11 모델 기능을 사용하여 달성할 수 있습니다.
참고: Ultralytics YOLO11을 사용한 객체 흐림
객체 블러링의 장점
- 개인 정보 보호: 객체 흐림 효과는 이미지나 비디오에서 민감하거나 개인 식별 정보를 숨겨 개인 정보를 보호하는 효과적인 도구입니다.
- 선택적 초점: YOLO11은 선택적 흐림 효과를 통해 사용자가 특정 객체를 대상으로 지정할 수 있도록 하여 개인 정보 보호와 관련 시각 정보 유지 사이의 균형을 보장합니다.
- 실시간 처리: YOLO11의 효율성 덕분에 실시간으로 객체 블러링이 가능하므로 동적 환경에서 즉석 개인 정보 보호 개선이 필요한 애플리케이션에 적합합니다.
- 규정 준수: 시각적 콘텐츠에서 식별 가능한 정보를 익명화하여 조직이 GDPR과 같은 데이터 보호 규정을 준수하도록 지원합니다.
- 콘텐츠 조정: 미디어 플랫폼에서 부적절하거나 민감한 콘텐츠를 흐리게 처리하면서 전체 컨텍스트를 보존하는 데 유용합니다.
Ultralytics YOLO를 사용한 객체 블러링
# Blur the objects
yolo solutions blur show=True
# Pass a source video
yolo solutions blur source="path/to/video.mp4"
# Blur the specific classes
yolo solutions blur classes="[0, 5]"
import cv2
from ultralytics import solutions
cap = cv2.VideoCapture("path/to/video.mp4")
assert cap.isOpened(), "Error reading video file"
# Video writer
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
video_writer = cv2.VideoWriter("object_blurring_output.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))
# Initialize object blurrer object
blurrer = solutions.ObjectBlurrer(
show=True, # display the output
model="yolo11n.pt", # model for object blurring i.e. yolo11m.pt
# line_width=2, # width of bounding box.
# classes=[0, 2], # count specific classes i.e, person and car with COCO pretrained model.
# blur_ratio=0.5, # adjust percentage of blur intensity, the value in range 0.1 - 1.0
)
# Process video
while cap.isOpened():
success, im0 = cap.read()
if not success:
print("Video frame is empty or processing is complete.")
break
results = blurrer(im0)
# print(results") # access the output
video_writer.write(results.plot_im) # write the processed frame.
cap.release()
video_writer.release()
cv2.destroyAllWindows() # destroy all opened windows
ObjectBlurrer
인수
다음은 테이블에 ObjectBlurrer
인수입니다.
인수 | 유형 | 기본값 | 설명 |
---|---|---|---|
model |
str |
None |
Ultralytics YOLO 모델 파일의 경로입니다. |
blur_ratio |
float |
0.5 |
흐림 강도 비율을 조정하며, 값의 범위는 다음과 같습니다. 0.1 - 1.0 . |
에 지정되어 있습니다. ObjectBlurrer
솔루션은 또한 다양한 기능을 지원합니다. track
인수입니다.
인수 | 유형 | 기본값 | 설명 |
---|---|---|---|
tracker |
str |
'botsort.yaml' |
사용할 추적 알고리즘을 지정합니다 (예: bytetrack.yaml 또는 botsort.yaml . |
conf |
float |
0.3 |
검출에 대한 신뢰도 임계값을 설정합니다. 값이 낮을수록 더 많은 객체를 추적할 수 있지만 오탐지가 포함될 수 있습니다. |
iou |
float |
0.5 |
겹치는 검출을 필터링하기 위한 IoU (Intersection over Union) 임계값을 설정합니다. |
classes |
list |
None |
클래스 인덱스별로 결과를 필터링합니다. 예를 들어, classes=[0, 2, 3] 지정된 클래스만 추적합니다. |
verbose |
bool |
True |
추적 결과 표시를 제어하여 추적된 객체의 시각적 출력을 제공합니다. |
device |
str |
None |
추론을 위한 장치를 지정합니다 (예: cpu , cuda:0 또는 0 ). 사용자는 모델 실행을 위해 CPU, 특정 GPU 또는 기타 컴퓨팅 장치 중에서 선택할 수 있습니다. |
또한 다음과 같은 시각화 인수를 사용할 수 있습니다:
인수 | 유형 | 기본값 | 설명 |
---|---|---|---|
show |
bool |
False |
만약 True , 어노테이션이 적용된 이미지나 비디오를 창에 표시합니다. 개발 또는 테스트 중 즉각적인 시각적 피드백에 유용합니다. |
line_width |
None or int |
None |
경계 상자의 선 너비를 지정합니다. 만약 None , 선 너비는 이미지 크기에 따라 자동으로 조정됩니다. 명확성을 위해 시각적 사용자 정의를 제공합니다. |
show_conf |
bool |
True |
레이블과 함께 각 감지에 대한 신뢰도 점수를 표시합니다. 각 감지에 대한 모델의 확신에 대한 통찰력을 제공합니다. |
show_labels |
bool |
True |
시각적 출력에서 각 감지에 대한 레이블을 표시합니다. 감지된 객체에 대한 즉각적인 이해를 제공합니다. |
실제 응용 분야
감시 환경에서의 개인 정보 보호
보안 카메라 및 감시 시스템은 YOLO11을 사용하여 중요한 활동을 캡처하면서 얼굴, 번호판 또는 기타 식별 정보를 자동으로 흐리게 처리할 수 있습니다. 이는 공공 장소에서 개인 정보 보호 권한을 존중하면서 보안을 유지하는 데 도움이 됩니다.
헬스케어 데이터 익명화
의료 영상에서 환자 정보가 스캔 또는 사진에 나타나는 경우가 많습니다. YOLO11은 연구 또는 교육 목적으로 의료 데이터를 공유할 때 HIPAA와 같은 규정을 준수하기 위해 이 정보를 감지하고 흐리게 처리할 수 있습니다.
문서 수정
민감한 정보가 포함된 문서를 공유할 때 YOLO11은 서명, 계좌 번호 또는 개인 정보와 같은 특정 요소를 자동으로 감지하고 흐리게 처리하여 문서 무결성을 유지하면서 수정 프로세스를 간소화할 수 있습니다.
미디어 및 콘텐츠 제작
콘텐츠 제작자는 YOLO11을 사용하여 비디오 및 이미지에서 브랜드 로고, 저작권이 있는 자료 또는 부적절한 콘텐츠를 흐리게 처리하여 전체 콘텐츠 품질을 유지하면서 법적 문제를 피할 수 있습니다.
FAQ
Ultralytics YOLO11을 사용한 객체 블러링이란 무엇입니까?
Ultralytics YOLO11을 사용한 객체 흐림은 이미지 또는 비디오에서 특정 객체를 자동으로 감지하고 흐림 효과를 적용하는 것을 포함합니다. 이 기술은 관련 시각적 데이터를 유지하면서 민감한 정보를 숨겨 개인 정보 보호를 강화합니다. YOLO11의 실시간 처리 기능은 즉각적인 개인 정보 보호 및 선택적 초점 조정이 필요한 애플리케이션에 적합합니다.
YOLO11을 사용하여 실시간 객체 블러링을 구현하려면 어떻게 해야 합니까?
YOLO11을 사용하여 실시간 객체 흐림 효과를 구현하려면 제공된 python 예제를 따르십시오. 여기에는 객체 감지를 위해 YOLO11을 사용하고 흐림 효과 적용을 위해 OpenCV를 사용하는 것이 포함됩니다. 다음은 단순화된 버전입니다.
import cv2
from ultralytics import solutions
cap = cv2.VideoCapture("path/to/video.mp4")
assert cap.isOpened(), "Error reading video file"
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
# Video writer
video_writer = cv2.VideoWriter("object_blurring_output.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))
# Init ObjectBlurrer
blurrer = solutions.ObjectBlurrer(
show=True, # display the output
model="yolo11n.pt", # model="yolo11n-obb.pt" for object blurring using YOLO11 OBB model.
blur_ratio=0.5, # set blur percentage i.e 0.7 for 70% blurred detected objects
# line_width=2, # width of bounding box.
# classes=[0, 2], # count specific classes i.e, person and car with COCO pretrained model.
)
# Process video
while cap.isOpened():
success, im0 = cap.read()
if not success:
print("Video frame is empty or processing is complete.")
break
results = blurrer(im0)
video_writer.write(results.plot_im)
cap.release()
video_writer.release()
cv2.destroyAllWindows()
객체 블러링에 Ultralytics YOLO11을 사용할 때의 이점은 무엇인가요?
Ultralytics YOLO11은 객체 블러링에 대한 여러 가지 이점을 제공합니다.
- 개인 정보 보호: 민감하거나 식별 가능한 정보를 효과적으로 가립니다.
- 선택적 초점: 필수 시각적 콘텐츠를 유지하면서 특정 객체를 대상으로 흐리게 처리합니다.
- 실시간 처리: 동적 환경에서 객체 블러링을 효율적으로 실행하여 즉각적인 개인 정보 보호 개선에 적합합니다.
- 맞춤형 강도: 개인 정보 보호 필요성과 시각적 맥락의 균형을 맞추기 위해 흐림 비율을 조정합니다.
- 클래스별 블러링: 특정 유형의 객체만 선택적으로 흐리게 처리하고 다른 객체는 보이도록 합니다.
더 자세한 애플리케이션은 객체 블러링 섹션의 장점을 확인하십시오.
Ultralytics YOLO11을 사용하여 개인 정보 보호를 위해 비디오에서 얼굴을 흐리게 처리할 수 있습니까?
예, Ultralytics YOLO11은 개인 정보 보호를 위해 비디오에서 얼굴을 감지하고 흐리게 처리하도록 구성할 수 있습니다. 얼굴을 특정적으로 인식하도록 학습하거나 사전 학습된 모델을 사용하면 OpenCV로 감지 결과를 처리하여 흐림 효과를 적용할 수 있습니다. YOLO11을 사용한 객체 감지에 대한 가이드를 참조하고 얼굴 감지를 목표로 코드를 수정하십시오.
YOLO11은 객체 블러링에 대해 Faster R-CNN과 같은 다른 객체 감지 모델과 어떻게 비교됩니까?
Ultralytics YOLO11은 일반적으로 속도 면에서 Faster R-CNN과 같은 모델보다 성능이 뛰어나 실시간 애플리케이션에 더 적합합니다. 두 모델 모두 정확한 감지를 제공하지만 YOLO11의 아키텍처는 실시간 객체 블러링과 같은 작업에 중요한 빠른 추론에 최적화되어 있습니다. 기술적 차이점과 성능 지표에 대한 자세한 내용은 YOLO11 문서를 참조하세요.