Serveur d'exploration sur la recherche en informatique en Lorraine

Attention, ce site est en cours de développement !
Attention, site généré par des moyens informatiques à partir de corpus bruts.
Les informations ne sont donc pas validées.

Algorithm 889: Jet_fitting_3: A Generic C++ Package for Estimating the Differential Properties on Sampled Surfaces via Polynomial Fitting

Identifieur interne : 000254 ( PascalFrancis/Checkpoint ); précédent : 000253; suivant : 000255

Algorithm 889: Jet_fitting_3: A Generic C++ Package for Estimating the Differential Properties on Sampled Surfaces via Polynomial Fitting

Auteurs : Frédéric Cazals [France] ; Marc Pouget [France]

Source :

RBID : Pascal:10-0183870

Descripteurs français

English descriptors

Abstract

Surfaces of R3 are ubiquitous in science and engineering, and estimating the local differential properties of a surface discretized as a point cloud or a triangle mesh is a central building block in computer graphics, computer aided design, computational geometry, and computer vision. One strategy to perform such an estimation consists of resorting to polynomial fitting, either interpolation or approximation, but this route is difficult for several reasons: choice of the coordinate system, numerical handling of the fitting problem, and extraction of the differential properties. This article presents a generic C++ software package solving these problems. On the theoretical side and as established in a companion paper, the interpolation and approximation methods provided achieve the best asymptotic error bounds known to date. On the implementation side and following state-of-the-art coding rules in computational geometry, genericity of the package is achieved thanks to four template classes accounting for, (a) the type of the input points, (b) the internal geometric computations, (c) a conversion mechanism between these two geometries, and (d) the linear algebra operations. An instantiation within the Computational Geometry Algorithms Library (CGAL, version 3.3) and using LAPACK is also provided.


Affiliations:


Links toward previous steps (curation, corpus...)


Links to Exploration step

Pascal:10-0183870

Le document en format XML

