数字水印学习系统之一 空域操作

2024-02-24 13:18

本文主要是介绍数字水印学习系统之一 空域操作,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

声明:本系列已经获得软件著作权保护(2009SR038176 ),请勿擅自转载。
如需使用请联系本人:lilizongatgmail.com
因图片较多,未将图片一一展示!

登记号

分类号

软件全称

软件简称

版本号

著作权人(国籍)

首次发表日期

登记批准日期

2009SR038176

68000-8400

数字水印学习系统

water

V 1.0

*****: 中国

 

2009-09-09

2. 空域操作

空域操作主要在空域范围内针对数字图像进行有关操作,具体操作内容及方法如下:

2.1 分层显示

分层显示,显示数字图像各个层上的信息,具体操作如下:

单击【空域】,弹出如图 2.1 所示下拉菜单。

2.1 空域下拉菜单

在该下了菜单内选择【分层显示】项,即开始进行分层显示有关操作。此时程序出现如图 2.2 所示,读取文件对话框。

2.2 读取图像

在该对话框内选取要进行分层显示的图像,打击【打开】命令按钮,此时程序界面如图 2.3 所示,对该图像的各层进行了显示。

2.3 图像的分层显示结果

2.2. 位值设置

位值设置用来将一个图像的各个位值设置为 1 ,并查看设置后的效果。首先单击【空域】菜单,出现如图 2.1 所示下拉菜单,在该菜单内选择【位值设置】,出现如图 2.2 所示对话框,在该对话框内选取要进行位值设置的图像。此时界面如图 2.4 所示,对设置位值后的图像进行了显示。

2.4 位值设置

2.3. 值化

二值化用来将一幅灰度图像转换为二值图像。首先单击【空域】菜单,出现如图 2.1 所示下拉菜单,在该菜单内选择【二值化】,出现如图 2.2 所示对话框,在该对话框内选取要进行二值化的图像。此时界面如图 2.5 所示,对设置二值化前后的图像进行了显示。

2.5 二值化图像

2.4. sobel 边缘检测

Sobel 边缘检测用来计算并显示图像的 sobel 边缘。首先单击【空域】菜单,出现如图 2.1 所示下拉菜单,在该菜单内选择【 sobel 边缘检测】,出现如图 2.2 所示对话框,在该对话框内选取要进行 sobel 边缘检测的图像。此时界面如图 2.6 所示,对 sobel 边缘检测前后的图像进行了显示。

2.6 sobel 边缘检测

2.5. 分块求均值

分块求均值实现将图像按照用户输入的块大小进行分块,计算每一块的均值后,将图像进行显示。首先单击【空域】菜单,出现如图 2.1 所示下拉菜单,在该菜单内选择【分块求均值】,出现如图 2.2 所示对话框,在该对话框内选取要进行分块求均值的图像。然后出现要求用户输入块大小的对话框,如图 2.7 所示。

2.7 块大小对话框

在对话框内输入要分块的大小,例如输入“ 12 ”、“ 12 ”,单击确定按钮,此时在主界面内实现了分块前后的图像,如图 2.8 所示。

2.8 块均值显示图

2.6. 元胞自动机

元胞自动机,使用二维元胞自动机对图像进行操作,即根据该点周围 8 个点的均值确定当前点值。首先单击【空域】菜单,出现如图 2.1 所示下拉菜单,在该菜单内选择【元胞自动机】,出现如图 2.2 所示对话框,在该对话框内选取要进行元胞自动机的图像。然后出现要求用户输入元胞自动机运行次数的对话框,如图 2.9 所示。

2.9 选择次数对话框

在图 2.9 内输入要进行元胞自动机运算的次数,单击【 ok 】对话框,此时主界面如图 2.10 所示,在主界面内显示了元胞自动机前后的图像。

2.10 元胞自动机前后对比图

2.7. LSB 算法演示

LSB 算法演示实现了 LSB 算法的嵌入与提取。首先单击【空域】菜单,出现如图 2.1 所示下拉菜单,在该菜单内选择【 LSB 算法演示】,出现如图 2.11 所示对话框,要求用户输入需要嵌入水印的图象。

2.11 选取原始图像

单击【打开】后,出现如图 2.12 所示对话框,要求用户选取水印图像。

2.12 读取水印对话框

选取水印图像后,单击【打开】按钮,出现如图 2.13 所示进度条。

2.13 进度条

当进度条运行完毕后,主界面显示了嵌入提取、水印的情况,如图 2.14 所示。

2.14 LSB 算法演示

2.8. LSB 嵌入水印

LSB 嵌入水印用来向图像的最低有效位内嵌入水印。首先单击【空域】菜单,出现如图 2.1 所示下拉菜单,在该菜单内选择【 LSB 嵌入水印】,出现如图 2.15 所示对话框,要求用户输入需要嵌入水印的图象。

2.15 读取原始图像

