Matlab之distmatrix函数

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_37385726/article/details/82697648

目录

1. 自己写一个distmatrix函数放进去。

2. 将函数放到 C:\Program Files\MATLAB\R2017a\toolbox\images\images 路径下

3.更新cache


我觉得找过来的八成是看了《使用MATLAB图像和视频处理》一书,报错来的2333

没错,我也是报错了在网上找不到解决教程于是才写了这篇文章,帮大家解决下问题吧。

MATLAB中并没有内置distmatrix函数,所以你也用不了,解决方式是:

1. 自己写一个distmatrix函数放进去。

源代码如下

function y = distmatrix(M,N)

u = 0:(M - 1);
v = 0:(N - 1);

ind_u = find(u > M/2);
u(ind_u) = u(ind_u) - M;
ind_v = find(v > N/2);
v(ind_v) = v(ind_v) - N;

[V, U] = meshgrid(v, u);

%calculate distance matrix
y = sqrt((U .^ 2) + (V .^ 2));

上面这个代码,你当然可以自己去加函数描述了,我就不放上了。

2. 将函数放到 C:\Program Files\MATLAB\R2017a\toolbox\images\images 路径下

我看到关于图像处理的很多函数都在这个路径下,于是我们就也放在这个路径下吧

3.更新cache

文件放在matlabroot/toolbox路径下了吧,此时如果运行which distmatrix是找不到文件的,这和Matlab为了提高启动和运行速度所采取的一个优化措施有关。Matlab把toolbox下的函数都cache了一下,所以只需要更新一下toolboxcache就可以了。

更新方式有两种,一种通过设置,一种跑代码就行。

更新缓存的步骤

要更新缓存和缓存文件,请执行以下操作:

  1. 主页选项卡上的环境部分中,点击  预设。选择 MATLAB > 常规

    此时将显示常规预设项窗格。

  2. 点击更新工具箱路径缓存并点击确定

②备用函数

要更新缓存,请使用 rehash toolbox。要同时更新缓存和缓存文件,请使用 rehash toolboxcache。有关详细信息,请参阅 rehash

猜你喜欢

转载自blog.csdn.net/qq_37385726/article/details/82697648
今日推荐