12345678910111213141516171819202122232425 |
- import numpy as np
- import matplotlib.pyplot as plt
- def plot_crops(crops, title, scatter_mid=False, names=None):
- n_crops = len(crops)
- if n_crops == 0: return
- rows = int(np.ceil(np.sqrt(n_crops)))
- cols = int(np.ceil(n_crops / rows))
- fig, axs = plt.subplots(rows, cols, figsize=(16,9))
- fig.suptitle(title, fontsize=16)
- [axs[np.unravel_index(i, axs.shape)].axis("off") for i in range(cols*rows)]
- for i, crop in enumerate(crops):
- ax = axs[np.unravel_index(i, axs.shape)]
- if names is not None:
- ax.set_title(names[i])
- ax.imshow(crop)
- if scatter_mid:
- middle_h, middle_w = crop.shape[0] / 2, crop.shape[1] / 2
- ax.scatter(middle_w, middle_h, marker="x")
|