{
  "id": 614067,
  "title": "example of grid point annotation",
  "url": "/competitions/physionet-ecg-image-digitization/discussion/614067",
  "author_name": "hengck23",
  "post_date": "2025-10-31T20:04:12.722000",
  "votes": 18,
  "comment_count": 7,
  "views": 0,
  "content": "<p>notebook link\n<a href=\"https://www.kaggle.com/code/hengck23/example-of-grid-point-annotation\" target=\"_blank\">https://www.kaggle.com/code/hengck23/example-of-grid-point-annotation</a></p>\n<p><img src=\"https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F113660%2F18d8062e487e83a68b873c5ee825d68f%2FSelection_862.png?generation=1761941047198436&amp;alt=media\" alt=\"\"></p>\n<p>point correspondences in different views are also given!</p>\n<ul>\n<li>you can use it for training gridlines or grid points segmentation</li>\n<li>you can use it to experiment undistorting methods</li>\n</ul>",
  "messages": [
    {
      "id": 3309479,
      "postDate": "2025-10-31T20:04:12.723Z",
      "content": "<p>notebook link\n<a href=\"https://www.kaggle.com/code/hengck23/example-of-grid-point-annotation\" target=\"_blank\">https://www.kaggle.com/code/hengck23/example-of-grid-point-annotation</a></p>\n<p><img src=\"https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F113660%2F18d8062e487e83a68b873c5ee825d68f%2FSelection_862.png?generation=1761941047198436&amp;alt=media\" alt=\"\"></p>\n<p>point correspondences in different views are also given!</p>\n<ul>\n<li>you can use it for training gridlines or grid points segmentation</li>\n<li>you can use it to experiment undistorting methods</li>\n</ul>",
      "rawMarkdown": "notebook link\nhttps://www.kaggle.com/code/hengck23/example-of-grid-point-annotation\n\n![](https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F113660%2F18d8062e487e83a68b873c5ee825d68f%2FSelection_862.png?generation=1761941047198436&alt=media)\n\npoint correspondences in different views are also given!\n\n- you can use it for training gridlines or grid points segmentation\n- you can use it to experiment undistorting methods",
      "votes": 18
    },
    {
      "id": 3310805,
      "postDate": "2025-11-03T17:37:33.283Z",
      "content": "<p>Check this too <a href=\"https://www.kaggle.com/code/hengck23/3-3-rectification-net\" target=\"_blank\">https://www.kaggle.com/code/hengck23/3-3-rectification-net</a></p>",
      "rawMarkdown": "Check this too https://www.kaggle.com/code/hengck23/3-3-rectification-net",
      "votes": 1
    },
    {
      "id": 3310542,
      "postDate": "2025-11-03T06:21:58.517Z",
      "content": "<p>This semi-supervised approach is really clever! Using the 0001 reference image to validate predictions automatically is a great workflow. Thanks for sharing the annotated data and methodology!</p>",
      "rawMarkdown": "This semi-supervised approach is really clever! Using the 0001 reference image to validate predictions automatically is a great workflow. Thanks for sharing the annotated data and methodology!"
    },
    {
      "id": 3310471,
      "postDate": "2025-11-03T02:11:52.237Z",
      "content": "<p>I like how this setup opens up possibilities for training gridline or grid point segmentation models, and even testing undistortion methods. I’ll definitely experiment with this workflow. Great work, and thanks for sharing this!</p>",
      "rawMarkdown": "I like how this setup opens up possibilities for training gridline or grid point segmentation models, and even testing undistortion methods. I’ll definitely experiment with this workflow. Great work, and thanks for sharing this!"
    },
    {
      "id": 3310265,
      "postDate": "2025-11-02T13:59:35.347Z",
      "content": "<p>Did you trained a model or manually annotated?</p>",
      "rawMarkdown": "Did you trained a model or manually annotated?",
      "replies": [
        {
          "id": 3310284,
          "postDate": "2025-11-02T15:15:45.170Z",
          "content": "<p>semi supervised:</p>\n<ul>\n<li>0001 images: fixed grid, manual annotation by intersection of line</li>\n<li>other images: label a few point, train model and label the rest</li>\n<li>use post processing to filter fp and hand label missing point</li>\n<li>use post processing with manual edit to put points in grid</li>\n</ul>\n<p>i find that if you do it for a few images, basically it is enough for good model.\nsince we have the \"0001 image\" reference image, you can automatically determine if the model made correct predictions or not( i.e. you can correct the pesudo label automatically)</p>",
          "rawMarkdown": "semi supervised:\n- 0001 images: fixed grid, manual annotation by intersection of line\n- other images: label a few point, train model and label the rest\n- use post processing to filter fp and hand label missing point\n- use post processing with manual edit to put points in grid\n\ni find that if you do it for a few images, basically it is enough for good model.\nsince we have the \"0001 image\" reference image, you can automatically determine if the model made correct predictions or not( i.e. you can correct the pesudo label automatically)",
          "votes": 5
        }
      ]
    },
    {
      "id": 3309775,
      "postDate": "2025-11-01T11:23:33.953Z",
      "rawMarkdown": "",
      "isDeleted": true
    },
    {
      "id": 3310758,
      "postDate": "2025-11-03T15:40:36.477Z",
      "content": "<p>Thank you for providing this example!</p>",
      "rawMarkdown": "Thank you for providing this example!"
    }
  ],
  "comments": [
    {
      "id": 3310805,
      "author_name": "hengck23",
      "author_url": "",
      "post_date": "2025-11-03T17:37:33.283000",
      "content": "<p>Check this too <a href=\"https://www.kaggle.com/code/hengck23/3-3-rectification-net\" target=\"_blank\">https://www.kaggle.com/code/hengck23/3-3-rectification-net</a></p>",
      "votes": 1,
      "replies": []
    },
    {
      "id": 3310542,
      "author_name": "Aaditya Khanal",
      "author_url": "",
      "post_date": "2025-11-03T06:21:58.517000",
      "content": "<p>This semi-supervised approach is really clever! Using the 0001 reference image to validate predictions automatically is a great workflow. Thanks for sharing the annotated data and methodology!</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 3310471,
      "author_name": "Ladipo Samson",
      "author_url": "",
      "post_date": "2025-11-03T02:11:52.237000",
      "content": "<p>I like how this setup opens up possibilities for training gridline or grid point segmentation models, and even testing undistortion methods. I’ll definitely experiment with this workflow. Great work, and thanks for sharing this!</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 3310265,
      "author_name": "Omar",
      "author_url": "",
      "post_date": "2025-11-02T13:59:35.347000",
      "content": "<p>Did you trained a model or manually annotated?</p>",
      "votes": 0,
      "replies": [
        {
          "id": 3310284,
          "author_name": "hengck23",
          "author_url": "",
          "post_date": "2025-11-02T15:15:45.170000",
          "content": "<p>semi supervised:</p>\n<ul>\n<li>0001 images: fixed grid, manual annotation by intersection of line</li>\n<li>other images: label a few point, train model and label the rest</li>\n<li>use post processing to filter fp and hand label missing point</li>\n<li>use post processing with manual edit to put points in grid</li>\n</ul>\n<p>i find that if you do it for a few images, basically it is enough for good model.\nsince we have the \"0001 image\" reference image, you can automatically determine if the model made correct predictions or not( i.e. you can correct the pesudo label automatically)</p>",
          "votes": 5,
          "replies": []
        }
      ]
    },
    {
      "id": 3309775,
      "author_name": "",
      "author_url": "",
      "post_date": "2025-11-01T11:23:33.953000",
      "content": "",
      "votes": 0,
      "replies": []
    },
    {
      "id": 3310758,
      "author_name": "Irakoze Ntawigenga Kelly",
      "author_url": "",
      "post_date": "2025-11-03T15:40:36.477000",
      "content": "<p>Thank you for providing this example!</p>",
      "votes": 0,
      "replies": []
    }
  ],
  "raw_markdown_by_id": {
    "3309479": "notebook link\nhttps://www.kaggle.com/code/hengck23/example-of-grid-point-annotation\n\n![](https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F113660%2F18d8062e487e83a68b873c5ee825d68f%2FSelection_862.png?generation=1761941047198436&alt=media)\n\npoint correspondences in different views are also given!\n\n- you can use it for training gridlines or grid points segmentation\n- you can use it to experiment undistorting methods",
    "3310805": "Check this too https://www.kaggle.com/code/hengck23/3-3-rectification-net",
    "3310542": "This semi-supervised approach is really clever! Using the 0001 reference image to validate predictions automatically is a great workflow. Thanks for sharing the annotated data and methodology!",
    "3310471": "I like how this setup opens up possibilities for training gridline or grid point segmentation models, and even testing undistortion methods. I’ll definitely experiment with this workflow. Great work, and thanks for sharing this!",
    "3310265": "Did you trained a model or manually annotated?",
    "3309775": "",
    "3310758": "Thank you for providing this example!"
  }
}