matlab 中如何将unit8转成double型

matlab 中如何将unit8转成double型
2025-03-04 12:44:31
推荐回答(3个)
回答1:

在矩阵中使用的数据类型是double。因此可以通过语句I2=im2double(I1) ;把图像数组I1转换成double精度类型;如果不转换,在对uint8进行加减时会产生溢出,可能提示的错误为:Function '*' is not defined for values of class 'uint8'

再给你几条语句,希望对你有帮助:
im2double():将图像数组转换成double精度类型
im2uint8():将图像数组转换成unit8类型
im2uint16():将图像数组转换成unit16类型

回答2:

内存不足,说明你的数据量太大了,一个double是8字节,值uint8的8倍。
试试single看看,single是double的一半内存。
要是还内存不够,除非你改算法;或者用64bit的matlab试试。

回答3:

double(A)。是uint8不是unit8。