WonderWorld是一种用于交互式3D场景外推的新型框架,允许用户根据单个输入图像和用户指定的文本,实时渲染和生成逼真的虚拟世界。通过利用快速高斯面元和基于引导扩散的深度估计方法,WonderWorld可以生成几何一致的3D场景,实现实时用户交互和探索。

 

 

安装

 

为了正确完成安装,请仅在有兼容 CUDA 的 GPU 的情况下继续操作。它需要 24GB GPU 内存才能运行。

克隆 repo 并创建环境:

git clone https://github.com/KovenYu/WonderJourney.git
cd WonderJourney
mamba create --name wonderjourney python=3.10
mamba activate wonderjourney

我们使用 Pytorch3D进行渲染。运行以下命令进行安装或按照其安装指南进行操作(可能需要一些时间)。

mamba install pytorch=1.13.0 torchvision pytorch-cuda=11.6 -c pytorch -c nvidia
mamba install -c fvcore -c iopath -c conda-forge fvcore iopath
mamba install -c bottler nvidiacub
mamba install pytorch3d -c pytorch3d

安装其余要求:

pip install -r requirements.txt

为spacy加载英语语言模型:

python -m spacy download en_core_web_sm

导出您的 OpenAI api_key(因为我们使用 GPT-4 来生成场景描述):

export OPENAI_API_KEY='your_api_key_here'

下载Midas DPT模型并将其放在根目录。

wget https://github.com/isl-org/MiDaS/releases/download/v3_1/dpt_beit_large_512.pt

运行示例

 

  • 示例配置文件

    要运行示例,首先需要编写一个配置。示例配置./config/village.yaml如下所示:

    runs_dir: output/56_village
    
    example_name: village
    
    seed: -1
    frames: 10
    save_fps: 10
    
    finetune_decoder_gen: True
    finetune_decoder_interp: False  # Turn on this for higher-quality rendered video
    finetune_depth_model: True
    
    num_scenes: 4
    num_keyframes: 2
    use_gpt: True
    kf2_upsample_coef: 4
    skip_interp: False
    skip_gen: False
    enable_regenerate: True
    
    debug: True
    inpainting_resolution_gen: 512
    
    rotation_range: 0.45
    rotation_path: [0, 0, 0, 1, 1, 0, 0, 0]
    camera_speed_multiplier_rotation: 0.2
    

    生成示例的总帧数为num_scenes × num_keyframes。您可以rotation_path在配置文件中手动调整以控制相机在每一帧中的旋转状态。0表示直线行驶,1表示右转,并且−1表示左转。

  • 跑步

    python run.py --example_config config/village.yaml
    

    您将看到结果output/56_village/{time-string}_merged

如何添加更多示例?

 

