Skip to content

Commit

Permalink
Merge pull request #61 from henrypinkard/main
Browse files Browse the repository at this point in the history
Supplementary figs and dir for github pages
  • Loading branch information
henrypinkard authored Oct 21, 2024
2 parents b83c11b + 3759bac commit 3e73f63
Show file tree
Hide file tree
Showing 333 changed files with 191,346 additions and 42,704 deletions.
110 changes: 110 additions & 0 deletions figure_making/animations/tree_figure.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -1754,6 +1754,108 @@
"video_output_path = '/home/hpinkard_waller/data/trees/animation.mp4'\n",
"os.system(f'ffmpeg -y -framerate 20 -i {output_dir}/frame_%03d.png -vf \"scale=ceil(iw/2)*2:ceil(ih/2)*2\" -vcodec libx264 -crf 23 -pix_fmt yuv420p {video_output_path}')\n"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/tmp/ipykernel_216680/1253613364.py:82: DeprecationWarning: ANTIALIAS is deprecated and will be removed in Pillow 10 (2023-07-01). Use LANCZOS or Resampling.LANCZOS instead.\n",
" montage_image = montage_image.resize((1920, 1080), Image.ANTIALIAS)\n"
]
}
],
"source": [
"import numpy as np\n",
"from PIL import Image\n",
"from scipy.ndimage import gaussian_filter\n",
"import os\n",
"\n",
"# Function to add Gaussian noise to an image\n",
"def add_noise(image, gaussian_sigma):\n",
" noise = np.random.normal(0, gaussian_sigma, image.shape)\n",
" noisy_image = image + noise\n",
" return noisy_image\n",
"\n",
"# Function to apply Gaussian blur to each channel of an image\n",
"def blur_each_channel(image, sigma):\n",
" blurred_image = np.zeros_like(image)\n",
" for channel in range(3): # Assuming RGB image\n",
" blurred_image[:, :, channel] = gaussian_filter(\n",
" image[:, :, channel], sigma=sigma, mode='reflect'\n",
" )\n",
" return blurred_image\n",
"\n",
"# Parameters\n",
"shape = (220, 220) # Resize shape for each tree image\n",
"grid_size = (8, 8) # Grid size (rows, columns)\n",
"min_blur = 0 # Minimum blur level\n",
"max_blur = 13 # Maximum blur level\n",
"min_noise = 0 # Minimum noise level\n",
"max_noise = 120 # Maximum noise level\n",
"\n",
"# Directories (update these paths as needed)\n",
"tree_dir = '/home/hpinkard_waller/data/trees/high_res'\n",
"output_path = '/home/hpinkard_waller/data/trees/montage.png'\n",
"\n",
"# Load tree images\n",
"trees = []\n",
"for name in os.listdir(tree_dir):\n",
" img_path = os.path.join(tree_dir, name)\n",
" img = Image.open(img_path).resize(shape)\n",
" trees.append(np.array(img))\n",
"\n",
"# Generate the montage image\n",
"row_images = []\n",
"for y in range(grid_size[0]): # Rows\n",
" col_images = []\n",
" for x in range(grid_size[1]): # Columns\n",
" # Generate random blur and noise levels within limits\n",
" blur_sigma = np.random.uniform(min_blur, max_blur)\n",
" noise_sigma = np.random.uniform(min_noise, max_noise)\n",
"\n",
" # Pick a random tree image\n",
" img = trees[np.random.randint(len(trees))]\n",
"\n",
" # Apply blur and noise\n",
" blurred_img = blur_each_channel(img, blur_sigma)\n",
" noisy_img = add_noise(blurred_img, gaussian_sigma=noise_sigma)\n",
" noisy_img = np.clip(noisy_img, 0, 255).astype(np.uint8)\n",
" col_images.append(noisy_img)\n",
"\n",
" # Concatenate images horizontally\n",
" row_image = np.hstack(col_images)\n",
" row_images.append(row_image)\n",
"\n",
"# Concatenate images vertically to form the grid\n",
"montage_image = np.vstack(row_images)\n",
"\n",
"# Crop to 16:9 aspect ratio and resize to 1920x1080\n",
"h, w = montage_image.shape[:2]\n",
"target_aspect_ratio = 16 / 9\n",
"current_aspect_ratio = w / h\n",
"\n",
"if current_aspect_ratio > target_aspect_ratio:\n",
" # Crop width\n",
" new_w = int(h * target_aspect_ratio)\n",
" start_w = (w - new_w) // 2\n",
" montage_image = montage_image[:, start_w:start_w + new_w]\n",
"elif current_aspect_ratio < target_aspect_ratio:\n",
" # Crop height\n",
" new_h = int(w / target_aspect_ratio)\n",
" start_h = (h - new_h) // 2\n",
" montage_image = montage_image[start_h:start_h + new_h, :]\n",
"\n",
"montage_image = Image.fromarray(montage_image)\n",
"montage_image = montage_image.resize((1920, 1080), Image.ANTIALIAS)\n",
"\n",
"# Save the final montage image\n",
"montage_image.save(output_path)\n"
]
}
],
"metadata": {
Expand All @@ -1763,7 +1865,15 @@
"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.10.6"
}
},
Expand Down
64 changes: 64 additions & 0 deletions figure_making/bayer_figure.ipynb

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ def compute_nlls(model, test_dataset, max_num, markers):
return np.array(negative_log_likelihoods), np.array(marker_indices)


