Skip to content

Commit 3888b90

Browse files
committed
Updating docs
1 parent 467f2ea commit 3888b90

File tree

1 file changed

+48
-35
lines changed

1 file changed

+48
-35
lines changed

docs/user_guide/user_guide.md

Lines changed: 48 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -4,32 +4,32 @@
44

55
A JABS project is a directory of video files and their corresponding pose
66
estimation files. The first time a project directory is opened in JABS, it will
7-
create a subdirectory called "rotta", which contains various files created by
7+
create a subdirectory called "jabs", which contains various files created by
88
JABS to save project state, including labels and current predictions.
99

1010
### Example JABS project directory listing:
1111

1212
```text
13-
NV11-CBAX2+2019-07-26+MDX0009_2019-07-26_08-00-00_500.avi
14-
NV11-CBAX2+2019-07-26+MDX0009_2019-07-26_08-00-00_500_pose_est_v3.h5
15-
NV11-CBAX2+2019-07-26+MDX0009_2019-07-26_09-00-00_500.avi
16-
NV11-CBAX2+2019-07-26+MDX0009_2019-07-26_09-00-00_500_pose_est_v3.h5
17-
NV11-CBAX2+2019-07-26+MDX0009_2019-07-26_10-00-00_500.avi
18-
NV11-CBAX2+2019-07-26+MDX0009_2019-07-26_10-00-00_500_pose_est_v3.h5
19-
NV11-CBAX2+2019-07-26+MDX0009_2019-07-26_11-00-00_500.avi
20-
NV11-CBAX2+2019-07-26+MDX0009_2019-07-26_11-00-00_500_pose_est_v3.h5
21-
NV11-CBAX2+2019-07-26+MDX0009_2019-07-26_12-00-00_500.avi
22-
NV11-CBAX2+2019-07-26+MDX0009_2019-07-26_12-00-00_500_pose_est_v3.h5
23-
NV11-CBAX2+2019-07-26+MDX0009_2019-07-26_13-00-00_500.avi
24-
NV11-CBAX2+2019-07-26+MDX0009_2019-07-26_13-00-00_500_pose_est_v3.h5
25-
NV11-CBAX2+2019-07-26+MDX0009_2019-07-26_14-00-00_500.avi
26-
NV11-CBAX2+2019-07-26+MDX0009_2019-07-26_14-00-00_500_pose_est_v3.h5 rotta
13+
VIDEO_1.avi
14+
VIDEO_1_pose_est_v3.h5
15+
VIDEO_2.avi
16+
VIDEO_2_pose_est_v3.h5
17+
VIDEO_3.avi
18+
VIDEO_3_pose_est_v3.h5
19+
VIDEO_4.avi
20+
VIDEO_4_pose_est_v3.h5
21+
VIDEO_5.avi
22+
VIDEO_5_pose_est_v3.h5
23+
VIDEO_6.avi
24+
VIDEO_6_pose_est_v3.h5
25+
VIDEO_7.avi
26+
VIDEO_7_pose_est_v3.h5 jabs
2727
```
2828

29-
## Initializing A JABS Project Directory
29+
## Initializing A JABS Project Directory
3030

3131
The first time you open a project directory in with JABS it will create the "
32-
rotta" subdirectory. Features will be computed the first time the "Train" button
32+
jabs" subdirectory. Features will be computed the first time the "Train" button
3333
is clicked. This can be very time consuming depending on the number and length
3434
of videos in the project directory.
3535

@@ -76,48 +76,48 @@ will use up to 4 processes.
7676

7777
`./initialize_project.py -p8 -w2 -w5 -w10 <path/to/project/dir>`
7878

79-
## The Rotta Directory
79+
## The JABS Directory
8080

81-
JABS creates a subdirectory called "rotta" inside the project directory (this
82-
directory is called "rotta" for historical reasons and may change prior to the
83-
1.0.0 release of JABS). This directory contains app-specific data such as
84-
project settings, generated features, user labels, cache files, and the latest
85-
predictions.
81+
JABS creates a subdirectory called "jabs" inside the project directory. This
82+
directory contains app-specific data such as project settings, generated
83+
features, user labels, cache files, and the latest predictions.
8684

8785
project.json This file contains project settings and metadata.
8886

89-
### rotta/annotations
87+
### jabs/annotations
9088

9189
This directory stores the user's labels, stored in one JSON file per labeled
9290
video.
9391

94-
### rotta/archive
92+
### jabs/archive
9593

9694
This directory contains archived labels. These are compressed files (gzip)
9795
containing labels for behaviors that the user has removed from the project.
9896
Rotta only archives labels. Trained classifiers and predictions are deleted if a
9997
user removes a behavior from a project.
10098

101-
### rotta/cache
99+
### jabs/cache
102100

103101
Files cached by JABS to speed up performance. Some of these files may not be
104102
portable, so this directory should be deleted if a JABS project is copied to a
105103
different platform.
106104

107-
### rotta/classifiers
105+
### jabs/classifiers
108106

109107
This directory contains trained classifiers. Currently, these are stored in
110-
Python Pickle files and should be considered non-portable.
108+
Python Pickle files and should be considered non-portable. While non-portable,
109+
these files can be used alongside `classify.py classify --classifier` for
110+
predicting on the same machine the gui running the training.
111111

112-
### rotta/features
112+
### jabs/features
113113

114114
This directory contains the computed features. There is one directory per
115115
project video, and within each video directory there will be one feature
116-
directory per identity. Feature files are usually portable, but JABS may need
116+
directory per identity. Feature files are portable, but JABS may need
117117
to recompute the features if they were created with a different version of
118118
JABS.
119119

120-
### rotta/predictions
120+
### jabs/predictions
121121

122122
This directory contains prediction files. There will be one subdirectory per
123123
behavior containing one prediction file per video. Prediction files are
@@ -173,9 +173,6 @@ tool (`classify.py`).
173173
means that 11 frames are included into the window feature calculations for
174174
each frame (5 previous frames, current frame, 5 following frames).
175175
- **New Window Size:** Add a new window size to the project.
176-
- **Social Feature Toggle:** Turn on/off social features (disabled if project
177-
includes pose file version 2). Allows training a classifier backwards
178-
compatible with V2 pose files using V3 or higher poses.
179176
- **Label Balancing Toggle:** Balances the training data by downsampling the class with more labels such that the distribution is equal.
180177
- **Symmetric Behavior Toggle:** Tells the classifier that the behavior is symmetric. A symmetric behavior is when left and right features are interchangeable.
181178
- **All k-fold Toggle:** Uses the maximum number of cross validation folds. Useful when you wish to compare classifier performance and may have an outlier that can be held-out.
@@ -222,6 +219,22 @@ tool (`classify.py`).
222219
mouse
223220
- **View→Overlay Landmarks:** toggle the overlay of arena landmarks over the
224221
video.
222+
- **Features:** Menu item for controlling per-behavior classifier settings.
223+
Menu items are disabled when at least 1 pose file in the project does not
224+
contain the data to calculate features.
225+
- **Features→CM Units:** toggle using CM or pixel units
226+
(Warning! Changing this will require features to be re-calculated)
227+
- **Features→Enable Window Features:** toggle using statistical window features
228+
- **Features→Enable Signal Features:** toggle using fft-based window features
229+
- **Features→Enable Social Features:** toggle using social features (v3+ projects)
230+
- **Features→Enable Corners Features:** toggle using arena corner features
231+
(v5+ projects with arena corner static object)
232+
- **Features→Enable Lixit Features:** toggle using lixit features
233+
(v5+ projects with lixit static object)
234+
- **Features→Enable Food_hopper Features:** toggle using food hopper features
235+
(v5+ projects with food hopper static object)
236+
- **Features→Enable Segmentation Features:** toggle using segmentation features
237+
(v6+ projects)
225238

226239
**Track Overlay Example:**
227240
<img src="imgs/track_overlay.png" alt="Track Overlay" width=400 />
@@ -412,7 +425,7 @@ one video file.
412425
#### Location
413426

414427
The prediction files are saved
415-
in `<JABS project dir>/rotta/predictions/<behavior_name>/<video_name>.h5` if
428+
in `<JABS project dir>/jabs/predictions/<behavior_name>/<video_name>.h5` if
416429
they were generated by the JABS GUI. The `classify.py` script saves inference
417430
files in `<out-dir>/<behavior_name>/<video_name>.h5`
418431

0 commit comments

Comments
 (0)