MATLAB特征提取代码(一)

合集下载

sift算法matlab复杂代码

sift算法matlab复杂代码

一、介绍SIFT算法SIFT(Scale-Invariant Feature Transform)算法是一种用于图像处理和计算机视觉领域的特征提取算法,由David Lowe在1999年提出。

SIFT算法具有旋转、尺度、光照等方面的不变性,能够对图像进行稳健的特征点提取,被广泛应用于物体识别、图像匹配、图像拼接、三维重建等领域。

二、SIFT算法原理SIFT算法的主要原理包括尺度空间极值点检测、关键点定位、关键点方向确定、关键点描述等步骤。

其中,尺度空间极值点检测通过高斯差分金字塔来检测图像中的极值点,关键点定位则利用DoG响应函数进行关键点细化,关键点方向确定和关键点描述部分则通过梯度方向直方图和关键点周围区域的梯度幅度信息来完成。

三、使用Matlab实现SIFT算法在Matlab中实现SIFT算法,需要对SIFT算法的每个步骤进行详细的编程和调试。

需要编写代码进行图像的高斯金字塔和高斯差分金字塔的构建,计算尺度空间极值点,并进行关键点定位。

需要实现关键点的方向确定和描述子生成的算法。

将所有步骤整合在一起,完成SIFT算法的整体实现。

四、SIFT算法复杂代码的编写SIFT算法涉及到的步骤较多,需要编写复杂的代码来实现。

在编写SIFT算法的Matlab代码时,需要考虑到算法的高效性、可扩展性和稳定性。

具体来说,需要注意以下几点:1. 高斯差分金字塔和高斯金字塔的构建:在构建高斯差分金字塔时,需要编写代码实现图像的高斯滤波和图像的降采样操作,以得到不同尺度空间的图像。

还需要实现高斯差分金字塔的构建,以检测图像中的极值点。

2. 尺度空间极值点检测:在检测图像中的极值点时,需要编写代码实现对高斯差分金字塔的极值点检测算法,以找到图像中的潜在关键点。

3. 关键点的定位:关键点定位阶段需要编写代码实现对尺度空间极值点的精确定位,消除低对比度点和边缘响应点,并进行关键点的精细化操作。

4. 关键点的方向确定和描述子生成:在这一步骤中,需要编写代码实现对关键点周围区域的梯度幅度信息的计算和关键点方向的确定,以及生成关键点的描述子。

matlab 灰度共生矩阵特征提取

matlab 灰度共生矩阵特征提取

一、灰度共生矩阵概述灰度共生矩阵(Gray Level Co-occurrence Matrix,GLCM)是一种用于描述图像局部纹理特征的统计方法,它可以通过对图像进行灰度级别的统计分析,提取出图像纹理信息,被广泛应用于图像处理、模式识别和计算机视觉领域。

二、灰度共生矩阵原理在一幅图像中,灰度共生矩阵是通过计算每个像素与其在一定距离和方向内的相邻像素之间的灰度值关系而得到的。

假设图像灰度级别为0到N-1,定义距离d和角度θ,对于每个灰度值i和j,统计出现在给定方向和距离内的i和j同时出现的次数,构成灰度共生矩阵。

三、灰度共生矩阵特征提取1. 对比度(Contrast)对比度是描述图像纹理粗细程度的特征之一,可以通过灰度共生矩阵计算得到。

公式如下:\[Contrast = \sum_{i=0}^{N-1}\sum_{j=0}^{N-1}(i-j)^2P_{ij}\]其中,\(P_{ij}\)表示灰度共生矩阵的元素值。

2. 相关性(Correlation)相关性是描述图像灰度分布状况的特征,可以通过灰度共生矩阵计算得到。

公式如下:\[Correlation = \sum_{i=0}^{N-1}\sum_{j=0}^{N-1}\frac{(i-\mu)(j-\mu)P_{ij}}{\sigma^2}\]其中,\(\mu\)表示灰度共生矩阵的均值,\(\sigma^2\)表示灰度共生矩阵的方差。

