def load_data_smoothed(filename, matrixID): profileName = os.path.abspath(filename) frameManager = framemanager_python.FrameManagerWrapper() frameManager.load_profile(profileName); #frameManager.set_filter_none() #frameManager.set_filter_median(1, False) frameManager.set_filter_gaussian(1, 0.85) #frameManager.set_filter_bilateral(2, 1500, 1500) #y = frameManager.get_max_matrix_list(matrixID) y = frameManager.get_average_matrix_list(matrixID) # Value of centroid taxel #featureExtractor = framemanager_python.FeatureExtractionWrapper(frameManager) #numFrames = frameManager.get_tsframe_count() #y = np.empty([numFrames]) #for frameID in range(0,numFrames): # centroid = np.rint(featureExtractor.compute_centroid(frameID, matrixID)).astype(int) # y[frameID] = frameManager.get_texel(frameID, matrixID, centroid[0], centroid[1]) # Median of nonzero values #numFrames = frameManager.get_tsframe_count() #y = np.empty([numFrames]) #for frameID in range(0,numFrames): # tsframe = frameManager.get_tsframe(frameID, matrixID) # tsframe_nonzero = np.ma.masked_where(tsframe == 0, tsframe) # Restrict to nonzero values # median = np.ma.median(tsframe_nonzero) # y[frameID] = np.nan_to_num(median) # NaN to 0 timestamps = frameManager.get_tsframe_timestamp_list() timestamps = (timestamps-timestamps[0]) / 1000.0 # Relative timestamps in seconds return timestamps, y
def load_data(filename, matrixID): frameManager = framemanager_python.FrameManagerWrapper() frameManager.load_profile(filename); averages = frameManager.get_average_matrix_list(matrixID) timestamps = frameManager.get_tsframe_timestamp_list() timestamps = (timestamps-timestamps[0]) / 1000.0 # Relative timestamps in seconds return timestamps, averages
def loadGrasp(profileName): frameManager = framemanager_python.FrameManagerWrapper() features = framemanager_python.FeatureExtractionWrapper(frameManager) frameManager.load_profile(profileName); ######################## # Tactile Sensor Frames ######################## numTSFrames = frameManager.get_tsframe_count(); max_matrix_1 = frameManager.get_max_matrix_list(1) max_matrix_5 = frameManager.get_max_matrix_list(5) timestamps_tsframe_raw = frameManager.get_tsframe_timestamp_list() timestamps_tsframe = (timestamps_tsframe_raw-timestamps_tsframe_raw[0]) / 1000.0 # Relative timestamps in seconds ########### # Features ########### # Compute minibal for each tactile sensor frame minimal_bounding_spheres = np.empty([numTSFrames, 4]) minimal_bounding_spheres.fill(None) for frameID in xrange(0, numTSFrames): if (max_matrix_1[frameID] > 0.0 and max_matrix_5[frameID] > 0.0) : theta = frameManager.get_corresponding_jointangles(frameID) # Corresponding joint angles minimal_bounding_spheres[frameID] = features.compute_minimal_bounding_sphere_centroid(frameID, theta) return timestamps_tsframe, 2*minimal_bounding_spheres[:,3]
def load_data_taxel(filename, matrixID, x, y): profileName = os.path.abspath(filename) frameManager = framemanager_python.FrameManagerWrapper() frameManager.load_profile(profileName); texel = frameManager.get_texel_list(matrixID, x, y) timestamps = frameManager.get_tsframe_timestamp_list() timestamps = (timestamps-timestamps[0]) / 1000.0 # Relative timestamps in seconds return timestamps, texel
def load_data_average(filename, matrixID): profileName = os.path.abspath(filename) frameManager = framemanager_python.FrameManagerWrapper() frameManager.load_profile(profileName) frameManager.set_filter_none() averages = frameManager.get_average_matrix_list(matrixID) timestamps = frameManager.get_tsframe_timestamp_list() timestamps = (timestamps - timestamps[0]) / 1000.0 # Relative timestamps in seconds return timestamps, averages
def load_smoothed(filename, matrixID): profileName = os.path.abspath(filename) frameManager = framemanager_python.FrameManagerWrapper() frameManager.load_profile(profileName) frameManager.set_filter_gaussian(1, 0.85) y = frameManager.get_average_matrix_list(matrixID) #y = frameManager.get_max_matrix_list(matrixID) timestamps = frameManager.get_tsframe_timestamp_list() timestamps = (timestamps - timestamps[0]) / 1000.0 # Relative timestamps in seconds return timestamps, y
def load_data_tsframes3D(filename, matrixID): frameManager = framemanager_python.FrameManagerWrapper() frameManager.load_profile(filename); # Load entire profile as 3D array numTSFrames = frameManager.get_tsframe_count(); tsframe = frameManager.get_tsframe(0, matrixID); width = tsframe.shape[1] height = tsframe.shape[0] tsframes3D = np.empty((height, width, numTSFrames)) # height, width, depth for i in range(numTSFrames): tsframes3D[:,:,i] = np.copy( frameManager.get_tsframe(i, matrixID) ) return tsframes3D
import os, sys print("CWD: " + os.getcwd()) lib_path = os.path.abspath('../lib') sys.path.append(lib_path) import numpy as np import matplotlib.pyplot as plt import framemanager_python # Force reloading of external library (convenient during active development) #reload(framemanager_python) profileName = os.path.abspath("reactive_grasping.dsa") frameManager = framemanager_python.FrameManagerWrapper() frameManager.load_profile(profileName) frameManager.set_filter_median(1, False) numTSFrames = frameManager.get_tsframe_count() starttime = frameManager.get_tsframe_timestamp(0) stoptime = frameManager.get_tsframe_timestamp(numTSFrames) frameID = 42 ###################### # Access frames (copy) ###################### tsframe0 = np.copy(frameManager.get_tsframe(frameID, 0)) tsframe1 = np.copy(frameManager.get_tsframe(frameID, 1)) tsframe2 = np.copy(frameManager.get_tsframe(frameID, 2)) tsframe3 = np.copy(frameManager.get_tsframe(frameID, 3))