{
  "id": 308573,
  "title": "Starting with domain knowledge and FIN-PRINT - inspiration how to approach problem",
  "url": "/competitions/happy-whale-and-dolphin/discussion/308573",
  "author_name": "",
  "post_date": "2022-02-19T09:29:02.708846400Z",
  "votes": 27,
  "comment_count": 12,
  "views": 0,
  "content": "<p>After TF competition I switched here and first step was to understand domain knowledge of competition. </p>\n<p>Source: <a href=\"https://wildwhales.org/speciesid/\" target=\"_blank\">https://wildwhales.org/speciesid/</a></p>\n<ul>\n<li>What is that whale?</li>\n<li>Characteristic of Common Dorsal Fins</li>\n<li>Common Blows</li>\n<li>Common Flukes</li>\n<li>Common Behaviours</li>\n<li>Common Splashes</li>\n</ul>\n<p>The most interesting part from competition perspective is certainly Common Dorsal Fins chapters which describe characteristic of Fins. </p>\n<p>Conclutions:</p>\n<ul>\n<li>we can identify species by the <strong>characteristics, shape, size (1)</strong> and <strong>position of the fin (2)</strong> eg. Killer Whale - curved towards the back, up to 1.8 metres in height, in the middle of the back</li>\n<li>there are spcies without dorsal fin - bieluga and grey whale (no dorsal fin, only a small hump followed by a series of ‘knuckles’ 2/3 of the way back from the head)</li>\n</ul>\n<p>Possible solutions:</p>\n<ul>\n<li><strong>check characteristics (1)</strong> - feature extraction (patterns etc.)</li>\n<li><strong>locate fin, locate whale (2)</strong> and check relationship - could be hard in most cases since we have only dorsal fin on photo (but possible)</li>\n</ul>\n<p>Next I found: <a href=\"https://www.nature.com/articles/s41598-021-02506-6\" target=\"_blank\">https://www.nature.com/articles/s41598-021-02506-6</a> <strong>FIN-PRINT a fully-automated multi-stage deep-learning-based framework for the individual recognition of killer whales</strong>. Which can be really inspiring. Authors describe way to identify whales based on Dorsal Fins.<br>\nThe github repository you can find here <a href=\"https://github.com/ChristianBergler\" target=\"_blank\">https://github.com/ChristianBergler</a> . A lot of tools for us in this competion. </p>\n<p>Full proposed pipeline looks like:</p>\n<p><img src=\"https://i.ibb.co/vvVCCPr/41598-2021-2506-Fig1-HTML.webp\" alt=\"Pipeline\"></p>\n<p>Quick summary:<br>\nThe FIN-PRINT pipeline consists of FIN-DETECT, a YOLOv3 -based object detection network for recognizing killer whale dorsal fins and associated saddle patches in images with 1 to N individuals, FIN-EXTRACT, an automatic extraction procedure cropping and equally resizing all detected dorsal fin/saddle patch markings within an image, VVI-DETECT, a ResNet34-based convolutional neural network (CNN) performing data enhancement by classifying between previously detected/extracted valid versus invalid (VVI) killer whale identification sub-images (e.g. bad weather conditions, blurred, missing saddle patch, difficult angle, detection errors, etc.), and FIN-IDENTIFY, a ResNet34-based CNN for multi-class killer whale individual classification modeling the 100 most commonly photo-identified killer whales. To the best of the authors’ knowledge, this is the first study transferring the analysis of killer whale image identification into a fully automated, multi-stage, sequentially ordered, deep-learning-based framework, in order to machine-identify individuals. Source: <a href=\"https://www.nature.com/articles/s41598-021-02506-6\" target=\"_blank\">https://www.nature.com/articles/s41598-021-02506-6</a></p>\n<p>I thnk that it is really good approach which adresses most of problems described in post created by <a href=\"https://www.kaggle.com/andradaolteanu\" target=\"_blank\">@andradaolteanu</a> <a href=\"https://www.kaggle.com/c/happy-whale-and-dolphin/discussion/308026\" target=\"_blank\">Things to know before starting image preprocessing</a> which is BTW really great (it shows problematic group very well).</p>",
  "messages": [
    {
      "id": "1696980",
      "postDate": "02/19/2022 09:29:02",
      "content": "<p>After TF competition I switched here and first step was to understand domain knowledge of competition. </p>\n<p>Source: <a href=\"https://wildwhales.org/speciesid/\" target=\"_blank\">https://wildwhales.org/speciesid/</a></p>\n<ul>\n<li>What is that whale?</li>\n<li>Characteristic of Common Dorsal Fins</li>\n<li>Common Blows</li>\n<li>Common Flukes</li>\n<li>Common Behaviours</li>\n<li>Common Splashes</li>\n</ul>\n<p>The most interesting part from competition perspective is certainly Common Dorsal Fins chapters which describe characteristic of Fins. </p>\n<p>Conclutions:</p>\n<ul>\n<li>we can identify species by the <strong>characteristics, shape, size (1)</strong> and <strong>position of the fin (2)</strong> eg. Killer Whale - curved towards the back, up to 1.8 metres in height, in the middle of the back</li>\n<li>there are spcies without dorsal fin - bieluga and grey whale (no dorsal fin, only a small hump followed by a series of ‘knuckles’ 2/3 of the way back from the head)</li>\n</ul>\n<p>Possible solutions:</p>\n<ul>\n<li><strong>check characteristics (1)</strong> - feature extraction (patterns etc.)</li>\n<li><strong>locate fin, locate whale (2)</strong> and check relationship - could be hard in most cases since we have only dorsal fin on photo (but possible)</li>\n</ul>\n<p>Next I found: <a href=\"https://www.nature.com/articles/s41598-021-02506-6\" target=\"_blank\">https://www.nature.com/articles/s41598-021-02506-6</a> <strong>FIN-PRINT a fully-automated multi-stage deep-learning-based framework for the individual recognition of killer whales</strong>. Which can be really inspiring. Authors describe way to identify whales based on Dorsal Fins.<br>\nThe github repository you can find here <a href=\"https://github.com/ChristianBergler\" target=\"_blank\">https://github.com/ChristianBergler</a> . A lot of tools for us in this competion. </p>\n<p>Full proposed pipeline looks like:</p>\n<p><img src=\"https://i.ibb.co/vvVCCPr/41598-2021-2506-Fig1-HTML.webp\" alt=\"Pipeline\"></p>\n<p>Quick summary:<br>\nThe FIN-PRINT pipeline consists of FIN-DETECT, a YOLOv3 -based object detection network for recognizing killer whale dorsal fins and associated saddle patches in images with 1 to N individuals, FIN-EXTRACT, an automatic extraction procedure cropping and equally resizing all detected dorsal fin/saddle patch markings within an image, VVI-DETECT, a ResNet34-based convolutional neural network (CNN) performing data enhancement by classifying between previously detected/extracted valid versus invalid (VVI) killer whale identification sub-images (e.g. bad weather conditions, blurred, missing saddle patch, difficult angle, detection errors, etc.), and FIN-IDENTIFY, a ResNet34-based CNN for multi-class killer whale individual classification modeling the 100 most commonly photo-identified killer whales. To the best of the authors’ knowledge, this is the first study transferring the analysis of killer whale image identification into a fully automated, multi-stage, sequentially ordered, deep-learning-based framework, in order to machine-identify individuals. Source: <a href=\"https://www.nature.com/articles/s41598-021-02506-6\" target=\"_blank\">https://www.nature.com/articles/s41598-021-02506-6</a></p>\n<p>I thnk that it is really good approach which adresses most of problems described in post created by <a href=\"https://www.kaggle.com/andradaolteanu\" target=\"_blank\">@andradaolteanu</a> <a href=\"https://www.kaggle.com/c/happy-whale-and-dolphin/discussion/308026\" target=\"_blank\">Things to know before starting image preprocessing</a> which is BTW really great (it shows problematic group very well).</p>",
      "rawMarkdown": "After TF competition I switched here and first step was to understand domain knowledge of competition. \n\nSource: https://wildwhales.org/speciesid/\n- What is that whale?\n- Characteristic of Common Dorsal Fins\n- Common Blows\n- Common Flukes\n- Common Behaviours\n- Common Splashes\n\nThe most interesting part from competition perspective is certainly Common Dorsal Fins chapters which describe characteristic of Fins. \n\nConclutions:\n- we can identify species by the **characteristics, shape, size (1)** and **position of the fin (2)** eg. Killer Whale - curved towards the back, up to 1.8 metres in height, in the middle of the back\n- there are spcies without dorsal fin - bieluga and grey whale (no dorsal fin, only a small hump followed by a series of ‘knuckles’ 2/3 of the way back from the head)\n\nPossible solutions:\n- **check characteristics (1)** - feature extraction (patterns etc.)\n- **locate fin, locate whale (2)** and check relationship - could be hard in most cases since we have only dorsal fin on photo (but possible)\n\nNext I found: https://www.nature.com/articles/s41598-021-02506-6 **FIN-PRINT a fully-automated multi-stage deep-learning-based framework for the individual recognition of killer whales**. Which can be really inspiring. Authors describe way to identify whales based on Dorsal Fins.\nThe github repository you can find here https://github.com/ChristianBergler . A lot of tools for us in this competion. \n\nFull proposed pipeline looks like:\n\n![Pipeline](https://i.ibb.co/vvVCCPr/41598-2021-2506-Fig1-HTML.webp)\n\nQuick summary:\nThe FIN-PRINT pipeline consists of FIN-DETECT, a YOLOv3 -based object detection network for recognizing killer whale dorsal fins and associated saddle patches in images with 1 to N individuals, FIN-EXTRACT, an automatic extraction procedure cropping and equally resizing all detected dorsal fin/saddle patch markings within an image, VVI-DETECT, a ResNet34-based convolutional neural network (CNN) performing data enhancement by classifying between previously detected/extracted valid versus invalid (VVI) killer whale identification sub-images (e.g. bad weather conditions, blurred, missing saddle patch, difficult angle, detection errors, etc.), and FIN-IDENTIFY, a ResNet34-based CNN for multi-class killer whale individual classification modeling the 100 most commonly photo-identified killer whales. To the best of the authors’ knowledge, this is the first study transferring the analysis of killer whale image identification into a fully automated, multi-stage, sequentially ordered, deep-learning-based framework, in order to machine-identify individuals. Source: https://www.nature.com/articles/s41598-021-02506-6\n\nI thnk that it is really good approach which adresses most of problems described in post created by @andradaolteanu [Things to know before starting image preprocessing](https://www.kaggle.com/c/happy-whale-and-dolphin/discussion/308026) which is BTW really great (it shows problematic group very well).",
      "votes": null
    },
    {
      "id": "1697081",
      "postDate": "02/19/2022 11:06:01",
      "content": "<p>Nice to see you here <a href=\"https://www.kaggle.com/remekkinas\" target=\"_blank\">@remekkinas</a> , your contributions are always helpful</p>",
      "rawMarkdown": "Nice to see you here @remekkinas , your contributions are always helpful",
      "votes": null
    },
    {
      "id": "1697088",
      "postDate": "02/19/2022 11:11:55",
      "content": "<p>Thank you very much :) I had to rest a little bit after TF :) I was really exhausted 😤😤😳</p>\n<p>I thnink that FIN-PRINT is really good way to follow. First deal with data and create data more understandable to model. BTW: nice competition.</p>",
      "rawMarkdown": "Thank you very much :) I had to rest a little bit after TF :) I was really exhausted 😤😤😳\n\nI thnink that FIN-PRINT is really good way to follow. First deal with data and create data more understandable to model. BTW: nice competition.",
      "votes": null
    },
    {
      "id": "1697092",
      "postDate": "02/19/2022 11:16:04",
      "content": "<blockquote>\n  <p>I had to res a little bit after TF :)</p>\n</blockquote>\n<p>Less than a week and you're back already? 🙏😄</p>",
      "rawMarkdown": "> I had to res a little bit after TF :)\n\nLess than a week and you're back already? 🙏😄",
      "votes": null
    },
    {
      "id": "1697337",
      "postDate": "02/19/2022 14:52:03",
      "content": "<p>This post is amazing and answers a few of the questions that I had on how to approach this dataset. Thank you sososo much for the info!</p>\n<p>Also, I am very glad you found my post helpful 🙏</p>",
      "rawMarkdown": "This post is amazing and answers a few of the questions that I had on how to approach this dataset. Thank you sososo much for the info!\n\nAlso, I am very glad you found my post helpful 🙏",
      "votes": null
    },
    {
      "id": "1697354",
      "postDate": "02/19/2022 15:04:42",
      "content": "<p>Yes, absolutely your post is outstending. You saved a lot of my time. I downloaded data and was categorizing and looking for problematic group. Then found your post and … I was impressed. Absolutely good approach to computer vision task. Look into data, divide into problematic group and propose solution for each of group. </p>\n<p>I agree FIN-PRINT adresses many problems we have her :) </p>",
      "rawMarkdown": "Yes, absolutely your post is outstending. You saved a lot of my time. I downloaded data and was categorizing and looking for problematic group. Then found your post and ... I was impressed. Absolutely good approach to computer vision task. Look into data, divide into problematic group and propose solution for each of group. \n\nI agree FIN-PRINT adresses many problems we have her :)",
      "votes": null
    },
    {
      "id": "1697556",
      "postDate": "02/19/2022 17:27:37",
      "content": "<p>Great insights, you answered some questions!  Good luck, <a href=\"https://www.kaggle.com/remekkinas\" target=\"_blank\">@remekkinas</a>! </p>",
      "rawMarkdown": "Great insights, you answered some questions!  Good luck, @remekkinas!",
      "votes": null
    },
    {
      "id": "1697718",
      "postDate": "02/19/2022 19:50:19",
      "content": "<p>You are welcome. First stages in proposed attitude are probably the most important in this competition. We will see it soon.</p>",
      "rawMarkdown": "You are welcome. First stages in proposed attitude are probably the most important in this competition. We will see it soon.",
      "votes": null
    },
    {
      "id": "1698316",
      "postDate": "02/20/2022 09:43:00",
      "content": "<p>Yes, we do not want to lose momentum ;) I am looking for first gold in competition 😂😂😃😁</p>",
      "rawMarkdown": "Yes, we do not want to lose momentum ;) I am looking for first gold in competition 😂😂😃😁",
      "votes": null
    },
    {
      "id": "1698602",
      "postDate": "02/20/2022 14:19:01",
      "content": "<p>Great notes. Check this out now!</p>",
      "rawMarkdown": "Great notes. Check this out now!",
      "votes": null
    },
    {
      "id": "1698618",
      "postDate": "02/20/2022 14:33:06",
      "content": "<p>Good Luck <a href=\"https://www.kaggle.com/remekkinas\" target=\"_blank\">@remekkinas</a>, I've just come out of my \"Kaggle chai break\" but I have enjoyed interacting with you on the forums. I hope you become a Comp master soon! :) </p>",
      "rawMarkdown": "Good Luck @remekkinas, I've just come out of my \"Kaggle chai break\" but I have enjoyed interacting with you on the forums. I hope you become a Comp master soon! :)",
      "votes": null
    },
    {
      "id": "1698671",
      "postDate": "02/20/2022 15:09:35",
      "content": "<p>Really helpful note. It's cheering that you are here.</p>",
      "rawMarkdown": "Really helpful note. It's cheering that you are here.",
      "votes": null
    },
    {
      "id": "1698722",
      "postDate": "02/20/2022 15:57:41",
      "content": "<p>Amazing, nice to see you again!</p>",
      "rawMarkdown": "Amazing, nice to see you again!",
      "votes": null
    }
  ],
  "comments": [
    {
      "id": 1697081,
      "author_name": "mrinath",
      "author_url": "",
      "post_date": "02/19/2022 11:06:01",
      "content": "<p>Nice to see you here <a href=\"https://www.kaggle.com/remekkinas\" target=\"_blank\">@remekkinas</a> , your contributions are always helpful</p>",
      "votes": null,
      "replies": [
        {
          "id": 1697088,
          "author_name": "remekkinas",
          "author_url": "",
          "post_date": "02/19/2022 11:11:55",
          "content": "<p>Thank you very much :) I had to rest a little bit after TF :) I was really exhausted 😤😤😳</p>\n<p>I thnink that FIN-PRINT is really good way to follow. First deal with data and create data more understandable to model. BTW: nice competition.</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 1697092,
          "author_name": "init27",
          "author_url": "",
          "post_date": "02/19/2022 11:16:04",
          "content": "<blockquote>\n  <p>I had to res a little bit after TF :)</p>\n</blockquote>\n<p>Less than a week and you're back already? 🙏😄</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 1698316,
          "author_name": "remekkinas",
          "author_url": "",
          "post_date": "02/20/2022 09:43:00",
          "content": "<p>Yes, we do not want to lose momentum ;) I am looking for first gold in competition 😂😂😃😁</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 1698618,
          "author_name": "init27",
          "author_url": "",
          "post_date": "02/20/2022 14:33:06",
          "content": "<p>Good Luck <a href=\"https://www.kaggle.com/remekkinas\" target=\"_blank\">@remekkinas</a>, I've just come out of my \"Kaggle chai break\" but I have enjoyed interacting with you on the forums. I hope you become a Comp master soon! :) </p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 1697337,
      "author_name": "andradaolteanu",
      "author_url": "",
      "post_date": "02/19/2022 14:52:03",
      "content": "<p>This post is amazing and answers a few of the questions that I had on how to approach this dataset. Thank you sososo much for the info!</p>\n<p>Also, I am very glad you found my post helpful 🙏</p>",
      "votes": null,
      "replies": [
        {
          "id": 1697354,
          "author_name": "remekkinas",
          "author_url": "",
          "post_date": "02/19/2022 15:04:42",
          "content": "<p>Yes, absolutely your post is outstending. You saved a lot of my time. I downloaded data and was categorizing and looking for problematic group. Then found your post and … I was impressed. Absolutely good approach to computer vision task. Look into data, divide into problematic group and propose solution for each of group. </p>\n<p>I agree FIN-PRINT adresses many problems we have her :) </p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 1697556,
      "author_name": "vad13irt",
      "author_url": "",
      "post_date": "02/19/2022 17:27:37",
      "content": "<p>Great insights, you answered some questions!  Good luck, <a href=\"https://www.kaggle.com/remekkinas\" target=\"_blank\">@remekkinas</a>! </p>",
      "votes": null,
      "replies": [
        {
          "id": 1697718,
          "author_name": "remekkinas",
          "author_url": "",
          "post_date": "02/19/2022 19:50:19",
          "content": "<p>You are welcome. First stages in proposed attitude are probably the most important in this competition. We will see it soon.</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 1698602,
      "author_name": "crained",
      "author_url": "",
      "post_date": "02/20/2022 14:19:01",
      "content": "<p>Great notes. Check this out now!</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 1698671,
      "author_name": "snaker",
      "author_url": "",
      "post_date": "02/20/2022 15:09:35",
      "content": "<p>Really helpful note. It's cheering that you are here.</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 1698722,
      "author_name": "vincentwang25",
      "author_url": "",
      "post_date": "02/20/2022 15:57:41",
      "content": "<p>Amazing, nice to see you again!</p>",
      "votes": null,
      "replies": []
    }
  ],
  "raw_markdown_by_id": {
    "1696980": "After TF competition I switched here and first step was to understand domain knowledge of competition. \n\nSource: https://wildwhales.org/speciesid/\n- What is that whale?\n- Characteristic of Common Dorsal Fins\n- Common Blows\n- Common Flukes\n- Common Behaviours\n- Common Splashes\n\nThe most interesting part from competition perspective is certainly Common Dorsal Fins chapters which describe characteristic of Fins. \n\nConclutions:\n- we can identify species by the **characteristics, shape, size (1)** and **position of the fin (2)** eg. Killer Whale - curved towards the back, up to 1.8 metres in height, in the middle of the back\n- there are spcies without dorsal fin - bieluga and grey whale (no dorsal fin, only a small hump followed by a series of ‘knuckles’ 2/3 of the way back from the head)\n\nPossible solutions:\n- **check characteristics (1)** - feature extraction (patterns etc.)\n- **locate fin, locate whale (2)** and check relationship - could be hard in most cases since we have only dorsal fin on photo (but possible)\n\nNext I found: https://www.nature.com/articles/s41598-021-02506-6 **FIN-PRINT a fully-automated multi-stage deep-learning-based framework for the individual recognition of killer whales**. Which can be really inspiring. Authors describe way to identify whales based on Dorsal Fins.\nThe github repository you can find here https://github.com/ChristianBergler . A lot of tools for us in this competion. \n\nFull proposed pipeline looks like:\n\n![Pipeline](https://i.ibb.co/vvVCCPr/41598-2021-2506-Fig1-HTML.webp)\n\nQuick summary:\nThe FIN-PRINT pipeline consists of FIN-DETECT, a YOLOv3 -based object detection network for recognizing killer whale dorsal fins and associated saddle patches in images with 1 to N individuals, FIN-EXTRACT, an automatic extraction procedure cropping and equally resizing all detected dorsal fin/saddle patch markings within an image, VVI-DETECT, a ResNet34-based convolutional neural network (CNN) performing data enhancement by classifying between previously detected/extracted valid versus invalid (VVI) killer whale identification sub-images (e.g. bad weather conditions, blurred, missing saddle patch, difficult angle, detection errors, etc.), and FIN-IDENTIFY, a ResNet34-based CNN for multi-class killer whale individual classification modeling the 100 most commonly photo-identified killer whales. To the best of the authors’ knowledge, this is the first study transferring the analysis of killer whale image identification into a fully automated, multi-stage, sequentially ordered, deep-learning-based framework, in order to machine-identify individuals. Source: https://www.nature.com/articles/s41598-021-02506-6\n\nI thnk that it is really good approach which adresses most of problems described in post created by @andradaolteanu [Things to know before starting image preprocessing](https://www.kaggle.com/c/happy-whale-and-dolphin/discussion/308026) which is BTW really great (it shows problematic group very well).",
    "1697081": "Nice to see you here @remekkinas , your contributions are always helpful",
    "1697088": "Thank you very much :) I had to rest a little bit after TF :) I was really exhausted 😤😤😳\n\nI thnink that FIN-PRINT is really good way to follow. First deal with data and create data more understandable to model. BTW: nice competition.",
    "1697092": "> I had to res a little bit after TF :)\n\nLess than a week and you're back already? 🙏😄",
    "1697337": "This post is amazing and answers a few of the questions that I had on how to approach this dataset. Thank you sososo much for the info!\n\nAlso, I am very glad you found my post helpful 🙏",
    "1697354": "Yes, absolutely your post is outstending. You saved a lot of my time. I downloaded data and was categorizing and looking for problematic group. Then found your post and ... I was impressed. Absolutely good approach to computer vision task. Look into data, divide into problematic group and propose solution for each of group. \n\nI agree FIN-PRINT adresses many problems we have her :)",
    "1697556": "Great insights, you answered some questions!  Good luck, @remekkinas!",
    "1697718": "You are welcome. First stages in proposed attitude are probably the most important in this competition. We will see it soon.",
    "1698316": "Yes, we do not want to lose momentum ;) I am looking for first gold in competition 😂😂😃😁",
    "1698602": "Great notes. Check this out now!",
    "1698618": "Good Luck @remekkinas, I've just come out of my \"Kaggle chai break\" but I have enjoyed interacting with you on the forums. I hope you become a Comp master soon! :)",
    "1698671": "Really helpful note. It's cheering that you are here.",
    "1698722": "Amazing, nice to see you again!"
  },
  "source": "meta"
}