基于24位bmp图片数据区隐写的实现
数据 实现 基于 图片 24 BMP
2023-09-14 09:01:06 时间
1,关于数据区隐写
for(int i=py,j=0;j!=tl;++j) //把隐藏的信息转化成bit,写入到间隔的字节的最后一位。
5.总结
【图片操作】提取GIF的图片帧 gif是我们日常生活中常用的一种图片,它介于视频和图片之间。我们可以用图片的内存体验到一些视频的感觉。但是有时候我们会想把gif的图片全部提取出来,今天我们就来实现一下这个操作。
平时写博客, 为了效果的生动形象, 经常需要嵌入一些gif图片, 但mac的retina显示器分辨率高, 录制出的gif图片往往很大,同时简书限制gif图片不能超过10M, 我在网上查了很多调整gif尺寸的方法, 大多是一些在线转换的方法, 但而且...
数据区隐写,即将数据写入到数据区中。相比文件外壳隐写和保留区隐写,更为隐蔽,隐藏的信息容量相对较大。在数据区隐写会造成图像变化,所以需要控制写入方式,以及改写量。使得在普通肉眼难以辨别的更改中实现数据的隐藏。至于其他的隐写方法请看:简单信息隐藏技术的实现与讨论。
2,24位bmp图像简介要在bmp图像进行数据区隐写,必须要知道它的数据结构。否则,可能会破坏图像。 这是bmp的文件结构。
位图文件头(bitmap-file header)包含了图像类型、图像大小、图像数据存放地址和两个保留未使用的字段。(14字节) 位图信息头(bitmap-information header)(40字节) 彩色表/调色板(color table)[24位bmp图没有调色板] 位图数据(bitmap-data)24位bmp图像数据存储的是实际的颜色数据,每个像素用3字节表示,分别是红绿蓝。文件头和信息头共占了54个字节。
3.程序设计思路将bmp和txt读入之后,其实就是两个字符串。接下来要做的就是设计一个算法让它们合并。 考虑到如果直接替换数据区字符。会使像素点有巨大改变。所以,每个字符我只改末尾的一个bit,这样一来,像素点的变化会非常小,几乎没有区别。而且,我尽可能让更改的bit分散在数据区。为了方便提取,我在保留区记录了两个值,他们的异或值就是数据区隐藏信息字节的间隔值。
for(int i=py,j=0;j!=tl;++j) //把隐藏的信息转化成bit,写入到间隔的字节的最后一位。
5.总结
这是一个很简单的图片数据区隐写程序,基于24位bmp图像。基本实现了需要的功能,分散的写入使得肉眼难以发现异常,其次,无需原图也可以提取信息。
转载请注明:旅途@KryptosX » 基于24位bmp图片数据区隐写的实现
【图片操作】提取GIF的图片帧 gif是我们日常生活中常用的一种图片,它介于视频和图片之间。我们可以用图片的内存体验到一些视频的感觉。但是有时候我们会想把gif的图片全部提取出来,今天我们就来实现一下这个操作。
平时写博客, 为了效果的生动形象, 经常需要嵌入一些gif图片, 但mac的retina显示器分辨率高, 录制出的gif图片往往很大,同时简书限制gif图片不能超过10M, 我在网上查了很多调整gif尺寸的方法, 大多是一些在线转换的方法, 但而且...
相关文章
- 新闻发布项目——数据实现类(categoryTBDaoImpl)
- 新闻发布项目——数据实现类(newsTbDaoImpl)
- R语言实现金融数据的时间序列分析及建模
- 【STM32HF429的DSP教程】第40章 STM32F429的FIR带阻滤波器实现(支持逐个数据的实时滤波)
- Atitit 数据存储的分组聚合 groupby的实现attilax总结
- DataScience:数据处理技术之针对时间序列数据衍变—构造时间滑动窗口数据的简介、代码实现、案例应用之详细攻略
- Py之seaborn:数据可视化seaborn库的柱状图、箱线图(置信区间图)、散点图/折线图、核密度图/等高线图、盒形图/小提琴图/LV多框图的组合图/矩阵图可视化代码实现集合之详细攻略
- CV之IG之DCGAN:基于keras框架利用深度卷积对抗网络DCGAN算法对MNIST数据集实现图像生成(保存h5模型→加载模型)案例应用
- CV之IC之VGG16:基于Keras框架利用卷积神经网络VGG16算法的迁移技术实现猫狗分类识别(图片数据增强→保存h5模型)案例训练过程记录
- CV之NS之CycleGAN:基于apple2orange数据集利用TF框架的CycleGAN算法实现图像风格迁移/图像转换—训练&测试过程图文教程全记录
- ML之PySpark:基于PySpark框架针对adult人口普查收入数据集结合Pipeline利用LoR/DT/RF算法(网格搜索+交叉验证评估+特征重要性)实现二分类预测(年收入是否超50k)案例
- AutoML之flaml:基于OpenML数据集利用pipeline结合flaml框架(自动化选择最佳模型+重加载模型并推理)实现预测航班是否延误二分类案例
- ML之LoR:基于信用卡数据集利用LoR逻辑回归算法实现如何开发通用信用风险评分卡模型之以scorecardpy框架全流程讲解
- ML之FE:基于load_mock_customer数据集(模拟客户,单个DataFrame)利用featuretools工具实现自动特征生成/特征衍生
- ML之MF:基于MovieLens电影评分数据集利用基于矩阵分解算法(NMF)实现对用户进行Top5电影推荐案例
- ML之回归预测:利用FSR/RiR/BasisExpand/ Lasso/DT/RF/GB算法对红酒品质wine数据集实现红酒口感评分预测(实数值评分预测)
- TF之LSTM/GRU:基于tensorflow框架对boston房价数据集分别利用LSTM、GRU算法(batch_size调优对比)实现房价回归预测案例
- DL之NN:基于(sklearn自带手写数字图片识别数据集)+自定义NN类(三层64→100→10)实现97.5%准确率
- Keras之DNN::基于Keras(sigmoid+binary_crossentropy+predict_classes)利用DNN实现二分类——DIY二分类数据集&预测新数据点
- 【华为机试真题 Python实现】数据分组
- mysql mysqldump只导出表结构或只导出数据的实现方法
- 使用boost库的序列化serialization实现数据保存和恢复
- ML之FE:数据预处理中基于pandas实现类别型字段数据编码(包括自定义编码映射字典)、目标变量布尔类型化且同时输出raw_df和df数据之代码实现攻略
- 完美解决C语言gcc编译器不能读取小数数据TXT文件的问题