숭실대학교 컴퓨터 동아리 (SoongSil Computing Club)
개발기간: 2022.06~
Version: 0.2.0
웹페이지 : http://ssccounter.sscc.run/
프론트 서버 : http://ssccounter.sscc.run/uploadfile/
Json 요청 : http://ssccounter.sscc.run/ssccounter.json/
백승우 | 원영진 | 이종인 |
---|---|---|
@SWtheWhite | @AI-WonYJ | @bell-person-ii |
SSCC 36th | SSCC 40th | SSCC 39th |
PM & WEB | HardWare & WEB | WEB |
SSCCounter은 동아리방 인원수 카운터 머신입니다. 기존에 많은 사람들이 동아리방에 몇명이나 있는지 문의하는 글이 자주 올라왔었는데, 하루에도 2~3번 씩 올라오는 문의 글로 인해, 중요한 공지 글을 확인하기 힘들었다. 이를 해결하기 위해 동아리방 사용 인원수를 알려주는 머신이 있으면 좋겠다는 요청에 진행된 '2022 여름방학 Smart동방 프로젝트' 중 'nCnt' 개발 프로젝트에서 시작되었습니다. 현재는 Smart동방 프로젝트가 종료됨에 따라 'SSCCounter'라는 이름으로 변경되었으며, 매일 평균 30명 이상이 서비스를 이용하는 동아리 핵심 프로젝트로 진행되고 있습니다.
You can easily check the number of people using the club room by analyzing the images processed by YOLOv3. Thanks to real-time analysis of the club room images, you can instantly verify the number of people without any delays.
Our website supports the following component.
- Last refresh time.
- Last headcount time
- Images that can be checked at a glance according to the number of people.
For building and running the application you need:
$ git clone https://github.com/SoongSilComputingClub/SSCCounter.git
$ cd SSCCounter
$ apt-get update
$ apt-get -y install libgl1-mesa-glx wget
$ pip install -r requirements.txt
$ cd WebServer/yolo_data
$ wget https://pjreddie.com/media/files/yolov3.weights
$ cd CamDevice
$ python3 main.py
$ cd WebServer
$ uvicorn main:app --reload --port=3000 --host=0.0.0.0
- 숫자뿐만 아니라 이미지 또한 인원수에 따라 변하게 하여 한눈에 확인 가능
- 아이콘을 클릭하면 동아리 홍보 페이지나, 소셜 네트워크 페이지로 연결
- 간편하게 버튼 하나로 동아리방 인원수를 새로고침
- Device: capture image
- Analysis: get people count from image
- WebServer: show people count
- Refactor: e.v.e.r.y.(Divide and Unite)
- Add: Dockerfile
- Add: Requirements.txt
- Feat: Github Action
- Update: README.md
- Fix: 307error
- Fix: upload port
- logging 기능 추가
- log 기록을 위한 Database 추가
- UX/UI를 더욱 눈에 띄도록 메인 페이지를 개선
- URL 접속이 아닌, APP을 통해 확인할 수 있는 APP 서비스 출시
- PUSH 알림 등으로 더욱 간편하게 확인
- 동아리 외부인이 접속할 수 없도록 로그인 기능 추가
- 온도 및 습도 정보와 공기 오염도를 확인할 수 있는 기능 추가
- 요일과 날씨, 학교 행사 정보 등을 이용해 동아리방 인원수를 예측
- YOLOv3 -> YOLOv4, 5, ... 8 중 상위 모델로 업그레이드
.
├── README.md
├── Dockerfile
├── LICENSE
├── requirements.txt
├── CamDevice
│ ├── main.py
│ └── utils
│ ├── image_creater
│ │ ├── cv2.py
│ │ └── pi.py
│ └── image_sender.py
└── WebServer
├── main.py
├── static
│ ├── css
│ │ ├── contribute.css
│ │ ├── contribute2
│ │ ├── main(Ver_2).css
│ │ ├── main.css
│ │ └── new.css
│ └── images
│ ├── 0 people.png
│ ├── 1 people.png
│ ├── 2 people.png
│ ├── 3 people.png
│ ├── 3analysis.jpg
│ ├── 4 people.png
│ ├── 5 people.png
│ ├── 6 people.png
│ ├── Kakao_lion.png
│ ├── SSCC_logo.png
│ ├── SSCC_logo_rev.png
│ ├── analysis.jpg
│ ├── analysis_outdoor.jpg
│ ├── discord.png
│ ├── facebook.png
│ ├── humidity.png
│ ├── instagram.png
│ ├── kakao.png
│ ├── logo.png
│ ├── notion.png
│ ├── people.png
│ ├── photo_out.jpg
│ └── temperature.png
├── temp
│ ├── analysis.jpg
│ └── photo.jpg
├── templates
│ ├── Contribute.html
│ ├── docs.html
│ ├── image.html
│ ├── index(Ver_8).html
│ ├── manager.html
│ ├── new.html
│ └── test.html
├── utils
│ └── count
│ ├── yolo.py
│ └── yolo_test.py
└── yolo_data
├── yolov3.cfg
├── yolov3.weights
└── yolov3.md