单击【打开】后,出现读取水印对话框,要求用户选取水印图像,用户可以在此界面内选择权水印图像如图 2.16

2.16 读取水印图像

选取水印图像后,单击【打开】对话框,此时出现存取含水印图像对话框,要求用户输入要存储的含水印图像文件名,如图 2.17 所示。

2.17 存储对话框

输入文件名后,单击【保存】命令按钮,此时出现进度条,如图 2.18 所示。

2.18 进度条

进度条运行结束后,主界面显示了原始图像、水印图像、含水印图像,如图 2.19 所示。


2.19 主界面显示

2.9. LSB 提取水印

LSB 提取水印完成从含 LSB 水印的图像中提取水印信息。首先单击【空域】菜单,出现如图 2.1 所示下拉菜单,在该菜单内选择【 LSB 提取水印】,出现如图 2.20 所示对话框,要求用户输入需要提取水印的图象。

2.20 读取含水印图像

单击【打开】按钮,出现如图 2.21 所示对话框,要求用户输入要保存的水印整体图像。

2.21 保存对话框

单击【保存】按钮,出现如图 2.22 所示对话框,要求用户输入要保存的水印局部图。

2.22 保存对话框

单击【保存】按钮,此时主界面显示了提取的完整水印信息和局部水印信息,如图 2.23 所示。

2.23 提取水印示意图

  如需使用,请联系:

http://item.taobao.com/auction/item_detail.jhtml?x_id=0db1&item_id=86c84898080f8278d1fbacf04c873325

 

 

这篇关于数字水印学习系统之一 空域操作的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/742218

相关文章

Python调用Orator ORM进行数据库操作

《Python调用OratorORM进行数据库操作》OratorORM是一个功能丰富且灵活的PythonORM库,旨在简化数据库操作,它支持多种数据库并提供了简洁且直观的API,下面我们就... 目录Orator ORM 主要特点安装使用示例总结Orator ORM 是一个功能丰富且灵活的 python O

python使用fastapi实现多语言国际化的操作指南

《python使用fastapi实现多语言国际化的操作指南》本文介绍了使用Python和FastAPI实现多语言国际化的操作指南,包括多语言架构技术栈、翻译管理、前端本地化、语言切换机制以及常见陷阱和... 目录多语言国际化实现指南项目多语言架构技术栈目录结构翻译工作流1. 翻译数据存储2. 翻译生成脚本

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

Java深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操

在不同系统间迁移Python程序的方法与教程

《在不同系统间迁移Python程序的方法与教程》本文介绍了几种将Windows上编写的Python程序迁移到Linux服务器上的方法,包括使用虚拟环境和依赖冻结、容器化技术(如Docker)、使用An... 目录使用虚拟环境和依赖冻结1. 创建虚拟环境2. 冻结依赖使用容器化技术(如 docker)1. 创

轻松上手MYSQL之JSON函数实现高效数据查询与操作

《轻松上手MYSQL之JSON函数实现高效数据查询与操作》:本文主要介绍轻松上手MYSQL之JSON函数实现高效数据查询与操作的相关资料,MySQL提供了多个JSON函数,用于处理和查询JSON数... 目录一、jsON_EXTRACT 提取指定数据二、JSON_UNQUOTE 取消双引号三、JSON_KE

CentOS系统Maven安装教程分享

《CentOS系统Maven安装教程分享》本文介绍了如何在CentOS系统中安装Maven,并提供了一个简单的实际应用案例,安装Maven需要先安装Java和设置环境变量,Maven可以自动管理项目的... 目录准备工作下载并安装Maven常见问题及解决方法实际应用案例总结Maven是一个流行的项目管理工具

C++实现封装的顺序表的操作与实践

《C++实现封装的顺序表的操作与实践》在程序设计中,顺序表是一种常见的线性数据结构,通常用于存储具有固定顺序的元素,与链表不同,顺序表中的元素是连续存储的,因此访问速度较快,但插入和删除操作的效率可能... 目录一、顺序表的基本概念二、顺序表类的设计1. 顺序表类的成员变量2. 构造函数和析构函数三、顺序表

使用C++实现单链表的操作与实践

《使用C++实现单链表的操作与实践》在程序设计中,链表是一种常见的数据结构,特别是在动态数据管理、频繁插入和删除元素的场景中,链表相比于数组,具有更高的灵活性和高效性,尤其是在需要频繁修改数据结构的应... 目录一、单链表的基本概念二、单链表类的设计1. 节点的定义2. 链表的类定义三、单链表的操作实现四、

Python利用自带模块实现屏幕像素高效操作

《Python利用自带模块实现屏幕像素高效操作》这篇文章主要为大家详细介绍了Python如何利用自带模块实现屏幕像素高效操作,文中的示例代码讲解详,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1、获取屏幕放缩比例2、获取屏幕指定坐标处像素颜色3、一个简单的使用案例4、总结1、获取屏幕放缩比例from