<record>
<TEI>
<teiHeader>
<fileDesc>
<titleStmt>
<title xml:lang="en" level="a">Algorithm 889: Jet_fitting_3: A Generic C++ Package for Estimating the Differential Properties on Sampled Surfaces via Polynomial Fitting</title>
<author>
<name sortKey="Cazals, Frederic" sort="Cazals, Frederic" uniqKey="Cazals F" first="Frédéric" last="Cazals">Frédéric Cazals</name>
<affiliation wicri:level="1">
<inist:fA14 i1="01">
<s1>INRIA Sophia-Antipolis</s1>
<s3>FRA</s3>
<sZ>1 aut.</sZ>
</inist:fA14>
<country>France</country>
<wicri:noRegion>INRIA Sophia-Antipolis</wicri:noRegion>
<wicri:noRegion>INRIA Sophia-Antipolis</wicri:noRegion>
</affiliation>
</author>
<author>
<name sortKey="Pouget, Marc" sort="Pouget, Marc" uniqKey="Pouget M" first="Marc" last="Pouget">Marc Pouget</name>
<affiliation wicri:level="1">
<inist:fA14 i1="02">
<s1>INRIA Nancy Gand Est - LORIA</s1>
<s3>FRA</s3>
<sZ>2 aut.</sZ>
</inist:fA14>
<country>France</country>
<wicri:noRegion>INRIA Nancy Gand Est - LORIA</wicri:noRegion>
<wicri:noRegion>INRIA Nancy Gand Est - LORIA</wicri:noRegion>
</affiliation>
</author>
</titleStmt>
<publicationStmt>
<idno type="wicri:source">INIST</idno>
<idno type="inist">10-0183870</idno>
<date when="2009">2009</date>
<idno type="stanalyst">PASCAL 10-0183870 INIST</idno>
<idno type="RBID">Pascal:10-0183870</idno>
<idno type="wicri:Area/PascalFrancis/Corpus">000221</idno>
<idno type="wicri:Area/PascalFrancis/Curation">000797</idno>
<idno type="wicri:Area/PascalFrancis/Checkpoint">000254</idno>
<idno type="wicri:explorRef" wicri:stream="PascalFrancis" wicri:step="Checkpoint">000254</idno>
</publicationStmt>
<sourceDesc>
<biblStruct>
<analytic>
<title xml:lang="en" level="a">Algorithm 889: Jet_fitting_3: A Generic C++ Package for Estimating the Differential Properties on Sampled Surfaces via Polynomial Fitting</title>
<author>
<name sortKey="Cazals, Frederic" sort="Cazals, Frederic" uniqKey="Cazals F" first="Frédéric" last="Cazals">Frédéric Cazals</name>
<affiliation wicri:level="1">
<inist:fA14 i1="01">
<s1>INRIA Sophia-Antipolis</s1>
<s3>FRA</s3>
<sZ>1 aut.</sZ>
</inist:fA14>
<country>France</country>
<wicri:noRegion>INRIA Sophia-Antipolis</wicri:noRegion>
<wicri:noRegion>INRIA Sophia-Antipolis</wicri:noRegion>
</affiliation>
</author>
<author>
<name sortKey="Pouget, Marc" sort="Pouget, Marc" uniqKey="Pouget M" first="Marc" last="Pouget">Marc Pouget</name>
<affiliation wicri:level="1">
<inist:fA14 i1="02">
<s1>INRIA Nancy Gand Est - LORIA</s1>
<s3>FRA</s3>
<sZ>2 aut.</sZ>
</inist:fA14>
<country>France</country>
<wicri:noRegion>INRIA Nancy Gand Est - LORIA</wicri:noRegion>
<wicri:noRegion>INRIA Nancy Gand Est - LORIA</wicri:noRegion>
</affiliation>
</author>
</analytic>
<series>
<title level="j" type="main">ACM transactions on mathematical software</title>
<title level="j" type="abbreviated">ACM trans. math. softw.</title>
<idno type="ISSN">0098-3500</idno>
<imprint>
<date when="2009">2009</date>
</imprint>
</series>
</biblStruct>
</sourceDesc>
<seriesStmt>
<title level="j" type="main">ACM transactions on mathematical software</title>
<title level="j" type="abbreviated">ACM trans. math. softw.</title>
<idno type="ISSN">0098-3500</idno>
</seriesStmt>
</fileDesc>
<profileDesc>
<textClass>
<keywords scheme="KwdEn" xml:lang="en">
<term>Asymptotic approximation</term>
<term>Coding</term>
<term>Computational geometry</term>
<term>Computer aided design</term>
<term>Computer graphics</term>
<term>Computer vision</term>
<term>Conversion</term>
<term>Coordinate system</term>
<term>Curve fitting</term>
<term>Date</term>
<term>Digitizing</term>
<term>Error bound</term>
<term>Generic programming</term>
<term>Library</term>
<term>Linear algebra</term>
<term>Mesh generation</term>
<term>Modeling</term>
<term>Operator algebra</term>
<term>Pervasive computing</term>
<term>Polynomial interpolation</term>
<term>Problem solving</term>
<term>Software package</term>
<term>Surface fitting</term>
<term>Surface properties</term>
<term>Surface reconstruction</term>
</keywords>
<keywords scheme="Pascal" xml:lang="fr">
<term>Reconstruction surface</term>
<term>Ajustement courbe</term>
<term>Informatique diffuse</term>
<term>Numérisation</term>
<term>Conception assistée</term>
<term>Infographie</term>
<term>Géométrie algorithmique</term>
<term>Vision ordinateur</term>
<term>Programmation générique</term>
<term>Progiciel</term>
<term>Codage</term>
<term>Conversion</term>
<term>Propriété surface</term>
<term>Ajustement surface</term>
<term>Date</term>
<term>Bibliothèque</term>
<term>Interpolation polynomiale</term>
<term>Système coordonnée</term>
<term>Résolution problème</term>
<term>Approximation asymptotique</term>
<term>Modélisation</term>
<term>Borne erreur</term>
<term>Algèbre linéaire</term>
<term>Algèbre opérateur</term>
<term>.</term>
<term>Génération maille</term>
</keywords>
<keywords scheme="Wicri" type="topic" xml:lang="fr">
<term>Numérisation</term>
<term>Codage</term>
<term>Bibliothèque</term>
</keywords>
</textClass>
</profileDesc>
</teiHeader>
<front>
<div type="abstract" xml:lang="en">Surfaces of R
<sup>3</sup>
are ubiquitous in science and engineering, and estimating the local differential properties of a surface discretized as a point cloud or a triangle mesh is a central building block in computer graphics, computer aided design, computational geometry, and computer vision. One strategy to perform such an estimation consists of resorting to polynomial fitting, either interpolation or approximation, but this route is difficult for several reasons: choice of the coordinate system, numerical handling of the fitting problem, and extraction of the differential properties. This article presents a generic C++ software package solving these problems. On the theoretical side and as established in a companion paper, the interpolation and approximation methods provided achieve the best asymptotic error bounds known to date. On the implementation side and following state-of-the-art coding rules in computational geometry, genericity of the package is achieved thanks to four template classes accounting for, (a) the type of the input points, (b) the internal geometric computations, (c) a conversion mechanism between these two geometries, and (d) the linear algebra operations. An instantiation within the Computational Geometry Algorithms Library (CGAL, version 3.3) and using LAPACK is also provided.</div>
</front>
</TEI>
<inist>
<standard h6="B">
<pA>
<fA01 i1="01" i2="1">
<s0>0098-3500</s0>
</fA01>
<fA02 i1="01">
<s0>ACMSCU</s0>
</fA02>
<fA03 i2="1">
<s0>ACM trans. math. softw.</s0>
</fA03>
<fA05>
<s2>35</s2>
</fA05>
<fA06>
<s2>3</s2>
</fA06>
<fA08 i1="01" i2="1" l="ENG">
<s1>Algorithm 889: Jet_fitting_3: A Generic C++ Package for Estimating the Differential Properties on Sampled Surfaces via Polynomial Fitting</s1>
</fA08>
<fA11 i1="01" i2="1">
<s1>CAZALS (Frédéric)</s1>
</fA11>
<fA11 i1="02" i2="1">
<s1>POUGET (Marc)</s1>
</fA11>
<fA14 i1="01">
<s1>INRIA Sophia-Antipolis</s1>
<s3>FRA</s3>
<sZ>1 aut.</sZ>
</fA14>
<fA14 i1="02">
<s1>INRIA Nancy Gand Est - LORIA</s1>
<s3>FRA</s3>
<sZ>2 aut.</sZ>
</fA14>
<fA20>
<s2>24.1-24.20</s2>
</fA20>
<fA21>
<s1>2009</s1>
</fA21>
<fA23 i1="01">
<s0>ENG</s0>
</fA23>
<fA43 i1="01">
<s1>INIST</s1>
<s2>16727</s2>
<s5>354000170083360080</s5>
</fA43>
<fA44>
<s0>0000</s0>
<s1>© 2010 INIST-CNRS. All rights reserved.</s1>
</fA44>
<fA45>
<s0>1/2 p.</s0>
</fA45>
<fA47 i1="01" i2="1">
<s0>10-0183870</s0>
</fA47>
<fA60>
<s1>P</s1>
</fA60>
<fA61>
<s0>A</s0>
</fA61>
<fA64 i1="01" i2="1">
<s0>ACM transactions on mathematical software</s0>
</fA64>
<fA66 i1="01">
<s0>USA</s0>
</fA66>
<fC01 i1="01" l="ENG">
<s0>Surfaces of R
<sup>3</sup>
are ubiquitous in science and engineering, and estimating the local differential properties of a surface discretized as a point cloud or a triangle mesh is a central building block in computer graphics, computer aided design, computational geometry, and computer vision. One strategy to perform such an estimation consists of resorting to polynomial fitting, either interpolation or approximation, but this route is difficult for several reasons: choice of the coordinate system, numerical handling of the fitting problem, and extraction of the differential properties. This article presents a generic C++ software package solving these problems. On the theoretical side and as established in a companion paper, the interpolation and approximation methods provided achieve the best asymptotic error bounds known to date. On the implementation side and following state-of-the-art coding rules in computational geometry, genericity of the package is achieved thanks to four template classes accounting for, (a) the type of the input points, (b) the internal geometric computations, (c) a conversion mechanism between these two geometries, and (d) the linear algebra operations. An instantiation within the Computational Geometry Algorithms Library (CGAL, version 3.3) and using LAPACK is also provided.</s0>
</fC01>
<fC02 i1="01" i2="X">
<s0>001D02C03</s0>
</fC02>
<fC02 i1="02" i2="X">
<s0>001D02A05</s0>
</fC02>
<fC02 i1="03" i2="X">
<s0>001A02C06</s0>
</fC02>
<fC03 i1="01" i2="X" l="FRE">
<s0>Reconstruction surface</s0>
<s5>06</s5>
</fC03>
<fC03 i1="01" i2="X" l="ENG">
<s0>Surface reconstruction</s0>
<s5>06</s5>
</fC03>
<fC03 i1="01" i2="X" l="SPA">
<s0>Reconstrucción superficie</s0>
<s5>06</s5>
</fC03>
<fC03 i1="02" i2="X" l="FRE">
<s0>Ajustement courbe</s0>
<s5>07</s5>
</fC03>
<fC03 i1="02" i2="X" l="ENG">
<s0>Curve fitting</s0>
<s5>07</s5>
</fC03>
<fC03 i1="02" i2="X" l="SPA">
<s0>Ajustamiento curva</s0>
<s5>07</s5>
</fC03>
<fC03 i1="03" i2="X" l="FRE">
<s0>Informatique diffuse</s0>
<s5>08</s5>
</fC03>
<fC03 i1="03" i2="X" l="ENG">
<s0>Pervasive computing</s0>
<s5>08</s5>
</fC03>
<fC03 i1="03" i2="X" l="SPA">
<s0>Informática difusa</s0>
<s5>08</s5>
</fC03>
<fC03 i1="04" i2="X" l="FRE">
<s0>Numérisation</s0>
<s5>09</s5>
</fC03>
<fC03 i1="04" i2="X" l="ENG">
<s0>Digitizing</s0>
<s5>09</s5>
</fC03>
<fC03 i1="04" i2="X" l="SPA">
<s0>Numerización</s0>
<s5>09</s5>
</fC03>
<fC03 i1="05" i2="X" l="FRE">
<s0>Conception assistée</s0>
<s5>10</s5>
</fC03>
<fC03 i1="05" i2="X" l="ENG">
<s0>Computer aided design</s0>
<s5>10</s5>
</fC03>
<fC03 i1="05" i2="X" l="SPA">
<s0>Concepción asistida</s0>
<s5>10</s5>
</fC03>
<fC03 i1="06" i2="X" l="FRE">
<s0>Infographie</s0>
<s5>11</s5>
</fC03>
<fC03 i1="06" i2="X" l="ENG">
<s0>Computer graphics</s0>
<s5>11</s5>
</fC03>
<fC03 i1="06" i2="X" l="SPA">
<s0>Gráfico computadora</s0>
<s5>11</s5>
</fC03>
<fC03 i1="07" i2="X" l="FRE">
<s0>Géométrie algorithmique</s0>
<s5>12</s5>
</fC03>
<fC03 i1="07" i2="X" l="ENG">
<s0>Computational geometry</s0>
<s5>12</s5>
</fC03>
<fC03 i1="07" i2="X" l="SPA">
<s0>Geometría computacional</s0>
<s5>12</s5>
</fC03>
<fC03 i1="08" i2="X" l="FRE">
<s0>Vision ordinateur</s0>
<s5>13</s5>
</fC03>
<fC03 i1="08" i2="X" l="ENG">
<s0>Computer vision</s0>
<s5>13</s5>
</fC03>
<fC03 i1="08" i2="X" l="SPA">
<s0>Visión ordenador</s0>
<s5>13</s5>
</fC03>
<fC03 i1="09" i2="X" l="FRE">
<s0>Programmation générique</s0>
<s5>14</s5>
</fC03>
<fC03 i1="09" i2="X" l="ENG">
<s0>Generic programming</s0>
<s5>14</s5>
</fC03>
<fC03 i1="09" i2="X" l="SPA">
<s0>Programación genérica</s0>
<s5>14</s5>
</fC03>
<fC03 i1="10" i2="X" l="FRE">
<s0>Progiciel</s0>
<s5>15</s5>
</fC03>
<fC03 i1="10" i2="X" l="ENG">
<s0>Software package</s0>
<s5>15</s5>
</fC03>
<fC03 i1="10" i2="X" l="SPA">
<s0>Paquete programa</s0>
<s5>15</s5>
</fC03>
<fC03 i1="11" i2="X" l="FRE">
<s0>Codage</s0>
<s5>16</s5>
</fC03>
<fC03 i1="11" i2="X" l="ENG">
<s0>Coding</s0>
<s5>16</s5>
</fC03>
<fC03 i1="11" i2="X" l="SPA">
<s0>Codificación</s0>
<s5>16</s5>
</fC03>
<fC03 i1="12" i2="X" l="FRE">
<s0>Conversion</s0>
<s5>17</s5>
</fC03>
<fC03 i1="12" i2="X" l="ENG">
<s0>Conversion</s0>
<s5>17</s5>
</fC03>
<fC03 i1="12" i2="X" l="SPA">
<s0>Conversión</s0>
<s5>17</s5>
</fC03>
<fC03 i1="13" i2="X" l="FRE">
<s0>Propriété surface</s0>
<s5>18</s5>
</fC03>
<fC03 i1="13" i2="X" l="ENG">
<s0>Surface properties</s0>
<s5>18</s5>
</fC03>
<fC03 i1="13" i2="X" l="SPA">
<s0>Propiedad superficie</s0>
<s5>18</s5>
</fC03>
<fC03 i1="14" i2="3" l="FRE">
<s0>Ajustement surface</s0>
<s5>19</s5>
</fC03>
<fC03 i1="14" i2="3" l="ENG">
<s0>Surface fitting</s0>
<s5>19</s5>
</fC03>
<fC03 i1="15" i2="X" l="FRE">
<s0>Date</s0>
<s5>20</s5>
</fC03>
<fC03 i1="15" i2="X" l="ENG">
<s0>Date</s0>
<s5>20</s5>
</fC03>
<fC03 i1="15" i2="X" l="SPA">
<s0>Fecha</s0>
<s5>20</s5>
</fC03>
<fC03 i1="16" i2="X" l="FRE">
<s0>Bibliothèque</s0>
<s5>21</s5>
</fC03>
<fC03 i1="16" i2="X" l="ENG">
<s0>Library</s0>
<s5>21</s5>
</fC03>
<fC03 i1="16" i2="X" l="SPA">
<s0>Biblioteca</s0>
<s5>21</s5>
</fC03>
<fC03 i1="17" i2="X" l="FRE">
<s0>Interpolation polynomiale</s0>
<s5>23</s5>
</fC03>
<fC03 i1="17" i2="X" l="ENG">
<s0>Polynomial interpolation</s0>
<s5>23</s5>
</fC03>
<fC03 i1="17" i2="X" l="SPA">
<s0>Interpolación polinomial</s0>
<s5>23</s5>
</fC03>
<fC03 i1="18" i2="X" l="FRE">
<s0>Système coordonnée</s0>
<s5>24</s5>
</fC03>
<fC03 i1="18" i2="X" l="ENG">
<s0>Coordinate system</s0>
<s5>24</s5>
</fC03>
<fC03 i1="18" i2="X" l="SPA">
<s0>Sistema coordenadas</s0>
<s5>24</s5>
</fC03>
<fC03 i1="19" i2="X" l="FRE">
<s0>Résolution problème</s0>
<s5>25</s5>
</fC03>
<fC03 i1="19" i2="X" l="ENG">
<s0>Problem solving</s0>
<s5>25</s5>
</fC03>
<fC03 i1="19" i2="X" l="SPA">
<s0>Resolución problema</s0>
<s5>25</s5>
</fC03>
<fC03 i1="20" i2="X" l="FRE">
<s0>Approximation asymptotique</s0>
<s5>26</s5>
</fC03>
<fC03 i1="20" i2="X" l="ENG">
<s0>Asymptotic approximation</s0>
<s5>26</s5>
</fC03>
<fC03 i1="20" i2="X" l="SPA">
<s0>Aproximación asintótica</s0>
<s5>26</s5>
</fC03>
<fC03 i1="21" i2="X" l="FRE">
<s0>Modélisation</s0>
<s5>27</s5>
</fC03>
<fC03 i1="21" i2="X" l="ENG">
<s0>Modeling</s0>
<s5>27</s5>
</fC03>
<fC03 i1="21" i2="X" l="SPA">
<s0>Modelización</s0>
<s5>27</s5>
</fC03>
<fC03 i1="22" i2="X" l="FRE">
<s0>Borne erreur</s0>
<s5>28</s5>
</fC03>
<fC03 i1="22" i2="X" l="ENG">
<s0>Error bound</s0>
<s5>28</s5>
</fC03>
<fC03 i1="22" i2="X" l="SPA">
<s0>Limite error</s0>
<s5>28</s5>
</fC03>
<fC03 i1="23" i2="X" l="FRE">
<s0>Algèbre linéaire</s0>
<s5>29</s5>
</fC03>
<fC03 i1="23" i2="X" l="ENG">
<s0>Linear algebra</s0>
<s5>29</s5>
</fC03>
<fC03 i1="23" i2="X" l="SPA">
<s0>Algebra lineal</s0>
<s5>29</s5>
</fC03>
<fC03 i1="24" i2="X" l="FRE">
<s0>Algèbre opérateur</s0>
<s5>30</s5>
</fC03>
<fC03 i1="24" i2="X" l="ENG">
<s0>Operator algebra</s0>
<s5>30</s5>
</fC03>
<fC03 i1="24" i2="X" l="SPA">
<s0>Algebra operador</s0>
<s5>30</s5>
</fC03>
<fC03 i1="25" i2="X" l="FRE">
<s0>.</s0>
<s4>INC</s4>
<s5>82</s5>
</fC03>
<fC03 i1="26" i2="X" l="FRE">
<s0>Génération maille</s0>
<s4>CD</s4>
<s5>96</s5>
</fC03>
<fC03 i1="26" i2="X" l="ENG">
<s0>Mesh generation</s0>
<s4>CD</s4>
<s5>96</s5>
</fC03>
<fC03 i1="26" i2="X" l="SPA">
<s0>Generación red</s0>
<s4>CD</s4>
<s5>96</s5>
</fC03>
<fN21>
<s1>123</s1>
</fN21>
<fN44 i1="01">
<s1>OTO</s1>
</fN44>
<fN82>
<s1>OTO</s1>
</fN82>
</pA>
</standard>
</inist>
<affiliations>
<list>
<country>
<li>France</li>
</country>
</list>
<tree>
<country name="France">
<noRegion>
<name sortKey="Cazals, Frederic" sort="Cazals, Frederic" uniqKey="Cazals F" first="Frédéric" last="Cazals">Frédéric Cazals</name>
</noRegion>
<name sortKey="Pouget, Marc" sort="Pouget, Marc" uniqKey="Pouget M" first="Marc" last="Pouget">Marc Pouget</name>
</country>
</tree>
</affiliations>
</record>

Pour manipuler ce document sous Unix (Dilib)

EXPLOR_STEP=$WICRI_ROOT/Wicri/Lorraine/explor/InforLorV4/Data/PascalFrancis/Checkpoint
HfdSelect -h $EXPLOR_STEP/biblio.hfd -nk 000254 | SxmlIndent | more

Ou

HfdSelect -h $EXPLOR_AREA/Data/PascalFrancis/Checkpoint/biblio.hfd -nk 000254 | SxmlIndent | more

Pour mettre un lien sur cette page dans le réseau Wicri

{{Explor lien
   |wiki=    Wicri/Lorraine
   |area=    InforLorV4
   |flux=    PascalFrancis
   |étape=   Checkpoint
   |type=    RBID
   |clé=     Pascal:10-0183870
   |texte=   Algorithm 889: Jet_fitting_3: A Generic C++ Package for Estimating the Differential Properties on Sampled Surfaces via Polynomial Fitting
}}

Wicri

This area was generated with Dilib version V0.6.33.
Data generation: Mon Jun 10 21:56:28 2019. Site generation: Fri Feb 25 15:29:27 2022