Matlab 了解模式识别中绘制MED边界的最小、最大、网格网格函数
此代码是正确的,但我不理解使用Matlab 了解模式识别中绘制MED边界的最小、最大、网格网格函数,matlab,pattern-recognition,Matlab,Pattern Recognition,此代码是正确的,但我不理解使用min、max和meshgrid函数与绘制两类MED轮廓的关系。 我希望我的问题很清楚。。。。。。谢谢 %% Computing the classifiers step = 0.2; % The lower this is the smoother the contours. x = min([samples_a(:,1);samples_b(:,1)])-1:step:max([samples_a(:,1);samples_b(:,1)])+1; y = min
min
、max
和meshgrid
函数与绘制两类MED轮廓的关系。
我希望我的问题很清楚。。。。。。谢谢
%% Computing the classifiers
step = 0.2; % The lower this is the smoother the contours.
x = min([samples_a(:,1);samples_b(:,1)])-1:step:max([samples_a(:,1);samples_b(:,1)])+1;
y = min([samples_a(:,2);samples_b(:,2)])-1:step:max([samples_a(:,2);samples_b(:,2)])+1;
[X1, Y1] = meshgrid(x,y);
x = min([samples_c(:,1);samples_d(:,1);samples_e(:,1)])-1:step:max([samples_c(:,1);samples_d(:,1);samples_e(:,1)])+1;
y = min([samples_c(:,2);samples_d(:,2);samples_e(:,2)])-1:step:max([samples_c(:,2);samples_d(:,2);samples_e(:,2)])+1;
[X2, Y2] = meshgrid(x,y);
% Plotting the MED boundaries
contour(X1,Y1,MED1, [0, 0], 'Color', 'magenta', 'LineWidth', LINE_WIDTH);
在此代码中,
x
和y
是从samples\u a
和samples\u b
中的最低x和y坐标到最高坐标的向量<代码>[样本a(:,1);样本b(:,1)]包含两组中的所有x坐标,min
和max
取其最小值和最大值。据推测,这些对应于MED1
矩阵中样本的位置。因此,MED1(i,j)
处的值具有坐标x(j)
和y(i)
你现在可以做了
contour(x,y,MED1)
contour(X1,Y1,MED1)
代码使用meshgrid
将这些向量转换为完整矩阵X1
和Y1
。这两个矩阵的大小应与矩阵MED1
相同,并通过复制向量x
和y
来定义。现在MED1(i,j)
处的值具有坐标X1(i,j)
和Y1(i,j)
你现在可以做了
contour(x,y,MED1)
contour(X1,Y1,MED1)
和你以前一样。不需要调用
meshgrid
。您不了解的是什么?你知道这些函数都做什么吗?您可以在MATLAB中键入help max
或help meshgrid
,以阅读函数的文档。感谢帮助Cris。。。。。但我的意思是,使用min,max和meshgrid的关系是什么?即使我阅读了帮助函数的文档,我也没有想到。