我有这几行难以理解......
oframes1 = do_localmax( difofg.octave{o}, 0.8*thresh, difofg.smin ) ;
oframes = [oframes1 , do_localmax( - difofg.octave{o}, 0.8*thresh, difofg.smin)] ;
这里,
我理解第一行调用函数并传递参数,但很难理解第二行以及什么样的语法是difofg.octave {o}
答案 0 :(得分:1)
句法:
difofg
不是函数;它是一个变量,可能是struct或class object。 difofg.octave
和difofg.smin
从该结构/对象中获取名为octave
或smin
的元素。
difofg.octave
显然是cell array,difofg.octave{o}
获取该单元格数组的o
元素。
第二行创建一个包含两个元素的数组:第一行是oframes1
,第二行是第二次调用do_localmax
的结果。也许这个等效的代码可以更清楚地发生了什么:
oframes1 = do_localmax( difofg.octave{o}, 0.8*thresh, difofg.smin);
oframes2 = do_localmax( -difofg.octave{o}, 0.8*thresh, difofg.smin);
oframes = [oframes1, oframes2];