PageSourceSearch

https://cong-yi.github.io/projects/dualmeshudf/

html cong-yi.github.io collected 2026-10-03 08:49:32 UTC 13,165 bytes, 20 lines download raw bytes

1<!DOCTYPE html> <html lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta name="google-site-verification" content="oOo9ddi_Xn45yjThIP9KrMf2w9vg72HQkBPbkjnZtCE"> <meta http-equiv="Permissions-Policy" content="interest-cohort=()"> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <title> DualMeshUDF | Congyi Zhang </title> <meta name="author" content="Congyi Zhang"> <meta name="description" content="Surface Extraction from Neural Unsigned Distance Fields"> <meta name="keywords" content="computer graphics, human-computer interaction, virtual reality"> <meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self' 'unsafe-inline' https:; style-src 'self' 'unsafe-inline' https:; img-src 'self' data: https:; font-src 'self' data: https:; media-src 'self' https:; frame-src 'self' https:; connect-src 'self' https:;"> <link rel="stylesheet" href="/assets/css/bootstrap.min.css?v=a4b3f509e79c54a512b890d73235ef04"> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/css/mdb.min.css" integrity="sha256-jpjYvU3G3N6nrrBwXJoVEYI/0zw8htfFnhT9ljN3JJw=" crossorigin="anonymous"> <link defer rel="stylesheet" href="/assets/css/academicons.min.css?v=f0b7046b84e425c55f3463ac249818f5"> <link defer rel="stylesheet" href="/assets/css/scholar-icons.css?v=62b2ac103a88034e6882a5be5f3e2772"> <link defer rel="stylesheet" type="text/css" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&amp;
1family=Lora:ital,wght@0,400;0,500;0,600;0,700;1,400&amp;display=swap"> <link defer rel="stylesheet" href="/assets/css/jekyll-pygments-themes-github.css?v=591dab5a4e56573bf4ef7fd332894c99" media="" id="highlight_theme_light"> <link rel="shortcut icon" href="/assets/img/icon.jpg?v=8aba54abf2d5abc754923eac6f5dfda7"> <link rel="stylesheet" href="/assets/css/main.css?v=d41d8cd98f00b204e9800998ecf8427e"> <link rel="canonical" href="https://cong-yi.github.io/projects/dualmeshudf/"> 
1<script src="/assets/js/theme.js?v=f1d4fb7383a07469c2850eec52a1d9bb"></script>
1 <link defer rel="stylesheet" href="/assets/css/jekyll-pygments-themes-native.css?v=5847e5ed4a4568527aa6cfab446049ca" media="none" id="highlight_theme_dark"> 
1<script>
2    initTheme();
3  </script>
3 <link defer rel="stylesheet" href="/assets/css/project-intro.css?v=73ed6c88be738bb1a15411f468b5f706"> </head> <body class="fixed-top-nav "> <header> <nav id="navbar" class="navbar navbar-light navbar-expand-sm fixed-top" role="navigation"> <div class="container"> <a class="navbar-brand title font-weight-lighter" href="/"> <span class="font-weight-bold">Congyi</span> Zhang </a> <button class="navbar-toggler collapsed ml-auto" type="button" data-toggle="collapse" data-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation"> <span class="sr-only">Toggle navigation</span> <span class="icon-bar top-bar"></span> <span class="icon-bar middle-bar"></span> <span class="icon-bar bottom-bar"></span> </button> <div class="collapse navbar-collapse text-right" id="navbarNav"> <ul class="navbar-nav ml-auto flex-nowrap"> <li class="nav-item "> <a class="nav-link" href="/">About </a> </li> <li class="nav-item "> <a class="nav-link" href="/publications/">Publications </a> </li> <li class="nav-item active"> <a class="nav-link" href="/projects/">Projects <span class="sr-only">(current)</span> </a> </li> <li class="nav-item "> <a class="nav-link" href="/teaching/">Teaching </a> </li> <li class="nav-item"> <button id="search-toggle" title="Search" onclick="openSearchModal()"> <span class="nav-link">ctrl k <i class="fa-solid fa-magnifying-glass"></i></span> </button> </li> <li class="toggle-container"> <button id="light-toggle" title="Change theme"> <i class="fa-half-sun-moon" id="light-toggle-system"></i> <i class="fa-solid fa-moon" id="light-toggle-dark"></i> <i class="fa-solid fa-sun" id="light-toggle-light"></i> </button> </li> </ul> </div> </div> </nav> </header> <div class="container mt-5" role="main"> <style type="text/css">.project-authors{font-size:1.1rem;margin-bottom:1.5rem}.project-links{margin-bottom:2rem}.project-section-title{font-size:1.5rem;margin-top:2rem;margin-bottom:1rem;border-bottom:1px solid #eee;padding-bottom:.5rem}</style> <div class="post"> <header class="post-header"> <div class="Intro"> <div class="Icon"> <figure> <picture> <source class="responsive-img-srcset" srcset="/assets/img/publication_preview/dualmeshudf-480.webp 480w,/assets/img/publication_preview/dualmeshudf-800.webp 800w,/assets/img/publication_preview/dualmeshudf-1400.webp 1400w," type="image/webp" sizes="95vw"> <img src="/assets/img/publication_preview/dualmeshudf.png" width="auto" height="auto" style=" max-width: 300px; max-height: 300px; " loading="lazy" onerror="this.onerror=null; $('.responsive-img-srcset').remove();"> </source></picture> </figure> </div> <div class="Info"> <h1 class="Title">DualMeshUDF</h1> <div class="TechIconsBox"> </div> <p>Surface Extraction from Neural Unsigned Distance Fields</p> </div> </div> <hr> </header> <article> <p class="text-center project-authors"> <strong>Authors:</strong> <a href="https://cong-yi.github.io/">Congyi Zhang</a>*, <a href="https://carrie-lin.github.io/" rel="external nofollow noopener" target="_blank">Guying Lin</a>*, <a href="https://scholar.google.com.hk/citations?user=JAzFhXQAAAAJ" rel="external nofollow noopener" target="_blank">Lei Yang</a>, <a href="https://people.tamu.edu/~xinli/" rel="external nofollow noopener" target="_blank">Xin Li</a>, <a href="https://i.cs.hku.hk/~taku/" rel="external nofollow noopener" target="_blank">Taku Komura</a>, <a href="https://people.engr.tamu.edu/schaefer/index.html" rel="external nofollow noopener" target="_blank">Scott Schaefer</a>, <a href="https://people.engr.tamu.edu/keyser/index.html" rel="external nofollow noopener" target="_blank">John Keyser</a>, <a href="https://engineering.tamu.edu/cse/profiles/Wang-Wenping.html" rel="external nofollow noopener" target="_blank">Wenping Wang</a> </p> <p class="text-center" style="font-size: 0.9rem; margin-top: -1rem; margin-bottom: 1.5rem;">* joint first authors</p> <div class="text-center project-links"> <a href="https://arxiv.org/abs/2309.08878" class="btn btn-outline-primary btn-sm" rel="external nofollow noopener" target="_blank">Paper (arXiv)</a> <a href="https://github.com/cong-yi/DualMesh-UDF" class="btn btn-outline-dark btn-sm ml-2" rel="external nofollow noopener" target="_blank">Code (GitHub)</a> </div> <h4 class="project-section-title">Abstract</h4> <p>We propose a method, named DualMesh-UDF, to extract a surface from unsigned distance functions (UDFs), encoded by neural networks, or neural UDFs. Neural UDFs are becoming increasingly popular for surface representation because of their versatility in presenting surfaces with arbitrary topologies, as opposed to the signed distance function that is limited to representing a closed surface. However, the applications of neural UDFs are hindered by the notorious difficulty in extracting the target surfaces they represent. Recent methods for surface extraction from a neural UDF suffer from significant geometric errors or topological artifacts due to two main difficulties: (1) A UDF does not exhibit sign changes; and (2) A neural UDF typically has substantial approximation errors. DualMesh-UDF addresses these two difficulties. Specifically, given a neural UDF encoding a target surface S to be recovered, we first estimate the tangent planes of S at a set of sample points close to S. Next, we organize these sample points into local cluster
3s, and for each local cluster, solve a linear least squares problem to determine a final surface point. These surface points are then connected to create the output mesh surface, which approximates the target surface. The robust estimation of the tangent planes of the target surface and the subsequent minimization problem constitute our core strategy, which contributes to the favorable performance of DualMesh-UDF over other competing methods. To efficiently implement this strategy, we employ an adaptive Octree. Within this framework, we estimate the location of a surface point in each of the octree cells identified as containing part of the target surface. Extensive experiments show that our method outperforms existing methods in terms of surface reconstruction quality while maintaining comparable computational efficiency.</p> <h4 class="project-section-title">BibTeX</h4> <div class="language-bibtex highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nc">@InProceedings</span><span class="p">{</span><span class="nl">zhang2023dualmeshudf</span><span class="p">,</span>
4    <span class="na">author</span>    <span class="p">=</span> <span class="s">{Zhang, Congyi and
5                 Lin, Guying and
6                 Yang, Lei and
7                 Li, Xin and
8                 Komura, Taku and
9                 Schaefer, Scott and
10                 Keyser, John and
11                 Wang, Wenping}</span><span class="p">,</span>
12    <span class="na">title</span>     <span class="p">=</span> <span class="s">{Surface Extraction from Neural Unsigned Distance Fields}</span><span class="p">,</span>
13    <span class="na">booktitle</span> <span class="p">=</span> <span class="s">{Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV)}</span><span class="p">,</span>
14    <span class="na">month</span>     <span class="p">=</span> <span class="s">{October}</span><span class="p">,</span>
15    <span class="na">year</span>      <span class="p">=</span> <span class="s">{2023}</span><span class="p">,</span>
16    <span class="na">pages</span>     <span class="p">=</span> <span class="s">{0000-0000}</span>
17<span class="p">}</span>
18</code></pre></div></div> </article> </div> </div> <footer class="fixed-bottom" role="contentinfo"> <div class="container mt-0"> © Copyright 2026 Congyi Zhang. Powered by <a href="https://jekyllrb.com/" target="_blank" rel="external nofollow noopener">Jekyll</a> with <a href="https://github.com/alshedivat/al-folio" rel="external nofollow noopener" target="_blank">al-folio</a> theme. Hosted by <a href="https://pages.github.com/" target="_blank" rel="external nofollow noopener">GitHub Pages</a>. Last updated: August 19, 2026. </div> </footer> 
18<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/jquery.min.js" integrity="sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4=" crossorigin="anonymous"></script>
18 
18<script src="/assets/js/bootstrap.bundle.min.js"></script>
18 
18<script src="https://cdn.jsdelivr.net/npm/[email protected]/js/mdb.min.js" integrity="sha256-NdbiivsvWt7VYCt6hYNT3h/th9vSTL4EDWeGs5SN3DA=" crossorigin="anonymous"></script>
18 
18<script defer src="https://cdn.jsdelivr.net/npm/[email protected]/dist/masonry.pkgd.min.js" integrity="sha256-Nn1q/fx0H7SNLZMQ5Hw5JLaTRZp0yILA/FRexe19VdI=" crossorigin="anonymous"></script>
18 
18<script defer src="https://cdn.jsdelivr.net/npm/[email protected]/imagesloaded.pkgd.min.js" integrity="sha256-htrLFfZJ6v5udOG+3kNLINIKh2gvoKqwEhHYfTTMICc=" crossorigin="anonymous"></script>
18 
18<script defer src="/assets/js/masonry.js?v=a0db7e5d5c70cc3252b3138b0c91dcaf" type="text/javascript"></script>
18 
18<script defer src="https://cdn.jsdelivr.net/npm/[email protected]/dist/medium-zoom.min.js" integrity="sha256-ZgMyDAIYDYGxbcpJcfUnYwNevG/xi9OHKaR/8GK+jWc=" crossorigin="anonymous"></script>
18 
18<script defer src="/assets/js/zoom.js?v=85ddb88934d28b74e78031fd54cf8308"></script>
18 
18<script src="/assets/js/no_defer.js?v=2781658a0a2b13ed609542042a859126"></script>
18 
18<script defer src="/assets/js/common.js?v=c15de51d4bb57887caa2c21988d97279"></script>
18 
18<script defer src="/assets/js/copy_code.js?v=c8a01c11a92744d44b093fc3bda915df" type="text/javascript"></script>
18 
18<script defer src="/assets/js/jupyter_new_tab.js?v=d9f17b6adc2311cbabd747f4538bb15f"></script>
18 
18<script defer type="text/javascript" id="MathJax-script" src="https://cdn.jsdelivr.net/npm/[email protected]/es5/tex-mml-chtml.js" integrity="sha256-MASABpB4tYktI2Oitl4t+78w/lyA+D7b/s9GEP0JOGI=" crossorigin="anonymous"></script>
18 
18<script src="/assets/js/mathjax-setup.js?v=a5bb4e6a542c546dd929b24b8b236dfd"></script>
18 
18<script defer src="https://cdnjs.cloudflare.com/polyfill/v3/polyfill.min.js?features=es6" crossorigin="anonymous"></script>
vendor: 64 bytes, line 18
18 <script async src="https://www.googletagmanager.com/gtag/js?id=
18G-0D6W2H20J1
vendor: 12 bytes, line 18
18"></script> 
18<script defer src="/assets/js/google-analytics-setup.js"></script>
18 
18<script src="/assets/js/vanilla-back-to-top.min.js?v=f40d453793ff4f64e238e420181a1d17"></script>
18 
18<script>
19    addBackToTop();
20  </script>
20 
20<script type="module" src="/assets/js/search/ninja-keys.min.js?v=a3446f084dcaecc5f75aa1757d087dcf"></script>
20 <ninja-keys hidebreadcrumbs noautoloadmdicons placeholder="Type to start searching"></ninja-keys> 
20<script src="/assets/js/search-setup.js?v=6c304f7b1992d4b60f7a07956e52f04a"></script>
20 
20<script src="/assets/js/search-data.js"></script>
20 
20<script src="/assets/js/shortcut-key.js?v=ccc841c459bfc0e64c1c2b5acd10df02"></script>
20 </body> </html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.