PSCC-Net 复现笔记(2026-10-20)

论文信息 标题:PSCC-Net: Progressive Spatio-Channel Correlation Network for Image Manipulation Detection and Localization 作者:Xiaohong Liu, Yaojie Liu, Jun Chen, Xiaoming Liu 出处:IEEE TCSVT, vol. 32, no. 11, pp. 7505–7517, 2022 DOI:10.1109/TCSVT.2022.3189545 代码:https://github.com/proteus1991/PSCC-Net(MIT 协议,权重内置于仓库) 一句话 用「HRNet 多尺度骨干 + 由粗到细渐进式 mask + 空间/通道相关性模块(SCCM) + 独立分类头」,同时做图像篡改检测(真/假二分类)与定位(篡改区域 mask)。 运行环境(本机,无 GPU) Python 3.11(uv 管理)+ torch 2.5.1+cpu + numpy / yacs / imageio / pillow 代码目录:C:\Users\123\Desktop\Papers\PSCC-Net\ 虚拟环境:C:\Users\123\Desktop\Papers\.venv\ 跑通步骤 下载代码 + 3 个权重(checkpoint/{HRNet,NLCDetection,DetectionHead}_checkpoint/*.pth)+ 12 张 sample/ 样例图。 装依赖(torch 用阿里云镜像,快): uv pip install --python .venv\Scripts\python.exe --index-url https://mirrors.aliyun.com/pypi/simple "torch==2.5.1" 打了 4 个兼容性补丁(原代码只支持 Linux + CUDA + 旧 numpy): test.py:CUDA→CPU、去掉 3 处 nn.DataParallel、num_workers=0、map_location='cpu'; utils/utils.py:save_image 用 numpy+imageio 替代 torchvision,并用 os.path.basename 修 Windows 反斜杠路径; models/seg_hrnet.py:303:np.int → int(numpy 2.x 已删除该别名)。 运行:cd PSCC-Net → ..\.venv\Scripts\python.exe test.py 结果(12 张样例图,全部判定正确) 类型 数量 判定 结果 authentic(真实) 6 authentic ✅ 6/6 copymove(复制移动) 2 forged ✅ 2/2 removal(内容移除) 2 forged ✅ 2/2 splice(拼接) 2 forged ✅ 2/2 输出:PSCC-Net\mask_results\ 下 12 张定位热力图(真实图接近全黑,伪造图有定位内容)。 ...

October 20, 2026 · 1 min · ZZC

PSCC-Net 论文讲解

0. 一句话 PSCC-Net 做两件事:① 检测——判断一张图是不是被 P 过(真假二分类);② 定位——把被 P 的区域一个像素一个像素地圈出来(输出一张黑白 mask)。它的核心创新是「由粗到细渐进式生成 mask」+「空间 + 通道双重相关性注意力模块 SCCM」。 1. 背景:这是什么任务(IMDL) IMDL = Image Manipulation Detection and Localization(图像篡改检测与定位)。 篡改分两大类: 类别 说明 例子 内容相关(content-dependent) 动了图像内容,制造假信息 splicing 拼接(从别的图搬一块贴过来)、copy-move 复制移动(同图内复制一块)、removal 移除(抠掉物体再用修复算法填上) 内容无关(content-independent) 全局后处理,不制造假信息但会掩盖痕迹 亮度/对比度、模糊、加噪、JPEG 压缩 关键难点:内容相关的篡改会"顺着语义"来(把车贴在马路上、把脸换掉),肉眼几乎看不出破绽。但它会在"图像指纹"层面留下不一致——比如拼接进来的区域,其相机噪声、JPEG 压缩痕迹和原图其他区域对不上。 检测(这张图假不假)和定位(哪里假)是两个层次:检测给机器/系统用,定位给人看。 2. 论文要解决的三个难题(读论文时抓住这三点) 作者说之前的方法有 3 个没解决好的问题: A. 尺度变化(Scale Variation):被 P 的区域有大有小。传统的 encoder-decoder 和 no-pooling 结构都是"串行"提取特征,没法同时用好局部细节和全局上下文,只能应付有限的尺度。 B. 图像相关性(Image Correlation):判断一块区域是不是篡改,最好的办法是把它和正常区域对比。但以前的方法大多直接学"图 → mask"的映射,容易过拟合到某一种攻击类型;忽略了空间相关性,泛化差。 C. 检测(Detection):检测和定位本来是相关的(有区域响应高 = 假,全低 = 真),但以前的方法默认所有输入都是篡改图,导致对干净图大量误报。 → PSCC-Net 就是针对这三个问题设计的。 3. 网络结构:两条路径(图 2 是灵魂,务必看懂) 3.1 Top-Down Path(自上而下,提取特征)——骨干 HRNetV2p-W18 用 HRNet(论文里的 [27],High-Resolution Net) 当骨干。特点: ...

October 20, 2026 · 2 min · ZZC

HTML笔记

HTML 1.什么是HTML? HTML是HypeText Mark-up Language的简称,即超文本标记语言,是一种用于创建网页的标准标记语言。可以使用 HTML 来建立自己的网页,HTML 运行在浏览器上,由浏览器来解析。它不是一种编程语言(如java、C语言等),标记:就是标签。<标签名称></标签名称>。 白话:用来写网页的一门语言,有很多标签组成 所谓的超文本: 1、因为网页可以放图片、视频、音频等内容(超越文本限制) 2、还可以在网页中跳转到另一个网页中(超链接文本) 2.HTML的作用 用来开发网页 许多网络攻击(如 XSS(跨站脚本)、SQL 注入、CSRF(跨站请求伪造))都针对 HTML 和 Web 技术。 攻击者利用 HTML 结构注入恶意代码 HTML 是 Web 安全的底层基础,学习它不仅能帮助理解攻击手法,还能提升防御能力。无论是漏洞挖掘、渗透测试还是安全开发,HTML 知识都是必备技能。 3.网页的组成部分 HTML:负责网页的架构;(骨架) CSS:负责网页的样式,美化;(衣服) JavaScript(JS):负责网页的行为;(动作) 4.工具介绍 这里我们使用工具,phpstorm HTML文件的命名 HTML文件的文件后缀名为.html 文件名中不要包含特殊符号,如空格、$等。 5.结构介绍 这个尖括号 就叫标签 生成结构 phpstorm会自动帮我们生成html结构 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> </body> </html> 什么叫标签 结构详情介绍 html由标签和属性构成。 标签:长在尖角号后面的第一个单词就是标签 属性:长在标签后面的并且用空格隔开的,称作 属性 结构标签介绍 <!-- 声明文档类型为 HTML5,告诉浏览器按标准 HTML 解析 --> <!DOCTYPE html> <!-- 根标签,整个网页所有内容都要写在里面 --> <!-- lang="en" 表示网页语言为英文 --> <html lang="en"> <!-- 头部标签,存放网页配置信息,不在页面上显示 --> <head> <!-- 设置网页字符编码为 UTF-8,防止中文乱码 --> <meta charset="UTF-8"> <!-- 网页标题,显示在浏览器标签栏上 --> <title>Title</title> </head> <!-- 身体标签,网页所有可见内容(文字、图片、按钮等)都写在这里 --> <body> </body> </html> 6.网页中常见的标签 标题标签 h1标签 h2标签 h3标签 h4标签 h5标签 h6标签 <body> <h1>hello word</h1> <h2>hello word</h2> <h3>hello word</h3> <h4>hello word</h4> <h5>hello word</h5> <h6>hello word</h6> </body> 2.段落标签 ...

October 17, 2026 · 2 min · ZZC

第一篇文章

这是我的第一篇 Hugo 博客文章。 我是ZZC。 本界面由Hugo(在本地把md 文档变成完整的网页文件)和cloudflare(提供免费域名,把 Hugo 生成的结果发布到公网)支持,谢谢两位嘉宾!

October 16, 2026 · 1 min · ZZC