小编adn*_*adn的帖子

获取ruby中的字符串扫描结果索引

我想获得索引以及扫描结果

"abab".scan(/a/)
Run Code Online (Sandbox Code Playgroud)

我不仅想要

=> ["a", "a"]
Run Code Online (Sandbox Code Playgroud)

还有那些比赛的索引

[1, 3]
Run Code Online (Sandbox Code Playgroud)

有什么建议吗?

ruby indexing

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

如何在MATLAB中将矩阵的行除以不同的值(数组除法)

让我说我有矩阵M = ones(3);,我想用不同的数字划分每一行,例如,C = [1;2;3];.

1 1 1  -divide_by-> 1      1   1   1
1 1 1  -divide_by-> 2  =  0.5 0.5 0.5
1 1 1  -divide_by-> 3     0.3 0.3 0.3
Run Code Online (Sandbox Code Playgroud)

如何在不使用循环的情况下执行此操作?

matlab rows matrix division

7
推荐指数
1
解决办法
7203
查看次数

避免在Latex中链接URL

我在我的乳胶文件中使用了hyperref.在引用中我有一个URL,hyperref包自动创建一个可点击链接.

但是,我需要该URL没有链接; 但文档内部链接的其余部分应该是.

我找不到一种方法只是告诉乳胶避免那一个.对于引用,我正在使用bib文件.

我已经尝试过\nolinkurl{ulr}宏了,但是在最后的pdf中,无论如何都会创建链接.

latex hyperref

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

MATLAB对2D和3D矩阵进行排序并通过索引进行访问

假设您有一个1D矩阵

a = rand(1,5);
[sa i] = sort(a);
Run Code Online (Sandbox Code Playgroud)

然后saa(i)相同。但是,如果矩阵的大小增加

a = rand(3,4);
[sa i] = sort(a);
Run Code Online (Sandbox Code Playgroud)

然后saa(i)不一样。当我尝试按3D矩阵对3D矩阵进行排序时,也会发生同样的情况。

如何a通过索引访问的值i?或者换句话说,我该如何计算sa=a(X)X应该是什么?

编辑:

感谢您的解决方案。但是,当您更改维度以进行排序时,它们不起作用。尽管如此,我还是接受了这个想法并用它来构建一个通用的表单。

该算法正在做的是建立矩阵的索引。MATLAB会按列对单元格进行索引。因此,索引由

idx = r + (c-1)*ROWS + (p-1)*ROWS*COLS
Run Code Online (Sandbox Code Playgroud)

其中,idx是索引,r是行位置,c是列位置,p是页面位置。

因此,如果我们按第一个维度(normal sort(a))进行排序,则结果索引是列中的位置;如果我们在第二维中排序,则结果索引是行中的位置;如果我们按三维排序,则结果索引是页面位置。话虽如此,它只会最后产生给定情况的行和列:

r = repmat((1:rows)',[1 cols pages]);
c = repmat(1:cols,[rows 1 pages]);
Run Code Online (Sandbox Code Playgroud)

在给定的解决方案中说明了对第一维的排序。然后,让我们对二维数组的第二维(行)进行排序

a = rand(4,5);
[rows cols pages] = size(a);
R = repmat((1:rows)',[1 cols pages]); …
Run Code Online (Sandbox Code Playgroud)

sorting indexing matlab matrix

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

如何在MATLAB中使用查找表

我需要在一组2D阵列(如果需要的话,3D矩阵)上执行两个参数(一组:t,另一组来自阵列)的指数运算.f(t,x)= exp(tx)然后我需要在第三维中添加每个值的结果.因为bsxfun使用查找表需要花费太多时间来执行整个操作.

我可以创建表作为矩阵LUT(由于两个参数2维),然后我可以使用检索值LUT(par1,par2).但是使用循环访问第三维也很昂贵.

我的问题是:有没有办法实现这样的机制(一个查找表),以具有预定义的值,然后只使用它们从矩阵元素(索引类型)访问没有循环.或者,我如何创建一个MATLAB自动处理的查找表来加速指数运算?

编辑:我实际上使用类似的方法来创建LUT.现在,我的问题实际上是如何以有效的方式访问它.

让我说我有一个二维数组M.使用那些我想要将函数f(t,M(i,j))应用于固定值的值t.我可以使用循环遍历M的所有值(i,j)但是我想要更快的方法,因为我有一组M,然后我需要将此过程应用于所有其他值.

我的功能比我给出的例子有点复杂:

pr = mean(exp(-bsxfun(@rdivide,bsxfun(@minus,color_vals,double(I)).^2,m)./2),3);
Run Code Online (Sandbox Code Playgroud)

这是我的实际功能,你可以看到比我提出的例子更复杂.但这个想法是一样的.它在两组数据的指数的M的集合的第三维中进行平均.

希望有所帮助.

optimization matlab lookup-tables

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

Javacv Blob检测

我想在我的应用程序中使用一些blob检测,这是用Java编写的,因此使用JavaCV而不是OpenCV.我发现很多课程如下:

SimpleBlobDetector,CvBlobDetector,CvBlob,...但我无法找到任何教程或演示/示例代码在Java中使用这些.任何人都可以告诉我如何使用这些,因为我无法弄明白,并没有很好的文档.谢谢!

java opencv blobs feature-detection javacv

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

来自源主服务器的Tensorflow会从导入中提供语法错误

我尝试从源(master)编译tensorflow并使用tensorflow指令python3代替python2(和pip默认值pip3).在测试第一个模型之前,我可以完成所有步骤.

我注意到这个问题可以通过简单的方式最小化地再现import tensorflow.错误如下:

$ python3
Python 3.5.2 (default, Jul  5 2016, 12:43:10) 
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow
I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcublas.so locally
I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcudnn.so locally
I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcufft.so locally
I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcuda.so.1 locally
I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcurand.so locally …
Run Code Online (Sandbox Code Playgroud)

python-3.5 tensorflow ubuntu-16.04

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