启动matlab引擎是要花费时间的,大约5秒-10秒这样。
engine = matlab.engine.start_matlab()
如果有对比算法需要连续顺序运行(都需要启动engine),建议将engine启动语句写在外围,只启动一次,然后多个对比算法调用它。
数据类型转换这里不会造成大量时间开销。
import numpy as np
import matlab
a = np.array([[1,2],[1,2],[1,2],[1,2]])
print(a)
print([[1,2],[1,2],[1,2],[1,2]])
b = [[1,2],[1,2],[1,2],[1,2]]
c = matlab.double(a.tolist())
d = matlab.double(b)
print(c)
print(d)