← BowFlow

자동 활 검출 실험

기준점이나 TAPNext 없이 활 전용 검출 모델과 DeepLSD로 원본 영상의 활 축 후보를 계산합니다. 결과는 주황색 점선으로 비교하는 실험 기능입니다. 정확도와 모델 배포 권한은 검증 전입니다.

1. 영상과 요청 준비

앱에서 0.25–30초 구간을 선택하고 자동 검출 요청 JSON 받기와 원본 내려받기를 누르세요. 이 실행기는 일정한 프레임 간격의 CFR 영상만 지원합니다. 휴대폰 가변 프레임 영상은 변환한 파일을 앱에 다시 불러와 요청을 새로 만드세요.

ffmpeg -i original.mov -vf fps=25 -c:v libx264 -crf 18 -c:a aac practice-cfr.mp4

변환 전 요청은 변환 후 영상과 맞지 않습니다. 원본이 바뀌면 새 요청이 필요합니다.

2. PC 준비

Python 3.12, Git, C++ 컴파일러가 필요합니다. 저장소의 구현 브랜치를 받아 설치하세요. 연구 모델의 큰 파일은 별도로 내려받으며, 처음 실행에는 다운로드 시간이 추가됩니다.

git clone --branch m1/technical-feasibility-20260912 https://github.com/kwh01116-cmd/Bowflow.git
cd Bowflow
python3.12 -m venv .venv-axis
.venv-axis/bin/python -m pip install -r tools/bow_detector_probe/requirements-axis.txt --extra-index-url https://download.pytorch.org/whl/cpu
bash tools/bow_detector_probe/setup_deeplsd.sh .venv-axis/bin/python models/DeepLSD

설치·모델 다운로드 명령은 저장소 실행 가이드에 있습니다. 현재 설치 스크립트는 Linux/macOS 셸 기준입니다.

3. 자동 분석

.venv-axis/bin/python tools/bow_detector_probe/run_axis.py \
  --video practice-cfr.mp4 --job bowflow-axis-job.json \
  --checkpoint models/spd-bow.pt --deeplsd-checkpoint models/deeplsd-md.tar \
  --deeplsd-source models/DeepLSD --output axis-review.json

앱의 같은 영상에서 실험 결과 가져오기로 axis-review.json을 열고 재생하거나 시간을 이동해 확인하세요. 결과와 영상은 기기에 저장됩니다. 후보가 없는 프레임은 점선을 표시하지 않습니다.

서버에 연결해 버튼으로 실행

별도의 개인 분석 서버를 준비한 경우 앱에 서버 주소와 개인 토큰을 입력하고 영상 전송 후 실험 분석을 누르세요. 이 경로는 원본을 서버로 전송하며 25MB 이하 영상만 지원합니다. 분석이 끝나면 임시 영상은 삭제하고 결과를 기기에 저장합니다. 토큰은 저장하지 않습니다.

서버 실행과 Cloud Run 설정은 서버 가이드에 있습니다. 서버 코드와 호출 기능을 제공하며, 실제 클라우드 서비스는 아직 배포하지 않았습니다.

실행 범위

기본 로컬 실행은 CPU 추론이며 클라우드 호출이 없습니다. 모델은 Cloudflare 사이트에 포함하지 않습니다. 두 끝은 화면에 보이는 축의 경계이며 활의 손잡이·끝 식별, 압력, 접점, 정확도 점수가 아닙니다. 공개 서비스에 이 연구 모델을 배포하기 전에는 모델 사용 권한과 별도 영상의 정확도를 확인해야 합니다.