问题标签 [sampling]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
31235 浏览

android - 如何绘制Android音乐播放器的波形?

我的手机附带的默认动态壁纸之一是实时显示在后台播放的音乐波形的壁纸。我想知道如何才能做到这一点。看来我应该以某种方式访问​​背景音乐的流数据并实时计算样本,但我不知道如何获取流数据。我想我可以按照本教程http://codeidol.com/java/swing/Au​​dio/Build -an-Audio-Waveform-Display/来显示波形,但我不确定该怎么做。帮助将不胜感激/

0 投票
2 回答
329 浏览

c++ - 快速安全地确定范围内的随机数

我如何快速安全地*确定0(包括)到(不包括)范围内的随机数r

换句话说,拒绝抽样的优化版本:

*安全,我的意思是均匀分布。

0 投票
2 回答
141 浏览

algorithm - 在多维空间中聚合/外推稀疏样本

想象一下,有一个函数可以在给定浮点 x 和 y 坐标(以及根据维度的附加组件)的情况下评估表面的高程:

这不是解析函数,因此无法计算导数。我需要做的是找到任何给定 {x, y} 对的表面最陡的方向。一次评估可能非常昂贵(在最坏的情况下考虑几秒钟甚至几分钟)。

我在 2D 情况下的典型方法是在与 {x, y} 相邻的 N 个位置对表面进行采样,然后通过这些样本拟合曲线并搜索曲线的最高点,因为这种搜索不会受到昂贵的评估的影响:

2D 采样算法示例

在上图中,P0 是给定的坐标。{S0, S1, S2, S3} 是 P0 周围随机放置的 4 个样本,PM 是曲线上的最高点。因此,向量 PM-P0 是最陡上升的方向。

但我不知道如何将其扩展到 N 维,或者是否有更智能的算法可以做到这一点。

维度的数量可能非常大(几十到几百),所以当样本少于维度时,我最终使用的任何方法都必须有效。我不是在寻找确切的答案,那是不可能的,但是一个中途的近似值已经很受欢迎了。

附言。我在 C# 中执行此操作,这并不重要,但我无法访问非 C# 语言功能。

0 投票
1 回答
117 浏览

arrays - matlab中的简化_resample_算法

我正在从 DSP 算法生成可变大小的样本行。我的意思是每一行都包含随机数量的元素(嗯,取决于输入)。

我想调整为每行特定数量的样本。

例如:每行的列数:15 24 41 09 27 假设我想让它连续 30 个元素。

每一行都是数字化曲线样本。我有兴趣让它包含等量的样本元素。

0 投票
2 回答
1543 浏览

r - 添加向量后从现有矩阵中随机选择值(在 R 中)

非常感谢您提前提供的帮助!

我正在尝试修改现有矩阵,以便在向矩阵添加新行时,它会从先前存在的矩阵中删除值。

例如,我有矩阵:

我想添加另一个向量 I.vec,它有两个值 ( I.vec=c(0,1,1,0))。这很容易做到。我只是将它绑定到矩阵。现在,对于 I.vec 等于 1 的每一列,我想从其他行中随机选择一个值并将其设为零。理想情况下,这最终会得到一个矩阵,如:

但是每次我运行迭代时,我都希望它再次随机采样。

所以这就是我尝试过的:

但这只会删除我要删除的两个值之一。我也尝试过对矩阵进行子集化的变体,但没有成功。

再次感谢你!

0 投票
1 回答
276 浏览

r - 回复:从矩阵中随机选择值,添加 for 循环(在 R 中)

可能重复:
在添加向量后从现有矩阵中随机选择值(在 R 中)

这是我上周提出的问题的后续,可以在这里找到。我不确定是否适合在同一个地方发布这个问题,或者将它作为一个新问题发布。

好的,上次我询问了在将新向量绑定到矩阵后从矩阵中随机删除值的问题。答案非常有用,但是我在使用非方阵时发现了一个错误。我一直在循环运行代码并每次取矩阵的总和以确保它正常工作,但我发现总和会有所不同,这意味着代码有时会在矩阵中选择错误的值(我希望它只选择和替换那些)。

这是代码:

在这种情况下,有时矩阵的和是 13,有时是 14,而它应该始终是 = sum(mat1) = 13。

我试图分解代码,我认为除了 rows 函数之外一切都正常工作,诚然,我并不完全理解。

