Last active
January 11, 2019 09:31
-
-
Save dmitrysarov/8aced6cc3467d366900f50e9471b9cb1 to your computer and use it in GitHub Desktop.
These lines can help some one to transform grayscale mask to multichannel (equal to number of classes) one hot mask.
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
| def gray2hot(graymask, num_classes=2, include_background=True): | |
| '''Convert grayscale image of mask to multichannel mask | |
| if include_background=True number of channels in output will be | |
| num_classes + 1 | |
| ''' | |
| graymask = graymask.astype(np.int32) | |
| onehot_mask = np.zeros((graymask.shape[0], graymask.shape[1], num_classes+include_background), dtype=np.int32) # +1 relate to background | |
| if include_background: | |
| onehot_mask[:, :, 0] = 1 # initialize all as background at first | |
| if np.all(graymask == 0): | |
| return onehot_mask | |
| indx = list(np.nonzero(graymask)) | |
| indx.append((graymask[np.nonzero(graymask)]-(not include_background))) | |
| onehot_mask[tuple(indx)] = 1 | |
| if include_background: | |
| onehot_mask[:, :, 0] = onehot_mask[:, :, 0] - np.sum(onehot_mask[...,1:], axis=-1) # remove backgound from where foreground exist | |
| return onehot_mask |
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": "code", | |
| "execution_count": 1, | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "from PIL import Image\n", | |
| "import numpy as np\n", | |
| "import matplotlib.pyplot as plt\n", | |
| "import pandas as pd\n", | |
| "import ipdb" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 2, | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "def gray2hot(graymask, num_classes=2, include_background=True): \n", | |
| " '''Convert grayscale image of mask to multichannel mask'''\n", | |
| " graymask = graymask.astype(np.int32)\n", | |
| " onehot_mask = np.zeros((graymask.shape[0], graymask.shape[1], num_classes+include_background), dtype=np.int32) # +1 relate to background\n", | |
| " if include_background:\n", | |
| " onehot_mask[:, :, 0] = 1 # initialize all as background at first\n", | |
| " if np.all(graymask == 0):\n", | |
| " return onehot_mask\n", | |
| " indx = list(np.nonzero(graymask)) \n", | |
| " indx.append((graymask[np.nonzero(graymask)]-(not include_background))) \n", | |
| " onehot_mask[tuple(indx)] = 1\n", | |
| " if include_background:\n", | |
| " onehot_mask[:, :, 0] = onehot_mask[:, :, 0] - np.sum(onehot_mask[...,1:], axis=-1) # remove backgound from where foreground exist\n", | |
| " return onehot_mask" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 11, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "[0. 1. 2.]\n" | |
| ] | |
| }, | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "<matplotlib.image.AxesImage at 0x7fabf150acf8>" | |
| ] | |
| }, | |
| "execution_count": 11, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| }, | |
| { | |
| "data": { | |
| "image/png": "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\n", | |
| "text/plain": [ | |
| "<Figure size 432x288 with 1 Axes>" | |
| ] | |
| }, | |
| "metadata": { | |
| "needs_background": "light" | |
| }, | |
| "output_type": "display_data" | |
| } | |
| ], | |
| "source": [ | |
| "df = pd.read_csv('dataframe.csv')\n", | |
| "df = df[(df['count_one'] != 0) & (df['count_two'] !=0)]\n", | |
| "# df = df[(df['count_one'] !=0)]\n", | |
| "subject, slice, _, _, _ = df.iloc[10]\n", | |
| "PATH = 'converted_images/train_images/' + '{}_{}.png'.format(subject.split('.')[0], slice)\n", | |
| "mask = np.array(Image.open(PATH.replace('train_images', 'train_labels')), dtype=np.float32)\n", | |
| "print(np.unique(mask))\n", | |
| "plt.imshow(mask)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 12, | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "mask_hot = gray2hot(mask, num_classes=2)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 13, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "[0 1]\n" | |
| ] | |
| }, | |
| { | |
| "data": { | |
| "image/png": "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\n", | |
| "text/plain": [ | |
| "<Figure size 432x288 with 1 Axes>" | |
| ] | |
| }, | |
| "metadata": { | |
| "needs_background": "light" | |
| }, | |
| "output_type": "display_data" | |
| }, | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "[0 1]\n" | |
| ] | |
| }, | |
| { | |
| "data": { | |
| "image/png": "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\n", | |
| "text/plain": [ | |
| "<Figure size 432x288 with 1 Axes>" | |
| ] | |
| }, | |
| "metadata": { | |
| "needs_background": "light" | |
| }, | |
| "output_type": "display_data" | |
| }, | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "[0 1]\n" | |
| ] | |
| }, | |
| { | |
| "data": { | |
| "image/png": "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\n", | |
| "text/plain": [ | |
| "<Figure size 432x288 with 1 Axes>" | |
| ] | |
| }, | |
| "metadata": { | |
| "needs_background": "light" | |
| }, | |
| "output_type": "display_data" | |
| } | |
| ], | |
| "source": [ | |
| "for img in np.transpose(mask_hot, (2, 0, 1)):\n", | |
| " print(np.unique(img))\n", | |
| " plt.imshow(img,vmax=1, vmin=0)\n", | |
| " plt.show()" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": null, | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [] | |
| } | |
| ], | |
| "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.6.7" | |
| } | |
| }, | |
| "nbformat": 4, | |
| "nbformat_minor": 2 | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment