diff --git a/14_build_roi_compare_visuals.py b/14_build_roi_compare_visuals.py
new file mode 100644
index 0000000..0edbde1
--- /dev/null
+++ b/14_build_roi_compare_visuals.py
@@ -0,0 +1,113 @@
+#!/usr/bin/env python3
+from __future__ import annotations
+
+import argparse
+from pathlib import Path
+
+from PIL import Image, ImageDraw, ImageFont
+
+
+def parse_args() -> argparse.Namespace:
+ parser = argparse.ArgumentParser(description="Build side-by-side ROI prediction comparisons")
+ parser.add_argument("--left-dir", required=True, help="Directory containing left prediction images")
+ parser.add_argument("--right-dir", required=True, help="Directory containing right prediction images")
+ parser.add_argument("--output-dir", required=True, help="Directory to write comparison images")
+ parser.add_argument("--left-title", default="Left", help="Title shown above left image")
+ parser.add_argument("--right-title", default="Right", help="Title shown above right image")
+ return parser.parse_args()
+
+
+def load_font() -> ImageFont.ImageFont:
+ for candidate in ("arial.ttf", "C:/Windows/Fonts/arial.ttf", "C:/Windows/Fonts/msyh.ttc"):
+ try:
+ return ImageFont.truetype(candidate, 22)
+ except OSError:
+ continue
+ return ImageFont.load_default()
+
+
+def fit_height(image: Image.Image, target_height: int) -> Image.Image:
+ if image.height == target_height:
+ return image
+ scale = target_height / image.height
+ target_width = max(1, int(round(image.width * scale)))
+ return image.resize((target_width, target_height), Image.Resampling.LANCZOS)
+
+
+def build_pair(left_path: Path, right_path: Path, output_path: Path, left_title: str, right_title: str, font: ImageFont.ImageFont) -> None:
+ with Image.open(left_path) as left_image, Image.open(right_path) as right_image:
+ left_rgb = left_image.convert("RGB")
+ right_rgb = right_image.convert("RGB")
+
+ target_height = max(left_rgb.height, right_rgb.height)
+ left_rgb = fit_height(left_rgb, target_height)
+ right_rgb = fit_height(right_rgb, target_height)
+
+ gap = 20
+ padding = 16
+ title_band = 48
+ canvas_width = left_rgb.width + right_rgb.width + gap + (padding * 2)
+ canvas_height = target_height + title_band + (padding * 2)
+
+ canvas = Image.new("RGB", (canvas_width, canvas_height), color=(245, 243, 238))
+ draw = ImageDraw.Draw(canvas)
+
+ left_x = padding
+ right_x = padding + left_rgb.width + gap
+ image_y = padding + title_band
+
+ draw.text((left_x, padding), left_title, fill=(32, 32, 32), font=font)
+ draw.text((right_x, padding), right_title, fill=(32, 32, 32), font=font)
+
+ canvas.paste(left_rgb, (left_x, image_y))
+ canvas.paste(right_rgb, (right_x, image_y))
+
+ draw.rectangle(
+ (left_x - 2, image_y - 2, left_x + left_rgb.width + 1, image_y + left_rgb.height + 1),
+ outline=(160, 160, 160),
+ width=2,
+ )
+ draw.rectangle(
+ (right_x - 2, image_y - 2, right_x + right_rgb.width + 1, image_y + right_rgb.height + 1),
+ outline=(160, 160, 160),
+ width=2,
+ )
+
+ output_path.parent.mkdir(parents=True, exist_ok=True)
+ canvas.save(output_path, quality=95)
+
+
+def main() -> None:
+ args = parse_args()
+ left_dir = Path(args.left_dir)
+ right_dir = Path(args.right_dir)
+ output_dir = Path(args.output_dir)
+ output_dir.mkdir(parents=True, exist_ok=True)
+
+ font = load_font()
+ left_images = {path.name: path for path in left_dir.glob("*.jpg")}
+ right_images = {path.name: path for path in right_dir.glob("*.jpg")}
+ shared_names = sorted(set(left_images) & set(right_images))
+
+ for name in shared_names:
+ build_pair(
+ left_images[name],
+ right_images[name],
+ output_dir / name,
+ args.left_title,
+ args.right_title,
+ font,
+ )
+
+ summary_lines = [
+ f"left_dir={left_dir}",
+ f"right_dir={right_dir}",
+ f"pairs={len(shared_names)}",
+ "",
+ ]
+ summary_lines.extend(shared_names)
+ (output_dir / "summary.txt").write_text("\n".join(summary_lines) + "\n", encoding="utf-8")
+
+
+if __name__ == "__main__":
+ main()
diff --git a/samples/roi_compare_4models/index.html b/samples/roi_compare_4models/index.html
new file mode 100644
index 0000000..7b8e0cf
--- /dev/null
+++ b/samples/roi_compare_4models/index.html
@@ -0,0 +1,195 @@
+
+
+
+
+
+ ROI 4-Model Compare
+
+
+
+
+
ROI 四模型对照
+
每一行是一张 ROI 图,四列分别是当前主力、20k filtered 80 轮、100k filtered 35 轮、100k filtered 60 轮。建议重点看框的位置、是否盖住真实鞋区域,以及对大面积复杂纹理鞋子的适应性。
+
+
Current当前主力 ROI 模型
+
20k-8020k filtered + 80 epochs
+
100k-35100k filtered + 35 epochs
+
100k-60100k filtered + 60 epochs
+
+
+
+
+
+
diff --git a/samples/roi_compare_5models/index.html b/samples/roi_compare_5models/index.html
new file mode 100644
index 0000000..379a5a7
--- /dev/null
+++ b/samples/roi_compare_5models/index.html
@@ -0,0 +1,197 @@
+
+
+
+
+
+ ROI 5-Model Compare
+
+
+
+
+
ROI 五模型对照
+
每一行是一张 ROI 图,五列分别是当前主力、20k filtered 80 轮、100k filtered 35 轮、100k filtered 60 轮、100k filtered 100 轮。建议重点看小而模糊目标、大面积复杂纹理鞋面,以及框是否真正落在鞋区域。
+
+
Current当前主力 ROI 模型
+
20k-8020k filtered + 80 epochs
+
100k-35100k filtered + 35 epochs
+
100k-60100k filtered + 60 epochs
+
100k-100100k filtered + 100 epochs
+
+
+
+
+
+
diff --git a/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 104056.jpg b/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 104056.jpg
new file mode 100644
index 0000000..b4a3116
Binary files /dev/null and b/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 104056.jpg differ
diff --git a/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 104233.jpg b/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 104233.jpg
new file mode 100644
index 0000000..a6d61c2
Binary files /dev/null and b/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 104233.jpg differ
diff --git a/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 104318.jpg b/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 104318.jpg
new file mode 100644
index 0000000..3a4865d
Binary files /dev/null and b/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 104318.jpg differ
diff --git a/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 104428.jpg b/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 104428.jpg
new file mode 100644
index 0000000..e311977
Binary files /dev/null and b/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 104428.jpg differ
diff --git a/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 104647.jpg b/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 104647.jpg
new file mode 100644
index 0000000..37c79e4
Binary files /dev/null and b/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 104647.jpg differ
diff --git a/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 104827.jpg b/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 104827.jpg
new file mode 100644
index 0000000..f1047ce
Binary files /dev/null and b/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 104827.jpg differ
diff --git a/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 104901.jpg b/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 104901.jpg
new file mode 100644
index 0000000..86e5c48
Binary files /dev/null and b/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 104901.jpg differ
diff --git a/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 104942.jpg b/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 104942.jpg
new file mode 100644
index 0000000..dae2787
Binary files /dev/null and b/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 104942.jpg differ
diff --git a/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 105043.jpg b/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 105043.jpg
new file mode 100644
index 0000000..b6db196
Binary files /dev/null and b/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 105043.jpg differ
diff --git a/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 105101.jpg b/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 105101.jpg
new file mode 100644
index 0000000..8c949b1
Binary files /dev/null and b/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 105101.jpg differ
diff --git a/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 105116.jpg b/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 105116.jpg
new file mode 100644
index 0000000..8d205f7
Binary files /dev/null and b/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 105116.jpg differ
diff --git a/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 105156.jpg b/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 105156.jpg
new file mode 100644
index 0000000..6a41dfb
Binary files /dev/null and b/samples/roi_compare_5models/manual_review/屏幕截图 2026-03-15 105156.jpg differ
diff --git a/samples/roi_compare_current_vs_100k35/index.html b/samples/roi_compare_current_vs_100k35/index.html
new file mode 100644
index 0000000..34e8377
--- /dev/null
+++ b/samples/roi_compare_current_vs_100k35/index.html
@@ -0,0 +1,97 @@
+
+
+
+
+
+ ROI Compare
+
+
+
+
+
ROI 对照图
+
左侧是当前主力模型,右侧是 100k filtered + 35 epochs。直接打开本页即可逐张翻看。
+
+
屏幕截图 2026-03-15 104013.jpg

+
屏幕截图 2026-03-15 104056.jpg

+
屏幕截图 2026-03-15 104132.jpg

+
屏幕截图 2026-03-15 104233.jpg

+
屏幕截图 2026-03-15 104318.jpg

+
屏幕截图 2026-03-15 104349.jpg

+
屏幕截图 2026-03-15 104428.jpg

+
屏幕截图 2026-03-15 104443.jpg

+
屏幕截图 2026-03-15 104503.jpg

+
屏幕截图 2026-03-15 104530.jpg

+
屏幕截图 2026-03-15 104547.jpg

+
屏幕截图 2026-03-15 104614.jpg

+
屏幕截图 2026-03-15 104636.jpg

+
屏幕截图 2026-03-15 104647.jpg

+
屏幕截图 2026-03-15 104827.jpg

+
屏幕截图 2026-03-15 104839.jpg

+
屏幕截图 2026-03-15 104852.jpg

+
屏幕截图 2026-03-15 104901.jpg

+
屏幕截图 2026-03-15 104915.jpg

+
屏幕截图 2026-03-15 104942.jpg

+
屏幕截图 2026-03-15 105007.jpg

+
屏幕截图 2026-03-15 105043.jpg

+
屏幕截图 2026-03-15 105101.jpg

+
屏幕截图 2026-03-15 105116.jpg

