{ "cells": [ { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "# Create UMAP of single cell features on EBSS starvation data" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "291 png img file paths loaded: \n" ] } ], "source": [ "from livecellx.sample_data import tutorial_three_image\n", "from pathlib import Path\n", "from livecellx.core.datasets import LiveCellImageDataset\n", "import glob\n", "\n", "dataset_dir_path = Path(\n", " \"../datasets/EBSS_Starvation/tif_STAV-A549_VIM_24hours_NoTreat_NA_YL_Ti2e_2022-12-21/XY16/\"\n", ")\n", "\n", "mask_dataset_path = Path(\"../datasets/EBSS_Starvation/tif_STAV-A549_VIM_24hours_NoTreat_NA_YL_Ti2e_2022-12-21/out/XY16/seg\")\n", "\n", "mask_dataset = LiveCellImageDataset(mask_dataset_path, ext=\"png\")\n", "time2url = sorted(glob.glob(str((Path(dataset_dir_path) / Path(\"*_DIC.tif\")))))\n", "time2url = {i: path for i, path in enumerate(time2url)}\n", "dic_dataset = LiveCellImageDataset(time2url=time2url, ext=\"tif\")" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "100%|██████████| 291/291 [00:18<00:00, 15.91it/s]\n" ] } ], "source": [ "from livecellx.core.io_sc import prep_scs_from_mask_dataset\n", "scs = prep_scs_from_mask_dataset(mask_dataset, dic_dataset)" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "100%|██████████| 6605/6605 [04:13<00:00, 26.06it/s]\n" ] } ], "source": [ "from livecellx.trajectory.feature_extractors import compute_haralick_features, compute_skimage_regionprops\n", "from livecellx.preprocess.utils import normalize_img_to_uint8\n", "from livecellx.core.parallel import parallelize\n", "inputs = []\n", "for sc in scs:\n", " # features = compute_skimage_regionprops(sc, preprocess_img_func=normalize_img_to_uint8, sc_level_normalize=True)\n", " inputs.append({\n", " \"sc\": sc,\n", " \"feature_key\": \"skimage\",\n", " \"preprocess_img_func\": normalize_img_to_uint8,\n", " \"sc_level_normalize\": True,\n", " })\n", "\n", "def compute_skimage_regionprops_wrapper(**input):\n", " sc = input[\"sc\"]\n", " compute_skimage_regionprops(**input)\n", " return sc\n", "scs = parallelize(compute_skimage_regionprops_wrapper, inputs)" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
| \n", " | skimage_area | \n", "skimage_area_bbox | \n", "skimage_area_convex | \n", "skimage_area_filled | \n", "skimage_axis_major_length | \n", "skimage_axis_minor_length | \n", "skimage_centroid-0 | \n", "skimage_centroid-1 | \n", "skimage_centroid_local-0 | \n", "skimage_centroid_local-1 | \n", "... | \n", "skimage_moments_weighted_normalized-2-2 | \n", "skimage_moments_weighted_normalized-2-3 | \n", "skimage_moments_weighted_normalized-3-0 | \n", "skimage_moments_weighted_normalized-3-1 | \n", "skimage_moments_weighted_normalized-3-2 | \n", "skimage_moments_weighted_normalized-3-3 | \n", "skimage_orientation | \n", "skimage_perimeter | \n", "skimage_perimeter_crofton | \n", "skimage_solidity | \n", "
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | \n", "-0.509338 | \n", "-0.462826 | \n", "-0.443450 | \n", "-0.509338 | \n", "-0.756158 | \n", "-0.328665 | \n", "-0.534969 | \n", "-0.723864 | \n", "-0.534969 | \n", "-0.723864 | \n", "... | \n", "-0.315010 | \n", "0.164744 | \n", "-0.037891 | \n", "-0.539973 | \n", "-0.061965 | \n", "-0.325733 | \n", "-0.913183 | \n", "-0.584333 | \n", "-0.585062 | \n", "0.142696 | \n", "
| 1 | \n", "-0.764452 | \n", "-0.620623 | \n", "-0.647537 | \n", "-0.764452 | \n", "-1.019299 | \n", "-1.266440 | \n", "-0.952863 | \n", "-1.153251 | \n", "-0.952863 | \n", "-1.153251 | \n", "... | \n", "-0.179977 | \n", "-0.260524 | \n", "0.017620 | \n", "0.034351 | \n", "-0.219412 | \n", "-0.152237 | \n", "0.231253 | \n", "-1.029229 | \n", "-1.027540 | \n", "0.215172 | \n", "
2 rows × 143 columns
\n", "