{
  "generated_at": "2026-09-29T22:04:00+0800",
  "generator": "/Users/szj/Downloads/tmp/any2svg/public/loop06/measure.py",
  "repo": "/Users/szj/Downloads/tmp/any2svg",
  "offline": true,
  "tool_versions": {
    "python": "3.13.5 (/Users/szj/Downloads/tmp/any2svg/research/loop06/measurements/venv313/bin/python)",
    "vtracer": "0.6.15",
    "pillow": "12.3.0",
    "potrace": "potrace 1.16. Copyright (C) 2001-2019 Peter Selinger.",
    "inkscape": "Inkscape 1.4.4 (dcaf3e7, 2026-05-05)",
    "homebrew": "Homebrew 7.0.7-9-gcc9ff03",
    "platform": "macOS-27.0-arm64-arm-64bit-Mach-O",
    "machine": "arm64",
    "cpu_count": 10
  },
  "runs": [
    {
      "input": {
        "path": "/Users/szj/Downloads/tmp/any2svg/public/apple-touch-icon.png",
        "bytes": 6101,
        "sha256": "12eafc7f7e0f4cb48d17704fa40f663e4db97e18790b9bed35a1699c363bf768",
        "width": 180,
        "height": 180,
        "mode": "RGB",
        "distinct_rgb_colours": 205,
        "quantised_colours_256_thumb": 16,
        "early_exit_over_48": false,
        "engine_mode": "polygon"
      },
      "measurements": [
        {
          "tool": "any2svg engine (python/any2svg_engine.py, vtracer)",
          "command": "/Users/szj/Downloads/tmp/any2svg/research/loop06/measurements/venv313/bin/python /Users/szj/Downloads/tmp/any2svg/python/any2svg_engine.py --input /Users/szj/Downloads/tmp/any2svg/public/apple-touch-icon.png --outdir /var/folders/f2/ydyw701n3dq1gwl99fzv98200000gn/T/any2svg-bench-s3zwre13/engine/apple-touch-icon --preset balanced --mode auto",
          "wall_seconds": 1.193,
          "exit_code": 0,
          "stderr_tail": "auto mode -> polygon\napple-touch-icon-balanced.svg         1 KB  paths=    3  colours=    3  canvas=180x180",
          "engine_mode": "polygon",
          "engine_canvas": {
            "w": 180,
            "h": 180,
            "paths": 3
          },
          "output": {
            "bytes": 1027,
            "sha256": "bf6da9a359e4e18589506caf152bfcb45ebf0df5af851321fa9cb3e41555f61e",
            "m_commands": 3,
            "path_elements": 3,
            "image_elements": 0,
            "bytes_without_embedded_image": 1027,
            "distinct_fill_or_stroke_values": 3,
            "distinct_colors": 3,
            "fill_values": [
              "#141414",
              "#1A1A1A",
              "#FBFBFB"
            ],
            "contains_image_element": false
          },
          "output_path_ephemeral": "/var/folders/f2/ydyw701n3dq1gwl99fzv98200000gn/T/any2svg-bench-s3zwre13/engine/apple-touch-icon/apple-touch-icon-balanced.svg"
        },
        {
          "tool": "potrace (1-bit threshold trace)",
          "command": "/opt/homebrew/bin/potrace -s -o /var/folders/f2/ydyw701n3dq1gwl99fzv98200000gn/T/any2svg-bench-s3zwre13/potrace/apple-touch-icon.svg /var/folders/f2/ydyw701n3dq1gwl99fzv98200000gn/T/any2svg-bench-s3zwre13/potrace/apple-touch-icon.pbm",
          "prep_seconds_pillow_threshold": 0.008,
          "wall_seconds": 0.045,
          "wall_seconds_total_prep_plus_trace": 0.053,
          "exit_code": 0,
          "stderr_tail": "",
          "note": "potrace traces monochrome only, so the input is converted to 1-bit at threshold 128 first; output is 1 colour layer",
          "output": {
            "bytes": 1322,
            "sha256": "69756cb3c066595e712901e83e2980908230c7b1d9649402cb97f43136b6d883",
            "m_commands": 2,
            "path_elements": 1,
            "image_elements": 0,
            "bytes_without_embedded_image": 1322,
            "distinct_fill_or_stroke_values": 2,
            "distinct_colors": 1,
            "fill_values": [
              "#000000"
            ],
            "contains_image_element": false
          },
          "output_path_ephemeral": "/var/folders/f2/ydyw701n3dq1gwl99fzv98200000gn/T/any2svg-bench-s3zwre13/potrace/apple-touch-icon.svg"
        },
        {
          "tool": "inkscape Trace Bitmap (object-trace action)",
          "command": "/opt/homebrew/bin/inkscape --actions=select-all;object-trace:8,1,0,0,2,1,1;export-filename:/var/folders/f2/ydyw701n3dq1gwl99fzv98200000gn/T/any2svg-bench-s3zwre13/inkscape/apple-touch-icon.svg;export-do /Users/szj/Downloads/tmp/any2svg/public/apple-touch-icon.png",
          "wall_seconds": 20.398,
          "exit_code": 0,
          "stdout_tail": "Tracing... 100%",
          "stderr_tail": "Tracing done.",
          "note": "8 scans, smooth=1, stack=0, remove_background=0, speckles=2, smooth_corners=1, optimize=1; source bitmap is left in the document, so as-exported bytes include it",
          "output": {
            "bytes": 29689,
            "sha256": "708124e6aca04aeacd08a362d1b041bb02200c01be2faf1cc2419b8af9e97e4c",
            "m_commands": 79,
            "path_elements": 7,
            "image_elements": 1,
            "bytes_without_embedded_image": 20869,
            "distinct_fill_or_stroke_values": 7,
            "distinct_colors": 7,
            "fill_values": [
              "#070707",
              "#131313",
              "#2c2c2c",
              "#575757",
              "#8d8d8d",
              "#c8c8c8",
              "#fdfdfd"
            ],
            "contains_image_element": true
          },
          "output_path_ephemeral": "/var/folders/f2/ydyw701n3dq1gwl99fzv98200000gn/T/any2svg-bench-s3zwre13/inkscape/apple-touch-icon.svg"
        }
      ]
    },
    {
      "input": {
        "path": "/Users/szj/Downloads/tmp/any2svg/public/og-image.png",
        "bytes": 63033,
        "sha256": "8b10b9c0b3acac18c4fa91f665e131563731ee6d095e8e0d64583e3f6c4476ea",
        "width": 1200,
        "height": 630,
        "mode": "RGB",
        "distinct_rgb_colours": 257,
        "quantised_colours_256_thumb": 24,
        "early_exit_over_48": false,
        "engine_mode": "polygon"
      },
      "measurements": [
        {
          "tool": "any2svg engine (python/any2svg_engine.py, vtracer)",
          "command": "/Users/szj/Downloads/tmp/any2svg/research/loop06/measurements/venv313/bin/python /Users/szj/Downloads/tmp/any2svg/python/any2svg_engine.py --input /Users/szj/Downloads/tmp/any2svg/public/og-image.png --outdir /var/folders/f2/ydyw701n3dq1gwl99fzv98200000gn/T/any2svg-bench-s3zwre13/engine/og-image --preset balanced --mode auto",
          "wall_seconds": 2.266,
          "exit_code": 0,
          "stderr_tail": "auto mode -> polygon\nog-image-balanced.svg        32 KB  paths=  236  colours=   93  canvas=1200x630",
          "engine_mode": "polygon",
          "engine_canvas": {
            "w": 1200,
            "h": 630,
            "paths": 236
          },
          "output": {
            "bytes": 32583,
            "sha256": "ba857b5ee63691038323a3863a91ca037be470710a89eb8ac246db498b795a11",
            "m_commands": 237,
            "path_elements": 236,
            "image_elements": 0,
            "bytes_without_embedded_image": 32583,
            "distinct_fill_or_stroke_values": 93,
            "distinct_colors": 93,
            "fill_values": [
              "#0A0A0A",
              "#111111",
              "#121212",
              "#131313",
              "#141414",
              "#151515",
              "#161616",
              "#171717",
              "#181818",
              "#191919",
              "#1A1A1A",
              "#1B1B1B",
              "#1C1C1C",
              "#1E1E1E",
              "#1F1F1F",
              "#202020",
              "#212121",
              "#222222",
              "#242424",
              "#252525"
            ],
            "contains_image_element": false
          },
          "output_path_ephemeral": "/var/folders/f2/ydyw701n3dq1gwl99fzv98200000gn/T/any2svg-bench-s3zwre13/engine/og-image/og-image-balanced.svg"
        },
        {
          "tool": "potrace (1-bit threshold trace)",
          "command": "/opt/homebrew/bin/potrace -s -o /var/folders/f2/ydyw701n3dq1gwl99fzv98200000gn/T/any2svg-bench-s3zwre13/potrace/og-image.svg /var/folders/f2/ydyw701n3dq1gwl99fzv98200000gn/T/any2svg-bench-s3zwre13/potrace/og-image.pbm",
          "prep_seconds_pillow_threshold": 0.011,
          "wall_seconds": 0.077,
          "wall_seconds_total_prep_plus_trace": 0.088,
          "exit_code": 0,
          "stderr_tail": "",
          "note": "potrace traces monochrome only, so the input is converted to 1-bit at threshold 128 first; output is 1 colour layer",
          "output": {
            "bytes": 21718,
            "sha256": "2acfad75bdf43259ab1c06cf9e2b97fcacd20a56f3172c34eb5dc40c2f3780fb",
            "m_commands": 116,
            "path_elements": 88,
            "image_elements": 0,
            "bytes_without_embedded_image": 21718,
            "distinct_fill_or_stroke_values": 2,
            "distinct_colors": 1,
            "fill_values": [
              "#000000"
            ],
            "contains_image_element": false
          },
          "output_path_ephemeral": "/var/folders/f2/ydyw701n3dq1gwl99fzv98200000gn/T/any2svg-bench-s3zwre13/potrace/og-image.svg"
        },
        {
          "tool": "inkscape Trace Bitmap (object-trace action)",
          "command": "/opt/homebrew/bin/inkscape --actions=select-all;object-trace:8,1,0,0,2,1,1;export-filename:/var/folders/f2/ydyw701n3dq1gwl99fzv98200000gn/T/any2svg-bench-s3zwre13/inkscape/og-image.svg;export-do /Users/szj/Downloads/tmp/any2svg/public/og-image.png",
          "wall_seconds": 10.436,
          "exit_code": 0,
          "stdout_tail": "Tracing... 3%\nTracing... 15%\nTracing... 23%\nTracing... 41%\nTracing... 65%\nTracing... 78%\nTracing... 86%\nTracing... 90%\nTracing... 99%\nTracing... 100%\nTracing... 100%",
          "stderr_tail": "Tracing done.",
          "note": "8 scans, smooth=1, stack=0, remove_background=0, speckles=2, smooth_corners=1, optimize=1; source bitmap is left in the document, so as-exported bytes include it",
          "output": {
            "bytes": 550602,
            "sha256": "76bdc8766ba637f95d2c2decbd71077140be30faf7075f252a090801091abf98",
            "m_commands": 2564,
            "path_elements": 8,
            "image_elements": 1,
            "bytes_without_embedded_image": 460883,
            "distinct_fill_or_stroke_values": 8,
            "distinct_colors": 8,
            "fill_values": [
              "#131313",
              "#6d6d6d",
              "#6eb3a5",
              "#8d8d8d",
              "#acacac",
              "#cecece",
              "#f3f3f3",
              "#fdfdfd"
            ],
            "contains_image_element": true
          },
          "output_path_ephemeral": "/var/folders/f2/ydyw701n3dq1gwl99fzv98200000gn/T/any2svg-bench-s3zwre13/inkscape/og-image.svg"
        }
      ]
    },
    {
      "input": {
        "path": "/var/folders/f2/ydyw701n3dq1gwl99fzv98200000gn/T/any2svg-bench-s3zwre13/synthetic-flat.png",
        "bytes": 3523,
        "sha256": "74d27fa8b341b236550743301eaeea8b5d0f2455d472deca9a904fba49a13ea4",
        "width": 800,
        "height": 600,
        "mode": "RGB",
        "distinct_rgb_colours": 6,
        "quantised_colours_256_thumb": 49,
        "early_exit_over_48": true,
        "engine_mode": "spline"
      },
      "measurements": [
        {
          "tool": "any2svg engine (python/any2svg_engine.py, vtracer)",
          "command": "/Users/szj/Downloads/tmp/any2svg/research/loop06/measurements/venv313/bin/python /Users/szj/Downloads/tmp/any2svg/python/any2svg_engine.py --input /var/folders/f2/ydyw701n3dq1gwl99fzv98200000gn/T/any2svg-bench-s3zwre13/synthetic-flat.png --outdir /var/folders/f2/ydyw701n3dq1gwl99fzv98200000gn/T/any2svg-bench-s3zwre13/engine/synthetic-flat --preset balanced --mode auto",
          "wall_seconds": 1.509,
          "exit_code": 0,
          "stderr_tail": "auto mode -> spline\nsynthetic-flat-balanced.svg         3 KB  paths=    6  colours=    6  canvas=800x600",
          "engine_mode": "spline",
          "engine_canvas": {
            "w": 800,
            "h": 600,
            "paths": 6
          },
          "output": {
            "bytes": 3068,
            "sha256": "a21858da46de86b4845434b433fc5d87b15f35a2f8795f9794cd04fe81812a4f",
            "m_commands": 6,
            "path_elements": 6,
            "image_elements": 0,
            "bytes_without_embedded_image": 3068,
            "distinct_fill_or_stroke_values": 6,
            "distinct_colors": 6,
            "fill_values": [
              "#1E1E1E",
              "#1E3CB4",
              "#28965A",
              "#C8283C",
              "#F0C828",
              "#FFFFFF"
            ],
            "contains_image_element": false
          },
          "output_path_ephemeral": "/var/folders/f2/ydyw701n3dq1gwl99fzv98200000gn/T/any2svg-bench-s3zwre13/engine/synthetic-flat/synthetic-flat-balanced.svg"
        },
        {
          "tool": "potrace (1-bit threshold trace)",
          "command": "/opt/homebrew/bin/potrace -s -o /var/folders/f2/ydyw701n3dq1gwl99fzv98200000gn/T/any2svg-bench-s3zwre13/potrace/synthetic-flat.svg /var/folders/f2/ydyw701n3dq1gwl99fzv98200000gn/T/any2svg-bench-s3zwre13/potrace/synthetic-flat.pbm",
          "prep_seconds_pillow_threshold": 0.005,
          "wall_seconds": 0.058,
          "wall_seconds_total_prep_plus_trace": 0.063,
          "exit_code": 0,
          "stderr_tail": "",
          "note": "potrace traces monochrome only, so the input is converted to 1-bit at threshold 128 first; output is 1 colour layer",
          "output": {
            "bytes": 771,
            "sha256": "1f2d81043ffe5f9b388126a39434341895fda90005f25ff9b521d1dc6e51a381",
            "m_commands": 1,
            "path_elements": 1,
            "image_elements": 0,
            "bytes_without_embedded_image": 771,
            "distinct_fill_or_stroke_values": 2,
            "distinct_colors": 1,
            "fill_values": [
              "#000000"
            ],
            "contains_image_element": false
          },
          "output_path_ephemeral": "/var/folders/f2/ydyw701n3dq1gwl99fzv98200000gn/T/any2svg-bench-s3zwre13/potrace/synthetic-flat.svg"
        },
        {
          "tool": "inkscape Trace Bitmap (object-trace action)",
          "command": "/opt/homebrew/bin/inkscape --actions=select-all;object-trace:8,1,0,0,2,1,1;export-filename:/var/folders/f2/ydyw701n3dq1gwl99fzv98200000gn/T/any2svg-bench-s3zwre13/inkscape/synthetic-flat.svg;export-do /var/folders/f2/ydyw701n3dq1gwl99fzv98200000gn/T/any2svg-bench-s3zwre13/synthetic-flat.png",
          "wall_seconds": 12.655,
          "exit_code": 0,
          "stdout_tail": "Tracing... 3%\nTracing... 54%\nTracing... 100%",
          "stderr_tail": "Tracing done.",
          "note": "8 scans, smooth=1, stack=0, remove_background=0, speckles=2, smooth_corners=1, optimize=1; source bitmap is left in the document, so as-exported bytes include it",
          "output": {
            "bytes": 6759,
            "sha256": "4fbd7288415ef2fa7b7bd789fa4ad63a4ca89c66c2a16a9d6b6de7f134ad6be8",
            "m_commands": 6,
            "path_elements": 4,
            "image_elements": 1,
            "bytes_without_embedded_image": 1605,
            "distinct_fill_or_stroke_values": 4,
            "distinct_colors": 4,
            "fill_values": [
              "#1d1d1d",
              "#1d3bb3",
              "#279559",
              "#c7273b"
            ],
            "contains_image_element": true
          },
          "output_path_ephemeral": "/var/folders/f2/ydyw701n3dq1gwl99fzv98200000gn/T/any2svg-bench-s3zwre13/inkscape/synthetic-flat.svg"
        }
      ]
    }
  ]
}
