Table des matières
1. Identification et suivi des piétons
2. Former un réseau de classification multi-étiquettes
Téléchargez PaddleClas
Maison Périphériques technologiques IA L'IA vous a clairement vu, YOLO+ByteTrack+réseau de classification multi-étiquettes

L'IA vous a clairement vu, YOLO+ByteTrack+réseau de classification multi-étiquettes

Apr 14, 2023 pm 06:25 PM
网络 ai yolo

Aujourd'hui, je vais partager avec vous un système d'analyse des attributs des piétons. Les piétons peuvent être identifiés à partir de flux vidéo ou de caméras et les attributs de chaque personne peuvent être marqués.

LIA vous a clairement vu, YOLO+ByteTrack+réseau de classification multi-étiquettes

Les attributs identifiés comprennent les 10 catégories suivantes

LIA vous a clairement vu, YOLO+ByteTrack+réseau de classification multi-étiquettes

Certaines catégories ont plusieurs attributs, si l'orientation du corps est : avant, côté et arrière, il y a donc 26 attributs dans l'entraînement final.

Il faut 3 étapes pour mettre en œuvre un tel système :

  • Utilisez YOlOv5 pour identifier les piétons
  • Utilisez ByteTrack pour suivre et marquer la même personne
  • Formez un réseau de classification d'images multi-étiquettes pour identifier 26 attributs des piétons

1. Identification et suivi des piétons

La reconnaissance des piétons utilise le modèle de détection de cible YOLOv5. Vous pouvez entraîner le modèle vous-même ou utiliser directement le modèle pré-entraîné YOLOv5.

Le suivi des piétons utilise la technologie MOT (Multi-Object Tracking Technology). La vidéo est composée d'une seule image. Bien que nous, les humains, puissions identifier la même personne sur différentes images, si le piéton n'est pas suivi, l'IA ne peut pas l'identifier. La technologie MOT est nécessaire pour suivre la même personne et attribuer un identifiant unique à chaque piéton.

La formation et l'utilisation du modèle YOLOv5, ainsi que les principes et les solutions de mise en œuvre de la technologie de suivi multi-objets (MOT), sont détaillés dans l'article précédent. Les amis intéressés peuvent consulter l'article « Statistiques YOLOv5+ByteTrack ». " Flux de circulation ».

2. Former un réseau de classification multi-étiquettes

La plupart des classifications d'images avec lesquelles nous sommes entrés en contact pour la première fois étaient une classification à étiquette unique, c'est-à-dire : une image est classée en 1 catégorie, et la catégorie peut être composée de deux catégories ou de plusieurs catégories. . En supposant qu'il existe trois catégories, le label correspondant à chaque image peut être au format général suivant :

001.jpg010
002.jpg100
003.jpg100
Copier après la connexion

label​Une seule position vaut 1.

Le réseau de classification multi-étiquettes que nous allons entraîner aujourd'hui est une image qui contient plusieurs catégories en même temps. Le format de l'étiquette est le suivant :

001.jpg011
002.jpg111
003.jpg100
Copier après la connexion

l'étiquette​ peut avoir plusieurs positions de 1.

Il existe deux options pour former un tel réseau. La première consiste à traiter chaque catégorie comme une classification à étiquette unique, à calculer la perte séparément, à résumer le total et à calculer le gradient pour mettre à jour les paramètres du réseau.

L'autre peut être formé directement, mais vous devez faire attention aux détails du réseau. Prenez ResNet50 comme exemple

resnet50 = ResNet50(include_top=False, weights='imagenet')

# 迁移学习,不重新训练卷积层
for layer in resnet50.layers:
layer.trainable = False

# 新的全连接层
x = Flatten()(resnet50.output)
x = Dense(1024)(x)
x = Activation('relu')(x)
x = BatchNormalization()(x)
x = Dropout(0.5)(x)

# 输出 26 个属性的多分类标签
x = Dense(26, activatinotallow='sigmoid')(x)

model = Model(inputs = resnet50.input, outputs=x)
Copier après la connexion

La fonction d'activation de la couche de sortie finale doit être sigmoïde, car la probabilité doit être calculée séparément pour. chaque attribut. De la même manière, la fonction de perte lors de l'entraînement doit également utiliser binaire_crossentropy.

En fait, les principes des deux méthodes ci-dessus sont similaires, mais la charge de travail de développement est différente.

Pour plus de commodité ici, j'utilise PaddleCls pour l'entraînement. La configuration de Paddle est simple, mais son inconvénient est qu'il s'agit un peu d'une boîte noire, vous ne pouvez suivre que ses propres règles, et il est plus difficile de la personnaliser.

La formation du modèle utilise l'ensemble de données PA100K. Il convient de noter que bien que l'étiquette d'origine définie par l'ensemble de données PA100K ait la même signification que Paddle, l'ordre est différent.

