less than 1 minute read

Pytorch3D

image

image

image

image

image

image

image

image

image

image

image

image

image

image

image

image

image

image

image

image

image

image

image

image

image

image

image

image

image

image

image

image

image

image

image

image

image

image

image

3D annotation을 구하기 어렵다. 따라서 2D로 render한 이미지에서 loss를 구하여 2D supervision으로 3D render한 결과를 학습시킨다.

bandicam 2024-06-21 10-22-20-681

bandicam 2024-06-21 10-22-17-183

2D에서 3D로 backpropagate하도록 만들어줍니다.

bandicam 2024-06-21 10-23-58-573

그러면 rendering pipeline을 이해해야합니다.

bandicam 2024-06-21 10-25-23-928

  • 첫번째로, shading 단계는 종종 자연스럽게 미분 가능하게 되는데, 이는 face의 내부에서 vertex data를 보간하기 위해 barycentric interpolation과 같은 방법을 포함하기 때문입니다. 이러한 계산은 미분 가능하며, normal과 position of lights를 포함한 다양한 유형의 lighting 계산도 자연스럽게 미분 가능합니다. 이러한 모든 종류의 계산은 기본적으로 미분 가능하며, back propagating을 통해 문제 없이 처리할 수 있습니다. bandicam 2024-06-21 10-25-26-147

  • 하지만 rasterization 단계는 boundary effects와 occlusion effects로 인해 미분 가능성에 문제가 발생합니다. Boundary effects는 경계 부분에서의 비연속성을 의미하며, occlusion effects는 객체가 다른 객체에 의해 가려지는 현상을 의미합니다. 이 두 가지 효과는 미분 가능성을 방해하여, 역전파 과정에서 어려움을 초래할 수 있습니다. bandicam 2024-06-21 10-25-44-852 bandicam 2024-06-21 10-32-56-705

    • rasterization 단계에서 non-differentiable한 것을 해결하는 방법은 blur를 하는 것입니다. bandicam 2024-06-21 10-33-50-035

SoftRasterizer와 비교했을 때, Pytorch3D에서 달라진점

bandicam 2024-06-21 10-35-50-341 bandicam 2024-06-21 10-35-56-130 bandicam 2024-06-21 10-36-00-276 bandicam 2024-06-21 10-36-06-182 bandicam 2024-06-21 10-36-10-936 bandicam 2024-06-21 10-36-15-828 bandicam 2024-06-21 10-37-30-092

bandicam 2024-06-21 10-39-28-053

Unsupervised Shape Prediction

bandicam 2024-06-21 10-39-03-501 bandicam 2024-06-21 10-39-06-450 bandicam 2024-06-21 10-39-09-438

bandicam 2024-06-21 10-42-02-978 bandicam 2024-06-21 10-42-08-773 bandicam 2024-06-21 10-42-12-397 bandicam 2024-06-21 10-42-17-422 bandicam 2024-06-21 10-42-21-040

Textured Mesh Rendering (Flat shading, Phong shading, Gouraud shading)

bandicam 2024-06-21 10-42-24-155

Pytorch3D는 differentiable mesh renderer 뿐만 아니라 differentiable point cloud renderer도 제공합니다.

bandicam 2024-06-21 10-44-11-183 bandicam 2024-06-21 10-45-12-376

Single Image View Synthesis

bandicam 2024-06-21 10-45-25-992 bandicam 2024-06-21 10-45-29-247 bandicam 2024-06-21 10-45-40-668 bandicam 2024-06-21 10-46-15-283 bandicam 2024-06-21 10-46-13-426 bandicam 2024-06-21 10-47-07-910

Point cloud의 depth를 예측합니다.

bandicam 2024-06-21 10-51-16-256 bandicam 2024-06-21 10-51-18-811 bandicam 2024-06-21 10-51-23-197 bandicam 2024-06-21 10-51-34-733 bandicam 2024-06-21 10-51-38-359 bandicam 2024-06-21 10-51-44-558 bandicam 2024-06-21 10-51-47-412 bandicam 2024-06-21 10-51-50-188 bandicam 2024-06-21 10-51-55-273 bandicam 2024-06-21 10-48-03-423 bandicam 2024-06-21 10-48-30-120 bandicam 2024-06-21 10-48-50-250 bandicam 2024-06-21 10-49-14-482 bandicam 2024-06-21 10-49-23-921 bandicam 2024-06-21 10-49-43-601 bandicam 2024-06-21 10-49-53-741

Leave a comment