-
Notifications
You must be signed in to change notification settings - Fork 3.8k
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
"area" in annotations #36
Comments
It means segmentation area. |
Thanks tylin.
Am I right ? |
That sounds right to me. |
Hi tylin, Basically I've to create an annotations JSON, structured in this way: The only value that I miss is area. As you suggested I'm trying to calculate it using MaskApi.area
maskApi.encode(R) returns "attempt to call method 'size'". Looking at the code of that function is seems that R has to be a 3D tensor but in my case is 2D. I'm becoming crazy. Any suggestion? |
One segment can contain multiple polygons {poly1, poly2, ..., polyn}, I think that's the reason to cause error. |
It seems that the problem was the sequence of calls. The right sequence should be:
The only detail I've noticed is that the area value I got, using LUA, is slightly different than the value I expected, according to some annotations you created (instance_val2014.json), for instance:
Does this mean my approach is wrong ? Or is this a consequence of using LUA instead of Python ? |
@tylin |
@sifengyang This is not a mistake. After this you have to do: |
those who need to write their own .json files can check my implementation for Davis 2016 benchmark: |
I hate RLE format. Someone wanted to make data lighter with the cost of lots of problems to other people. |
Hi @tylin, it seems that the "area" field of the prediction is given by the box area for the evaluation of object detection and keypoints detection task, according to line-338 and line-357 in the code snippet below: cocoapi/PythonAPI/pycocotools/coco.py Lines 331 to 359 in 8c9bcc3
When evaluating across different scales ("small", "medium", and "large"), both ground-truth ( cocoapi/PythonAPI/pycocotools/cocoeval.py Lines 251 to 252 in 8c9bcc3
cocoapi/PythonAPI/pycocotools/cocoeval.py Lines 297 to 298 in 8c9bcc3
So, given that the "area" field of ground-truth refers to the number of pixels in the segmentation mask, does this different processing between a ground-truth and a prediction correctly characterize the performance of an object or keypoints detector? As far as I know, there are many object instances of some categories (e.g., "person") of which the value of bbox area and segmentation area are quite different. |
@Johnqczhang Do we have updated repo with the updated code that considers the segmentation mask area instead of bbox area while evaluating "segm"? |
Has anyone figured out why this is happening with @nico00 results ? |
Hi,
I'm creating my own dataset but writing the annotations I've found a field called "area" that I didn't understand.
According to my analysis, it doesn't refer to:
Any idea about how I should calculate it ?
Thanks
Nico
The text was updated successfully, but these errors were encountered: