扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
根据计盒维数原理求一维曲线分形维数的matlab程序
精河ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为成都创新互联的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18982081108(备注:SSL证书合作)期待与您的合作!
function D=FractalDim(y,cellmax)
%求输入一维信号的计盒分形维数
%y是一维信号
%cellmax:方格子的最大边长,可以取2的偶数次幂次(1,2,4,8...),取大于数据长度的偶数 %D是y的计盒维数(一般情况下D=1),D=lim(log(N(e))/log(k/e)),
if cellmaxlength(y)
error('cellmax must be larger than input signal!')
end
L=length(y);%输入样点的个数
y_min=min(y);
%移位操作,将y_min移到坐标0点
y_shift=y-y_min;
%重采样,使总点数等于cellmax+1
x_ord=[0:L-1]./(L-1);
xx_ord=[0:cellmax]./(cellmax);
y_interp=interp1(x_ord,y_shift,xx_ord);
%按比例缩放y,使最大值为2^^c
ys_max=max(y_interp);
factory=cellmax/ys_max;
yy=abs(y_interp*factory);
t=log2(cellmax)+1;%叠代次数
for e=1:t
Ne=0;%累积覆盖信号的格子的总数
cellsize=2^(e-1);%每次的格子大小
NumSeg(e)=cellmax/cellsize;%横轴划分成的段数
for j=1:NumSeg(e) %由横轴第一个段起通过计算纵轴跨越的格子数累积N(e) begin=cellsize*(j-1)+1;%每一段的起始
tail=cellsize*j+1;
seg=[begin:tail];%段坐标
yy_max=max(yy(seg));
yy_min=min(yy(seg));
up=ceil(yy_max/cellsize);
down=floor(yy_min/cellsize);
Ns=up-down;% 本段曲线占有的格子数
Ne=Ne+Ns;%累加每一段覆盖曲线的格子数
MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。
MATLAB是matrixlaboratory两个词的组合,意为矩阵工厂(矩阵实验室)。是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。
MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。
MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。
多重分形理论是目前研究十分活跃的一门新兴学科。如果说分形理论研究具有自相似性的不规则几何问题的话,那么多重分形将主要运用于定义几何体上(包括分形几何体)具有自相似或统计自相似性的某种度量或者场,比如岩石中微量元素的含量,某一区内测量的地球物理场,或者单位面积内的矿产地分布密度等。通过这种测量可将其所定义的几何体(或二维面积)分成一系列空间镶嵌的具不同特点的子几何体(或子面积),每种这样的子几何体(或子面积)会构成一种分形,而且具有其自身的分形维数。这种分形的总体将对应一种所谓分形维数谱函数。自然界中许多物理及化学过程会产生多维分形结果,比如在地球化学中具有广泛应用前景的Mulplicative Cascade过程、Diffussion limited aggregatio(DLA)、Turbu-lence、Brownian过程等。这些过程的共同特点是其所产生的结果既具有确定性又具随机性。通过多维分形的研究使数学、物理和化学中许多具有随机和确定双重性质以及奇异性的疑难问题得到了解答。这些成果必将对地质包括地球化学的各个领域产生重要影响。
地球化学元素分布规律的研究是揭示元素矿化富集及空间变化规律的重要途径之一。地球化学数据的统计特征常常用来描述和刻画地球化学元素的分布规律。统计方法之所以能用于研究地球化学元素的分布规律不仅是由于地球化学取样和对样品进行的各种化学分析结果常具有不确定性,而且元素在地壳中的分布本身就具有不均匀性和区域随机性。从具有随机性的地球化学数据中了解元素分布规律是地球化学研究者所面临的重要挑战。统计方法在这方面起着不可替代的作用。然而人们早已注意到普通的统计方法并不考虑样品的空间分布和统计特征随空间度量尺度的变化性。此外,由于一般的统计方法是建立在统计大数定量基础之上的,因而这些统计方法(一、二阶矩有关的统计方法)往往对度量元素的一般值效果较好。严格地说它们并不具备刻画异常值的功能,分形理论则是研究这类复杂系统时空结构特征的有效途径,可以通过多重分形理论清楚地反映出统计方法的局限,而且能有效地克服统计方法的不足,它是一种研究具有自相似或统计自相似场的分布规律和描述场值的奇异性的有效方法,可以用于研究与矿化有关的微量元素在岩石、水系沉积物和土壤等介质中的空间分布和富集规律(陈春仔等,1998;成秋明,2000;谢淑云等,2003;AgterbergFP等,1994;ParedesC等,1999)。与矿化有关的微量元素地球化学场具有多重分形结构特征,微量元素的背景值往往服从正态或对数正态分布,然而高低异常值服从多重分形分布(ChengQ等,1994,1996,1999;成秋明,2004)。本次研究应用多重分形的面积校正累计频率法,对铜陵天马山矿区的18个微量元素进行了研究,初步探讨了主成矿元素、伴生元素和非成矿元素的空间变化和矿化富集规律,为天马山地区进一步找矿预测提供依据。
1.计算方法
地球化学采样点往往不是网格化的,局部区域可能采样较密或较稀甚或缺失。若直接应用原始样品分析数据进行元素含量频率分布研究,则可能过分强调采样较密的局部区域而相对忽视采样较稀的局部区域,不能真实地反映区域内元素含量值的分布特征。浓度-面积法[299]计算大于含量值ci(i=1,2……n;n为含量值分组数cmin≤ci≤cmax)的面积S(C≥ci),然后在双对数坐标下考察ci~S(C≥ci)间是否存在幂率关系即分形。对于S(C≥ci),采用两种途径来确定:①在对原始数据加权移动平均(weightedmovingaveragemethod)插值后制作的地球化学等值线图上,S(C≥ci)为含量值C大于ci的等值线圈闭的区域面积;②统计原始含量数值的盒子,即用边长确定的正方形网格覆盖研究区,S(C≥ci)等于具有含量值大于ci的正方形网格数。如果在正方形中不止一个样品,则取平均值作为该网格的含量值。众所周知,等值线的计算意味着网格结点的估值运算,运用移动平均、距离系数加权移动平均、克里格法和泛克里格法等网格估值方法可能产生不同的效果;局部特高值点(outlier)可能使邻近网格点的估值普遍偏高,导致孤立高值点拉高一大片;内部的采样空白区也可能以很不准确的估计值来代替。由此看来,方法①存在着固有的不足。本文采用方法②,即面积校正累计频率法研究元素含量频率分布,其计算步骤如下:
以一网格覆盖采样区域,记采样空间坐标(x,y)的最小、最大值分别为xmin,xmax,ymin和ymax,则x和y方向的网格数nx和ny应满足:
危机矿山深部隐伏矿大比例尺定位定量预测技术研究
式(8-5)表明x,y方向应具有相同的网格间距,式(8-6)说明总网格数乘以平均网格密度d应为总样品数n。由式(8-5)、式(8-6)可解出nx和ny,从而确定所需的覆盖网格。平均网格密度d值可取1~2,使得采样较密区域的网格内有2个或2个以上样品,采样较稀区域的网格内有1个样品,部分网格内没有样品,即为采样空白区。过大的d值会产生数据的“平滑”。本研究由于采样点为网格化的,采用d值为1.5。
斜交参考因子得分Y(i,1)正异常中心有3个,分别位于测区东部46线、50线和66线,显示有一期Au、Hg、Sb、Pb、Ag、As组合元素的富集出现在距天鹅抱蛋山岩体较远处,与岩体成因关系不明显。
计算各个网格元素含量平均值C,并对C值进行累计频率计算,即选定一组c={ci}(i=1,2……n)为非空网格数cmin≤ci≤cmax,统计所有网格平均值C大于c的网格数N(C>c),最后在双对数坐标下绘制c-N(C>c)曲线。因C值反映了采样面积校正后的含量分布,称其为面积校正累计频率(area-calibratedaccumulative-frequency,ACAF)法,其结果与浓度-面积模型方法①只相差一个常系数,即单位网格的面积,不影响双对数坐标下曲线的形态。可见,ACAF既消除了由于样品点分布不均一的影响,又不会因孤立高值点导致其邻近等值线畸变和难以剔除采样空白区等,且算法简单。
ci值按下式确定:
危机矿山深部隐伏矿大比例尺定位定量预测技术研究
式中:Cmin为最小平均含量;Cmax最大平均含量;δ为校正系数。ns为计算累计频率的分组数因元素不同而取值不一。使得ci在对数坐标下为等距,否则容易导致数据点在低含量区过稀而在高含量区过密,影响对其分布模式的总体认识。
2.讨论
1) 在图8-15中,元素含量(c)与个数(N)的投影点呈现出连续的曲线分布趋势,而不是单一的直线分布所表示的简单分形,显示出一种连续分布趋势的多重分形特征。
图8-15 天马山微量元素含量的ACAF曲线
2) 双对数坐标下各元素含量的曲线有两近似线性段。第一近似线性段大致反映了介于检出限到测定下限之间或测定下限附近的低值波动;另一近似线性段跨越了主要的含量区间,反映了地球化学场的内禀分形特征。参数b1、b2(表8-18)为这两个近似线性段经最小二乘拟合的直线斜率的负值,即累计频率分布的幂率。
表8-18 天马山微量元素多重分维值
3) 元素含量频率分布曲线上的两近似线性段之间为连续过渡,并有截然的转折点,且第一直线段只反映了介于检出限到测定下限之间或测定下限附近的低值波动。
4) 在部分图像中出现了星点状尾现象,均为高值点,当星点状尾位于拟合直线下端时,表明该元素在矿区有为局部矿化富集趋势。
5) 分维数b定量地刻画了元素含量在空间分布上的丛集程度和不均匀程度。根据有些学者利用分数的维数b表示元素的分布偏离正态分布的程度。多分维b数值反映了多次矿化事件的叠加,一个分数维b值代表了一次矿化(成矿阶段或成矿期),本区亦可分为多期成矿阶段。从分形曲线的拐点也可以判断矿区存在多期次成矿活动,因此多分形研究对确定不同成矿期次及同一成矿期次的不同成矿阶段是有意义的,但对成矿期次的判别除据拐点分布情况外,还应据矿床地质的研究。
6) 与传统统计方法中聚类分析所得到类别相比较,可以发现多重分形分类得到结果与聚类分析所得到结果有较强的一致性,两者的分类几乎完全一致,这也说明分维值的计算结果是合理可信的。元素中b2值的大小变化可以解释为:b2值越小,即直线越平缓,元素的低含量点到高含量点的变化频率下降的越慢,元素含量在空间上的丛集程度越高,就存在着较多的高含量点,有富集成矿的趋势;b2值越大,则高含量点分布较少,主要含量点集中在低含量区,也就不存在大规模富集成矿的可能。
就是一种测量距离空间(X, d)(特别是豪斯多夫空间)比如欧氏空间 Rn 中分形维数的计算方法
它与动力系统的混沌理论交叉结合,相辅相成。它承认世界的局部可能在一定条件下。过程中,在某一方面(形态,结构,信息,功能,时间,能量等)表现出与整体的相似性,它承认空间维数的变化既可以是离散的也可以是连续的,因而拓展了视野。 分形几何的概念是美籍法国数学家曼德尔布罗特(B.B.Mandelbrot)1975年首先提出的,但最早的工作可追朔到1875年,德国数学家维尔斯特拉斯(K.Weierestrass)构造了处处连续但处处不可微的函数,集合论创始人康托(G.Cantor,德国数学家)构造了有许多奇异性质的三分康托集。1890年,意大利数学家皮亚诺(G.Peano)构造了填充空间的曲线。1904年,瑞典数学家科赫(H.von Koch)设计出类似雪花和岛屿边缘的一类曲线。1915年,波兰数学家谢尔宾斯基(W.Sierpinski)设计了象地毯和海绵一样的几何图形。这些都是为解决分析与拓朴学中的问题而提出的反例,但它们正是分形几何思想的源泉。1910年,德国数学家豪斯道夫(F.Hausdorff)开始了奇异集合性质与量的研究,提出分数维概念。1928年布利干(G.Bouligand)将闵可夫斯基容度应用于非整数维,由此能将螺线作很好的分类。1932年庞特里亚金(L.S.Pontryagin)等引入盒维数。1934年,贝塞考维奇(A.S.Besicovitch)更深刻地提示了豪斯道夫测度的性质和奇异集的分数维,他在豪斯道夫测度及其几何的研究领域中作出了主要贡献,从而产生了豪斯道夫-贝塞考维奇维数概念。以后,这一领域的研究工作没有引起更多人的注意,先驱们的工作只是作为分析与拓扑学教科书中的反例而流传开来。二1960年,曼德尔布罗特在研究棉价变化的长期性态时,发现了价格在大小尺度间的对称性。同年在研究信号的传输误差时,发现误差传输与无误差传输在时间上按康托集排列。在对尼罗河水位和英国海岸线的数学分析中,发现类似规律。他总结自然界中很多现象从标度变换角度表现出的对称性。他将这类集合称作自相似集,其严格定义可由相似映射给出。他认为,欧氏测度不能刻划这类集的本质,转向维数的研究,发现维数是尺度变换下的不变量,主张用维数来刻划这类集合。1975年,曼德尔布罗特用法文出版了分形几何第一部著作《分开:形状、机遇和维数》。1977年该书再次用英文出版。它集中了1975年以前曼德尔布罗特关于分形几何的主要思想,它将分形定义为豪斯道夫维数严格大于其拓朴维数的集合,总结了根据自相似性计算实验维数的方法,由于相似维数只对严格自相似这一小类集有意义,豪斯道夫维数虽然广泛,但在很多情形下难以用计算方法求得,因此分形几何的应用受到局限。1982年,曼德尔布罗特的新著《自然界的分形几何》出版,将分形定义为局部以某种方式与整体相似的集,重新讨论盒维数,它比豪斯道夫维数容易计算,但是稠密可列集盒维数与集所在空间维数相等。为避免这一缺陷,1982年特里科特(C.Tricot)引入填充维数,1983年格拉斯伯格(P.Grassberger)和普罗克西娅(I.Procaccia)提出根据观测记录的时间数据列直接计算动力系统吸引子维数的算法。1985年,曼德尔布罗特提出并研究自然界中广泛存在的自仿射集,它包括自相似集并可通过仿射映射严格定义。1982年德金(F.M.Dekking)研究递归集,这类分形集由迭代过程和嵌入方法生成,范围更广泛,但维数研究非常困难。德金获得维数上界。1989年,钟红柳等人解决了德金猜想,确定了一大类递归集的维数。随着分形理论的发展和维数计算方法的逐步提出与改进,1982年以后,分形理论逐渐在很多领域得到应用并越来越广泛。建立简便盛行的维数计算方法,以满足应用发展的需要,还是一项艰巨的任务。 自然界中的分形,与概率统计、随机过程关系密切。确定性的古典分形集加入随机性,就会产生出随机康托集、随机科契曲线等各种随机分形。1968年,曼德尔布罗特研究布朗运动这一随机过程时,将其推广到与分形有关的分数布朗运动。1974年他又提出了分形渗流模型。1988年,柴叶斯(j.T.Chayes)给出了详细的数学分析。1984年,扎乐(U.Zahle)通过随机删除而得到十分有趣的分形构造,随机分形能更真实地描述和模拟自然现象。三动力系统中的分形集是近年分形几何中最活跃和引人入胜的一个研究领域。动力系统的奇异吸引子通常都是分形集,它们产生于非线性函数的迭代和非线性微分方程中。1963年,气象学家洛伦兹(E.N.Lorenz)在研究流体的对流运动时,发现了以他的名字命名的第一个奇异吸引子,它是一个典型的分形集。1976年,法国天文学家伊侬(M.Henon)考虑标准二次映射迭代系统时获得伊侬吸引子。它具有某种自相似性和分形性质。1986年劳威尔(H.A.Lauwerier)将斯梅尔的马蹄映射变形成劳威尔映射,其迭代下不稳定流形的极限集成为典型的奇异吸引子,它与水平线的截面为康托集。1985年,格雷波基(C.Grebogi)等构造了一个二维迭代函数系统,其吸附界是维尔斯特拉斯函数,并得到盒维数。1985年,迈克多纳(S.M.MacDonald)和格雷波基等得到分形吸附界的三种类型:(!)局部不连通的分形集;(2)局部连通的分形拟圆周;(3)既不局部连能又不是拟圆周。前两者具有拟自相似性。 动力系统中另一类分形集来源于复平面上解析映射的迭代。朱利亚(G.Julia)和法图(P.Fatou)于1918-1919年间开创这一研究。他们发现,解析映射的迭代把复平面划分成两部分,一部分为法图集,另一部分为朱利亚集(J集)。他们在处理这一问题时还没有计算机,完全依赖于他们自身固有的想象力,因此他们的智力成就受到局限。随后50年间,这方面的研究没有得到什么进展。随着可用机算机来做实验,这一研究课题才又获得生机。1980年,曼德尔布罗特用计算机绘出用他名字命名的曼德尔布罗特集(M集)的第一张图来。1982道迪(A.Douady)构造了含参二次复映射fc ,其朱利亚集J(fc)随参数C的变化呈现各种各样的分形图象,著名的有道迪免子,圣马科吸引子等。同年,茹厄勒(D.Ruelle)得到J集与映射系数的关系,解新局面了解析映射击集豪斯道夫维数的计算问题。茄勒特(L.Garnett)得到J(fc)集豪斯道夫维数的数值解法。1983年,韦当(M.Widom)进一步推广了部分结果 。法图1926年就就开始整函数迭代的研究。1981年密休威茨(M.Misiuterwicz)证明指数映射的J集为复平面,解决了法图提出的问题,引起研究者极大兴趣。发现超越整函数的J集与有理映射J的性质差异,1984年德万尼(R.L.Devanney)证明指数映射Eλ的J(Eλ)集是康托束或复平面而J(fc)是康托尘或连通集。 复平面上使J(fc)成为连通集的点C组成M集即曼德尔布罗特集,尤更斯(H.Jurgens)和培特根(H-O.Peitgen)认为,M集的性质过去一直是并且将来继续是数学研究的一个巨大难题。通过将数学理论与计算机图形学实验加以融合,及道迪、扈巴德(H.Hubbard)等人在这方面进行的基础性研究工作,在解决这一难题方面已取得重大进展,使人们加深了对M集的了解。道迪和扈巴德1982年证明M集是连通的和单连通的,人们猜测M集是局部连通的,目前每一张计算机图形都证实了这一猜测,但至今还没有人能给予证明。M是否为弧连通,目前尚不清楚。M集边界的维数也是值得研究的问题之一。 M集除了将J集分成连通与非连通的两类之外,还起着无穷个J集的图解目录表作用,即把M集C点周围的图形放大就是与C点有关的J集的组成部分。但这一发现的数学密性至今仍未确定,谭磊(Tan Lei)1985年证明了在每一个密休威茨点邻近M集与相关的J集之间存在着相似性。尤金斯等在M集的静电位研究中获得与自然形貌相似的分形图象。目前包括尤金斯等在内的很多研究人员都致力于借助计算机活动录象探索M集。其它一些分形集的研究工作正在取得进展。1990年德万尼通过数值实验观察到M集的复杂图形由许多不同周期的周期轨道的稳定区域共同构成。1991年黄永念运用他提出的代数分析法证明了这一事实,研究了M集及其广义情况周期轨道整体解析特性。 巴斯莱(B.M.Barnsley)和德门科(S.Demko)1985年引入迭代函数系统,J集及其其它很多分形集都是某些迭代函数的吸引集,用其它方法产生的分形集也可用迭代函数系逼近。1988年,劳威尔通过数值研究发现毕达哥拉斯树花是一迭代函数系的J集。1985年巴斯莱等研究含参数的函数系迭代动力系统,得到M集D并D与M在连通性上的差异。在一线性映射系迭代下,可以产生著名的分形曲线——双生龙曲线。1986年水谷(M.Mitzutani)等对其动力系统进行了研究。 一般动力系统中的分形集,其豪斯道夫维数dH难以通过理论方法或计算方法求得。对于有迭式构造的分形集,贝德浮德(T.Bedford)等在1986年已给出卓有成效的算法,但对一般非线性映射迭代动力系统产生的分形集,这些结果都难以应用,其豪斯道夫维数dH的结论与算法实际上没有。卡普兰(j.L.Kaplan)和约克(J.A.York) 1979年引入李雅普洛夫维数dL并猜测dL=dH。1981年勒拉皮尔证明dH≤dL。杨(L.S.Young)1982年证明二维情况下dH=dL。艾茄瓦(A.K.Agarwal)等1986年给出例子说明高维情形卡普兰-约克猜测不成立。这一猜测力图从动力学特征推断几何结构,其反问题是由吸引子维数推断混沌力学,这是值得研究的问题。但目前工作甚少且主要限于计算机研究。此外,含参动力系统在混沌临界态或突变处的分形集维数也有待进一步研究。 多重分形(multifractals)是与动力系统奇异吸引子有关的另一类重要分形集,其概念首先由曼德布罗特和伦依(A.Renyi)引入。法默(J.D.Farmer)等在1983年定义了多重分形广义维数。1988年博尔(T.Bohr)等人将拓扑熵引入多重分形的动力学描述与热力学类比。1988年,阿内多(A.Arneodo)等人将子波变换用于多重分形研究。费德(J.Feder)、特尔(T.Tel)等人进行了多重分形子集及标度指数的研究。阿姆特里卡等研究了多重分形的逆问题,提出广义配分函数,给出广义超越维数,对过去的维数进行了修正。李(J.Lee)等发现了多重分形热力学形式上的相变。1990年,伯克(C.Beck)得到广义维数的上下界和极限并研究了多重分形的均匀性量度。曼德布罗特研究了随机多重分形及负分维。1991年科维克(Z.Kov.acs)等引入双变量迭代系统,最大特征值和吉布斯势导出维数、熵、李雅普洛夫指数,提供了对多重分形相变分类的一般方案。对于多重分形相变分类的一般方案。对于多重分形目前虽已提出不少处理方法,但从数学的观点上看,还不够严格,部分问题的数学处理难度也较大。四分形理论真正发展起来才十余年,并且方兴未艾,很多方面的理论还有待进一步研究。值得注意的是,近年分形理论的应用发展远远超过了理论的发展,并且给分形的数学理论提出了更新更高的要求。各种分形维数计算方法和实验方法的建立、改进和完善,使之理论简便,可操作性强,是喁喁分形的科学家们普遍关注的问题。而在理论研究上,维数的理论计算、估计、分形重构(即求一动力系统,使其吸引集为给定分形集)、J集和M集及其推广形式的性质、动力学特征及维数研究将会成为数学工作者们十分活跃的研究领域。多重分形理论的完善、严格以及如何用这些理论来解决实际问题可能会引起科学家们广泛的兴趣,而动力学特征、相变和子波变换可能会成为其中的几个热点。 在哲学方面,人们的兴趣在于自相似性的普适性,M集和J集表现出的简单性与复杂性,复数与实数的统一性,多重分形相变与突变论的关系,自组织临界(SOC)现象的刻画以及分形体系内部的各种矛盾的转化等。可以预言,一场关于分形科学哲学问题的讨论即将在国内展开。
假设你的二值图像变量为“bw”,则数值为“1”的像素个数(设变量“numVal_1”)是:
numVal_1 = sum(sum(bw));
连用两次sum是将图像中数值的行和列分别加在一起,就可求出像素为1的总数。
要求数值为“0”的像素数(设变量“numVal_0”)可以这样:
numVal_0 = length(find(bw==0));
其中“find(bw==0)”输出所有bw为0的像素序号,“length”函数求序号的长度,也就是所求的数值为“0”的像素个数;
比例:
numVal_1/(numVal_1+numVal_0)
或者:
numVal_1/(size(bw,1)*size(bw,2))
其中“size(bw,1)”求bw中的行数,“size(bw,2)”求bw中的列数。
clear
close all
%%%%%%%%%%%%%%%%%%%%%%%%%生成实验数据集
rand('state',0)
sigma_matrix1=eye(2);
sigma_matrix2=50*eye(2);
u1=[0,0];
u2=[30,30];
m1=100;
m2=300;%样本数
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%sm1数据集
Y1=multivrandn(u1,m1,sigma_matrix1);
Y2=multivrandn(u2,m2,sigma_matrix2);
scatter(Y1(:,1),Y1(:,2),'bo')
hold on
scatter(Y2(:,1),Y2(:,2),'r*')
title('SM1数据集')
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%sm2数据集
u11=[0,0];
u22=[5,5];
u33=[10,10];
u44=[15,15];
m=600;
sigma_matrix3=2*eye(2);
Y11=multivrandn(u11,m,sigma_matrix3);
Y22=multivrandn(u22,m,sigma_matrix3);
Y33=multivrandn(u33,m,sigma_matrix3);
Y44=multivrandn(u44,m,sigma_matrix3);
figure(2)
scatter(Y11(:,1),Y11(:,2),'bo')
hold on
scatter(Y22(:,1),Y22(:,2),'r*')
scatter(Y33(:,1),Y33(:,2),'go')
scatter(Y44(:,1),Y44(:,2),'c*')
title('SM2数据集')
end
function Y = multivrandn(u,m,sigma_matrix)
%%生成指定均值和协方差矩阵的高斯数据
n=length(u);
c = chol(sigma_matrix);
X=randn(m,n);
Y=X*c+ones(m,1)*u;
end
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流