Skip to content

dbspq52/git-tutorial

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

교통 사고 시각화 및 분석 시스템

실행 방법

  1. 데이터 파일 배치:

    • data 파일이 커 압축파일로 올리게 되었습니다.
    • 그러므로 해당 압축 파일을 풀고
    • 압축을 푼 디렉터리 안에 있는 파일을
    • 다시 data 디렉터리에 배치해주시면 감사하겠습니다!
  2. Python 가상 환경 설정:

    • Mac/Linux:
      python -m venv venv
      source venv/bin/activate
    • Windows:
      python -m venv venv
      venv\Scripts\activate 
  3. 의존성 설치:

    pip install -r requirements.txt
  4. 애플리케이션 실행:

    python app.py

프로젝트 구조

.
├── data/                   # 원본 및 전처리된 데이터 파일
│   ├── metr-la.modified.h5    # LA 교통 속도 데이터
|   ├── metr-la.modified.csv   # LA 교통 속도 데이터
|   ├── graph_sensor_locations.csv #센서 위치 데이터
│   ├── Filtering.csv        # 교통 사고 데이터 
|   ├── predicted.csv        # stgcn에 쓸 속도 데이터
│   ├── STGCN_metr-la.pt    # 학습한 파일
│
├──data_processing/
│   ├── convert.py          #데이터 변환 할 파일
│
├── templates/              # 시각화를 위한 HTML 템플릿
│   ├── analysis_collision.html    # 단일 사고 분석
|   ├── analysis_prediction.html   # STGCN 활용 page
│   ├── index.html          # 홈 페이지 구성
|
├── static/                 # CSS, JS 등 정적 파일
│   ├──cs/
|   │   ├──analysis_copy.css  #analysis_prediction.html에 대한 css
│   │   ├──analysis_.css #analysis.html에 대한 css
│   │   ├──style.css #index.html에 대한 css
│   ├──js/
│   │   ├──analysis_predict.js
│   │   ├──analysis.js
│   │   ├──analysis2_predict.js
│   │   ├──analysis2.js
│   │   ├──script.js
├── app.py                  # API 서버
├── predict.py              # STGCN 관련 파일
├── predict2.py             # STGCN 관련 파일
├── requirements.txt        # 의존성 패키지 리스트
└── README.md               # 프로젝트 설명 파일

시스템 구조

  1. 백엔드: Flask를 사용하여 API를 제공합니다.

    • 역할: 데이터베이스와 통신하여 데이터를 가공하고, 클라이언트에 JSON 형태로 응답을 전달합니다.
  2. 프론트엔드: HTML, CSS, D3.js로 구현되었습니다.

    • 역할: 데이터를 시각화하고 사용자가 지도와 그래프를 통해 데이터를 탐색할 수 있도록 지원합니다.

작동 흐름

  1. 홈 페이지:

    • 월별, 일별, 시간별로 충돌에 대한 통계를 확인할 수 있습니다.
    • 왼쪽 지도에서는 통계 결과에 해당하는 충돌 지점들을 확인할 수 있습니다.
  2. 충돌 지점 상세 분석:

    • 충돌 지점을 클릭하면 해당 충돌 정보와 관련된 분석 페이지가 나타납니다.

    2-1. 타임슬라이드 기능:

    • 충돌 2시간 전부터 6시간 후까지의 데이터를 타임슬라이더를 통해 확인할 수 있습니다.
    • 재생 및 정지 버튼을 통해 5분 단위로 변화하는 데이터를 실시간으로 확인할 수 있습니다.

    2-2. 교통 흐름 시각화:

    • 타임슬라이더에 표시된 시간에 따른 센서 측정 속도값을 기반으로 지도에 교통 흐름 정보가 색상으로 표시됩니다.

    2-3. 최단 경로 계산:

    • 지도에서 출발지와 목적지를 설정하여 도로 근처 센서를 경유하는 소요 시간을 가중치로 한 최단 경로를 계산합니다.
    • 최단 경로는 타임슬라이더 변화에 따라 자동으로 업데이트됩니다.

    2-4. 속도 비교 그래프:

    • 충돌 지점의 사용자가 지정한 반경 내 센서들의 평소 평균 속도와 충돌 후 6시간 동안의 평균 속도를 비교한 그래프가 표시됩니다.
    • 평소 평균 속도는 파란선, 충돌 후 평균 속도는 빨간선으로 나타납니다.
    • 사용자가 반경을 직접 지정하여 반경에 따른 통계 정보를 확인할 수 있습니다.
  3. 충돌 예측 기능:

    • 시작 페이지에서 충돌 예측 탭을 클릭하여 날짜, 시간, 센서 근처 충돌 위치를 지정해 예측 데이터를 생성할 수 있습니다.
    • 예측 데이터는 충돌 시점으로부터 6시간 동안의 센서별 속도 정보를 포함하며, 분석 페이지와 동일한 방식으로 데이터를 확인할 수 있습니다.

