数字图像水印处理

数字图像水印处理

一个处理数字图像水印的系统,该系统可以实现添加可见水印,添加不可见水印,识别水印,提取可见水印,提取不可见水印,打开、保存图片等功能。(这里的水印识别指的是识别自己添加的水印)

添加提取可见水印
1点击添加图片,即打开原图像显示在左侧图片显示区域
在这里插入图片描述
2点击添加可见水印按钮(可根据用户自定义拖动水印图片操作嵌入到原图像的相应位置中)
3点击合成图片按钮(这时会将嵌入了水印的图片保存下来)
在这里插入图片描述
4 点击提取可见水印按钮 ,即可以将可见水印给提取出来,保存为你选择的图片格式到你选择的图片文件位置处。

添加提取不可见水印
1点击添加图片,即打开原图像显示在左侧图片显示区域
2点击添加不可见水印按钮(可根据用户自定义拖动水印图片操作嵌入到原图像的相应位置中)
3点击合成图片按钮(这时会将嵌入了水印的图片保存下来)
4 点击提取不可见水印按钮 ,即可以将可见水印给提取出来,保存为你选择的图片格式到你选择的图片文件位置处。


基础知识介绍:

水印: 嵌在原图片上的,可见或者不可见的图像或者序列码等信息,多用于版权声明
可见图像数字水印
可见图像数字水印是可以看见的数字水印,就是将数字水印直接嵌入或覆盖在图像上。可见图像数字水印分为透明和不透明两种:
(1)不透明数字水印的目的是在图像中具有视觉突出效果,形成鲜明的标识,用于防止图像被其它非授权的商业用途的使用。
(2)透明数字水印的特点是在图像中不太醒目,在保证图像质量的前提下,尽量使水印标识难以剔除,进而保护文件的所有权。

不可见图像数字水印
不可见图像数字水印是不可以看见的数字水印,该数字水印一般用于嵌入图像,嵌入文字,以及规则的或不规则的序列码,为了保护作者的作品版权。

数字水印评价标准
评价水印嵌入后对媒体产品的影响程度,除了利用感知系统(人眼或人耳)定性评价以外,还可以采用定量的评价标准。通常对含水印的数字作品进行定量评价的标准有:信噪比(Signal Noise Rate,SNR),峰值信噪比(Peak Signal Noise Rate,PSNR)和归一化相关系数(Normalized Correction)

声音频域: 一般分为高中低频,如女声高频占比较大

图像频域: 一般分为高中低频,低频表示轮廓信息,高频表示细节信息 高频越多则细节越丰富

DFT 离散傅里叶变换: 将声音/图像 按频率分不同的组 取离散点(像素点)

DCT 离散余弦变换
DCT(Discrete Cosine Transform) 离散余弦变换由N.Ahmed等人在1974年提出。它是一种正交变换的方法,是一种与傅立叶变换紧密相关的数学运算。在傅立叶级数展开式中,如果被展开的函数是实偶函数,那么其傅立叶级数中只包含余弦项(只取离散傅里叶变换的实数部分,不取复数部分),将其离散化可导出离散余弦变换。
比DFT节省计算量,可以对重要信息进行整合,因此经常用来进行数字图像水印的处理,DCT水印技术指的是先对图像进行离散余弦变换,然后对变换域的系数嵌入水印,最后再进行DCT逆变换得到嵌入水印后的图像

JPEG也是用的DCT进行图像的压缩
jpeg压缩基本原理
0 RGB->YUV
1 使用FDCT将空间域的像素点转化为频率域的系数 左上角是低频区域(轮廓),为直流系数,右下角是高频区域(细节),为交流区域 (空间域转频域,将重要信息整合)
2 量化 针对Y分量进行细量化,UI分量进行粗量化 (JPEG的有损压缩,损的是量化过程中的高频部分)
3 编码 行程编码、Z排序、Huffman编码

二维DCT变换原理
M×N矩阵的二维离散余弦变换定义为:
在这里插入图片描述

其中,f(m, n)是M×N矩阵中坐标为(m, n)元素的原始值,F(u, v)是经离散余弦变换后对应值。
对应的DCT逆变换定义为:
在这里插入图片描述

其中:
在这里插入图片描述

FDCT 快速离散余弦变换
如果直接进行二维图像的DCT变换,工作量非常大(以8*8的图像分块为例,进行DCT和IDCT需求1024次乘法和896次加法)。为了加快变换的速度,人们根据DCT变换的对称性和正交性,提出了快速DCT变换算法(FDCT)


技术实现

可见水印实现

总览:
// 可见水印嵌入:
// 0 取原图和水印的像素放到3*width*height的一维数组中
// 1 将一维数组像素转为三维数组 (RGB)
// 2 原图的三维像素 修改为水印的三维像素 一维维的改(这里只处理水印图大小的区域)
// 3 三维数组再转回一维数组像素 再生成output图
// 可见水印提取:
// 根据选定的区域,将该区域的像素矩阵取出,保存为新的图片

