IhorIvanyshyn01 commited on
Commit
9deb9e1
·
1 Parent(s): 7bd967e

Optimize hybrid geometric ensemble for massive HSS boost

Browse files
Files changed (1) hide show
  1. script.py +8 -5
script.py CHANGED
@@ -299,9 +299,12 @@ def hybrid_merge(pred_v, pred_e, track_v, track_e, merge_radius=0.8):
299
  if u_f is not None and v_f is not None and u_f != v_f:
300
  e = (min(u_f, v_f), max(u_f, v_f))
301
  if e not in existing_edges:
302
- final_e.append(e)
303
- existing_edges.add(e)
304
-
 
 
 
305
  return np.array(final_v), final_e
306
 
307
  # ---------------------------------------------------------------------------
@@ -392,8 +395,8 @@ if __name__ == "__main__":
392
  # Apply handcrafted triangulation tracking to catch missing corners/edges
393
  try:
394
  from triangulation import predict_wireframe_tracks
395
- # Force TRACK_MIN_VIEWS = 2 for aggressive recall
396
- track_v, track_e = predict_wireframe_tracks(sample, min_views=2)
397
 
398
  pred_v, pred_e = hybrid_merge(pred_v, pred_e, track_v, track_e, merge_radius=0.8)
399
  except Exception as track_e_err:
 
299
  if u_f is not None and v_f is not None and u_f != v_f:
300
  e = (min(u_f, v_f), max(u_f, v_f))
301
  if e not in existing_edges:
302
+ # ONLY append the tracked edge if it connects to a NEWLY DISCOVERED vertex.
303
+ # This prevents the geometric tracker from aggressively re-wiring the learned model's existing topology!
304
+ if u_f >= len(pred_v) or v_f >= len(pred_v):
305
+ final_e.append(e)
306
+ existing_edges.add(e)
307
+
308
  return np.array(final_v), final_e
309
 
310
  # ---------------------------------------------------------------------------
 
395
  # Apply handcrafted triangulation tracking to catch missing corners/edges
396
  try:
397
  from triangulation import predict_wireframe_tracks
398
+ # Use min_views=3 for highly precise, conservative geometric tracks
399
+ track_v, track_e = predict_wireframe_tracks(sample, min_views=3)
400
 
401
  pred_v, pred_e = hybrid_merge(pred_v, pred_e, track_v, track_e, merge_radius=0.8)
402
  except Exception as track_e_err: