![]() |
如何在Matlab中显示图像上的点?
我有一些像素点可以说p1(1,1)和p2(1,10).......依此类推
我想以任何颜色在图像上显示这些点。这该怎么做? [B]回答:[/B] MATLAB [URL="http://www.mathworks.com/help/techdoc/ref/plot.html"]plot[/URL]文档非常全面。 [URL="http://www.mathworks.com/help/techdoc/ref/linespec.html"]LineSpec[/URL]属性列出了不同样式的线,颜色和点的语法。 如果需要更多选项,请参见[URL="http://www.mathworks.com/help/techdoc/ref/lineseriesproperties.html"]LineSeries属性[/URL] 。您可以指定诸如Marker (样式), MarkerEdgeColor , MarkerFaceColor和MarkerSize 。 如果要偏离rgbcmykw,还可以使用[URL="http://www.mathworks.com/help/techdoc/visualize/f0-18164.html#f0-5919"]RGB三胞胎[/URL]来定义颜色。 例子: 用橙色的五点星形标记绘制一个点(3,4): p=[3,4]; plot(p(1),p(2),'Marker','p','Color',[.88 .48 0],'MarkerSize',20) 用绿色“ o”标记绘制点阵列: p=round(10*rand(2,10)); plot(p(1,:),p(2,:),'go') [B]编辑:[/B]如果您已将所有点存储为p1=[x1,y1] , p2=[x2,y2]等,请尝试首先将它们重新组织为2xN矩阵。重新生成点,或者如果您已经将它们成对,请使用 p=[p1;p2;p3]'; %# the [;] notation vertically concatenates into Nx2, %# and the ' transposes to a 2xN plot(p(1,:),p(2,:),'go') 或者,如果您将成对的点存储成对,比如说最多p1000左右,则[I]可以[/I]使用[URL="http://www.mathworks.com/help/techdoc/ref/eval.html"]eval[/URL] ( [I]cringe[/I] )。 p=[]; %# initialize p for n=1:nPoints %# if you've got 1000 points, nPairs should be 1000 eval(['p(:,n)=p',num2str(n)],''); %#executes p(:,n)=pn' for each nPoint end [url=https://stackoverflow.com/questions/3842195]更多&回答...[/url] |
所有时间均为北京时间。现在的时间是 23:31。 |
Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.