AlanLiangC commited on
Commit
9d1372a
·
1 Parent(s): f8f63d3

add models

Browse files
app.py CHANGED
@@ -9,7 +9,6 @@ import gradio as gr
9
 
10
  RESULTS_DIR = "./worldlens-results"
11
 
12
- # 指标好坏方向
13
  METRICS_MIN_BETTER = [
14
  "Depth Discrepancy", "Perceptual Discrepancy",
15
  "Photometric Error", "Geometric Discrepancy",
@@ -20,7 +19,7 @@ METRICS_MIN_BETTER = [
20
  METRICS_MAX_BETTER = [
21
  "Subject Fidelity", "Subject Coherence", "Subject Consistency",
22
  "Temporal Consistency", "Semantic Consistency",
23
- "View Consistency", # 你的 JSON 里有这个,默认认为越大越好
24
  "Novel-View Quality",
25
  "Open-Loop Adherence", "Route Completion", "Closed-Loop Adherence",
26
  "Map Segmentation", "3D Object Detection", "3D Object Tracking",
@@ -32,19 +31,14 @@ METRIC_BETTER: Dict[str, Literal["min", "max"]] = {
32
  }
33
  METRIC_BETTER.update({m: "max" for m in METRICS_MAX_BETTER})
34
 
35
- # 下拉框展示的所有指标(去重+排序)
36
  METRIC_CHOICES: List[str] = sorted(set(METRICS_MIN_BETTER + METRICS_MAX_BETTER))
37
  DEFAULT_METRIC = "Subject Fidelity" if "Subject Fidelity" in METRIC_CHOICES else METRIC_CHOICES[0]
38
 
39
- # 全局 DataFrame(所有模型)
40
  df_all: Optional[pd.DataFrame] = None
41
 
42
 
43
  def load_results() -> pd.DataFrame:
44
- """
45
- 从 ./worldlens-results 读取所有 json,整理成一个宽表:
46
- 每一行是一个模型,每一列是一个指标。
47
- """
48
  rows = []
49
 
50
  json_files = sorted(glob.glob(os.path.join(RESULTS_DIR, "*.json")))
@@ -57,7 +51,7 @@ def load_results() -> pd.DataFrame:
57
 
58
  model_name = os.path.splitext(os.path.basename(path))[0]
59
  venue = data.get("venue", "")
60
- date = data.get("data", "") # 你这边字段叫 data,我就直接用
61
 
62
  row = {
63
  "Model": model_name,
@@ -66,7 +60,6 @@ def load_results() -> pd.DataFrame:
66
  }
67
 
68
  metrics = data.get("Metrics", {})
69
- # 展开所有子字典,列名直接用 metric 名称(假设唯一)
70
  for category, metric_dict in metrics.items():
71
  if not isinstance(metric_dict, dict):
72
  continue
@@ -77,7 +70,6 @@ def load_results() -> pd.DataFrame:
77
 
78
  df = pd.DataFrame(rows)
79
 
80
- # 统一列顺序:meta + 指标
81
  meta_cols = ["Model", "venue", "date"]
82
  metric_cols = [c for c in df.columns if c not in meta_cols]
83
  df = df[meta_cols + metric_cols]
@@ -100,15 +92,10 @@ def update_leaderboard(
100
  sort_mode: str,
101
  selected_metrics: Optional[List[str]],
102
  ) -> Tuple[pd.DataFrame, plt.Figure]:
103
- """
104
- 根据用户选择更新排行榜表格与条形图。
105
- metric: 用于排序 & 画图的主指标
106
- selected_metrics: 勾选的“想在表格中展示”的其它指标(可以多个)
107
- """
108
  global df_all
109
 
110
  if df_all is None or df_all.empty:
111
- # 空表兜底
112
  fig, ax = plt.subplots(figsize=(6, 3))
113
  ax.text(0.5, 0.5, "No results found in ./worldlens-results",
114
  ha="center", va="center")
@@ -117,11 +104,9 @@ def update_leaderboard(
117
 
118
  df = df_all.copy()
119
 
120
- # 模型名过滤
121
  if model_filter:
122
  df = df[df["Model"].str.contains(model_filter, case=False, regex=False)]
123
 
124
- # venue 过滤
125
  if venue_filter and venue_filter != "All":
126
  df = df[df["venue"] == venue_filter]
127
 
@@ -131,30 +116,22 @@ def update_leaderboard(
131
  ax.axis("off")
132
  return pd.DataFrame(), fig
133
 
134
- # 排序方向
135
  better = METRIC_BETTER.get(metric, "max")
136
  if sort_mode == "Auto":
137
  ascending = (better == "min")
138
  elif sort_mode == "Ascending (small → large)":
139
  ascending = True
140
- else: # "Descending (large → small)"
141
  ascending = False
142
 
143
  df_sorted = df.sort_values(metric, ascending=ascending)
144
 
145
- # Top-K
146
  df_top = df_sorted.head(top_k).copy()
147
-
148
- # 构造表格列:
149
- # 固定: Model, venue, date
150
- # + 勾选的指标
151
- # + 排序指标(如果没选)
152
  cols = ["Model", "venue", "date"]
153
 
154
  if selected_metrics is None:
155
  selected_metrics = []
156
 
157
- # 去掉不在 df_top 里的指标(有些 metric 可能某些 json 里没计算)
158
  for m in selected_metrics:
159
  if m in df_top.columns and m not in cols:
160
  cols.append(m)
@@ -164,30 +141,63 @@ def update_leaderboard(
164
 
165
  table_df = df_top[cols].round(3)
166
 
167
- # 画条形图(只画排序指标)
168
- fig, ax = plt.subplots(figsize=(9, 4))
169
- ax.barh(table_df["Model"], df_top[metric].iloc[:len(table_df)])
170
- ax.set_xlabel(metric)
171
- ax.set_ylabel("Model")
172
- ax.set_title(f"Leaderboard by {metric}")
 
 
 
 
 
 
 
 
 
 
173
 
174
- # 为了让「最好的」在上面:如果按升序(小→大),我们反转 y 轴,让更小的在上。
175
  if ascending:
176
  ax.invert_yaxis()
177
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
178
  plt.tight_layout()
179
 
180
  return table_df, fig
181
 
182
 
183
  def reload_data():
184
- """
185
- 点击“Reload JSONs” / 页面加载时调用:
186
- 重新加载所有 json,并返回:
187
- - 状态文字
188
- - venue_dropdown 的更新
189
- - 默认的表格和图
190
- """
191
  global df_all
192
  df_all = load_results()
193
 
@@ -204,7 +214,6 @@ def reload_data():
204
  venue_choices = get_venue_choices(df_all)
205
  msg = f"Loaded {len(df_all)} models from {RESULTS_DIR}"
206
 
207
- # 用默认 metric 画一次(selected_metrics 先用一个简单默认)
208
  default_selected = ["Subject Fidelity", "Temporal Consistency", "Map Segmentation"]
209
  default_selected = [m for m in default_selected if m in METRIC_CHOICES]
210
 
@@ -234,7 +243,6 @@ with gr.Blocks(css="""
234
  gr.Markdown(
235
  """
236
  # 🌍 WorldLens Leaderboard
237
- > from WorldBench Team
238
  """,
239
  elem_id="title"
240
  )
@@ -243,13 +251,13 @@ with gr.Blocks(css="""
243
 
244
  with gr.Row():
245
  metric_dropdown = gr.Dropdown(
246
- label="排序指标 / Metric (for ranking)",
247
  choices=METRIC_CHOICES, # 固定 choices,避免动态更新不兼容
248
  value=DEFAULT_METRIC,
249
  interactive=True,
250
  )
251
  sort_mode_radio = gr.Radio(
252
- label="排序方式 / Sort mode",
253
  choices=[
254
  "Auto",
255
  "Ascending (small → large)",
@@ -259,7 +267,7 @@ with gr.Blocks(css="""
259
  interactive=True,
260
  )
261
  topk_slider = gr.Slider(
262
- label="显示 Top-K 模型 / Top-K",
263
  minimum=3,
264
  maximum=50,
265
  value=10,
@@ -269,7 +277,7 @@ with gr.Blocks(css="""
269
 
270
  # 新增:表格中展示的多个指标
271
  metrics_select = gr.CheckboxGroup(
272
- label="在表格中一起展示的指标 / Metrics to show in table",
273
  choices=METRIC_CHOICES,
274
  value=["Subject Fidelity", "Temporal Consistency", "Map Segmentation"],
275
  interactive=True,
@@ -277,12 +285,12 @@ with gr.Blocks(css="""
277
 
278
  with gr.Row():
279
  model_filter_box = gr.Textbox(
280
- label="模型名过滤(包含关系)/ Filter by model name",
281
- placeholder="例如: magic, dream, ...",
282
  interactive=True,
283
  )
284
  venue_dropdown = gr.Dropdown(
285
- label="按 Venue 筛选 / Filter by venue",
286
  choices=["All"],
287
  value="All",
288
  interactive=True,
@@ -296,17 +304,14 @@ with gr.Blocks(css="""
296
  label="Leaderboard",
297
  interactive=False,
298
  )
299
- # 显式指定 format="png",避免 webp 不支持的问题
300
  leaderboard_plot = gr.Plot(label="Metric comparison", format="png")
301
 
302
- # 点击 Reload:重新加载 + 更新 venue + 表格与图
303
  reload_button.click(
304
  fn=reload_data,
305
  inputs=[],
306
  outputs=[status_box, venue_dropdown, leaderboard_table, leaderboard_plot],
307
  )
308
 
309
- # 更新排行榜(多传一个 selected_metrics)
310
  update_button.click(
311
  fn=update_leaderboard,
312
  inputs=[
@@ -320,7 +325,6 @@ with gr.Blocks(css="""
320
  outputs=[leaderboard_table, leaderboard_plot],
321
  )
322
 
323
- # 页面加载时自动尝试加载一次
324
  demo.load(
325
  fn=reload_data,
326
  inputs=[],
@@ -329,4 +333,4 @@ with gr.Blocks(css="""
329
 
330
 
331
  if __name__ == "__main__":
332
- demo.launch() # 本地想公网访问可以改成 demo.launch(share=True)
 
9
 
10
  RESULTS_DIR = "./worldlens-results"
11
 
 
12
  METRICS_MIN_BETTER = [
13
  "Depth Discrepancy", "Perceptual Discrepancy",
14
  "Photometric Error", "Geometric Discrepancy",
 
19
  METRICS_MAX_BETTER = [
20
  "Subject Fidelity", "Subject Coherence", "Subject Consistency",
21
  "Temporal Consistency", "Semantic Consistency",
22
+ "View Consistency",
23
  "Novel-View Quality",
24
  "Open-Loop Adherence", "Route Completion", "Closed-Loop Adherence",
25
  "Map Segmentation", "3D Object Detection", "3D Object Tracking",
 
31
  }
32
  METRIC_BETTER.update({m: "max" for m in METRICS_MAX_BETTER})
33
 
 
34
  METRIC_CHOICES: List[str] = sorted(set(METRICS_MIN_BETTER + METRICS_MAX_BETTER))
35
  DEFAULT_METRIC = "Subject Fidelity" if "Subject Fidelity" in METRIC_CHOICES else METRIC_CHOICES[0]
36
 
 
37
  df_all: Optional[pd.DataFrame] = None
38
 
39
 
40
  def load_results() -> pd.DataFrame:
41
+
 
 
 
42
  rows = []
43
 
44
  json_files = sorted(glob.glob(os.path.join(RESULTS_DIR, "*.json")))
 
51
 
52
  model_name = os.path.splitext(os.path.basename(path))[0]
53
  venue = data.get("venue", "")
54
+ date = data.get("date", "")
55
 
56
  row = {
57
  "Model": model_name,
 
60
  }
61
 
62
  metrics = data.get("Metrics", {})
 
63
  for category, metric_dict in metrics.items():
64
  if not isinstance(metric_dict, dict):
65
  continue
 
70
 
71
  df = pd.DataFrame(rows)
72
 
 
73
  meta_cols = ["Model", "venue", "date"]
74
  metric_cols = [c for c in df.columns if c not in meta_cols]
75
  df = df[meta_cols + metric_cols]
 
92
  sort_mode: str,
93
  selected_metrics: Optional[List[str]],
94
  ) -> Tuple[pd.DataFrame, plt.Figure]:
95
+
 
 
 
 
96
  global df_all
97
 
98
  if df_all is None or df_all.empty:
 
99
  fig, ax = plt.subplots(figsize=(6, 3))
100
  ax.text(0.5, 0.5, "No results found in ./worldlens-results",
101
  ha="center", va="center")
 
104
 
105
  df = df_all.copy()
106
 
 
107
  if model_filter:
108
  df = df[df["Model"].str.contains(model_filter, case=False, regex=False)]
109
 
 
110
  if venue_filter and venue_filter != "All":
111
  df = df[df["venue"] == venue_filter]
112
 
 
116
  ax.axis("off")
117
  return pd.DataFrame(), fig
118
 
 
119
  better = METRIC_BETTER.get(metric, "max")
120
  if sort_mode == "Auto":
121
  ascending = (better == "min")
122
  elif sort_mode == "Ascending (small → large)":
123
  ascending = True
124
+ else:
125
  ascending = False
126
 
127
  df_sorted = df.sort_values(metric, ascending=ascending)
128
 
 
129
  df_top = df_sorted.head(top_k).copy()
 
 
 
 
 
130
  cols = ["Model", "venue", "date"]
131
 
132
  if selected_metrics is None:
133
  selected_metrics = []
134
 
 
135
  for m in selected_metrics:
136
  if m in df_top.columns and m not in cols:
137
  cols.append(m)
 
141
 
142
  table_df = df_top[cols].round(3)
143
 
144
+ # =========================
145
+ # Dark-theme leaderboard plot
146
+ # =========================
147
+ bg_color = "#0e1117" # HF 深色背景
148
+ panel_color = "#161b22" # 面板背景
149
+ bar_color = "#4cc9f0" # 主色(青蓝)
150
+ grid_color = "#30363d"
151
+ text_color = "#c9d1d9"
152
+
153
+ fig, ax = plt.subplots(figsize=(10, 4.5))
154
+ fig.patch.set_facecolor(bg_color)
155
+ ax.set_facecolor(panel_color)
156
+
157
+ values = df_top[metric].values
158
+ models = table_df["Model"].values
159
+ bars = ax.barh(models, values, color=bar_color, height=0.6)
160
 
 
161
  if ascending:
162
  ax.invert_yaxis()
163
 
164
+ ax.set_xlabel(metric, color=text_color, fontsize=11, labelpad=6)
165
+ ax.set_title(
166
+ f"Leaderboard · {metric}",
167
+ fontsize=13,
168
+ color=text_color,
169
+ pad=10,
170
+ fontweight="bold"
171
+ )
172
+
173
+ ax.xaxis.grid(True, linestyle="--", linewidth=0.6, color=grid_color, alpha=0.7)
174
+ ax.yaxis.grid(False)
175
+
176
+ for spine in ["top", "right", "left"]:
177
+ ax.spines[spine].set_visible(False)
178
+ ax.spines["bottom"].set_color(grid_color)
179
+
180
+ ax.tick_params(axis="x", colors=text_color, labelsize=10)
181
+ ax.tick_params(axis="y", colors=text_color, labelsize=10)
182
+
183
+ for bar, value in zip(bars, values):
184
+ ax.text(
185
+ bar.get_width() * 1.01,
186
+ bar.get_y() + bar.get_height() / 2,
187
+ f"{value:.2f}",
188
+ va="center",
189
+ ha="left",
190
+ fontsize=9.5,
191
+ color=text_color
192
+ )
193
+
194
  plt.tight_layout()
195
 
196
  return table_df, fig
197
 
198
 
199
  def reload_data():
200
+
 
 
 
 
 
 
201
  global df_all
202
  df_all = load_results()
203
 
 
214
  venue_choices = get_venue_choices(df_all)
215
  msg = f"Loaded {len(df_all)} models from {RESULTS_DIR}"
216
 
 
217
  default_selected = ["Subject Fidelity", "Temporal Consistency", "Map Segmentation"]
218
  default_selected = [m for m in default_selected if m in METRIC_CHOICES]
219
 
 
243
  gr.Markdown(
244
  """
245
  # 🌍 WorldLens Leaderboard
 
246
  """,
247
  elem_id="title"
248
  )
 
251
 
252
  with gr.Row():
253
  metric_dropdown = gr.Dropdown(
254
+ label="Metric (for ranking)",
255
  choices=METRIC_CHOICES, # 固定 choices,避免动态更新不兼容
256
  value=DEFAULT_METRIC,
257
  interactive=True,
258
  )
259
  sort_mode_radio = gr.Radio(
260
+ label="Sort mode",
261
  choices=[
262
  "Auto",
263
  "Ascending (small → large)",
 
267
  interactive=True,
268
  )
269
  topk_slider = gr.Slider(
270
+ label="Top-K",
271
  minimum=3,
272
  maximum=50,
273
  value=10,
 
277
 
278
  # 新增:表格中展示的多个指标
279
  metrics_select = gr.CheckboxGroup(
280
+ label="Metrics to show in table",
281
  choices=METRIC_CHOICES,
282
  value=["Subject Fidelity", "Temporal Consistency", "Map Segmentation"],
283
  interactive=True,
 
285
 
286
  with gr.Row():
287
  model_filter_box = gr.Textbox(
288
+ label="Filter by model name",
289
+ placeholder="magic, dream, ...",
290
  interactive=True,
291
  )
292
  venue_dropdown = gr.Dropdown(
293
+ label="Filter by venue",
294
  choices=["All"],
295
  value="All",
296
  interactive=True,
 
304
  label="Leaderboard",
305
  interactive=False,
306
  )
 
307
  leaderboard_plot = gr.Plot(label="Metric comparison", format="png")
308
 
 
309
  reload_button.click(
310
  fn=reload_data,
311
  inputs=[],
312
  outputs=[status_box, venue_dropdown, leaderboard_table, leaderboard_plot],
313
  )
314
 
 
315
  update_button.click(
316
  fn=update_leaderboard,
317
  inputs=[
 
325
  outputs=[leaderboard_table, leaderboard_plot],
326
  )
327
 
 
328
  demo.load(
329
  fn=reload_data,
330
  inputs=[],
 
333
 
334
 
335
  if __name__ == "__main__":
336
+ demo.launch()
worldlens-results/DrivingSphere.json ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "venue": "CVPR'2025",
3
+ "date": "2024-11-18",
4
+ "Metrics": {
5
+ "Action-Following":{
6
+ "Displacement Error": 0.54,
7
+ "Open-Loop Adherence": 76.02,
8
+ "Route Completion": 11.02,
9
+ "Closed-Loop Adherence": 8.29
10
+ }
11
+ }
12
+ }
worldlens-results/Panacea.json ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "venue": "CVPR'2024",
3
+ "date": "2023-11-28",
4
+ "Metrics": {
5
+ "Action-Following":{
6
+ "Displacement Error": 0.58
7
+ }
8
+ }
9
+ }
worldlens-results/RLGF.json ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "venue": "NeurlPS'2025",
3
+ "date": "2025-09-20",
4
+ "Metrics": {
5
+ "Action-Following":{
6
+ "Displacement Error": 0.53,
7
+ "Open-Loop Adherence": 78.45,
8
+ "Route Completion": 13.51,
9
+ "Closed-Loop Adherence": 10.59
10
+ }
11
+ }
12
+ }
worldlens-results/dist4d.json ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "venue": "ICCV'2025",
3
+ "date": "2025-03-19",
4
+ "Metrics": {
5
+ "Generation": {
6
+ "Subject Fidelity": 30.32,
7
+ "Subject Coherence": 79.36,
8
+ "Subject Consistency": 74.69,
9
+ "Depth Discrepancy": 17.71,
10
+ "Temporal Consistency": 77.76,
11
+ "Semantic Consistency": 84.32,
12
+ "Perceptual Discrepancy": 58.08,
13
+ "View Consistency": 389.78
14
+ },
15
+ "Reconstruction":{
16
+ "Photometric Error": 0.066,
17
+ "Geometric Discrepancy": 0.080,
18
+ "Novel-View Quality": 43.09,
19
+ "Novel-View Discrepancy": 192.39
20
+ },
21
+ "Downstream Task":{
22
+ "Map Segmentation": 35.55,
23
+ "3D Object Detection": 33.22,
24
+ "3D Object Tracking": 15.30,
25
+ "Occupancy Prediction": 26.10
26
+ }
27
+ }
28
+ }
worldlens-results/dreamforge.json CHANGED
@@ -1,34 +1,34 @@
1
  {
2
  "venue": "Arxiv'2024",
3
- "date": "2024-10-04",
4
  "Metrics": {
5
  "Generation": {
6
- "Subject Fidelity": 28.49,
7
- "Subject Coherence": 75.95,
8
- "Subject Consistency": 65.22,
9
- "Depth Discrepancy": 24.19,
10
- "Temporal Consistency": 74.44,
11
- "Semantic Consistency": 80.63,
12
- "Perceptual Discrepancy": 222.00,
13
- "View Consistency": 185.77
14
  },
15
  "Reconstruction":{
16
- "Photometric Error": 0.140,
17
- "Geometric Discrepancy": 0.115,
18
- "Novel-View Quality": 39.82,
19
- "Novel-View Discrepancy": 427.30
20
  },
21
  "Action-Following":{
22
- "Displacement Error": 0.57,
23
- "Open-Loop Adherence": 71.23,
24
- "Route Completion": 6.89,
25
- "Closed-Loop Adherence": 4.82
26
  },
27
  "Downstream Task":{
28
- "Map Segmentation": 18.34,
29
- "3D Object Detection": 22.41,
30
- "3D Object Tracking": 7.90,
31
- "Occupancy Prediction": 23.14
32
  }
33
  }
34
  }
 
1
  {
2
  "venue": "Arxiv'2024",
3
+ "date": "2024-09-06",
4
  "Metrics": {
5
  "Generation": {
6
+ "Subject Fidelity": 31.99,
7
+ "Subject Coherence": 75.12,
8
+ "Subject Consistency": 76.40,
9
+ "Depth Discrepancy": 19.27,
10
+ "Temporal Consistency": 79.82,
11
+ "Semantic Consistency": 84.99,
12
+ "Perceptual Discrepancy": 189.76,
13
+ "View Consistency": 194.99
14
  },
15
  "Reconstruction":{
16
+ "Photometric Error": 0.097,
17
+ "Geometric Discrepancy": 0.105,
18
+ "Novel-View Quality": 41.23,
19
+ "Novel-View Discrepancy": 347.70
20
  },
21
  "Action-Following":{
22
+ "Displacement Error": 0.55,
23
+ "Open-Loop Adherence": 75.51,
24
+ "Route Completion": 10.23,
25
+ "Closed-Loop Adherence": 7.65
26
  },
27
  "Downstream Task":{
28
+ "Map Segmentation": 30.91,
29
+ "3D Object Detection": 26.71,
30
+ "3D Object Tracking": 10.30,
31
+ "Occupancy Prediction": 23.71
32
  }
33
  }
34
  }
worldlens-results/drivedreamer2.json ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "venue": "AAAI'2025",
3
+ "date": "2024-03-11",
4
+ "Metrics": {
5
+ "Generation": {
6
+ "Subject Fidelity": 27.38,
7
+ "Subject Coherence": 78.97,
8
+ "Subject Consistency": 74.49,
9
+ "Depth Discrepancy": 17.73,
10
+ "Temporal Consistency": 79.51,
11
+ "Semantic Consistency": 85.91,
12
+ "Perceptual Discrepancy": 127.07,
13
+ "View Consistency": 302.83
14
+ },
15
+ "Reconstruction":{
16
+ "Photometric Error": 0.093,
17
+ "Geometric Discrepancy": 0.073,
18
+ "Novel-View Quality": 36.10,
19
+ "Novel-View Discrepancy": 259.91
20
+ },
21
+ "Downstream Task":{
22
+ "Map Segmentation": 33.62,
23
+ "3D Object Detection": 30.90,
24
+ "3D Object Tracking": 13.30,
25
+ "Occupancy Prediction": 26.82
26
+ }
27
+ }
28
+ }
worldlens-results/magicdriveV2.json ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "venue": "ICCV'2025",
3
+ "date": "2024-11-21",
4
+ "Metrics": {
5
+ "Action-Following":{
6
+ "Displacement Error": 0.53,
7
+ "Open-Loop Adherence": 78.91,
8
+ "Route Completion": 12.31,
9
+ "Closed-Loop Adherence": 9.50
10
+ }
11
+ }
12
+ }
worldlens-results/opendwm.json ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "venue": "CVPR'2025",
3
+ "date": "2025-01-09",
4
+ "Metrics": {
5
+ "Generation": {
6
+ "Subject Fidelity": 36.30,
7
+ "Subject Coherence": 83.13,
8
+ "Subject Consistency": 78.33,
9
+ "Depth Discrepancy": 18.17,
10
+ "Temporal Consistency": 79.63,
11
+ "Semantic Consistency": 84.08,
12
+ "Perceptual Discrepancy": 90.42,
13
+ "View Consistency": 211.18
14
+ },
15
+ "Reconstruction":{
16
+ "Photometric Error": 0.065,
17
+ "Geometric Discrepancy": 0.080,
18
+ "Novel-View Quality": 43.09,
19
+ "Novel-View Discrepancy": 192.39
20
+ },
21
+ "Downstream Task":{
22
+ "Map Segmentation": 27.63,
23
+ "3D Object Detection": 21.96,
24
+ "3D Object Tracking": 6.90,
25
+ "Occupancy Prediction": 24.82
26
+ }
27
+ }
28
+ }
worldlens-results/xscene.json ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "venue": "NerulPS'2025",
3
+ "date": "2025-06-16",
4
+ "Metrics": {
5
+ "Generation": {
6
+ "Subject Fidelity": 27.17,
7
+ "Subject Coherence": 77.22,
8
+ "Subject Consistency": 74.37,
9
+ "Depth Discrepancy": 20.50,
10
+ "Temporal Consistency": 79.41,
11
+ "Semantic Consistency": 83.80,
12
+ "Perceptual Discrepancy": 179.74,
13
+ "View Consistency": 201.00
14
+ },
15
+ "Reconstruction":{
16
+ "Photometric Error": 0.098,
17
+ "Geometric Discrepancy": 0.096,
18
+ "Novel-View Quality": 38.04,
19
+ "Novel-View Discrepancy": 365.71
20
+ },
21
+ "Downstream Task":{
22
+ "Map Segmentation": 27.27,
23
+ "3D Object Detection": 29.89,
24
+ "3D Object Tracking": 8.80,
25
+ "Occupancy Prediction": 23.68
26
+ }
27
+ }
28
+ }