Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
55 commits
Select commit Hold shift + click to select a range
5cd4974
Refactor code structure for improved readability and maintainability
sacdalance Nov 19, 2025
2cb6881
Enhance Docker support with updated Dockerfiles, push scripts, and qu…
sacdalance Nov 19, 2025
439e096
Add data setup instructions and Docker usage guidelines
sacdalance Nov 20, 2025
3100844
Add natsort dependency to Dockerfile, pyproject.toml, and requirement…
sacdalance Nov 20, 2025
3b2747a
Refactor video frame extraction and optical flow generation for impro…
sacdalance Nov 20, 2025
a5f892d
Add comprehensive .gitignore file to exclude unnecessary files and di…
sacdalance Nov 20, 2025
3ad294a
Refactor visualization and optical flow generation messages for clarity
sacdalance Nov 20, 2025
9f3b301
Update dataset names in configuration and enhance training script out…
sacdalance Nov 20, 2025
7426607
Add natsort dependency to Dockerfile
sacdalance Nov 20, 2025
d81f7fb
Refactor import statements to use core.utils1 module path
sacdalance Nov 21, 2025
88070e4
Remove unused Python files and compiled bytecode from utils1 module
sacdalance Nov 21, 2025
a7ea9c0
Update dataset names in DefaultConfigs class for consistency
sacdalance Nov 21, 2025
b4806f1
Update root directory path in DefaultConfigs class for correct data a…
sacdalance Nov 22, 2025
9fd5552
Add AUC, TPR, and TNR metrics to validation results; fix model initia…
sacdalance Nov 22, 2025
3f55265
Reduce batch size to 16 and num_workers to 4 for improved compatibili…
sacdalance Nov 22, 2025
71db918
Integrate Weights & Biases (W&B) for enhanced training tracking; redu…
sacdalance Nov 22, 2025
93ebc59
Add environment variable files to .gitignore for security
sacdalance Nov 22, 2025
c59f3ab
Add Weights & Biases (W&B) to Dockerfiles for enhanced tracking
sacdalance Nov 22, 2025
e070012
Reduce training epochs from 400 to 100 for improved efficiency
sacdalance Nov 23, 2025
4658a74
Add python-dotenv for environment variable management; update batch s…
sacdalance Nov 23, 2025
df351bb
Update docker-compose.yml to include logs volume and ensure .env file…
sacdalance Nov 23, 2025
815d635
Update docker-compose.yml to use Dockerfile.gpu-alt for GPU service; …
sacdalance Nov 23, 2025
2bc6c1a
added unzip
laughable-9 Nov 23, 2025
94bed71
feat: Add script to download and extract dataset from Google Drive.
laughable-9 Nov 23, 2025
2646387
fix: Specify .env file for loading environment variables and correct …
sacdalance Nov 23, 2025
1ee6796
fix: Update configuration parameters for training; adjust loadSize an…
sacdalance Nov 24, 2025
d30ac61
fix: Update configuration parameters for image processing; adjust loa…
sacdalance Nov 24, 2025
89656a8
feat: Add data preparation and evaluation script for dataset processi…
sacdalance Nov 24, 2025
51a4506
fix: Update configuration parameters for data augmentation and traini…
sacdalance Nov 24, 2025
821da35
fix: Update configuration parameters for training; increase num_worke…
sacdalance Nov 24, 2025
748248c
fix: Update early stopping and training metrics; remove local model s…
sacdalance Nov 25, 2025
9117dc3
fix: Remove redundant assignment of score_max in EarlyStopping class
sacdalance Nov 25, 2025
b70220c
fix: Remove redundant metric definitions and summary updates for wand…
sacdalance Nov 25, 2025
2e59539
fix: Update import statement for Trainer class to clarify usage context
sacdalance Nov 25, 2025
77a465e
fix: Update Dockerfile and add download_data.py script for improved d…
sacdalance Nov 25, 2025
6387e82
fix: Clean up Dockerfile by removing unnecessary script copies
sacdalance Nov 25, 2025
ead7f97
fix: Update configuration and dataset handling for optical flow training
sacdalance Nov 25, 2025
96399fd
fix: Update model initialization in BaseModel to prevent premature lo…
sacdalance Nov 25, 2025
59796bb
fix: Update optical flow augmentation settings and improve pretrained…
sacdalance Nov 25, 2025
1d76a53
fix: Update trainer import in train.py for consistency
sacdalance Nov 25, 2025
7e6a124
fix: Update data augmentation parameters for optical flow training
sacdalance Nov 25, 2025
ee09cf9
fix: Remove trailing whitespace from default data ID in download_data.py
sacdalance Nov 25, 2025
a988c7f
fix: Update default data ID in download_data.py and enhance docstring…
sacdalance Nov 25, 2025
ca2f67f
feat: Add video downloading and processing script with optical flow c…
sacdalance Nov 25, 2025
39aa5d5
fix: Update import path for CONFIGCLASS and adjust dataset transforma…
sacdalance Nov 25, 2025
6d74fd5
fix: Update import path for CONFIGCLASS and enhance dataset transform…
sacdalance Nov 25, 2025
8941132
Add W&B integration guide, data download scripts, and processing util…
sacdalance Nov 26, 2025
4567fa8
fix: Update custom_resize function and enhance validation results for…
sacdalance Nov 26, 2025
26be75b
fix: Update Dockerfile to remove unnecessary scripts and enhance data…
sacdalance Nov 28, 2025
5dbfa79
fix: Update dataset names in DefaultConfigs to align with test/train …
sacdalance Nov 28, 2025
14677f5
feat: Add comprehensive Table 2 recreation and evaluation framework, …
sacdalance Dec 5, 2025
0593026
feat: Add scripts for local and Docker GUI execution on Windows and L…
sacdalance Dec 5, 2025
35e1c5a
feat: Add `__contains__` method to RAFT Args object for compatibility…
sacdalance Dec 5, 2025
e702155
feat: Implement model file size validation and display detailed proce…
sacdalance Dec 5, 2025
9601093
feat: Add Streamlit application configuration and include it in the D…
sacdalance Dec 5, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
54 changes: 54 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# Python
__pycache__/
*.py[cod]
*$py.class
*.so
.Python
*.egg-info/
dist/
build/
*.egg

