{
  "id": 105872,
  "title": "Quality of ground truth instance masks",
  "url": "/competitions/open-images-2019-instance-segmentation/discussion/105872",
  "author_name": "",
  "post_date": "2019-08-26T23:27:49.787231600Z",
  "votes": null,
  "comment_count": 3,
  "views": 0,
  "content": "<p>Hey guys,</p>\n\n<p>I visualized the ground truth for the following images (see attachments):\n\"Openimages/train_06/2de5778a61a87f01.jpg'' and \"Openimages/train_04/74362934ae874b7d.jpg\". Can somebody confirm that the ground truth masks are actually not so accurate or did  I make a mistake?</p>\n\n<p>Thanks in advance.\nBest,\nWouter</p>",
  "messages": [
    {
      "id": "608551",
      "postDate": "08/26/2019 23:27:49",
      "content": "<p>Hey guys,</p>\n\n<p>I visualized the ground truth for the following images (see attachments):\n\"Openimages/train_06/2de5778a61a87f01.jpg'' and \"Openimages/train_04/74362934ae874b7d.jpg\". Can somebody confirm that the ground truth masks are actually not so accurate or did  I make a mistake?</p>\n\n<p>Thanks in advance.\nBest,\nWouter</p>",
      "rawMarkdown": "Hey guys,\n\nI visualized the ground truth for the following images (see attachments):\n\"Openimages/train_06/2de5778a61a87f01.jpg'' and \"Openimages/train_04/74362934ae874b7d.jpg\". Can somebody confirm that the ground truth masks are actually not so accurate or did  I make a mistake?\n\nThanks in advance.\nBest,\nWouter",
      "votes": null
    },
    {
      "id": "610236",
      "postDate": "08/28/2019 15:10:09",
      "content": "<p>Here are some visualisations obtained with a script of mine, which confirm your observation.\n(Beware that if there are multiple masks covering the same pixels, one at random would be overwritten)\nTo be fair, 2de5778a61a87f01 seems really tough...\n<img src=\"https://www.googleapis.com/download/storage/v1/b/kaggle-user-content/o/inbox%2F3233311%2F27f94cc41152abd20607921fd6586b06%2F2de5778a61a87f01.jpg?generation=1567004844934990&amp;alt=media\" alt=\"\">\n<img src=\"https://www.googleapis.com/download/storage/v1/b/kaggle-user-content/o/inbox%2F3233311%2F01f517c5ab8f893586a89ec81386a2b7%2F74362934ae874b7d.jpg?generation=1567004893100008&amp;alt=media\" alt=\"\"></p>",
      "rawMarkdown": "Here are some visualisations obtained with a script of mine, which confirm your observation.\n(Beware that if there are multiple masks covering the same pixels, one at random would be overwritten)\nTo be fair, 2de5778a61a87f01 seems really tough...\n![](https://www.googleapis.com/download/storage/v1/b/kaggle-user-content/o/inbox%2F3233311%2F27f94cc41152abd20607921fd6586b06%2F2de5778a61a87f01.jpg?generation=1567004844934990&amp;alt=media)\n![](https://www.googleapis.com/download/storage/v1/b/kaggle-user-content/o/inbox%2F3233311%2F01f517c5ab8f893586a89ec81386a2b7%2F74362934ae874b7d.jpg?generation=1567004893100008&amp;alt=media)",
      "votes": null
    },
    {
      "id": "611776",
      "postDate": "08/29/2019 12:31:30",
      "content": "<p>Those examples look about right.\nYou can inspect more annotation examples at <a href=\"http://g.co/dataset/open-images\">http://g.co/dataset/open-images</a> -&gt; \"Explore\" .\nMake sure \"Type: Segmentation\", and notice you can switch the \"Subset\" from <code>train</code> to <code>validation+test</code>.\nNote that for the train set, the visualizer shows \"the top 500 images ranked by estimated quality\". The quality is automatically estimated as explained in section 4.2 of the <a href=\"https://arxiv.org/pdf/1903.10830.pdf\">paper</a>.</p>\n\n<p>The annotation process is explained [here] (<a href=\"https://storage.googleapis.com/openimages/web/factsfigures.html\">https://storage.googleapis.com/openimages/web/factsfigures.html</a>)</p>\n\n<blockquote>\n  <p>The segmentation masks on the training set have been produced by a state-of-the-art interactive segmentation process <a href=\"https://arxiv.org/pdf/1903.10830.pdf\">[4]</a>, where professional human annotators iteratively correct the output of a segmentation neural network.\n  [...]\n  For the validation and test splits we created 99k masks spread over 54k images. These have been annotated with a purely manual free-painting tool and with a strong focus on quality. They are near-perfect (self-consistency 90% mIoU <a href=\"https://arxiv.org/pdf/1903.10830.pdf\">[4]</a>) and capture even fine details of complex object boundaries (e.g. spiky flowers and thin structures in man-made objects).</p>\n</blockquote>\n\n<p>The annotations used for the Kaggle challenge test set are of the same type as <code>val+test</code> (fully manual).</p>\n\n<p>In the <a href=\"http://openaccess.thecvf.com/content_CVPR_2019/supplemental/Benenson_Large-Scale_Interactive_Object_CVPR_2019_supplemental.pdf\">supplementary material</a> of the paper, we provide more details (Fig. 11) regarding the fraction of training samples that result in \"not so great\" quality. In general most of them are good (may I so myself), and a few are bad or even possibly very bad.</p>\n\n<p>Note that the <a href=\"https://storage.googleapis.com/openimages/web/download.html\">download files</a> include the <code>PredictedIoU</code> value (same used for ranking in visualizer). This can be used to weight the training samples based on the algorithmically predicted quality, or to prune subsets of the training data.</p>",
      "rawMarkdown": "Those examples look about right.\nYou can inspect more annotation examples at http://g.co/dataset/open-images -&gt; \"Explore\" .\nMake sure \"Type: Segmentation\", and notice you can switch the \"Subset\" from `train` to `validation+test`.\nNote that for the train set, the visualizer shows \"the top 500 images ranked by estimated quality\". The quality is automatically estimated as explained in section 4.2 of the [paper](https://arxiv.org/pdf/1903.10830.pdf).\n\nThe annotation process is explained [here] (https://storage.googleapis.com/openimages/web/factsfigures.html)\n \n&gt; The segmentation masks on the training set have been produced by a state-of-the-art interactive segmentation process [[4]](https://arxiv.org/pdf/1903.10830.pdf), where professional human annotators iteratively correct the output of a segmentation neural network.\n[...]\n&gt; For the validation and test splits we created 99k masks spread over 54k images. These have been annotated with a purely manual free-painting tool and with a strong focus on quality. They are near-perfect (self-consistency 90% mIoU [[4]](https://arxiv.org/pdf/1903.10830.pdf)) and capture even fine details of complex object boundaries (e.g. spiky flowers and thin structures in man-made objects).\n\nThe annotations used for the Kaggle challenge test set are of the same type as `val+test` (fully manual).\n\nIn the [supplementary material](http://openaccess.thecvf.com/content_CVPR_2019/supplemental/Benenson_Large-Scale_Interactive_Object_CVPR_2019_supplemental.pdf) of the paper, we provide more details (Fig. 11) regarding the fraction of training samples that result in \"not so great\" quality. In general most of them are good (may I so myself), and a few are bad or even possibly very bad.\n\nNote that the [download files](https://storage.googleapis.com/openimages/web/download.html) include the `PredictedIoU` value (same used for ranking in visualizer). This can be used to weight the training samples based on the algorithmically predicted quality, or to prune subsets of the training data.",
      "votes": null
    },
    {
      "id": "614386",
      "postDate": "08/31/2019 12:24:20",
      "content": "<p>Thanks for the quick reponse.</p>",
      "rawMarkdown": "Thanks for the quick reponse.",
      "votes": null
    }
  ],
  "comments": [
    {
      "id": 610236,
      "author_name": "lntsmn",
      "author_url": "",
      "post_date": "08/28/2019 15:10:09",
      "content": "<p>Here are some visualisations obtained with a script of mine, which confirm your observation.\n(Beware that if there are multiple masks covering the same pixels, one at random would be overwritten)\nTo be fair, 2de5778a61a87f01 seems really tough...\n<img src=\"https://www.googleapis.com/download/storage/v1/b/kaggle-user-content/o/inbox%2F3233311%2F27f94cc41152abd20607921fd6586b06%2F2de5778a61a87f01.jpg?generation=1567004844934990&amp;alt=media\" alt=\"\">\n<img src=\"https://www.googleapis.com/download/storage/v1/b/kaggle-user-content/o/inbox%2F3233311%2F01f517c5ab8f893586a89ec81386a2b7%2F74362934ae874b7d.jpg?generation=1567004893100008&amp;alt=media\" alt=\"\"></p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 611776,
      "author_name": "benenson",
      "author_url": "",
      "post_date": "08/29/2019 12:31:30",
      "content": "<p>Those examples look about right.\nYou can inspect more annotation examples at <a href=\"http://g.co/dataset/open-images\">http://g.co/dataset/open-images</a> -&gt; \"Explore\" .\nMake sure \"Type: Segmentation\", and notice you can switch the \"Subset\" from <code>train</code> to <code>validation+test</code>.\nNote that for the train set, the visualizer shows \"the top 500 images ranked by estimated quality\". The quality is automatically estimated as explained in section 4.2 of the <a href=\"https://arxiv.org/pdf/1903.10830.pdf\">paper</a>.</p>\n\n<p>The annotation process is explained [here] (<a href=\"https://storage.googleapis.com/openimages/web/factsfigures.html\">https://storage.googleapis.com/openimages/web/factsfigures.html</a>)</p>\n\n<blockquote>\n  <p>The segmentation masks on the training set have been produced by a state-of-the-art interactive segmentation process <a href=\"https://arxiv.org/pdf/1903.10830.pdf\">[4]</a>, where professional human annotators iteratively correct the output of a segmentation neural network.\n  [...]\n  For the validation and test splits we created 99k masks spread over 54k images. These have been annotated with a purely manual free-painting tool and with a strong focus on quality. They are near-perfect (self-consistency 90% mIoU <a href=\"https://arxiv.org/pdf/1903.10830.pdf\">[4]</a>) and capture even fine details of complex object boundaries (e.g. spiky flowers and thin structures in man-made objects).</p>\n</blockquote>\n\n<p>The annotations used for the Kaggle challenge test set are of the same type as <code>val+test</code> (fully manual).</p>\n\n<p>In the <a href=\"http://openaccess.thecvf.com/content_CVPR_2019/supplemental/Benenson_Large-Scale_Interactive_Object_CVPR_2019_supplemental.pdf\">supplementary material</a> of the paper, we provide more details (Fig. 11) regarding the fraction of training samples that result in \"not so great\" quality. In general most of them are good (may I so myself), and a few are bad or even possibly very bad.</p>\n\n<p>Note that the <a href=\"https://storage.googleapis.com/openimages/web/download.html\">download files</a> include the <code>PredictedIoU</code> value (same used for ranking in visualizer). This can be used to weight the training samples based on the algorithmically predicted quality, or to prune subsets of the training data.</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 614386,
      "author_name": "wvangansbeke",
      "author_url": "",
      "post_date": "08/31/2019 12:24:20",
      "content": "<p>Thanks for the quick reponse.</p>",
      "votes": null,
      "replies": []
    }
  ],
  "raw_markdown_by_id": {
    "608551": "Hey guys,\n\nI visualized the ground truth for the following images (see attachments):\n\"Openimages/train_06/2de5778a61a87f01.jpg'' and \"Openimages/train_04/74362934ae874b7d.jpg\". Can somebody confirm that the ground truth masks are actually not so accurate or did  I make a mistake?\n\nThanks in advance.\nBest,\nWouter",
    "610236": "Here are some visualisations obtained with a script of mine, which confirm your observation.\n(Beware that if there are multiple masks covering the same pixels, one at random would be overwritten)\nTo be fair, 2de5778a61a87f01 seems really tough...\n![](https://www.googleapis.com/download/storage/v1/b/kaggle-user-content/o/inbox%2F3233311%2F27f94cc41152abd20607921fd6586b06%2F2de5778a61a87f01.jpg?generation=1567004844934990&amp;alt=media)\n![](https://www.googleapis.com/download/storage/v1/b/kaggle-user-content/o/inbox%2F3233311%2F01f517c5ab8f893586a89ec81386a2b7%2F74362934ae874b7d.jpg?generation=1567004893100008&amp;alt=media)",
    "611776": "Those examples look about right.\nYou can inspect more annotation examples at http://g.co/dataset/open-images -&gt; \"Explore\" .\nMake sure \"Type: Segmentation\", and notice you can switch the \"Subset\" from `train` to `validation+test`.\nNote that for the train set, the visualizer shows \"the top 500 images ranked by estimated quality\". The quality is automatically estimated as explained in section 4.2 of the [paper](https://arxiv.org/pdf/1903.10830.pdf).\n\nThe annotation process is explained [here] (https://storage.googleapis.com/openimages/web/factsfigures.html)\n \n&gt; The segmentation masks on the training set have been produced by a state-of-the-art interactive segmentation process [[4]](https://arxiv.org/pdf/1903.10830.pdf), where professional human annotators iteratively correct the output of a segmentation neural network.\n[...]\n&gt; For the validation and test splits we created 99k masks spread over 54k images. These have been annotated with a purely manual free-painting tool and with a strong focus on quality. They are near-perfect (self-consistency 90% mIoU [[4]](https://arxiv.org/pdf/1903.10830.pdf)) and capture even fine details of complex object boundaries (e.g. spiky flowers and thin structures in man-made objects).\n\nThe annotations used for the Kaggle challenge test set are of the same type as `val+test` (fully manual).\n\nIn the [supplementary material](http://openaccess.thecvf.com/content_CVPR_2019/supplemental/Benenson_Large-Scale_Interactive_Object_CVPR_2019_supplemental.pdf) of the paper, we provide more details (Fig. 11) regarding the fraction of training samples that result in \"not so great\" quality. In general most of them are good (may I so myself), and a few are bad or even possibly very bad.\n\nNote that the [download files](https://storage.googleapis.com/openimages/web/download.html) include the `PredictedIoU` value (same used for ranking in visualizer). This can be used to weight the training samples based on the algorithmically predicted quality, or to prune subsets of the training data.",
    "614386": "Thanks for the quick reponse."
  },
  "source": "meta"
}