physctrl / docs /index.html
chenwang's picture
update
4724018
raw
history blame
21.9 kB
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<!-- Meta tags for social media banners, these should be filled in appropriatly as they are your "business card" -->
<!-- Replace the content tag with appropriate information -->
<meta name="description" content="DESCRIPTION META TAG">
<meta property="og:title" content="SOCIAL MEDIA TITLE TAG" />
<meta property="og:description" content="SOCIAL MEDIA DESCRIPTION TAG TAG" />
<meta property="og:url" content="https://cwchenwang.github.io/physctrl" />
<!-- Path to banner image, should be in the path listed below. Optimal dimenssions are 1200X630-->
<meta property="og:image" content="static/image/your_banner_image.png" />
<meta property="og:image:width" content="1200" />
<meta property="og:image:height" content="630" />
<!-- Keywords for your paper to be indexed by-->
<meta name="keywords" content="Video Model, Physics">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>PhysCtrl</title>
<link rel="icon" type="image/x-icon" href="static/images/favicon.ico">
<link href="https://fonts.googleapis.com/css?family=Google+Sans|Noto+Sans|Castoro" rel="stylesheet">
<link rel="stylesheet" href="static/css/bulma.min.css">
<link rel="stylesheet" href="static/css/bulma-carousel.min.css">
<link rel="stylesheet" href="static/css/bulma-slider.min.css">
<link rel="stylesheet" href="static/css/fontawesome.all.min.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/jpswalsh/academicons@1/css/academicons.min.css">
<link rel="stylesheet" href="static/css/index.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="https://documentcloud.adobe.com/view-sdk/main.js"></script>
<script defer src="static/js/fontawesome.all.min.js"></script>
<script src="static/js/bulma-carousel.min.js"></script>
<script src="static/js/bulma-slider.min.js"></script>
<script src="static/js/index.js"></script>
</head>
<body>
<section class="hero">
<div class="hero-body">
<div class="container is-max-desktop">
<div class="columns is-centered" style="margin-bottom: 0em">
<div class="column is-max-desktop has-text-centered">
<h1 class="title is-2 publication-title" style="margin-bottom:0rem">
<strong>PhysCtrl: Generative Physics for Controllable and Physics-Grounded Video Generation </strong>
</h1>
</div>
</div>
<div class="columns is-centered">
<div class="column is-four-fifths has-text-centered">
<div class="is-size-5 publication-authors">
<span class="author-block">
<a href="https://cwchenwang.github.io/">Chen Wang</a><sup>1*</sup></span>&nbsp;&nbsp;&nbsp;&nbsp;
<span class="author-block">
<a href="https://czzzzh.github.io/">Chuhao Chen</a><sup>1*</sup>&nbsp;&nbsp;&nbsp;&nbsp;
</span>
<span class="author-block">
<a href="https://yh2371.github.io/">Yiming Huang</a>
<sup>1</sup>&nbsp;&nbsp;&nbsp;&nbsp;
</span>
<span class="author-block">
<a href="https://frank-zy-dou.github.io/">Zhiyang Dou</a><sup>1,2</sup>&nbsp;&nbsp;&nbsp;&nbsp;
</span>
<span class="author-block">
<a href="https://liuyuan-pal.github.io/">Yuan Liu</a><sup>3</sup>&nbsp;&nbsp;&nbsp;&nbsp;
</span>
<span class="author-block">
<a href="http://jiataogu.me/">Jiatao Gu</a><sup>1</sup>&nbsp;&nbsp;&nbsp;&nbsp;
</span>
<span class="author-block">
<a href="https://lingjie0206.github.io/">Lingjie Liu</a><sup>1</sup>&nbsp;&nbsp;&nbsp;&nbsp;
</span>
</div>
<div class="is-size-5 publication-authors">
<span class="author-block"><sup>1</sup>University of Pennsylvania</span>
&nbsp;&nbsp;&nbsp;&nbsp;
<span class="author-block"><sup>2</sup>HKU</span>
&nbsp;&nbsp;&nbsp;&nbsp;
<span class="author-block"><sup>3</sup>HKUST</span>
<br>
<span class="author-block">(*: equal contribution)</span>
<br>
</div>
<br>
<div class="columns is-centered" style="margin-bottom: 0em">
<div class="column is-max-desktop has-text-centered">
<h1 class="title is-4 publication-title" style="margin-bottom:0rem">
<strong>NeurIPS, 2025</strong>
</h1>
</div>
</div>
<div class="column has-text-centered">
<div class="publication-links">
<span class="link-block">
<a href="https://arxiv.org/abs/2509.20358" target="_blank"
class="external-link button is-normal is-rounded is-dark">
<span class="icon">
<i class="fas fa-file-pdf"></i>
</span>
<span>Paper</span>
</a>
</span>
<span class="link-block">
<a href="TODO: demo" target="_blank" class="external-link button is-normal is-rounded is-dark">
<span class="icon">
<i class="fas fa-images"></i>
</span>
<span>Demo (Coming)</span>
</a>
</span>
<span class="link-block">
<a href="https://github.com/cwchenwang/physctrl"
class="external-link button is-normal is-rounded is-dark">
<span class="icon">
<i class="fab fa-github"></i>
</span>
<span>Code</span>
</a>
</span>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<section class="hero is-small" style="margin-top: -5em;">
<div class="hero-body">
<div class="container">
<div id="results-carousel" class="carousel results-carousel">
<div class="item">
<video poster="" autoplay muted loop playsinline height="80%">
<source src="static/videos/spot_cat.mp4" type="video/mp4">
</video>
</div>
<div class="item">
<video poster="" autoplay muted loop playsinline height="100%">
<source src="static/videos/earphone_cat.mp4" type="video/mp4">
</video>
</div>
<div class="item">
<video poster="" autoplay muted loop playsinline height="100%">
<source src="static/videos/giraffe_cat.mp4" type="video/mp4">
</video>
</div>
</div>
</div>
</div>
<h2 class="subtitle has-text-centered" style="margin-top: -1em; margin-bottom: 1em;">
PhysCtrl achieves controllable and physics-grounded video generation from an initial force.
</h2>
</section>
<!-- Paper abstract -->
<section class="section hero is-light">
<div class="container is-max-desktop">
<div class="columns is-centered has-text-centered">
<div class="column is-four-fifths">
<h2 class="title is-3">Abstract</h2>
<div class="content has-text-justified">
<p>
Existing video generation models excel at producing photo-realistic videos from text or images, but often
lack physical plausibility and 3D controllability. To overcome these limitations, we introduce PhysCtrl, a
novel framework for physics-grounded image-to-video generation with physical parameters and force control.
At its core is a generative physics network that learns the distribution of physical dynamics across four
materials (elastic, sand, plasticine, and rigid) via a diffusion model conditioned on physics parameters
and applied forces. We represent physical dynamics as 3D point trajectories and train on a large-scale
synthetic dataset of 550K animations generated by physics simulators. We enhance the diffusion model with
a novel spatiotemporal attention block that emulates particle interactions and incorporates physics-based
constraints during training to enforce physical plausibility. Experiments show that PhysCtrl generates
realistic, physics-grounded motion trajectories which, when used to drive image-to-video models, yield
high-fidelity, controllable videos that outperform existing methods in both visual quality and physical
plausibility.
</p>
</div>
</div>
</div>
</div>
</section>
<!-- End paper abstract -->
<section class="hero teaser" style="padding-top: 2em;">
<div class="container is-max-desktop">
<div class="columns is-centered has-text-centered">
<div class="column">
<h2 class="title is-3">Pipeline</h2>
<img src="static/images/pipeline.png" alt="Teaser image" class="teaser-image">
<div class="content has-text-justified">
<p>
Given a single image, we lift the object in that image into 3D points. We train a diffusion-based
trajectory
generation model conditioned on physics parameters and external force for motion generation, which are
then
used as strong physics-grounded guidance for image-to-video generation.
</p>
</div>
</div>
</div>
</section>
<section class="hero teaser" style="padding-top: 2em;">
<div class="container is-max-desktop">
<div class="columns is-centered has-text-centered">
<div class="column">
<h2 class="title is-4">Force Control</h2>
<video preload="auto" autoplay muted loop playsinline>
<source src="./static/videos/f16.mp4" type="video/mp4">
</video>
<video preload="auto" autoplay muted loop playsinline>
<source src="./static/videos/hat.mp4" type="video/mp4">
</video>
</div>
</div>
</div>
</section>
<section class="hero teaser" style="padding-top: 2em;">
<div class="container is-max-desktop">
<div class="columns is-centered has-text-centered">
<div class="column">
<h2 class="title is-4">Material Control</h2>
<video preload="auto" autoplay muted loop playsinline>
<source src="./static/videos/giraffeX.mp4" type="video/mp4">
</video>
<video preload="auto" autoplay muted loop playsinline>
<source src="./static/videos/cat.mp4" type="video/mp4">
</video>
</div>
</div>
</div>
</section>
<section class="hero teaser" style="padding-top: 2em;">
<div class="container is-max-desktop">
<div class="columns is-centered">
<div class="column">
<h2 class="title is-4 has-text-centered">Comparison</h2>
<div class="comparison-question">
<div class="comparison-question-header">
<img src="static/imgs/earphone.png" class="comparison-question-image">
<div class="comparison-question-description">
A pair of wireless headphones rests on a white table before lifting into the air, as if there is an
invisble force applied to its handle.
</div>
</div>
<div class="comparison-options">
<div class="comparison-option">
<video preload="auto" autoplay muted loop playsinline>
<source src="static/videos/objctrl/earphone.mp4" type="video/mp4">
</video>
<div class="comparison-option-number">ObjCtrl</div>
</div>
<div class="comparison-option">
<video preload="auto" autoplay muted loop playsinline>
<source src="static/videos/draganything/earphone.mp4" type="video/mp4">
</video>
<div class="comparison-option-number">DragAnything</div>
</div>
<div class="comparison-option">
<video preload="auto" autoplay muted loop playsinline>
<source src="static/videos/cogvideo/earphone.mp4" type="video/mp4">
</video>
<div class="comparison-option-number">CogVideo</div>
</div>
<div class="comparison-option">
<video preload="auto" autoplay muted loop playsinline>
<source src="static/videos/wan/earphone.mp4" type="video/mp4">
</video>
<div class="comparison-option-number">Wan2.2</div>
</div>
<div class="comparison-option">
<video preload="auto" autoplay muted loop playsinline>
<source src="static/videos/ours/earphone.mp4" type="video/mp4">
</video>
<div class="comparison-option-number">Ours</div>
</div>
</div>
</div>
<div class="comparison-question">
<div class="comparison-question-header">
<img src="static/imgs/nailong.png" class="comparison-question-image">
<div class="comparison-question-description">
A yellow plasticine dinasour toy free falls to the ground due to gravity. It has no deformation before
it touches the ground. After it touches the ground, it deforms.
</div>
</div>
<div class="comparison-options">
<div class="comparison-option">
<video preload="auto" autoplay muted loop playsinline>
<source src="static/videos/objctrl/nailong.mp4" type="video/mp4">
</video>
<div class="comparison-option-number">ObjCtrl</div>
</div>
<div class="comparison-option">
<video preload="auto" autoplay muted loop playsinline>
<source src="static/videos/draganything/nailong.mp4" type="video/mp4">
</video>
<div class="comparison-option-number">DragAnything</div>
</div>
<div class="comparison-option">
<video preload="auto" autoplay muted loop playsinline>
<source src="static/videos/cogvideo/nailong.mp4" type="video/mp4">
</video>
<div class="comparison-option-number">CogVideo</div>
</div>
<div class="comparison-option">
<video preload="auto" autoplay muted loop playsinline>
<source src="static/videos/wan/nailong.mp4" type="video/mp4">
</video>
<div class="comparison-option-number">Wan2.2</div>
</div>
<div class="comparison-option">
<video preload="auto" autoplay muted loop playsinline>
<source src="static/videos/ours/nailong.mp4" type="video/mp4">
</video>
<div class="comparison-option-number">Ours</div>
</div>
</div>
</div>
<div class="comparison-question">
<div class="comparison-question-header">
<img src="static/imgs/penguin.png" class="comparison-question-image">
<div class="comparison-question-description">
the penguin is fully lifted upwards and float into the air with a natural motion, as if there is a force
applied onto its left wing. No webbed feet, realistic claws and flippers.
</div>
</div>
<div class="comparison-options">
<div class="comparison-option">
<video preload="auto" autoplay muted loop playsinline>
<source src="static/videos/objctrl/penguin.mp4" type="video/mp4">
</video>
<div class="comparison-option-number">ObjCtrl</div>
</div>
<div class="comparison-option">
<video preload="auto" autoplay muted loop playsinline>
<source src="static/videos/draganything/penguin.mp4" type="video/mp4">
</video>
<div class="comparison-option-number">DragAnything</div>
</div>
<div class="comparison-option">
<video preload="auto" autoplay muted loop playsinline>
<source src="static/videos/cogvideo/penguin.mp4" type="video/mp4">
</video>
<div class="comparison-option-number">CogVideo</div>
</div>
<div class="comparison-option">
<video preload="auto" autoplay muted loop playsinline>
<source src="static/videos/wan/penguin.mp4" type="video/mp4">
</video>
<div class="comparison-option-number">Wan2.2</div>
</div>
<div class="comparison-option">
<video preload="auto" autoplay muted loop playsinline>
<source src="static/videos/ours/penguin.mp4" type="video/mp4">
</video>
<div class="comparison-option-number">Ours</div>
</div>
</div>
</div>
<div class="comparison-question">
<div class="comparison-question-header">
<img src="static/imgs/tube.png" class="comparison-question-image">
<div class="comparison-question-description">
A black cylindrical pipe lies on a wooden surface before rising and bending at a sharp angle. The
transformation is smooth and fluid, as if an invisible upward force is applied in the middle of the
pipe.
</div>
</div>
<div class="comparison-options">
<div class="comparison-option">
<video preload="auto" autoplay muted loop playsinline>
<source src="static/videos/objctrl/tube.mp4" type="video/mp4">
</video>
<div class="comparison-option-number">ObjCtrl</div>
</div>
<div class="comparison-option">
<video preload="auto" autoplay muted loop playsinline>
<source src="static/videos/draganything/tube.mp4" type="video/mp4">
</video>
<div class="comparison-option-number">DragAnything</div>
</div>
<div class="comparison-option">
<video preload="auto" autoplay muted loop playsinline>
<source src="static/videos/cogvideo/tube.mp4" type="video/mp4">
</video>
<div class="comparison-option-number">CogVideo</div>
</div>
<div class="comparison-option">
<video preload="auto" autoplay muted loop playsinline>
<source src="static/videos/wan/tube.mp4" type="video/mp4">
</video>
<div class="comparison-option-number">Wan2.2</div>
</div>
<div class="comparison-option">
<video preload="auto" autoplay muted loop playsinline>
<source src="static/videos/ours/tube.mp4" type="video/mp4">
</video>
<div class="comparison-option-number">Ours</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<!--BibTex citation -->
<section class="section" id="BibTeX">
<div class="container is-max-desktop content">
<h2 class="title">BibTeX</h2>
<pre><code>
@inproceedings{physctrl2025,
Author = {Chen Wang* and Chuhao Chen* and Yiming Huang and Zhiyang Dou and Yuan Liu and Jiatao Gu and Lingjie Liu},
Title = {PhysCtrl: Generative Physics for Controllable and Physics-Grounded Video Generation},
Year = {2025},
booktitle={NeurIPS},
}
</code></pre>
</div>
</section>
<!--End BibTex citation -->
<!--BibTex citation -->
<section class="section" id="clustrmap">
<div class="container is-max-desktop content" style="max-width: 15%">
<script type="text/javascript" id="mapmyvisitors"
src="//mapmyvisitors.com/map.js?d=H_yWH88OfciAK0oL6NoySoCvT-dlKgbrOSMCSe3a0ms&cl=ffffff&w=a"></script>
</div>
</section>
<footer class="footer">
<div class="container">
<div class="columns is-centered">
<div class="column is-8">
<div class="content">
<p>
This page was built using the <a href="https://github.com/eliahuhorwitz/Academic-project-page-template"
target="_blank">Academic Project Page Template</a> which was adopted from the <a
href="https://nerfies.github.io" target="_blank">Nerfies</a> project page.
You are free to borrow the source code of this website, we just ask that you link back to this page in the
footer. <br> This website is licensed under a <a rel="license"
href="http://creativecommons.org/licenses/by-sa/4.0/" target="_blank">Creative
Commons Attribution-ShareAlike 4.0 International License</a>.
</p>
</div>
</div>
</div>
</div>
</footer>
<!-- Statcounter tracking code -->
<!-- You can add a tracker to track page visits by creating an account at statcounter.com -->
<!-- End of Statcounter Code -->
</body>
</html>