python train.py --task cls --checkpoint_every 10 --main_dir /mnt/data/data/ --checkpoint_dir /mnt/data/checkpoints
test accuracy: 0.9338929695697796
gt = tensor([0.])
pred = tensor([2])
gt = tensor([1.])
pred = tensor([2])
All predition cases for lamps are good.
The failures likely come from global pooling extracting only the most prominent, overlapping features across categories. Shapes with ambiguous traits, like long legs or container-like forms, confusing the model because global pooling provides only coarse, category-level awareness.
python train.py --task seg --checkpoint_every 10 --main_dir /mnt/data/data/ --checkpoint_dir /mnt/data/checkpoints
test accuracy: 0.8924311183144246
gt
pred
test accuracy: 0.924545234784566
gt
pred
test accuracy: 0.88454325846572
gt
pred
test accuracy: 0.89437584938593
gt
pred
test accuracy: 0.57463859304958494
gt
pred
test accuracy: 0.513847529384785394
All predition cases for lamps are good.
The model performs well when chair parts are clearly separated but struggles on complex shapes where boundaries between components are merged or ambiguous. In these cases, adjacent points with similar local geometry confuse the model, leading to labels spreading into neighboring regions where part boundaries are not clearly defined.
gt
pred
--num_points 10
gt
pred
--num_points 100
gt
pred
--num_points 1000
gt
pred
--num_points 10
gt
pred
--num_points 100
gt
pred
--num_points 1000
For cls, as long as the number of points is larger then 50, the acc rate will not be affected significitly. For seg, the acc rate is impacted more while decreasing the num_points. But extremely small num_points will not cause a sharp decreasing of acc rate, like when num_points=10.
gt
pred
--rotation_angle 30
gt
pred
---rotation_angle 60
gt
pred
--rotation_angle 90
gt
pred
--rotation_angle 30
gt
pred
--rotation_angle 60
gt
pred
--rotation_angle 90
From 0 to 90 degree, both cls and seg acc rates are affected significitly and the larger rotation angles will lead to worse results.
gt
pred
--num_points 500
gt
pred
--num_points 1000
gt
pred
--num_points 500
gt
pred
--num_points 1000
gt
pred
--rotation_angle 30
gt
pred
---rotation_angle 60
gt
pred
--rotation_angle 90
gt
pred
--rotation_angle 30
gt
pred
--rotation_angle 60
gt
pred
--rotation_angle 90