通过二维图像得到的一维数组getPixels中,图像文件每个坐标点分别由红、绿、蓝3个像素构成,即getPixels数组的第1(红)、2(绿)、3(蓝)个元素合成了第1个坐标点的颜色,4、5、6个元素合成了第2个坐标点的颜色。将getPixels数组中每隔3个元素抽取一个得到对应于二维图像文件的R(红)、G(绿)、B(蓝)3个二维图像像素矩阵,其相互关系如图2.1。矩阵中每个像素的取值范围为0-255。二维数组行和列坐标的转换点是
在这里插入图片描述

通过原图像文件宽oWidth,高oHeight数值得到的。最后通过3个二维矩阵合成1个代表图像文件的三维像素矩阵。在MathTool类中定义了一维数组转换为三维数组的方法

可见水印的嵌入
将得到的水印的三维像素矩阵,根据你操作的水印图像位置,将水印的像素矩阵替换相应位置的被加入水印的图片的像素矩阵。

可见水印的提取:
根据选定的位置,将该位置的像素矩阵取出,保存为新的水印图片。


不可见水印实现

总览://不可见水印嵌入:1 提取原始图像的一个分量(如rPixels)和二值水印图像的像素wPixels2 对原始图像rPixels进行8*8分块,然后进行FDCT变换,得到dblk[8][8]3 根据水印的值是0/255 在dblk[8][8]中频(低频原图影响大)位置嵌入水印信息(如果wPixels是0则对减一个系数d,否则加上系数d)4 对dblk[8][8]执行IFDCT(离散余弦变换逆变换) 5 将逆变换完的dblk[8][8]区域替换相应的rPixels的8*8分块 最终生成带不可见水印的图// 不可见水印提取编程思路1 获得原始图像的r层分量(oRPixeles)和嵌入了水印的图像的r层分量(mRPixels)2 oRPixeles和mRPixeles进行8*8分块,并进行快速DCT变换,得odblk[8][8]和mdblk[8][8]3 比较odblk[8][8]和mdblk[8][8]嵌入水印的5个位置系数大小,如果mdblk大则水印信息为255,相反为0 存放到二维数组中result[wWidth][wHeight]4 将result[wWidth][wHeight]生成水印图像

完善项目也上传到了GitHub上,可以参考: 5ingwings/DIWaterMark

参考: 《图像数字水印的JAVA实现》

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

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

相关文章

文心大模型3.5勇夺三个冠军领跑,中文完爆GPT-4!国际权威报告7项满分「全班第一」...

新智元报道 编辑:编辑部 【新智元导读】这场百模大战,究竟是谁胜出?国际权威IDC发布大模型技术报告中,文心大模型3.5拿下7个满分,三个绝对第一。 一觉醒来,好不热闹,Meta深夜投出重磅炸弹&…

文心一言APP来了

金磊 丰色 发自 凹非寺量子位 | 公众号 QbitAI 终于,正版百度文心一言APP上架苹果商店了! (此前百度因为盗版文心一言APP泛滥,还起诉过苹果公司及相关开发团队。) 这般“新鲜出炉”的工具,我们当然要率先体…

文心一言APP国区可下载!免费体验120+玩法,PPT大纲Excel公式一键生成

