설계도를 그려보았다!
그림이.. 알아볼 수 있으면 장땡!
먼저 차량이 어디 있는지, 횡단을 원하는 보행자가 있는지 확인해야한다.
그렇다면 객체 인식된 바운딩 박스의 넓이를 구해보자.
넓이가 일정 크기 이상이다 == 카메라와 가까이 있다 == 횡단보도와 가까이 있다
그렇다면 바운딩 박스의 넓이는 어떻게 구하지?
바운딩 박스의 좌표를 딴다!
"area":int((xywh[2]50)(xywh[3]*50))
박스의 높이, 너비를 이용하여 넓이를 구한다.
환경에 따라 조건문의 넓이를 바꿔줘야 하는 약점이 있지만 현재는 이것이 최선!
바운딩 박스 넓이? 계산 성공!
다음은 YOLOv5 내 실행파일인 detect.py 코드를 정리했다.
우리 프로젝트의 필요한 기능이 아니라면 과감히 제거했다.
코드가 복잡할수록 버그를 양산할 가능성이 높다.
=> detect.py 100줄 가량 지우고 최적화함.