13.1.12. Edycja systemu plików ROM

Płytki z obsługą ROMFS przechowują w pamięci flash system plików tylko do odczytu, zamontowany na kamerze pod /rom. Jest on dostarczany z domyślnymi modelami uczenia maszynowego płytki i to właśnie tam powinny trafiać modele oraz zasoby produktu: pliki w ROMFS są mapowane w pamięci bezpośrednio z pamięci flash, dzięki czemu duży model ładuje się bez zużywania RAM na kopię. Edytorem do tego celu jest podmenu Tools → ROM File System w IDE.

13.1.12.1. Edytor

Edit ROMFS on OpenMV Cam odczytuje ROMFS podłączonej kamery i otwiera go w edytorze: drzewo plików wraz z przyciskami do dodawania plików, tworzenia folderów, usuwania i wyodrębniania wpisów oraz pobrania modelu wprost z zoo modeli. Odczyt zużycia śledzi, jaką część partycji ROMFS płytki zajmuje zawartość. Nic nie zmienia się na kamerze, dopóki nie naciśniesz Commit, które pyta, czy zapisać wynik z powrotem na kamerze, czy zapisać go do pliku .img na dysku.

Podczas dodawania plików automatycznie zachodzą dwie konwersje. Skrypt .py jest kompilowany krzyżowo do bajtkodu .mpy dla docelowej płytki, a plik modelu jest konwertowany pod akcelerator NPU płytki, gdy płytka go ma, a model tego wymaga. To, co trafia do ROMFS, to zawsze postać, którą kamera wykonuje bezpośrednio.

The Edit ROMFS dialog: a file tree of model and label files, the usage readout, and the Commit, Model Zoo, Add File, New Folder, Delete, and Extract File buttons

Okno dialogowe Edit ROMFS pokazujące domyślną zawartość płytki – jej modele uczenia maszynowego – z odczytem zużycia w prawym dolnym rogu.

Open ROMFS File uruchamia ten sam edytor na pliku obrazu .img na dysku zamiast na podłączonej kamerze, a New ROMFS File rozpoczyna z pustym – tak czy inaczej, to droga do przygotowania obrazu ROMFS offline, do wgrania w produkcji lub dostarczenia wraz z niestandardową kompilacją oprogramowania układowego. Reset ROMFS on OpenMV Cam przywraca ROMFS podłączonej kamery do domyślnych wartości płytki, cofając wszystkie zmiany.

Zobacz także

Budowanie obrazu ROMFS opisuje rolę ROMFS w dostarczaniu aplikacji – co tam umieścić i jak kamera odczytuje to w czasie wykonywania.