<H1 CLASS="western" style="text-align:center;">ZZDeepRollover</H1>
This code enables the detection of rollovers performed by zebrafish larvae tracked by the open-source software <a href="https://github.com/oliviermirat/ZebraZoom" target="_blank">ZebraZoom</a>. This code is still in "beta mode". For more information visit <a href="https://zebrazoom.org/" target="_blank">zebrazoom.org</a> or email us at info@zebrazoom.org<br/>
<H2 CLASS="western">Road Map:</H2>
[Preparing the rollovers detection model](#preparing)<br/>
[Testing the rollovers detection model](#testing)<br/>
[Training the rollovers detection model](#training)<br/>
[Using the rollovers detection model](#using)<br/>
<a name="preparing"/>
<H2 CLASS="western">Preparing the rollovers detection model:</H2>
The detection of rollovers is based on deep learning. You must first install pytorch on your machine. It may be better to first create an anaconda environment for this purpose.<br/><br/>
You then need to place the output result folders of <a href="https://github.com/oliviermirat/ZebraZoom" target="_blank">ZebraZoom</a> inside the folder "ZZoutput" of this repository.<br/><br/>
In order to train the rollovers detection model, you must also manually classify the frames of some of the tracked videos in order to be able to create a training set. Look inside the folder "manualClassificationExamples" for examples of how to create such manual classifications. You then need to place those manual classifications inside the corresponding output result folders of ZebraZoom.<br/><br/>
<a name="testing"/>
<H2 CLASS="western">Testing the rollovers detection model:</H2>
In order to test the accuracy of the rollovers detection model, you can use the script leaveOneOutVideoTest.py, you will need to adjust some variables at the beginning of that script. The variable "videos" is an array that must contain the name of videos for which a manual classification of frames exist and has been placed inside the corresponding output result folder (inside the folder ZZoutput of this repository).<br/><br/>
The script leaveOneOutVideoTest.py will loop through all the videos learning the model on all but one video and testing on the video left out.<br/><br/>
<a name="training"/>
<H2 CLASS="western">Training the rollovers detection model:</H2>
Once the model has been tested using the steps described in the previous section, you can now learn the final model on all the videos for which a manual classification of frames exist using the script trainModel.py (you will need to adjust a few variables in that script).<br/><br/>
<a name="using"/>
<H2 CLASS="western">Using the rollovers detection model:</H2>
As mentionned above, you can then use the script useModel.py to apply the rollovers detection model on a video.<br/><br/>
Raw data
{
"_id": null,
"home_page": "https://github.com/oliviermirat/ZZDeepRollover",
"name": "zzdeeprollover",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "Animal,Behavior,Tracking,Zebrafish,Deep Learning,Rolling",
"author": "Olivier Mirat",
"author_email": "olivier.mirat.om@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/d5/57/19fc73ba0c40993e47d7cfa724ae6f4a1f375895b8d68559010a8ed6a5a9/zzdeeprollover-0.0.9.tar.gz",
"platform": null,
"description": "<H1 CLASS=\"western\" style=\"text-align:center;\">ZZDeepRollover</H1>\n\nThis code enables the detection of rollovers performed by zebrafish larvae tracked by the open-source software <a href=\"https://github.com/oliviermirat/ZebraZoom\" target=\"_blank\">ZebraZoom</a>. This code is still in \"beta mode\". For more information visit <a href=\"https://zebrazoom.org/\" target=\"_blank\">zebrazoom.org</a> or email us at info@zebrazoom.org<br/>\n\n<H2 CLASS=\"western\">Road Map:</H2>\n\n[Preparing the rollovers detection model](#preparing)<br/>\n[Testing the rollovers detection model](#testing)<br/>\n[Training the rollovers detection model](#training)<br/>\n[Using the rollovers detection model](#using)<br/>\n\n<a name=\"preparing\"/>\n\n<H2 CLASS=\"western\">Preparing the rollovers detection model:</H2>\nThe detection of rollovers is based on deep learning. You must first install pytorch on your machine. It may be better to first create an anaconda environment for this purpose.<br/><br/>\nYou then need to place the output result folders of <a href=\"https://github.com/oliviermirat/ZebraZoom\" target=\"_blank\">ZebraZoom</a> inside the folder \"ZZoutput\" of this repository.<br/><br/>\nIn order to train the rollovers detection model, you must also manually classify the frames of some of the tracked videos in order to be able to create a training set. Look inside the folder \"manualClassificationExamples\" for examples of how to create such manual classifications. You then need to place those manual classifications inside the corresponding output result folders of ZebraZoom.<br/><br/>\n\n<a name=\"testing\"/>\n\n<H2 CLASS=\"western\">Testing the rollovers detection model:</H2>\nIn order to test the accuracy of the rollovers detection model, you can use the script leaveOneOutVideoTest.py, you will need to adjust some variables at the beginning of that script. The variable \"videos\" is an array that must contain the name of videos for which a manual classification of frames exist and has been placed inside the corresponding output result folder (inside the folder ZZoutput of this repository).<br/><br/>\nThe script leaveOneOutVideoTest.py will loop through all the videos learning the model on all but one video and testing on the video left out.<br/><br/>\n\n<a name=\"training\"/>\n\n<H2 CLASS=\"western\">Training the rollovers detection model:</H2>\nOnce the model has been tested using the steps described in the previous section, you can now learn the final model on all the videos for which a manual classification of frames exist using the script trainModel.py (you will need to adjust a few variables in that script).<br/><br/>\n\n<a name=\"using\"/>\n\n<H2 CLASS=\"western\">Using the rollovers detection model:</H2>\nAs mentionned above, you can then use the script useModel.py to apply the rollovers detection model on a video.<br/><br/>\n\n\n\n",
"bugtrack_url": null,
"license": "AGPL-3.0",
"summary": "Detect rollovers in zebrafish larvae",
"version": "0.0.9",
"project_urls": {
"Download": "https://github.com/oliviermirat/ZZDeepRollover/releases/latest",
"Homepage": "https://github.com/oliviermirat/ZZDeepRollover"
},
"split_keywords": [
"animal",
"behavior",
"tracking",
"zebrafish",
"deep learning",
"rolling"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "e74d2e5fc11eaeae257685ad17b96884bf83a51c14b64fce4458fc668862bd6a",
"md5": "e9906681743919a79a701b3b592571aa",
"sha256": "3889c22e972b1fe354424dc6d9e5cd0505389cfe7964c50533c94cee1dce9280"
},
"downloads": -1,
"filename": "zzdeeprollover-0.0.9-py3-none-any.whl",
"has_sig": false,
"md5_digest": "e9906681743919a79a701b3b592571aa",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 20163,
"upload_time": "2023-10-10T13:16:05",
"upload_time_iso_8601": "2023-10-10T13:16:05.361759Z",
"url": "https://files.pythonhosted.org/packages/e7/4d/2e5fc11eaeae257685ad17b96884bf83a51c14b64fce4458fc668862bd6a/zzdeeprollover-0.0.9-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "d55719fc73ba0c40993e47d7cfa724ae6f4a1f375895b8d68559010a8ed6a5a9",
"md5": "314e54c6a62c71e6191f6b6a0909558b",
"sha256": "7cf2bab73c9f93483c0cd7eb8fe9da3954e656982b31c82ce515564450483510"
},
"downloads": -1,
"filename": "zzdeeprollover-0.0.9.tar.gz",
"has_sig": false,
"md5_digest": "314e54c6a62c71e6191f6b6a0909558b",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 15868,
"upload_time": "2023-10-10T13:16:06",
"upload_time_iso_8601": "2023-10-10T13:16:06.927059Z",
"url": "https://files.pythonhosted.org/packages/d5/57/19fc73ba0c40993e47d7cfa724ae6f4a1f375895b8d68559010a8ed6a5a9/zzdeeprollover-0.0.9.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-10-10 13:16:06",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "oliviermirat",
"github_project": "ZZDeepRollover",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "zzdeeprollover"
}