13.1.14. Úprava systému souborů ROM#

Desky s podporou ROMFS nesou ve flash paměti systém souborů určený pouze pro čtení, připojený na kameře pod /rom. Dodává se s výchozími modely strojového učení dané desky a je to místo, kam patří modely a aktiva produktu: soubory v ROMFS jsou mapovány do paměti přímo z flash paměti, takže velký model se načte bez spotřeby RAM na kopii. Editorem pro něj je podnabídka Tools → ROM File System v IDE.

13.1.14.1. Editor#

Edit ROMFS on OpenMV Cam přečte ROMFS připojené kamery a otevře jej v editoru: strom souborů plus tlačítka pro přidávání souborů, vytváření složek, mazání a extrahování položek a stažení modelu přímo z model zoo. Údaj o využití sleduje, kolik z oddílu ROMFS dané desky obsah zabírá. Dokud nestisknete Commit, kamery se nic nedotkne; ten se zeptá, zda výsledek zapsat zpět do kamery, nebo jej uložit do souboru .img na disk.

Při přidávání souborů probíhají automaticky dva převody. Skript .py se zkompiluje na bytekód .mpy pro cílovou desku a soubor modelu se převede pro NPU akcelerátor desky, pokud jej deska má a model jej potřebuje. To, co skončí v ROMFS, je vždy podoba, kterou kamera spouští přímo. Soubory přetažené ze správce souborů procházejí stejnými převody, do složky, na kterou je upustíte – nebo do kořene, když je upustíte na prázdné místo.

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

Dialog Edit ROMFS zobrazující výchozí obsah desky – její modely strojového učení – s údajem o využití vpravo dole.#

Open ROMFS File spustí stejný editor nad souborem obrazu .img na disku místo nad připojenou kamerou a New ROMFS File jej spustí prázdný – v obou případech je to cesta k přípravě obrazu ROMFS offline, pro flashování ve výrobě nebo dodávku spolu s vlastním sestavením firmwaru. Reset ROMFS on OpenMV Cam obnoví ROMFS připojené kamery do výchozích hodnot desky a vrátí zpět všechny úpravy.

Čtení a zápis ROMFS kamery probíhá přes její bootloader, s dialogem průběhu, který můžete zrušit. Zrušení čtení je prostě opustí; zrušení zápisu zanechá ROMFS částečně zapsaný, takže než se na něj spolehnete, spusťte Reset ROMFS nebo znovu proveďte commit. V obou případech IDE požádá bootloader o restart kamery a počká, až se vrátí – a pokud kamera místo toho zůstane v režimu bootloaderu, oznámí to a dialog bootloaderu při dalším připojení nabídne tytéž akce resetu a úprav.

Viz také

Sestavení obrazu ROMFS k roli ROMFS při dodávce aplikace – co tam umístit a jak to kamera čte za běhu.