+
屏幕截图 2026-03-15 105156.jpg

+
屏幕截图 2026-03-15 105219.jpg

+
+
+
+
diff --git a/samples/roi_compare_current_vs_100k35/summary.txt b/samples/roi_compare_current_vs_100k35/summary.txt
new file mode 100644
index 0000000..3b670ef
--- /dev/null
+++ b/samples/roi_compare_current_vs_100k35/summary.txt
@@ -0,0 +1,30 @@
+left_dir=C:\Users\Tellme\apps\DetectionModelTraining\runs\roi_eval\roi_shoes_v1
+right_dir=C:\Users\Tellme\apps\DetectionModelTraining\runs\roi_eval\roi_shoes_100k_filtered_35
+pairs=26
+
+屏幕截图 2026-03-15 104013.jpg
+屏幕截图 2026-03-15 104056.jpg
+屏幕截图 2026-03-15 104132.jpg
+屏幕截图 2026-03-15 104233.jpg
+屏幕截图 2026-03-15 104318.jpg
+屏幕截图 2026-03-15 104349.jpg
+屏幕截图 2026-03-15 104428.jpg
+屏幕截图 2026-03-15 104443.jpg
+屏幕截图 2026-03-15 104503.jpg
+屏幕截图 2026-03-15 104530.jpg
+屏幕截图 2026-03-15 104547.jpg
+屏幕截图 2026-03-15 104614.jpg
+屏幕截图 2026-03-15 104636.jpg
+屏幕截图 2026-03-15 104647.jpg
+屏幕截图 2026-03-15 104827.jpg
+屏幕截图 2026-03-15 104839.jpg
+屏幕截图 2026-03-15 104852.jpg
+屏幕截图 2026-03-15 104901.jpg
+屏幕截图 2026-03-15 104915.jpg
+屏幕截图 2026-03-15 104942.jpg
+屏幕截图 2026-03-15 105007.jpg
+屏幕截图 2026-03-15 105043.jpg
+屏幕截图 2026-03-15 105101.jpg
+屏幕截图 2026-03-15 105116.jpg
+屏幕截图 2026-03-15 105156.jpg
+屏幕截图 2026-03-15 105219.jpg
diff --git a/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104013.jpg b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104013.jpg
new file mode 100644
index 0000000..1306bd3
Binary files /dev/null and b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104013.jpg differ
diff --git a/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104056.jpg b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104056.jpg
new file mode 100644
index 0000000..619d4b5
Binary files /dev/null and b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104056.jpg differ
diff --git a/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104132.jpg b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104132.jpg
new file mode 100644
index 0000000..991c40d
Binary files /dev/null and b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104132.jpg differ
diff --git a/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104233.jpg b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104233.jpg
new file mode 100644
index 0000000..2ed6caf
Binary files /dev/null and b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104233.jpg differ
diff --git a/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104318.jpg b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104318.jpg
new file mode 100644
index 0000000..8c628ce
Binary files /dev/null and b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104318.jpg differ
diff --git a/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104349.jpg b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104349.jpg
new file mode 100644
index 0000000..376a433
Binary files /dev/null and b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104349.jpg differ
diff --git a/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104428.jpg b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104428.jpg
new file mode 100644
index 0000000..1f67adb
Binary files /dev/null and b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104428.jpg differ
diff --git a/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104443.jpg b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104443.jpg
new file mode 100644
index 0000000..15f9327
Binary files /dev/null and b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104443.jpg differ
diff --git a/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104503.jpg b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104503.jpg
new file mode 100644
index 0000000..a5b8b15
Binary files /dev/null and b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104503.jpg differ
diff --git a/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104530.jpg b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104530.jpg
new file mode 100644
index 0000000..cfc110a
Binary files /dev/null and b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104530.jpg differ
diff --git a/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104547.jpg b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104547.jpg
new file mode 100644
index 0000000..f6fd3c6
Binary files /dev/null and b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104547.jpg differ
diff --git a/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104614.jpg b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104614.jpg
new file mode 100644
index 0000000..a28dd29
Binary files /dev/null and b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104614.jpg differ
diff --git a/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104636.jpg b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104636.jpg
new file mode 100644
index 0000000..a463d5c
Binary files /dev/null and b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104636.jpg differ
diff --git a/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104647.jpg b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104647.jpg
new file mode 100644
index 0000000..dcbb871
Binary files /dev/null and b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104647.jpg differ
diff --git a/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104827.jpg b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104827.jpg
new file mode 100644
index 0000000..53c0061
Binary files /dev/null and b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104827.jpg differ
diff --git a/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104839.jpg b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104839.jpg
new file mode 100644
index 0000000..e9a74de
Binary files /dev/null and b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104839.jpg differ
diff --git a/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104852.jpg b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104852.jpg
new file mode 100644
index 0000000..2bfb866
Binary files /dev/null and b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104852.jpg differ
diff --git a/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104901.jpg b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104901.jpg
new file mode 100644
index 0000000..abef3db
Binary files /dev/null and b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104901.jpg differ
diff --git a/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104915.jpg b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104915.jpg
new file mode 100644
index 0000000..63be609
Binary files /dev/null and b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104915.jpg differ
diff --git a/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104942.jpg b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104942.jpg
new file mode 100644
index 0000000..706fcfe
Binary files /dev/null and b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 104942.jpg differ
diff --git a/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 105007.jpg b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 105007.jpg
new file mode 100644
index 0000000..04072da
Binary files /dev/null and b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 105007.jpg differ
diff --git a/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 105043.jpg b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 105043.jpg
new file mode 100644
index 0000000..53e17ad
Binary files /dev/null and b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 105043.jpg differ
diff --git a/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 105101.jpg b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 105101.jpg
new file mode 100644
index 0000000..8a1ecb9
Binary files /dev/null and b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 105101.jpg differ
diff --git a/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 105116.jpg b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 105116.jpg
new file mode 100644
index 0000000..65bf013
Binary files /dev/null and b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 105116.jpg differ
diff --git a/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 105156.jpg b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 105156.jpg
new file mode 100644
index 0000000..790e73c
Binary files /dev/null and b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 105156.jpg differ
diff --git a/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 105219.jpg b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 105219.jpg
new file mode 100644
index 0000000..a7f679d
Binary files /dev/null and b/samples/roi_compare_current_vs_100k35/屏幕截图 2026-03-15 105219.jpg differ
diff --git a/samples/roi_compare_current_vs_100k60/index.html b/samples/roi_compare_current_vs_100k60/index.html
new file mode 100644
index 0000000..14372a8
--- /dev/null
+++ b/samples/roi_compare_current_vs_100k60/index.html
@@ -0,0 +1,97 @@
+
+
+
+
+
+ ROI Compare 60
+
+
+
+
+
ROI 对照图
+
左侧是当前主力模型,右侧是 100k filtered + 60 epochs。直接打开本页即可逐张翻看。
+
+
屏幕截图 2026-03-15 104013.jpg

