블랙박스 영상 기반 지능형 고의사고 분석 모델 AI 경진대회

알고리즘 | 코드 제출 평가 | 컴퓨터비전 | 고의교통사고

  • moneyIcon 상금 4,200만 원
  • 1,000명 마감
마감

1. 리더보드 산식

Stage 1 점수

  • 재녹화 여부 판별 결과는 원본과 재녹화 클래스의 F1 점수를 동일하게 평균하는 Macro-F1로 평가합니다.

Stage 2 점수

  • 참가자가는 충돌시점과 진입시점을 프레임 번호로 제출합니다.
  • 제출된 프레임 번호를 영상별 프레임–시간 대응정보를 이용하여 초 단위로 변환한 후 정답시각과 비교합니다.

다음 값은 오답으로 처리합니다.

  • 예측값 누락
  • 결측값 또는 비수치값
  • 음수 프레임
  • 해당 영상의 범위를 벗어난 프레임
  • 허용된 범주 이외의 분류값


Stage 3 점수

※ Stage 3 조향 범주 평가는 차량이 주행 중인 유효 프레임을 대상으로 수행하며, 정지 상태(STOPPED)로 판정된 프레임은 조향 평가 대상에서 제외됩니다.

※ 다만 참가자는 제출 형식의 일관성을 위해 정지 상태를 포함한 모든 프레임에 대해 steer_label을 출력해야 합니다.

※ 정지 상태 프레임의 조향 예측값은 조향 Macro-F1 산정에 반영되지 않습니다.


2. 평가 기준

  • 1차 평가 : Private Score (대회 종료 시점의 Public Score의 종합 점수)
  • Stage별 가중치
  • Stage1 : 0.2
  • Stage2 : 0.4
  • Stage3 : 0.4
  • 2차 평가 : 2차 평가 자료를 제출하고 검증을 통과한 1차 평가 점수 기준 상위 15팀에 대한 종합 평가 진행
  • 2차 평가 항목
  • 2차 평가 대상자 선정은 3개 Stage 점수의 종합 점수로 선정됩니다.


3. 코드 제출 대회 가이드

본 대회는 submit.zip 파일을 제출하는 방식의 '코드 제출 대회'로 진행됩니다. (기본 가이드 문서)

참가자는 아래와 같은 구조로 submit.zip을 구성하여 제출해야 합니다.

아래의 구조와 동일하고 디렉토리 명과 파일 명을 모두 일치 시켜야합니다.

📁 제출 파일 구조 (submit.zip)

submit.zip
├── model/
│ ├── stage1/
│ ├── stage2/
│ └── stage3/
├── inference.py # 반드시 포함
└── requirements.txt
  • script.py는 submit.zip을 제출 시 평가 서버에서 자동으로 실행됩니다.
  • requirements.txt는 pip install -r requirements.txt 명령어로 설치 가능한 형태여야 하며, 추론 시 필요한 모든 패키지를 포함해야 합니다.
  • submit.zip 내 구조는 반드시 일치해야하며, 추가 최상위 폴더가 zip 구조 내 존재하는 경우 등 구조가 불일치하는 경우 설치 오류가 발생합니다.
  • inference.py에는 다음 세 개의 함수를 모두 구현해야 합니다.
  • inferfence.py는 반드시 포함해야하며, 제출하지 않을 시 제출 횟수가 차감됩니다.
def predict_stage1(data_dir, model_dir):
pass

def predict_stage2(data_dir, model_dir):
pass

def predict_stage3(data_dir, model_dir):
pass

각 함수는 다음 컬럼을 포함한 pandas.DataFrame을 반환해야 합니다.

### 출력값 ###
구분 출력 컬럼
Stage 1 ID, answer
Stage 2 ID, collision_frame, entry_frame, evasion_space, entry_side
Stage 3 ID, sample_index, accel_label, steer_label


⚙️ 평가 서버에서 추가되는 항목

제출 시, 평가 서버에서 참가자가 제출한 submit.zip 파일에는 아래 항목이 자동으로 추가됩니다.

