Effacer les filtres
Effacer les filtres

how to draw lines using given points in a video?

9 vues (au cours des 30 derniers jours)
vimal gayan
vimal gayan le 17 Mai 2019
Commenté : vimal gayan le 24 Mai 2019
First,I give some points to starting posistion of the video,I need to draw lines through that points and get angles using x,y values,
Currently i able add points and get x,y values of those points while video playing.
videoFileReader = vision.VideoFileReader('ex.mp4');
videoPlayer = vision.VideoPlayer('Position',[1,10,1280,720]);
objectFrame = videoFileReader();
objectRegion = [264,122,93,93];
figure;
imshow(objectFrame);
[shoulder_X,shoulder_Y]= ginput(1);
[elbow_x,elbow_y]= ginput(1);
[wrist_x,wrist_y]= ginput(1);
pos = [shoulder_X,shoulder_Y;elbow_x,elbow_y;wrist_x,wrist_y];
color = {'red','green','magenta'};
start_x = shoulder_X;
start_y=shoulder_Y;
disp(shoulder_X +" - "+shoulder_Y);
% imshow(pointImage);
points = detectMinEigenFeatures(rgb2gray(objectFrame));
pointImage1 = insertMarker(objectFrame,pos,'+','Color',color,'size',10);
plot([shoulder_X,shoulder_Y], [elbow_x,elbow_y]);
plot([wrist_x,wrist_y], [elbow_x,elbow_y]);
figure;
imshow(pointImage1);
title('Detected interest points');
tracker = vision.PointTracker('MaxBidirectionalError',1);
initialize(tracker,pos,objectFrame);
while ~isDone(videoFileReader)
frame = videoFileReader();
[points,validity] = tracker(frame);
out = insertMarker(frame,points(validity, :),'+');
videoPlayer(out);
disp(points);
end
Capturesd.PNG
As shown in above image,
Black circle: current status of my code,and these points move when video playing,
Red Circle:I need to improve red circle to this level.and these lines should move when video playing.
I try to draw lines using plot function but its not work.
plot([shoulder_X,shoulder_Y], [elbow_x,elbow_y]);
plot([wrist_x,wrist_y], [elbow_x,elbow_y]);
  2 commentaires
darova
darova le 17 Mai 2019
try
plot([shoulder_X elbow_x wrist_x shoulder_X], ...
[shoulder_Y elbow_y wrist_y shoulder_Y])
vimal gayan
vimal gayan le 17 Mai 2019
not working :(

Connectez-vous pour commenter.

Réponse acceptée

Mark Sherstan
Mark Sherstan le 17 Mai 2019
Use insertShape(). Cool project!
  10 commentaires
vimal gayan
vimal gayan le 24 Mai 2019
Modifié(e) : vimal gayan le 24 Mai 2019
got it,It works now as i want.Thanks for the continues help.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Tracking and Motion Estimation dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by