Plot graph from tracked points in 2D pictures
8 ビュー (過去 30 日間)
古いコメントを表示
In some Video i tracked an moving object. I extract the width and height in pixels and set these values as limit for my plot diagram. Now i want to get the tracked points in the diagram.
What I'm currently doing:
% read, track, display points and results in each frame
while hasFrame(videoReader)
frame = readFrame(videoReader);
[points,validity] = tracker(frame);
out = insertMarker(frame,points(validity, :),'+');
writeVideo(v1, out);
videoPlayer(out);
end
close(v1);
release(videoPlayer);
% draw diagram with position of tracked markers as graph
plot(points(:,1),points(:,2));
xlim([0 imageWidth])
ylim([0 imageHeight])
imageWidth and imageHeight are getting extracted from the first frame. The plotting is actually showing something, but the graph is not corresponding to my real tracked points. The Image is a 2D image, like looking from top on a table. So i only need x and y coordinates in pixels of the points and plot them.
What am I doing wrong?
0 件のコメント
採用された回答
Image Analyst
2022 年 12 月 3 日
移動済み: Image Analyst
2022 年 12 月 3 日
Are you sure points is in the form (x,y) and not (row, column) because if it were the plot would be rotated 90 degrees.
Why not display the last frame and plot the points over it?
imshow(frame);
hold on
axis('on', 'image')
plot(points(:,1), points(:,2), 'r.-', 'LineWidth', 2, 'MarkerSize', 30);
2 件のコメント
Image Analyst
2022 年 12 月 3 日
OK, then can you please click the "Accept this answer" link? Thanks in advance. 🙂
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Image Processing and Computer Vision についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!