首页 >>  正文

如何用matlab画出一个圆

来源:baiyundou.net   日期:2024-09-21

1.引言

赤潮作为一种全球性的海洋灾害,严重阻碍了海洋生态和经济的发展。随着全球,特别是我国近海赤潮频发,确定赤潮类型和浓度从而科学有效地防治和减小赤潮危害,已成为海洋环境保护的重要课题。

目前,赤潮检测的方法主要有:观察法、遥感检测和光谱检测。传统的人工观察操作过程复杂,对操作人员专业性要求高。遥感检测受海面鱼鳞光、天气等自然环境的影响检测精度低。光谱技术主要包括吸收光谱、荧光光谱和高光谱成像(HSI)技术。吸收光谱技术测量范围广,但灵敏度低,抗干扰能力差。荧光光谱技术灵敏度高,但检测设备价格昂贵。HSI是一种对图像和光谱进行融合的技术,具有较高的检测精度,为微藻种类鉴别和细胞浓度检测提供了一种快速、准确的测量方法。

赤潮藻细胞内含有多种色素,不同色素种类和比例都会引起赤潮藻吸收光谱和荧光光谱的变化。基于此利用支持向量机成功鉴别了海洋卡盾藻、东海原甲藻和球形棕囊藻。但由于某些赤潮藻种所含色素种类相近而难以区分,如甲藻、硅藻和针胞藻,利用光谱技术对其进行鉴别的研究鲜有报道。光谱也广泛运用于浓度测量中,但受到浓度大小和范围的限制,在低浓度赤潮藻检测中运用较少,而多用于高浓度经济微藻的检测。

针对甲藻、硅藻和针胞藻的光谱检测困难,且低细胞浓度藻液的光谱预测模型精度较低的问题,搭建HSI系统,采集了大量甲藻(强壮前沟藻)、硅藻(中肋骨条藻和三角褐指藻)和针胞藻(赤潮异湾藻)的光谱数据,对比了不同光谱预处理手段、波段筛选算法与建模方法的交互影响及其对藻种鉴别和藻细胞浓度测量的影响。

2.实验方法

2.1 藻种和培养条件

选择福建省周边海域常见的4种赤潮藻为检测样本,分别为强壮前沟藻、赤潮异湾藻、中肋骨条藻和三角褐指藻,使用F/2培养基培养,盐度为30~35g·L-1,pH为8.0,温度控制在22℃,光照强度为6300lux,光照周期为14L:10D。

2.2 藻种和培养条件

2.2.1样本制备和生物量测量

取指数增长期的藻种(104~106cells·mL-1)加入人工海水进行稀释,每个藻种设置不少于10个浓度梯度(稀释1、2、3、4、5、6、7、8、9、10倍),稀释到接近赤潮发生时的基准浓度。藻细胞浓度用血球计数板和浮游植物计数框在显微镜下获得。每个浓度设置不少于5个平行样本,每个样本采集两次取平均,4个藻种样本总数为398。

2.2.2光谱采集系统搭建

搭建的高光谱采集系统如图1所示,包括高光谱相机、卤素光源、背景板、培养皿、暗箱和电脑。将藻液样品充分搅拌均匀,用移液枪取样5mL放入直径为35mm培养皿中,通过高光谱数据采集系统采样。

图1 高光谱成像系统示意图

2.2.3高光谱数据校正和提取

为了减少系统误差和外部环境的不利影响,采用式(1)获得校正后的高光谱图像反射率

式(1)中,Rci为校正后的光谱,Sampleci为原始高光谱图像,Whiteci和Darkci分别为反射率99%标准白板图像和盖上镜头盖获得的暗电流图像。

原始高光谱图像通过式(1)校正后,用ENVI5.1选取藻液所在区域作为感兴趣区域(平均大小为以70pixel为直径的圆),计算感兴趣区域光谱反射率的平均值作为样本的光谱反射率。对获取的所有样本的光谱反射率数据,采用SPXY算法(SPXY)按照2:1的比例划分建模集和预测集。化学计量学算法和数字图像处理技术主要由Matlab2018a、Unscramblerversion10.4、OriginPro2021软件实现。

2.3 预测模型建立

光谱预测模型建立包括光谱数据预处理、特征波段提取和模型建立三个步骤。

2.3.1光谱数据预处理

高光谱图像采集过程受光源电压不稳定、光线不均匀、仪器精度等因素的影响。采集的光谱往往带有不同程度的噪声,在提取特征波段进行建模时,这种噪声的影响可能会导致建模效果差、鲁棒性低。光谱预处理可以减少噪声对特征波段提取以及建模的影响,从而提高预测模型的精度。表1所示为筛选的7种预处理方法及其特点。

