matlab - Octave 找不到函数句柄

标签 matlab octave

我使用 Octave 来运行 selective search代码,它给了我这个错误:

错误:@SSSimColourTextureSizeFillOrig:找不到函数和方法

出现这个错误的代码是:

simFunctionHandles = {@SSSimColourTextureSizeFillOrig, @SSSimTextureSizeFill, @SSSimBoxFillOrig, @SSSimSize};

但是这段代码可以在 MATLAB 上成功运行,所以我认为 Octave 中存在一些错误或者它不支持函数句柄?

最佳答案

Octave 在函数句柄方面绝对没有问题。您遇到的确切问题是文件的格式。

如果您查看帖子中链接的 Github 存储库,您所指的函数是 MATLAB P-Code files .这些是混淆后的 MATLAB 文件,只能在 MATLAB 中运行。 P-Code 文件的目的是获取原始源代码并隐藏原始源代码,这样您就无法获取原始源代码并对其进行修改以供自己使用。话虽如此,您别无选择,只能将此功能用于您的目的,并且您无法修改其行为。

但是,Octave 没有这种混淆支持,因此自然无法重建原始代码供您运行。

查看此 Octave 线程了解更多详细信息:http://octave.1599824.n4.nabble.com/Matlab-p-files-td1627334.html

....所以基本上,你是SOL .您只能在 MATLAB 中运行这些函数。不过,你可能运气好,联系了原作者,得到了原始的.m文件,但这些是P-Code文件,可能是因为有些方法和技巧作者没有' 想要共享,但需要以系统其余部分能够正常工作的方式分发此代码。

关于matlab - Octave 找不到函数句柄,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32282430/

相关文章:

matlab - 来自 CLUSTERGRAM 对象的置换向量 (MATLAB)

python - Python 中的多元线性回归 - MATLAB 中 mvregress 的模拟?

matlab - 为什么高频范围内的 FFT 结果不正确?

matlab - 矩阵中的前 n 行?

matrix - GNU Octave 加载稀疏矩阵

sorting - 如何按一列 float 对 Octave 中的元胞数组进行排序?

c++ - 如何将 C 输出文件读入 Matlab

MATLAB - 直接使用矩阵的索引而不使用循环

numpy - 为什么 octave 的 prctile 和 numpy 的百分位数之间存在差异?

octave - Octave 中的 datenum 问题