Projeto de sistema de alarme de segurança utilizando Ultralytics YOLO11
O projeto de sistema de alarme de segurança que utiliza o Ultralytics YOLO11 integra capacidades avançadas de visão por computador para melhorar as medidas de segurança. YOLO11 O sistema de visão por computador, desenvolvido pela Ultralytics, permite a deteção de objectos em tempo real, permitindo que o sistema identifique e responda prontamente a potenciais ameaças à segurança. Este projeto oferece várias vantagens:
- Deteção em tempo real: a eficiência do YOLO11 permite que o sistema de alarme de segurança detecte e responda a incidentes de segurança em tempo real, minimizando o tempo de resposta.
- Precisão: YOLO11 é conhecido pela sua precisão na deteção de objectos, reduzindo os falsos positivos e aumentando a fiabilidade do sistema de alarme de segurança.
- Capacidades de integração: O projeto pode ser perfeitamente integrado na infraestrutura de segurança existente, proporcionando uma camada melhorada de vigilância inteligente.
Ver: Projeto de sistema de alarme de segurança com Ultralytics YOLO11 Deteção de objectos
Código
Nota
É necessário gerar a palavra-passe da aplicação
- Navigate to App Password Generator, designate an app name such as "security project," and obtain a 16-digit password. Copy this password and paste it into the designated
password
field in the code below.
Security Alarm System using YOLO11 Example
import cv2
from ultralytics import solutions
cap = cv2.VideoCapture("Path/to/video/file.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("security_alarm_output.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))
from_email = "abc@gmail.com" # The sender email address
password = "---- ---- ---- ----" # 16-digits password generated via: https://myaccount.google.com/apppasswords
to_email = "xyz@gmail.com" # The receiver email address
# Init SecurityAlarm
security = solutions.SecurityAlarm(
show=True, # Display the output
model="yolo11n.pt", # i.e. YOLO11s.pt
records=1, # Total detections count to send an email about security
)
security.authenticate(from_email, password, to_email) # Authenticate the email server
# Process video
while cap.isOpened():
success, im0 = cap.read()
if not success:
print("Video frame is empty or video processing has been successfully completed.")
break
im0 = security.monitor(im0)
video_writer.write(im0)
cap.release()
video_writer.release()
cv2.destroyAllWindows()
É isso mesmo! Quando executar o código, receberá uma única notificação no seu e-mail se for detectado algum objeto. A notificação é enviada imediatamente, não repetidamente. No entanto, sinta-se à vontade para personalizar o código de acordo com os requisitos do seu projeto.
Amostra de correio eletrónico recebido
Argumentos SecurityAlarm
Aqui está uma tabela com os SecurityAlarm
argumentos:
Nome | Tipo | Predefinição | Descrição |
---|---|---|---|
model |
str |
None |
Caminho para Ultralytics YOLO Modelo de ficheiro |
line_width |
int |
2 |
Espessura da linha para caixas delimitadoras. |
show |
bool |
False |
Sinalizador para controlar se o fluxo de vídeo deve ser apresentado. |
records |
int |
5 |
Total detections count to send an email about security. |
Argumentos model.track
Argumento | Tipo | Predefinição | Descrição |
---|---|---|---|
source |
str |
None |
Especifica o diretório de origem para imagens ou vídeos. Suporta caminhos de ficheiros e URLs. |
persist |
bool |
False |
Permite o rastreio persistente de objectos entre fotogramas, mantendo as IDs nas sequências de vídeo. |
tracker |
str |
botsort.yaml |
Especifica o algoritmo de seguimento a utilizar, por exemplo, bytetrack.yaml ou botsort.yaml . |
conf |
float |
0.3 |
Define o limiar de confiança para as detecções; valores mais baixos permitem o seguimento de mais objectos, mas podem incluir falsos positivos. |
iou |
float |
0.5 |
Define o limiar de Intersecção sobre União (IoU) para filtrar detecções sobrepostas. |
classes |
list |
None |
Filtra os resultados por índice de classe. Por exemplo, classes=[0, 2, 3] só rastreia as classes especificadas. |
verbose |
bool |
True |
Controla a apresentação dos resultados do seguimento, fornecendo uma saída visual dos objectos seguidos. |
FAQ
Como é que o Ultralytics YOLO11 melhora a precisão de um sistema de alarme de segurança?
Ultralytics YOLO11 melhora os sistemas de alarme de segurança, fornecendo uma deteção de objectos de elevada precisão e em tempo real. Os seus algoritmos avançados reduzem significativamente os falsos positivos, assegurando que o sistema apenas responde a ameaças genuínas. Esta maior fiabilidade pode ser perfeitamente integrada na infraestrutura de segurança existente, melhorando a qualidade geral da vigilância.
Posso integrar o Ultralytics YOLO11 na minha infraestrutura de segurança existente?
Sim, o Ultralytics YOLO11 pode ser perfeitamente integrado na sua infraestrutura de segurança existente. O sistema suporta vários modos e oferece flexibilidade para personalização, permitindo-lhe melhorar a sua configuração existente com capacidades avançadas de deteção de objectos. Para obter instruções detalhadas sobre a integração do YOLO11 nos seus projectos, visite a secção de integração.
Quais são os requisitos de armazenamento para executar Ultralytics YOLO11 ?
A execução de Ultralytics YOLO11 numa configuração padrão requer normalmente cerca de 5 GB de espaço livre em disco. Isso inclui espaço para armazenar o modelo YOLO11 e quaisquer dependências adicionais. Para soluções baseadas na nuvem, o Ultralytics HUB oferece gestão eficiente de projectos e manuseamento de conjuntos de dados, o que pode otimizar as necessidades de armazenamento. Saiba mais sobre o Plano Pro para obter recursos aprimorados, incluindo armazenamento estendido.
O que torna o Ultralytics YOLO11 diferente de outros modelos de deteção de objectos como o Faster R-CNN ou o SSD?
Ultralytics YOLO11 oferece uma vantagem sobre modelos como o Faster R-CNN ou SSD com as suas capacidades de deteção em tempo real e maior precisão. A sua arquitetura única permite-lhe processar imagens muito mais rapidamente sem comprometer a precisão, tornando-o ideal para aplicações sensíveis ao tempo, como sistemas de alarme de segurança. Para uma comparação abrangente dos modelos de deteção de objectos, pode explorar o nosso guia.
Como posso reduzir a frequência de falsos positivos no meu sistema de segurança utilizando Ultralytics YOLO11 ?
Para reduzir os falsos positivos, certifique-se de que o seu modelo Ultralytics YOLO11 é adequadamente treinado com um conjunto de dados diversificado e bem anotado. O ajuste fino dos hiperparâmetros e a atualização regular do modelo com novos dados podem melhorar significativamente a precisão da deteção. As técnicas detalhadas de afinação de hiperparâmetros podem ser encontradas no nosso guia de afinação de hiperparâmetros.