3. 能量(Energy)能量是描述图像纹理统计规律的特征,可以通过灰度共生矩阵计算得到。

公式如下:\[Energy = \sum_{i=0}^{N-1}\sum_{j=0}^{N-1}P_{ij}^2\]4. 同质性(Homogeneity)同质性是描述图像灰度分布均匀程度的特征,可以通过灰度共生矩阵计算得到。

公式如下:\[Homogeneity = \sum_{i=0}^{N-1}\sum_{j=0}^{N-1}\frac{P_{ij}}{1+(i-j)^2}\]四、 matlab 实现灰度共生矩阵特征提取在 matlab 中,可以使用“graatrix”函数计算灰度共生矩阵,并通过“graycoprops”函数提取灰度共生矩阵的特征。

sift matlab 代码

sift matlab 代码

sift matlab 代码Sift Matlab 代码Sift算法(Scale-invariant feature transform)是一种用于图像处理和计算机视觉中的特征提取算法。

Matlab是一种常用的编程语言和软件工具,用于实现各种算法和程序。

本文将介绍如何使用Matlab 编写Sift算法的代码,并对其原理和实现进行详细说明。

一、Sift算法原理Sift算法是一种基于局部特征的图像匹配算法,其主要思想是在图像中寻找关键点(keypoints),并对这些关键点进行描述,以便在不同图像之间进行匹配。

Sift算法具有尺度不变性和旋转不变性,能够稳定地提取图像的特征。

Sift算法的主要步骤包括尺度空间极值检测、关键点定位、关键点描述和关键点匹配等。

在尺度空间极值检测中,算法会在图像的不同尺度下检测局部极值点,这些点被认为是关键点的候选。

然后,通过对这些候选点进行精确定位和剔除不稳定点,最终得到真正的关键点。

接着,算法会对每个关键点周围的图像区域进行描述,生成描述子向量。

最后,通过比较不同图像的关键点描述子,实现图像匹配。

二、Matlab实现Sift算法在Matlab中实现Sift算法,可以使用现成的开源库或者自己编写代码。

一种常见的做法是使用vlfeat工具包,该工具包提供了Sift算法的Matlab接口,并包含了各种图像处理和特征提取的函数。

需要安装vlfeat工具包,并将其添加到Matlab的路径中。

然后,可以使用vl_sift函数来提取图像的Sift特征。

该函数会返回关键点的位置、尺度、方向以及描述子等信息,可以根据需要进行进一步处理和分析。

除了使用vlfeat工具包,也可以根据Sift算法的原理,编写自己的Sift代码。

在Matlab中,可以通过图像梯度计算、高斯金字塔构建和关键点描述等步骤,实现Sift算法的各个功能模块。

三、总结本文介绍了Sift算法的原理和在Matlab中的实现方法。

matlab特征提取代码(Matlabfeatureextractioncode)

matlab特征提取代码(Matlabfeatureextractioncode)

