数字水印 | 图像标准化论文:Digital Watermarking Robust to Geometric Distortions(二)

目录

      • C 变换参数的确定
      • D 水印的影响
      • E 可替代的标准化过程



🤖原文: Digital Watermarking Robust to Geometric Distortions

🤖前言: 这是一篇 2005 年的 SCI 一区 + CCF-A,但是网上关于它的讲解貌似挺少的。文中提出了两种数字水印方案,但是我只关注第一种方案中的图像标准化技术。由于本人很菜,因此可能存在翻译或者理解的错误,请各位指正!



C 变换参数的确定

在本节中,我们展示了如何确定与变换相关的参数,使它们达到各自的标准化目标。



矩阵 A x = ( 1 β 0 1 ) \mathbf{A}_x=\begin{pmatrix} 1 & \beta \\ 0 & 1 \end{pmatrix} Ax=(10β1)

回顾前文公式:

μ p q ′ = ∑ i = 0 p ∑ j = 0 q ( p i ) T ( q j ) a 11 i ⋅ a 12 p − i ⋅ a 21 j ⋅ a 22 q − j ⋅ μ i + j , p + q − i − j \mu'_{pq} = \sum_{i=0}^{p}\sum_{j=0}^{q} \begin{pmatrix} p \\ i \end{pmatrix}^T \begin{pmatrix} q \\ j \end{pmatrix} a^i_{11}\cdot a^{p-i}_{12}\cdot a^{j}_{21}\cdot a^{q-j}_{22}\cdot \mu_{i+j,p+q-i-j} μpq=i=0pj=0q(pi)T(qj)a11ia12pia21ja22qjμi+j,p+qij

个人理解:这里提到前文公式,是为了告诉读者 μ 30 ( 2 ) \mu^{(2)}_{30} μ30(2) 是怎么求出来的。应该就是把 p , q p,q p,q 和矩阵 A x \mathbf{A}_x Ax 中的参数代入上式,从而得到 μ 30 ( 2 ) \mu^{(2)}_{30} μ30(2)。可是我代入进去的结果不对啊?这里的转置是我自己加的,不加求不了矩阵乘法啊!

我们得到:

μ 30 ( 2 ) = μ 30 ( 1 ) + 3 β μ 21 ( 1 ) + 3 β 2 μ 12 ( 1 ) + β 3 μ 03 ( 1 ) \mu^{(2)}_{30}=\mu^{(1)}_{30}+3\beta\mu^{(1)}_{21}+3\beta^2\mu^{(1)}_{12}+\beta^3\mu^{(1)}_{03} μ30(2)=μ30(1)+3βμ21(1)+3β2μ12(1)+β3μ03(1)

其中, μ p q ( 1 ) \mu^{(1)}_{pq} μpq(1) 是图像 f 1 ( x , y ) f_1(x,y) f1(x,y) 的中心矩。

μ 30 ( 2 ) = 0 \mu^{(2)}_{30}=0 μ30(2)=0,我们得到:

μ 30 ( 1 ) + 3 β μ 21 ( 1 ) + 3 β 2 μ 12 ( 1 ) + β 3 μ 03 ( 1 ) = 0 \mu^{(1)}_{30}+3\beta\mu^{(1)}_{21}+3\beta^2\mu^{(1)}_{12}+\beta^3\mu^{(1)}_{03}=0 μ30(1)+3βμ21(1)+3β2μ12(1)+β3μ03(1)=0

参数 β \beta β 就是通过这个式子得到的。

注意到上式在 μ 03 ( 1 ) ≠ 0 \mu^{(1)}_{03}\neq 0 μ03(1)=0 的情况下最多可以有三个根,这对于大多数自然图像来说是普遍成立的。特别地,我们可能有以下两种情况:

  • 三个根中一个是实根,另外两个是复根;
  • 三个根都是实根。

对于第一种情况,我们简单地取 β \beta β 为实根;对于第二种情况,我们取 β \beta β 为三个实根的中位数。参见附录,这样的选择保证了得到的标准化图像的唯一性。

当然,在一些非常不寻常的条件下,根的个数可能会发生变化。例如,当上式涉及到的所有矩都为 0 0 0 时,它将有无穷多个解。这可以发生在图像是旋转对称的时候,比如圆盘或者圆环。我们参考文献 [16] 和 [17] 来更详细地介绍一般的标准化过程。




