小编tom*_*m10的帖子

如何使用python加入两个wav文件?

我正在使用python编程语言,我想在其他wav文件的末尾加入wav文件?我在论坛中有一个问题,建议如何合并两个wav文件,即在某个偏移处添加一个wav文件的内容,但我想在彼此的末尾加入两个wav文件...

而且我有一个问题在玩我自己的wav文件,使用winsound模块..我能够播放声音,但在播放任何Windows声音之前使用time.sleep一段时间,不利的是,如果我想玩一个声音更长时间.睡眠(N),N秒也是,在N秒播放winsound nd停止后,窗口声音将重叠.

任何人都可以帮助??请建议如何解决这些问题...

提前致谢

python audio wav

20
推荐指数
6
解决办法
3万
查看次数

通过USB闪存驱动器使用Mercurial

简而言之:
如何使用Hg在使用闪存驱动器作为中介的两台计算机之间同步存储库?

更详细:
我经常在没有联网的计算机上开发代码,我使用USB闪存驱动器在这些机器之间传输文件.现在我想在每台机器上使用Hg存储库开发一些软件,我可以使用闪存驱动器传输机制经常进行同步.

我对Hg略显熟悉,因为我以最简单的方式使用它来仅对我自己在独立机器上的工作进行版本控制,但我不确定应该做些什么来使用它来使用闪存同步两台计算机之间的存储库作为中间人开车.也许,例如,我需要在闪存驱动器上创建一个临时存储库(使用"clone")然后从中同步到(使用"push"和"pull"),并通过A→flash,flash→B执行此操作,B→闪光灯,闪光灯→A?关于动作和命令的顺序,你的答案越具体,对我来说就越有用.

最后,我如何开始这个过程?我是否需要做一些事情,所以Hg知道这些都是一个代码库的一部分?例如,我在不同计算机上的每个当前存储库都是在我开始使用Hg之前独立创建的,尽管所有代码都相似,但每个代码都进行了独立更改,并且存储库对彼此一无所知.如果我需要做的事情与我需要做的事情不同,一旦我将所有内容统一起来,对我来说拼写这个过程也会有所帮助.

如果它很重要,这些机器可以运行任何Windows,Mac或Linux,并且我的Mercurial版本在每台机器上略有不同(尽管Mercurial版本可以根据需要进行统一).

mercurial cross-platform

15
推荐指数
2
解决办法
2981
查看次数

试图模拟一维波

我正在尝试使用一系列谐波振荡器对一维波进行简化模拟.根据教科书的说法x[i],第i个振荡器位置的微分方程(假设均衡x[i]=0)证明了这个:

m*x[i]''=-k(2*x[i]-x[i-1]-x[i+1])

(导数是时间)所以我试图用以下算法数值计算动力学.这osc[i]是第i个振荡器作为具有属性loc(绝对位置),vel(速度),acc(加速度)和bloc(平衡位置)的对象,dt是时间增量:

for every i:
    osc[i].vel+=dt*osc[i].acc;
    osc[i].loc+=dt*osc[i].vel;
    osc[i].vel*=0.99;    
    osc[i].acc=-k*2*(osc[i].loc-osc[i].bloc);

    if(i!=0){
      osc[i].acc+=+k*(osc[i-1].loc-osc[i-1].bloc);
    }
    if(i!=N-1){
      osc[i].acc+=+k*(osc[i+1].loc-osc[i+1].bloc);
    }
Run Code Online (Sandbox Code Playgroud)

您可以在此处查看算法,只需单击即可向第6个振荡器发出脉冲.你可以看到它不仅不会产生波浪,而且还会产生一个总能量增加的运动(即使我加了阻尼!).我究竟做错了什么?

algorithm physics numerical-methods

6
推荐指数
1
解决办法
553
查看次数

如何制作MFCC算法?

我想制作Mel-Frequency倒频谱算法,但有些事情我不明白.

FTT完成后,我们需要"使用三角形重叠窗口将上面获得的光谱的功率映射到梅尔尺度上".

我知道如何计算三角形,我也知道如何传递到mel scale.我根本不知道该如何处理它们.

如果定义了三角形,我如何将上面获得的光谱的功率映射到梅尔尺度?

是这样的:将三角形内的频率相加,然后将其传递给mel刻度?或者根据重量值(由该点处三角形的高度定义)对三角形内的频率求和,然后将其传递给梅尔尺度?或者通过三角形内的所有频率来根据weith值进行缩放?另一件事?

任何人都可以向我澄清这一点

algorithm voice signal-processing fft detection

5
推荐指数
1
解决办法
4324
查看次数

使用Python自动识别字体

您可能已经听说过,有一个在线字体识别服务呼叫WhatTheFont

