标签: interpolation

UIImageView缩放/插值

我有一个小的iPhone应用程序正在处理我正在使用UIImageView显示图像.我正在使用Aspect Fit模式进行扩展.我想让图像按比例放大而不进行插值/平滑(我希望它看起来像素化).有什么方法可以改变这种行为吗?

一个更普遍的问题是我可以实现我自己的缩放算法,还是有其他内置的我可以选择?

iphone scaling interpolation uiimageview

12
推荐指数
3
解决办法
5814
查看次数

Perl中的插值有什么缺点吗?

我刚刚开始使用Perl(字面意思是今天),我正在阅读免费在线版的Beginning Perl.在早期,该书提到双引号字符串将被插值.但是,在每个使用print函数的例子中(到目前为止......我在第66页左右),作者将标量变量作为列表参数传递.也许我正在跳枪,这将在后面解释,但有没有理由选择方法A而不是方法B?

方法A:

$myVar = "value";
print "Current value is ", $myVar, "\n";
Run Code Online (Sandbox Code Playgroud)

方法B:

$myVar = "value";
print "Current value is $myVar\n";
Run Code Online (Sandbox Code Playgroud)

在我看来,方法B更方便.社区中是否有首选方式?或者也许一些隐藏的陷阱使一种方法比另一种方法更安全?

TIA

perl interpolation

12
推荐指数
4
解决办法
1274
查看次数

当我在Perl的匹配运算符中插入变量时,如何转义元字符?

假设我有一个包含我想要匹配的行的文件:

foo
quux
bar
Run Code Online (Sandbox Code Playgroud)

在我的代码中,我有另一个数组:

foo
baz
quux
Run Code Online (Sandbox Code Playgroud)

假设我们遍历文件,调用每个元素$word,以及我们正在检查的内部列表,@arr.

if( grep {$_ =~ m/^$word$/i} @arr)
Run Code Online (Sandbox Code Playgroud)

这样可以正常工作,但在某种可能的情况下,我们fo.在文件中有一个测试用例,它.在正则表达式中作为通配符操作符运行,fo.然后匹配foo,这是不可接受的.

这当然是因为Perl正在将变量插入到正则表达式中.

问题:

如何强制Perl按字面意思使用变量?

regex variables perl interpolation

12
推荐指数
4
解决办法
2万
查看次数

如何在configobj值中转义%符号?

我想对configobj配置文件的值使用解析时间和运行时插值.在Python中进行简单字符串插值的最简单方法是"%(foo)s" % somedict.不幸的是,configobj使用相同的插值机制,我还没有找到逃脱它的方法.理想情况下,我的价值看起来像:

othervar = foo
someconfigobjkey = %(othervar)s %%(runtimevar)s
Run Code Online (Sandbox Code Playgroud)

然而,configobj尝试(并失败)替换第二个变量.回答这个问题的另一种方法是提供一种不同的(configobj)方法来同时进行解析时间和运行时插值.

python interpolation escaping

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

填补numpy数组中的空白

我只想用最简单的术语插入3D数据集.线性插值,最近邻,所有这些就足够了(这是从一些算法开始,所以不需要准确的估计).

在新的scipy版本中,像griddata这样的东西会很有用,但是目前我只有scipy 0.8.所以我有一个"立方体"(data[:,:,:],(NixNjxNk))数组,以及一个相同大小的标志(flags[:,:,:,],TrueFalse)数组.我想插入数据元素的数据,其中flag的对应元素为False,例如使用数据中最近的有效数据点,或者"close by"点的某种线性组合.

数据集中至少有两个维度可能存在较大的间隙.除了使用kdtrees或类似编码完整的最近邻算法之外,我无法真正找到通用的N维最近邻插值器.

python interpolation numpy matplotlib scipy

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

旋转矩阵之间的插值

我有2个旋转矩阵(让我们称之为A和B),其中:

A = 1  0  0
    0  0 -1
    0  1  0
Run Code Online (Sandbox Code Playgroud)

B = -1  0  0
     0  0 -1
     0 -1  0
Run Code Online (Sandbox Code Playgroud)

这基本上只是一个旋转,相机旋转在后面看自己.显然,我不能直接在矩阵中插值,因为它看起来很奇怪.我已经尝试将矩阵转换为欧拉角,产生2组X,Y,Z角,并试图根据X,Y,Z角的每个分量之间的最小距离确定使用哪个角.这肯定会产生我想要的那种旋转,但是我想不出一个合适的方法来确定插入哪个角度,因为有时导致最小误差的角度组会导致围绕错误的轴/轴旋转.我也尝试了四元数,但这基本上给了我相同的结果.谁能指出我正确的方向?

opengl interpolation rotation matrix

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

