diff --git a/src/components/AnnotationList/AnnotationList.js b/src/components/AnnotationList/AnnotationList.js
index 0430627..29efa7b 100644
--- a/src/components/AnnotationList/AnnotationList.js
+++ b/src/components/AnnotationList/AnnotationList.js
@@ -6,8 +6,8 @@ function AnnotationList({ annotations, onAnnotationClick }) {
Annotations
{annotations.map((annotation, index) => (
- - onAnnotationClick(annotation.time)}>
- Frame {index + 1} - {annotation.annotations.length} objects
+
- onAnnotationClick(index)}>
+ Frame {index + 1} - {annotation.detections.length} objects
))}
diff --git a/src/components/AnnotationMain/AnnotationMain.js b/src/components/AnnotationMain/AnnotationMain.js
index df9b849..66085b2 100644
--- a/src/components/AnnotationMain/AnnotationMain.js
+++ b/src/components/AnnotationMain/AnnotationMain.js
@@ -13,7 +13,7 @@ import { detectionTypes } from '../../constants/detectionTypes';
function AnnotationMain() {
const [files, setFiles] = useState([]);
const [selectedFile, setSelectedFile] = useState(null);
- const [annotations, setAnnotations] = useState({});
+ const [annotations, setAnnotations] = useState([]);
const [currentTime, setCurrentTime] = useState(0);
const [selectedClass, setSelectedClass] = useState(null);
const [detections, setDetections] = useState([]);
@@ -36,7 +36,7 @@ function AnnotationMain() {
if (!file) return;
setSelectedFile(file);
- setAnnotations({});
+ setAnnotations([]);
setDetections([]);
setSelectedDetectionIndices([]);
setCurrentTime(0);
@@ -79,11 +79,12 @@ function AnnotationMain() {
if (imageData) {
const newAnnotations = {
- ...annotations,
- [currentTime]: { time: currentTime, annotations: detections, imageData }
+ time: currentTime,
+ detections: detections,
+ imageData: imageData
};
- setAnnotations(newAnnotations);
+ setAnnotations(prevAnnotation => [...prevAnnotation, newAnnotations]);
saveAnnotation(currentTime, detections, imageData);
setErrorMessage("");
@@ -106,15 +107,15 @@ function AnnotationMain() {
setDetections([]);
}
- const handleAnnotationClick = (time) => {
- setCurrentTime(time);
- const annotation = annotations[time];
+ const handleAnnotationClick = (index) => {
+ const annotation = annotations[index];
if (annotation) {
- setDetections(annotation.annotations || []);
+ setCurrentTime(annotation.time);
+ setDetections(annotation.detections || []);
setSelectedDetectionIndices([]);
}
if (videoRef.current) {
- videoRef.current.currentTime = time;
+ videoRef.current.currentTime = annotation.time;
}
setIsPlaying(false);
};
@@ -244,7 +245,7 @@ function AnnotationMain() {