Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Question about "point_instance_label" #14

Closed
Tavish9 opened this issue Oct 6, 2023 · 2 comments
Closed

Question about "point_instance_label" #14

Tavish9 opened this issue Oct 6, 2023 · 2 comments

Comments

@Tavish9
Copy link

Tavish9 commented Oct 6, 2023

Hi, thanks for you great work.

But I have a question about "point_instance_label" when reading the code.

In src/joint_det_dataset.py, function _get_target_boxes:

point_instance_label = -np.ones(len(scan.pc))
for t, tid in enumerate(tids):
    point_instance_label[scan.three_d_objects[tid]['points']] = t

Is there any problem with setting the label of the point to the sequence index t?

In my opinion, the code should be modified as follows:

point_instance_label = -np.ones(len(scan.pc))
for t, tid in enumerate(tids):
    point_instance_label[scan.three_d_objects[tid]['points']] = tid 

In this way, all points in the same scene can be correctly classified into the corresponding object IDs.

If we set the point_instance_label to t, the label of the point can only be 0 on the scanrefer dataset when joint_det is false, which leads to logic errors.

@yanmin-wu
Copy link
Owner

Thanks for your interest.

I think there is no issue here.
For example, under the ScanRefer settings, the point_instance_label will set the labels of the point clouds associated with the target object to 0, and the remaining points will be set to -1.
Then, in the compute_points_obj_cls_loss_hard_topk() function, operation L179 will obtain labels for 1024 seed points, which are either 0 or -1. Operation L180 will set the labels of all seed points with a label of -1 to 131. Operation L181 will convert the labels into one-hot vectors.

Additionally, a label of 0 won't cause logical errors. Its corresponding one-hot label is 10000...

@Tavish9
Copy link
Author

Tavish9 commented Oct 11, 2023

Thank you for your gracious reply. Your answer was indeed correct, and I apologize for my previous misunderstanding. I truly appreciate your support.

@Tavish9 Tavish9 closed this as completed Oct 11, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants