13.1.12. ROM 파일 시스템 편집하기#

ROMFS를 지원하는 보드는 플래시에 읽기 전용 파일 시스템을 갖추고 있으며, 이는 카메라의 /rom에 마운트됩니다. 여기에는 보드의 기본 머신러닝 모델이 포함되어 출하되며, 제품의 모델과 에셋이 속해야 하는 곳입니다. ROMFS의 파일은 플래시에서 직접 메모리 매핑되므로, 큰 모델은 복사본을 위해 RAM을 소비하지 않고 로드됩니다. IDE의 Tools → ROM File System 하위 메뉴가 이를 위한 편집기입니다.

13.1.12.1. 편집기#

Edit ROMFS on OpenMV Cam은 연결된 카메라의 ROMFS를 읽어 편집기에서 엽니다. 파일 트리와 함께 파일 추가, 폴더 생성, 항목 삭제 및 추출, 그리고 모델 동물원에서 모델을 바로 가져오는 버튼이 있습니다. 사용량 표시 영역은 보드의 ROMFS 파티션 중 콘텐츠가 차지하는 양을 추적합니다. Commit을 누르기 전까지는 카메라에 아무런 변경이 가해지지 않으며, Commit은 결과를 카메라에 다시 쓸지 아니면 디스크의 .img 파일로 저장할지를 묻습니다.

파일을 추가할 때 두 가지 변환이 자동으로 일어납니다. .py 스크립트는 대상 보드용 .mpy 바이트코드로 크로스 컴파일되고, 모델 파일은 보드에 NPU 가속기가 있고 모델이 필요로 할 때 해당 보드의 NPU 가속기용으로 변환됩니다. ROMFS에 들어가는 것은 항상 카메라가 직접 실행하는 형식입니다.

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

보드의 기본 콘텐츠, 즉 머신러닝 모델을 보여 주는 Edit ROMFS 대화 상자이며, 오른쪽 하단에 사용량 표시 영역이 있습니다.#

Open ROMFS File은 연결된 카메라가 아니라 디스크의 .img 이미지 파일에 대해 동일한 편집기를 실행하고, New ROMFS File은 비어 있는 상태로 시작합니다. 어느 쪽이든 생산 시 플래싱하거나 사용자 정의 펌웨어 빌드와 함께 출하하기 위해 ROMFS 이미지를 오프라인으로 준비하는 경로입니다. Reset ROMFS on OpenMV Cam은 연결된 카메라의 ROMFS를 보드의 기본값으로 복원하여 모든 편집을 취소합니다.

더 보기

애플리케이션 출하에서 ROMFS의 역할(거기에 무엇을 넣을지, 그리고 카메라가 런타임에 이를 어떻게 읽는지)에 대해서는 ROMFS 이미지 빌드하기를 참조하십시오.