Quest 5

새로 생성한 학습된 Model을 STM32Cube.AI를 사용하여 프로젝트에 적용하기
이전 단계 퀘스트를 수행 한 뒤 진행 할 수 있는 퀘스트입니다.
제출 기간 2022. 9. 19 (월) 14:00 ~ 2022. 9. 25 (일) 23:59

퀘스트

Quest의 다섯번째 단계는 B-L475-IOT01A1 보드로 로깅한 HAR Dataset을 FP-AI-SENSING1에서 제공하는 Tensorflow Script에 적용하여 새로운 Neural Network Model을 생성합니다.

새롭게 만들어진 Model에 대한 Weight 값들을 기존 프로젝트의 Weight 값과 대체하여 Build를 진행해서 FP-AI-SENSING1에서 Default로 제공하는 Model과의 차이점을 확인해 보는 단계입니다.

※ '수행 방법' 하단에 있는 'FP-AI-SENSING Build 문제'에 대한 사항을 꼭 참고해 주시기 바랍니다.

필수 통과 조건

1.
Mobile App과 B-L475-IOT01A1 보드를 이용하여 Human Activity Recognition 을 진행하는 짧은 영상을 레코딩하여 업로드합니다.
(**Mobile App에서는 다양한 Activity에 대한 수정이나 추가가 어려운 부분이 있기 때문에, 가령 보드를 좌우로 흔드는 데이터를 로깅하여 모델링하고 App에서는 Run으로 인식하게 하는 환경을 설정하는 것과 같이 설명과 함께 영상을 보내주시면 평가에 가산점이 부여됩니다.)
 

수행 방법

1.
Quest4 에서 로깅한 데이터들을 이용하여 Quest2 를 다시 참고하셔서 “har_ign” 이라는 이름으로 Keras를 기반으로 새로운 모델을 생성합니다.

 
 
 
2.
STM32CubeMX로 B-L465E-IOT01A1 새로운 프로젝트를 생성합니다.
STM32Cube.AI를 활성화하셔서 아래 그림과 같이 har_ign Model을 Import합니다.
STM32CubeMX를 기반으로 Generate Code를 수행합니다.


 
3.
빈 프로젝트와 har_ign 모델을 적용하여 만든 Code에서 다음과 같이 4개의 파일을 FP-AI-SENSING1 프로젝트에 포함되어 있는 같은 이름의 파일과 대체하여 적용합니다.

 
4.
다시 FP-AI-SENSING1 프로젝트 파일을 빌드하여 Mobile App 과의 연동을 진행합니다.
 

FP-AI-SENSING Build 문제

 
X-CUBE-AI v7.0.0 이후 버전에서 사용하는 Software structure를 FP-AI-SENSING1에 새로 적용한 공실 릴리즈 버전을 아직 배포하지 않았습니다.
(v7.0.0에서 변환한 har_ign.c/.h 파일의 구조가 FP-AI-SENSING1에 적용된 내용과 다를 수 있습니다.)

직접 Migration을 진행하셔도 되고, Keras 버전을 변경한 Anaconda 환경과 X-CUBE-AI v5.0.0을 설치하고, v5.0.0을 STM32CubeMX에서 적용하여 Model을 C code로 변환하면 FP-AI-SENSING1에 바로 적용할 수 있는 har_ign.c/.h 파일을 생성할 수 있습니다.

Quest2를 참고하셔서 Anaconda 환경에서 Python 3.6 버전과 Keras 2.2.4버전을 설치한 새로운 Anaconda환경을 빌드합니다.
(keras 설치 시 마우스 오른쪽 버튼을 클릭하시면 버전을 선택하실 수 있습니다.)

새로운 Anaconda 환경으로 Model을 생성합니다.

STM32CubeMX에서 X-CUBE-AI v5.0.0을 적용하시고 새로 만들어진 Model 파일을 Code Generate를 수행합니다.

만들어진 파일들을 FP-AI-SENSING1에 적용하시면 됩니다.


참조 사이트

로그인 후
참가 상태를 확인할 수 있습니다.