diff --git a/download_resource.bat b/download_resource.bat index f590910..7f3d8ff 100644 --- a/download_resource.bat +++ b/download_resource.bat @@ -141,6 +141,15 @@ SET RETRY_COUNT=3 SET TIMEOUT_SECONDS=600 SET CURL_OPTS=--connect-timeout 30 --max-time %TIMEOUT_SECONDS% --retry %RETRY_COUNT% -L -C - +REM 设置代理选项(可选) +IF DEFINED HTTP_PROXY ( + SET CURL_OPTS=%CURL_OPTS% --proxy %HTTP_PROXY% + SET REQUESTS_CA_BUNDLE=%PROJECT_DIR%\certs\cacert.pem +) + +REM 添加文件大小检查 +SET MIN_FILE_SIZE=1000000 REM 1MB + REM 下载 Neural Haircut 文件 cd NeuralHaircut IF EXIST "diffusion_prior\model.pt" ( diff --git a/install.bat b/install.bat index 4ac45fa..3ee7ffc 100644 --- a/install.bat +++ b/install.bat @@ -230,4 +230,23 @@ IF NOT EXIST "%CUDA_HOME%" ( exit /b 1 ) +REM 检查Python版本 +python -c "import sys; assert sys.version_info >= (3,8) and sys.version_info < (3,9), 'Python 3.8.x required'" || ( + echo 错误:需要Python 3.8.x版本 + exit /b 1 +) + +REM 检查CUDA版本 +nvcc --version | findstr "release 11.8" >nul || ( + echo 错误:需要CUDA 11.8版本 + exit /b 1 +) + +REM 检查磁盘空间 +for /f "tokens=3" %%a in ('dir /-c /w "%~d0\" ^| find "bytes free"') do set FREE_SPACE=%%a +if %FREE_SPACE% LSS 21474836480 ( + echo 错误:可用磁盘空间不足20GB + exit /b 1 +) + echo Installation completed! diff --git a/requirements.txt b/requirements.txt index 0d90041..9a51046 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,6 +1,6 @@ numpy>=1.21.0,<1.25.0 scipy>=1.7.0,<2.0.0 -pillow>=9.0.0 +pillow>=9.5.0 tqdm>=4.62.2 matplotlib>=3.4.2 opencv-python>=4.5.3 @@ -8,15 +8,15 @@ scikit-image>=0.18.2 imageio>=2.9.0 lpips>=0.1.4 gdown>=4.7.1 -face-alignment>=1.3.5 -pytorch3d>=0.7.0 +face-alignment==1.3.5 +pytorch3d>=0.7.0,<0.8.0 ninja>=1.10.2 trimesh>=3.9.35 pyhocon>=0.3.59 wandb>=0.12.0 tensorboard>=2.6.0 open3d>=0.13.0 -kaolin>=0.13.0 +kaolin>=0.13.0,<0.16.0 pytorch-lightning>=1.6.0 plyfile>=0.8.1 icecream>=2.1.3 diff --git a/run.bat b/run.bat index e1bdc0d..94284c2 100644 --- a/run.bat +++ b/run.bat @@ -34,10 +34,25 @@ IF NOT EXIST "%MICROMAMBA_EXE%" ( exit /b 1 ) +REM 检查输入视频 +IF NOT EXIST "%DATA_PATH%\raw.mp4" ( + echo 错误:未找到输入视频文件 %DATA_PATH%\raw.mp4 + exit /b 1 +) + +REM 检查视频格式和分辨率 +ffprobe -v error -select_streams v:0 -show_entries stream=width,height,duration -of csv=p=0 "%DATA_PATH%\raw.mp4" || ( + echo 错误:无法读取视频信息,请确保视频格式正确 + exit /b 1 +) + REM ################## REM # 预处理阶段 # REM ################## +REM 添加进度显示 +echo [1/3] 预处理阶段开始... + REM 将原始图像整理成3D Gaussian Splatting格式 CALL "%MICROMAMBA_EXE%" activate -p %MAMBA_ROOT_PREFIX%\envs\gaussian_splatting_hair cd %PROJECT_DIR%\src\preprocessing @@ -174,6 +189,9 @@ REM ################## REM # 重建阶段 # REM ################## +REM 添加进度显示 +echo [2/3] 重建阶段开始... + set EXP_PATH_1=%DATA_PATH%\3d_gaussian_splatting\%EXP_NAME_1% REM 运行3D Gaussian Splatting重建 @@ -279,6 +297,9 @@ REM ################## REM # 可视化阶段 # REM ################## +REM 添加进度显示 +echo [3/3] 可视化阶段开始... + REM 导出结果的股线为pkl和ply格式 CALL "%MICROMAMBA_EXE%" activate -p %MAMBA_ROOT_PREFIX%\envs\gaussian_splatting_hair cd %PROJECT_DIR%\src\preprocessing