ts.append(time.time() - start)

    plt.plot(loopRange, np.array(ts), marker="o", label="GPU - Taichi")
    print(np.polynomial.polynomial.polyfit(loopRange[1:], ts[1:], 1))

if (True):
    ts = []
    for loop in loopRange:
        beads = []
        for i in range(loop):
            beads.append(N.Bead(50, 50))

        N.XY(beads, img)

        for i in range(20):
            N.Calibrate(beads, [imgc[i]], i)

        N.ComputeCalibration(beads)
        N.XYZ(beads, img)
        print(beads[0])

        start = time.time()
        for i in range(100):
            N.XYZ(beads, img)
        ts.append(time.time() - start)

    plt.plot(loopRange, np.array(ts), marker="o", label="CPU - Numpy")
    print(np.polynomial.polynomial.polyfit(loopRange[1:], ts[1:], 1))

plt.title("Time to run 100 frames")
plt.ylabel("Time(s)")
Example #2
0
sz = mm.GetZ()
T.XY(beads, mm.Get())

# calibrate
imgc = []
for z in zcs:
    imgc.append([])
for t in range(3):
    for i in range(len(zcs)):
        z = zcs[i]
        mm.SetZ(z + sz)
        imgc[i].append(mm.Get())

for i in range(len(zcs)):
    z = zcs[i]
    T.Calibrate(beads, imgc[i], z + sz)

mm.SetZ(sz)
T.ComputeCalibration(beads)

plt.title('Calibration R')
plt.imshow(np.flip(beads[0].Rc, axis=0), cmap="gray")
plt.show()

# test
zts = np.arange(500, 4500, 50)
z0s = []
for z in zts:
    mm.SetZ(sz + z)
    for t in range(100):
        img = mm.Get()