From f7064eb29d3f6dea32442017d1f67036fd75d9f7 Mon Sep 17 00:00:00 2001 From: BryonLewis <61746913+BryonLewis@users.noreply.github.com> Date: Tue, 5 Apr 2022 15:52:44 -0400 Subject: [PATCH] Multicam docs (#1214) * Adding documentation for multicam * adding images --- docs/Dive-Desktop.md | 2 +- docs/Multicamera-data.md | 60 +++++++++++++++++++++++++ docs/images/MultiCam/MultiCamTools.png | Bin 0 -> 29913 bytes mkdocs.yml | 1 + 4 files changed, 62 insertions(+), 1 deletion(-) create mode 100644 docs/Multicamera-data.md create mode 100644 docs/images/MultiCam/MultiCamTools.png diff --git a/docs/Dive-Desktop.md b/docs/Dive-Desktop.md index b4b43a5b0..a6f11ece5 100644 --- a/docs/Dive-Desktop.md +++ b/docs/Dive-Desktop.md @@ -44,7 +44,7 @@ Click either ==Open Image Sequence :material-folder-open:== or ==Open Video :mat * ==:material-folder: Directory== is the default option for image sequences. It will prompt you to choose an **entire folder** of images to import as a dataset. * You can use globbing patterns to filter the contents of an image directory during import. Click ==:material-chevron-down: Show advanced options== to reveal the glob input. * ==:material-view-list-outline: Image List== will prompt you to choose a `.txt` file that contains an image name or full path on each line. -* ==:material-binoculars: Stereo== will prompt you to choose 2 videos or 2 image sequences. +* ==:material-binoculars: Stereo== will prompt you to choose 2 videos or 2 image sequences and a calibration file. * ==:material-camera-burst: Multi-Cam== will prompt you to describe the multi-cam configuration by naming several cameras and picking the source media for each. The import routine will look for `.csv` and `.json` files in the same directory as the source media, and you will be prompted to manually select an annotation file and a configuration file. Neither is required. diff --git a/docs/Multicamera-data.md b/docs/Multicamera-data.md new file mode 100644 index 000000000..eeb2bff1e --- /dev/null +++ b/docs/Multicamera-data.md @@ -0,0 +1,60 @@ +--- +hide: + - navigation +--- + +# Multicamera and Stereo Data (Dive Desktop Beta) + +A beta release of the *Desktop Only* software supports both multicamera and stereo datasets for viewing and editing. + +## Loading MultiCamera data + +[Dive Desktop](Dive-Desktop.md) has documenation under "Supported Dataset Types" which describes how to import multiCamera or stereoscopic data. Reminder that stereoscopic data requies a calibration file where multicamera data doesn't. + +## Data/Track Organization + +Data is loaded amongst multiple folders to creae a mutlicamera dataset. In these cases trackIds will be linked if they are the same across the cameras. Selection of a trackId that exists across multiple cameras will be linked together in the [Track List](UI-Track-List.md). + +> **Example** If Camera 1 and Camera 2 both have annotation files with TrackId 1 they will be automatically be linked together and selecting one will select them in both cameras.> + +## Camera Selection + +Editing and interacting with a camera requires that you select the camera first. There is a dropdown in the upper right of the screen which contains the name of the currently selected camera. Also the currently selected camera will contain a dashed light blue outline. Left or Right clicking within a camera will cause that camera to be selected. + +## Creating Tracks/Detections + +Track creation for a single camera works much in the same way it does for single camera datasets. Using the New Track button or ++n++ key to create a new track and draw. To quickly create a track on another camera and have it link to the current cameras can be done using the "MultiCamera Tools" or by selecting the the desired base track and right clicking on the new camera to add the track. This will put the annotation tool into creation mode for the current TrackId on a new camera. Alternatively the MultiCamera Tools panel can simplify this be clicking on the Edit button. + +## MultiCamera Tools + +Next to the dropdown for the camera selection is a camera settings icon. Clicking on that will open the multicamera tools. These tools provide a quick view of the selected track across all cameras. +When a track is selected it will easily show the existing detections and tracks across multiple cameras. + +![MultiCam Tools](images/MultiCam/MultiCamTools.png){ width=260px align=right } + + +* Editing - Clicking on the ==:material-pencil-box-outline:== or ==:material-shape-square-plus:== edit button for any camera will select that camera and edit an existing track or allow for the creation of a new track which is linked to existing tracks. +* Deleting (Detection/Track) - ==:material-delete:== deleting the detection will leave the track for the camera (if it exists on multiple frames) or will remove only the detection for the current frame. If it is the only detection left on that camera a prompt will ask if you want to delete the track. If you delete the track it will remove all detections associated with that TrackId across all of the frames. +* Unlinking - ==:material-link-variant-minus:== Will split off the track for the camera into a new trackId +* Linking - ==:material-link-variant-plus:== Will select the new camera and place it into Linking Mode. This requires selecting a track that is only that camera to link to the currently selected track. Attempting to link a track that exists across multiple cameras will prompt to split off the track before linking. To exit linking mode use the ++escape++ Key + +## Import/Export + +Importing and exporting of data works similarily to a single dataset except that it will occur on the current selected camera. Selecting "Starboard" camera and clicking export will only export the annotations for the "Starboard" camera. Similarily importing annotations will only occur on the selected camera as well. + +## Running Pipelines + +### Single Camera Pipelines + +Single camera pipelines can be used by selecting the camera and then running the pipeline from the pipeline menu. + +> **Note** it is suggested that single camera pipelines only be run on empty datasets that don't have annotations already. When the pipeline finishes it will create tracks with TrackIds that may conflict with the other cameras. So it is reccomended that all tracks be removed before running single camera pipelines. + +### MultiCamera/Stereo Pipelines + +There are specific pipelines that can be used on multi-camera or stereo datasets. These pipelines are related to the type of dataset (mutlicamera vs stereo) and the number of cameras that exist. + +| Pipeline | Category | Type | Cameras | Description | +| -------- | -------- | -------- | -------- | -------- | +|
gmm
| measurment | stereoscopic | 2 | Stereo pipeline used to compute fish length measurement | +|
X-cam
| X-cam | multicamera | 2 or 3| Multiple pipelines that can act on either 2 or 3 camera datasets. diff --git a/docs/images/MultiCam/MultiCamTools.png b/docs/images/MultiCam/MultiCamTools.png new file mode 100644 index 0000000000000000000000000000000000000000..fe03c4463c47c193339ada1b44c21e5f3aac1511 GIT binary patch literal 29913 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 literal 0 HcmV?d00001 diff --git a/mkdocs.yml b/mkdocs.yml index 4933aca37..893afc9f5 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -59,6 +59,7 @@ nav: - Advanced features: - Pipeline Import and Export: Pipeline-Import-Export.md - Command Line Tools: Command-Line-Tools.md + - MultiCamera Data (beta): Multicamera-data.md - Screenshots: Screenshots.md - Support: Support.md - Pipelines & Training: Pipeline-Documentation.md