compression op• 데이터 종류: image2d → images
• 호출: import imgforensics; imgforensics.jpeg_ghost_map(image, qualities=None, block: 'int' = 16) -> 'list'(또는 opsimgforensics.get("jpeg_ghost_map"))
JPEG 고스트(Farid 2009). 품질을 훑어 얻은 재압축 잔차 지도의 열. `images`.
> 아래 상세 설명은 원문입니다 —— 요약과 제목은 번역되어 있습니다.
ある領域が品質 `q0 で一度圧縮されていると、q = q0` で再圧縮したときに
その領域の差分が 谷 になる。画像全体が同じ `q0` なら谷は全面に出るが、
別の品質で圧縮された部分が貼られていると、**その領域だけ別の `q` で谷になる**。
返りは `len(qualities) 本の (H, W) 地図(block` 角の箱平均で平滑化した
二乗差)。谷の位置を画素ごとに読むのは :func:jpeg_ghost_quality。
Pillow 必須(:class:ImportError)。理由は :func:error_level_map と同じ。
実測(`tests/test_imgforensics.py::test_jpeg_ghost_finds_the_pasted_quality`、
品質 92 の背景に品質 60 で圧縮した 64x64 を貼った 192x192、掃引 40..95 step 5):
貼った領域の谷は 品質 60(真値 60、誤差 0)、背景の谷は 品質 95。
背景が 92 ではなく 95 になるのは掃引が 5 刻みで 92 を含まないからで、
谷は掃引した品質の中からしか出ない —— 刻みより細かい品質は読めない。
• 샘플 데이터 카탈로그(DL URL / 라이선스) —— 2-D 는 skimage.data(BSD/public)+ 합성, 3-D 는 실데이터 소스(Stanford/PDS 등)의 DL URL.
• 연산자의 내력·참고문헌 —— 이 연산자 족의 바탕이 된 연구/기법의 출처.
• 알고리즘의 정전(저자·연도)과 용도는 위의 패밀리 사용 가이드에 적혀 있습니다.
• image_forensics_audit — py -3.11 examples/image_forensics_audit.py
• poc_forensics_roc — py -3.11 examples/poc_forensics_roc.py
images 를 입력으로 받는 것)sensor_fingerprint · jpeg_ghost_quality
compression)error_level_map · jpeg_quality_estimate · jpeg_ghost_quality
*Provenance: imgforensics.py — IMGFORENSICS 연산자 레지스트리. 이 op 노트는 tools/opdocs.py md 가 자동 생성합니다(직접 편집하지 마세요).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.