spyrit.core.recon.PinvNet.acquire

PinvNet.acquire(x)[source]

Simulates data acquisition

Args:

x: ground-truth images

Shape:

x: ground-truth images with shape \((B,C,H,W)\)

output: measurement vectors with shape \((BC,2M)\)

Example:
>>> B, C, H, M = 10, 1, 64, 64**2
>>> Ord = torch.ones((H,H))
>>> meas = HadamSplit(M, H, Ord)
>>> noise = NoNoise(meas)
>>> prep = SplitPoisson(1.0, M, H*H)
>>> recnet = PinvNet(noise, prep)
>>> x = torch.FloatTensor(B,C,H,H).uniform_(-1, 1)
>>> z = recnet.acquire(x)
>>> print(z.shape)
torch.Size([10, 8192])