在载体图像中嵌入净荷的方法及净荷重建、传输方法_2

文档序号:9305035阅读:来源:国知局
数"如上式⑴所定义,"数值"为所述亮度值。也就是说,基数和余 数之和即为上述亮度值。表1中列出了模数为16时图4所示亮度值的基数。需要注意的 是,还可使用其他任何模数。
[0043] 表1模数为16时亮度值的余数和基数
[0044]
[0045] 图5所示为根据本发明一个实施例的具有表1中亮度值基数的载体图像一维序列 化阵列500的示意图。图5的下部显示了该载体图像一维序列化阵列300与上述二维MXN 阵列200的元素对应关系,而其上部所示为二维MXN阵列200各对应元素的亮度基数值 502〇
[0046] 图6所示为根据本发明一个示例性实施例的已序列化为一维阵列的净荷600的示 意图。图6下部显示了净荷一维序列化阵列602的各元素,其上部所示为净荷一维序列化 阵列602每个元素的净荷604。净荷一维序列化阵列602的每个元素都具有一个净荷,其例 如为由8位二进制数表示的取值范围在0到255之间的数值。净荷600可取自图像、加密 图像、文本信息、加密文本信息、文件、加密文件或任何数据。
[0047] 净荷一维序列化阵列602的每个元素都具有一个由8位二进制数表示的取值范围 为0至255的净荷。例如净荷一维序列化阵列602的元素1具有一净荷23,元素2具有一 净荷67,元素3具有一净荷123,元素4具有一净荷110,......,依此类推。
[0048] 数值23由8位二进制数表示为如下式(3)所示:
[0049] 23 ={0,0,0,1,0,1,1,1} (3)
[0050] 数值67由8位二进制数表示为如下式⑷所示:
[0051] 67 = {0,1,0,0,0,0,1,1} (4)
[0052] 数值123由8位二进制数表示为如下式(5)所示:
[0053] 123 = {0,1,1,1,1,0,1,1} (5)
[0054] 数值110由8位二进制数表示为如下式(6)所示:
[0055] 110 = {0,1,0,1,1,0,1,0} (6)
[0056] 图7所示为根据本发明一个实施例的净荷一维序列化阵列700,其包括图6所示的 净荷一维序列化阵列602的各元素,其中,元素1的净荷23由8位二进制数702表示,元素 2的净荷67由8位二进制数704表示,元素3的净荷123由8位二进制数706表示,元素4 的净荷110由8位二进制数708表示,依此类推。
[0057] 如图8所示,根据本发明一个实施例,元素1可被分割成两个子元素:子元素1A和 子元素1B。子元素1A和子元素1B中的每一个都具有由4位二进制数表示的分割净荷。同 样地,元素2可被分割成子元素2A和2B,元素3可被分割成子元素3A和3B,元素4可被分 割成子元素4A和4B,依此类推。
[0058] 每个分割后的子元素所对应的分割净荷如下所示:
[0059]子元素1A : {0,0,0,1} = 1 (7)
[0060]子元素1B :{0,1,1,1} = 7 (8)
[0061]子元素 2A :{0,1,0,0} = 4 (9)
[0062]子元素 2B :{0,0,1,1} = 3 (10)
[0063]子元素 3A :{0,1,1,1} = 7 (11)
[0064]子元素3B:{1,0,1,1}=11 (12)
[0065]子元素 4A :{0,1,0,1} = 5 (13)
[0066]子元素4B:{1,0,1,0}=10 (14)
[0067] 尤其值得注意的是,每个4位二进制数表示的数值范围在0到15之间,其小于本 实施例所使用的模数16。也就是说,将由二进制数表示的净荷分割成多个分割净荷,使得每 个分割净荷的表示值均小于所使用的模数。因此,当所述模数为16时,将净荷分割成取值 范围为0~15〈16的4位二进制数;当所述模数为8时,将净荷分割成取值范围为0~7〈8 的3位二进制数;当所述模数为4时,将净荷分割成取值范围为0~3〈4的2位二进制数; 当所述模数为2时,将净荷分割成取值范围为0~1〈2的1位二进制数。即,分割所得的二 进制数的最大取值小于所使用的模数。
[0068] 图8所示为根据本发明一个实施例的净荷一维序列化阵列800,其包括分割的子 元素认、川、24、28、34、38、44、48等,依此类推。其中,子元素认由4位二进制数802表示; 子元素1B由4位二进制数803表示;子元素2A由4位二进制数804表示;子元素2B由4 位二进制数805表示;子元素3A由4位二进制数806表示;子元素3B由4位二进制数807 表示;子元素4A由4位二进制数808表示;子元素4B由4位二进制数809表示。
[0069] 上述分割净荷称为像素单位净荷。图9所示为根据本发明一个实施例的具有像素 单位净荷的净荷一维序列化阵列900,其包括多个子元素902 (即子元素1A、1B、2A、2B、3A、 3B、4A、4B等)及式(7)~(14)所示的各元素所对应的像素单位净荷904。将每个子元素 902的像素单位净荷904与图5所示载体图像一维序列化阵列300的对应元素的基数502 相加后,即
[0070] 亮度=基数+像素单位净荷 (15)
[0071] 其中,子元素1A与元素或像素(1,1)相匹配,子元素1B与元素或像素(1,2)相匹 配,子元素2A与元素或像素(1,3)相匹配,并依此类推。
[0072]图10所示为根据本发明一个实施例的载体图像一维序列化阵列1000,其中,已在 载体图像一维序列化阵列300的基数502上叠加了相匹配的像素单位净荷1002。所述像素 单位净荷与基数的和即为亮度。如上所述,该4位二进制数表示的像素单位净荷1002小于 模数的值16。通常而言,所述像素单位净荷1002小于载体图像一维序列化阵列300的基数 502。因此,与像素单位净荷相加后的载体图像一维序列化阵列1000的亮度几乎与载体图 像一维序列化阵列400的亮度相同。需要注意的是,亮度值也可简称为亮度。
[0073] 携带有像素单位净荷的载体图像一维序列化阵列1000可被发送至接收人并被接 收人接收。被接收的载体图像一维序列化阵列1000可经反序列化处理后还原至包括二维 MXN阵列的图像的原始格式。在一个实施例中,携带有像素单位净荷的载体图像一维序列 化阵列1000也可不被发送,而是保存于存储装置中用于后续获取。
[0074] 序列化是指将数据结构转化为可经网络连接链路存储或传输并且之后可在相同 计算机环境中重建的一维阵列的过程,而反序列化为与其相反的过程。在反序列化过程中, 数据的序列化一维阵列根据所执行序列化的格式被读取,从而生成原始对象。
[0075] 载体图像一维序列化阵列1000经反序列化,将得到图2所示的原始格式。图11 所示为根据本发明一个实施例的示例性图片1100,其在图1所示载体图像"花"的基础上已 编码有净荷。图1和图11之间的差异几乎无法由肉眼辨别。
[0076] 示例性图片1100,即已编码有净荷的图1所示载体图像"花",可经网络传输或保 存于存储器内。为了保护内嵌于所述载体图像内的净荷,该载体图像以无损格式进行传输 或保存。举例而言,所述无损格式包括PNG格式和GIF格式。
[0077] 根据本发明一个实施例,编码或内嵌于图片1100内的净荷例如为图12所示的净 荷图像"熊猫" 1200。也就是说,净荷图像"熊猫" 1200经序列化而得到图6所示净荷一维 序列化阵列600。
[0078] 在提取内嵌于所述图片中的净荷时,先对所接收到的图片进行相同的取模运算 (即模数为16),求得图10所示的载体图像一维序列化阵列1000的亮度的余数。所述载体 图像各元素的余数和亮度值列于表2。
[0079] 表2载体图像余数和亮度值
[0080]
[0081] 显然,通过对所述载体图像一维序列化阵列各元素的亮度值实施取模运算,可恢 复所述像素单位净荷:
[0082] 像素单位净荷=亮度%模数(16)
[0083] 这是因为,所述像素单位净荷小于所述模数,且所述载体图像各元素的原始亮度 值的余数已被去除。在表2所示实施例中,所述净荷一维序列化阵列的子元素1A~3A的 像素单位净荷的恢复值分别与式(7)~(11)中的值完全一致。
[0084] 通过将子元素1A和1B组合成元素1,子元素2A和2B组合成元素2,并依此类推, 可以重建出与式(3)~(6)所示完全相同的由8位二进制数表示的净荷。通过此方式,可 重建出图6所示的净荷一维序列化阵列600的所有元素的净荷。重建的所述净荷一维序列 化阵列600可经反序列化恢复至其原始格式,例如图12所示净荷图像"熊猫"。
[0085] 在一个实施例中,所述模数为8。相应地,所述像素单位净荷为3位二进制数。因 此,该像素单位净荷小于8。与图7所示实施例相同,净荷一维序列化阵列700的每个元素 也包括8位二进制数。图13所示为根据本发明一个实施例的与净荷一维序列化阵列700相 似的净荷一维序列化阵列1300。分别由8位二进制数702、704
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1