小编Adr*_*aan的帖子

不支持使用 conv2 ND 数组的错误

我写了这段代码,通过将图像与水平和垂直导数滤波器卷积来计算每个像素的梯度向量,然后计算每个像素的梯度幅度,但我得到以下错误conv2

不支持使用 conv2 ND 数组时出错。X 中的错误(第 7 行) Gx=conv2(A,Sx)

  A=imread('peppers.png');
figure,imshow(A); title('Sobel Gradient Before');
V= double (A);

Sx = [1,0,-1;2,0,-2;1,0,-1];
        Gx=Conv2(A,Sx);
        figure
        imshow(Gx); title('x-direction');

Sy = [1,2,1;0,0,0;-1,-2,-1];
        Gy=Conv2(A,Sy);
        figure
        imshow(Gy); title('y-direction');

        G=sqrt(Gx.^2+Gy.^2);
        figure,imshow(G); title('Sobel Gradient After');
Run Code Online (Sandbox Code Playgroud)

matlab matlab-figure

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

几个区间范围的快速交叉?

我有几个变量,所有变量都是数值范围:(行间隔)

a = [ 1 4; 5 9; 11 15; 20 30];
b = [ 2 6; 12 14; 19 22];
c = [ 15 22; 24 29; 33 35];
d = [ 0 3; 15 17; 23 26];
Run Code Online (Sandbox Code Playgroud)

(我的真实数据集中的值不是整数,但为了清楚起见,这里表示为这样).

我想找到至少有3个变量相交的区间.在上面的例子中[20 22]和[24 26]将是两个这样的情况.

解决这个问题的一种方法是将我的值组合在一起并将二进制文件组合在一起,但由于我的值是连续的,因此会产生"边缘效应",并且我将首先浪费时间对值进行分类.(以我想要的分辨率对我的数据集进行分类会产生数百GB的数据).

另一种不涉及分箱的方法是在所有可能的变量组合之间使用成对交叉(让我们称之为X),然后是X与所有其他变量O(n ^ 3)的交集.

你对此有何看法?是否有算法/库有工具来解决这个问题?

我正在考虑使用几何方法来解决这个问题:基本上,如果我认为我的间隔是1D空间中的段,那么我想要的输出将是三个段(来自三个变量)相交的点.我不确定这在算法上是否有效.建议吗?

matlab intervals

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

二进制向量中的数字0和1的块

在MATLAB中,有一个bwlabel函数,给定一个二进制向量,例如x=[1 1 0 0 0 1 1 0 0 1 1 1 0]give(bwlabel(x)):

[1 1 0 0 0 2 2 0 0 3 3 3 0]
Run Code Online (Sandbox Code Playgroud)

但我想要获得的是

[1 1 2 2 2 3 3 4 4 5 5 5 6]
Run Code Online (Sandbox Code Playgroud)

我知道我可以否定x获得(bwlabel(~x))

[0 0 1 1 1 0 0 2 2 0 0 0 3]
Run Code Online (Sandbox Code Playgroud)

但我怎样才能将它们结合起来?

arrays matlab

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

从3D数组中的多个页面访问不同的行

如何避免在3D数组中从多个页面访问不同的行,同时避免for-loop?

假设我有一个10x5x3矩阵(mat1),我想将三个页面(例如第一,第二和第三页的第四,第二和第五行)中不同的单独行复制到另一个10x5x3矩阵的第一行(mat2)。

我的解决方案使用for-loop。矢量化呢?

mat1 = randi(100, 10, 5, 3)
mat2 = nan(size(mat1))

rows_to_copy = [4, 2, 5]

for i = 1 : 3
    mat2(1, :, i) = mat1(rows_to_copy(i), :, i)
end
Run Code Online (Sandbox Code Playgroud)

matlab vectorization multidimensional-array

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

如何找到具有负值的索引并将该值替换为恰好为正的最接近的索引值?

我知道如何从矩阵中找到负值的索引。

matrix(matrix<0) = %something should be done;
Run Code Online (Sandbox Code Playgroud)

但是不知道如何将它们的值替换为恰好为正的最接近的索引值。

  1. 此处最近的索引应位于观察索引所在的同一行中。

  2. 如果行中没有具有正值的索引,则应将 0 插入到该行的每个索引中。

  3. 如果同一行中与观察到的索引最接近的索引不止一个,请选择正确的索引。

  4. 我正在处理 1003x1170 单矩阵。因此,如果解决方案不会带来如此多的开销,那将是最好的。

例如,

[-255  4  6; 
   -5 -4  5; 
 -400  3  6; 
   -6 -7 -8;
    3 -5  4] 
Run Code Online (Sandbox Code Playgroud)

成为

[4 4 6; 
 5 5 5; 
 3 3 6;
 0 0 0;
 3 4 4]
Run Code Online (Sandbox Code Playgroud)

matlab interpolation image-processing matrix computer-vision

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

如何使用 csharp 向 Microsoft Teams 频道发送简单消息?

我找不到任何可以向 MS Teams 频道发送简单消息的内容,我正在使用 Csharp,不需要回复消息。

c# microsoft-teams

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

在特定范围内注入 Chakra UI 的全局样式

我想将一个使用 Chakra UI 的 React 应用程序嵌入到网站中,但 Chakra 的全局样式会影响整个网站。

有没有办法将Chakra的全局风格注入特定范围?

css reactjs chakra-ui

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

Android Studio 中禁用许可协议完成按钮

Android Studio 中的许可协议完成按钮被禁用。我无法接受许可

Android Studio 中的协议,因为我认为我的完成按钮被禁用。请帮助任何人

我怎样才能接受许可证?

android android-studio

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

更改 MATLAB Polarplot 中的网格线颜色/对比度

我正在努力弄清楚如何更改 MATLAB 中极坐标图中的网格线颜色。我尝试手动更改一些可能做到这一点的轴属性,但无法观察到任何变化。需要明确的是:这与轴本身无关,而是为方向绘制的网格线(内圆)应该是黑色(或具有更好的对比度),因为这种浅灰色对于例如用投影仪显示的演示文稿来说不是最佳的。

在此输入图像描述

如何更改网格本身的颜色?

matlab colors axes figure matlab-figure

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

具有复数的 matlab accumarray

我不明白accumarray传递复数时的行为。我希望accumarray([1 1]', [1i 2i]')表现得像sum([1i 2i])(对于这种特殊情况)。

然而它返回0.0000 - 3.0000i而不是0.0000 + 3.0000i.

matlab complex-numbers

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