插入缺少日期的动物园对象

我有一个缺少日期的气候时间序列(没有缺失值).例如:

n = 15
full.dates = seq(Sys.Date(), by = 'day', length = n)
serie.dates = full.dates[c(1:10, 12, 15)] # missing 11, 13, 14
y = rnorm(n)

require(zoo)    
serie = zoo(y, serie.dates)
Run Code Online (Sandbox Code Playgroud)

在给出'full.dates'向量的情况下,我如何'填充'(使用插值)这些缺失点?谢谢!

interpolation r time-series zoo

12
推荐指数
1
解决办法
4690
查看次数

在LESS CSS中动态定义变量

我试图通过实际为它们分配一个复合名称来创建一个动态定义LESS CSS变量的mixin.

简化的用例(不是真实的):

.define(@var){
    @foo{var}: 0;
}
Run Code Online (Sandbox Code Playgroud)

那么就可以调用mixin:

.define('Bar'){
    @fooBar: 0;
}
Run Code Online (Sandbox Code Playgroud)

由于在使用选择器名称时可以进行这种字符串插值,我想知道变量名是否可行; 到目前为止,我对我尝试的各种语法没有运气(除了上面的内容,我尝试了转义,引用,使用~前缀等).

编辑

我只是尝试了一件事,我觉得我可能会很亲密; 但我遇到了LESS语法的奇怪之处.如果我写这个:

.define(@var){
    #namespace {
         @foo: @var;
    }
}
Run Code Online (Sandbox Code Playgroud)

然后像这样调用它:

.define(0)
Run Code Online (Sandbox Code Playgroud)

然后我可以使用@foo通常的命名空间方式:

.test {
     #namespace;
     property: @foo; /* returns 0 */
}
Run Code Online (Sandbox Code Playgroud)

但是,在字符串插值选择器的情况下,同样的情况不适用:

.define(@var, @ns){
    #@{ns} {
         @foo: @var;
    }
}

.define(0, namespace);

.test {
     #namespace;
     property: @foo;
}
Run Code Online (Sandbox Code Playgroud)

上面的代码给出了以下错误:

名称错误:#namespace未定义

但是,字符串插值是成功且有效的.事实上,如果我拿走.test部件并修改上面输出测试属性,我可以看到CSS被正确解析.我的意思是:

.define(@var, @ns){
    #@{ns} {
         @foo: @var;
         prop: @foo;
    }
}

.define(0, namespace);
Run Code Online (Sandbox Code Playgroud)

输出以下CSS:

#namespace { …
Run Code Online (Sandbox Code Playgroud)

css interpolation mixins less

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

如何生成等间隔插值

我有一个不均匀间隔的(x,y)值列表.是此问题中使用的存档.

我能够在值之间进行插值,但我得到的不是等间隔插值点.这是我做的:

x_data = [0.613,0.615,0.615,...]
y_data = [5.919,5.349,5.413,...]

# Interpolate values for x and y.
t = np.linspace(0, 1, len(x_data))
t2 = np.linspace(0, 1, 100)
# One-dimensional linear interpolation.
x2 = np.interp(t2, t, x_data)
y2 = np.interp(t2, t, y_data)

# Plot x,y data.
plt.scatter(x_data, y_data, marker='o', color='k', s=40, lw=0.)

# Plot interpolated points.
plt.scatter(x2, y2, marker='o', color='r', s=10, lw=0.5)
Run Code Online (Sandbox Code Playgroud)

结果如下:

在此输入图像描述

可以看出,红点在图的部分中更靠近在一起,其中原始点分布更密集.

我需要一种方法来根据给定的步长值(比如0.1)生成在x,y 中等间隔的插值点


正如askewchan正确指出的那样,当我的意思是" 在x,y 中等间隔 "时,我的意思是曲线中的两个连续插值点应该相互间隔(欧几里得直线距离)相同的值.


我尝试了unubtu的答案,它适用于平滑曲线,但似乎打破了不那么顺利的曲线:

非光滑曲线

这是因为代码,而不是直接在曲线上计算的欧几里德的方式点的距离,我需要的距离曲线上,是点之间是相同的.这个问题可以以某种方式解决吗?

python interpolation numpy scipy

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

张量流中的双线性上采样?

我想在TensorFlow中做一个简单的双线性调整(不一定是整数因子).例如,从(32,3,64,64)张量开始,我想要一个(32,3,96,96)张量,其中每个64x64使用双线性插值重新调整1.5倍.最好的方法是什么?

我希望这能支持任意因子> 1,而不仅仅是1.5.

注意:每个64x64上的操作与操作相同skimage.transform.rescale (scale=1.5, order=1).

python interpolation image image-resizing tensorflow

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