matlab特征提取代码(Matlab feature extraction code)我= 1:26F = strcat(想:\ bishe \”,num2str(我));图像= strcat(F,“.jpg”);PS = imread(图像);PS = imresize(PS,[ 300300 ],'bilinear’);%归一化大小PS = rgb2gray(PS);[ M ],N =大小(PS);%测量图像尺寸参数GP =零(1256);%预创建存放灰度出现概率的向量K = 0:255GP(K + 1)=长度(找到(PS = = k))/(m×n);%计算每级灰度出现的概率,将其存入GP中相应位置结束%直方图均衡化S1 =零(1256);我为1:256J = 1:我S1(我)= GP(J)+ S1(我);%计算SK结束结束S2 =圆((S1×256)+ 0.5);%将SK归到相近级的灰度%图像均衡化F=PS;我= 0:255F(找到(PS = =我))= S2(i + 1);%将各个像素归一化后的灰度值赋给这个像素结束图,imshow(f);%边缘检测F =边缘(F,'canny ',0.25);imshow(f);%二值法锐化图像F =双(F);【X,Y ] =梯度(F);G = SQRT(X * X + Y Y);我发现(G>=0.5);G(我)= 256;J =找到(g<0.5);G(j)= 0;imshow(G);标题(“二值法锐化图像”);%中值滤波G = medfilt2(G);G =抖动(G);imshow(G);%提取面积,矩形度,圆形度,拉伸度特征% G = im2bw(G);【X,Y ] =大小(G);BW = bwperim(G,8);%检测边缘跟踪,用于计算周长检测垂直方向连读的周长像素点% %P1 = 0;P2 = 0;纽约= 0;%记录垂直方向连续周长像素点的个数我= 1 xJ = 1:Y如果(BW(i,j)> 0)P2 = J;如果((p2-p1)= = 1)%判断是否为垂直方向连续的周长像素点纽约纽约+ 1;结束P1 = P2;结束结束结束%检测水平方向连读的周长像素点P1 = 0;P2 = 0;NX = 0;%记录水平方向连续周长像素点的个数J = 1:Y我= 1 x如果(BW(i,j)> 0)P2 =我;如果((p2-p1)= = 1)%判断是否为水平方向连续的周长像素点NX = NX + 1;结束P1 = P2;结束结束结束Sn =金额(金额(BW));%计算周长像素点的总数ND = Sn NX纽约;%计算奇数码的链码数目H=max (sum (g));% calculated the target heightW=max (sum (G')); g% by image matrix transpose, calculating widthL=sqrt (2) *Nd+Nx+Ny%; calculate the perimeter%==== form eigenvalue calculation ===%A=bwarea (g);% calculated the target areaR=A/ (H*W);% rectangular degreeE=min (H, W) /max (H, W);% calculated lengthTemp1=[A, R, E];% extraction of invariant feature[M, N]=size (g);[x, y]=meshgrid (1:N, 1:M);X=x (:);Y=y (:);G=g (:);M.m00=sum (g);If (m.m00==0)M.m00=eps;EndM.m10=sum (x.*g);M.m01=sum (y.*g);M.m11=sum (x.*y.*g); M.m20=sum (x.^2.*g); M.m02=sum (y.^2.*g); M.m30=sum (x.^3.*g); M.m03=sum (y.^3.*g); M.m12=sum (x.*y.^2.*g); M.m21=sum (x.^2.*y.*g); Xbar=m.m10/m.m00;Ybar=m.m01/m.m00;E.eta11= (m.m11-ybar*m.m10) /m.m00^2;E.eta20= (m.m20-xbar*m.m10) /m.m00^2;E.eta02= (m.m02-ybar*m.m01) /m.m00^2;E.eta30= (m.m30-3*xbar*m.m20+2*xbar^2*m.m10) /m.m00^2.5;E.eta03= (m.m03-3*ybar*m.m02+2*ybar^2*m.m01) /m.m00^2.5;E.eta21= (m.m21-2*xbar*m.m11-ybar*m.m20+2*xbar^2*m.m01) /m.m00^2.5;E.eta12= (m.m12-2*ybar*m.m11-xbar*m.m02+2*ybar^2*m.m10) /m.m00^2.5;Phi (1) =e.eta20+e.eta02;Phi (2) = (e.eta20-e.eta02) ^2+4*e.eta11^2;Phi (3) = (e.eta30-3*e.eta12) ^2+ (3*e.eta21-e.eta03) ^2;Phi (4) = (e.eta30+e.eta12) ^2+ (e.eta21+e.eta03) ^2;Phi (5) = (e.eta30-3*e.eta12) * (e.eta30+e.eta12) * ((e.eta30+e.eta12) ^2-3* (e.eta21+e.eta03) ^2+(3*e.eta21-e.eta03) * (e.eta21+e.eta03) * (3*(e.eta30+e.eta12) ^2- (e.eta21+e.eta03) ^2));Phi (6) = (e.eta20-e.eta02) * ((e.eta30+e.eta12) ^2-(e.eta21+e.eta03) ^2) +4*e.eta11* (e.eta30+e.eta12) *(e.eta21+e.eta03);Phi (7) = (3*e.eta21-e.eta03) * (e.eta30+e.eta12) *((e.eta30+e.eta12) ^2-3* (e.eta21+e.eta03) ^2) +(3*e.eta12-e.eta30) * (e.eta21+e.eta03) * (3*(e.eta30+e.eta12) ^2- (e.eta21+e.eta03) ^2);Temp2 = ABS (log (PHI));% contains seven characteristic values Temp=[temp1, temp2]End。

