这个示例演示了如何对表示信号和图像的整数数据执行算术运算。
负载测量数据集由4个仪器的信号组成,使用8位和16位A-to-D的结果数据保存为int8
,int16
和uint16
。时间被存储为uint16
。
负载integersignal查看变量谁Signal1Signal2Signal3Signal4Time1
名称大小字节类属性Signal1 7550x1 7550 int8 Signal2 7550x1 7550 int8 Signal3 7550x1 15100 int16 Signal4 7550x1 15100 uint16 Time1 7550x1 15100 uint16
首先,我们将绘制两个信号,以查看信号范围。
plot(Time1, Signal1, Time1, Signal2);网格;传奇(“Signal1”,“Signal2”);
这里我们看到的值int8
。很可能需要对这些值进行缩放,以计算信号所代表的实际物理值,如电压。
我们可以对整数执行标准的算术运算,例如+
,-
,*
,/
。假设我们想求Signal1和Signal2的和。
SumSig = Signal1 + Signal2;这里我们将整数信号相加。
现在我们画出求和信号,看看它在哪里饱和。
班;情节(Time1 SumSig);持有在饱和= (SumSig == intmin(“int8”)) | (SumSig == intmax(“int8”));找到它饱和的地方情节(Time1(饱和),SumSig(饱和),“路”)网格从
标记显示信号已饱和的地方。
接下来我们将看一些图像数据的算术。
street1 = imread (“street1.jpg”);加载图像数据street2 = imread (“street2.jpg”);谁street1street2
名称大小字节类属性street1 480x640x3 921600 uint8 street2 480x640x3 921600 uint8
这里我们看到的图像是24位彩色的,存储为三个平面uint8
数据。
显示的第一个图像。
班;图像(street1);%显示图象轴平等的轴从
显示第二个图片
图像(street2);%显示图象轴平等的轴从
我们可以用双精度常数缩放图像,但保持图像作为整数存储。例如,
Duller = 0.5 * street2;%缩放图像与双常量,但创建一个整数谁乏味
Name Size Bytes Class Attributes duller 480x640x3 921600 uint8
次要情节(1、2、1);图像(street2);轴从平等的紧标题(“原始”);%显示图象次要情节(1、2、2);图像(乏味);轴从平等的紧标题(“乏味”);%显示图象
我们可以把这两幅街道图像加在一起,绘制出可怕的结果。
combine = street1 + duller;%添加|uint8|图像次要情节(1 1 1)班;图像(组合);%显示图象标题(“组合”);轴平等的轴从