diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml
new file mode 100644
index 0000000..0bb37a5
--- /dev/null
+++ b/.github/FUNDING.yml
@@ -0,0 +1,2 @@
+github: seoyunje
+buy_me_a_coffee: seoyunje
\ No newline at end of file
diff --git a/.github/labeler.yml b/.github/labeler.yml
new file mode 100644
index 0000000..8f69fee
--- /dev/null
+++ b/.github/labeler.yml
@@ -0,0 +1,31 @@
+model:
+ - changed-files:
+ - any-glob-to-any-file: ["src/model/**", "models/**", "*.pt", "*.pth"]
+
+data:
+ - changed-files:
+ - any-glob-to-any-file: ["data/**", "datasets/**", "src/data/**"]
+
+training:
+ - changed-files:
+ - any-glob-to-any-file: ["train*.py", "src/train/**", "configs/**"]
+
+api:
+ - changed-files:
+ - any-glob-to-any-file: ["api/**", "routers/**", "app.py"]
+
+test:
+ - changed-files:
+ - any-glob-to-any-file: ["tests/**", "test_*.py"]
+
+docs:
+ - changed-files:
+ - any-glob-to-any-file: ["docs/**", "*.md", "*.rst"]
+
+ci:
+ - changed-files:
+ - any-glob-to-any-file: [".github/**"]
+
+dependencies:
+ - changed-files:
+ - any-glob-to-any-file: ["requirements*.txt", "pyproject.toml", "setup.py"]
\ No newline at end of file
diff --git a/.github/workflows/issue-auto-label.yml b/.github/workflows/issue-auto-label.yml
deleted file mode 100644
index ceec4a2..0000000
--- a/.github/workflows/issue-auto-label.yml
+++ /dev/null
@@ -1,14 +0,0 @@
-name: Auto Label Issues
-
-on:
- issues:
- types: [opened]
-
-jobs:
- label:
- runs-on: ubuntu-latest
- steps:
- - name: Label Bug
- uses: actions-ecosystem/action-add-labels@v1
- with:
- labels: bug
diff --git a/.github/workflows/issue-stale-clean.yml b/.github/workflows/issue-stale-clean.yml
deleted file mode 100644
index 7f90ca7..0000000
--- a/.github/workflows/issue-stale-clean.yml
+++ /dev/null
@@ -1,22 +0,0 @@
-name: Close stale issues
-
-on:
- schedule:
- - cron: "0 0 * * *"
-
-jobs:
- stale:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/stale@v9
- with:
- days-before-stale: 14
- days-before-close: 7
- stale-issue-label: "stale"
- stale-issue-message: >
- ⏳ 14일 동안 활동이 없어 자동으로 stale 처리되었습니다.
- 추가 정보가 있다면 댓글로 다시 활성화해주세요!
-
- close-issue-message: >
- 🔒 7일 동안 활동이 없어 Issue가 자동으로 닫혔습니다.
- 필요하면 언제든 재오픈해주세요 🙂
diff --git a/.github/workflows/pr-ci.yml b/.github/workflows/pr-ci.yml
new file mode 100644
index 0000000..4bbaf9f
--- /dev/null
+++ b/.github/workflows/pr-ci.yml
@@ -0,0 +1,29 @@
+name: PR CI
+
+on:
+ pull_request:
+ branches: [main, develop]
+
+jobs:
+ lint-and-test:
+ runs-on: ubuntu-latest
+
+ steps:
+ - uses: actions/checkout@v4
+
+ - uses: actions/setup-python@v5
+ with:
+ python-version: "3.11"
+ cache: "pip"
+
+ - name: Install dependencies
+ run: pip install -r requirements.txt
+
+ - name: Lint (ruff)
+ run: ruff check . --output-format=github
+
+ - name: Format check (ruff)
+ run: ruff format --check .
+
+ - name: Test (pytest)
+ run: pytest --tb=short -q
\ No newline at end of file
diff --git a/.github/workflows/pr-label.yml b/.github/workflows/pr-label.yml
new file mode 100644
index 0000000..df3de40
--- /dev/null
+++ b/.github/workflows/pr-label.yml
@@ -0,0 +1,18 @@
+name: PR Auto Label
+
+on:
+ pull_request:
+ types: [opened, synchronize, reopened]
+
+jobs:
+ label:
+ runs-on: ubuntu-latest
+ permissions:
+ contents: read
+ pull-requests: write
+
+ steps:
+ - uses: actions/labeler@v5
+ with:
+ repo-token: ${{ secrets.GITHUB_TOKEN }}
+ sync-labels: true # PR 파일 변경 시 라벨 재동기화
\ No newline at end of file
diff --git a/.gitignore b/.gitignore
index da944b5..d0e86dc 100644
--- a/.gitignore
+++ b/.gitignore
@@ -6,6 +6,7 @@
npm-debug.log*
yarn-debug.log*
yarn-error.log*
+*.egg-info
# [FastAPI / Python - App 폴더 관련]
**/__pycache__/
diff --git a/App/celery_app.py b/App/celery_app.py
index 027ba15..5503e8b 100644
--- a/App/celery_app.py
+++ b/App/celery_app.py
@@ -1,18 +1,10 @@
import os
-import sys
-from pathlib import Path
from celery import Celery
from dotenv import load_dotenv
-current_file = Path(__file__).resolve()
-project_root = current_file.parent.parent
-
-if str(project_root) not in sys.path:
- sys.path.insert(0, str(project_root))
-
+# ------ .env 파일 가져오기 ------
load_dotenv()
-# 기본값 설정
REDIS_HOST = os.getenv("REDIS_HOST", "localhost")
REDIS_PORT = os.getenv("REDIS_PORT", 6379)
@@ -23,7 +15,11 @@
"deepguard",
broker=REDIS_URL, # 메세지를 전달할 브로커
backend=REDIS_URL, # 작업 결과를 저장할 백엔드
- include=["services.inference_svc"] # 비동기 추론 작업 파일
+ # 비동기 추론 작업 파일
+ include=["services.inference_svc", # process_image_task, process_video_task
+ "services.explain_svc", # process_explain_image_task
+ "services.image_svc", # cleanup_anonymous_image, cleanup_image_cam
+ "services.video_svc"] # cleanup_anonymous_video
)
# Celery Instance 상세 설정
diff --git a/App/main.py b/App/main.py
index 530812c..93fb9b1 100644
--- a/App/main.py
+++ b/App/main.py
@@ -1,44 +1,35 @@
import os
-import sys
-from pathlib import Path
-import warnings
-import logging
from dotenv import load_dotenv
-# ------ 상위 폴더 경로 설정 --------
-current_file = Path(__file__).resolve()
-project_root = current_file.parent.parent # App의 상위 폴더
-
-if str(project_root) not in sys.path:
- sys.path.insert(0, str(project_root))
-
+# ------ .env 파일 가져오기 ------
load_dotenv()
# -------- Huggingface_Hub 인증 ----------
if os.getenv("HF_TOKEN"):
os.environ["HF_TOKEN"] = os.getenv("HF_TOKEN")
+else:
+ print("[Warning] HF_TOKEN is not set")
from fastapi import FastAPI
from fastapi.staticfiles import StaticFiles
from fastapi.exceptions import RequestValidationError
from starlette.exceptions import HTTPException as StarletteHTTPException
from fastapi.middleware.cors import CORSMiddleware
-from starlette.middleware.sessions import SessionMiddleware
-from routes import auth, home, inference, image, video
-from utils.common import lifespan
-from utils import exc_handler, middleware
+# from starlette.middleware.sessions import SessionMiddleware
+from routes import api_router
+from utils import exc_handler, middleware, common
-# 가상 인스턴스 생성
-app = FastAPI(lifespan=lifespan)
+# 가상 FastAPI 인스턴스 생성
+app = FastAPI(lifespan=common.lifespan)
-# StaticFile 등록하기
+# StaticFile 등록 (이미지, 비디오 파일)
app.mount("/static", StaticFiles(directory="static"), name="static")
-# Cross Origin Resource Sharing
+# CORS Setup for cross-origin requests
+# FrontEnd: React, BackEnd: FastAPI
origins_str = os.getenv("CORS_ALLOWED_ORIGINS")
allowed_origins = [origin.strip() for origin in origins_str.split(",")]
-
app.add_middleware(CORSMiddleware,
allow_origins=allowed_origins,
allow_methods=["*"],
@@ -52,16 +43,12 @@
# app.add_middleware(SessionMiddleware, secret_key=SECRET_KEY, max_age=3600)
# 세션 미들웨어 등록 - Redis 이용
-app.add_middleware(middleware.RedisSessionMiddleware, max_age=7200)
+app.add_middleware(middleware.RedisSessionMiddleware, max_age=3600)
-# 라우터 등록
-app.include_router(auth.router)
-app.include_router(home.router)
-app.include_router(inference.router)
-app.include_router(image.router)
-app.include_router(video.router)
+# 라우터 등록 (View: Router, Controller: Service)
+app.include_router(api_router)
-# Custom HTTPException Handler
+# 커스텀 예외 처리: HTTPException
app.add_exception_handler(StarletteHTTPException, exc_handler.custom_http_exception_handler)
-# Custom RequestValidationError Handler
+# 커스텀 예외 처리: RequestValidationError
app.add_exception_handler(RequestValidationError, exc_handler.validation_exception_handler)
\ No newline at end of file
diff --git a/App/routes/__init__.py b/App/routes/__init__.py
new file mode 100644
index 0000000..a338ab5
--- /dev/null
+++ b/App/routes/__init__.py
@@ -0,0 +1,15 @@
+from fastapi import APIRouter
+from routes.auth import router as auth_router
+from routes.explain import router as explain_router
+from routes.home import router as home_router
+from routes.image import router as image_router
+from routes.inference import router as inference_router
+from routes.video import router as video_router
+
+api_router = APIRouter(prefix="/api", tags=["api"])
+api_router.include_router(auth_router)
+api_router.include_router(explain_router)
+api_router.include_router(home_router)
+api_router.include_router(image_router)
+api_router.include_router(inference_router)
+api_router.include_router(video_router)
\ No newline at end of file
diff --git a/App/routes/auth.py b/App/routes/auth.py
index b640953..4a8154e 100644
--- a/App/routes/auth.py
+++ b/App/routes/auth.py
@@ -1,20 +1,21 @@
+from pydantic import BaseModel
from fastapi import APIRouter, Depends, status, Request
from services import auth_svc, session_svc
from sqlalchemy import Connection
from db.database import context_get_conn
from fastapi.exceptions import HTTPException
+from fastapi.responses import JSONResponse
from schemas.auth_schema import RegisterRequest, LoginRequest
router = APIRouter(prefix="/auth", tags=["auth"])
-# --- 로그인 상태 확인 API ---
# 프론트엔드 새로고침 시 세션 유지 여부를 확인하고 유저 정보를 반환합니다
-@router.get("/check", status_code=status.HTTP_200_OK)
+@router.get("/check", status_code=status.HTTP_200_OK, response_class=JSONResponse, summary= "로그인 상태 확인 API")
async def check_session(session_user = Depends(session_svc.get_session_user_opt)):
return {"user": session_user}
-# --- 회원가입 API ---
-@router.post("/register", status_code=status.HTTP_201_CREATED)
+
+@router.post("/register", status_code=status.HTTP_201_CREATED,response_class=JSONResponse, summary="회원가입 API")
async def register_user(request: Request,
user_info: RegisterRequest,
conn: Connection = Depends(context_get_conn)):
@@ -40,8 +41,7 @@ async def register_user(request: Request,
return {"message": "회원가입이 성공적으로 완료되었습니다.", "status": "success"}
-# --- 로그인 API ---
-@router.post("/login", status_code=status.HTTP_200_OK)
+@router.post("/login", status_code=status.HTTP_200_OK,response_class=JSONResponse ,summary="로그인 API")
async def login_user(request: Request,
login_info: LoginRequest,
conn: Connection = Depends(context_get_conn)):
@@ -73,7 +73,7 @@ async def login_user(request: Request,
"status": "success"
}
-@router.get("/logout", status_code=status.HTTP_200_OK)
+@router.get("/logout", status_code=status.HTTP_200_OK, response_class=JSONResponse, summary="로그아웃")
async def logout_user(request: Request):
request.state.session.clear()
return {
diff --git a/App/routes/explain.py b/App/routes/explain.py
new file mode 100644
index 0000000..adcc763
--- /dev/null
+++ b/App/routes/explain.py
@@ -0,0 +1,184 @@
+import os
+from fastapi import APIRouter, status, Depends
+from fastapi.exceptions import HTTPException
+from fastapi.responses import JSONResponse
+from sqlalchemy import Connection
+from db.database import context_get_conn
+from schemas.explain_schema import ExplainImageRequest, ExplainFrameRequest
+from services import session_svc, explain_svc, image_svc, video_svc
+from celery_app import celery_app
+from celery.result import AsyncResult
+
+router = APIRouter(prefix="/explain", tags=["explain"])
+
+@router.post("/image/{image_id}", status_code=status.HTTP_202_ACCEPTED,
+ response_class=JSONResponse, summary="딥페이크 이미지 위조 흔적 시각화 비동기 접수")
+async def explain_image(
+ image_id: int,
+ explain_req: ExplainImageRequest,
+ conn: Connection = Depends(context_get_conn),
+ session_user = Depends(session_svc.get_session_user_prt), # 로그인 필수
+):
+ # 딥페이크 이미지 추론 결과 가져오기
+ result = await image_svc.get_image_result(conn, image_id)
+
+ if result.status != "SUCCESS":
+ raise HTTPException(
+ status_code = status.HTTP_400_BAD_REQUEST,
+ detail = "이미지 위조 흔적 분석은 추론이 성공한 이미지만 가능합니다"
+ )
+
+ image_path = "." + result.image_loc
+
+ if not os.path.exists(image_path):
+ raise HTTPException(
+ status_code = status.HTTP_404_NOT_FOUND,
+ detail = f"요청하신 이미지 파일을 찾을 수 없습니다. 삭제하였는지 다시 확인해주세요."
+ )
+
+ if result.model_type == "pro" and explain_req.aug_smooth:
+ raise HTTPException(
+ status_code=status.HTTP_400_BAD_REQUEST,
+ detail="Pro 모델은 aug_smooth 기능을 지원하지 않습니다",
+ )
+
+ # Celery Task 호출(Redis Broker 활용)
+ task = explain_svc.process_explain_image_task.delay(
+ user_email = session_user["email"],
+ version_type = result.version_type,
+ domain_type = result.domain_type,
+ image_loc = result.image_loc,
+ image_id = result.image_id,
+ category = 1 if result.label == "FAKE" else 0,
+ explain_req_dict = explain_req.model_dump())
+ return {
+ "message": "딥페이크 이미지 위조 흔적 시각화 접수 완료. 시각화 분석 시작 ...",
+ "task_id": task.id,
+ }
+
+
+@router.get("/image/result/{task_id}", status_code=status.HTTP_200_OK,
+ response_class=JSONResponse, summary="딥페이크 이미지 위조 흔적 시각화 결과 가져오기")
+async def get_explain_image_result(
+ task_id: str,
+ session_user = Depends(session_svc.get_session_user_prt), # 로그인 필수
+ ):
+
+ # Redis Broker에서 Task ID에 해당하는 비동기 작업 상태 가져오기
+ task = AsyncResult(task_id, app=celery_app)
+
+ if task.state in ("PENDING", "STARTED", "RETRY"):
+ return JSONResponse(
+ status_code = status.HTTP_202_ACCEPTED,
+ content = {"message": "딥페이크 이미지 위조 흔적 시각화 분석 중 ..."}
+ )
+
+ if task.state == "FAILURE":
+ raise HTTPException(
+ status_code=status.HTTP_500_INTERNAL_SERVER_ERROR,
+ detail="딥페이크 이미지 위조 흔적 시각화 중 알 수 없는 오류가 발생하였습니다")
+
+ # Celery Task 결과 가져오기
+ result = task.result
+
+ if result["status"] == "FAILED":
+ raise HTTPException(
+ status_code=status.HTTP_500_INTERNAL_SERVER_ERROR,
+ detail=result["message"])
+
+ return {
+ "status": result["status"],
+ "message": result["message"],
+ "cam_loc": result["cam_loc"],
+ }
+
+@router.post("/video/{video_id}/frame/{frame_index}", status_code=status.HTTP_202_ACCEPTED,
+ response_class=JSONResponse, summary="딥페이크 비디오 프레임 위조 흔적 시각화 비동기 접수")
+async def explain_frame(
+ video_id: int,
+ frame_index: int,
+ explain_req: ExplainFrameRequest,
+ conn: Connection = Depends(context_get_conn),
+ session_user = Depends(session_svc.get_session_user_prt), # 로그인 필수
+):
+ # 딥페이크 비디오 추론 결과 가져오기
+ result = await video_svc.get_video_result(conn, video_id)
+
+ # 딥페이크 비디오 추론 성공 여부 확인하기
+ if result.status != "SUCCESS":
+ raise HTTPException(
+ status_code = status.HTTP_400_BAD_REQUEST,
+ detail = "비디오 프레임 위조 흔적 분석은 추론이 성공한 비디오에서만 가능합니다"
+ )
+
+ # 비디오 파일 저장 경로 가져오기
+ video_path = "." + result.video_loc
+ if not os.path.exists(video_path):
+ raise HTTPException(
+ status_code = status.HTTP_404_NOT_FOUND,
+ detail = f"요청하신 비디오 파일을 찾을 수 없습니다. 삭제하였는지 다시 확인해주세요."
+ )
+
+ # 딥페이크 비디오 프레임 위조 흔적 분석 (pro model는 aug_smooth 사용 불가, 연산이 너무 많아짐)
+ if result.model_type == "pro" and explain_req.aug_smooth:
+ raise HTTPException(
+ status_code=status.HTTP_400_BAD_REQUEST,
+ detail="Pro 모델은 aug_smooth 기능을 지원하지 않습니다",
+ )
+
+ # 비디오 내 해당 frame이 몇초에 위치한 frame인지 확인
+ frame_time = await video_svc.get_video_frame_by_index(conn, video_id, frame_index)
+
+ # Celery Task 호출(Redis Broker 활용)
+ task = explain_svc.process_explain_frame_task.delay(
+ user_email = session_user["email"],
+ version_type = result.version_type,
+ domain_type = result.domain_type,
+ video_loc = result.video_loc,
+ video_id = video_id,
+ category = 1 if result.label == "FAKE" else 0,
+ frame_time = frame_time,
+ explain_req_dict = explain_req.model_dump())
+ return {
+ "message": "딥페이크 비디오 프레임 위조 흔적 시각화 접수 완료. 시각화 분석 시작 ...",
+ "task_id": task.id,
+ }
+
+@router.get("/frame/result/{task_id}", status_code=status.HTTP_200_OK,
+ response_class=JSONResponse, summary="딥페이크 비디오 프레임 위조 흔적 시각화 결과 가져오기")
+async def get_explain_frame_result(
+ task_id: str,
+ session_user = Depends(session_svc.get_session_user_prt), # 로그인 필수
+ ):
+
+ # Redis Broker에서 Task ID에 해당하는 비동기 작업 상태 가져오기
+ task = AsyncResult(task_id, app=celery_app)
+
+ # 비동기 작업 진행 상태 Check
+ if task.state in ("PENDING", "STARTED", "RETRY"):
+ return JSONResponse(
+ status_code = status.HTTP_202_ACCEPTED,
+ content = {"message": "딥페이크 비디오 프레임 위조 흔적 시각화 분석 중 ..."}
+ )
+
+ # 비동기 작업 실패
+ if task.state == "FAILURE":
+ raise HTTPException(
+ status_code=status.HTTP_500_INTERNAL_SERVER_ERROR,
+ detail="딥페이크 비디오 프레임 위조 흔적 시각화 중 알 수 없는 오류가 발생하였습니다")
+
+ # Celery Task 결과 가져오기
+ result = task.result
+
+ # 딥페이크 비디오 프레임 위조 흔적 시각화 생성 또는 파일 저장 도중 오류 발생
+ if result["status"] == "FAILED":
+ raise HTTPException(
+ status_code=status.HTTP_500_INTERNAL_SERVER_ERROR,
+ detail=result["message"])
+
+ return {
+ "status": result["status"],
+ "message": result["message"],
+ "cam_loc": result["cam_loc"],
+ }
+
\ No newline at end of file
diff --git a/App/routes/home.py b/App/routes/home.py
index 6a2a87f..7f65ab9 100644
--- a/App/routes/home.py
+++ b/App/routes/home.py
@@ -1,9 +1,10 @@
-from fastapi import APIRouter, Depends
+from fastapi import APIRouter, Depends, status
from services import session_svc
+from fastapi.responses import JSONResponse
router = APIRouter(prefix="/home", tags=["home"])
-@router.get("/")
+@router.get("", status_code=status.HTTP_200_OK,response_class=JSONResponse, summary="세션 유저 정보 가져오기")
async def home_ui(session_user = Depends(session_svc.get_session_user_opt)):
return {
"session_user": session_user
diff --git a/App/routes/image.py b/App/routes/image.py
index 94c63d2..d8fea0e 100644
--- a/App/routes/image.py
+++ b/App/routes/image.py
@@ -2,11 +2,12 @@
from services import session_svc, image_svc
from sqlalchemy import Connection
from db.database import context_get_conn
+from fastapi.responses import JSONResponse
router = APIRouter(prefix="/image", tags=["image"])
# 사용자 전체 업로드 히스토리 조회
-@router.get("/history", status_code=status.HTTP_200_OK)
+@router.get("/history", status_code=status.HTTP_200_OK, response_class=JSONResponse,summary="이미지 히스토리 전체 조회")
async def get_user_histories(
conn: Connection = Depends(context_get_conn),
session_user = Depends(session_svc.get_session_user_prt) # 로그인 필수
@@ -22,7 +23,7 @@ async def get_user_histories(
}
# 특정 이미지의 상세 내역 조회 (개별 히스토리)
-@router.get("/history/{image_id}", status_code=status.HTTP_200_OK)
+@router.get("/history/{image_id}", status_code=status.HTTP_200_OK, response_class=JSONResponse,summary="이미지 개별 상세 조회")
async def get_user_history(
image_id: int,
conn: Connection = Depends(context_get_conn),
@@ -40,7 +41,7 @@ async def get_user_history(
}
# 이미지 히스토리 삭제
-@router.delete("/history/{image_id}", status_code=status.HTTP_200_OK, summary="버튼 삭제")
+@router.delete("/history/{image_id}", status_code=status.HTTP_200_OK,response_class=JSONResponse, summary="이미지 버튼 히스토리 삭제")
async def delete_image_history(
image_id: int,
conn: Connection = Depends(context_get_conn),
@@ -51,8 +52,9 @@ async def delete_image_history(
if not history:
raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail="해당 이미지 기록을 찾을 수 없습니다.")
+ # DB 레코드 삭제
await image_svc.delete_image_db(conn, image_id)
-
+ # 실제 이미지 삭제
await image_svc.delete_image(history.image_loc)
return {
diff --git a/App/routes/inference.py b/App/routes/inference.py
index ba856af..35b0ebe 100644
--- a/App/routes/inference.py
+++ b/App/routes/inference.py
@@ -1,22 +1,24 @@
from fastapi import (
- APIRouter, Depends, status, Form,
- File, UploadFile
-)
+ APIRouter, UploadFile, status,
+ Depends, Form, File)
+from fastapi.responses import JSONResponse
from fastapi.exceptions import HTTPException
from services import image_svc, session_svc, inference_svc, video_svc
from sqlalchemy import Connection
from db.database import context_get_conn
-from schemas.video_schema import VideoDetailResponse
-
+from schemas.video_schema import VideoDetailResponse, VideoDetailData
+from schemas.image_schema import ImageResultData
+from typing import Literal
router = APIRouter(prefix="/inference", tags=["inference"])
-@router.post("/image", status_code=status.HTTP_202_ACCEPTED, summary="딥페이크 비동기 이미지 추론 접수")
+@router.post("/image", status_code=status.HTTP_202_ACCEPTED,
+ response_class=JSONResponse, summary="딥페이크 비동기 이미지 추론 접수")
async def predict_image(
imagefile: UploadFile = File(...), # 사용자가 업로드한 이미지 객체
- version_type: str = Form(...), # deepguard1, deepguard2
- model_type: str = Form(...), # fast model, pro moel
- domain_type: str = Form(...), # model 학습시 사용한 dataset 종류
+ version_type: Literal["v1","v2"] = Form("v2", description="모델 엔진 버전"),
+ model_type: Literal["fast","pro"] = Form("fast", description="추론 모드 (fast: 속도 우선, pro: 정확도 우선)"),
+ domain_type: Literal["서양인","동양인"] = Form("서양인", description="학습 데이터셋 도메인"),
conn: Connection = Depends(context_get_conn), # 이미지 File 저장
session_user = Depends(session_svc.get_session_user_opt) # Signed Cookie 없을 시 None 반환
):
@@ -43,7 +45,8 @@ async def predict_image(
"status": "success",
}
-@router.get("/image/{image_id}", status_code=status.HTTP_200_OK, summary="딥페이크 비동기 이미지 추론 결과값 가져오기")
+@router.get("/image/{image_id}", status_code=status.HTTP_200_OK,
+ response_model=ImageResultData, summary="딥페이크 비동기 이미지 추론 결과값 가져오기")
async def get_image_result(
image_id: int,
conn: Connection = Depends(context_get_conn),
@@ -62,12 +65,13 @@ async def get_image_result(
)
return image_data
-@router.post("/video", status_code=status.HTTP_202_ACCEPTED, summary="딥페이크 비동기 비디오 추론 접수")
+@router.post("/video", status_code=status.HTTP_202_ACCEPTED,
+ response_class=JSONResponse, summary="딥페이크 비동기 비디오 추론 접수")
async def predict_video(
videofile: UploadFile = File(...), # 사용자가 업로드한 비디오 객체
- version_type: str = Form(...), # deepguard1, deepguard2
- model_type: str = Form(...), # fast model, pro moel
- domain_type: str = Form(...), # model 학습시 사용한 dataset 종류
+ version_type: Literal["v1","v2"] = Form("v2", description="모델 엔진 버전"),
+ model_type: Literal["fast","pro"] = Form("fast", description="추론 모드 (fast: 속도 우선, pro: 정확도 우선)"),
+ domain_type: Literal["서양인","동양인"] = Form("서양인", description="학습 데이터셋 도메인"),
conn: Connection = Depends(context_get_conn), # 비디오 File 저장
session_user = Depends(session_svc.get_session_user_opt) # Signed Cookie 없을 시 None 반환
):
@@ -94,7 +98,8 @@ async def predict_video(
"status": "success",
}
-@router.get("/video/{video_id}", status_code=status.HTTP_200_OK, summary="딥페이크 비디오 비디오 추론 결과값 가져오기")
+@router.get("/video/{video_id}", status_code=status.HTTP_200_OK,
+ response_model=VideoDetailData, summary="딥페이크 비디오 추론 결과값 가져오기")
async def get_video_result(
video_id: int,
conn: Connection = Depends(context_get_conn),
@@ -117,13 +122,21 @@ async def get_video_result(
return video_data
-@router.get("/video/{video_id}/detail", status_code=status.HTTP_200_OK, summary="딥페이크 상세 분석 결과값 가져오기")
+@router.get("/video/{video_id}/detail", status_code=status.HTTP_200_OK,
+ response_model=VideoDetailResponse ,summary="딥페이크 상세 분석 결과값 가져오기")
async def get_video_detail(
video_id: int,
conn: Connection = Depends(context_get_conn),
- session_user = Depends(session_svc.get_session_user_prt) # 로그인 유저만 가능
+ session_user = Depends(session_svc.get_session_user_prt) # 로그인 필수
):
+ video_data = await video_svc.get_video_result(conn, video_id)
+ if video_data.status != "SUCCESS":
+ raise HTTPException(
+ status_code = status.HTTP_400_BAD_REQUEST,
+ detail = f"비디오 상세 분석은 추론이 성공한 비디오만 가능합니다"
+ )
+
meta = await video_svc.get_video_meta_result(conn, video_id)
- frames = await video_svc.get_video_frame_results(conn, video_id)
+ frames = await video_svc.get_video_frame_result(conn, video_id)
return VideoDetailResponse(meta=meta, frames=frames)
diff --git a/App/routes/video.py b/App/routes/video.py
index 5ccb134..cd713af 100644
--- a/App/routes/video.py
+++ b/App/routes/video.py
@@ -1,12 +1,15 @@
-from fastapi import APIRouter, Depends, status, HTTPException
+from fastapi import APIRouter, Depends, status
+from fastapi.exceptions import HTTPException
+from fastapi.responses import JSONResponse
from services import session_svc, video_svc
from sqlalchemy import Connection
from db.database import context_get_conn
+from fastapi.responses import JSONResponse
router = APIRouter(prefix="/video", tags=["video"])
# 사용자 전체 비디오 업로드 히스토리 조회
-@router.get("/history", status_code=status.HTTP_200_OK)
+@router.get("/history", status_code=status.HTTP_200_OK, response_class=JSONResponse,summary="비디오 히스토리 전체 조회")
async def get_video_histories(
conn: Connection = Depends(context_get_conn),
session_user = Depends(session_svc.get_session_user_prt) # 로그인 필수
@@ -22,14 +25,14 @@ async def get_video_histories(
}
# 특정 비디오의 상세 내역 조회
-@router.get("/history/{video_id}", status_code=status.HTTP_200_OK)
+@router.get("/history/{video_id}", status_code=status.HTTP_200_OK,response_class=JSONResponse, summary="비디오 개별 상세 조회")
async def get_video_history(
video_id: int,
conn: Connection = Depends(context_get_conn),
- session_user = Depends(session_svc.get_session_user_prt) # 로그인 필수
+ session_user = Depends(session_svc.get_session_user_opt)
):
- user_id = session_user['id']
+ user_id = session_user['id'] if session_user else None
# 본인의 데이터만 조회할 수 있도록 user_id도 함께 전달
history = await video_svc.get_user_history(conn, user_id, video_id)
@@ -43,7 +46,8 @@ async def get_video_history(
}
# 비디오 히스토리 삭제
-@router.delete("/history/{video_id}", status_code=status.HTTP_200_OK, summary="버튼 삭제")
+@router.delete("/history/{video_id}", status_code=status.HTTP_200_OK,
+ response_class=JSONResponse, summary="비디오 버튼 히스토리 삭제")
async def delete_video_history(
video_id: int,
conn: Connection = Depends(context_get_conn),
@@ -56,8 +60,11 @@ async def delete_video_history(
if not history:
raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail="해당 비디오 기록을 찾을 수 없습니다.")
+ if history.status == "SUCCESS":
+ await video_svc.delete_video_meta_result(conn, video_id)
+ await video_svc.delete_video_frame_result(conn, video_id)
+
await video_svc.delete_video_db(conn, video_id)
-
await video_svc.delete_video(history.video_loc)
return {
diff --git a/App/schemas/auth_schema.py b/App/schemas/auth_schema.py
index b844abd..a5c453c 100644
--- a/App/schemas/auth_schema.py
+++ b/App/schemas/auth_schema.py
@@ -1,20 +1,28 @@
from pydantic import BaseModel, EmailStr, Field
-# [응답용] 프론트엔드 반환용 유저 기본 정보 (보안상 비밀번호 제외)
class UserData(BaseModel):
- id: int
- name: str
- email: str
+ """
+ [응답용] 프론트엔드 반환용 유저 기본 정보 (보안상 비밀번호 제외)
+ """
+ id: int = Field(..., description="유저 고유 ID")
+ name: str = Field(..., description="유저 이름")
+ email: str = Field(..., description="유저 이메일")
-# [내부용] DB 조회 및 서버 내부 인증용 (UserData 상속 + 암호화된 비밀번호)
class UserDataPASS(UserData):
- hashed_password: str
+ """
+ [내부용] DB 조회 및 서버 내부 인증용 (UserData 상속 + 암호화된 비밀번호)
+ """
+ hashed_password: str = Field(..., description="bcrypt로 해싱된 비밀번호 (서버 내부 인증용, 외부 노출 금지)")
-# [요청용] 로그인 API (POST /auth/login) 수신 JSON 데이터 검증
class LoginRequest(BaseModel):
- email: EmailStr
- password: str = Field(min_length=8, max_length=30)
+ """
+ [요청용] 로그인 API (POST /auth/login) 수신 JSON 데이터 검증
+ """
+ email: EmailStr = Field(..., description="로그인 이메일")
+ password: str = Field(min_length=8, max_length=30, description="비밀번호 (8자 이상 30자 이하)")
-# [요청용] 회원가입 API (POST /auth/register) 수신 JSON 데이터 검증
class RegisterRequest(LoginRequest):
- name: str = Field(min_length=2, max_length=100)
+ """
+ [요청용] 회원가입 API (POST /auth/register) 수신 JSON 데이터 검증
+ """
+ name: str = Field(min_length=2, max_length=100, description="유저 이름 (2자 이상 100자 이하)")
\ No newline at end of file
diff --git a/App/schemas/explain_schema.py b/App/schemas/explain_schema.py
new file mode 100644
index 0000000..86d3563
--- /dev/null
+++ b/App/schemas/explain_schema.py
@@ -0,0 +1,86 @@
+from typing import Literal
+from pydantic import BaseModel, Field, model_validator
+
+# ── Branch별 허용 기법 ────────────────────────────────────
+#
+# [LOW branch] 고해상도 feature map → 국소 위조 흔적 포착에 특화
+# - hirescam : activation * gradient element-wise 곱, 업샘플링 없이 원본 해상도 유지
+# → 픽셀 단위 경계가 가장 선명 (aug_smooth: O, eigen_smooth: X)
+# - gradcamelementwise : 각 위치별 gradient 부호 고려 후 ReLU → 노이즈 억제, 국소 영역 정밀 (aug_smooth: O, eigen_smooth: O)
+# - layercam : positive gradient로 activation 공간 가중합산
+# → 얕은 레이어에서도 안정적, 텍스처/경계 검출에 강함 (aug_smooth: O, eigen_smooth: O)
+#
+# [HIGH branch] 저해상도 semantic feature map → 전체 구조 파악에 특화
+# - eigengradcam : activation * gradient 의 첫 번째 주성분
+# → 클래스 판별력 유지하면서 GradCAM보다 부드럽고 EigenCAM보다 정확 (aug_smooth: O, eigen_smooth: X)
+# - gradcamplusplus : 2차 gradient 활용 → 다중 위조 영역 동시 포착, 작은 영역에 강함 (aug_smooth: O, eigen_smooth: X)
+# - xgradcam : gradient를 normalized activation으로 스케일링
+# → attribution 합이 logit 변화량과 수학적으로 일치, 충실도 높음 (aug_smooth: O, eigen_smooth: O)
+
+_LOW_ALLOWED = {"hirescam", "gradcamelementwise", "layercam"}
+_HIGH_ALLOWED = {"eigengradcam", "gradcamplusplus", "xgradcam"}
+_EIGEN_ALLOWED = {"gradcamelementwise", "layercam", "xgradcam"}
+
+
+class ExplainImageRequest(BaseModel):
+ """
+ [이미지 시각화 요청] 딥페이크 이미지 위조 흔적 CAM 시각화 파라미터
+
+ - routes: explain (POST /explain/image/{image_id})
+ - services: explain_svc.process_explain_image_task
+ """
+ model_type: Literal["fast", "pro"] = Field("fast",
+ description="추론 모드 (fast: 속도 우선, pro: 정확도 우선)")
+
+ branch_level: Literal["low","high"] = Field("high",
+ description="브랜치 레벨\nlow: 국소 위조 흔적 포착\nhigh: 전역 위조 흔적 포착")
+
+ explainer_type: str = Field("eigengradcam",
+ description = ("선택 가능한 XAI 기법. low: [hirescam, gradcamelementwise, layercam], ""high: [eigengradcam, gradcamplusplus, xgradcam]"))
+
+ display_type: Literal["heatmap", "bbox", "heatmap_bbox"] = Field("heatmap_bbox",
+ description="시각화 형태. heatmap: 전체 분포, bbox: 위조 의심 영역 사각형, heatmap_bbox: 위조 의심 사각형 내부에 블러 처리된 히트맵을 중첩")
+
+ overlay_ratio: float = Field(0.7, ge=0.5, le=1.0,
+ description = "Heatmap 투명도 (0: 히트맵만 강조, 1: 원본 이미지 위주)")
+
+ threshold: float = Field(0.9, ge=0.5, le=1.0,
+ description="contour/bbox 이진화 임계값 (0.0~1.0)")
+
+ aug_smooth: bool = Field(False,
+ description = "TTA(Test Time Augmentation) 적용 여부. 히트맵을 더 객체 중심적으로 정렬")
+
+ eigen_smooth: bool = Field(False,
+ description = "PCA 기반 노이즈 제거. 지배적인 패턴만 남김")
+
+ @model_validator(mode="after")
+ def validate_explainer_for_branch(self) -> "ExplainImageRequest":
+ branch_allowed = {"low": _LOW_ALLOWED, "high": _HIGH_ALLOWED}
+ if self.explainer_type not in branch_allowed[self.branch_level]:
+ raise ValueError(
+ f"branch_level='{self.branch_level}'에서 허용된 기법: "
+ f"{sorted(branch_allowed[self.branch_level])} "
+ f"(입력값: '{self.explainer_type}')"
+ )
+ return self
+
+ @model_validator(mode="after")
+ def validate_explainer_for_eigen_smooth(self) -> "ExplainImageRequest":
+ if self.eigen_smooth and self.explainer_type not in _EIGEN_ALLOWED:
+ raise ValueError(
+ f"eigen_smooth가 허용된 기법: "
+ f"{sorted(_EIGEN_ALLOWED)} "
+ f"(입력값: '{self.explainer_type}')"
+ )
+ return self
+
+class ExplainFrameRequest(ExplainImageRequest):
+ """
+ [프레임 시각화 요청] 딥페이크 비디오 프레임 위조 흔적 CAM 시각화 파라미터
+
+ ExplainImageRequest와 동일한 파라미터를 사용하며, 비디오 특정 프레임 단위 시각화에 적용된다.
+
+ - routes: explain (POST /explain/video/{video_id}/frame/{frame_index})
+ - services: explain_svc.process_explain_frame_task
+ """
+ pass
\ No newline at end of file
diff --git a/App/schemas/image_schema.py b/App/schemas/image_schema.py
index 919ec5d..7b42ca7 100644
--- a/App/schemas/image_schema.py
+++ b/App/schemas/image_schema.py
@@ -1,25 +1,57 @@
-from pydantic import BaseModel
from datetime import datetime
+from pydantic import BaseModel, Field
-class BaseMetadata(BaseModel):
- image_id: int
- image_loc: str
- label: str
- version_type: str
- model_type: str
- domain_type: str
- created_at: datetime
-class InferenceResult(BaseModel):
- score : float
- face_conf : float
- face_ratio : float
- face_brightness : float
- result_msg : str
-class UserHistory(BaseMetadata):
- user_id: int
-
-class UserHistory_indi(UserHistory, InferenceResult):
- pass
-class ImageData_indi(BaseMetadata, InferenceResult):
- user_id : int | None
- status : str
+
+class ImageData(BaseModel):
+ """
+ [공통 메타 / 히스토리 목록] 이미지 분석 기본 식별 정보
+
+ 목록 응답으로 직접 사용되며, 상세/추론 결과 스키마의 베이스가 된다.
+
+ - routes: image (GET /image/history)
+ - services: image_svc.get_user_histories
+ - 상속처: ImageDetailData, ImageResultData
+ """
+ image_id: int = Field(..., description="이미지 분석 레코드 고유 ID (image_result.id)")
+ image_loc: str = Field(..., description="서버 내 저장된 이미지 파일 경로 (DB 저장 형식, 예: /static/uploads/user@a.com/img_1700000000.png)")
+ label: str = Field(..., description="딥페이크 판정 결과 라벨 (FAKE / REAL / UNKNOWN)")
+ version_type: str = Field(..., description="사용된 모델 버전 (v1 / v2)")
+ model_type: str = Field(..., description="모델 속도/정확도 모드 (fast / pro)")
+ domain_type: str = Field(..., description="얼굴 도메인 타입 (서양인 / 동양인)")
+ created_at: datetime = Field(..., description="분석 요청 생성 시각 (UTC)")
+
+
+class ImageInference(BaseModel):
+ """
+ [추론 상세 결과] 딥페이크 분석 수치 결과
+
+ - 상속 베이스 클래스 (직접 응답 X)
+ - 상속처: ImageDetailData, ImageResultData
+ - services: image_svc.get_user_history, image_svc.get_image_result
+ """
+ score: float = Field(..., description="딥페이크 확률 점수 (0.0~1.0, 0.5 이상이면 FAKE 판정). 분석 실패 시 -1.0")
+ face_conf: float = Field(..., description="얼굴 탐지 신뢰도 (0.0~1.0). 분석 실패 시 -1.0")
+ face_ratio: float = Field(..., description="이미지 내 얼굴이 차지하는 면적 비율 (0.0~1.0). 분석 실패 시 -1.0")
+ face_brightness: float = Field(..., description="얼굴 영역 평균 밝기 값. 분석 실패 시 -1.0")
+ result_msg: str = Field(..., description="분석 결과에 대한 상세 메시지 (성공/경고/실패 사유)")
+
+
+class ImageDetailData(ImageData, ImageInference):
+ """
+ [히스토리 상세] 회원 개별 이미지 분석 상세 결과
+
+ - routes: image (GET /image/history/{image_id}, DELETE /image/history/{image_id} - 내부 조회)
+ - services: image_svc.get_user_history
+ """
+ status: str
+
+
+class ImageResultData(ImageData, ImageInference):
+ """
+ [추론 결과 조회] 분석 진행 상태 + 최종 결과 (회원/비회원 공통)
+
+ - routes: inference (GET /inference/image/{image_id})
+ - services: image_svc.get_image_result
+ """
+ user_id: int | None = Field(None, description="유저 ID. 비회원 분석 요청의 경우 None")
+ status: str = Field(..., description="분석 진행 상태 (PENDING / SUCCESS / WARNING / FAILED)", examples=["SUCCESS"])
\ No newline at end of file
diff --git a/App/schemas/video_schema.py b/App/schemas/video_schema.py
index 7da9f05..1b9c443 100644
--- a/App/schemas/video_schema.py
+++ b/App/schemas/video_schema.py
@@ -1,50 +1,69 @@
-from pydantic import BaseModel
from datetime import datetime
+from pydantic import BaseModel, Field
-# [히스토리 목록] GET /video/history
-# 사용자 전체 비디오 히스토리 조회
class VideoData(BaseModel):
- id: int
- user_id : int | None
- video_loc : str
- status : str
- label : str
- version_type : str
- model_type : str
- domain_type : str
- created_at : datetime
+ """
+ [히스토리 목록] 사용자 전체 비디오 히스토리 조회
+
+ - routes: video (GET /video/history)
+ - services: video_svc.get_user_histories
+ """
+ id: int = Field(..., description="비디오 분석 레코드 고유 ID (video_result.id)")
+ user_id: int | None = Field(None, description="분석 요청 유저 ID. 비회원의 경우 None")
+ video_loc: str = Field(..., description="서버 내 저장된 비디오 파일 경로 (예: /static/uploads/user@a.com/vid_1700000000.mp4)")
+ status: str = Field(..., description="분석 진행 상태 (PENDING / SUCCESS / WARNING / FAILED)")
+ label: str = Field(..., description="딥페이크 판정 결과 라벨 (FAKE / REAL / UNKNOWN)")
+ version_type: str = Field(..., description="사용된 모델 버전 (v1 / v2)")
+ model_type: str = Field(..., description="모델 속도/정확도 모드 (fast / pro)")
+ domain_type: str = Field(..., description="얼굴 도메인 타입 (서양인 / 동양인)")
+ created_at: datetime = Field(..., description="분석 요청 생성 시각 (UTC)")
-# [히스토리 상세 / 추론 결과] GET /video/history/{video_id}, GET /inference/video/{video_id}
-# 개별 비디오 상세 조회 + 추론 결과값 포함
class VideoDetailData(VideoData):
+ """
+ [히스토리 상세 / 추론 결과] 개별 비디오 상세 + 추론 수치 결과
- score : float
- face_conf : float
- face_ratio : float
- face_brightness : float
- result_msg : str
+ - routes: video (GET /video/history/{video_id}), inference (GET /inference/video/{video_id})
+ - services: video_svc.get_user_history, video_svc.get_video_result
+ """
+ score: float = Field(..., description="비디오 전체 평균 딥페이크 확률 (0.0~1.0). 실패 시 -1.0")
+ face_conf: float = Field(..., description="평균 얼굴 탐지 신뢰도. 실패 시 -1.0")
+ face_ratio: float = Field(..., description="평균 얼굴 면적 비율. 실패 시 -1.0")
+ face_brightness: float = Field(..., description="평균 얼굴 영역 밝기. 실패 시 -1.0")
+ result_msg: str = Field(..., description="분석 결과 상세 메시지")
-# [프레임별 추론 결과] GET /inference/video/{video_id}/detail 응답 내부
-# video_frame_result 테이블 row 단위 매핑
class VideoFrameData(BaseModel):
- frame_index: int
- frame_time: float
- score: float
- face_conf: float
- face_ratio: float
- face_brightness: float
+ """
+ [프레임별 추론 결과] 비디오 프레임 단위 분석 결과
-# [비디오 메타 정보] GET /inference/video/{video_id}/detail 응답 내부
-# video_meta_result 테이블 row 단위 매핑
+ - routes: inference (GET /inference/video/{video_id}/detail 응답 내부)
+ - services: video_svc.get_video_frame_result, save_video_frame_result
+ """
+ frame_index: int = Field(..., description="비디오 내 프레임 인덱스 (0부터 시작)")
+ frame_time: float = Field(..., description="해당 프레임의 영상 내 재생 시점 (초 단위)")
+ score: float = Field(..., description="해당 프레임의 딥페이크 확률 점수 (0.0~1.0)")
+ face_conf: float = Field(..., description="해당 프레임 얼굴 탐지 신뢰도")
+ face_ratio: float = Field(..., description="해당 프레임 얼굴 면적 비율")
+ face_brightness: float = Field(..., description="해당 프레임 얼굴 영역 밝기")
+
class VideoMetaData(BaseModel):
- fps: float
- total_frames: int # 전체 프레임 수
- num_sampled: int # 샘플링 대상 프레임 수
- num_extracted: int # 실제 추출된 프레임 수
- num_detected: int # 얼굴 탐지 성공 프레임 수
+ """
+ [비디오 메타 정보] 비디오 전체 프레임 처리 통계
+
+ - routes: inference (GET /inference/video/{video_id}/detail 응답 내부)
+ - services: video_svc.get_video_meta_result, save_video_meta_result
+ """
+ fps: float = Field(..., description="비디오의 초당 프레임 수 (Frames Per Second)")
+ total_frames: int = Field(..., description="비디오 전체 프레임 수")
+ num_sampled: int = Field(..., description="추론을 위해 샘플링한 프레임 수")
+ num_extracted: int = Field(..., description="실제로 추출에 성공한 프레임 수")
+ num_detected: int = Field(..., description="얼굴 탐지에 성공한 프레임 수 (score 산출 성공)")
-# [상세 분석 최종 응답] GET /inference/video/{video_id}/{detail}
-# 로그인 유저 전용 (get_session_user_prt)
class VideoDetailResponse(BaseModel):
- meta: VideoMetaData
- frames: list[VideoFrameData]
\ No newline at end of file
+ """
+ [상세 분석 최종 응답] 비디오 상세 분석 화면용 통합 응답
+
+ 사용처:
+ - routes: inference (GET /inference/video/{video_id}/detail) - 로그인 유저 전용
+ """
+ meta: VideoMetaData = Field(..., description="비디오 메타 정보 (FPS, 프레임 수 등)")
+ frames: list[VideoFrameData] = Field(..., description="프레임별 상세 분석 결과 리스트 (frame_index 오름차순)")
\ No newline at end of file
diff --git a/App/services/auth_svc.py b/App/services/auth_svc.py
index 5c28905..139761f 100644
--- a/App/services/auth_svc.py
+++ b/App/services/auth_svc.py
@@ -1,4 +1,3 @@
-from datetime import datetime, timedelta, timezone
from fastapi import status
from fastapi.exceptions import HTTPException
from passlib.context import CryptContext
@@ -9,14 +8,43 @@
# 비밀번호 암호화 및 검증
pwd_context = CryptContext(schemes=["bcrypt"], deprecated="auto")
-def get_hashed_password(password: str):
+def get_hashed_password(password: str) -> str:
+ """평문 비밀번호를 bcrypt 알고리즘으로 해싱한다.
+
+ Args:
+ password (str): 사용자가 입력한 평문 비밀번호.
+
+ Returns:
+ str: bcrypt 해싱된 비밀번호 문자열.
+ """
return pwd_context.hash(password)
-def verify_password(plain_password: str, hashed_password: str):
+def verify_password(plain_password: str, hashed_password: str) -> bool:
+ """평문 비밀번호와 해시된 비밀번호의 일치 여부를 검증한다.
+
+ Args:
+ plain_password (str): 사용자가 입력한 평문 비밀번호.
+ hashed_password (str): DB에 저장된 bcrypt 해시 비밀번호.
+
+ Returns:
+ bool: 비밀번호 일치 여부.
+ """
return pwd_context.verify(plain_password, hashed_password)
-# 회원가입 시, 이미 존재하는 이메일과 중복 확인
-async def get_user_by_email(conn: Connection, email: str):
+async def get_user_by_email(conn: Connection, email: str) -> UserData | None:
+ """이메일로 사용자를 조회해 중복 가입 여부를 확인한다.
+
+ Args:
+ conn (Connection): SQLAlchemy 비동기 DB 커넥션.
+ email (str): 조회할 이메일 주소.
+
+ Returns:
+ UserData | None: 이메일이 존재하면 UserData 반환, 없으면 None.
+
+ Raises:
+ HTTPException 503: DB 쿼리 중 SQLAlchemy 오류 발생 시.
+ HTTPException 500: 예기치 못한 예외 발생 시.
+ """
try:
query = f"""
SELECT id, name, email from user
@@ -45,8 +73,18 @@ async def get_user_by_email(conn: Connection, email: str):
raise HTTPException(status_code=status.HTTP_500_INTERNAL_SERVER_ERROR,
detail="알수없는 이유로 서비스 오류가 발생하였습니다.")
-# 실제 DB에 회원 정보(이름, 이메일, 해싱된 패스워드)
-async def register_user(conn: Connection, name: str, email:str, hashed_password: str):
+async def register_user(conn: Connection, name: str, email:str, hashed_password: str) -> None:
+ """신규 사용자 정보를 DB에 저장한다.
+
+ Args:
+ conn (Connection): SQLAlchemy 비동기 DB 커넥션.
+ name (str): 사용자 이름.
+ email (str): 사용자 이메일 주소.
+ hashed_password (str): bcrypt 해시 처리된 비밀번호.
+
+ Raises:
+ HTTPException 400: DB INSERT 실패 또는 잘못된 요청 데이터.
+ """
try:
query = f"""
INSERT INTO user(name, email, hashed_password)
@@ -64,9 +102,19 @@ async def register_user(conn: Connection, name: str, email:str, hashed_password:
raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST,
detail="요청데이터가 제대로 전달되지 않았습니다")
-# 해당 이메일 가진 회원정보 가져오기
-async def authenticate_user(conn: Connection, email: str):
- """로그인 시 이메일을 검증하여 일치하면 유저 정보를 반환합니다."""
+async def authenticate_user(conn: Connection, email: str) -> UserDataPASS | bool:
+ """로그인 시 이메일로 사용자를 조회해 인증 정보를 반환한다.
+
+ Args:
+ conn (Connection): SQLAlchemy 비동기 DB 커넥션.
+ email (str): 로그인 요청 이메일.
+
+ Returns:
+ UserDataPASS | bool: 사용자가 존재하면 UserDataPASS 반환, 없으면 False.
+
+ Raises:
+ HTTPException 400: DB 쿼리 중 SQLAlchemy 오류 발생 시.
+ """
try:
query = """
SELECT id, name, email, hashed_password FROM user
diff --git a/App/services/explain_svc.py b/App/services/explain_svc.py
new file mode 100644
index 0000000..5b3cbcf
--- /dev/null
+++ b/App/services/explain_svc.py
@@ -0,0 +1,290 @@
+import cv2
+import asyncio
+import numpy as np
+from fastapi import status
+from fastapi.exceptions import HTTPException
+from sqlalchemy import Connection
+from services import image_svc, inference_svc
+from explainability import (
+ CAMExplainer,
+ HiResCAMExplainer, GradCAMElementWiseExplainer, LayerCAMExplainer,
+ EigenGradCAMExplainer, GradCAMPlusPlusExplainer, XGradCAMExplainer,
+)
+from celery_app import celery_app
+
+# LOW branch: 국소 위조 흔적 포착 / HIGH branch: 전역 위조 흔적 포착
+EXPLAINER_REGISTRY = {
+ "hirescam": HiResCAMExplainer, # LOW branch
+ "gradcamelementwise": GradCAMElementWiseExplainer, # LOW branch
+ "layercam": LayerCAMExplainer, # LOW branch
+ "eigengradcam": EigenGradCAMExplainer, # HIGH branch
+ "gradcamplusplus": GradCAMPlusPlusExplainer, # HIGH branch
+ "xgradcam": XGradCAMExplainer, # HIGH branch
+}
+
+_explainer_cache: dict = {}
+
+def _extract_face_from_frame(video_path: str, frame_time: float, explainer: CAMExplainer) -> np.ndarray:
+ """비디오의 특정 시간대 프레임에서 얼굴 영역을 추출해 크롭된 배열을 반환한다.
+
+ Args:
+ video_path (str): 비디오 파일 경로.
+ frame_time (float): 프레임을 추출할 시간 (초 단위).
+ explainer (CAMExplainer): 얼굴 감지 및 크롭에 사용할 CAMExplainer 인스턴스.
+
+ Returns:
+ np.ndarray: 크롭된 얼굴 이미지 배열 (RGB).
+ """
+ cap = cv2.VideoCapture(video_path)
+ cap.set(cv2.CAP_PROP_POS_MSEC, frame_time * 1000)
+ ret, frame = cap.read()
+ cap.release()
+
+ frame_rgb = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)
+ bbox = explainer._get_face_bbox(frame_rgb)
+
+ return explainer._crop_face(frame_rgb, bbox[:4])
+
+def _get_or_create_explainer(model_name: str, dataset: str, explain_req_dict: dict) -> CAMExplainer:
+ """캐시에서 CAMExplainer를 조회하거나, 없으면 새로 생성해 캐싱 후 반환한다.
+
+ 캐시 키는 (model_name, dataset, explainer_type, branch_level) 4개 파라미터로 구성된다.
+ 추론 시점 파라미터(aug_smooth, threshold 등)는 키에서 제외해 메모리 사용을 최소화한다.
+
+ Args:
+ model_name (str): 추론에 사용할 모델 이름.
+ dataset (str): 모델 학습에 사용된 데이터셋 이름.
+ explain_req_dict (dict): 시각화 요청 파라미터 딕셔너리.
+ - explainer_type (str): EXPLAINER_REGISTRY 키값.
+ - branch_level (str): 모델 브랜치 레벨 ("LOW" | "HIGH").
+
+ Returns:
+ CAMExplainer: 캐시된 또는 새로 생성된 CAMExplainer 인스턴스.
+ """
+ cache_key = (model_name, dataset, explain_req_dict["explainer_type"], explain_req_dict["branch_level"])
+
+ if cache_key not in _explainer_cache:
+ _explainer_cache[cache_key] = EXPLAINER_REGISTRY[explain_req_dict["explainer_type"]](
+ model_name = model_name,
+ dataset = dataset,
+ branch_level = explain_req_dict["branch_level"],
+ )
+ return _explainer_cache[cache_key]
+
+def _run_visualization(explainer: CAMExplainer, image_path: str, category: int, explain_req_dict: dict) -> np.ndarray:
+ """이미지 경로를 받아 display_type에 따라 시각화 이미지를 생성한다.
+
+ Args:
+ explainer (CAMExplainer): 시각화에 사용할 CAMExplainer 인스턴스.
+ image_path (str): 입력 이미지 파일 경로.
+ category (int): 타겟 클래스 인덱스 (위조: 1, 정상: 0).
+ explain_req_dict (dict): 시각화 요청 파라미터 딕셔너리.
+ - display_type (str): "heatmap" | "bbox" | "heatmap_bbox"
+ - overlay_ratio (float): 히트맵 오버레이 시 원본 이미지 가중치.
+ - threshold (float | str): CAM 이진화 임계값.
+ - aug_smooth (bool): Test-time augmentation 가동 여부.
+ - eigen_smooth (bool): PCA 기반 노이즈 제거 가동 여부.
+
+ Returns:
+ np.ndarray: 시각화가 적용된 얼굴 이미지 (RGB, np.uint8).
+ """
+ if explain_req_dict["display_type"] == "heatmap":
+ return explainer.display_heatmap_on_image(image_path, image_weight=explain_req_dict["overlay_ratio"], threshold=explain_req_dict["threshold"],
+ category=category, aug_smooth=explain_req_dict["aug_smooth"], eigen_smooth=explain_req_dict["eigen_smooth"])
+ elif explain_req_dict["display_type"] == "bbox":
+ return explainer.display_bbox_on_image(image_path, threshold=explain_req_dict["threshold"],
+ category=category, aug_smooth=explain_req_dict["aug_smooth"], eigen_smooth=explain_req_dict["eigen_smooth"])
+ else: # display_type == "heatmap_bbox"
+ return explainer.display_heatmap_bbox_on_image(image_path, image_weight=explain_req_dict["overlay_ratio"], threshold=explain_req_dict["threshold"],
+ category=category, aug_smooth=explain_req_dict["aug_smooth"], eigen_smooth=explain_req_dict["eigen_smooth"])
+
+def _run_visualization_from_array(explainer: CAMExplainer, face: np.ndarray, category: int, explain_req_dict: dict) -> np.ndarray:
+ """크롭된 얼굴 배열을 받아 display_type에 따라 시각화 이미지를 생성한다.
+
+ Args:
+ explainer (CAMExplainer): 시각화에 사용할 CAMExplainer 인스턴스.
+ face (np.ndarray): 전처리(크롭)가 완료된 얼굴 이미지 배열 (RGB).
+ category (int): 타겟 클래스 인덱스 (위조: 1, 정상: 0).
+ explain_req_dict (dict): 시각화 요청 파라미터 딕셔너리. (_run_visualization과 동일)
+
+ Returns:
+ np.ndarray: 시각화가 적용된 얼굴 이미지 (RGB, np.uint8).
+ """
+ if explain_req_dict["display_type"] == "heatmap":
+ return explainer.display_heatmap_from_array(face, image_weight=explain_req_dict["overlay_ratio"], threshold=explain_req_dict["threshold"],
+ category=category, aug_smooth=explain_req_dict["aug_smooth"], eigen_smooth=explain_req_dict["eigen_smooth"])
+ elif explain_req_dict["display_type"] == "bbox":
+ return explainer.display_bbox_from_array(face, threshold=explain_req_dict["threshold"],
+ category=category, aug_smooth=explain_req_dict["aug_smooth"], eigen_smooth=explain_req_dict["eigen_smooth"])
+ else: # display_type == "heatmap_bbox"
+ return explainer.display_heatmap_bbox_from_array(face, image_weight=explain_req_dict["overlay_ratio"], threshold=explain_req_dict["threshold"],
+ category=category, aug_smooth=explain_req_dict["aug_smooth"], eigen_smooth=explain_req_dict["eigen_smooth"])
+
+@celery_app.task(name="process_explain_image_task")
+def process_explain_image_task(user_email: str,
+ version_type: str,
+ domain_type: str,
+ image_loc: str,
+ image_id: int,
+ category: int,
+ explain_req_dict: dict) -> dict:
+ """딥페이크 이미지 위조 흔적 시각화를 처리하는 Celery 비동기 태스크.
+
+ CAMExplainer로 시각화 이미지를 생성하고 서버에 저장한다.
+ Celery 워커(동기) 내에서 asyncio 이벤트 루프를 직접 구동해 비동기 로직을 실행한다.
+
+ Args:
+ user_email (str): 요청 사용자 이메일 (저장 경로 구분용).
+ version_type (str): 모델 버전 타입 (MODEL_CONFIG 키값).
+ domain_type (str): 탐지 도메인 타입 (MODEL_CONFIG 키값).
+ image_loc (str): 분석 대상 이미지의 서버 저장 경로 (DB 기준, '/'로 시작).
+ image_id (int): 이미지 레코드 PK.
+ category (int): 타겟 클래스 인덱스 (위조: 1, 정상: 0).
+ explain_req_dict (dict): 시각화 요청 파라미터 딕셔너리.
+
+ Returns:
+ dict:
+ - status (str): "SUCCESS" | "FAILED"
+ - message (str): 처리 결과 메세지.
+ - cam_loc (str | None): 저장된 시각화 이미지 경로. 실패 시 None.
+
+ Note:
+ 생성된 시각화 파일은 태스크 완료 60초 후 자동 삭제된다.
+ """
+ async def run_explain():
+ cam_loc = None
+ try:
+ model_name, dataset = inference_svc.MODEL_CONFIG[version_type][explain_req_dict["model_type"]][domain_type]
+
+ explainer = _get_or_create_explainer(model_name, dataset, explain_req_dict)
+ image_path = "." + image_loc
+
+ # 시각화 이미지 생성 시작
+ try:
+ image = _run_visualization(explainer, image_path, category, explain_req_dict)
+ except Exception:
+ raise HTTPException(
+ status_code=status.HTTP_500_INTERNAL_SERVER_ERROR,
+ detail="딥페이크 이미지 위조 흔적을 생성하는 중 오류가 발생하였습니다"
+ )
+
+ # 생성된 시각화 이미지 파일 저장
+ try:
+ cam_loc = await image_svc.upload_image_cam(user_email, image_id, image)
+ except Exception:
+ raise HTTPException(
+ status_code=status.HTTP_500_INTERNAL_SERVER_ERROR,
+ detail="딥페이크 이미지 위조 흔적 파일을 저장하는 중 오류가 발생했습니다."
+ )
+
+ return {"status": "SUCCESS",
+ "message": "딥페이크 이미지 위조 흔적 시각화가 성공적으로 이루어졌습니다",
+ "cam_loc": cam_loc}
+
+ except HTTPException as e:
+ print(e.detail)
+ return {"status": "FAILED", "message": str(e.detail)}
+
+ except Exception as e:
+ print(str(e))
+ return {"status": "FAILED", "message": str(e)}
+
+ finally:
+ # 임시 저장된 시각화 이미지 파일 삭제
+ if cam_loc:
+ image_svc.cleanup_image_cam.apply_async(args=[cam_loc], countdown=60)
+
+ # 동기식 Celery 워커 내 비동기 이벤트 루프 구동
+ loop = asyncio.new_event_loop()
+ asyncio.set_event_loop(loop)
+ try:
+ return loop.run_until_complete(run_explain())
+ finally:
+ loop.close()
+
+@celery_app.task(name="process_explain_frame_task")
+def process_explain_frame_task(user_email: str,
+ version_type: str,
+ domain_type: str,
+ video_loc: str,
+ video_id: int,
+ category: int,
+ frame_time: float,
+ explain_req_dict: dict) -> dict:
+ """딥페이크 비디오 특정 프레임의 위조 흔적 시각화를 처리하는 Celery 비동기 태스크.
+
+ 비디오에서 프레임을 추출하고 얼굴을 크롭한 뒤 CAMExplainer로 시각화 이미지를 생성해 저장한다.
+ Celery 워커(동기) 내에서 asyncio 이벤트 루프를 직접 구동해 비동기 로직을 실행한다.
+
+ Args:
+ user_email (str): 요청 사용자 이메일 (저장 경로 구분용).
+ version_type (str): 모델 버전 타입 (MODEL_CONFIG 키값).
+ domain_type (str): 탐지 도메인 타입 (MODEL_CONFIG 키값).
+ video_loc (str): 분석 대상 비디오의 서버 저장 경로 (DB 기준, '/'로 시작).
+ video_id (int): 비디오 레코드 PK.
+ category (int): 타겟 클래스 인덱스 (위조: 1, 정상: 0).
+ frame_time (float): 시각화할 프레임의 타임스탬프 (초 단위).
+ explain_req_dict (dict): 시각화 요청 파라미터 딕셔너리.
+
+ Returns:
+ dict:
+ - status (str): "SUCCESS" | "FAILED"
+ - message (str): 처리 결과 메세지.
+ - cam_loc (str | None): 저장된 시각화 이미지 경로. 실패 시 None.
+
+ Note:
+ 생성된 시각화 파일은 태스크 완료 60초 후 자동 삭제된다.
+ """
+ async def run_explain():
+ cam_loc = None
+ try:
+ model_name, dataset = inference_svc.MODEL_CONFIG[version_type][explain_req_dict["model_type"]][domain_type]
+ video_path = "." + video_loc
+
+ explainer = _get_or_create_explainer(model_name, dataset, explain_req_dict)
+
+ face = _extract_face_from_frame(video_path, frame_time, explainer)
+
+ # 비디오 프레임 시각화 생성 시작
+ try:
+ image = _run_visualization_from_array(explainer, face, category, explain_req_dict)
+ except Exception:
+ raise HTTPException(
+ status_code=status.HTTP_500_INTERNAL_SERVER_ERROR,
+ detail="딥페이크 비디오 프레임 위조 흔적을 생성하는 중 오류가 발생하였습니다"
+ )
+
+ # 비디오 프레임 시각화 파일 저장
+ try:
+ cam_loc = await image_svc.upload_frame_cam(user_email, video_id, frame_time, image)
+ except Exception:
+ raise HTTPException(
+ status_code=status.HTTP_500_INTERNAL_SERVER_ERROR,
+ detail="딥페이크 비디오 프레임 위조 흔적 파일을 저장하는 중 오류가 발생했습니다."
+ )
+
+ return {"status": "SUCCESS",
+ "message": "딥페이크 비디오 프레임 위조 흔적 시각화가 성공적으로 이루어졌습니다",
+ "cam_loc": cam_loc}
+
+ except HTTPException as e:
+ print(e.detail)
+ return {"status": "FAILED", "message": str(e.detail)}
+
+ except Exception as e:
+ print(str(e))
+ return {"status": "FAILED", "message": str(e)}
+
+ finally:
+ # 임시 저장된 비디오 프레임 시각화 파일 삭제
+ if cam_loc:
+ image_svc.cleanup_image_cam.apply_async(args=[cam_loc], countdown=60)
+
+ # 동기식 Celery 워커 내 비동기 이벤트 루프 구동
+ loop = asyncio.new_event_loop()
+ asyncio.set_event_loop(loop)
+ try:
+ return loop.run_until_complete(run_explain())
+ finally:
+ loop.close()
+
diff --git a/App/services/image_svc.py b/App/services/image_svc.py
index 9a92d68..21f3d4e 100644
--- a/App/services/image_svc.py
+++ b/App/services/image_svc.py
@@ -1,47 +1,55 @@
import os
-import asyncio
import time
+import cv2
+import numpy as np
import aiofiles as aio
+import asyncio
from dotenv import load_dotenv
-
from fastapi import UploadFile, status
from fastapi.exceptions import HTTPException
from sqlalchemy import text, Connection
-from sqlalchemy.exc import SQLAlchemyError, DBAPIError
-from schemas.image_schema import UserHistory, UserHistory_indi, ImageData_indi
+from sqlalchemy.exc import SQLAlchemyError
+from schemas.image_schema import ImageData, ImageDetailData, ImageResultData
from db.database import celery_db_conn
from celery_app import celery_app
load_dotenv()
-UPLOAD_DIR = os.getenv("UPLOAD_DIR")
+UPLOAD_DIR = os.getenv("UPLOAD_DIR", "./static/uploads")
+EXPLAIN_UPLOAD_DIR = os.getenv("EXPLAIN_UPLOAD_DIR", "./static/explain")
+
+os.makedirs(EXPLAIN_UPLOAD_DIR, exist_ok=True)
+os.makedirs(UPLOAD_DIR, exist_ok=True)
-# 사용자 업로드 이미지 서버 내 저장 (회원/비회원 공통)
async def upload_image(user_email: str | None, imagefile: UploadFile) -> str:
+ """업로드된 이미지를 서버에 저장하고 DB 저장용 경로를 반환한다. 회원/비회원 공통.
+
+ Args:
+ user_email (str | None): 로그인 사용자 이메일. 비회원이면 None.
+ imagefile (UploadFile): FastAPI 업로드 파일 객체.
+
+ Returns:
+ str: 저장된 이미지의 DB 기준 경로 ('/'로 시작, '\\' 정규화됨).
+
+ Raises:
+ HTTPException 500: 파일 쓰기 또는 예기치 못한 오류 발생 시.
+ """
try:
- # 1. 사용자별 하위 디렉토리 결정
+ # 사용자별 하위 디렉토리 결정
sub_dir = user_email if user_email else "anonymous"
user_dir = os.path.join(UPLOAD_DIR, sub_dir)
- # 3. 디렉토리 존재 확인 및 생성
- if not os.path.exists(user_dir):
- try:
- os.makedirs(user_dir, exist_ok=True)
- except OSError as e:
- print(f"[Storage Error] 디렉토리 생성 실패: {e}")
- raise HTTPException(
- status_code=status.HTTP_500_INTERNAL_SERVER_ERROR,
- detail="서버 내 저장 공간을 준비하지 못했습니다."
- )
-
- # 4. 파일명 중복 방지 (파일명_타임스탬프.확장자)
+ # 디렉토리 존재 확인 및 생성
+ os.makedirs(user_dir, exist_ok=True)
+
+ # 파일명 중복 방지 (파일명_타임스탬프.확장자)
filename_only, ext = os.path.splitext(imagefile.filename)
upload_filename = f"{filename_only}_{int(time.time())}{ext}"
upload_image_loc = os.path.join(user_dir, upload_filename)
- # 5. 비동기 이미지 저장 (Chunk 단위 읽기)
+ # 비동기 이미지 저장 (Chunk 단위 읽기)
try:
async with aio.open(upload_image_loc, "wb") as outfile:
while content := await imagefile.read(1024 * 1024):
@@ -53,8 +61,6 @@ async def upload_image(user_email: str | None, imagefile: UploadFile) -> str:
detail="이미지 파일을 저장하는 중 오류가 발생했습니다."
)
- print(f"Upload Succeeded: {upload_image_loc}")
-
# 6. DB 저장용 경로 반환
return upload_image_loc[1:].replace("\\", "/")
@@ -67,156 +73,204 @@ async def upload_image(user_email: str | None, imagefile: UploadFile) -> str:
status_code=status.HTTP_500_INTERNAL_SERVER_ERROR,
detail="이미지 업로드 과정에서 예상치 못한 오류가 발생했습니다.")
-# 사용자 업로드 이미지 서버 내 삭제
+async def upload_image_cam(user_email: str, image_id: int, image: np.ndarray) -> str:
+ """CAM 시각화 이미지를 서버에 저장하고 DB 저장용 경로를 반환한다. 회원 전용.
+
+ Args:
+ user_email (str): 요청 사용자 이메일 (저장 경로 구분용).
+ image_id (int): 이미지 레코드 PK (파일명 구성에 사용).
+ image (np.ndarray): 저장할 시각화 이미지 배열 (RGB).
+
+ Returns:
+ str: 저장된 CAM 이미지의 DB 기준 경로 ('/'로 시작).
+
+ Raises:
+ Exception: 파일 쓰기 실패 시 그대로 re-raise.
+ """
+ user_dir = os.path.join(EXPLAIN_UPLOAD_DIR, user_email)
+ os.makedirs(user_dir, exist_ok=True)
+
+ cam_filename = f"{image_id}_{int(time.time())}.png"
+ cam_loc = os.path.join(user_dir, cam_filename)
+
+ image_bgr = cv2.cvtColor(image, cv2.COLOR_RGB2BGR)
+ _, buf = cv2.imencode(".png", image_bgr)
+
+ try:
+ async with aio.open(cam_loc, "wb") as outfile:
+ await outfile.write(buf.tobytes())
+ except Exception as e:
+ raise e
+
+ return cam_loc[1:].replace("\\", "/")
+
+async def upload_frame_cam(user_email: str, video_id: int, frame_time: float, image: np.ndarray) -> str:
+ """비디오 프레임 CAM 시각화 이미지를 서버에 저장하고 DB 저장용 경로를 반환한다. 회원 전용.
+
+ Args:
+ user_email (str): 요청 사용자 이메일 (저장 경로 구분용).
+ video_id (int): 비디오 레코드 PK (파일명 구성에 사용).
+ frame_time (float): 시각화한 프레임의 타임스탬프 (초 단위, 파일명 구성에 사용).
+ image (np.ndarray): 저장할 시각화 이미지 배열 (RGB).
+
+ Returns:
+ str: 저장된 CAM 이미지의 DB 기준 경로 ('/'로 시작).
+
+ Raises:
+ Exception: 파일 쓰기 실패 시 그대로 re-raise.
+ """
+ user_dir = os.path.join(EXPLAIN_UPLOAD_DIR, user_email)
+ os.makedirs(user_dir, exist_ok=True)
+
+ cam_filename = f"v{video_id}_t{frame_time}_{int(time.time())}.png"
+ cam_loc = os.path.join(user_dir, cam_filename)
+
+ image_bgr = cv2.cvtColor(image, cv2.COLOR_RGB2BGR)
+ _, buf = cv2.imencode(".png", image_bgr)
+
+ try:
+ async with aio.open(cam_loc, "wb") as outfile:
+ await outfile.write(buf.tobytes())
+ except Exception as e:
+ raise e
+
+ return cam_loc[1:].replace("\\", "/")
+
async def delete_image(image_loc: str):
+ """서버에서 이미지 물리 파일을 삭제한다.
+
+ 파일이 존재하지 않으면 경고 로그만 출력하고 정상 종료한다.
+
+ Args:
+ image_loc (str): 삭제할 이미지의 DB 기준 경로 ('/'로 시작).
+
+ Raises:
+ HTTPException 500: 파일 삭제 중 예기치 못한 오류 발생 시.
+ """
try:
file_path = "." + image_loc
if os.path.exists(file_path):
os.remove(file_path)
- print(f"File removed: {file_path}")
else:
print(f"File not found: {file_path}")
- except Exception as e:
- print(f"{e}")
+ except Exception:
raise HTTPException(
status_code=status.HTTP_500_INTERNAL_SERVER_ERROR,
detail="알수없는 이유로 문제가 발생하였습니다."
)
-# 사용자 전체 히스토리 조회 (image_result 테이블 반영)
-async def get_user_histories(conn: Connection, user_id: int):
- try:
- # SQL에 맞춰 테이블명과 컬럼 변경
- query = ("""
- SELECT id, user_id, image_loc, label, version_type, model_type, domain_type, created_at
- FROM image_result
- WHERE user_id = :user_id
- ORDER BY created_at DESC;
- """)
- stmt = text(query)
- bind_stmt = stmt.bindparams(user_id = user_id)
- result = await conn.execute(bind_stmt)
- user_histories = [UserHistory(
- image_id = row.id,
- user_id = row.user_id,
- image_loc = row.image_loc,
- label = row.label,
- version_type = row.version_type,
- model_type = row.model_type,
- domain_type = row.domain_type,
- created_at = row.created_at
- )
- for row in result]
-
- result.close()
+async def delete_image_db(conn: Connection, image_id: int):
+ """DB에서 이미지 레코드를 삭제한다.
-
- return user_histories
-
- except SQLAlchemyError as e:
- print(f"히스토리 조회 실패: {e}")
- raise HTTPException(status_code=status.HTTP_503_SERVICE_UNAVAILABLE, detail="요청하신 서비스가 잠시 내부적으로 문제가 발생하였습니다.")
+ Args:
+ conn (Connection): SQLAlchemy 비동기 DB 커넥션.
+ image_id (int): 삭제할 이미지 레코드 PK.
- except Exception as e:
- print(e)
- raise HTTPException(status_code=status.HTTP_500_INTERNAL_SERVER_ERROR, detail="알수없는 이유로 문제가 발생하였습니다.")
-
-# 사용자 개별 히스토리 조회
-async def get_user_history(conn: Connection, image_id: int):
+ Raises:
+ HTTPException 404: 해당 image_id 레코드가 없을 때.
+ HTTPException 503: DB 쿼리 중 SQLAlchemy 오류 발생 시.
+ HTTPException 500: 예기치 못한 오류 발생 시.
+ """
try:
- query = """
- SELECT id, user_id, image_loc, label, score, face_conf, face_ratio, face_brightness, version_type, model_type, domain_type, result_msg, created_at
- FROM image_result
- WHERE id = :image_id;
- """
- stmt = text(query)
- bind_stmt = stmt.bindparams(image_id=image_id)
- result = await conn.execute(bind_stmt)
-
- row = result.fetchone()
- if row is None:
- return None
-
- user_history = UserHistory_indi(
- image_id = row.id,
- user_id = row.user_id,
- image_loc = row.image_loc,
- label = row.label,
- score = row.score,
- face_conf = row.face_conf,
- face_ratio = row.face_ratio,
- face_brightness = row.face_brightness,
- version_type = row.version_type,
- model_type = row.model_type,
- domain_type = row.domain_type,
- result_msg = row.result_msg,
- created_at = row.created_at
- )
-
- result.close()
-
- return user_history
-
+ delete_query = text("DELETE FROM image_result WHERE id = :image_id")
+ result = await conn.execute(delete_query, {"image_id": image_id})
+
+ if result.rowcount == 0:
+ raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail=f"해당 이미지 id {image_id}는(은) 존재하지 않아 삭제할 수 없습니다.")
+
+ await conn.commit()
+
except SQLAlchemyError as e:
- print(f"히스토리 조회 실패: {e}")
+ await conn.rollback()
raise HTTPException(status_code=status.HTTP_503_SERVICE_UNAVAILABLE, detail="요청하신 서비스가 잠시 내부적으로 문제가 발생하였습니다.")
except HTTPException:
raise
-
+
except Exception as e:
- print(e)
+ await conn.rollback()
raise HTTPException(status_code=status.HTTP_500_INTERNAL_SERVER_ERROR, detail="알수없는 이유로 문제가 발생하였습니다.")
-# 비회원 데이터 5분 후 자동 삭제 태스크
@celery_app.task(name="cleanup_anonymous_image")
def cleanup_anonymous_image(image_id: int, image_loc: str):
+ """비회원 이미지 DB 레코드 및 물리 파일을 삭제하는 Celery 태스크.
+
+ DB 삭제와 파일 삭제는 독립적으로 처리되어 한쪽 실패가 다른쪽에 영향을 주지 않는다.
+
+ Args:
+ image_id (int): 삭제할 이미지 레코드 PK.
+ image_loc (str): 삭제할 이미지의 DB 기준 경로.
+ """
loop = asyncio.new_event_loop()
asyncio.set_event_loop(loop)
try:
async def _delete():
async with celery_db_conn() as conn:
- await delete_image_db(conn, image_id)
- await delete_image(image_loc)
- print(f"[Cleanup] 비회원 이미지 삭제 완료 - image_id: {image_id}, image_loc: {image_loc}")
+ success = True
+ try:
+ await delete_image_db(conn, image_id)
+ except Exception as e:
+ print(f"[Cleanup] 이미지 DB 삭제 실패 - image_id: {image_id}, error: {e}")
+ success=False
+ try:
+ await delete_image(image_loc)
+ except Exception as e:
+ print(f"[Cleanup] 이미지 파일 삭제 실패 - image_loc: {image_loc}, error: {e}")
+ success=False
+
+ if success:
+ print(f"[Cleanup] 비회원 이미지 삭제 프로세스 완료 - image_id: {image_id}, image_loc: {image_loc}")
+
loop.run_until_complete(_delete())
- except Exception as e:
- print(f"[Cleanup Error] 비회원 이미지 삭제 실패 - image_id: {image_id}, error: {e}")
+
finally:
loop.close()
+@celery_app.task(name="cleanup_image_cam")
+def cleanup_image_cam(cam_loc: str):
+ """CAM 시각화 파일을 삭제하는 Celery 태스크.
-# 이미지 DB 레코드 및 물리 파일 완전 삭제
-async def delete_image_db(conn: Connection, image_id: int):
- try:
- delete_query = text("DELETE FROM image_result WHERE id = :image_id")
- result = await conn.execute(delete_query.bindparams(image_id=image_id))
-
- if result.rowcount == 0:
- raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail=f"해당 이미지 id {id}는(은) 존재하지 않아 삭제할 수 없습니다.")
-
- await conn.commit()
+ 이미지/비디오 프레임 시각화 파일 모두 이 태스크로 정리한다.
+ Args:
+ cam_loc (str): 삭제할 CAM 시각화 파일의 DB 기준 경로.
+ """
+ loop = asyncio.new_event_loop()
+ asyncio.set_event_loop(loop)
+ try:
+ async def _delete():
+ try:
+ await delete_image(cam_loc)
+ print(f"[Cleanup] 이미지 시각화 파일 삭제 완료 - cam_loc: {cam_loc}")
+ except Exception as e:
+ print(f"[Cleanup] 이미지 시각화 파일 삭제 실패 - cam_loc: {cam_loc}, error: {e}")
+
+ loop.run_until_complete(_delete())
- except SQLAlchemyError as e:
- print(e)
- await conn.rollback()
- raise HTTPException(status_code=status.HTTP_503_SERVICE_UNAVAILABLE, detail="요청하신 서비스가 잠시 내부적으로 문제가 발생하였습니다.")
-
- except HTTPException:
- raise
+ finally:
+ loop.close()
- except Exception as e:
- print(e)
- await conn.rollback()
- raise HTTPException(status_code=status.HTTP_500_INTERNAL_SERVER_ERROR, detail="알수없는 이유로 문제가 발생하였습니다.")
-
-# 빈 이미지 DB 생성 이후, image_id 반환(접수 완료)
async def register_image_result(conn: Connection, user_id: int | None, image_loc: str,
version_type: str, model_type: str, domain_type: str):
+ """PENDING 상태의 빈 이미지 레코드를 DB에 생성하고 image_id를 반환한다.
+
+ Args:
+ conn (Connection): SQLAlchemy 비동기 DB 커넥션.
+ user_id (int | None): 로그인 사용자 ID. 비회원이면 None.
+ image_loc (str): 업로드된 이미지의 DB 기준 경로.
+ version_type (str): 모델 버전 타입.
+ model_type (str): 추론 모드 ("fast" | "pro").
+ domain_type (str): 탐지 도메인.
+
+ Returns:
+ int: 생성된 이미지 레코드의 PK (auto_increment).
+
+ Raises:
+ HTTPException 400: DB INSERT 실패 시. 업로드된 물리 파일도 함께 롤백 삭제된다.
+ """
try:
query = """
INSERT INTO image_result (
@@ -248,14 +302,24 @@ async def register_image_result(conn: Connection, user_id: int | None, image_loc
raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST,
detail="요청데이터가 제대로 전달되지 않았습니다")
-# 이미지 메타데이터 + 추론 결과값 DB에 저장
async def update_image_result(conn: Connection, image_id: int, analysis: dict,
result_msg: str, status: str):
-
+ """추론 완료 후 이미지 레코드에 분석 결과를 업데이트한다.
+
+ Args:
+ conn (Connection): SQLAlchemy 비동기 DB 커넥션.
+ image_id (int): 업데이트할 이미지 레코드 PK.
+ analysis (dict): 추론 결과값. prob, face_conf, face_ratio, face_brightness 포함.
+ result_msg (str): 처리 결과 메세지.
+ status (str): 추론 상태 ("success" | "warning" | "failed").
+
+ Raises:
+ SQLAlchemyError: DB 업데이트 실패 시 그대로 re-raise.
+ """
# status 종류: success, warning, failed
# success: 이미지 추론 성공
# warning: 이미지 추론 과정 PredictError 발생
- # failed: 이미지 추로 과정 알수 없는 오류 발생
+ # failed: 이미지 추론 과정 알수 없는 오류 발생
if status == 'success':
label = "FAKE" if analysis["prob"] > 0.5 else "REAL"
@@ -292,12 +356,29 @@ async def update_image_result(conn: Connection, image_id: int, analysis: dict,
except SQLAlchemyError as e:
await conn.rollback()
raise e
-
-# 이미지 결과 값 가져오기
-async def get_image_result(conn: Connection,
- image_id: int):
+
+async def get_image_result(conn: Connection, image_id: int):
+ """image_id로 이미지 분석 결과를 조회해 반환한다.
+
+ Args:
+ conn (Connection): SQLAlchemy 비동기 DB 커넥션.
+ image_id (int): 조회할 이미지 레코드 PK.
+
+ Returns:
+ ImageData_indi: 이미지 분석 결과 스키마 객체.
+
+ Raises:
+ HTTPException 404: 해당 image_id 레코드가 없을 때.
+ HTTPException 503: DB 쿼리 중 SQLAlchemy 오류 발생 시.
+ HTTPException 500: 예기치 못한 오류 발생 시.
+ """
try:
- query = text("SELECT * FROM image_result WHERE id = :image_id")
+ query = text("""
+ SELECT id, user_id, image_loc, status, label, score, face_conf, face_ratio,
+ face_brightness, version_type, model_type, domain_type, result_msg, created_at
+ FROM image_result
+ WHERE id = :image_id
+ """)
result = await conn.execute(query, {"image_id": image_id})
if result.rowcount == 0:
@@ -305,7 +386,7 @@ async def get_image_result(conn: Connection,
detail=f"요청하신 이미지 분석 결과(ID: {image_id})를 찾을 수 없습니다. ID를 다시 확인해주세요.")
row = result.fetchone()
- image_data = ImageData_indi(
+ image_data = ImageResultData(
image_id = row.id,
user_id = row.user_id,
image_loc = row.image_loc,
@@ -335,3 +416,109 @@ async def get_image_result(conn: Connection,
print(e)
raise HTTPException(status_code=status.HTTP_500_INTERNAL_SERVER_ERROR,
detail="알수없는 이유로 문제가 발생하였습니다.")
+
+async def get_user_histories(conn: Connection, user_id: int):
+ """사용자의 전체 이미지 분석 히스토리를 최신순으로 조회한다.
+
+ Args:
+ conn (Connection): SQLAlchemy 비동기 DB 커넥션.
+ user_id (int): 조회할 사용자 PK.
+
+ Returns:
+ list[ImageData]: 이미지 히스토리 스키마 리스트. 결과 없으면 빈 리스트.
+
+ Raises:
+ HTTPException 503: DB 쿼리 중 SQLAlchemy 오류 발생 시.
+ HTTPException 500: 예기치 못한 오류 발생 시.
+ """
+ try:
+ # SQL에 맞춰 테이블명과 컬럼 변경
+ query = ("""
+ SELECT id, image_loc, label, version_type, model_type, domain_type, created_at
+ FROM image_result
+ WHERE user_id = :user_id
+ ORDER BY created_at DESC;
+ """)
+ stmt = text(query)
+ result = await conn.execute(stmt, {"user_id": user_id})
+
+ user_histories = [ImageData(
+ image_id = row.id,
+ image_loc = row.image_loc,
+ label = row.label,
+ version_type = row.version_type,
+ model_type = row.model_type,
+ domain_type = row.domain_type,
+ created_at = row.created_at
+ ) for row in result]
+
+ result.close()
+ return user_histories
+
+ except SQLAlchemyError as e:
+ print(f"히스토리 조회 실패: {e}")
+ raise HTTPException(status_code=status.HTTP_503_SERVICE_UNAVAILABLE, detail="요청하신 서비스가 잠시 내부적으로 문제가 발생하였습니다.")
+
+ except Exception as e:
+ print(e)
+ raise HTTPException(status_code=status.HTTP_500_INTERNAL_SERVER_ERROR, detail="알수없는 이유로 문제가 발생하였습니다.")
+
+async def get_user_history(conn: Connection, image_id: int):
+ """image_id로 이미지 개별 상세 히스토리를 조회한다.
+
+ Args:
+ conn (Connection): SQLAlchemy 비동기 DB 커넥션.
+ image_id (int): 조회할 이미지 레코드 PK.
+
+ Returns:
+ ImageDetailData | None: 상세 히스토리 스키마 객체. 레코드 없으면 None.
+
+ Raises:
+ HTTPException 503: DB 쿼리 중 SQLAlchemy 오류 발생 시.
+ HTTPException 500: 예기치 못한 오류 발생 시.
+ """
+ try:
+ query = """
+ SELECT id, image_loc, status, label, score, face_conf, face_ratio, face_brightness, version_type, model_type, domain_type, result_msg, created_at
+ FROM image_result
+ WHERE id = :image_id;
+ """
+ stmt = text(query)
+ result = await conn.execute(stmt, {"image_id": image_id})
+
+ row = result.fetchone()
+ if row is None:
+ return None
+
+ user_history = ImageDetailData(
+ image_id = row.id,
+ image_loc = row.image_loc,
+ status = row.status,
+ label = row.label,
+ score = row.score,
+ face_conf = row.face_conf,
+ face_ratio = row.face_ratio,
+ face_brightness = row.face_brightness,
+ version_type = row.version_type,
+ model_type = row.model_type,
+ domain_type = row.domain_type,
+ result_msg = row.result_msg,
+ created_at = row.created_at
+ )
+
+ result.close()
+
+ return user_history
+
+ except SQLAlchemyError as e:
+ print(f"히스토리 조회 실패: {e}")
+ raise HTTPException(status_code=status.HTTP_503_SERVICE_UNAVAILABLE, detail="요청하신 서비스가 잠시 내부적으로 문제가 발생하였습니다.")
+
+ except HTTPException:
+ raise
+
+ except Exception as e:
+ print(e)
+ raise HTTPException(status_code=status.HTTP_500_INTERNAL_SERVER_ERROR, detail="알수없는 이유로 문제가 발생하였습니다.")
+
+
\ No newline at end of file
diff --git a/App/services/inference_svc.py b/App/services/inference_svc.py
index 3ca92d6..d96838e 100644
--- a/App/services/inference_svc.py
+++ b/App/services/inference_svc.py
@@ -1,19 +1,16 @@
import asyncio
-from inference.image_predictor_prt import ImagePredictor
-from inference.video_predictor_prt import VideoPredictor
-from inference.utils import PredictorError
+from typing import Literal
from fastapi import status, Depends
from fastapi.exceptions import HTTPException
from sqlalchemy import text, Connection
from sqlalchemy.exc import SQLAlchemyError
from services import image_svc, video_svc
-from db.database import context_get_conn, celery_db_conn, engine
+from db.database import celery_db_conn
from celery_app import celery_app
+from inference.image_predictor_prt import ImagePredictor
+from inference.video_predictor_prt import VideoPredictor
+from inference.utils import PredictorError
-image_cache = {}
-video_cache = {}
-
-# 사용자 모델 설정 변수명
MODEL_CONFIG = {
'v1': {
'fast': {'서양인': ("ms_eff_vit_b0", "ff++")},
@@ -31,29 +28,71 @@
}
}
-# 사용자 이미지 딥페이크 여부 판단 로직
-def predict_image(image_loc: str, version_type: str, model_type: str, domain_type: str):
-
- # image_loc: static 폴더 내 저장된 사용자 이미지 경로
- # version_type: v1, v2
- # model_type: fast, pro
- # domain_type: 서양인, 동양인
-
- model_name, dataset = MODEL_CONFIG[version_type][model_type][domain_type]
+_image_cache: dict = {}
+_video_cache: dict = {}
+
+def _get_or_create_predictor(
+ model_name: str,
+ dataset: str,
+ predictor_mode: Literal["image", "video"],
+) -> ImagePredictor | VideoPredictor:
+ """캐시에서 Predictor를 조회하거나, 없으면 새로 생성해 캐싱 후 반환한다.
+
+ 이미지/비디오 캐시를 분리 관리해 모드별 독립적인 인스턴스를 유지한다.
+
+ Args:
+ model_name (str): 추론에 사용할 모델 아키텍처 이름.
+ dataset (str): 모델 학습에 사용된 데이터셋 이름.
+ predictor_mode (Literal["image", "video"]): Predictor 종류 선택.
- # 캐시 확인 및 모델 초기화
+ Returns:
+ ImagePredictor | VideoPredictor: 캐시된 또는 새로 생성된 Predictor 인스턴스.
+ """
cache_key = (model_name, dataset)
- if cache_key not in image_cache:
- image_cache[cache_key] = ImagePredictor(
+
+ if predictor_mode == "image":
+ if cache_key not in _image_cache:
+ _image_cache[cache_key] = ImagePredictor(
+ margin_ratio=0.2,
+ conf_thres=0.5,
+ model_name=model_name,
+ dataset=dataset,
+ )
+ return _image_cache[cache_key]
+
+ if cache_key not in _video_cache:
+ _video_cache[cache_key] = VideoPredictor(
margin_ratio=0.2,
conf_thres=0.5,
model_name=model_name,
- dataset=dataset
+ dataset=dataset,
)
- predictor = image_cache[cache_key]
+ return _video_cache[cache_key]
+
+def predict_image(image_loc: str, version_type: str, model_type: str, domain_type: str) -> dict:
+ """이미지 경로를 받아 딥페이크 여부를 추론하고 분석 결과를 반환한다.
+
+ Args:
+ image_loc (str): 추론 대상 이미지의 서버 저장 경로 (DB 기준, '/'로 시작).
+ version_type (str): 모델 버전 타입 (MODEL_CONFIG 키값).
+ model_type (str): 추론 모드 ("fast" | "pro").
+ domain_type (str): 탐지 도메인 ("서양인" | "동양인").
+
+ Returns:
+ dict:
+ - analysis (dict): prob, face_conf, face_ratio, face_brightness 포함.
+ 얼굴 미감지 또는 오류 발생 시 모든 값 -1.
+ - message (str): 처리 결과 메세지.
+ - status (str): "success" | "warning" | "failed"
+ """
+
+ model_name, dataset = MODEL_CONFIG[version_type][model_type][domain_type]
+
+ predictor = _get_or_create_predictor(model_name, dataset, "image")
+ image_path = "." + image_loc
try:
- analysis = predictor.predict_img("." + image_loc)
+ analysis = predictor.predict_img(image_path)
print(f"딥페이크 확률 값: {analysis['prob']}, 얼굴 신뢰도: {analysis['face_conf']}, 얼굴 비율: {analysis['face_ratio']}, 얼굴 밝기: {analysis['face_brightness']}")
@@ -80,10 +119,25 @@ def predict_image(image_loc: str, version_type: str, model_type: str, domain_typ
"status": "failed"
}
-# Celery 이미지 추론 Task
@celery_app.task(name="process_image_task")
def process_image_task(image_id: int, image_loc: str, version_type: str, model_type: str,
- domain_type: str, user_id: int | None):
+ domain_type: str, user_id: int | None) -> None:
+ """딥페이크 이미지 추론을 처리하는 Celery 비동기 태스크.
+
+ 추론 결과를 DB에 저장하며, SQLAlchemy 오류 발생 시 실패 상태로 업데이트한다.
+ Celery 워커(동기) 내에서 asyncio 이벤트 루프를 직접 구동해 비동기 로직을 실행한다.
+
+ Args:
+ image_id (int): 이미지 레코드 PK.
+ image_loc (str): 추론 대상 이미지의 서버 저장 경로 (DB 기준, '/'로 시작).
+ version_type (str): 모델 버전 타입 (MODEL_CONFIG 키값).
+ model_type (str): 추론 모드 ("fast" | "pro").
+ domain_type (str): 탐지 도메인 ("서양인" | "동양인").
+ user_id (int | None): 로그인 사용자 ID. 비회원이면 None.
+
+ Note:
+ 비회원(user_id=None) 요청은 추론 완료 60초 후 이미지 파일 및 DB 레코드가 자동 삭제된다.
+ """
async def run_inference():
try:
# 이미지 추론, DeepFake 결과값 반환
@@ -127,29 +181,30 @@ async def run_inference():
loop.close()
-# 사용자 비디오 딥페이크 여부 판단 로직
-def predict_video(video_loc: str, version_type: str, model_type: str, domain_type: str):
-
- # video_loc: static 폴더 내 저장된 사용자 비디오 경로
- # version_type: v1, v2
- # model_type: fast, pro
- # domain_type: 서양인, 동양인
-
+def predict_video(video_loc: str, version_type: str, model_type: str, domain_type: str) -> dict:
+ """비디오 경로를 받아 딥페이크 여부를 추론하고 분석 결과를 반환한다.
+
+ Args:
+ video_loc (str): 추론 대상 비디오의 서버 저장 경로 (DB 기준, '/'로 시작).
+ version_type (str): 모델 버전 타입 (MODEL_CONFIG 키값).
+ model_type (str): 추론 모드 ("fast" | "pro").
+ domain_type (str): 탐지 도메인 ("서양인" | "동양인").
+
+ Returns:
+ dict:
+ - analysis (dict): prob, face_conf, face_ratio, face_brightness,
+ frame_results, fps, total_frames, num_sampled, num_extracted, num_detected 포함.
+ 오류 발생 시 주요 수치 값 -1.
+ - message (str): 처리 결과 메세지.
+ - status (str): "success" | "warning" | "failed"
+ """
model_name, dataset = MODEL_CONFIG[version_type][model_type][domain_type]
- # 캐시 확인 및 모델 초기화
- cache_key = (model_name, dataset)
- if cache_key not in video_cache:
- video_cache[cache_key] = VideoPredictor(
- margin_ratio=0.2,
- conf_thres=0.5,
- model_name=model_name,
- dataset=dataset
- )
- predictor = video_cache[cache_key]
+ predictor = _get_or_create_predictor(model_name, dataset, "video")
+ video_path = "." + video_loc
try:
- analysis = predictor.predict_video("." + video_loc)
+ analysis = predictor.predict_video(video_path)
print(f"딥페이크 확률 값: {analysis['prob']}, 얼굴 신뢰도: {analysis['face_conf']}, 얼굴 비율: {analysis['face_ratio']}, 얼굴 밝기: {analysis['face_brightness']}")
@@ -178,10 +233,26 @@ def predict_video(video_loc: str, version_type: str, model_type: str, domain_typ
"status": "failed"
}
-# Celery 비디오 추론 Task
@celery_app.task(name="process_video_task")
def process_video_task(video_id: int, video_loc: str, version_type: str, model_type: str,
- domain_type: str, user_id: int | None):
+ domain_type: str, user_id: int | None) -> None:
+ """딥페이크 비디오 추론을 처리하는 Celery 비동기 태스크.
+
+ 추론 결과를 DB에 저장하며, 성공 시 메타 데이터와 프레임별 결과를 추가로 저장한다.
+ 메타/프레임 저장 실패는 독립적으로 처리되어 메인 추론 결과에 영향을 주지 않는다.
+ Celery 워커(동기) 내에서 asyncio 이벤트 루프를 직접 구동해 비동기 로직을 실행한다.
+
+ Args:
+ video_id (int): 비디오 레코드 PK.
+ video_loc (str): 추론 대상 비디오의 서버 저장 경로 (DB 기준, '/'로 시작).
+ version_type (str): 모델 버전 타입 (MODEL_CONFIG 키값).
+ model_type (str): 추론 모드 ("fast" | "pro").
+ domain_type (str): 탐지 도메인 ("서양인" | "동양인").
+ user_id (int | None): 로그인 사용자 ID. 비회원이면 None.
+
+ Note:
+ 비회원(user_id=None) 요청은 추론 완료 60초 후 비디오 파일 및 DB 레코드가 자동 삭제된다.
+ """
async def run_inference():
try:
# 비디오 추론, DeepFake 결과값 반환
@@ -207,7 +278,7 @@ async def run_inference():
if result["analysis"].get("frame_results"):
try:
async with celery_db_conn() as conn:
- await video_svc.save_video_frame_results(
+ await video_svc.save_video_frame_result(
conn, video_id, result["analysis"]["frame_results"]
)
except Exception as e:
@@ -232,7 +303,8 @@ async def run_inference():
finally:
if not user_id:
- video_svc.cleanup_anonymous_video.apply_async(args=[video_id, video_loc], countdown=60)
+ is_success = result.get("status") == "success"
+ video_svc.cleanup_anonymous_video.apply_async(args=[video_id, video_loc, is_success], countdown=60)
diff --git a/App/services/session_svc.py b/App/services/session_svc.py
index c9845e1..a144196 100644
--- a/App/services/session_svc.py
+++ b/App/services/session_svc.py
@@ -1,12 +1,36 @@
-from fastapi import APIRouter, Depends, status, Request
+from fastapi import status, Request
from fastapi.exceptions import HTTPException
-def get_session_user_opt(request:Request):
+def get_session_user_opt(request:Request) -> dict | None:
+ """세션에서 로그인 사용자 정보를 조회한다. 비로그인 상태면 None을 반환한다.
+
+ 로그인 여부와 관계없이 접근 가능한 엔드포인트에 사용한다.
+
+ Args:
+ request (Request): FastAPI 요청 객체.
+
+ Returns:
+ dict | None: 로그인 상태면 {"id": int, "name": str, "email": str} 반환,
+ 비로그인 상태면 None.
+ """
if "session_user" in request.state.session:
return request.state.session["session_user"]
-def get_session_user_prt(request:Request):
+def get_session_user_prt(request:Request) -> dict:
+ """세션에서 로그인 사용자 정보를 조회한다. 비로그인 상태면 401을 raise한다.
+
+ 로그인이 필수인 엔드포인트의 Depends 의존성으로 사용한다.
+
+ Args:
+ request (Request): FastAPI 요청 객체.
+
+ Returns:
+ dict: {"id": int, "name": str, "email": str}
+
+ Raises:
+ HTTPException 401: 세션에 사용자 정보가 없을 때.
+ """
if "session_user" not in request.state.session:
raise HTTPException(status_code=status.HTTP_401_UNAUTHORIZED,
detail="해당 서비스는 로그인이 필요합니다.")
diff --git a/App/services/video_svc.py b/App/services/video_svc.py
index cdf5ac4..ae3323c 100644
--- a/App/services/video_svc.py
+++ b/App/services/video_svc.py
@@ -1,22 +1,34 @@
import os
-import asyncio
import time
-import aiofiles as aio
from dotenv import load_dotenv
-
+import asyncio
+import aiofiles as aio
from fastapi import UploadFile, status
from fastapi.exceptions import HTTPException
from sqlalchemy import text, Connection
-from sqlalchemy.exc import SQLAlchemyError, DBAPIError
+from sqlalchemy.exc import SQLAlchemyError
from schemas.video_schema import (
- VideoData, VideoDetailData, VideoFrameData, VideoMetaData )
+ VideoData, VideoDetailData, VideoFrameData, VideoMetaData)
from db.database import celery_db_conn
from celery_app import celery_app
+
load_dotenv()
UPLOAD_DIR = os.getenv("UPLOAD_DIR")
-# 사용자 업로드 동영상 서버 내 저장 (회원/비회원 공통)
+
async def upload_video(user_email: str | None, videofile: UploadFile) -> str:
+ """업로드된 비디오를 서버에 저장하고 DB 저장용 경로를 반환한다. 회원/비회원 공통.
+
+ Args:
+ user_email (str | None): 로그인 사용자 이메일. 비회원이면 None.
+ videofile (UploadFile): FastAPI 업로드 파일 객체.
+
+ Returns:
+ str: 저장된 비디오의 DB 기준 경로 ('/'로 시작, '\\' 정규화됨).
+
+ Raises:
+ HTTPException 500: 디렉토리 생성, 파일 쓰기, 또는 예기치 못한 오류 발생 시.
+ """
try:
# 1. 사용자별 하위 디렉토리 결정
sub_dir = user_email if user_email else "anonymous"
@@ -52,8 +64,6 @@ async def upload_video(user_email: str | None, videofile: UploadFile) -> str:
detail="비디오 파일을 저장하는 중 오류가 발생했습니다."
)
- print(f"Upload Succeeded: {upload_video_loc}")
-
# 6. DB 저장용 경로 반환
return upload_video_loc[1:].replace("\\", "/")
@@ -66,14 +76,23 @@ async def upload_video(user_email: str | None, videofile: UploadFile) -> str:
status_code=status.HTTP_500_INTERNAL_SERVER_ERROR,
detail="비디오 업로드 과정에서 예상치 못한 오류가 발생했습니다.")
-# 사용자 업로드 비디오 서버 내 삭제
-async def delete_video(video_loc: str):
+
+async def delete_video(video_loc: str) -> None:
+ """서버에서 비디오 물리 파일을 삭제한다.
+
+ 파일이 존재하지 않으면 경고 로그만 출력하고 정상 종료한다.
+
+ Args:
+ video_loc (str): 삭제할 비디오의 DB 기준 경로 ('/'로 시작).
+
+ Raises:
+ HTTPException 500: 파일 삭제 중 오류 발생 시.
+ """
try:
file_path = "." + video_loc
if os.path.exists(file_path):
os.remove(file_path)
- print(f"Video file removed: {file_path}")
else:
print(f"Video file not found: {file_path}")
@@ -84,8 +103,21 @@ async def delete_video(video_loc: str):
detail="비디오 파일 삭제 중 오류가 발생했습니다."
)
-# 사용자 전체 비디오 히스토리 조회
-async def get_user_histories(conn: Connection, user_id: int):
+
+async def get_user_histories(conn: Connection, user_id: int) -> list[VideoData]:
+ """사용자의 전체 비디오 분석 히스토리를 최신순으로 조회한다.
+
+ Args:
+ conn (Connection): SQLAlchemy 비동기 DB 커넥션.
+ user_id (int): 조회할 사용자 PK.
+
+ Returns:
+ list[VideoData]: 비디오 히스토리 스키마 리스트. 결과 없으면 빈 리스트.
+
+ Raises:
+ HTTPException 503: DB 쿼리 중 SQLAlchemy 오류 발생 시.
+ HTTPException 500: 예기치 못한 오류 발생 시.
+ """
try:
query = """
SELECT id, user_id, video_loc, status, label,
@@ -95,8 +127,7 @@ async def get_user_histories(conn: Connection, user_id: int):
ORDER BY created_at DESC;
"""
stmt = text(query)
- bind_stmt = stmt.bindparams(user_id=user_id)
- result = await conn.execute(bind_stmt)
+ result = await conn.execute(stmt, {"user_id": user_id})
video_histories = [VideoData(
id = row.id,
@@ -120,19 +151,44 @@ async def get_user_histories(conn: Connection, user_id: int):
except Exception as e:
print(e)
raise HTTPException(status_code=status.HTTP_500_INTERNAL_SERVER_ERROR, detail="알수없는 이유로 문제가 발생하였습니다.")
-
-# 사용자 개별 비디오 히스토리 조회
-async def get_user_history(conn: Connection, user_id: int, video_id: int):
+
+async def get_user_history(conn: Connection, user_id: int, video_id: int) -> VideoDetailData | None:
+ """video_id와 user_id로 비디오 개별 상세 히스토리를 조회한다.
+
+ 본인 소유 데이터만 조회되도록 user_id를 함께 필터링한다.
+
+ Args:
+ conn (Connection): SQLAlchemy 비동기 DB 커넥션.
+ user_id (int): 요청 사용자 PK.
+ video_id (int): 조회할 비디오 레코드 PK.
+
+ Returns:
+ VideoDetailData | None: 상세 히스토리 스키마 객체. 레코드 없으면 None.
+
+ Raises:
+ HTTPException 503: DB 쿼리 중 SQLAlchemy 오류 발생 시.
+ HTTPException 500: 예기치 못한 오류 발생 시.
+ """
try:
- stmt = text("""
- SELECT id, user_id, video_loc, status, label, score, face_conf, face_ratio,
- face_brightness, version_type, model_type, domain_type, result_msg, created_at
- FROM video_result
- WHERE id = :video_id AND user_id = :user_id
- """)
- result = await conn.execute(stmt, {"video_id": video_id, "user_id": user_id})
-
+ # user_id 있으면 본인 것만, None이면 video_id로만 조회 (비회원 상세 허용)
+ if user_id is not None:
+ stmt = text("""
+ SELECT id, user_id, video_loc, status, label, score, face_conf, face_ratio,
+ face_brightness, version_type, model_type, domain_type, result_msg, created_at
+ FROM video_result
+ WHERE id = :video_id AND user_id = :user_id
+ """)
+ params = {"video_id": video_id, "user_id": user_id}
+ else:
+ stmt = text("""
+ SELECT id, user_id, video_loc, status, label, score, face_conf, face_ratio,
+ face_brightness, version_type, model_type, domain_type, result_msg, created_at
+ FROM video_result
+ WHERE id = :video_id
+ """)
+ params = {"video_id": video_id}
+ result = await conn.execute(stmt, params)
row = result.fetchone()
if row is None:
return None
@@ -163,53 +219,26 @@ async def get_user_history(conn: Connection, user_id: int, video_id: int):
except Exception as e:
print(e)
raise HTTPException(status_code=status.HTTP_500_INTERNAL_SERVER_ERROR, detail="알수없는 이유로 문제가 발생하였습니다.")
-
-# 비회원 데이터 5분 후 자동 삭제 태스크
-@celery_app.task(name="cleanup_anonymous_video")
-def cleanup_anonymous_video(video_id: int, video_loc: str):
- loop = asyncio.new_event_loop()
- asyncio.set_event_loop(loop)
- try:
- async def _delete():
- async with celery_db_conn() as conn:
- await delete_video_db(conn, video_id)
- await delete_video(video_loc)
- print(f"[Cleanup] 비회원 비디오 삭제 완료 - video_id: {video_id}, video_loc: {video_loc}")
- loop.run_until_complete(_delete())
- except Exception as e:
- print(f"[Cleanup Error] 비회원 비디오 삭제 실패 - video_id: {video_id}, error: {e}")
- finally:
- loop.close()
-
-# 비디오 DB 레코드 및 물리 파일 완전 삭제
-async def delete_video_db(conn: Connection, video_id: int):
- try:
- delete_query = text("DELETE FROM video_result WHERE id = :video_id")
- result = await conn.execute(delete_query.bindparams(video_id=video_id))
- if result.rowcount == 0:
- raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail=f"해당 비디오 id {id}는(은) 존재하지 않아 삭제할 수 없습니다.")
-
- await conn.commit()
-
- except SQLAlchemyError as e:
- print(e)
- await conn.rollback()
- raise HTTPException(status_code=status.HTTP_503_SERVICE_UNAVAILABLE, detail="요청하신 서비스가 잠시 내부적으로 문제가 발생하였습니다.")
+async def register_video_result(conn: Connection, user_id: int | None, video_loc: str,
+ version_type: str, model_type: str, domain_type: str) -> int:
+ """PENDING 상태의 빈 비디오 레코드를 DB에 생성하고 video_id를 반환한다.
- except HTTPException:
- raise
-
- except Exception as e:
- print(e)
- await conn.rollback()
- raise HTTPException(status_code=status.HTTP_500_INTERNAL_SERVER_ERROR, detail="알수없는 이유로 문제가 발생하였습니다.")
+ Args:
+ conn (Connection): SQLAlchemy 비동기 DB 커넥션.
+ user_id (int | None): 로그인 사용자 ID. 비회원이면 None.
+ video_loc (str): 업로드된 비디오의 DB 기준 경로.
+ version_type (str): 모델 버전 타입.
+ model_type (str): 추론 모드 ("fast" | "pro").
+ domain_type (str): 탐지 도메인.
+ Returns:
+ int: 생성된 비디오 레코드의 PK (auto_increment).
-# 빈 비디오 DB 생성 이후, video_id 반환(접수 완료)
-async def register_video_result(conn: Connection, user_id: int | None, video_loc: str,
- version_type: str, model_type: str, domain_type: str):
+ Raises:
+ HTTPException 400: DB INSERT 실패 시. 업로드된 물리 파일도 함께 롤백 삭제된다.
+ """
try:
query = """
INSERT INTO video_result (
@@ -240,11 +269,22 @@ async def register_video_result(conn: Connection, user_id: int | None, video_loc
await delete_video(video_loc)
raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST,
detail="요청데이터가 제대로 전달되지 않았습니다")
-
-# 비디오 메타데이터 + 추론 결과값 DB에 저장
+
+
async def update_video_result(conn: Connection, video_id: int, analysis: dict,
- result_msg: str, status: str):
-
+ result_msg: str, status: str) -> None:
+ """추론 완료 후 비디오 레코드에 분석 결과를 업데이트한다.
+
+ Args:
+ conn (Connection): SQLAlchemy 비동기 DB 커넥션.
+ video_id (int): 업데이트할 비디오 레코드 PK.
+ analysis (dict): 추론 결과값. prob, face_conf, face_ratio, face_brightness 포함.
+ result_msg (str): 처리 결과 메세지.
+ status (str): 추론 상태 ("success" | "warning" | "failed").
+
+ Raises:
+ SQLAlchemyError: DB 업데이트 실패 시 그대로 re-raise.
+ """
if status == 'success':
label = "FAKE" if analysis["prob"] > 0.5 else "REAL"
else:
@@ -264,7 +304,7 @@ async def update_video_result(conn: Connection, video_id: int, analysis: dict,
"""
db_status = status.upper()
-
+
stmt = text(query)
await conn.execute(stmt, {
"status": db_status,
@@ -281,10 +321,23 @@ async def update_video_result(conn: Connection, video_id: int, analysis: dict,
except SQLAlchemyError as e:
await conn.rollback()
raise e
-
-# 비디오 결과 값 가져오기
-async def get_video_result(conn: Connection,
- video_id: int):
+
+
+async def get_video_result(conn: Connection, video_id: int) -> VideoDetailData:
+ """video_id로 비디오 분석 결과를 조회해 반환한다.
+
+ Args:
+ conn (Connection): SQLAlchemy 비동기 DB 커넥션.
+ video_id (int): 조회할 비디오 레코드 PK.
+
+ Returns:
+ VideoDetailData: 비디오 분석 결과 스키마 객체.
+
+ Raises:
+ HTTPException 404: 해당 video_id 레코드가 없을 때.
+ HTTPException 503: DB 쿼리 중 SQLAlchemy 오류 발생 시.
+ HTTPException 500: 예기치 못한 오류 발생 시.
+ """
try:
query = text("SELECT * FROM video_result WHERE id = :video_id")
result = await conn.execute(query, {"video_id": video_id})
@@ -324,8 +377,19 @@ async def get_video_result(conn: Connection,
raise HTTPException(status_code=status.HTTP_500_INTERNAL_SERVER_ERROR,
detail="알수없는 이유로 문제가 발생하였습니다.")
-# 비디오 메타 데이터 정보 저장하기
-async def save_video_meta_result(conn: Connection, video_id: int, analysis: dict):
+
+async def save_video_meta_result(conn: Connection, video_id: int, analysis: dict) -> None:
+ """비디오 1개의 프레임 요약 통계를 video_meta_result 테이블에 저장한다.
+
+ Args:
+ conn (Connection): SQLAlchemy 비동기 DB 커넥션.
+ video_id (int): 비디오 레코드 PK.
+ analysis (dict): 추론 결과 딕셔너리. fps, total_frames, num_sampled,
+ num_extracted, num_detected 키를 포함해야 한다.
+
+ Raises:
+ SQLAlchemyError: DB INSERT 실패 시 그대로 re-raise.
+ """
try:
query = """
INSERT INTO video_meta_result (video_id, fps, total_frames, num_sampled, num_extracted, num_detected)
@@ -344,10 +408,21 @@ async def save_video_meta_result(conn: Connection, video_id: int, analysis: dict
except SQLAlchemyError as e:
await conn.rollback()
raise e
-
-# 비디오 상세 결과 값 저장하기
-# 비디오 프레임 별 딥페이크 점수, 얼굴 신뢰도, 얼굴 비율, 얼굴 조도 반환
-async def save_video_frame_results(conn: Connection, video_id: int, frame_results: list):
+
+
+async def save_video_frame_result(conn: Connection, video_id: int, frame_results: list) -> None:
+ """비디오에 속한 모든 프레임의 분석 결과를 video_frame_result 테이블에 일괄 저장한다.
+
+ Args:
+ conn (Connection): SQLAlchemy 비동기 DB 커넥션.
+ video_id (int): 비디오 레코드 PK.
+ frame_results (list): 프레임별 분석 결과 딕셔너리 리스트.
+ 각 항목은 frame_index, frame_time, score, face_conf,
+ face_ratio, face_brightness 키를 포함해야 한다.
+
+ Raises:
+ SQLAlchemyError: DB INSERT 실패 시 그대로 re-raise.
+ """
try:
query = """
INSERT INTO video_frame_result
@@ -373,9 +448,99 @@ async def save_video_frame_results(conn: Connection, video_id: int, frame_result
except SQLAlchemyError as e:
await conn.rollback()
raise e
+
+
+async def delete_video_meta_result(conn: Connection, video_id: int) -> None:
+ """video_meta_result 테이블에서 해당 비디오의 메타 데이터를 삭제한다.
+
+ Args:
+ conn (Connection): SQLAlchemy 비동기 DB 커넥션.
+ video_id (int): 삭제할 비디오 레코드 PK.
+
+ Raises:
+ HTTPException 404: 해당 video_id 레코드가 없을 때.
+ HTTPException 503: DB 쿼리 중 SQLAlchemy 오류 발생 시.
+ HTTPException 500: 예기치 못한 오류 발생 시.
+ """
+ try:
+ delete_query = text("""
+ DELETE FROM video_meta_result
+ WHERE video_id = :video_id
+ """)
+ result = await conn.execute(delete_query, {"video_id": video_id})
+ if result.rowcount == 0:
+ raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail=f"해당 비디오 id {video_id}는(은) 존재하지 않아 삭제할 수 없습니다.")
+
+ await conn.commit()
+
+ except SQLAlchemyError as e:
+ print(e)
+ await conn.rollback()
+ raise HTTPException(status_code=status.HTTP_503_SERVICE_UNAVAILABLE, detail="요청하신 서비스가 잠시 내부적으로 문제가 발생하였습니다.")
+
+ except HTTPException:
+ raise
+
+ except Exception as e:
+ print(e)
+ await conn.rollback()
+ raise HTTPException(status_code=status.HTTP_500_INTERNAL_SERVER_ERROR, detail="알수없는 이유로 문제가 발생하였습니다.")
+
+
+async def delete_video_frame_result(conn: Connection, video_id: int) -> None:
+ """video_frame_result 테이블에서 해당 비디오의 프레임 결과를 삭제한다.
+
+ Args:
+ conn (Connection): SQLAlchemy 비동기 DB 커넥션.
+ video_id (int): 삭제할 비디오 레코드 PK.
+
+ Raises:
+ HTTPException 404: 해당 video_id 레코드가 없을 때.
+ HTTPException 503: DB 쿼리 중 SQLAlchemy 오류 발생 시.
+ HTTPException 500: 예기치 못한 오류 발생 시.
+ """
+ try:
+ delete_query = text("""
+ DELETE FROM video_frame_result
+ WHERE video_id = :video_id
+ """)
+ result = await conn.execute(delete_query, {"video_id": video_id})
+ if result.rowcount == 0:
+ raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail=f"해당 비디오 id {video_id}는(은) 존재하지 않아 삭제할 수 없습니다.")
-# 비디오 메타 데이터 정보 가져오기
-async def get_video_meta_result(conn: Connection, video_id: int):
+ await conn.commit()
+
+ except SQLAlchemyError as e:
+ print(e)
+ await conn.rollback()
+ raise HTTPException(status_code=status.HTTP_503_SERVICE_UNAVAILABLE, detail="요청하신 서비스가 잠시 내부적으로 문제가 발생하였습니다.")
+
+ except HTTPException:
+ raise
+
+ except Exception as e:
+ print(e)
+ await conn.rollback()
+ raise HTTPException(status_code=status.HTTP_500_INTERNAL_SERVER_ERROR, detail="알수없는 이유로 문제가 발생하였습니다.")
+
+
+async def get_video_meta_result(conn: Connection, video_id: int) -> VideoMetaData:
+ """video_id로 비디오 메타 데이터를 조회한다.
+
+ fps, total_frames, num_sampled, num_extracted, num_detected를 반환한다.
+
+ Args:
+ conn (Connection): SQLAlchemy 비동기 DB 커넥션.
+ video_id (int): 조회할 비디오 레코드 PK.
+
+ Returns:
+ VideoMetaData: 비디오 메타 데이터 스키마 객체.
+
+ Raises:
+ HTTPException 404: 해당 video_id 메타 레코드가 없을 때.
+ HTTPException 503: DB 쿼리 중 SQLAlchemy 오류 발생 시.
+ HTTPException 500: 예기치 못한 오류 발생 시.
+ """
try:
query = text("""
SELECT fps, total_frames, num_sampled, num_extracted, num_detected
@@ -405,9 +570,24 @@ async def get_video_meta_result(conn: Connection, video_id: int):
except Exception as e:
print(e)
raise HTTPException(status_code=500, detail="알수없는 이유로 문제가 발생하였습니다.")
-
-# 비디오 상세 결과 값 가져오기
-async def get_video_frame_results(conn: Connection, video_id: int):
+
+
+async def get_video_frame_result(conn: Connection, video_id: int) -> list[VideoFrameData]:
+ """video_id에 속한 모든 프레임 분석 결과를 frame_index 오름차순으로 조회한다.
+
+ 프레임별 점수 그래프, 의심 구간 표시 등 시각화에 활용된다.
+
+ Args:
+ conn (Connection): SQLAlchemy 비동기 DB 커넥션.
+ video_id (int): 조회할 비디오 레코드 PK.
+
+ Returns:
+ list[VideoFrameData]: 프레임별 분석 결과 스키마 리스트.
+
+ Raises:
+ HTTPException 503: DB 쿼리 중 SQLAlchemy 오류 발생 시.
+ HTTPException 500: 예기치 못한 오류 발생 시.
+ """
try:
query = text("""
SELECT frame_index, frame_time, score, face_conf, face_ratio, face_brightness
@@ -429,11 +609,135 @@ async def get_video_frame_results(conn: Connection, video_id: int):
for r in result
]
+ except SQLAlchemyError as e:
+ print(f"[Frame Query Error] {e}")
+ raise HTTPException(status_code=503, detail="데이터베이스 조회 중 문제가 발생했습니다.")
+ except Exception as e:
+ print(e)
+ raise HTTPException(status_code=500, detail="알수없는 이유로 문제가 발생하였습니다.")
+
+
+async def get_video_frame_by_index(conn: Connection, video_id: int, frame_index: int) -> float:
+ """video_id와 frame_index로 특정 프레임의 frame_time을 조회한다.
+
+ Args:
+ conn (Connection): SQLAlchemy 비동기 DB 커넥션.
+ video_id (int): 비디오 레코드 PK.
+ frame_index (int): 조회할 프레임 인덱스.
+
+ Returns:
+ float: 해당 프레임의 타임스탬프 (초 단위).
+
+ Raises:
+ HTTPException 404: 해당 frame_index가 없을 때.
+ HTTPException 503: DB 쿼리 중 SQLAlchemy 오류 발생 시.
+ HTTPException 500: 예기치 못한 오류 발생 시.
+ """
+ try:
+ query = text("""
+ SELECT frame_time
+ FROM video_frame_result
+ WHERE video_id = :video_id AND frame_index = :frame_index
+ """)
+
+ result = await conn.execute(query, {"video_id": video_id, "frame_index": frame_index})
+ if result.rowcount == 0:
+ raise HTTPException(status_code=status.HTTP_404_NOT_FOUND,
+ detail=f"해당 ID: {video_id} Video 내 Frame Index {frame_index}에 해당하는 프레임을 찾을 수 없습니다")
+
+ row = result.fetchone()
+ return row.frame_time
except SQLAlchemyError as e:
print(f"[Frame Query Error] {e}")
raise HTTPException(status_code=503, detail="데이터베이스 조회 중 문제가 발생했습니다.")
+ except HTTPException:
+ raise
except Exception as e:
print(e)
- raise HTTPException(status_code=500, detail="알수없는 이유로 문제가 발생하였습니다.")
\ No newline at end of file
+ raise HTTPException(status_code=500, detail="알수없는 이유로 문제가 발생하였습니다.")
+
+
+@celery_app.task(name="cleanup_anonymous_video")
+def cleanup_anonymous_video(video_id: int, video_loc: str, is_success: bool) -> None:
+ """비회원 비디오 DB 레코드 및 물리 파일을 삭제하는 Celery 태스크.
+
+ 추론 성공 시 meta/frame 결과도 함께 삭제한다.
+ 각 삭제 단계는 독립적으로 처리되어 한쪽 실패가 다른쪽에 영향을 주지 않는다.
+
+ Args:
+ video_id (int): 삭제할 비디오 레코드 PK.
+ video_loc (str): 삭제할 비디오의 DB 기준 경로.
+ is_success (bool): 추론 성공 여부. True면 meta/frame 결과도 함께 삭제.
+ """
+ loop = asyncio.new_event_loop()
+ asyncio.set_event_loop(loop)
+ try:
+ async def _delete():
+ success = True
+ async with celery_db_conn() as conn:
+ if is_success:
+ try:
+ await delete_video_meta_result(conn, video_id)
+ except Exception as e:
+ print(f"[Cleanup] video meta 삭제 실패 - video_id: {video_id}, error: {e}")
+ success=False
+
+ try:
+ await delete_video_frame_result(conn, video_id)
+ except Exception as e:
+ print(f"[Cleanup] video frame 삭제 실패 - video_id: {video_id}, error: {e}")
+ success=False
+ try:
+ await delete_video_db(conn, video_id)
+ except Exception as e:
+ print(f"[Cleanup] video_result 삭제 실패 - video_id: {video_id}, error:{e}")
+ success=False
+ try:
+ await delete_video(video_loc)
+ except Exception as e:
+ print(f"[Cleanup] 비디오 파일 삭제 실패 - video_loc: {video_loc}, error: {e}")
+ success=False
+
+ if success:
+ print(f"[Cleanup] 비회원 비디오 삭제 완료 - video_id: {video_id}, video_loc: {video_loc}")
+
+ loop.run_until_complete(_delete())
+ finally:
+ loop.close()
+
+
+async def delete_video_db(conn: Connection, video_id: int) -> None:
+ """DB에서 비디오 레코드를 삭제한다.
+
+ Args:
+ conn (Connection): SQLAlchemy 비동기 DB 커넥션.
+ video_id (int): 삭제할 비디오 레코드 PK.
+
+ Raises:
+ HTTPException 404: 해당 video_id 레코드가 없을 때.
+ HTTPException 503: DB 쿼리 중 SQLAlchemy 오류 발생 시.
+ HTTPException 500: 예기치 못한 오류 발생 시.
+ """
+ try:
+ delete_query = text("DELETE FROM video_result WHERE id = :video_id")
+ result = await conn.execute(delete_query, {"video_id": video_id})
+
+ if result.rowcount == 0:
+ raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail=f"해당 비디오 id {video_id}는(은) 존재하지 않아 삭제할 수 없습니다.")
+
+ await conn.commit()
+
+ except SQLAlchemyError as e:
+ print(e)
+ await conn.rollback()
+ raise HTTPException(status_code=status.HTTP_503_SERVICE_UNAVAILABLE, detail="요청하신 서비스가 잠시 내부적으로 문제가 발생하였습니다.")
+
+ except HTTPException:
+ raise
+
+ except Exception as e:
+ print(e)
+ await conn.rollback()
+ raise HTTPException(status_code=status.HTTP_500_INTERNAL_SERVER_ERROR, detail="알수없는 이유로 문제가 발생하였습니다.")
\ No newline at end of file
diff --git a/App/sql/initial_video_frame_result.sql b/App/sql/initial_video_frame_result.sql
index c946b5d..d280613 100644
--- a/App/sql/initial_video_frame_result.sql
+++ b/App/sql/initial_video_frame_result.sql
@@ -1,14 +1,14 @@
drop table if exists video_frame_result;
create table deepfake_db.video_frame_result (
- id integer auto_increment primary key,
- video_id integer not null,
- frame_index integer not null,
+ id integer auto_increment primary key, -- 행 자체의 고유 ID (대리키)
+ video_id integer not null,
+ frame_index integer not null, -- 영상 내 프레임 순번.
frame_time float not null, -- 영상 내 타임스탬프(초)
- score float not null,
- face_conf float not null,
- face_ratio float not null,
- face_brightness float not null,
+ score float not null,-- 해당 프레임의 딥페이크 의심 점수 (0.0~1.0)
+ face_conf float not null,-- 얼굴 검출 신뢰도. 낮으면 score 신뢰도도 낮음.
+ face_ratio float not null,-- 프레임 대비 얼굴 면적 비율 (0.0~1.0)
+ face_brightness float not null,-- 얼굴 영역 평균 밝기 (조도 품질 지표)
index video_id_idx(video_id)
);
\ No newline at end of file
diff --git a/App/sql/initial_video_meta_result.sql b/App/sql/initial_video_meta_result.sql
index 80e95da..289f4d6 100644
--- a/App/sql/initial_video_meta_result.sql
+++ b/App/sql/initial_video_meta_result.sql
@@ -1,13 +1,13 @@
drop table if exists video_meta_result;
create table deepfake_db.video_meta_result (
- id integer auto_increment primary key,
+ id integer auto_increment primary key,-- 행 자체의 고유 ID (대리키).
video_id integer not null unique,
- fps float not null,
- total_frames integer not null,
- num_sampled integer not null,
- num_extracted integer not null,
- num_detected integer not null,
+ fps float not null, -- 초당 프레임수
+ total_frames integer not null,-- 영상 전체 프레임 수
+ num_sampled integer not null,-- [1단계] 분석을 위해 샘플링한 프레임 수
+ num_extracted integer not null,-- [2단계] 샘플 중 얼굴 추출에 성공한 프레임 수
+ num_detected integer not null,-- [3단계] 추출된 얼굴 중 딥페이크 score 산출에 성공한 프레임 수
- index video_id_idx(video_id)
+ index video_id_idx(video_id)-- video_id로 메타 조회 시 사용
);
\ No newline at end of file
diff --git a/App/sql/initial_video_result.sql b/App/sql/initial_video_result.sql
index cc683a9..9daa890 100644
--- a/App/sql/initial_video_result.sql
+++ b/App/sql/initial_video_result.sql
@@ -1,20 +1,30 @@
drop table if exists video_result;
+-- 딥페이크 분석 결과를 저장하는 테이블 생성
create table deepfake_db.video_result (
- id integer auto_increment primary key,
- user_id integer null, -- null 허용
- video_loc varchar(300) not null unique,
- status varchar(20) not null default "PENDING",
- label varchar(10) not null,
- score float not null,
+ id integer auto_increment primary key, -- 시스템에서 부여하는 데이터 고유 식별 번호
+ user_id integer null, -- 영상을 업로드한 사용자의 ID (비회원 허용을 위해 null 가능)
+ video_loc varchar(300) not null unique, -- 영상 파일이 저장된 경로/URL (중복 등록 방지)
+
+ -- 상태 및 결과 정보
+ status varchar(20) not null default "PENDING", -- 분석 진행 상태 (대기중, 분석중, 완료, 실패 등)
+ label varchar(10) not null, -- 최종 판정 결과 (예: 'Fake', 'Real')
+ score float not null,
+
+ -- 분석 품질 및 메타데이터
face_conf float not null,
face_ratio float not null,
face_brightness float not null,
+
+ -- 분석 환경 정보
version_type varchar(10) not null,
model_type varchar(10) not null,
domain_type varchar(20) not null,
- result_msg varchar(200) not null,
- created_at timestamp default current_timestamp,
- index user_id_idx(user_id)
+ -- 기타 기록
+ result_msg varchar(200) not null, -- 분석 결과에 대한 상세 메시지나 오류 내용
+ created_at timestamp default current_timestamp, -- 데이터가 생성된(분석 요청된) 시간
+
+ -- 성능 최적화
+ index user_id_idx(user_id) -- 특정 사용자의 분석 이력을 빠르게 조회하기 위한 인덱스
);
\ No newline at end of file
diff --git a/App/static/uploads/yesol@gmail.com/western_fake_1777863367.mp4 b/App/static/uploads/yesol@gmail.com/western_fake_1777863367.mp4
deleted file mode 100644
index 0c7eb48..0000000
Binary files a/App/static/uploads/yesol@gmail.com/western_fake_1777863367.mp4 and /dev/null differ
diff --git a/App/static/uploads/yesol@gmail.com/western_fake_1777863440.mp4 b/App/static/uploads/yesol@gmail.com/western_fake_1777863440.mp4
deleted file mode 100644
index 0c7eb48..0000000
Binary files a/App/static/uploads/yesol@gmail.com/western_fake_1777863440.mp4 and /dev/null differ
diff --git a/App/static/uploads/yesol@gmail.com/western_fake_1778167444.mp4 b/App/static/uploads/yesol@gmail.com/western_fake_1778167444.mp4
deleted file mode 100644
index 0c7eb48..0000000
Binary files a/App/static/uploads/yesol@gmail.com/western_fake_1778167444.mp4 and /dev/null differ
diff --git a/App/static/uploads/yesol@gmail.com/western_real_1_1778167744.JPG b/App/static/uploads/yesol@gmail.com/western_real_1_1778167744.JPG
deleted file mode 100644
index f5be7e3..0000000
Binary files a/App/static/uploads/yesol@gmail.com/western_real_1_1778167744.JPG and /dev/null differ
diff --git a/App/utils/common.py b/App/utils/common.py
index c49d71c..a72d30c 100644
--- a/App/utils/common.py
+++ b/App/utils/common.py
@@ -2,12 +2,20 @@
from db.database import engine
from contextlib import asynccontextmanager
+# Uvicorn이 앱 시작/종료 시 asynccontextmanager를 호출함
@asynccontextmanager
async def lifespan(app: FastAPI):
- # FastAPI 인스턴스 기동시 필요한 작업 수행
+
+ # ── Startup ──────────────────────────────────────────
+ # Event Loop 위에서 실행, DB 연결 풀 초기화
print("Starting up...")
+
+ # yield 이후 app이 실제 요청을 처리하기 시작함
yield
- # FastAPI 인스턴스 종료시 필요한 작업 수행
+ # ── Shutdown ─────────────────────────────────────────
+ # 새 요청은 차단되고, 진행 중인 요청 완료 후 여기로 진입
print("Shutting down...")
+
+ # SQLAlchemy 비동기 엔진의 커넥션 풀 전체 반환 및 종료
await engine.dispose()
\ No newline at end of file
diff --git a/App/utils/middleware.py b/App/utils/middleware.py
index d8a9589..12b2bc6 100644
--- a/App/utils/middleware.py
+++ b/App/utils/middleware.py
@@ -46,7 +46,9 @@ async def dispatch(self, request: Request, call_next):
response = await call_next(request)
if request.state.session:
- is_https = request.url.scheme == 'https'
+ is_https = (
+ request.url.scheme == 'https'
+ or request.headers.get('x-forwarded-proto') == 'https')
response.set_cookie(self.session_cookie, session_id, max_age=self.max_age, httponly=True,
secure=is_https, samesite='None' if is_https else 'Lax')
diff --git a/App/utils/responses.py b/App/utils/responses.py
new file mode 100644
index 0000000..4647454
--- /dev/null
+++ b/App/utils/responses.py
@@ -0,0 +1,4 @@
+from fastapi.responses import StreamingResponse
+
+class PNGStreamingResponse(StreamingResponse):
+ media_type = "image/png"
\ No newline at end of file
diff --git a/Images/celeb_df_v2_gcvit.png b/Images/celeb_df_v2_gcvit.png
deleted file mode 100644
index 3704f61..0000000
Binary files a/Images/celeb_df_v2_gcvit.png and /dev/null differ
diff --git a/Images/celeb_df_v2_vit.png b/Images/celeb_df_v2_vit.png
deleted file mode 100644
index ebba05f..0000000
Binary files a/Images/celeb_df_v2_vit.png and /dev/null differ
diff --git a/Images/deepfake.JPG b/Images/deepfake.JPG
deleted file mode 100644
index 4506889..0000000
Binary files a/Images/deepfake.JPG and /dev/null differ
diff --git a/Images/deepfake/video/western_fake.mp4 b/Images/deepfake/video/western_fake.mp4
deleted file mode 100644
index 0c7eb48..0000000
Binary files a/Images/deepfake/video/western_fake.mp4 and /dev/null differ
diff --git a/Images/deepfake/video/western_real.mp4 b/Images/deepfake/video/western_real.mp4
deleted file mode 100644
index 2828600..0000000
Binary files a/Images/deepfake/video/western_real.mp4 and /dev/null differ
diff --git a/Images/ff_compare.png b/Images/ff_compare.png
deleted file mode 100644
index f75129b..0000000
Binary files a/Images/ff_compare.png and /dev/null differ
diff --git a/Images/ff_gcvit.png b/Images/ff_gcvit.png
deleted file mode 100644
index 536e068..0000000
Binary files a/Images/ff_gcvit.png and /dev/null differ
diff --git a/Images/ff_vit.png b/Images/ff_vit.png
deleted file mode 100644
index ad28527..0000000
Binary files a/Images/ff_vit.png and /dev/null differ
diff --git a/Images/kodf_gcvit.png b/Images/kodf_gcvit.png
deleted file mode 100644
index f90a973..0000000
Binary files a/Images/kodf_gcvit.png and /dev/null differ
diff --git a/Images/model_architecture.JPG b/Images/model_architecture.JPG
deleted file mode 100644
index 128e285..0000000
Binary files a/Images/model_architecture.JPG and /dev/null differ
diff --git a/Images/ms_eff_gcvit.JPG b/Images/ms_eff_gcvit.JPG
deleted file mode 100644
index b1ffced..0000000
Binary files a/Images/ms_eff_gcvit.JPG and /dev/null differ
diff --git a/Images/multi_scale.JPG b/Images/multi_scale.JPG
deleted file mode 100644
index 01d2f9e..0000000
Binary files a/Images/multi_scale.JPG and /dev/null differ
diff --git a/README.md b/README.md
index e481c00..755b854 100644
--- a/README.md
+++ b/README.md
@@ -1,14 +1,17 @@
# Deepfakes Detection
-
-
-
-
+
+
+
+
+
+
+
@@ -27,6 +30,7 @@
🇰🇷 한국어 버전 |
+ 🇯🇵 日本語版 |
📈 Model Evaluation |
🔮 Try Demo
@@ -43,6 +47,7 @@
- [📈 Model Evaluation](#-model-evaluation) - Benchmarking results
- [💻 Model Usage](#-model-usage) - How to integrate DeepGuard models into your own Python code or via timm
- [🔮 Predict Image & Video](#-predict-image--video) - Simple Inference examples for detecting deepfakes in image and video
+- [🎨 DeepFake AI Explainability](#-deepfake-ai-explainability) - Visualizing model focus using Grad-CAM and attention maps
- [📬 Authors](#-authors)
- [📝 Reference](#-reference)
- [⚖️ License](#-license)
@@ -138,7 +143,7 @@ Multi Scale Efficient Global Context Vision Transformer is an optimized multi-sc
-
+
We utilizes two distinct types of self-attention to capture both long-range and short-range information across feature maps.
@@ -149,7 +154,7 @@ We utilizes two distinct types of self-attention to capture both long-range and
-
+
## 🧬 Model Zoo
@@ -250,6 +255,21 @@ model = timm.create_model("ms_eff_gcvit_b0", pretrained=True, dataset="ff++")
model = timm.create_model("ms_eff_gcvit_b5", pretrained=True, dataset="kodf")
```
+**Option C: Hugging Face Hub**
+
+```python
+import torch
+from huggingface_hub import hf_hub_download
+from deepguard import ms_eff_gcvit_b0 # or ms_eff_gcvit_b5
+
+REPO_ID = "KoreaPeter/ms-eff-gcvit-deepfake"
+
+ckpt = hf_hub_download(REPO_ID, "ms_eff_gcvit_b0_kodf.bin") # celeb_df_v2 | ff++ | kodf
+model = ms_eff_gcvit_b0(pretrained=False)
+model.load_state_dict(torch.load(ckpt, map_location="cpu"))
+model.eval()
+```
+
## 🔮 Predict Image & Video
#### Predict DeepFake Image
@@ -303,6 +323,151 @@ print(f"Deepfake Probability: {result:.4f}")
```
+## 🎨 DeepFake AI Explainability
+
+Deepfake detection is only as trustworthy as its explanations. DeepGuard integrates a production-ready XAI Toolkit that visualizes where and why the model flags a face as manipulated — turning a black-box score into actionable forensic evidence.
+
+⭐ Validated on hybrid CNN-ViT architectures, specifically `MS-EffViT` and `MS-EffGCViT`.
+⭐ Dual-Branch Analysis: Dual-branch design mirrors the model's own multi-scale reasoning
+
+### 🧠 How Dual-Branch XAI Works
+
+
+
+
+
+
+| Branch | Feature Map | Focus | Best For |
+| ------ | ----------- | ----- | -------- |
+|  | High Resolution | Local Forgery artifacts | Skin texture, boundary blending, compression traces |
+|  | Low Resolution | Global Semantic Structure | Lighting inconsistency, facial geometry, Shadow artifacts |
+
+### 📐 XAI Methods
+
+Each method is assigned to the branch where it performs best empirically.
+
+| Branch | Method | 🎯 Core Idea |
+| :--- | :--- | :--- |
+| **`low level`** | **HiResCAM** | Like GradCAM but element-wise multiply the activations with the gradients; provably guaranteed faithfulness for certain models |
+| **`low level`** | **GradCAMElementWise** | Like GradCAM but element-wise multiply the activations with the gradients then apply a ReLU operation before summing |
+| **`low level`** | **LayerCAM** | Spatially weight the activations by positive gradients. Works better especially in lower layers |
+| --- | --- | --- | --- |
+| **`high level`** | **EigenGradCAM** | Like EigenCAM but with class discrimination: First principle component of Activations*Grad. Looks like GradCAM, but cleaner |
+| **`high level`** | **GradCAM++** | Like GradCAM but uses second order gradients |
+| **`high level`** | **XGradCAM** | Like GradCAM but scale the gradients by the normalized activations |
+
+- **`aug_smooth`** applies TTA (horizontal flips) before averaging CAMs → smoother, more object-aligned maps
+- **`eigen_smooth`** applies PCA noise reduction → retains dominant forgery pattern only
+
+### 💡 DeepFake XAI Usage
+
+**Low-Level Branch — Local Artifact Detection**
+
+```python
+from explainability import HiResCAMExplainer, GradCAMElementWiseExplainer, LayerCAMExplainer
+
+explainer = HiResCAMExplainer(
+ model_name = "ms_eff_gcvit_b0", # or ms_eff_vit_b0, ms_eff_gcvit_b5, ms_eff_vit_b5
+ dataset = "celeb_df_v2", # or ff++, kodf
+ branch_level = "low",
+)
+```
+
+**High-Level Branch — Global Semantic Detection**
+```python
+from explainability import EigenGradCAMExplainer, GradCAMPlusPlusExplainer, XGradCAMExplainer
+
+explainer = EigenGradCAMExplainer(
+ model_name = "ms_eff_gcvit_b0",
+ dataset = "celeb_df_v2",
+ branch_level = "high",
+)
+```
+
+### 🎨 Visualization Modes
+
+
+
+
+
+**1. Heatmap — Continuous activation distribution**
+
+```python
+result = explainer.display_heatmap_on_image(
+ img_path = "path/to/image.jpg",
+ category = 1, # 0: Real, 1: Fake
+ threshold = 0.5, # binarization cutoff (0.5~1.0), or "auto" for Otsu
+ image_weight = 0.5, # 0.0: heatmap only ← → 1.0: original only
+ aug_smooth = False, # TTA smoothing (not supported on 'pro' models)
+ eigen_smooth = False, # PCA noise reduction
+)
+```
+
+**2. Bounding Box — Discrete forgery region localization**
+
+```python
+result = explainer.display_bbox_on_image(
+ img_path = "path/to/image.jpg",
+ category = 1,
+ threshold = 0.5,
+ thickness = 1,
+ aug_smooth = False,
+ eigen_smooth = False,
+)
+```
+
+**3. Heatmap + BBox — Full overlay (recommended for reporting)**
+```python
+result = explainer.display_heatmap_bbox_on_image(
+ img_path = "path/to/image.jpg",
+ category = 1,
+ threshold = 0.5,
+ image_weight = 0.5,
+ aug_smooth = False,
+ eigen_smooth = False,
+)
+```
+
+### 📊 Visual Results
+
+
+
+
+
+
+
+
+
+
+
+#### MS-EFF-VIT — Low-Level Branch
+
+| Model | Branch-Level | Image | HiresCam | GradCamElementwise | LayerCam |
+| :--- | :---: | :---: | :---: | :---: | :---: |
+| **⚡ ms-eff-vit-b0** |  | | | | |
+| **🔥 ms-eff-vit-b5** |  | | | | |
+
+#### MS-Eff-ViT — High-Level Branch
+
+| Model | Branch-Level | Image | EigenGradCam | GradCamPlusPlus | XGradCam |
+| :--- | :---: | :---: | :---: | :---: | :---: |
+| **⚡ ms-eff-vit-b0** |  | | | | |
+| **🔥 ms-eff-vit-b5** |  | | | | |
+
+#### MS-EFF-GCVIT — Low-Level Branch
+
+| Model | Branch-Level | Image | HiresCam | GradCamElementwise | LayerCam |
+| :--- | :---: | :---: | :---: | :---: | :---: |
+| **⚡ ms-eff-gcvit-b0** |  | | | | |
+| **🔥 ms-eff-gcvit-b5** |  | | | | |
+
+#### MS-Eff-GCViT — High-Level Branch
+
+| Model | Branch-Level | Image | EigenGradCam | GradCamPlusPlus | XGradCam |
+| :--- | :---: | :---: | :---: | :---: | :---: |
+| **⚡ ms-eff-gcvit-b0** |  | | | | |
+| **🔥 ms-eff-gcvit-b5** |  | | | | |
+
## 📬 Authors
@@ -323,6 +488,7 @@ _**This project was developed as a Senior Graduation Project by the Department o
6. [`deepfake-detection-project-v4`](https://github.com/ameencaslam/deepfake-detection-project-v4) - _Multiple Deep Learning Models by Ameen Caslam_
7. [`Awesome-Deepfake-Detection`](https://github.com/Daisy-Zhang/Awesome-Deepfakes-Detection
) - _A curated list of tools, papers and code by Daisy Zhang_
+8. [`Pytorch-Grad-Cam`](https://github.com/jacobgil/pytorch-grad-cam) - _Advanced Visual Explanations for PyTorch Models_
## ⚖️ License
diff --git a/README_JP.md b/README_JP.md
new file mode 100644
index 0000000..199f443
--- /dev/null
+++ b/README_JP.md
@@ -0,0 +1,484 @@
+# Deepfakes Detection (ディープフェイク検出)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 🇺🇸 English Version |
+ 🇰🇷 한국어 버전 |
+ 📈 モデル評価 |
+ 🔮 デモ実行
+
+
+## 📌 目次
+
+- [💡 インストールと要件](#-インストールと要件)
+- [🛠 セットアップ](#-セットアップ)
+- [📚 ディープフェイク動画ベンチマークデータセット](#-ディープフェイク動画ベンチマークデータセット) — 学習に使用した Celeb-DF-v2, FF++, KoDF データセットの概要。
+- [⚙️ データ準備](#データ準備) — YOLOv8 を用いた効率的な顔検出およびランドマーク抽出パイプライン。
+- [🏗 モデルアーキテクチャ](#-モデルアーキテクチャ) — ハイブリッド CNN-ViT (MS-EffViT & MS-EffGCViT) 設計の詳細。
+- [🧬 Model Zoo](#-model-zoo) — モデルバリアントごとのパラメータ数および演算量(FLOPs)の比較。
+- [🚀 学習](#-学習) - Google Colab および W&B を活用した段階的な学習スクリプト。
+- [📈 モデル評価](#-モデル評価) - ベンチマーク結果。
+- [💻 モデルの使い方](#-モデルの使い方) - Python コードおよび timm を通じた DeepGuard モデルの統合方法。
+- [🔮 画像と動画の予測](#-画像と動画の予測) - ディープフェイク検出のためのシンプルな推論例。
+- [🎨 ディープフェイクAI説明可能性(XAI)](#-ディープフェイクai説明可能性xai) - Grad-CAM およびアテンションマップによるモデル判断根拠の可視化。
+- [📬 制作者](#-制作者)
+- [📝 参考文献](#-参考文献)
+- [⚖️ ライセンス](#-ライセンス)
+
+---
+
+## 💡 インストールと要件
+
+必要なライブラリのインストール:
+
+```bash
+pip install -r requirements.txt
+```
+
+## 🛠 セットアップ
+
+リポジトリをクローンし、該当ディレクトリへ移動します:
+```bash
+git clone https://github.com/HanMoonSub/DeepGuard.git
+cd DeepGuard
+```
+
+## 📚 ディープフェイク動画ベンチマークデータセット
+
+モデルの汎化性能と頑健性を評価するため、広く認知された3つの大規模ベンチマークデータセットを使用します。各データセットはそれぞれ異なる改ざん手法と難易度の高い課題を含んでいます。
+
+| データセット | 実写動画 | 偽造動画 | 年度 | 参加人数 | 説明 (論文タイトル) | 詳細 |
+| :--- | :---: | :---: | :---: | :---: | :--- | :---: |
+| **Celeb-DF-v2** | 890 | 5,639 | 2019 | 59 | *A Large-scale Challenging Dataset for DeepFake Forensics* | [🔗 Readme](preprocess/celeb_df_v2/README.md) |
+| **FaceForensics++** | 1,000 | 6,000 | 2019 | 1,000 | *Learning to Detect Manipulated Facial Images* | [🔗 Readme](preprocess/ff++/README.md) |
+| **KoDF** | 62,166 | 175,776 | 2020 | 400 | *Large-Scale Korean Deepfake Detection Dataset* | [🔗 Readme](preprocess/kodf/README.md) |
+
+
+
+## ⚙️ データ準備
+
+前処理パイプラインは、動画から顔の特徴を効率的に抽出し、高精度なディープフェイク検出に備えるよう設計されています。
+
+### オリジナル顔の検出 (Detect Original Face)
+前処理の効率を最大化するため、**顔検出はオリジナル(Real)動画に対してのみ実行されます。** ベンチマークデータセットの改ざん動画はオリジナル動画と同じ空間座標を共有するため、抽出したバウンディングボックスを偽造動画にもそのまま再利用します。
+
+🚀 **効率化の最適化**
+- **軽量モデル**: 精度を維持しつつ高速な推論を実現する `yolov8n-face` を使用します。
+- **ターゲット処理**: オリジナル動画のみで顔を検出することで、全体の検出作業量を約80%削減しました。
+- **動的リサイズ**: 多様な解像度で一定の推論速度を維持するため、フレームサイズに応じて自動的にサイズを調整します:
+
+| フレームサイズ(長辺基準) | スケール係数 | 動作 |
+| ------------------------ | ------------ | ------ |
+| < 300px | 2.0 |  |
+| 300px - 700px | 1.0 |  |
+| 700px - 1500px | 0.5 |  |
+| > 1500px | 0.33 |  |
+
+### 顔クロップおよびランドマーク抽出
+このモジュールは、前段で生成したバウンディングボックスを用いて、オリジナル動画と偽造動画の両方から顔領域をクロップします。さらに、Landmark-based Cutout のような高度なaugmentation手法のためにランドマーク検出を行います。
+
+🛠 **主な機能**
+- **ジッターを含む動的マージン**: 顔周辺に設定可能なマージンを追加します。`margin_jitter` パラメータはクロップサイズにランダムな変化を与え、モデルが多様な顔スケールに対して頑健になるよう支援します。
+- **ランドマークのローカライズ**: 5つの主要な顔ランドマーク(目、鼻、口角)を検出し、`.npy` ファイルとして保存します。
+
+```Plaintext
+DATA_ROOT/
+├── crops/
+│ └── {video_id}/
+│ ├── 12.png
+│ └── ...
+├── landmarks/
+│ └── {video_id}/
+│ ├── 12.npy
+│ └── ...
+└── train_frame_metadata.csv
+```
+
+### データセット別パイプライン
+
+各データセットの具体的な前処理の詳細は、以下のリンクをクリックしてご確認ください:
+
+* [**Celeb-DF V2 前処理**](/preprocess/celeb_df_v2/README.md)
+* [**FaceForensics++ 前処理**](/preprocess/ff++/README.md)
+* [**KoDF 前処理**](/preprocess/kodf/README.md)
+
+## 🏗 モデルアーキテクチャ
+
+**Multi Scale Efficient Global Context Vision Transformer** は、最適化されたマルチスケール・ハイブリッドアーキテクチャです。CNN の空間的帰納バイアス(Spatial Inductive Bias)と階層的アテンション機構を統合することで、精緻な検出のために微細な(Local)アーティファクトと巨視的な(Global)アーティファクトを効果的に識別します。
+
+#### 詳細情報
+
+- [モデルアーキテクチャ: MS-EffViT](deepguard/MS_EffViT.md) - _**Multi Scale Efficient Vision Transformer**_
+- [発展アーキテクチャ: MS-EFFGCViT](deepguard/MS_EffGCViT.md) - _**Multi Scale Efficient Global Context Vision Transformer**_
+
+
+
+
+
+
+特徴マップ全体にわたって長距離(Long-range)および短距離(Short-range)の情報を共に捉えるため、2種類のセルフアテンションを活用します。
+
+- **Local Window Attention**: 画像サイズに比例する線形計算量を維持しながら、局所的なテクスチャと精密な空間的ディテールを効率的に捉えます。
+- **Global Window Attention**: Swin Transformer とは異なり、このモジュールはローカルウィンドウの Key, Value と相互作用するグローバルクエリ(Global-queries)を用います。これにより各ローカル領域が大域的なコンテキストを取り込み、長距離依存を効果的に把握して空間構造全体の包括的な理解を提供します。
+
+
+
+
+
+## 🧬 Model Zoo
+
+| モデル名 | 解像度 | 総パラメータ(M) | バックボーン(M) | L-ViT(M) | H-ViT(M) | 演算量(FLOPs, G) | 設定ファイル |
+| ----- | ---------- | -------------- | ----------- |------------- | ------------- | -------------- | ------- |
+| ⚡ ms_eff_gcvit_b0 | 224 X 224 | 8.7 | 3.6(41.4%) | 1.7(19.5%) | 3.3(37.9%) | 0.87 | [spec](deepguard/config/ms_eff_gcvit_b5/celeb_df_v2.yaml) |
+| 🔥 ms_eff_gcvit_b5 | 384 X 384 | 50.3 | 27.3(54.3%) | 6.6(13.1%) | 16.1(32.0%) | 13.64 | [spec](deepguard/config/ms_eff_gcvit_b5/celeb_df_v2.yaml) |
+
+## 🚀 学習
+
+`ms_eff_vit` と `ms_eff_gcvit` の両方について学習スクリプトを提供します。無料の GPU 環境として **Google Colab** を、実験の記録およびトラッキングとして **Weights & Biases(W&B)** の使用を推奨します。
+
+#### 📊 Weight & Biases 実験結果
+
+* **ms_eff_vit_b0:** [Celeb-DF-v2 🚀](https://wandb.ai/origin6165/ms_eff_vit_b0_celeb_df_v2) | [FaceForensics++ 🚀](https://wandb.ai/origin6165/ms_eff_vit_b0_ff++) | [KoDF 🚀](https://wandb.ai/origin6165/ms_eff_vit_b0_kodf)
+* **ms_eff_vit_b5:** [Celeb-DF-v2 🚀](https://wandb.ai/origin6165/ms_eff_vit_b5_celeb_df_v2) | [FaceForensics++ 🚀](https://wandb.ai/origin6165/ms_eff_vit_b5_ff++) | [KoDF 🚀](https://wandb.ai/origin6165/ms_eff_vit_b5_kodf)
+* **ms_eff_gcvit_b0:** [Celeb-DF-v2 🚀](https://wandb.ai/origin6165/ms_eff_gcvit_b0_celeb_df_v2) | [FaceForensics++ 🚀](https://wandb.ai/origin6165/ms_eff_gcvit_b0_ff++) | [KoDF 🚀](https://wandb.ai/origin6165/ms_eff_gcvit_b0_kodf)
+* **ms_eff_gcvit_b5:** [Celeb-DF-v2 🚀](https://wandb.ai/origin6165/ms_eff_gcvit_b5_celeb_df_v2) | [FaceForensics++ 🚀](https://wandb.ai/origin6165/ms_eff_gcvit_b5_ff++) | [KoDF 🚀](https://wandb.ai/origin6165/ms_eff_gcvit_b5_kodf)
+
+```python
+!python -m train_eff_vit \ # または train_eff_gcvit
+ --root-dir DATA_ROOT \
+ --model-ver "ms_eff_vit_b5" \ # ms_eff_vit_b0, ms_eff_vit_b5, ms_eff_gcvit_b0, ms_eff_gcvit_b5
+ --dataset "ff++" \ # ff++, celeb_df_v2, kodf
+ --seed 2025 \ # 再現性のためのシード値
+ --wandb-api-key "ご自身のAPIキー" # ご自身のW&B APIキーを入力してください
+```
+
+## 📈 モデル評価
+
+```python
+!python -m inference.predict_video \
+ --root-dir DATA_ROOT \
+ --margin-ratio 0.2 \
+ --conf-thres 0.5 \
+ --min-face-ratio 0.01 \
+ --model-name "ms_eff_gcvit_b0" \ # ms_eff_vit_b0, ms_eff_vit_b5, ms_eff_gcvit_b0, ms_eff_gcvit_b5
+ --model-dataset "kodf" \ # ff++, celeb_df_v2, kodf
+ --num-frames 20 \
+ --tta-hflip 0.0 \
+ --agg-mode "conf" \
+```
+
+**Celeb DF(v2) 事前学習モデル**
+
+| モデルバージョン | Test@Acc | Test@Auc | Test@log_loss | ダウンロード | 学習レシピ |
+| ------------- | -------- | -------- | ---------- | -------- | ----- |
+| ms_eff_gcvit_b0 | 0.9842 | 0.9965 | 0.0283 | [model](https://github.com/HanMoonSub/DeepGuard/releases/download/v0.1.0/ms_eff_gcvit_b0_celeb_df_v2.bin) | [recipe](deepguard/config/ms_eff_gcvit_b0/celeb_df_v2.yaml) |
+| ms_eff_gcvit_b5 | 0.9981 | 0.9984 | 0.0089 | [model](https://github.com/HanMoonSub/DeepGuard/releases/download/v0.1.0/ms_eff_gcvit_b5_celeb_df_v2.bin) | [recipe](deepguard/config/ms_eff_gcvit_b5/celeb_df_v2.yaml) |
+
+**FaceForensics++ 事前学習モデル**
+
+| モデルバージョン | Test@Acc | Test@Auc | Test@log_loss | ダウンロード | 学習レシピ |
+| ------------- | -------- | -------- | ---------- | -------- | ------ |
+| ms_eff_gcvit_b0 | 0.9808 | 0.9969 | 0.0637| [model](https://github.com/HanMoonSub/DeepGuard/releases/download/v0.1.0/ms_eff_gcvit_b0_ff++.bin) | [recipe](deepguard/config/ms_eff_gcvit_b0/celeb_df_v2.yaml) |
+| ms_eff_gcvit_b5 | 0.9850 | 0.9974 | 0.0492 | [model](https://github.com/HanMoonSub/DeepGuard/releases/download/v0.1.0/ms_eff_gcvit_b5_ff++.bin) | [recipe](deepguard/config/ms_eff_gcvit_b5/celeb_df_v2.yaml) |
+
+**KoDF 事前学習モデル**
+
+| モデルバージョン | Test@Acc | Test@Auc | Test@log_loss | ダウンロード | 学習レシピ |
+| ------------- | -------- | -------- | ---------- | -------- | ------ |
+| ms_eff_gcvit_b0 | 0.9655 | 0.9792 | 0.1237 | [model](https://github.com/HanMoonSub/DeepGuard/releases/download/v0.2.0/ms_eff_gcvit_b0_kodf.bin) | [recipe](deepguard/config/ms_eff_gcvit_b0/celeb_df_v2.yaml) |
+| ms_eff_gcvit_b5 | 0.9850 | 0.9974 | 0.0492 | [model](https://github.com/HanMoonSub/DeepGuard/releases/download/v0.2.0/ms_eff_gcvit_b5_kodf.bin) | [recipe](deepguard/config/ms_eff_gcvit_b5/celeb_df_v2.yaml) |
+
+## 💻 モデルの使い方
+
+**クイックスタート**
+`DeepGuard` パッケージを直接インポートするか、`timm` インターフェースを通じてモデルをロードできます。
+
+**対応データセット**: `celeb_df_v2`, `ff++`, `kodf`
+
+**インストール**
+
+```bash
+# pip install -U git+https://github.com/HanMoonSub/DeepGuard.git
+pip install deepguard
+```
+
+
+**方法 A: 直接インポート (DeepGuard 使用)**
+
+```python
+from deepguard import ms_eff_gcvit_b0, ms_eff_gcvit_b5
+
+model = ms_eff_gcvit_b0(pretrained=True, dataset="celeb_df_v2")
+model = ms_eff_gcvit_b5(pretrained=True, dataset="ff++")
+```
+
+**方法 B: timm インターフェース使用**
+
+```python
+import timm
+import deepguard
+
+model = timm.create_model("ms_eff_gcvit_b0", pretrained=True, dataset="ff++")
+model = timm.create_model("ms_eff_gcvit_b5", pretrained=True, dataset="kodf")
+```
+
+**方法 C: Hugging Face Hub**
+
+```python
+import torch
+from huggingface_hub import hf_hub_download
+from deepguard import ms_eff_gcvit_b0 # or ms_eff_gcvit_b5
+
+REPO_ID = "KoreaPeter/ms-eff-gcvit-deepfake"
+
+ckpt = hf_hub_download(REPO_ID, "ms_eff_gcvit_b0_kodf.bin") # celeb_df_v2 | ff++ | kodf
+model = ms_eff_gcvit_b0(pretrained=False)
+model.load_state_dict(torch.load(ckpt, map_location="cpu"))
+model.eval()
+```
+
+## 🔮 画像と動画の予測
+
+#### ディープフェイク画像の予測
+
+```python
+from inference.image_predictor import ImagePredictor
+
+# 予測器の初期化
+predictor = ImagePredictor(
+ margin_ratio = 0.2, # 検出された顔クロップ周辺のマージン比率
+ conf_thres = 0.5, # 顔検出の信頼度しきい値
+ min_face_ratio = 0.01, # 処理対象とするフレーム比の最小顔サイズ比率
+ model_name = "ms_eff_vit_b0", # ms_eff_vit_b5, ms_eff_gcvit_b0, ms_eff_gcvit_b5 から選択
+ dataset = "celeb_df_v2" # ff++, kodf データセットから選択
+ )
+
+# 推論の実行
+result = predictor.predict_img(
+ img_path="path/to/image.jpg",
+ tta_hflip=0.0 # テスト時augmentation(TTA)用の水平反転確率
+ )
+
+print(f"ディープフェイク確率: {result:.4f}")
+```
+
+#### ディープフェイク動画の予測
+
+```python
+from inference.video_predictor import VideoPredictor
+
+# 予測器の初期化
+predictor = VideoPredictor(
+ margin_ratio = 0.2, # 検出された顔クロップ周辺のマージン比率
+ conf_thres = 0.5, # 顔検出の信頼度しきい値
+ min_face_ratio = 0.01, # 処理対象とするフレーム比の最小顔サイズ比率
+ model_name = "ms_eff_vit_b0", # ms_eff_vit_b5, ms_eff_gcvit_b0, ms_eff_gcvit_b5 から選択
+ dataset = "celeb_df_v2" # ff++, kodf データセットから選択
+ )
+
+# 推論の実行
+result = predictor.predict_video(
+ video_path = "path/to/video.mp4",
+ num_frames = 20, # 動画あたりのサンプリングフレーム数
+ agg_mode = "conf", # 集約方式: 'conf', 'mean', 'vote'
+ tta_hflip=0.0 # テスト時augmentation(TTA)用の水平反転確率
+ )
+
+print(f"ディープフェイク確率: {result:.4f}")
+```
+
+## 🎨 ディープフェイクAI説明可能性(XAI)
+
+ディープフェイク検出は、その判断根拠が説明可能であって初めて信頼に値します。DeepGuard は、モデルがどの顔を *どこで、なぜ* 改ざんと判断したのかを可視化する **プロダクションレベルの XAI ツールキット** を統合し、ブラックボックスのスコアを実用的なフォレンジック証拠へと転換します。
+
+⭐ ハイブリッド CNN-ViT アーキテクチャ、特に `MS-EffViT` と `MS-EffGCViT` で検証済みです。
+⭐ **デュアルブランチ分析(Dual-Branch Analysis)**: デュアルブランチ設計は、モデル自身のマルチスケール推論方式をそのまま反映します。
+
+### 🧠 デュアルブランチ XAI の仕組み
+
+
+
+
+
+| ブランチ | 特徴マップ | 焦点 | 最適な用途 |
+| ------ | ----------- | ----- | -------- |
+|  | 高解像度 | 局所的な偽造アーティファクト | 肌のテクスチャ、境界のブレンディング、圧縮痕跡 |
+|  | 低解像度 | 大域的な意味構造 | 照明の不整合、顔の幾何構造、影のアーティファクト |
+
+### 📐 XAI 手法
+
+各手法は、経験的に最も高い性能を示すブランチに割り当てられています。
+
+| ブランチ | 手法 | 🎯 コアアイデア |
+| :--- | :--- | :--- |
+| **`low level`** | **HiResCAM** | GradCAM に似ているが、活性化(activation)と勾配を要素ごと(element-wise)に乗算する。特定のモデルに対して忠実性(faithfulness)が理論的に保証される |
+| **`low level`** | **GradCAMElementWise** | GradCAM に似ているが、活性化と勾配を要素ごとに乗算した後、総和を取る前に ReLU を適用する |
+| **`low level`** | **LayerCAM** | 正の勾配で活性化に空間的な重み付けを行う。特に下位層でより良く機能する |
+| **`high level`** | **EigenGradCAM** | EigenCAM に似ているがクラス判別性を追加: (活性化×勾配)の第1主成分(First principal component)。GradCAM に近いがよりクリーン |
+| **`high level`** | **GradCAM++** | GradCAM に似ているが2次勾配(second order gradients)を使用する |
+| **`high level`** | **XGradCAM** | GradCAM に似ているが、正規化された活性化で勾配をスケーリングする |
+
+- **`aug_smooth`**: CAM を平均化する前に TTA(水平反転)を適用 → より滑らかで対象によく整列したマップを生成
+- **`eigen_smooth`**: PCA ノイズ除去を適用 → 支配的な偽造パターンのみを保持
+
+### 💡 ディープフェイク XAI の使い方
+
+**Low-Level ブランチ — 局所的アーティファクト検出**
+
+```python
+from explainability import HiResCAMExplainer, GradCAMElementWiseExplainer, LayerCAMExplainer
+
+explainer = HiResCAMExplainer(
+ model_name = "ms_eff_gcvit_b0", # ms_eff_vit_b0, ms_eff_gcvit_b5, ms_eff_vit_b5 から選択
+ dataset = "celeb_df_v2", # ff++, kodf から選択
+ branch_level = "low",
+)
+```
+
+**High-Level ブランチ — 大域的意味構造検出**
+```python
+from explainability import EigenGradCAMExplainer, GradCAMPlusPlusExplainer, XGradCAMExplainer
+
+explainer = EigenGradCAMExplainer(
+ model_name = "ms_eff_gcvit_b0",
+ dataset = "celeb_df_v2",
+ branch_level = "high",
+)
+```
+
+### 🎨 可視化モード
+
+
+
+
+
+**1. Heatmap — 連続的な活性化分布**
+
+```python
+result = explainer.display_heatmap_on_image(
+ img_path = "path/to/image.jpg",
+ category = 1, # 0: Real, 1: Fake
+ threshold = 0.5, # 二値化カットオフ (0.5~1.0)、またはOtsu自動しきい値は "auto"
+ image_weight = 0.5, # 0.0: ヒートマップのみ ← → 1.0: 元画像のみ
+ aug_smooth = False, # TTAスムージング ('pro'モデルは非対応)
+ eigen_smooth = False, # PCAノイズ除去
+)
+```
+
+**2. Bounding Box — 離散的な偽造領域のローカライズ**
+
+```python
+result = explainer.display_bbox_on_image(
+ img_path = "path/to/image.jpg",
+ category = 1,
+ threshold = 0.5,
+ thickness = 1,
+ aug_smooth = False,
+ eigen_smooth = False,
+)
+```
+
+**3. Heatmap + BBox — 統合オーバーレイ (レポート作成時に推奨)**
+```python
+result = explainer.display_heatmap_bbox_on_image(
+ img_path = "path/to/image.jpg",
+ category = 1,
+ threshold = 0.5,
+ image_weight = 0.5,
+ aug_smooth = False,
+ eigen_smooth = False,
+)
+```
+
+### 📊 可視化結果
+
+
+
+
+
+
+
+
+
+
+
+
+#### MS-EFF-VIT — Low-Level Branch
+
+| Model | Branch-Level | Image | HiresCam | GradCamElementwise | LayerCam |
+| :--- | :---: | :---: | :---: | :---: | :---: |
+| **⚡ ms-eff-vit-b0** |  | | | | |
+| **🔥 ms-eff-vit-b5** |  | | | | |
+
+#### MS-Eff-ViT — High-Level Branch
+
+| Model | Branch-Level | Image | EigenGradCam | GradCamPlusPlus | XGradCam |
+| :--- | :---: | :---: | :---: | :---: | :---: |
+| **⚡ ms-eff-vit-b0** |  | | | | |
+| **🔥 ms-eff-vit-b5** |  | | | | |
+
+#### MS-EFF-GCVIT — Low-Level Branch
+
+| Model | Branch-Level | Image | HiresCam | GradCamElementwise | LayerCam |
+| :--- | :---: | :---: | :---: | :---: | :---: |
+| **⚡ ms-eff-gcvit-b0** |  | | | | |
+| **🔥 ms-eff-gcvit-b5** |  | | | | |
+
+#### MS-Eff-GCViT — High-Level Branch
+
+| Model | Branch-Level | Image | EigenGradCam | GradCamPlusPlus | XGradCam |
+| :--- | :---: | :---: | :---: | :---: | :---: |
+| **⚡ ms-eff-gcvit-b0** |  | | | | |
+| **🔥 ms-eff-gcvit-b5** |  | | | | |
+
+
+## 📬 制作者
+
+_**本プロジェクトは、忠北大学校(CBNU)ソフトウェア学部の卒業制作(Senior Graduation Project)として開発されました。**_
+
+* **ハン・ムンソプ(한문섭)**: **Data & Backend Engineering** (データ前処理パイプライン、DBスキーマ設計) — [hanmoon3054@gmail.com](mailto:hanmoon3054@gmail.com)
+* **イ・イェソル(이예솔)**: **UI/UX & Frontend Engineering** (UI/UXデザイン、ユーザーダッシュボード、モデル可視化) — [yesol4138@chungbuk.ac.kr](mailto:yesol4138@chungbuk.ac.kr)
+* **ソ・ユンジェ(서윤제)**: **AI Engineering** (AIモデルアーキテクチャ設計、推論API設計、モデルサービング) — [seoyunje2001@gmail.com](mailto:seoyunje2001@gmail.com)
+
+
+## 📝 参考文献
+
+1. [`facenet-pytorch`](https://github.com/timesler/facenet-pytorch) - _Tim Esler による事前学習済み顔検出(MTCNN)および認識(InceptionResNet)モデル_
+2. [`face-cutout`](https://github.com/sowmen/face-cutout) - _Sowmen による Face Cutout ライブラリ_
+3. [`Celeb-DF++`](https://github.com/OUC-VAS/Celeb-DF-PP) - _OUC-VAS Group による Celeb-DF++ データセット_
+4. [`DeeperForensics-1.0`](https://github.com/EndlessSora/DeeperForensics-1.0) - _Endless Sora による DeeperForensics-1.0 データセット_
+5. [`Deepfake Detection`](https://github.com/abhijithjadhav/Deepfake_detection_using_deep_learning) - _Abhijith Jadhav による ResNext と LSTM を用いた動画ディープフェイク検出_
+6. [`deepfake-detection-project-v4`](https://github.com/ameencaslam/deepfake-detection-project-v4) - _Ameen Caslam による複数のディープラーニングモデル_
+7. [`Awesome-Deepfake-Detection`](https://github.com/Daisy-Zhang/Awesome-Deepfakes-Detection) - _Daisy Zhang がまとめたツール・論文・コードのキュレーションリスト_
+8. [`Pytorch-Grad-Cam`](https://github.com/jacobgil/pytorch-grad-cam) - _PyTorch モデルのための高度な視覚的説明ツール_
+
+## ⚖️ ライセンス
+
+本プロジェクトは MIT ライセンスの条件の下で配布されます。
\ No newline at end of file
diff --git a/README_KR.md b/README_KR.md
index 817282a..02efcb8 100644
--- a/README_KR.md
+++ b/README_KR.md
@@ -1,14 +1,17 @@
-# Deepfakes Detection (딥페이크 탐지)
-
-
-
-
+# Deepfakes Detection
+
+
+
+
+
+
+
@@ -27,6 +30,7 @@
🇺🇸 English Version |
+ 🇯🇵 日本語版 |
📈 모델 평가 |
🔮 데모 실행
@@ -38,11 +42,12 @@
- [📚 딥페이크 비디오 벤치마크 데이터셋](#-딥페이크-비디오-벤치마크-데이터셋) — 학습에 사용된 Celeb-DF-v2, FF++, KoDF 데이터셋 개요.
- [⚙️ 데이터 준비](#데이터-준비) — YOLOv8을 이용한 효율적인 얼굴 검출 및 랜드마크 추출 파이프라인.
- [🏗 모델 구조](#-모델-구조) — 하이브리드 CNN-ViT (MS-EffViT & MS-EffGCViT) 설계 상세.
-- [🧬 모델 주(Model Zoo)](#-모델-주model-zoo) — 모델 변체별 파라미터 수 및 연산량(FLOPs) 비교.
+- [🧬 모델 주(Model Zoo)](#-model-zoo) — 모델 변체별 파라미터 수 및 연산량(FLOPs) 비교.
- [🚀 학습](#-학습) - Google Colab 및 W&B를 활용한 단계별 학습 스크립트.
- [📈 모델 평가](#-모델-평가) - 벤치마크 결과.
- [💻 모델 사용법](#-모델-사용법) - Python 코드 및 timm을 통한 DeepGuard 모델 통합 방법.
- [🔮 이미지 및 비디오 예측](#-이미지-및-비디오-예측) - 딥페이크 탐지를 위한 간단한 추론 예시.
+- [🎨 딥페이크 AI 설명가능성(XAI)](#-딥페이크-ai-설명가능성xai) - Grad-CAM 및 어텐션 맵을 통한 모델 판단 근거 시각화.
- [📬 제작자](#-제작자)
- [📝 참고 문헌](#-참고-문헌)
- [⚖️ 라이선스](#-라이선스)
@@ -61,7 +66,7 @@ pip install -r requirements.txt
저장소를 클론하고 해당 디렉토리로 이동합니다:
```bash
-git clone [https://github.com/HanMoonSub/DeepGuard.git](https://github.com/HanMoonSub/DeepGuard.git)
+git clone https://github.com/HanMoonSub/DeepGuard.git
cd DeepGuard
```
@@ -135,7 +140,7 @@ DATA_ROOT/
-
+
특징 맵 전체에 걸쳐 장거리(Long-range) 및 단거리(Short-range) 정보를 모두 캡처하기 위해 두 가지 유형의 셀프 어텐션을 활용합니다.
@@ -144,10 +149,10 @@ DATA_ROOT/
- **Global Window Attention**: Swin Transformer와 달리, 이 모듈은 로컬 윈도우의 Key, Value와 상호작용하는 글로벌 쿼리(Global-queries)를 사용합니다. 이를 통해 각 로컬 영역이 전역 컨텍스트를 수용하게 함으로써 장거리 의존성을 효과적으로 파악하고 전체 공간 구조에 대한 포괄적인 이해를 제공합니다.
-
+
-## 🧬 모델 주(Model Zoo)
+## 🧬 Model Zoo
| 모델명 | 해상도 | 총 파라미터(M) | 백본(M) | L-ViT(M) | H-ViT(M) | 연산량(FLOPs, G) | 설정 파일 |
| ----- | ---------- | -------------- | ----------- |------------- | ------------- | -------------- | ------- |
@@ -220,7 +225,7 @@ DATA_ROOT/
**설치**
```bash
-# pip install -U git+[https://github.com/HanMoonSub/DeepGuard.git](https://github.com/HanMoonSub/DeepGuard.git)
+# pip install -U git+https://github.com/HanMoonSub/DeepGuard.git
pip install deepguard
```
@@ -244,6 +249,21 @@ model = timm.create_model("ms_eff_gcvit_b0", pretrained=True, dataset="ff++")
model = timm.create_model("ms_eff_gcvit_b5", pretrained=True, dataset="kodf")
```
+**방법 C: Hugging Face Hub**
+
+```python
+import torch
+from huggingface_hub import hf_hub_download
+from deepguard import ms_eff_gcvit_b0 # or ms_eff_gcvit_b5
+
+REPO_ID = "KoreaPeter/ms-eff-gcvit-deepfake"
+
+ckpt = hf_hub_download(REPO_ID, "ms_eff_gcvit_b0_kodf.bin") # celeb_df_v2 | ff++ | kodf
+model = ms_eff_gcvit_b0(pretrained=False)
+model.load_state_dict(torch.load(ckpt, map_location="cpu"))
+model.eval()
+```
+
## 🔮 이미지 및 비디오 예측
#### 딥페이크 이미지 예측
@@ -294,6 +314,150 @@ result = predictor.predict_video(
print(f"딥페이크 확률: {result:.4f}")
```
+## 🎨 딥페이크 AI 설명가능성(XAI)
+
+딥페이크 탐지는 그 판단 근거가 설명될 수 있을 때 비로소 신뢰받을 수 있습니다. DeepGuard는 모델이 어떤 얼굴을 *어디서, 왜* 조작된 것으로 판단했는지 시각화하는 **프로덕션 레벨의 XAI 툴킷**을 통합하여, 블랙박스 점수를 실질적인 포렌식 증거로 전환합니다.
+
+⭐ 하이브리드 CNN-ViT 아키텍처, 특히 `MS-EffViT`와 `MS-EffGCViT`에서 검증되었습니다.
+⭐ **듀얼 브랜치 분석(Dual-Branch Analysis)**: 듀얼 브랜치 설계는 모델 자체의 멀티 스케일 추론 방식을 그대로 반영합니다.
+
+### 🧠 듀얼 브랜치 XAI 작동 원리
+
+
+
+
+
+| 브랜치 | 특징 맵 | 초점 | 최적 용도 |
+| ------ | ----------- | ----- | -------- |
+|  | 고해상도 | 국부적 위조 아티팩트 | 피부 질감, 경계 블렌딩, 압축 흔적 |
+|  | 저해상도 | 전역 의미 구조 | 조명 불일치, 얼굴 기하 구조, 그림자 아티팩트 |
+
+### 📐 XAI 기법
+
+각 기법은 경험적으로 가장 좋은 성능을 보이는 브랜치에 배정되었습니다.
+
+| 브랜치 | 기법 | 🎯 핵심 아이디어 |
+| :--- | :--- | :--- |
+| **`low level`** | **HiResCAM** | GradCAM과 유사하나 활성화(activation)와 그래디언트를 요소별(element-wise)로 곱함. 특정 모델에 대해 충실도(faithfulness)가 이론적으로 보장됨 |
+| **`low level`** | **GradCAMElementWise** | GradCAM과 유사하나 활성화와 그래디언트를 요소별로 곱한 뒤, 합산 전에 ReLU를 적용 |
+| **`low level`** | **LayerCAM** | 양의 그래디언트로 활성화에 공간적 가중치를 부여. 특히 하위 레이어에서 더 잘 작동 |
+| **`high level`** | **EigenGradCAM** | EigenCAM과 유사하나 클래스 판별력을 추가: (활성화×그래디언트)의 제1주성분(First principal component). GradCAM과 비슷하면서도 더 깔끔 |
+| **`high level`** | **GradCAM++** | GradCAM과 유사하나 2차 그래디언트(second order gradients)를 사용 |
+| **`high level`** | **XGradCAM** | GradCAM과 유사하나 정규화된 활성화로 그래디언트를 스케일링 |
+
+- **`aug_smooth`**: CAM을 평균화하기 전에 TTA(수평 뒤집기)를 적용 → 더 부드럽고 객체에 잘 정렬된 맵 생성
+- **`eigen_smooth`**: PCA 노이즈 제거를 적용 → 지배적인 위조 패턴만 유지
+
+### 💡 딥페이크 XAI 사용법
+
+**Low-Level 브랜치 — 국부적 아티팩트 탐지**
+
+```python
+from explainability import HiResCAMExplainer, GradCAMElementWiseExplainer, LayerCAMExplainer
+
+explainer = HiResCAMExplainer(
+ model_name = "ms_eff_gcvit_b0", # ms_eff_vit_b0, ms_eff_gcvit_b5, ms_eff_vit_b5 중 선택
+ dataset = "celeb_df_v2", # ff++, kodf 중 선택
+ branch_level = "low",
+)
+```
+
+**High-Level 브랜치 — 전역 의미 구조 탐지**
+```python
+from explainability import EigenGradCAMExplainer, GradCAMPlusPlusExplainer, XGradCAMExplainer
+
+explainer = EigenGradCAMExplainer(
+ model_name = "ms_eff_gcvit_b0",
+ dataset = "celeb_df_v2",
+ branch_level = "high",
+)
+```
+
+### 🎨 시각화 모드
+
+
+
+
+
+**1. Heatmap — 연속적인 활성화 분포**
+
+```python
+result = explainer.display_heatmap_on_image(
+ img_path = "path/to/image.jpg",
+ category = 1, # 0: Real, 1: Fake
+ threshold = 0.5, # 이진화 컷오프 (0.5~1.0), 또는 Otsu 자동 임계값은 "auto"
+ image_weight = 0.5, # 0.0: 히트맵만 ← → 1.0: 원본만
+ aug_smooth = False, # TTA 스무딩 ('pro' 모델은 미지원)
+ eigen_smooth = False, # PCA 노이즈 제거
+)
+```
+
+**2. Bounding Box — 이산적인 위조 영역 지역화**
+
+```python
+result = explainer.display_bbox_on_image(
+ img_path = "path/to/image.jpg",
+ category = 1,
+ threshold = 0.5,
+ thickness = 1,
+ aug_smooth = False,
+ eigen_smooth = False,
+)
+```
+
+**3. Heatmap + BBox — 통합 오버레이 (리포팅 시 권장)**
+```python
+result = explainer.display_heatmap_bbox_on_image(
+ img_path = "path/to/image.jpg",
+ category = 1,
+ threshold = 0.5,
+ image_weight = 0.5,
+ aug_smooth = False,
+ eigen_smooth = False,
+)
+```
+
+### 📊 시각화 결과
+
+
+
+
+
+
+
+
+
+
+
+
+#### MS-EFF-VIT — Low-Level Branch
+
+| Model | Branch-Level | Image | HiresCam | GradCamElementwise | LayerCam |
+| :--- | :---: | :---: | :---: | :---: | :---: |
+| **⚡ ms-eff-vit-b0** |  | | | | |
+| **🔥 ms-eff-vit-b5** |  | | | | |
+
+#### MS-Eff-ViT — High-Level Branch
+
+| Model | Branch-Level | Image | EigenGradCam | GradCamPlusPlus | XGradCam |
+| :--- | :---: | :---: | :---: | :---: | :---: |
+| **⚡ ms-eff-vit-b0** |  | | | | |
+| **🔥 ms-eff-vit-b5** |  | | | | |
+
+#### MS-EFF-GCVIT — Low-Level Branch
+
+| Model | Branch-Level | Image | HiresCam | GradCamElementwise | LayerCam |
+| :--- | :---: | :---: | :---: | :---: | :---: |
+| **⚡ ms-eff-gcvit-b0** |  | | | | |
+| **🔥 ms-eff-gcvit-b5** |  | | | | |
+
+#### MS-Eff-GCViT — High-Level Branch
+
+| Model | Branch-Level | Image | EigenGradCam | GradCamPlusPlus | XGradCam |
+| :--- | :---: | :---: | :---: | :---: | :---: |
+| **⚡ ms-eff-gcvit-b0** |  | | | | |
+| **🔥 ms-eff-gcvit-b5** |  | | | | |
+
## 📬 제작자
@@ -310,11 +474,11 @@ _**본 프로젝트는 충북대학교(CBNU) 소프트웨어학부 졸업 작품
2. [`face-cutout`](https://github.com/sowmen/face-cutout) - _Sowmen의 Face Cutout 라이브러리_
3. [`Celeb-DF++`](https://github.com/OUC-VAS/Celeb-DF-PP) - _OUC-VAS Group의 Celeb-DF++ 데이터셋_
4. [`DeeperForensics-1.0`](https://github.com/EndlessSora/DeeperForensics-1.0) - _Endless Sora의 DeeperForensics-1.0 데이터셋_
-5. [`Deepfake Detection`](https://github.com/abhijithjadhav/Deepfake_detection_using_deep_learning) - _Abhijith Jadhav의 ResNext와 LSTM을 이용한 딥페이크 탐지_
-6. [`deepfake-detection-project-v4`](https://github.com/ameencaslam/deepfake-detection-project-v4) - _Ameen Caslam의 다양한 딥러닝 모델들_
-7. [`Awesome-Deepfake-Detection`](https://github.com/Daisy-Zhang/Awesome-Deepfakes-Detection
-) - _Daisy Zhang이 정리한 도구, 논문 및 코드 리스트_
+5. [`Deepfake Detection`](https://github.com/abhijithjadhav/Deepfake_detection_using_deep_learning) - _Abhijith Jadhav의 ResNext와 LSTM을 이용한 비디오 딥페이크 탐지_
+6. [`deepfake-detection-project-v4`](https://github.com/ameencaslam/deepfake-detection-project-v4) - _Ameen Caslam의 다중 딥러닝 모델_
+7. [`Awesome-Deepfake-Detection`](https://github.com/Daisy-Zhang/Awesome-Deepfakes-Detection) - _Daisy Zhang이 정리한 도구, 논문, 코드 큐레이션 목록_
+8. [`Pytorch-Grad-Cam`](https://github.com/jacobgil/pytorch-grad-cam) - _PyTorch 모델을 위한 고급 시각적 설명 도구_
## ⚖️ 라이선스
-본 프로젝트는 MIT 라이선스의 규정에 따라 라이선스가 부여됩니다.
\ No newline at end of file
+본 프로젝트는 MIT 라이선스 조건에 따라 배포됩니다.
\ No newline at end of file
diff --git a/Videos/display_img.py b/Videos/display_img.py
deleted file mode 100644
index e412e12..0000000
--- a/Videos/display_img.py
+++ /dev/null
@@ -1,46 +0,0 @@
-import os
-import argparse
-import cv2
-
-# -------------------------------
-# Display specific frame
-# -------------------------------
-def display_img(video_path: str, frame_number: int) -> None:
- cap = cv2.VideoCapture(video_path)
- if not cap.isOpened():
- raise FileNotFoundError(f"Could not open video file: {video_path}")
-
- total_frames = int(cap.get(cv2.CAP_PROP_FRAME_COUNT))
- if frame_number < 1 or frame_number > total_frames:
- cap.release()
- raise ValueError(f"Frame number {frame_number} is out of range (1-{total_frames})")
-
- cap.set(cv2.CAP_PROP_POS_FRAMES, frame_number - 1)
- ret, frame = cap.read()
- cap.release()
- if not ret or frame is None:
- raise RuntimeError(f"Failed to read frame {frame_number} from {video_path}")
-
- cv2.imshow(f"Frame {frame_number}/{total_frames}", frame)
- print("Press any key to close window...")
- cv2.waitKey(0)
- cv2.destroyAllWindows()
-
-# -------------------------------
-# Main
-# -------------------------------
-def main():
- parser = argparse.ArgumentParser(description="Play a video or display a specific frame")
- parser.add_argument("--video_path", type=str, required=True, help="Path to video file")
- parser.add_argument("--frame", type=int, default=1, help="Frame number in Video")
-
- args = parser.parse_args()
- print(args)
-
- if not os.path.exists(args.video_path):
- raise FileNotFoundError(f"Video file not found: {args.video_path}")
-
- display_img(args.video_path, args.frame)
-
-if __name__ == "__main__":
- main()
diff --git a/Videos/display_video.py b/Videos/display_video.py
deleted file mode 100644
index bbdab81..0000000
--- a/Videos/display_video.py
+++ /dev/null
@@ -1,67 +0,0 @@
-import os
-import argparse
-import cv2
-
-# -------------------------------
-# Display whole video
-# -------------------------------
-
-## cv2.CAP_PROP_FPS: Video Frame per Second
-## cv2.CAP_PROP_FRAME_COUNT: Video Total Frames
-## cv2.CAP_PROP_FRAME_HEIGHT: Frame Height
-## cv2.CAP_PROP_FRAME_WIDTH: Frame Width
-
-def display_video(video_path: str, resize_width: int = None) -> None:
- cap = cv2.VideoCapture(video_path)
- if not cap.isOpened():
- raise FileNotFoundError(f"Could not open video file: {video_path}")
-
- fps = cap.get(cv2.CAP_PROP_FPS)
- total_frames = int(cap.get(cv2.CAP_PROP_FRAME_COUNT))
- delay = int(1000 / fps) if fps > 0 else 30
-
- h = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT))
- w = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH))
-
- print(f"🎬 Playing video: {video_path}")
- print(f"📸 FPS: {fps:.2f}, Total_Frames: {total_frames}, Delay: {delay}ms")
- print(f"📸 Frame Width: {w}, Frame Height: {h}")
- print("Press 'q' to stop playback.")
-
- while True:
- ret, frame = cap.read()
- if not ret:
- print("✅ Video playback finished.")
- break
-
- if resize_width is not None:
- new_h = int(resize_width * h / w)
- frame = cv2.resize(frame, (resize_width, new_h))
-
- cv2.imshow("Video Playback", frame)
-
- if cv2.waitKey(delay) & 0xFF == ord('q'):
- print("🛑 Video stopped by user.")
- break
-
- cap.release()
- cv2.destroyAllWindows()
-
-# -------------------------------
-# Main
-# -------------------------------
-def main():
- parser = argparse.ArgumentParser(description="Play a video or display a specific frame")
- parser.add_argument("--video_path", type=str, required=True, help="Path to video file")
- parser.add_argument("--width", type=int, default=None, help="Resize width (optional, used only in 'video' mode')")
- args = parser.parse_args()
-
- print(args)
-
- if not os.path.exists(args.video_path):
- raise FileNotFoundError(f"Video file not found: {args.video_path}")
-
- display_video(args.video_path, args.width)
-
-if __name__ == "__main__":
- main()
diff --git a/Videos/sample1.mp4 b/Videos/sample1.mp4
deleted file mode 100644
index 6dd65e4..0000000
Binary files a/Videos/sample1.mp4 and /dev/null differ
diff --git a/Videos/sample2.mp4 b/Videos/sample2.mp4
deleted file mode 100644
index d9abaca..0000000
Binary files a/Videos/sample2.mp4 and /dev/null differ
diff --git a/Videos/sample3.mp4 b/Videos/sample3.mp4
deleted file mode 100644
index 3db3330..0000000
Binary files a/Videos/sample3.mp4 and /dev/null differ
diff --git a/client/package.json b/client/package.json
index 04bacdc..0c94b5d 100644
--- a/client/package.json
+++ b/client/package.json
@@ -37,5 +37,8 @@
"last 1 firefox version",
"last 1 safari version"
]
+ },
+ "devDependencies": {
+ "http-proxy-middleware": "^3.0.5"
}
}
diff --git a/client/public/samples/images/asian_fake_1.JPG b/client/public/samples/images/asian_fake_1.JPG
new file mode 100644
index 0000000..c835a50
Binary files /dev/null and b/client/public/samples/images/asian_fake_1.JPG differ
diff --git a/client/public/samples/images/asian_fake_2.JPG b/client/public/samples/images/asian_fake_2.JPG
new file mode 100644
index 0000000..2e5cb74
Binary files /dev/null and b/client/public/samples/images/asian_fake_2.JPG differ
diff --git a/Images/deepfake/image/western_fake_1.JPG b/client/public/samples/images/western_fake_1.JPG
similarity index 100%
rename from Images/deepfake/image/western_fake_1.JPG
rename to client/public/samples/images/western_fake_1.JPG
diff --git a/Images/deepfake/image/western_fake_2.JPG b/client/public/samples/images/western_fake_2.JPG
similarity index 100%
rename from Images/deepfake/image/western_fake_2.JPG
rename to client/public/samples/images/western_fake_2.JPG
diff --git a/client/public/samples/videos/western_fake.mp4 b/client/public/samples/videos/western_fake.mp4
new file mode 100644
index 0000000..9b6acc0
Binary files /dev/null and b/client/public/samples/videos/western_fake.mp4 differ
diff --git a/client/public/samples/videos/western_real.mp4 b/client/public/samples/videos/western_real.mp4
new file mode 100644
index 0000000..05de891
Binary files /dev/null and b/client/public/samples/videos/western_real.mp4 differ
diff --git a/client/src/App.js b/client/src/App.js
index c708ca9..bb727dc 100644
--- a/client/src/App.js
+++ b/client/src/App.js
@@ -8,8 +8,11 @@ import RegisterPage from './pages/signuppage';
import AnalysisPage from './pages/analysispage';
import AnalysisDetailPage from './pages/AnalysisDetailPage';
import VideoAnalysisPage from './pages/VideoAnalysisPage';
+import VideoTimelinePage from './pages/VideoTimelinePage';
+import HeatmapPage from './pages/HeatmapPage';
+import ImageHeatmapPage from './pages/ImageHeatmapPage';
+
-axios.defaults.withCredentials = true;
function App() {
const [sessionUser, setSessionUser] = useState(null);
@@ -19,7 +22,6 @@ function App() {
const checkSession = async () => {
try {
const response = await axios.get('/auth/check');
-
if (response.data && response.data.user) {
setSessionUser(response.data.user);
}
@@ -42,6 +44,7 @@ function App() {
} />
+
} />
} />
@@ -49,6 +52,14 @@ function App() {
} />
} />
+
+ } />
+
+ } />
+
+ } />
+
+ } />
} />
} />
diff --git a/client/src/index.js b/client/src/index.js
index 198f664..58fd27e 100644
--- a/client/src/index.js
+++ b/client/src/index.js
@@ -6,7 +6,8 @@ import reportWebVitals from './reportWebVitals';
import axios from 'axios';
axios.defaults.withCredentials = true;
-axios.defaults.baseURL = process.env.REACT_APP_API_URL;
+axios.defaults.baseURL = '/api';
+axios.defaults.headers.common['ngrok-skip-browser-warning'] = 'true';
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(
diff --git a/client/src/pages/AnalysisDetailPage.js b/client/src/pages/AnalysisDetailPage.js
index bdc6c08..cbc7546 100644
--- a/client/src/pages/AnalysisDetailPage.js
+++ b/client/src/pages/AnalysisDetailPage.js
@@ -1,22 +1,61 @@
-import React from 'react';
+import React, { useState, useEffect } from 'react';
import { useLocation, useNavigate } from 'react-router-dom';
-const apiUrl = process.env.REACT_APP_API_URL;
+import axios from 'axios';
+
const AnalysisDetailPage = ({ sessionUser }) => {
- const { state: data } = useLocation();
+ const { state } = useLocation();
const navigate = useNavigate();
- if (!data) return 데이터를 찾을 수 없습니다.
;
+ const [data, setData] = useState(null);
+ const [loading, setLoading] = useState(true);
- /* 수치 추출 로직(백엔드 DB에서 사용하는 컬럼명과 API 응답 객체 이름을 모두 매핑하기) */
- const prob = data.prob ?? data.score ?? data.analysis?.prob ?? -1;
-
- // 백엔드 DB 컬럼명인 face_conf, face_ratio, face_brightness 최우선으로 체크
+ useEffect(() => {
+ const fetchDetail = async () => {
+ const imageId = state?.image_id;
+ const videoId = state?.video_id;
+
+ if (!imageId && !videoId) { setLoading(false); return; }
+
+ try {
+ if (imageId) {
+ const res = await axios.get(`/image/history/${imageId}`);
+ setData(res.data.context);
+ } else {
+ const res = await axios.get(`/video/history/${videoId}`);
+ setData(res.data.context);
+ }
+ } catch (e) {
+ console.error("상세 조회 실패", e);
+ } finally {
+ setLoading(false);
+ }
+ };
+ fetchDetail();
+ }, [state]);
+
+ if (loading) {
+ return (
+
+ );
+ }
+
+ if (!data) {
+ return (
+
+
분석 데이터를 찾을 수 없거나 비정상적인 접근입니다.
+
navigate(-1)} style={{ padding: '10px 20px', backgroundColor: '#1A2C50', color: '#39FF14', border: 'none', borderRadius: '8px', cursor: 'pointer', fontWeight: 'bold' }}>돌아가기
+
+ );
+ }
+
+ const prob = data.prob ?? data.score ?? data.analysis?.prob ?? data.result_prob ?? -1;
const face_conf = data.face_conf ?? data.face_confidence ?? data.conf ?? data.analysis?.face_conf ?? 0;
const face_ratio = data.face_ratio ?? data.ratio ?? data.analysis?.face_ratio ?? 0;
const face_brightness = data.face_brightness ?? data.brightness ?? data.analysis?.face_brightness ?? 0;
- // 라벨 결정 로직
let label = 'UNKNOWN';
if (data.label && data.label !== 'UNKNOWN') {
label = data.label.toUpperCase();
@@ -24,80 +63,169 @@ const AnalysisDetailPage = ({ sessionUser }) => {
label = prob > 0.5 ? 'FAKE' : 'REAL';
}
- // 확률이 -1인 경우 (데이터 로드 실패) N/A 표시를 위해 isInvalid 설정
const isInvalid = prob === -1;
const displayProb = isInvalid ? 'N/A' : (Number(prob) * 100).toFixed(1) + '%';
const brightnessColor = face_brightness < 20 ? '#FF4B4B' : '#39FF14';
const ratioColor = face_ratio >= 3 ? '#39FF14' : '#FF4B4B';
- const mediaLoc = data.video_loc || data.image_loc || '';
- const isVideo = !!data.video_loc || (data.score !== undefined && !data.image_loc);
+ const mediaLoc = data.video_loc || data.media_loc || data.image_loc || '';
+ const mediaSrc = mediaLoc.startsWith('blob') ? mediaLoc : mediaLoc;
+ const isVideo = !!data.video_loc || (data.score !== undefined && !data.image_loc) || window.location.pathname.includes('video');
+
+ const isWarning = data.status?.toUpperCase() === 'WARNING';
+
+ const handleImageHeatmap = () => {
+ if (!sessionUser) {
+ alert("로그인이 필요한 기능이에요.");
+ return;
+ }
+
+ navigate('/image-heatmap', {
+ state: {
+ image_id: data.image_id,
+ image_loc: data.image_loc,
+ model_type: data.model_type || 'fast',
+ prob,
+ label,
+ },
+ });
+ };
+
+ const handleVideoHeatmap = () => {
+ if (!sessionUser) {
+ alert("로그인이 필요한 기능이에요.");
+ return;
+ }
+ navigate('/video-timeline', {
+ state: {
+ ...data
+ }
+ });
+ };
+
return (
-
+
+
+ {/* 상단 네비게이션 헤더 바 */}
-
+
navigate(-1)} style={{ color: '#888', background: 'none', border: 'none', cursor: 'pointer', fontSize: '16px', display: 'flex', alignItems: 'center', gap: '8px', marginRight: '20px' }}>
← 뒤로가기
-
- {data.version_type?.toUpperCase() || 'V1'}
-
-
- {data.domain_type || '서양인'}
-
+ {data.version_type?.toUpperCase() || 'V1'}
+ {data.domain_type || '서양인'}
+ {data.model_type?.toUpperCase() || 'FAST'}
- {sessionUser && (
-
- 분석 담당: {sessionUser.name}
-
- )}
-
-
- {/* 비디오 결과이면서 video_loc가 있을 경우 비디오 태그, 그 외엔 이미지 태그 */}
- {data.score !== undefined && data.image_loc ? (
-
- ) : (
-
{ e.target.src = 'https://via.placeholder.com/600x400?text=No+Image'; }}
- />
+ {/* 2분할 메인 그리드 레이아웃 */}
+
+
+ {/* 왼쪽 섹션: 미디어 플레이어 전용 배치 존 */}
+
+
+ {isVideo && mediaLoc ? (
+
+ ) : mediaLoc ? (
+
{ e.target.src = 'https://via.placeholder.com/600x400?text=No+Image'; }} />
+ ) : (
+
미디어가 존재하지 않습니다.
+ )}
+
+
+ {isVideo && mediaLoc && (
+
{ e.target.style.backgroundColor = 'rgba(57, 255, 20, 0.06)'; e.target.style.borderColor = '#39FF14'; e.target.style.boxShadow = '0 0 15px rgba(57, 255, 20, 0.15)'; }}
+ onMouseLeave={(e) => { e.target.style.backgroundColor = 'transparent'; e.target.style.borderColor = 'rgba(57, 255, 20, 0.4)'; e.target.style.boxShadow = '0 2px 8px rgba(57, 255, 20, 0.05)'; }}
+ >
+ 비디오 위조 흔적 분석하기
+
+ )}
+
+ {!isVideo && mediaLoc && !isWarning && (
+
{ e.target.style.backgroundColor = 'rgba(57, 255, 20, 0.06)'; e.target.style.borderColor = '#39FF14'; e.target.style.boxShadow = '0 0 15px rgba(57, 255, 20, 0.15)'; }}
+ onMouseLeave={(e) => { e.target.style.backgroundColor = 'transparent'; e.target.style.borderColor = 'rgba(57, 255, 20, 0.4)'; e.target.style.boxShadow = '0 2px 8px rgba(57, 255, 20, 0.05)'; }}
+ >
+ 이미지 위조 흔적 분석하기
+
)}
-
-
-
FINAL ANALYSIS
-
{label}
-
{displayProb}
-
+ {/* 오른쪽 섹션: 스코어 보드 or WARNING 메시지 */}
+
-
-
-
BRIGHTNESS
-
{Number(face_brightness).toFixed(1)}%
-
+ {isWarning ? (
+ // WARNING일 때 — 경고 메시지만, 꽉 채움
+
+
분석을 완료하지 못했어요
+
+ {data.result_msg}
+
-
-
FACE RATIO
-
{Number(face_ratio).toFixed(1)}%
-
-
-
-
MODEL CONFIDENCE
-
{Number(face_conf).toFixed(1)}%
-
-
+ ) : (
+ <>
+ {/* 종합 리포트 판정 카드 — flex:1로 남은 공간 채움 */}
+
+
FINAL ANALYSIS
+
+ {label}
+
+
+
FAKE 확률
+
{displayProb}
-
{data.message || (isInvalid ? "분석 데이터를 불러오지 못했습니다." : "정상 분석 리포트입니다.")}
-
-
+
+ {/* 보조 메트릭 — 작게 고정 높이 */}
+
+
DETAIL METRICS
+
+
+ {/* BRIGHTNESS */}
+
+
+ 얼굴 밝기
+ {Number(face_brightness).toFixed(1)}%
+
+
+
+
+ {/* FACE RATIO */}
+
+
+ 얼굴 비율
+ {Number(face_ratio).toFixed(1)}%
+
+
+
+
+ {/* MODEL CONFIDENCE */}
+
+ 모델 신뢰도
+ {Number(face_conf).toFixed(1)}%
+
+
+
+
+
+ >
+ )}
+
);
diff --git a/client/src/pages/HeatmapPage.js b/client/src/pages/HeatmapPage.js
new file mode 100644
index 0000000..33b87a8
--- /dev/null
+++ b/client/src/pages/HeatmapPage.js
@@ -0,0 +1,306 @@
+import React, { useState, useEffect, useRef } from 'react';
+import { useLocation, useNavigate } from 'react-router-dom';
+import axios from 'axios';
+
+
+const POLL_INTERVAL = 2000;
+
+const BRANCH_OPTIONS = {
+ low: { branch_level: 'low', explainer_type: 'layercam', display_type: 'heatmap_bbox', overlay_ratio: 0.7, threshold: 0.9 },
+ high: { branch_level: 'high', explainer_type: 'eigengradcam', display_type: 'heatmap_bbox', overlay_ratio: 0.7, threshold: 0.9 },
+};
+const MODEL_OPTIONS = ['fast', 'pro'];
+
+const extractTaskId = (data) => {
+ if (typeof data === 'string') return data;
+ return data?.task_id || data?.id || null;
+};
+const toAbsoluteUrl = (path) => {
+ if (!path) return null;
+ if (path.startsWith('http') || path.startsWith('blob')) return path;
+ return path;
+};
+
+const HeatmapPage = ({ sessionUser }) => {
+ const { state } = useLocation();
+ const navigate = useNavigate();
+ const { video_id, frame_index, timestamp, fake_score, model_type, video_name } = state || {};
+
+ const [tempBranch, setTempBranch] = useState('low');
+ const [tempModel, setTempModel] = useState(model_type || 'fast');
+ const [selectedBranch, setSelectedBranch] = useState(null);
+ const [selectedModel, setSelectedModel] = useState(null);
+ const [status, setStatus] = useState('idle');
+ const [heatmapSrc, setHeatmapSrc] = useState(null);
+ const [, setTaskId] = useState(null);
+ const [errorMsg, setErrorMsg] = useState('');
+ const [errorDetail, setErrorDetail] = useState('');
+ const [elapsed, setElapsed] = useState(0);
+
+ const pollingRef = useRef(null);
+ const timerRef = useRef(null);
+ const isMounted = useRef(true);
+
+ useEffect(() => {
+ isMounted.current = true;
+ return () => { isMounted.current = false; stopPolling(); clearInterval(timerRef.current); };
+ }, []);
+
+ const stopPolling = () => {
+ if (pollingRef.current) { clearInterval(pollingRef.current); pollingRef.current = null; }
+ };
+
+ const handleBranchSelect = (branch, m) => {
+ setSelectedBranch(branch);
+ setSelectedModel(m);
+ setTempBranch(branch);
+ setTempModel(m);
+ requestHeatmap(branch, m);
+ };
+
+ const requestHeatmap = async (branch, m) => {
+ if (video_id == null) { setErrorMsg('video_id가 없습니다.'); setStatus('error'); return; }
+ stopPolling();
+ clearInterval(timerRef.current);
+ setElapsed(0);
+ setStatus('submitting');
+ setHeatmapSrc(null);
+ setErrorMsg('');
+ setErrorDetail('');
+ setTaskId(null);
+
+ const body = { model_type: m, ...BRANCH_OPTIONS[branch] };
+
+ try {
+ const res = await axios.post(`/explain/video/${video_id}/frame/${frame_index ?? 0}`, body);
+ const tid = extractTaskId(res.data);
+ if (!tid) throw new Error(`task_id 추출 실패. 응답: ${JSON.stringify(res.data)}`);
+ setTaskId(tid);
+ setStatus('polling');
+ timerRef.current = setInterval(() => setElapsed(p => p + 1), 1000);
+ startPolling(tid);
+ } catch (e) {
+ if (!isMounted.current) return;
+ const detail = e.response?.data?.detail;
+ let msg;
+ if (Array.isArray(detail)) msg = detail.map(d => `[${d.loc?.join('.')}] ${d.msg} (입력값: ${JSON.stringify(d.input)})`).join(' / ');
+ else if (typeof detail === 'string') msg = detail;
+ else if (e.response?.data) msg = JSON.stringify(e.response.data);
+ else msg = e.message || '요청 실패';
+ setErrorMsg(`히트맵 생성 요청 실패 (${e.response?.status ?? ''})`);
+ setErrorDetail(msg);
+ setStatus('error');
+ }
+ };
+
+ const startPolling = (tid) => {
+ let cnt = 0;
+ pollingRef.current = setInterval(async () => {
+ if (!isMounted.current) return;
+ try {
+ const res = await axios.get(`/explain/frame/result/${tid}`);
+ cnt = 0;
+ const d = res.data;
+ if (d === null || d === undefined) return;
+ let loc = null;
+ if (typeof d === 'string' && d.trim()) {
+ const isUUID = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(d.trim());
+ if (!isUUID) loc = d.trim();
+ } else if (typeof d === 'object') {
+ loc = d.cam_loc ?? d.result_loc ?? d.image_loc ?? d.heatmap_loc ?? d.file_loc ?? d.result_path ?? d.path ?? d.url ?? d.output_path ?? null;
+ if (!loc) {
+ const st = (d.status || '').toUpperCase();
+ if (st === 'FAILED' || st === 'ERROR') { stopPolling(); clearInterval(timerRef.current); setErrorMsg('히트맵 생성 실패'); setErrorDetail(d.result_msg || d.message || '서버 오류'); setStatus('error'); return; }
+ return;
+ }
+ }
+ if (loc) { stopPolling(); clearInterval(timerRef.current); setHeatmapSrc(toAbsoluteUrl(loc)); setStatus('done'); }
+ } catch (e) {
+ cnt++;
+ if (cnt >= 5) { stopPolling(); clearInterval(timerRef.current); setErrorMsg('서버 연결 실패'); setErrorDetail(e.message); setStatus('error'); }
+ }
+ }, POLL_INTERVAL);
+ };
+
+ const isFake = (fake_score ?? 0) > 50;
+ const isProcessing = status === 'submitting' || status === 'polling';
+
+ if (!state) return (
+
+
전송된 프레임 데이터가 없습니다.
+
navigate(-1)} style={{ marginLeft: '15px', padding: '8px 16px', backgroundColor: '#1A2C50', color: '#39FF14', border: 'none', borderRadius: '6px', cursor: 'pointer' }}>뒤로가기
+
+ );
+
+ return (
+
+
+
+
+
+
+
+ {/* 헤더 */}
+
+
+ {/* 스탯 바 */}
+
+ {[
+ { label: 'VIDEO', value: video_name || `ID_${video_id}`, color: '#fff' },
+ { label: 'TIMESTAMP', value: timestamp || `#${frame_index}`, color: '#39FF14', big: true },
+ { label: 'FRAME INDEX', value: `#${frame_index ?? 0}`, color: '#fff' },
+ { label: 'FORGERY RISK', value: `${Number(fake_score ?? 0).toFixed(1)}%`, color: isFake ? '#FF4B4B' : '#39FF14', big: true },
+ { label: 'VERDICT', value: isFake ? 'FAKE' : 'REAL', color: isFake ? '#FF4B4B' : '#39FF14', big: true },
+ ].map((item, i) => (
+
+
+
{item.label}
+
{item.value}
+
+ ))}
+
+
+ {/* 히트맵 패널 */}
+
+ {isProcessing &&
}
+
+
+
+
+
HEATMAP + BBOX OVERLAY
+ {selectedBranch &&
{selectedBranch.toUpperCase()} / {(selectedModel || '').toUpperCase()} }
+
+
+ {isProcessing &&
{elapsed}s }
+ {status === 'done' && heatmapSrc && (
+
+ ↓ SAVE
+
+ )}
+
+
+
+
+
+ {/* 옵션 선택 */}
+ {(status === 'idle' || status === 'error') && !isProcessing && (
+
+ {status === 'error' && (
+
+
⚠
+
{errorMsg}
+ {errorDetail &&
{errorDetail}
}
+
+ )}
+
+ {/* Branch */}
+
BRANCH LEVEL
+
+ {Object.keys(BRANCH_OPTIONS).map(branch => (
+ setTempBranch(branch)}
+ style={{ padding: '12px 36px', backgroundColor: tempBranch === branch ? 'rgba(57,255,20,0.08)' : 'transparent', border: `1px solid ${tempBranch === branch ? '#39FF14' : '#333'}`, borderRadius: '8px', color: tempBranch === branch ? '#39FF14' : '#999', fontSize: '13px', fontWeight: 'bold', letterSpacing: '1px', cursor: 'pointer', transition: 'all 0.15s', textTransform: 'uppercase' }}>
+ {branch}
+
+ {branch === 'low' ? '국소 흔적' : '전역 구조'}
+
+
+ ))}
+
+
+ {/* Model */}
+
MODEL TYPE
+
+ {MODEL_OPTIONS.map(m => (
+ setTempModel(m)}
+ style={{ padding: '12px 36px', backgroundColor: tempModel === m ? 'rgba(57,255,20,0.08)' : 'transparent', border: `1px solid ${tempModel === m ? '#39FF14' : '#333'}`, borderRadius: '8px', color: tempModel === m ? '#39FF14' : '#999', fontSize: '13px', fontWeight: 'bold', letterSpacing: '1px', cursor: 'pointer', transition: 'all 0.15s', textTransform: 'uppercase' }}>
+ {m}
+
+ ))}
+
+
+
handleBranchSelect(tempBranch, tempModel)}
+ style={{ padding: '14px 56px', backgroundColor: '#1A2C50', border: '1px solid #2A4C80', borderRadius: '10px', color: '#fff', fontSize: '14px', fontWeight: 'bold', letterSpacing: '2px', cursor: 'pointer', transition: 'all 0.2s' }}
+ onMouseEnter={e => { e.currentTarget.style.backgroundColor = '#243870'; }}
+ onMouseLeave={e => { e.currentTarget.style.backgroundColor = '#1A2C50'; }}>
+ GENERATE
+
+
+ )}
+
+ {/* 로딩 */}
+ {isProcessing && (
+
+
+
GENERATING HEATMAP
+
프레임 위조 흔적 시각화 처리 중...
+
{(selectedBranch || tempBranch || '').toUpperCase()} BRANCH · {(selectedModel || tempModel || '').toUpperCase()} MODEL
+
{elapsed}s elapsed
+
+ )}
+
+ {/* 결과 */}
+ {status === 'done' && heatmapSrc && (
+
+
+
+ ✓ {(selectedBranch || '').toUpperCase()} / {(selectedModel || '').toUpperCase()}
+
+
{ e.target.style.display = 'none'; setErrorMsg('이미지 로드 실패'); setErrorDetail(`URL: ${heatmapSrc}`); setStatus('error'); }}
+ />
+
+ {/* 재선택 */}
+
+ {Object.keys(BRANCH_OPTIONS).flatMap(branch => MODEL_OPTIONS.map(m => ({ branch, m }))).map(({ branch, m }) => (
+ handleBranchSelect(branch, m)}
+ style={{ padding: '6px 14px', backgroundColor: (selectedBranch === branch && selectedModel === m) ? 'rgba(57,255,20,0.1)' : 'transparent', border: `1px solid ${(selectedBranch === branch && selectedModel === m) ? '#39FF14' : '#2A2A2A'}`, borderRadius: '6px', color: (selectedBranch === branch && selectedModel === m) ? '#39FF14' : '#999', fontSize: '10px', fontWeight: 'bold', cursor: 'pointer', letterSpacing: '1px', transition: 'all 0.15s' }}>
+ {branch.toUpperCase()} / {m.toUpperCase()}
+
+ ))}
+
+
+ )}
+
+ {status === 'done' && !heatmapSrc && (
+
+
결과 이미지를 받지 못했습니다.
+
requestHeatmap(selectedBranch, selectedModel)} style={{ padding: '10px 24px', backgroundColor: 'transparent', color: '#39FF14', border: '1px solid rgba(57,255,20,0.4)', borderRadius: '8px', cursor: 'pointer', fontSize: '13px', fontWeight: 'bold' }}>재시도
+
+ )}
+
+
+
+
+
+
+ );
+};
+
+export default HeatmapPage;
\ No newline at end of file
diff --git a/client/src/pages/ImageHeatmapPage.js b/client/src/pages/ImageHeatmapPage.js
new file mode 100644
index 0000000..41f1231
--- /dev/null
+++ b/client/src/pages/ImageHeatmapPage.js
@@ -0,0 +1,323 @@
+import React, { useState, useEffect, useRef } from 'react';
+import { useLocation, useNavigate } from 'react-router-dom';
+import axios from 'axios';
+
+const POLL_INTERVAL = 2000;
+
+const BRANCH_OPTIONS = {
+ low: { branch_level: 'low', explainer_type: 'layercam', display_type: 'heatmap_bbox', overlay_ratio: 0.7, threshold: 0.9 },
+ high: { branch_level: 'high', explainer_type: 'eigengradcam', display_type: 'heatmap_bbox', overlay_ratio: 0.7, threshold: 0.9 },
+};
+const MODEL_OPTIONS = ['fast', 'pro'];
+
+const extractTaskId = (data) => {
+ if (typeof data === 'string') return data;
+ return data?.task_id || data?.id || null;
+};
+const toAbsoluteUrl = (path) => {
+ if (!path) return null;
+ if (path.startsWith('http') || path.startsWith('blob')) return path;
+ return path;
+};
+
+const ImageHeatmapPage = ({ sessionUser }) => {
+ const { state } = useLocation();
+ const navigate = useNavigate();
+ const { image_id, image_loc, model_type, prob, label } = state || {};
+
+ const [tempBranch, setTempBranch] = useState('low');
+ const [tempModel, setTempModel] = useState(model_type || 'fast');
+ const [selectedBranch, setSelectedBranch] = useState(null);
+ const [selectedModel, setSelectedModel] = useState(null);
+ const [status, setStatus] = useState('idle');
+ const [heatmapSrc, setHeatmapSrc] = useState(null);
+ const [, setTaskId] = useState(null);
+ const [errorMsg, setErrorMsg] = useState('');
+ const [errorDetail, setErrorDetail] = useState('');
+ const [elapsed, setElapsed] = useState(0);
+
+ const pollingRef = useRef(null);
+ const timerRef = useRef(null);
+ const isMounted = useRef(true);
+
+ useEffect(() => {
+ isMounted.current = true;
+ return () => { isMounted.current = false; stopPolling(); clearInterval(timerRef.current); };
+ }, []);
+
+ const stopPolling = () => {
+ if (pollingRef.current) { clearInterval(pollingRef.current); pollingRef.current = null; }
+ };
+
+ const handleBranchSelect = (branch, m) => {
+ setSelectedBranch(branch);
+ setSelectedModel(m);
+ setTempBranch(branch);
+ setTempModel(m);
+ requestHeatmap(branch, m);
+ };
+
+ const requestHeatmap = async (branch, m) => {
+ if (image_id == null) { setErrorMsg('image_id가 없습니다.'); setStatus('error'); return; }
+ stopPolling();
+ clearInterval(timerRef.current);
+ setElapsed(0);
+ setStatus('submitting');
+ setHeatmapSrc(null);
+ setErrorMsg('');
+ setErrorDetail('');
+ setTaskId(null);
+
+ const body = { model_type: m, ...BRANCH_OPTIONS[branch] };
+
+ try {
+ const res = await axios.post(`/explain/image/${image_id}`, body);
+ const tid = extractTaskId(res.data);
+ if (!tid) throw new Error(`task_id 추출 실패. 응답: ${JSON.stringify(res.data)}`);
+ setTaskId(tid);
+ setStatus('polling');
+ timerRef.current = setInterval(() => setElapsed(p => p + 1), 1000);
+ startPolling(tid);
+ } catch (e) {
+ if (!isMounted.current) return;
+ const detail = e.response?.data?.detail;
+ let msg;
+ if (Array.isArray(detail)) msg = detail.map(d => `[${d.loc?.join('.')}] ${d.msg} (입력값: ${JSON.stringify(d.input)})`).join(' / ');
+ else if (typeof detail === 'string') msg = detail;
+ else if (e.response?.data) msg = JSON.stringify(e.response.data);
+ else msg = e.message || '요청 실패';
+ setErrorMsg(`히트맵 생성 요청 실패 (${e.response?.status ?? ''})`);
+ setErrorDetail(msg);
+ setStatus('error');
+ }
+ };
+
+ const startPolling = (tid) => {
+ let cnt = 0;
+ pollingRef.current = setInterval(async () => {
+ if (!isMounted.current) return;
+ try {
+ const res = await axios.get(`/explain/image/result/${tid}`);
+ cnt = 0;
+ const d = res.data;
+ if (d === null || d === undefined) return;
+ let loc = null;
+ if (typeof d === 'string' && d.trim()) {
+ const isUUID = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(d.trim());
+ if (!isUUID) loc = d.trim();
+ } else if (typeof d === 'object') {
+ loc = d.cam_loc ?? d.result_loc ?? d.image_loc ?? d.heatmap_loc ?? d.file_loc ?? d.result_path ?? d.path ?? d.url ?? d.output_path ?? null;
+ if (!loc) {
+ const st = (d.status || '').toUpperCase();
+ if (st === 'FAILED' || st === 'ERROR') { stopPolling(); clearInterval(timerRef.current); setErrorMsg('히트맵 생성 실패'); setErrorDetail(d.result_msg || d.message || '서버 오류'); setStatus('error'); return; }
+ return;
+ }
+ }
+ if (loc) { stopPolling(); clearInterval(timerRef.current); setHeatmapSrc(toAbsoluteUrl(loc)); setStatus('done'); }
+ } catch (e) {
+ cnt++;
+ if (cnt >= 5) { stopPolling(); clearInterval(timerRef.current); setErrorMsg('서버 연결 실패'); setErrorDetail(e.message); setStatus('error'); }
+ }
+ }, POLL_INTERVAL);
+ };
+
+ const isFake = (prob ?? 0) > 0.5;
+ const isProcessing = status === 'submitting' || status === 'polling';
+ const imageSrc = image_loc ? toAbsoluteUrl(image_loc) : null;
+
+ // 양쪽 패널 공통 미디어 스타일 — 표시 높이를 동일하게 고정해 좌우 대칭 유지
+ const mediaBoxStyle = { flex: 1, display: 'flex', justifyContent: 'center', alignItems: 'center', padding: '24px', minHeight: '440px' };
+ const mediaImgStyle = { maxWidth: '100%', height: '400px', borderRadius: '8px', objectFit: 'contain', boxShadow: '0 8px 32px rgba(0,0,0,0.6)' };
+
+ if (!state) return (
+
+
전송된 이미지 데이터가 없습니다.
+
navigate(-1)} style={{ marginLeft: '15px', padding: '8px 16px', backgroundColor: '#1A2C50', color: '#39FF14', border: 'none', borderRadius: '6px', cursor: 'pointer' }}>뒤로가기
+
+ );
+
+ return (
+
+
+
+
+
+
+
+ {/* 헤더 */}
+
+
+ {/* 스탯 바 */}
+
+ {[
+ { label: 'FAKE 확률', value: `${((prob ?? 0) * 100).toFixed(1)}%`, color: isFake ? '#FF4B4B' : '#39FF14', big: true },
+ { label: 'VERDICT', value: label || (isFake ? 'FAKE' : 'REAL'), color: isFake ? '#FF4B4B' : '#39FF14', big: true },
+ { label: 'MODEL', value: (selectedModel || model_type || 'fast').toUpperCase(), color: '#fff' },
+ ].map((item, i) => (
+
+
+
{item.label}
+
{item.value}
+
+ ))}
+
+
+ {/* 메인 2열 */}
+
+
+ {/* 원본 이미지 */}
+ {imageSrc && (
+
+
+
+
{ e.target.style.display = 'none'; }}
+ />
+
+
+ )}
+
+ {/* 히트맵 패널 */}
+
+ {isProcessing &&
}
+
+
+
+
+
HEATMAP + BBOX OVERLAY
+ {selectedBranch &&
{selectedBranch.toUpperCase()} / {(selectedModel || '').toUpperCase()} }
+
+
+ {isProcessing &&
{elapsed}s }
+ {status === 'done' && heatmapSrc && (
+
+ ↓ SAVE
+
+ )}
+
+
+
+
+
+ {/* 옵션 선택 */}
+ {(status === 'idle' || status === 'error') && !isProcessing && (
+
+ {status === 'error' && (
+
+
⚠
+
{errorMsg}
+ {errorDetail &&
{errorDetail}
}
+
+ )}
+
+ {/* Branch 선택 */}
+
BRANCH LEVEL
+
+ {Object.keys(BRANCH_OPTIONS).map(branch => (
+ setTempBranch(branch)}
+ style={{ padding: '12px 28px', backgroundColor: tempBranch === branch ? 'rgba(57,255,20,0.08)' : 'transparent', border: `1px solid ${tempBranch === branch ? '#39FF14' : '#333'}`, borderRadius: '8px', color: tempBranch === branch ? '#39FF14' : '#999', fontSize: '13px', fontWeight: 'bold', letterSpacing: '1px', cursor: 'pointer', transition: 'all 0.15s', textTransform: 'uppercase' }}>
+ {branch}
+
+ {branch === 'low' ? '국소 흔적' : '전역 구조'}
+
+
+ ))}
+
+
+ {/* Model 선택 */}
+
MODEL TYPE
+
+ {MODEL_OPTIONS.map(m => (
+ setTempModel(m)}
+ style={{ padding: '12px 28px', backgroundColor: tempModel === m ? 'rgba(57,255,20,0.08)' : 'transparent', border: `1px solid ${tempModel === m ? '#39FF14' : '#333'}`, borderRadius: '8px', color: tempModel === m ? '#39FF14' : '#999', fontSize: '13px', fontWeight: 'bold', letterSpacing: '1px', cursor: 'pointer', transition: 'all 0.15s', textTransform: 'uppercase' }}>
+ {m}
+
+ ))}
+
+
+ {/* 실행 버튼 */}
+
handleBranchSelect(tempBranch, tempModel)}
+ style={{ padding: '14px 52px', backgroundColor: '#1A2C50', border: '1px solid #2A4C80', borderRadius: '10px', color: '#fff', fontSize: '14px', fontWeight: 'bold', letterSpacing: '2px', cursor: 'pointer', transition: 'all 0.2s' }}
+ onMouseEnter={e => { e.currentTarget.style.backgroundColor = '#243870'; }}
+ onMouseLeave={e => { e.currentTarget.style.backgroundColor = '#1A2C50'; }}>
+ GENERATE
+
+
+ )}
+
+ {/* 로딩 */}
+ {isProcessing && (
+
+
+
GENERATING HEATMAP
+
위조 흔적 시각화 처리 중...
+
{(selectedBranch || tempBranch || '').toUpperCase()} BRANCH · {(selectedModel || tempModel || '').toUpperCase()} MODEL
+
{elapsed}s elapsed
+
+ )}
+
+ {/* 결과 */}
+ {status === 'done' && heatmapSrc && (
+
+
+
+ ✓ {(selectedBranch || '').toUpperCase()} / {(selectedModel || '').toUpperCase()}
+
+
{ e.target.style.display = 'none'; setErrorMsg('이미지 로드 실패'); setErrorDetail(`URL: ${heatmapSrc}`); setStatus('error'); }}
+ />
+
+ {/* 재선택 버튼 */}
+
+ {Object.keys(BRANCH_OPTIONS).flatMap(branch => MODEL_OPTIONS.map(m => ({ branch, m }))).map(({ branch, m }) => (
+ handleBranchSelect(branch, m)}
+ style={{ padding: '6px 14px', backgroundColor: (selectedBranch === branch && selectedModel === m) ? 'rgba(57,255,20,0.1)' : 'transparent', border: `1px solid ${(selectedBranch === branch && selectedModel === m) ? '#39FF14' : '#2A2A2A'}`, borderRadius: '6px', color: (selectedBranch === branch && selectedModel === m) ? '#39FF14' : '#999', fontSize: '10px', fontWeight: 'bold', cursor: 'pointer', letterSpacing: '1px', transition: 'all 0.15s' }}>
+ {branch.toUpperCase()} / {m.toUpperCase()}
+
+ ))}
+
+
+ )}
+
+ {status === 'done' && !heatmapSrc && (
+
+
결과 이미지를 받지 못했습니다.
+
requestHeatmap(selectedBranch, selectedModel)} style={{ padding: '10px 24px', backgroundColor: 'transparent', color: '#39FF14', border: '1px solid rgba(57,255,20,0.4)', borderRadius: '8px', cursor: 'pointer', fontSize: '13px', fontWeight: 'bold' }}>재시도
+
+ )}
+
+
+
+
+
+
+
+ );
+};
+
+export default ImageHeatmapPage;
\ No newline at end of file
diff --git a/client/src/pages/VideoAnalysisPage.js b/client/src/pages/VideoAnalysisPage.js
index 8d0b49e..6b6634e 100644
--- a/client/src/pages/VideoAnalysisPage.js
+++ b/client/src/pages/VideoAnalysisPage.js
@@ -2,28 +2,53 @@ import React, { useState, useEffect, useCallback, useRef } from 'react';
import { useNavigate } from 'react-router-dom';
import axios from 'axios';
-axios.defaults.withCredentials = true;
+// 예시 비디오 (public/samples/videos/ 하위에 실제 파일 배치 필요 / 파일명 다르면 이 배열만 수정)
+const SAMPLE_VIDEOS = [
+ { name: 'western_fake.mp4', src: '/samples/videos/western_fake.mp4', domain: 'western', label: '서양인 Fake' },
+ { name: 'western_real.mp4', src: '/samples/videos/western_real.mp4', domain: 'western', label: '서양인 Real' },
+];
const VideoAnalysisPage = ({ sessionUser, onLogout, setSessionUser }) => {
const navigate = useNavigate();
-
+
const [file, setFile] = useState(null);
const [previewUrl, setPreviewUrl] = useState(null);
const [isAnalyzing, setIsAnalyzing] = useState(false);
const [history, setHistory] = useState([]);
+
const [showOptions, setShowOptions] = useState(false);
const [isEditMode, setIsEditMode] = useState(false);
const [selectedIds, setSelectedIds] = useState([]);
+ const [selectedSample, setSelectedSample] = useState(null);
+
+ const [versionType, setVersionType] = useState('v2');
+ const [modelType, setModelType] = useState('fast');
+ const [domainType, setDomainType] = useState('western');
- const [versionType, setVersionType] = useState('v1');
- const [modelType, setModelType] = useState('fast');
- const [domainType, setDomainType] = useState('western');
const [result, setResult] = useState(null);
const [statusMessage, setStatusMessage] = useState('');
+ const [isSidebarOpen, setIsSidebarOpen] = useState(true);
+
const pollingTimer = useRef(null);
const isMounted = useRef(true);
+ const sideBarStyle = {
+ width: isSidebarOpen ? '280px' : '0',
+ backgroundColor: '#050505',
+ borderRight: isSidebarOpen ? '1px solid #222' : 'none',
+ display: 'flex',
+ flexDirection: 'column',
+ padding: isSidebarOpen ? '25px' : '0',
+ overflow: 'hidden',
+ flexShrink: 0,
+ transition: 'width 0.3s ease, padding 0.3s ease',
+ };
+ const centerZoneStyle = { flex: 1, padding: '40px', display: 'flex', flexDirection: 'column', gap: '20px', overflowY: 'auto', position: 'relative' };
+ const rightPanelStyle = { width: '340px', backgroundColor: '#0D0D0D', borderLeft: '1px solid #222', padding: '30px', display: 'flex', flexDirection: 'column' };
+ const innerBoxStyle = { flex: 1, border: '2px dashed #333', borderRadius: '20px', display: 'flex', flexDirection: 'column', justifyContent: 'center', alignItems: 'center', backgroundColor: '#0a0a0a', cursor: 'pointer', position: 'relative', transition: 'all 0.3s' };
+ const plusBtnStyle = { width: '60px', height: '60px', borderRadius: '50%', backgroundColor: '#1A2C50', display: 'flex', justifyContent: 'center', alignItems: 'center', fontSize: '30px', color: '#39FF14', marginBottom: '20px', boxShadow: '0 0 15px rgba(57, 255, 20, 0.2)' };
+
const fetchHistory = useCallback(async () => {
if (!sessionUser) return;
try {
@@ -31,9 +56,7 @@ const VideoAnalysisPage = ({ sessionUser, onLogout, setSessionUser }) => {
if (response.data.status === "success") {
setHistory(response.data.context || []);
}
- } catch (e) {
- console.log("히스토리 로드 실패:", e);
- }
+ } catch (e) { console.log("비디오 히스토리 로드 실패"); }
}, [sessionUser]);
useEffect(() => {
@@ -41,185 +64,356 @@ const VideoAnalysisPage = ({ sessionUser, onLogout, setSessionUser }) => {
const syncSession = async () => {
if (!sessionUser) {
try {
- const res = await axios.get('/auth/check');
- if (res.data?.user) setSessionUser(res.data.user);
- } catch (error) {
- console.log("세션 확인 실패");
- }
+ const response = await axios.get('/auth/check');
+ if (response.data && response.data.user) setSessionUser(response.data.user);
+ } catch (error) { console.log("세션 확인 실패"); }
}
};
syncSession();
fetchHistory();
+
return () => {
isMounted.current = false;
- if (pollingTimer.current) { clearInterval(pollingTimer.current); pollingTimer.current = null; }
+ if (pollingTimer.current) {
+ clearInterval(pollingTimer.current);
+ pollingTimer.current = null;
+ }
};
}, [sessionUser, setSessionUser, fetchHistory]);
- /*삭제 로직 (백엔드 연동 포함)*/
- const handleDeleteSelected = async () => {
- if (selectedIds.length === 0) return;
- if (!window.confirm(`${selectedIds.length}개의 기록을 삭제하시겠습니까?`)) return;
-
- const updatedHistory = history.filter(item => !selectedIds.includes(item.id));
- setHistory(updatedHistory);
- setSelectedIds([]);
- setIsEditMode(false);
- alert("화면에서 제거되었습니다.");
- };
-
- const toggleSelect = (id) => {
- setSelectedIds(prev =>
- prev.includes(id) ? prev.filter(item => item !== id) : [...prev, id]
- );
- };
-
const startPolling = useCallback((videoId) => {
if (!videoId) return;
if (pollingTimer.current) clearInterval(pollingTimer.current);
+
pollingTimer.current = setInterval(async () => {
if (!isMounted.current) return;
try {
const response = await axios.get(`/inference/video/${videoId}`);
const data = response.data;
- if (data.status === 'SUCCESS') {
- clearInterval(pollingTimer.current); pollingTimer.current = null;
- setResult(data); setIsAnalyzing(false); setStatusMessage(''); fetchHistory();
- } else if (data.status === 'WARNING' || data.status === 'FAILED') {
- clearInterval(pollingTimer.current); pollingTimer.current = null;
- setIsAnalyzing(false); setStatusMessage(''); alert(data.result_msg || data.message || "오류");
- } else { setStatusMessage(data.message || "AI 추론 중..."); }
- } catch (err) { setStatusMessage("서버 연결 확인 중..."); }
- }, 2500);
+ if (data.status === 'SUCCESS' || data.prob !== undefined || data.analysis !== undefined) {
+ clearInterval(pollingTimer.current);
+ pollingTimer.current = null;
+ setResult({ ...data, video_id: videoId });
+ setIsAnalyzing(false);
+ setStatusMessage('');
+ fetchHistory();
+ } else if (data.status === 'FAILED' || data.status === 'ERROR') {
+ clearInterval(pollingTimer.current);
+ pollingTimer.current = null;
+ setIsAnalyzing(false);
+ setStatusMessage('');
+ alert(data.result_msg || "비디오 분석 실패");
+ } else if (data.status === 'WARNING') {
+ clearInterval(pollingTimer.current);
+ pollingTimer.current = null;
+ setResult({ ...data, status: 'WARNING' });
+ setIsAnalyzing(false);
+ setStatusMessage('');
+ fetchHistory();
+ } else {
+ setStatusMessage(data.message || "비디오 분석 진행 중...");
+ }
+ } catch (err) { setStatusMessage("결과 확인 중..."); }
+ }, 2000);
}, [fetchHistory]);
const handlePredict = async () => {
- if (modelType === 'pro' && !sessionUser) { alert("로그인이 필요합니다."); navigate('/login'); return; }
- if (!file) return alert("영상을 업로드해주세요.");
-
+ if (modelType === 'pro' && !sessionUser) {
+ alert("PRO 모델 분석은 로그인이 필요합니다.");
+ navigate('/login');
+ return;
+ }
+ if (!file) return alert("동영상을 먼저 업로드해주세요.");
+
const formData = new FormData();
formData.append('videofile', file);
formData.append('model_type', modelType);
- formData.append('version_type', versionType);
formData.append('domain_type', domainType === 'western' ? '서양인' : '동양인');
+ formData.append('version_type', versionType);
+
+ setIsAnalyzing(true);
+ setStatusMessage('서버 접수 중...');
+ setResult(null);
- setIsAnalyzing(true); setStatusMessage('서버 접수 중...'); setResult(null);
try {
const response = await axios.post('/inference/video', formData);
- const videoId = response.data?.video_id;
- if (videoId) startPolling(videoId); else { alert("ID 실패"); setIsAnalyzing(false); }
- } catch (err) { setIsAnalyzing(false); setStatusMessage(''); }
+ const videoId = response.data?.video_id || response.data;
+ if (videoId) startPolling(videoId);
+ else setIsAnalyzing(false);
+ } catch (err) {
+ setIsAnalyzing(false);
+ setStatusMessage('');
+ }
};
- // 설정 변경 핸들러
- const handleVersionChange = (v) => {
- setVersionType(v);
- if (v === 'v1') setDomainType('western');
+ const handleFileSelect = (selectedFile) => {
+ if (!selectedFile) return;
+ setFile(selectedFile);
+ if (previewUrl) URL.revokeObjectURL(previewUrl);
+ setPreviewUrl(URL.createObjectURL(selectedFile));
+ setResult(null);
+ setStatusMessage('');
+ setShowOptions(false);
+ setSelectedSample(null); // 샘플 외 경로로 들어오면 선택 해제
};
- const handleModelChange = (type) => {
- if (type === 'pro' && !sessionUser) {
- alert("PRO 모델 분석은 로그인이 필요합니다.");
- navigate('/login');
- return;
+ // 예시 비디오를 File로 변환 후 기존 업로드 흐름에 주입 + 도메인 자동 세팅
+ const handleSelectSample = async (sample) => {
+ try {
+ const res = await fetch(sample.src);
+ const blob = await res.blob();
+ const file = new File([blob], sample.name, { type: blob.type });
+ if (sample.domain === 'asian') setVersionType('v2'); // 동양인은 v2 전용
+ setDomainType(sample.domain);
+ handleFileSelect(file);
+ setSelectedSample(sample.name); // handleFileSelect 리셋 이후 선택 표시
+ } catch (e) {
+ alert("예시 파일을 불러오지 못했어요.");
}
- setModelType(type);
};
- const handleFileSelect = (selectedFile) => {
- if (!selectedFile) return;
- setFile(selectedFile); setPreviewUrl(URL.createObjectURL(selectedFile));
- setResult(null); setStatusMessage(''); setShowOptions(false);
+ const toggleSelect = (id) => {
+ setSelectedIds(prev => prev.includes(id) ? prev.filter(item => item !== id) : [...prev, id]);
+ };
+
+ const handleDeleteSelected = async () => {
+ if (selectedIds.length === 0) return;
+ if (!window.confirm(`${selectedIds.length}개의 기록을 완전히 삭제하시겠습니까?`)) return;
+
+ try {
+ const deletePromises = selectedIds.map(id =>
+ axios.delete(`/video/history/${id}`)
+ );
+ await Promise.all(deletePromises);
+ alert("선택한 비디오 기록이 삭제되었습니다.");
+ fetchHistory();
+ setSelectedIds([]);
+ setIsEditMode(false);
+ } catch (error) {
+ console.error(error);
+ alert("서버에서 기록을 삭제하는 중 오류가 발생했습니다.");
+ }
};
const handleLogoutClick = async () => {
if (!window.confirm("로그아웃 하시겠습니까?")) return;
- try { await axios.get('/auth/logout'); onLogout(); navigate('/main'); } catch (error) {}
+ try {
+ await axios.get('/auth/logout');
+ onLogout();
+ navigate('/video-analysis');
+ } catch (error) { alert("로그아웃 실패"); }
};
- const sideBarStyle = { width: '280px', backgroundColor: '#050505', borderRight: '1px solid #222', display: 'flex', flexDirection: 'column', padding: '25px' };
- const centerZoneStyle = { flex: 1, padding: '40px', display: 'flex', flexDirection: 'column', gap: '20px', overflowY: 'auto' };
- const rightPanelStyle = { width: '340px', backgroundColor: '#0D0D0D', borderLeft: '1px solid #222', padding: '30px', display: 'flex', flexDirection: 'column' };
- const innerBoxStyle = { flex: 1, border: '2px dashed #333', borderRadius: '20px', display: 'flex', flexDirection: 'column', justifyContent: 'center', alignItems: 'center', backgroundColor: '#0a0a0a', cursor: 'pointer', position: 'relative', transition: 'all 0.3s' };
- const plusBtnStyle = { width: '60px', height: '60px', borderRadius: '50%', backgroundColor: '#1A2C50', display: 'flex', justifyContent: 'center', alignItems: 'center', fontSize: '30px', color: '#39FF14', marginBottom: '20px', boxShadow: '0 0 15px rgba(57, 255, 20, 0.2)' };
-
return (
+
- { setFile(null); setPreviewUrl(null); setResult(null); setStatusMessage(''); setShowOptions(false); if (pollingTimer.current) clearInterval(pollingTimer.current); }} style={{ backgroundColor: '#1A2C50', color: 'white', padding: '14px', borderRadius: '10px', border: 'none', marginBottom: '35px', cursor: 'pointer', fontWeight: 'bold' }}>+ 새 영상 프로젝트
-
-
-
내 작업 기록
- {sessionUser && history.length > 0 && (
- { setIsEditMode(!isEditMode); setSelectedIds([]); }} style={{ background: 'none', border: 'none', color: '#39FF14', cursor: 'pointer', fontSize: '12px' }}>{isEditMode ? '취소' : '편집'}
- )}
-
+
+
{ setFile(null); setPreviewUrl(null); setResult(null); setStatusMessage(''); setShowOptions(false); setSelectedSample(null); if (pollingTimer.current) clearInterval(pollingTimer.current); }} style={{ backgroundColor: '#1A2C50', color: 'white', padding: '14px', borderRadius: '10px', border: 'none', marginBottom: '35px', cursor: 'pointer', fontWeight: 'bold' }}>+ 새 영상 분석
-
- {sessionUser ? (
- history.map((item, index) => {
- const score = item.score ?? item.prob ?? item.result_prob ?? -1;
- const vType = item.version_type ? item.version_type.toUpperCase() : 'V1';
- const dType = item.domain_type || '서양인';
- const mType = item.model_type ? item.model_type.toUpperCase() : 'FAST';
- return (
-
- {isEditMode &&
toggleSelect(item.id)} style={{ accentColor: '#39FF14', width: '18px', height: '18px', cursor: 'pointer' }} />}
-
!isEditMode && navigate('/analysis-detail', { state: { ...item, prob: score, video_loc: item.video_loc } })} style={{ flex: 1, display: 'flex', alignItems: 'center', gap: '15px', padding: '12px', backgroundColor: '#111', borderRadius: '12px', border: selectedIds.includes(item.id) ? '1px solid #39FF14' : '1px solid #222', cursor: isEditMode ? 'default' : 'pointer' }}>
-
🎥
-
{vType} | {dType} | {mType}
{item.created_at}
{item.label}
-
-
- );
- })
- ) : (
로그인 후 이용 가능합니다.
)}
-
+
+
내 비디오 기록
+
+ {sessionUser && history.length > 0 && (
+
{ setIsEditMode(!isEditMode); setSelectedIds([]); }} style={{ background: 'none', border: 'none', color: '#39FF14', cursor: 'pointer', fontSize: '12px' }}>
+ {isEditMode ? '취소' : '편집'}
+
+ )}
+
setIsSidebarOpen(false)} style={{ background: 'none', border: 'none', color: '#666', cursor: 'pointer', display: 'flex', padding: 0 }} aria-label="사이드바 접기">
+
+
+
+
- {isEditMode && (
-
0 ? '#FF4B4B' : '#222', color: '#fff', border: 'none', borderRadius: '8px', cursor: selectedIds.length > 0 ? 'pointer' : 'not-allowed', fontWeight: 'bold', marginTop: '10px' }}>{selectedIds.length}개 삭제하기
- )}
+
+ {sessionUser ? (
+ history.map((item, index) => {
+ const currentId = item.video_id || item.id;
+ const isSelected = selectedIds.includes(currentId);
+ const vType = item.version_type ? item.version_type.toUpperCase() : 'V2';
+ const dType = item.domain_type || '서양인';
+ const mType = item.model_type ? item.model_type.toUpperCase() : 'FAST';
-
-
navigate('/main')} style={{ width: '100%', padding: '12px', backgroundColor: 'transparent', color: '#fff', border: '1px solid #444', borderRadius: '8px', cursor: 'pointer', fontWeight: 'bold', marginBottom: '15px' }}>메인 화면
- {sessionUser && (
-
-
{sessionUser.name}님 접속 중
-
로그아웃
-
+ return (
+
+ {isEditMode &&
toggleSelect(currentId)} style={{ accentColor: '#39FF14', width: '18px', height: '18px' }} />}
+
!isEditMode && navigate('/video-detail', {
+ state: { video_id: currentId }
+ })}
+ style={{ flex: 1, display: 'flex', alignItems: 'center', gap: '15px', padding: '12px', backgroundColor: '#111', borderRadius: '12px', border: isSelected ? '1px solid #39FF14' : '1px solid #222', cursor: isEditMode ? 'default' : 'pointer' }}
+ >
+
+ {item.video_loc ? (
+
+ ) : '📹'}
+
+
+
{vType} | {dType} | {mType}
+
+ {item.created_at?.slice(0, 10)}
+ {item.created_at?.slice(11, 16)}
+
+
{item.label}
+
+
+
+ );
+ })
+ ) :
로그인 필요
}
+
+
+ {isEditMode && (
+
0 ? '#FF4B4B' : '#222', color: '#fff', border: 'none', borderRadius: '8px', cursor: selectedIds.length > 0 ? 'pointer' : 'not-allowed', marginTop: '10px', fontWeight: 'bold' }}
+ >
+ 선택 삭제 ({selectedIds.length})
+
)}
+
+
+
navigate('/main')} style={{ width: '100%', padding: '12px', backgroundColor: 'transparent', color: '#fff', border: '1px solid #444', borderRadius: '8px', cursor: 'pointer', fontWeight: 'bold', marginBottom: '15px' }}>메인 화면
+ {sessionUser ? (
+
+
{sessionUser.name}님 접속 중
+
로그아웃
+
+ ) :
navigate('/login')} style={{ width: '100%', padding: '12px', backgroundColor: '#1A2C50', color: 'white', border: 'none', borderRadius: '8px', cursor: 'pointer', fontWeight: 'bold' }}>로그인 }
+
-
-
Deep Guard Video AI
-
● 비디오 모드 가동 중
+ {!isSidebarOpen && (
+
setIsSidebarOpen(true)}
+ style={{ position: 'absolute', top: '20px', left: '20px', zIndex: 10, background: '#111', border: '1px solid #333', borderRadius: '8px', color: '#39FF14', cursor: 'pointer', padding: '8px', display: 'flex' }}
+ aria-label="사이드바 열기"
+ >
+
+
+ )}
+
Deep Guard AI
+
+ {/* 예시 비디오 — 로컬 샘플 없이 바로 테스트 */}
+
+ {SAMPLE_VIDEOS.map((s) => {
+ const isFake = s.label.includes('Fake');
+ const tagColor = isFake ? '#FF4B4B' : '#39FF14';
+ const isSelected = selectedSample === s.name;
+ return (
+
handleSelectSample(s)} title={s.label}
+ style={{
+ position: 'relative', flexShrink: 0, width: '100px', height: '74px',
+ borderRadius: '12px', overflow: 'hidden', cursor: 'pointer',
+ border: isSelected ? '2px solid #39FF14' : '1px solid #2a2a2a',
+ boxShadow: isSelected ? '0 0 0 1px #39FF14, 0 6px 18px rgba(57,255,20,0.4)' : 'none'
+ }}>
+
+ {/* 우상단 FAKE/REAL 뱃지 */}
+
+ {isFake ? 'FAKE' : 'REAL'}
+
+ {/* 하단 그라데이션 + 도메인 */}
+
+ {s.label.split(' ')[0]}
+
+
+ );
+ })}
+
-
{ if(!previewUrl) setShowOptions(!showOptions); }} onDragOver={(e) => e.preventDefault()} onDrop={(e) => { e.preventDefault(); handleFileSelect(e.dataTransfer.files[0]); }}>
- {previewUrl ?
:
-
+
Video Upload
영상을 업로드하세요
- {showOptions &&
{ e.stopPropagation(); document.getElementById('vInput').click(); }} style={{ padding: '10px 18px', backgroundColor: '#222', color: '#39FF14', border: '1px solid #39FF14', borderRadius: '8px', cursor:'pointer', fontWeight:'bold' }}>내 PC 영상 { e.stopPropagation(); alert("준비 중"); }} style={{ padding: '10px 18px', backgroundColor: '#222', color: '#fff', border: '1px solid #444', borderRadius: '8px', cursor:'pointer', fontWeight:'bold' }}>Cloud Drive
}
-
- }
-
handleFileSelect(e.target.files[0])} />
+
{ if(!previewUrl) setShowOptions(!showOptions); }}>
+ {previewUrl ?
: (
+
+
+
+
Video Upload
+
동영상을 업로드하세요
+ {showOptions && (
+
+ { e.stopPropagation(); document.getElementById('vIn').click(); }} style={{ padding: '10px 18px', backgroundColor: '#222', color: '#39FF14', border: '1px solid #39FF14', borderRadius: '8px', cursor: 'pointer', fontWeight: 'bold' }}>내 PC 파일
+ {/* { e.stopPropagation(); alert("준비 중입니다."); setShowOptions(false); }} style={{ padding: '10px 18px', backgroundColor: '#222', color: '#fff', border: '1px solid #444', borderRadius: '8px', cursor: 'pointer', fontWeight: 'bold' }}>Cloud Drive */}
+
+ )}
+
+ )}
+
handleFileSelect(e.target.files[0])} />
- {/* 결과 박스: 추론 중일 때 테두리 색상 변경 및 이모티콘 애니메이션 추가 */}
-
- {isAnalyzing ? (
-
-
🔍
-
{statusMessage}
-
-
- ) : result ? (
-
-
{result.label?.toLowerCase() === 'fake' ? 'FAKE' : 'REAL'}
-
navigate('/analysis-detail', { state: { ...result, prob: result.score, video_loc: result.video_loc } })} style={{ color: '#39FF14', background:'none', border:'none', textDecoration: 'underline', marginTop: '15px', cursor:'pointer' }}>상세 결과 보기
+
+
+ {isAnalyzing ? (
+
+
+
+
+
VIDEO CORE ENGINE
+
SCANNING FRAMES...
+
+
+
+ {statusMessage || "PROCESSING..."}
+ LIVE
+
+
+
- ) :
WAITING...
}
+ ) : result ? (
+ result.status === 'WARNING' ? (
+
+
+
+
+
+
+
분석을 완료하지 못했어요
+
+ {result.result_msg}
+
+
+ ) : (() => {
+ const label = result.label || (result.score > 0.5 ? 'FAKE' : 'REAL');
+ const color = label === 'FAKE' ? '#FF4B4B' : '#39FF14';
+ return (
+
+
{label}
+
navigate('/video-detail', { state: { video_id: result.video_id } })}
+ style={{
+ marginTop: '80px',
+ color,
+ background: 'none',
+ border: 'none',
+ padding: 0,
+ fontWeight: 'bold',
+ fontSize: '14px',
+ textDecoration: 'underline',
+ textUnderlineOffset: '3px',
+ cursor: 'pointer'
+ }}
+ >
+ 상세 결과 보기
+
+
+ );
+ })()
+ ) :
READY TO ANALYZE
}
@@ -227,32 +421,80 @@ const VideoAnalysisPage = ({ sessionUser, onLogout, setSessionUser }) => {
분석 설정
-
버전 선택
+
버전 선택
-
handleVersionChange('v1')} style={{ flex: 1, padding: '10px', borderRadius: '8px', border: 'none', backgroundColor: versionType === 'v1' ? '#222' : 'transparent', color: versionType === 'v1' ? '#39FF14' : '#666', cursor: 'pointer' }}>V1
-
handleVersionChange('v2')} style={{ flex: 1, padding: '10px', borderRadius: '8px', border: 'none', backgroundColor: versionType === 'v2' ? '#222' : 'transparent', color: versionType === 'v2' ? '#39FF14' : '#666', cursor: 'pointer' }}>V2
+
setVersionType('v1')} style={{ flex: 1, padding: '10px', borderRadius: '8px', border: 'none', backgroundColor: versionType === 'v1' ? '#222' : 'transparent', color: versionType === 'v1' ? '#39FF14' : '#666', cursor: 'pointer' }}>V1
+
setVersionType('v2')}
+ style={{ position: 'relative', flex: 1, padding: '10px', borderRadius: '8px', border: 'none', backgroundColor: versionType === 'v2' ? '#222' : 'transparent', color: versionType === 'v2' ? '#39FF14' : '#666', cursor: 'pointer' }}
+ >
+ V2
+
+
+
+
+
+
-
대상 도메인
+
대상 도메인
setDomainType('western')} style={{ flex: 1, padding: '12px', borderRadius: '8px', border: 'none', backgroundColor: domainType === 'western' ? '#222' : '#000', color: domainType === 'western' ? '#39FF14' : '#666', cursor: 'pointer' }}>서양인
- setDomainType('asian')} style={{ flex: 1, padding: '12px', borderRadius: '8px', border: 'none', backgroundColor: domainType === 'asian' ? '#222' : '#000', color: domainType === 'asian' ? '#39FF14' : '#666', cursor: versionType === 'v1' ? 'not-allowed' : 'pointer', opacity: versionType === 'v1' ? 0.3 : 1 }}>동양인
+ setDomainType('asian')} disabled={versionType === 'v1'} style={{ flex: 1, padding: '12px', borderRadius: '8px', border: 'none', backgroundColor: domainType === 'asian' ? '#222' : '#000', color: domainType === 'asian' ? '#39FF14' : '#666', cursor: versionType === 'v1' ? 'not-allowed' : 'pointer' }}>동양인
-
-
모델 선택
-
- handleModelChange('fast')} style={{ accentColor: '#39FF14' }} />
- FAST - 일반 분석
-
-
- handleModelChange('pro')} style={{ accentColor: '#39FF14' }} />
- PRO - 정밀 분석
-
+
모델 선택
+
+ {/* FAST */}
+
setModelType('fast')}
+ style={{ position: 'relative', padding: '14px', background: '#111', border: `1px solid ${modelType === 'fast' ? '#39FF14' : '#333'}`, borderRadius: '10px', cursor: 'pointer' }}
+ >
+
+ RECOMMENDED
+
+
+ setModelType('fast')} style={{ accentColor: '#39FF14' }} />
+ FAST
+
+
+
+ {/* PRO */}
+
setModelType('pro')}
+ style={{ position: 'relative', padding: '14px', background: '#111', border: `1px solid ${modelType === 'pro' ? '#39FF14' : '#333'}`, borderRadius: '10px', cursor: 'pointer' }}
+ >
+
+ setModelType('pro')} style={{ accentColor: '#39FF14' }} />
+ PRO
+ 회원 전용
+
+
+
+
+ 높은 정확도
+
+
+
-
{isAnalyzing ? "분석 중..." : "분석 시작 (PREDICT)"}
+
+ {isAnalyzing ? "분석 중..." : "분석 시작"}
+
+
+
);
};
diff --git a/client/src/pages/VideoTimelinePage.js b/client/src/pages/VideoTimelinePage.js
new file mode 100644
index 0000000..769db71
--- /dev/null
+++ b/client/src/pages/VideoTimelinePage.js
@@ -0,0 +1,386 @@
+import React, { useEffect, useState, useRef, useCallback } from 'react';
+import { useLocation, useNavigate } from 'react-router-dom';
+import axios from 'axios';
+
+
+
+const normalizeFrame = (f, i) => {
+ const raw = f.score ?? f.fake_score ?? 0;
+ const fake_score = raw <= 1 ? raw * 100 : raw;
+ const ts = f.frame_time != null
+ ? new Date(f.frame_time * 1000).toISOString().substr(14, 5)
+ : f.timestamp ?? `00:${String(i * 2).padStart(2, '0')}`;
+ return { ...f, fake_score, frame_index: f.frame_index ?? i, timestamp: ts };
+};
+
+const VideoTimelinePage = ({ sessionUser }) => {
+ const { state: data } = useLocation();
+ const navigate = useNavigate();
+ const [timelineData, setTimelineData] = useState([]);
+ const [, setVideoMeta] = useState(null);
+ const [isLoading, setIsLoading] = useState(true);
+
+ const videoId = data?.video_id || data?.id;
+ const mediaLoc = data?.video_loc || '';
+ const mediaSrc = mediaLoc.startsWith('blob') ? mediaLoc : mediaLoc;
+
+ // Canvas는 막대 div 위에 absolute로 얹히므로
+ // 막대 div 자체를 ref로 잡아서 크기/위치를 측정
+ const canvasRef = useRef(null);
+ const barsRef = useRef(null); // 막대들이 들어있는 flex div
+ const barRefs = useRef([]); // 각 막대 div ref 배열
+
+ useEffect(() => {
+ const fetchTimelineDetails = async () => {
+ if (!videoId) { setIsLoading(false); return; }
+ try {
+ const response = await axios.get(`/inference/video/${videoId}/detail`);
+ const d = response.data;
+ let frames = [];
+ if (d?.frames?.length) frames = d.frames;
+ else if (d?.timeline?.length) frames = d.timeline;
+ if (d?.meta) setVideoMeta(d.meta);
+ if (frames.length) {
+ setTimelineData(frames.map(normalizeFrame));
+ } else {
+ setTimelineData(Array.from({ length: 10 }, (_, i) => normalizeFrame({
+ frame_index: i, frame_time: i * 2,
+ score: (i >= 3 && i <= 6) ? 0.855 : 0.123,
+ }, i)));
+ }
+ } catch {
+ setTimelineData(Array.from({ length: 10 }, (_, i) => normalizeFrame({
+ frame_index: i, frame_time: i * 2,
+ score: (i >= 3 && i <= 6) ? 0.855 : 0.123,
+ }, i)));
+ } finally {
+ setIsLoading(false);
+ }
+ };
+ fetchTimelineDetails();
+ }, [videoId]);
+
+ // ── fake/real 비율 (프레임 카운트 기준) ──
+ const fakeCount = timelineData.filter(f => f.fake_score > 50).length;
+ const totalCount = timelineData.length;
+ const fakeRatio = totalCount ? (fakeCount / totalCount) * 100 : 0;
+ const realRatio = 100 - fakeRatio;
+
+ // ── Canvas 렌더링 ──
+ // 핵심: 각 막대 div의 getBoundingClientRect()로 실제 화면 위치를 측정해
+ // 캔버스 좌표로 변환 → 완벽하게 막대 상단 중앙을 통과하는 꺾은선
+ const drawCanvas = useCallback(() => {
+ const canvas = canvasRef.current;
+ const barsEl = barsRef.current;
+ if (!canvas || !barsEl || timelineData.length < 2) return;
+ if (barRefs.current.length !== timelineData.length) return;
+ if (barRefs.current.some(r => !r)) return;
+
+ const barsRect = barsEl.getBoundingClientRect();
+ const W = barsRect.width;
+ const H = barsRect.height;
+ const dpr = window.devicePixelRatio || 1;
+
+ canvas.width = W * dpr;
+ canvas.height = H * dpr;
+ canvas.style.width = W + 'px';
+ canvas.style.height = H + 'px';
+
+ const ctx = canvas.getContext('2d');
+ ctx.scale(dpr, dpr);
+ ctx.clearRect(0, 0, W, H);
+
+ // 각 막대 상단 중앙 좌표 계산
+ // barRef는 막대 div (색깔 있는 직사각형)
+ const points = barRefs.current.map((barEl, i) => {
+ const barRect = barEl.getBoundingClientRect();
+ // canvas 기준 좌표 = barRect - barsRect (offset)
+ const x = barRect.left - barsRect.left + barRect.width / 2;
+ const y = barRect.top - barsRect.top; // 막대 상단
+ return { x, y, isFake: timelineData[i].fake_score > 50 };
+ });
+
+ // 50% 기준선 y좌표: fake_score=50일 때의 막대 높이 비율로 계산
+ // 막대 영역 높이 = barsEl에서 timestamp span 제외한 부분
+ // barsEl padding-top=30px → 막대 영역 시작 y=30, 막대 바닥 y=H-23(timestamp)
+ const BAR_TOP = 30; // padding-top
+ const BAR_BOTTOM = H - 23; // timestamp 텍스트 영역 제외
+ const BAR_H = BAR_BOTTOM - BAR_TOP;
+ const y50 = BAR_BOTTOM - (50 / 100) * BAR_H;
+
+ // 50% 기준선
+ ctx.save();
+ ctx.setLineDash([5, 4]);
+ ctx.strokeStyle = 'rgba(255, 75, 75, 0.3)';
+ ctx.lineWidth = 1;
+ ctx.beginPath();
+ ctx.moveTo(points[0].x, y50);
+ ctx.lineTo(points[points.length - 1].x, y50);
+ ctx.stroke();
+ ctx.restore();
+
+ // 꺾은선 글로우 (바깥 레이어)
+ ctx.save();
+ ctx.shadowColor = 'rgba(255,255,255,0.6)';
+ ctx.shadowBlur = 10;
+ ctx.beginPath();
+ ctx.moveTo(points[0].x, points[0].y);
+ for (let i = 1; i < points.length; i++) ctx.lineTo(points[i].x, points[i].y);
+ ctx.strokeStyle = 'rgba(255,255,255,0.85)';
+ ctx.lineWidth = 2;
+ ctx.lineJoin = 'round';
+ ctx.lineCap = 'round';
+ ctx.stroke();
+ ctx.restore();
+
+ // 데이터 포인트 dot
+ points.forEach((pt) => {
+ // 외곽 글로우 원
+ ctx.beginPath();
+ ctx.arc(pt.x, pt.y, 7, 0, Math.PI * 2);
+ ctx.fillStyle = pt.isFake ? 'rgba(255,75,75,0.15)' : 'rgba(57,255,20,0.12)';
+ ctx.fill();
+ // 내부 dot
+ ctx.beginPath();
+ ctx.arc(pt.x, pt.y, 4, 0, Math.PI * 2);
+ ctx.fillStyle = pt.isFake ? '#FF4B4B' : '#39FF14';
+ ctx.fill();
+ });
+ }, [timelineData]);
+
+ useEffect(() => {
+ if (isLoading || !timelineData.length) return;
+ // DOM 렌더 완료 후 실행 (두 번 대기로 안전하게)
+ const t1 = setTimeout(drawCanvas, 100);
+ const t2 = setTimeout(drawCanvas, 400);
+ const ro = new ResizeObserver(() => setTimeout(drawCanvas, 50));
+ if (barsRef.current) ro.observe(barsRef.current);
+ return () => { clearTimeout(t1); clearTimeout(t2); ro.disconnect(); };
+ }, [timelineData, isLoading, drawCanvas]);
+
+ if (!data) {
+ return (
+
+
전송된 비디오 분석 데이터가 없습니다.
+
navigate(-1)} style={{ marginLeft: '15px', padding: '8px 16px', backgroundColor: '#1A2C50', color: '#39FF14', border: 'none', borderRadius: '6px', cursor: 'pointer' }}>뒤로가기
+
+ );
+ }
+
+ return (
+
+
+ {/* 네비게이션 헤더 */}
+
+ navigate(-1)} style={{ color: '#888', background: 'none', border: 'none', cursor: 'pointer', fontSize: '16px', display: 'flex', alignItems: 'center', gap: '8px' }}>
+ ← 분석 결과 목록
+
+
+
+ 비디오 상세분석 결과
+
+
+
+
+
+
+ {/* 상단 미디어 정보 패널 존 */}
+
+
+
+
+
+
FORGERY RATIO
+
+
+ {/* 도넛 차트 */}
+
+ {/* real(초록) 전체 배경 링 */}
+
+ {/* fake(빨강) 비율만큼 덮어쓰기 */}
+
+ {/* 중앙 fake % 텍스트 (rotate 보정) */}
+
+ {fakeRatio.toFixed(0)}%
+
+
+
+ {/* 범례 */}
+
+
+
+ FAKE
+ {fakeRatio.toFixed(1)}%
+
+
+
+ REAL
+ {realRatio.toFixed(1)}%
+
+
+ {fakeCount} / {totalCount} FRAMES
+
+
+
+
+
+
+ {/* 하단: 타임라인 그래프 & 프레임 데이터 보드 */}
+
+
CHRONOLOGICAL FORGERY RISK MATRIX
+
+ {isLoading ? (
+
CALCULATING FRAME-LEVEL METRICS...
+ ) : (
+
+ {/* 차트 영역: 막대 + Canvas 꺾은선 */}
+
+
+ {/* 막대 그래프 */}
+
+ {timelineData.map((frame, i) => {
+ const isFakeUnit = frame.fake_score > 50;
+ return (
+
+ {/* 막대 div — ref 배열로 각각 잡음 */}
+
barRefs.current[i] = el}
+ style={{
+ width: '24%',
+ height: `${Math.max(frame.fake_score, 4)}%`,
+ backgroundColor: isFakeUnit ? '#FF4B4B' : '#39FF14',
+ borderRadius: '2px 2px 0 0',
+ transition: 'height 0.4s cubic-bezier(0.1, 1, 0.1, 1)',
+ boxShadow: isFakeUnit ? '0 0 12px rgba(255,75,75,0.25)' : '0 0 12px rgba(57,255,20,0.15)'
+ }}
+ />
+ {frame.timestamp}
+
+ );
+ })}
+
+
+ {/* Canvas: barsRef와 완전히 동일한 위치/크기 */}
+
+
+
+ {/* 구간별 히트맵 버튼 행 */}
+
+ {timelineData.map((frame, i) => {
+ const isFake = frame.fake_score > 50;
+ return (
+
+ navigate('/heatmap', {
+ state: {
+ video_id: videoId,
+ frame_index: frame.frame_index,
+ timestamp: frame.timestamp,
+ fake_score: frame.fake_score,
+ model_type: data.model_type || 'fast',
+ video_name: data.video_name,
+ }
+ })}
+ title={`${frame.timestamp} 히트맵`}
+ style={{
+ width: '100%', padding: '5px 0',
+ backgroundColor: 'transparent',
+ color: isFake ? '#FF4B4B' : '#39FF14',
+ border: `1px solid ${isFake ? 'rgba(255,75,75,0.3)' : 'rgba(57,255,20,0.25)'}`,
+ borderRadius: '4px', fontSize: '9px', fontWeight: '700',
+ letterSpacing: '0.3px', cursor: 'pointer', transition: 'all 0.15s',
+ }}
+ onMouseEnter={(e) => {
+ e.currentTarget.style.backgroundColor = isFake ? 'rgba(255,75,75,0.1)' : 'rgba(57,255,20,0.08)';
+ e.currentTarget.style.boxShadow = isFake ? '0 0 8px rgba(255,75,75,0.2)' : '0 0 8px rgba(57,255,20,0.15)';
+ }}
+ onMouseLeave={(e) => {
+ e.currentTarget.style.backgroundColor = 'transparent';
+ e.currentTarget.style.boxShadow = 'none';
+ }}
+ >
+ HEAT
+
+
+ );
+ })}
+
+
+ {/* 구간별 텍스트 그리드 */}
+
+ {timelineData.map((frame, idx) => {
+ const isFake = frame.fake_score > 50;
+ return (
+
+
TIMESTAMP {frame.timestamp}
+
+ 변조 확률: {Number(frame.fake_score).toFixed(1)}%
+
+ {isFake ? 'MANIPULATED' : 'VERIFIED'}
+
+ navigate('/heatmap', {
+ state: {
+ video_id: videoId,
+ frame_index: frame.frame_index,
+ timestamp: frame.timestamp,
+ fake_score: frame.fake_score,
+ model_type: data.model_type || 'fast',
+ video_name: data.video_name,
+ }
+ })}
+ style={{
+ padding: '3px 10px', backgroundColor: 'transparent', color: '#666',
+ border: '1px solid #2A2A2A', borderRadius: '4px', fontSize: '11px',
+ fontWeight: 'bold', cursor: 'pointer', transition: 'all 0.15s',
+ }}
+ onMouseEnter={(e) => { e.currentTarget.style.borderColor = '#39FF14'; e.currentTarget.style.color = '#39FF14'; }}
+ onMouseLeave={(e) => { e.currentTarget.style.borderColor = '#2A2A2A'; e.currentTarget.style.color = '#666'; }}
+ >
+ 히트맵
+
+
+
+ );
+ })}
+
+
+ )}
+
+
+
+ );
+};
+
+export default VideoTimelinePage;
\ No newline at end of file
diff --git a/client/src/pages/analysispage.js b/client/src/pages/analysispage.js
index 73be47b..ded186f 100644
--- a/client/src/pages/analysispage.js
+++ b/client/src/pages/analysispage.js
@@ -2,37 +2,61 @@ import React, { useState, useEffect, useCallback, useRef } from 'react';
import { useNavigate } from 'react-router-dom';
import axios from 'axios';
-const apiUrl = process.env.REACT_APP_API_URL || "http://localhost:8000";
-axios.defaults.withCredentials = true;
+// 예시 이미지 (public/samples/images/ 하위에 실제 파일 배치 필요)
+const SAMPLE_IMAGES = [
+ { name: 'asian_fake_1.JPG', src: '/samples/images/asian_fake_1.JPG', domain: 'asian', label: '동양인 Fake' },
+ { name: 'asian_fake_2.JPG', src: '/samples/images/asian_fake_2.JPG', domain: 'asian', label: '동양인 Fake' },
+ { name: 'western_fake_1.JPG', src: '/samples/images/western_fake_1.JPG', domain: 'western', label: '서양인 Fake' },
+ { name: 'western_fake_2.JPG', src: '/samples/images/western_fake_2.JPG', domain: 'western', label: '서양인 Fake' },
+];
const AnalysisPage = ({ sessionUser, onLogout, setSessionUser }) => {
const navigate = useNavigate();
-
+
const [file, setFile] = useState(null);
const [previewUrl, setPreviewUrl] = useState(null);
const [isAnalyzing, setIsAnalyzing] = useState(false);
const [history, setHistory] = useState([]);
-
+
const [showOptions, setShowOptions] = useState(false);
const [isEditMode, setIsEditMode] = useState(false);
const [selectedIds, setSelectedIds] = useState([]);
+ const [selectedSample, setSelectedSample] = useState(null);
+
+ const [versionType, setVersionType] = useState('v2');
+ const [modelType, setModelType] = useState('fast');
+ const [domainType, setDomainType] = useState('western');
- const [versionType, setVersionType] = useState('v1');
- const [modelType, setModelType] = useState('fast');
- const [domainType, setDomainType] = useState('western');
-
- const [result, setResult] = useState(null);
+ const [result, setResult] = useState(null);
const [statusMessage, setStatusMessage] = useState('');
+ const [isSidebarOpen, setIsSidebarOpen] = useState(true);
+
const pollingTimer = useRef(null);
const isMounted = useRef(true);
+ const sideBarStyle = {
+ width: isSidebarOpen ? '280px' : '0',
+ backgroundColor: '#050505',
+ borderRight: isSidebarOpen ? '1px solid #222' : 'none',
+ display: 'flex',
+ flexDirection: 'column',
+ padding: isSidebarOpen ? '25px' : '0',
+ overflow: 'hidden',
+ flexShrink: 0,
+ transition: 'width 0.3s ease, padding 0.3s ease',
+ };
+ const centerZoneStyle = { flex: 1, padding: '40px', display: 'flex', flexDirection: 'column', gap: '20px', overflowY: 'auto', position: 'relative' };
+ const rightPanelStyle = { width: '340px', backgroundColor: '#0D0D0D', borderLeft: '1px solid #222', padding: '30px', display: 'flex', flexDirection: 'column' };
+ const innerBoxStyle = { flex: 1, border: '2px dashed #333', borderRadius: '20px', display: 'flex', flexDirection: 'column', justifyContent: 'center', alignItems: 'center', backgroundColor: '#0a0a0a', cursor: 'pointer', position: 'relative', transition: 'all 0.3s' };
+ const plusBtnStyle = { width: '60px', height: '60px', borderRadius: '50%', backgroundColor: '#1A2C50', display: 'flex', justifyContent: 'center', alignItems: 'center', fontSize: '30px', color: '#39FF14', marginBottom: '20px', boxShadow: '0 0 15px rgba(57, 255, 20, 0.2)' };
+
const fetchHistory = useCallback(async () => {
if (!sessionUser) return;
try {
const response = await axios.get('/image/history');
if (response.data.status === "success") {
- setHistory(response.data.context || []);
+ setHistory(response.data.context || []);
}
} catch (e) { console.log("히스토리 로드 실패"); }
}, [sessionUser]);
@@ -68,11 +92,10 @@ const AnalysisPage = ({ sessionUser, onLogout, setSessionUser }) => {
try {
const response = await axios.get(`/inference/image/${imageId}`);
const data = response.data;
-
if (data.status === 'SUCCESS' || data.prob !== undefined || data.analysis !== undefined) {
clearInterval(pollingTimer.current);
pollingTimer.current = null;
- setResult(data);
+ setResult({ ...data, image_id: imageId });
setIsAnalyzing(false);
setStatusMessage('');
fetchHistory();
@@ -82,10 +105,17 @@ const AnalysisPage = ({ sessionUser, onLogout, setSessionUser }) => {
setIsAnalyzing(false);
setStatusMessage('');
alert(data.result_msg || "분석 실패");
+ } else if (data.status === 'WARNING') {
+ clearInterval(pollingTimer.current);
+ pollingTimer.current = null;
+ setResult({ ...data, status: 'WARNING' });
+ setIsAnalyzing(false);
+ setStatusMessage('');
+ fetchHistory();
} else {
setStatusMessage(data.message || "이미지 분석 진행 중...");
}
- } catch (err) { setStatusMessage("결과 확인 중..."); }
+ } catch (err) { setResult(null); }
}, 2000);
}, [fetchHistory]);
@@ -109,16 +139,10 @@ const AnalysisPage = ({ sessionUser, onLogout, setSessionUser }) => {
try {
const response = await axios.post('/inference/image', formData);
- const imageId = response.data?.image_id || response.data;
-
- if (imageId) {
- startPolling(imageId);
- } else {
- alert("분석 ID 발급 실패");
- setIsAnalyzing(false);
- }
+ const imageId = response.data?.image_id || response.data;
+ if (imageId) startPolling(imageId);
+ else setIsAnalyzing(false);
} catch (err) {
- alert("서버 통신 오류");
setIsAnalyzing(false);
setStatusMessage('');
}
@@ -132,111 +156,198 @@ const AnalysisPage = ({ sessionUser, onLogout, setSessionUser }) => {
setResult(null);
setStatusMessage('');
setShowOptions(false);
+ setSelectedSample(null); // 샘플 외 경로로 들어오면 선택 해제
+ };
+
+ // 예시 이미지를 File로 변환 후 기존 업로드 흐름에 주입 + 도메인 자동 세팅
+ const handleSelectSample = async (sample) => {
+ try {
+ const res = await fetch(sample.src);
+ const blob = await res.blob();
+ const file = new File([blob], sample.name, { type: blob.type });
+ if (sample.domain === 'asian') setVersionType('v2'); // 동양인은 v2 전용
+ setDomainType(sample.domain);
+ handleFileSelect(file);
+ setSelectedSample(sample.name); // handleFileSelect 리셋 이후 선택 표시
+ } catch (e) {
+ alert("예시 파일을 불러오지 못했어요.");
+ }
};
const toggleSelect = (id) => {
- setSelectedIds(prev =>
- prev.includes(id) ? prev.filter(item => item !== id) : [...prev, id]
- );
+ setSelectedIds(prev => prev.includes(id) ? prev.filter(item => item !== id) : [...prev, id]);
};
const handleDeleteSelected = async () => {
if (selectedIds.length === 0) return;
if (!window.confirm(`${selectedIds.length}개의 기록을 삭제하시겠습니까?`)) return;
- setHistory(history.filter(item => !selectedIds.includes(item.id)));
- setSelectedIds([]);
- setIsEditMode(false);
- alert("삭제되었습니다.");
+
+ try {
+ const deletePromises = selectedIds.map(id =>
+ axios.delete(`/image/history/${id}`)
+ );
+ await Promise.all(deletePromises);
+ alert("선택한 이미지 기록이 성공적으로 삭제되었습니다.");
+ fetchHistory();
+ setSelectedIds([]);
+ setIsEditMode(false);
+ } catch (error) {
+ console.error(error);
+ alert("서버에서 기록을 삭제하는 중 오류가 발생했습니다.");
+ }
};
const handleLogoutClick = async () => {
if (!window.confirm("로그아웃 하시겠습니까?")) return;
try {
await axios.get('/auth/logout');
- onLogout();
- navigate('/main');
+ onLogout();
+ navigate('/analysis');
} catch (error) { alert("로그아웃 실패"); }
};
- // 스타일 상수 (UI 일관성 유지)
- const innerBoxStyle = { flex: 1, border: '2px dashed #333', borderRadius: '20px', display: 'flex', flexDirection: 'column', justifyContent: 'center', alignItems: 'center', backgroundColor: '#0a0a0a', cursor: 'pointer', position: 'relative', transition: 'all 0.3s' };
- const plusBtnStyle = { width: '60px', height: '60px', borderRadius: '50%', backgroundColor: '#1A2C50', display: 'flex', justifyContent: 'center', alignItems: 'center', fontSize: '30px', color: '#39FF14', marginBottom: '20px', boxShadow: '0 0 15px rgba(57, 255, 20, 0.2)' };
-
return (
-
- { setFile(null); setPreviewUrl(null); setResult(null); setStatusMessage(''); setShowOptions(false); if (pollingTimer.current) clearInterval(pollingTimer.current); }} style={{ backgroundColor: '#1A2C50', color: 'white', padding: '14px', borderRadius: '10px', border: 'none', marginBottom: '35px', cursor: 'pointer', fontWeight: 'bold' }}>+ 새 분석 시작
-
-
-
내 작업 기록
- {sessionUser && history.length > 0 && (
- { setIsEditMode(!isEditMode); setSelectedIds([]); }} style={{ background: 'none', border: 'none', color: '#39FF14', cursor: 'pointer', fontSize: '12px' }}>
- {isEditMode ? '취소' : '편집'}
-
- )}
-
-
- {sessionUser ? (
- history.map((item, index) => {
- const p = item.prob ?? item.score ?? -1;
- const isSelected = selectedIds.includes(item.id);
- return (
-
- {isEditMode && (
-
toggleSelect(item.id)} style={{ accentColor: '#39FF14', width: '18px', height: '18px' }} />
- )}
-
!isEditMode && navigate('/analysis-detail', { state: { ...item, prob: p } })} style={{ flex: 1, display: 'flex', alignItems: 'center', gap: '15px', padding: '12px', backgroundColor: '#111', borderRadius: '12px', border: isSelected ? '1px solid #39FF14' : '1px solid #222', cursor: isEditMode ? 'default' : 'pointer' }}>
-
- {item.image_loc ?
: '🖼️'}
-
-
-
{item.created_at?.split('T')[0]}
-
{item.label || (p > 0.5 ? 'FAKE' : 'REAL')}
+
+
+
{ setFile(null); setPreviewUrl(null); setResult(null); setStatusMessage(''); setShowOptions(false); setSelectedSample(null); if (pollingTimer.current) clearInterval(pollingTimer.current); }} style={{ backgroundColor: '#1A2C50', color: 'white', padding: '14px', borderRadius: '10px', border: 'none', marginBottom: '35px', cursor: 'pointer', fontWeight: 'bold' }}>+ 새 분석 시작
+
+
+
내 작업 기록
+
+ {sessionUser && history.length > 0 && (
+
{ setIsEditMode(!isEditMode); setSelectedIds([]); }} style={{ background: 'none', border: 'none', color: '#39FF14', cursor: 'pointer', fontSize: '12px' }}>
+ {isEditMode ? '취소' : '편집'}
+
+ )}
+
setIsSidebarOpen(false)} style={{ background: 'none', border: 'none', color: '#666', cursor: 'pointer', display: 'flex', padding: 0 }} aria-label="사이드바 접기">
+
+
+
+
+
+
+ {sessionUser ? (
+ history.map((item, index) => {
+ const p = item.prob ?? item.score ?? item.analysis?.prob ?? -1;
+ const isSelected = selectedIds.includes(item.image_id);
+ const vType = item.version_type ? item.version_type.toUpperCase() : 'V2';
+ const dType = item.domain_type || '서양인';
+ const mType = item.model_type ? item.model_type.toUpperCase() : 'FAST';
+
+ let itemLabel = 'UNKNOWN';
+ if (item.label && item.label !== 'UNKNOWN') {
+ itemLabel = item.label.toUpperCase();
+ } else if (p !== -1) {
+ itemLabel = p > 0.5 ? 'FAKE' : 'REAL';
+ }
+
+ return (
+
+ {isEditMode &&
toggleSelect(item.image_id)} style={{ accentColor: '#39FF14', width: '18px', height: '18px' }} />}
+
!isEditMode && navigate('/analysis-detail', {
+ state: { image_id: item.image_id }
+ })}
+ style={{ flex: 1, display: 'flex', alignItems: 'center', gap: '15px', padding: '12px', backgroundColor: '#111', borderRadius: '12px', border: isSelected ? '1px solid #39FF14' : '1px solid #222', cursor: isEditMode ? 'default' : 'pointer' }}
+ >
+
+ {item.image_loc ?
: '🖼️'}
+
+
+
{vType} | {dType} | {mType}
+
+ {item.created_at?.slice(0, 10)}
+ {item.created_at?.slice(11, 16)}
+
+
{itemLabel}
+
-
- );
- })
- ) :
로그인 필요
}
-
-
- {isEditMode && (
- 0 ? '#FF4B4B' : '#222', color: '#fff', border: 'none', borderRadius: '8px', cursor: 'pointer', fontWeight: 'bold', marginTop: '10px' }}>선택 삭제
- )}
+ );
+ })
+ ) : 로그인 필요
}
+
-
-
navigate('/main')} style={{ width: '100%', padding: '12px', backgroundColor: 'transparent', color: '#fff', border: '1px solid #444', borderRadius: '8px', cursor: 'pointer', fontWeight: 'bold', marginBottom: '15px' }}>메인 화면
- {sessionUser ? (
-
-
{sessionUser.name}님 접속 중
-
로그아웃
-
- ) : (
-
navigate('/login')} style={{ width: '100%', padding: '12px', backgroundColor: '#1A2C50', color: '#fff', border: 'none', borderRadius: '8px', cursor: 'pointer', fontWeight: 'bold' }}>로그인
+ {isEditMode && (
+
0 ? '#FF4B4B' : '#222', color: '#fff', border: 'none', borderRadius: '8px', cursor: selectedIds.length > 0 ? 'pointer' : 'not-allowed', marginTop: '10px', fontWeight: 'bold' }}
+ >
+ 선택 삭제 ({selectedIds.length})
+
)}
+
+
+
navigate('/main')} style={{ width: '100%', padding: '12px', backgroundColor: 'transparent', color: '#fff', border: '1px solid #444', borderRadius: '8px', cursor: 'pointer', fontWeight: 'bold', marginBottom: '15px' }}>메인 화면
+ {sessionUser ? (
+
+
{sessionUser.name}님 접속 중
+
로그아웃
+
+ ) :
navigate('/login')} style={{ width: '100%', padding: '12px', backgroundColor: '#1A2C50', color: 'white', border: 'none', borderRadius: '8px', cursor: 'pointer', fontWeight: 'bold' }}>로그인 }
+
-
+
+ {!isSidebarOpen && (
+ setIsSidebarOpen(true)}
+ style={{ position: 'absolute', top: '20px', left: '20px', zIndex: 10, background: '#111', border: '1px solid #333', borderRadius: '8px', color: '#39FF14', cursor: 'pointer', padding: '8px', display: 'flex' }}
+ aria-label="사이드바 열기"
+ >
+
+
+ )}
Deep Guard AI
+
+ {/* 예시 이미지 — 로컬 샘플 없이 바로 테스트 */}
+
+ {SAMPLE_IMAGES.map((s) => {
+ const isFake = s.label.includes('Fake');
+ const tagColor = isFake ? '#FF4B4B' : '#39FF14';
+ const isSelected = selectedSample === s.name;
+ return (
+
handleSelectSample(s)} title={s.label}
+ style={{
+ position: 'relative', flexShrink: 0, width: '100px', height: '74px',
+ borderRadius: '12px', overflow: 'hidden', cursor: 'pointer',
+ border: isSelected ? '2px solid #39FF14' : '1px solid #2a2a2a',
+ boxShadow: isSelected ? '0 0 0 1px #39FF14, 0 6px 18px rgba(57,255,20,0.4)' : 'none'
+ }}>
+
+ {/* 우상단 FAKE/REAL 뱃지 */}
+
+ {isFake ? 'FAKE' : 'REAL'}
+
+ {/* 하단 그라데이션 + 도메인 */}
+
+ {s.label.split(' ')[0]}
+
+
+ );
+ })}
+
+
- {/* 업로드 섹션: 비디오 페이지와 동일하게 수정 */}
-
{ if(!previewUrl) setShowOptions(!showOptions); }}
- onDragOver={(e) => e.preventDefault()}
- onDrop={(e) => { e.preventDefault(); handleFileSelect(e.dataTransfer.files[0]); }}
- >
+
{ if(!previewUrl) setShowOptions(!showOptions); }}>
{previewUrl ?
: (
+
-
Image Upload
+
Image Upload
이미지를 업로드하세요
{showOptions && (
{ e.stopPropagation(); document.getElementById('fIn').click(); }} style={{ padding: '10px 18px', backgroundColor: '#222', color: '#39FF14', border: '1px solid #39FF14', borderRadius: '8px', cursor: 'pointer', fontWeight: 'bold' }}>내 PC 파일
- { e.stopPropagation(); alert("준비 중입니다."); setShowOptions(false); }} style={{ padding: '10px 18px', backgroundColor: '#222', color: '#fff', border: '1px solid #444', borderRadius: '8px', cursor: 'pointer', fontWeight: 'bold' }}>Cloud Drive
+ {/* { e.stopPropagation(); alert("준비 중입니다."); setShowOptions(false); }} style={{ padding: '10px 18px', backgroundColor: '#222', color: '#fff', border: '1px solid #444', borderRadius: '8px', cursor: 'pointer', fontWeight: 'bold' }}>Cloud Drive */}
)}
@@ -244,33 +355,88 @@ const AnalysisPage = ({ sessionUser, onLogout, setSessionUser }) => {
handleFileSelect(e.target.files[0])} />
- {/* 결과 섹션: 추론 중일 때 디자인 강화 */}
-
+
{isAnalyzing ? (
-
-
🖼️
-
{statusMessage || "분석 중..."}
-
+
+
+
+
+
SYSTEM ENGINE
+
AI SCANNING...
+
+
+
+ {statusMessage || "ANALYZING DATA..."}
+ LIVE_CORE
+
+
+
) : result ? (
-
-
0.5 ? '#FF4B4B' : '#39FF14' }}>
- {(result.label || ( (result.prob ?? result.analysis?.prob ?? 0) > 0.5 ? 'FAKE' : 'REAL' ))}
-
-
navigate('/analysis-detail', { state: { ...result, ...result.analysis, image_loc: previewUrl } })} style={{ color: '#39FF14', background: 'none', border: 'none', textDecoration: 'underline', marginTop: '15px', cursor: 'pointer' }}>상세 보기
-
+ result.status === 'WARNING' ? (
+
+
+
+
+
+
+
분석을 완료하지 못했어요
+
+ {result.result_msg}
+
+
+ ) : (() => {
+ const label = result.label || (result.score > 0.5 ? 'FAKE' : 'REAL');
+ const color = label === 'FAKE' ? '#FF4B4B' : '#39FF14';
+ return (
+
+
{label}
+
navigate('/analysis-detail', { state: { image_id: result.image_id } })}
+ style={{
+ marginTop: '80px',
+ color,
+ background: 'none',
+ border: 'none',
+ padding: 0,
+ fontWeight: 'bold',
+ fontSize: '14px',
+ textDecoration: 'underline',
+ textUnderlineOffset: '3px',
+ cursor: 'pointer'
+ }}
+ >
+ 상세 결과 보기
+
+
+ );
+ })()
) :
WAITING...
}
-
+
분석 설정
버전 선택
setVersionType('v1')} style={{ flex: 1, padding: '10px', borderRadius: '8px', border: 'none', backgroundColor: versionType === 'v1' ? '#222' : 'transparent', color: versionType === 'v1' ? '#39FF14' : '#666', cursor: 'pointer' }}>V1
-
setVersionType('v2')} style={{ flex: 1, padding: '10px', borderRadius: '8px', border: 'none', backgroundColor: versionType === 'v2' ? '#222' : 'transparent', color: versionType === 'v2' ? '#39FF14' : '#666', cursor: 'pointer' }}>V2
+
setVersionType('v2')}
+ style={{ position: 'relative', flex: 1, padding: '10px', borderRadius: '8px', border: 'none', backgroundColor: versionType === 'v2' ? '#222' : 'transparent', color: versionType === 'v2' ? '#39FF14' : '#666', cursor: 'pointer' }}
+ >
+ V2
+
+
+
+
+
+
@@ -280,21 +446,58 @@ const AnalysisPage = ({ sessionUser, onLogout, setSessionUser }) => {
setDomainType('asian')} disabled={versionType === 'v1'} style={{ flex: 1, padding: '12px', borderRadius: '8px', border: 'none', backgroundColor: domainType === 'asian' ? '#222' : '#000', color: domainType === 'asian' ? '#39FF14' : '#666', cursor: versionType === 'v1' ? 'not-allowed' : 'pointer' }}>동양인
-
-
모델 선택
-
- setModelType('fast')} style={{ accentColor: '#39FF14' }} />
- FAST
-
-
- setModelType('pro')} style={{ accentColor: '#39FF14' }} />
- PRO
-
+
모델 선택
+
+ {/* FAST */}
+
setModelType('fast')}
+ style={{ position: 'relative', padding: '14px', background: '#111', border: `1px solid ${modelType === 'fast' ? '#39FF14' : '#333'}`, borderRadius: '10px', cursor: 'pointer' }}
+ >
+
+ RECOMMENDED
+
+
+ setModelType('fast')} style={{ accentColor: '#39FF14' }} />
+ FAST
+
+
+
+ {/* PRO */}
+
setModelType('pro')}
+ style={{ position: 'relative', padding: '14px', background: '#111', border: `1px solid ${modelType === 'pro' ? '#39FF14' : '#333'}`, borderRadius: '10px', cursor: 'pointer' }}
+ >
+
+ setModelType('pro')} style={{ accentColor: '#39FF14' }} />
+ PRO
+ 회원 전용
+
+
+
+
+ 높은 정확도
+
+
+
{isAnalyzing ? "분석 중..." : "분석 시작"}
+
+
);
};
diff --git a/client/src/pages/loginpage.js b/client/src/pages/loginpage.js
index 3787e8f..4f49997 100644
--- a/client/src/pages/loginpage.js
+++ b/client/src/pages/loginpage.js
@@ -3,8 +3,7 @@ import { useNavigate } from 'react-router-dom';
import axios from 'axios';
import logo from '../assets/logo.svg';
-// 백엔드 세션 쿠키 전역 설정
-axios.defaults.withCredentials = true;
+
const LoginPage = ({ setSessionUser }) => {
const navigate = useNavigate();
@@ -16,15 +15,13 @@ const LoginPage = ({ setSessionUser }) => {
e.preventDefault();
setIsLoading(true);
try {
- // 로그인 요청
await axios.post('/auth/login', { email, password });
- // 세션 정보 가져오기 (home.py)
const homeRes = await axios.get('/home');
if (homeRes.data.session_user) {
setSessionUser(homeRes.data.session_user);
alert(`${homeRes.data.session_user.name}님 환영합니다!`);
- navigate('/analysis'); // 성공 시 분석 페이지로
+ navigate('/analysis');
}
} catch (error) {
const detail = error.response?.data?.detail || "로그인 정보를 확인해주세요.";
diff --git a/client/src/pages/mainpage.js b/client/src/pages/mainpage.js
index 28b1503..e9675f3 100644
--- a/client/src/pages/mainpage.js
+++ b/client/src/pages/mainpage.js
@@ -9,10 +9,8 @@ import bgCurve from '../assets/line.svg';
const MainPage = ({ sessionUser, onLogout }) => {
const navigate = useNavigate();
- // 이미지 분석 페이지로 이동
const handleBasicAnalysis = () => navigate('/analysis');
- // 동영상 분석 페이지로 이동
const handleVideoAnalysis = () => navigate('/video-analysis');
const handleProAnalysis = () => {
@@ -80,7 +78,6 @@ const MainPage = ({ sessionUser, onLogout }) => {
- {/* 이미지 분석 박스 */}
e.currentTarget.style.borderColor = '#39FF14'} onMouseOut={(e) => e.currentTarget.style.borderColor = '#222'}>
이미지 분석
@@ -91,7 +88,6 @@ const MainPage = ({ sessionUser, onLogout }) => {
- {/* 비디오 분석 박스 */}
e.currentTarget.style.borderColor = '#39FF14'} onMouseOut={(e) => e.currentTarget.style.borderColor = '#222'}>
비디오 분석
diff --git a/client/src/setupProxy.js b/client/src/setupProxy.js
new file mode 100644
index 0000000..da75db0
--- /dev/null
+++ b/client/src/setupProxy.js
@@ -0,0 +1,14 @@
+const { createProxyMiddleware } = require('http-proxy-middleware');
+
+module.exports = (app) => {
+ app.use(
+ createProxyMiddleware({
+ target: 'http://127.0.0.1:8000',
+ changeOrigin: true,
+ pathFilter: (path) =>
+ path.startsWith('/api') ||
+ path.startsWith('/static/uploads') ||
+ path.startsWith('/static/explain'),
+ })
+ );
+};
\ No newline at end of file
diff --git a/client/vercel.json b/client/vercel.json
new file mode 100644
index 0000000..301b9f7
--- /dev/null
+++ b/client/vercel.json
@@ -0,0 +1,20 @@
+{
+ "rewrites": [
+ {
+ "source": "/api/:path*",
+ "destination": "https://lagging-pavilion-skyrocket.ngrok-free.dev/api/:path*"
+ },
+ {
+ "source": "/static/uploads/:path*",
+ "destination": "https://lagging-pavilion-skyrocket.ngrok-free.dev/static/uploads/:path*"
+ },
+ {
+ "source": "/static/explain/:path*",
+ "destination": "https://lagging-pavilion-skyrocket.ngrok-free.dev/static/explain/:path*"
+ },
+ {
+ "source": "/:path*",
+ "destination": "/index.html"
+ }
+ ]
+}
\ No newline at end of file
diff --git a/deepguard/MS_EffGCViT.md b/deepguard/MS_EffGCViT.md
index 9b46eee..bfaee2c 100644
--- a/deepguard/MS_EffGCViT.md
+++ b/deepguard/MS_EffGCViT.md
@@ -14,7 +14,8 @@ This Repository presents the PyTorch implementation of **Multi Scale Efficient G
This model is a **frame-level** and **spatial-domain** architecture, designed to perform classification tasks on both **static images** and **video sequences**
-
+
+
## 💥 News 💥
@@ -27,28 +28,44 @@ This model is a **frame-level** and **spatial-domain** architecture, designed to
## Model Performance
-MS_Eff_GCViT achieves state-of-the-art(SOTA) results across deepfake video classification. On Celeb_DF(v2) dataset, MS_EFF_GCViT variants with `8.7M`, `50.3M` parameters achieve `0.9842`, `0.9981` Accuracy. Notably, the MS_EFF_GCViT_B0 variant demonstrates exceptional efficiency, matching or exceeding SOTA performance even with a siginificantly lower parameter
+**MS-EFF-GCViT achieves state-of-the-art (SOTA) results across three DeepFake benchmarks.**
+The model ships in two variants from a single architecture — **Fast (b0)** for real-time / edge
+deployment and **Pro (b5)** for enterprise-grade accuracy. Notably, **Fast** matches or exceeds
+much larger SOTA models while using a fraction of the parameters and compute.
+
+
+
+
+> On **Celeb-DF(v2)**, Pro reaches **0.9981 Acc** (rank #1) and Fast **0.9842** (rank #3) among 20 architectures.
+> On the **KoDF competition** leaderboard, Pro ranks **#1** and Fast **#4** out of 49 entries.
-### Test Result of Celeb_DF(v2)
+
+📊 Celeb-DF (v2) — Accuracy & Efficiency
+
+
-
+
-Test Result of FaceForensics++
-
+📊 FaceForensics++ — Accuracy & Efficiency
+
+
+
-Test Result of KoDF
-
+📊 KoDF Competition — Accuracy Ranking
+
+
+
## Model Indroduction
Multi Scale Efficient Global Context Vision Transformer is an optimized multi-scale hybrid architecture that integrates CNN-driven spatial inductive bias with hierarchical attention mechanisms to effectively identify subtle(local) artifacts and macro(global) artifacts for robust deepfake forensics."
-
+
### Part 1: CNN-based Patch Embedding for Spatial Inductive Bias
@@ -61,7 +78,7 @@ While traditional Vision Transformers (ViTs) utilize a Linear Projection for pat
We utilizes two distinct types of self-attention to capture both long-range and short-range information across feature maps.
-
+
- **Local Window Attention**: this model efficiently captures local textures and precise spatial details while maintaining linear computational complexity relative to the image size.
@@ -77,6 +94,8 @@ While both **Xception** and **EfficientNet** show great results on DeepFake benc
### Part 4: Multi-Scale Feature Map Fusion
+
+
Modern DeepFakes can leave very localized forgery region. To Capture this, we adopts a **multi-scale strategy** by extracting features from different levels of the backbone.
- ** (_Subtle Artifacts_)**: High-Resolution feature maps are extracted from early backbone blocks(`l_block_idx`) to capture like skin texture or boundary artifacts
@@ -173,4 +192,20 @@ import deepguard
model = timm.create_model("ms_eff_gcvit_b0", pretrained=True, dataset="ff++")
model = timm.create_model("ms_eff_gcvit_b5", pretrained=True, dataset="kodf")
-```
\ No newline at end of file
+```
+
+## 📊 Visual Results
+
+### MS-EFF-GCVIT — Low-Level Branch
+
+| Model | Branch-Level | Image | HiresCam | GradCamElementwise | LayerCam |
+| :--- | :---: | :---: | :---: | :---: | :---: |
+| **⚡ ms-eff-gcvit-b0** |  |
|
|
|
|
+| **🔥 ms-eff-gcvit-b5** |  |
|
|
|
|
+
+### MS-Eff-GCViT — High-Level Branch
+
+| Model | Branch-Level | Image | EigenGradCam | GradCamPlusPlus | XGradCam |
+| :--- | :---: | :---: | :---: | :---: | :---: |
+| **⚡ ms-eff-gcvit-b0** |  |
|
|
|
|
+| **🔥 ms-eff-gcvit-b5** |  |
|
|
|
|
diff --git a/deepguard/MS_EffViT.md b/deepguard/MS_EffViT.md
index 6d4a76e..b9e2918 100644
--- a/deepguard/MS_EffViT.md
+++ b/deepguard/MS_EffViT.md
@@ -12,6 +12,8 @@ This Repository presents the PyTorch implementation of **Multi Scale Efficient V
This model is a **frame-level** and **spatial-domain** architecture, designed to perform classification tasks on both **static images** and **video sequences**
+
+
## 💥 News 💥
- [**02.03.2026**] 🔥🔥 We have released **FaceForensics++** fine-tuned **MS-Eff-ViT B5** model weightes for **384X384**
@@ -21,18 +23,32 @@ This model is a **frame-level** and **spatial-domain** architecture, designed to
## Model Performance
-MS_Eff_ViT achieves state-of-the-art(SOTA) results across deepfake video classification. On Celeb_DF(v2) dataset, MS_EFF_GCViT variants with `5.9M`, `52.0M` parameters achieve `0.9742`, `0.9900` Accuracy. Notably, the MS_EFF_ViT_B0 variant demonstrates exceptional efficiency, matching or exceeding SOTA performance even with a siginificantly lower parameter
+**MS-EFF-ViT achieves state-of-the-art (SOTA) results across two DeepFake benchmarks.**
+The model ships in two variants from a single architecture — **Fast (b0)** for real-time / edge
+deployment and **Pro (b5)** for enterprise-grade accuracy. Notably, **Fast** matches or exceeds
+much larger SOTA models while using a fraction of the parameters and compute.
+
+
+
+
+
+> On **Celeb-DF(v2)**, Pro reaches **0.9900 Acc** (rank #2) and Fast **0.9742** (rank #4) among 20 architectures.
-### Test Result of Celeb_DF(v2)
+
+📊 Celeb-DF (v2) — Accuracy & Efficiency
+
+
-
+
-Test Result of FaceForensics++
-
+📊 FaceForensics++ — Accuracy & Efficiency
+
+
+
## Model Introduction
Multi Scale Efficient Vision Transformer is an optimized multi-scale hybrid architecture that integrates CNN-driven spatial inductive bias with self-attention mechanisms to effectively identify subtle(local) artifacts and macro(global) artifacts for robust deepfake forensics."
@@ -142,4 +158,20 @@ import deepguard
model = timm.create_model("ms_eff_vit_b0", pretrained=True, dataset="celeb_df_v2")
model = timm.create_model("ms_eff_vit_b5", pretrained=True, dataset="ff++")
-```
\ No newline at end of file
+```
+
+## 📊 Visual Results
+
+### MS-EFF-VIT — Low-Level Branch
+
+| Model | Branch-Level | Image | HiresCam | GradCamElementwise | LayerCam |
+| :--- | :---: | :---: | :---: | :---: | :---: |
+| **⚡ ms-eff-vit-b0** |  |
|
|
|
|
+| **🔥 ms-eff-vit-b5** |  |
|
|
|
|
+
+### MS-Eff-ViT — High-Level Branch
+
+| Model | Branch-Level | Image | EigenGradCam | GradCamPlusPlus | XGradCam |
+| :--- | :---: | :---: | :---: | :---: | :---: |
+| **⚡ ms-eff-vit-b0** |  |
|
|
|
|
+| **🔥 ms-eff-vit-b5** |  |
|
|
|
|
diff --git a/docs/architectures/dual_branch.gif b/docs/architectures/dual_branch.gif
new file mode 100644
index 0000000..1ad1713
Binary files /dev/null and b/docs/architectures/dual_branch.gif differ
diff --git a/docs/architectures/high_branch.gif b/docs/architectures/high_branch.gif
new file mode 100644
index 0000000..edc2e81
Binary files /dev/null and b/docs/architectures/high_branch.gif differ
diff --git a/docs/architectures/low_branch.gif b/docs/architectures/low_branch.gif
new file mode 100644
index 0000000..4bcfb7f
Binary files /dev/null and b/docs/architectures/low_branch.gif differ
diff --git a/docs/architectures/ms_eff_gcvit.JPG b/docs/architectures/ms_eff_gcvit.JPG
new file mode 100644
index 0000000..14af884
Binary files /dev/null and b/docs/architectures/ms_eff_gcvit.JPG differ
diff --git a/Images/window_attention.JPG b/docs/architectures/window_attention.JPG
similarity index 100%
rename from Images/window_attention.JPG
rename to docs/architectures/window_attention.JPG
diff --git a/docs/benchmarks/celeb_df_v2_gcvit.png b/docs/benchmarks/celeb_df_v2_gcvit.png
new file mode 100644
index 0000000..7719047
Binary files /dev/null and b/docs/benchmarks/celeb_df_v2_gcvit.png differ
diff --git a/docs/benchmarks/celeb_df_v2_gcvit_2.png b/docs/benchmarks/celeb_df_v2_gcvit_2.png
new file mode 100644
index 0000000..5cc437f
Binary files /dev/null and b/docs/benchmarks/celeb_df_v2_gcvit_2.png differ
diff --git a/docs/benchmarks/celeb_df_v2_vit.png b/docs/benchmarks/celeb_df_v2_vit.png
new file mode 100644
index 0000000..edb0b22
Binary files /dev/null and b/docs/benchmarks/celeb_df_v2_vit.png differ
diff --git a/docs/benchmarks/celeb_df_v2_vit_2.png b/docs/benchmarks/celeb_df_v2_vit_2.png
new file mode 100644
index 0000000..21fd9e6
Binary files /dev/null and b/docs/benchmarks/celeb_df_v2_vit_2.png differ
diff --git a/docs/benchmarks/ff_gcvit.png b/docs/benchmarks/ff_gcvit.png
new file mode 100644
index 0000000..9a70a73
Binary files /dev/null and b/docs/benchmarks/ff_gcvit.png differ
diff --git a/docs/benchmarks/ff_vit.png b/docs/benchmarks/ff_vit.png
new file mode 100644
index 0000000..831af92
Binary files /dev/null and b/docs/benchmarks/ff_vit.png differ
diff --git a/docs/benchmarks/gcvit_summary_bars.png b/docs/benchmarks/gcvit_summary_bars.png
new file mode 100644
index 0000000..ee8d30b
Binary files /dev/null and b/docs/benchmarks/gcvit_summary_bars.png differ
diff --git a/docs/benchmarks/kodf_gcvit.png b/docs/benchmarks/kodf_gcvit.png
new file mode 100644
index 0000000..d163b38
Binary files /dev/null and b/docs/benchmarks/kodf_gcvit.png differ
diff --git a/docs/benchmarks/vit_summary_bars.png b/docs/benchmarks/vit_summary_bars.png
new file mode 100644
index 0000000..5e08f9c
Binary files /dev/null and b/docs/benchmarks/vit_summary_bars.png differ
diff --git a/Images/deepfake2.png b/docs/samples/deepfake_thumbnails.png
similarity index 100%
rename from Images/deepfake2.png
rename to docs/samples/deepfake_thumbnails.png
diff --git a/docs/samples/images/asian/asian_fake_1.JPG b/docs/samples/images/asian/asian_fake_1.JPG
new file mode 100644
index 0000000..c835a50
Binary files /dev/null and b/docs/samples/images/asian/asian_fake_1.JPG differ
diff --git a/docs/samples/images/asian/asian_fake_2.JPG b/docs/samples/images/asian/asian_fake_2.JPG
new file mode 100644
index 0000000..2e5cb74
Binary files /dev/null and b/docs/samples/images/asian/asian_fake_2.JPG differ
diff --git a/Images/deepfake/image/asian_real_1.JPG b/docs/samples/images/asian/asian_real_1.JPG
similarity index 100%
rename from Images/deepfake/image/asian_real_1.JPG
rename to docs/samples/images/asian/asian_real_1.JPG
diff --git a/App/static/uploads/yesol@gmail.com/western_fake_1_1777863488.JPG b/docs/samples/images/western/western_fake_1.JPG
similarity index 100%
rename from App/static/uploads/yesol@gmail.com/western_fake_1_1777863488.JPG
rename to docs/samples/images/western/western_fake_1.JPG
diff --git a/docs/samples/images/western/western_fake_2.JPG b/docs/samples/images/western/western_fake_2.JPG
new file mode 100644
index 0000000..5890a99
Binary files /dev/null and b/docs/samples/images/western/western_fake_2.JPG differ
diff --git a/Images/deepfake/image/western_real_1.JPG b/docs/samples/images/western/western_real_1.JPG
similarity index 100%
rename from Images/deepfake/image/western_real_1.JPG
rename to docs/samples/images/western/western_real_1.JPG
diff --git a/Images/deepfake/image/western_real_2.JPG b/docs/samples/images/western/western_real_2.JPG
similarity index 100%
rename from Images/deepfake/image/western_real_2.JPG
rename to docs/samples/images/western/western_real_2.JPG
diff --git a/docs/samples/videos/western/western_fake.mp4 b/docs/samples/videos/western/western_fake.mp4
new file mode 100644
index 0000000..9b6acc0
Binary files /dev/null and b/docs/samples/videos/western/western_fake.mp4 differ
diff --git a/docs/samples/videos/western/western_real.mp4 b/docs/samples/videos/western/western_real.mp4
new file mode 100644
index 0000000..05de891
Binary files /dev/null and b/docs/samples/videos/western/western_real.mp4 differ
diff --git a/docs/xai-results/ms_eff_gcvit_b0_high_eigengradcam.JPG b/docs/xai-results/ms_eff_gcvit_b0_high_eigengradcam.JPG
new file mode 100644
index 0000000..402b195
Binary files /dev/null and b/docs/xai-results/ms_eff_gcvit_b0_high_eigengradcam.JPG differ
diff --git a/docs/xai-results/ms_eff_gcvit_b0_high_gradcamplusplus.JPG b/docs/xai-results/ms_eff_gcvit_b0_high_gradcamplusplus.JPG
new file mode 100644
index 0000000..ebf2788
Binary files /dev/null and b/docs/xai-results/ms_eff_gcvit_b0_high_gradcamplusplus.JPG differ
diff --git a/docs/xai-results/ms_eff_gcvit_b0_high_xgradcam.JPG b/docs/xai-results/ms_eff_gcvit_b0_high_xgradcam.JPG
new file mode 100644
index 0000000..7192d77
Binary files /dev/null and b/docs/xai-results/ms_eff_gcvit_b0_high_xgradcam.JPG differ
diff --git a/docs/xai-results/ms_eff_gcvit_b0_low_gradcamelementwise.JPG b/docs/xai-results/ms_eff_gcvit_b0_low_gradcamelementwise.JPG
new file mode 100644
index 0000000..b5a003a
Binary files /dev/null and b/docs/xai-results/ms_eff_gcvit_b0_low_gradcamelementwise.JPG differ
diff --git a/docs/xai-results/ms_eff_gcvit_b0_low_hirescam.JPG b/docs/xai-results/ms_eff_gcvit_b0_low_hirescam.JPG
new file mode 100644
index 0000000..e12e9b9
Binary files /dev/null and b/docs/xai-results/ms_eff_gcvit_b0_low_hirescam.JPG differ
diff --git a/docs/xai-results/ms_eff_gcvit_b0_low_layercam.JPG b/docs/xai-results/ms_eff_gcvit_b0_low_layercam.JPG
new file mode 100644
index 0000000..1241248
Binary files /dev/null and b/docs/xai-results/ms_eff_gcvit_b0_low_layercam.JPG differ
diff --git a/docs/xai-results/ms_eff_gcvit_b5_high_eigengradcam.JPG b/docs/xai-results/ms_eff_gcvit_b5_high_eigengradcam.JPG
new file mode 100644
index 0000000..1403305
Binary files /dev/null and b/docs/xai-results/ms_eff_gcvit_b5_high_eigengradcam.JPG differ
diff --git a/docs/xai-results/ms_eff_gcvit_b5_high_gradcamplusplus.JPG b/docs/xai-results/ms_eff_gcvit_b5_high_gradcamplusplus.JPG
new file mode 100644
index 0000000..b6dea9d
Binary files /dev/null and b/docs/xai-results/ms_eff_gcvit_b5_high_gradcamplusplus.JPG differ
diff --git a/docs/xai-results/ms_eff_gcvit_b5_high_xgradcam.JPG b/docs/xai-results/ms_eff_gcvit_b5_high_xgradcam.JPG
new file mode 100644
index 0000000..7bb381a
Binary files /dev/null and b/docs/xai-results/ms_eff_gcvit_b5_high_xgradcam.JPG differ
diff --git a/docs/xai-results/ms_eff_gcvit_b5_low_gradcamelementwise.JPG b/docs/xai-results/ms_eff_gcvit_b5_low_gradcamelementwise.JPG
new file mode 100644
index 0000000..089b17a
Binary files /dev/null and b/docs/xai-results/ms_eff_gcvit_b5_low_gradcamelementwise.JPG differ
diff --git a/docs/xai-results/ms_eff_gcvit_b5_low_hirescam.JPG b/docs/xai-results/ms_eff_gcvit_b5_low_hirescam.JPG
new file mode 100644
index 0000000..f24e9c0
Binary files /dev/null and b/docs/xai-results/ms_eff_gcvit_b5_low_hirescam.JPG differ
diff --git a/docs/xai-results/ms_eff_gcvit_b5_low_layercam.JPG b/docs/xai-results/ms_eff_gcvit_b5_low_layercam.JPG
new file mode 100644
index 0000000..d9931b5
Binary files /dev/null and b/docs/xai-results/ms_eff_gcvit_b5_low_layercam.JPG differ
diff --git a/docs/xai-results/ms_eff_vit_b0_high_eigengradcam.JPG b/docs/xai-results/ms_eff_vit_b0_high_eigengradcam.JPG
new file mode 100644
index 0000000..cee217c
Binary files /dev/null and b/docs/xai-results/ms_eff_vit_b0_high_eigengradcam.JPG differ
diff --git a/docs/xai-results/ms_eff_vit_b0_high_gradcamplusplus.JPG b/docs/xai-results/ms_eff_vit_b0_high_gradcamplusplus.JPG
new file mode 100644
index 0000000..21c3a61
Binary files /dev/null and b/docs/xai-results/ms_eff_vit_b0_high_gradcamplusplus.JPG differ
diff --git a/docs/xai-results/ms_eff_vit_b0_high_xgradcam.JPG b/docs/xai-results/ms_eff_vit_b0_high_xgradcam.JPG
new file mode 100644
index 0000000..2362109
Binary files /dev/null and b/docs/xai-results/ms_eff_vit_b0_high_xgradcam.JPG differ
diff --git a/docs/xai-results/ms_eff_vit_b0_low_gradcamelementwise.JPG b/docs/xai-results/ms_eff_vit_b0_low_gradcamelementwise.JPG
new file mode 100644
index 0000000..97608a4
Binary files /dev/null and b/docs/xai-results/ms_eff_vit_b0_low_gradcamelementwise.JPG differ
diff --git a/docs/xai-results/ms_eff_vit_b0_low_hirescam.JPG b/docs/xai-results/ms_eff_vit_b0_low_hirescam.JPG
new file mode 100644
index 0000000..9a282e7
Binary files /dev/null and b/docs/xai-results/ms_eff_vit_b0_low_hirescam.JPG differ
diff --git a/docs/xai-results/ms_eff_vit_b0_low_layercam.JPG b/docs/xai-results/ms_eff_vit_b0_low_layercam.JPG
new file mode 100644
index 0000000..983d8f1
Binary files /dev/null and b/docs/xai-results/ms_eff_vit_b0_low_layercam.JPG differ
diff --git a/docs/xai-results/ms_eff_vit_b5_high_eigengradcam.JPG b/docs/xai-results/ms_eff_vit_b5_high_eigengradcam.JPG
new file mode 100644
index 0000000..186a1bc
Binary files /dev/null and b/docs/xai-results/ms_eff_vit_b5_high_eigengradcam.JPG differ
diff --git a/docs/xai-results/ms_eff_vit_b5_high_gradcamplusplus.JPG b/docs/xai-results/ms_eff_vit_b5_high_gradcamplusplus.JPG
new file mode 100644
index 0000000..14a0b75
Binary files /dev/null and b/docs/xai-results/ms_eff_vit_b5_high_gradcamplusplus.JPG differ
diff --git a/docs/xai-results/ms_eff_vit_b5_high_xgradcam.JPG b/docs/xai-results/ms_eff_vit_b5_high_xgradcam.JPG
new file mode 100644
index 0000000..1965aef
Binary files /dev/null and b/docs/xai-results/ms_eff_vit_b5_high_xgradcam.JPG differ
diff --git a/docs/xai-results/ms_eff_vit_b5_low_gradcamelementwise.JPG b/docs/xai-results/ms_eff_vit_b5_low_gradcamelementwise.JPG
new file mode 100644
index 0000000..5c878a7
Binary files /dev/null and b/docs/xai-results/ms_eff_vit_b5_low_gradcamelementwise.JPG differ
diff --git a/docs/xai-results/ms_eff_vit_b5_low_hirescam.JPG b/docs/xai-results/ms_eff_vit_b5_low_hirescam.JPG
new file mode 100644
index 0000000..568d4b5
Binary files /dev/null and b/docs/xai-results/ms_eff_vit_b5_low_hirescam.JPG differ
diff --git a/docs/xai-results/ms_eff_vit_b5_low_layercam.JPG b/docs/xai-results/ms_eff_vit_b5_low_layercam.JPG
new file mode 100644
index 0000000..2225fd2
Binary files /dev/null and b/docs/xai-results/ms_eff_vit_b5_low_layercam.JPG differ
diff --git a/docs/xai-results/xai_demo.gif b/docs/xai-results/xai_demo.gif
new file mode 100644
index 0000000..a1d8c34
Binary files /dev/null and b/docs/xai-results/xai_demo.gif differ
diff --git a/explainability/__init__.py b/explainability/__init__.py
index e69de29..b547123 100644
--- a/explainability/__init__.py
+++ b/explainability/__init__.py
@@ -0,0 +1,13 @@
+from explainability.explainer.base_explainer import BaseExplainer
+from explainability.explainer.cam_explainer import CAMExplainer
+from explainability.explainer.gradient_explainer import (
+ GradCAMExplainer, GradCAMPlusPlusExplainer, GradCAMElementWiseExplainer,
+ XGradCAMExplainer, HiResCAMExplainer
+)
+from explainability.explainer.eigenvalue_explainer import (
+ EigenCAMExplainer, EigenGradCAMExplainer, KPCACAMExplainer
+)
+from explainability.explainer.perturbation_explainer import (
+ ScoreCAMExplainer, FEMExplainer
+)
+from explainability.explainer.misc_explainer import LayerCAMExplainer
\ No newline at end of file
diff --git a/explainability/base_explainer.py b/explainability/base_explainer.py
deleted file mode 100644
index 1a54186..0000000
--- a/explainability/base_explainer.py
+++ /dev/null
@@ -1,113 +0,0 @@
-import cv2
-import timm
-import torch
-import numpy as np
-from pathlib import Path
-from typing import List, Optional, Tuple
-from preprocess.face_detector import FaceDetector2
-from deepguard.data import get_test_transforms
-from explainability.utils.reshape_transforms import reshape_transform_vit, reshape_transform_gcvit
-
-DATASETS = {"celeb_df_v2", "ff++", "kodf"}
-MODELS = {"ms_eff_vit_b0", "ms_eff_vit_b5", "ms_eff_gcvit_b0", "ms_eff_gcvit_b5"}
-
-class BaseExplainer:
- def __init__(
- self,
- model_name: str, # ms_eff_vit_b0 | ms_eff_vit_b5 | ms_eff_gcvit_b0 | ms_eff_gcvit_b5
- dataset: str, # celeb_df_v2 | ff++ | both
- margin_ratio: float = 0.2,
- conf_thres: float = 0.5,
- category: int = 1, # 0: real | 1: fake
- branch_level: str = "both", # low | high | both
- l_stage_idx: int = -1 # gcvit low branch stage index (0~3)
- ):
- self._validate_inputs(model_name, dataset, branch_level)
-
- self.device = "cuda:0" if torch.cuda.is_available() else 'cpu'
- self.margin_ratio = margin_ratio
- self.category = category
- self.model_name = model_name
- self.branch_level = branch_level
- self.l_stage_idx = l_stage_idx
-
- # Parse Model Metadata
- self.model_variant = model_name.split("_")[-1] # b0, b5
- self.transformer_type = model_name.split("_")[-2] # vit, gcvit
-
- # Model & Tools setup
- self.model = timm.create_model(model_name, pretrained=True, dataset=dataset)
- self.face_detector = FaceDetector2(conf_thres)
- self.img_size = [224,224] if self.model_variant == "b0" else [384,384]
- self.transforms = get_test_transforms(img_size=self.img_size)
-
- self.model.to(self.device).eval()
-
- # Explainability setup
- self.reshape_fn = self._get_reshape_fn()
- self.target_layers = self._resolve_target_layers()
-
- def _validate_inputs(self, model_name: str, dataset: str, branch_level: str):
- if model_name not in MODELS:
- raise ValueError(f"Unsupported model: '{model_name}'. Must be one of {MODELS}")
- if dataset not in DATASETS:
- raise ValueError(f"Invalid dataset: '{dataset}'. Choose from {DATASETS}")
- if branch_level not in ("low", "high", "both"):
- raise ValueError(f"Invalid branch_level: '{branch_level}'. Expected 'low', 'high', or 'both'.")
-
- def _get_reshape_fn(self):
- return reshape_transform_vit if self.transformer_type == "vit" else reshape_transform_gcvit
-
- def _resolve_target_layers(self) -> list[torch.nn.Module]:
- layers = []
-
- if self.transformer_type == "gcvit":
- n_stages = len(self.model.l_gcvit.stages)
- idx = self.l_stage_idx if self.l_stage_idx >= 0 else n_stages + self.l_stage_idx
-
- if not (0 <= idx < n_stages):
- raise IndexError(f"l_stage_idx {self.l_stage_idx} out of range (n={n_stages})")
- if self.branch_level in ("low", "both"):
- layers.append(self.model.l_gcvit.stages[idx].blocks[-1].norm2)
- if self.branch_level in ("high", "both"):
- layers.append(self.model.h_gcvit.stages[0].blocks[-1].norm2)
-
- else: # vit
- if self.branch_level in ("low", "both"):
- layers.append(self.model.l_vit.blocks[-1].norm1)
- if self.branch_level in ("high", "both"):
- layers.append(self.model.h_vit.blocks[-1].norm1)
-
- return layers
-
- def _get_face_bbox(self, img: np.ndarray) -> List[float]:
- result = self.face_detector.detect_batch([img], [1.0])
- return result[0]
-
- def _crop_face(self, img: np.ndarray, bbox: List[float]) -> np.ndarray:
- xmin, ymin, xmax, ymax = bbox
- h, w = img.shape[:2]
- pw = int((xmax - xmin) * self.margin_ratio)
- ph = int((ymax - ymin) * self.margin_ratio)
- return img[
- max(int(ymin - ph), 0) : min(int(ymax + ph), h),
- max(int(xmin - pw), 0) : min(int(xmax + pw), w),
- ]
-
- def _preprocess_img(self, img_path: str) -> np.ndarray:
- img = cv2.imread(img_path)
- img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
- detect_result = self._get_face_bbox(img)
- bbox = detect_result[:4]
- cropped = self._crop_face(img, bbox)
- return cropped
-
- def _get_transform(self, img_path: str):
- face = self._preprocess_img(img_path)
- tensor = self.transforms(image=face)['image'].unsqueeze(0) # (1,3,H,W)
- return face, tensor
-
- def __repr__(self):
- return (f"{self.__class__.__name__}("
- f"model={self.model_name}, branch={self.branch}, "
- f"device={self.device})")
\ No newline at end of file
diff --git a/explainability/cam_evaluator.py b/explainability/cam_evaluator.py
new file mode 100644
index 0000000..d215def
--- /dev/null
+++ b/explainability/cam_evaluator.py
@@ -0,0 +1,48 @@
+import numpy as np
+import torch
+from typing import List, Dict, Literal
+from explainability.utils.model_targets import BinaryClassifierOutputSigmoidTarget
+from explainability.explainer.cam_explainer import CAMExplainer
+from explainability.metrics.road import (
+ ROADLeastRelevantFirstAverage, ROADMostRelevantFirstAverage,
+ ROADCombined
+)
+
+METRIC_REGISTRY = {
+ "MORF": ROADMostRelevantFirstAverage,
+ "LERF": ROADLeastRelevantFirstAverage,
+ "Combined": ROADCombined,
+}
+
+class CAMEvaluator:
+ def __init__(self,
+ cam_explainer: CAMExplainer,
+ cam_metric: Literal["Combined", "MORF", "LERF"] = "Combined", # Combined, MORF, LERF
+ percentiles: List[int] = [10,20,30,40,50,60,70,80,90],
+ seed: int = 2026
+ ):
+ self.seed = seed
+ self.cam_explainer = cam_explainer
+ self.cam_metric_name = cam_metric
+ self.percentiles = percentiles
+ self.cam_metric = METRIC_REGISTRY[cam_metric](percentiles)
+
+ def evaluate(self, img_path: str) -> float:
+ torch.manual_seed(self.seed)
+ np.random.seed(self.seed)
+
+ grayscale_cam, tensor, _ = self.cam_explainer._build_grayscale_cam(img_path)
+ targets = [BinaryClassifierOutputSigmoidTarget()]
+
+ return self.cam_metric(
+ input_tensor = tensor, # (1,C,H,W)
+ cams = grayscale_cam[np.newaxis, ...], #(1,H,W)
+ targets = targets,
+ model = self.cam_explainer.model,
+ )[0]
+
+ def __repr__(self):
+ return (
+ f"CAMEvaluator(explainer={self.cam_explainer.__class__.__name__}, "
+ f"metric={self.cam_metric_name}, percentiles={self.percentiles})"
+ )
\ No newline at end of file
diff --git a/explainability/cam_explainer.py b/explainability/cam_explainer.py
deleted file mode 100644
index aa5fa96..0000000
--- a/explainability/cam_explainer.py
+++ /dev/null
@@ -1,57 +0,0 @@
-import torch
-import cv2
-import numpy as np
-from abc import ABC, abstractmethod
-from explainability.utils.model_targets import BinaryClassifierOutputTarget
-from explainability.utils.image import show_cam_on_image, deprocess_image
-from .base_explainer import BaseExplainer
-class CAMExplainer(BaseExplainer, ABC):
- def __init__(self,
- aug_smooth: bool = False,
- eigen_smooth: bool = False,
- colormap: int = cv2.COLORMAP_JET,
- image_weight: float = 0.5,
- **kwargs):
- super().__init__(**kwargs)
- self.aug_smooth = aug_smooth # aug_smooth has the effect of beter centering the CAM around the objects
- self.eigen_smooth = eigen_smooth # # eigen_smooth has the effect of removing a lot of noise
- self.colormap = colormap
- self.image_weight = image_weight
- self.cam = self._build_cam()
-
- @abstractmethod
- def _build_cam(self):
- ...
-
- def display_heatmap(self, img_path):
- face, tensor = self._get_transform(img_path)
- tensor = tensor.to(self.device) # (1,3,H,W)
- targets = [BinaryClassifierOutputTarget(self.category)]
-
- grayscale_cam = self.cam(
- input_tensor = tensor, # (1,3,H,W)
- targets = targets,
- aug_smooth = self.aug_smooth,
- eigen_smooth = self.eigen_smooth
- ) # (1,H,W)
-
- return grayscale_cam[0], tensor
-
- def display_cam_on_image(self, img_path):
- grayscale_cam, tensor = self.display_heatmap(img_path)
-
- heatmap = show_cam_on_image(
- deprocess_image(tensor), # (H,W,3), range(0~1), np.ndarray
- grayscale_cam, # (H,W), range(0~1), np.ndarray
- use_rgb=True,
- colormap = self.colormap
- image_weight=self.image_weight)
-
- return heatmap # (H,W,3), range(0~255), np.uint8
-
- def display_inverse_cam(self, img_path):
- grayscale_cam, _ = self.display_heatmap(img_path)
-
- return 1 - grayscale_cam # (H,W), range(0~1), np.float32
-
-
\ No newline at end of file
diff --git a/explainability/explainer/base_explainer.py b/explainability/explainer/base_explainer.py
new file mode 100644
index 0000000..dc4fc62
--- /dev/null
+++ b/explainability/explainer/base_explainer.py
@@ -0,0 +1,194 @@
+import cv2
+import timm
+import torch
+import numpy as np
+from pathlib import Path
+from typing import List, Optional, Tuple, Literal, Callable
+from preprocess.face_detector import FaceDetector2
+from deepguard.data import get_test_transforms
+from explainability.utils.reshape_transforms import reshape_transform_vit, reshape_transform_gcvit
+
+class BaseExplainer:
+ def __init__(
+ self,
+ model_name: Literal["ms_eff_vit_b0", "ms_eff_vit_b5", "ms_eff_gcvit_b0", "ms_eff_gcvit_b5"],
+ dataset: Literal["celeb_df_v2", "ff++", "kodf"],
+ margin_ratio: float = 0.2,
+ conf_thres: float = 0.5,
+ branch_level: Literal["low", "high"] = "high",
+ l_stage_idx: int = -1, # gcvit low branch stage index (0~3)
+ block_idx: int = -1, # vit, gcvit block index
+ ):
+
+ self.device = "cuda:0" if torch.cuda.is_available() else 'cpu'
+ self.margin_ratio = margin_ratio
+ self.conf_thres = conf_thres
+ self.model_name = model_name
+ self.dataset = dataset
+ self.branch_level = branch_level
+ self.l_stage_idx = l_stage_idx
+ self.block_idx = block_idx
+
+ # Parse Model Metadata
+ self.model_variant = model_name.split("_")[-1] # b0, b5
+ self.transformer_type = model_name.split("_")[-2] # vit, gcvit
+
+ # Model & Tools setup
+ self.model = timm.create_model(model_name, pretrained=True, dataset=dataset)
+ self.face_detector = FaceDetector2(conf_thres)
+ self.img_size = [224,224] if self.model_variant == "b0" else [384,384]
+ self.transforms = get_test_transforms(img_size=self.img_size)
+
+ self.model.to(self.device).eval()
+
+ # Explainability setup
+ self.reshape_fn = self._get_reshape_fn()
+ self.target_layers = self._resolve_target_layers()
+
+ def _get_reshape_fn(self) -> Callable[[torch.Tensor], torch.Tensor]:
+ """모델 종류에 맞는 Feature map reshape 함수를 반환한다.
+
+ Returns:
+ Callable: 3D/4D 텐서를 GradCAM 연산에 적합한 형태로 변환하는 함수.
+ """
+ return reshape_transform_vit if self.transformer_type == "vit" else reshape_transform_gcvit
+
+ def _resolve_target_layers(self) -> list[torch.nn.Module]:
+ """시각화(XAI)의 대상이 될 Target Layer들을 선택한다.
+
+ Returns:
+ list[torch.nn.Module]: 분석 대상 정규화(Normalization) 레이어 리스트.
+
+ Raises:
+ ValueError: l_stage_idx나 block_idx가 모델 범위를 벗어날 경우 발생.
+ """
+ layers = []
+
+ if self.transformer_type == "gcvit":
+ n_stages = len(self.model.l_gcvit.stages)
+ stage_idx = self.l_stage_idx if self.l_stage_idx >= 0 else n_stages + self.l_stage_idx
+
+ if not (0 <= stage_idx < n_stages):
+ raise ValueError(f"l_stage_idx={self.l_stage_idx} 범위 초과 (stage 수: {n_stages})")
+
+ if self.branch_level in ("low", "both"):
+ n_blocks = len(self.model.l_gcvit.stages[stage_idx].blocks)
+ blk = self._resolve_block_idx(self.block_idx, n_blocks, f"l_gcvit stage[{stage_idx}]")
+ layers.append(self.model.l_gcvit.stages[stage_idx].blocks[blk].norm2)
+
+ if self.branch_level in ("high", "both"):
+ n_blocks = len(self.model.h_gcvit.stages[0].blocks)
+ blk = self._resolve_block_idx(self.block_idx, n_blocks, "h_gcvit stage[0]")
+ layers.append(self.model.h_gcvit.stages[0].blocks[blk].norm2)
+
+ else: # vit
+ if self.branch_level in ("low", "both"):
+ n_blocks = len(self.model.l_vit.blocks)
+ blk = self._resolve_block_idx(self.block_idx, n_blocks, "l_vit")
+ layers.append(self.model.l_vit.blocks[blk].norm1)
+
+ if self.branch_level in ("high", "both"):
+ n_blocks = len(self.model.h_vit.blocks)
+ blk = self._resolve_block_idx(self.block_idx, n_blocks, "h_vit")
+ layers.append(self.model.h_vit.blocks[blk].norm1)
+
+ return layers
+
+ @staticmethod
+ def _resolve_block_idx(block_idx: int, n_blocks: int, name: str) -> int:
+ """음수 인덱싱을 지원하며, 해당 블록의 유효한 인덱스를 계산 및 검증한다.
+
+ Args:
+ block_idx (int): 접근하려는 블록 인덱스 (음수 가능).
+ n_blocks (int): 해당 스테이지/모델의 총 블록 개수.
+ name (str): 에러 메시지 출력용 모듈 이름.
+
+ Returns:
+ int: 정제된 양수 형태의 블록 인덱스.
+
+ Raises:
+ ValueError: 인덱스가 유효 범위를 벗어난 경우 발생.
+ """
+ idx = block_idx if block_idx >= 0 else n_blocks + block_idx
+ if not (0 <= idx < n_blocks):
+ raise ValueError(f"block_idx={block_idx} 범위 초과 ({name} block 수: {n_blocks})")
+ return idx
+
+ def _get_face_bbox(self, img: np.ndarray) -> List[float]:
+ """얼굴 탐지기(YOLO)를 통해 이미지에서 얼굴 바운딩 박스를 좌표를 추출한다.
+
+ Args:
+ img (np.ndarray): HWC 형태의 RGB 이미지 데이터.
+
+ Returns:
+ list[float]: [xmin, ymin, xmax, ymax, confidence] 형태의 좌표 리스트.
+ """
+ result = self.face_detector.detect_batch([img], [1.0])
+ return result[0]
+
+ def _crop_face(self, img: np.ndarray, bbox: List[float]) -> np.ndarray:
+ """마진 비율을 고려하여 바운딩 박스 기준으로 얼굴 영역을 크롭한다.
+
+ Args:
+ img (np.ndarray): 전체 원본 이미지.
+ bbox (list[float]): 탐지된 [xmin, ymin, xmax, ymax] 얼굴 좌표.
+
+ Returns:
+ np.ndarray: 크롭된 얼굴 이미지 영역.
+ """
+ xmin, ymin, xmax, ymax = bbox
+ h, w = img.shape[:2]
+ pw = int((xmax - xmin) * self.margin_ratio)
+ ph = int((ymax - ymin) * self.margin_ratio)
+ return img[
+ max(int(ymin - ph), 0) : min(int(ymax + ph), h),
+ max(int(xmin - pw), 0) : min(int(xmax + pw), w),
+ ]
+
+ def _preprocess_img(self, img_path: str) -> np.ndarray:
+ """이미지 경로를 읽어 얼굴을 탐지하고 크롭하는 전과정을 수행한다.
+
+ Args:
+ img_path (str): 입력 이미지 파일 경로.
+
+ Returns:
+ np.ndarray: 전처리가 완료된 크롭된 얼굴 이미지 (RGB).
+ """
+ img = cv2.imread(img_path)
+ img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
+ detect_result = self._get_face_bbox(img)
+ bbox = detect_result[:4]
+ cropped = self._crop_face(img, bbox)
+ return cropped
+
+ def _get_transform(self, img_path: str) -> tuple[np.ndarray, torch.Tensor]:
+ """이미지 경로를 받아 크롭 이미지와 모델 입력용 텐서를 동시에 생성한다.
+
+ Args:
+ img_path (str): 입력 이미지 파일 경로.
+
+ Returns:
+ tuple[np.ndarray, torch.Tensor]: (크롭된 얼굴 이미지, (1, 3, H, W) 형태의 배치 텐서).
+ """
+ face = self._preprocess_img(img_path)
+ tensor = self.transforms(image=face)['image'].unsqueeze(0) # (1,3,H,W)
+ return face, tensor
+
+ def _get_transform_from_array(self, face: np.ndarray) -> tuple[np.ndarray, torch.Tensor]:
+ """이미 크롭된 얼굴 배열을 받아 모델 입력용 텐서로 변환한다.
+
+ Args:
+ face (np.ndarray): 이미 잘려진 얼굴 이미지 배열 (RGB).
+
+ Returns:
+ tuple[np.ndarray, torch.Tensor]: (원본 얼굴 이미지, (1, 3, H, W) 형태의 배치 텐서).
+ """
+ tensor = self.transforms(image=face)['image'].unsqueeze(0) # (1,3,H,W)
+ return face, tensor
+
+ def __repr__(self):
+ return (f"{self.__class__.__name__}("
+ f"model={self.model_name}, dataset={self.dataset}, "
+ f"margin_ratio={self.margin_ratio}, conf_thres={self.conf_thres}, "
+ f"branch_level={self.branch_level}, l_stage_idx={self.l_stage_idx}, block_idx={self.block_idx},"
+ f"device={self.device})")
\ No newline at end of file
diff --git a/explainability/explainer/cam_explainer.py b/explainability/explainer/cam_explainer.py
new file mode 100644
index 0000000..6ea15bb
--- /dev/null
+++ b/explainability/explainer/cam_explainer.py
@@ -0,0 +1,319 @@
+from typing import Union, Literal
+import torch
+import cv2
+import numpy as np
+from abc import ABC, abstractmethod
+from explainability.utils.model_targets import BinaryClassifierOutputTarget
+from explainability.utils.image import (
+ show_cam_on_image, show_bbox_on_image,
+ remove_padding_and_resize, draw_label
+)
+from explainability.explainer.base_explainer import BaseExplainer
+
+class CAMExplainer(BaseExplainer, ABC):
+ def __init__(self, **kwargs):
+ super().__init__(**kwargs)
+ self.cam = self._build_cam()
+
+ @abstractmethod
+ def _build_cam(self) -> any:
+ """하위 클래스에서 각 알고리즘(GradCAM, HiResCAM 등)에 맞는 CAM 객체를 생성한다.
+
+ Returns:
+ Any: pytorch-grad-cam 패키지의 CAM 기반 인스턴스.
+ """
+ pass
+
+ def _build_grayscale_cam(self, img_path: str,
+ category: int = 1,
+ aug_smooth: bool = False,
+ eigen_smooth: bool = False) -> tuple[np.ndarray, torch.Tensor, np.ndarray]:
+ """이미지 경로를 받아 전처리를 수행하고 raw 흑백(Grayscale) CAM을 생성한다.
+
+ Args:
+ img_path (str): 입력 이미지 파일 경로.
+ category (int, optional): 타겟 클래스 인덱스 (위조: 1, 정상: 0). Defaults to 1.
+ aug_smooth (bool, optional): Test-time augmentation 가동 여부. Defaults to False.
+ eigen_smooth (bool, optional): PCA 기반 노이즈 제거 가동 여부. Defaults to False.
+
+ Returns:
+ tuple[np.ndarray, torch.Tensor, np.ndarray]:
+ - grayscale_cam: (H, W) 형태의 0~1 사이로 정규화된 CAM 맵.
+ - tensor: (1, 3, H_model, W_model) 형태의 모델 입력용 GPU 텐서.
+ - face: 크롭된 원본 얼굴 이미지 배열 (RGB).
+ """
+
+ face, tensor = self._get_transform(img_path)
+ tensor = tensor.to(self.device)
+ targets = [BinaryClassifierOutputTarget(category)]
+
+ grayscale_cam = self.cam(
+ input_tensor=tensor,
+ targets=targets,
+ aug_smooth=aug_smooth,
+ eigen_smooth=eigen_smooth,
+ )
+ return grayscale_cam[0], tensor, face
+
+ def _build_grayscale_cam_from_array(self,
+ face: np.ndarray,
+ category: int = 1,
+ aug_smooth: bool = False,
+ eigen_smooth: bool = False) -> tuple[np.ndarray, torch.Tensor, np.ndarray]:
+ """이미 크롭된 얼굴 이미지 배열로부터 raw 흑백(Grayscale) CAM을 생성한다.
+
+ Args:
+ face (np.ndarray): 전처리(크롭)가 완료된 얼굴 이미지 배열 (RGB).
+ category (int, optional): 타겟 클래스 인덱스. Defaults to 1.
+ aug_smooth (bool, optional): Test-time augmentation 가동 여부. Defaults to False.
+ eigen_smooth (bool, optional): PCA 기반 노이즈 제거 가동 여부. Defaults to False.
+
+ Returns:
+ tuple[np.ndarray, torch.Tensor, np.ndarray]:
+ - grayscale_cam: (H, W) 형태의 0~1 사이로 정규화된 CAM 맵.
+ - tensor: (1, 3, H_model, W_model) 형태의 모델 입력용 GPU 텐서.
+ - face: 입력받은 원본 얼굴 이미지 배열.
+ """
+ face, tensor = self._get_transform_from_array(face)
+ tensor = tensor.to(self.device)
+ targets = [BinaryClassifierOutputTarget(category)]
+
+ grayscale_cam = self.cam(
+ input_tensor=tensor,
+ targets=targets,
+ aug_smooth=aug_smooth,
+ eigen_smooth=eigen_smooth,
+ )
+ return grayscale_cam[0], tensor, face
+
+ def _prepare_cam(self, img_path: str,
+ category: int = 1,
+ aug_smooth: bool = False,
+ eigen_smooth: bool = False) -> tuple[np.ndarray, np.ndarray]:
+ """흑백 CAM을 생성하고, 모델 입력 시 발생한 패딩 제거 및 원래 얼굴 해상도로 복원한다.
+
+ Args:
+ img_path (str): 입력 이미지 파일 경로.
+ category (int, optional): 타겟 클래스 인덱스. Defaults to 1.
+ aug_smooth (bool, optional): Test-time augmentation 가동 여부. Defaults to False.
+ eigen_smooth (bool, optional): PCA 기반 노이즈 제거 가동 여부. Defaults to False.
+
+ Returns:
+ tuple[np.ndarray, np.ndarray]:
+ - cam_recovered: 원본 얼굴 크기로 복원된 CAM 맵 (H_face, W_face).
+ - face: 크롭된 원본 얼굴 이미지 배열 (RGB).
+ """
+ grayscale_cam, tensor, face = self._build_grayscale_cam(img_path, category, aug_smooth, eigen_smooth)
+ cam_recovered = remove_padding_and_resize(grayscale_cam, face.shape, tensor.shape)
+ return cam_recovered, face
+
+ def _prepare_cam_from_array(self, face: np.ndarray,
+ category: int = 1,
+ aug_smooth: bool = False,
+ eigen_smooth: bool = False) -> tuple[np.ndarray, np.ndarray]:
+ """얼굴 배열로부터 흑백 CAM을 생성하고 원래 얼굴 해상도로 복원한다.
+
+ Args:
+ face (np.ndarray): 전처리(크롭)가 완료된 얼굴 이미지 배열 (RGB).
+ category (int, optional): 타겟 클래스 인덱스. Defaults to 1.
+ aug_smooth (bool, optional): Test-time augmentation 가동 여부. Defaults to False.
+ eigen_smooth (bool, optional): PCA 기반 노이즈 제거 가동 여부. Defaults to False.
+
+ Returns:
+ tuple[np.ndarray, np.ndarray]:
+ - cam_recovered: 원본 얼굴 크기로 복원된 CAM 맵 (H_face, W_face).
+ - face: 입력받은 원본 얼굴 이미지 배열.
+ """
+ grayscale_cam, tensor, face = self._build_grayscale_cam_from_array(face, category, aug_smooth, eigen_smooth)
+ cam_recovered = remove_padding_and_resize(grayscale_cam, face.shape, tensor.shape)
+ return cam_recovered, face
+
+ def _get_binary_mask(self, cam: np.ndarray, threshold: Union[float, Literal["auto"]]) -> np.ndarray:
+ """입력된 CAM 맵을 기반으로 위조 유력 부위를 이진화(Binary Mask)한다.
+
+ Args:
+ cam (np.ndarray): 0~1 사이 값을 가진 복원된 CAM 맵.
+ threshold (Union[float, 'auto']):
+ - float (0.0~1.0): 상위 백분위수 기준으로 임계값 설정 (예: 0.7 이면 상위 30% 영역 선택).
+ - 'auto': Otsu 알고리즘을 사용해 최적의 임계값을 자동으로 계산.
+
+ Returns:
+ np.ndarray: 0 또는 255 값을 가지는 이진화 마스크 맵 (np.uint8).
+ """
+ if threshold != 'auto':
+ t = np.percentile(cam, threshold * 100)
+ binary_mask = (cam > t).astype(np.uint8) * 255
+ else:
+ _, binary_mask = cv2.threshold(
+ np.uint8(cam * 255), 0, 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU
+ )
+ return binary_mask
+
+ def display_heatmap_on_image(self, img_path: str, **kwargs) -> np.ndarray:
+ """이미지 경로를 입력받아 원본 얼굴 위에 위조 흔적 히트맵을 중첩한 이미지를 생성한다.
+
+ Args:
+ img_path (str): 입력 이미지 파일 경로.
+ **kwargs:
+ category (int): 타겟 클래스 인덱스 (기본값: 1).
+ aug_smooth (bool): Test-time augmentation 가동 여부 (기본값: False).
+ eigen_smooth (bool): PCA 기반 노이즈 제거 가동 여부 (기본값: False).
+ threshold (float | str): 이진화 임계값 (기본값: "auto").
+ colormap (int): OpenCV 컬러맵 상수 (기본값: cv2.COLORMAP_JET).
+ image_weight (float): 원본 이미지 불투명도 가중치 (기본값: 0.5).
+
+ Returns:
+ np.ndarray: 히트맵이 합성된 얼굴 이미지 (RGB, np.uint8).
+ """
+ cam_recovered, face = self._prepare_cam(
+ img_path,
+ category = kwargs.get("category", 1),
+ aug_smooth = kwargs.get("aug_smooth", False),
+ eigen_smooth = kwargs.get("eigen_smooth", False))
+
+ binary_mask = self._get_binary_mask(cam_recovered, kwargs.get("threshold", "auto"))
+ cam_recovered = np.where(binary_mask > 0, cam_recovered, 0.0)
+
+ return show_cam_on_image(
+ np.float32(face) / 255.0,
+ cam_recovered,
+ use_rgb = True,
+ colormap = kwargs.get("colormap", cv2.COLORMAP_JET),
+ image_weight = kwargs.get("image_weight", 0.5),
+ )
+
+ def display_heatmap_from_array(self, face: np.ndarray, **kwargs) -> np.ndarray:
+ """얼굴 배열을 직접 입력받아 원본 얼굴 위에 위조 흔적 히트맵을 중첩한 이미지를 생성한다.
+
+ Args:
+ face (np.ndarray): 전처리(크롭)가 완료된 얼굴 이미지 배열 (RGB).
+ **kwargs:
+ category (int): 타겟 클래스 인덱스 (기본값: 1).
+ aug_smooth (bool): Test-time augmentation 가동 여부 (기본값: False).
+ eigen_smooth (bool): PCA 기반 노이즈 제거 가동 여부 (기본값: False).
+ threshold (float | str): 이진화 임계값 (기본값: "auto").
+ colormap (int): OpenCV 컬러맵 상수 (기본값: cv2.COLORMAP_JET).
+ image_weight (float): 원본 이미지 불투명도 가중치 (기본값: 0.5).
+
+ Returns:
+ np.ndarray: 히트맵이 합성된 얼굴 이미지 (RGB, np.uint8).
+ """
+
+ cam_recovered, face = self._prepare_cam_from_array(
+ face,
+ category = kwargs.get("category", 1),
+ aug_smooth = kwargs.get("aug_smooth", False),
+ eigen_smooth = kwargs.get("eigen_smooth", False))
+
+ binary_mask = self._get_binary_mask(cam_recovered, kwargs.get("threshold", "auto"))
+ cam_recovered = np.where(binary_mask > 0, cam_recovered, 0.0)
+
+ return show_cam_on_image(
+ np.float32(face) / 255.0,
+ cam_recovered,
+ use_rgb = True,
+ colormap = kwargs.get("colormap", cv2.COLORMAP_JET),
+ image_weight = kwargs.get("image_weight", 0.5),
+ )
+
+ def display_bbox_on_image(self, img_path: str, **kwargs) -> np.ndarray:
+ """이미지 경로를 입력받아 위조 의심 부위를 찾아 사각형 바운딩 박스와 확률을 그린다.
+
+ Args:
+ img_path (str): 입력 이미지 파일 경로.
+ **kwargs:
+ category (int): 타겟 클래스 인덱스 (기본값: 1).
+ aug_smooth (bool): Test-time augmentation 가동 여부 (기본값: False).
+ eigen_smooth (bool): PCA 기반 노이즈 제거 가동 여부 (기본값: False).
+ threshold (float | str): 이진화 임계값 (기본값: "auto").
+ thickness (int): 사각형 선 굵기 (기본값: 2).
+
+ Returns:
+ np.ndarray: 바운딩 박스와 어노테이션이 추가된 원본 얼굴 이미지 (RGB).
+ """
+ cam_recovered, face = self._prepare_cam(
+ img_path,
+ category = kwargs.get("category", 1),
+ aug_smooth = kwargs.get("aug_smooth", False),
+ eigen_smooth = kwargs.get("eigen_smooth", False)
+ )
+
+ annotated_img = face.copy()
+
+ binary_mask = self._get_binary_mask(cam_recovered, kwargs.get("threshold", "auto"))
+ show_bbox_on_image(annotated_img, cam_recovered, binary_mask, kwargs.get("thickness", 1))
+
+ return annotated_img
+
+ def display_bbox_from_array(self, face: np.ndarray, **kwargs) -> np.ndarray:
+ """얼굴 배열을 직접 입력받아 위조 의심 부위를 찾아 사각형 바운딩 박스와 확률을 그린다.
+
+ Args:
+ face (np.ndarray): 전처리(크롭)가 완료된 얼굴 이미지 배열 (RGB).
+ **kwargs:
+ category (int): 타겟 클래스 인덱스 (기본값: 1).
+ aug_smooth (bool): Test-time augmentation 가동 여부 (기본값: False).
+ eigen_smooth (bool): PCA 기반 노이즈 제거 가동 여부 (기본값: False).
+ threshold (float | str): 이진화 임계값 (기본값: "auto").
+ thickness (int): 사각형 선 굵기 (기본값: 2).
+
+ Returns:
+ np.ndarray: 바운딩 박스와 어노테이션이 추가된 원본 얼굴 이미지 (RGB).
+ """
+ cam_recovered, face = self._prepare_cam_from_array(
+ face,
+ category = kwargs.get("category", 1),
+ aug_smooth = kwargs.get("aug_smooth", False),
+ eigen_smooth = kwargs.get("eigen_smooth", False)
+ )
+
+ annotated_img = face.copy()
+
+ binary_mask = self._get_binary_mask(cam_recovered, kwargs.get("threshold", "auto"))
+ show_bbox_on_image(annotated_img, cam_recovered, binary_mask, kwargs.get("thickness", 1))
+
+ return annotated_img
+
+ def display_heatmap_bbox_on_image(self, img_path: str, **kwargs) -> np.ndarray:
+ cam_recovered, face = self._prepare_cam(
+ img_path,
+ category = kwargs.get("category", 1),
+ aug_smooth = kwargs.get("aug_smooth", False),
+ eigen_smooth = kwargs.get("eigen_smooth", False)
+ )
+
+ binary_mask = self._get_binary_mask(cam_recovered, kwargs.get("threshold", "auto"))
+ cam_recovered = np.where(binary_mask > 0, cam_recovered, 0.0)
+
+ heatmap = show_cam_on_image(
+ np.float32(face) / 255.0,
+ cam_recovered,
+ use_rgb = True,
+ colormap = kwargs.get("colormap", cv2.COLORMAP_JET),
+ image_weight = kwargs.get("image_weight", 0.5),
+ )
+
+ show_bbox_on_image(heatmap, cam_recovered, binary_mask, kwargs.get("thickness", 1))
+ return heatmap
+
+ def display_heatmap_bbox_from_array(self, face: np.ndarray, **kwargs) -> np.ndarray:
+ cam_recovered, face = self._prepare_cam_from_array(
+ face,
+ category = kwargs.get("category", 1),
+ aug_smooth = kwargs.get("aug_smooth", False),
+ eigen_smooth = kwargs.get("eigen_smooth", False)
+ )
+
+ binary_mask = self._get_binary_mask(cam_recovered, kwargs.get("threshold", "auto"))
+ cam_recovered = np.where(binary_mask > 0, cam_recovered, 0.0)
+
+ heatmap = show_cam_on_image(
+ np.float32(face) / 255.0,
+ cam_recovered,
+ use_rgb = True,
+ colormap = kwargs.get("colormap", cv2.COLORMAP_JET),
+ image_weight = kwargs.get("image_weight", 0.5),
+ )
+
+ show_bbox_on_image(heatmap, cam_recovered, binary_mask, kwargs.get("thickness", 1))
+ return heatmap
\ No newline at end of file
diff --git a/explainability/eigenvalue_explainers.py b/explainability/explainer/eigenvalue_explainer.py
similarity index 69%
rename from explainability/eigenvalue_explainers.py
rename to explainability/explainer/eigenvalue_explainer.py
index 7f53174..9aa2633 100644
--- a/explainability/eigenvalue_explainers.py
+++ b/explainability/explainer/eigenvalue_explainer.py
@@ -1,5 +1,5 @@
-from pytorch_grad_cam import EigenCAM, EigenGradCAM, KPCA_CAM, SegEigenCAM
-from explainability.cam_explainer import CAMExplainer
+from pytorch_grad_cam import EigenCAM, EigenGradCAM, KPCA_CAM
+from explainability.explainer.cam_explainer import CAMExplainer
class EigenCAMExplainer(CAMExplainer):
"""
@@ -31,14 +31,5 @@ def _build_cam(self):
return KPCA_CAM(model=self.model, target_layers=self.target_layers, reshape_transform=self.reshape_fn,
kernel=self.kernel, gamma=self.gamma)
-class SegEigenCAMExplainer(CAMExplainer):
- """
- Like EigenCAM but with gradient weighting (absolute gradients ⊙ activations )
- before SVD and sign correction to fix SVD sign ambiguity
- designed for semantic segmentation
- """
- def _build_cam(self):
- return SegEigenCAM(model=self.model, target_layers=self.target_layers, reshape_transform=self.reshape_fn)
-
-
-
+ def __repr__(self):
+ return super().__repr__().rstrip(")") + f", kernel={self.kernel}, gamma={self.gamma})"
diff --git a/explainability/gradient_explainer.py b/explainability/explainer/gradient_explainer.py
similarity index 56%
rename from explainability/gradient_explainer.py
rename to explainability/explainer/gradient_explainer.py
index f50bff9..3767fc7 100644
--- a/explainability/gradient_explainer.py
+++ b/explainability/explainer/gradient_explainer.py
@@ -1,8 +1,8 @@
from pytorch_grad_cam import (
GradCAM, GradCAMPlusPlus, GradCAMElementWise,
- XGradCAM, HiResCAM, FullGrad, ShapleyCAM, FinerCAM,
+ XGradCAM, HiResCAM
)
-from explainability.cam_explainer import CAMExplainer
+from explainability.explainer.cam_explainer import CAMExplainer
class GradCAMExplainer(CAMExplainer):
@@ -44,29 +44,4 @@ def _build_cam(self):
return HiResCAM(model=self.model, target_layers=self.target_layers, reshape_transform=self.reshape_fn)
-class FullGradExplainer(CAMExplainer):
- """
- Computes the gradients of the biases from all over the network, and then sums them
- """
- def _build_cam(self):
- return FullGrad(model=self.model, target_layers=self.target_layers, reshape_transform=self.reshape_fn)
-
-
-class ShapleyCAMExplainer(CAMExplainer):
- """
- Weight the activations using the gradient and Hessian-vector product.
- """
- def _build_cam(self):
- return ShapleyCAM(model=self.model, target_layers=self.target_layers, reshape_transform=self.reshape_fn)
-
-
-class FinerCAMExplainer(CAMExplainer):
- """
- Improves fine-grained classification by comparing similar classes, suppressing shared features and highlighting discriminative details.
- """
- def __init__(self, base_method=GradCAM, **kwargs):
- self.base_method = base_method
- super().__init__(**kwargs)
-
- def _build_cam(self):
- return FinerCAM(model=self.model, target_layers=self.target_layers, reshape_transform=self.reshape_fn, base_method=self.base_method)
\ No newline at end of file
+
diff --git a/explainability/explainer/misc_explainer.py b/explainability/explainer/misc_explainer.py
new file mode 100644
index 0000000..85cb38f
--- /dev/null
+++ b/explainability/explainer/misc_explainer.py
@@ -0,0 +1,13 @@
+from pytorch_grad_cam import LayerCAM, RandomCAM
+from explainability.explainer.cam_explainer import CAMExplainer
+
+
+class LayerCAMExplainer(CAMExplainer):
+ """
+ Spatially weight the activations by positive gradients.
+ Works better especially in lower layers
+ """
+ def _build_cam(self):
+ return LayerCAM(model=self.model, target_layers=self.target_layers, reshape_transform=self.reshape_fn)
+
+
diff --git a/explainability/explainer/perturbation_explainer.py b/explainability/explainer/perturbation_explainer.py
new file mode 100644
index 0000000..cb460aa
--- /dev/null
+++ b/explainability/explainer/perturbation_explainer.py
@@ -0,0 +1,24 @@
+from pytorch_grad_cam import ScoreCAM, FEM
+from explainability.explainer.cam_explainer import CAMExplainer
+class ScoreCAMExplainer(CAMExplainer):
+ """
+ Perbutate the image by the scaled activation
+ mesaure how the output drops
+ """
+ def _build_cam(self):
+ return ScoreCAM(model=self.model, target_layers=self.target_layers, reshape_transform=self.reshape_fn)
+
+class FEMExplainer(CAMExplainer):
+ """
+ A gradient free method that binarizes activations
+ by an activation > mean + k * std rule
+ """
+ def __init__(self, k: int = 2, **kwargs):
+ self.k = k
+ super().__init__(**kwargs)
+
+ def _build_cam(self):
+ return FEM(model=self.model, target_layers=self.target_layers, reshape_transform=self.reshape_fn, k=self.k)
+
+ def __repr__(self):
+ return super().__repr__().rstrip(")") + f", k={self.k})"
\ No newline at end of file
diff --git a/explainability/metrics/__init__.py b/explainability/metrics/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/explainability/metrics/cam_mult_image.py b/explainability/metrics/cam_mult_image.py
new file mode 100644
index 0000000..c46751e
--- /dev/null
+++ b/explainability/metrics/cam_mult_image.py
@@ -0,0 +1,37 @@
+import torch
+import numpy as np
+from typing import List, Callable
+from explainability.metrics.perturbation_confidence import PerturbationConfidenceMetric
+
+
+def multiply_tensor_with_cam(input_tensor: torch.Tensor,
+ cam: torch.Tensor):
+ """ Multiply an input tensor (after normalization)
+ with a pixel attribution map
+ """
+ return input_tensor * cam
+
+
+class CamMultImageConfidenceChange(PerturbationConfidenceMetric):
+ def __init__(self):
+ super(CamMultImageConfidenceChange,
+ self).__init__(multiply_tensor_with_cam)
+
+
+class DropInConfidence(CamMultImageConfidenceChange):
+ def __init__(self):
+ super(DropInConfidence, self).__init__()
+
+ def __call__(self, *args, **kwargs):
+ scores = super(DropInConfidence, self).__call__(*args, **kwargs)
+ scores = -scores
+ return np.maximum(scores, 0)
+
+
+class IncreaseInConfidence(CamMultImageConfidenceChange):
+ def __init__(self):
+ super(IncreaseInConfidence, self).__init__()
+
+ def __call__(self, *args, **kwargs):
+ scores = super(IncreaseInConfidence, self).__call__(*args, **kwargs)
+ return np.float32(scores > 0)
\ No newline at end of file
diff --git a/explainability/metrics/perturbation_confidence.py b/explainability/metrics/perturbation_confidence.py
new file mode 100644
index 0000000..211ab8a
--- /dev/null
+++ b/explainability/metrics/perturbation_confidence.py
@@ -0,0 +1,109 @@
+import torch
+import numpy as np
+from typing import List, Callable
+
+import numpy as np
+import cv2
+
+
+class PerturbationConfidenceMetric:
+ def __init__(self, perturbation):
+ self.perturbation = perturbation
+
+ def __call__(self, input_tensor: torch.Tensor,
+ cams: np.ndarray,
+ targets: List[Callable],
+ model: torch.nn.Module,
+ return_visualization=False,
+ return_diff=True):
+
+ if return_diff:
+ with torch.no_grad():
+ outputs = model(input_tensor)
+ scores = [target(output).cpu().numpy()
+ for target, output in zip(targets, outputs)]
+ scores = np.float32(scores)
+
+ batch_size = input_tensor.size(0)
+ perturbated_tensors = []
+ for i in range(batch_size):
+ cam = cams[i]
+ tensor = self.perturbation(input_tensor[i, ...].cpu(),
+ torch.from_numpy(cam))
+ tensor = tensor.to(input_tensor.device)
+ perturbated_tensors.append(tensor.unsqueeze(0))
+ perturbated_tensors = torch.cat(perturbated_tensors)
+
+ with torch.no_grad():
+ outputs_after_imputation = model(perturbated_tensors)
+ scores_after_imputation = [
+ target(output).cpu().numpy() for target, output in zip(
+ targets, outputs_after_imputation)]
+ scores_after_imputation = np.float32(scores_after_imputation)
+
+ if return_diff:
+ result = scores_after_imputation - scores
+ else:
+ result = scores_after_imputation
+
+ if return_visualization:
+ return result, perturbated_tensors
+ else:
+ return result
+
+
+class RemoveMostRelevantFirst:
+ def __init__(self, percentile, imputer):
+ self.percentile = percentile
+ self.imputer = imputer
+
+ def __call__(self, input_tensor, mask):
+ imputer = self.imputer
+ if self.percentile != 'auto':
+ threshold = np.percentile(mask.cpu().numpy(), self.percentile)
+ binary_mask = np.float32(mask < threshold)
+ else:
+ _, binary_mask = cv2.threshold(
+ np.uint8(mask * 255), 0, 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU)
+
+ binary_mask = torch.from_numpy(binary_mask)
+ binary_mask = binary_mask.to(mask.device)
+ return imputer(input_tensor, binary_mask)
+
+
+class RemoveLeastRelevantFirst(RemoveMostRelevantFirst):
+ def __init__(self, percentile, imputer):
+ super(RemoveLeastRelevantFirst, self).__init__(percentile, imputer)
+
+ def __call__(self, input_tensor, mask):
+ return super(RemoveLeastRelevantFirst, self).__call__(
+ input_tensor, 1 - mask)
+
+
+class AveragerAcrossThresholds:
+ def __init__(
+ self,
+ imputer,
+ percentiles=[
+ 10,
+ 20,
+ 30,
+ 40,
+ 50,
+ 60,
+ 70,
+ 80,
+ 90]):
+ self.imputer = imputer
+ self.percentiles = percentiles
+
+ def __call__(self,
+ input_tensor: torch.Tensor,
+ cams: np.ndarray,
+ targets: List[Callable],
+ model: torch.nn.Module):
+ scores = []
+ for percentile in self.percentiles:
+ imputer = self.imputer(percentile)
+ scores.append(imputer(input_tensor, cams, targets, model))
+ return np.mean(np.float32(scores), axis=0)
\ No newline at end of file
diff --git a/explainability/metrics/road.py b/explainability/metrics/road.py
new file mode 100644
index 0000000..905f84e
--- /dev/null
+++ b/explainability/metrics/road.py
@@ -0,0 +1,154 @@
+import torch
+import numpy as np
+from scipy.sparse import lil_matrix, csc_matrix
+from scipy.sparse.linalg import spsolve
+from typing import List, Callable
+from explainability.metrics.perturbation_confidence import (
+ PerturbationConfidenceMetric, AveragerAcrossThresholds,
+ RemoveMostRelevantFirst, RemoveLeastRelevantFirst
+)
+
+# The weights of the surrounding pixels
+neighbors_weights = [((1, 1), 1 / 12),
+ ((0, 1), 1 / 6),
+ ((-1, 1), 1 / 12),
+ ((1, -1), 1 / 12),
+ ((0, -1), 1 / 6),
+ ((-1, -1), 1 / 12),
+ ((1, 0), 1 / 6),
+ ((-1, 0), 1 / 6)]
+
+
+class NoisyLinearImputer:
+ def __init__(self,
+ noise: float = 0.01,
+ weighting: List[float] = neighbors_weights):
+ """
+ Noisy linear imputation.
+ noise: magnitude of noise to add (absolute, set to 0 for no noise)
+ weighting: Weights of the neighboring pixels in the computation.
+ List of tuples of (offset, weight)
+ """
+ self.noise = noise
+ self.weighting = neighbors_weights
+
+ @staticmethod
+ def add_offset_to_indices(indices, offset, mask_shape):
+ """ Add the corresponding offset to the indices.
+ Return new indices plus a valid bit-vector. """
+ cord1 = indices % mask_shape[1]
+ cord0 = indices // mask_shape[1]
+ cord0 += offset[0]
+ cord1 += offset[1]
+ valid = ((cord0 < 0) | (cord1 < 0) |
+ (cord0 >= mask_shape[0]) |
+ (cord1 >= mask_shape[1]))
+ return ~valid, indices + offset[0] * mask_shape[1] + offset[1]
+
+ @staticmethod
+ def setup_sparse_system(mask, img, neighbors_weights):
+ """ Vectorized version to set up the equation system.
+ mask: (H, W)-tensor of missing pixels.
+ Image: (H, W, C)-tensor of all values.
+ Return (N,N)-System matrix, (N,C)-Right hand side for each of the C channels.
+ """
+ maskflt = mask.flatten()
+ imgflat = img.reshape((img.shape[0], -1))
+ # Indices that are imputed in the flattened mask:
+ indices = np.argwhere(maskflt == 0).flatten()
+ coords_to_vidx = np.zeros(len(maskflt), dtype=int)
+ coords_to_vidx[indices] = np.arange(len(indices))
+ numEquations = len(indices)
+ # System matrix:
+ A = lil_matrix((numEquations, numEquations))
+ b = np.zeros((numEquations, img.shape[0]))
+ # Sum of weights assigned:
+ sum_neighbors = np.ones(numEquations)
+ for n in neighbors_weights:
+ offset, weight = n[0], n[1]
+ # Take out outliers
+ valid, new_coords = NoisyLinearImputer.add_offset_to_indices(
+ indices, offset, mask.shape)
+ valid_coords = new_coords[valid]
+ valid_ids = np.argwhere(valid == 1).flatten()
+ # Add values to the right hand-side
+ has_values_coords = valid_coords[maskflt[valid_coords] > 0.5]
+ has_values_ids = valid_ids[maskflt[valid_coords] > 0.5]
+ b[has_values_ids, :] -= weight * imgflat[:, has_values_coords].T
+ # Add weights to the system (left hand side)
+# Find coordinates in the system.
+ has_no_values = valid_coords[maskflt[valid_coords] < 0.5]
+ variable_ids = coords_to_vidx[has_no_values]
+ has_no_values_ids = valid_ids[maskflt[valid_coords] < 0.5]
+ A[has_no_values_ids, variable_ids] = weight
+ # Reduce weight for invalid
+ sum_neighbors[np.argwhere(valid == 0).flatten()] = \
+ sum_neighbors[np.argwhere(valid == 0).flatten()] - weight
+
+ A[np.arange(numEquations), np.arange(numEquations)] = -sum_neighbors
+ return A, b
+
+ def __call__(self, img: torch.Tensor, mask: torch.Tensor):
+ """ Our linear inputation scheme. """
+ """
+ This is the function to do the linear infilling
+ img: original image (C,H,W)-tensor;
+ mask: mask; (H,W)-tensor
+
+ """
+ imgflt = img.reshape(img.shape[0], -1)
+ maskflt = mask.reshape(-1)
+ # Indices that need to be imputed.
+ indices_linear = np.argwhere(maskflt == 0).flatten()
+ # Set up sparse equation system, solve system.
+ A, b = NoisyLinearImputer.setup_sparse_system(
+ mask.numpy(), img.numpy(), neighbors_weights)
+ res = torch.tensor(spsolve(csc_matrix(A), b), dtype=torch.float)
+
+ # Fill the values with the solution of the system.
+ img_infill = imgflt.clone()
+ img_infill[:, indices_linear] = res.t() + self.noise * \
+ torch.randn_like(res.t())
+
+ return img_infill.reshape_as(img)
+
+
+class ROADMostRelevantFirst(PerturbationConfidenceMetric):
+ def __init__(self, percentile=80):
+ super(ROADMostRelevantFirst, self).__init__(
+ RemoveMostRelevantFirst(percentile, NoisyLinearImputer()))
+
+
+class ROADLeastRelevantFirst(PerturbationConfidenceMetric):
+ def __init__(self, percentile=20):
+ super(ROADLeastRelevantFirst, self).__init__(
+ RemoveLeastRelevantFirst(percentile, NoisyLinearImputer()))
+
+
+class ROADMostRelevantFirstAverage(AveragerAcrossThresholds):
+ def __init__(self, percentiles=[10, 20, 30, 40, 50, 60, 70, 80, 90]):
+ super(ROADMostRelevantFirstAverage, self).__init__(
+ ROADMostRelevantFirst, percentiles)
+
+
+class ROADLeastRelevantFirstAverage(AveragerAcrossThresholds):
+ def __init__(self, percentiles=[10, 20, 30, 40, 50, 60, 70, 80, 90]):
+ super(ROADLeastRelevantFirstAverage, self).__init__(
+ ROADLeastRelevantFirst, percentiles)
+
+
+class ROADCombined:
+ def __init__(self, percentiles=[10, 20, 30, 40, 50, 60, 70, 80, 90]):
+ self.percentiles = percentiles
+ self.morf_averager = ROADMostRelevantFirstAverage(percentiles)
+ self.lerf_averager = ROADLeastRelevantFirstAverage(percentiles)
+
+ def __call__(self,
+ input_tensor: torch.Tensor,
+ cams: np.ndarray,
+ targets: List[Callable],
+ model: torch.nn.Module):
+
+ scores_lerf = self.lerf_averager(input_tensor, cams, targets, model)
+ scores_morf = self.morf_averager(input_tensor, cams, targets, model)
+ return (scores_lerf - scores_morf) / 2
\ No newline at end of file
diff --git a/explainability/utils/image.py b/explainability/utils/image.py
index 83b90fa..30cef9c 100644
--- a/explainability/utils/image.py
+++ b/explainability/utils/image.py
@@ -35,13 +35,52 @@ def show_cam_on_image(img: np.ndarray,
cam = cam / np.max(cam)
return np.uint8(255 * cam)
-def deprocess_image(tensor):
- mean = np.array([0.485, 0.456, 0.406])
- std = np.array([0.229, 0.224, 0.225])
+def show_bbox_on_image(annotated_img: np.ndarray, cam_recovered: np.ndarray, binary_mask: np.ndarray, thickness: int = 1):
+ contours, _ = cv2.findContours(binary_mask, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
- # (1, C, H, W -> H, W, C)
- img = tensor.squeeze().cpu().numpy().transpose(1, 2, 0)
- img = (img * std) + mean
- img = np.clip(img, 0, 1) # range(0~1)
+ for c in contours:
+ x, y, bw, bh = cv2.boundingRect(c)
+ roi_prob = float(np.max(cam_recovered[y:y + bh, x:x + bw]))
- return np.float32(img)
\ No newline at end of file
+ r = int(min(255, 2 * roi_prob * 255))
+ g = int(min(255, 2 * (1 - roi_prob) * 255))
+ box_color = (r, g, 30)
+
+ cv2.rectangle(annotated_img, (x, y), (x + bw, y + bh), box_color, thickness)
+
+ draw_label(annotated_img, f"{roi_prob * 100:.0f}%", x, max(y - 5, 12), roi_prob)
+
+def remove_padding_and_resize(cam, orig_shape, target_shape):
+ orig_h, orig_w = orig_shape[:2] # (H,W,3)
+ target_h, target_w = target_shape[2:] # (1,3,H,W)
+
+ scale = max(target_h, target_w) / max(orig_h, orig_w)
+ new_h, new_w = int(orig_h * scale), int(orig_w * scale)
+
+ pad_h = (target_h - new_h) // 2
+ pad_w = (target_w - new_w) // 2
+
+ # Remove Padding
+ unpadded_cam = cam[pad_h:pad_h+new_h, pad_w:pad_w+new_w]
+ return cv2.resize(unpadded_cam, (orig_w, orig_h))
+
+def draw_label(img: np.ndarray, text: str, x: int, y: int, prob_ratio: float = 1.0):
+ h, w = img.shape[:2]
+ font = cv2.FONT_HERSHEY_SIMPLEX
+ font_scale = max(0.28, min(w,h) / 1000) # 이미지 크기 기반 동적 스케일
+ thickness = 1
+ pad = 4
+
+ (tw, th), baseline = cv2.getTextSize(text, font, font_scale, thickness)
+
+ rx1, ry1 = x - pad, y - th - pad
+ rx2, ry2 = x + tw + pad, y + baseline + pad
+
+ r = int(min(255, 2 * prob_ratio * 255))
+ g = int(min(255, 2 * (1 - prob_ratio) * 255))
+ bg_color = (r, g, 30) # RGB: green → red
+
+ overlay = img.copy()
+ cv2.rectangle(overlay, (rx1, ry1), (rx2, ry2), bg_color, -1)
+ cv2.addWeighted(overlay, 0.6, img, 0.4, 0, img)
+ cv2.putText(img, text, (x, y), font, font_scale, (255, 255, 255), thickness, cv2.LINE_AA)
diff --git a/explainability/utils/model_targets.py b/explainability/utils/model_targets.py
index 62ba03a..ba63a85 100644
--- a/explainability/utils/model_targets.py
+++ b/explainability/utils/model_targets.py
@@ -1,3 +1,5 @@
+import torch
+
class BinaryClassifierOutputTarget:
def __init__(self, category):
self.category = category
@@ -8,4 +10,7 @@ def __call__(self, model_output):
else:
sign = -1
return model_output * sign
-
\ No newline at end of file
+
+class BinaryClassifierOutputSigmoidTarget:
+ def __call__(self, model_output):
+ return torch.sigmoid(model_output)
\ No newline at end of file
diff --git a/inference/video_predictor_prt.py b/inference/video_predictor_prt.py
index d854bc8..d6e6e9a 100644
--- a/inference/video_predictor_prt.py
+++ b/inference/video_predictor_prt.py
@@ -47,9 +47,8 @@ def _extract_frames(self, video_path: str) -> Dict[int, np.ndarray]:
frame_cnt = int(cap.get(cv2.CAP_PROP_FRAME_COUNT))
fps = cap.get(cv2.CAP_PROP_FPS) or 30.0
- duration_sec = int(frame_cnt / fps)
- num_frames = max(10, min(duration_sec, 60))
-
+ num_frames = int(frame_cnt / fps)
+
frame_indices = [min(int(sec * fps), frame_cnt - 1) for sec in range(num_frames)]
frame_indices = sorted(set(frame_indices))
frames = {}
diff --git a/labels.txt b/labels.txt
deleted file mode 100644
index 505ee95..0000000
--- a/labels.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-label2id = {
- "REAL": 0,
- "FAKE": 1,
-}
\ No newline at end of file
diff --git a/pyproject.toml b/pyproject.toml
new file mode 100644
index 0000000..2d4ad22
--- /dev/null
+++ b/pyproject.toml
@@ -0,0 +1,51 @@
+[build-system]
+requires = ["setuptools>=68", "wheel"]
+build-backend = "setuptools.build_meta"
+
+# ─────────────────────────────────────────────
+# [project]
+# PyPI에 올라가는 패키지 메타데이터
+# pip install deepguard 했을 때 보이는 정보들
+# ─────────────────────────────────────────────
+[project]
+name = "deepguard" # pip install deepguard 할 때 이 이름
+version = "0.2.1" # pip install deepguard==0.2.1 으로 버전 고정 가능
+description = "Multi-Scale Efficient Vision Transformer for Robust Deepfake Detection"
+readme = "README.md" # PyPI 페이지에 표시될 설명 (마크다운)
+requires-python = ">=3.10" # 이 버전 미만이면 pip install 자체를 막음
+license = { text = "MIT" }
+authors = [
+ { name = "seoyunje", email = "seoyunje2001@gmail.com" }
+]
+classifiers = [
+ "Programming Language :: Python :: 3",
+ "Programming Language :: Python :: 3.10",
+ "Programming Language :: Python :: 3.11",
+ "License :: OSI Approved :: MIT License",
+ "Operating System :: OS Independent",
+ "Topic :: Scientific/Engineering :: Artificial Intelligence",
+]
+
+dependencies = ["torch>=2.10.0",
+ "torchmetrics>=1.6.1",
+ "timm>=1.0.12",
+ "ultralytics>=8.4.41",
+ "grad-cam>=1.5.5"
+ ]
+
+[project.urls]
+Homepage = "https://github.com/HanMoonSub/DeepGuard"
+"Bug Tracker" = "https://github.com/HanMoonSub/DeepGuard/issues"
+"Source Code" = "https://github.com/HanMoonSub/DeepGuard"
+
+
+[tool.setuptools.packages.find]
+
+include = [
+ "deepguard*", # 모델, 레이어, 데이터셋 등 핵심 패키지
+ "inference*", # ImagePredictor, VideoPredictor
+ "explainability*", # CAM 기반 XAI
+ "preprocess*", # 얼굴 검출, 프레임 추출 등
+]
+
+exclude = ["App*", "client*"]
\ No newline at end of file
diff --git a/requirements.txt b/requirements.txt
index ce368d3..a7bc9ab 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -5,6 +5,7 @@ python-multipart>=0.0.22
pydantic[email]>=2.12.5
aiofiles>=25.1.0
itsdangerous>=2.2.0
+python-dotenv>=0.9.9
# --- [Database & ORM] ---
sqlalchemy>=2.0.48
@@ -16,6 +17,7 @@ redis>=7.4.0
# --- [Security & Auth] ---
bcrypt>=4.0.1
passlib[bcrypt]>=1.7.4
+cryptography>=42.0.0
# --- [Data Analysis & Math] ---
numpy>=1.23.0,<3.0.0
@@ -40,4 +42,7 @@ seaborn>=0.13.2
colorama>=0.4.6
# --- [Distributed Task Queue] ---
-celery>=5.6.3
\ No newline at end of file
+celery>=5.6.3
+
+# --- [Linting & Formatting] ---
+ruff>=0.9.0
\ No newline at end of file
diff --git a/setup.py b/setup.py
deleted file mode 100644
index 16d3c3c..0000000
--- a/setup.py
+++ /dev/null
@@ -1,30 +0,0 @@
-import setuptools
-
-with open("README.md", mode='r', encoding='utf-8') as fh:
- long_description = fh.read()
-
-setuptools.setup(
- name = 'deepguard',
- version = '0.2.1',
- author = 'seoyunje',
- author_email = "seoyunje2001@gmail.com",
- description = "Multi-Scale Efficient Vision Transformer for Robust Deepfake Detection",
- long_description = long_description,
- long_description_content_type ='text/markdown',
- url = 'https://github.com/HanMoonSub/DeepGuard',
- project_urls = {
- "Bug Tracker": "https://github.com/HanMoonSub/DeepGuard/issues",
- "Source Code": "https://github.com/HanMoonSub/DeepGuard",
- },
- classifiers = [
- 'Programming Language :: Python :: 3',
- 'Programming Language :: Python :: 3.10',
- 'Programming Language :: Python :: 3.11',
- 'License :: OSI Approved :: MIT License',
- 'Operating System :: OS Independent',
- 'Topic :: Scientific/Engineering :: Artificial Intelligence',
- ],
- packages = setuptools.find_packages(exclude=['Attention', 'preprocess','inference']),
- python_requires = '>=3.10',
- install_requires = []
-)
\ No newline at end of file
diff --git a/tutorials/high_level_visualization.ipynb b/tutorials/high_level_visualization.ipynb
new file mode 100644
index 0000000..ab2d3bb
--- /dev/null
+++ b/tutorials/high_level_visualization.ipynb
@@ -0,0 +1,278 @@
+{
+ "nbformat": 4,
+ "nbformat_minor": 5,
+ "metadata": {
+ "colab": {
+ "provenance": [],
+ "gpuType": "L4"
+ },
+ "kernelspec": {
+ "name": "python3",
+ "display_name": "Python 3"
+ },
+ "language_info": {
+ "name": "python"
+ },
+ "accelerator": "GPU"
+ },
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Setup\n",
+ "\n",
+ "Clone the repository and install dependencies."
+ ],
+ "id": "da1b48a8"
+ },
+ {
+ "cell_type": "code",
+ "metadata": {},
+ "execution_count": null,
+ "outputs": [],
+ "source": [
+ "!git clone https://github.com/HanMoonSub/DeepGuard.git"
+ ],
+ "id": "fa487563"
+ },
+ {
+ "cell_type": "code",
+ "metadata": {},
+ "execution_count": null,
+ "outputs": [],
+ "source": [
+ "%cd DeepGuard"
+ ],
+ "id": "bafaf626"
+ },
+ {
+ "cell_type": "code",
+ "metadata": {},
+ "execution_count": null,
+ "outputs": [],
+ "source": [
+ "!pip install -q ultralytics"
+ ],
+ "id": "8f818c3c"
+ },
+ {
+ "cell_type": "code",
+ "metadata": {},
+ "execution_count": null,
+ "outputs": [],
+ "source": [
+ "!pip install -q grad-cam"
+ ],
+ "id": "84d058a2"
+ },
+ {
+ "cell_type": "code",
+ "metadata": {},
+ "execution_count": null,
+ "outputs": [],
+ "source": [
+ "import matplotlib.pyplot as plt"
+ ],
+ "id": "97266540"
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "## High Level Visualization"
+ ],
+ "metadata": {
+ "id": "uzEO2U8E9sSE"
+ },
+ "id": "ef7ccc97"
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "from explainability import EigenGradCAMExplainer, GradCAMPlusPlusExplainer, XGradCAMExplainer\n",
+ "\n",
+ "explainer = EigenGradCAMExplainer(\n",
+ " model_name = \"ms_eff_gcvit_b5\",\n",
+ " dataset = \"ff++\",\n",
+ " branch_level = \"high\",\n",
+ ")"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 122,
+ "referenced_widgets": [
+ "8a27bda2ce8e45348498e6f5c923a43e",
+ "66aee78803c345519948e2f3925fd7c7",
+ "f622a7d54fcf4beb8e13685932b00998",
+ "9c9e00bd89c042d0a00534fbbe30c5be",
+ "6e944eac098e4986a8329962eafb2fc9",
+ "660cbc60fe364aab9e0d2356503860ca",
+ "976a25f51d4e4abab585525de0ce4cb6",
+ "4aadb468cff54804a6bfdb8409781e58",
+ "3bb37e228e854653af36a92ac0828bbc",
+ "d7526483467f41d4b82f47b8ede7c348",
+ "b54f1c88421548a18ac1d75275b7e6f5"
+ ]
+ },
+ "id": "esznRImg9eo3",
+ "outputId": "e689338c-be04-4ffa-f215-51daac76d4f2"
+ },
+ "execution_count": 1,
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "Creating new Ultralytics Settings v0.0.6 file ✅ \n",
+ "View Ultralytics Settings with 'yolo settings' or at '/root/.config/Ultralytics/settings.json'\n",
+ "Update Settings with 'yolo settings key=value', i.e. 'yolo settings runs_dir=path/to/dir'. For help see https://docs.ultralytics.com/quickstart/#ultralytics-settings.\n"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "Downloading: \"https://github.com/HanMoonSub/DeepGuard/releases/download/v0.1.0/ms_eff_gcvit_b5_ff++.bin\" to /root/.cache/torch/hub/checkpoints/ms_eff_gcvit_b5_ff++.bin\n"
+ ]
+ }
+ ],
+ "id": "52211d93"
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "result = explainer.display_heatmap_on_image(\n",
+ " img_path = \"/content/DeepGuard/docs/samples/images/western/western_fake_1.JPG\",\n",
+ " threshold = 0.9, # binarization cutoff (0.5~1.0), or \"auto\" for Otsu\n",
+ " image_weight = 0.7, # 0.0: heatmap only ← → 1.0: original only\n",
+ " aug_smooth = False, # TTA smoothing (not supported on 'pro' models)\n",
+ " eigen_smooth = False, # PCA noise reduction\n",
+ ")\n",
+ "plt.imshow(result)"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 453
+ },
+ "id": "Rvny8PAO97Hc",
+ "outputId": "a353eb6b-f752-470d-fdd6-d5be55ce63ec"
+ },
+ "execution_count": 2,
+ "outputs": [
+ {
+ "output_type": "execute_result",
+ "data": {
+ "text/plain": [
+ "
"
+ ]
+ },
+ "metadata": {},
+ "execution_count": 9
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ ""
+ ],
+ "image/png": "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qanB0NAQOjs7dZxDhw7BdV1UV1enneZ04/Tp0xgcHERFRQWAqccPIsLWrVuxb98+HDp0CFVVVUZ4Kv2kpqYGv/76qzF4tbS0oKioCEuXLk1PQRTSukw5Cfj000+psLCQmpub6cSJE7R582YqKSkxVmGnMrZt20atra3U29tL3377LdXW1lJpaSkNDAwQEdELL7xACxYsoEOHDtGPP/5INTU1VFNTk2GqJxfDw8PU1dVFXV1dBIDee+896urqor/++ouIiN566y0qKSmhL7/8kn755Rdav349VVVV0eXLl3UeDQ0N9MADD1BHRwcdPXqUFi9eTBs3bsxUkW4ISfwYHh6mV199ldrb26m3t5f+97//0YMPPkiLFy+mkZERncdU4seWLVuouLiYWltb6cyZM/rv0qVLOs5E/eTq1au0bNkyqquro59//pkOHDhAc+bModdffz3t5ck5IU1E9MEHH9CCBQuooKCAVq9eTceOHcs0SWnDhg0bqKKiggoKCmjevHm0YcMG6unp0eGXL1+mF198ke644w6aOXMmPfHEE3TmzJkMUjz5OHz4sP/9U/a3adMmIvK24b3xxhs0d+5cKiwspDVr1lB3d7eRx+DgIG3cuJFmzZpFRUVF9Oyzz9Lw8HAGSnPjSOLHpUuXqK6ujubMmUP5+fm0cOFCev7550NKzVTiRxQvANBHH32k46TST/78809au3YtzZgxg0pLS2nbtm00NjaW5tIQ2atKLSwsLLIYOWWTtrCwsJhusELawsLCIothhbSFhYVFFsMKaQsLC4sshhXSFhYWFlkMK6QtLCwsshhWSFtYWFhkMayQtrCwsMhiWCFtYWFhkcWwQtrCwsIii2GFtIWFhUUWwwppCwsLiyzG/wFnlglDPQmNwwAAAABJRU5ErkJggg==\n"
+ },
+ "metadata": {}
+ }
+ ],
+ "id": "145473b7"
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "result = explainer.display_bbox_on_image(\n",
+ " img_path = \"/content/DeepGuard/docs/samples/images/western/western_fake_1.JPG\",\n",
+ " threshold = 0.9, # binarization cutoff (0.5~1.0), or \"auto\" for Otsu\n",
+ " image_weight = 0.7, # 0.0: heatmap only ← → 1.0: original only\n",
+ " aug_smooth = False, # TTA smoothing (not supported on 'pro' models)\n",
+ " eigen_smooth = False, # PCA noise reduction\n",
+ ")\n",
+ "plt.imshow(result)"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 453
+ },
+ "id": "NrH8xksv-RMK",
+ "outputId": "0beb8d03-2a90-4b1c-80c7-a5ff327200ee"
+ },
+ "execution_count": 3,
+ "outputs": [
+ {
+ "output_type": "execute_result",
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "execution_count": 10
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ ""
+ ],
+ "image/png": "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xYtPmfzZvXs3RkdHvTzo7+/HypUrbR5s3boVAwMD+OQnP2ndrFq1CkmSYNu2bVMe56mQzZs3Y3BwEB/5yEdw880345133rF2J3t+vPfeewCAuXPnAmiunWzduhUrVqzA/PnzrZs1a9bgwIEDeO2116Yw9rNM3fG///0PaZp6GQcA8+fPx+jo6DTFampl5cqV2LBhA5588kk8+OCD2L17Nz71qU/h4MGDGB0dRUdHBwYGBrxvTqX84XQ2qiOjo6MYHBz07Nva2jB37tyTMp/Wrl2LX/7yl3j66afxwx/+EFu2bMHll1+ONNXnqJ/M+ZFlGW699VZcfPHFWL58OQA01U5GR0ejdYjtplJm5Sl4p7Jcfvnl9vm8887DypUrsWTJEvz2t79FV1fXNMaslJkqn//85+3zihUrcN555+Hss8/G5s2bcdlll01jzE68jIyM4NVXX/XmbWabzComPW/ePFQqldws7Ntvv42hoaFpitX0ysDAAD784Q9j165dGBoawtGjR7F//37PzamUP5zORnVkaGgoN9Fcr9fx7rvvnhL5dNZZZ2HevHnYtWsXgJM3P2655RZs3LgRzz77rHewfjPtZGhoKFqH2G4qZVaBdEdHBy644AI8/fTT1izLMjz99NMYHh6exphNn7z//vt44403sGDBAlxwwQVob2/38mfnzp3Ys2fPKZM/S5cuxdDQkJcHBw4cwLZt22weDA8PY//+/di+fbt188wzzyDLMqxcuXLK4zzV8tZbb+Gdd97BggULAJx8+UFEuOWWW/DYY4/hmWeewdKlSz37ZtrJ8PAw/vGPf3id16ZNm9DX14dly5ZNTUJYpnSa8jjIr3/9a6pWq7RhwwbasWMH3XjjjTQwMODNwp7Mcvvtt9PmzZtp9+7d9Oc//5lWrVpF8+bNo3379hER0U033USLFy+mZ555hv72t7/R8PAwDQ8PT3Osj68cPHiQXnrpJXrppZcIAP34xz+ml156if79738TEdEPfvADGhgYoMcff5xeeeUVuuKKK2jp0qX0wQcfWD/Wrl1LH//4x2nbtm30/PPP0znnnEPXXHPNdCXpmKRRfhw8eJC+8Y1v0NatW2n37t301FNP0Sc+8Qk655xz6MiRI9aPkyk/br75Zurv76fNmzfT3r177e/w4cPWzUTtpF6v0/Lly2n16tX08ssv05NPPkmnn3463XXXXVOenlkH0kREP/vZz2jx4sXU0dFBF110Eb344ovTHaUpk6uvvpoWLFhAHR0ddMYZZ9DVV19Nu3btsvYffPABffWrX6U5c+ZQrVajz372s7R3795pjPHxl2effZavA/Z+1113HRHpZXjf+ta3aP78+VStVumyyy6jnTt3en688847dM0111BPTw/19fXRl7/8ZTp48OA0pObYpVF+HD58mFavXk2nn346tbe305IlS+iGG27IkZqTKT9ieQGAHnroIeummXbyr3/9iy6//HLq6uqiefPm0e23307j4+NTnBqi8qjSUkoppZQZLLNKJ11KKaWUcqpJCdKllFJKKTNYSpAupZRSSpnBUoJ0KaWUUsoMlhKkSymllFJmsJQgXUoppZQyg6UE6VJKKaWUGSwlSJdSSimlzGApQbqUUkopZQZLCdKllFJKKTNYSpAupZRSSpnBUoJ0KaWUUsoMlv8DwHdZB1ucyeIAAAAASUVORK5CYII=\n"
+ },
+ "metadata": {}
+ }
+ ],
+ "id": "8879fae1"
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "result = explainer.display_heatmap_bbox_on_image(\n",
+ " img_path = \"/content/DeepGuard/docs/samples/images/western/western_fake_1.JPG\",\n",
+ " threshold = 0.9, # binarization cutoff (0.5~1.0), or \"auto\" for Otsu\n",
+ " image_weight = 0.7, # 0.0: heatmap only ← → 1.0: original only\n",
+ " aug_smooth = False, # TTA smoothing (not supported on 'pro' models)\n",
+ " eigen_smooth = False, # PCA noise reduction\n",
+ ")\n",
+ "plt.imshow(result)"
+ ],
+ "metadata": {
+ "id": "aSOX5xSh-8_Z",
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 453
+ },
+ "outputId": "203e6824-b365-44e0-f95a-18ef4d8ddc72"
+ },
+ "execution_count": 4,
+ "outputs": [
+ {
+ "output_type": "execute_result",
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "execution_count": 11
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ ""
+ ],
+ "image/png": "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jV6cC0kfjzzyCD772c/iIx/5CIaGhnDXXXfh4MGDXpxW2smRI0dw++23Y8mSJRgaGsJ3v/tdnD17tpNZAdCFJP2b3/wG3/72t7Ft2za8+uqrWLduHTZs2IBjx47Nt2gdwyc/+UkcPXrU/n/hhRfstW9961v4wx/+gCeffBITExP4z3/+gy996UvzKO3c49SpU1i3bh0ee+yx5PVHH30UP/vZz/CLX/wC+/btw2WXXYYNGzbg9OnTNs7mzZvx+uuvY9euXdi5cyeef/553H///Z3KwpyimT4AYOPGjV6deeKJJ7zrF5I+JiYmMD4+jpdffhm7du3CzMwM1q9fj1OnTtk4zdpJo9HA7bffjjNnzuCll17CL3/5S+zYsQMPP/xw5zNEXYZbb72VxsfH7e9Go0ErV66kRx55ZB6l6hy2bdtG69atS147ceIELVq0iJ588kkb9ve//50A0OTkZIck7CwA0FNPPWV/l2VJw8PD9OMf/9iGnThxgvr6+uiJJ54gIqI33niDANCf//xnG+ePf/wjKaXo3//+d8dkPx8I9UFEtGXLFrrzzjsr77mQ9UFEdOzYMQJAExMTRNRaO3n66aepKAqampqycbZv3079/f304YcfdlT+rrKkz5w5g/3792NsbMyGFUWBsbExTE5OzqNkncWbb76JlStX4pprrsHmzZtx5MgRAMD+/fsxMzPj6ef666/H6tWrLxr9HD58GFNTU54Oli1bhpGREauDyclJDAwM4DOf+YyNMzY2hqIosG/fvo7L3Ans3bsXQ0ND+MQnPoGtW7fi+PHj9tqFro///e9/AIArrrgCQGvtZHJyEjfddBOWL19u42zYsAEnT57E66+/3kHpu8zd8d///heNRsNTHAAsX74cU1NT8yRVZzEyMoIdO3bgmWeewfbt23H48GF8/vOfx/T0NKamptDb24uBgQHvnotJP5zPujoyNTWFoaEh7/oll1yCK6644oLU08aNG/GrX/0Ku3fvxo9+9CNMTExg06ZNaDT0OeoXsj7KssQ3v/lNfO5zn8ONN94IAC21k6mpqWQd4mudRFeegncxY9OmTfb7zTffjJGREaxZswa//e1vsXjx4nmULGOh4stf/rL9ftNNN+Hmm2/Gtddei7179+K2226bR8nOP8bHx/G3v/3Nm7fpNnSVJT04OIienp5oFvadd97B8PDwPEk1vxgYGMDHP/5xHDp0CMPDwzhz5gxOnDjhxbmY9MP5rKsjw8PD0UTz2bNn8e67714UerrmmmswODiIQ4cOAbhw9fHAAw9g586deO6557yD9VtpJ8PDw8k6xNc6ia4i6d7eXtxyyy3YvXu3DSvLErt378bo6Og8SjZ/eO+99/CPf/wDK1aswC233IJFixZ5+jl48CCOHDly0ehn7dq1GB4e9nRw8uRJ7Nu3z+pgdHQUJ06cwP79+22cPXv2oCxLjIyMdFzmTuPtt9/G8ePHsWLFCgAXnj6ICA888ACeeuop7NmzB2vXrvWut9JORkdH8de//tXrvHbt2oX+/n7ccMMNnckIo6PTlHOAX//619TX10c7duygN954g+6//34aGBjwZmEvZDz44IO0d+9eOnz4ML344os0NjZGg4ODdOzYMSIi+vrXv06rV6+mPXv20CuvvEKjo6M0Ojo6z1LPLaanp+nAgQN04MABAkA/+clP6MCBA/Svf/2LiIh++MMf0sDAAP3+97+n1157je68805au3YtffDBBzaNjRs30qc+9Snat28fvfDCC3TdddfRvffeO19ZOifU6WN6epq+853v0OTkJB0+fJieffZZ+vSnP03XXXcdnT592qZxIelj69attGzZMtq7dy8dPXrU/n///fdtnGbt5OzZs3TjjTfS+vXr6S9/+Qs988wzdOWVV9L3vve9juen60iaiOjnP/85rV69mnp7e+nWW2+ll19+eb5F6hjuueceWrFiBfX29tJVV11F99xzDx06dMhe/+CDD+gb3/gGXX755bRkyRL64he/SEePHp1Hiecezz33nHv/qfi/ZcsWItLL8L7//e/T8uXLqa+vj2677TY6ePCgl8bx48fp3nvvpaVLl1J/fz995Stfoenp6XnIzbmjTh/vv/8+rV+/nq688kpatGgRrVmzhr72ta9FRs2FpI+ULgDQ448/buO00k7++c9/0qZNm2jx4sU0ODhIDz74IM3MzHQ4N0T5qNKMjIyMBYyu8klnZGRkXGzIJJ2RkZGxgJFJOiMjI2MBI5N0RkZGxgJGJumMjIyMBYxM0hkZGRkLGJmkMzIyMhYwMklnZGRkLGBkks7IyMhYwMgknZGRkbGAkUk6IyMjYwEjk3RGRkbGAsb/AT7e2mYHlw/RAAAAAElFTkSuQmCC\n"
+ },
+ "metadata": {}
+ }
+ ],
+ "id": "9c54c9dd"
+ }
+ ]
+}
\ No newline at end of file
diff --git a/tutorials/low_level_visualization.ipynb b/tutorials/low_level_visualization.ipynb
new file mode 100644
index 0000000..b21ffcf
--- /dev/null
+++ b/tutorials/low_level_visualization.ipynb
@@ -0,0 +1,243 @@
+{
+ "nbformat": 4,
+ "nbformat_minor": 5,
+ "metadata": {
+ "colab": {
+ "provenance": [],
+ "gpuType": "L4"
+ },
+ "kernelspec": {
+ "name": "python3",
+ "display_name": "Python 3"
+ },
+ "language_info": {
+ "name": "python"
+ },
+ "accelerator": "GPU"
+ },
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Setup\n",
+ "\n",
+ "Clone the repository and install dependencies."
+ ],
+ "id": "887d6320"
+ },
+ {
+ "cell_type": "code",
+ "metadata": {},
+ "execution_count": null,
+ "outputs": [],
+ "source": [
+ "!git clone https://github.com/HanMoonSub/DeepGuard.git"
+ ],
+ "id": "6bbc5ce7"
+ },
+ {
+ "cell_type": "code",
+ "metadata": {},
+ "execution_count": null,
+ "outputs": [],
+ "source": [
+ "%cd DeepGuard"
+ ],
+ "id": "593742a8"
+ },
+ {
+ "cell_type": "code",
+ "metadata": {},
+ "execution_count": null,
+ "outputs": [],
+ "source": [
+ "!pip install -q ultralytics"
+ ],
+ "id": "bd848dcf"
+ },
+ {
+ "cell_type": "code",
+ "metadata": {},
+ "execution_count": null,
+ "outputs": [],
+ "source": [
+ "!pip install -q grad-cam"
+ ],
+ "id": "8dab3b6e"
+ },
+ {
+ "cell_type": "code",
+ "metadata": {},
+ "execution_count": null,
+ "outputs": [],
+ "source": [
+ "import matplotlib.pyplot as plt"
+ ],
+ "id": "95dc22d6"
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "## Low Level Visualization"
+ ],
+ "metadata": {
+ "id": "OK0aURWlAZW6"
+ },
+ "id": "1327c3a9"
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "from explainability import HiResCAMExplainer, GradCAMElementWiseExplainer, LayerCAMExplainer\n",
+ "\n",
+ "explainer = LayerCAMExplainer(\n",
+ " model_name = \"ms_eff_gcvit_b5\",\n",
+ " dataset = \"ff++\",\n",
+ " branch_level = \"low\",\n",
+ ")"
+ ],
+ "metadata": {
+ "id": "RdwdcT07AAA3"
+ },
+ "execution_count": null,
+ "outputs": [],
+ "id": "1da47b1d"
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "result = explainer.display_heatmap_on_image(\n",
+ " img_path = \"/content/DeepGuard/docs/samples/images/western/western_fake_1.JPG\",\n",
+ " threshold = 0.9, # binarization cutoff (0.5~1.0), or \"auto\" for Otsu\n",
+ " image_weight = 0.7, # 0.0: heatmap only ← → 1.0: original only\n",
+ " aug_smooth = False, # TTA smoothing (not supported on 'pro' models)\n",
+ " eigen_smooth = True, # PCA noise reduction\n",
+ ")\n",
+ "plt.imshow(result)"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 453
+ },
+ "id": "z1JKjpF5Awdu",
+ "outputId": "a332a42d-f066-4757-d4cf-386daf0fefd7"
+ },
+ "execution_count": 1,
+ "outputs": [
+ {
+ "output_type": "execute_result",
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "execution_count": 22
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ ""
+ ],
+ "image/png": "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zbQDWzbFXZZlpXPZ+oizsLQqwsadtEg0D3XlVSPez6MXJvU2+Dn5bmU4jn1AZ4t5+4TJkwHDdHoUiQvpLW7XxMxXGCoDDZX8PrAlB6Iqo2SrjpJi+fbJtGXn2aVpTI9YgpR6Lk6XZFh30I/6OkA9IMoX450obuJwQXkBpIc6YABQH92VtmEkkooSsbRQDVtrm19/f3Z2pvZddeJooT99ew7kjTfewFVXXXW+k9FII400clby+uuv48orrxwaZlGCdFmW2LNnD9avX4/XX38dy5YtO99JOu9y9OhRXHXVVU15GGnKpCpNmVTlfJQJEeHYsWNYu3YtvPdDwy5KdYf3HldccQUAYNmyZU1jM9KUR1WaMqlKUyZVWegyWb58+UjhhkN4I4000kgj51UakG6kkUYauYBl0YJ0t9vFfffdh263e76TckFIUx5VacqkKk2ZVOVCL5NFuXDYSCONNHKxyKJl0o000kgjF4M0IN1II400cgFLA9KNNNJIIxewNCDdSCONNHIBy6IE6S9/+ct4xzvegbGxMWzcuBH/8R//cb6TtGDyxS9+UZ3Dy9/111+v99966y1s27YNl112GSYnJ/GRj3wEBw4cOI8pPvfy7W9/G7/wC7+AtWvXwjmHf/qnf0ruExG+8IUvYM2aNRgfH8fmzZvx8ssvJ2HefPNN3HHHHVi2bBlWrFiB3/iN38Dx48cXMBfnTuYqj49//OOVNnPrrbcmYd5O5XH//ffj5ptvxtKlS7Fq1Sp8+MMfxp49e5Iwo/STffv24fbbb8fExARWrVqFz372s+j1eguZFQCLEKT//u//Hr/927+N++67D//93/+Nm266CVu3bsXBgwfPd9IWTH76p38a+/fv17+nnnpK733605/GP//zP+Mb3/gGduzYgR/+8If4pV/6pfOY2nMvJ06cwE033YQvf/nLtfe/9KUv4S//8i/x13/919i1axeWLFmCrVu34q233tIwd9xxB1544QU8+uijePjhh/Htb38bd91110Jl4ZzKXOUBALfeemvSZr7+9a8n999O5bFjxw5s27YN3/nOd/Doo49idnYWW7ZswYkTJzTMXP2k3+/j9ttvx+nTp/H000/jq1/9Kh588EF84QtfWPgM0SKT973vfbRt2zY97/f7tHbtWrr//vvPY6oWTu677z666aabau8dPnyY2u02feMb39Br3/ve9wgA7dy5c4FSuLACgB566CE9L8uSpqam6M/+7M/02uHDh6nb7dLXv/51IiJ68cUXCQD953/+p4b5l3/5F3LO0Q9+8IMFS/tPQvLyICK688476UMf+tDAZ97O5UFEdPDgQQJAO3bsIKLR+sm3vvUt8t7T9PS0hnnggQdo2bJlNDMzs6DpX1RM+vTp09i9ezc2b96s17z32Lx5M3bu3HkeU7aw8vLLL2Pt2rW49tprcccdd2Dfvn0AgN27d2N2djYpn+uvvx5XX331RVM+r776Kqanp5MyWL58OTZu3KhlsHPnTqxYsQI/+7M/q2E2b94M7z127dq14GleCNm+fTtWrVqFd73rXbj77rtx6NAhvfd2L48jR44AAC699FIAo/WTnTt3YsOGDVi9erWG2bp1K44ePYoXXnhhAVO/yNQdP/rRj9Dv95OCA4DVq1djenr6PKVqYWXjxo148MEH8cgjj+CBBx7Aq6++ip/7uZ/DsWPHMD09jU6ngxUrViTPXEzlI/kc1kamp6exatWq5H6r1cKll176tiynW2+9FX/zN3+Dxx9/HH/6p3+KHTt24LbbbkO/3wfw9i6PsizxqU99Cu9///txww03AMBI/WR6erq2Dcm9hZRF6QXvYpbbbrtNj2+88UZs3LgR11xzDf7hH/4B4+Pj5zFljVyo8su//Mt6vGHDBtx444145zvfie3bt+OWW245jyn7ycu2bdvw/PPPJ+s2i00WFZNeuXIliqKorMIeOHAAU1NT5ylV51dWrFiBn/qpn8LevXsxNTWF06dP4/Dhw0mYi6l8JJ/D2sjU1FRlobnX6+HNN9+8KMrp2muvxcqVK7F3714Ab9/yuOeee/Dwww/jySefTBzrj9JPpqamatuQ3FtIWVQg3el08N73vhePP/64XivLEo8//jg2bdp0HlN2/uT48eN45ZVXsGbNGrz3ve9Fu91OymfPnj3Yt2/fRVM+69atw9TUVFIGR48exa5du7QMNm3ahMOHD2P37t0a5oknnkBZlti4ceOCp3mh5Y033sChQ4ewZs0aAG+/8iAi3HPPPXjooYfwxBNPYN26dcn9UfrJpk2b8N3vfjcZvB599FEsW7YM69evX5iMiCzoMuU5kL/7u7+jbrdLDz74IL344ot011130YoVK5JV2LezfOYzn6Ht27fTq6++Sv/+7/9OmzdvppUrV9LBgweJiOiTn/wkXX311fTEE0/Qf/3Xf9GmTZto06ZN5znV51aOHTtGzzzzDD3zzDMEgP78z/+cnnnmGfr+979PRER/8id/QitWrKBvfvOb9Nxzz9GHPvQhWrduHZ06dUrjuPXWW+k973kP7dq1i5566im67rrr6GMf+9j5ytJZybDyOHbsGP3O7/wO7dy5k1599VV67LHH6Gd+5mfouuuuo7feekvjeDuVx913303Lly+n7du30/79+/Xv5MmTGmauftLr9eiGG26gLVu20LPPPkuPPPIIXX755XTvvfcueH4WHUgTEf3VX/0VXX311dTpdOh973sffec73znfSVow+ehHP0pr1qyhTqdDV1xxBX30ox+lvXv36v1Tp07Rb/7mb9Ill1xCExMT9Iu/+Iu0f//+85jicy9PPvlk/G6q+bvzzjuJKJjh/d7v/R6tXr2aut0u3XLLLbRnz54kjkOHDtHHPvYxmpycpGXLltGv//qv07Fjx85Dbs5ehpXHyZMnacuWLXT55ZdTu92ma665hj7xiU9USM3bqTzqygIAfeUrX9Ewo/ST1157jW677TYaHx+nlStX0mc+8xmanZ1d4NwQNa5KG2mkkUYuYFlUOulGGmmkkYtNGpBupJFGGrmApQHpRhpppJELWBqQbqSRRhq5gKUB6UYaaaSRC1gakG6kkUYauYClAelGGmmkkQtYGpBupJFGGrmApQHpRhpppJELWBqQbqSRRhq5gKUB6UYaaaSRC1gakG6kkUYauYDl/wMRRV1d5kQQZAAAAABJRU5ErkJggg==\n"
+ },
+ "metadata": {}
+ }
+ ],
+ "id": "c0540491"
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "result = explainer.display_bbox_on_image(\n",
+ " img_path = \"/content/DeepGuard/docs/samples/images/western/western_fake_1.JPG\",\n",
+ " threshold = 0.9, # binarization cutoff (0.5~1.0), or \"auto\" for Otsu\n",
+ " image_weight = 0.7, # 0.0: heatmap only ← → 1.0: original only\n",
+ " aug_smooth = False, # TTA smoothing (not supported on 'pro' models)\n",
+ " eigen_smooth = True, # PCA noise reduction\n",
+ ")\n",
+ "plt.imshow(result)"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 453
+ },
+ "id": "u10y6nntAyfa",
+ "outputId": "5fc82e22-ea0c-431b-c9e9-ab3109ad99c3"
+ },
+ "execution_count": 2,
+ "outputs": [
+ {
+ "output_type": "execute_result",
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "execution_count": 23
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ ""
+ ],
+ "image/png": "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3IPrrrsOa2trOHz4MN797ndjPp+fyawA2Icg/Vd/9Vf41V/9VXzgAx/Av/7rv+JFL3oRrrnmGtx///1nO2lnTH74h38Y9913n/198YtftHvvfOc78Xd/93f4+Mc/jltuuQX//d//jZ/5mZ85i6k9/fLII4/gRS96ET784Q8373/oQx/CH//xH+P//t//i9tuuw3r6+u45pprcOLECQvzhje8Ad/4xjdw00034cYbb8QXvvAFvOUtbzlTWTitslN5AMC1115btJmPfexjxf2nUnnccsstOHr0KL785S/jpptuwvb2Nq6++mo88sgjFmanftJ1Ha677jpsbW3hS1/6Ev7sz/4MN9xwA97//vef+QzxPpOXvvSlfPToUfvddR1feOGFfP3115/FVJ05+cAHPsAvetGLmvceeOABnkwm/PGPf9yu/fu//zsD4FtvvfUMpfDMCgD+xCc+Yb9jjHzkyBH+gz/4A7v2wAMP8Gw244997GPMzHzHHXcwAP7nf/5nC/P3f//3TET8X//1X2cs7U+E1OXBzPzGN76RX/3qVw8+81QuD2bm+++/nwHwLbfcwsy76yef+tSnOITAx44dszAf+chH+MCBA3zy5Mkzmv59xaS3trZw++2346qrrrJrIQRcddVVuPXWW89iys6sfPOb38SFF16I5z73uXjDG96Ae+65BwBw++23Y3t7uyifF7zgBXjOc57ztCmfu+++G8eOHSvK4ODBg7jiiiusDG699VYcOnQIP/7jP25hrrrqKoQQcNttt53xNJ8Jufnmm3H48GH80A/9EN72trfhe9/7nt17qpfHgw8+CAA499xzAeyun9x66624/PLLcf7551uYa665Bg899BC+8Y1vnMHU7zN1x3e/+110XVcUHACcf/75OHbs2FlK1ZmVK664AjfccAM+/elP4yMf+Qjuvvtu/MRP/ASOHz+OY8eOYTqd4tChQ8UzT6fy0XwuaiPHjh3D4cOHi/vj8RjnnnvuU7Kcrr32Wvz5n/85PvvZz+L3f//3ccstt+BVr3oVui75UX8ql0eMEe94xzvwspe9DJdddhkA7KqfHDt2rNmG9N6ZlH3pBe/pLK961avs+wtf+EJcccUVuPjii/HXf/3XWF1dPYspW8qTVX72Z3/Wvl9++eV44QtfiOc973m4+eab8cpXvvIspuyJl6NHj+LrX/96sW6z32RfMenzzjsPo9Gotwr7ne98B0eOHDlLqTq7cujQIfzgD/4g7rrrLhw5cgRbW1t44IEHijBPp/LRfC5qI0eOHOktNM/nc3z/+99/WpTTc5/7XJx33nm46667ADx1y+Ptb387brzxRnz+858vHOvvpp8cOXKk2Yb03pmUfQXS0+kUL37xi/HZz37WrsUY8dnPfhZXXnnlWUzZ2ZOHH34Y3/rWt3DBBRfgxS9+MSaTSVE+d955J+65556nTflccsklOHLkSFEGDz30EG677TYrgyuvvBIPPPAAbr/9dgvzuc99DjFGXHHFFWc8zWda7r33Xnzve9/DBRdcAOCpVx7MjLe//e34xCc+gc997nO45JJLivu76SdXXnkl/u3f/q0YvG666SYcOHAAl1566ZnJiMoZXaY8DfKXf/mXPJvN+IYbbuA77riD3/KWt/ChQ4eKVdinsrzrXe/im2++me+++27+x3/8R77qqqv4vPPO4/vvv5+Zmd/61rfyc57zHP7c5z7H//Iv/8JXXnklX3nllWc51adXjh8/zl/5ylf4K1/5CgPgP/zDP+SvfOUr/J//+Z/MzPx7v/d7fOjQIf7kJz/JX/va1/jVr341X3LJJfzYY49ZHNdeey3/6I/+KN922238xS9+kZ///Ofz61//+rOVpccli8rj+PHj/Gu/9mt866238t13382f+cxn+Md+7Mf4+c9/Pp84ccLieCqVx9ve9jY+ePAg33zzzXzffffZ36OPPmphduon8/mcL7vsMr766qv5q1/9Kn/605/mZz7zmfze9773jOdn34E0M/Of/Mmf8HOe8xyeTqf80pe+lL/85S+f7SSdMXnd617HF1xwAU+nU37Ws57Fr3vd6/iuu+6y+4899hj/8i//Mp9zzjm8trbGP/3TP8333XffWUzx6ZfPf/7zehxw8ffGN76RmZMZ3m/8xm/w+eefz7PZjF/5ylfynXfeWcTxve99j1//+tfzxsYGHzhwgH/xF3+Rjx8/fhZy8/hlUXk8+uijfPXVV/Mzn/lMnkwmfPHFF/Ob3/zmHql5KpVHqywA8J/+6Z9amN30k//4j//gV73qVby6usrnnXcev+td7+Lt7e0znBvmpavSpSxlKUt5Esu+0kkvZSlLWcrTTZYgvZSlLGUpT2JZgvRSlrKUpTyJZQnSS1nKUpbyJJYlSC9lKUtZypNYliC9lKUsZSlPYlmC9FKWspSlPIllCdJLWcpSlvIkliVIL2UpS1nKk1iWIL2UpSxlKU9iWYL0UpaylKU8iWUJ0ktZylKW8iSW/x8KWgOjdGsSOgAAAABJRU5ErkJggg==\n"
+ },
+ "metadata": {}
+ }
+ ],
+ "id": "241029f1"
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "result = explainer.display_heatmap_bbox_on_image(\n",
+ " img_path = \"/content/DeepGuard/docs/samples/images/western/western_fake_1.JPG\",\n",
+ " threshold = 0.9, # binarization cutoff (0.5~1.0), or \"auto\" for Otsu\n",
+ " image_weight = 0.7, # 0.0: heatmap only ← → 1.0: original only\n",
+ " aug_smooth = False, # TTA smoothing (not supported on 'pro' models)\n",
+ " eigen_smooth = True, # PCA noise reduction\n",
+ ")\n",
+ "plt.imshow(result)"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 453
+ },
+ "id": "QAONxMlfBMzW",
+ "outputId": "0a70f52a-8af5-4e1b-c32f-8974f1372751"
+ },
+ "execution_count": 3,
+ "outputs": [
+ {
+ "output_type": "execute_result",
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "execution_count": 24
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ ""
+ ],
+ "image/png": "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\n"
+ },
+ "metadata": {}
+ }
+ ],
+ "id": "0a4a8cae"
+ }
+ ]
+}
\ No newline at end of file
diff --git a/tutorials/predict_image.ipynb b/tutorials/predict_image.ipynb
new file mode 100644
index 0000000..f3f102d
--- /dev/null
+++ b/tutorials/predict_image.ipynb
@@ -0,0 +1,238 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "id": "c2359c6a",
+ "metadata": {
+ "id": "6OR7ZJv7JYVS"
+ },
+ "source": [
+ "## Git Clone"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "9e1c39f6",
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "a35V0LmzN573",
+ "outputId": "a6de362e-3031-4f65-d87a-f6ecb304c727"
+ },
+ "outputs": [],
+ "source": [
+ "!git clone https://github.com/HanMoonSub/DeepGuard.git"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 2,
+ "id": "7c0687ce",
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "ga6XATSlOAU1",
+ "outputId": "e2a85ad1-9db6-4af6-fc1e-56038014e719"
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "/content/DeepGuard\n"
+ ]
+ }
+ ],
+ "source": [
+ "%cd DeepGuard"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 3,
+ "id": "c64a0858",
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "dRw6GrfDOYpu",
+ "outputId": "23f97fc9-5d9a-49d8-8376-161372534323"
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "\u001b[?25l \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m0.0/41.2 kB\u001b[0m \u001b[31m?\u001b[0m eta \u001b[36m-:--:--\u001b[0m\r",
+ "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m41.2/41.2 kB\u001b[0m \u001b[31m3.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
+ "\u001b[?25h\u001b[?25l \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m0.0/1.3 MB\u001b[0m \u001b[31m?\u001b[0m eta \u001b[36m-:--:--\u001b[0m\r",
+ "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.3/1.3 MB\u001b[0m \u001b[31m44.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
+ "\u001b[?25h"
+ ]
+ }
+ ],
+ "source": [
+ "!pip install -q ultralytics"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "1800e58a",
+ "metadata": {
+ "id": "v0ERV43YOg07"
+ },
+ "source": [
+ "## Predict DeepFake Image"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 4,
+ "id": "cb5c35a6",
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "LciBIc8fOGdS",
+ "outputId": "2cd051b6-31b0-4770-ae13-c41a611fba14"
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Creating new Ultralytics Settings v0.0.6 file ✅ \n",
+ "View Ultralytics Settings with 'yolo settings' or at '/root/.config/Ultralytics/settings.json'\n",
+ "Update Settings with 'yolo settings key=value', i.e. 'yolo settings runs_dir=path/to/dir'. For help see https://docs.ultralytics.com/quickstart/#ultralytics-settings.\n"
+ ]
+ }
+ ],
+ "source": [
+ "from time import time\n",
+ "from inference.image_predictor import ImagePredictor"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "9f3fdb0a",
+ "metadata": {
+ "id": "IPOKgWGgScxD"
+ },
+ "source": [
+ "**ms_eff_gcvit_b0 (fast model)**"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 32,
+ "id": "af2fec0f",
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "00DiR-1FSUgO",
+ "outputId": "cf4e72c4-6814-48a1-b47a-de0701df4cef"
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Deepfake Probability: 0.7854\n"
+ ]
+ }
+ ],
+ "source": [
+ "\n",
+ "from inference.image_predictor import ImagePredictor\n",
+ "\n",
+ "# Initialize the predictor\n",
+ "predictor = ImagePredictor(\n",
+ " margin_ratio = 0.2, # Margin ratio around the detected face crop\n",
+ " conf_thres = 0.5, # Confidence threshold for face detection\n",
+ " min_face_ratio = 0.01, # Minimum face-toframe size ratio to process\n",
+ " model_name = \"ms_eff_gcvit_b0\", # ms_eff_vit_b5, ms_eff_gcvit_b0, ms_eff_gcvit_b5\n",
+ " dataset = \"kodf\" # ff++, celeb_df_v2\n",
+ " )\n",
+ "\n",
+ "# Run Inference\n",
+ "result = predictor.predict_img(\n",
+ " img_path=\"/content/DeepGuard/docs/samples/images/asian/asian_fake_1.JPG\",\n",
+ " tta_hflip=0.0 # Horizontal Flip for Test-Time Augmentation\n",
+ " )\n",
+ "\n",
+ "print(f\"Deepfake Probability: {result:.4f}\")\n"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "6377461d",
+ "metadata": {
+ "id": "Gf_9L5om_ObA"
+ },
+ "source": [
+ "**ms_eff_gcvit_b5 (pro model)**"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 33,
+ "id": "7076a275",
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "5aI4RYvs_Qub",
+ "outputId": "8c05e2d5-7615-4430-f40f-6049007d7be2"
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Downloading: \"https://github.com/HanMoonSub/DeepGuard/releases/download/v0.2.0/ms_eff_gcvit_b5_kodf.bin\" to /root/.cache/torch/hub/checkpoints/ms_eff_gcvit_b5_kodf.bin\n",
+ "Deepfake Probability: 0.8487\n"
+ ]
+ }
+ ],
+ "source": [
+ "\n",
+ "# Initialize the predictor\n",
+ "predictor = ImagePredictor(\n",
+ " margin_ratio = 0.2, # Margin ratio around the detected face crop\n",
+ " conf_thres = 0.5, # Confidence threshold for face detection\n",
+ " min_face_ratio = 0.01, # Minimum face-toframe size ratio to process\n",
+ " model_name = \"ms_eff_gcvit_b5\", # ms_eff_vit_b5, ms_eff_gcvit_b0, ms_eff_gcvit_b5\n",
+ " dataset = \"kodf\" # ff++, celeb_df_v2\n",
+ " )\n",
+ "\n",
+ "# Run Inference\n",
+ "result = predictor.predict_img(\n",
+ " img_path=\"/content/DeepGuard/docs/samples/images/asian/asian_fake_1.JPG\",\n",
+ " tta_hflip=0.0 # Horizontal Flip for Test-Time Augmentation\n",
+ " )\n",
+ "\n",
+ "print(f\"Deepfake Probability: {result:.4f}\")\n"
+ ]
+ }
+ ],
+ "metadata": {
+ "accelerator": "GPU",
+ "colab": {
+ "gpuType": "G4",
+ "provenance": []
+ },
+ "kernelspec": {
+ "display_name": "Python 3",
+ "name": "python3"
+ },
+ "language_info": {
+ "name": "python"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}
diff --git a/tutorials/predict_video.ipynb b/tutorials/predict_video.ipynb
new file mode 100644
index 0000000..5cca88a
--- /dev/null
+++ b/tutorials/predict_video.ipynb
@@ -0,0 +1,215 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "id": "ab98f14b",
+ "metadata": {
+ "id": "6OR7ZJv7JYVS"
+ },
+ "source": [
+ "## Git Clone"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "ab2425f7",
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "a35V0LmzN573",
+ "outputId": "a6de362e-3031-4f65-d87a-f6ecb304c727"
+ },
+ "outputs": [],
+ "source": [
+ "!git clone https://github.com/HanMoonSub/DeepGuard.git"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 2,
+ "id": "8f952fd3",
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "ga6XATSlOAU1",
+ "outputId": "e2a85ad1-9db6-4af6-fc1e-56038014e719"
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "/content/DeepGuard\n"
+ ]
+ }
+ ],
+ "source": [
+ "%cd DeepGuard"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 3,
+ "id": "c599551c",
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "dRw6GrfDOYpu",
+ "outputId": "23f97fc9-5d9a-49d8-8376-161372534323"
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "\u001b[?25l \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m0.0/41.2 kB\u001b[0m \u001b[31m?\u001b[0m eta \u001b[36m-:--:--\u001b[0m\r",
+ "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m41.2/41.2 kB\u001b[0m \u001b[31m3.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
+ "\u001b[?25h\u001b[?25l \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m0.0/1.3 MB\u001b[0m \u001b[31m?\u001b[0m eta \u001b[36m-:--:--\u001b[0m\r",
+ "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.3/1.3 MB\u001b[0m \u001b[31m44.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
+ "\u001b[?25h"
+ ]
+ }
+ ],
+ "source": [
+ "!pip install -q ultralytics"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "04902a51",
+ "metadata": {
+ "id": "f0nQ-hWZAdnm"
+ },
+ "source": [
+ "## Predict DeepFake Video"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "d8f1a68f",
+ "metadata": {
+ "id": "WzyvhDvvKReA"
+ },
+ "source": [
+ "**ms_eff_gcvit_b0 (fast model)**"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 37,
+ "id": "b6c2813f",
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "QUJTFp0O_Zpy",
+ "outputId": "006f3fbe-bee3-4abd-e265-84af43828a24"
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Deepfake Probability: 0.9838\n"
+ ]
+ }
+ ],
+ "source": [
+ "\n",
+ "from inference.video_predictor import VideoPredictor\n",
+ "\n",
+ "# Initialize the predictor\n",
+ "predictor = VideoPredictor(\n",
+ " margin_ratio = 0.2, # Margin ratio around the detected face crop\n",
+ " conf_thres = 0.5, # Confidence threshold for face detection\n",
+ " min_face_ratio = 0.01, # Minimum face-toframe size ratio to process\n",
+ " model_name = \"ms_eff_gcvit_b0\", # ms_eff_vit_b5, ms_eff_gcvit_b0, ms_eff_gcvit_b5\n",
+ " dataset = \"ff++\" # celeb_df_v2, kodf\n",
+ " )\n",
+ "\n",
+ "# Run Inference\n",
+ "result = predictor.predict_video(\n",
+ " video_path = \"/content/DeepGuard/docs/samples/videos/western/western_fake.mp4\",\n",
+ " num_frames = 20, # Number of frames to sample per video\n",
+ " agg_mode = \"conf\", # Aggregation Method: 'conf', 'mean', 'vote'\n",
+ " tta_hflip=0.0 # Horizontal Flip for Test-Time Augmentation\n",
+ " )\n",
+ "\n",
+ "print(f\"Deepfake Probability: {result:.4f}\")\n"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "0aeeb7bb",
+ "metadata": {
+ "id": "JBEeoPpvKjSN"
+ },
+ "source": [
+ "**ms_eff_gcvit_b5 (pro model)**"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 38,
+ "id": "473c3e1c",
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "wI8ZKpf9An0M",
+ "outputId": "3625c82f-e28d-4e5a-9ffd-991a9e55c28c"
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Deepfake Probability: 0.9855\n"
+ ]
+ }
+ ],
+ "source": [
+ "from inference.video_predictor import VideoPredictor\n",
+ "\n",
+ "# Initialize the predictor\n",
+ "predictor = VideoPredictor(\n",
+ " margin_ratio = 0.2, # Margin ratio around the detected face crop\n",
+ " conf_thres = 0.5, # Confidence threshold for face detection\n",
+ " min_face_ratio = 0.01, # Minimum face-toframe size ratio to process\n",
+ " model_name = \"ms_eff_gcvit_b5\", # ms_eff_vit_b5, ms_eff_gcvit_b0, ms_eff_gcvit_b5\n",
+ " dataset = \"ff++\" # celeb_df_v2, kodf\n",
+ " )\n",
+ "\n",
+ "# Run Inference\n",
+ "result = predictor.predict_video(\n",
+ " video_path = \"/content/DeepGuard/docs/samples/videos/western/western_fake.mp4\",\n",
+ " num_frames = 20, # Number of frames to sample per video\n",
+ " agg_mode = \"conf\", # Aggregation Method: 'conf', 'mean', 'vote'\n",
+ " tta_hflip=0.0 # Horizontal Flip for Test-Time Augmentation\n",
+ " )\n",
+ "\n",
+ "print(f\"Deepfake Probability: {result:.4f}\")\n"
+ ]
+ }
+ ],
+ "metadata": {
+ "accelerator": "GPU",
+ "colab": {
+ "gpuType": "G4",
+ "provenance": []
+ },
+ "kernelspec": {
+ "display_name": "Python 3",
+ "name": "python3"
+ },
+ "language_info": {
+ "name": "python"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}