0 投票
2 回答
517 浏览

subset - 随机选择增加的数据子集以查看均值趋于平稳的位置

任何人都可以请建议执行以下操作的最佳方法吗?

我有三个变量(X、Y 和 Z)和四个组(1、2、3 和 4)。我一直在 SPSS 中使用判别函数分析来预测已知分组数据的组成员资格,以用于未来的未分组数据。

理想情况下,我希望能够对越来越多的数据子集进行随机抽样,以查看需要多少次观察才能达到所需的正确分类百分比。

但是,我知道这可能很困难。因此,我正在寻找这样做的手段。

例如,假设变量 X 对于第 1 组的平均值为 141。这个平均值可能是根据 2000 次观察计算得出的。但是,平均值可能出现在 700 次观察中。我希望能够计算出我的数据中平均水平的观察/案例数量。例如,可能从 10 次观察开始并随机重复 50 或 100 次,然后增加到 20 次观察......等等。

我知道这是蒙特卡罗测试的一种形式。我可以访问 SPSS 15、17 和 18 以及 excel。我还可以访问 minitab 15 & 16 和 amos17 并下载了“R”,但我不熟悉这些。我的经验是使用 SPSS 和 excel。我已经在 SPSS Modified from this..http://pages.infinit.net/rlevesqu/Syntax/RandomSampling/Select2CasesFromEachGroup.txt 中尝试了一些语法,但这对我来说输入子集号等仍然很耗时。

希望有人可以提供帮助。

谢谢阅读。

安迪

0 投票
4 回答
5014 浏览

c# - 从高斯分布中采样随机值的最快方法是什么?

Box-Muller 变换是一种从高斯分布中采样随机值的优雅且性能合理的方法。

我正在寻找一种用 C# 清晰编写的更快的方法。

作为参考,这里有一个 Box-Muller 实现的实现,作为性能比较的基准......

0 投票
2 回答
3028 浏览

r - 分层抽样 - 没有足够的观察

我想要实现的是从每组中获取 10% 的样本(这是 2 个因素的组合 - 新近度和频率类别)。到目前为止,我已经考虑过包采样和函数strata()。这看起来很有希望,但我收到以下错误,并且很难理解错误消息以及错误信息或如何解决此问题。

这是我的代码:

我真的看不到第 6 层是什么。函数在后台检查的条件是什么?我不确定我是否正确设置了大小参数。是的,我已经检查了采样包的文档:)

谢谢大家和

0 投票
1 回答
1059 浏览

glsl - OpenGL ES 2.0。GLSL - 不能在片段着色器中同时使用两种采样颜色

我有一个片段着色器,可以进行视差映射和照明计算。我已经设法将问题追溯到纹理和/或照明计算的采样,所以我只会发布代码以保持简短:

我有这个代码在其他着色器中工作,但是在视差映射着色器中它只是丢弃了像素,我不明白为什么。因此,它不是显示对象,而是简单地丢弃像素,并且对象根本不显示。没有错误或凌乱的颜色,什么都没有。

我设法将问题追溯到反照率和环境采样颜色。它们都被正确采样。如果我打印出来

或者

它们都可以正确显示,但是如果我尝试用两种颜色做某事,像素就会被丢弃。以下都不起作用:

环境是从立方体贴图中采样的,反照率是从 2D 纹理中采样的。我有其他用于环境光遮蔽和法线贴图的采样器,它们可以工作,它们也可以与环境光或反照率结合使用。所以环境 + ao 有效,反照率 + ao 有效。

所以,这是我的问题,我不知道是什么原因造成的。就像我说的,我在另一个着色器中有相同的代码,并且那个代码有效。

值得一提的是,它在 OpenGL ES 2.0 的 PowerVR 模拟器上运行。GPU是nVidia GT220。也可以随意指出我的代码中的其他错误,比如低效的东西。如有必要,我将发布完整的片段着色器代码。对不起,很长的帖子:P

解决了

哇,不敢相信原因如此愚蠢,但我完全错过了它。基本上,我忘记为该特定模型加载立方体贴图,并且它没有发送到着色器。不过,它到底是如何对某些东西进行采样的呢?我的意思是,它是单独工作的,那么纹理单元采样了什么?先前处理后遗留在缓存中的立方体贴图?