submit.zip(예시)
├── model/        # 참가자 구성
├── inference.py       # 참가자 구성
├── requirements.txt   # 참가자 구성
├── data/         # 평가에 사용될 테스트 데이터 (디렉토리 자동 생성)
├── script.py # 채점용 스크립트 (디렉토리 자동 생성)
└── output/submission.csv        # 참가자 추론 결과가 저장되는 경로 (디렉토리 자동 생성)
  • data/ 디렉토리는 실제 평가 데이터를 포함한 경진대회 데이터가 포함되며, 읽기전용으로 쓰기 및 수정이 불가능한 디렉토리입니다.
  • output/ 디렉토리는 참가자의 script.py 실행 결과로 생성된 예측 결과 파일이 저장되는 디렉토리이며, 해당 디렉토리 내에 반드시 submission.csv으로 생성될 수 있어야합니다.
  • 추론 코드에서는 사전학습 가중치를 내려받지 않도록 weights=None (구버전 표기: pretrained=False)으로 모델 구조만 만든 뒤, 제출하신 체크포인트를 load_state_dict 로 불러와야합니다.
  • 평가 환경은 추론 단계에서 인터넷이 차단되어 있어 다운로드가 실패합니다.


💾 제출 파일 용량 제한

  • 제출 파일(zip) 용량 제한: 10GB
  • 압축해제 후 용량 : 최대 32GB


⏱️ 실행 시간 제한

  • 패키지 설치 시간: 최대 10분 (시간 초과 시 설치 오류)
  • 추론 코드 실행 시간: 최대 60분 (시간 초과 시 제출 오류)
  • 전체 추론 실행시간은 Stage 1·2·3의 데이터 로딩, 전처리, 모델 추론, 후처리 및 예측파일 저장시간 모두 포함합니다.


⚙️ 평가 서버 사양

  • GPU: NVIDIA L40S
  • GPU VRAM: 44.7GiB
  • CPU: 7 vCPU
  • CPU RAM: 60GB
  • 패키지 설치 이후 외부 서버 연결 및 파일 다운로드 불가
  • 인터넷 접속: ❌ 비활성화 (패키지 설치 외 외부 서버 연결 및 다운로드 불가)


💾 평가 서버 기본 설치 패키지(라이브러리) 목록

  • 아래의 패키지(라이브러리)는 평가 서버에 기본적으로 설치되어 있으며, 버전이 명시된 아래의 패키지(라이브러리)에 한해서는 다른 버전을 사용할 때 설치 에러가 발생할 수 있으므로 가급적 평가 서버에 기본 설치된 패키지(라이브러리)를 활용하고 제출하는 requirements.txt에는 포함하지 않는 것을 권장드립니다.
  • 라이브러리 설치 에러가 발생하면 설치 오류에 해당하며, 일일 제출 횟수에는 반영되지 않습니다.


1) 주요 설치 패키지(라이브러리)

torch==2.8.0+cu128 and torchvision==0.23.0+cu128.
pandas==2.2.2
numpy==1.26.4
scipy==1.15.3
scikit-learn==1.5.2
joblib==1.5.2
threadpoolctl==3.5.0
opencv-python-headless==4.10.0.84
pillow==10.4.0
av>=15,<17
imageio==2.37.0
imageio-ffmpeg==0.6.0
albumentations==1.4.20
scikit-image==0.24.0
timm==1.0.15
fvcore==0.1.5.post20221221
iopath==0.1.10
yacs==0.1.8
einops==0.8.1
transformers==4.57.6
accelerate==1.9.0
huggingface-hub==0.34.4
safetensors==0.6.2
sentencepiece==0.2.0
tokenizers>=0.22,<0.24
regex==2024.9.11
ultralytics==8.3.170
lap==0.5.12
filterpy==1.4.5
shapely==2.0.6
matplotlib==3.9.2
seaborn==0.13.2
tqdm==4.66.5
loguru==0.7.2
pyyaml==6.0.2
rich==13.9.4
psutil==6.1.1
omegaconf==2.3.0
hydra-core==1.3.2
torchmetrics>=1.4,<2
nvidia-ml-py>=12,<14


2) 주요 설치 시스템 패키지

git
git-lfs
ca-certificates
build-essential
python3
python3-dev
python3-venv
python3-pip
ffmpeg
sudo
libavcodec-dev
libavformat-dev
libavutil-dev
libswscale-dev
libjpeg-dev
libpng-dev
libtiff-dev
libwebp-dev
libffi-dev
libblas3
liblapack3
libomp-dev
libatlas-base-dev
gfortran
cmake
pkg-config
ninja-build
tzdata
zip
unzip
p7zip-full
file
procps
time
jq
libmagic1t64
libgl1
libglib2.0-0t64
libsm6
libxext6
libxrender1


📌 유의사항

  • 제출 시 발생하는 오류의 종류는 두 가지로 정의되며, 일일 제출 횟수 반영에 대한 기준이 다르므로 반드시 숙지하여 진행해야 합니다.
  • 1) 설치 오류 : 제출하는 submit.zip 내부 구조가 불일치한 경우, 패키지 설치 오류 -> 일일 제출 횟수 반영되지 않음
  • 2) 제출 오류 : script.py 코드 실행 후 발생하는 모든 오류 -> 일일 제출 횟수 반영됨
  • script.py 내에서 data 디렉토리의 데이터를 로드하고, output/ 디렉토리에 예측 결과를 반드시 submission.csv의 파일명으로 저장되어야 합니다.
  • 평가 서버 환경은 인터넷 접속이 불가능하므로, 패키지 설치 이후 외부 다운로드가 필요한 코드나 모델은 작동하지 않습니다.


대회 주요 일정

  1. 08.18

    참가 신청 시작

  2. 08.26

    대회 시작

  3. 09.23

    팀 병합 마감

  4. 09.29

    리더보드 제출 마감

  5. 09.30

    대회 종료

  1. 10.05

    2차 평가 자료 제출 마감

  2. 10.15

    2차 평가 및 검증 마감

  3. 10.16

    최종 결과 발표

  4. 11.27

    오프라인 시상식(예정)

1. 리더보드 산식

Stage 1 점수

  • 재녹화 여부 판별 결과는 원본과 재녹화 클래스의 F1 점수를 동일하게 평균하는 Macro-F1로 평가합니다.

Stage 2 점수

  • 참가자가는 충돌시점과 진입시점을 프레임 번호로 제출합니다.
  • 제출된 프레임 번호를 영상별 프레임–시간 대응정보를 이용하여 초 단위로 변환한 후 정답시각과 비교합니다.

다음 값은 오답으로 처리합니다.

  • 예측값 누락
  • 결측값 또는 비수치값
  • 음수 프레임
  • 해당 영상의 범위를 벗어난 프레임
  • 허용된 범주 이외의 분류값


Stage 3 점수

※ Stage 3 조향 범주 평가는 차량이 주행 중인 유효 프레임을 대상으로 수행하며, 정지 상태(STOPPED)로 판정된 프레임은 조향 평가 대상에서 제외됩니다.

※ 다만 참가자는 제출 형식의 일관성을 위해 정지 상태를 포함한 모든 프레임에 대해 steer_label을 출력해야 합니다.

※ 정지 상태 프레임의 조향 예측값은 조향 Macro-F1 산정에 반영되지 않습니다.


2. 평가 기준

  • 1차 평가 : Private Score (대회 종료 시점의 Public Score의 종합 점수)
  • Stage별 가중치
  • Stage1 : 0.2
  • Stage2 : 0.4
  • Stage3 : 0.4
  • 2차 평가 : 2차 평가 자료를 제출하고 검증을 통과한 1차 평가 점수 기준 상위 15팀에 대한 종합 평가 진행
  • 2차 평가 항목
  • 2차 평가 대상자 선정은 3개 Stage 점수의 종합 점수로 선정됩니다.


3. 코드 제출 대회 가이드