我对该工具背后的技术感到好奇。我认为基本上可以将其分为两个部分:

  1. 从各种格式的字体文件生成图像,有关字体文件扩展名的列表,请参阅http://www.fileinfo.com/filetypes/font

  2. 比较提交的图像和所有生成的图像

感谢您分享一些建议或python代码以实现上述两个步骤。

python fonts image-processing

5
推荐指数
1
解决办法
3286
查看次数

matplotlib + wxpython 的图例大小不正确

我在 wxpython 框架中嵌入了一个 matplotlib 图形,并带有几个 sizer。一切正常,直到我包含一个图例,但随后 sizer 似乎并没有与图例一起工作。

即使我通过在角落处拖动来调整窗口大小,主图形也会改变大小,但只显示图例的边缘。

在此处输入图片说明

也就是说,请注意图例在 wxFrame 中不可见。

import wx
import matplotlib as mpl
from matplotlib.backends.backend_wxagg import FigureCanvasWxAgg as Canvas
from random import shuffle  

class PlotFrame(wx.Frame):

    def __init__(self):     

        wx.Frame.__init__(self, None, -1, title="Plot", size=(-1, -1))
        self.main_panel = wx.Panel(self, -1)
        self.plot_panel = PlotPanel(self.main_panel)

        s0 = wx.BoxSizer(wx.VERTICAL)
        s0.Add(self.main_panel, 1, wx.EXPAND)
        self.SetSizer(s0)
        self.s0 = s0

        self.main_sizer = wx.BoxSizer(wx.VERTICAL)        
        self.main_sizer.Add(self.plot_panel, 1, wx.EXPAND)        
        self.main_panel.SetSizer(self.main_sizer)       

class PlotPanel(wx.Panel):

    def __init__(self, parent, id = -1, dpi = None, **kwargs):
        wx.Panel.__init__(self, parent, id=id, **kwargs)
        self.figure = …
Run Code Online (Sandbox Code Playgroud)

wxpython matplotlib

4
推荐指数
1
解决办法
2898
查看次数

不均匀间隔点之间的直观插值

我有以下图表,我想使用Python和Matplotlib将数字化为高质量的出版物等级数字:

在此输入图像描述

我使用数字化程序从3个数据集中的一个中获取一些样本:

x_data = np.array([
1,
1.2371,
1.6809,
2.89151,
5.13304,
9.23238,
])

y_data = np.array([
0.0688824,
0.0490012,
0.0332843,
0.0235889,
0.0222304,
0.0245952,
])
Run Code Online (Sandbox Code Playgroud)

我已经尝试了3种不同的方法来拟合这些数据点的曲线.第一种方法是使用通过点绘制样条曲线scipy.interpolate import spline

这导致(将实际数据点绘制为蓝色标记):

在此输入图像描述

这显然没有好处.

我的第二次尝试是使用一系列不同的顺序polinimials绘制曲线拟合scipy.optimize import curve_fit.即使是四阶多项式,答案也是无用的(较低阶的更无用):

在此输入图像描述

最后,我曾经scipy.interpolate import interp1d尝试在数据点之间进行插值.线性插值显然会产生预期的结果,但线条是直的,本练习的目的是获得一条漂亮的平滑曲线:

在此输入图像描述

如果我然后使用三次插值我得到一个rubish结果,但是二次插值会产生稍微好一点的结果:

在此输入图像描述

但它还没有完全存在,我认为interp1d不能进行更高阶的插值.

有没有人有一个很好的方法这样做?也许我会尝试在IPE或其他什么方面做得更好?

谢谢!

python interpolation matplotlib scipy

4
推荐指数
1
解决办法
1694
查看次数

如何在matplotlib图例中添加字符串作为艺术家?

我试图在python图中创建一个图例,其中艺术家是一个字符串(单个字母),然后标记.例如,我想要一个下图的图例:

import numpy as np
import matplotlib.pyplot as plt
import string

N = 7
x = np.random.rand(N)
y = np.random.rand(N)
colors = np.random.rand(N)
area = np.pi * (15 * np.random.rand(N))**2 

plt.scatter(x, y, s=area, c=colors, alpha=0.5)
for i,j in enumerate(zip(x,y)):
    plt.annotate(list(string.ascii_uppercase)[i],xy=j)
plt.show()
Run Code Online (Sandbox Code Playgroud)

传说的地方如下:

A - 型号名称A.

B - 型号名称B.

C - 型号名称C.

D - 型号名称D.

etc.etc.

我无法解决的问题是将'A','B',......作为传奇文本的艺术家.我可以看到你将如何使用线或补丁,或类似的东西.但总的来说有一种方法可以使用字符串作为艺术家而不是一条线?

python matplotlib legend legend-properties

2
推荐指数
2
解决办法
1074
查看次数