/AI-Cycle

[2020-2 휴먼프밍 겨울프로젝트] Computer Vision을 활용한 분리배출 모니터링 CCTV

Primary LanguageJupyter NotebookApache License 2.0Apache-2.0

AI-Cycle♻️

Application of AI Super Resolution and Object Detection for Surveillance Cameras Monitoring Recycling Process
(2021.01.18~2021.03.08)

Overview

recycling
인공지능 초해상화 알고리즘과 이미지 인식을 활용한 재활용 모니터링 CCTV

플라스틱 제품의 재활용률은 선별량 대비 50% 미만의 수치를 보이고 있다. 이에 대한 해결책으로 재활용 전 선별이 중요시되고 있다. 본 프로젝트는 재활용 전 선별 방법으로 2020년 12월 개정된 “재활용가능자원의 분리수거 등에 관한 지침”에 주목하고, 사람들에게 해당 내용에 대해 안내함으로써 분리배출 과정에서의 개선을 제안한다.
사물인식 기술을 활용해 CCTV 영상 속 버려지는 플라스틱 제품의 종류를 파악한다. 서울시 공동주택을 기준으로 개정된 분리배출 지침에 어긋나는 경우를 발견했을 때 사람들에게 올바른 분리배출 방법을 알려주는 것을 목표로 한다.

Data

Train

  • [Super Resolution] BSDS300, DIV2K 데이터셋을 활용해 모델을 학습하였다.
  • [Object Detection] 이미지 크롤링을 통해 데이터셋을 직접 구축하였다. 자세한 내용은 preprocess 에서 확인할 수 있다.

Test

  • Video
  • Webcam

Technology Stack

tech stack

Models

Flowchart
flowchart

Results

vid_label test_label(1) test_label(2)
SR + OD 결과, 플라스틱 제품을 각각 Clean / Labeled / Colored 로 알맞게 탐지한 것을 확인할 수 있다.
Labeled + Colored 제품의 경우 Label의 부착 여부를 우선으로 선별하도록 하였다.

vid_recycle test_recycle(1) test_recycle(2)
무색(clean) 플라스틱의 분리배출 동작 중 화질 개선 및 객체 탐지를 진행하였다.
물체가 분리배출되는 짧은 순간을 감지한 것을 확인할 수 있었다.

Usage

Clone Repository

HTTPS:
git clone https://github.com/Taehee-K/AI-Cycle

SSH: 
git clone git@github.com:Taehee-K/AI-Cycle

구글 코랩(Colab)에서 실행하기(권장)

  • Colab에서 [런타임] - [런타임 유형 변경] - 하드웨어 가속기(GPU) 사용을 권장합니다.
  • SR + OD >> Video: Open In Colab
  • OD >> Webcam: Open In Colab

로컬에서 실행하기

Note: Jupyter Notebook 안의 모델 & 파라미터 경로들이 다 상대적이지는 않습니다. 실행 전 주석에 따라 리팩토링이 필요할 수 있습니다.

Contributors

Super Resolution
고은지 김태희* 이수연 이지호

Object Detection
양원재 정성경* 최미소

References

Structure

AI-Cycle
├── README.md
├── LICENSE
├── preprocess
│   ├───crawling.py
│   └───README.md
│
├── data
│   ├───classes.names
│   ├───yolov4_custom_test.cfg
│   ├───yolov4_custom_train.cfg
│   └───yolov4_custom_train.weights
│
├── models
│   ├───export_ep700
│   ├───ESPCN(ep_700).ipynb
│   └───YOLOv4.ipynb
│
├── results
│   ├───od_webcam.ipynb
│   └───sr_od_video.ipynb
│