{
  "id": 228016,
  "title": "did you know: opencv grouprectangles",
  "url": "/competitions/vinbigdata-chest-xray-abnormalities-detection/discussion/228016",
  "author_name": "hengck23",
  "post_date": "2021-03-23T05:38:39.303000",
  "votes": 16,
  "comment_count": 2,
  "views": 0,
  "content": "<p>this is post-processing in objection detection before the age of deep learning and NMS</p>\n<p>far from perfect, but sometimes useful<br>\n<a href=\"https://stackoverflow.com/questions/21421070/opencv-grouprectangles-getting-grouped-and-ungrouped-rectangles\" target=\"_blank\">https://stackoverflow.com/questions/21421070/opencv-grouprectangles-getting-grouped-and-ungrouped-rectangles</a><br>\n<a href=\"https://stackoverflow.com/questions/51326077/grouprectangles-on-opencv-not-performing-as-expected\" target=\"_blank\">https://stackoverflow.com/questions/51326077/grouprectangles-on-opencv-not-performing-as-expected</a><br>\n <img src=\"https://i.stack.imgur.com/9XE8e.png\" alt=\"\"></p>\n<p><a href=\"https://stackoverflow.com/questions/59053652/how-to-merge-bounding-boxes-with-grouprectangle\" target=\"_blank\">https://stackoverflow.com/questions/59053652/how-to-merge-bounding-boxes-with-grouprectangle</a></p>\n<p>it is based on : <a href=\"http://en.wikipedia.org/wiki/Disjoint-set_data_structure\" target=\"_blank\">http://en.wikipedia.org/wiki/Disjoint-set_data_structure</a> . <br>\n<a href=\"https://docs.opencv.org/master/d5/d38/group__core__cluster.html\" target=\"_blank\">https://docs.opencv.org/master/d5/d38/group__core__cluster.html</a><br>\npartition()<br>\nSplits an element set into equivalency classes.<br>\nsee : <a href=\"https://www.programmersought.com/article/6537390322/\" target=\"_blank\">https://www.programmersought.com/article/6537390322/</a></p>\n<hr>\n<p>better box ensmble:<br>\n<a href=\"https://www.kaggle.com/c/open-images-2019-object-detection/discussion/115086\" target=\"_blank\">https://www.kaggle.com/c/open-images-2019-object-detection/discussion/115086</a></p>",
  "messages": [
    {
      "id": 1249115,
      "postDate": "2021-03-23T05:38:39.303Z",
      "content": "<p>this is post-processing in objection detection before the age of deep learning and NMS</p>\n<p>far from perfect, but sometimes useful<br>\n<a href=\"https://stackoverflow.com/questions/21421070/opencv-grouprectangles-getting-grouped-and-ungrouped-rectangles\" target=\"_blank\">https://stackoverflow.com/questions/21421070/opencv-grouprectangles-getting-grouped-and-ungrouped-rectangles</a><br>\n<a href=\"https://stackoverflow.com/questions/51326077/grouprectangles-on-opencv-not-performing-as-expected\" target=\"_blank\">https://stackoverflow.com/questions/51326077/grouprectangles-on-opencv-not-performing-as-expected</a><br>\n <img src=\"https://i.stack.imgur.com/9XE8e.png\" alt=\"\"></p>\n<p><a href=\"https://stackoverflow.com/questions/59053652/how-to-merge-bounding-boxes-with-grouprectangle\" target=\"_blank\">https://stackoverflow.com/questions/59053652/how-to-merge-bounding-boxes-with-grouprectangle</a></p>\n<p>it is based on : <a href=\"http://en.wikipedia.org/wiki/Disjoint-set_data_structure\" target=\"_blank\">http://en.wikipedia.org/wiki/Disjoint-set_data_structure</a> . <br>\n<a href=\"https://docs.opencv.org/master/d5/d38/group__core__cluster.html\" target=\"_blank\">https://docs.opencv.org/master/d5/d38/group__core__cluster.html</a><br>\npartition()<br>\nSplits an element set into equivalency classes.<br>\nsee : <a href=\"https://www.programmersought.com/article/6537390322/\" target=\"_blank\">https://www.programmersought.com/article/6537390322/</a></p>\n<hr>\n<p>better box ensmble:<br>\n<a href=\"https://www.kaggle.com/c/open-images-2019-object-detection/discussion/115086\" target=\"_blank\">https://www.kaggle.com/c/open-images-2019-object-detection/discussion/115086</a></p>",
      "rawMarkdown": "this is post-processing in objection detection before the age of deep learning and NMS\n\nfar from perfect, but sometimes useful\nhttps://stackoverflow.com/questions/21421070/opencv-grouprectangles-getting-grouped-and-ungrouped-rectangles\nhttps://stackoverflow.com/questions/51326077/grouprectangles-on-opencv-not-performing-as-expected\n ![](https://i.stack.imgur.com/9XE8e.png)\n\nhttps://stackoverflow.com/questions/59053652/how-to-merge-bounding-boxes-with-grouprectangle\n\nit is based on : http://en.wikipedia.org/wiki/Disjoint-set_data_structure . \nhttps://docs.opencv.org/master/d5/d38/group__core__cluster.html\npartition()\nSplits an element set into equivalency classes.\nsee : https://www.programmersought.com/article/6537390322/\n\n---\nbetter box ensmble:\nhttps://www.kaggle.com/c/open-images-2019-object-detection/discussion/115086",
      "votes": 16
    },
    {
      "id": 1250750,
      "postDate": "2021-03-24T08:45:44.227Z",
      "content": "<p>Group annotation is important.<br>\nHowever, i think annotation is very noisy. (I'm not a radiologist though😹)<br>\nIf there are three or two boxes in the same place and they are the same class,then they should be correct annotation.<br>\nBut in many cases, there is only one box in many places, or there are different class in the same place</p>",
      "rawMarkdown": "Group annotation is important.\nHowever, i think annotation is very noisy. (I'm not a radiologist though😹)\nIf there are three or two boxes in the same place and they are the same class,then they should be correct annotation.\nBut in many cases, there is only one box in many places, or there are different class in the same place\n"
    },
    {
      "id": 1250120,
      "postDate": "2021-03-23T19:55:34.873Z",
      "content": "<p>Thank you <a href=\"https://www.kaggle.com/hengck23\" target=\"_blank\">@hengck23</a> for sharing this. At times it is important to go back to the basics in order to understand the complex.</p>",
      "rawMarkdown": "Thank you @hengck23 for sharing this. At times it is important to go back to the basics in order to understand the complex."
    }
  ],
  "comments": [
    {
      "id": 1250750,
      "author_name": "shiba",
      "author_url": "",
      "post_date": "2021-03-24T08:45:44.227000",
      "content": "<p>Group annotation is important.<br>\nHowever, i think annotation is very noisy. (I'm not a radiologist though😹)<br>\nIf there are three or two boxes in the same place and they are the same class,then they should be correct annotation.<br>\nBut in many cases, there is only one box in many places, or there are different class in the same place</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 1250120,
      "author_name": "Olusesi Adebisi",
      "author_url": "",
      "post_date": "2021-03-23T19:55:34.873000",
      "content": "<p>Thank you <a href=\"https://www.kaggle.com/hengck23\" target=\"_blank\">@hengck23</a> for sharing this. At times it is important to go back to the basics in order to understand the complex.</p>",
      "votes": 0,
      "replies": []
    }
  ],
  "raw_markdown_by_id": {
    "1249115": "this is post-processing in objection detection before the age of deep learning and NMS\n\nfar from perfect, but sometimes useful\nhttps://stackoverflow.com/questions/21421070/opencv-grouprectangles-getting-grouped-and-ungrouped-rectangles\nhttps://stackoverflow.com/questions/51326077/grouprectangles-on-opencv-not-performing-as-expected\n ![](https://i.stack.imgur.com/9XE8e.png)\n\nhttps://stackoverflow.com/questions/59053652/how-to-merge-bounding-boxes-with-grouprectangle\n\nit is based on : http://en.wikipedia.org/wiki/Disjoint-set_data_structure . \nhttps://docs.opencv.org/master/d5/d38/group__core__cluster.html\npartition()\nSplits an element set into equivalency classes.\nsee : https://www.programmersought.com/article/6537390322/\n\n---\nbetter box ensmble:\nhttps://www.kaggle.com/c/open-images-2019-object-detection/discussion/115086",
    "1250750": "Group annotation is important.\nHowever, i think annotation is very noisy. (I'm not a radiologist though😹)\nIf there are three or two boxes in the same place and they are the same class,then they should be correct annotation.\nBut in many cases, there is only one box in many places, or there are different class in the same place\n",
    "1250120": "Thank you @hengck23 for sharing this. At times it is important to go back to the basics in order to understand the complex."
  }
}