感知雜湊影像去重

螢幕錄影或步驟報告常含有許多近乎相同的畫面。感知雜湊(average-hash 與 difference-hash) 將視覺上相似的影像對應到數值接近的指紋,因此可依漢明距離分群並收合 —— 每個明顯不同的 畫面只保留一個代表。

雜湊函式使用 **Pillow**(已是核心相依 —— 無需額外套件);去重/比較邏輯為純 Python,且 hasher 可注入,因此分群可在無任何影像下單元測試。不匯入 PySide6

無頭 API

from je_auto_control import (
    average_hash, dhash, hamming_distance, images_similar, dedupe_images)

h1 = average_hash("frame1.png")          # 十六進位指紋
h2 = average_hash("frame2.png")
hamming_distance(h1, h2)                  # 相異的位元數
images_similar(h1, h2, max_distance=5)   # 是否在容差內?

dedupe_images(["a.png", "b.png", "c.png"], max_distance=5)
# -> 每個近似重複叢集保留一張(保留第一個)

average_hash 將每個像素與平均亮度比較;``dhash`` 將每個像素與其右鄰比較(對 gamma 偏移更穩健)。dedupe_images 接受 hasher 掛鉤(預設為 average_hash),因此可 用預先計算的雜湊測試分群。

執行器指令

指令

效果

AC_image_hash

影像的 {hash}``(``algo:average/dhash)。

AC_dedupe_images

收合近似重複影像後的 {unique}

paths 接受清單或 JSON 字串清單(因此視覺化建構器可用)。相同操作亦提供為 MCP 工具 (ac_image_hash / ac_dedupe_images),以及 Script Builder 中 Image 分類下的 指令。