特征选择、特征提取MATLAB算法实现(模式识别)

特征选择、特征提取MATLAB算法实现(模式识别)

特征选择、特征提取MATLAB算法实现(模式识别)6特征选择6.1问题对“threethreelarge.m”数据,采⽤任意⼀种特征选择算法,选择2个特征6.2思路采⽤简单特征选择法(simple feature selection approach),⾸先计算每⼀个特征的分类能⼒值,再选择出其中最⼤分类能⼒的l个特征。

6.3结果eigs=8.92340.00000.0767SelectedFeature=13也就是说,选取x和z坐标作为特征。

6.4代码%特征选择代码,见FSthrthrlrg.m⽂件m1=[0,0,0];m2=[0,0,0];m3=[0,0,0];m=[0,0,0];for i=1:200m1(1)=m1(1)+(x1(i,1)-m1(1))/i;m1(2)=m1(2)+(x1(i,2)-m1(2))/i;m1(3)=m1(3)+(x1(i,3)-m1(3))/i;end;for i=1:190m2(1)=m2(1)+(x2(i,1)-m2(1))/i;m2(2)=m2(2)+(x2(i,2)-m2(2))/i;m2(3)=m2(3)+(x2(i,3)-m2(3))/i;end;for i=1:210m3(1)=m3(1)+(x3(i,1)-m3(1))/i;m3(2)=m3(2)+(x3(i,2)-m3(2))/i;m3(3)=m3(3)+(x3(i,3)-m3(3))/i;end;m(1)=(m1(1)+m2(1)+m3(1))/3;m(2)=(m1(2)+m2(2)+m3(2))/3;m(3)=(m1(3)+m2(3)+m3(3))/3;sw1=zeros(3,3);sw2=zeros(3,3);sw3=zeros(3,3);sw=zeros(3,3);sb=zeros(3,3);for i=1:200sw1=sw1+([x1(i,1),x1(i,2),x1(i,3)]-m1)'*([x1(i,1),x1(i,2),x1(i,3)]-m1);end;for i=1:190sw2=sw2+([x2(i,1),x2(i,2),x2(i,3)]-m2)'*([x2(i,1),x2(i,2),x2(i,3)]-m2);end;for i=1:210sw3=sw3+([x3(i,1),x3(i,2),x3(i,3)]-m3)'*([x3(i,1),x3(i,2),x3(i,3)]-m3);end;N1=200;N2=190;N3=210;N=N1+N2+N3;p1=N1/N;p2=N2/N;p3=N3/N;sw1=sw1/N1;sw2=sw2/N2;sw3=sw3/N3;sw=p1*sw1+p2*sw2+p3*sw3;sb=p1*(m1-m)'*(m1-m)+p2*(m2-m)'*(m2-m)+p3*(m3-m)'*(m3-m);s=inv(sw)*sb;j1=trace(s)eigs=eig(s)';eigsIndex=[1,2,3];%冒泡法排序,注意的是特征值顺序变化的同时要与相对应的下标同步for i=1:3for j=i:3if(eigs(i)eigstemp=eigs(i);eigs(i)=eigs(j);eigs(j)=eigstemp;eigsIndextemp=eigsIndex(i);eigsIndex(i)=eigsIndex(j);eigsIndex(j)=eigsIndextemp;end;end;end;%降序排列后的特征值,直接选取前L个特征SelectedFeature=[eigsIndex(1),eigsIndex(2)]%FSthrthrlrg.m程序结束6.5讨论从实验结果中我们可以看到y特征的分类能⼒最⼩,这⼀点可以从实验数据中得到验证——三类数据在y⽅向的分布⼏乎是相同的(见下图)。