프로젝트 목표

  • 뉴욕시 교통 사고와 그 영향을 시각화하고 분석하는 VA 시스템 개발.
  • 사고 발생 전후 교통 패턴 변화를 시각적으로 표현하고 분석하는 도구 개발.
  • 사고 영향의 시공간적 확산을 예측 및 시각화하는 기능 구현.

평가 기준

  1. 데이터 분석 통찰력:

    • 충돌 이후 교통 속도 변화 분석을 통해 특정 시간대(6시간 이내)에 발생하는 교통 흐름 변화를 확인할 수 있습니다.
    • 평소 데이터(3월부터 6월까지의 평균)와 비교하여 충돌의 영향을 정량적으로 파악하고, 이를 통해 지역별 사고 후 회복 시간과 교통 흐름 변화 패턴을 도출합니다.
  2. 시각화 도구의 정보 전달력:

    • D3.js를 활용한 동적 시각화를 통해 데이터 변화를 직관적으로 확인할 수 있도록 설계했습니다.
    • 시간대별 교통 속도 변화와 충돌 전후 비교를 인터랙티브 그래프로 표현하여 사용자가 데이터를 쉽게 이해하고 활용할 수 있도록 했습니다.
    • 지도와 그래프를 연동해 범위별 데이터 필터링 및 충돌 영향 지역 파악을 가능하게 하고, 사용자 친화적인 인터페이스를 제공합니다.
  3. 예측 모델의 성능:

    • 사고 데이터를 활용하여 충돌 발생 후 6시간 동안의 평균 속도 변화를 예측하는 모델을 설계했습니다.
    • 기본적인 예측 모델을 구축하여 정확도를 측정하고, 모델이 제공하는 정보의 실질적 활용 가능성을 검증했습니다.
    • 예측 모델은 향후 교통 혼잡 패턴 예측 및 사고 대응 시스템의 핵심 기반으로 확장 가능합니다.
  4. 시스템의 확장성:

    • 시스템 구조는 새로운 데이터(예: 추가 충돌 데이터, 센서 정보)를 쉽게 통합할 수 있도록 설계되었습니다.
    • API 기반의 모듈형 설계와 데이터 처리 파이프라인을 통해 다양한 데이터 소스와의 연동 및 기능 확장이 용이합니다.
    • 교통 데이터 외에도 날씨, 도로 상태 등의 추가 요인을 결합하여 모델 성능을 개선하거나 다른 지역으로 시스템을 확장할 수 있습니다.
  5. 프로젝트 결과물의 실용성:

    • 교통 관리 기관에서 사고 후 교통 흐름 회복 시간을 예측하고 혼잡 최소화를 위한 전략 설계에 활용할 수 있는 실질적 도구를 제공합니다.
    • 정책 설계 외에도 시뮬레이션 도구로 사용 가능하며, 교통 흐름 데이터를 분석해 운영 효율성을 개선할 수 있는 실용성을 갖추고 있습니다.
  6. 정책 결정에 대한 기여도:

    • 분석 결과를 통해 지역별 사고 영향 분석 및 회복 시간 예측에 기초한 효과적인 교통 관리 정책 설계가 가능합니다.
    • 특정 지역에서 충돌 후 혼잡이 심화되는 시간대를 예측하여 대체 경로 제공이나 교통 분산 전략을 제안할 수 있습니다.
    • 장기적으로는 사고 예방 및 구조 개선을 위한 정책적 제언을 도출할 수 있습니다.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published