일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 영상처리
- 삼성역량테스트
- 코테 문제
- 딥러닝
- dfs
- DP문제
- DP
- 포스코 AI교육
- tflite
- tinyml
- sort
- 알고리즘
- 포스코 ai 교육
- 초소형머신러닝
- 삼성코테
- bfs문제
- 컴퓨팅사고
- 다이나믹프로그래밍
- 삼성역테
- 임베디드 딥러닝
- 삼성코딩테스트
- 포스코 교육
- MCU 딥러닝
- 코테
- BFS
- 자료구조
- TensorFlow Lite
- 코딩테스트
- dfs문제
- 그리디
- Today
- Total
코딩뚠뚠
[머신러닝 공부] Tiny ML -13 / 인체감지 어플리케이션-1 본문
Chapter13. 인체감지 어플리케이션
"
카메라로 인체를 감지해보자 (CNN)
"
목차 :
- 개요
- 만들고자하는 시스템
- 어플리케이션 아키텍처
- 코드 기본흐름 -> 다음장
- 핵심 함수 분석 -> 다음장
- 마이크로컨트롤러 배포 -> 다음장
참고 repo
개요 :
사람에게 시각은 가장 중요하다고 할 수 있을 정도로 중요한 감각이다.
기계에게 시각 정보는 사람과 달리 너무 복잡하고 구조화되지 않았으며 해석하기 어려운 정보였다.
하지만 합성곱신경망 CNN의 발전으로 기계가 볼 수 있게 하는 프로그램을 만들기 쉬워졌다.
오늘날 시각 모델은 아래 예시 이외에도 매우 다양한 곳에 사용된다.
- 자율주행차량
- 공장자동화
- 번호판인식
- 얼굴인증
- 질병진단
- 카메라어플
이런 시각 모델의 발전을 TinyML에 어떻게 적용하면 확장할 수 있을까?
인터넷 연결 없이도 추론이 가능한 보안의 장점을 이용해 보안시스템, 스토브 등을 구현 할 수 있을것이다.
또한 이 시스템은 저전력의 특성 덕분에 소형 배터리를 이용해서 한참동안 구동될 수 있어 휴대용기기로의 확장도 노릴수있다.
만들고자하는 시스템 :
카메라로 캡처한 이미지를 분류 해내는 임베디드 어플리케이션 구축
모델은 사람이 카메라 시야안에 있을때만 인식하도록 훈련되고 그에 따른 출력을 생성할 수 있을것이다.
- 인체감지 센서를 이용해 사람을 인식할 수 있겠지만 사람만을 인식하지 못하고 정확도가 낮다.
카메라로 인식하기 때문에 추가적으로 카메라 구입이 필요하다 ㅠㅠ
- 나도 구입해야돼서 실제 실행해보는 포스팅은 늦을거같다.. (핑계아님)
어플리케이션 아키텍처 :
이미지 분류 모델 훈련에 사용할 Dataset은 아래와 같다.
11만 5000개의 이미지로 구성되며 각 이미지에는 사람이 포함되어있는지 여부를 나타내는 레이블이 있다.
이 Dataset을 이용해 훈련한 CNN은 용량이 250KB로 이전 포스팅에서의 음성모델보다 용량이 크다.
입력은 96x96 그레이스케일 이미지이고 (96,96,1) 형태의 3D텐서로 제공된다.
- 96x96이 작은것 같지만 복잡한 이미지가 아니기 때문에 충분한 크기이다.
- 이미지의 크기가 커짐에 따라 모델의 복잡도가 크게 증가한다.
- 일반적인 분류모델은 물론 모델에 따라 다르지만 320x320, 255x255 등의 이미지 크기를 사용한다.
모델의 출력은 사람 유무이고 그 확률은 0~255의 범위를 가진다.
그래서 이 책에선 인체감지를 위해 어떤 모델을 사용할까?
MobileNet 아키텍처를 사용한다.
MobileNet은 네이밍만 들어도 모바일용으로 가볍게 만들었음을 알 수 있다.
하지만 지금은 더 가볍고 성능도 좋은 모델도 많이 나왔기 때문에 추후에 다른 모델로 훈련도 해보도록 하자.
동작은 아래와 같다.
카메라모듈 입력
↓
메인루프( 이미지추출 / TFlite 인터프리터 / 감지 응답기) ↔ 모델(Trained)
↓
장치 LED로 출력
아주 간단한 동작이다.
- 이미지 데이터를 모델에 직접 전달할 수 있기 때문에 전처리도 필요치 않다.
다음 포스팅에서는 중요 코드 몇개를 분석해보자.
끝
'공부 > ML&DL' 카테고리의 다른 글
[머신러닝 공부] Tiny ML -15 / 인체감지 어플리케이션-3 (2) | 2022.03.22 |
---|---|
[머신러닝 공부] Tiny ML -14 / 인체감지 어플리케이션-2 (2) | 2022.02.26 |
[머신러닝 공부] Tiny ML -12 / 음성인식 모델훈련하기 -3 (0) | 2022.02.13 |
[머신러닝 공부] Tiny ML -11 / 음성인식 모델훈련하기 -2 (0) | 2022.02.07 |
[머신러닝 공부] Tiny ML -10 / 음성인식 모델훈련하기 -1 (0) | 2022.02.02 |