{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Label neighbor filters\n", "\n", "In this notebook, we demonstrate how neighbor-based filters work in the contexts of measurements of cells in tissues. We also determine neighbor of neighbors and extend the radius of such filters.\n", "\n", "See also\n", "* [Image Processing Filters for Grids of Cells Analogous to Filters Processing Grids of Pixels](https://www.frontiersin.org/articles/10.3389/fcomp.2021.774396/)" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import pyclesperanto_prototype as cle\n", "import numpy as np\n", "import matplotlib\n", "from numpy.random import random\n", "\n", "cle.select_device(\"RTX\")" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAARAAAAD8CAYAAAC/+/tYAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAAsTAAALEwEAmpwYAAA0c0lEQVR4nO2de9xVU/7HP6ty6TZ0QaVUSC5DftWgiAyGFIlRMZREoZlkJGGahAyNpEaoRpJLyZ2UW0RjKmIKpRQqKSVFhCTr98c567Se/ezLunz32XufZ71fr/N6ztnP3t+9nOrtsy57b8Y5h8PhcJhQKekGOByO7OIE4nA4jHECcTgcxjiBOBwOY5xAHA6HMU4gDofDmNgEwhg7jTG2jDG2gjE2OK7zOByO5GBxrANhjFUG8DGAUwCsAfAOgPM450vIT+ZwOBIjrgRyFIAVnPNPOec/A5gKoHNM53I4HAlRJaa6+wL4XPq8BsDRQTszxoxiUKXG1UwOK0PTbw62ruHHV5W2xlJ3t+0/k9bbe7fVpPVkftjWmLRe1cpfk9b7vuZ2bPrxILJ6lX7ZRFZLpupPP2LXX3aLpXaN3daU27Z2G/DNL5ypHB+XQPxOXkYSjLE+APrYnKT63+z/8Y985r/WNfwYV3V+LHWbbCj/B27DgKZXkNaTefuTEaT1jqgzmazWvBPWAQAe/fBVsprVNzxKVkvw24/eL7zfb/MB5PXbNBlYbtsFS9WPj6sLswZAI+lzQwBr5R045+M55605561jaoMjgjcq9UWXVTuSbkbREfIAgPN/e3KCLQlHlgcArK71CWl9P3noEpdA3gHQjDHWlDG2K4DuAJ6L6Vyp47anLk+6CVrEIRF+9+v43cz9yevGAZVE7v38GpI6YVBLxJZYZmEAgDF2OoC7AFQGMJFzPjxkX6NG1JzQ0qxxEg8RdmH8xFHrTxeR1QfsuzBvVOobuc/TjSsb1+d3v15u2zsdPjWuJ2PbhZGTRxAmXZrJ7+7ru/3yRv/UriXwpo8gTLs1YenjgqXAkq1qYyCxCUQHXYHUmvjnctt+2WEmAgqBRCUOSonYCERFHgIdifhJww8bkRRDHgJdiQQJRKArElV5CHQlEtV10RFIplai1pr4Z195AECVym216xVDHgCw+ZFJ1uexRUcegHq3RlUeAIy7NAftMho/bdlceOmiIw8g2XERXXkAet0ainEPmcwIJEgcMjoSWfxhc7Q8sFfhZUISYx0r926ofYyuPFTRkYdAVyIH7TK63DZTkeigKpGo9AGoj42YyEOQ1NhIqrswKtIIIqpLs/jD5r7b31vxgFJ9E3lQdWUGjBuOZ7r0VNqXQh5B3RkTgQhUujN+8vBj99/UCv29bgKRCevOqMjDj6AujY1AZIK6NKrpI/NjIDbi8OInkiB5hOEVi2n6sJXIgHFlx6LDREKZPGSJ2IjDS5BIVOUh4ycSG3kI/CRiKg+BVyJU8hD4SSQOgcS1kCw1VKnctoxETOQBAC0P7IWuI3a3bs/mRyYZScQrDsFZTz9YeK+aSkzosmoHnm5cmVQeXkykISN3a6JSiQ228gBy3RqbWZooVtf6JJaFZ15Sl0Ao04fMokU0y6ApJAKoJZEgaUTxTJeesYx7PPX8m+Q1AeDbM6+Mpe7CM34iqyVSCIU8ZC5v9E/y9CEjJKIzeJrJWZiwGRZbqOQBANMG0f2lDMNUHkDZVOKg4fzfnkwuDyD+xWera32Cx584Ibb6qejCVG68V9JNSA024pAZ9WRbXHVOPNf5OLLD/AkXx1o/NQmkouFdGzJg3HAyeTiyQ7fqF8ZWW5bHX+94J5ZzOIEkyOvbjim8HBWXN/ehr+mXPOKQSCoE0uTbPZJuQtFZ+Mf7ynzufNHzCbXEocKLl9QjrymnD0qJhHVbqCWSCoEAwAPTT026CYmTdoksH9Yq6SZoceTzNDNmQh4D5pxIUi+IN/cxF8n8CRcXXlFQSiQ1AgHik8ivm/rFUtcUb/qQcRKhY3MV8/GFFy+pV3jJDJhzYuFlQ9jYhxBJHF0bAZVEUiUQgFYi/3u9O/73encAdBJpfmAzLBrfKHpHC9Iokdtb77xF4/JhrVIvEiGPxjMv1T5WtbtiKhGdgVMViZjOtFBIJBULyQ6s1YyP/P0o39/16vSSdj0hjSAq1R6rVa/5gc1Cf9+iz+ehvxeEJQ8vz046Q3lfL+9eeojv9oc33a9dSxaHKs2Gvhu5zyPvlr8RXadhx2qfSyYqcazqMKHcNqqxjbvaRa/QpZpx2e0W2qnZOwf+rsznTC4kCyKObo1OGomSBwClRKIjDxuC5AEAF9TurVXLRB7AzoQSlFL85AEA04e+helD39I+3+YqFyp1V0zSiCoU3RpVtv1tImk9mySS+gQiUE0iUelDJiqJqMjDi18aMZWHbgoJk4cfUYnEVCBe5EQSJI8gwlKJzRgHAIx7Mp6uol8aoV7vEWcKKakEIghLImKsQ0ceQHgSMZEHkEsjVGMkOmMhuvIAwhMJlTyAnYlEVx5BqCaOpChWEqHENIVkRiBATiJekehKw8uvm/rFOktTjK6LiTwEF9TuXU4klPIQvN1J6X9o5RDdGiGNNItDRpZInKtNKTGRSKYEIvi02ujCiwpZJKbpQ2bR+Eapl4eMkEgc8qioVIQkkjmBnND19FjrU8iDkrBuDJU8BE4e9GQlfch83lD971WmBBK3PNKKn0So5ZF23rrhsqSb4PAhFZfzRxEmjj06tsG3L8wtYmuSQUjk77sMiu0cfV9ajXGn7hdbfUf6qbXmXFT5eW30jnlSn0BUUsceHdsUoSWlzd3Lc3es6vtSfA/bThO9m1yBt6+emXQzUkWtNedqH5NqgVTULksQrbZfghd+oH8CvJBHRaF3k/geKO7l5E8HFO1cNpjIA0ixQJKSx3n3VE/kvGG02n4JWm2/pPCZUiJ+8ijlFOKVx9tXz4wtiRx20B2x1KXGVB5AigWiC0U35qYFuWXU591TnUQkRx4827qGLA4ZColUtOQRBqVIDjvojjLyoE4hh/e+AQd9Vh8HfVbfqk6tNedayQNI6SBqsdOHEIeX8+6pjilX6E9ttli9c/m1kMjCpe216wTJI2uYLiKjRqXrIiRy1MgO2vXDEsfJnw7Aq/vfpV1T5vDeN5TbdtBn9fFxU/Vn39gKw0sqr4UxFYjubEyQOLyoSkQWhx86EtGRR8dqtZX3BdSTB8WMTKMpHwEAnnzkUOtaF9d8FACwbPAW7WNNxj1UJaLTVdGRiJ8wggiTiK40Zv99LTZ/ti07T6aTBWKbPlQloioPGa9IooThh4pETJKHikR0uyy2AhHyENhIRMhDRlUktoOmQSIxHeOIkoiOOLwIkdgkjUwKZMF9y0hqhQnERBp+LOl0pHUNr0gouyuyTCjGOaJE4hWFCqoy8ROHDsfdd4HV8TK9nl9MVgvYKRIbYXj5apfjrGtkTiD/d0Br/vqtb5PV85NImuQhs3Bp+1jGOj774lbSen4SMRGHjIpE0iIQankI1g+nn/WzlYiOQEpmFiYMKnnEQRYHShtN+chaHgBwzp+WELTGIUORQHQoeYGkWR5ZhEIcMmESsU0fjvgpaYE4edDR96XV5PIQ+EnEySMblKRA9ujYxskjY8gScfLIDlYCYYytZIx9wBhbyBhbkN9WmzH2CmNsef5nLZqmliYvNGuSdBNSwzl/WuLkkTEoEsiJnPMjOefihpeDAczinDcDMCv/2eHDiz/9B4CTiCO7xLGUvTOA9vn3DwKYDeDaGM5TniY7H1I98oHcz6t7/bEop9ZFyEMgJNJx+criNyaCp4d8BgDYlv+821V7x3Ket1ZMBQCcvuTgWOqniW+nbAQA7I6N+OnTxgm3xhzbBMIBvMwYe5cx1ie/bR/O+ToAyP/0/dvGGOvDGFvAGFuwcctXls1AGXnIjHzgCfvaeajWgHjlIfNCsybWiYRyDYiQh8y2URvI6guEPABgxqFLyeunmd33X5V0E4yxFcixnPOWADoA6McYO171QM75eM55a85567q/2cuuFQHyEIx84InCy5TLdt2MMS9HP30sijB5ZIk4JCKTJonUa/01Zg6jeYIdsDN9yFBJ5Op3zyOpowrZSlTG2I0AvgdwKYD2nPN1jLH6AGZzzpuHHdusaR0+emjuGpi2VR/UO3GEPIJQ6dpctuvmwN/1/4P+Hbd15WHSnYk7fchQdWXk9OHFtjtT87HcCtoWm5X/3wYgJw0/Ogz90qo9gL9AvOh2a3q8X/4haSNbTdGqISjKUnbGWHUAlTjn3+XfvwLgJgAnAfiac34bY2wwgNqc89AbecoCUaEgGUN5ANECCZOHQEcipsnDRCKH/Ks9AGDG2X8wOqcgSiACW5GECURGVSZCGkFEySRIHjI2IlERiEBFJH7ykNEVSbEEsj+Ap/MfqwB4lHM+nDFWB8A0APsBWA3gXM556N1vtAVyCM2Fd0B5kaiIQ0ZFIrbdFh2JCHl40ZWJqjwEphJRlYcgSiJR8pDxikRFHDImEtGRhyBMIlHyEOhIJHMX0yUpEABY3vckq+PDJEI55hElkiB5ROGVi648BCYS0RWIjCwTHXHItNh8vLY4ZHQkYiIPGSESVWnIOIFIUAsEsJeIwCsT6kFTP4mYisOPS/9n92AtHYnYyEPQbahdN+3UAw6zboOKRGzlIej6zHTrGlEyKXmBAOlLIV4OOn4X0npeOi5fSSoOGVuJyAQJhUIegL1AABqJAMEioZIHQCMQQZBIKsTl/P/9KHRip+SJSx4OcyineosBxZRvZgXiyAZ+60Wo0kcaqWgScQJxxI4skVKWh0CWCGX3JS5sJOIE4igK20ZtqBDyEMwcVi8T8rDFCcThiIHfTRyA7YP/nXQzlDFNIU4geU7a9cKkm+AoEX43cUDhfZYkMmTfv2DIvn9B/V3Vp+KdQADs95dJAJxEHPbI8sgS1c6sa3RchReIkIfASSQeqm7cgXYPnJB0M2IlSB5ZSiG6pPLZuHHjlYaXk3a9ELN+fsi4/pU3XVd4P/NV2ie0z9yRu/zopFHArKuuIq0dB1U37ijzWUhkTq83kmhOGUYvnQ0AOD3/UzCjYz+tOiqpQ5bILrfpP8rjoj8dnn+X+/nDuf/QruHFNHXIVCiBRIlDRlcisjRkOpycezKcjUiENLycNGpUaiXiFYeXJEUy2iMML6e/MFZbIjpsH/xvZYnsFEdZqj1+nZVEKOQBZHgpu0BlSbuOOPwIE0mQOPzQlUiQOPygEMkrpzxS5vO0ETca1YmShxcbiegsZY8ShxcVidiMefhJJEgYQZhIJEoeF1w+CkuWfV7a18IAQKUTvwMAHPPl2sB9bOUh8EpERxwyqhLRkYfAVCJeccjoSkRXHgJTiUQJRFcafgSJhGLAVEhEVxxeVEWikjxKXiBCHDJ+EqGSh2DWzw8Zi8NLlEhMBAKoSyRMGl5UJWIqD4GJRLq9OBuY638XNgp5CGSJUM+0XPr5aLJaYSJR7baUrED8xCGY1q4d7nz8scJnankAwG//1pC8piwSU2l4CZOIjji8hInEVh4yKiLp9uLs8hslkVDKQzCjY79YpmkpBQL4S0RnzCPzAgkTRRDT2rUr8/mJeh2s2yUThzxue6R8zbV1aW7xL0vERhp+yCKhFIeXOb3e8BdFBKMfsL/E34+v1i+PpS61QICyEtEdMNURSOrWgVDIAwD++OVMiubEhp88KDlp1Ci8csoj5PIAgK6DbkTXQTfGKg8gIGU4lKj2eK6rTTXbEkQqBMJq7kClE78jk4fgj1/OTL1IvDTYmN1nhFDSoP4w42Ov7PUyYUuyy/Af458iT4VAbOg6Z07STdAmKn1UdInYyMOR44ZOp+V+PvZkrOfJvEBUyFoKcdhTkVOIkEfhc4wSybxAwrowMmmRSNxjH474uPJ4s7vVFxOvPOIm8wLRIS0SUaGid2PSxvnNc4kmzRIJk0dcKaRCCQQwk0gcU7hZZ+A3bfHG9bOSbkZREPIQpFkiYcQhkVQIhGMPo+NUuy9ekkoipdJ9GfhN28L7NEuEYhzEK49CbSKJvPp3modhq3ZdqCWSCoEAwC+Vi9t3UyXJ9JHGbowsD0FaJTLpff0HoAM5aYhXGDYSefXv5xXk0W3CPOM6SZOOlahHNOajZuy8xqTKjheVjjNNIDJRK1apBGKaPmxWptba82oAQN9Hze9tAvhLw48TbrV/OBfFFK6fOL59N/hBX1GiiGL0m02V91VNHI9dqvbgeNNB0+Hdzgn8XaZXogLFTSNh3ZnH5zcqWjuCME0hQh4AMO78CzHufLM7ranKA0hHEglKHXu02u673VYegFoSkROHCt0mzCu8grCZcaHqyqT2hkJCIkFphCJ9CP745cxySUTIY+gZO0U87Pnk05oKsjxkZImopBIdeQjeuH4WSRIxIarLIkuk4/evx90cADRjHN0mzFNOJDrc8NiToUlEhVQmEJlfKp9WlEQiksjj8xsFJo+hZ7AyQlGlmIOnQfLwYppIVNBNIpWOnVp4fbm/3iNLJ71/YuGVJH4phGqAFEC5NEK13sM2iaReIIJiiES1y2IqElNUuzGq8hD4SWTgN20LLxtUJCKk4UVXImlBlgilPGS6TZhX9MViYaS2CxPEL5VPUx5k1aHbqj7axwRJRO7qUKWPBhtXhQ6o6spDICTS99GHrKWhgp8w/BASqfep/y0rk04cQVx5/Gc4o/31STdDC5uuTGYSiAzl+EccCLFQd138kkitPa82lodMHF0aOYUEpY0o/NJIWuVREcmkQLJAXF0cWSIU4ogbU3HIyBJx8ogH07GQzHVhAODs/1bHU223ktQy6bqo8uPUL/Ds4UcBALof9oV1vbYjd954d9a9l1rXyxJf7t8cLz7TIOlmRHLSsguAZatRre9+STdFGxOJRCYQxthExtgGxtiH0rbajLFXGGPL8z9rSb+7jjG2gjG2jDF2qnaLisl+C/BYu/gEIuQBAFMX72tUo+3IwwsvmZMun2DVNgc9Jy27oPD+h3GrE2yJHV9s2qy8r0oCmQTgbgCTpW2DAczinN/GGBuc/3wtY+xQAN0BHAagAYBXGWMHcc7J731nnUL2W1B4+1i7Pug2ZzxBq3Yiy0MwdfG+vknEK4dSocGMuVi2FWhe/cCkmxI7sjwEP4zLZhLRITKBcM7fBLDJs7kzgAfz7x8EcJa0fSrnfBvn/DMAKwCU/5eUNJI8BHEmERmRRIKSRanQYMbcwvtlW1ck2JL48ZOHIItJZFvtGsr7mg6i7sM5XwcA+Z9757fvC+Bzab81+W2xcPZ/q+sf5CMPAZVE/NKHjGl3JivI8nDQUvOrBVjfthPWt+0US/1Pu7bR2p96FsZv6sF3/TdjrA9jbAFjbMG3m743PqGyRPZbECoPga1EouQBAGNerG11jjiodvDk6J0iaDBjbqzyOO2s4CcQ6vKf6/9IUicsfQgoUkjNrxag5ldl//4KkVDI5NOubbTlAZgLZD1jrD4A5H9uyG9fA0BeztkQgO+fOud8POe8Nee89R4akUlwzYLFhfdzx6z030lIQ0EcMqYSUZEHAPQ/zdsjNINqIFXIo8WYt4yOVxFHGroxe/SvU3gBOYnYiERFHgIbiXjFQYmpOASmAnkOQM/8+54AnpW2d2eM7cYYawqgGYC3jVsXgJDHNQsWF97PHbNyp0gMpGGLqjzSRLWDJ5dLHroSKXZ3xTSFCGn4YSISHXkITCSiKg+dFCKkYSMOQeT9QBhjUwC0B1AXwHoAQwE8A2AagP0ArAZwLud8U37/GwBcDOAXAAM455G3/2p2RGNe5aYzjf8jvLS5YyNJHdWZGRN5UHVjVNaDmHZPFvU/ttw2W2FQzMj0aT0fAHD237pE7hsmDlWOu/UJAGbSCCNohoYqcezz3+mF9zqyWHXFw/hp2ZfZebRl1QP35k3u6EZWj0ogQLRETJMH5ThIkERsxzW8AqFKGzYSEfKQCRMJhUAAYGjP3UnqeBESiaubsrXh19rH6AjELWWPoFjTu9RQDIrK3ZkkZ1b6tJ5fePnx1C1P46lbyj6YXB7roGDYgz+R1ZL5YdzqWMc44sYJRIEgiaRl3EMeTPUb17ChxZi3EpeHKkIklOJwhJPJa2HSQFrkIaCURtws27oishujIw5HcpRkAvn4Tvr/Y2a1K5Mloroqqjyw97+JWuSIoiQFAsQrkbSljywirwuhkIYjGUpOIHUaPF94H4dEnDxoceLINiUjkDoNni8jD8HHd84lFclPex5JVquik4bVqUmzY8torJ00JZba/c5dhUFtzC8TUaEkBOInjjRDuQak5Rk10PKMGuh3Z/CDkyoa+9zxA2ZMHpN0MyLZsWV04T21RPqdu/POdXFKJPMCSUIeZ773rtXxNtfC3NxoUOHV8oyy1xA5ieTkIUirRHZsGV1GHgIqicjyiJsKM4378Z1zcdBf7df+d33tfgA7JfJcy1bWNQU3NxpkXUNIZOxf/Z/EZkLlZ1thR2c7afoxot7/UBl0N9yR5REHb7XrhmPnPGZVw08cMkIiDS7SfyxEmDgGtfkeI+bqX7QaRaaXspukDxOJCGkEoSuRvRbfpt0GP54+8p7Q39tKZNPi35XbRiWSEfX+BwCo3JxGIFHyOL1Hf6v6J/+7Z7ltujKJkocXHYmopA5VgWTuWhhWuQ4/+MnztY8z7b6oSiRKHH5EyYRKHkC0QGR0ZOInDhlbiQh5CCgkopI+TCXiJw8ZFZHoykOgKhHVbouKRDIpkMo1dj5tq9mD0YOMtmMfURIxkYdMkEiSEoggTCRR4pAxlYhXHgIbieh0XXQkEiUOQZRATOUhiJKI7phHlEQyLxAgXCIUA6dBArEVh4yfRJIWiEAWiY44ZHQlEiQPGV2RmIx7qEhEVR5eZJnYikPgJxDbgdIwiZSEQPwQUqEWCKU0/HiuZStScQhsBAIAN596JE1D8vgJRUUaYYQJhWLQVJaJqTT8OOYF+seENrjoPNIZliCJlOzl/Mt7biKbthWLy+KWB0CbOtJM5WfpZqQEO5atxo5l8d7Z/OR/9ySVR1xQT89SrA+pMNO4fhRDHhWN7g9dXOZzy2v+QlJXlkjl5vuRTdlmQRxxYju9m6kEklWmfzkt6SYUhXO3tCjKeeJe71HRsEkiTiAxc8Pm3O0GS10iQfJ475//KnJLHMXECSRGhDwEpS6RIJxEaJg+iPwBBwVMU4gTSEx45SFwErHnzm8ib/RfcrQ5LDdcGZdEDvmkGh7Y+1c8sPevaFJFfWY2UwI5+upp4C+Wfzh11ig1iaiOfVBIZOpD7wCoWBIR8kgjqV4HcvTV0f/Q2Glmz5m9f/2FAIDPTr3O6PgwgtKHl071uhrVb7RPbjpvTP0XjI4XUKwDMRk4NZmZEeLw4697dtCuJ2hT/XYAwLmbTzau4YftOhAVaXQaYXdzq0M+qea7/eLuj2Dp4vXZXgeiIg8A1omk6Uv/sDrei6o8ALUk0mifVeVegv7rOhq1MWmox0RM0kib6rcX5AEAj9d6lbJJmNfxv0bHtTmsinLiMO3OHPJJtUB56JLKBKIqD99aColEpA8/bBKJjjxk/JKILIooTJII1SpU06lbnRQSlj5kVJKILI0gqNLIAWOHY68man82Nt0UlSSiI4xMJxAbeQDRiSRMHkAukZikElN5AGWTiDdlqJBUErFZ96GaQlTlAeSSSFgaUZEHQJNGDhg7HADw1crwPxudxBFEnLMzUaRKILbyiCJKHjI6IrGRh2D6l9O0xSHTf11HZZF0uncD5p/1svG5qIhretdPIqryEJhI5ICxwwsvFYoxOErZXfEjNV2YtkO30Nb0dGV05OFHUNeGQh6Cy1scTVInrEvT6d4NvtuPfuYP2uehWHka1pXRSR9+/HXPDtri8KLSnVERhrcrQy0PuRtjKwydLkwq5oeq19sE6qbwF7/AxP8bTFZPTiNxzNxQ0n9dR1+JBMkDQLlEYiIUSmzlAeinDj8er/Wqr0RUU4bgq5UdCxKJI3lMH/Q2Oo04Kta04UequjBZQciEMn1QI7ozne7dUHjpMP+sl4vSzfHrxlDIgxK5O6PTRfHy1cqOsXZbii0PICUJJIukWR4CXWn4EZRMKC+cExL5uN4xZDWpMZWGl+deOBVndnyJpFYaKOkE8mMP+7ucO8oy/6yXi3bVbVoYfIt7el4QJSuQsaNyz15xEskGfP2xaLaoctLNyDQ9bhxX9HOWrEBknETSDV9/bOG9k4gZH6xbBqD4EqkQAgGcRCjZtITu1nqyPATNFlUuvEzpNbg3ZlxIc1PjrFFMiUQKhDE2kTG2gTH2obTtRsbYF4yxhfnX6dLvrmOMrWCMLWOMnRpXw8MQ3RcvaZfIvYto+tq1rnwMta58DK1epx+Vv35wbtk9hUT85GFLr8G90Wtwb/K6lFS+bWHhRYFIHzLFkohKApkEwO+W6aM450fmXzMAgDF2KIDuAA7LH3MPYyxVmTTtEmn4vNL6HV+EOGQoJSLkIdi0ZJWxSFTloZNC/MSR9hRiKxE/eQiKIZHIaVzO+ZuMsSaK9ToDmMo53wbgM8bYCgBHAZhr3kQ9gtKHzI89BqHq5BFW55natQW6T1tkVUNm+OqdU5gNn2dYc4baCmGvMOLCKw+ZTUtWofahjZVr6SYPIZHlLXYE7hOWOoRETn/oSq3zxkGXD8ovbpMlsmPwkcq1wuQhEBKZfGNf5bo62KwD+TNjrAeABQCu5pxvBrAvgHnSPmvy22JHRRwychLRlUmlO2oCyElEoCsTWRh+iCTiJxJdabR6vRrePdHsRsRh4pARSSRIJBTdFTmNLG+xQ7urIqeRNMjEj7BEIuSiIg4vPW4cF4tElK6FySeQ6Zzz3+Y/7wNgIwAO4GYA9TnnFzPGxgKYyzl/OL/f/QBmcM6f9KnZB0AfANi14W9aHfG/ftj1nn8a/4foCsSPKJEIcQQRJZEoaYSx9dWpxscKdCWiKg8vXonEMdZx3JSLSOqoiIRqHYhf+tBlYc+q1jWiRBL75fyc8/Wc8x2c818BTECumwLkEkcjadeGANYG1BjPOW/NOW9dpU6un/7zFdfg5yuuMWkSCT/2GFRujKTSHTULryjkRCIzfPUxVvKgIo5BVT/ksZE45EFJ2sdIvBz54I/WNXrcOI5sfMQ0gdTnnK/Lv78KwNGc8+6MscMAPIqcUBoAmAWgGec8uPMKoPqR9fmhr/ZSbrQ3qVCkDy9VJ49QkoYfIolQS4MihQBqScQ0fXipVed8kjpeqBKIwJtEdnmjR5nPV8/pZ1WfIn0IKFKIwC+NkCYQxtgU5AZBmzPG1jDGegMYwRj7gDH2PoATAVwFAJzzxQCmAVgC4EUA/aLkYYKcVOKQBxDdXQljatcWqUgcJlw/uCuZPLKEnES88gCAke3GYmS7scVsUlGwTSIqszDlHw0OBD4TknM+HADNlUcR/HzFNcCoYpypYlARxSHjJw4vskRUUwll+ogDmwHWCrMSVYfqR9ybdBNixW8spKLLw4RSTSU6OIFUUGSJOHkAnS951/jYUhCJaVcm8/cDuXT5PzChWbrvEJZWnDho8UrEduC12AiJVEEN5WMyLxBqSr374igeI9uNxX/uMXvmbJKsXLtReV/XhXHExvP31MPkm19LuhkOTQ6ruo/yvk4gEi590PH8PfUK7yff/BqZSFqtmYRWaybhx3btSeoBduMfYZy2/THccqnd40eLzZLD9BZyZl4gVf+zDv0f6J90MzLJuD91j6WuLA8ZU5EIabRaM6nMdkqJUHPa9uJc5EiJrjyADI+BVP3PujKf+z/QH2N6jUmoNdljZd2HAeQk0vcRmhWuQeLwMvnm19BjyO9D9/HKIogf27VH1TmzlfYtFl55iBTytwl2TxAcdsxJ5bZ1bm72DF4vJvIAUvJgKd2l7F55yJhKhLr7MnXSEPxu4x2kNY9vNQIzb9/P+HghjTBMZaIqDxmvRFSl4YepRKi7L1HJw1QifvKQMRFJkDTa/Hs83l27Vmkpe8kJBNCXSBxjH1MnDSm8txHJ8a2CrxDWkYmKPGR0RGIiD0GPIb+3EoeMiUQoBaLabdGVSJQ8/IgSSljiKFmBRIlDRkhk4oAJkfv+5bVflOsGIQsjCB2RhIkjCD+h6IpDJkoiNuIQjO612rqGH6oyoRCI6XhHlEhMxBGEEIpKV6UkBaIjDwA4ctHh2u3QFYmKNLyEScREGn4IkdjIw4ssEwpxCOISCKAmkSQFIvCKhFIcMs3OVru1go5AUj2IqisNgYk8AOBfv899HSoiMZEHALxTd2A5iVCJQ9Dh2tW49/43SWuKGZsGx84mrRsnUQOswy/qiber2AmEerYlLnnERSoFYioOKv71+yqBEjEVh8w7dQcCAK5uvLd1LYcewy/qWebzUb+UHS97u4r6kgAqedxy6Qv424SOmZMHkEKBJC0PPyik4UgGkUK84ghCCCVKJFlLHqrdF11SJZA0yUN0Z/bq4S7Uyzqq8pDxJhPB21X6x7JIbNGg2Wgxoj153bhJzUrUNMlDpn2DRJ6N5SDizgPUHzehQpBYbHivw5nkNYtFKgRS6fvtZLVMB1D9OHfwbABOIg5HEKkQSI096AQSF+0bnJopkXzU+aakm5AKOvXpiE597JaQe9nE1pPUea/DmWXSx6JBs0nqFpNUCAQA2p1O04U5u9+lJHWCyIJE+m88OekmpIKPb7+i8J5aIrYEdVuyJpHUCATIScRGJDcdR9c/Fd0XP9IsEVkeFTmFyPIQpEUiWR7z8JIqgQhMJCLLI+4Uklb8kkdFlIifPARUEjHpxni7LKVAKpay12+1B794bhvf382ZUT/wuKjE8dTY6OtggghLIDKz175kVH/ikEcBAIsnDzA63o+orsshz/7dqn7LU7oV3n/5w+VWtQR8+1kY08c+OYZJw4/p4+1v9FObq925y0QalFO67ZdWxRfXt1TeP3PXwoQJREaWiWp3xVQiqgIBzCQiBALQSER13MNUIrI8ZGxEwrefVW6biUx05QHQCOS2PU8EAIzYvMT397Zpw1Qi7Zf6P7lOVSIlcy2Ml3anr8OcGfVJxzooaN/gVC2JyPIAgMN63AXAXCQ6g6Yfdb5JWyJB8gCAetVyt0LQFYmfPACg//jcClBVkZjIgwIhDwAYVOtQADtFUqxuSpAoikmmEojglC2Pa9U3SSE6CUSgIhGvPPzQEYnNjIuKSMLkEUaYUILkEUaQUGwEYppCZHl46X7MgabNKceVF3fA7IN/RPulVTH74NxDtW2loZJCdBJIKgdRw9CVB1C8QdWo2RkVeQA7E0kUttO1UQOspvIAcslEpBMZE3kAuWQiXoIk0keYPOJACKP90qokiWPfW9+zriGTuQRiIhCBahIxSR9e5DSiKg4/wtII5XoPbxqxkYcf6741G2wO4s+b7W8CBainEB1xUKWQKy/uQFLHj7AkUrJjIFnERh5A2TQiy4R6sZg8NkItj6xT7NSRJTLXhbGhmOtDJg551FoeXoRM4lpp+lHnm5w8KghUXZkKJRAgWiIU3Zc4ccvUaYlaWObSRzgVTiBAxV2p6tDDySOaCimQINKePhw7WdClC1ktvxRSEeRB0Y3JhEDaX1mn8No+5DKSmi6FZJdj2p8BgFYiMrbymDpvBVFL4sdWIqmehWl/ZZ3Yaq8Z+D2Ownlltq3qm/vceFzf2M7rsEPIg5pOfTpi+vgXKkTykNkdu+KAWz8ss239jh+Vj0/VOhATYexy831a+68Z+L3SfiYSea1LzXLbJtU+W7tOELt/sHNW59hXfkNWFwD6VN/Z9q1fzSOtDdivAwkSR+unn7aqK3PctB/IanU/5kAcsf17vL9LjdD9xD7yvt8ccESZfYaesC9ZuwS7Y9fA363fMQs/8800F9MxxhoBmAygHoBfAYznnI9mjNUG8BiAJgBWAujKOd+cP+Y6AL0B7ADQn3Me+rfnoL3r8LHnnKbSXl9UJaIqD4GORPzkIaCQiCwPAYVEZHHIUEpkInsFANDhm1+1j1VJHFQSoRTIra3MHr715sFtfbdTS4RKICpjIL8AuJpzfgiAYwD0Y4wdCmAwgFmc82YAZuU/I/+77gAOA3AagHsYY5VVGmPK9iGXRY6N6MoDAFb1HYdVfceF7vNal5qh8gCAizY9pX1uGT952NKnes1AeQBA9b2OITmPkAcAzNwzniG3uMZCTDGVRxjD3vgCw974gqRWmDx00e7CMMaeBXB3/tWec76OMVYfwGzOefN8+gDn/B/5/V8CcCPnfG5QTdsEIuOXRkzkEYRIJVHSCEM1kaiIwySFhIlDxiaFyOIIIiqR6I536CaRJR+sLbetz0d7atXwYiuPoATih0kqUZEHaRemzM6MNQHwJoDfAljNOd9T+t1mznktxtjdAOZxzh/Ob78fwEzO+ROeWn0A9AGAvWtUa/XwBWcptyMKIRFKcch8smGgdY0oieikDlWJqIpDxkQiKvIQ+EnEZqA0SiJ+0vBiKhGK5KEjEIGqSFSTh45AlGdhGGM1ADwJYADnfAtjgfX9flHOUpzz8QDGA7kEotoOFeISByUXbXrKVyIm3ZW3TtkSKhETcQiq73WMlkR05OEHxSyLiiTCGH/IN9oSiaPbosqwN76IlAhlt0VGSSCMsV2Qk8cjnHPRoV/PGKsvdWE25LevAdBIOrwhALs/0RJFjI1Mqn229TjHW6dsAVA2jdiIQ0ZFIqbimLlnpUIKSYM8BDoSoZKHSfoQyOMjcczaBBE5qsVyUeN+AB9xzu+UfvUcAPHMwJ4AnpW2d2eM7cYYawqgGYC36ZpcelAOkgqRUMlDEDSoOpG9Yp06Zu5ZiUQe1W4aa11DZvwh35DWKxbewda40geglkCOBXAhgA8YYwvz264HcBuAaYyx3gBWAzgXADjnixlj0wAsQW4Gpx/nfAd1w0uFqV/8RF6TWh4CWSJbv5pnLY4sEJZEkuy2RDHsjS/wjxOaxn6eSIFwzv8D/3ENAPB9pDjnfDiA4RbtcqSciiCPMNIsj2KSiWthHI404eSxk1RfC+NIL3Vb/ICNi6ol3YwC1OMfMh1e37PM5zmv/4R2A3eP7XxUHH17Lh/Mv1Z/BbAqqUggmzfXTroJDg2m7Hsdec2hC+2f0xIHT9/TxHf7nDvox67iQogkDlKTQJ586vzC+3POpl+67aBBlgdlChl53wTgsrMAAN/f9wxJTVuC5CGYcwddErGZwvXjtXkHkNYLIhUJxIssE13W/3gHYUvK887Eutg0fVKs57BlzvlXxVLXL3nUbWF/AdrI+8reLb/GZWehRl4mKsTRfYmShyArSSSuFJJKgQA5idiIJA7emViXtF4cU7iXNMkJlFoiYd0WG4l45SGjIxFKVOWRNeKQSCruB7LXLs34ObXvUt7f28WZf/c/ffdr0ltpOX8oOtKo3eki5X3PWtq4zOfuNZcpHxuEkIdMu0dHWdfVGfNQ6dKESSMKb/eGOn3YyCOsO3PDsc8G/s7LqV/fbtwGQK/74jfAGtvFdHGhKxAAaLj2/7T2N5GJSeIIk4hXGn6YisRPHjKmIjEZMA2TiI08BLJEqt00FmMO/if6L73Gui5F8vCTiI48BKYSMR37kEVS8gLRlYeMqkhsuiteiaiIw4uOSKLkIaMjEpvZFq9EKMQhc9fvF4b+XlcoVN2WF5+mewKfrkQoBk7nX/urE4gKUSKxHe+4+MChVscLokSiIw8ZFZHYTtcKiRRbHmH4iYV6zINSIoC6SKhmXmbd9So2f77JPdoyjJX358TpJxLqwVIbpn7XHIC/SEzlAeQGWcMkQrHWo26LH3Dd5Y9Y16FkzME7x8v6L72mZAZMizVt6yW1szDFYuX9vPB6Z2JdMnlMXDGMpI5AiISSoJmaOBaKpRFZJmnmpTrXJt2EQCq8QLKELBGb9CEz5/yrCi+g4shD8PmYfkk3QYm0SsQJJGNM/a45mTy8VDR5ZI00SsQJxOHIEC/VubacSJIa/wCcQByOTCIkkqQ8ACcQhyOzJC0PwAnE4XBY4ASSZ+uqM1FtZZukm+GIwGYRWakxYSjtUgETMiOQQ3FW4UXN1lVnFt5XZIk0PIHu6uAu3/6KLt/+iqW3nVd42TKo6RCs/exJgtZln0mtDweQvERSLxA/afymgf61JUHI8hBQSYR6MRkAnNLkbNz+3dfkdQXf7/awdY0u3/rfQs9UJIOaDsGgpkMKn9MukZc7PYSXOz0UW30hD0GSEknltTCqKWPL2lVW5/WTh+CHJoGP8tXikCkvo82Qt6zrnNKk/FPsrq1Zx7quzNJ5ZZ4+ihrbLtCuESSPMA4ePMV3uywNPxo0PUf7XH406k9zS4C/bvf/vv4w/UKS+l5x+HHpMPtrsHSuhUmFQPbbhfGBtc0vyzERSZg8vOjI5JApL4f+XlUmfsLwQiEQrzSCiJKJiTi8TBx3oPYxNhKZsXWp7/a+181SOj5IGH7YSERFHEHoCuXrb97GgvvX4bu12yqOQAA9iejIQxAlkShxyARJREUaXmwkoioPGa9IKMQhMBEIoCeRIGl4CZOIjjhkTCRiIw+BkMjX36g9ILJCCgRQk4iJPAReiehIw482Q94ykoYXE4mYyMPLhRtobzlpKhBATSKq8pCRRWIqDi+qIqGQBwCcfVUHrf11BFKhLue3kQewc3D1hyZzreUBmCUOP27/7mstiVDII22s/ezJQImYiEMw7h8nYdnA+sbH+yEGWMNEQiWPuEn9LIwOYbMztvKQoZAHNSozM0vnPVGS8hB4Z2dmbF1qJY+48ZupmdT68MzIAygxgQD+EqGURxbJgjhsui8yQiJpFoeMkEjWxCEoOYF4qUjy8EshaRdHHGRFHoIsikNQkgIRKaQiyUMgS6QiysNRXEpSIEDFlIfg9u++dvJwFIWSFYjD4YgfJxCHw2GME4jD4TAmFStRGWNfAdgKYGPSbdGgLrLVXiB7bXbtjR+/NjfmnO+lcnAqBAIAjLEFnPPWSbdDlay1F8hem11748e2za4L43A4jHECcTgcxqRJIOOTboAmWWsvkL02u/bGj1WbUzMG4nA4skeaEojD4cgYiQuEMXYaY2wZY2wFY2xw0u0JgjG2kjH2AWNsIWNsQX5bbcbYK4yx5fmftRJs30TG2AbG2IfStsD2Mcauy3/nyxhjp6akvTcyxr7If8cLGWOnp6i9jRhjrzPGPmKMLWaMXZnfnubvOKjNdN8z5zyxF4DKAD4BsD+AXQEsAnBokm0KaetKAHU920YAGJx/PxjA7Qm273gALQF8GNU+AIfmv+vdADTN/xlUTkF7bwQw0GffNLS3PoCW+fc1AXycb1eav+OgNpN9z0knkKMArOCcf8o5/xnAVACdE26TDp0BPJh//yAQw0NrFOGcvwlgk2dzUPs6A5jKOd/GOf8MwArk/iyKRkB7g0hDe9dxzt/Lv/8OwEcA9kW6v+OgNgeh3eakBbIvgM+lz2sQ/h+YJBzAy4yxdxljffLb9uGcrwNyf1gA9k6sdf4EtS/N3/ufGWPv57s4ojuQqvYyxpoA+D8A85GR79jTZoDoe05aIH43bk3rtNCxnPOWADoA6McYOz7pBlmQ1u/9XgAHADgSwDoAI/PbU9NexlgNAE8CGMA53xK2q8+2tLSZ7HtOWiBrADSSPjcEsDahtoTCOV+b/7kBwNPIRbv1jLH6AJD/uSG5FvoS1L5Ufu+c8/Wc8x2c818BTMDO+JyK9jLGdkHuH+IjnPOn8ptT/R37tZnye05aIO8AaMYYa8oY2xVAdwDPJdymcjDGqjPGaor3AP4A4EPk2tozv1tPAM8m08JAgtr3HIDujLHdGGNNATQDoPbQkBgR/xDzdEHuOwZS0F7GGANwP4CPOOd3Sr9K7Xcc1GbS77mYo8IBI8WnIzc6/AmAG5JuT0Ab90dudHoRgMWinQDqAJgFYHn+Z+0E2zgFuTi6Hbn/k/QOax+AG/Lf+TIAHVLS3ocAfADg/fxf5vopau9xyMX59wEszL9OT/l3HNRmsu/ZrUR1OBzGJN2FcTgcGcYJxOFwGOME4nA4jHECcTgcxjiBOBwOY5xAHA6HMU4gDofDGCcQh8NhzP8DRo09bhT7w2MAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# Generate artificial cells as test data\n", "tissue = cle.artificial_tissue_2d()\n", "touch_matrix = cle.generate_touch_matrix(tissue)\n", "\n", "cle.imshow(tissue, labels=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Associate artificial measurements to the cells" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "centroids = cle.label_centroids_to_pointlist(tissue)\n", "\n", "coordinates = cle.pull_zyx(centroids)\n", "values = random([coordinates.shape[1]])\n", "\n", "for i, y in enumerate(coordinates[1]):\n", " if (y < 128):\n", " values[i] = values[i] * 10 + 45\n", " else:\n", " values[i] = values[i] * 10 + 90\n", "\n", "measurements = cle.push_zyx(np.asarray([values]))\n", "\n", "# visualize measurments in space\n", "parametric_image = cle.replace_intensities(tissue, measurements)\n", "cle.imshow(parametric_image, min_display_intensity=0, max_display_intensity=100, color_map='jet')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Local averaging smoothes edges\n", "By averaging measurments locally, we can reduce the noise, but we also introduce a stripe where the region touch" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "local_mean_measurements = cle.mean_of_touching_neighbors(measurements, touch_matrix)\n", "\n", "parametric_image = cle.replace_intensities(tissue, local_mean_measurements)\n", "cle.imshow(parametric_image, min_display_intensity=0, max_display_intensity=100, color_map='jet')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Edge preserving filters: median\n", "By averaging using a median filter, we can also reduce noise while keeping the edge between the regions sharp" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAARAAAAD8CAYAAAC/+/tYAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAAsTAAALEwEAmpwYAAAjN0lEQVR4nO2dbawdx3mYn9eXIkNaJCiSJkFRjKlYhCIaQhSBUI2qSFy4jRX/KKWmKpgfsYAaUBFIQBK4aKQEQYwWhl0DSf60Fso0htUitSJVMawfRhJDSGs0RSNfG4qpL8a0RZsUiUtLFiHaZPlxNf1xdy7nLnf37HztzuyZBzg45+49Z86cPTvPed/ZmVlRSlEoFAouvGfsChQKhXwpAikUCs4UgRQKBWeKQAqFgjNFIIVCwZkikEKh4Ew0gYjIfSJyTESOi8hjsd6nUCiMh8QYByIiC8DfA/8UOAV8A/hVpdQrwd+sUCiMRqwI5B7guFLqe0qpy8BTwKFI71UoFEZiXaRy9wAnjb9PAf+g7ckbd7xXbd63LVJVunkPy1HKXeDdSOWGre9PeG/Q8mKyiQtBy7vEBtZzOWiZsbjKwmDv9c6Jc1x484L0eW4sgTS9+ZpcSUQeBh4GuPGnb+JfLP5WpKp0s5nzWZW7lXNBy/s//MOg5cXkIIvByjrObQDsXfM7lzbn2DrI+zx58D/3fm6sFOYUsNf4+xbgtPkEpdQRpdRBpdTBje/L51dwSpxjKweYv24pLQ+Ak2sO07QJ/eMRglgC+QawX0RuFZH1wGHguUjvVfAkhkRu5xi3cyx4uTEIJZFXOBCknC5Sk0iUFEYpdVVEHgX+ElgAvqCUejnGe6XKeTYD8VIZV9rCYFMiPg2hLo3bOcYxbncuLyRm5FFHS8QlpTH3l/k4VnRnSmSotKaNWH0gKKW+Cnw1Vvm5cJ7NyUik78F2gFesJDIr0tD/9xGJb/9HlzxMTrI3WL+I3ocx08StnBtVInM9EnWohq2jkTGxPcj6HvQ2aYprSrOVcxznttWbLbavyalfBMZNa+ZaIOfZvHrLBZdfm1i/UC5CsH1NU+NwFYkNfSXSJ1Kbct/IXAvEJLZIQpa9wNXez/WRxwFeidbB2odZjSK2SGZJxEYMr6zuzXgy2cq5wUVSBFLDjEpCRyghytnOm8CKRGaJJFTkUZdIiDMss8qwaQhdIvEVTJtEfEQQOyIZUiJFID0ZWyLbeXNVHiZaJDZRiQtaIjFPzepfUNcG4NNPYkMIAUxFIkUgFgwtES2NJnE0YYokRr9HDHnczrEooXdIkZhRSMiGPwWJFIFYMlSHa19pNBE7GplHTrI3SoMfQiLLEefRFIEkhk3EMaucQuEttkctP9pAskI39QFmpcHPJ1t5O1rZpjyWWQg+kxtKBDIq54xuw8L8cprdwctsijxipDJFICNR/zK/G/nMQSE9zOgjpES60pbQEikCSYgikbSJPfXhNLudRfIW21dvswgpkbkQSGpnJbq+wCKRcNy8dgmaIJjDC33o6vvQIomR2mhCSWTSAjHHRYSUSOxTuSlKJOapwBhoecSQiMZVIjYdp30k4nqmJcR3OsmzMG2y0NuXA3xsUyJ9D6ShGuFZdjVud+mFH6LOu1gCYKml3n1pk4XefpqbvcpvQn/3fX5UXM+41CWyIeA6rr5nZyYdgbQROqXpc/CMLQ+XOgwddexiaVUmNtzM6V6RRuxoZKjlIS6xPmh5Pt/z5CKQvnJY4GqQSETTtQKZyxf0XW7jAxy3ek2XPJrqEmNcQAhMiXRFJS5CMF8TKyJp+kGJOd5jTCYRgbhOKIvRuRpy9q5NX0gfedTpElvKfR59I46xSGUFOhtcv+/sIxBfCYTsF2liiIboIg+Nrp8ZjaQkDx2NpBottWFGIrlEHy79IZOIQEIQekr8eTYnLw8TXdeU5JE78xCJFIEkTlcaE0oemiKP8OQSfayl10XpgCKQLGiSSGh5pE6RW5pk3weyzLrkRprGQEskZlic0iUoCuOwlXNW/SCTiEBidYDOE7rDL6cV6n1J+UzOGLisYDYJgcwTMRr4PEljaDbz47Gr0AvX5Q+LQGrkkA6FbPBNZc2TUGKOKUntOrZt+NRzMrF/yL6QUGNDLrE+6LwFkxD9FfMkilmEnC9Tb5Cb+THnudG7XM0O3lp97PMdhhDcZAQSA9fh7qbI9LyFWCIphMVHJF0NMoRETHFcK7d56HwboaOiIpAZ2EikKwKKEY10zb/p87pZz0ntjMwmLgBwgU3R3+tmTveWSN9GaSuRJmE0l9stkZip1KQEEuuUbltKY/tesVKavo0955TF/HxDiWRWNOLSMPtIpK841pa7dlmBofpfJiWQ2ISQU6yUpm19Eh9puEY4Iel6by2SLkJIRosklLD0mRktEhdhtDF0x+3kBJLLwLKYfSOhI40U05mhiRHtbObHbOBS0DJjXb6hjXIat1CYEEPPWi4CKSTLvEc9OVAEUujF0B2wRR55MEmBlLkxeVPkkQ9eLU1ETgDngWXgqlLqoIhsA/4M2AecAP6lUirHRREKI1DkkRchIpB/rJS6Syl1sPr7MeB5pdR+4Pnq70IDZXRqIXdixPqHgA9Xj58E/ifw2xHe5zr28fp1206yd4i3tiZHecQeF7LAMhfY1Gt8R+6Y+/By4Ms0DIlvBKKAvxKRb4rIw9W2XUqpMwDV/c6mF4rIwyKyKCKLF3/4E89qNMsDYC8nvcsOTY7yMInRoWqefhxiqHpKrM/4ePCNQO5VSp0WkZ3A10Tktb4vVEodAY4A7Dy4V/lUok0eGlMirhGJLsM3osldHprYg8tSikQWWLaetNZF035bz+UsIxEvgSilTlf3Z0Xky8A9wJKI7FZKnRGR3cDZWeVs4gIHWQRgkYMznr2WWfKoYyOCpujFRyRTkUdo2gY/hZCI67yZpjqFlEgTZiRiK5OxLnvhLBAReS/wHqXU+erxLwH/DngOeAj4bHX/FZtytUi60JKxlYcNs1KfvZy0ksgU5THEXBmz4fvIxHztLJl0NUaba+H6oGXSRyRjXjPHJwLZBXxZRHQ5/10p9Rci8g3gaRH5BPAD4EH/aq4lhDjaIgmbPpO+EpmiPEx80hmbgz9UWtMWldjUxTUasd1Ps1KbsS+45SwQpdT3gJ9r2P4W8BGfSg2JbyfrLIlMXR6aoSbchYpI9OsvsMm5EdpKxHX/1KORsaVhMsmRqEOzl5Ort3nG9hfZtyGEOFvjW4e+Uggh1/VcTkoekOl0/h28xZtsH7sajWiJzNuFnzR1ibQ1nFQawgYucYkNXmXM6heZ8ujabCOQkIuwFAohmLIo2shWIIU8aPpVTiX6iMG8SaQIpBAdUyJTlofGlMjUhVIEUhiE82yeC3loNnN+8vKAIpBCIQqXWZ/l0HRbsjwLUyikjCmOy6zPZrLc+mqBZ+Hd3q8pEUihEJBco471jqvDF4EUBmEnS84HaS60ySNXqfShpDCR2MkSML8DyjR6P2i0RC57Dt4Kge8AMk0fQZjPcUlp9LWO9H2I/RdC6EUgkZlXkdTFUWdMkYQShys2/SJtF0lbzyWvfRcqGsw6hclpNOqsBpUCl1i/5uaKzWcdMq25xIbg8nBNT9pet8DVNbcuXPddyH2etUBWpndfHLsavUlVIm3CcJGIy2eMKREtjRhRh2/fhvn6PsJoQuve5vkhyVIgF9hUm9adl0RSEEnfSMNGIj6fy/XAvspC6/9ipSohx3hcZn2Qazn3EUkMUWfVBzKlxXbH6htxiSr6XAg8hBRt+kXMxqAlss4Y6RpTHinT1jcSK8pLUiBTEkUX59nMxtqiOBcjfHaf/oymckyRxIimTJHYHPhaJLGuTJi6PDR1icRMEZNLYVzkcYGNEWoSlyGuNevbGTqr3Nip2NTHjcRE77vY+zAJgbzLe67r1+hLjvLooh6RFOwJ0acwBYYQcBIC8SGnDlTNrOijSKSQC9kLpFBookQhw5C9QHJLYYbo+yjEIdV1eMcke4FMlZLGpMVpdgNFInWKQApOzNMlLLQ8NEUi18haICV9GYdc5BGiH6QuD00oieQeaSYzkGyZhblaM7MPG7kQZWCZD7nIA1YG5blMnW+TRp032e48oTN3cWiSEQisSASmuXL3GNFH2/V/XcvJBVO6evRol0j6CqMJW4lMRRyaJFOY5Y4JUkOSQsrhesCZo0R9LruZszxM2oah+8hD0yed2ciFyckDEotATGZFI7H7P7Q8TInkskx/2xBzUwZ9opKpyENjSmSojtApSsMkWYFohk5ruqIO/T9bkQwZyfSdn7KXk96pTSj6Xk+3iVT6iJpSmanLAxJNYZpYZiF6atO3oZ+vLhs0FH0PRNvJbU0Rhk53hog+2vZjCqmjC2ZUMw/ygAwikDqxzta4HLR9rsYeqjHMOiPjOjPW7GgdSho2z2uLRlKJPOq8yfbsUj8fsolATFIf/9HUfxKCpl+1UCucxT7oXaO2ptekKo95JEuB5ECsMNyUSApLI84iRLpnvr7IIy2yS2FgZUWsUAvl5JRvn2Pr6uN5CpNh5Xtal8H4oE1c5C12sJ03x67KIMyMQETkCyJyVkReMrZtE5Gvich3qvubjP89LiLHReSYiHw0VsVDcJFNyR+U59i6ejNJ5QxK4Rrm2jRvsWPEmgxHnxTmi8B9tW2PAc8rpfYDz1d/IyIHgMPAB6vXfF5Eopw66Vrgtw9mKDy2RExJ1G85s45lbuLc2NUYhKaFreZBIjMFopT6OvCj2uZDwJPV4yeB+43tTymlLimlXgeOA/eEqWo4mvLooSUyFUm0Ye7PqUuka1W8HCUiFs917UTdpZQ6A1Dd76y274E1yfmpalsUXKKQrk64sSORqVD2Y77Yfnehz8I0yUs1PlHkYRFZFJHFH//w/zm/YV+JXGRTrx78IQ7+FKOOEJ3J61iOuv+6LiJli28KrOmzJm8OUYjrd+cqkCUR2Q1Q3Z+ttp+CNb17twCnmwpQSh1RSh1USh288X0/ZV0Bc1Rq2wfX0rA99RdbIlsDhfShOlJ9x630OfhSSGP0KWX9OTdw2UskNgt6pyoRX+m7CuQ54KHq8UPAV4zth0Vkg4jcCuwHXnCuXQvLqxcQuja83dwRLtKYR5rGaNhKZOh0xTUK6fpcLiJxuRpAKhLRbSXEdzdzHIiIfAn4MLBDRE4Bvw98FnhaRD4B/AB4EEAp9bKIPA28AlwFHlFK9aplqHkuoQ7odSwHDZnHxFYKXcPIffbvTZzj7QDpW9OlLNuw+extEtFjjkJcQsSUyJBjRWKJfqZAlFK/2vKvj7Q8/9PAp20qoaz6fYcjB4l0zWEJPUguxEEYSiJgJxIfNnA5yvyrIQacxd43ZSj7DHI9oxBCHmYZKe+HqyxcJ/rQM6ZjzQRPJa1xpQikByk3HljbmRq64eQyhByuiSSn6Qm5UwQyEYZeo8SHFM7IFMIwSYHEWHowl1/hwvws5pMCkxQIFImkTolCpsFkBQL5LIJcKOTKpAUCrI49DEWJQsJRohC4k6PczJkoZd/MGXauDhKPw+QFkiIh58LoBZBLtHWNfyWf4RH5vbGrMZM7Obr6OLREzPJiSqQIxAHfX06fuTA7eGv1Vh9AViSyIg9NqhK5k6Nr5KEJJZFYEU0TcyOQUI1Ll3MT54KH4KYc2m596hdaJL8oTwQtT/NPApdryiMGTY0+dBk3c8ZZAF2vjRWFZLkmqiubOe80VqKrQboMzV7HsvNFmfvi+llN7jcapJbI/1K/7lWmZih56CjkP6l/71X+XbwIrBXAUe60KsNGQDdzxuqym0NGHSZJRCDSvGRIFGx+nfv+mutopE9EMmQn7LXJ63YRyf3ymTXyMAkRjZjyeDBy1KDxSWe0POq0pSJtz7UltBRiRCFJCASoJuYvD3IJyz4NyjUNiJHahKCPSLrEYeIjkabIw1cifVMXW4ncxYut8rDBJ/XpIxEb0YSWSJIpzALL0S9j2Uao/oOQs05Doj+fmd70kUadX5QnrNOZrrRFS+QZ9bhVmbb9Ho/I7/VKZ2zE0ZbWhOgzacMnOtnJWc6urkLqhyg1XPrQxk8ffJ/65OI/n/m8kFIxG1DssxdvszVK6uI7ZPsj8h8D1WSFJqH49nV0CSVEp6kpkxDRRkxOsztoWtMmkT86+D84uXi21xobyaQwfQiZ3mhpDHHqc14Gn8U4W/OgfCZ6P0moVCU2KfaJJJnCDEUZNxGeuyOd8jUl8ox6PNgp2xzEERPfdCarCCRXPi6fG7sKgzCUjmOP95g3fCKRIpDIPFD9Ik9dIm3yqF+RrDAtikAi8kAtnJ+6RNooEgnDLnk2WtmuUUgRSCTq8tAUifjz/YBl5YKWRyyJ3CvP8oA8wQPyBFu/+cPer8tKIB+SI9wbqZNuSKYmkb59HyEkosuYJ4nEjDx8SfoszIfkSON2UyJ/4zg3Q5fh+vou2qIPk4/L5/iv6t86la8F9Ix61On1IbHtOP0RsM3hfZrkoyXyfofyNFuqxvmO+hWPUsLTJQ39vyXPOt8bQEzJDiRrk0cTLhIIIaEm+sjDZJZEZkUrPhIJMZDM9cyLrURmRS+2EmkaI5qCRGyjDReJzBLHPwOOKtVrIFmSArGRR50+MuhKg3xkYisPTZNEbNIcF4mEGoU6hED6pj59JNJncHkokWyRZ3uX5ZOm9JGITbRhI5Dk+kB85AHdcuj7f5d+Fld5wFpZfFw+Z91H8mDgIel98Rn30VcKNv0m36e7b6TvzJQtAUJ7XcassnbJs959HGP2kSTVB+Irj1nYiMGmj8RHHhrfjlUtkT7RSOg5MK649ofM4vtcH43YTmuziR7M19gwRMMP0c/RRTIpzDPfDHuN0HrD9z170yaSEPIITZdEQsojxMjTLoH4nrV5P/biqNNHIn3EUS8ntDzMNMZXGtn1gdwhor44diUsMGWSokCgWSKhI4+YAglxyvedAGVAs0Rc0hxdTqzIY0n9SpCIowhkAP5G/Xqy8tA8ox6Nmq6EmvtSl0ioQWehBALXGr9v/8jGEJVp4bZA5RSBDECY5VjiEnMIeQ7zmEMKJCSxJDKGQJI7CxOSK2NXYKLkII/CMExWIFdq94XC1HlhhPecrEBMikQKU0enq0NLZC4EAkUi88YScHHsSozEkBKZKRAR+YKInBWRl4xtnxKRN0Tkxer2MeN/j4vIcRE5JiIfjVXxLtpkMS8SeaO6xWhAqfd/LFW3lPmRcQtVXp2hJNInAvkicF/D9j9SSt1V3b4KICIHgMPAB6vXfF5Exrk+QwupS+Q1j9dqcZiElEgO8qiTehTiK5Gu1w8hkZkCUUp9nf6f8xDwlFLqklLqdeA4cI9H/azpI4gQEvFp6G3lvWY87ssbNIsjNDnKQ3ORdETSVA/XiKTP818grkh85sI8KiIfBxaBTyql3gb2AP/XeM6palt0bKVgPv8Gy9fqL85s6D9rWcYsSej/N5VrK4uLuI89SFkctqmK2XhjDujyoUsK23o8p40XiPNL7tqJ+gTwAeAu4AzwB9X2psEnjSPVRORhEVkUkcW3GTe1uNLz/bt+JfpEDa+xNtLog36+b6Th8gs8JXnUGSMq8X0/336TGNGIk0CUUktKqWWl1LvAH3NNbqeAvcZTbwFOt5RxRCl1UCl1cGu1rW9DjkXT+9uEl21isJVGLFIJ41NiHvdJSJE4CUREdht/PgDoMzTPAYdFZIOI3Arsx6GuV2bcmp4fEl2ei+1fqz0OJY5Q0UDfBpNy9BGapn1ysXaL8R5jE0IiM/tARORLwIeBHSJyCvh94MMichcr6ckJ4F8DKKVeFpGngVeAq8AjSqng13XUDfwG4kUsPqFiCtGGK/MkDhOzn6hNKJBu34krvn0jSUym+1kR9V/GrkSNFBvS5tlP6UVbI0jxM7eRwliPvjJJMfqoY0qkTKbzJKeG5ELTAT31zxyDlE4Pj0URyJxiHvhFHn5MQSSu/SFJrYlaGJYijrDUJZJbf4mLRIpAapRGVQhFrlHJBYvnlhSmEI1txFl1vRAXGykUgRiU6CMc22qPQ4tkV+DyCitssXx+9gIJOS163oiVv7bJIrRIikTCYisPyFggdXEUibgRUiJ9BVEk4sa6hlsoXOQBmQqkTRY+EgmdvsRYETyWJEMckLZSKBKxo+278fnethg3V7IUSBcujSxW38c7+IukPgco9GpWdVwOSFcZFIn0o8/3YRuZ+Eij/r7ZYHNBZn1wvtrj+be4VWcNXaLQ/7P50vouL2ASskGuY2UyUxepnWExJZLCUHdffBpn/bX6uwwljrb3SRbbX9w+4tCcqu5tRWIbXbxD9xfoOzFQ76NQDds8OEyZpCaOJnaRr0RiNMp1wKYI5SadwriG664HzimuyWQWrqlJ0+tCr4MSI73RoXEO8tDMSmtSHOiVzS96RZL1HfuMyinao5EQnaO6jNyGOk+BujRSGn6eZGOcQXJ1HlseTaR6jdXCbHQq0zfaGGvdj9gNMUb6AokJJCV56FQmdKdTYXhcUpW215SocS3J9IGkJA+TEn3kzYnA5cXoN0nqV9ySJAQy63ShDTF63otECoVmkhBIr7XTRibEoLAhSTWiG5rbqltIQkUhoYejj0ESAgH7izuNRU4SmXfMxhlaIr7kLg5NMgKBFYn4iGSogUO5SGSeo5CmBpqKRKYiD0hMIBoXieQ66jA28yiRrgYaSiIuacwUUpY6SQoE+kUjS8ZtaEL0iQw1EjLU5LuNhB81uzNQOTYTyYaORKYoDk2yAtHcQLNMUok4cpEI+EmkPv4hhEh0o9pp3HzKSY2UxGGzzqkNyQvEREskFXloQkhkyGjElq7BU64iaWtYtiIZq4F27ZOUxBGbrAQC6Z6tCdGxOpRIbFKaviMvZ12/2KRP49qJf2TShU8aM0seqRIjCslOIH1ny45BqLMzqUQjPsO220Ti2sCaZDJGY819KHtoiWQnkNQJNeBs7GgkVEPRIgkZ1u8MVJZNFLKRfvsk5KjqWISUSBFI4lxkGJmYEsn9VzY0ZX+0UwSSEUNIpDSW+SBUFFIEUphrZqUxRajdFIEUCi0UecymCKQw9zRFIfMgjxBpTMqnrVdJ+dRtYXhiz+/xlcdVMmlYrEjEZ7nDpD9nEUehTix53AYcZz4iD5PzXH9hNZtT0UkJJHdhmKNkYyzOe4fx+ETAcgH2BC4vNEPMKg4tj7PMHkWrn2M+t74Ob4zlI0JdjXFmH4iI7BWRvxaRV0XkZRH5jWr7NhH5moh8p7q/yXjN4yJyXESOichHZ73HFaYlD5NQp17vqP29L1C5exhGHq77IeZlPGNy1rjvutWf27SId8oLe/fpRL0KfFIpdQfwIeARETkAPAY8r5TaDzxf/U31v8PAB4H7gM+LyEKMyqdAn2UHfCVSl0cIhhKHSYoXcopBDOH5XgTbJOS1oGcKRCl1Rin1rerxeVauGrkHOAQ8WT3tSeD+6vEh4Cml1CWl1OuspJb3BKxzEtiunuYyovQOuuWxz6IskzHTFZv9EDvy+FHtFiKFiV3nLfjJJPSF5K1O44rIPuDngb8FdimlzsCKZLiWwu0BThovO0XDMSsiD4vIoogshv5QsfGdEdyn8fSNOvZZvO8YUUcXbfshZtoy63KpPhIZOtWyFUmMdta7E1VEbgSeBX5TKfWOSOta6k3/UNdtUOoIcARgn8h1/586F2k+WF3SlX10d6qmJI1ZhGiEvmVsxD7dGrOfZguzO1pj/Uj3EoiI3MCKPP5UKfXn1eYlEdmtlDojIru51hd0CthrvPwW4HSoCk8J80yNbz/Hvur+hLEtB3GYIk1BHhobiYR6T581SsxIZMhFv/uchRHgT4BXlVJ/aPzrOeCh6vFDwFeM7YdFZIOI3ArsB14IV+XpEbKTdF91n4M8NBdJSx6aXMeE1NOamF0EfSKQe4FfA46KyIvVtt8BPgs8LSKfAH4APAiglHpZRJ4GXmHlDM4jSqnl0BWfCndHKDMneaROVySS8unlLcAbA7zPTIEopf437ReP+0jLaz4NfNqjXoVC0qQsjyEpk+kKBUuKPK6R1FD2QsGVmI26nsK4nKWZKklEIO+OXYHC6KTaYRljvMiUSEIgMNzan4U0uYr/tZFDE3PV+jqhr5Y3RAcqJCQQk5QlsoX0f32Ojl0BS+rTx21FEiN9CX3dnKmSpEAgzWgk9KzIGKdwv1Xd5yKRrrUnxopGSidpf5LvRG2SSN36bQ07xIi8trKbfnlshLeRlVmJmhCDyb5V+/socGeAckNjs2BNXSL1i1WFbuw+l/7s+v5nRSpmyuE7jmeo9AUyEEgTF4FdPZ7nO7zXNuKY1TvfdRBpmbiKpC4PjY5EUhGJ74WXbsD/ot5txJpDY5vmvIG7RIaUB2QqkD7yqKNl0FckrulK00FkcwC5iKRNHiZjiyTkFdtuIPwF1kPOoQmBi0SGlgdkKhAfbEXiQoiDqK9I+sjDZAyRhL7cY6ryCI0WQspTE5LtRI1N11oKKS0h9ypr+0pMbOVhMlQna+rXik1VHraMEX3AHAtEs6XhliJtEvEhlzM1885YcujD3AskJ0yJ+EQfJkeN2zyybewK9CRVicxdH0juvEp642MKw+BzdiYWJQIpFDLiDa6PRsaMTopACoUMeaN2PxZFIIVCpowtDygCKRQKHhSBFLIi9CCygh9FIIVVQp7K1bOprxg3X4o80iNLgczzgfQO8SaTQZhTxG1luIpkiby+81DCzIFsx4Es4TapLlfqc3euEH69DL0qlnnBK1v6CKjeuNo+R07SgOs/l/47pVXWQpOtQODaATZFkQx1dbGupfRMGcySiU/kohva0PNS9D6uN4K+83f6RhkxZJ8KWQtEM5VoxFYavgemzTqcbVFJbqNi++zjdXRLxCU9mapEJiEQyFcivpGG64HpuohvbsIwsdnXumGYIvHt15hiSjMZgeRIqDTFViKhVwBPHZ/9vI7w0pySSCYlkFyjkBD0kUgRR1pMIa2ZlEBgviXSRg7iCN2Bmro8NLlLJMtxIIVmmnL0HOQRmlzkMQUmKZDcxg+ExJTIPMqjMCyTFMi8c4Uij8IwFIEUCgVnikAKhYIzRSCFQsEZUUqNXQdE5IfAT4A3x66LBTvIq76QX51LfePTVOf3K6Xe1+fFSQgEQEQWlVIHx65HX3KrL+RX51Lf+PjWuaQwhULBmSKQQqHgTEoCOTJ2BSzJrb6QX51LfePjVedk+kAKhUJ+pBSBFAqFzBhdICJyn4gcE5HjIvLY2PVpQ0ROiMhREXlRRBarbdtE5Gsi8p3q/qYR6/cFETkrIi8Z21rrJyKPV/v8mIh8NJH6fkpE3qj28Ysi8rGE6rtXRP5aRF4VkZdF5Deq7Snv47Y6h9vPSqnRbsAC8F3gZ4D1wN8BB8asU0ddTwA7ats+BzxWPX4M+A8j1u8XgLuBl2bVDzhQ7esNwK3Vd7CQQH0/BfybhuemUN/dwN3V483A31f1Snkft9U52H4eOwK5BziulPqeUuoy8BRwaOQ62XAIeLJ6/CRw/1gVUUp9neuX1Wir3yHgKaXUJaXU68BxVr6LwWipbxsp1PeMUupb1ePzwKvAHtLex211bsO6zmMLZA9w0vj7FN0fcEwU8Fci8k0RebjatkspdQZWvixg52i1a6atfinv90dF5NtViqPTgaTqKyL7gJ8H/pZM9nGtzhBoP48tEGnYluppoXuVUncDvww8IiK/MHaFPEh1vz8BfAC4CzgD/EG1PZn6isiNwLPAbyqlutYuSrnOwfbz2AI5Bew1/r4FOD1SXTpRSp2u7s8CX2YltFsSkd0A1f3Z8WrYSFv9ktzvSqklpdSyUupd4I+5Fj4nUV8RuYGVhvinSqk/rzYnvY+b6hxyP48tkG8A+0XkVhFZDxwGnhu5TtchIu8Vkc36MfBLwEus1PWh6mkPAV8Zp4attNXvOeCwiGwQkVuB/cALI9RvDbohVjzAyj6GBOorIgL8CfCqUuoPjX8lu4/b6hx0Pw/ZK9zSU/wxVnqHvwv87tj1aanjz7DSO/13wMu6nsB24HngO9X9thHr+CVWwtErrPySfKKrfsDvVvv8GPDLidT3v7Fyje9vVwfz7oTq+49YCee/DbxY3T6W+D5uq3Ow/VxGohYKBWfGTmEKhULGFIEUCgVnikAKhYIzRSCFQsGZIpBCoeBMEUihUHCmCKRQKDhTBFIoFJz5/3WrLEd0Iq0GAAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "local_median_measurements = cle.median_of_touching_neighbors(measurements, touch_matrix)\n", "\n", "parametric_image = cle.replace_intensities(tissue, local_median_measurements)\n", "cle.imshow(parametric_image, min_display_intensity=0, max_display_intensity=100, color_map='jet')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Increasing filter radius: neighbors of neighbors\n", "In order to increase the radius of the operation, we need to determin neighbors of touching neighbors" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "neighbor_matrix = cle.neighbors_of_neighbors(touch_matrix)\n", "\n", "local_median_measurements = cle.median_of_touching_neighbors(measurements, neighbor_matrix)\n", "\n", "parametric_image = cle.replace_intensities(tissue, local_median_measurements)\n", "cle.imshow(parametric_image, min_display_intensity=0, max_display_intensity=100, color_map='jet')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Short-cuts for visualisation only\n", "If you're not so much interested in the vectors of measurements, there are shortcuts: For example for visualizing the mean value of neighboring pixels with different radii:" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "original\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Radius 0\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Radius 1\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAARAAAAD8CAYAAAC/+/tYAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAAsTAAALEwEAmpwYAAAn7UlEQVR4nO2de6xdV32gvx/XD9nEqZOGGMekJbQetWHQAGMlVExLAPEIfyRAByZFnQkpEJBAPEqlCaWaos5QwUiBATGdEh5JZihEVCTCQngmnlBCBzEBt3XJq2lcnk7cuJAam17PtX2z5o+79/W6++69z3r81j5rn7M+6eice+7e66yzz17f/q3nFmMMhUKhEMKTpp2BQqEwXopACoVCMEUghUIhmCKQQqEQTBFIoVAIpgikUCgEk0wgIvJyEXlIRA6JyA2pPqdQKEwPSTEOREQWgL8FXgIcBr4F/IYx5gH1DysUClMjVQRyGXDIGPMdY8wp4Dbg6kSfVSgUpsSGROnuAn5o/X0YuLxr4y0XPNmc+/TzvD9EeMI/Zw0WFNJoQyNvbZxmU5J0x4D2MX2CBTZwRjG9NNfjJ/EETyBJ0m7j+PeOsfijRacPTCWQtg9fU1cSkeuB6wG2/dx2Xnfgrd4fsolTQZmz2caJ6DTa2MRSknSPcFGSdMeAxu9dc4JtAPwsP1JL8yRb1dKq2cLi6utTbFZPv41b93zcedtUVZjDwMXW308DHrU3MMbcZIzZY4zZs+UpT06UjUIfmzilWijHQi0PgB9zwRRz0o8tD0h3UYohlUC+BewWkUtEZBNwDbA30WdlxzIL086CFykkssAyCyyrp5sCLYkMIePcJJKkCmOMOSMibwP+F7AAfNoYc3+Kz8oJWxx1ONu8ikybrpPcfv9URDtLUxoLLGcjVDvyaFJLJKRKs2wVI63j2Hfe2BIZqlrTRao2EIwxXwa+nCLtpeqgLVkHL1Vbhgt9BeQkW7ORiOsVchOnvE7+SZFG/f8YkcRe3fvkYfNjLlBrF6nz7CsSn/NlE0tTlcioRqIusXmNNGxcTxAbDem4FIoUjWu++BZA1+19qimhVZqh5FEzzXaRkIvNNKs1oxFIlzhsfE+UE2xbfYQwjdB859q2aCdS1c1DhOC7z7QaeV0lsuwQxLt+h5hIdVoSyVogdcThIo+aUCH47ucrD80o5ByPyCmmAKbqpXGVyLR7iCZJxEUeNfWxTPmdNrE0uEiStYHE4COMLmoZ+FZTuiSiUd3RaA+p81dL5Kc90tM6WZttIhq9K5PaRbTyHhpd1nS1ifjIo0lbG5NmO9mQ7SJZRyAaxJ5AdjrLq52T4VWX0EikK0I6hxOrj5TUBTpl1+wQV2kNYuRRk/o7DhWJZCcQjeijiZZEFpWqIa4S8W2jsUUyzaqHb5qppKH1u9tVGQ151NTfOVUv3RASyUYgvm0dPmh28WpJZBIxJ3/qaGQe+TEXqMqjZohIZGvCYQRZtIGYAScK5Y7WVXPa4wMKebAh8WjgbCKQeaNZjYnpTi4U2rDlkSoKKQKZIqfYvPoozC8pqkZtkUcKiWQhEGH+7o7XbJDcnHnPw7yTeqqEpkT6qi3aEslCIACbM5tlOA1yl0guc3pc0Sr0dTqpRx4vsyFYJBtW957c5qEpkWwEAukkklvbQl93aJGIHjEFfpvVid5MM3Ys0CSWLR2kQksiWQkE8pfIKTZxjO0qaXWRo0TsMQVbWMxeJHUBDykorpHLEHOhXCQS2tOiIZEsunGb2BLRHBsSOry9bTq2LZHtHHNKZ6gFdmoBNUUUItG+wUhdEnEZKNe2b2xjcleBrgtK2xie2GpO/Zkpf9umRDQvsltZjBrblF0E0iRFROJTkFzWcnCJSIaWRxu+hSV0JGMdoXQJpuv90MlgrlWKlAOqUldrbLQHXMYclywjkCabWVI/aCfYNrFA+SwEU0ukLRoJkcdmTrHkuRCNS9XH/s5DtA1tYXFNROJS9XFdcSukwNqFJYXUl1kYzVKOGmQfgdQMHYmELkd3jO1qbSQ+bSEh7SZ9AtWcRzEpIvFlyKt9CDnnrYvQKGQ0AgFWVwfRJPUI0CGuRjGNrm09DTkt3FtXa4bo/dBkLPm0CZHIqARSs331On9MLU1bJDGL4dYcY3v28rCpJZKTPMbOPEhkdALZwsmk6WvIQ5M+QWh39xZ5FGDlTnju246I1PLIlTZR5DhWJCW5jzuZV0bRC9Mnju0cSz6wKweGEMYGljkzwrC7oMd2jnkNTMs+AnGJOjTbQuaVur6eev2IXJinrlZXQspR1gKZ1ypLF4tsTbIi2hgb+2IYUh5jmSQaehHOViBFHmdpikNTIm3ymOUoZEh5pBz5qklMBJ+tQHzRqMZoXy00CnpXGhppz1vkMRRbK+XXaJ9XO3hMZRiDRhpZNqIOHX1o/8B2/uuCHnI1GmoB53khdfTR9xtrTMfYwWPr3vPtRNBuL8xSIEORUhxNFtnqJREXeYTKySXy0OqR2Vodk0W2RKdVd+WG3FsnpTxcj7+vRNqE0cYkiaTsZMhOIDHRh4+NNeThm1dXifhGHq7pDl1l2Wodn62cVJEI+IsklTxCokoXibiKw6aWRN+kzhRkI5Ahqi1aEUdMXruihtjqir2/nXaMNOrG1EmRyFbH47F1TdVOLyLpQ3PBaq1G0fo8rEUSIowuhh7SkEUjqs/Q2Ul0HcAc5GFj96xot3UsslV14llXr8xWTjrLo23fMZGiR2UzS6rymAZZCCQ1OffFj7GhNEYczXQK42bmBZKzPMaIdqEvEhk3My2QIg89NrCcrLAXiYyXmRTIdo4VeYyMIpFxEiUQEfmeiNwrIgdF5ED13vkisl9EHq6ez9PJ6myywJlpZyEbikTGh0YE8kJjzLONMXuqv28A7jLG7Abuqv4utFDLo0ikMFZSVGGuBm6tXt8KvDLBZ7Ri303sQo5yIUeH+mhvmtJY4Ey2IjlT5a5eGjkVm1nivDlZmmETp9jEqVH2wtnECsQAd4rIX4jI9dV7O4wxRwCq5wvbdhSR60XkgIgcWPyH+D72rhXGNSWiNQakTxQaItFs/2kbRJZCInae50UiNWOWSOxI1OcbYx4VkQuB/SLyN647GmNuAm4C2LnnIhOTiUn3d7ElcrTdZxM5Z/UGy3GHLNcow5dFtiRtsziPY/xjJivN1YMTtdbL3dSyupzvXKlciCoNxphHq+ejInIHcBnwmIjsNMYcEZGdMDkEWGB5VQK+t1jwvdtaLRMXkZzTknYtgBCR+MhjgTNBn5E6+khBV541JNKcI+K7n80mTiVddLtrOkLOBAtERJ4MPMkYc6J6/VLgD4C9wLXAB6rnL/qk6yKE0Hvc+tAmDxvfAh4SeYRIZInNq5+VemGguiqTOhKpcZVJW35sIUySSd98kjp6SL16f8wyEEMSE4HsAO4QkTqdzxpj/qeIfAv4vIi8AfgB8Jr4bK5FQxxdkcgkcdi4FvCYakuMqOwIwlcmPtFHTHXGJ2JyiUhc8tEVlfhMRAuNRtqqL33kXrUJFogx5jvAv2h5/8fAi2MyNSQXcjSqUXBSAddo83CtNvV9Vp8QmnIJqbqkbhOp6YpIQj67Xv4hdAarr0R85VGTczQykyNRfYk98RdWOzrTNpB2pR/72WfWfIPwdg9fEce215zHseiJfbHT312lECoPmxx7a7JZD2RWGEoiy2zIskenKZGuwj1LUw0mtYtoyCNXSgQyUnKUx7wzy6LoogikkJS2as0sRR9N5k0iRSCF5NgSmWV51NgSmXWhFIEUBmGRLXMhj5p6rsusUwRSKCRAc03anCkCqZjl2zkWhsUWx5gkUkvPIM77FIFwtvutSKQQy5iEYROa77kXSLPvvkgkDRtY9p4oOTa6CuFYpeLCXA4kmzT8OPa2jraEtGe02sPZxzAWpCnkISZCutIlNN+8uQjC3ibkTnkphrFriG2uBOIzb8FXIl2Ri+vd3fromgOT62hUmBzJTVMkkyKhE2xLmq9lFpwlkmr+i95Nx+aA0KnXLoXftcoTEtW4zMKtt9EQicakurZ0+khdWJuf5bOtS75CC2KXRIaYMKdZpRq1QOoD0WdzjXUb2gp/SFuJj0R81wGJiUb6oidfiYQcl5QSiWl3mRQlxRZEWyJDzbTVbo8ZZSNqs4+966BoLvpSF4wNLEc1tMbu34ePdOp8TMqLT15jvldoQe+bAazVaNtMR3OMxzILo5UHjCwC6TsAzZAwxYpRmgW/rXoUu95qnUZfJBIaOYFOVa4Pn3YRey2QtpXRtHt86ihprD0qqfKdpUBi6pVjYonNSdJtSkRLfG0iSRFN2SLxWRO1FomGiNsY2/lVkzLf2QlE68susJz1D55KHjXLbEg292SosTK5rMo+ZlKXgSzaQAySZO7AQpVqYXzEdHvn2rU9NEOsYJaFQOaN1NHH2BnqdhKzTC2P1OfaXAikRCHzxzxHIc3II6VE5kIgkI9ESvQxXnJc1LjJ0HmcG4FAPhIpjJecJdKXt1QXrrkSCBSJaLHI1qwLU0rG+r1TSCQLgfgsYKLBtCQyK9UXuwDlXJhStoNofW+tnkfX/Gifg1kIBGAp8b1GCzq0nai5SsT3htq+xHxve9hC6nymJKuBZLVENg+wGG0dhQw12GzM0YdLQdG6h6tGF65dIE9wDgDb+Gl0um34fu+u8y30Pr0hEltis9ogw2wiEJsho5FZbRPROkF8TtAcIpGuq3ktkhS4fG/fgZLH2L76iPncLrQuaFkKBFYkMpRIZk0i05BHzD5aTKoKnOCc1cdQaIywTlXF0ZBIVlWYNoaq1qScOzNk9SWHe6/4hvVN6Wzy+A65tB+0fWfN86n+nnXVRkvUsdWZ7AVSM2T7yFjRkIfWiekika7POsVmL4nkgv2dU12MjrE9qxtWjUYgNUtsSiKRsUcfOclD4zNOVcetSyS5RB5NFtmaRRToQ0wUMjqBjIkh5JHzyWpfkUPl1BaN5CqPeSTbRtTCZHKWR43GiNVTloiLPNIQerEbZQSiWY1JOQ5kM0urhUejp+c5/NXq6we4NDq9MXGKzb3rn+ZC6jaQlIRIZGIEIiKfFpGjInKf9d75IrJfRB6uns+z/vceETkkIg+JyMu8czQgJ9iWtN5vpx16Qj2Hv1p92FzKA1F5K+hjNxqPeWiAz9QSlwjkFuBjwH+33rsBuMsY8wERuaH6+9+LyKXANcAzgYuA/y0i/8wYo340Y6MQe9FdrVGUNm1i6roXSFMOs8J13AzAzVw35Zykp+38yX1ZTQ0mRiDGmK8Bjzfevhq4tXp9K/BK6/3bjDFLxpjvAoeAy3Syqkfbit1DDYCqT6iuyGJWqOXRfD2L9F18xhiJPPXkUedtQxtRdxhjjgBUzxdW7+8Cfmhtd7h6LwkhI1X7lvvXHAPRx6xflWZdGNPkV/lzLuceLueeJOm/577/4rW9diNqW+XJtG4ocj1wPcC5P3du8Ae6VmVc7xMSW51xkdAeDgSnn4o38kk+ytuj0kgtjq2cVGtI3cMBDrAnOh2Xc0WjKvOr/Pm692yJ3MPlUen7iqMmVCCPichOY8wREdkJ1DHPYeBia7unAY+2JWCMuQm4CeCiPTtbJdOHfdvFrraF8LudhUnENYI5wB4ViVzKAyq9MW/kkwC8nY8GScRFHNdx89TbQl7IV9f8Xf8GoSLxOUdiJNImDy1CxVETKpC9wLXAB6rnL1rvf1ZEPsRKI+pu4JtROWzBvs1kjX2fXO27krmQw0xUX2px2PhKZOjqSmgU0pSHTYhIQi4wIRJxlcfl3OMchcRKw2aiQETkc8AVwAUichj4fVbE8XkReQPwA+A1AMaY+0Xk88ADwBngra49MFo3K9Jc4cn1JMldHm2i6OPtfBSgVSQxwtCKQi6vrkn3OLTP94mjSVdUWItFo6duoeWi1yQ04mi2i9hC0ZSGzUSBGGN+o+NfL+7Y/v3A+/2y4V2DGYSYCWFD0VeN8RXHJDSijViJPIt7V1/7iCSGPRxIMnDPjkhSVFMu5x5edN831NO1KUPZJzBtQYSiIY86EoHp9qw8i3tXH21czjdXZVLzQr7qFX1MItXAvQWWk7ZxpGaUQ9mHpisSyUUudhSiHXW8nY9OpU2ppksabdQS0R4UWOimCCSQXORRoy2OlLhUY3zEUZgeM1mFeRcfVk8zN2HMIpOqKq6U32o4ZlIgkFYi5QSNx25T0ZBGYTrMnEDezMdXX5dIJH+KOMbNzLSB2OKwqSXyYd41ZHYKDlzHzSrDycfM7919IwBfecGvqKf9oj+tunB/WT3pVWZCIF3yyBXNuTCvufFLq68feff5aumOmd88+AUAbn/2lVPOST+1PABedPc3VCWyKg+AB0kmkdELZBryeDN/zMd5S/D+MXNhXvPwWWGwd+3/dt34+NxLpJYHwKsP7stSIrY4bLQkskYeiRm9QFx5Fx9Wqca8mT9e8xwjkiZr5BDIrhtXlm7RFMkvXfd9/ubmn1dLbzXdO77PgVfpVWFseaTg9+68kf/00nfHpdEhj5oX3b1S+ENE0iuORFGIGDP9YeQX7XmqefOBa733C4k+QiRSy6ILX4l88OH3eeehlb39/46VyK7rmutIoSaSX7rj+wB85lW/rpLeJHnERiKvvnPfuvd8ZTJJHk18JOIUdTgKZM+/gQP3G6d1DbMQyLP2bDL/+kBIwQ6rvrhKZJI42pgkEzV5wESB2PjIpE0cNrESqeVRoyERl+gjVCJt8rBxEYmvPGpcJeJcbXGQiI9AsunGfR2fXX24ENP24dK9GyKPer/QfVOy68bHV6s3ndtc9/hEecBKlSaUpjwAfvOOuKqHa9Xl1Qf7RbBu+zv3TZSHC6HygLNVmt5tfNo8HgzOSivZRCC3H9ix5r3P8rrO7TUaTruiEM3C3xaNTCsCaWJHJC7SaMM3EmmTRxPfaCSk3cMlEgkVhx2NxIjDpi0KiW4o7YlERlmFaQqkjVoq2gJJHTF8nLfoiqMmQiAA3Dd5Ex/ahOIijT76hKLRaGrLRCPaWCXBTQm/8oJf0e1h6ZDIzAoEYBsn1D73w7xrkOrGMx7++zQJZyYQWC+RWIHUtIlESyCq4qhJcVdT98XS3WmRSBGII0Pd6WyeBMJ3G3+/Q/8jPvOqX9frsk1RKGE8AoF1EhllI+pM84fTzsBANOWRiNTjPeaOiIbVIpDEPOO6KvqYdYl0yeMjg+aiMDBFIAlZlUfNrEukiyIRHd6WMO3AKKQIJBHr5FFTJBLN6Sv00hoNr62eU0nkI8BbqodHu/eoBLL7TYd56pt+Mu1sxDNrEnFt+1CQyOlqJcS5kshrJ28yLbLuhdn9psMT9/37T/xM0Gc+9boVEX3n5qcG7d9HZ/TR5HcDP+CK6vm3A/ev0eiFCWk4DeiZOd2zhOrGrwbkoeL481aez43t0WoS2wvjIo2PRX5Gh9D3HIQDPx15L4yLPIDoiMS5sKdIzyUSuaLlUfMh94/KCuU2kZBo5PjzzsoD4PhVatlZYSlwv9fiHnGEVmc+gtpvkGUE4iqPNlwikjr6aCMmIgmWUVskcoXH/iGRiNYYkNCuW48opC/6sHGJRGxpdKEWjXwQ+A+O28ZUU1wiEQ9hjDoCiZEHTI5I+uQBKxIIEUFUJGNHIlfgJw+YXiQSM+7D8YR2lQesRCJ90YiLPEApGvlg9fwHE7bziTi6SNk7M4GsFhSKlcckJsnDphaCS0SiUg36Q+DOiP1riThEI3t/Z+X5qtdHfJ4GHyHJSNXTV6yPRlzlsbr9VQGRyAcnb7KGIRpHE3ehZ1OFufc5p1XTbFZlfOTRRpdIVNtQYgRi0yORWh5NgmSiMfK0RyA+0UcbG7/qL44mThJxEUezKqMtD7saEykNnypMFgLZ8xQxB16ZIOEzCdJkrUyyFAi0SqRLHm04CSWhQGLlAXDy/8WnAR0S8Y024KxEUkUeH0Ml4igCqUkkEFiRiHYPjqpAAH7bTxpt9IpEa+5LQyIa8gA9gYAlkRBx2KSYwFizWyeZIpCahAJJgrJA9j6qmx5YQkkwce70Qd30VAXyfL20kklkCgLJrhdGk323TDsHs8feWxhs1m0uqMpjxphZgeyrblZfJDIO9t4N+2ZglsI02f/14T9zZgViUySSN3vvPvu6SCSM/dViQ0NLZC4EAkUimuy7e/I2ruxtSWvfT84+Qrn9J7AvdDj5yBlSIhMFIiKfFpGjInKf9d77ROQRETlYPV5h/e89InJIRB4SkZelyngfdfVl3fu3DJoNf16qk8zeR9M0oAJsrJ41JNImj1hu/8nKI2f2Hj370GB/SzpDScQlArkFeHnL+x82xjy7enwZQEQuBa4Bnlnt80cisqCVWQ1yl8j+iIKfUhxwVh41++4OF4mrPHyikDZx5B6FxEqkTR6r/xtAIhMFYoz5GuB645CrgduMMUvGmO8Ch4DLIvLnTVf0sWabW+I/Z79CGs306jR9JFJLI6U4YL08bHwl4ht5uFRn+qKOfUv5iGTvV1reC4xI+uSxus3X04okZi7M20Tk3wEHgHcbY/4R2AX8X2ubw9V7yXERx5rtbzn7+srX++27WtCtNF4SmEbn/yshvOSi9f9LLQubPnHY1BK58gXt/9eortgSufJn/KsqtkSuTLFqugJ9ErnqwpVnF3E02f91eEmC7mingWQi8nTgS8aYf179vQP4EWCA/wjsNMb8loj8V+AbxpjPVNt9CviyMWbdMtoicj1wPcBT4F9+ErjqjeFfxFcgbUwSyaRCP0kiMVHLyfBdg3GVR5OmRFK0dWgdDxeRaI0DaYs+fNG4EckkkfgMJAuKQIwxj9WvReQTwJeqPw8DF1ubPg1ovV4aY24CbgL4RREDsLeSQIxIYqijElskPoV+/y3tEtGu7uSOHY2kkIcm+5byjUbaOEm8ROoqjUZEEhqB7DTGHKlevwu43BhzjYg8E/gsK+0eFwF3AbuNMct96f+iiPFZ0qIpGI3oo8mVrw8v+LVEtMUxZBQSGn000Z1jfRbtY9GUyO2NNpPXvygufY3oo0bzdmhtElGdCyMin2NliZsLgMeA36/+fjYrVZjvAW+2hPJe4LdYmYnyTmPMxPsG+gqk5qo3ppEHZLZQSsUQAtESR81YBAJnJdKUh02oSHIVCKyXyOgm04UKBPRP+Jp5FEiKYzkmgfim6SoTTXmAvkBgrUTKZLpIcpRHalKJeJa55Ssrj3mmCKRQ5EFcRDMLIgkdKzL6i+1pSgEIpRw3XZoSiW14HZpViTzZfZ/RC0SbckAKWtzyFTh/2pkI4Pg/uW9bqjCFZGxjnAVo3nnCY9siEIsSfeixzXp9PnoiOYl+D0yq3q0tCdNOhW9+Ry+Qx1kZnFLwJ1V0sK3j/VCRnCSNOFKSoqs1NSHHd7QCeZy1U4SLRPyobySqKZFtdMvDxuUzxyiNmqY8tL7HxupxxnpoEZq/UUbtXWsLPMbZguGL9oE4kyDNc4HjEft3HRu7QLuu29DERRzNz2x+1jRkof2ZfZFHzDyWrh6zWiIh55rGdx9tBNJFSCSSyqIaV4mN1gNWJFI/fHAVa0g1w1ce9mfBeCONJi5yCPmeLt3tZ/CLTLSO96giENerY0wkEkrfjxZylXA5aZoSaYtOQo9DW4TQJFQcNvMiDpv6O0/aL2acTvN8rM897eM9GoGEhtYuhIaBvtHFpGpN7MCuWii1SGIl2lW10RBHoVskKQb4nSHNvKSsBRIqjdCC4yOS0KpJm0S0T5hz0e8FqGWSanLcNNC4Gmsf57GNDs5SICmjDRf6IgWNlu86jTF29Y0dzRBe6/erG1fHJg/IUCDTlkcbY7vFbmE9Q/a2hJBaHqkix6x6YXKSR4q+9sJ0yF0eAIsJ0hyCbASSkzwKs8MYenmyqwZ4kIVAehdM9WTo7ttCYZ7JQiClmlBIxQ70Lyqag7Ds6GOM1ZgsBAJ6VZgyJ6b07tTYA+1yi0y7qi1jk0g2AoH1E+QK/hR5rNA21D8XiYy5zaNJVgKpiZXIvEYhRR4r9M0T0pJISDWmWWWZBbIUCMRHI7lLZAPjG9VZrzCmuQSAVoH2mWQ4dCTiKw7takzMDO5JZC9EWyK+J+40JtX5orUodOroozn/pf4tYiRfN57bv1GI+H1nJg9FTOFaBLYG7tsmDI1bYraRvUBsHmc21thsHvQ6EgkVydDysAkVSVfPWy0TV5FMSx59x3yoQpUysnBlVAIBf4nkFoX0HfAQkUxTHjbN36RPKC7d9s3fTLtKuiMizaHkcZyzi0g1Z1qHkCIKybYNpIuQCCSX9hDXk8u1bSQXebTR1VYSOuZnB+vHdEwj+hi6ofq49awRcWiPzB2dQEKZpkRCWt9PM91GVq01P2qRaM4r2oGOPHwi0y24yWMMgyI1JTK6KszYiD3AtkTsqk3KK2FZMGgtpXu8m7mJQGDYKCRFn38tkyKPQixaUchcCQTyaQ8JpVwNdZlUjSnHu5+5EwiMXyKFYSjymMxcCqRQsGmLQuZBHhrVmFE0ol7Y+FujpTu38SEFd1IvEhQrjxQ3FUtF7NiQrL9nUxyabKN7zkHoEOJCelLJox5YNg+RR5PmMTUe+2YlEFdh2Jn2jUZcehlC5yG0pa15wtsDs7THG9g3HsqxEA2xNGGKhZInjeWpt7G3bX7XnFdrn9gGIiIXi8ificiDInK/iLyjev98EdkvIg9Xz+dZ+7xHRA6JyEMi8rJJn7GR8GjDx4A+XZS+MyK70tY6KZujOrXM39bdrF1YH2/5DFfGetvLjdZz36O5bdt3zXnWtksj6hng3caYXwaeB7xVRC4FbgDuMsbsBu6q/qb63zXAM4GXA38kIgspMl/jMuYiZHzDIpNF4nJH+liJpJhAOOmYaRVae05MVuFuQlJEcNMemdzFRIEYY44YY/6yen0CeBDYBVwN3Fptdivwyur11cBtxpglY8x3gUPAZcr5bqXrBI0dHLXIepm4iMNmC+7DoWsmrb0RWiCHKMhd67lswH2QXerIY7Hx0Dguqat/p8lLJl7duCLydOA5wD3ADmPMEViRDGdrIbuAH1q7Ha7ea6Z1vYgcEJEDmtOS7ZPAt5C7sKiQpstJ5hp1+Jz0vqNjQwuw69T+rrykrLa0XQxsYiQydNtRDiJxPl4icg7wBeCdxpjjItK5act76xp2jTE3ATcBPEPEp+F3ImMYjr2F9kISUl3ZQH+jakyh8G1UjV2OUkMcsSt6TTqebUyz4VlrUaoQnCIQEdnIijz+xBhze/X2YyKys/r/TuBo9f5h4GJr96cBj+pkd7awqzSxSwW2RRda83FcCnXoEpR2/nKQR43PcdOSR0wkPq2qjUsvjACfAh40xnzI+tde4Nrq9bXAF633rxGRzSJyCbAb+KZelmcPzUbSDY1nLboKt8ZK+ht60vdBey3RsTb6DikRl2P0fODfAveKyMHqvd8FPgB8XkTeAPwAeA2AMeZ+Efk88AArkeBbjTGaN5+bKca0TqVdyLcwH7fg6KvO5Dhepmaoas3Ec80Y839ob9cAeHHHPu8H3h+Rr0LmzIM8+shZHkNSJtMVCp4UeZylCKQQRG7Dq4e8JeRYRsYO0aiahUCyyETBmRTrfuba9d71XcciEUgrkWzKrs+dxQrTwy5QmlHICcW0tJgkSk2J5HCPlxCyEYhNjERS1083kn8DYqqVwdvS1ZBIrDxSVF9cj+FYIpFUUUiWAoE8oxHten8K2Z1pPGun20bMcRlj5DFWUkgk+7EybRJphntdotE4YF2Foy0K8RkQ1tx/3WShAJonvtbKWC4Fqj5OLsdcUxra0UeIPOoopO+CkEsVpfn7xF4UsxdIG66RiX1wQmTie3An3Xazr+rzSPUcKpKuE79+P/SH9i1QkxbRSRFxaC2CFBt5dOUjF3m0EXtf5lEKJASfK6S9vS9tEvFpMwkRicuJHyKS0ALVJhFtcfy48XezLcJXKFrVlpxl0UeoSOZGIDW+IglBo5HVVSS+J35sROKKLZHU8mijq3GzTSyabR4uyxjmzGn81kTNthE1NfaScm3/y4VHOCuTJjEn/qR9NQrVRvJrJD3J2vVGZrXBdCjmViA1XetU5kaXRGKY1G4y64ylCzZn5l4gY8KWiFYhP2M9NNMdC2OubuRAEcjIeIRhB4oVCn0UgRQKhWCKQAqFQjBFIIVCIZgikEKhEEwRSEUO99goTMZlEFlhOEYzEtUeQajdf3+68TrXsSBjIsWSB8cZ/0jPWSP7CKTtdpCa0+DbTsacT9AtpJ1vofHdteVxnLXfuQg+H7KMQFwE0XVnNx+GEIVWRNM8JsfRXy/ldOM5JN+a8ugTZY6RSG75GYIsBPIkwqKKep8QkUz6se3/+xSkSRGNa1pDrfzddxx88q0hDt/IKlYiXfN0XNd1mUdhNMlCILH4RiO+P7xLFOGaZl9avtKIjUJ8jkNXVDLt5R19JeIyuW/Sui5FHGeZCYGAu0RCf/y2gh+TFlV6sZFGqERi8w75zLR1lYhPfmsx2iIp4lhP9o2omsSeAHZXr8bJNK2bMs9iQeiLEE8QLrvHKV38fcyUQPoKpOYJkOPJ5CKRWS8ITYnEiKPgxkwJBNolMsuFxoUxiEOra7qWSBHHMMycQJrkXnA0aSuE8/T9a4o8hmMmBVJHIfNYeGyJzOP3LwzLTAoE5rvwHGe+v39hOGZWIIVCIT1FIIVCIZgikEKhEIwY43MbmUSZEPkH4J+AH007Lx5cwLjyC+PLc8lvetry/PPGmKe47JyFQABE5IAxZs+08+HK2PIL48tzyW96YvNcqjCFQiGYIpBCoRBMTgK5adoZ8GRs+YXx5bnkNz1Rec6mDaRQKIyPnCKQQqEwMqYuEBF5uYg8JCKHROSGaeenCxH5nojcKyIHReRA9d75IrJfRB6uns+bYv4+LSJHReQ+673O/InIe6pj/pCIvCyT/L5PRB6pjvFBEXlFRvm9WET+TEQeFJH7ReQd1fs5H+OuPOsdZ2PM1B7AAvB3wDOATcBfA5dOM089ef0ecEHjvf8M3FC9vgH44BTz92vAc4H7JuUPuLQ61puBS6rfYCGD/L4P+J2WbXPI707gudXrbcDfVvnK+Rh35VntOE87ArkMOGSM+Y4x5hRwG3D1lPPkw9XArdXrW4FXTisjxpivsX6J0q78XQ3cZoxZMsZ8FzjEym8xGB357SKH/B4xxvxl9foE8CCwi7yPcVeeu/DO87QFsgv4ofX3Yfq/4DQxwJ0i8hcicn313g5jzBFY+bGAC6eWu3a68pfzcX+biHy7quLU1YGs8isiTweeA9zDSI5xI8+gdJynLRBpeS/XbqHnG2OeC1wJvFVEfm3aGYog1+P+34BfAJ4NHAFurN7PJr8icg7wBeCdxpi+hdRyzrPacZ62QA4DF1t/Pw14dEp56cUY82j1fBS4g5XQ7jER2QlQPR+dXg5b6cpflsfdGPOYMWbZGPME8AnOhs9Z5FdENrJSEP/EGHN79XbWx7gtz5rHedoC+RawW0QuEZFNwDXA3innaR0i8mQR2Va/Bl4K3MdKXq+tNrsW+OJ0cthJV/72AteIyGYRuQTYDXxzCvlbQ10QK17FyjGGDPIrIgJ8CnjQGPMh61/ZHuOuPKse5yFbhTtail/BSuvw3wHvnXZ+OvL4DFZap/8auL/OJ/CzwF3Aw9Xz+VPM4+dYCUdPs3IleUNf/oD3Vsf8IeDKTPL7P4B7gW9XJ/POjPL7r1gJ578NHKwer8j8GHflWe04l5GohUIhmGlXYQqFwogpAikUCsEUgRQKhWCKQAqFQjBFIIVCIZgikEKhEEwRSKFQCKYIpFAoBPP/Adwh7t6q6A27AAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Radius 2\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Radius 3\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Radius 4\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# visualize measurments in space\n", "measurement_image = cle.replace_intensities(tissue, measurements)\n", "print('original')\n", "cle.imshow(measurement_image, min_display_intensity=0, max_display_intensity=100, color_map='jet')\n", "\n", "for radius in range(0, 5):\n", " print('Radius', radius)\n", " # note: this function takes a parametric image the label map instead of a vector and the touch_matrix used above\n", " parametric_image = cle.mean_of_touching_neighbors_map(measurement_image, tissue, radius=radius)\n", " cle.imshow(parametric_image, min_display_intensity=0, max_display_intensity=100, color_map='jet')" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.9.9" } }, "nbformat": 4, "nbformat_minor": 4 }