File size: 593 Bytes
5b023ff
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import os, numpy as np
from PIL import Image
os.makedirs("examples/synthetic_phantom", exist_ok=True)
z = 64
y = 128
x = 128
for i in range(z):
    Y, X = np.meshgrid(np.linspace(-1,1,x), np.linspace(-1,1,y))
    cx = 0.2*np.sin(2*np.pi*i/z)
    cy = 0.2*np.cos(2*np.pi*i/z)
    r = np.sqrt((X-cx)**2 + (Y-cy)**2)
    img = (np.exp(-(r**2)/(2*(0.2**2))) * 255).astype(np.uint8)
    img = img + np.random.randint(0,20,size=img.shape).astype(np.uint8)
    Image.fromarray(img).save(f"examples/synthetic_phantom/slice_{i:03d}.png")
print("Synthetic phantom saved to examples/synthetic_phantom/")