我有两个数据集列出了在时间t两个神经网络组件的平均电压输出,看起来像这样:
A = [-80.0, -80.0, -80.0, -80.0, -80.0, -80.0, -79.58, -79.55, -79.08, -78.95, -78.77, -78.45,-77.75, -77.18, -77.08, -77.18, -77.16, -76.6, -76.34, -76.35]
B = [-80.0, -80.0, -80.0, -80.0, -80.0, -80.0, -78.74, -78.65, -78.08, -77.75, -77.31, -76.55, -75.55, -75.18, -75.34, -75.32, -75.43, -74.94, -74.7, -74.68]
Run Code Online (Sandbox Code Playgroud)
当两个神经组件在一定程度上"同相"时,这意味着它们是相互关联的.我想要做的是计算A和B之间的相位差,最好是在模拟的整个时间.由于两个组件不太可能完全同相,我想将该相位差与某个阈值进行比较.
这些是非谐振荡器,我不知道它们的功能,只知道这些值,所以我不知道如何确定相位或相应的相位差.
我在Python中使用numpy和scipy来做这个项目(两个程序集都是numpy数组).
任何建议将不胜感激!
编辑:添加图
以下是两个数据集的外观图:

OpenCV有关于生成SIFT描述符的非常好的文档,但这是"弱SIFT"的版本,其中关键点由原始Lowe算法检测.OpenCV示例读取如下内容:
img = cv2.imread('home.jpg')
gray= cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
sift = cv2.SIFT()
kp = sift.detect(gray,None)
kp,des = sift.compute(gray,kp)
Run Code Online (Sandbox Code Playgroud)
我正在寻找的是强/密SIFT,它不检测关键点,而是计算一组补丁(例如16x16像素,8像素填充)的SIFT描述符,覆盖图像作为网格.据我了解,在OpenCV中有两种方法可以做到这一点:
换句话说,我必须sift.detect()用能够提供我所需要的关键点的东西替换该行.
我的问题是OpenCV文档的其余部分,特别是wrt Python,严重缺乏,所以我不知道如何实现这两个方面.我在C++文档中看到网格有关键点检测器,但我不知道如何从Python中使用它们.
另一种方法是切换到VLFeat,它具有非常好的DSift/PHOW实现,但意味着我必须从python切换到matlab.
有任何想法吗?谢谢.
我试图获得用于机器学习任务(特别是使用神经网络分类)的音频文件的单个矢量特征表示.我有计算机视觉和自然语言处理的经验,但我需要一些帮助来加快音频文件的速度.
音频文件有各种各样的功能描述符,但似乎MFCC最常用于音频分类任务.我的问题是:如何将MFCC表示作为音频文件,通常是一个矩阵(大概是系数),并将其转换为单个特征向量?我目前正在使用librosa.
我有一堆音频文件,但它们的形状各不相同:
for filename in os.listdir('data'):
y, sr = librosa.load('data/' + filename)
print filename, librosa.feature.mfcc(y=y, sr=sr).shape
213493.ogg (20, 2375)
120093.ogg (20, 7506)
174576.ogg (20, 2482)
194439.ogg (20, 14)
107936.ogg (20, 2259)
Run Code Online (Sandbox Code Playgroud)
我作为简历人做的是通过做k-means来量化这些系数,然后使用类似scipy.cluster.vq的东西来获得相同形状的向量,我可以将其用作我的NN的输入.这也是你在音频案例中会做的,或者是否有不同/更好的方法解决这个问题?
我有一个2D numpy数组,我想在彩色条中绘图.我无法更改轴,以便显示我的数据集.垂直轴从0到100"向下",而我希望它从0.0上升到0.1.所以我需要做两件事:
以下是我的colorbar图表当前的示例:

以下是代码:
data = np.load('scorr.npy')
(x,y) = np.unravel_index(data.argmax(), data.shape)
max=data[x][y]
fig = plt.figure()
ax = fig.add_subplot(111)
cax = ax.imshow(data, interpolation='nearest')
cbar = fig.colorbar(cax, ticks=[-max, 0, max])
cbar.ax.set_yticklabels([str(-max), '0', str(max)])
plt.show()
Run Code Online (Sandbox Code Playgroud)
有人有什么建议吗?提前致谢!
我想允许客户上传他们自己的配置文件,包括图标,以便我可以随时将它们作为我的应用程序的自定义版本,然后他们可以发布.
但是,我在验证配置文件时遇到了一些麻烦.特别是,我想检查DeveloperCertificate是否真的是一个有效的证书.该配置文件看起来像这样:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>ApplicationIdentifierPrefix</key>
<array>
<string>ABCDEFGH</string>
</array>
<key>CreationDate</key>
<date>2012-03-28T11:17:23Z</date>
<key>DeveloperCertificates</key>
<array>
<data>
MIIFajCCBFKgAwIBAgIIddUra9YprMQwDQYJKoZIhvcNAQEFBQAwgZYxCzAJ
BgNVBAYTAlVTMRMwEQYDVQQKDApBcHBsZSBJbmMuMSwwKgYDVQQLDCNBcHBs
ZSBXb3JsZHdpZGUgRGV2ZWxvcGVyIFJlbGF0aW9uczFEMEIGA1UEAww7QXBw
...
</data>
</array>
...
</dict>
Run Code Online (Sandbox Code Playgroud)
因此,我提取证书,然后想要检查它们,最好使用openssl命令.这些证书使用的加密是什么,如何使用openssl验证它们?我认为这使用pkcs12,但尝试这给我一个错误:
$ openssl pkcs12 -noout -in testcertificate
140653159306912:error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag:tasn_dec.c:1319:
140653159306912:error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error:tasn_dec.c:381:Type=PKCS12
Run Code Online (Sandbox Code Playgroud)
谁能指出我正确的方向?我必须以某种方式验证开发人员证书的有效性.
谢谢
我正在使用scipy的gmean()函数来确定包含电压输出的numpy数组的几何平均值.数字范围介于-80.0和30.0之间.目前,numpy阵列是二维的,给出两个不同测量的电压.
array([[-60.0924, -60.0882],
[-80. , -80. ],
[-80. , -80. ],
...,
[-60.9221, -66.0748],
[-61.0971, -65.9637],
[-61.2706, -65.8803]])
Run Code Online (Sandbox Code Playgroud)
但是,当我采用几何平均值时,我得到NaN:
>>> from scipy import stats as scistats
>>> scistats.gmean(voltages)
array([ NaN, NaN])
Run Code Online (Sandbox Code Playgroud)
有没有人知道可能导致这种情况的原因是什么?难道我做错了什么?
提前致谢!
我正在运行一系列脚本,所有脚本都从不同的矩阵文件中导入数据.似乎显示矩阵的内容需要花费很多时间.通常情况下我会做"更多"并在第一页之后取消显示,但是我在这里自动执行命令行版本.
有没有办法阻止Matlab在加载变量时显示变量的内容?比方说,非详细/守护进程模式?当我搜索时,我找不到办法,但我确信必须有一个.
提前致谢!