[发明专利]Android照片位置和时间数字水印嵌入和提取方法在审
申请号: | 201610770870.6 | 申请日: | 2016-08-31 |
公开(公告)号: | CN106373079A | 公开(公告)日: | 2017-02-01 |
发明(设计)人: | 朱长青;吴清华;任娜;林威;俞一恒;佟徳宇;王莹莹 | 申请(专利权)人: | 南京师范大学 |
主分类号: | G06T1/00 | 分类号: | G06T1/00 |
代理公司: | 江苏圣典律师事务所32237 | 代理人: | 程化铭 |
地址: | 210023 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种Android照片位置和时间数字水印嵌入和提取方法。该方法基于数字水印技术,在Android设备拍摄的照片中添加拍摄时的位置信息和时间信息。采用兼容JPEG压缩标准的分块DCT嵌入,在照片的Y通道DCT变换后的中频系数中嵌入水印信息,在照片的U通道DCT变换后的中频系数中嵌入水印位置以实现水印信息同步。水印检测方法包括读取手机本地SD卡照片、水印提取和信息转换。其中水印提取首先在照片的U通道DCT变换后的中频系数中提取水印位置,在照片的Y通道DCT变换后的中频系数中提取水印信息,最后将提取的水印信息转换为位置信息和时间信息。使用本方法添加的信息,具有良好的稳定性和不可见性,且能够结合地图在对应的拍摄位置显示照片,给照片的浏览和分享带来方便。 | ||
搜索关键词: | android 照片 位置 时间 数字 水印 嵌入 提取 方法 | ||
【主权项】:
一种Android照片位置和时间数字水印嵌入方法,其步骤如下:步骤一、水印信息生成步骤1.1:利用伪随机序列发生器作为无意义水印生成方法,将预先设置的水印种子数Seed作为输入生成一个10行50列的“0”、“1”随机均匀分布的二值序列W;步骤1.2:获取并保存Android手机拍摄照片时的经纬度信息和时间信息字符串,作为待嵌入信息L;步骤二、水印信息映射步骤2.1:将步骤一生成的无意义水印信息W转换为二维的二值数组wm[i][j]={0,1},i=0,1,...,9,j=0,1,...,49其中:wm[i][j]是一个10行50列的01二值数组;步骤2.2:遍历步骤一中获取的待嵌入信息L的各位数字,每一位数字各自映射到wm[i][j]中的第i行的50位01二值序列,由此生成一个二维数组wm[L[i]][j],其中,L[i]表示待嵌入的经纬度及时间信息L的第i位信息,j=0,1,...49;步骤2.3:将wm[L[i]][j]按照二维数组转一位数组方式转成待嵌入的一维的水印字符串数组wmStr[i],i=0,1,...,499;步骤三、水印嵌入步骤3.1:对拍摄的照片RGB空间提取RGB分量,并转换为YUV空间,转换公式如下:Y=0.299×R+0.587×G+0.114×BU=-0.147×R-0.289×G+0.436×BV=0.615×R-0.515×G-0.100×B]]>其中,Y是亮度信号,U和V是两个色度信号;步骤3.2:照片进行8×8分块,对每一块做离散余弦(DCT)变换;步骤3.3:在每一块照片块的Y通道嵌入水印信息,嵌入方法如下:每块选取第39个中频系数xk(39)及Zig‑zag排序中相邻的6个系数xk(36)、xk(37)、xk(38)、xk(39)、xk(40)、xk(41)、xk(42),计算这6个相邻系数的均值,均值为x′k(39)=(xk(36)+xk(37)+xk(38)+xk(40)+xk(41)+xk(42))/6当WMStr[α]=1时取xk(39)=x′k(39)+30;当WMStr[α]=0时取xk(39)=x′k(39)‑30;步骤3.4:在每一块照片块的U通道嵌入相应的水印位置α,嵌入方法如下:首先将十进制的水印位置α转成10位二进制,然后把每一位二进制嵌入到第15~29位以及第29~33位低中频系数中;如果水印位是1,则让嵌入位置的系数值小于相邻的左边系数值,即第15~29位以及第29~33位的值分别小于第14~10和第26~22位的值;如果水印位是0,则让嵌入位置的系数值大于相邻的左边系数值;步骤3.5:进行IDCT变换得到嵌入水印信息的照片。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京师范大学,未经南京师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610770870.6/,转载请声明来源钻瓜专利网。