Upload pipeline.py
Browse files- pipeline.py +10 -0
pipeline.py
CHANGED
|
@@ -922,6 +922,16 @@ class Q2KQuantizer:
|
|
| 922 |
stop_event=stop_event,
|
| 923 |
device=dev_str,
|
| 924 |
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 925 |
if cfg.verbose:
|
| 926 |
_report(res.stats)
|
| 927 |
return res
|
|
|
|
| 922 |
stop_event=stop_event,
|
| 923 |
device=dev_str,
|
| 924 |
)
|
| 925 |
+
if seg_perm is not None:
|
| 926 |
+
from .segmentation import band_labels
|
| 927 |
+
|
| 928 |
+
Xh = np.stack([b.dequantize() for b in res.blocks]).astype(np.float64)
|
| 929 |
+
labels_slot = np.take_along_axis(seg_labels, seg_perm, axis=1)
|
| 930 |
+
labels_rec = band_labels(Xh, max(2, int(cfg.segment_k)))
|
| 931 |
+
res.stats.segment_rounds = seg_rounds
|
| 932 |
+
res.stats.segment_flips = int(np.count_nonzero(labels_rec != labels_slot))
|
| 933 |
+
res.segment_perm = seg_perm
|
| 934 |
+
res.segment_labels = seg_labels
|
| 935 |
if cfg.verbose:
|
| 936 |
_report(res.stats)
|
| 937 |
return res
|