点击关注公众号:互联网架构师,后台回复 2T获取2TB学习资源! 上一篇:Alibaba开源内网高并发编程手册.pdf 终于,正版百度文心一言APP上架苹果商店了! (此前百度因为盗版文心一言APP泛滥&#xff0…

文心一言APP国区可下载,免费体验120+玩法,PPT大纲Excel公式一键生成

来源:量子位 | 公众号 QbitAI 终于,正版百度文心一言APP上架苹果商店了! (此前百度因为盗版文心一言APP泛滥,还起诉过苹果公司及相关开发团队。) 这般“新鲜出炉”的工具,我们当然要率先体验一把…

chatgpt赋能python:Python给电影打分-如何使用Python评估您最喜爱的电影

Python给电影打分 - 如何使用Python评估您最喜爱的电影 Python是一种流行的编程语言,广泛用于数据科学和机器学习。但是,您是否知道您可以使用Python为您最喜爱的电影打分并评估其受欢迎程度?在这篇文章中,我们将介绍如何使用Pyt…

文心千帆大模型平台,一站式企业级大模型平台

文心千帆大模型平台,一站式企业级大模型平台 0. 前言1. 人工智能发展历程1.1 传统机器学习1.2 深度学习1.3 大模型时代 2. 文心千帆2.1 文心千帆介绍2.2 文心千帆应用场景2.3 文心千帆平台优势 3. 文心千帆初体验3.1 注册流程3.2 创建应用3.3 在线测试3.4 数据服务3…

【自我升级链】所谓的傅盛认知升级

所有学习上的成功,都只依靠两件事 – 策略和坚持,而坚持本身就是最重要的策略! 前段时间读的书,看的一些文章里面,全都在提"认知"这个词。 但是,“认知”这个词,我是在2016年的时候就…

傅盛:AI是企业弯道超车的机会,大家在同一起跑线上

2019-10-20 11:58:08 第六届世界互联网大会于10月20日-22日在浙江乌镇召开。 猎豹移动CEO傅盛表示,从收入的相对值增长来看,猎豹的AI业务的增长还是挺快,“但是要短期内达到猎豹50亿级的盘子是不太可能的”。 傅盛认为,AI是企业弯…

从猎豹CEO傅盛和韩寒的没落,谈谈为什么曾经优秀的人突然变得平庸?

点赞再看,养成习惯,微信搜一搜【findyi】关注这个喜欢写情怀的程序员。 回复【1】获得程序员职场晋升PPT一份 一个读者的提问:洋哥,我从小都是学霸,本硕都是985,计算机科班出身,但进入职场后却始…

金山网络CEO傅盛: 产品设计, 简单才是王道

本文来自 http://www.36kr.com/p/151814.html 2012 年 9 月 8 日—9 日,中国软件开发者大会在北京国家会议中心举行,金山网络 CEO 傅盛在会上发表题为“简单唯美”的演讲,他表示,项目要想成功,产品设计一定要足够简单&…

傅盛认知三部曲之一:所谓成长就是认知升级

我一直在思索,怎么才能让一家公司更快地成长?一个人怎么才能从一群人的竞争当中脱颖而出? 1、人的四种认知状态 最近我看了一幅图,我在其上加了一个数字注脚。 这是一个人认知的四种状态——“不知道自己不知道”,“知…

【深度好文】强烈推荐:傅盛认知三部曲!

转载傅盛认知三部曲的原因 最近看到 傅盛 大佬关于认知的几篇文章,感觉实在牛逼,在此转载一下。 大家优先点击下面的几个链接查看原文吧!!!!!! 傅盛认知三部曲之一:所谓…

张鹏对话傅盛:产业互联网时代需要什么样的机器人?

12月21日,备受瞩目的极客公园创新大会十周年活动继续在北京举行。作为中国大型的创新者社区,全球科技、科学、文化艺术、创造力等领域里的科技主义者们在此汇聚一堂,共同为中国极客奉献思维升级的盛宴。猎豹移动董事长兼CEO傅盛受邀出席大会并…

傅盛:我为什么要不顾一切的努力?

猎豹最近不太好,刚被谷歌下架了45款产品。作为CEO,傅盛一定很难受,更要命的是,这次舆论站在了他的对立面,不少落井下石的人和媒体,一时间全部出动。 傅盛在360工作过,我加入360的时候恰逢傅盛和…

机器人军团和傅盛的答案

雷锋网消息,1月25日,傅盛再度卷入“人设崩塌”事件,起因为傅盛在自己公众号上发表了一篇名为《傅盛持续创新的十大“金句”》的文章,该文章由傅盛和极客公园创始人张鹏在2019 极客公园创新大会上谈话整理。此后引发与潘乱&#xf…

机器人军团和傅盛的答案

雷锋网消息,1月25日,傅盛再度卷入“人设崩塌”事件,起因为傅盛在自己公众号上发表了一篇名为《傅盛持续创新的十大“金句”》的文章,该文章由傅盛和极客公园创始人张鹏在2019 极客公园创新大会上谈话整理。此后引发与潘乱&#xf…

大模型创业:朱啸虎与傅盛的观点碰撞

在科技领域,大模型创业已经成为了一个热门的话题。随着AI技术的发展,大模型的应用越来越广泛,但同时也带来了一系列的挑战。最近,知名投资人朱啸虎和创业者傅盛就大模型创业的价值进行了一场激烈的讨论。本文将从他们的观点出发&a…

傅盛:认知升级三部曲

一、所谓成长就是认知升级 我一直在思索,怎么才能让一家公司更快地成长?一个人怎么才能从一群人的竞争当中脱颖而出? 1.人的四种认知状态 最近我看了一幅图,我在其上加了一个数字注脚。 这是一个人认知的四种状态——“不知道自…

【小米MIoT设备接入HomeAssistant通用插件教程】

【小米MIoT设备接入HomeAssistant通用插件教程】 1. Xiaomi Miot Auto介绍2. 常见问题3. 安装/更新3.1 方法1: [HACS](https://github.com/hacs-china/integration)3.2 方法2: 通过Samba或SFTP手动安装3.3 方法3: 通过SSH或Terminal & SSH加载项执行一键安装命令3.4 方法4:…

《鱿鱼游戏》我怕了,还是整点阳间的游戏吧,Python版“碰糖”来袭—你能过几关?

导语 哈喽!哈喽!我是木木子,之前想着给大家写点儿好玩儿的~ 嘿嘿嘿——现在开始上线更新文章啦!喜欢的小伙伴儿多多支持呀! ​ ​​大火的韩国电视剧《鱿鱼游戏》,从123木头人到画糖,感觉十…