{
  "id": 392046,
  "title": "9th place solution (yuki part)",
  "url": "/competitions/nfl-player-contact-detection/discussion/392046",
  "author_name": "yuki",
  "post_date": "2023-03-03T14:02:08.836000",
  "votes": 18,
  "comment_count": 0,
  "views": 0,
  "content": "<p>Thanks for organizing such a great competition! Enjoyed the competition from the beginning to the last day!</p>\n<p>My team's score is Public: 0.786/Private: 0.783.<br>\nThis post is about the solution for my (yuki) part, not the team. (Solutions for the whole team will be posted by other members)<br>\n<img src=\"https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F1377145%2Fb1555839f1ff9b855699b5c8ad940cf4%2Fyuki2.png?generation=1677852503005266&amp;alt=media\" alt=\"\"><br>\nMy solution is a 2Stage system configuration.<br>\nIn the 1st stage, features are extracted mainly from images.In the 2nd stage, the time axis information is combined from shift features.In the 1st stage</p>\n<p>Since I cannot handle 2.5DCNN or 3DCNN well and cannot give time series information with NN, I compensate for this problem by using shift features of NN predictions in LightGBM in 2nd stage.</p>\n<h2>1st stage</h2>\n<p>The player's area is cropped in YOLO and used as the input image for NN. The image includes a channel with bounding boxes drawn for the helmets of the target players, plus a channel with bounding boxes for the helmet positions of all players.</p>\n<p>NN predictions are made from -1 step to +1 step. This prediction is passed to the subsequent 2nd Stage.</p>\n<h2>2nd stage</h2>\n<p>NN predictions and some shift features are made and trained with LightGBM.LightGBM predictions are smoothed with moving averages and thresholds are determined to create the final submission file.</p>\n<h2>Other</h2>\n<p>・SAM Optimizer<br>\n・Reduce resolution Data Augmentaion<br>\n・Linear interpolation of helmet bbox<br>\n・Stratified Group Kfold (fold num=3, key=game_play)</p>\n<h2>Didn't worked</h2>\n<p>・2.5DCNN（There was a very slight improvement in score, but it was not adopted because of the time-consuming pre-processing.）<br>\n・Large Image, Large Model<br>\n・All29 video</p>",
  "messages": [
    {
      "id": 2167465,
      "postDate": "2023-03-03T14:02:08.837Z",
      "content": "<p>Thanks for organizing such a great competition! Enjoyed the competition from the beginning to the last day!</p>\n<p>My team's score is Public: 0.786/Private: 0.783.<br>\nThis post is about the solution for my (yuki) part, not the team. (Solutions for the whole team will be posted by other members)<br>\n<img src=\"https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F1377145%2Fb1555839f1ff9b855699b5c8ad940cf4%2Fyuki2.png?generation=1677852503005266&amp;alt=media\" alt=\"\"><br>\nMy solution is a 2Stage system configuration.<br>\nIn the 1st stage, features are extracted mainly from images.In the 2nd stage, the time axis information is combined from shift features.In the 1st stage</p>\n<p>Since I cannot handle 2.5DCNN or 3DCNN well and cannot give time series information with NN, I compensate for this problem by using shift features of NN predictions in LightGBM in 2nd stage.</p>\n<h2>1st stage</h2>\n<p>The player's area is cropped in YOLO and used as the input image for NN. The image includes a channel with bounding boxes drawn for the helmets of the target players, plus a channel with bounding boxes for the helmet positions of all players.</p>\n<p>NN predictions are made from -1 step to +1 step. This prediction is passed to the subsequent 2nd Stage.</p>\n<h2>2nd stage</h2>\n<p>NN predictions and some shift features are made and trained with LightGBM.LightGBM predictions are smoothed with moving averages and thresholds are determined to create the final submission file.</p>\n<h2>Other</h2>\n<p>・SAM Optimizer<br>\n・Reduce resolution Data Augmentaion<br>\n・Linear interpolation of helmet bbox<br>\n・Stratified Group Kfold (fold num=3, key=game_play)</p>\n<h2>Didn't worked</h2>\n<p>・2.5DCNN（There was a very slight improvement in score, but it was not adopted because of the time-consuming pre-processing.）<br>\n・Large Image, Large Model<br>\n・All29 video</p>",
      "rawMarkdown": "Thanks for organizing such a great competition! Enjoyed the competition from the beginning to the last day!\n\nMy team's score is Public: 0.786/Private: 0.783.\nThis post is about the solution for my (yuki) part, not the team. (Solutions for the whole team will be posted by other members)\n![](https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F1377145%2Fb1555839f1ff9b855699b5c8ad940cf4%2Fyuki2.png?generation=1677852503005266&alt=media)\nMy solution is a 2Stage system configuration.\nIn the 1st stage, features are extracted mainly from images.In the 2nd stage, the time axis information is combined from shift features.In the 1st stage\n\nSince I cannot handle 2.5DCNN or 3DCNN well and cannot give time series information with NN, I compensate for this problem by using shift features of NN predictions in LightGBM in 2nd stage.\n\n## 1st stage\nThe player's area is cropped in YOLO and used as the input image for NN. The image includes a channel with bounding boxes drawn for the helmets of the target players, plus a channel with bounding boxes for the helmet positions of all players.\n\nNN predictions are made from -1 step to +1 step. This prediction is passed to the subsequent 2nd Stage.\n\n## 2nd stage\nNN predictions and some shift features are made and trained with LightGBM.LightGBM predictions are smoothed with moving averages and thresholds are determined to create the final submission file.\n\n## Other\n・SAM Optimizer\n・Reduce resolution Data Augmentaion\n・Linear interpolation of helmet bbox\n・Stratified Group Kfold (fold num=3, key=game_play)\n\n## Didn't worked\n・2.5DCNN（There was a very slight improvement in score, but it was not adopted because of the time-consuming pre-processing.）\n・Large Image, Large Model\n・All29 video\n",
      "votes": 18
    }
  ],
  "comments": [],
  "raw_markdown_by_id": {
    "2167465": "Thanks for organizing such a great competition! Enjoyed the competition from the beginning to the last day!\n\nMy team's score is Public: 0.786/Private: 0.783.\nThis post is about the solution for my (yuki) part, not the team. (Solutions for the whole team will be posted by other members)\n![](https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F1377145%2Fb1555839f1ff9b855699b5c8ad940cf4%2Fyuki2.png?generation=1677852503005266&alt=media)\nMy solution is a 2Stage system configuration.\nIn the 1st stage, features are extracted mainly from images.In the 2nd stage, the time axis information is combined from shift features.In the 1st stage\n\nSince I cannot handle 2.5DCNN or 3DCNN well and cannot give time series information with NN, I compensate for this problem by using shift features of NN predictions in LightGBM in 2nd stage.\n\n## 1st stage\nThe player's area is cropped in YOLO and used as the input image for NN. The image includes a channel with bounding boxes drawn for the helmets of the target players, plus a channel with bounding boxes for the helmet positions of all players.\n\nNN predictions are made from -1 step to +1 step. This prediction is passed to the subsequent 2nd Stage.\n\n## 2nd stage\nNN predictions and some shift features are made and trained with LightGBM.LightGBM predictions are smoothed with moving averages and thresholds are determined to create the final submission file.\n\n## Other\n・SAM Optimizer\n・Reduce resolution Data Augmentaion\n・Linear interpolation of helmet bbox\n・Stratified Group Kfold (fold num=3, key=game_play)\n\n## Didn't worked\n・2.5DCNN（There was a very slight improvement in score, but it was not adopted because of the time-consuming pre-processing.）\n・Large Image, Large Model\n・All29 video\n"
  }
}