表1 所选光谱预处理方法及其特点

2.3.2特征波段选择

高光谱数据量庞大,有效地去除背景信息,提取代表微藻信息的特征波段,有利于提高效率和准确率。采用2种特征波段提取方法,分别是遗传算法(GA)和连续投影算法(SPA)。

2.3.3建模

由于不同波段和类型的光谱特征有所不同,且检测对象的目标特性也不尽相同,因此,两者间的关系具有不确定性。光谱建模算法各有优势,需要针对不同的应用对象,选择合适的算法。本研究采用两种分类方法和三种回归模型分别进行藻种鉴别和浓度测量,不同建模方法的特点如表2所示。

表2 所选光谱建模方法及其特点

2.3.4模型评估

藻种鉴别模型利用准确率进行评价,而浓度测量模型则通过决定系数(R2)、平均绝对误差(MAE)和平均相对误差(MARE)来评价,R2、MAE和MARE的值可由式(2)、式(3)和式(4)计算得到

i为第i个样品的真值,ypre,i为第i个样品的模型预测值,ymean所有样品真值的平均值,n为样品个数。

式中,n为样本个数,yi为第i个样本真值,Yyi为第i个样本预测值,MAE和MARE都大于0,其值越小,表示模型预测结果越好。

结果与讨论

3.1 高光谱图像的采集和黑白校正

赤潮发生时赤潮藻会消耗水中的溶解氧,导致动物窒息性死亡,造成经济损失,影响海洋渔业的发展。如表3所示,强壮前沟藻(甲藻)、赤潮异湾藻(针胞藻)、中肋骨条藻(硅藻)和三角褐指藻(硅藻)对生态环境的影响各不相同。所以,通过光谱分析来实现藻种鉴别具有重要意义。

表3 四种赤潮藻的生物和光谱信息

图2(a)-(d)分别显示强壮前沟藻(细胞浓度在1.05×103~1.05×104cells·mL-1之间)、赤潮异湾藻(细胞浓度在1.05×104~ 2.51×105cells·mL-1之间)、中肋骨条藻(细胞浓度在1.13×104~ 2.38×105cells·mL-1之间)和三角褐指藻(细胞浓度在1.06×105~4.36×106cells·mL-1之间)的原始光谱曲线。如图2(a)-(c)所示,强壮前沟藻和中肋骨条藻的光谱曲线形状相似,在400~450和685~710nm分别存在一个较大的反射谷和反射峰。可能的原因是强壮前沟藻和中肋骨条藻色素种类和比例相似(见表3),受到叶绿素a(Chla)和叶绿素c(Chlc)的叠加作用在400~450nm形成一个较大的反射谷,而685~710nm的反射峰是赤潮水体的特征反射峰。如图2(b)和(d)所示,赤潮异湾藻和三角褐指藻的光谱曲线形状相似。可能的原因是赤潮异湾藻与三角褐指藻色含有大量Chla使得光谱曲线在440和675nm波段附近形成反射谷外,且都含有大量岩藻黄素使得光谱曲线在489~491nm处有反射谷(见表3)。所以,采用原始光谱很难将这四个种类的赤潮藻区分开,需要建立模型来表示藻种光谱信息与藻种类别之间的关系,以达到鉴别藻种的目的。

图2 原始光谱曲线

(a):强壮前沟藻;(b):赤潮异湾藻;(c):中肋骨条藻;(d):三角褐指藻

3.2 藻种鉴别结果分析

将原始光谱(Raw)数据和经过7种预处理(见表1)后的数据用两种波段筛选方法(分别是GA和SPA)提取特征波段,然后采用SVM和反向传播神经网络(BPNN)进行建模,其结果如图3所示。由图3(a)可知基于Savitzky-Golay平滑的二阶导数结合GA(SG+2nd-GA)的组合方法在采用SVM和BPNN两种建模方法时都获得了100%的准确率,由图3(b)可知SG+2nd-SPA组合方法在采用SVM和BPNN两种建模方法时也分别取得了98.5%和96.2%的准确率。结果表明恰当的预处理方法可以提升波段筛选的准确率,从而提高建模的精度。采用SG+2nd的预处理方法可以提高波段筛选和建模的准确率,适用于低浓度具有相似光谱曲线的赤潮藻种鉴别。

图3 四种赤潮藻经(a)GA和(b)SPA提取特征波段的鉴别的结果

