L'ensemble de données utilise des images open source, un total de 6 000 images de feu, chacune marquée avec Fumée dense
etFeu
Deux catégories. 浓烟
和火
两类。
火
浓烟
项目采用YOLO
训练,我已经把数据转成YOLO
格式,并分好了训练集和验证集,见dataset
fire
Projet Dense Smoke
Utilisation de YOLO
Formation, j'ai converti les données enYOLO
Format, et divisé en ensemble d'entraînement et ensemble de vérification, voirdataset
répertoire.
2. Formation
Modifiez le fichier data/coco.yaml et configurez le chemin et la catégorie des données d'entraînement.
Téléchargez le modèle pré-entraîné yolov7.pt, puis vous pourrez commencer la formation
3. Surveillance des incendiesUne fois la formation terminée, recherchez le fichier de modèle généré - best.pt dans le répertoire d'exécution sous le. répertoire yolov7 .
Le modèle que j'ai formé est placé dans le répertoire des poids du code source, nommé fire.pt, et vous pouvez l'utiliser directement.
Avec le modèle, nous l'utilisons pour développer un programme de surveillance.
Tout d'abord, vous devez télécharger le code source de yolov7 sur le projet en cours.
Ensuite, installez pytorch et utilisez pytorch pour charger le modèle yolov7 entraîné.fire_detector = torch.hub.load('./yolov7', 'custom', './weights/fire.pt', source='local')
ret, frame = cap.read() results = self.fire_detector(img_cvt) pd = results.pandas().xyxy[0] # 绘制检测框 for obj in pd.to_numpy(): box_l, box_t = int(obj[0]), int(obj[1]) box_r, box_b = int(obj[2]), int(obj[3]) obj_name = obj[6] if obj_name == 'smoke': box_color = (0, 0, 255) box_txt = '检测到浓烟' else: box_color = (0, 255, 0) box_txt = '检测到大火' frame = cv2.rectangle(frame, (box_l, box_t), (box_r, box_b), box_color, 2) frame = cv2_add_chinese_text(frame, box_txt, (box_l, box_t-40), box_color, 25)
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!