Par exemple : le 1er chiffre de l'étiquette d'origine indique si l'étiquette est féminine, tandis que Paddle requiert le 1er chiffre pour indiquer si l'étiquette porte un chapeau, et le 22e chiffre représente si l'étiquette est féminine.

LIA vous a clairement vu, YOLO+ByteTrack+réseau de classification multi-étiquettes

Il nous suffit d'ajuster la position originale de l'étiquette en fonction des exigences de Paddle, afin qu'il nous soit plus facile de raisonner plus tard.

Téléchargez PaddleClas

git clone https://github.com/PaddlePaddle/PaddleClas
Copier après la connexion

Décompressez l'ensemble de données téléchargé et placez-le dans le répertoire de l'ensemble de données de PaddleClas.

Recherchez le fichier de configuration ppcls/configs/PULC/person_attribute/PPLCNet_x1_0.yaml et configurez les chemins d'image et d'étiquette. Le format de

DataLoader:
Train:
dataset:
name: MultiLabelDataset
image_root: "dataset/pa100k/" #指定训练LIA vous a clairement vu, YOLO+ByteTrack+réseau de classification multi-étiquettes所在根路径
cls_label_path: "dataset/pa100k/train_list.txt" #指定训练列表文件位置
label_ratio: True
transform_ops:

Eval:
dataset:
name: MultiLabelDataset
image_root: "dataset/pa100k/" #指定评估LIA vous a clairement vu, YOLO+ByteTrack+réseau de classification multi-étiquettes所在根路径
cls_label_path: "dataset/pa100k/val_list.txt" #指定评估列表文件位置
label_ratio: True
transform_ops:
Copier après la connexion

train_list.txt est

00001.jpg0,0,1,0,....
Copier après la connexion

Après la configuration, vous pouvez directement entraîner

python3 tools/train.py 
-c ./ppcls/configs/PULC/person_attribute/PPLCNet_x1_0.yaml
Copier après la connexion

Après l'entraînement, exporter le modèle

python3 tools/export_model.py 
-c ./ppcls/configs/PULC/person_attribute/PPLCNet_x1_0.yaml 
-o Global.pretrained_model=output/PPLCNet_x1_0/best_model 
-o Global.save_inference_dir=deploy/models/PPLCNet_x1_0_person_attribute_infer
Copier après la connexion

et placer les résultats exportés dans ~/.paddleclas/inference_model/PULC/person_attribute/ In le répertoire

LIA vous a clairement vu, YOLO+ByteTrack+réseau de classification multi-étiquettes

vous pouvez utiliser la fonction fournie par PaddleCls pour appeler directement

import paddleclas

model = paddleclas.PaddleClas(model_name="person_attribute")

result = model.predict(input_data="./test_imgs/000001.jpg")

print(result)
Copier après la connexion

Les résultats de sortie sont les suivants :

[{'attributes': ['Female', 'Age18-60', 'Front', 'Glasses: False', 'Hat: False', 'HoldObjectsInFront: True', 'ShoulderBag', 'Upper: ShortSleeve', 'Lower:Trousers', 'No boots'], 'output': [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 0], 'filename': './test_imgs/000001.jpg'}]
Copier après la connexion

Le processus de formation du modèle se termine ici, l'ensemble de données et le code source de l'ensemble du projet ont été emballé.

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Le dernier portail d'inscription pour le site officiel d'OUYI 2025 Le dernier portail d'inscription pour le site officiel d'OUYI 2025 Mar 21, 2025 pm 05:57 PM

2025 OUYI OKX Enregistrement des prévisions et guides de sécurité de l'entrée: Comprenez le processus d'inscription futur à l'avance et saisissez l'initiative dans le trading d'actifs numériques! Cet article prédit que l'enregistrement OUYI OKX en 2025 renforcera la certification KYC, mettra en œuvre des procédures d'enregistrement régionales et renforcera les mesures de sécurité, telles que la vérification de l'identité multi-facteurs et la reconnaissance des empreintes digitales de l'appareil. Pour assurer une inscription sûre, assurez-vous d'accéder au site Web via des canaux officiels, définissez un mot de passe solide, activez la vérification à deux facteurs et soyez attentif aux sites Web et aux e-mails de phishing. Ce n'est qu'en comprenant le processus d'enregistrement à l'avance et en prévenant les risques que vous pouvez obtenir un avantage dans les futures transactions d'actifs numériques. Lisez maintenant et maîtrisez les secrets de l'enregistrement OUYI OKX en 2025!

Les derniers classements des dix principaux échanges d'applications de monnaie virtuelle dans le cercle de devises 2025 Les derniers classements des dix principaux échanges d'applications de monnaie virtuelle dans le cercle de devises 2025 Mar 27, 2025 pm 07:27 PM

