{"id":2683,"date":"2011-02-01T19:52:47","date_gmt":"2011-02-01T19:52:47","guid":{"rendered":"http:\/\/hgpu.org\/?p=2683"},"modified":"2011-02-01T19:52:47","modified_gmt":"2011-02-01T19:52:47","slug":"algebraic-splats-representation-for-point-based-models","status":"publish","type":"post","link":"https:\/\/hgpu.org\/?p=2683","title":{"rendered":"Algebraic Splats Representation for Point Based Models"},"content":{"rendered":"<p>The primitives of point-based representations are independent but are rendered using surfels, which approximate the immediate neighborhood of each point linearly. A large number of surfels are needed to convey the exact shape. Higher-order approximations of the local neighborhood have the potential to represent the shape using fewer primitives, simultaneously achieving higher rendering speeds. In this paper, we propose algebraic splats as a basic primitive of representation for point based models. An algebraic splat based representation can be computed using a moving least squares procedure. We specifically study low order polynomial splats in this paper. Quadratic and cubic splats provide good quality and high rendering speed using far fewer primitives on a wide range of models. They can also be rendered fast using ray tracing on modern GPUs. We also present an algorithm to construct a representation of a model with a user-specified number of primitives. Our method to generates a hole-free representation parametrized by a smoothing radius. The hole-free representation reduces the number of primitives needed by a factor 20 to 30 on most models and by a factor of over 100 on dense models like David with little or no drop in visual quality. We also present a two-pass GPU algorithm that ray-traces the algebraic splats and blends them using a Gaussian weighting scheme for smooth appearance. We are able to render models like David at upwards of 200 fps on a commodity GPU using algebraic splats.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The primitives of point-based representations are independent but are rendered using surfels, which approximate the immediate neighborhood of each point linearly. A large number of surfels are needed to convey the exact shape. Higher-order approximations of the local neighborhood have the potential to represent the shape using fewer primitives, simultaneously achieving higher rendering speeds. In [&hellip;]<\/p>\n","protected":false},"author":351,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[11,3],"tags":[1782,20,191,183,234,181,144],"class_list":["post-2683","post","type-post","status-publish","format-standard","hentry","category-computer-science","category-paper","tag-computer-science","tag-nvidia","tag-nvidia-geforce-7900-gtx","tag-nvidia-geforce-8800-gtx","tag-nvidia-geforce-gtx-280","tag-raytracing","tag-rendering"],"views":1979,"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/hgpu.org\/index.php?rest_route=\/wp\/v2\/posts\/2683","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hgpu.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hgpu.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hgpu.org\/index.php?rest_route=\/wp\/v2\/users\/351"}],"replies":[{"embeddable":true,"href":"https:\/\/hgpu.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2683"}],"version-history":[{"count":0,"href":"https:\/\/hgpu.org\/index.php?rest_route=\/wp\/v2\/posts\/2683\/revisions"}],"wp:attachment":[{"href":"https:\/\/hgpu.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2683"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hgpu.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2683"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hgpu.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2683"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}