从图3中还可以看出波段筛选方法对模型准确率有关键性的影响,采用GA波段筛选方法时,不同的预处理与建模方法对模型预测精度的影响较小(准确率在93.9%~100.0%之间),而采用SPA波段筛选方法时,不同预处理与建模方法对模型预测精度的影响较大(准确率在18.9%~100.0%之间)。为了进一步分析原因,表4列出了基于不同预处理算法GA和SPA提取出的特征波段。

由表4可知,GA提取的特征波段位于450.6~837.2nm之间,主要集中在450.6~494.0和552.7~644.7nm,这些波段位于藻细胞中不同色素对光的吸收波段范围内(见表3)。而SPA提取的特征波段位于386.2~1032.1nm之间,部分位于386.2~393.3和1032.1nm,这些波段在高光谱相机光谱探测范围的两端,受噪声影响大,不适合作为代表藻种信息的特征波段。上述结果表明GA提取的特征波段更具代表性和有效性,而SPA提取的部分特征波段受噪声影响大不利于建模。特征波段的代表性和有效性是影响藻种鉴别准确率的关键。

表4 不同预处理算法处理后 GA和SPA所提取的特征波段

如表4所示,SG+2nd-GA提取的特征波段为547.8、562.6、644.7、829.4和832.0nm,这可能与不同微藻细胞内色素种类和比例有关。其中547.8nm可能与岩藻黄素吸收有关,岩藻黄素是赤潮异湾藻、中肋骨条藻和三角褐指藻主要色素之一,而在强壮前沟藻中不存在(见表3)。562.6nm波段则是受到Chla的影响。644.7nm可能是同时受到Chla和Chlc的影响。829.4和832.0nm是由于藻液中水的O—H键的作用。波段出现稍微偏移的原因可能是:

(1)不同藻种色素种类和比例不同;

(2)同藻种不同生长周期色素含量不同;

(3)同藻种不同个体色素含量不同。综上所述,SG+2nd-GA提取的波段是各藻种中不同色素对光吸收的特征波段,所以能够100%成功鉴别强壮前沟藻、赤潮异湾藻、中肋骨条藻和三角褐藻。

3.3 藻细胞浓度预测模型结果分析

根据前面的描述,SG+2nd-GA的组合方式对4种赤潮藻的光谱曲线降噪和筛选特征波段具有一定的优势。图4标记了4个藻种SG+2nd-GA处理后的特征波段,其中,强壮前沟藻的特征波段是577.4、667.4、669.9、672.5和675.0nm,赤潮异湾藻的特征波段是654.8、667.4、672.5和675.0nm,中肋骨条藻的特征波段是669.9、672.5和675.0nm,三角褐指藻的特征波段是652.3、680.1和695.3nm。不同色素对特定波长处的光吸收度是进行浓度预测的可靠指标,利用叶绿素在684nm处对光的吸收度曾被用来测量近头状尖胞藻的细胞浓度,且模型预测R2达到0.9998。四种赤潮藻的浓度预测模型波段主要集中在红光区域(620~780nm),该区域是Chla的主要吸收光谱范围。其中强壮前沟藻、赤潮异湾藻和中肋骨条藻都选择675nm作为特征波段之一,这与许多学者认为Chla在675nm处有光谱吸收峰相一致。此外,577.4nm[如图4(a)所示]作为强壮前沟藻细胞浓度特征波段,可能与强壮前沟藻富含有Chlc有关,根据2.2中特征波段出现微偏移可能的原因,对四种赤潮藻浓度进行预测时选择的波段还与Ballardo等使用677nm处的吸收系数预测三角褐指藻的浓度相符合。

图4 SG+2nd预处理后4种微藻的光谱曲线(红点标记处为 GA所选特征波段)

(a):强壮前沟藻;(b):赤潮异湾藻;(c):中肋骨条藻;(d):三角褐指藻

进行藻种浓度测量时,浓度范围与测量误差是考量模型价值的重要因素。如表5所示,应用了三种建模方法(分别是多元线性回归(MLR)、PLS和支持向量回归(SVR))对四种赤潮藻建立浓度预测模型,结果表明四种赤潮藻的SVR建模集和预测集R2均大于0.98。其中,强壮前沟藻和中肋骨条藻模型浓度预测范围分别在1.05×103~1.05×104和1.13×104~2.38×105cells·mL-1,最低浓度达到该藻种发生赤潮时的基准浓度。相比商业型藻种(如小球藻、螺旋藻等),赤潮藻的细胞浓度较低,且叶绿素含量也较低,造成光谱反射率波动范围小,建模难度大,且建模精度将随着细胞浓度的下降而急剧下降,这也是应用光谱测量手段探测初期赤潮遇到的瓶颈。Ballardo等应用分光光度计实现了三角褐指藻藻种浓度的预测,达到的最低预测浓度为1.37×106cells·mL-1,而本工作应用高光谱探测的手段实现对该藻种最低浓度1.06×105cells·mL-1的预测,说明本文提出的SG+2nd-GA-SVR建模方法具有一定的先进性。

