You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
For R2018a and newer, complex data are no longer stored in two separate data segments. This is good overall, but requires changes to the DIPlib-MATLAB interface. It is possible to compile DIPimage for R2018a or newer, but passing complex matrices in and out of the MEX-files causes two copies of the data, instead of none. However, because dip_image objects never contain complex data (complex images are stored as real arrays to prevent copies), the problems with this are limited.
If we want to use the new complex-interleaved API that comes with R2018a, then we'd be able to take any complex matrix from MATLAB without copy. However, mxGetPropertyShared is no longer supported. This means that all image data will get copied when used as input to DIPimage MEX-files. This is very bad! The only way around this is to use the new C++ interface. This means we would need to rewrite all MEX-files, and maintain separate source code for R2017b and earlier, and for R2018a and newer.
The text was updated successfully, but these errors were encountered:
For R2018a and newer, complex data are no longer stored in two separate data segments. This is good overall, but requires changes to the DIPlib-MATLAB interface. It is possible to compile DIPimage for R2018a or newer, but passing complex matrices in and out of the MEX-files causes two copies of the data, instead of none. However, because
dip_image
objects never contain complex data (complex images are stored as real arrays to prevent copies), the problems with this are limited.If we want to use the new complex-interleaved API that comes with R2018a, then we'd be able to take any complex matrix from MATLAB without copy. However,
mxGetPropertyShared
is no longer supported. This means that all image data will get copied when used as input to DIPimage MEX-files. This is very bad! The only way around this is to use the new C++ interface. This means we would need to rewrite all MEX-files, and maintain separate source code for R2017b and earlier, and for R2018a and newer.The text was updated successfully, but these errors were encountered: