Created
January 12, 2021 11:00
-
-
Save tcapelle/25adfa75eb99a5e249f7d78f5131b967 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| { | |
| "cells": [ | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "# Shuffle Rows" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 141, | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "from fastai.vision.all import *\n", | |
| "from matplotlib import cm" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 142, | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "n = 255\n", | |
| "step = 1\n", | |
| "img = torch.arange(0, n, step, dtype=torch.uint8)[:,None] @ torch.ones(1, n, dtype=torch.uint8)\n", | |
| "timg = TensorImageBW(img.unsqueeze(0))" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 143, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "<AxesSubplot:>" | |
| ] | |
| }, | |
| "execution_count": 143, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| }, | |
| { | |
| "data": { | |
| "image/png": "iVBORw0KGgoAAAANSUhEUgAAAR4AAAEeCAYAAABcyXrWAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/d3fzzAAAACXBIWXMAAAsTAAALEwEAmpwYAAAD+ElEQVR4nO3dQY7CMBQFQT7i/ke2OUGCFIkGKVXb2bBqPTtMmL33A6D0/PUHAO5HeICc8AA54QFywgPkhAfIvT783bN24Ko5+oPFA+ROF48vFwJXzRwOHosH6Fk8wFdYPMBfsXiAnMUD5CweIGfxADmLB8hZPEDO4gFyFg+Qs3iAnMUD5CweIGfxADnhAXKOWkDO4gFywgPkHLWAnMUD5CweIGfxADmLB8hZPEDO4gFyFg+Qs3iAnMUD5CweIGfxADmLB8hZPEDO4gFywgPkHLWAnPAAOUctICc8QE54gJw7HiBn8QA54QFywgPk3PEAOYsHyAkPkHPUAnIWD5ATHiAnPEDOHQ+QEx4g56gF5IQHyDlqATmLB8gJD5ATHiDnjgfIWTxATniAnPAAOXc8QM7iAXLCA+SEB8i54wFyFg+Qs3iAnMUD5IQHyAkPkBMeICc8QE54gJzwADnf4wFyFg+QEx4gJzxATniAnPAAOeEBcsID5HyPB8hZPEDO4gFyFg+QEx4gJzxATniAnPAAOeEBch6nAzmLB8gJD5ATHiAnPEBOeICc8AA54QFyp+FZa1WfA7gRiwfI+eYykLN4gJzwADmXy0DO4gFywgPkhAfICQ+Qc7kM5CweICc8QE54gJw7HiBn8QA54QFywgPkhAfIuVwGct5ACOQctYCc8AA54QFyLpeBnMUD5IQHyAkPkBMeIOdyGchZPEBOeICc8AA54QFywgPkhAfIeZwO5CweICc8QE54gJzwADnhAXJ+ZQLIWTxATniAnPAAOeEBcv5lAshZPEBOeICc8AA54QFywgPkhAfICQ+QEx4gJzxATniAnH+ZAHIWD5DzBkIgZ/EAOeEBcsID5IQHyAkPkBMeICc8QE54gJzwADnhAXLCA+SEB8gJD5ATHiAnPEDOGwiBnBeBATlHLSAnPEBOeICc8AA54QFywgPkhAfICQ+QEx4gJzxATniAnPAAOeEBcsID5IQHyAkPkBMeIOcNhEDO4gFywgPkhAfI+XkbIGfxADnhAXKOWkDO4gFyFg+Qs3iAnPAAOUctIGfxADmLB8hZPEBOeICcF4EBOXc8QM5RC8hZPEDO4gFyFg+Qs3iAnPAAOUctIGfxADmLB8hZPEBOeICcoxaQs3iAnMUD5CweIOdFYEDO4gFy7niAnMUD5CweIGfxADnhAXLCA+SEB8gJD5ATHiDncTqQs3iAnPAAOeEBcsID5IQHyHmqBeS8gRDIOWoBOeEBcsID5IQHyAkPkPM4HchZPEBOeICc8AA54QFywgPkPNUCchYPkBMeICc8QE54gJzwADnhAXJefQrkxqoBahYPkBMeICc8QE54gJzwADnhAXJvV+6uIhOB4uQAAAAASUVORK5CYII=\n", | |
| "text/plain": [ | |
| "<Figure size 360x360 with 1 Axes>" | |
| ] | |
| }, | |
| "metadata": { | |
| "needs_background": "light" | |
| }, | |
| "output_type": "display_data" | |
| } | |
| ], | |
| "source": [ | |
| "timg.show()" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "Let's create a dummy image and convert it to tensor" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 144, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "(1, 255, 255)" | |
| ] | |
| }, | |
| "execution_count": 144, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "timg.shape" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "Let's choose some rows to permute" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 145, | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "rows = L(random.choices(range_of(n), k=5))\n", | |
| "idxs = rows.sorted()" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 146, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "((#5) [48,112,196,219,235], (#5) [196,112,235,219,48])" | |
| ] | |
| }, | |
| "execution_count": 146, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "idxs, rows" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 147, | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "out_img = timg.clone()\n", | |
| "out_img[:, idxs, :] = timg[:, rows, :]" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 148, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "<AxesSubplot:>" | |
| ] | |
| }, | |
| "execution_count": 148, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| }, | |
| { | |
| "data": { | |
| "image/png": "iVBORw0KGgoAAAANSUhEUgAAAR4AAAEeCAYAAABcyXrWAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/d3fzzAAAACXBIWXMAAAsTAAALEwEAmpwYAAAD+ElEQVR4nO3dQY7CMBQFQT7i/ke2OUGCFIkGKVXb2bBqPTtMmL33A6D0/PUHAO5HeICc8AA54QFywgPkhAfIvT783bN24Ko5+oPFA+ROF48vFwJXzRwOHosH6Fk8wFdYPMBfsXiAnMUD5CweIGfxADmLB8hZPEDO4gFyFg+Qs3iAnMUD5CweIGfxADnhAXKOWkDO4gFywgPkHLWAnMUD5CweIGfxADmLB8hZPEDO4gFyFg+Qs3iAnMUD5CweIGfxADmLB8hZPEDO4gFywgPkHLWAnPAAOUctICc8QE54gJw7HiBn8QA54QFywgPk3PEAOYsHyAkPkHPUAnIWD5ATHiAnPEDOHQ+QEx4g56gF5IQHyDlqATmLB8gJD5ATHiDnjgfIWTxATniAnPAAOXc8QM7iAXLCA+SEB8i54wFyFg+Qs3iAnMUD5IQHyAkPkBMeICc8QE54gJzwADnf4wFyFg+QEx4gJzxATniAnPAAOeEBcsID5HyPB8hZPEDO4gFyFg+QEx4gJzxATniAnPAAOeEBch6nAzmLB8gJD5ATHiAnPEBOeICc8AA54QFyp+FZa1WfA7gRiwfI+eYykLN4gJzwADmXy0DO4gFywgPkhAfICQ+Qc7kM5CweICc8QE54gJw7HiBn8QA54QFywgPkhAfIuVwGct5ACOQctYCc8AA54QFyLpeBnMUD5IQHyAkPkBMeIOdyGchZPEBOeICc8AA54QFywgPkhAfIeZwO5CweICc8QE54gJzwADnhAXJ+ZQLIWTxATniAnPAAOeEBcv5lAshZPEBOeICc8AA54QFywgPkhAfICQ+QEx4gJzxATniAnH+ZAHIWD5DzBkIgZ/EAOeEBcsID5IQHyAkPkBMeICc8QE54gJzwADnhAXLCA+SEB8gJD5ATHiAnPEDOGwiBnBeBATlHLSAnPEBOeICc8AA54QFywgPkhAfICQ+QEx4gJzxATniAnPAAOeEBcsID5IQHyAkPkBMeIOcNhEDO4gFywgPkhAfI+XkbIGfxADnhAXKOWkDO4gFyFg+Qs3iAnPAAOUctIGfxADmLB8hZPEBOeICcF4EBOXc8QM5RC8hZPEDO4gFyFg+Qs3iAnPAAOUctIGfxADmLB8hZPEBOeICcoxaQs3iAnMUD5CweIOdFYEDO4gFy7niAnMUD5CweIGfxADnhAXLCA+SEB8gJD5ATHiDncTqQs3iAnPAAOeEBcsID5IQHyHmqBeS8gRDIOWoBOeEBcsID5IQHyAkPkPM4HchZPEBOeICc8AA54QFywgPkPNUCchYPkBMeICc8QE54gJzwADnhAXJefQrkxqoBahYPkBMeICc8QE54gJzwADnhAXJvV+6uIhOB4uQAAAAASUVORK5CYII=\n", | |
| "text/plain": [ | |
| "<Figure size 360x360 with 1 Axes>" | |
| ] | |
| }, | |
| "metadata": { | |
| "needs_background": "light" | |
| }, | |
| "output_type": "display_data" | |
| } | |
| ], | |
| "source": [ | |
| "timg.show()" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "a small function" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 221, | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "def permute_rows(img, k=5):\n", | |
| " out_img = img.clone()\n", | |
| " n = img.shape[-2]\n", | |
| " rows = L(random.choices(range_of(n), k=k))\n", | |
| " idxs = rows.sorted()\n", | |
| " out_img[..., idxs, :] = img[..., rows, :] #batch compatible\n", | |
| " return out_img" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "## as transform" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 222, | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "class RandPermute(Transform):\n", | |
| " \"Permute rows on image, all batch identically\"\n", | |
| " order = 100 # After Normalize\n", | |
| " def __init__(self, k=5):\n", | |
| " self.k = k\n", | |
| " \n", | |
| " def encodes(self, img: TensorImage):\n", | |
| " ch,img_h,img_w = img.shape[-3:]\n", | |
| " return permute_rows(img, k=self.k)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 223, | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "tfm = RandPermute(k=50)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 224, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "<AxesSubplot:>" | |
| ] | |
| }, | |
| "execution_count": 224, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| }, | |
| { | |
| "data": { | |
| "image/png": "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\n", | |
| "text/plain": [ | |
| "<Figure size 360x360 with 1 Axes>" | |
| ] | |
| }, | |
| "metadata": { | |
| "needs_background": "light" | |
| }, | |
| "output_type": "display_data" | |
| } | |
| ], | |
| "source": [ | |
| "tfm(timg).show()" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "with a batch:" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 225, | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "batch = torch.stack([timg, timg])" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 227, | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "tf_batch = tfm(batch)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 232, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "image/png": "iVBORw0KGgoAAAANSUhEUgAAAV0AAACmCAYAAAB5qlzZAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/d3fzzAAAACXBIWXMAAAsTAAALEwEAmpwYAAAHWUlEQVR4nO3dT4teZxkG8LzzJ6mGzGhbyphippSKUouI2lIQ7UZx58KFZOFCEXTjph9AP4RfoNt+ARdiQYQKapEq0lYothmxVZomNiSNMZlk3AhZvfe78dwXPs/vt53FuRfXXDznOc857+rk5OQUAD220gMAzETpAjRSugCNlC5AI6UL0EjpAjTaqf749Z2LzpOxqF8cv7hKXFe2Wdq6bJelu/PIw8tMA2GyTUpZum/8+LGmMaCXbJNSlu7+G9tdc0Ar2SalLN2DF/7YNQez+mnmsrLN4tZkuyzd1bbVAGOSbVLK0j0lmIxKtgmpS3crcpoHlifbhGwoXasBBiXbhGzY0/XCGmOSbVLqle7KLRiDkm1CPEhjTrJNyIbSdQvGoGSbENsLzEm2CdlwesFqgEHJNiFl6Z64BWNQsk2K7QXmJNuElKX7r8cf7JoDWsk2KWXp7l6/0zUHtJJtUsrS3b52q2sOaCXbpJSl+++Ds11zQCvZJqUs3b9+43TXHNBKtkkpS/fsu57wMibZJqUs3U+8fL1rDmgl26SUpXt73y0YY5JtUsrS3bl53DUHtJJtUsrSvfx5T3gZk2yTUpbuR9+/1zUHtJJtUsrS/ch7t7vmgFayTcqGD940TQHdZJuQsnQ/eOJM1xzQSrZJKUt37223YIxJtknZ8BFz92CMSbZJ2bC94AA5Y5JtUsrSPfeOA+SMSbZJKUv36qfrww3w/0q2SSmT9+CfrQYYk2yTUj9I2/KwgTHJNilejmBOsk3IhpVu1xjQS7ZJqX8jbU8yGZNsk1KW7s0D92CMSbZJKUv3Y2/e7ZoDWsk2KWXpXnlqu2sOaCXbpGxY6frQM2OSbVKc02VKsk2KI2NMSbZJqX8N+NZJ1xzQSrZJKUv3/c+5BWNMsk1KWbrnX/ZREMYk26SUpXvjvM/fMSbZJqVM3j25ZFCyTYojY0xJtkkpS/fak16VZEyyTUpZuqevOszImGSblLJ0z1xxC8aYZJuUunQ/cICcMck2KfXLEU/7KAhjkm1SytI9e8nn7xiTbJNSn1b0rIFRyTYh9Z7uVftejEm2SSlL94F/2vdiTLJNil8DZkqyTUpZurf3nGVkTLJNSlm6d/a6xoBesk2Kn+thSrJNSlm6tw586JkxyTYp9ZGxyw6QMybZJsX2AlOSbVLK0t294QkvY5JtUurSvd41BvSSbVLqH6b8pFclGZNsk1J/8MYdGKOSbUI8SGNKsk3Khk87ugVjULJNiJUuU5JtUuzpMifZJmTDStctGGOSbVLK0n3umde75oBWsk1KWbq/euXJrjmY1TOZy8o2i1uT7bJ0d6572sCYZJuUsnTP/9rn7xiTbJNSlu7RN7vGgF6yTcqGlyOapoBusk2IN9KYk2wT4uUI5iTbhJSlu7IaYFCyTYrtBeYk24SUpXvh4GrXHNBKtkkpS/dvfzromoNZfS1zWdlmcWuyXZbu4c/uLDEK3Pd85rKyzeLWZLss3be/a9+LMck2KWXp7v/uga45mNV3MpeVbRa3Jttl6d56zu9UMybZJqU+p7tyC8aYZJuUsnS3nGVkULJNyobSvdc1B7SSbVLK0j0+3u6aA1rJNill6d57/VzXHMzqW5nLyjaLW5PtsnTPfeHKEqNAnGyT4vQCU5JtUsrS/crBX7rmgFayTUpZuh/fvdk1B7SSbVLK0n3pH5/pmoNJ/eSpzHVlm6Wty7Y9XaYk26SUpbvjADmDkm1SytLdXgkmY5JtUurXgN2CMSjZJsX2AlOSbVLqc7oPvdk1B7SSbVLK0n312oWuOaCVbJNSf/Dm1KprDmgl26TUe7qe8DIo2Sal3l74+6Ndc0Ar2SalLN2DfT/ex5hkm5SydJ/Yu9w1B7SSbVLK0v3lW5/qmoNZfSlzWdlmcWuyXZbu/s/PLjEK3PftzGVlm8WtyXZZul/90W+XGAXiZJsU315gSrJNSlm6u6u7XXNAK9kmpSzdG3fPdM0BrWSblLJ0H9r9sGsOaCXbpNheYEqyTUpdulvHXXNAK9kmpf65nlOe8DIm2SbF9gJTkm1SNpSuWzDGJNukWOkyJdkmxU+wMyXZJsVKlynJNin2dJmSbJPiyBhTkm1SrHSZkmyTUpbuafteDEq2Sam/p3vKE17GJNuklKX7w5e+1zUHkzr6Qea6ss3S1mW7LN0vfvatJWaBONkmpSzd37/2eNcczOrLmcvKNotbk+3Vycn6ozOvHB06V8Oinj48WiWuK9ssbV22NxwZ87CBMck2KV6OYEqyTUpZuhdf/X7XHEzqtQuZ68o2S1uX7XJP9zdHj1kOsKhnDy9F9nRlm6Wty3a50r105+FlpoH/ejZ0XdlmaeuyXZbuHz48XGAUuO9i6LqyzdLWZbvcXnjvnfNuwVjUI4++G9lekG2Wti7bG04vRP4fYHGyTcqGc7pbXXNAK9kmZUPpbnfNAa1km5QNn3a0GmBMsk2KlS5Tkm1SytMLAPxvuccCaKR0ARopXYBGShegkdIFaKR0ARr9B7IxhooEYUYlAAAAAElFTkSuQmCC\n", | |
| "text/plain": [ | |
| "<Figure size 432x216 with 2 Axes>" | |
| ] | |
| }, | |
| "metadata": { | |
| "needs_background": "light" | |
| }, | |
| "output_type": "display_data" | |
| } | |
| ], | |
| "source": [ | |
| "show_images(tf_batch)" | |
| ] | |
| } | |
| ], | |
| "metadata": { | |
| "kernelspec": { | |
| "display_name": "Python 3", | |
| "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.8.3" | |
| } | |
| }, | |
| "nbformat": 4, | |
| "nbformat_minor": 4 | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment