2016-04-04 6 views
-1

Ich verwende peopleDetect Funktion, um menschliche Objekt von Video zu erkennen. Ich habe die Punktzahl von der peopleDetect Methode, aber jetzt brauche ich die Zeit, in der jeder Frame von peopleDetect Funktion verarbeitet wurde, weil ich Zeit vs. Punktzahl plotten muss. Der folgende Code gibt die Punktzahl für jeden Rahmen:Zeitstempel der Frame-Verarbeitung mit peopleDetect

frameLeft = readerLeft.step(); 

% Detect people. 
[bboxes,scores] = step(peopleDetector, frameLeft); 

if ~isempty(bboxes) 
    % Find the centroids of detected people. 
    centroids = [round(bboxes(:, 1) + bboxes(:, 3)/2), ... 
     round(bboxes(:, 2) + bboxes(:, 4)/2)]; 

    dispFrame = insertObjectAnnotation(frameLeft, 'rectangle' ,bboxes,scores); 
else 
    dispFrame = frameLeft; 
end 

% Display the frame. 
step(player, dispFrame); 

Frage: wie kann ich es bearbeiten Zeit bei jedem Schritt auch zu bekommen?

+1

@mikkola - Das war sehr nett von Ihnen, um den Beitrag von MATLAB Central in diesem Beitrag für uns zu lesen ... aber Sie hätten nicht müssen. Das OP sagt uns, dass wir zu einer externen Ressource gehen sollen, um herauszufinden, was das Problem ist ... ist nur faul. Das OP hat keine Anstrengung gezeigt, also sollten Sie diese Faulheit nicht beheben müssen. Es sollte abgestimmt werden, um IMHO zu schließen. – rayryeng

Antwort

0

Sofort nachdem Sie Personen gefunden haben, speichern Sie einfach die Zeit mit dem Befehl now.

Ich nehme an, Sie haben festgestellt, Menschen an:

% Detect people. 
[bboxes,scores] = step(peopleDetector, frameLeft); 

if ~isempty(bboxes) 
... 

So fügen Sie dann nur die Zeit als:

% Detect people. 
[bboxes,scores] = step(peopleDetector, frameLeft); 

if ~isempty(bboxes) 
timeStamps(idx) = now; 
idx = idx + 1; 
... 

Sie initiieren die timeStamps Array am Anfang, es zu beschleunigen. Auch natürlich initiieren idx = 1; am Anfang

+0

Es gibt die aktuelle Zeit des Systems ich denke, ich brauche die Zeit des Videos, als ob es 25 Frames verarbeitet werden von einem Video brauche ich Zeit, bei der jeder Frame in Video verarbeitet wird. –

+0

Oh, ich verstehe. Gibt es für jedes Bild einen Zeitstempel? Wenn ja, kannst du nicht einfach die Zeit des Frames speichern? Oder wenn Sie die Startzeit des Videos und die Bildrate kennen, können Sie den Zeitstempel für jedes Bild berechnen. – JCKaz

+0

Das ist, was ich wissen muss, wenn Zeitstempel für jeden Rahmen verfügbar ist. Ich habe videoFrameRate, d.h. 25. –