-
Notifications
You must be signed in to change notification settings - Fork 3k
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
Added rotated bounding boxes #3832
Conversation
@ActiveChooN @zhiltsov-max Could you please review this patch? |
@bsekachev , somewhere the precision is lost. Always |
@bsekachev , for tracked boxes I see the same problem. All boxes has integer coordinates indeed. |
@bsekachev , also I tried to set the angle to 'zero'. It is just impossible. Need to redraw. Need to be able set a presice angle somehow. It can be important for angles like 0, 45, 90, ... |
@nmanovic |
Please implement a standard option for a popular graphical editor. I believe if rotation isn't 0, it should be displayed as an attribute on the side panel as well. At least for occluded we have a button. |
Fixed precision.
I believe on the side panel this information is totally useless (we don't display there x,y,height,width. Isn't it? |
I'm fine with the solution if it allows me to set precisely at least 0, 15, ... after I have rotated a box. Occluded and outside properties have corresponding shortcuts. In general it is really a good idea to have a "visual" way to setup an angle. The visual element should have a hint how to do the action using shortcuts. Also rotation is implemented as an attribute thus it is one more reason to have it on the side panel. Just believe me that it isn't useless. But I'm OK to way a feedback from our users before implementing that. It is up to you. Make a decision by yourself. |
1171681
to
f74bc1e
Compare
@@ -670,6 +670,7 @@ class ShapeSerializer(serializers.Serializer): | |||
type = serializers.ChoiceField(choices=models.ShapeType.choices()) | |||
occluded = serializers.BooleanField() | |||
z_order = serializers.IntegerField(default=0) | |||
rotation = serializers.FloatField(default=0, min_value=0, max_value=360) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@bsekachev , Is 360 a valid value?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Could you please update documentation when the patch is available for you on the internal server? Could you please prepare some tests to cover the new code and features?
|
@bsekachev, Yes, sure |
@bsekachev |
Motivation and context
Resolved #1128
How has this been tested?
Manual testing
TODO:
Checklist
develop
branchcvat-core, cvat-data and cvat-ui)
License
Feel free to contact the maintainers if that's a concern.