본 대회는 submit.zip 파일을 제출하는 방식의 '코드 제출 대회'로 진행됩니다. (기본 가이드 문서)

참가자는 아래와 같은 구조로 submit.zip을 구성하여 제출해야 합니다.

아래의 구조와 동일하고 디렉토리 명과 파일 명을 모두 일치 시켜야합니다.

📁 제출 파일 구조 (submit.zip)

submit.zip
├── model/
│ ├── stage1/
│ ├── stage2/
│ └── stage3/
├── inference.py # 반드시 포함
└── requirements.txt
  • script.py는 submit.zip을 제출 시 평가 서버에서 자동으로 실행됩니다.
  • requirements.txt는 pip install -r requirements.txt 명령어로 설치 가능한 형태여야 하며, 추론 시 필요한 모든 패키지를 포함해야 합니다.
  • submit.zip 내 구조는 반드시 일치해야하며, 추가 최상위 폴더가 zip 구조 내 존재하는 경우 등 구조가 불일치하는 경우 설치 오류가 발생합니다.
  • inference.py에는 다음 세 개의 함수를 모두 구현해야 합니다.
  • inferfence.py는 반드시 포함해야하며, 제출하지 않을 시 제출 횟수가 차감됩니다.
def predict_stage1(data_dir, model_dir):
pass

def predict_stage2(data_dir, model_dir):
pass

def predict_stage3(data_dir, model_dir):
pass

각 함수는 다음 컬럼을 포함한 pandas.DataFrame을 반환해야 합니다.

### 출력값 ###
구분 출력 컬럼
Stage 1 ID, answer
Stage 2 ID, collision_frame, entry_frame, evasion_space, entry_side
Stage 3 ID, sample_index, accel_label, steer_label


⚙️ 평가 서버에서 추가되는 항목

제출 시, 평가 서버에서 참가자가 제출한 submit.zip 파일에는 아래 항목이 자동으로 추가됩니다.

submit.zip(예시)
├── model/        # 참가자 구성
├── inference.py       # 참가자 구성
├── requirements.txt   # 참가자 구성
├── data/         # 평가에 사용될 테스트 데이터 (디렉토리 자동 생성)
├── script.py # 채점용 스크립트 (디렉토리 자동 생성)
└── output/submission.csv        # 참가자 추론 결과가 저장되는 경로 (디렉토리 자동 생성)
  • data/ 디렉토리는 실제 평가 데이터를 포함한 경진대회 데이터가 포함되며, 읽기전용으로 쓰기 및 수정이 불가능한 디렉토리입니다.
  • output/ 디렉토리는 참가자의 script.py 실행 결과로 생성된 예측 결과 파일이 저장되는 디렉토리이며, 해당 디렉토리 내에 반드시 submission.csv으로 생성될 수 있어야합니다.
  • 추론 코드에서는 사전학습 가중치를 내려받지 않도록 weights=None (구버전 표기: pretrained=False)으로 모델 구조만 만든 뒤, 제출하신 체크포인트를 load_state_dict 로 불러와야합니다.
  • 평가 환경은 추론 단계에서 인터넷이 차단되어 있어 다운로드가 실패합니다.


💾 제출 파일 용량 제한

  • 제출 파일(zip) 용량 제한: 10GB
  • 압축해제 후 용량 : 최대 32GB


⏱️ 실행 시간 제한

  • 패키지 설치 시간: 최대 10분 (시간 초과 시 설치 오류)
  • 추론 코드 실행 시간: 최대 60분 (시간 초과 시 제출 오류)
  • 전체 추론 실행시간은 Stage 1·2·3의 데이터 로딩, 전처리, 모델 추론, 후처리 및 예측파일 저장시간 모두 포함합니다.


⚙️ 평가 서버 사양

  • GPU: NVIDIA L40S
  • GPU VRAM: 44.7GiB
  • CPU: 7 vCPU
  • CPU RAM: 60GB
  • 패키지 설치 이후 외부 서버 연결 및 파일 다운로드 불가
  • 인터넷 접속: ❌ 비활성화 (패키지 설치 외 외부 서버 연결 및 다운로드 불가)