def estimate_mi(model_name, config, patch_size, num_images=5000, num_patches=10000, test_set_fraction=0.1, confidence=0.9):
def estimate_mi(model_name, config, patch_size, num_images=5000, num_patches=10000, test_set_fraction=0.1, confidence=0.95):
saving_name = f'{model_name}_{patch_size}patch_mi_estimates'

# # check if already cached
Expand Down Expand Up @@ -94,7 +94,7 @@ def estimate_mi(model_name, config, patch_size, num_images=5000, num_patches=100
pixel_cnn = PixelCNN()
# stationary_gp = StationaryGaussianProcess(noisy_patches)

pixel_cnn.fit(noisy_patches, verbose=False, max_epochs=500, patience=100)
pixel_cnn.fit(noisy_patches, verbose=False, max_epochs=1000, patience=300)
# stationary_gp.fit(noisy_patches, verbose=False)


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ patch_size: 40
saving_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/
train_script_path: /home/hpinkard_waller/GitRepos/EncodingInformation/led_array/phenotyping_experiments/compute_mi_and_phenotyping_performance.py
training:
attempt_number: 7
attempt_number: 8
elapsed: 0
start_date: '2023-12-13'
tensorboard_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/Analysis_Synthetic_Noise_v10_Brightfield_150photons_replicate_0/tensorboard/
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ patch_size: 40
saving_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/
train_script_path: /home/hpinkard_waller/GitRepos/EncodingInformation/led_array/phenotyping_experiments/compute_mi_and_phenotyping_performance.py
training:
attempt_number: 8
attempt_number: 9
elapsed: 0
start_date: '2023-12-13'
tensorboard_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/Analysis_Synthetic_Noise_v10_Brightfield_150photons_replicate_1/tensorboard/
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ patch_size: 40
saving_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/
train_script_path: /home/hpinkard_waller/GitRepos/EncodingInformation/led_array/phenotyping_experiments/compute_mi_and_phenotyping_performance.py
training:
attempt_number: 9
attempt_number: 10
elapsed: 0
start_date: '2023-12-13'
tensorboard_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/Analysis_Synthetic_Noise_v10_Brightfield_150photons_replicate_10/tensorboard/
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ patch_size: 40
saving_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/
train_script_path: /home/hpinkard_waller/GitRepos/EncodingInformation/led_array/phenotyping_experiments/compute_mi_and_phenotyping_performance.py
training:
attempt_number: 1
attempt_number: 4
elapsed: 0
start_date: '2023-12-13'
tensorboard_dir: /home/hpinkard_waller/models/template/tensorboard/
tensorboard_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/Analysis_Synthetic_Noise_v10_Brightfield_150photons_replicate_11/tensorboard/
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ patch_size: 40
saving_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/
train_script_path: /home/hpinkard_waller/GitRepos/EncodingInformation/led_array/phenotyping_experiments/compute_mi_and_phenotyping_performance.py
training:
attempt_number: 1
attempt_number: 3
elapsed: 0
start_date: '2023-12-13'
tensorboard_dir: /home/hpinkard_waller/models/template/tensorboard/
tensorboard_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/Analysis_Synthetic_Noise_v10_Brightfield_150photons_replicate_12/tensorboard/
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ patch_size: 40
saving_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/
train_script_path: /home/hpinkard_waller/GitRepos/EncodingInformation/led_array/phenotyping_experiments/compute_mi_and_phenotyping_performance.py
training:
attempt_number: 1
attempt_number: 4
elapsed: 0
start_date: '2023-12-13'
tensorboard_dir: /home/hpinkard_waller/models/template/tensorboard/
tensorboard_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/Analysis_Synthetic_Noise_v10_Brightfield_150photons_replicate_13/tensorboard/
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ patch_size: 40
saving_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/
train_script_path: /home/hpinkard_waller/GitRepos/EncodingInformation/led_array/phenotyping_experiments/compute_mi_and_phenotyping_performance.py
training:
attempt_number: 1
attempt_number: 3
elapsed: 0
start_date: '2023-12-13'
tensorboard_dir: /home/hpinkard_waller/models/template/tensorboard/
tensorboard_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/Analysis_Synthetic_Noise_v10_Brightfield_150photons_replicate_14/tensorboard/
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ patch_size: 40
saving_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/
train_script_path: /home/hpinkard_waller/GitRepos/EncodingInformation/led_array/phenotyping_experiments/compute_mi_and_phenotyping_performance.py
training:
attempt_number: 6
attempt_number: 7
elapsed: 0
start_date: '2023-12-13'
tensorboard_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/Analysis_Synthetic_Noise_v10_Brightfield_150photons_replicate_2/tensorboard/
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ patch_size: 40
saving_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/
train_script_path: /home/hpinkard_waller/GitRepos/EncodingInformation/led_array/phenotyping_experiments/compute_mi_and_phenotyping_performance.py
training:
attempt_number: 9
attempt_number: 10
elapsed: 0
start_date: '2023-12-13'
tensorboard_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/Analysis_Synthetic_Noise_v10_Brightfield_150photons_replicate_3/tensorboard/
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ patch_size: 40
saving_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/
train_script_path: /home/hpinkard_waller/GitRepos/EncodingInformation/led_array/phenotyping_experiments/compute_mi_and_phenotyping_performance.py
training:
attempt_number: 6
attempt_number: 7
elapsed: 0
start_date: '2023-12-13'
tensorboard_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/Analysis_Synthetic_Noise_v10_Brightfield_150photons_replicate_4/tensorboard/
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ patch_size: 40
saving_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/
train_script_path: /home/hpinkard_waller/GitRepos/EncodingInformation/led_array/phenotyping_experiments/compute_mi_and_phenotyping_performance.py
training:
attempt_number: 9
attempt_number: 10
elapsed: 0
start_date: '2023-12-13'
tensorboard_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/Analysis_Synthetic_Noise_v10_Brightfield_150photons_replicate_5/tensorboard/
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ patch_size: 40
saving_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/
train_script_path: /home/hpinkard_waller/GitRepos/EncodingInformation/led_array/phenotyping_experiments/compute_mi_and_phenotyping_performance.py
training:
attempt_number: 6
attempt_number: 7
elapsed: 0
start_date: '2023-12-13'
tensorboard_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/Analysis_Synthetic_Noise_v10_Brightfield_150photons_replicate_6/tensorboard/
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ patch_size: 40
saving_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/
train_script_path: /home/hpinkard_waller/GitRepos/EncodingInformation/led_array/phenotyping_experiments/compute_mi_and_phenotyping_performance.py
training:
attempt_number: 7
attempt_number: 10
elapsed: 0
start_date: '2023-12-13'
tensorboard_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/Analysis_Synthetic_Noise_v10_Brightfield_150photons_replicate_7/tensorboard/
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ patch_size: 40
saving_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/
train_script_path: /home/hpinkard_waller/GitRepos/EncodingInformation/led_array/phenotyping_experiments/compute_mi_and_phenotyping_performance.py
training:
attempt_number: 6
attempt_number: 7
elapsed: 0
start_date: '2023-12-13'
tensorboard_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/Analysis_Synthetic_Noise_v10_Brightfield_150photons_replicate_8/tensorboard/
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ patch_size: 40
saving_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/
train_script_path: /home/hpinkard_waller/GitRepos/EncodingInformation/led_array/phenotyping_experiments/compute_mi_and_phenotyping_performance.py
training:
attempt_number: 6
attempt_number: 7
elapsed: 0
start_date: '2023-12-13'
tensorboard_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/Analysis_Synthetic_Noise_v10_Brightfield_150photons_replicate_9/tensorboard/
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ patch_size: 40
saving_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/
train_script_path: /home/hpinkard_waller/GitRepos/EncodingInformation/led_array/phenotyping_experiments/compute_mi_and_phenotyping_performance.py
training:
attempt_number: 7
attempt_number: 8
elapsed: 0
start_date: '2023-12-13'
tensorboard_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/Analysis_Synthetic_Noise_v10_Brightfield_450photons_replicate_0/tensorboard/
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ patch_size: 40
saving_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/
train_script_path: /home/hpinkard_waller/GitRepos/EncodingInformation/led_array/phenotyping_experiments/compute_mi_and_phenotyping_performance.py
training:
attempt_number: 6
attempt_number: 7
elapsed: 0
start_date: '2023-12-13'
tensorboard_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/Analysis_Synthetic_Noise_v10_Brightfield_450photons_replicate_1/tensorboard/
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ patch_size: 40
saving_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/
train_script_path: /home/hpinkard_waller/GitRepos/EncodingInformation/led_array/phenotyping_experiments/compute_mi_and_phenotyping_performance.py
training:
attempt_number: 8
attempt_number: 9
elapsed: 0
start_date: '2023-12-13'
tensorboard_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/Analysis_Synthetic_Noise_v10_Brightfield_450photons_replicate_10/tensorboard/
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ patch_size: 40
saving_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/
train_script_path: /home/hpinkard_waller/GitRepos/EncodingInformation/led_array/phenotyping_experiments/compute_mi_and_phenotyping_performance.py
training:
attempt_number: 1
attempt_number: 4
elapsed: 0
start_date: '2023-12-13'
tensorboard_dir: /home/hpinkard_waller/models/template/tensorboard/
tensorboard_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/Analysis_Synthetic_Noise_v10_Brightfield_450photons_replicate_11/tensorboard/
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ patch_size: 40
saving_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/
train_script_path: /home/hpinkard_waller/GitRepos/EncodingInformation/led_array/phenotyping_experiments/compute_mi_and_phenotyping_performance.py
training:
attempt_number: 1
attempt_number: 3
elapsed: 0
start_date: '2023-12-13'
tensorboard_dir: /home/hpinkard_waller/models/template/tensorboard/
tensorboard_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/Analysis_Synthetic_Noise_v10_Brightfield_450photons_replicate_12/tensorboard/
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ patch_size: 40
saving_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/
train_script_path: /home/hpinkard_waller/GitRepos/EncodingInformation/led_array/phenotyping_experiments/compute_mi_and_phenotyping_performance.py
training:
attempt_number: 1
attempt_number: 5
elapsed: 0
start_date: '2023-12-13'
tensorboard_dir: /home/hpinkard_waller/models/template/tensorboard/
tensorboard_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/Analysis_Synthetic_Noise_v10_Brightfield_450photons_replicate_13/tensorboard/
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ patch_size: 40
saving_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/
train_script_path: /home/hpinkard_waller/GitRepos/EncodingInformation/led_array/phenotyping_experiments/compute_mi_and_phenotyping_performance.py
training:
attempt_number: 1
attempt_number: 3
elapsed: 0
start_date: '2023-12-13'
tensorboard_dir: /home/hpinkard_waller/models/template/tensorboard/
tensorboard_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/Analysis_Synthetic_Noise_v10_Brightfield_450photons_replicate_14/tensorboard/
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ patch_size: 40
saving_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/
train_script_path: /home/hpinkard_waller/GitRepos/EncodingInformation/led_array/phenotyping_experiments/compute_mi_and_phenotyping_performance.py
training:
attempt_number: 7
attempt_number: 10
elapsed: 0
start_date: '2023-12-13'
tensorboard_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/Analysis_Synthetic_Noise_v10_Brightfield_450photons_replicate_2/tensorboard/
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ patch_size: 40
saving_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/
train_script_path: /home/hpinkard_waller/GitRepos/EncodingInformation/led_array/phenotyping_experiments/compute_mi_and_phenotyping_performance.py
training:
attempt_number: 8
attempt_number: 9
elapsed: 0
start_date: '2023-12-13'
tensorboard_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/Analysis_Synthetic_Noise_v10_Brightfield_450photons_replicate_3/tensorboard/
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ patch_size: 40
saving_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/
train_script_path: /home/hpinkard_waller/GitRepos/EncodingInformation/led_array/phenotyping_experiments/compute_mi_and_phenotyping_performance.py
training:
attempt_number: 6
attempt_number: 7
elapsed: 0
start_date: '2023-12-13'
tensorboard_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/Analysis_Synthetic_Noise_v10_Brightfield_450photons_replicate_4/tensorboard/
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ patch_size: 40
saving_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/
train_script_path: /home/hpinkard_waller/GitRepos/EncodingInformation/led_array/phenotyping_experiments/compute_mi_and_phenotyping_performance.py
training:
attempt_number: 6
attempt_number: 10
elapsed: 0
start_date: '2023-12-13'
tensorboard_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/Analysis_Synthetic_Noise_v10_Brightfield_450photons_replicate_5/tensorboard/
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ patch_size: 40
saving_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/
train_script_path: /home/hpinkard_waller/GitRepos/EncodingInformation/led_array/phenotyping_experiments/compute_mi_and_phenotyping_performance.py
training:
attempt_number: 6
attempt_number: 7
elapsed: 0
start_date: '2023-12-13'
tensorboard_dir: /home/hpinkard_waller/models/Synthetic_Noise_v10/Analysis_Synthetic_Noise_v10_Brightfield_450photons_replicate_6/tensorboard/
Loading

0 comments on commit 3e73f63

Please sign in to comment.