Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Matlab 如何提高标记绘制的速度?_Matlab_Plot_Trace_Imshow - Fatal编程技术网

Matlab 如何提高标记绘制的速度?

Matlab 如何提高标记绘制的速度?,matlab,plot,trace,imshow,Matlab,Plot,Trace,Imshow,我有一组图像,其中我想绘制一个跟踪+一个随时间变化的2D位置标记(即300个图像,跟踪从位置(1,1)到(300300)->为此,我们假设一条直线对角线 在图像上绘制此跟踪很容易使用plot函数完成。绘制实际跟踪非常耗时。唯一的方法是使用vision.MarkerInserter并在循环中使用步骤函数(暂时或暂时): 是否有任何更快的方法可以在图像中绘制此跟踪,而无需使用step或vision.markerinserter函数?无需使用markerinserter类,只需使用内置的line函数来

我有一组图像,其中我想绘制一个跟踪+一个随时间变化的2D位置标记(即300个图像,跟踪从位置(1,1)到(300300)->为此,我们假设一条直线对角线

在图像上绘制此跟踪很容易使用plot函数完成。绘制实际跟踪非常耗时。唯一的方法是使用
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)