No late days used.
Classification model exactly follows the one mentioned in class. Test accuracy is 0.9675. Below is a visualization.
success 1 | success 2 | success 3 | failure | |
chairs | ![]() predict: chairs |
![]() predict: chairs |
![]() predict: chairs |
![]() predict: lamps |
vases | ![]() predict: vases |
![]() predict: vases |
![]() predict: vases |
![]() predict: chairs |
lamps | ![]() predict: lamps |
![]() predict: lamps |
![]() predict: lamps |
![]() predict: vases |
I find that the failure cases of each classes looked more like objects in the long tail. For example, the failed chairs example has a unique geometry that is not usually seen for chairs. Similar pattern can be found for the vases and lamps class.
Segmentation model exactly follows the one mentioned in class. Test accuracy is 0.9001. Below is a visualization.
success 1 | success 2 | success 3 | failure 1 | failure 2 | |
GT | ![]() |
![]() |
![]() |
![]() |
![]() |
prediction | ![]() acc: 0.9423 |
![]() acc: 0.9462 |
![]() acc: 0.9485 |
![]() acc: 0.5051 |
![]() acc: 0.4462 |
Again, I find that the failure cases looked more like objects in the long tail. For example, the failed chairs example has a unique geometry that is not usually seen for chairs. It is true for the segments as well (e.g., the handles looks different).
I check whether the model is robust to rotation. To do this, I rotation the point cloud about the x-axis. I get the rotation matrix using pytorch3d.transforms.axis_angle_to_matrix and and apply the rotation matrix to the point cloud.
Below are some results, and we can clearly see that the model accuracy decreases as the points are rotated more. This is true for both the classifier and the segmenter.
Rotation | 0 deg | 45 deg | 90 deg | 135 deg | 180 deg |
classifier | 0.9675 | 0.4680 | 0.3935 | 0.4271 | 0.6170 |
segmenter | 0.9001 | 0.6197 | 0.2293 | 0.1737 | 0.3203 |
I check whether the model is robust to fewer number of points. This is done by using the --num_points flag provided.
Below are some results, and we can clearly see that the model accuracy decreases as the points are decreased. This is true for both the classifier and the segmenter.
Num of points | 10000 | 1000 | 100 | 50 | 10 |
classifier | 0.9675 | 0.9633 | 0.9349 | 0.8972 | 0.5918 |
segmenter | 0.9001 | 0.8831 | 0.7838 | 0.7472 | 0.6536 |