矩阵 A y = ( 1 0 γ 1 ) \mathbf{A}_y=\begin{pmatrix} 1 & 0 \\ \gamma & 1 \end{pmatrix} Ay=(1γ01)

回顾前文公式:

μ p q ′ = ∑ i = 0 p ∑ j = 0 q ( p i ) T ( q j ) a 11 i ⋅ a 12 p − i ⋅ a 21 j ⋅ a 22 q − j ⋅ μ i + j , p + q − i − j \mu'_{pq} = \sum_{i=0}^{p}\sum_{j=0}^{q} \begin{pmatrix} p \\ i \end{pmatrix}^T \begin{pmatrix} q \\ j \end{pmatrix} a^i_{11}\cdot a^{p-i}_{12}\cdot a^{j}_{21}\cdot a^{q-j}_{22}\cdot \mu_{i+j,p+q-i-j} μpq=i=0pj=0q(pi)T(qj)a11ia12pia21ja22qjμi+j,p+qij

我们得到:

μ 11 ( 3 ) = γ μ 20 ( 2 ) + μ 11 ( 2 ) \mu^{(3)}_{11}=\gamma\mu^{(2)}_{20}+\mu^{(2)}_{11} μ11(3)=γμ20(2)+μ11(2)

μ 11 ( 3 ) = 0 \mu^{(3)}_{11}=0 μ11(3)=0,我们得到:

γ = − μ 11 ( 2 ) μ 20 ( 2 ) \gamma=-\frac{\mu^{(2)}_{11}}{\mu^{(2)}_{20}} γ=μ20(2)μ11(2)

因此,参数 γ \gamma γ 具有唯一的解。




矩阵 A s = ( α 0 0 δ ) \mathbf{A}_s=\begin{pmatrix} \alpha & 0 \\ 0 & \delta \end{pmatrix} As=(α00δ)

缩放参数 α \alpha α δ \delta δ 的大小通过在水平和垂直方向上将图像 f 3 ( x , y ) f_3(x,y) f3(x,y) 缩放到规定的标准尺寸来确定。它们的符号都是确定的,这样 μ 50 ( 4 ) \mu^{(4)}_{50} μ50(4) μ 05 ( 4 ) \mu^{(4)}_{05} μ05(4) 都是正的,可以通过水平翻转或垂直翻转来改变。

简而言之,参数 α \alpha α δ \delta δ 的大小是根据规定的标准尺寸确定的,标准尺寸的大小决定了参数 α \alpha α δ \delta δ 的取值。由于缩放倍数是非负的,因此参数 α \alpha α δ \delta δ 的符号一定为正(?)



D 水印的影响

值得注意的是,对于水印嵌入,标准化是对原始图像进行的;对于水印提取,标准化是对含水印图像进行的。因此,重要的是设计水印信号,使其对标准化图像的影响最小。

w ( x , y ) w(x,y) w(x,y) 表示添加到原始图像 f ( x , y ) f(x,y) f(x,y) 中的水印信号。令 m p q ( w ) m^{(w)}_{pq} mpq(w) 表示 w ( x , y ) w(x,y) w(x,y) 的原点矩。根据前文公式:

d 1 = m 10 m 00 , d 2 = m 01 m 00 d_1=\frac{m_{10}}{m_{00}},\ d_2=\frac{m_{01}}{m_{00}} d1=m00m10, d2=m00m01
可以取 m 10 ( w ) = m 01 ( w ) = 0 m^{(w)}_{10}=m^{(w)}_{01}=0 m10(w)=m01(w)=0,使得 w ( x , y ) w(x,y) w(x,y) 对标准化过程的中心步骤没有影响。

此外,我们希望对于 p + q p+q p+q 等于 2 2 2 3 3 3 m p q ( w ) = 0 m^{(w)}_{pq}=0 mpq(w)=0,使得水印不影响其余的标准化变换。这里假设 w ( x , y ) w(x,y) w(x,y) f ( x , y ) f(x,y) f(x,y) 是统计独立的,因此它们的二阶和三阶中心矩是可加的。

