changing dataset in SORT (simple online real-time tracking) example in Matlab

3 views (last 30 days)
Hello. I want to use my dataset as input to the SORT example ( https://www.mathworks.com/help/fusion/ug/implement-simple-online-and-realtime-tracking.html ) in Matlab. I used the yolo4 object detection algorithm and set the input for the SORT algorithm. I attached my input data to the SORT example, which is in objectDetection format as it should be. when I run the SORT algorithm with my dataset, this error happens:
error using ()
changing the data type on input 3 of the system object trackerGNN is not allowed without first calling the release(.) method.
Error in helperRunSort (line 18)
tracks = tracker(highScoreDetections, reader.CurrentTime, iouCost);
I would appreciate it if anyone could help me solve this issue. Regards
whos -file objectDetectionsCell.mat
Name Size Bytes Class Attributes objectDetectionsCell 1x200 873088 cell
  2 Comments
Walter Roberson
Walter Roberson on 30 Jul 2023
load objectDetectionsCell
C1 = objectDetectionsCell{1};
whos C1
Name Size Bytes Class Attributes C1 15x1 4140 objectDetection
It is not clear what the datatype is for your iouCost -- and it is not clear how your objectDetection entries have been trained.
alex
alex on 31 Jul 2023
Thanks for your response. C1 is 15*1 and each entry shows the person detection result of YOLO4, which is in the objectDetection function format. C1 = 15*1 shows in frame 1, 15 persons are detected by YOLO4. I used some of the UCSD PED1 tif image sequence dataset and YOLO4 object detector.

Sign in to comment.

Accepted Answer

Walter Roberson
Walter Roberson on 31 Jul 2023
Moved: Walter Roberson on 31 Jul 2023
I speculate that maybe your .tiff file is uint8 values, so the objectDetection matrices are expecting uint8 inputs, but that your iouCost is double()
The error message is telling you that iouCost in your code is not the same datatype that your detectors were trained against.
  2 Comments
alex
alex on 31 Jul 2023
Moved: Walter Roberson on 31 Jul 2023
Yes. You are right. I changed the input data type to double, and the problem is solved. Thank you very much.
BASHIR AHMAD RASHEEDY
BASHIR AHMAD RASHEEDY on 2 Jun 2024
Moved: DGM on 2 Jun 2024
Alex;
I am also facing the same problem, I am using YOLO for a video sequence and gets the same problem, would you please share and how to change the input data to double.
thanks in advance

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!