carohiguera commited on
Commit
d7beed5
β€’
1 Parent(s): d5cffc6

added force field decoder for DIGIT

Browse files
README.md ADDED
@@ -0,0 +1,47 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: cc-by-nc-4.0
3
+ tags:
4
+ - sparsh
5
+ - force field
6
+ - digit
7
+ ---
8
+
9
+ # Sparsh (DINO) + force field decoder for DIGIT sensor
10
+
11
+ We decode the touch representations from Sparsh into normal and shear force fields. This allows us to gather an intuition about what the representations capture in terms of forces in a way that is interpretable for humans.
12
+
13
+ ## How to Use
14
+ For testing Sparsh(DINO) + force field decoder live, you only need a DIGIT sensor. Follow these steps to run the demo:
15
+
16
+ 1. Clone the [sparsh repo](https://github.com/facebookresearch/sparsh.git)
17
+
18
+ 2. Create a folder for downloading the task checkpoints. For example, `${YOUR_PATH}/outputs_sparsh/checkpoints`.
19
+ 3. Download the Sparsh (DINO) base [checkpoint](https://huggingface.co/facebook/sparsh-dino-base)
20
+ 4. Download the decoder checkpoints from this repo.
21
+ 5. Connect the sensor to your PC. In case of DIGIT, please make sure you have [digit-interface](https://github.com/facebookresearch/digit-interface) installed.
22
+ 6. Make sure the device is recognized by the OS (you can use Cheese in Linux to see the video that the sensor is streaming).
23
+
24
+ 7. Running the demo for DIGIT (please refer to the Sparsh repo README for more information about how to setup the path configs):
25
+
26
+ ```bash
27
+ python demo_forcefield.py +experiment=digit/downstream_task/forcefield/digit_dino paths=${YOUR_PATH_CONFIG} paths.output_dir=${YOUR_PATH}/outputs_sparsh/checkpoints/ test.demo.digit_serial=${YOUR_DIGIT_SERIAL}`
28
+ ```
29
+ The DIGIT serial number is printed on the back of the sensor and has the format `DXXXXX`.
30
+
31
+ 8. Take the sensor and slide it across the edge of a table, or across objects with interesting textures! Look at the normal field to localize where you're making contact on the sensor's surface. Look at the shear field to gather an intuition about the direction of the shear force that you applied while sliding the sensor. For example, slide the sensor over an edge up and down to get translational shear or rotate the sensor in place to see torsional slip!
32
+
33
+ <!-- <p align="center">
34
+ <img src="assets/demo_digit.gif" alt="animated" />
35
+ </p> -->
36
+
37
+ ### BibTeX entry and citation info
38
+ ```bibtex
39
+ @inproceedings{
40
+ higuera2024sparsh,
41
+ title={Sparsh: Self-supervised touch representations for vision-based tactile sensing},
42
+ author={Carolina Higuera and Akash Sharma and Chaithanya Krishna Bodduluri and Taosha Fan and Patrick Lancaster and Mrinal Kalakrishnan and Michael Kaess and Byron Boots and Mike Lambeta and Tingfan Wu and Mustafa Mukadam},
43
+ booktitle={8th Annual Conference on Robot Learning},
44
+ year={2024},
45
+ url={https://openreview.net/forum?id=xYJn2e1uu8}
46
+ }
47
+ ```
digit_t1_forcefield_dino_vitbase_bg/checkpoints/epoch-0014.pth ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:de8da71138525cbf12383bf1b25c146cdba93626199a2be044f671f782fc4a10
3
+ size 14695019
digit_t1_forcefield_dino_vitbase_bg/checkpoints/epoch-0021.pth ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:182ceba7f823d334c036df82900bc55d660820777530a2e611124d51d94246eb
3
+ size 14695019
digit_t1_forcefield_dino_vitbase_bg/checkpoints/epoch-0031.pth ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:2e41f3194445ea14d21d1ce0fc8ad86a7bdccdbcc64529e4fad1d774f50ad878
3
+ size 14695019
digit_t1_forcefield_dino_vitbase_bg/checkpoints/last.ckpt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:1d10d727b6e711615c265366fb532b540a1ed3f9fd0544ea5d46bc47cc70f888
3
+ size 541797495
digit_t1_forcefield_dino_vitbase_bg/config.yaml ADDED
@@ -0,0 +1,218 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ paths:
2
+ data_root: /media/chiguera/GUM/
3
+ encoder_checkpoint_root: /media/chiguera/2TB/sparsh/encoders_460k/
4
+ log_dir: /media/chiguera/GUM/tactile_ssl/outputs_sparsh/${experiment_name}/logs/
5
+ output_dir: /media/chiguera/GUM/tactile_ssl/outputs_sparsh/${experiment_name}/
6
+ work_dir: ${hydra:runtime.cwd}
7
+ wandb:
8
+ project: ${task_name}_${sensor}
9
+ entity: chiguera
10
+ save_dir: ${paths.output_dir}
11
+ id: ${hydra:job.id}_${experiment_name}
12
+ tags:
13
+ - ${ssl_name}
14
+ group: null
15
+ notes: null
16
+ data:
17
+ train_val_split: null
18
+ train_data_budget: ${train_data_budget}
19
+ val_data_budget: ${val_data_budget}
20
+ max_train_data: null
21
+ sensor: digit
22
+ dataset:
23
+ _target_: tactile_ssl.data.vision_tactile_forcefield.VisionTactileBackboneDataset
24
+ config:
25
+ sensor: ${data.sensor}
26
+ remove_bg: true
27
+ out_format: concat_ch_img
28
+ num_frames: 2
29
+ frame_stride: 5
30
+ path_dataset: ${paths.data_root}/datasets/digitv1/Object-Slide/
31
+ path_bgs: ${paths.data_root}/datasets/digitv1/Object-Slide/bgs/
32
+ list_datasets:
33
+ - 004_sugar_box/dataset_0
34
+ - 025_mug/dataset_0
35
+ - 048_hammer/dataset_0
36
+ - 005_tomato_soup_can/dataset_0
37
+ - 035_power_drill/dataset_0
38
+ - 055_baseball/dataset_0
39
+ - 006_mustard_bottle/dataset_0
40
+ - 037_scissors/dataset_0
41
+ - 021_bleach_cleanser/dataset_0
42
+ - 042_adjustable_wrench/dataset_0
43
+ - 004_sugar_box/dataset_1
44
+ - 025_mug/dataset_1
45
+ - 048_hammer/dataset_1
46
+ - 005_tomato_soup_can/dataset_1
47
+ - 035_power_drill/dataset_1
48
+ - 055_baseball/dataset_1
49
+ - 006_mustard_bottle/dataset_1
50
+ - 037_scissors/dataset_1
51
+ - 021_bleach_cleanser/dataset_1
52
+ - 042_adjustable_wrench/dataset_1
53
+ - 004_sugar_box/dataset_2
54
+ - 025_mug/dataset_2
55
+ - 048_hammer/dataset_2
56
+ - 005_tomato_soup_can/dataset_2
57
+ - 035_power_drill/dataset_2
58
+ - 055_baseball/dataset_2
59
+ - 006_mustard_bottle/dataset_2
60
+ - 037_scissors/dataset_2
61
+ - 021_bleach_cleanser/dataset_2
62
+ - 042_adjustable_wrench/dataset_2
63
+ - 004_sugar_box/dataset_3
64
+ - 025_mug/dataset_3
65
+ - 048_hammer/dataset_3
66
+ - 005_tomato_soup_can/dataset_3
67
+ - 035_power_drill/dataset_3
68
+ - 055_baseball/dataset_3
69
+ - 006_mustard_bottle/dataset_3
70
+ - 037_scissors/dataset_3
71
+ - 021_bleach_cleanser/dataset_3
72
+ - 042_adjustable_wrench/dataset_3
73
+ - banana/dataset_0
74
+ - banana/dataset_1
75
+ - banana/dataset_2
76
+ - banana/dataset_3
77
+ - bread/dataset_0
78
+ - bread/dataset_1
79
+ - bread/dataset_2
80
+ - bread/dataset_3
81
+ - cheese/dataset_0
82
+ - cheese/dataset_1
83
+ - cheese/dataset_2
84
+ - cheese/dataset_3
85
+ - cookie/dataset_0
86
+ - cookie/dataset_1
87
+ - cookie/dataset_2
88
+ - cookie/dataset_3
89
+ - corn/dataset_0
90
+ - corn/dataset_1
91
+ - corn/dataset_2
92
+ - corn/dataset_3
93
+ - lettuce/dataset_0
94
+ - lettuce/dataset_1
95
+ - lettuce/dataset_2
96
+ - lettuce/dataset_3
97
+ - plum/dataset_0
98
+ - plum/dataset_1
99
+ - plum/dataset_2
100
+ - plum/dataset_3
101
+ - strawberry/dataset_0
102
+ - strawberry/dataset_1
103
+ - strawberry/dataset_2
104
+ - strawberry/dataset_3
105
+ - tomato/dataset_0
106
+ - tomato/dataset_1
107
+ - tomato/dataset_2
108
+ - tomato/dataset_3
109
+ - sphere/dataset_0
110
+ - sphere/dataset_1
111
+ - sphere/dataset_2
112
+ list_datasets_test:
113
+ - 004_sugar_box/dataset_4
114
+ - 025_mug/dataset_4
115
+ - 048_hammer/dataset_4
116
+ - 005_tomato_soup_can/dataset_4
117
+ - 035_power_drill/dataset_4
118
+ - 055_baseball/dataset_4
119
+ - 006_mustard_bottle/dataset_4
120
+ - 037_scissors/dataset_4
121
+ - 021_bleach_cleanser/dataset_4
122
+ - 042_adjustable_wrench/dataset_4
123
+ - sphere/dataset_1
124
+ - sphere/dataset_2
125
+ look_in_folder: false
126
+ transforms:
127
+ with_augmentation: false
128
+ resize:
129
+ - 224
130
+ - 224
131
+ p_flip: 0.0
132
+ p_crop: 0.0
133
+ p_rot: 0.0
134
+ train_dataloader:
135
+ batch_size: 20
136
+ num_workers: 2
137
+ drop_last: true
138
+ pin_memory: true
139
+ persistent_workers: true
140
+ shuffle: true
141
+ val_dataloader:
142
+ batch_size: 20
143
+ num_workers: 2
144
+ drop_last: true
145
+ pin_memory: true
146
+ persistent_workers: true
147
+ task:
148
+ _target_: tactile_ssl.downstream_task.ForceFieldModuleSL
149
+ model_encoder:
150
+ _target_: tactile_ssl.model.vit_${ssl_model_size}
151
+ img_size:
152
+ - 224
153
+ - 224
154
+ in_chans: 6
155
+ pos_embed_fn: sinusoidal
156
+ num_register_tokens: 1
157
+ model_task:
158
+ _target_: tactile_ssl.downstream_task.ForceFieldDecoderSL
159
+ embed_dim: ${ssl_model_size}
160
+ checkpoint_encoder: ${paths.encoder_checkpoint_root}/${ssl_name}_vit${ssl_model_size}.ckpt
161
+ checkpoint_task: null
162
+ train_encoder: false
163
+ optim_cfg:
164
+ _partial_: true
165
+ _target_: torch.optim.Adam
166
+ lr: 0.0001
167
+ scheduler_cfg: null
168
+ ssl_config:
169
+ img_sz:
170
+ - 224
171
+ - 224
172
+ pose_estimator:
173
+ num_encoder_layers: 18
174
+ loss:
175
+ with_mask_supervision: false
176
+ with_sl_supervision: false
177
+ with_ssim: true
178
+ disparity_smoothness: 0.001
179
+ min_depth: 0.1
180
+ max_depth: 100.0
181
+ encoder_type: ${ssl_name}
182
+ ssl_name: dino
183
+ sensor: digit
184
+ ckpt_path: null
185
+ task_name: t1_forcefield
186
+ ssl_model_size: base
187
+ train_data_budget: 1.0
188
+ val_data_budget: 1.0
189
+ experiment_name: ${sensor}_${task_name}_${ssl_name}_vit${ssl_model_size}_t0
190
+ seed: 42
191
+ data_out_format: concat_ch_img
192
+ num_frames: 2
193
+ frame_stride: 5
194
+ trainer:
195
+ max_epochs: 31
196
+ validation_frequency: 2
197
+ sanity_validate: false
198
+ save_checkpoint_dir: ${paths.output_dir}/checkpoints
199
+ checkpoint_interval_type: log
200
+ max_task_checkpoints: 10
201
+ save_probe_weights_only: true
202
+ limit_train_batches: 500
203
+ limit_val_batches: 150
204
+ use_distributed_sampler: false
205
+ devices:
206
+ - 0
207
+ test:
208
+ data:
209
+ dataset_name:
210
+ - 005_tomato_soup_can/dataset_0
211
+ batch_size: 1
212
+ tester:
213
+ _partial_: true
214
+ _target_: tactile_ssl.test.TestForceField
215
+ demo:
216
+ _partial_: true
217
+ _target_: tactile_ssl.test.DemoForceField
218
+ path_outputs: null
digit_t1_forcefield_dino_vitbase_bg/config_tree.log ADDED
@@ -0,0 +1,237 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ CONFIG
2
+ β”œβ”€β”€ data
3
+ β”‚ └── train_val_split: null
4
+ β”‚ train_data_budget: 1.0
5
+ β”‚ val_data_budget: 1.0
6
+ β”‚ max_train_data: null
7
+ β”‚ sensor: digit
8
+ β”‚ dataset:
9
+ β”‚ _target_: tactile_ssl.data.vision_tactile_forcefield.VisionTactileBackboneDataset
10
+ β”‚ config:
11
+ β”‚ sensor: digit
12
+ β”‚ remove_bg: true
13
+ β”‚ out_format: concat_ch_img
14
+ β”‚ num_frames: 2
15
+ β”‚ frame_stride: 5
16
+ β”‚ path_dataset: /media/chiguera/GUM//datasets/digitv1/Object-Slide/
17
+ β”‚ path_bgs: /media/chiguera/GUM//datasets/digitv1/Object-Slide/bgs/
18
+ β”‚ list_datasets:
19
+ β”‚ - 004_sugar_box/dataset_0
20
+ β”‚ - 025_mug/dataset_0
21
+ β”‚ - 048_hammer/dataset_0
22
+ β”‚ - 005_tomato_soup_can/dataset_0
23
+ β”‚ - 035_power_drill/dataset_0
24
+ β”‚ - 055_baseball/dataset_0
25
+ β”‚ - 006_mustard_bottle/dataset_0
26
+ β”‚ - 037_scissors/dataset_0
27
+ β”‚ - 021_bleach_cleanser/dataset_0
28
+ β”‚ - 042_adjustable_wrench/dataset_0
29
+ β”‚ - 004_sugar_box/dataset_1
30
+ β”‚ - 025_mug/dataset_1
31
+ β”‚ - 048_hammer/dataset_1
32
+ β”‚ - 005_tomato_soup_can/dataset_1
33
+ β”‚ - 035_power_drill/dataset_1
34
+ β”‚ - 055_baseball/dataset_1
35
+ β”‚ - 006_mustard_bottle/dataset_1
36
+ β”‚ - 037_scissors/dataset_1
37
+ β”‚ - 021_bleach_cleanser/dataset_1
38
+ β”‚ - 042_adjustable_wrench/dataset_1
39
+ β”‚ - 004_sugar_box/dataset_2
40
+ β”‚ - 025_mug/dataset_2
41
+ β”‚ - 048_hammer/dataset_2
42
+ β”‚ - 005_tomato_soup_can/dataset_2
43
+ β”‚ - 035_power_drill/dataset_2
44
+ β”‚ - 055_baseball/dataset_2
45
+ β”‚ - 006_mustard_bottle/dataset_2
46
+ β”‚ - 037_scissors/dataset_2
47
+ β”‚ - 021_bleach_cleanser/dataset_2
48
+ β”‚ - 042_adjustable_wrench/dataset_2
49
+ β”‚ - 004_sugar_box/dataset_3
50
+ β”‚ - 025_mug/dataset_3
51
+ β”‚ - 048_hammer/dataset_3
52
+ β”‚ - 005_tomato_soup_can/dataset_3
53
+ β”‚ - 035_power_drill/dataset_3
54
+ β”‚ - 055_baseball/dataset_3
55
+ β”‚ - 006_mustard_bottle/dataset_3
56
+ β”‚ - 037_scissors/dataset_3
57
+ β”‚ - 021_bleach_cleanser/dataset_3
58
+ β”‚ - 042_adjustable_wrench/dataset_3
59
+ β”‚ - banana/dataset_0
60
+ β”‚ - banana/dataset_1
61
+ β”‚ - banana/dataset_2
62
+ β”‚ - banana/dataset_3
63
+ β”‚ - bread/dataset_0
64
+ β”‚ - bread/dataset_1
65
+ β”‚ - bread/dataset_2
66
+ β”‚ - bread/dataset_3
67
+ β”‚ - cheese/dataset_0
68
+ β”‚ - cheese/dataset_1
69
+ β”‚ - cheese/dataset_2
70
+ β”‚ - cheese/dataset_3
71
+ β”‚ - cookie/dataset_0
72
+ β”‚ - cookie/dataset_1
73
+ β”‚ - cookie/dataset_2
74
+ β”‚ - cookie/dataset_3
75
+ β”‚ - corn/dataset_0
76
+ β”‚ - corn/dataset_1
77
+ β”‚ - corn/dataset_2
78
+ β”‚ - corn/dataset_3
79
+ β”‚ - lettuce/dataset_0
80
+ β”‚ - lettuce/dataset_1
81
+ β”‚ - lettuce/dataset_2
82
+ β”‚ - lettuce/dataset_3
83
+ β”‚ - plum/dataset_0
84
+ β”‚ - plum/dataset_1
85
+ β”‚ - plum/dataset_2
86
+ β”‚ - plum/dataset_3
87
+ β”‚ - strawberry/dataset_0
88
+ β”‚ - strawberry/dataset_1
89
+ β”‚ - strawberry/dataset_2
90
+ β”‚ - strawberry/dataset_3
91
+ β”‚ - tomato/dataset_0
92
+ β”‚ - tomato/dataset_1
93
+ β”‚ - tomato/dataset_2
94
+ β”‚ - tomato/dataset_3
95
+ β”‚ - sphere/dataset_0
96
+ β”‚ - sphere/dataset_1
97
+ β”‚ - sphere/dataset_2
98
+ β”‚ list_datasets_test:
99
+ β”‚ - 004_sugar_box/dataset_4
100
+ β”‚ - 025_mug/dataset_4
101
+ β”‚ - 048_hammer/dataset_4
102
+ β”‚ - 005_tomato_soup_can/dataset_4
103
+ β”‚ - 035_power_drill/dataset_4
104
+ β”‚ - 055_baseball/dataset_4
105
+ β”‚ - 006_mustard_bottle/dataset_4
106
+ β”‚ - 037_scissors/dataset_4
107
+ β”‚ - 021_bleach_cleanser/dataset_4
108
+ β”‚ - 042_adjustable_wrench/dataset_4
109
+ β”‚ - sphere/dataset_1
110
+ β”‚ - sphere/dataset_2
111
+ β”‚ look_in_folder: false
112
+ β”‚ transforms:
113
+ β”‚ with_augmentation: false
114
+ β”‚ resize:
115
+ β”‚ - 224
116
+ β”‚ - 224
117
+ β”‚ p_flip: 0.0
118
+ β”‚ p_crop: 0.0
119
+ β”‚ p_rot: 0.0
120
+ β”‚ train_dataloader:
121
+ β”‚ batch_size: 20
122
+ β”‚ num_workers: 2
123
+ β”‚ drop_last: true
124
+ β”‚ pin_memory: true
125
+ β”‚ persistent_workers: true
126
+ β”‚ shuffle: true
127
+ β”‚ val_dataloader:
128
+ β”‚ batch_size: 20
129
+ β”‚ num_workers: 2
130
+ β”‚ drop_last: true
131
+ β”‚ pin_memory: true
132
+ β”‚ persistent_workers: true
133
+ β”‚
134
+ β”œβ”€β”€ trainer
135
+ β”‚ └── max_epochs: 31
136
+ β”‚ validation_frequency: 2
137
+ β”‚ sanity_validate: false
138
+ β”‚ save_checkpoint_dir: /media/chiguera/GUM/tactile_ssl/outputs_sparsh/digit_t1_forcefield_dino_vitbase
139
+ β”‚ checkpoint_interval_type: log
140
+ β”‚ max_task_checkpoints: 10
141
+ β”‚ save_probe_weights_only: true
142
+ β”‚ limit_train_batches: 500
143
+ β”‚ limit_val_batches: 150
144
+ β”‚ use_distributed_sampler: false
145
+ β”‚ devices:
146
+ β”‚ - 0
147
+ β”‚
148
+ β”œβ”€β”€ paths
149
+ β”‚ └── data_root: /media/chiguera/GUM/
150
+ β”‚ encoder_checkpoint_root: /media/chiguera/2TB/sparsh/encoders_460k/
151
+ β”‚ log_dir: /media/chiguera/GUM/tactile_ssl/outputs_sparsh/digit_t1_forcefield_dino_vitbase_t0/logs/
152
+ β”‚ output_dir: /media/chiguera/GUM/tactile_ssl/outputs_sparsh/digit_t1_forcefield_dino_vitbase_t0/
153
+ β”‚ work_dir: /media/chiguera/2TB/sparsh/tactile-ssl
154
+ β”‚
155
+ β”œβ”€β”€ wandb
156
+ β”‚ └── project: t1_forcefield_digit
157
+ β”‚ entity: chiguera
158
+ β”‚ save_dir: /media/chiguera/GUM/tactile_ssl/outputs_sparsh/digit_t1_forcefield_dino_vitbase_t0/
159
+ β”‚ id: 2024.09.28_17-57_digit_t1_forcefield_dino_vitbase_t0
160
+ β”‚ tags:
161
+ β”‚ - dino
162
+ β”‚ group: null
163
+ β”‚ notes: null
164
+ β”‚
165
+ β”œβ”€β”€ task
166
+ β”‚ └── _target_: tactile_ssl.downstream_task.ForceFieldModuleSL
167
+ β”‚ model_encoder:
168
+ β”‚ _target_: tactile_ssl.model.vit_base
169
+ β”‚ img_size:
170
+ β”‚ - 224
171
+ β”‚ - 224
172
+ β”‚ in_chans: 6
173
+ β”‚ pos_embed_fn: sinusoidal
174
+ β”‚ num_register_tokens: 1
175
+ β”‚ model_task:
176
+ β”‚ _target_: tactile_ssl.downstream_task.ForceFieldDecoderSL
177
+ β”‚ embed_dim: base
178
+ β”‚ checkpoint_encoder: /media/chiguera/2TB/sparsh/encoders_460k//dino_vitbase.ckpt
179
+ β”‚ checkpoint_task: null
180
+ β”‚ train_encoder: false
181
+ β”‚ optim_cfg:
182
+ β”‚ _partial_: true
183
+ β”‚ _target_: torch.optim.Adam
184
+ β”‚ lr: 0.0001
185
+ β”‚ scheduler_cfg: null
186
+ β”‚ ssl_config:
187
+ β”‚ img_sz:
188
+ β”‚ - 224
189
+ β”‚ - 224
190
+ β”‚ pose_estimator:
191
+ β”‚ num_encoder_layers: 18
192
+ β”‚ loss:
193
+ β”‚ with_mask_supervision: false
194
+ β”‚ with_sl_supervision: false
195
+ β”‚ with_ssim: true
196
+ β”‚ disparity_smoothness: 0.001
197
+ β”‚ min_depth: 0.1
198
+ β”‚ max_depth: 100.0
199
+ β”‚ encoder_type: dino
200
+ β”‚
201
+ β”œβ”€β”€ ssl_name
202
+ β”‚ └── dino
203
+ β”œβ”€β”€ sensor
204
+ β”‚ └── digit
205
+ β”œβ”€β”€ ckpt_path
206
+ β”‚ └── None
207
+ β”œβ”€β”€ task_name
208
+ β”‚ └── t1_forcefield
209
+ β”œβ”€β”€ ssl_model_size
210
+ β”‚ └── base
211
+ β”œβ”€β”€ train_data_budget
212
+ β”‚ └── 1.0
213
+ β”œβ”€β”€ val_data_budget
214
+ β”‚ └── 1.0
215
+ β”œβ”€β”€ experiment_name
216
+ β”‚ └── digit_t1_forcefield_dino_vitbase_t0
217
+ β”œβ”€β”€ seed
218
+ β”‚ └── 42
219
+ β”œβ”€β”€ data_out_format
220
+ β”‚ └── concat_ch_img
221
+ β”œβ”€β”€ num_frames
222
+ β”‚ └── 2
223
+ β”œβ”€β”€ frame_stride
224
+ β”‚ └── 5
225
+ └── test
226
+ └── data:
227
+ dataset_name:
228
+ - 005_tomato_soup_can/dataset_0
229
+ batch_size: 1
230
+ tester:
231
+ _partial_: true
232
+ _target_: tactile_ssl.test.TestForceField
233
+ demo:
234
+ _partial_: true
235
+ _target_: tactile_ssl.test.DemoForceField
236
+ path_outputs: null
237
+