matlab4个特征提取程序

matlab4个特征提取程序
T10=T10+(i-1-T6)*(j-1-T7)*H_basic(i,j);
end
end
%计算灰度熵 T11
T11=0;
for j=1:gray
T11=T11+TT2(1,j)*log10(TT2(1,j)+eps);
end
T11=-T11;
%计算梯度熵 T12
% plot(x,OUT,'-');
% hold on;
% else
% plot(x,OUT,'-*r');
% hold on;
% end
然后我>> IN=imread(coins.png);
>> OUT=GrayGradinet(IN)
OUT =
OUT(1,6)=T6;
OUT(1,7)=T7;
OUT(1,8)=T8;
OUT(1,9)=T9;
OUT(1,10)=T10;
OUT(1,11)=T11;
OUT(1,12)=T12;
OUT(1,13)=T13;
OUT(1,14)=T14;
OUT(1,15)=T15;
% if num>2
T12=0;
for j=1:new_gray
T12=T12+TT3(1,j)*log10(TT3(1,j)+eps);
end
T12=-T12;
%计算混合熵 T13
T13=0;
for i=1:gray
for j=1:new_gray
T13=T13+H_basic(i,j)*log10(H_basic(i,j)+eps);

matlab灰度共生矩阵纹理特征提取

matlab灰度共生矩阵纹理特征提取

matlab灰度共生矩阵纹理特征提取灰度共生矩阵(Gray-Level Co-occurrence Matrix,GLCM)是一种用于描述图像纹理特征的方法。

它通过统计图像中像素灰度值在一定距离和方向上出现的概率,得到一个矩阵,从而提取出图像的纹理特征。

在matlab中,可以使用graycomatrix函数来生成灰度共生矩阵。

该函数需要输入图像矩阵和距离、方向等参数,输出一个灰度共生矩阵。

例如,下面的代码生成了一个距离为1、方向为0度的灰度共生矩阵:```img = imread('lena.png');glcm = graycomatrix(img,'Offset',[0 1],'Symmetric',true);```生成的灰度共生矩阵是一个对称矩阵,每个元素表示在给定距离和方向上,两个像素灰度值出现的概率。

可以使用matlab中的graycoprops函数来计算灰度共生矩阵的纹理特征,例如对比度、能量、熵等。

下面的代码计算了灰度共生矩阵的对比度和能量:```contrast = graycoprops(glcm,'Contrast');energy = graycoprops(glcm,'Energy');```对比度表示灰度共生矩阵中不同灰度值之间的差异程度,对比度越大表示图像的纹理越明显。

能量表示灰度共生矩阵中每个元素的平方和,能量越大表示图像的纹理越均匀。

通过计算灰度共生矩阵的纹理特征,可以对图像进行纹理分析和分类。

灰度共生矩阵是一种有效的图像纹理特征提取方法,可以用于图像分类、目标检测等应用。

在matlab中,可以使用graycomatrix和graycoprops函数来生成和计算灰度共生矩阵的纹理特征。

hog特征提取matlab代码

hog特征提取matlab代码

hog特征提取matlab代码HOG(HistogramofOrientedGradients)特征提取是一种经典的图像特征提取方法,它在计算机视觉领域中被广泛应用于目标检测、行人识别等方面。

