matlab中怎样将uint8转化成double型

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了matlab中怎样将uint8转化成double型相关的知识,希望对你有一定的参考价值。

1、首先,可以在命令行窗口直接输入命令,回车即可看到matlab软件中的基本命令语句的信息。

2、点击其中一个语句,就可以看到命令行窗口。

3、假如知道大概的所在的范围,比如某个工具箱,输入help toolboxname,就可以得到工具箱的一些信息。

4、关于算术类型有很多判定函数。isinteger判定一个数组是不是整型,isfloat判定是不是浮点型(single和double都是浮点型)。

5、flintmax表示用浮点数所能表示的最大精确整数。可以带有参数'single'或者'double',就完成了。

参考技术A

1、打开matlab,在命令行窗口中输入a=1.2345;round(a),按回车键,得到结果1,已经将浮点型数据a四舍五入成整型1。

2、输入a=1.6345;round(a),按回车键,得到结果2。

3、在命令行窗口中输入a=1.2345;ceil(a),按回车键,得到结果2,已经将浮点型数据a向上取整成2。

4、输入a=1.6345;ceil(a),按回车键,可以看到同样结果为2,ceil函数向上取整函数。

5、在命令行窗口中输入floor(a),按回车键得到结果1,floor函数向下取整。

6、将浮点型数据转成整型的函数,都可以用于矩阵,输入 a=[1.23 3.56 7.98];floor(a),矩阵中每个元素都向下取整。

参考技术B MATLAB中读入图像的数据类型是uint8,而在矩阵中使用的数据类型是double
因此I2=im2double(I1) :把图像数组I1转换成double精度类型;
如果不转换,在对uint8进行加减时会产生溢出.
图像数据类型转换函数:
默认情况下,matlab将图象中的数据存储为double型,即64位浮点数;
matlab还支持无符号整型(uint8和uint16);
uint型的优势在于节省空间,涉及运算时要转换成double型。
im2double():将图象数组转换成double精度类型
im2uint8():将图象数组转换成unit8类型
im2uint16():将图象数组转换成unit16类型.
参考技术C

使用double命令

比如:

a=int8(124);
a2=double(a);
whos

该段代码先创建了一个uint8的变量a

再用double命令将a变为double变量并赋值给了a2

通过whos显示类型:

  Name      Size            Bytes  Class     Attributes


  a         1x1                 1  int8                

  a2        1x1                 8  double     

参考技术D clear;clc;close all;
a=randint(5,10,[1 300])%产生5行10列1-300的整数
b=uint8(a)%将a其转化成uint8
d=double(b)%将b其转化成double
%虽说b,和d显示的结果是一样的,
%但是你可以做下面的测试说明其实他们是不同的
b(1,1)=500
d(1,1)=500

以上是关于matlab中怎样将uint8转化成double型的主要内容,如果未能解决你的问题,请参考以下文章

matlab中怎样将double型矩阵转换为int8型矩阵

matlab如何将‘0011001011001110....’字符串型的数据转化为16位的0011001011001110.....uint8型数据

matlab 为啥要进行数据类型转换?

matlab中ftt2转换后的数据是啥类型的

matlab 中如何将double 型转换为 char

MATLAB中的数据从double类型强制转化为uint8其舍入用的是四舍五入,附MATLAB基本数据类型