Matlab 如何提高标记绘制的速度?
我有一组图像,其中我想绘制一个跟踪+一个随时间变化的2D位置标记(即300个图像,跟踪从位置(1,1)到(300300)->为此,我们假设一条直线对角线 在图像上绘制此跟踪很容易使用plot函数完成。绘制实际跟踪非常耗时。唯一的方法是使用Matlab 如何提高标记绘制的速度?,matlab,plot,trace,imshow,Matlab,Plot,Trace,Imshow,我有一组图像,其中我想绘制一个跟踪+一个随时间变化的2D位置标记(即300个图像,跟踪从位置(1,1)到(300300)->为此,我们假设一条直线对角线 在图像上绘制此跟踪很容易使用plot函数完成。绘制实际跟踪非常耗时。唯一的方法是使用vision.MarkerInserter并在循环中使用步骤函数(暂时或暂时): 是否有任何更快的方法可以在图像中绘制此跟踪,而无需使用step或vision.markerinserter函数?无需使用markerinserter类,只需使用内置的line函数来
vision.MarkerInserter
并在循环中使用步骤
函数(暂时或暂时):
是否有任何更快的方法可以在图像中绘制此跟踪,而无需使用step或
vision.markerinserter
函数?无需使用markerinserter类,只需使用内置的line
函数来绘制标记尝试过,它确实加快了一点速度。请不要更改您的问题i在有人已经回答之后,再问另一个问题。这会使他们的回答和努力无效,并且被主持人明确拒绝,请参阅。您对原始问题有了答案,因此请在第二部分问另一个问题。获取错误未定义的函数或变量“frame\u copia”。
@Poelie您需要制作一些名为“frame_copia”的图片,然后再尝试代码。您应该编辑您的问题以使用示例图片(例如peppers.png
,'greens.jpg'
,'cameran.tif'
等)并相应地提供centroidsFiltered
,以使问题重现。当人们能够按原样运行提供的代码时,他们更愿意研究问题。顺便说一句,当您使用省略号…
,您将停止在同一行上书写(注释除外)然后从下一行继续,这不是您提供的代码的情况(参考代码的第一行)。如果我正确理解了您的问题,则不是绘制任何内容,而是在图像中定位某个对象(=跟踪)非常耗时。我说的对吗?
markerInserter = vision.MarkerInserter('Shape','Circle','BorderColor','Custom','CustomBorderColor','red', ...'Fill',1,'FillColor','Custom','CustomFillColor',[255],'Size',6,'Opacity',0.88);
frame = step(markerInserter, frame_copia,[int32(centroidsFiltered(i,2)) int32(centroidsFiltered(i,1))]);
imshow(frame,'Border', 'tight'); hold on
plot(centroidsFiltered(:,2),centroidsFiltered(:,1),colour,'LineWidth',0.5)