每次调用nlfilter
函数时,都会出现一个进度条窗口。我怎么能禁用那个窗口?是否有-q
等选项?
我按行处理图像并应用自定义函数,因此调用nlfilter函数时生成的窗口非常麻烦,同时也降低了系统的性能。
请注意,我只想暂时禁用该窗口。
答案 0 :(得分:3)
MATLAB中的waitbar
肯定会降低代码的性能,并且在某些操作系统上运行长时间运行的任务时会非常讨厌,因为它可能会随机窃取键盘/鼠标的焦点。
我亲自创建自己的waitbar
函数并将其放在MATLAB路径上,以便对其进行评估而不是内置函数。
我有一个更复杂的基于文本的进度条,但以下函数只是将消息打印到命令行。你甚至可以删除第一个块,并且内容只是varargout = {[]};
,你将没有输出。
function varargout = waitbar(varargin)
if nargin >= 2 && ischar(varargin{2})
disp(varargin{2})
elseif nargin >= 3 && ischar(varargin{3})
disp(varargin{3})
end
varargout = {[]};
end
请务必将此保存在MATLAB路径上的waitbar.m
高处。
注意:这会使所有等待栏静音,因此如果您想恢复典型的等待栏行为,您需要删除/重命名此文件。