以下是HOG特征提取的MATLAB代码示例:1. 定义cellSize和blockSize:cellSize = [8 8]; % 每个细胞的尺寸blockSize = [2 2]; % 每个块的尺寸2. 加载图像并转为灰度图:img = imread('test.jpg');grayImg = rgb2gray(img);3. 计算梯度和方向:[Gmag, Gdir] = imgradient(grayImg);4. 将方向转为角度:angles = atan2d(Gdir(:,:,1), Gdir(:,:,2));angles(angles < 0) = angles(angles < 0) + 180;5. 计算每个细胞的直方图:[numRows, numCols] = size(grayImg);numCells = floor([numRows numCols]./cellSize);histograms = zeros(numCells(1), numCells(2), 9);for i = 1:numCells(1)for j = 1:numCells(2)cellAngles = angles((i-1)*cellSize(1)+1:i*cellSize(1),(j-1)*cellSize(2)+1:j*cellSize(2));cellGmag = Gmag((i-1)*cellSize(1)+1:i*cellSize(1),(j-1)*cellSize(2)+1:j*cellSize(2));histogram = zeros(1,9);for k = 1:numel(cellAngles)angle = cellAngles(k);mag = cellGmag(k);lowBin = floor(angle/20) + 1;highBin = mod(lowBin, 9) + 1;lowWeight = (highBin*20 - angle)/20;highWeight = 1 - lowWeight;histogram(lowBin) = histogram(lowBin) + mag*lowWeight; histogram(highBin) = histogram(highBin) + mag*highWeight; endhistograms(i,j,:) = histogram;endend6. 对每个块的直方图进行归一化:numBlocks = numCells - blockSize + 1;features = [];for i = 1:numBlocks(1)for j = 1:numBlocks(2)blockHistograms = histograms(i:i+blockSize(1)-1, j:j+blockSize(2)-1, :);blockHistograms = blockHistograms(:);blockHistograms =blockHistograms./norm(blockHistograms);features = [features; blockHistograms];endend7. 最终得到的features即为HOG特征向量。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