表5 SG+2nd-GA处理后不同建模方法细胞浓度预测结果

如表5所示,SVR非线性建模方法,效果优于MLR和PLS线性建模效果。可能的原因是微藻细胞浓度预测模型主要建立微藻细胞内色素浓度与吸收系数之间的关系。由于“包络效用”使色素浓度与赤潮藻吸收系数之间并不是简单的线性关系,而是一种复杂的非线性变化,如Chla与光谱反射率之间存在幂指数关系。

4结论

采用高光谱测量手段对强壮前沟藻、赤潮异湾藻、中肋骨条藻和三角褐指藻四种赤潮藻种进行鉴别和细胞浓度测量。比较了7种预处理方法和2种数据降维方法,结果表明SG+2nd-GA的组合方式对这四种赤潮藻的光谱曲线隆噪和特征波段提取具有一定的优势,通过提取5个波段与SVM或BPNN结合能100%鉴别这四种微藻。藻细胞模型浓度预测结果表明色素是判断赤潮浓度的一个重要因素。此外,SG+2nd-GA-SVR在三种浓度预测模型中预测结果最好,四种藻预测模型R2均大于0.98,其中强壮前沟藻和中肋骨条藻最低预测浓度达到该藻种发生赤潮时的基准浓度,三角褐指藻突破了现有光谱技术对其预测的最低浓度。本研究所建立的高光谱反射系统藻种鉴别和浓度预测方法,为快速、无损探测赤潮提供了新方法,为赤潮监测和防治提供了新依据。


推荐:

便携式高光谱成像系统 iSpecHyper-VS1000

专门用于公安刑侦、物证鉴定、医学医疗、精准农业、矿物地质勘探等领域的最新产品,主要优势具有体积小、帧率高、高光谱分辨率高、高像质等性价比特点采用了透射光栅内推扫原理高光谱成像,系统集成高性能数据采集与分析处理系统,高速USB3.0接口传输,全靶面高成像质量光学设计,物镜接口为标准C-Mount,可根据用户需求更换物镜。



","gnid":"9108311f697b759e4","img_data":[{"flag":2,"img":[{"desc":"","height":"721","title":"","url":"https://p0.ssl.img.360kuai.com/t0124c4556df9570dae.jpg","width":"1080"},{"desc":"","height":305,"title":"","url":"https://p0.ssl.img.360kuai.com/t01d56c730ee417b03b.jpg","width":554},{"desc":"","height":"239","title":"","url":"https://p0.ssl.img.360kuai.com/t0140f8467ee09797e0.png","width":"343"},{"desc":"","height":"181","title":"","url":"https://p0.ssl.img.360kuai.com/t0189a0f0a63eed7962.png","width":"553"},{"desc":"","height":"305","title":"","url":"https://p0.ssl.img.360kuai.com/t01d56c730ee417b03b.png","width":"554"},{"desc":"","height":"38","title":"","url":"https://p0.ssl.img.360kuai.com/t013cef56c6fa7d6820.png","width":"378"},{"desc":"","height":"181","title":"","url":"https://p0.ssl.img.360kuai.com/t0189a0f0a63eed7962.png","width":"553"},{"desc":"","height":"154","title":"","url":"https://p0.ssl.img.360kuai.com/t01e2558eeb9d3b7f2d.png","width":"554"},{"desc":"","height":"46","title":"","url":"https://p0.ssl.img.360kuai.com/t01a0ed0ae2a4bfcee5.png","width":"530"},{"desc":"","height":"102","title":"","url":"https://p0.ssl.img.360kuai.com/t018fe4cf7b1e83e3fd.png","width":"283"},{"desc":"","height":"89","title":"","url":"https://p0.ssl.img.360kuai.com/t01e91a19e13327edc1.png","width":"554"},{"desc":"","height":"489","title":"","url":"https://p0.ssl.img.360kuai.com/t01c90d5f2892eefec1.png","width":"554"},{"desc":"","height":"225","title":"","url":"https://p0.ssl.img.360kuai.com/t01fabbd05aa85ec5c5.png","width":"554"},{"desc":"","height":"300","title":"","url":"https://p0.ssl.img.360kuai.com/t012cb964e5b129fbf0.png","width":"705"}]}],"original":0,"pat":"art_src_0,fts0,sts0","powerby":"cache","pub_time":1704772831000,"pure":"","rawurl":"http://zm.news.so.com/d6468581082e280f83ca876f5a97d403","redirect":0,"rptid":"c8859fb2a2c10150","rss_ext":[],"s":"t","src":"莱森光学LiSenOptics","tag":[],"title":"莱森光学:基于高光谱成像技术的赤潮藻种鉴别和浓度测量