+
屏幕截图 2026-03-15 104056.jpg

+
屏幕截图 2026-03-15 104132.jpg

+
屏幕截图 2026-03-15 104233.jpg

+
屏幕截图 2026-03-15 104318.jpg

+
屏幕截图 2026-03-15 104349.jpg

+
屏幕截图 2026-03-15 104428.jpg

+
屏幕截图 2026-03-15 104443.jpg

+
屏幕截图 2026-03-15 104503.jpg

+
屏幕截图 2026-03-15 104530.jpg

+
屏幕截图 2026-03-15 104547.jpg

+
屏幕截图 2026-03-15 104614.jpg

+
屏幕截图 2026-03-15 104636.jpg

+
屏幕截图 2026-03-15 104647.jpg

+
屏幕截图 2026-03-15 104827.jpg

+
屏幕截图 2026-03-15 104839.jpg

+
屏幕截图 2026-03-15 104852.jpg

+
屏幕截图 2026-03-15 104901.jpg

+
屏幕截图 2026-03-15 104915.jpg

+
屏幕截图 2026-03-15 104942.jpg

+
屏幕截图 2026-03-15 105007.jpg

+
屏幕截图 2026-03-15 105043.jpg

+
屏幕截图 2026-03-15 105101.jpg

+
屏幕截图 2026-03-15 105116.jpg

