diff --git a/.gitignore b/.gitignore index c5b933c..d8c5a2e 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -projects/* \ No newline at end of file +# projects/* \ No newline at end of file diff --git a/projects/SolidGS_temp/css/iconize.css b/projects/SolidGS_temp/css/iconize.css new file mode 100644 index 0000000..79e67f2 --- /dev/null +++ b/projects/SolidGS_temp/css/iconize.css @@ -0,0 +1,185 @@ +/* Iconize 0.5 */ + +/* websites (pictures and movies) */ +a[href *="youtube.com/watch?"], a[href *="sevenload.com/videos/"], a[href *="metacafe.com/watch/"] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_film.gif) no-repeat center right; +} + +a[href *="flickr.com/photos/"], a[href *="zooomr.com"], a[href *="imageshack.us"], a[href *="bubbleshare.com"], a[href *="sevenload.com/bilder/"] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_pic.gif) no-repeat center right; +} + +/* extensions */ + +a[href$='.doc'], a[href$='.rtf'] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_doc.gif) no-repeat center right; +} + +a[href$='.txt'] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_txt.gif) no-repeat center right; +} + +a[href$='.xls'] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_xls.gif) no-repeat center right; +} + +a[href$='.rss'], a[href$='.atom'] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_feed.gif) no-repeat center right; +} + +a[href$='.opml'] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_opml.gif) no-repeat center right; +} + +a[href$='.phps'] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_phps.gif) no-repeat center right; +} + +a[href$='.phps'] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_phps.gif) no-repeat center right; +} + +a[href$='.torrent'] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_torrent.gif) no-repeat center right; +} + +a[href$='.vcard'] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_vcard.gif) no-repeat center right; +} + +a[href$='.exe'] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_exe.gif) no-repeat center right; +} + +a[href$='.dmg'], a[href$='.app'] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_dmg.gif) no-repeat center right; +} + +a[href$='.pps'] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_pps.gif) no-repeat center right; +} + +a[href$='.pdf'] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_pdf.gif) no-repeat center right; +} + +a[href$='.xpi'] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_plugin.gif) no-repeat center right; +} + +a[href$='.fla'], a[href$='.swf'] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_flash.gif) no-repeat center right; +} + +a[href$='.zip'], a[href$='.rar'], a[href$='.gzip'], a[href$='.bzip'], a[href$='.ace'] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_archive.gif) no-repeat center right; +} + +a[href$='.ical'] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_ical.gif) no-repeat center right; +} + +a[href$='.css'] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_css.gif) no-repeat center right; +} + +a[href$='.ttf'] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_ttf.gif) no-repeat center right; +} + +a[href$='.jpg'], a[href$='.gif'], a[href$='.png'], a[href$='.bmp'], a[href$='.jpeg'], a[href$='.svg'], a[href$='.eps'] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_pic.gif) no-repeat center right; +} + +a[href$='.mov'], a[href$='.wmv'], a[href$='.mp4'], a[href$='.avi'], a[href$='.mpg'] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_film.gif) no-repeat center right; +} + +a[href$='.mp3'], a[href$='.wav'], a[href$='.ogg'], a[href$='.wma'], a[href$='.m4a'] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_music.gif) no-repeat center right; +} + +/* TeX files added by Srinath 14-Oct-2013 */ +a[href$='.tex'], a[href$='.bib'], a[href$='.latex'] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/latex.gif) no-repeat center right; +} + + +/* messenger */ +a[href ^="aim:"] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_aim.gif) no-repeat center right; +} + +a[href ^="msnim:"] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_msn.gif) no-repeat center right; +} + +a[href ^="xmpp:"] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_jabber.gif) no-repeat center right; +} + +a[href *="icq.com"] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_icq.gif) no-repeat center right; +} + +a[href *="edit.yahoo.com/config/send_webmesg?"] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_yim.gif) no-repeat center right; +} + +a[href ^="callto:"] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_call.gif) no-repeat center right; +} + +a[href ^="skype:"] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_skype.gif) no-repeat center right; +} + +a[href ^="gg:"] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_gadugadu.gif) no-repeat center right; +} + +/* email */ +a[href ^="mailto:"] { + padding: 5px 20px 5px 0; + background: transparent url(../icns/icon_mailto.gif) no-repeat center right; +} + +/* use this class to make sure that images won't get iconized */ + +.imageLink { + padding-right: 0px !important; + background: none !important; +} diff --git a/projects/SolidGS_temp/css/project.css b/projects/SolidGS_temp/css/project.css new file mode 100644 index 0000000..1439c3e --- /dev/null +++ b/projects/SolidGS_temp/css/project.css @@ -0,0 +1,153 @@ +html, body +{ + margin:10px 0px; + padding:0px; + text-align:center; + background-color: #EEEEEE; +} + +table +{ + border: 1px solid black; + border-collapse: collapse; +} +th,td +{ + border: 1px solid black; + padding: 5px; +} + +#content +{ + width:auto; + max-width:960px; + min-width:800px; + height: auto !important; + height: 100%; + min-height: 100%; + margin:0 auto; + text-align:left; + /* border:1px solid #777; */ + background-color: white; + box-shadow: 0px 1px 5px #999; + font-family: 'Open Sans', sans-serif; + font-size: 10.5pt; + /* line-height: 2; */ + -webkit-text-size-adjust: none; +} + +#content-inner +{ + padding:15px 0; +} + +#teaseimg +{ + height:auto; + width:50%; + box-shadow: 0px 0px 10px #444444; + border:1px solid #000000; +} + +hr.smooth +{ + border: 0; + height: 1px; + width: 100%; + background: #333; + background-image: -webkit-linear-gradient(left, #ccc, #333, #ccc); + background-image: -moz-linear-gradient(left, #ccc, #333, #ccc); + background-image: -ms-linear-gradient(left, #ccc, #333, #ccc); + background-image: -o-linear-gradient(left, #ccc, #333, #ccc); +} + +a:link { color: #0066CC; text-decoration: none } +a:visited { color: #743399; text-decoration: none } +a:hover { color: #FF4B33; text-decoration: none } +a:active { color: #FF4B33; text-decoration: none } + + +/* Some of this has been copied from http://www.mpi-inf.mpg.de/resources/rgbz-camera/ */ +/* Sections of the page. */ +.section { margin: 2em 2em 0.5em 2em; line-height: 130%; } +.section h2 { margin-top: 0.5em; margin-bottom: 0.2em; } + +/* Logo section. */ +.logos { margin: 1.5em 0; text-align: center; margin-top:5px; margin-bottom:10px; } +.logos img { vertical-align:top; margin:0 1.25em; border:0; } + +/* Page header. */ +.head { text-align: center; margin: 0.5em 0; padding: 0.5em 0; background-color:#e9e9e9; text-shadow: 1px 1px 3px #cccccc; } +.head { color: #111; } +.head h1 { font-size: 24pt; line-height:27pt; margin: 10px 0; } +.head h1 a { text-decoration:none; } +.authors { font-size: 12pt; margin: 0 0 1em 0; } +.affiliations { font-size: 11pt; margin: -0.5em 0 10pt 0; } +.venue { font-style:italic; font-size: 12pt; margin: 1em 0 1em 0; } +.tagline { font-style:italic; font-size: 10.5pt; margin: 1em 0 1em 0; } + +/* Specific section styling. */ +.teaser { margin: 1.5em 0; text-align: center; } +div.content-primary .teaser p img { display: block; float: none; border: 0; margin: 4em auto 1em auto; } +.abstract { line-height: 130%; } +.abstract p { margin-top: 0; } +.downloads ul { margin-top: 0.5em; } +.list ul { margin-top: 0.5em; } +.bibtex pre +{ + margin-bottom: 0; + font-family: Consolas, Monaco, monospace; + white-space: pre-wrap; /* CSS 3 */ + white-space: -moz-pre-wrap; /* Mozilla, since 1999 */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + word-wrap: break-word; /* IE 5.5+ */ + width: 90%; + color: #444; + padding: 10px; + background: #eee; + border: 1px solid #ccc; + overflow: auto; +} +.acknowledgments { line-height: 130%; } +.acknowledgments p { margin-top: 0; } +.contact { line-height: 130%; } + +.heading { margin: 2.5em 0; text-align: center; } +.datasets { width: 650px; margin: 3em auto; } +.datasets ul { padding-bottom: 1em; } +.dataset { float: left; width: 204px; margin: 5px 10px 15px 0px; text-align: center; } +.dataset h2 { display: inline; } +.dataset img { border: 2px solid #222; margin: 0.25em auto; display: block; } +.backlink { text-align: center; } + +/* Display lists in a grid of fixed size. This is useful when lists have associated images. */ +/* Idea from http://blog.mozilla.org/webdev/2009/02/20/cross-browser-inline-block/ */ +li.grid +{ + width: auto; + height: 60px; + /* border: 1px solid #000; */ + display: -moz-inline-stack; + display: inline-block; + vertical-align: top; + margin: 5px; + zoom: 1; + *display: inline; + _height: 100px; +} +/* Formatting for each item in a 2D grid. This is used typically in the downloads section. */ +.griditem +{ + font-size: 10pt; + text-align: center; + padding: 5px 5px 5px 5px; +} +.griditem img +{ + text-align: center; + height:50px; + width:auto; + border: 1px solid #eee; + box-shadow: 0px 0px 2px #444444; +} diff --git a/projects/SolidGS_temp/figs/DTU_results.gif b/projects/SolidGS_temp/figs/DTU_results.gif new file mode 100644 index 0000000..6774c63 Binary files /dev/null and b/projects/SolidGS_temp/figs/DTU_results.gif differ diff --git a/projects/SolidGS_temp/figs/DTU_results.jpg b/projects/SolidGS_temp/figs/DTU_results.jpg new file mode 100644 index 0000000..1b1e67a Binary files /dev/null and b/projects/SolidGS_temp/figs/DTU_results.jpg differ diff --git a/projects/SolidGS_temp/figs/SolidGS.jpg b/projects/SolidGS_temp/figs/SolidGS.jpg new file mode 100644 index 0000000..517b378 Binary files /dev/null and b/projects/SolidGS_temp/figs/SolidGS.jpg differ diff --git a/projects/SolidGS_temp/figs/TNT_results.gif b/projects/SolidGS_temp/figs/TNT_results.gif new file mode 100644 index 0000000..b5117ab Binary files /dev/null and b/projects/SolidGS_temp/figs/TNT_results.gif differ diff --git a/projects/SolidGS_temp/figs/TNT_results.jpg b/projects/SolidGS_temp/figs/TNT_results.jpg new file mode 100644 index 0000000..87210b6 Binary files /dev/null and b/projects/SolidGS_temp/figs/TNT_results.jpg differ diff --git a/projects/SolidGS_temp/figs/teaser.jpg b/projects/SolidGS_temp/figs/teaser.jpg new file mode 100644 index 0000000..4c73faf Binary files /dev/null and b/projects/SolidGS_temp/figs/teaser.jpg differ diff --git a/projects/SolidGS_temp/figs/teaser.pdf b/projects/SolidGS_temp/figs/teaser.pdf new file mode 100644 index 0000000..9bc220c Binary files /dev/null and b/projects/SolidGS_temp/figs/teaser.pdf differ diff --git a/projects/SolidGS_temp/images/data_ico.png b/projects/SolidGS_temp/images/data_ico.png new file mode 100644 index 0000000..526db0e Binary files /dev/null and b/projects/SolidGS_temp/images/data_ico.png differ diff --git a/projects/SolidGS_temp/images/pdf.png b/projects/SolidGS_temp/images/pdf.png new file mode 100644 index 0000000..b1999c4 Binary files /dev/null and b/projects/SolidGS_temp/images/pdf.png differ diff --git a/projects/SolidGS_temp/images/ppt.png b/projects/SolidGS_temp/images/ppt.png new file mode 100644 index 0000000..dfd1ffd Binary files /dev/null and b/projects/SolidGS_temp/images/ppt.png differ diff --git a/projects/SolidGS_temp/images/video.png b/projects/SolidGS_temp/images/video.png new file mode 100644 index 0000000..967d879 Binary files /dev/null and b/projects/SolidGS_temp/images/video.png differ diff --git a/projects/SolidGS_temp/index.html b/projects/SolidGS_temp/index.html new file mode 100644 index 0000000..db0cb14 --- /dev/null +++ b/projects/SolidGS_temp/index.html @@ -0,0 +1,229 @@ + + + + + SolidGS: Consolidating Gaussian Surfel Splatting for Sparse-View Surface Reconstruction + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + + + +
+ + +
+

SolidGS: Consolidating Gaussian Surfel Splatting for
Sparse-View Surface Reconstruction

+ +
+ Zhuowen Shen 1,2   + Yuan Liu 3,4   + Zhang Chen 2   + Zhong Li 2   + Jiepeng Wang 5   + Yongqing Liang 1   +
+ Zhengming Yu 1   + Jingdong Zhang 1   + Yi Xu 2   + Scott Schaefer 1   + Xin Li 1   + Wenping Wang 1   +
+ + +
Arxiv 2024
+
+ +
+
+ +
+
+ +
+

Abstract


+
+
+ + +
+

We present SolidGS, which reconstructs a consolidated Gaussian field from sparse inputs. Given only three input views, our approach enables high-precision and detailed mesh extraction, and high-quality novel view synthesis, achieved within just three minutes.

+ +
+

+ Gaussian splatting has achieved impressive improvements for both novel-view synthesis and surface reconstruction from multi-view images. However, current methods still struggle to reconstruct high-quality surfaces from only sparse view input images using Gaussian splatting. In this paper, we propose a novel method called SolidGS to address this problem. We observed that the reconstructed geometry can be severely inconsistent across multi-views, due to the property of Gaussian function in geometry rendering. This motivates us to consolidate all Gaussians by adopting a more solid kernel function, which effectively improves the surface reconstruction quality. With the additional help of geometrical regularization and monocular normal estimation, our method achieves superior performance on the sparse view surface reconstruction than all the Gaussian splatting methods and neural field methods on the widely used DTU, Tanks-and-Temples, and LLFF datasets. + +

+
+
+ + +
+

Main Idea

+
+
+
+ +
+ +
+
+

+ We propose SolidGS, a novel representation that consolidates the opacity of Gaussians by introducing a shared, learnable solidness factor, enabling multi-view consistent geometry rendering. + We also introduce a new framework with geometric constraints to train our SolidGS representation, which consists of geometric priors and regularizations. +

+ +
+
+ +
+

Reconstruction results on DTU

+
+ +
+
+
+ +
+
+

Our model's reconstruction results and comparisons on the DTU dataset. +

+
+
+ +
+
+

We show our mesh, rendered normal, and Novel View Synthesis (NVS) results on the DTU dataset. +

+
+
+ +
+

Reconstruction results on Tanks-and-Temples (TNT)

+
+ +
+
+
+ +
+
+

Our model's reconstruction results and comparisons on the TNT dataset. Our model reconstructs the geometry with higher completeness and more details. +

+
+
+ +
+
+

We show our mesh, rendered depth, rendered normal, and Novel View Synthesis (NVS) results on the DTU dataset. +

+
+
+ + +
+ +
+
+

Check out our paper for more details.

+
+
+ + + +
+ + + diff --git a/projects/SolidGS_temp/logos/hku.jpg b/projects/SolidGS_temp/logos/hku.jpg new file mode 100644 index 0000000..3dd0d76 Binary files /dev/null and b/projects/SolidGS_temp/logos/hku.jpg differ diff --git a/projects/SolidGS_temp/logos/hkust.png b/projects/SolidGS_temp/logos/hkust.png new file mode 100644 index 0000000..315da66 Binary files /dev/null and b/projects/SolidGS_temp/logos/hkust.png differ diff --git a/projects/SolidGS_temp/logos/ntu.png b/projects/SolidGS_temp/logos/ntu.png new file mode 100644 index 0000000..5d78242 Binary files /dev/null and b/projects/SolidGS_temp/logos/ntu.png differ diff --git a/projects/SolidGS_temp/logos/oppo.svg b/projects/SolidGS_temp/logos/oppo.svg new file mode 100644 index 0000000..7477eb4 --- /dev/null +++ b/projects/SolidGS_temp/logos/oppo.svg @@ -0,0 +1,66 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + diff --git a/projects/SolidGS_temp/logos/tamu.png b/projects/SolidGS_temp/logos/tamu.png new file mode 100644 index 0000000..afe9db2 Binary files /dev/null and b/projects/SolidGS_temp/logos/tamu.png differ