Exemplo n.º 1
0
import algorithm.partitionizing as prt
from tsp_solver.greedy import solve_tsp
import algorithm.mineByPattern as mp
#Reading from file
fileName = 'myKinect/v2RanLong.skl'
joint = 'KneeLeft_X'
time, frameNumbers, angles= ae.getAngleVec(fileName, joint, True, 'NEW')

#Extracting clean fractions
minimalCluster=20
fracs = ke.clusterByTime(time, frameNumbers, angles, False, minimalCluster)
prob = 0.1
fracs = ke.filterOutliers(fracs, False, prob)
i=0
cleanedParts, _ = ke.cleanFracs(fracs, False, 5, 1.5)
st.plotParts(cleanedParts)

#Creating pattern to mine for
lenOfCycle = 35
pattern = mp.createFlippedUpattern(angles, lenOfCycle, 3)

#Mining the pattern from the input
fig = plt.figure()
framSize= np.ceil(np.sqrt(len(cleanedParts)))
minedParts = []
minedPartsAsList = []
dises = []
threshold = 0
sizeFactor=2
lengths = []
for index, part in enumerate(cleanedParts):
Exemplo n.º 2
0
for t, a in zip(time, angles):
    if np.abs(lastT - t) < 5:
        currTime.append(t)
        currAngles.append(a)
    else:
        if len(currAngles)>100:
            marginSize = int(len(currTime)*0.1)
            currAngles = currAngles[marginSize:-marginSize]
            #fracs.append((currTime, currAngles))
            anglesSplited.append(currAngles)
            currTime = [t]
            currAngles = [a]
    lastT = t
#fracs = ke.clusterByTime(time, angles, False, minimalCluster)
#cleanedParts, kuku = ke.cleanFracs(fracs, False)
st.plotParts(anglesSplited)
periods =[]
strides = []
stances = []
swings = []
for cluster in anglesSplited:
    maximaOrder=27
    clusteringGranularity=0.5
    breaked = part.breakToPeriods(cluster,maximaOrder, clusteringGranularity)
    for cycle in breaked:
        if len(cycle)>80 and len(cycle)<180:
            #periods.append(cycle)
            strides.append(cycle)
            min = np.argmin(cycle)
            stances.append(cycle[:min])
            swings.append(cycle[min:])