💾 평가 서버 기본 설치 패키지(라이브러리) 목록

  • 아래의 패키지(라이브러리)는 평가 서버에 기본적으로 설치되어 있으며, 버전이 명시된 아래의 패키지(라이브러리)에 한해서는 다른 버전을 사용할 때 설치 에러가 발생할 수 있으므로 가급적 평가 서버에 기본 설치된 패키지(라이브러리)를 활용하고 제출하는 requirements.txt에는 포함하지 않는 것을 권장드립니다.
  • 라이브러리 설치 에러가 발생하면 설치 오류에 해당하며, 일일 제출 횟수에는 반영되지 않습니다.


1) 주요 설치 패키지(라이브러리)

torch==2.8.0+cu128 and torchvision==0.23.0+cu128.
pandas==2.2.2
numpy==1.26.4
scipy==1.15.3
scikit-learn==1.5.2
joblib==1.5.2
threadpoolctl==3.5.0
opencv-python-headless==4.10.0.84
pillow==10.4.0
av>=15,<17
imageio==2.37.0
imageio-ffmpeg==0.6.0
albumentations==1.4.20
scikit-image==0.24.0
timm==1.0.15
fvcore==0.1.5.post20221221
iopath==0.1.10
yacs==0.1.8
einops==0.8.1
transformers==4.57.6
accelerate==1.9.0
huggingface-hub==0.34.4
safetensors==0.6.2
sentencepiece==0.2.0
tokenizers>=0.22,<0.24
regex==2024.9.11
ultralytics==8.3.170
lap==0.5.12
filterpy==1.4.5
shapely==2.0.6
matplotlib==3.9.2
seaborn==0.13.2
tqdm==4.66.5
loguru==0.7.2
pyyaml==6.0.2
rich==13.9.4
psutil==6.1.1
omegaconf==2.3.0
hydra-core==1.3.2
torchmetrics>=1.4,<2
nvidia-ml-py>=12,<14


2) 주요 설치 시스템 패키지

git
git-lfs
ca-certificates
build-essential
python3
python3-dev
python3-venv
python3-pip
ffmpeg
sudo
libavcodec-dev
libavformat-dev
libavutil-dev
libswscale-dev
libjpeg-dev
libpng-dev
libtiff-dev
libwebp-dev
libffi-dev
libblas3
liblapack3
libomp-dev
libatlas-base-dev
gfortran
cmake
pkg-config
ninja-build
tzdata
zip
unzip
p7zip-full
file
procps
time
jq
libmagic1t64
libgl1
libglib2.0-0t64
libsm6
libxext6
libxrender1


📌 유의사항

  • 제출 시 발생하는 오류의 종류는 두 가지로 정의되며, 일일 제출 횟수 반영에 대한 기준이 다르므로 반드시 숙지하여 진행해야 합니다.
  • 1) 설치 오류 : 제출하는 submit.zip 내부 구조가 불일치한 경우, 패키지 설치 오류 -> 일일 제출 횟수 반영되지 않음
  • 2) 제출 오류 : script.py 코드 실행 후 발생하는 모든 오류 -> 일일 제출 횟수 반영됨
  • script.py 내에서 data 디렉토리의 데이터를 로드하고, output/ 디렉토리에 예측 결과를 반드시 submission.csv의 파일명으로 저장되어야 합니다.
  • 평가 서버 환경은 인터넷 접속이 불가능하므로, 패키지 설치 이후 외부 다운로드가 필요한 코드나 모델은 작동하지 않습니다.


대회 주요 일정

  1. 08.18

    참가 신청 시작
  2. 08.26

    대회 시작
  3. 09.23

    팀 병합 마감
  4. 09.29

    리더보드 제출 마감
  5. 09.30

    대회 종료
  6. 10.05

    2차 평가 자료 제출 마감
  7. 10.15

    2차 평가 및 검증 마감
  8. 10.16

    최종 결과 발표
  9. 11.27

    오프라인 시상식(예정)