1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > matlab中关于unit8和double数值类型之间的存储数据和转换问题

matlab中关于unit8和double数值类型之间的存储数据和转换问题

时间:2023-03-25 23:30:46

相关推荐

matlab中关于unit8和double数值类型之间的存储数据和转换问题

最近写matlab又遇到一个坑,感觉是匪夷所思的bug,简直刷新我的人生观、世界观和价值观【手动笑哭】

想解决的问题很简单,我就是想求一张图片中所有像素点的R、G、B三个颜色分量的平均值,然后我发现,每个颜色分量的和永远是255,这怎么可能啊,和肯定会很大啊,各种调试,调到我质疑人生。

后来在Workspace中看了几眼,看到图片存储是以unit8数值类型存储的,成功引起了我的注意,以前真是没注意过图片是以哪种数值类型存储的。

在此介绍下matlab数值类型,分为整数和浮点数。整数分为有符号和无符号的:int8(带符号8位整型),int16,int32,int64,uint8(无符号8位整型),uint16,uint32,uint64。浮点数分为单精度(single,32位)和双精度(double,64位)。

因为图片以unit8存储,所以所能存储的数值的最大范围是255,所以加到255以后就不会再增加了,加个强制类型转换,a=double(b)就可以解决这个问题。

发现因为基础问题的坑简直坑的不行,算是为以后学别的东西铺个路吧,基础一定要打好。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。