diff --git a/README.md b/README.md index cf11320..6e9ec52 100644 --- a/README.md +++ b/README.md @@ -104,11 +104,11 @@ python demo.py --model_path /path/to/checkpoint.pt \ # University scene python demo.py --model_path /path/to/checkpoint.pt \ - --image_folder example/university4 --mask_sky + --image_folder example/university --mask_sky # Loop scene (loop closure trajectory) python demo.py --model_path /path/to/checkpoint.pt \ - --image_folder example/loop --mask_sky + --image_folder example/loop ``` ### Streaming Inference from Images @@ -197,6 +197,17 @@ If you run into out-of-memory issues, try one (or both) of the following: - **`--offload_to_cpu`** — offload per-frame predictions to CPU during inference (on by default; use `--no-offload_to_cpu` only if you have memory to spare). - **`--num_scale_frames 2`** — reduce the number of bidirectional scale frames from the default 8 down to 2, which shrinks the activation peak of the initial scale phase. +### Faster Inference + +Lower the number of iterative refinement steps in the camera head to trade a small amount of pose accuracy for wall-clock speed: + +```bash +python demo.py --model_path /path/to/checkpoint.pt \ + --image_folder /path/to/images/ --camera_num_iterations 1 +``` + +`--camera_num_iterations` defaults to `4`; setting it to `1` skips three refinement passes in the camera head (and shrinks its KV cache by 4×). + # 📜 License This project is released under the Apache License 2.0. See [LICENSE](LICENSE.txt) file for details. diff --git a/demo.py b/demo.py index ae3d4c5..a8c8636 100644 --- a/demo.py +++ b/demo.py @@ -122,6 +122,7 @@ def load_model(args, device): kv_cache_cross_frame_special=True, kv_cache_include_scale_frames=True, use_sdpa=args.use_sdpa, + camera_num_iterations=args.camera_num_iterations, ) if args.model_path: @@ -260,6 +261,9 @@ def main(): help="Streaming only. Every N-th frame after scale frames is kept as a keyframe. 1 = every frame.", ) parser.add_argument("--kv_cache_sliding_window", type=int, default=64) + parser.add_argument("--camera_num_iterations", type=int, default=4, + help="Camera head iterative-refinement steps. Default 4; set 1 for faster inference " + "(skips 3 refinement passes at a small accuracy cost).") parser.add_argument("--use_sdpa", action="store_true", default=False, help="Use SDPA backend (no flashinfer needed). Default: FlashInfer") parser.add_argument( diff --git a/example/university4/000000.png b/example/university4/000000.png deleted file mode 100644 index c48a5a9..0000000 Binary files a/example/university4/000000.png and /dev/null differ diff --git a/example/university4/000001.png b/example/university4/000001.png deleted file mode 100644 index 489ff39..0000000 Binary files a/example/university4/000001.png and /dev/null differ diff --git a/example/university4/000002.png b/example/university4/000002.png deleted file mode 100644 index 155d597..0000000 Binary files a/example/university4/000002.png and /dev/null differ diff --git a/example/university4/000003.png b/example/university4/000003.png deleted file mode 100644 index 20d7984..0000000 Binary files a/example/university4/000003.png and /dev/null differ diff --git a/example/university4/000004.png b/example/university4/000004.png deleted file mode 100644 index 49985d9..0000000 Binary files a/example/university4/000004.png and /dev/null differ diff --git a/example/university4/000005.png b/example/university4/000005.png deleted file mode 100644 index 1cfbe7b..0000000 Binary files a/example/university4/000005.png and /dev/null differ diff --git a/example/university4/000006.png b/example/university4/000006.png deleted file mode 100644 index 3cc73ca..0000000 Binary files a/example/university4/000006.png and /dev/null differ diff --git a/example/university4/000007.png b/example/university4/000007.png deleted file mode 100644 index ebdfdde..0000000 Binary files a/example/university4/000007.png and /dev/null differ diff --git a/example/university4/000008.png b/example/university4/000008.png deleted file mode 100644 index 65c58a9..0000000 Binary files a/example/university4/000008.png and /dev/null differ diff --git a/example/university4/000009.png b/example/university4/000009.png deleted file mode 100644 index bfae569..0000000 Binary files a/example/university4/000009.png and /dev/null differ diff --git a/example/university4/000010.png b/example/university4/000010.png deleted file mode 100644 index aa1173f..0000000 Binary files a/example/university4/000010.png and /dev/null differ diff --git a/example/university4/000011.png b/example/university4/000011.png deleted file mode 100644 index a87dbf6..0000000 Binary files a/example/university4/000011.png and /dev/null differ diff --git a/example/university4/000012.png b/example/university4/000012.png deleted file mode 100644 index fa62b2f..0000000 Binary files a/example/university4/000012.png and /dev/null differ diff --git a/example/university4/000013.png b/example/university4/000013.png deleted file mode 100644 index d7bc944..0000000 Binary files a/example/university4/000013.png and /dev/null differ diff --git a/example/university4/000014.png b/example/university4/000014.png deleted file mode 100644 index 8e727b1..0000000 Binary files a/example/university4/000014.png and /dev/null differ diff --git a/example/university4/000015.png b/example/university4/000015.png deleted file mode 100644 index 52b2e3a..0000000 Binary files a/example/university4/000015.png and /dev/null differ diff --git a/example/university4/000016.png b/example/university4/000016.png deleted file mode 100644 index 4d78cf3..0000000 Binary files a/example/university4/000016.png and /dev/null differ diff --git a/example/university4/000017.png b/example/university4/000017.png deleted file mode 100644 index 3143f88..0000000 Binary files a/example/university4/000017.png and /dev/null differ diff --git a/example/university4/000018.png b/example/university4/000018.png deleted file mode 100644 index 09863f2..0000000 Binary files a/example/university4/000018.png and /dev/null differ diff --git a/example/university4/000019.png b/example/university4/000019.png deleted file mode 100644 index d6d4d4e..0000000 Binary files a/example/university4/000019.png and /dev/null differ diff --git a/example/university4/000020.png b/example/university4/000020.png deleted file mode 100644 index 0b72d9a..0000000 Binary files a/example/university4/000020.png and /dev/null differ diff --git a/example/university4/000021.png b/example/university4/000021.png deleted file mode 100644 index d12ec2f..0000000 Binary files a/example/university4/000021.png and /dev/null differ diff --git a/example/university4/000022.png b/example/university4/000022.png deleted file mode 100644 index 13c8df8..0000000 Binary files a/example/university4/000022.png and /dev/null differ diff --git a/example/university4/000023.png b/example/university4/000023.png deleted file mode 100644 index 42b1ff1..0000000 Binary files a/example/university4/000023.png and /dev/null differ diff --git a/example/university4/000024.png b/example/university4/000024.png deleted file mode 100644 index c95dd7e..0000000 Binary files a/example/university4/000024.png and /dev/null differ diff --git a/example/university4/000025.png b/example/university4/000025.png deleted file mode 100644 index 83f780d..0000000 Binary files a/example/university4/000025.png and /dev/null differ diff --git a/example/university4/000026.png b/example/university4/000026.png deleted file mode 100644 index 1e4a7fe..0000000 Binary files a/example/university4/000026.png and /dev/null differ diff --git a/example/university4/000027.png b/example/university4/000027.png deleted file mode 100644 index e3e9592..0000000 Binary files a/example/university4/000027.png and /dev/null differ diff --git a/example/university4/000028.png b/example/university4/000028.png deleted file mode 100644 index f6e99e0..0000000 Binary files a/example/university4/000028.png and /dev/null differ diff --git a/example/university4/000029.png b/example/university4/000029.png deleted file mode 100644 index ca3028d..0000000 Binary files a/example/university4/000029.png and /dev/null differ diff --git a/example/university4/000030.png b/example/university4/000030.png deleted file mode 100644 index d201ac3..0000000 Binary files a/example/university4/000030.png and /dev/null differ diff --git a/example/university4/000031.png b/example/university4/000031.png deleted file mode 100644 index 5192b82..0000000 Binary files a/example/university4/000031.png and /dev/null differ diff --git a/example/university4/000032.png b/example/university4/000032.png deleted file mode 100644 index caa095b..0000000 Binary files a/example/university4/000032.png and /dev/null differ diff --git a/example/university4/000033.png b/example/university4/000033.png deleted file mode 100644 index d04cf0c..0000000 Binary files a/example/university4/000033.png and /dev/null differ diff --git a/example/university4/000034.png b/example/university4/000034.png deleted file mode 100644 index 4e744e0..0000000 Binary files a/example/university4/000034.png and /dev/null differ diff --git a/example/university4/000035.png b/example/university4/000035.png deleted file mode 100644 index c30e90e..0000000 Binary files a/example/university4/000035.png and /dev/null differ diff --git a/example/university4/000036.png b/example/university4/000036.png deleted file mode 100644 index ff67a96..0000000 Binary files a/example/university4/000036.png and /dev/null differ diff --git a/example/university4/000037.png b/example/university4/000037.png deleted file mode 100644 index b0ed397..0000000 Binary files a/example/university4/000037.png and /dev/null differ diff --git a/example/university4/000038.png b/example/university4/000038.png deleted file mode 100644 index 9f1b140..0000000 Binary files a/example/university4/000038.png and /dev/null differ diff --git a/example/university4/000039.png b/example/university4/000039.png deleted file mode 100644 index d6a9c7f..0000000 Binary files a/example/university4/000039.png and /dev/null differ diff --git a/example/university4/000040.png b/example/university4/000040.png deleted file mode 100644 index a70ca40..0000000 Binary files a/example/university4/000040.png and /dev/null differ diff --git a/example/university4/000041.png b/example/university4/000041.png deleted file mode 100644 index 5a3ce74..0000000 Binary files a/example/university4/000041.png and /dev/null differ diff --git a/example/university4/000042.png b/example/university4/000042.png deleted file mode 100644 index 214076c..0000000 Binary files a/example/university4/000042.png and /dev/null differ diff --git a/example/university4/000043.png b/example/university4/000043.png deleted file mode 100644 index d868f8d..0000000 Binary files a/example/university4/000043.png and /dev/null differ diff --git a/example/university4/000044.png b/example/university4/000044.png deleted file mode 100644 index 0205d3b..0000000 Binary files a/example/university4/000044.png and /dev/null differ diff --git a/example/university4/000045.png b/example/university4/000045.png deleted file mode 100644 index 5115518..0000000 Binary files a/example/university4/000045.png and /dev/null differ diff --git a/example/university4/000046.png b/example/university4/000046.png deleted file mode 100644 index 872a765..0000000 Binary files a/example/university4/000046.png and /dev/null differ diff --git a/example/university4/000047.png b/example/university4/000047.png deleted file mode 100644 index cc01a7b..0000000 Binary files a/example/university4/000047.png and /dev/null differ diff --git a/example/university4/000048.png b/example/university4/000048.png deleted file mode 100644 index 702be03..0000000 Binary files a/example/university4/000048.png and /dev/null differ diff --git a/example/university4/000049.png b/example/university4/000049.png deleted file mode 100644 index 352cc37..0000000 Binary files a/example/university4/000049.png and /dev/null differ diff --git a/example/university4/000050.png b/example/university4/000050.png deleted file mode 100644 index 0d29f47..0000000 Binary files a/example/university4/000050.png and /dev/null differ diff --git a/example/university4/000051.png b/example/university4/000051.png deleted file mode 100644 index 92db10c..0000000 Binary files a/example/university4/000051.png and /dev/null differ diff --git a/example/university4/000052.png b/example/university4/000052.png deleted file mode 100644 index f14b76c..0000000 Binary files a/example/university4/000052.png and /dev/null differ diff --git a/example/university4/000053.png b/example/university4/000053.png deleted file mode 100644 index bb03461..0000000 Binary files a/example/university4/000053.png and /dev/null differ diff --git a/example/university4/000054.png b/example/university4/000054.png deleted file mode 100644 index 94985d7..0000000 Binary files a/example/university4/000054.png and /dev/null differ diff --git a/example/university4/000055.png b/example/university4/000055.png deleted file mode 100644 index 29560ef..0000000 Binary files a/example/university4/000055.png and /dev/null differ diff --git a/example/university4/000056.png b/example/university4/000056.png deleted file mode 100644 index 3011bee..0000000 Binary files a/example/university4/000056.png and /dev/null differ diff --git a/example/university4/000057.png b/example/university4/000057.png deleted file mode 100644 index 4d021de..0000000 Binary files a/example/university4/000057.png and /dev/null differ diff --git a/example/university4/000058.png b/example/university4/000058.png deleted file mode 100644 index d38ac69..0000000 Binary files a/example/university4/000058.png and /dev/null differ diff --git a/example/university4/000059.png b/example/university4/000059.png deleted file mode 100644 index 387558f..0000000 Binary files a/example/university4/000059.png and /dev/null differ diff --git a/example/university4/000060.png b/example/university4/000060.png deleted file mode 100644 index 06c863d..0000000 Binary files a/example/university4/000060.png and /dev/null differ diff --git a/example/university4/000061.png b/example/university4/000061.png deleted file mode 100644 index c99f49c..0000000 Binary files a/example/university4/000061.png and /dev/null differ diff --git a/example/university4/000062.png b/example/university4/000062.png deleted file mode 100644 index cf55346..0000000 Binary files a/example/university4/000062.png and /dev/null differ diff --git a/example/university4/000063.png b/example/university4/000063.png deleted file mode 100644 index 0636e32..0000000 Binary files a/example/university4/000063.png and /dev/null differ diff --git a/example/university4/000064.png b/example/university4/000064.png deleted file mode 100644 index 0c2166f..0000000 Binary files a/example/university4/000064.png and /dev/null differ diff --git a/example/university4/000065.png b/example/university4/000065.png deleted file mode 100644 index acd8031..0000000 Binary files a/example/university4/000065.png and /dev/null differ diff --git a/example/university4/000066.png b/example/university4/000066.png deleted file mode 100644 index 2ce2cb7..0000000 Binary files a/example/university4/000066.png and /dev/null differ diff --git a/example/university4/000067.png b/example/university4/000067.png deleted file mode 100644 index e7c202d..0000000 Binary files a/example/university4/000067.png and /dev/null differ diff --git a/example/university4/000068.png b/example/university4/000068.png deleted file mode 100644 index a46ec7e..0000000 Binary files a/example/university4/000068.png and /dev/null differ diff --git a/example/university4/000069.png b/example/university4/000069.png deleted file mode 100644 index 2c06fae..0000000 Binary files a/example/university4/000069.png and /dev/null differ diff --git a/example/university4/000070.png b/example/university4/000070.png deleted file mode 100644 index 7e86826..0000000 Binary files a/example/university4/000070.png and /dev/null differ diff --git a/example/university4/000071.png b/example/university4/000071.png deleted file mode 100644 index 32090ff..0000000 Binary files a/example/university4/000071.png and /dev/null differ diff --git a/example/university4/000072.png b/example/university4/000072.png deleted file mode 100644 index ab44ae0..0000000 Binary files a/example/university4/000072.png and /dev/null differ diff --git a/example/university4/000073.png b/example/university4/000073.png deleted file mode 100644 index 6a20be0..0000000 Binary files a/example/university4/000073.png and /dev/null differ diff --git a/example/university4/000074.png b/example/university4/000074.png deleted file mode 100644 index 9d6977a..0000000 Binary files a/example/university4/000074.png and /dev/null differ diff --git a/example/university4/000075.png b/example/university4/000075.png deleted file mode 100644 index fa3abd2..0000000 Binary files a/example/university4/000075.png and /dev/null differ diff --git a/example/university4/000076.png b/example/university4/000076.png deleted file mode 100644 index 2a930f8..0000000 Binary files a/example/university4/000076.png and /dev/null differ diff --git a/example/university4/000077.png b/example/university4/000077.png deleted file mode 100644 index 3f5f762..0000000 Binary files a/example/university4/000077.png and /dev/null differ diff --git a/example/university4/000078.png b/example/university4/000078.png deleted file mode 100644 index 3d4ace5..0000000 Binary files a/example/university4/000078.png and /dev/null differ diff --git a/example/university4/000079.png b/example/university4/000079.png deleted file mode 100644 index 6cd66cb..0000000 Binary files a/example/university4/000079.png and /dev/null differ diff --git a/example/university4/000080.png b/example/university4/000080.png deleted file mode 100644 index 49ff930..0000000 Binary files a/example/university4/000080.png and /dev/null differ diff --git a/example/university4/000081.png b/example/university4/000081.png deleted file mode 100644 index db990ae..0000000 Binary files a/example/university4/000081.png and /dev/null differ diff --git a/example/university4/000082.png b/example/university4/000082.png deleted file mode 100644 index 0003db4..0000000 Binary files a/example/university4/000082.png and /dev/null differ diff --git a/example/university4/000083.png b/example/university4/000083.png deleted file mode 100644 index 53b0acd..0000000 Binary files a/example/university4/000083.png and /dev/null differ diff --git a/example/university4/000084.png b/example/university4/000084.png deleted file mode 100644 index e9249a6..0000000 Binary files a/example/university4/000084.png and /dev/null differ diff --git a/example/university4/000085.png b/example/university4/000085.png deleted file mode 100644 index d506632..0000000 Binary files a/example/university4/000085.png and /dev/null differ diff --git a/example/university4/000086.png b/example/university4/000086.png deleted file mode 100644 index a8a6c0e..0000000 Binary files a/example/university4/000086.png and /dev/null differ diff --git a/example/university4/000087.png b/example/university4/000087.png deleted file mode 100644 index 81faa38..0000000 Binary files a/example/university4/000087.png and /dev/null differ diff --git a/example/university4/000088.png b/example/university4/000088.png deleted file mode 100644 index c4ca1aa..0000000 Binary files a/example/university4/000088.png and /dev/null differ diff --git a/example/university4/000089.png b/example/university4/000089.png deleted file mode 100644 index 7bde782..0000000 Binary files a/example/university4/000089.png and /dev/null differ diff --git a/example/university4/000090.png b/example/university4/000090.png deleted file mode 100644 index 26fb611..0000000 Binary files a/example/university4/000090.png and /dev/null differ diff --git a/example/university4/000091.png b/example/university4/000091.png deleted file mode 100644 index 46c7424..0000000 Binary files a/example/university4/000091.png and /dev/null differ diff --git a/example/university4/000092.png b/example/university4/000092.png deleted file mode 100644 index b618292..0000000 Binary files a/example/university4/000092.png and /dev/null differ diff --git a/example/university4/000093.png b/example/university4/000093.png deleted file mode 100644 index b120c15..0000000 Binary files a/example/university4/000093.png and /dev/null differ diff --git a/example/university4/000094.png b/example/university4/000094.png deleted file mode 100644 index b194d6b..0000000 Binary files a/example/university4/000094.png and /dev/null differ diff --git a/example/university4/000095.png b/example/university4/000095.png deleted file mode 100644 index 714eeff..0000000 Binary files a/example/university4/000095.png and /dev/null differ diff --git a/example/university4/000096.png b/example/university4/000096.png deleted file mode 100644 index 71fd046..0000000 Binary files a/example/university4/000096.png and /dev/null differ diff --git a/example/university4/000097.png b/example/university4/000097.png deleted file mode 100644 index 218e6dc..0000000 Binary files a/example/university4/000097.png and /dev/null differ diff --git a/example/university4/000098.png b/example/university4/000098.png deleted file mode 100644 index 96fd910..0000000 Binary files a/example/university4/000098.png and /dev/null differ diff --git a/example/university4/000099.png b/example/university4/000099.png deleted file mode 100644 index fd09759..0000000 Binary files a/example/university4/000099.png and /dev/null differ diff --git a/example/university4/000100.png b/example/university4/000100.png deleted file mode 100644 index c74677c..0000000 Binary files a/example/university4/000100.png and /dev/null differ diff --git a/example/university4/000101.png b/example/university4/000101.png deleted file mode 100644 index c710589..0000000 Binary files a/example/university4/000101.png and /dev/null differ diff --git a/example/university4/000102.png b/example/university4/000102.png deleted file mode 100644 index b2975d6..0000000 Binary files a/example/university4/000102.png and /dev/null differ diff --git a/example/university4/000103.png b/example/university4/000103.png deleted file mode 100644 index 83cf303..0000000 Binary files a/example/university4/000103.png and /dev/null differ diff --git a/example/university4/000104.png b/example/university4/000104.png deleted file mode 100644 index 4dddc0f..0000000 Binary files a/example/university4/000104.png and /dev/null differ diff --git a/example/university4/000105.png b/example/university4/000105.png deleted file mode 100644 index cf56244..0000000 Binary files a/example/university4/000105.png and /dev/null differ diff --git a/example/university4/000106.png b/example/university4/000106.png deleted file mode 100644 index 14c025a..0000000 Binary files a/example/university4/000106.png and /dev/null differ diff --git a/example/university4/000107.png b/example/university4/000107.png deleted file mode 100644 index 54a2211..0000000 Binary files a/example/university4/000107.png and /dev/null differ diff --git a/example/university4/000108.png b/example/university4/000108.png deleted file mode 100644 index 07ef1bf..0000000 Binary files a/example/university4/000108.png and /dev/null differ diff --git a/example/university4/000109.png b/example/university4/000109.png deleted file mode 100644 index c99126e..0000000 Binary files a/example/university4/000109.png and /dev/null differ diff --git a/example/university4/000110.png b/example/university4/000110.png deleted file mode 100644 index 2de846b..0000000 Binary files a/example/university4/000110.png and /dev/null differ diff --git a/example/university4/000111.png b/example/university4/000111.png deleted file mode 100644 index 3391ec1..0000000 Binary files a/example/university4/000111.png and /dev/null differ diff --git a/example/university4/000112.png b/example/university4/000112.png deleted file mode 100644 index f5acac6..0000000 Binary files a/example/university4/000112.png and /dev/null differ diff --git a/example/university4/000113.png b/example/university4/000113.png deleted file mode 100644 index 6984d45..0000000 Binary files a/example/university4/000113.png and /dev/null differ diff --git a/example/university4/000114.png b/example/university4/000114.png deleted file mode 100644 index b874744..0000000 Binary files a/example/university4/000114.png and /dev/null differ diff --git a/example/university4/000115.png b/example/university4/000115.png deleted file mode 100644 index 04a1993..0000000 Binary files a/example/university4/000115.png and /dev/null differ diff --git a/example/university4/000116.png b/example/university4/000116.png deleted file mode 100644 index 4ee2a47..0000000 Binary files a/example/university4/000116.png and /dev/null differ diff --git a/example/university4/000117.png b/example/university4/000117.png deleted file mode 100644 index 65ddb41..0000000 Binary files a/example/university4/000117.png and /dev/null differ diff --git a/example/university4/000118.png b/example/university4/000118.png deleted file mode 100644 index d08fe18..0000000 Binary files a/example/university4/000118.png and /dev/null differ diff --git a/example/university4/000119.png b/example/university4/000119.png deleted file mode 100644 index 826045b..0000000 Binary files a/example/university4/000119.png and /dev/null differ diff --git a/example/university4/000120.png b/example/university4/000120.png deleted file mode 100644 index f109ed7..0000000 Binary files a/example/university4/000120.png and /dev/null differ diff --git a/example/university4/000121.png b/example/university4/000121.png deleted file mode 100644 index 7e048b1..0000000 Binary files a/example/university4/000121.png and /dev/null differ diff --git a/example/university4/000122.png b/example/university4/000122.png deleted file mode 100644 index c08cdd0..0000000 Binary files a/example/university4/000122.png and /dev/null differ diff --git a/example/university4/000123.png b/example/university4/000123.png deleted file mode 100644 index 44c01b4..0000000 Binary files a/example/university4/000123.png and /dev/null differ diff --git a/example/university4/000124.png b/example/university4/000124.png deleted file mode 100644 index c8b97c4..0000000 Binary files a/example/university4/000124.png and /dev/null differ diff --git a/example/university4/000125.png b/example/university4/000125.png deleted file mode 100644 index 597ccec..0000000 Binary files a/example/university4/000125.png and /dev/null differ diff --git a/example/university4/000126.png b/example/university4/000126.png deleted file mode 100644 index c5c19f6..0000000 Binary files a/example/university4/000126.png and /dev/null differ diff --git a/example/university4/000127.png b/example/university4/000127.png deleted file mode 100644 index 3ffb313..0000000 Binary files a/example/university4/000127.png and /dev/null differ diff --git a/example/university4/000128.png b/example/university4/000128.png deleted file mode 100644 index a739fd0..0000000 Binary files a/example/university4/000128.png and /dev/null differ diff --git a/example/university4/000129.png b/example/university4/000129.png deleted file mode 100644 index ad8ba54..0000000 Binary files a/example/university4/000129.png and /dev/null differ diff --git a/example/university4/000130.png b/example/university4/000130.png deleted file mode 100644 index 1355483..0000000 Binary files a/example/university4/000130.png and /dev/null differ diff --git a/example/university4/000131.png b/example/university4/000131.png deleted file mode 100644 index 400dc4d..0000000 Binary files a/example/university4/000131.png and /dev/null differ diff --git a/example/university4/000132.png b/example/university4/000132.png deleted file mode 100644 index f9cb6fb..0000000 Binary files a/example/university4/000132.png and /dev/null differ diff --git a/example/university4/000133.png b/example/university4/000133.png deleted file mode 100644 index bd5a1e3..0000000 Binary files a/example/university4/000133.png and /dev/null differ diff --git a/example/university4/000134.png b/example/university4/000134.png deleted file mode 100644 index 10136b2..0000000 Binary files a/example/university4/000134.png and /dev/null differ diff --git a/example/university4/000135.png b/example/university4/000135.png deleted file mode 100644 index 50b19c2..0000000 Binary files a/example/university4/000135.png and /dev/null differ diff --git a/example/university4/000136.png b/example/university4/000136.png deleted file mode 100644 index 24d9f94..0000000 Binary files a/example/university4/000136.png and /dev/null differ diff --git a/example/university4/000137.png b/example/university4/000137.png deleted file mode 100644 index 8409d1f..0000000 Binary files a/example/university4/000137.png and /dev/null differ diff --git a/example/university4/000138.png b/example/university4/000138.png deleted file mode 100644 index 02fe2ff..0000000 Binary files a/example/university4/000138.png and /dev/null differ diff --git a/example/university4/000139.png b/example/university4/000139.png deleted file mode 100644 index 2f4c0a1..0000000 Binary files a/example/university4/000139.png and /dev/null differ diff --git a/example/university4/000140.png b/example/university4/000140.png deleted file mode 100644 index 6e920ee..0000000 Binary files a/example/university4/000140.png and /dev/null differ diff --git a/example/university4/000141.png b/example/university4/000141.png deleted file mode 100644 index 7cbd6c7..0000000 Binary files a/example/university4/000141.png and /dev/null differ diff --git a/example/university4/000142.png b/example/university4/000142.png deleted file mode 100644 index c17152a..0000000 Binary files a/example/university4/000142.png and /dev/null differ diff --git a/example/university4/000143.png b/example/university4/000143.png deleted file mode 100644 index abbb7e3..0000000 Binary files a/example/university4/000143.png and /dev/null differ diff --git a/example/university4/000144.png b/example/university4/000144.png deleted file mode 100644 index 75a9a5a..0000000 Binary files a/example/university4/000144.png and /dev/null differ diff --git a/example/university4/000145.png b/example/university4/000145.png deleted file mode 100644 index 563d6f5..0000000 Binary files a/example/university4/000145.png and /dev/null differ diff --git a/example/university4/000146.png b/example/university4/000146.png deleted file mode 100644 index 86995d6..0000000 Binary files a/example/university4/000146.png and /dev/null differ diff --git a/example/university4/000147.png b/example/university4/000147.png deleted file mode 100644 index c5ec839..0000000 Binary files a/example/university4/000147.png and /dev/null differ diff --git a/example/university4/000148.png b/example/university4/000148.png deleted file mode 100644 index 89aacf5..0000000 Binary files a/example/university4/000148.png and /dev/null differ diff --git a/example/university4/000149.png b/example/university4/000149.png deleted file mode 100644 index adba0a3..0000000 Binary files a/example/university4/000149.png and /dev/null differ diff --git a/example/university4/000150.png b/example/university4/000150.png deleted file mode 100644 index 305666e..0000000 Binary files a/example/university4/000150.png and /dev/null differ diff --git a/example/university4/000151.png b/example/university4/000151.png deleted file mode 100644 index 5bb00b5..0000000 Binary files a/example/university4/000151.png and /dev/null differ diff --git a/example/university4/000152.png b/example/university4/000152.png deleted file mode 100644 index 09a6696..0000000 Binary files a/example/university4/000152.png and /dev/null differ diff --git a/example/university4/000153.png b/example/university4/000153.png deleted file mode 100644 index 84e4566..0000000 Binary files a/example/university4/000153.png and /dev/null differ diff --git a/example/university4/000154.png b/example/university4/000154.png deleted file mode 100644 index 417b812..0000000 Binary files a/example/university4/000154.png and /dev/null differ diff --git a/example/university4/000155.png b/example/university4/000155.png deleted file mode 100644 index 3d40cf9..0000000 Binary files a/example/university4/000155.png and /dev/null differ diff --git a/example/university4/000156.png b/example/university4/000156.png deleted file mode 100644 index 6e5f449..0000000 Binary files a/example/university4/000156.png and /dev/null differ diff --git a/example/university4/000157.png b/example/university4/000157.png deleted file mode 100644 index a2a215d..0000000 Binary files a/example/university4/000157.png and /dev/null differ diff --git a/example/university4/000158.png b/example/university4/000158.png deleted file mode 100644 index 5976261..0000000 Binary files a/example/university4/000158.png and /dev/null differ diff --git a/example/university4/000159.png b/example/university4/000159.png deleted file mode 100644 index 55c5f8f..0000000 Binary files a/example/university4/000159.png and /dev/null differ diff --git a/example/university4/000160.png b/example/university4/000160.png deleted file mode 100644 index 790e45e..0000000 Binary files a/example/university4/000160.png and /dev/null differ diff --git a/example/university4/000161.png b/example/university4/000161.png deleted file mode 100644 index 6a96c21..0000000 Binary files a/example/university4/000161.png and /dev/null differ diff --git a/example/university4/000162.png b/example/university4/000162.png deleted file mode 100644 index be1d04f..0000000 Binary files a/example/university4/000162.png and /dev/null differ diff --git a/example/university4/000163.png b/example/university4/000163.png deleted file mode 100644 index 98b067d..0000000 Binary files a/example/university4/000163.png and /dev/null differ diff --git a/example/university4/000164.png b/example/university4/000164.png deleted file mode 100644 index b199885..0000000 Binary files a/example/university4/000164.png and /dev/null differ diff --git a/example/university4/000165.png b/example/university4/000165.png deleted file mode 100644 index 38ce1f8..0000000 Binary files a/example/university4/000165.png and /dev/null differ diff --git a/example/university4/000166.png b/example/university4/000166.png deleted file mode 100644 index 4211256..0000000 Binary files a/example/university4/000166.png and /dev/null differ diff --git a/example/university4/000167.png b/example/university4/000167.png deleted file mode 100644 index 0252bc7..0000000 Binary files a/example/university4/000167.png and /dev/null differ diff --git a/example/university4/000168.png b/example/university4/000168.png deleted file mode 100644 index 512b8d3..0000000 Binary files a/example/university4/000168.png and /dev/null differ diff --git a/example/university4/000169.png b/example/university4/000169.png deleted file mode 100644 index c5f5438..0000000 Binary files a/example/university4/000169.png and /dev/null differ diff --git a/example/university4/000170.png b/example/university4/000170.png deleted file mode 100644 index 2c47b08..0000000 Binary files a/example/university4/000170.png and /dev/null differ diff --git a/example/university4/000171.png b/example/university4/000171.png deleted file mode 100644 index 3ac69be..0000000 Binary files a/example/university4/000171.png and /dev/null differ diff --git a/example/university4/000172.png b/example/university4/000172.png deleted file mode 100644 index 9d1d4b4..0000000 Binary files a/example/university4/000172.png and /dev/null differ diff --git a/example/university4/000173.png b/example/university4/000173.png deleted file mode 100644 index ee6c322..0000000 Binary files a/example/university4/000173.png and /dev/null differ diff --git a/example/university4/000174.png b/example/university4/000174.png deleted file mode 100644 index bb74458..0000000 Binary files a/example/university4/000174.png and /dev/null differ diff --git a/example/university4/000175.png b/example/university4/000175.png deleted file mode 100644 index c97bf63..0000000 Binary files a/example/university4/000175.png and /dev/null differ diff --git a/example/university4/000176.png b/example/university4/000176.png deleted file mode 100644 index 7314fc9..0000000 Binary files a/example/university4/000176.png and /dev/null differ diff --git a/example/university4/000177.png b/example/university4/000177.png deleted file mode 100644 index 6701520..0000000 Binary files a/example/university4/000177.png and /dev/null differ diff --git a/example/university4/000178.png b/example/university4/000178.png deleted file mode 100644 index 995b9e6..0000000 Binary files a/example/university4/000178.png and /dev/null differ diff --git a/example/university4/000179.png b/example/university4/000179.png deleted file mode 100644 index d3edfe9..0000000 Binary files a/example/university4/000179.png and /dev/null differ diff --git a/example/university4/000180.png b/example/university4/000180.png deleted file mode 100644 index c10567d..0000000 Binary files a/example/university4/000180.png and /dev/null differ diff --git a/example/university4/000181.png b/example/university4/000181.png deleted file mode 100644 index 0524c6a..0000000 Binary files a/example/university4/000181.png and /dev/null differ diff --git a/example/university4/000182.png b/example/university4/000182.png deleted file mode 100644 index 336c8de..0000000 Binary files a/example/university4/000182.png and /dev/null differ diff --git a/example/university4/000183.png b/example/university4/000183.png deleted file mode 100644 index 2b681c8..0000000 Binary files a/example/university4/000183.png and /dev/null differ diff --git a/example/university4/000184.png b/example/university4/000184.png deleted file mode 100644 index 081d827..0000000 Binary files a/example/university4/000184.png and /dev/null differ diff --git a/example/university4/000185.png b/example/university4/000185.png deleted file mode 100644 index fec6722..0000000 Binary files a/example/university4/000185.png and /dev/null differ diff --git a/example/university4/000186.png b/example/university4/000186.png deleted file mode 100644 index 710b385..0000000 Binary files a/example/university4/000186.png and /dev/null differ diff --git a/example/university4/000187.png b/example/university4/000187.png deleted file mode 100644 index 76cfe0a..0000000 Binary files a/example/university4/000187.png and /dev/null differ diff --git a/example/university4/000188.png b/example/university4/000188.png deleted file mode 100644 index 7368e90..0000000 Binary files a/example/university4/000188.png and /dev/null differ diff --git a/example/university4/000189.png b/example/university4/000189.png deleted file mode 100644 index 45ce3c9..0000000 Binary files a/example/university4/000189.png and /dev/null differ diff --git a/example/university4/000190.png b/example/university4/000190.png deleted file mode 100644 index b1193db..0000000 Binary files a/example/university4/000190.png and /dev/null differ diff --git a/example/university4/000191.png b/example/university4/000191.png deleted file mode 100644 index 7e6febb..0000000 Binary files a/example/university4/000191.png and /dev/null differ diff --git a/example/university4/000192.png b/example/university4/000192.png deleted file mode 100644 index 1071b36..0000000 Binary files a/example/university4/000192.png and /dev/null differ diff --git a/example/university4/000193.png b/example/university4/000193.png deleted file mode 100644 index 61776c8..0000000 Binary files a/example/university4/000193.png and /dev/null differ diff --git a/example/university4/000194.png b/example/university4/000194.png deleted file mode 100644 index d82c4ce..0000000 Binary files a/example/university4/000194.png and /dev/null differ diff --git a/example/university4/000195.png b/example/university4/000195.png deleted file mode 100644 index ff9e5f3..0000000 Binary files a/example/university4/000195.png and /dev/null differ diff --git a/example/university4/000196.png b/example/university4/000196.png deleted file mode 100644 index 6625646..0000000 Binary files a/example/university4/000196.png and /dev/null differ diff --git a/example/university4/000197.png b/example/university4/000197.png deleted file mode 100644 index 7422717..0000000 Binary files a/example/university4/000197.png and /dev/null differ diff --git a/example/university4/000198.png b/example/university4/000198.png deleted file mode 100644 index 7cf4787..0000000 Binary files a/example/university4/000198.png and /dev/null differ diff --git a/example/university4/000199.png b/example/university4/000199.png deleted file mode 100644 index 9be56fc..0000000 Binary files a/example/university4/000199.png and /dev/null differ diff --git a/example/university4/000200.png b/example/university4/000200.png deleted file mode 100644 index b2abb31..0000000 Binary files a/example/university4/000200.png and /dev/null differ diff --git a/example/university4/000201.png b/example/university4/000201.png deleted file mode 100644 index 3ed206d..0000000 Binary files a/example/university4/000201.png and /dev/null differ diff --git a/example/university4/000202.png b/example/university4/000202.png deleted file mode 100644 index f2679f2..0000000 Binary files a/example/university4/000202.png and /dev/null differ diff --git a/example/university4/000203.png b/example/university4/000203.png deleted file mode 100644 index c271cb2..0000000 Binary files a/example/university4/000203.png and /dev/null differ diff --git a/example/university4/000204.png b/example/university4/000204.png deleted file mode 100644 index d5df835..0000000 Binary files a/example/university4/000204.png and /dev/null differ diff --git a/example/university4/000205.png b/example/university4/000205.png deleted file mode 100644 index 7a93311..0000000 Binary files a/example/university4/000205.png and /dev/null differ diff --git a/example/university4/000206.png b/example/university4/000206.png deleted file mode 100644 index 5352c71..0000000 Binary files a/example/university4/000206.png and /dev/null differ diff --git a/example/university4/000207.png b/example/university4/000207.png deleted file mode 100644 index b0f4773..0000000 Binary files a/example/university4/000207.png and /dev/null differ diff --git a/example/university4/000208.png b/example/university4/000208.png deleted file mode 100644 index ea8d2e2..0000000 Binary files a/example/university4/000208.png and /dev/null differ diff --git a/example/university4/000209.png b/example/university4/000209.png deleted file mode 100644 index abe25b3..0000000 Binary files a/example/university4/000209.png and /dev/null differ diff --git a/example/university4/000210.png b/example/university4/000210.png deleted file mode 100644 index a757854..0000000 Binary files a/example/university4/000210.png and /dev/null differ diff --git a/example/university4/000211.png b/example/university4/000211.png deleted file mode 100644 index c3447bd..0000000 Binary files a/example/university4/000211.png and /dev/null differ diff --git a/example/university4/000212.png b/example/university4/000212.png deleted file mode 100644 index 4e6d065..0000000 Binary files a/example/university4/000212.png and /dev/null differ diff --git a/example/university4/000213.png b/example/university4/000213.png deleted file mode 100644 index 2be1c3c..0000000 Binary files a/example/university4/000213.png and /dev/null differ diff --git a/example/university4/000214.png b/example/university4/000214.png deleted file mode 100644 index 937bfc8..0000000 Binary files a/example/university4/000214.png and /dev/null differ diff --git a/example/university4/000215.png b/example/university4/000215.png deleted file mode 100644 index 21c8607..0000000 Binary files a/example/university4/000215.png and /dev/null differ diff --git a/example/university4/000216.png b/example/university4/000216.png deleted file mode 100644 index 909a4c1..0000000 Binary files a/example/university4/000216.png and /dev/null differ diff --git a/example/university4/000217.png b/example/university4/000217.png deleted file mode 100644 index ca57110..0000000 Binary files a/example/university4/000217.png and /dev/null differ diff --git a/example/university4/000218.png b/example/university4/000218.png deleted file mode 100644 index ffe57f2..0000000 Binary files a/example/university4/000218.png and /dev/null differ diff --git a/example/university4/000219.png b/example/university4/000219.png deleted file mode 100644 index 94b388e..0000000 Binary files a/example/university4/000219.png and /dev/null differ diff --git a/example/university4/000220.png b/example/university4/000220.png deleted file mode 100644 index b36ce45..0000000 Binary files a/example/university4/000220.png and /dev/null differ diff --git a/example/university4/000221.png b/example/university4/000221.png deleted file mode 100644 index f81c3b7..0000000 Binary files a/example/university4/000221.png and /dev/null differ diff --git a/example/university4/000222.png b/example/university4/000222.png deleted file mode 100644 index afdf329..0000000 Binary files a/example/university4/000222.png and /dev/null differ diff --git a/example/university4/000223.png b/example/university4/000223.png deleted file mode 100644 index 31c115d..0000000 Binary files a/example/university4/000223.png and /dev/null differ diff --git a/example/university4/000224.png b/example/university4/000224.png deleted file mode 100644 index 388b321..0000000 Binary files a/example/university4/000224.png and /dev/null differ diff --git a/example/university4/000225.png b/example/university4/000225.png deleted file mode 100644 index 6efeed9..0000000 Binary files a/example/university4/000225.png and /dev/null differ diff --git a/example/university4/000226.png b/example/university4/000226.png deleted file mode 100644 index bb5f6b7..0000000 Binary files a/example/university4/000226.png and /dev/null differ diff --git a/example/university4/000227.png b/example/university4/000227.png deleted file mode 100644 index b258be0..0000000 Binary files a/example/university4/000227.png and /dev/null differ diff --git a/example/university4/000228.png b/example/university4/000228.png deleted file mode 100644 index 8a3cd2d..0000000 Binary files a/example/university4/000228.png and /dev/null differ diff --git a/example/university4/000229.png b/example/university4/000229.png deleted file mode 100644 index d76b01a..0000000 Binary files a/example/university4/000229.png and /dev/null differ diff --git a/example/university4/000230.png b/example/university4/000230.png deleted file mode 100644 index a501208..0000000 Binary files a/example/university4/000230.png and /dev/null differ diff --git a/example/university4/000231.png b/example/university4/000231.png deleted file mode 100644 index ac9ac31..0000000 Binary files a/example/university4/000231.png and /dev/null differ diff --git a/example/university4/000232.png b/example/university4/000232.png deleted file mode 100644 index 025b357..0000000 Binary files a/example/university4/000232.png and /dev/null differ diff --git a/example/university4/000233.png b/example/university4/000233.png deleted file mode 100644 index 2188565..0000000 Binary files a/example/university4/000233.png and /dev/null differ diff --git a/example/university4/000234.png b/example/university4/000234.png deleted file mode 100644 index 746fee6..0000000 Binary files a/example/university4/000234.png and /dev/null differ diff --git a/example/university4/000235.png b/example/university4/000235.png deleted file mode 100644 index d552126..0000000 Binary files a/example/university4/000235.png and /dev/null differ diff --git a/example/university4/000236.png b/example/university4/000236.png deleted file mode 100644 index c22a65b..0000000 Binary files a/example/university4/000236.png and /dev/null differ diff --git a/example/university4/000237.png b/example/university4/000237.png deleted file mode 100644 index 1f6cad5..0000000 Binary files a/example/university4/000237.png and /dev/null differ diff --git a/example/university4/000238.png b/example/university4/000238.png deleted file mode 100644 index 2572925..0000000 Binary files a/example/university4/000238.png and /dev/null differ diff --git a/example/university4/000239.png b/example/university4/000239.png deleted file mode 100644 index ae0e7c6..0000000 Binary files a/example/university4/000239.png and /dev/null differ diff --git a/example/university4/000240.png b/example/university4/000240.png deleted file mode 100644 index b0e6745..0000000 Binary files a/example/university4/000240.png and /dev/null differ diff --git a/example/university4/000241.png b/example/university4/000241.png deleted file mode 100644 index 9c1a881..0000000 Binary files a/example/university4/000241.png and /dev/null differ diff --git a/example/university4/000242.png b/example/university4/000242.png deleted file mode 100644 index 3b70e92..0000000 Binary files a/example/university4/000242.png and /dev/null differ diff --git a/example/university4/000243.png b/example/university4/000243.png deleted file mode 100644 index ebb8b1d..0000000 Binary files a/example/university4/000243.png and /dev/null differ diff --git a/example/university4/000244.png b/example/university4/000244.png deleted file mode 100644 index 58bc2c7..0000000 Binary files a/example/university4/000244.png and /dev/null differ diff --git a/example/university4/000245.png b/example/university4/000245.png deleted file mode 100644 index 1f6b11a..0000000 Binary files a/example/university4/000245.png and /dev/null differ diff --git a/example/university4/000246.png b/example/university4/000246.png deleted file mode 100644 index 3c1bb89..0000000 Binary files a/example/university4/000246.png and /dev/null differ diff --git a/example/university4/000247.png b/example/university4/000247.png deleted file mode 100644 index dfba03c..0000000 Binary files a/example/university4/000247.png and /dev/null differ diff --git a/example/university4/000248.png b/example/university4/000248.png deleted file mode 100644 index ad14029..0000000 Binary files a/example/university4/000248.png and /dev/null differ diff --git a/example/university4/000249.png b/example/university4/000249.png deleted file mode 100644 index c20e5ff..0000000 Binary files a/example/university4/000249.png and /dev/null differ diff --git a/example/university4/000250.png b/example/university4/000250.png deleted file mode 100644 index b3a11d6..0000000 Binary files a/example/university4/000250.png and /dev/null differ diff --git a/example/university4/000251.png b/example/university4/000251.png deleted file mode 100644 index 459f2c6..0000000 Binary files a/example/university4/000251.png and /dev/null differ diff --git a/example/university4/000252.png b/example/university4/000252.png deleted file mode 100644 index 6f9288a..0000000 Binary files a/example/university4/000252.png and /dev/null differ diff --git a/example/university4/000253.png b/example/university4/000253.png deleted file mode 100644 index a5a41c3..0000000 Binary files a/example/university4/000253.png and /dev/null differ diff --git a/example/university4/000254.png b/example/university4/000254.png deleted file mode 100644 index e555320..0000000 Binary files a/example/university4/000254.png and /dev/null differ diff --git a/example/university4/000255.png b/example/university4/000255.png deleted file mode 100644 index 05aaf31..0000000 Binary files a/example/university4/000255.png and /dev/null differ diff --git a/example/university4/000256.png b/example/university4/000256.png deleted file mode 100644 index b862b84..0000000 Binary files a/example/university4/000256.png and /dev/null differ diff --git a/example/university4/000257.png b/example/university4/000257.png deleted file mode 100644 index 4af3840..0000000 Binary files a/example/university4/000257.png and /dev/null differ diff --git a/example/university4/000258.png b/example/university4/000258.png deleted file mode 100644 index d8ab24f..0000000 Binary files a/example/university4/000258.png and /dev/null differ diff --git a/example/university4/000259.png b/example/university4/000259.png deleted file mode 100644 index 41d0017..0000000 Binary files a/example/university4/000259.png and /dev/null differ diff --git a/example/university4/000260.png b/example/university4/000260.png deleted file mode 100644 index c262b18..0000000 Binary files a/example/university4/000260.png and /dev/null differ diff --git a/example/university4/000261.png b/example/university4/000261.png deleted file mode 100644 index 38c0521..0000000 Binary files a/example/university4/000261.png and /dev/null differ diff --git a/example/university4/000262.png b/example/university4/000262.png deleted file mode 100644 index b4d8da7..0000000 Binary files a/example/university4/000262.png and /dev/null differ diff --git a/example/university4/000263.png b/example/university4/000263.png deleted file mode 100644 index 4be1065..0000000 Binary files a/example/university4/000263.png and /dev/null differ diff --git a/example/university4/000264.png b/example/university4/000264.png deleted file mode 100644 index f4401f8..0000000 Binary files a/example/university4/000264.png and /dev/null differ diff --git a/example/university4/000265.png b/example/university4/000265.png deleted file mode 100644 index e32b80a..0000000 Binary files a/example/university4/000265.png and /dev/null differ diff --git a/example/university4/000266.png b/example/university4/000266.png deleted file mode 100644 index def0f94..0000000 Binary files a/example/university4/000266.png and /dev/null differ diff --git a/example/university4/000267.png b/example/university4/000267.png deleted file mode 100644 index f59d331..0000000 Binary files a/example/university4/000267.png and /dev/null differ diff --git a/example/university4/000268.png b/example/university4/000268.png deleted file mode 100644 index d7624a5..0000000 Binary files a/example/university4/000268.png and /dev/null differ diff --git a/example/university4/000269.png b/example/university4/000269.png deleted file mode 100644 index 065ce9b..0000000 Binary files a/example/university4/000269.png and /dev/null differ diff --git a/example/university4/000270.png b/example/university4/000270.png deleted file mode 100644 index 796e6f9..0000000 Binary files a/example/university4/000270.png and /dev/null differ diff --git a/example/university4/000271.png b/example/university4/000271.png deleted file mode 100644 index 444005f..0000000 Binary files a/example/university4/000271.png and /dev/null differ diff --git a/example/university4/000272.png b/example/university4/000272.png deleted file mode 100644 index 29ebf8e..0000000 Binary files a/example/university4/000272.png and /dev/null differ diff --git a/example/university4/000273.png b/example/university4/000273.png deleted file mode 100644 index ff22a35..0000000 Binary files a/example/university4/000273.png and /dev/null differ diff --git a/example/university4/000274.png b/example/university4/000274.png deleted file mode 100644 index 112623d..0000000 Binary files a/example/university4/000274.png and /dev/null differ diff --git a/example/university4/000275.png b/example/university4/000275.png deleted file mode 100644 index 805183d..0000000 Binary files a/example/university4/000275.png and /dev/null differ diff --git a/example/university4/000276.png b/example/university4/000276.png deleted file mode 100644 index 2b5c0ec..0000000 Binary files a/example/university4/000276.png and /dev/null differ diff --git a/example/university4/000277.png b/example/university4/000277.png deleted file mode 100644 index e12c505..0000000 Binary files a/example/university4/000277.png and /dev/null differ diff --git a/example/university4/000278.png b/example/university4/000278.png deleted file mode 100644 index 44ad271..0000000 Binary files a/example/university4/000278.png and /dev/null differ diff --git a/example/university4/000279.png b/example/university4/000279.png deleted file mode 100644 index e0908ac..0000000 Binary files a/example/university4/000279.png and /dev/null differ diff --git a/example/university4/000280.png b/example/university4/000280.png deleted file mode 100644 index 41c57bc..0000000 Binary files a/example/university4/000280.png and /dev/null differ diff --git a/example/university4/000281.png b/example/university4/000281.png deleted file mode 100644 index 1eb312d..0000000 Binary files a/example/university4/000281.png and /dev/null differ diff --git a/example/university4/000282.png b/example/university4/000282.png deleted file mode 100644 index e42cbb9..0000000 Binary files a/example/university4/000282.png and /dev/null differ diff --git a/example/university4/000283.png b/example/university4/000283.png deleted file mode 100644 index 05c642c..0000000 Binary files a/example/university4/000283.png and /dev/null differ diff --git a/example/university4/000284.png b/example/university4/000284.png deleted file mode 100644 index 93c60fd..0000000 Binary files a/example/university4/000284.png and /dev/null differ diff --git a/example/university4/000285.png b/example/university4/000285.png deleted file mode 100644 index 24c453e..0000000 Binary files a/example/university4/000285.png and /dev/null differ diff --git a/example/university4/000286.png b/example/university4/000286.png deleted file mode 100644 index eaaaef7..0000000 Binary files a/example/university4/000286.png and /dev/null differ diff --git a/example/university4/000287.png b/example/university4/000287.png deleted file mode 100644 index 6330bcc..0000000 Binary files a/example/university4/000287.png and /dev/null differ diff --git a/example/university4/000288.png b/example/university4/000288.png deleted file mode 100644 index 697d35e..0000000 Binary files a/example/university4/000288.png and /dev/null differ diff --git a/example/university4/000289.png b/example/university4/000289.png deleted file mode 100644 index 1c160d7..0000000 Binary files a/example/university4/000289.png and /dev/null differ diff --git a/example/university4/000290.png b/example/university4/000290.png deleted file mode 100644 index 2ba4b0e..0000000 Binary files a/example/university4/000290.png and /dev/null differ diff --git a/example/university4/000291.png b/example/university4/000291.png deleted file mode 100644 index dc337fb..0000000 Binary files a/example/university4/000291.png and /dev/null differ diff --git a/example/university4/000292.png b/example/university4/000292.png deleted file mode 100644 index 53a6d5a..0000000 Binary files a/example/university4/000292.png and /dev/null differ diff --git a/example/university4/000293.png b/example/university4/000293.png deleted file mode 100644 index 38a2232..0000000 Binary files a/example/university4/000293.png and /dev/null differ diff --git a/example/university4/000294.png b/example/university4/000294.png deleted file mode 100644 index ed9c97a..0000000 Binary files a/example/university4/000294.png and /dev/null differ diff --git a/example/university4/000295.png b/example/university4/000295.png deleted file mode 100644 index 4a5edba..0000000 Binary files a/example/university4/000295.png and /dev/null differ diff --git a/example/university4/000296.png b/example/university4/000296.png deleted file mode 100644 index fa45691..0000000 Binary files a/example/university4/000296.png and /dev/null differ diff --git a/example/university4/000297.png b/example/university4/000297.png deleted file mode 100644 index 4a6287e..0000000 Binary files a/example/university4/000297.png and /dev/null differ diff --git a/example/university4/000298.png b/example/university4/000298.png deleted file mode 100644 index ff906c2..0000000 Binary files a/example/university4/000298.png and /dev/null differ diff --git a/example/university4/000299.png b/example/university4/000299.png deleted file mode 100644 index d11558b..0000000 Binary files a/example/university4/000299.png and /dev/null differ diff --git a/example/university4/000300.png b/example/university4/000300.png deleted file mode 100644 index f8bad8a..0000000 Binary files a/example/university4/000300.png and /dev/null differ diff --git a/example/university4/000301.png b/example/university4/000301.png deleted file mode 100644 index 80a24f2..0000000 Binary files a/example/university4/000301.png and /dev/null differ diff --git a/example/university4/000302.png b/example/university4/000302.png deleted file mode 100644 index 9784d0a..0000000 Binary files a/example/university4/000302.png and /dev/null differ diff --git a/example/university4/000303.png b/example/university4/000303.png deleted file mode 100644 index f9aa31d..0000000 Binary files a/example/university4/000303.png and /dev/null differ diff --git a/example/university4/000304.png b/example/university4/000304.png deleted file mode 100644 index c4459f2..0000000 Binary files a/example/university4/000304.png and /dev/null differ diff --git a/example/university4/000305.png b/example/university4/000305.png deleted file mode 100644 index d8196f3..0000000 Binary files a/example/university4/000305.png and /dev/null differ diff --git a/example/university4/000306.png b/example/university4/000306.png deleted file mode 100644 index 0dc332a..0000000 Binary files a/example/university4/000306.png and /dev/null differ diff --git a/example/university4/000307.png b/example/university4/000307.png deleted file mode 100644 index 116b1a3..0000000 Binary files a/example/university4/000307.png and /dev/null differ diff --git a/example/university4/000308.png b/example/university4/000308.png deleted file mode 100644 index f6a7942..0000000 Binary files a/example/university4/000308.png and /dev/null differ diff --git a/example/university4/000309.png b/example/university4/000309.png deleted file mode 100644 index 7287d53..0000000 Binary files a/example/university4/000309.png and /dev/null differ diff --git a/example/university4/000310.png b/example/university4/000310.png deleted file mode 100644 index 7ab83f7..0000000 Binary files a/example/university4/000310.png and /dev/null differ diff --git a/example/university4/000311.png b/example/university4/000311.png deleted file mode 100644 index 432401a..0000000 Binary files a/example/university4/000311.png and /dev/null differ diff --git a/example/university4/000312.png b/example/university4/000312.png deleted file mode 100644 index 285862d..0000000 Binary files a/example/university4/000312.png and /dev/null differ diff --git a/example/university4/000313.png b/example/university4/000313.png deleted file mode 100644 index 98516f2..0000000 Binary files a/example/university4/000313.png and /dev/null differ diff --git a/example/university4/000314.png b/example/university4/000314.png deleted file mode 100644 index 67de51f..0000000 Binary files a/example/university4/000314.png and /dev/null differ diff --git a/example/university4/000315.png b/example/university4/000315.png deleted file mode 100644 index d91be62..0000000 Binary files a/example/university4/000315.png and /dev/null differ diff --git a/example/university4/000316.png b/example/university4/000316.png deleted file mode 100644 index 39363bd..0000000 Binary files a/example/university4/000316.png and /dev/null differ diff --git a/example/university4/000317.png b/example/university4/000317.png deleted file mode 100644 index d17d873..0000000 Binary files a/example/university4/000317.png and /dev/null differ diff --git a/example/university4/000318.png b/example/university4/000318.png deleted file mode 100644 index 9303f02..0000000 Binary files a/example/university4/000318.png and /dev/null differ diff --git a/example/university4/000319.png b/example/university4/000319.png deleted file mode 100644 index b2cdc7c..0000000 Binary files a/example/university4/000319.png and /dev/null differ diff --git a/example/university4/000320.png b/example/university4/000320.png deleted file mode 100644 index 26208c6..0000000 Binary files a/example/university4/000320.png and /dev/null differ diff --git a/example/university4/000321.png b/example/university4/000321.png deleted file mode 100644 index 0c293b0..0000000 Binary files a/example/university4/000321.png and /dev/null differ diff --git a/example/university4/000322.png b/example/university4/000322.png deleted file mode 100644 index 32461d0..0000000 Binary files a/example/university4/000322.png and /dev/null differ diff --git a/example/university4/000323.png b/example/university4/000323.png deleted file mode 100644 index f67c42b..0000000 Binary files a/example/university4/000323.png and /dev/null differ diff --git a/lingbot_map/heads/camera_head.py b/lingbot_map/heads/camera_head.py index 1f97711..7504e67 100644 --- a/lingbot_map/heads/camera_head.py +++ b/lingbot_map/heads/camera_head.py @@ -272,23 +272,27 @@ class CameraCausalHead(nn.Module): self.kv_cache = None self.frame_idx = 0 - def forward(self, aggregated_tokens_list: list, mask=None, num_iterations: int = 4, causal_inference=False, num_frame_per_block=1, num_frame_for_scale=-1, sliding_window_size=None, **kwargs) -> list: + def forward(self, aggregated_tokens_list: list, mask=None, num_iterations: int = None, causal_inference=False, num_frame_per_block=1, num_frame_for_scale=-1, sliding_window_size=None, **kwargs) -> list: """ Forward pass to predict camera parameters. Args: aggregated_tokens_list (list): List of token tensors from the network; the last tensor is used for prediction. - num_iterations (int, optional): Number of iterative refinement steps. Defaults to 4. + num_iterations (int, optional): Number of iterative refinement steps. + If None, falls back to self.num_iterations (set at construction). sliding_window_size (int, optional): Override the sliding window size for this forward pass. If None, use the default self.sliding_window_size. Returns: list: A list of predicted camera encodings (post-activation) from each iteration. """ + if num_iterations is None: + num_iterations = self.num_iterations + # Use passed sliding_window_size if provided, otherwise use default effective_sliding_window_size = sliding_window_size if sliding_window_size is not None else self.sliding_window_size - + # Use tokens from the last block for camera prediction. tokens = aggregated_tokens_list[-1] @@ -299,12 +303,12 @@ class CameraCausalHead(nn.Module): if causal_inference: if self.kv_cache is None: self.kv_cache = [] - for i in range(self.num_iterations): + for i in range(num_iterations): self.kv_cache.append({"_skip_append": False}) for j in range(self.trunk_depth): self.kv_cache[i][f"k_{j}"] = None self.kv_cache[i][f"v_{j}"] = None - + pred_pose_enc_list = self.trunk_fn(pose_tokens, mask, num_iterations, num_frame_per_block=num_frame_per_block, num_frame_for_scale=num_frame_for_scale, sliding_window_size=effective_sliding_window_size) return pred_pose_enc_list diff --git a/lingbot_map/models/gct_stream.py b/lingbot_map/models/gct_stream.py index 030a090..671543d 100644 --- a/lingbot_map/models/gct_stream.py +++ b/lingbot_map/models/gct_stream.py @@ -75,6 +75,8 @@ class GCTStream(GCTBase): use_sdpa: bool = False, # If True, use SDPA (no flashinfer needed); default: FlashInfer # Gradient checkpointing use_gradient_checkpoint: bool = True, + # Camera head iterative refinement (lower = faster inference; default 4) + camera_num_iterations: int = 4, ): """ Initialize GCTStream. @@ -123,6 +125,7 @@ class GCTStream(GCTBase): self.kv_cache_include_scale_frames = kv_cache_include_scale_frames self.kv_cache_camera_only = kv_cache_camera_only self.use_sdpa = use_sdpa + self.camera_num_iterations = camera_num_iterations # Call base class __init__ (will call _build_aggregator) super().__init__( @@ -186,6 +189,7 @@ class GCTStream(GCTBase): dim_in=2 * self.embed_dim, sliding_window_size=self.sliding_window_size, attend_to_scale_frames=self.attend_to_scale_frames, + num_iterations=self.camera_num_iterations, # KV cache parameters kv_cache_sliding_window=self.kv_cache_sliding_window, kv_cache_scale_frames=self.kv_cache_scale_frames, diff --git a/lingbot_map/models/gct_stream_window.py b/lingbot_map/models/gct_stream_window.py index e98e0ba..53f4744 100644 --- a/lingbot_map/models/gct_stream_window.py +++ b/lingbot_map/models/gct_stream_window.py @@ -166,6 +166,8 @@ class GCTStream(GCTBase): use_sdpa: bool = False, # If True, use SDPA (no flashinfer needed); default: FlashInfer # Gradient checkpointing use_gradient_checkpoint: bool = True, + # Camera head iterative refinement (lower = faster inference; default 4) + camera_num_iterations: int = 4, ): """ Initialize GCTStream. @@ -214,6 +216,7 @@ class GCTStream(GCTBase): self.kv_cache_include_scale_frames = kv_cache_include_scale_frames self.kv_cache_camera_only = kv_cache_camera_only self.use_sdpa = use_sdpa + self.camera_num_iterations = camera_num_iterations # Call base class __init__ (will call _build_aggregator) super().__init__( @@ -277,6 +280,7 @@ class GCTStream(GCTBase): dim_in=2 * self.embed_dim, sliding_window_size=self.sliding_window_size, attend_to_scale_frames=self.attend_to_scale_frames, + num_iterations=self.camera_num_iterations, # KV cache parameters kv_cache_sliding_window=self.kv_cache_sliding_window, kv_cache_scale_frames=self.kv_cache_scale_frames,