Back to Projects
Computer Vision2023.06 ~ 2024.12

MF-LPR2

Multi-Frame License Plate Restoration & Recognition 블랙박스 영상에서 흐릿한 자동차 번호판을 고화질로 복원하는 딥러닝 기반 화질 개선 시스템입니다.

저화질 블랙박스 영상의 번호판을 다중 프레임 기반으로 복원하고 인식 가능한 품질로 개선했습니다.

Source
MF-LPR2 preview
DomainComputer Vision
Timeline2023.06 ~ 2024.12
Core Stack
PyTorchOpenCV

My Contribution

번호판 세그멘테이션, 시점 보정, scene text prior 기반 후처리 실험과 구현을 담당했습니다.

  1. DeepLabV3 기반 번호판 세그멘테이션

    번호판 영역 검출 모델 구현 및 최적화, Precision 89%, Recall 87.5% 달성, Homography 기반 시점 보정 알고리즘 개발

  2. TCDM 기반 후처리

    Scene Text Prior를 활용한 번호판 복원 모델 구현, Hallucination 현상 제거 및 복원 정확도 향상, ESRGAN, SwinIR 등 기존 모델 대비 우수한 성능 달성

What It Does

  1. DeepLabV3 기반 번호판 세그멘테이션

    블랙박스 영상에서 번호판 영역을 정확하게 추출

  2. FlowFormer++ 기반 Optical Flow 추정

    프레임 간 움직임을 정확하게 추정하여 정렬

  3. 시공간적 일관성 보정

    프레임 정렬을 통한 안정적인 영상 처리

  4. CLAHE를 통한 대비 향상

    영상의 대비를 개선하여 가독성 향상

  5. TCDM 기반 후처리

    Scene Text Prior를 활용한 번호판 복원

Technical Approach

  1. License Plate Region Extraction

    DeepLabV3로 번호판 영역 추출 → 고정 비율(4:1)로 업샘플링, Homography를 이용해 시점 보정, 최종적으로 1장의 Pseudo-GT + 31장의 LR 번호판 프레임으로 구성

  2. Optical Flow Estimation & Refinement

    FlowFormer++를 통해 각 프레임의 움직임 추정, Temporal/Spatial Smoothness 기반 오류 보정 수행, 기준 프레임으로 모든 프레임 정렬 (De-warping)

  3. Aggregation & Post-processing

    정렬된 프레임들을 집계하여 하나의 이미지로 생성, CLAHE로 대비 개선, TCDM으로 Scene Text Prior를 활용한 복원 향상

Performance

0.890
Detection Precision
0.875
Detection Recall
3.71%
평균 RMSE 개선
13.37%
Worst 30% frame 기준 RMSE 개선

Tech Stack

Languages & Frameworks

  • Python
  • PyTorch
  • OpenCV

ML Models

  • DeepLabV3
  • FlowFormer++
  • TCDM

Hardware

  • CUDA

Results

프로젝트 결과

ESRGAN, SwinIR, TATT 등 최신 모델들과 비교하여 Hallucination 현상 없이 번호판 복원 정확도 우수

프로젝트 결과 1프로젝트 결과 2

Project Structure

프로젝트 구조

모듈화된 구조로 각 컴포넌트의 독립적인 개발과 테스트가 가능


.
├── Data/                # 입력/출력 데이터
├── DT_core/            # 번호판 Detection (DeepLabV3)
├── FF_core/            # Optical Flow 보정 (FlowFormer++)
├── FlowFormerPlusPlus/ # FlowFormer++ 원본 코드
├── TCDM/               # 후처리용 텍스트 기반 복원 모델
├── scripts/            # 실행 스크립트 모음
└── main.py             # 메인 실행 스크립트

Installation

Requirements

  • Python 3.8+
  • PyTorch
  • OpenCV
  • CUDA 11.3 이상

Steps

Conda 환경 설정: conda env create -f environment.yaml
모델 다운로드: model_v2.pth → DT_core/에 저장
실행: python main.py

Notes

  • GPU 지원이 필요합니다

Industry Collaboration

NC&

  • 실제 블랙박스 데이터 기반 모델 검증
  • 기업 요구사항에 맞춘 시스템 최적화
  • 성공적인 산학협력 프로젝트 완료

Presentation

MF-LPR2 발표 자료

MF-LPR2 발표 자료

References