宇肤邓3716请问如何用matlab画这张图 -
丰梵段13659283317 ______ 你是要什么?一共三条线用plot画就可以了.另外的名字和坐标名称用title和xtitle可以设定.最简单的方法是你什么都不设定.先画出3跳线,然后在图的窗口里选 edit》》figure property,之后...

宇肤邓3716如何用matlab画一个动态图? -
丰梵段13659283317 ______ No.1 给你一个示例吧~~~用for循环做的 %动态绘制椭圆 clf;axis([-2,2,-2,2]); axis equal; pause(1); h=line(NaN,NaN,'marker','o','linesty','-','...

宇肤邓3716如何用matlab 把一组数据画出来 -
丰梵段13659283317 ______ hold on H=0:20:180; V=[0 9.1 18.2 27.7 37.0 46.2 55.6 65.0 74.3 83.6]; plot(H,V,'-'); plot(H,V,'*'); hold off

宇肤邓3716matlab怎么画出一个积分函数的图像 -
丰梵段13659283317 ______ plot作图基本的两种输入方式 (1)plot(y),这个y是一个矩阵,n行m列的话,一共会画出m条,每条n个点 (2)plot(x,y),x与y是同维矩阵,比如 同是1行n列,或者同是n行1列,都能作图,只要能找到x与y一一对应的点就行,如果x与y的元素个数不能一一对应(比如不同维),那就做不出来图的 你现在workplace里看一看fp与y的储存形式,起码应该是矩阵...要是函数绘图 ,有自己单独的绘图指令:fplot,基本用法是 fplot('fun',[xmin,xmax])

宇肤邓3716如何用matlab软件画出已知图形的曲线图? -
丰梵段13659283317 ______ 方法步骤 1、第一步要提取曲线图尽可能多的特征点,推荐一款软件GetData2.2,很多网站提供这款软件的下载,下载下来安装完后打开这款软件. 2、选择file->open image,打开想要的曲线图,选择operations—>set the scale,设定图片的坐...

宇肤邓3716如何用matlab画一个可透视的椭球 -
丰梵段13659283317 ______ Syntax [x,y,z] = ellipsoid(xc,yc,zc,xr,yr,zr,n) [x,y,z] = ellipsoid(xc,yc,zc,xr,yr,zr) ellipsoid(axes_handle,...) ellipsoid(...) Description [x,y,z] = ellipsoid(xc,yc,zc,xr,yr,zr,n) generates a surface mesh described by three n+1-by-n+1 matrices, enabling surf(x,y,z) ...

宇肤邓3716matlab参数方程请问如何用matlab画x=cos(X)^3 y=sin(x)^3的图像, -
丰梵段13659283317 ______[答案] clear all close all clc t=0:pi/10000:2*pi; x=cos(t).^3; y=sin(t).^3; figure plot(t,x,'g',t,y,'r') hold on figure plot(x,y) hold on

宇肤邓3716如何用matlab画一组数据的统计图,如何用m -
丰梵段13659283317 ______ 1)打开matlab,点击右上角wokspace里的绿色向下箭头,弹出选择路径窗口,并选择你所需要导入的数据(如data.xls),出现新的窗口点finish.完成导入,我认为最简单的方法了.由于你是每一列为一类,因此,要记得转置.>>A=data%赋值...

宇肤邓3716matlab,这个图怎么画 -
丰梵段13659283317 ______ matlable ->help bar->详细的例子,然后对照你的数据及要求修改

宇肤邓3716怎么在MATLAB中画一个比较复杂的函数? -
丰梵段13659283317 ______ 首先,你不清楚一个问题,matlab中认为所有的数据都是矩阵,因此在你进行操作的时候,也必须清楚这个概念,画图的时候,x是一个向量,因此后边的表达式应该是向量表达式,也就是说使用的是很向量操作,那么你就不能使用这种操作方式,向量的乘法分为点乘和矩阵乘法,你需要的是点乘,运算的时候必须使用'.',加以说明,因此正常的操作应该是:>> x=0:0.1:100;%创建向量;>> plot(x,(exp(-x).*((-1/6)*27.2*x.*x-13.6*x-2/3.*x+1./x-13.6)));%画图>>

(编辑:自媒体)
关于我们 | 客户服务 | 服务条款 | 联系我们 | 免责声明 | 网站地图 @ 白云都 2024