正如后面将要讨论的那样,水印是由零均值高斯或均匀源产生的 C D M A \mathsf{CDMA} CDMA 信号,它被添加到图像的中频 D C T \mathsf{DCT} DCT 系数中。从我们的数值例子可以看出,这样的水印几乎满足上述所描述的所有期望的性质,并且对标准化图像几乎没有影响。



E 可替代的标准化过程

上述标准化过程由一系列初等仿射变换(即剪切和缩放操作)组成。我们指出,其他变换过程也可以用类似的方式构造,以实现标准化图像中的放射变换不变性。比如以下过程:
A = ( c o s ϕ s i n ϕ − s i n ϕ c o s ϕ ) ( α 0 0 δ ) ( 1 β 0 1 ) \mathbf{A}=\begin{pmatrix} cos\phi & sin\phi \\ -sin\phi & cos\phi \end{pmatrix} \begin{pmatrix} \alpha & 0 \\ 0 & \delta \end{pmatrix} \begin{pmatrix} 1 & \beta \\ 0 & 1 \end{pmatrix} A=(cosϕsinϕsinϕcosϕ)(α00δ)(10β1)
其中包括:

  • 1)在 x x x 方向上的剪切;
  • 2 )在 x x x 方向和 y y y 方向上的缩放;
  • 3)旋转 ϕ \phi ϕ 角度;

上述过程中的参数可以通过执行每个步骤的一组预定义的矩来确定。感兴趣的读者可以参考文献 [15]。



本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/13724.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

智能车竞赛指南:从零到一,驶向自动驾驶的未来

智能车竞赛指南:从零到一,驶向自动驾驶的未来 一、智能车竞赛概览1.1 竞赛介绍1.2 竞赛分类 二、智能车开发技术基础2.1 硬件平台2.2 软件开发 三、实战案例:循线小车开发3.1 系统架构3.2 代码示例 四、技术项目:基于ROS的视觉导航…

FedSyn: Synthetic Data Generation using Federated Learning

arxiv2022,没找到是哪个刊物的,是没投中吗? 这篇是用GAN做数据生成,每个client都训练一个生成器,加噪声传到server端聚合,实验是衡量生成图片的质量。 论文地址:arxiv code:没找到 贡献 提出了提出了一种新颖的方法(FedSyn ),将联邦学习、使用 GAN的合成数据生成…

高中数学:平面向量-数量积(向量与向量的乘积)与投影