Les dix principales applications de trading de devises virtuelles en 2025 sont les suivantes: 1. Okx, 2. Binance, 3. Gate.io, 4. Bybit, 5. Kraken, 6. Kucoin, 7. Bitget, 8. Htx, 9. Mexc, 10. Coinbase. Ce classement est basé sur des évaluations complètes telles que la sécurité, la liquidité, l'expérience utilisateur et la richesse des fonctionnalités.

Quand Bitcoin a-t-il été émis Quand Bitcoin a-t-il été émis Mar 20, 2025 pm 05:21 PM

Le 3 janvier 2009, Bitcoin est né sur un petit serveur à Helsinki, en Finlande. Satoshi Nakamoto a creusé le premier bloc - le "bloc de création" et a reçu 50 récompenses Bitcoin. Le bloc Genesis contient le texte "The Times 03 / Jan / 2009 chancelier sur le compromis du deuxième renflouement pour les banques", confirmant son temps de naissance et impliquant la crise financière mondiale à l'époque. Cet article explorera les échanges de Bitcoin traditionnels en 2025, tels que OUYI OKX, BINANCE, GATEIO SESAME Open Door et Bitget.

Top 10 de l'échange de devises numériques classement la dernière application de plateforme de trading de devises numériques virtuelle Top 10 de l'échange de devises numériques classement la dernière application de plateforme de trading de devises numériques virtuelle Mar 25, 2025 pm 06:21 PM

Classement des dix principales plates-formes de trading Applications de devises numériques: 1. Okx, 2. Binance, 3. Gate.io, 4. Coinbase, 5. Kraken, 6. Huobi, 7. Kucoin, 8. Crypto.com, 9. Bitfinex, 10. Gemini, lors du choix des transactions, vous devez prendre en compte la sécurité, les frais d'origine, la sélection des utilisateurs, le soutien client, le support client et la supervision et le procédure.

Un résumé des dix principaux applications d'applications d'échange de devises virtuelles numériques en 2025 Un résumé des dix principaux applications d'applications d'échange de devises virtuelles numériques en 2025 Mar 27, 2025 pm 07:18 PM

Les dix principales applications de trading de devises virtuelles numériques en 2025 sont les suivantes: 1. Okx, 2. Binance, 3. Gate.io, 4. Bybit, 5. Kraken, 6. Kucoin, 7. Bitget, 8. Htx, 9. Mexc, 10. Coinbase. Ce classement est basé sur des évaluations complètes telles que la sécurité, la liquidité, l'expérience utilisateur et la richesse des fonctionnalités.

Top 10 de classement des plates-formes de trading de devises virtuelles faciles à utiliser dans le cercle des devises Top 10 de classement des plates-formes de trading de devises virtuelles faciles à utiliser dans le cercle des devises Mar 20, 2025 pm 04:00 PM

Classement des applications de trading de devises virtuelles dans le cercle des devises: 1. Okx, 2. Binance, 3. Gate.io, 4. Huobi Global, 5. Kraken, 6. Coinbase, 7. Kucoin, 8. Crypto.com, 9. Bitfinex, 10. Gemini, lors du choix d'une plate-forme, vous avez besoin d'évaluer soigneusement des facteurs tels que la sécurité, des fees, des fees, des mondes, des mondes.

Top 10 des applications logicielles de trading de devises 2025 Top 10 Top 10 des applications de trading de devises virtuelles Classement Top 10 des applications logicielles de trading de devises 2025 Top 10 Top 10 des applications de trading de devises virtuelles Classement Mar 25, 2025 pm 05:57 PM

Les 10 meilleurs classements des applications de trading de devises virtuelles: 1. Okx, 2. Binance, 3. Gate.io, 4. Coinbase, 5. Kraken, 6. Huobi, 7. Kucoin, 8. Crypto.com, 9. Bitfinex, 10. Gemini, lors du choix des transactions, vous devez considérer la sécurité, la sélection de la monnaie, l'expérience utilisateur, le soutien client, le support client et la supervision et le procédure.

Top 10 des classements d'échange d'applications de monnaie virtuelle en 2025 Top 10 des classements d'échange d'applications de monnaie virtuelle en 2025 Mar 20, 2025 pm 04:30 PM

Les dix principales applications de trading de devises virtuelles sont classées comme suit: 1. Okx, 2. Binance, 3. Gate.io, 4. Huobi Global, 5. Kraken, 6. Coinbase, 7. Kucoin, 8. Crypto.com, 9. Bitfinex, 10. Gemini, lorsque vous choisissez une plate-forme, vous devez évaluer soigneusement des facteurs tels que la sécurité, les fees, les fees, les fees, les fees, les mondes, la plate-forme, vous avez besoin d'évaluer soigneusement des facteurs tels que la sécurité, les fees, les fees, les fees, les devises, la plate-forme.

See all articles