国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

使用python接受tgam的腦波數據實例

瀏覽:3日期:2022-07-30 16:13:54

廢話不多說,來看看實例吧!

# -*- coding: utf-8 -*-import serial filename=’yjy.txt’ t = serial.Serial(’COM5’,57600)b=t.read(3)vaul=[]i=0y=0p=0while b[0]!=170 or b[1]!=170 or b[2]!=4: b=t.read(3) print(b)if b[0]==b[1]==170 and b[2]==4: a=b+t.read(5) print(a) if a[0] == 170 and a[1]==170 and a[2]==4 and a[3]==128 and a[4]==2: while 1: i=i+1# print(i) a=t.read(8)# print(a) sum=((0x80+0x02+a[5]+a[6])^0xffffffff)&0xff if a[0]==a[1]==170 and a[2]==32: y=1 else: y=0 if a[0] == 170 and a[1]==170 and a[2]==4 and a[3]==128 and a[4]==2: p=1 else: p=0 if sum!=a[7] and y!=1 and p!=1: print('wrroy1') b=t.read(3) c=b[0] d=b[1] e=b[2] print(b) while c!=170 or d!=170 or e!=4: c=d d=e e=t.read() print('c:') print(c) print('d:') print(d) print('e:') print(e) if c==(b’xaa’or 170) and d==(b’xaa’or 170) and e==b’x04’: g=t.read(5) print(g) if c == b’xaa’ and d==b’xaa’ and e==b’x04’ and g[0]==128 and g[1]==2: a=t.read(8) print(a) break # if a[0]==a[1]==170 and a[2]==4: # print(type(a)) if a[0] == 170 and a[1]==170 and a[2]==4 and a[3]==128 and a[4]==2: high=a[5] low=a[6]# print(a) rawdata=(high<<8)|low if rawdata>32768: rawdata=rawdata-65536# vaul.append(rawdata) sum=((0x80+0x02+high+low)^0xffffffff)&0xff if sum==a[7]: vaul.append(rawdata) if sum!=a[7]: print('wrroy2') b=t.read(3) c=b[0] d=b[1] e=b[2]# print(b) while c!=170 or d!=170 or e!=4: c=d d=e e=t.read() if c==b’xaa’ and d==b’xaa’ and e==b’x04’: g=t.read(5) print(g) if c == b’xaa’ and d==b’xaa’ and e==b’x04’ and g[0]==128 and g[1]==2: a=t.read(8) print(a) break if a[0]==a[1]==170 and a[2]==32: c=a+t.read(28) print(vaul) print(len(vaul)) for v in vaul: w=0 if v<=102: w+=v q=w/len(vaul) q=str(q) with open(filename,’a’) as file_object: file_object.write(q) file_object.write('n') if 102<v<=204: w+=v q=w/len(vaul) q=str(q) with open(filename,’a’) as file_object: file_object.write(q) file_object.write('n') if 204<v<=306: w+=v q=w/len(vaul) q=str(q) with open(filename,’a’) as file_object: file_object.write(q) file_object.write('n') if 306<v<=408: w+=v q=w/len(vaul) q=str(q) with open(filename,’a’) as file_object: file_object.write(q) file_object.write('n') if 408<v<=510: w+=v q=w/len(vaul) q=str(q) with open(filename,’a’) as file_object: file_object.write(q) file_object.write('n')# print(c) vaul=[]# if i==250:# break# with open(filename,’a’) as file_object:# file_object.write(q)# file_object.write('n')

補充知識:Python處理腦電數據:PCA數據降維

pca.py

