// Init data for retina. It needs to be ran from the observer and other class too if node is only observing and not calculating... public void InitRetinaGaussSamplingMasks() { float std = 0.12f; // standart deviation MyRandomPool.GenerateRandomNormalVectors(Owner.RetinaPtsDefsMask.Host, new Random(123454321), Owner.RetinaPtsDefsMask.Count, 1, 0, std * std, false); // seed has to be constat for everything & do not normalize. Owner.RetinaPtsDefsMask.SafeCopyToDevice(); }
public override void Execute() { if (Owner.MemoryBlock.Host == null) { Owner.MemoryBlock.SafeCopyToHost(); } MyRandomPool.GenerateRandomNormalVectors(Owner.MemoryBlock.Host, new Random(Owner.Id), Owner.MemoryBlock.Count, 1, Mean, Variance); Owner.MemoryBlock.SafeCopyToDevice(); }