Architecture

시스템 구성

시스템 구성은 매우 간단하다.

처음에는 열화상 카메라와 raspberry pi에 연결된 일반 카메라가 앞 사람을 바라본다.

이후, Tensorflow로 학습한 MobileNet V2 모델을 사용하여 마스크 착용 여부를 확인하고, FLIRPY를 통해 온도가 37.5도 이상인지 확인한다.

앞에 있는 대상이 No Mask이거나 High Temperature인 경우 Google-API를 사용하여 대상의 이름을 검출한다.

그 후, 그 사람의 사진은 저장되고 Telegram 메세지는 위에 나타낸 데이터를 통해 실시간으로 전송된다. Monitor은 실시간 진행 상황을 보여준다.

Diagram

밑에 화면이 깨져 보일 경우 파일을 다운로드해 주세요

Github Repository

Link : https://github.com/osamhack2020/IoT_COVID19-Detector_CO-vision

├── doc
│    ├── PPT
│    │    └── Co-Vision.pdf
│    └── img
│         ├── diagram                    # IoT 연결 사진 설명
│         │    ├── Camera_Module_V2_라즈베리파이와_연결.png.jpg 
│         │    ├── SW-Flowchart.PNG 
│         │    └── flir-lepton-diagram.jpg
│         └── logo                       # 팀 로그
│              ├── Co-Vision_Logo.png 
│              ├── Logo_head.png 
│              └── logo.png
├── src
│    ├── 1. RaspberryPi+Computer         # 라즈베리파이와 컴퓨터 모두 있는 경우
│    │    ├── No_Mask-High_Temp          # 마스크 미착용 & 높은 온도 사람 사진 저장
│    │    │    └── test.txt
│    │    ├── flir_image_extractor.py    # Flir 이미지 추출 코드
│    │    ├── imagezmq.py                # 라즈베리파이에서 사진 보내는 코드
│    │    ├── main_raspberryPi.py        # 라즈베리파이에서 작동하는 코드
│    │    └── main_raspberryPi_server.py # 컴퓨터에서 작동하는 코드
│    ├── 2. Without Computer             # 라즈베리파이만 있는 경우
│    │    ├── No_Mask-High_Temp 
│    │    │    └── test.txt
│    │    ├── flir_image_extractor.py
│    │    └── main_raspberrypi_Final.py
│    ├── 3. Without RaspberryPi          #컴퓨터만 있는 경우
│    │    ├── No_Mask-High_Temp 
│    │    │    └── test.txt
│    │    ├── flir_image_extractor.py 
│    │    ├── main.py                    # gui 환경 코드
│    │    ├── main_without_gui.py        # gui 환경 없는 코드
│    │    └── ui_main_window.py          # gui 기본 세팅 코드
│    ├── sample_videos                   # 예시 영상
│    │    ├── 2번영상_마스크인식카메라.mp4
│    │    ├── 3번영상_열화상카메라.mp4
│    │    ├── donghyeon_video.mp4
│    │    └── junha_video.mp4
│    └── training custom dataset         # 직접 마스크 검출 모델 수정 가능
│         ├── dataset                    # 학습에 필요한 데이터 넣는 파일
│         │    └── test.txt
│         ├── examples
│         │    ├── junha2.PNG
│         │    ├── junha2_Final.png
│         │    ├── test01.png
│         │    ├── test01_detected.png
│         │    ├── test02.png
│         │    ├── test02_detected.png
│         │    ├── test03.png
│         │    └── test03_detected.png
│         ├── face_detector              # 학습에 필요한 파일
│         │    ├── deploy.prototxt
│         │    └── res10_300x300_ssd_iter_140000.caffemodel
│         ├── detect_mask_image.py       # 이미지 마스크 검출
│         ├── detect_mask_video.py       # 영상 마스크 검출
│         ├── mask_detector.model        # 학습 된 데이터로 만든 마스크 검출 모델
│         ├── plot.png                   # Train Loss/ Accuracy 확인 
│         └── train_mask_detector.py     # dataset을 이용해서 학습 하는 코드
├── .gitignore
├── LICENSE
└── README.md

Last updated

Was this helpful?