+
屏幕截图 2026-03-15 105156.jpg

+
屏幕截图 2026-03-15 105219.jpg

+
+
+
+
diff --git a/samples/roi_compare_current_vs_100k60/summary.txt b/samples/roi_compare_current_vs_100k60/summary.txt
new file mode 100644
index 0000000..9581b8e
--- /dev/null
+++ b/samples/roi_compare_current_vs_100k60/summary.txt
@@ -0,0 +1,30 @@
+left_dir=C:\Users\Tellme\apps\DetectionModelTraining\runs\roi_eval\roi_shoes_v1
+right_dir=C:\Users\Tellme\apps\DetectionModelTraining\runs\roi_eval\roi_shoes_100k_filtered_60
+pairs=26
+
+屏幕截图 2026-03-15 104013.jpg
+屏幕截图 2026-03-15 104056.jpg
+屏幕截图 2026-03-15 104132.jpg
+屏幕截图 2026-03-15 104233.jpg
+屏幕截图 2026-03-15 104318.jpg
+屏幕截图 2026-03-15 104349.jpg
+屏幕截图 2026-03-15 104428.jpg
+屏幕截图 2026-03-15 104443.jpg
+屏幕截图 2026-03-15 104503.jpg
+屏幕截图 2026-03-15 104530.jpg
+屏幕截图 2026-03-15 104547.jpg
+屏幕截图 2026-03-15 104614.jpg
+屏幕截图 2026-03-15 104636.jpg
+屏幕截图 2026-03-15 104647.jpg
+屏幕截图 2026-03-15 104827.jpg
+屏幕截图 2026-03-15 104839.jpg
+屏幕截图 2026-03-15 104852.jpg
+屏幕截图 2026-03-15 104901.jpg
+屏幕截图 2026-03-15 104915.jpg
+屏幕截图 2026-03-15 104942.jpg
+屏幕截图 2026-03-15 105007.jpg
+屏幕截图 2026-03-15 105043.jpg
+屏幕截图 2026-03-15 105101.jpg
+屏幕截图 2026-03-15 105116.jpg
+屏幕截图 2026-03-15 105156.jpg
+屏幕截图 2026-03-15 105219.jpg
diff --git a/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104013.jpg b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104013.jpg
new file mode 100644
index 0000000..ab7b576
Binary files /dev/null and b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104013.jpg differ
diff --git a/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104056.jpg b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104056.jpg
new file mode 100644
index 0000000..e9eff14
Binary files /dev/null and b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104056.jpg differ
diff --git a/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104132.jpg b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104132.jpg
new file mode 100644
index 0000000..e61ea65
Binary files /dev/null and b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104132.jpg differ
diff --git a/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104233.jpg b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104233.jpg
new file mode 100644
index 0000000..838a3ca
Binary files /dev/null and b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104233.jpg differ
diff --git a/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104318.jpg b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104318.jpg
new file mode 100644
index 0000000..0e0f3f4
Binary files /dev/null and b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104318.jpg differ
diff --git a/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104349.jpg b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104349.jpg
new file mode 100644
index 0000000..8df454a
Binary files /dev/null and b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104349.jpg differ
diff --git a/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104428.jpg b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104428.jpg
new file mode 100644
index 0000000..ec2b465
Binary files /dev/null and b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104428.jpg differ
diff --git a/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104443.jpg b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104443.jpg
new file mode 100644
index 0000000..5aed6ae
Binary files /dev/null and b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104443.jpg differ
diff --git a/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104503.jpg b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104503.jpg
new file mode 100644
index 0000000..3361715
Binary files /dev/null and b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104503.jpg differ
diff --git a/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104530.jpg b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104530.jpg
new file mode 100644
index 0000000..7f3ad79
Binary files /dev/null and b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104530.jpg differ
diff --git a/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104547.jpg b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104547.jpg
new file mode 100644
index 0000000..ec0784c
Binary files /dev/null and b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104547.jpg differ
diff --git a/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104614.jpg b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104614.jpg
new file mode 100644
index 0000000..d4c4f6c
Binary files /dev/null and b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104614.jpg differ
diff --git a/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104636.jpg b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104636.jpg
new file mode 100644
index 0000000..de22cba
Binary files /dev/null and b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104636.jpg differ
diff --git a/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104647.jpg b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104647.jpg
new file mode 100644
index 0000000..6f23698
Binary files /dev/null and b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104647.jpg differ
diff --git a/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104827.jpg b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104827.jpg
new file mode 100644
index 0000000..e9648de
Binary files /dev/null and b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104827.jpg differ
diff --git a/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104839.jpg b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104839.jpg
new file mode 100644
index 0000000..1c5237e
Binary files /dev/null and b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104839.jpg differ
diff --git a/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104852.jpg b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104852.jpg
new file mode 100644
index 0000000..9a2039e
Binary files /dev/null and b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104852.jpg differ
diff --git a/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104901.jpg b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104901.jpg
new file mode 100644
index 0000000..f30e0a6
Binary files /dev/null and b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104901.jpg differ
diff --git a/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104915.jpg b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104915.jpg
new file mode 100644
index 0000000..8111ca6
Binary files /dev/null and b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104915.jpg differ
diff --git a/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104942.jpg b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104942.jpg
new file mode 100644
index 0000000..d952c97
Binary files /dev/null and b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 104942.jpg differ
diff --git a/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 105007.jpg b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 105007.jpg
new file mode 100644
index 0000000..1759b21
Binary files /dev/null and b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 105007.jpg differ
diff --git a/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 105043.jpg b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 105043.jpg
new file mode 100644
index 0000000..0f6ccc6
Binary files /dev/null and b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 105043.jpg differ
diff --git a/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 105101.jpg b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 105101.jpg
new file mode 100644
index 0000000..2532465
Binary files /dev/null and b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 105101.jpg differ
diff --git a/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 105116.jpg b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 105116.jpg
new file mode 100644
index 0000000..a59ab3c
Binary files /dev/null and b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 105116.jpg differ
diff --git a/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 105156.jpg b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 105156.jpg
new file mode 100644
index 0000000..89e2474
Binary files /dev/null and b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 105156.jpg differ
diff --git a/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 105219.jpg b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 105219.jpg
new file mode 100644
index 0000000..55e2db6
Binary files /dev/null and b/samples/roi_compare_current_vs_100k60/屏幕截图 2026-03-15 105219.jpg differ
diff --git a/samples/roi_preview/openimages_mixed_overlay.jpg b/samples/roi_preview/openimages_mixed_overlay.jpg
new file mode 100644
index 0000000..a7c9161
Binary files /dev/null and b/samples/roi_preview/openimages_mixed_overlay.jpg differ
diff --git a/samples/roi_preview/openimages_mixed_roi0.jpg b/samples/roi_preview/openimages_mixed_roi0.jpg
new file mode 100644
index 0000000..ab95609
Binary files /dev/null and b/samples/roi_preview/openimages_mixed_roi0.jpg differ
diff --git a/samples/roi_preview/openimages_mixed_roi1.jpg b/samples/roi_preview/openimages_mixed_roi1.jpg
new file mode 100644
index 0000000..7779eef
Binary files /dev/null and b/samples/roi_preview/openimages_mixed_roi1.jpg differ
diff --git a/samples/roi_preview/openimages_mixed_roi2.jpg b/samples/roi_preview/openimages_mixed_roi2.jpg
new file mode 100644
index 0000000..2d2f342
Binary files /dev/null and b/samples/roi_preview/openimages_mixed_roi2.jpg differ
diff --git a/samples/roi_preview/openimages_pair_overlay.jpg b/samples/roi_preview/openimages_pair_overlay.jpg
new file mode 100644
index 0000000..7ed0765
Binary files /dev/null and b/samples/roi_preview/openimages_pair_overlay.jpg differ
diff --git a/samples/roi_preview/openimages_pair_roi0.jpg b/samples/roi_preview/openimages_pair_roi0.jpg
new file mode 100644
index 0000000..11359af
Binary files /dev/null and b/samples/roi_preview/openimages_pair_roi0.jpg differ
diff --git a/samples/roi_preview/openimages_pair_roi1.jpg b/samples/roi_preview/openimages_pair_roi1.jpg
new file mode 100644
index 0000000..9011091
Binary files /dev/null and b/samples/roi_preview/openimages_pair_roi1.jpg differ
diff --git a/samples/roi_preview/openimages_single_overlay.jpg b/samples/roi_preview/openimages_single_overlay.jpg
new file mode 100644
index 0000000..fd16f44
Binary files /dev/null and b/samples/roi_preview/openimages_single_overlay.jpg differ
diff --git a/samples/roi_preview/ppe_pair_a_overlay.jpg b/samples/roi_preview/ppe_pair_a_overlay.jpg
new file mode 100644
index 0000000..71ed5ca
Binary files /dev/null and b/samples/roi_preview/ppe_pair_a_overlay.jpg differ
diff --git a/samples/roi_preview/ppe_pair_a_roi0.jpg b/samples/roi_preview/ppe_pair_a_roi0.jpg
new file mode 100644
index 0000000..d09a676
Binary files /dev/null and b/samples/roi_preview/ppe_pair_a_roi0.jpg differ
diff --git a/samples/roi_preview/ppe_pair_a_roi1.jpg b/samples/roi_preview/ppe_pair_a_roi1.jpg
new file mode 100644
index 0000000..8285d7c
Binary files /dev/null and b/samples/roi_preview/ppe_pair_a_roi1.jpg differ
diff --git a/samples/roi_preview/ppe_pair_b_overlay.jpg b/samples/roi_preview/ppe_pair_b_overlay.jpg
new file mode 100644
index 0000000..64bfa6c
Binary files /dev/null and b/samples/roi_preview/ppe_pair_b_overlay.jpg differ
diff --git a/samples/roi_preview/ppe_pair_b_roi0.jpg b/samples/roi_preview/ppe_pair_b_roi0.jpg
new file mode 100644
index 0000000..5dd8ee4
Binary files /dev/null and b/samples/roi_preview/ppe_pair_b_roi0.jpg differ
diff --git a/samples/roi_preview/ppe_pair_b_roi1.jpg b/samples/roi_preview/ppe_pair_b_roi1.jpg
new file mode 100644
index 0000000..8337417
Binary files /dev/null and b/samples/roi_preview/ppe_pair_b_roi1.jpg differ
diff --git a/samples/roi_preview/summary.txt b/samples/roi_preview/summary.txt
new file mode 100644
index 0000000..5a413c6
--- /dev/null
+++ b/samples/roi_preview/summary.txt
@@ -0,0 +1,15 @@
+
+Sample Roi Mode Boxes AreaRatio Crop
+------ --- ---- ----- --------- ----
+openimages_mixed roi0 single 1 0.772 C:\Users\Tellme\apps\DetectionModelTraining\samples\roi_preview\openima...
+openimages_mixed roi1 single 1 0.145 C:\Users\Tellme\apps\DetectionModelTraining\samples\roi_preview\openima...
+openimages_mixed roi2 single 1 0.113 C:\Users\Tellme\apps\DetectionModelTraining\samples\roi_preview\openima...
+openimages_pair roi0 single 1 0.178 C:\Users\Tellme\apps\DetectionModelTraining\samples\roi_preview\openima...
+openimages_pair roi1 single 1 0.108 C:\Users\Tellme\apps\DetectionModelTraining\samples\roi_preview\openima...
+ppe_pair_a roi0 single 1 0.113 C:\Users\Tellme\apps\DetectionModelTraining\samples\roi_preview\ppe_pai...
+ppe_pair_a roi1 single 1 0.179 C:\Users\Tellme\apps\DetectionModelTraining\samples\roi_preview\ppe_pai...
+ppe_pair_b roi0 single 1 0.178 C:\Users\Tellme\apps\DetectionModelTraining\samples\roi_preview\ppe_pai...
+ppe_pair_b roi1 single 1 0.175 C:\Users\Tellme\apps\DetectionModelTraining\samples\roi_preview\ppe_pai...
+
+
+