running old mex file on new matlab releases

后端 未结 2 407
北海茫月
北海茫月 2021-01-18 08:38

I\'m trying to run a program originally tested on Matlab 6.5 on a new release (R2009a) The program uses some mex files, and I get the following error when trying to run it:<

相关标签:
2条回答
  • 2021-01-18 08:44

    The source code for those mex functions appears to be available in the "Image segmentation with normalized cuts" source on this page: http://www.cis.upenn.edu/~jshi/software/ (in the specific_NcutImage_files subdirectory in the unpacked .zip)

    0 讨论(0)
  • 2021-01-18 09:08

    It's pretty common for there to be problems running mex functions with different versions of Matlab. The errors you're getting look like they're due to API changes in Matlab (though that surprises me a little). I've had the most trouble because of binary incompatibilities induced by changes in gcc. I'd suggest contacting Jiambo and asking him if he can build a new version or release the source.

    Worst case, you could try re-implementing those mex functions. The normalized cut algorithm is pretty straightforward in Matlab (see the Shi and Malik paper). By the names of the mex functions, they look like they're mostly duplicating existing matlab functionality (matrix multiplication, matrix sparsification). There's a non-zero chance that if you re-implemented them as regular m-code functions they'd be faster anyway due to the multicore support that's been added to Matlab.

    0 讨论(0)
提交回复
热议问题