{ "cells": [ { "cell_type": "markdown", "id": "e14673fa", "metadata": { "pycharm": { "name": "#%% md\n" } }, "source": [ "# Create new customized supervised behaviors for your projects" ] }, { "cell_type": "markdown", "id": "e3044fb9", "metadata": {}, "source": [ "[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/lucasmiranda42/deepof/blob/master/docs/source/tutorial_notebooks/deepof_custom_behaviors_tutorial.ipynb)" ] }, { "cell_type": "markdown", "id": "8a0170cc", "metadata": { "pycharm": { "name": "#%% md\n" } }, "source": [ "##### What we'll cover:\n", " \n", "* Define your own customized behaviors.\n", "* Create behaviors for one or multiple mice\n", "* Create binary behaviors (either occurs or does not occur)\n", "* Create continuous behaviors (return continuous values for each video frame)\n", "* Using ROIs with custom behaviors\n", "* Use the DeepOF plotting and data extraction tools with your new behaviors" ] }, { "cell_type": "code", "execution_count": null, "id": "764990b0", "metadata": {}, "outputs": [], "source": [ "# If using Google colab, uncomment and run this cell and the one below to set up the environment\n", "# Note: because of how colab handles the installation of local packages, this cell will kill your runtime.\n", "# This is not an error! Just continue with the cells below.\n", "# import os\n", "# !git clone -q https://github.com/mlfpm/deepof.git\n", "# !pip install -q -e deepof --progress-bar off\n", "# os.chdir(\"deepof\")\n", "# !curl --output tutorial_files.zip https://datashare.mpcdf.mpg.de/s/TbSrod2fm5jbHfL/download\n", "# !unzip tutorial_files.zip" ] }, { "cell_type": "code", "execution_count": 2, "id": "50799c68", "metadata": {}, "outputs": [], "source": [ "# import os\n", "# os.chdir(\"deepof\")\n", "# import os, warnings\n", "# warnings.filterwarnings('ignore')" ] }, { "cell_type": "markdown", "id": "6048415d", "metadata": {}, "source": [ "This tutorial assumes that you at least \"had a look\" at the supervised tutorial. Respectively, you should have seen the variety of supervised behaviors DeepOF offers, from single mouse behaviors like \"moving\" that measures if the center of the mouse moves more than a certain speed to social behaviors like \"nosetonose\" that detects nose-nose interactions for pairs of mice. " ] }, { "cell_type": "markdown", "id": "0be65c75", "metadata": {}, "source": [ "Obviously, regardless of how many supervised behaviors we would implement, it would never be enough for everyone. There would always be just that one specific movement pattern or social interaction you would like to measure that is very specific to your own setup. But the good news is: DeepOF offers a very powerful solution for you: It allows you to write your own behaviors with your own code to then use them just like all other supervised behaviors with DeepOF. I.e. plot them, apply ROIs to them, extract related data. All of this just works liek it does with the \"native\" supervised behaviors of DeepOF. Now let's do some imports and then set up soem examples." ] }, { "cell_type": "code", "execution_count": 3, "id": "d64823a2", "metadata": { "pycharm": { "name": "#%%\n" } }, "outputs": [], "source": [ "import os\n", "import pickle\n", "import deepof.data\n", "import numpy as np\n", "import deepof.visuals\n", "import matplotlib.pyplot as plt\n", "import seaborn as sns" ] }, { "cell_type": "markdown", "id": "60b9158e", "metadata": { "pycharm": { "name": "#%% md\n" } }, "source": [ "### Define your own customized behaviors." ] }, { "cell_type": "markdown", "id": "5d73cb96", "metadata": {}, "source": [ "As usual, let'S load the tutorial project just to have some data to work with." ] }, { "cell_type": "code", "execution_count": 4, "id": "6382da27", "metadata": { "pycharm": { "name": "#%%\n" } }, "outputs": [], "source": [ "# Load a previously saved project\n", "my_deepof_project = deepof.data.load_project(\"./tutorial_files/tutorial_project\")" ] }, { "cell_type": "markdown", "id": "cef61ad1", "metadata": {}, "source": [ "Now we import soem classes and fucntions from DeepOFs annotation_utils section" ] }, { "cell_type": "code", "execution_count": 5, "id": "3b418426", "metadata": {}, "outputs": [], "source": [ "# First the DeepOF_behavior class. This is what our customied behavior is going to be an isntance \n", "from deepof.annotation_utils import DeepOF_behavior\n", "\n", "# Then some Enums. We will use these to define what type of behavior we are going to create\n", "from deepof.annotation_utils import Behavior_scope, Behavior_output\n", "\n", "# A custom Type and class to keep things nicely structured\n", "from deepof.annotation_utils import animal_ids, BehaviorContext\n", "\n", "# One of DeepOFs custom postprocessing functions\n", "from deepof.annotation_utils import postprocess_identity" ] }, { "cell_type": "markdown", "id": "dcd9a797", "metadata": {}, "source": [ "To define a proper DeepOF_behavior we need four things:\n", "\n", "* A name: This will be the name DeepOF uses to identify the behavior. It should be a single string without underscores\n", "* A scope: This will tell DeepOF if your behavior is a single-mouse one or a directional or nondirectional behavior for pairs of mice interacting\n", "* An output_type: This will tell DeepOF if your behavior is a \"binary\" behavior. i.e. it is either present or absent with nothing in-between or a continuous one.\n", "* A compute function: This is the \"core\" of your custom DeepOF behavior, the function that is used to calculate your behavior." ] }, { "cell_type": "markdown", "id": "51866f43", "metadata": {}, "source": [ "Beyond that, you can further customize your DeepOF_behavior by adding a few more inputs:\n", "\n", "* A postprocessing function: Per default DeepOF will use a simple median-filter as in most behaviors. You can change this to another DeepOF function or write your own.\n", "* A unit: This will determine the unit of measurement of your behavior. The default is \"a.u.\"\n", "* A hex-code color: This will determine the color DeepOf uses to represent your behavior in different plots. Per default DeepOF will choose a color itself" ] }, { "cell_type": "markdown", "id": "167528e9", "metadata": {}, "source": [ "All of this will probably become much more clear if we see a few examples. So let's define two custom behaviors \n", "\n", "This first one will be a small modification of our nose2nose behavior. Instead of detecting when the distance between the noses of our mice is below a threshold, we want to detect when the noses of the mice are a bit closer, but not yet in nose2nose interaction range. Respectively, let's first write the \"core\", our function:" ] }, { "cell_type": "code", "execution_count": 6, "id": "4d33ae97", "metadata": {}, "outputs": [], "source": [ "# All DeepOF behavior functions take two inputs. The first one is the custom BehaviorContext class we imported. \n", "# This is in essence a namespace that will make everything we might need available to us within the function. \n", "# The second one is the current animal the function will handle\n", "\n", "def mouse_nose_mid_distance(ctx: BehaviorContext, mice_pair: animal_ids):\n", " \n", " # As this is going to be a function for paired mouse behavior, we expect mice_pair to contain two animal ids.\n", " a, b = mice_pair \n", "\n", " # Now we also need the tracked bodypart positions. We can get them from the \"raw_coords\" field (a pandas dataTable) in our BehaviorContext ctx\n", " pos_dframe=ctx.raw_coords\n", " \n", " # We are specifically interested in the Noses. So we get the \"nsoe\" bodypart for both of our animals.\n", " # The bp function here simply applies the corret formatting. We could also simply write str(a)+\"_Nose\" \n", " nose_m1=ctx.bp(a, \"Nose\")\n", " nose_m2=ctx.bp(b, \"Nose\")\n", "\n", " # And here we calculate all frames within the table in which the noses of both mice are farther away that our \"close_contact_tol\" \n", " # from the supervised parameters but also closer than 3 times that tolerance. Here we create a binary output array\n", " middle_contact = (\n", " (np.linalg.norm(pos_dframe[nose_m1] - pos_dframe[nose_m2], axis=1) > float(ctx.params[\"close_contact_tol\"])) & \n", " (np.linalg.norm(pos_dframe[nose_m1] - pos_dframe[nose_m2], axis=1) <= 5*float(ctx.params[\"close_contact_tol\"]))\n", " )\n", " return middle_contact" ] }, { "cell_type": "markdown", "id": "8d3d8b16", "metadata": {}, "source": [ "Besides the raw bodypart positions, BehaviorContext also contains a lot more data we can access such as distances, angles, speeds, the arena-parameters, the roi-information, and more. It is even possible to add your own signals and input data to it to then make it available during behavior computation. More regarding that later. Let's first continue to finalize our custom behavior. Now that we have finished our \"core\", we just need to create the DeepOF_behavior itself. This is rather straightforward:" ] }, { "cell_type": "markdown", "id": "7509a892", "metadata": {}, "source": [ "**IMPORTANT**: the name of the DeepOF_behavior variable should differ from the name of the core function, as otherwise a pickling error will occur during saving the supervised annotations!" ] }, { "cell_type": "code", "execution_count": 7, "id": "666e36fd", "metadata": {}, "outputs": [], "source": [ "mouse_nose_mid_distance_behavior=DeepOF_behavior(\n", " name=\"nose2nose-mid\", # The name for our behavior.\n", " scope=Behavior_scope.PAIR_NONDIRECTIONAL, # just like deepofs nose2nose, our behavior is pairwise and nondirectional\n", " output_type=Behavior_output.BINARY, # We choose the binary output type\n", " compute=mouse_nose_mid_distance, # This is the computation function we just defined\n", ")\n" ] }, { "cell_type": "markdown", "id": "e81d6eca", "metadata": {}, "source": [ "And that's it. Our custom behavior is ready to be used. However, before we do that, let's create another example. This time a one-mouse continuous behavior with some custom data added. Let's measure the distance between the nose and tailbase of each mouse and set everything to 0 if the mouse moves faster than a threshold. Further we will do some experiment based \"bias-correction\"" ] }, { "cell_type": "code", "execution_count": 8, "id": "54efc185", "metadata": {}, "outputs": [], "source": [ "def mouse_compression(ctx: BehaviorContext, mouse: animal_ids): \n", "\n", " # As this is going to be a function for single mouse behavior, we expect mouse to contain only one animal id.\n", " a=mouse\n", "\n", " # We again use the coordinates data_frame\n", " pos_dframe=ctx.raw_coords\n", "\n", " # We additionally use the lieklyhoods dataframe which contains the the tracking accuracy for each bodypart as a percentage\n", " likely_dframe=ctx.likelihoods\n", "\n", " # We extract the bodypart names\n", " m1_nose=ctx.bp(a,\"Nose\")\n", " m1_tailbase=ctx.bp(a,\"Tail_base\")\n", "\n", " # We calculate the distance \n", " mouse_compression = np.linalg.norm(pos_dframe[m1_nose]-pos_dframe[m1_tailbase],axis=1)\n", "\n", " # We set all our \"compression\" values to 0 at frames where the nose or tail base of the mouse is not accurately detected \n", " # i.e. the likelyhood value is below the threshold we defined\n", " mouse_compression = mouse_compression*(likely_dframe[m1_nose]>ctx.extra['likelyhood_threshold'])\n", " mouse_compression = mouse_compression*(likely_dframe[m1_tailbase]>ctx.extra['likelyhood_threshold'])\n", "\n", " # Whilst likelyhood_threshold will be the same value for all of our experiments, we can also add custom dictionaries to our extra parameters \n", " # and call specific entries in them e.g. with ctx.key, which would be the key to our current experiment. \n", " mouse_compression = mouse_compression*ctx.extra['bias_correction_dict'][ctx.key]\n", "\n", " return mouse_compression" ] }, { "cell_type": "markdown", "id": "63abf4be", "metadata": {}, "source": [ "Now we again have to define the corresponding DeepOF_behavior" ] }, { "cell_type": "code", "execution_count": 9, "id": "e7bd34ec", "metadata": {}, "outputs": [], "source": [ "mouse_compression_behavior=DeepOF_behavior(\n", " name=\"is-compressed\",\n", " scope=Behavior_scope.INDIVIDUAL,\n", " output_type=Behavior_output.CONTINUOUS,\n", " compute=mouse_compression,\n", " postprocess=postprocess_identity, # here we use the identity-postprocessing function from deepof i.e. no postprocessing is applied at all.\n", ")" ] }, { "cell_type": "markdown", "id": "144a8259", "metadata": {}, "source": [ "Lastly, let's add our custom parameter values 'bias_correction_dict' and 'likelyhood_threshold' to our BehaviorContext. We do this by packaging them into a dictionary. " ] }, { "cell_type": "code", "execution_count": 10, "id": "dce18140", "metadata": {}, "outputs": [], "source": [ "# We first generate our custom bias_correction_dict that contains, for this example, just different random values for each of our experiments\n", "np.random.seed=0\n", "bias_correction_dict={key: np.random.uniform()+1 for key in my_deepof_project._tables.keys()}\n", "\n", "# packaging our parameters\n", "custom_behavior_context={\n", "\n", " 'bias_correction_dict' : bias_correction_dict,\n", " 'likelyhood_threshold' : 0.5,\n", "}" ] }, { "cell_type": "markdown", "id": "391f318f", "metadata": {}, "source": [ "Now we can run the supervised annotations with our new custom behaviors and add our custom_behavior_context " ] }, { "cell_type": "code", "execution_count": 11, "id": "1cc42791", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "data preprocessing : 100%|██████████| 4/4 [00:53<00:00, 13.36s/step, step=Loading kinematics]\n", "supervised annotations : 100%|██████████| 53/53 [01:22<00:00, 1.56s/table, step=post processing] \n" ] } ], "source": [ "supervised_annotation = my_deepof_project.supervised_annotation(custom_behaviors=[mouse_nose_mid_distance_behavior, mouse_compression_behavior], custom_behavior_context=custom_behavior_context)" ] }, { "cell_type": "markdown", "id": "b1f72fb7", "metadata": {}, "source": [ "Let's have our look at our new custom behaviors. Since \"is-compressed\" is a continuous behavior, it will not be shown in the Gantt plot. But we can use it as a signal overlay for the Gantt plot, just as we used the speed signal in the [supervised tutorial](https://deepof.readthedocs.io/en/latest/tutorial_notebooks/deepof_supervised_tutorial.html)." ] }, { "cell_type": "code", "execution_count": 12, "id": "9a3cc465", "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAGGCAYAAACqvTJ0AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8pXeV/AAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOydBZhU5RfGz8w23bmkiiCoIKAYGJgYmIiKin/B7u7ELlQwsFvs7gYRUWwJFaS7t3Pm//zO8o2zy8bsMrszO3N+z3OfnZ28c+fO3O++33ve4/H7/X4xDMMwDMMwDMMwDMMwjDrEW5cvZhiGYRiGYRiGYRiGYRhgopRhGIZhGIZhGIZhGIZR55goZRiGYRiGYRiGYRiGYdQ5JkoZhmEYhmEYhmEYhmEYdY6JUoZhGIZhGIZhGIZhGEadY6KUYRiGYRiGYRiGYRiGUeeYKGUYhmEYhmEYhmEYhmHUOSZKGYZhGIZhGIZhGIZhGHWOiVKGYRiGYRiGYRiGYRhGnWOilGEYhmEYhmEYhmEYhlHnmChlGIZh1HtatWolCxYsqLXn37hxo5xxxhnSvXt36dmzpwwcOFA+/PDDwO1ff/21pKWlSd++fQPLu+++W+3XKSwslJtuuklfo3fv3tKvXz854ogj5Ndff92i9efxkyZNKnXdjTfeKHl5edV+Lo/HIxs2bNii9alonUJl3rx5stNOO+n2efrpp6U+MGPGDBkxYkTYnm/ChAlyyimnlHtb165da7TPhOuzdfAduOiiiyQSLFu2TA488EDZdtttZYcddpCjjz5aVq9eHbj9n3/+kd1220169Oih3+eZM2cGbjv//PN1G7I9ym7Hjz/+WAYMGKDPOWjQIPntt98Ct9122236el6vV95+++1Sj/vf//6nr7XjjjvK7rvvLj/++GPgtpycHDn++ONl66231vu8/vrrm72f2bNnS4MGDeTCCy+s8r2z7qwHr8VzHn744fLdd9/JlsBvBb9F7j3sv//+Mnfu3Cofd/PNN0ufPn30MfyuXXbZZSHvb/ymN2vWbLP3xe9rr1695IQTTpDs7OzA7U8++aRss802stVWW8lpp52mv6fg8/nk4osvlu22204/t3322afSdb/++usDv+ONGjWSbt26Bf7/66+/JFR4b3fccUdI912/fr2MHDlSty+//VdeeWVI+7FhGEZM4DcMwzCMek7Lli398+fPr5Xn9vl8/t12281/zjnn+AsLC/W6X375xd+hQwf/p59+qv9/9dVX/h133HGLX2vkyJH+ww8/3L9u3brAdZ999pl/0qRJW/S8Tz/9tD5vMAwB1q9fX+3nqunjgmE7lrdOoXLHHXf4Tz/9dH80UVxcrEtdMX78eP+oUaPKva1Lly66j0bis42W7bhixQr/lClTAv9feumlpbbXPvvso/sgvPbaa/4BAwYEbvvmm2/8ixcv3mw78r1s0aKF/88//9T/J0+e7O/du3fg9unTp/vnzZvn32uvvfxvvfVWqfV55513Ar8f7733nj6346abbgqs27///utv3bq1f82aNYHbCwoK/HvssYf/hBNO8F9wwQVVvvey6/3GG2/4mzZt6v/+++/9NSU3N9f/wQcf6O+h2/94n5XBdh00aJA/JydH/+f9//rrryHvb/yms97lvS/2kYMPPtg/YcKEwHZr3769f/ny5bqOhx12WOA2Poudd95ZtyOMHTvWP3z48JDed3mfZaiUXf/KOOKII/x333134H/eRyj7sWEYRixgTinDMAyj3oEDg5lyZo4vv/zyUrfhgDjkkEPU/cDtOEocuBOGDBmiTgdcNq+99lqpGflLL71UH8NM9eeff663ffHFF7Jw4UK57777JDExUa9jxvyaa66RsWPHhu09sd5vvfWWPPXUU9K8efPA9fvtt1/AYfPHH3/IHnvsoS4hZv1vueWWUs4n7nfYYYfpbbzPdevWyapVq3Tm/6uvvtL1PvPMM3WBwYMH63XcpywffPCBbkMcDtxn+vTpgdsefvhh2XnnndVBEOxUYvvxGO6/5557lnIV4Iq44YYb9HZcDGXXqSxZWVly6qmnqsuCBQcZPPfcczJu3Dh588039bGzZs3abDviRGG9t99+e7n22msD2yfYZRLsNHrmmWd0ew0bNky3Hese7Ly755579P2y3Q866CDdH9xz4lzAycA6vvzyy3LooYcGHsd5N+463DS46VhfwOlwwAEH6Pqxv+Giqeq1MjMz9fPFMcE+wL5QGS+++KL0799fnTJ33313SN+Pmny2t956q5x77rmlPrcWLVroe2S74q5xsB58t3jfuEJwIJa3HZcvX67PyXecz5H3UV1XX9u2bXU7OXbZZZfAZ8r+jnPtxBNP1P957cWLFwfcM7y/9PT0ch16LVu21Pfg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jyeS2vfQznxFK/7WzowmShmGYRi1LkoxAKWdfHBo7MCBAzX7ZIcddqj0sYMGDZK+ffvKo48+GriOywxMn376aX3u4NeZN2+eTJkSQtvhCPPmm2/KI488ooPd/Px86d27two3zAzHIpdeeqmWFhmGYcQS3uQ0zZmhrIcw54Rm8eV8KMuFF14oH3zwQanrEG72228/zaQ75phjJDm5cuEuOztbpk+fLu+99542qJg9e7b8+++/2ryiLkQpXmvs2LHy1ltvSU5OjpYdVgbvr2XLltKsWTMto+X9NW/ePNBgANci93F/3WW6vmq52aYFuI4FAcddrs7/vC7usm22iXwpKSVq/pyNWiKX2KYkzLw+g0CV0DJdilcvkKJV8zcTpfLnTtfSPi35C6IgIUlSe+2lvw2UDf4n1EX+M4okia06qyjl27hS9//6JloahmEY9dApddBBB6mIBMyCXnvttXLooYfKokWLqgzxZWAYzFdffaWZE19//XUpUYr/R40aJfWByZMna8csZpQZyLJtaNfOQLxfv5pnFUQrbmbZMAwj1qAsifBkWp7HsyiFM4q8KHjiiSd0soVjdZs2barV/RG335AhQ3SBTz/9VCds/vzzT6ltXnvtNfnf//6nwpijSZMmsvXWW6tAhbsrMzNT/+KiApxgK1eu1CUa4OR+4sSJ2l02oi6pxX8EsqRixUFICLuKUqvnS3K3/pvyqET8BbkqsDgIdPc0aKZiNcHreX99Kw36HSpF6xaLFOZrZ7+Elp1E4r302eMVf0GO+POzxJPaONKrZBiGYcS6KMXsIbkQwN8rr7xSBg8eLKtXr6400BRR6o477lAhyz3+m2++keuvvz7QZQrmz58vCxcu1PtXBeUAzOaSccHfxYsXyx577KHCEDkWLgfjlltu0QwM1rFXr166HohrUFBQIBdffLG88cYbsn79ei1JOPPMMwPd0yhDwx30zjvvqBNqwIABMm7cONlxxx319vvvv7/UOiFOcV9mhp0otffee6uTjKBpBvjMvvIaOKociHo4kL744gudJWX9xo8fr+sDv/32m77HGTNm6ECV2VMGq6wPfPvtt7rO3E4OzZFHHim33357pSVAPA9uNdaVmWuyPp566in9HMm1+fHHH/V9Pv/887LVVluVW77HYP6yyy7TxzFjPHr06MBMsWEYRn0iqe1WJaLUqvmS3GWn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7NixNqO9bNmywH0uvPBCN2TIENtmQggh/gf7j99++801a9bMSpyEEEKI3EailBA5QKJU+PHEE09YMOVPP/1kFvPHHnvMzZo1y7377ruucuXKgdu9+uqr7tZbb3W1a9c2S3ixYsVcJLp/du3aZeLJuHHj7HXs3r3bWhcjtqxYscKsrxs3bjSRideIEEUb5dSfY4QpWh1z/fr1680x9Pjjj4etC/DTTz91V155ZYq8iX79+rnOnTvb+/zdd9+5l19+2S1evDhwG0Srjz76yESn1AdZ//3vf+1zg4CFKHfttde6N954IyI/F0IIkRewf+nVq5f7+OOPXa1atWyfo7JnIYQQuY1EKSFygESp8GLNmjWuTp06Jrq0b9/exBkGzXDTTTe5N998084zoL7qqqsC93vuuefcnXfe6cINXscvv/xiotqIESPcokWLLAMJZw8BnLy+vObf//63iTXkSOQn69atcz179nRXX321O++881yDBg3cypUr3ZlnnmldcYLFp2BwgCE8tmnTxj3zzDP2+ciMb775xl100UUmVJEd8euvv9qOMbuQH/LVV1+5OXPm2DZDOPMDWoUQItIgWwexn30OeXxJSUmB65j0efDBB/N1/YQQQkQfiSrfEyL7SJQKL+644w730ksvpbiM0i4G05RtIVAh6Jx44olu7969rl27dtZeGIfQwoULA11VcBYhBuGoQcjaunWr+89//hNoSZzXUHL24Ycfutdeey3b9dS4g0466SRbRxxBzZs3d61atTKnDyUWOKZwQdE6mYXLOYUdO3aYwOWLXIR+I+B88sknJs6QsYQolttBojnhrrvucs8//7zNyl933XXmbKLsEqEOp9gXX3zh3nnnHTd79mx7v3gv77//fte9e/ccv28//PCD5U/hGOOzMmrUqGyVM/I5Q4RCyPJhO1922WX2WeN9aNSoka2bhCohRCRw4403mtPYp169ejYxgBOV32NKnytVqpSv6yiEECK6SJQoJUR4iVIIFGThIA4gkgQLCQgXuEBwf3DAmxdtcSOFMWPGuLPOOsvEpg4dOlj5Gtvkzz//dH379rXsIUQMthvC1Lnnnuu+/vprd9xxx7kZM2a4Sy+91A0ePNgEDe5PGRflCX73lZo1a5oDhtv7jpjgHKbcYtiwYe6SSy6xsjzgNXTq1MmcPm3btrX1p9QOYYOlTJky9ppLliyZ6+szZcoU161bNxPGKHV85ZVXXH45xmrUqGEz9sHg4MI9lRfgvmrdurVtb1wCjz76qG3rH3/80W3fvt1VqVLFHANkqyDWHX/88W7AgAGBcpYrrrjCtt/UqVPTffxbbrnFbq8uPkKIcM7t47eN8QeTFORIMeEBXM71TGAwaSOEEEIUJFGKnaMQYQEfx8mTJ+fZ4//6669eyZIl7XlYOnbs6P3www/el19+6bVo0SJwOUuxYsW8n376yStofPPNN94xxxzjFS1a1LbDueee6yUlJXmvvPKKt2TJErvNokWLvPr16we21Yknnuht3brVrvv777+9mJgYu/zNN9/0TjvttBTblSUhIcFOixcv7r300kte586dvbJly3qjR4/Otdfx2Wef2evwn/PYY4/13n33XW/Pnj1efvL111/b+jRq1Cjf1uGrr76ydahYsaJt97i4OO/pp5/2Dh06lOev3f9sZHdJTEz0ZsyYYfdn/caOHev16tXL69atm9eqVasU3+cnnngiz1+DEEIcKb1797bfqssvvzzNdeyfuK5u3bpecnJy4DJ+69jnHinjx4+3x7jqqqu87t27e3fddZe3atUqvYlCCFGAqF69uhfuqPueKBBOqd9//92cP4Quk22DWozDJ5iKFStabg15O76DBifHKaec4goKbHvfjYKjiNefXvAqzqMXXnjBnEc33HCDlfP5PPTQQxbq7YPriFIxsqZwp5GZgXuJkr5gcMjgyMJRFUxycrLlHfnOHhxMLDynf3716tVWMsi6zpw500ohfFg/ytPi4uJcfkNJH44sXhNlGqlfayg47bTT7Ptwzz33WJg537tQlYvgmMMlRXA+Ib9kWNWtW9cyrHBwnX/++W7Lli1u5MiR5iYggB33YmbgkKIDIJx66qnu888/TxHCL4QQ4UCLFi1s/4RL+F//+leK6/g9xH2Mc/Stt95y06dPd6+//rpdR7kyLmX2ebiN+d3GHXr66aenKJPGcYoD2Ifb4kamFDoYHOK9e/e2x8mPfZAQQojQkiinlBD575TauHGjV61aNXv8f/3rX97evXu9KVOmeGeeeaZ33HHHmdPnkksu8ZYuXWq337dvn3fqqacGHBg33HBDgXBgrFu3LvCa//zzz8BsbU7hfldffXXADZWeA2r//v3eq6++6jVv3tzr0KGD17Bhw8Bz85588MEH3rff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dx1dMqdMmeJq1659RM8nRG5BMDljNZxQPjjbyeRs2LChjdOItEF8wlVI6Wl+Tx4mRoAope57QgghRJjAIB2wf6eGgzkEKVwGOKQkSAkhIgUEKLJV6FaKY+rjjz927777rnv88cctd4pGD1xO91EcOMRCkGdEDl60gthD1zm6adG1mmoJDmaTkpJc8eLFc/RYCE08HgefHCzzuICIg0uDiQyYOnWq3RYRKzWUefvvFevEe0PpHtlO7JPoFEYZOO423FennXaalWXiBDkSVxeCFI4sRMmM4HOAi4q293Ss5XkR2fID3DDLli2z7uWIEnQwx93FZeToktXFtjj33HNNtMtJrq6IDOhsfN999wUEKUrw+F7wOZCwfnRIlBJCCCHCTJSio17wgcnYsWPdgAEDAoP5glzqLYSIXHAMIECxdOrUyVyh5ByxBEOp1q233moHezfeeKPl5EUbTDT47eD9bfPII4+YcwgBD9EOtm/fbk6hzBg+fLidnnfeeVb6TXAypd44ooInMBCbIDNRCreUn9+E4yp4HYFGHOeff74JVfXq1bPnQkAkPwdB8aSTTspSqELYAQQuchAzAmEH4YvO3HQsw4XC+rBvxG3FtmG/iSuMJkuIbwgFviDEfhRnHgtCAoIWLmPW02/6wX3I+YHg3Coahfz6668miNG57McffzTHsg8CX3pNSehky+PiTiMPC6cM6y+RKvLp06ePNQvgvaVTsv+5EUePgs5F2KDyPSGEcCY4MQD+448/LNCcspcTTzzRDtquv/76wIGKEEJEOjijhgwZ4hYuXGjhvyyIBhzYk53njw8RHHCmRBMIMnRSBcrgggUPIIgcMYUgZUS8119/PcMudNwWd1R62UzBIHpRKte7d2/LwwkG0QdBh31QVqU+5D2xP+K9Sg2v5Y033gjkRaVHt27d3Pfff28urB49erisYGKGfCzyybICEQ6hCsEK4Yx9aHbgdeNwooyR52F74H4KBlEPoQvRFBFx3rx51qAE8Y4mIpQY4kzbsGFDivshhvXq1cu2fX45vcTRgRuO95myPD7/OW3olZ8kqnxPCCGEEDmBwTRhtX/++aeJUl999ZUJUswMP/HEE9qYQoioAbcK5S/B4Iq688477TcQIQJXDS6caBOl/HBkRAzK7Fq1amUiCPk0TEwgePhQcocDaeLEia5+/fopHoeybgQpyoco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AN9NNHLkSCvniwb8bnT56ZSaNm2a+/rrr+38pk2b7JT8Lj/DKzeIjY01URFB8fPPP3fVq1d3y5cvt+vklBJC+BTyoqm/qohoGGhg883NnaEQQgghhIhsV1FSUpKLRqpWreoKFw5t4cquXbvSdN7zYV1Yp9xk/fr17uDBg2ku15hfiNCwdu3aQPlsuCJRSoQF+/btc/3793f33nuvK1q0aH6vjhAiF9D3WojoRN9tIaITfbeFiD72RcBxtkQpERZQ116mTBmbufFtxUKIyEbfayGiE323hYhO9N0WIvrYEQHH2Qo6F0IIIYQQQgghhBAhR6KUEEIIIYQQQgghhAg5EqWEEEIIIYQQQgghRMiRKCXCAkLXHn744bANXxNC5Bx9r4WITvTdFiI60XdbiOijaAQcZyvoXAghhBBCCCGEEEKEHDmlhBBCCCGEEEIIIUTIkSglhBBCCCGEEEIIIUKORCkhhBBCCCGEEEIIEXIkSokMef31113t2rVdsWLF3AknnOAmTpwYuG7v3r2uT58+LiEhwZUsWdJddNFFbv369VluzS+++MI1btzYHrN58+Zu6NChKa73PM899NBDrmrVqi4+Pt6dccYZbuHChVk+7u+//+6OPfZYC3CrX7++e//993P0eoQoKETT95rXUahQoTQLr0GIgkakfLfXrl3rrrjiCtewYUNXuHBh169fvzS34bue+nvNOghREImU7/bXX3/tzjzzTFexYkVXunRp1759e/fLL7+kuE3//v1d27ZtXalSpVylSpXcBRdc4ObPn5/jbSJEpBMp3+s///zTnXjiibYu3IfHf+mll3L0erKFJ0Q6DB482IuLi/MGDRrkzZ492+vRo4dXtmxZb/369XZ9r169vBo1angjRozwJk2a5LVr187r0KFDptvyr7/+8mJiYrxnn33WmzNnjvfAAw94RYoU8WbOnBm4zdNPP+2VKVPG+/bbb73p06d7559/vlenTh1vz549GT7ukiVLvOLFi3t33HGHPe6rr75qz/Pzzz9n+/UIURCItu/1hg0bvLVr1waW4cOHe+zWRo0alSvbS4hIIZK+20uXLvVuvfVW74MPPvBatWrl3XbbbWlu895773mlS5dO8f1et27dUW0jISKRSPpu811+5plnvIkTJ3oLFizw7r33XnvcKVOmBG5z9tln2/d71qxZ3rRp07wuXbp4NWvW9Hbt2pUr20uISCCSvtdTpkzxPv30U/vOsv/+6KOPbHw+cODAbL+e7CBRSqTL8ccf7/Xp0yfwd3JysletWjWvf//+3rZt2+xD/sUXXwSunzt3rh0Mjhs3LsMteskll3hdu3ZNcdkJJ5zg3XTTTXb+0KFDXpUqVbznnnsucD3PVbRoUe+zzz7L8HH/85//eMccc0yKyy699FLb8WXn9QhRUIi273V6A+J69erZcwpRkIik73Ywp556aoaiFANnIQo6kfrd9mnatKn36KOPZng9k0us7+jRo3P0uEJEMpH+vb7wwgu97t27Z+v1ZBeV74k07N+/302ePNksfT5Y7Pl73Lhxdt2BAwdSXI+Vr2bNmna9Dxa+Rx55JPA31wXfB84+++zAfZYuXerWrVuX4jZlypQxC2Dw43bs2NFde+212X7crF6PEAWBaPtep/f6Pv74Y3f99ddbqY8QBYVI+25nl127drlatWq5GjVquG7durnZs2fn+DGEiGQi/bt96NAht3PnTle+fPkMb7N9+3Y7zew2QkQTkf69njp1qhs7dqw79dRTs/V6sotEKZGGTZs2ueTkZFe5cuUUl/M3H2aWuLg4V7Zs2XSv96lXr56rUKFC4G+uy+gx/ev9yzJ7XL6U1MJm9bg7duxwe/bsyfL1CFEQiLbvdWq+/fZbt23btiM6+BUikom073Z2aNSokRs0aJD77rvvTGzm4LZDhw5u1apVOXocISKZSP9uP//88yYuX3LJJelez/eaTDnyapo1a5bpthAiWojU73ViYqJlvB533HGWd3XjjTdm6/Vkl9hs31KIHDJixIg82WYffvih3gsh8olw/V6/++677pxzznHVqlXLtXUSoiARTt9tApJZfBCkmjRp4gYOHOgef/zxXF5DIaKb/Phuf/rpp+7RRx81YZlA8/TgwHbWrFkWpCyECO/v9ZgxY0xkHj9+vLvnnnusAdHll1+ea88rp5RIA6prTExMmpR//q5SpYotWPVwJaR3fUZwXUaP6V/vX5Ybj0vnD7oEZPV6hCgIRNv3Opjly5e73377LTBrI0RBItK+20dCkSJFXOvWrd2iRYty9XGFCGci9bs9ePBg2x8PGTIkTTmRzy233OJ+/PFHN2rUKHNgCFFQiNTvdZ06dayjX48ePdztt98eKB3MreNsiVIiDVgG27Rpk0KBxWLL38xcch0DxODraee6YsWKFDObqeG61Kru8OHDA/fhw86HN/g2lOpMmDDhqB43q9cjREEg2r7Xwbz33ns2E9u1a9cst4MQ0UakfbePBEoDZs6cmeMyQCEimUj8bn/22Wfuuuuus9P09sk02UKQ+uabb9zIkSPtuYQoSETi9zo1rO++ffty9zg7R1HrosBAa0fS+N9//31rK9mzZ09r7ei3ZKZVJS1cR44caa0q27dvb0swnTp1sjbuwa0qY2Njveeff966CDz88MPptqrkeb777jtvxowZXrdu3dK0qrzqqqu8e+65J03r+Lvuusse9/XXX0/TOj6r1yNEQSDavtd+hw/W+e67786TbSZEJBBJ322YOnWqLW3atPGuuOIKO08baR+6df3yyy/e4sWLvcmTJ3uXXXaZV6xYsRS3EaIgEEnf7U8++cQel/312rVrAwsdvnx69+5tnTV///33FLdJSkrKs20oRLgRSd/r1157zfv++++9BQsW2PLOO+94pUqV8u6///5sv57sIFFKZAgfdL4QcXFx1upx/Pjxgev48N58881euXLl7MCR1pDsVIKpVauWfSGCGTJkiNewYUN7TNq9//TTTymup13lgw8+6FWuXNk+3Keffro3f/78NC2kr7nmmhSXjRo1ymvVqpU9bt26da2ddE5ejxAFhWj7XnPgyvxK6scToqARSd9tvrOpF57fp1+/foHXwmN36dLFmzJlSq5sJyEijUj5bvN3et/t4Nukdz1Levt3IaKZSPleDxgwwB6L9ShdurTXunVr77///a9NCmf39WSHQvyXfV+VEEIIIYQQQgghhBBHjzKlhBBCCCGEEEIIIUTIkSglhBBCCCGEEEIIIUKORCkhhBBCCCGEEEIIEXIkSgkhhBBCCCGEEEKIkCNRSgghhBBCCCGEEEKEHIlSQgghhBBCCCGEECLkSJQSQgghhBBCCCGEECFHopQQQgghhBBCCCGECDkSpYQQQggh8oBrr73WXXDBBSHftu+//74rW7ZsyJ9XCCGEECKnSJQSQgghhMghhQoVynR55JFH3CuvvGICUai59NJL3YIFC47qMX7//Xd7Hdu2bUtzXe3atd3LL7+c4d8+bINWrVpl+jzcl+cZPHhwmuuOOeYYuy54G+b09unx9ttvu5YtW7qSJUuaeNe6dWvXv3//wPVJSUnu3nvvdfXq1XPFihVz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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Let's retrieve the speed of the black mouse from our supervised behaviors\n", "speed_black_mouse=supervised_annotation[\"20191204_Day2_SI_JB08_Test_62\"][\"B_is-compressed\"]\n", "\n", "plt.figure(figsize=(12, 4))\n", "\n", "deepof.visuals.plot_gantt(\n", " my_deepof_project,\n", " \"20191204_Day2_SI_JB08_Test_62\",\n", " supervised_annotations=supervised_annotation,\n", " bin_index=\"00:00:00\",\n", " bin_size=\"00:00:30\",\n", " signal_overlay=speed_black_mouse,\n", " instances_to_plot=['B_W_nose2nose','B_W_nose2nose-mid','B_stat-passive', 'B_stat-active', 'B_missing'],\n", ")\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "798f83f2", "metadata": {}, "source": [ "In this plot we can see now how, as expected, the nose2nose interactions are usually surrounded by nose2nose-mid interactions. An exception is the second nose2nose interaction as the mid-range interaction after it is missing. Looking at our signal-overlay, we can see how it is also set to 0 at that position, meaning that the tracking accuracy of the nose (or tail base) of the black mouse is below our threshold in that region. Furthermore, our \"compression\"-signal is lower in genral in the last third of this Gantt-plot section and also dipping to 0 a few times.\n", "\n", "Based on this we can conclude that the black mouse is likely in a hunched or crouched position in that section of the video, which makes tracking-errors or -failuers of individual bodyparts more likely. Whilst the mouse is not missing in it's entirety, it is stationary and it's bodyparts are so close together, that some of them are not detected all the time." ] }, { "cell_type": "markdown", "id": "4e5fa105", "metadata": {}, "source": [ "A brief check at the corresponding video between seconds 15-25 reveals this to be the case" ] }, { "cell_type": "markdown", "id": "cebb6729", "metadata": {}, "source": [ "![custom_behaviors](./Assets/custom_behaviors.gif)" ] }, { "cell_type": "code", "execution_count": 13, "id": "398d350f", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'\\ndeepof.visuals.export_annotated_video(\\n my_deepof_project,\\n supervised_annotations = supervised_annotation,\\n # Time selection parameters\\n bin_size = \"0:0:10\",\\n bin_index = \"0:0:15\",\\n precomputed_bins = None,\\n frame_limit_per_video = 1000,\\n # behaviors and experiment\\n behaviors = [\\'B_W_nose2nose\\',\\'B_W_nose2nose-mid\\',\\'B_stat-passive\\', \\'B_stat-active\\', \\'B_missing\\'],\\n experiment_id = \"20191204_Day2_SI_JB08_Test_62\",\\n min_confidence = 0.0,\\n min_bout_duration = None,\\n display_time = True,\\n display_counter = True,\\n display_arena = True,\\n display_markers = True,\\n cluster_names = None,\\n)\\n'" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# You can recreate this video via:\n", "\n", "'''\n", "deepof.visuals.export_annotated_video(\n", " my_deepof_project,\n", " supervised_annotations = supervised_annotation,\n", " # Time selection parameters\n", " bin_size = \"0:0:10\",\n", " bin_index = \"0:0:15\",\n", " precomputed_bins = None,\n", " frame_limit_per_video = 1000,\n", " # behaviors and experiment\n", " behaviors = ['B_W_nose2nose','B_W_nose2nose-mid','B_stat-passive', 'B_stat-active', 'B_missing'],\n", " experiment_id = \"20191204_Day2_SI_JB08_Test_62\",\n", " min_confidence = 0.0,\n", " min_bout_duration = None,\n", " display_time = True,\n", " display_counter = True,\n", " display_arena = True,\n", " display_markers = True,\n", " cluster_names = None,\n", ")\n", "'''" ] }, { "cell_type": "markdown", "id": "6b176018", "metadata": {}, "source": [ "### Using ROIs with custom behaviors" ] }, { "cell_type": "markdown", "id": "dad30657", "metadata": {}, "source": [ "The ROIs are among other things you have access to, when defining a custom behavior. Respectively, you can e.g. detect if a mouse is entering a specific ROI. For this let us borrow two polygon functions from DeepOFs utils: point_in_polygon_numba and get_point_polygon_distance_numba" ] }, { "cell_type": "code", "execution_count": 14, "id": "bcf18c4b", "metadata": {}, "outputs": [], "source": [ "from deepof.utils import point_in_polygon_numba, get_point_polygon_distance_numba " ] }, { "cell_type": "markdown", "id": "0942fc61", "metadata": {}, "source": [ "Then we define our behavior core function as follows. To make this into an actually usable example, we have to consider some edge cases and do some smoothing and polishing:" ] }, { "cell_type": "code", "execution_count": 15, "id": "0cbb8187", "metadata": {}, "outputs": [], "source": [ "import pandas as pd\n", "\n", "def mouse_enters_roi_1(ctx: BehaviorContext, mouse: animal_ids):\n", "\n", " # we get the usual context information, this time also the speeds dataframe\n", " a = mouse \n", " pos_dframe = ctx.raw_coords\n", " speed_dframe = ctx.speeds\n", " likely_dframe=ctx.likelihoods\n", " m1_nose = ctx.bp(a, \"Nose\")\n", " m1_center = ctx.bp(a, \"Center\")\n", "\n", " # We use the coordinates data_frame and roi 1 from each experiment\n", " roi_polygon = ctx.roi_dict[1]\n", "\n", " # We convert our nose coordinates to a numpy array\n", " pts = pos_dframe[m1_nose].to_numpy().astype(np.float64)\n", "\n", " # We detect all frames in which the nose of the mouse has been inside of the polygon\n", " inside = deepof.utils.point_in_polygon_numba(pts, roi_polygon)\n", "\n", " # We get the speed of the center and tracking accuracy of the nose\n", " speed = speed_dframe[m1_center].to_numpy() \n", " nose_likelihood = likely_dframe[m1_nose].to_numpy()\n", "\n", " # In case of gaps in the tracking, we fill inside with the neighboring frames\n", " tracking_gap = np.isnan(pts[:,0])\n", " inside = (\n", " pd.Series(inside)\n", " .mask(tracking_gap) # set frames at tracking gap frames to NaN\n", " .ffill() # fill from previous confident frame\n", " .bfill() # fill any initial NaNs from the next confident frame\n", " .fillna(False) # in case *all* frames are low-confidence\n", " .to_numpy(dtype=bool)\n", " )\n", "\n", " # We detect entering events i.e. inside now AND outside previous frame and exiting events as the reverse\n", " prev_inside = np.concatenate(([True], inside[:-1]))\n", " entering = inside & (~prev_inside)\n", " exiting = ~inside & (prev_inside)\n", "\n", " # We ignore entries where the mouse is stationary or where the nose tracking accuracy is poor\n", " entering &= (speed > float(ctx.params[\"stationary_threshold\"]))\n", " entering &= (nose_likelihood > float(ctx.params[\"nose_likelihood\"]))\n", " exiting &= (speed > float(ctx.params[\"stationary_threshold\"]))\n", " exiting &= (nose_likelihood > float(ctx.params[\"nose_likelihood\"]))\n", "\n", " # We ignore entries with multiple entering or exiting events in close proximity. For this we first count events within a 1 second window\n", " win = int(np.round(ctx.frame_rate))\n", " events = (entering | exiting).astype(np.uint8)\n", " event_count = np.convolve(events, np.ones(win, dtype=np.uint8), mode=\"same\")\n", "\n", " # Then we keep only isolated events\n", " entering &= (event_count == 1)\n", "\n", " # We widen the entering events, to make them a bit more noticable\n", " entering = (np.convolve(entering.astype(np.uint8), np.ones(win, dtype=np.uint8), mode=\"same\") > 0) \n", "\n", " return entering" ] }, { "cell_type": "markdown", "id": "ff4c0105", "metadata": {}, "source": [ "We define the behavior as a single-mouse binary behavior and run the supervised_annotations with it" ] }, { "cell_type": "code", "execution_count": 16, "id": "14844205", "metadata": {}, "outputs": [], "source": [ "enters_roi_1=DeepOF_behavior(\n", " name=\"enters-roi-1\",\n", " scope=Behavior_scope.INDIVIDUAL,\n", " output_type=Behavior_output.BINARY,\n", " compute=mouse_enters_roi_1,\n", ")" ] }, { "cell_type": "code", "execution_count": 17, "id": "9568c769", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "data preprocessing : 0%| | 0/4 [00:00