一、引题 物理上的力做功 二、数量积与投影 1、数量积 θ的范围是[0,π] 2、投影 向量的投影,依然是一个向量! 3、运算法则 易错点: 4、重要性质 这里对性质(2)要注意一下:如果 a → \mathop{a}\limits ^{\rightarrow…

AWS安全性身份和合规性之Shield

shield:盾(牌);(保护机器和操作者的)护罩,防护屏,挡板;屏障;保护物;(警察的)盾形徽章;保护人;掩护物;盾形纹徽;盾形奖牌; AWS Shield是一项AWS托管的DDoS(Distributed Denial of Service,分布式…

建模:Maya

一、常用按键 1、alt 左键 —— 环绕查看 2、alt 中键 —— 拖动模型所在面板 3、空格 —— 进入三视图模式;空格 左键按住拖动 —— 切换到对应视图 二、骨骼归零 1、T Pose 旋转模式,点击模型,摆好T姿势即可 2、复制模型设置200距离…

[AIGC] Java CompletableFuture:简介及示例

Java 8 引入了一个名为 CompletableFuture 的新库,正如其名称所示,该库提供了一种名为 “Completable Future” 的新 API,其主要目的是支持异步编程,并通过可搜索的操作将这些异步操作进行聚合管控。 文章目录 CompletableFuture …

LeetCode热题100—普通数组

53.最大子数组和 题目 给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。 子数组 是数组中的一个连续部分。 示例 1: 输入:nums [-2,1,-3,4,-1,2…

【Linux】进程信号及相关函数/系统调用的简单认识与使用

文章目录 前言一、相关函数/系统调用1. signal2. kill3. abort (库函数)4. raise (库函数)5. alarm 前言 现实生活中, 存在着诸多信号, 比如红绿灯, 上下课铃声…我们在接收到信号时, 就会做出相应的动作. 对于进程也是如此的, 进程也会收到来自 OS 发出的信号, 根据信号的不同…

【ARM 嵌入式 C 入门及渐进 6.1 -- ARMv8 C 内嵌汇编写系统寄存器的函数实现】

请阅读【嵌入式开发学习必备专栏】 文章目录 ARMv8 C 内嵌汇编写系统寄存器 ARMv8 C 内嵌汇编写系统寄存器 在ARMv8架构下,使用C语言结合内嵌汇编实现将一个值写入特定系统寄存器的函数可以按照下面的方法进行。 下面这个示例展示了如何将一个uint64_t类型的值写入…

[OpenGL] 法线贴图

目录 一 为什么要使用法线贴图 二 二种不同法线方式的使用 2.1 插值法线 2.1 法线贴图 本章节源码 点击此处 一 为什么要使用法线贴图 法线贴图我们可以使用更少的顶点表现出同样丰富的细节。高精度网格和使用法线贴图的低精度网格几乎区分不出来。所以法线贴图不仅看起来…

UE5中搭建一个简单的海岛

本文将用UE的WaterSystem与地形搭建一个简单的海岛,通过WaterSystem的参数设置,可以更好的自定义海岸线等效果。 1.基础风貌 1.1.首先新建一个Basic基础场景,切换到地形编辑模式刷出一块高地,用于沙滩。 1.2.引入UE官方插件Wat…

[IMX6ULL驱动开发]-Linux对中断的处理(一)

目录 中断概念的引入 ARM架构中断的流程 异常向量表 Linux系统对中断的处理 ARM对程序和中断的处理 Linux进程中断处理 中断概念的引入 如何理解中断,我们可以进行如下抽象。把CPU看做一个母亲,当它正在执行任务的时候,可以看为是一个母…

【BSP开发经验】简易文件系统digicapfs实现方式

文章目录 背景Linux vfs框架介绍数据结构系统调用openwriteread 总体框架 Linux 磁盘高速缓存机制标准文件访问同步文件访问异步文件访问buffer_head 如何实现一个简单的文件系统blkdevfs注册文件系统产生一个文件让文件变得可读可写 背景 在新的分区升级启动方案中需要分别实…

OGG几何内核-BRepBuilderAPI_MakeEdge学习

OGG几何内核fork自OCCT 7.7.0, BRepBuilderAPI_MakeEdge是几何内核的一个重要和基础的功能,也十分复杂,因为要支持line、circle、ellipse,parabola,hyperbola,circle,beziercurve,b…

springboot常用的注解

启动注解(Spring Boot 应用的入口注解)@SpringBootApplication @SpringBootApplication 是一个注解,它是 Spring Boot 应用的入口注解,用于表示一个应用程序的主类。这个注解通常被放置在包含 main() 方法的类上。@SpringBootApplication 是一个组合注解,整合了以下三个注…

亚马逊测评还能做吗?

只能说测评不是唯一的手段,但是推销量的一把好手。首先测评能让listing快速成长,短期内有望成为爆款,速度快,利润高,回款快。相对其他推广,测评无疑是有效,省培养listing的方法。其次新品前期太…

设计模式六大原则

开闭原则:对修改封闭,对拓展开放。 单一职责原则:类的功能要专一。 里氏代换原则:子类继承父类的时候,除添加新的方法完成新增功能外,尽量不要重写父类方法。 依赖倒转原则:类要依赖接口&…

Hsql每日一题 | day01

前言 就一直向前走吧,沿途的花终将绽放~ 题目:找出连续活跃3天及以上的用户 create table t_useractive(uid string,dt string );insert into t_useractive values(A,2023-10-01),(A,2023-10-02),(A,2023-10-03),(A,2023-10-04),(B,2023-10-01),(B…

代码随想录打卡第38天:动态规划解决编辑距离和回文串

1.72编辑距离 1.问题描述 找到其中需要进行操作的最少次数。 2.问题转换 大体思路可以参照前面的两个字符串的删除操作。添加操作可以将其看做是一个另类的删除操作,所以最后全部都可以看做是一个删除操作 3.解题思路 每一个位置的word1[i]和word2[j]都有两种…

RTOS原理和应用总结

RTOS的作用 RTOS一般应用在中低端处理器当中,这里举一个笔者日常开发遇到的案例来说明RTOS的作用。 假设你有一个设备,这个设备的外围硬件很多,假设有LED、一个网口、若干RS232等等。 在没有RTOS的时候,我们用裸机编程来写&…