{
  "id": 48963,
  "title": "u cant win with perfect segmentation - understand the evaluation method",
  "url": "/competitions/data-science-bowl-2018/discussion/48963",
  "author_name": "",
  "post_date": "2018-02-05T08:31:39.316177500Z",
  "votes": 7,
  "comment_count": 7,
  "views": 0,
  "content": "<p>if u done like everybody else here some \"unet\" segmentation u saw that u get only around 0.3 and sometimes - the more your model gets better - your score get worse.. even though u can see the masks get better. </p>\n\n<p>the reason is the evaluation method!!! \nif u read it u have each row in the csv file for each nuclei. that means that every nuclei needs to be seperate in the \"rle_encoding\". </p>\n\n<p>a lot of the nuclei are connected to each other and if u use a simple \"skimage.label\" to know where there nucleis are then u predict many nucleis as \"one\". </p>\n\n<p>thats y i guess we got the data set with diff masks for each nuclei. so we can use it training seperatly. \nevery kernel that connect them to one on the begining - will get low acc.</p>\n\n<p>u have to find a way to predict each nuclei to itself. each nuclei as diff mask.</p>\n\n<p>thats y a lot here talking about combining detection and segmentation</p>",
  "messages": [
    {
      "id": "278053",
      "postDate": "02/05/2018 08:31:39",
      "content": "<p>if u done like everybody else here some \"unet\" segmentation u saw that u get only around 0.3 and sometimes - the more your model gets better - your score get worse.. even though u can see the masks get better. </p>\n\n<p>the reason is the evaluation method!!! \nif u read it u have each row in the csv file for each nuclei. that means that every nuclei needs to be seperate in the \"rle_encoding\". </p>\n\n<p>a lot of the nuclei are connected to each other and if u use a simple \"skimage.label\" to know where there nucleis are then u predict many nucleis as \"one\". </p>\n\n<p>thats y i guess we got the data set with diff masks for each nuclei. so we can use it training seperatly. \nevery kernel that connect them to one on the begining - will get low acc.</p>\n\n<p>u have to find a way to predict each nuclei to itself. each nuclei as diff mask.</p>\n\n<p>thats y a lot here talking about combining detection and segmentation</p>",
      "rawMarkdown": "if u done like everybody else here some \"unet\" segmentation u saw that u get only around 0.3 and sometimes - the more your model gets better - your score get worse.. even though u can see the masks get better. \n\nthe reason is the evaluation method!!! \nif u read it u have each row in the csv file for each nuclei. that means that every nuclei needs to be seperate in the \"rle_encoding\". \n\na lot of the nuclei are connected to each other and if u use a simple \"skimage.label\" to know where there nucleis are then u predict many nucleis as \"one\". \n\nthats y i guess we got the data set with diff masks for each nuclei. so we can use it training seperatly. \nevery kernel that connect them to one on the begining - will get low acc.\n\nu have to find a way to predict each nuclei to itself. each nuclei as diff mask.\n\nthats y a lot here talking about combining detection and segmentation",
      "votes": null
    },
    {
      "id": "278186",
      "postDate": "02/05/2018 15:25:54",
      "content": "<p>First we have to detect the nuclei, and then predict different mask for each individual nuclei. </p>",
      "rawMarkdown": "First we have to detect the nuclei, and then predict different mask for each individual nuclei.",
      "votes": null
    },
    {
      "id": "278224",
      "postDate": "02/05/2018 17:07:24",
      "content": "<p>that's right! </p>",
      "rawMarkdown": "that's right!",
      "votes": null
    },
    {
      "id": "278233",
      "postDate": "02/05/2018 17:30:12",
      "content": "<p>I get an error when I load a file with separate masks:</p>\n\n<p><code>The same pixel may not be assigned to two different objects.</code></p>\n\n<p>Or I do not understand you.</p>",
      "rawMarkdown": "I get an error when I load a file with separate masks:\n\n`The same pixel may not be assigned to two different objects.`\n\nOr I do not understand you.",
      "votes": null
    },
    {
      "id": "278237",
      "postDate": "02/05/2018 17:36:22",
      "content": "<p>u have to detect them in bounding boxes. and then segment each box with one nucli. u cant attach two masks to one image. u have to attach one mask to one box </p>",
      "rawMarkdown": "u have to detect them in bounding boxes. and then segment each box with one nucli. u cant attach two masks to one image. u have to attach one mask to one box",
      "votes": null
    },
    {
      "id": "279961",
      "postDate": "02/09/2018 02:00:25",
      "content": "<p>I read the data description，I think we only need mark the nuclei instance. What do you mean \"different mask\"? not nuclei or background？</p>",
      "rawMarkdown": "I read the data description，I think we only need mark the nuclei instance. What do you mean \"different mask\"? not nuclei or background？",
      "votes": null
    },
    {
      "id": "280002",
      "postDate": "02/09/2018 04:31:49",
      "content": "<p>It may because your masks overlap with each other. The competition requires nonoverlapping masks.</p>",
      "rawMarkdown": "It may because your masks overlap with each other. The competition requires nonoverlapping masks.",
      "votes": null
    },
    {
      "id": "281105",
      "postDate": "02/12/2018 01:52:14",
      "content": "<p>I think you’re correct. Also, Anne Carpenter in an another thread said (referring to these two images posted by john1231983):</p>\n\n<p><img src=\"https://i.stack.imgur.com/ajYf8.png\" alt=\"Segmentation\"></p>\n\n<blockquote>\n  <p><strong>Anne Carpenter wrote</strong></p>\n  \n  <blockquote>\n    <p>Definitely, absolutely the one on the right. This is an instance segmentation problem.</p>\n  </blockquote>\n  \n  <p>Distinguishing foreground/background is a relatively easy problem in most of these images. The hard part is separating touching nuclei. That's why the metric focuses on that problem.</p>\n</blockquote>\n\n<p>Furthermore, Allen Goodman said he is using a Mask RCNN model. </p>",
      "rawMarkdown": "I think you’re correct. Also, Anne Carpenter in an another thread said (referring to these two images posted by john1231983):\n\n![Segmentation][1]\n\n&gt; **Anne Carpenter wrote**\n&gt; \n&gt; &gt; Definitely, absolutely the one on the right. This is an instance segmentation problem.\n&gt; \n&gt; Distinguishing foreground/background is a relatively easy problem in most of these images. The hard part is separating touching nuclei. That's why the metric focuses on that problem.\n\nFurthermore, Allen Goodman said he is using a Mask RCNN model. \n\n  [1]: https://i.stack.imgur.com/ajYf8.png",
      "votes": null
    }
  ],
  "comments": [
    {
      "id": 278186,
      "author_name": "nikhilroxtomar",
      "author_url": "",
      "post_date": "02/05/2018 15:25:54",
      "content": "<p>First we have to detect the nuclei, and then predict different mask for each individual nuclei. </p>",
      "votes": null,
      "replies": [
        {
          "id": 278224,
          "author_name": "aviwolfson",
          "author_url": "",
          "post_date": "02/05/2018 17:07:24",
          "content": "<p>that's right! </p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 279961,
          "author_name": "feitengli",
          "author_url": "",
          "post_date": "02/09/2018 02:00:25",
          "content": "<p>I read the data description，I think we only need mark the nuclei instance. What do you mean \"different mask\"? not nuclei or background？</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 278233,
      "author_name": "rechik",
      "author_url": "",
      "post_date": "02/05/2018 17:30:12",
      "content": "<p>I get an error when I load a file with separate masks:</p>\n\n<p><code>The same pixel may not be assigned to two different objects.</code></p>\n\n<p>Or I do not understand you.</p>",
      "votes": null,
      "replies": [
        {
          "id": 278237,
          "author_name": "aviwolfson",
          "author_url": "",
          "post_date": "02/05/2018 17:36:22",
          "content": "<p>u have to detect them in bounding boxes. and then segment each box with one nucli. u cant attach two masks to one image. u have to attach one mask to one box </p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 280002,
          "author_name": "dingkun",
          "author_url": "",
          "post_date": "02/09/2018 04:31:49",
          "content": "<p>It may because your masks overlap with each other. The competition requires nonoverlapping masks.</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 281105,
      "author_name": "jackvial",
      "author_url": "",
      "post_date": "02/12/2018 01:52:14",
      "content": "<p>I think you’re correct. Also, Anne Carpenter in an another thread said (referring to these two images posted by john1231983):</p>\n\n<p><img src=\"https://i.stack.imgur.com/ajYf8.png\" alt=\"Segmentation\"></p>\n\n<blockquote>\n  <p><strong>Anne Carpenter wrote</strong></p>\n  \n  <blockquote>\n    <p>Definitely, absolutely the one on the right. This is an instance segmentation problem.</p>\n  </blockquote>\n  \n  <p>Distinguishing foreground/background is a relatively easy problem in most of these images. The hard part is separating touching nuclei. That's why the metric focuses on that problem.</p>\n</blockquote>\n\n<p>Furthermore, Allen Goodman said he is using a Mask RCNN model. </p>",
      "votes": null,
      "replies": []
    }
  ],
  "raw_markdown_by_id": {
    "278053": "if u done like everybody else here some \"unet\" segmentation u saw that u get only around 0.3 and sometimes - the more your model gets better - your score get worse.. even though u can see the masks get better. \n\nthe reason is the evaluation method!!! \nif u read it u have each row in the csv file for each nuclei. that means that every nuclei needs to be seperate in the \"rle_encoding\". \n\na lot of the nuclei are connected to each other and if u use a simple \"skimage.label\" to know where there nucleis are then u predict many nucleis as \"one\". \n\nthats y i guess we got the data set with diff masks for each nuclei. so we can use it training seperatly. \nevery kernel that connect them to one on the begining - will get low acc.\n\nu have to find a way to predict each nuclei to itself. each nuclei as diff mask.\n\nthats y a lot here talking about combining detection and segmentation",
    "278186": "First we have to detect the nuclei, and then predict different mask for each individual nuclei.",
    "278224": "that's right!",
    "278233": "I get an error when I load a file with separate masks:\n\n`The same pixel may not be assigned to two different objects.`\n\nOr I do not understand you.",
    "278237": "u have to detect them in bounding boxes. and then segment each box with one nucli. u cant attach two masks to one image. u have to attach one mask to one box",
    "279961": "I read the data description，I think we only need mark the nuclei instance. What do you mean \"different mask\"? not nuclei or background？",
    "280002": "It may because your masks overlap with each other. The competition requires nonoverlapping masks.",
    "281105": "I think you’re correct. Also, Anne Carpenter in an another thread said (referring to these two images posted by john1231983):\n\n![Segmentation][1]\n\n&gt; **Anne Carpenter wrote**\n&gt; \n&gt; &gt; Definitely, absolutely the one on the right. This is an instance segmentation problem.\n&gt; \n&gt; Distinguishing foreground/background is a relatively easy problem in most of these images. The hard part is separating touching nuclei. That's why the metric focuses on that problem.\n\nFurthermore, Allen Goodman said he is using a Mask RCNN model. \n\n  [1]: https://i.stack.imgur.com/ajYf8.png"
  },
  "source": "meta"
}