image processing - Normalized cuts with Matlab 2013a -
i using normalized cuts package http://www.cis.upenn.edu/~jshi/software/ncut_9.zip (on windows 7)
this used work fine matlab2010a. have upgraded matlab2013a (32 bit student version) , following error:
error using arpackc expect 2 output arguments error in eigs_new (line 240) arpackc( aupdfun, ido, ... error in ncut (line 83) [vbar,s,convergence] = eigs_new(@mex_w_times_x_symmetric,size(p,1),nbeigenvalues,'la',options,tril(p)); error in ncutw (line 9) [ncuteigenvectors,ncuteigenvalues] = ncut(w,nbcluster); error in ncutimage (line 18) [ncutdiscrete,ncuteigenvectors,ncuteigenvalues] = ncutw(w,nbsegments); error in demoncutimage (line 25) [seglabel,ncutdiscrete,ncuteigenvectors,ncuteigenvalues,w,imageedges]= ncutimage(i,nbsegments);
obviously new_eigs()
function in ncuts
incompatible arpack version in latest matlab.
- does know of workaround this?
- normalised uses modified version of matlab's
eigs()
function. why can't use matlab's built-ineigs()
instead ofeigs_new()
(it seem work).
there 2 solutions this:
use matlab's
eigs()
function instead ofeigs_new()
provided in normalized cuts package. guesseigs_new()
designed solve compatibility issue previous version of matlab, , causing issue.modify
eigs_new()
. there callarpackc()
ineigs_new()
, make call in tool box version ofeigs()
. so, e.g.:arpackc( aupdfun, ido, ... bmat, intconvert(n), whch, nev, tol, resid, ncv, ... v, ldv, iparam, ipntr, workd, workl, lworkl, info );
becomes
[ido, info] = arpackc( aupdfun, ido, bmat, intconvert(n), whch, ... nev, tol, resid, ncv, v, ldv, iparam, ipntr, workd, workl, ... lworkl, info );
there 2 places had changed make work (although there other calls arpackc()
don't executed).
i still not sure why eigs_new()
exists @ all.
Comments
Post a Comment