MATLAB特征提取代码
for i=1:26
f=strcat('D:\bishe\',num2str(i)); image=strcat(f,'.jpg'); PS=imread(image);
PS=imresize(PS,[300,300],'bilinear');%归一化大小 PS=rgb2gray(PS);
[m,n]=size(PS); %测量图像尺寸参数
GP=zeros(1,256); %预创建存放灰度出现概率的向量 for k=0:255
GP(k+1)=length(find(PS==k))/(m*n); %计算每级灰度出现的概率,将其存入GP中相应位置 end
%直方图均衡化
S1=zeros(1,256); for i=1:256 for j=1:i
S1(i)=GP(j)+S1(i); %计算Sk end end
S2=round((S1*256)+0.5); %将Sk归到相近级的灰度 %图像均衡化 f=PS;
for i=0:255
f(find(PS==i))=S2(i+1); %将各个像素归一化后的灰度值赋给这个像素 end
figure,imshow(f); %边缘检测
f=edge(f,'canny',0.25); imshow(f);
%二值法锐化图像 f=double(f);
[x,y]=gradient(f); g=sqrt(x.*x+y.*y); i=find(g>=0.5); g(i)=256; j=find(g<0.5); g(j)=0;
imshow(g);
title('二值法锐化图像'); %中值滤波 g=medfilt2(g); g=dither(g); imshow(g);
%提取面积,矩形度,圆形度,拉伸度特征 %g=im2bw(g); [x,y]=size(g);
BW = bwperim(g,8); % 检测边缘跟踪,用于计算周长 %检测垂直方向连读的周长像素点% P1=0; P2=0;
Ny=0; % 记录垂直方向连续周长像素点的个数 for i=1:x for j=1:y
if (BW(i,j)>0) P2=j;
if ((P2-P1)==1) % 判断是否为垂直方向连续的周长像素点 Ny=Ny+1; end P1=P2; end end end
%检测水平方向连读的周长像素点 P1=0; P2=0;
Nx=0; % 记录水平方向连续周长像素点的个数 for j=1:y for i=1:x
if (BW(i,j)>0) P2=i;
if ((P2-P1)==1) % 判断是否为水平方向连续的周长像素点 Nx=Nx+1; end P1=P2; end end end
SN=sum(sum(BW)); % 计算周长像素点的总数 Nd=SN-Nx-Ny; % 计算奇数码的链码数目 H=max(sum(g)); % 计算目标的高度
W=max(sum(g')); % 图象g经矩阵转置后,计算宽度 L=sqrt(2)*Nd+Nx+Ny; % 计算周长 %====形态特征值计算===%
A=bwarea(g); % 计算目标的面积 R=A/(H*W); % 计算矩形度
E=min(H,W)/max(H,W); % 计算伸长度 temp1=[A,R,E];
%提取不变矩特征 [M,N]=size(g);
[x,y]=meshgrid(1:N,1:M); x=x(:); y=y(:); g=g(:);
m.m00=sum(g); if(m.m00==0) m.m00=eps; end
m.m10=sum(x.*g); m.m01=sum(y.*g); m.m11=sum(x.*y.*g); m.m20=sum(x.^2.*g); m.m0 2=sum(y.^2.*g); m.m30=sum(x.^3.*g); m.m03=sum(y.^3.*g); m.m12=sum(x.*y.^2.*g); m. m21=sum(x.^2.*y.*g); xbar=m.m10/m.m00; ybar=m.m01/m.m00;
e.eta11=(m.m11-ybar*m.m10)/m.m00^2; e.eta20=(m.m20-xbar*m.m10)/m.m00^2; e.eta0 2=(m.m02-ybar*m.m01)/m.m00^2;
e.eta30=(m.m30-3*xbar*m.m20+2*xbar^2*m.m10)/m.m00^2.5; e.eta03=(m.m03-3*ybar*m. m02+2*ybar^2*m.m01)/m.m00^2.5;
e.eta21=(m.m21-2*xbar*m.m11-ybar*m.m20+2*xbar^2*m.m01)/m.m00^2.5; e.eta12=(m.m 12-2*ybar*m.m11-xbar*m.m02+2*ybar^2*m.m10)/m.m00^2.5; phi(1)=e.eta20+e.eta02;
phi(2)=(e.eta20-e.eta02)^2+4*e.eta11^2;
phi(3)=(e.eta30-3*e.eta12)^2+(3*e.eta21-e.eta03)^2; phi(4)=(e.eta30+e.eta12)^2+(e.eta21+e. eta03)^2;
phi(5)=(e.eta30-3*e.eta12)*(e.eta30+e.eta12)*((e.eta30+e.eta12)^2-3*(e.eta21+e.eta03)^2+(3 *e.eta21-e.eta03)* (e.eta21+e.eta03)*(3*(e.eta30+e.eta12)^2-(e.eta21+e.eta03)^2));
phi(6)=(e.eta20-e.eta02)*((e.eta30+e.eta12)^2-(e.eta21+e.eta03)^2)+4*e.eta11*(e.eta30+e.eta 12)*(e.eta21+e.eta03);
phi(7)=(3*e.eta21-e.eta03)*(e.eta30+e.eta12)*((e.eta30+e.eta12)^2-3*(e.eta21+e.eta03)^2)+(3 *e.eta12-e.eta30)* (e.eta21+e.eta03)*(3*(e.eta30+e.eta12)^2-(e.eta21+e.eta03)^2);
temp2 = abs(log(phi));%包含七个特征值 temp=[temp1,temp2] end
/home.php?mod=space&uid=343070&do=blog&id=271858。

相关文档
最新文档