我们强烈建议您添加新图片并尝试新内容!您需要单独进行图像-标题配对(例如,使用 DALL-E 生成图像,使用 GPT4V 生成描述)。

  • 在 中添加新图像./examples/images/

  • 在 中添加此新图像的内容./examples/examples.yaml

    以下是一个例子:

    - name: new_example
      image_filepath: examples/images/new_example.png
      style_prompt: DSLR 35mm landscape
      content_prompt: scene name, object 1, object 2, object 3
      negative_prompt: ''
      background: ''
    • content_prompt:“场景名称”、“对象 1”、“对象 2”、“对象 3”

    • negative_promptbackground是可选的

    对于受控旅程,需添加control_text。示例如下:

    - name: poem_jiangxue
      image_filepath: examples/images/60_poem_jiangxue.png
      style_prompt: black and white color ink painting
      content_prompt: Expansive mountainous landscape, old man in traditional attire, calm river, mountains
      negative_prompt: ""
      background: ""
      control_text: ["千山鸟飞绝", "万径人踪灭", "孤舟蓑笠翁", "独钓寒江雪"]
      
    - name: poem_snowy_evening
      image_filepath: examples/images/72_poem_snowy_evening.png
      style_prompt: Monet painting
      content_prompt: Stopping by woods on a snowy evening, woods, snow, village
      negative_prompt: ""
      background: ""
      control_text: ["Snowy Woods and Farmhouse: A secluded farmhouse, a frozen lake, a dense thicket, a quiet meadow, a chilly wind, a pale twilight, a covered bridge, a rustic fence, a snow-laden tree, and a frosty ground", "The Traveler's Horse: A restless horse, a jingling harness, a snowy mane, a curious gaze, a sturdy hoof, a foggy breath, a leather saddle, a woolen blanket, a frost-covered tail, and a patient stance", "Snowfall in the Woods: A gentle snowflake, a whispering wind, a soft flurry, a white blanket, a twinkling icicle, a bare branch, a hushed forest, a crystalline droplet, a serene atmosphere, and a quiet night", "Deep, Dark Woods in the Evening: A mysterious grove, a shadowy tree, a darkened sky, a hidden trail, a silent owl, a moonlit glade, a dense underbrush, a quiet clearing, a looming branch, and an eerie stillness"]
  • 编写一个config/new_example.yaml类似于./config/village.yaml新示例的配置

  • 跑步

    python run.py --example_config config/new_example.yaml

引用

 

@article{yu2023wonderjourney,
  title={WonderJourney: Going from Anywhere to Everywhere},
  author={Yu, Hong-Xing and Duan, Haoyi and Hur, Junhwa and Sargent, Kyle and Rubinstein, Michael and Freeman, William T and Cole, Forrester and Sun, Deqing and Snavely, Noah and Wu, Jiajun and Herrmann, Charles},
  journal={arXiv preprint arXiv:2312.03884},
  year={2023}
}

 

仓库地址

GitHub:https://github.com/KovenYu/WonderJourneyGitHub:

项目: //wonderworld-2024.github.io

网站免责声明
一、资源来源与版权

本网站所有资源及文章均源自互联网,经过我们的收集整理后呈现给用户。我们明确声明,本网站不直接参与任何资源的创作或制作过程,仅作为信息的传递者。若您发现本网站上的任何内容侵犯了您的合法权益(包括但不限于版权、商标权、专利权等),请立即通过以下联系方式与我们取得联系。在收到您的反馈并核实情况后,我们将迅速采取相应措施,包括但不限于删除侵权内容,以确保您的合法权益得到及时保护。

二、资源使用与责任

资源鉴别:本网站发布的资源可能包含水印、广告链接或其他引流信息,这是由资源原始来源决定的。我们提醒用户在使用这些资源时,应保持警惕,自行鉴别信息的真实性和适用性,避免受到不必要的干扰或误导。 非商业用途:本网站提供的资源仅供学习、研究及非商业性交流使用。我们鼓励用户尊重原创,支持正版。若您计划将本站资源用于商业目的,请务必先获得合法授权,否则因此产生的一切法律后果将由下载用户自行承担。

三、联系方式

为了更好地服务用户,解决您在使用本网站过程中可能遇到的问题或反馈侵权信息,我们提供了以下联系方式(请将“#”替换为“@”后使用): 联系方式:contact#kukaylib.com

四、免责条款

本网站致力于为用户提供高质量的信息服务,但对于因网络状况、第三方干扰、不可抗力等因素导致的服务中断、数据丢失、信息错误等问题,本网站不承担任何责任。同时,本网站对于用户在使用本站资源过程中可能产生的任何直接、间接、偶然、特殊或惩罚性损失,也不承担任何法律责任。 请用户在使用本网站时,务必遵守相关法律法规及道德准则,自行承担因使用本站资源而产生的所有风险和后果。

五、更新与修订

本网站有权随时更新或修订本免责声明,更新或修订后的免责声明一经发布即具有法律效力。用户应定期访问本页面以了解最新的免责声明内容。 感谢您对本网站的理解与支持!我们将继续努力,为用户提供更加优质、便捷的信息服务。