# Virtual environments
.venv/
venv/
ENV/
env/

# IDEs
.vscode/
.idea/
*.swp
*.swo
*~

# Git
.git/
.gitignore

# Data and models (too large)
data/
checkpoints/*.pth
raft_model/*.pth

# Logs
*.log
logs/
*.csv

# OS
.DS_Store
Thumbs.db

# UV
.uv/

# Backup files
*.backup
requirements.txt.backup

# Documentation
MIGRATION_SUMMARY.md

# Demo videos (optional - comment out if needed)
demo_video/
209 changes: 209 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,209 @@
# Data directories (large datasets - should not be in repo)
data/
checkpoints/
raft_model/

# Environment variables (contains secrets)
.env
.env.example

# Generated output folders
frame/
optical_result/
results/
logs/
outputs/
runs/

# Demo video output
demo_video/fake_sora/*.mp4
demo_video/real/*.mp4
# Keep the demo_video folder structure but ignore large video files
!demo_video/fake_sora/.gitkeep
!demo_video/real/.gitkeep

# Model files and weights
*.pth
*.pt
*.pkl
*.ckpt
*.h5
*.hdf5
*.pb
*.onnx

# Dataset files
*.zip
*.tar
*.tar.gz
*.rar
*.7z

# Video files
*.mp4
*.avi
*.mov
*.mkv
*.wmv
*.flv
*.webm
*.m4v

# Image files (keep small docs images)
*.png
*.jpg
*.jpeg
*.bmp
*.tiff
*.tif
*.gif
# Allow images in specific documentation folders
!fig/**/*.png
!fig/**/*.jpg
!fig/**/*.jpeg
!docs/**/*.png
!docs/**/*.jpg
!docs/**/*.jpeg

# Python
__pycache__/
*.py[cod]
*$py.class
*.so
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST
pip-log.txt
pip-delete-this-directory.txt

# Virtual environments
.env
.venv
env/
venv/
ENV/
env.bak/
venv.bak/
.python-version

# Jupyter Notebook
.ipynb_checkpoints
*.ipynb

# PyCharm
.idea/
*.iml

# VS Code
.vscode/
*.code-workspace

# Sublime Text
*.sublime-project
*.sublime-workspace

# Vim
*.swp
*.swo
*~

# Emacs
*~
\#*\#
/.emacs.desktop
/.emacs.desktop.lock
*.elc
auto-save-list
tramp
.\#*

# OS generated files
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.db
Desktop.ini

# Windows
*.lnk

# Temporary files
*.tmp
*.temp
*.log
*.bak
*.backup
*.swp
*.cache

# CUDA compilation cache
.nv_cache/
*.o

# Experiment tracking
wandb/
tensorboard_logs/
tb_logs/
mlruns/

# Large binary files
*.bin
*.dat
*.raw

# Coverage reports
htmlcov/
.coverage
.coverage.*
coverage.xml
*.cover
.hypothesis/
.pytest_cache/
.tox/
nosetests.xml

# Translations
*.mo
*.pot

# Documentation builds
docs/_build/
docs/build/
_build/
.readthedocs.yml

# Docker volumes
.volumes/

# Temporary extraction directories
temp/
tmp/

# Configuration files with sensitive data
config.json
secrets.json
.secrets
credentials.json

# Local development files
.local/
local_config.py
dev_config.py
1 change: 1 addition & 0 deletions .python-version
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
3.11.14
5 changes: 5 additions & 0 deletions .streamlit/config.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
[server]
maxUploadSize = 500

[browser]
gatherUsageStats = false
68 changes: 68 additions & 0 deletions Dockerfile.cpu
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
# Dockerfile for AIGVDet with CPU support
FROM python:3.11-slim-bookworm

# Set environment variables
ENV PYTHONUNBUFFERED=1 \
PYTHONDONTWRITEBYTECODE=1 \
UV_SYSTEM_PYTHON=1

# Install system dependencies
RUN apt-get update && apt-get install -y \
git \
wget \
curl \
libglib2.0-0 \
libsm6 \
libxext6 \
libxrender-dev \
libgomp1 \
libgl1-mesa-glx \
unzip \
&& rm -rf /var/lib/apt/lists/*

# Install uv
RUN pip install --no-cache-dir uv

# Set working directory
WORKDIR /app

# Copy project files
COPY pyproject.toml ./
COPY README.md ./
COPY core/ ./core/
COPY networks/ ./networks/
COPY train.py test.py demo.py download_data.py ./

# Create directories for data and checkpoints
RUN mkdir -p /app/data /app/checkpoints /app/raft_model

# Install other dependencies first
RUN uv pip install --system \
einops \
imageio \
ipympl \
matplotlib \
natsort \
"numpy<2.0" \
opencv-python \
pandas \
scikit-learn \
tensorboard \
tensorboardX \
tqdm \
"blobfile>=1.0.5" \
wandb \
python-dotenv

# Install PyTorch CPU version using pip directly
RUN pip3 install torch==2.0.0+cpu torchvision==0.15.1+cpu \
--index-url https://download.pytorch.org/whl/cpu

# Set Python path
ENV PYTHONPATH=/app

# Expose tensorboard port
EXPOSE 6006

# Default command
CMD ["python", "train.py", "--help"]
Loading