name for name in os.listdir(rootDir) if os.path.isdir(os.path.join(rootDir, name)) ] trainingData = videoDataset2stream(folderList=listOfFolders, rootDir=rootDir, rootDir_rgb=rootDir_rgb, N_FRAME=N_FRAME) dataloader = DataLoader(trainingData, batch_size=BATCH_SIZE, shuffle=True, num_workers=1) ## Initializing r, theta P, Pall = gridRing(N) Drr = abs(P) Drr = torch.from_numpy(Drr).float() Dtheta = np.angle(P) Dtheta = torch.from_numpy(Dtheta).float() def loadModel(ckpt_file): loadedcheckpoint = torch.load(ckpt_file) #model.load_state_dict(loadedcheckpoint['state_dict']) #optimizer.load_state_dict(loadedcheckpoint['optimizer']) stateDict = loadedcheckpoint['state_dict'] # load parameters Dtheta = stateDict['l1.theta'] Drr = stateDict['l1.rr']
K = np.matmul(np.matmul(P_old,H.T),np.linalg.inv(S)) # (4,4) (4,1) (1,1) I = F # (4,4) x_new = x_old + (K * y_err).T # (1,4) = (1,4) + ((4,1)(1,1)).T # print('correction after obs: ',(K * y_err).T) P_new = np.matmul((I - np.matmul(K, H)), P_old) # (4,4) = ((4,4) - (4,1)(1,4)) (4,4) x_old = x_new # (1,4) P_old = np.matmul(np.matmul(F,P_new),F.T) + Q return x_old, P_old Po,Pall = gridRing(4) poles = [Pall[0], Pall[2]] print(poles) Drr = abs(Po) Dtheta = np.angle(Po) WVar = [] # generate dictionary for i in range(0, N): # matrix 8 W1 = (Drr**i) * mt.cos(i * Dtheta) W2 = (-Drr**i) * mt.cos(i * Dtheta) W3 = (Drr**i) * mt.sin(i * Dtheta) W4 = (-Drr**i) * mt.sin(i * Dtheta) W = np.concatenate((W1, W2, W3, W4), 0) W = np.expand_dims(W, axis=0)