#!-coding:UTF-8-from numpy import *import numpy as npdef loadDataSet(fileName, delim=’t’): fr = open(fileName) stringArr = [line.strip().split(delim) for line in fr.readlines()] datArr = [map(float,line) for line in stringArr] return mat(datArr)def percentage2n(eigVals,percentage): sortArray=np.sort(eigVals) #升序 sortArray=sortArray[-1::-1] #逆轉,即降序 arraySum=sum(sortArray) tmpSum=0 num=0 for i in sortArray: tmpSum+=i num+=1 if tmpSum>=arraySum*percentage: return numdef pca(dataMat, topNfeat=9999999): meanVals = mean(dataMat, axis=0) meanRemoved = dataMat - meanVals #remove mean covMat = cov(meanRemoved, rowvar=0) eigVals,eigVects = linalg.eig(mat(covMat)) eigValInd = argsort(eigVals) #sort, sort goes smallest to largest eigValInd = eigValInd[:-(topNfeat+1):-1] #cut off unwanted dimensions redEigVects = eigVects[:,eigValInd] #reorganize eig vects largest to smallest lowData_N = meanRemoved * redEigVects#transform data into new dimensions reconMat_N = (lowData_N * redEigVects.T) + meanVals return lowData_N,reconMat_Ndef pcaPerc(dataMat, percentage=1): meanVals = mean(dataMat, axis=0) meanRemoved = dataMat - meanVals #remove mean covMat = cov(meanRemoved, rowvar=0) eigVals,eigVects = linalg.eig(mat(covMat)) eigValInd = argsort(eigVals) #sort, sort goes smallest to largest n=percentage2n(eigVals,percentage) n_eigValIndice=eigValInd[-1:-(n+1):-1] n_eigVect=eigVects[:,n_eigValIndice] lowData_P=meanRemoved*n_eigVect reconMat_P = (lowData_P * n_eigVect.T) + meanVals return lowData_P,reconMat_P

readData.py

import matplotlib.pyplot as pltfrom pylab import *import numpy as npimport scipy.io as siodef loadData(filename,mName): load_fn = filename load_data = sio.loadmat(load_fn) load_matrix = load_data[mName] #load_matrix_row = load_matrix[0] #figure(mName) #plot(load_matrix,’r-’) #show() #print type(load_data) #print type(load_matrix) #print load_matrix_row return load_matrix

main.py

#!-coding:UTF-8import matplotlib.pyplot as pltfrom pylab import *import numpy as npimport scipy.io as sioimport pcafrom numpy import mat,matriximport scipy as spimport readDataimport pcaif __name__ == ’__main__’: A1=readData.loadData(’6electrodes.mat’,’A1’) lowData_N, reconMat_N= pca.pca(A1,30) lowData_P, reconMat_P = pca.pcaPerc(A1,0.95) #print lowDMat #print reconMat print shape(lowData_N) print shape(reconMat_N) print shape(lowData_P) print shape(reconMat_P)

以上這篇使用python接受tgam的腦波數據實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 中文字幕日韩精品亚洲七区 | 日本精品高清一区二区2021 | 99视频在线观看视频一区 | 最新亚洲精品国自产在线 | 91精品国产91久久 | 亚洲高清在线视频 | 日韩一区二区中文字幕 | 亚洲日本欧美在线 | 香蕉国产人午夜视频在线 | 国产一级特黄全黄毛片 | 欧美一级毛片俄罗斯 | 日韩在线手机看片免费看 | 王朝影院一区二区三区入口 | 99久久综合给久久精品 | 亚洲成a人片在线观看精品 亚洲成a人片在线观看中 | 亚洲一区二区在线免费观看 | 夜色视频一区二区三区 | 高清在线观看自拍视频 | 久久精品国产欧美日韩99热 | 国产亚洲福利精品一区二区 | 亚洲在线视频网站 | 老司机深夜影院入口aaaa | 青草欧美 | 九九久久免费视频 | 国产在线更新 | 看全色黄大色黄大片女图片 | 日产一区2区三区有限公司 日产一区两区三区 | 久草在在线视频免费 | 日本一区二区三区不卡在线视频 | 香蕉久久久久久狠狠色 | 久久久黄色大片 | 成人精品综合免费视频 | 视频一区二区三区自拍 | 国产三级精品最新在线 | 国产免费黄色网址 | b毛片| 老司机亚洲精品影院在线 | 222aaa天堂 | 亚洲另类激情综合偷自拍 | 日韩欧美高清在线 | 久久91精品国产91久久 |