小编Gun*_*uyf的帖子

在matplotlib中的两条垂直线之间

我在去例子matplotlib的文件,但它不是我清楚我怎样才能使填充两个特定的垂直线之间的区域的曲线图.

例如,假设我想在x=0.2和之间创建一个绘图x=4(对于整个y绘图范围).我应该使用fill_between,fill还是fill_betweenx

我可以使用这个where条件吗?

python matplotlib

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

ffmpeg错误:选择了模式类型'glob',但此libavformat构建不支持globbing

我正在尝试将作为单独帧的".jpg"文件组转换为1个单个mpeg视频".mp4"

我使用的示例参数:

frame duration  = 2 secs
frame rate      = 30  fps
encoder         = libx264 (mpeg)
input pattern   = "*.jpg"
output pattern  = video.mp4
Run Code Online (Sandbox Code Playgroud)

根据(https://trac.ffmpeg.org/wiki/Create%20a%20video%20slideshow%20from%20images)上的ffmpeg wiki说明,我发出了以下命令:

ffmpeg -framerate 1/2 -pattern_type glob -i "*.jpg" -c:v libx264 -r 30 -pix_fmt yuv420p video.mp4
Run Code Online (Sandbox Code Playgroud)

但是我收到了这个错误:

[image2 @ 049ab120] Pattern type 'glob' was selected but globbing is not 
supported by this libavformat build *.jpg: Function not implemented
Run Code Online (Sandbox Code Playgroud)

这可能意味着我的构建/版本的API模式匹配命令已更改.顺便说一下,我的windows 32bit ffmpeg下载build(ffmpeg-20150702-git-03b2b40-win32-static).

如何使用ffmpeg使用模式匹配选择一组文件?

ffmpeg video-processing

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

Play Framework 2.0的Anorm上的Joda DateTime字段

我一直在学习Play Framework,访问数据库的推荐方法是使用anorm组件中的build.事实上,在anorm中没有对DateTime的良好支持.它还在使用java.util.Date.

有没有办法在anorm中使用Joda DateTime或java.sql.Timestamp?

如果没有办法使用Joda或java.sql,我们可以为此添加一个模块吗?

scala playframework-2.0

24
推荐指数
1
解决办法
7981
查看次数

在Python中查找两个大型数组(矩阵)之间的集合差异

我有两个大的二维数组,我想找到它们的集合差异,将它们的行作为元素.在Matlab中,这个代码就是setdiff(A,B,'rows').数组足够大,我想到的明显的循环方法需要花费太长时间.

python numpy set-difference

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

子类化Tkinter以创建自定义Widget

请看下面的代码:(我基本上尝试使用垂直滚动条创建一个文本小部件,同时保留我班级中Tkinter.Text的所有方法/函数)

class ScrollableTextWidget(Tkinter.Text):
    def __init__(self, parent):
        self.parent = parent
        self.Frame = ttk.Frame(self.parent)
        Tkinter.Text.__init__(self, self.Frame, width=1, height=1)
        self.__initWidget()

    def __initWidget(self):
        self.Frame.grid(sticky="NSEW")
        self.ScrollbarY = ttk.Scrollbar(self.Frame, orient="vertical", command=self.yview)
        self.configure(yscrollcommand=self.ScrollbarY.set)
        self.grid(column=0, row=0, sticky="NSEW")
        self.ScrollbarY.grid(column=1, row=0, sticky="NS")
        self.Frame.columnconfigure(0, weight=1)
        self.Frame.rowconfigure(0, weight=1)
Run Code Online (Sandbox Code Playgroud)

可以像这样创建我的自定义小部件,还是应该把它放在一个框架中并编写我自己的方法?

python inheritance class tkinter widget

11
推荐指数
2
解决办法
1万
查看次数

未知维矩阵的索引

我有一个非固定的维矩阵M,我想从中获取单个元素.元素的索引包含在向量J.中.

例如:

M = rand(6,4,8,2);
J = [5 2 7 1];

output = M(5,2,7,1)
Run Code Online (Sandbox Code Playgroud)

这次M有4个维度,但事先并不知道.这取决于我正在编写的算法的设置.它也可能是这样

M = rand(6,4);
J = [3 1];

output = M(3,1)
Run Code Online (Sandbox Code Playgroud)

所以我不能简单地使用

output=M(J(1),J(2))
Run Code Online (Sandbox Code Playgroud)

我正在考虑使用sub2ind,但这也需要它的变量逗号分隔..

@gnovice

这是有效的,但我打算从矩阵中使用这种元素提取M相当多.因此,如果我cellJ每次访问时都必须创建一个临时变量M,这不会极大地减慢计算速度吗?

我也可以写一个单独的函数

function x= getM(M,J)
    x=M(J(1),J(2));
    % M doesn't change in this function, so no mem copy needed = passed by reference
end
Run Code Online (Sandbox Code Playgroud)

并根据算法的不同配置进行调整.这当然是速度与灵活性的考虑因素,我没有将其纳入我的问题中.

但是:这仅仅是可用于获得元件,用于设置有没有其他的方法比实际使用的索引(并且优选线性索引).我仍然认为sub2ind是一个选项.我想要的最终结果是:

function idx = getLinearIdx(J, size_M)
    idx = ...
end
Run Code Online (Sandbox Code Playgroud)

结果:

function lin_idx = Lidx_ml( J, M )%#eml
%LIDX_ML …
Run Code Online (Sandbox Code Playgroud)

matlab multidimensional-array matrix-indexing

10
推荐指数
1
解决办法
3184
查看次数

在matlab中将包含二进制数据的文本文件作为单个矩阵读取

我有一个文本文件,其中包含以下方式的二进制数据:

00000000000000000000000000000000001011111111111111111111111111111111111111111111111111111111110000000000000000000000000000000
00000000000000000000000000000000000000011111111111111111111111111111111111111111111111000111100000000000000000000000000000000
00000000000000000000000000000000000011111111111111111111111111111111111111111111111111111111100000000000000000000000000000000
00000000000000000000000000000000000111111111111111111111111111111111111111111111111111111111100000000000000000000000000000000
00000000000000000000000000000000000011111111111111111111111111111111111111111111111111111111100000000000000000000000000000000
00000000000000000000000000000000000000011111111111111111111111111111111111111111111111111111100000000000000000000000000000000
00000000000000000000000000000000000000011111111111111111111111111111111111111111111111000111110000000000000000000000000000000
00000000000000000000000000000000000000111111111111111111111111111111111111111111111111111111110000000000000000000000000000000
00000000000000000000000000000000000000000000111111111111111111111111111111111111110000000011100000000000000000000000000000000
00000000000000000000000000000000000000011111111111111111111111111111111111111111111111100111110000000000000000000000000000000
00000000000000000000000000000000000111111111111111111111111111111111111111111111111111110111110000000000000000000000000000000
00000000000000000000000000000000001111111111111111111111111111111111111111111111111111111111100000000000000000000000000000000
00000000000000000000000000000000000000001111111111111111111111111111111111111111111111000011100000000000000000000000000000000
00000000000000000000000000000000000000001111111111111111111111111111111111111111111111000011100000000000000000000000000000000
00000000000000000000000000000000000001111111111111111111111111111111111111111111111111111111000000000000000000000000000000000
00000000000000000000000000000000000000011111111111111111111111111111111111111111111110000011100000000000000000000000000000000
00000000000000000000000000000000000000000000011111111111111111111111111111111111100000000011100000000000000000000000000000000
00000000000000000000000000000000000000111111111111111111111111111111111111111111111111110111100000000000000000000000000000000
Run Code Online (Sandbox Code Playgroud)

请注意,每个1或0都是独立的,即值不是小数.我需要找到文件的列方式总和.总共有125列,有840946行.

我试过了textread,fscanf还有一些其他matlab命令,但结果是它们都以十进制格式读取每一行并创建一个840946x1数组.我想创建一个840946x125矩阵来计算列式和.

file-io matlab matrix

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

大于阈值的值的数量

我有一个矩阵A.现在我想找到大于5的元素数量及其相应的索引.如何在不使用for循环的情况下在matlab中解决这个问题?

例如,如果A = [1 4 6 8 9 5 6 8 9]':

  • 元素数量> 5:6
  • 指数: [3 4 5 7 8 9]

indexing matlab

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

Matlab三维矩阵

我必须创建一个非常大的3D矩阵(例如:) 500000x60x60.有没有办法在matlab中做到这一点?

当我尝试

omega = zeros(500000,60,60,'single');
Run Code Online (Sandbox Code Playgroud)

我收到一个out-of-memory错误.

稀疏函数不是选项,因为它仅适用于2D矩阵.对于更高维矩阵,还有其他选择吗?

matlab sparse-matrix

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

将matlab矩阵分成几个相等的部分

我有一个大小的矩阵64500x17.它代表检测到的texton功能,我必须用它来找到5个质心kmeans.

我需要的是:

  • 将该矩阵分成5个12900x17矩阵
  • 找到手段
  • 将它们连接成一个5x17矩阵,以输入到的start参数kmeans.

我知道该怎么做几乎所有的东西(cat,kmeans,等),但我只是想找到一个矩阵分成5个部分,或加/划分成所需大小的方法.

除非绝对必要,否则我禁止过度使用循环(由于效率).

我在其他问题中找不到任何相关的例子,所以如果这个问题得到了回答,请耐心等待.

matlab matrix k-means

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