13.1.14. Modifier le système de fichiers ROM#
Les cartes prenant en charge ROMFS embarquent un système de fichiers en lecture seule dans la mémoire flash, monté sur la caméra à /rom. Il contient les modèles d’apprentissage automatique par défaut de la carte, et c’est là que les modèles et ressources d’un produit doivent se trouver : les fichiers dans ROMFS sont mappés en mémoire directement depuis la mémoire flash, de sorte qu’un grand modèle se charge sans consommer de RAM pour une copie. Le sous-menu Tools → ROM File System de l’IDE en est l’éditeur.
13.1.14.1. L’éditeur#
Edit ROMFS on OpenMV Cam lit le ROMFS de la caméra connectée et l’ouvre dans l’éditeur : une arborescence de fichiers, plus des boutons pour ajouter des fichiers, créer des dossiers, supprimer et extraire des entrées, et importer directement un modèle depuis le model zoo. Un affichage d’utilisation indique quelle part de la partition ROMFS de la carte le contenu occupe. Rien n’affecte la caméra jusqu’à ce que vous pressiez Commit, qui demande s’il faut réécrire le résultat sur la caméra ou l’enregistrer dans un fichier .img sur le disque.
Deux conversions ont lieu automatiquement à mesure que vous ajoutez des fichiers. Un script .py est compilé en bytecode .mpy pour la carte cible, et un fichier de modèle est converti pour l’accélérateur NPU de la carte lorsqu’elle en a un et que le modèle en a besoin. Ce qui atterrit dans le ROMFS est toujours la forme que la caméra exécute directement. Les fichiers glissés depuis votre gestionnaire de fichiers passent par les mêmes conversions, dans le dossier sur lequel vous les déposez – ou la racine lorsque vous les déposez sur un espace vide.

La boîte de dialogue Edit ROMFS affichant le contenu par défaut d’une carte – ses modèles d’apprentissage automatique – avec l’affichage d’utilisation en bas à droite.#
Open ROMFS File exécute le même éditeur sur un fichier image .img sur le disque au lieu d’une caméra connectée, et New ROMFS File le démarre à vide – dans les deux cas, c’est la voie pour préparer une image ROMFS hors ligne, en vue d’un flashage en production ou d’une livraison aux côtés d’une compilation de micrologiciel personnalisée. Reset ROMFS on OpenMV Cam restaure le ROMFS de la caméra connectée à ses valeurs par défaut, annulant toutes les modifications.
La lecture et l’écriture du ROMFS de la caméra passent par son programme d’amorçage, avec une boîte de dialogue de progression que vous pouvez annuler. Annuler une lecture l’abandonne simplement ; annuler une écriture laisse le ROMFS partiellement écrit, donc exécutez Reset ROMFS ou validez à nouveau avant de vous y fier. Dans les deux cas, l’IDE demande au programme d’amorçage de redémarrer la caméra et attend qu’elle revienne – et si la caméra reste en mode programme d’amorçage, il le signale, et la boîte de dialogue du programme d’amorçage à la connexion suivante propose les mêmes actions de réinitialisation et d’édition.
Voir aussi
Construire une image ROMFS pour le rôle de ROMFS dans la livraison d’une application – ce qu’il faut y placer et comment la caméra le lit à l’exécution.