要約
微分可能レンダリングは、シーンのパラメーター (形状、マテリアル、照明) をターゲット画像に最適化できるようにするため、逆レンダリングと機械学習の重要な要素です。
微分可能なレンダリングでは、各シーン パラメーターが微分可能な操作を通じてピクセル値に関連する必要があります。
3D メッシュ レンダリング アルゴリズムは微分可能な方法で実装されていますが、基礎となるブール演算は通常、複雑なブラック ボックス メッシュで実行されるため、これらのアルゴリズムは形状の一般的なパラメトリック表現である構成ソリッド ジオメトリ (CSG) には直接拡張されません。
-処理ライブラリ。
微分可能な方法で CSG モデルをレンダリングするアルゴリズム DiffCSG を紹介します。
私たちのアルゴリズムは CSG ラスタライゼーションに基づいて構築されており、結果のメッシュを明示的に計算せずにプリミティブ間のブール演算の結果を表示するため、ブラックボックス メッシュ処理をバイパスします。
微分可能なレンダリング パイプライン内で CSG ラスタライゼーションを実装する方法について説明します。このような重要な領域で勾配を取得するためにプリミティブ交差に沿ってアンチエイリアスを適用することに特別な注意を払います。
私たちのアルゴリズムはシンプルかつ高速で、最新の機械学習セットアップに簡単に組み込むことができ、CSG プリミティブの直接編集や画像ベースの編集など、コンピューター支援設計の幅広いアプリケーションを可能にします。
コードとデータ: https://yyyyyhc.github.io/DiffCSG/。
要約(オリジナル)
Differentiable rendering is a key ingredient for inverse rendering and machine learning, as it allows to optimize scene parameters (shape, materials, lighting) to best fit target images. Differentiable rendering requires that each scene parameter relates to pixel values through differentiable operations. While 3D mesh rendering algorithms have been implemented in a differentiable way, these algorithms do not directly extend to Constructive-Solid-Geometry (CSG), a popular parametric representation of shapes, because the underlying boolean operations are typically performed with complex black-box mesh-processing libraries. We present an algorithm, DiffCSG, to render CSG models in a differentiable manner. Our algorithm builds upon CSG rasterization, which displays the result of boolean operations between primitives without explicitly computing the resulting mesh and, as such, bypasses black-box mesh processing. We describe how to implement CSG rasterization within a differentiable rendering pipeline, taking special care to apply antialiasing along primitive intersections to obtain gradients in such critical areas. Our algorithm is simple and fast, can be easily incorporated into modern machine learning setups, and enables a range of applications for computer-aided design, including direct and image-based editing of CSG primitives. Code and data: https://yyyyyhc.github.io/DiffCSG/.
arxiv情報
著者 | Haocheng Yuan,Adrien Bousseau,Hao Pan,Chengquan Zhang,Niloy J. Mitra,Changjian Li |
発行日 | 2024-09-09 16:37:39+00:00 |
arxivサイト | arxiv_id(pdf) |
提供元, 利用サービス
arxiv.jp, Google