ImageVerifierCode 换一换
格式:PDF , 页数:20 ,大小:677.98KB ,
资源ID:5814265      下载积分:30 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zhuanlichaxun.net/d-5814265.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  
下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(彩色图像的直方图调试方法及其调试系统.pdf)为本站会员(b***)主动上传,专利查询网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知专利查询网(发送邮件至2870692013@qq.com或直接QQ联系客服),我们立即给予删除!

彩色图像的直方图调试方法及其调试系统.pdf

1、(10)申请公布号 CN 102306380 A (43)申请公布日 2012.01.04 CN 102306380 A *CN102306380A* (21)申请号 201110271810.7 (22)申请日 2011.09.14 G06T 5/40(2006.01) (71)申请人 山东省科学院海洋仪器仪表研究所 地址 266001 山东省青岛市市南区浙江路 28 号 (72)发明人 许岩 于砚廷 王中秋 刘慧 项顼 马庆锋 倪秀辉 夏卫平 邢攸广 崔浩 杨光 李晔 (74)专利代理机构 青岛海昊知识产权事务所有 限公司 37201 代理人 张中南 (54) 发明名称 彩色图像的直方图调

2、试方法及其调试系统 (57) 摘要 彩色图像的直方图调试方法及其调试系统, 该方法包括设置彩色图像直方图分区节点及其阈 值, 然后根据所得到的带有阈值的节点组, 对每一 个灰度进行加权平移的计算而得到偏移灰度, 然 后将彩色图像的每一个灰度替换为偏移灰度即 可。该系统包括分区节点模块、 分区阈值模块、 直 方图分区模块、 阈值设定模块、 灰度变换模块和图 像修正模块。本发明具有功能新颖、 实现简单、 成 本低廉、 调试效果明显等优点。 通过利用直方图实 现了用户对 RGB 图像灰度的调试, 不仅克服了现 有软件在灰度调试功能上的局限性, 而且用户也 可根据自身需求对图像直方图的任意区间和该区

3、间中任意阈值进行设定, 体现出了很强的交互性、 灵活性和通用性, 无疑具有广泛的应用前景。 (51)Int.Cl. (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书 2 页 说明书 8 页 附图 9 页 CN 102306387 A1/2 页 2 1. 一种彩色图像的直方图调试方法, 包括生成该彩色图像的直方图的步骤, 其特征在 于该方法还包括以下步骤 : (1) 设置直方图分区节点, 即设定任意个 0 到 255 以内的灰度作为分区节点, 或者不设 定节点而将整个直方图当作一个分区进行调试, 而得到相应数量的节点组即分区 ; (2) 设置直方图分区阈值, 即对步骤 (1

4、) 中的每一个分区设定该分区内的一个灰度作 为阈值 ; (3) 灰度变换, 即对每一个节点组及其对应的阈值计算偏移灰度值, 包括以下内容 : 从每一个节点组的下限开始, 读取节点组定义区域内的灰阶, 并判断灰阶与阈值的关 系 : 如果当前灰阶小于阈值, 则按照左侧灰阶函数计算偏移灰度值 ; 如果当前灰阶大于阈 值, 则按照右侧灰阶函数计算偏移灰度值 ; 如果当前灰阶等于阈值, 则将阈值保留为偏移灰 度值, 计算公式下 : 左侧灰阶函数 : 右侧灰阶函数 : 公式 1 偏移灰度值计算公式 其中 : 左侧灰阶数阈值 - 节点值下限 右侧灰阶数节点值上限 - 阈值 +1 ; 公式 2 函数因子计算公

5、式 如果 1/2 总灰阶数不为整数, 则取整数部分, 舍去小数部分 ; 上述偏移灰度值计算公式 得到的结果如果不为整数, 则取整数部分, 舍去小数部分 ; (4) 对彩色图像进行修正, 即将原始的彩色图像的每一个灰度值替换为根据步骤 (3) 计算得到的偏移灰度值 ; (5) 最后生成调试结果。 2. 如权利要求 1 所述的调试方法, 其特征在于上述步骤 (1) 中, 设置直方图分区节点, 使所得的节点组内的灰阶为单调递增或递减。 3. 如权利要求 1 所述的调试方法, 其特征在于上述步骤 (2) 对每一个直方图分区设置 分区阈值时, 使分区内阈值两侧的像素点数量之差在 5000 点范围以内,

6、而使阈值两侧的像 素点数基本相等。 4. 如权利要求 1 所述的调试方法, 其特征在于在上述步骤 (3) 灰度变换之前对步骤 2 所设阈值的匹配性进行判断, 即从节点组的首位依次读取每一个节点组, 并读取步骤 (2) 的阈值信息 ; 当且仅当阈值和节点组满足如下关系 : 节点组下限阈值且阈值 节点组上 限, 则将节点组对应阈值存入新数组, 如不满足则报错并提示修正输入值 ; 判断节点组的数 组地址是否到最后一位, 如果是末位则边界判定结束, 如果不是末位则数组地址增加 1。 5. 如权利要求 1 所述的调试方法, 其特征在于在上述步骤 (4) 对彩色图像进行修正的 步骤如下 : 接受步骤(3)

7、的偏移灰度 ; 读取彩色图像的直方图 ; 在直方图的每一个节点组区 权 利 要 求 书 CN 102306380 A CN 102306387 A2/2 页 3 间内取灰度值 ; 在原图像的复制图像中搜索具有该灰度的像素 ; 在偏移灰度数组内取该像 素的灰度所对应的偏移灰度 ; 修正复制图像对应像素的灰度为偏移灰度 ; 判断该灰度是否 达到区间边界 ; 当修正从 0 到 255 灰阶结束后, 即进行步骤 (5) 的调试生成结果。 6. 一种彩色图像的直方图调试系统, 其特征在于该系统包括分别用于设置分区节点 和节点组阈值的分区节点模块 (101) 与分区阈值模块 (102) ; 根据分区节对直

8、方图进行分 区的直方图分区模块 (103) ; 判断阈值与直方图分区的配性的阈值设定模块 (104) ; 对直方 图进行灰度变换的灰度变换模块 (105) ; 将原始灰度替换为变换之后灰度的图像修正模块 (106) ; 上述灰度变换模块 (105) 包括以下内容 : 接受来自阈值设定模块 (104) 的分区节点组 和阈值信息 ; 根据分区节点组和阈值信息进行偏移灰度值计算, 计算过程采用公式 1、 2 的 方式进行, 将计算结果储存为偏移灰度数组, 并输出给图像修正模块 (106)。 7. 如权利要求 6 所述的调试系统, 其特征在于上述直方图分区模块 (103) 包括以下内 容 : 根据用户

9、输入的分区节点对彩色图像的直方图进行分区, 将分区结果按顺序输出给阈 值设定模块 (104)。 8.如权利要求6所述的调试系统, 其特征在于上述阈值设定模块(104)包括以下内容 : 接受来自直方图分区模块 (103) 的分区结果 ; 根据用户设置的阈值信息判断阈值与分区节 点组的匹配性 ; 将分类结果存入数组, 并输出给灰度变换模块 (105)。 9.如权利要求6所述的调试系统, 其特征在于上述图像修正模块(106)包括以下内容 : 初始化目标图像并存储像素地址信息 ; 接受来自灰度变换模块 (105) 的偏移灰度数组 ; 根 据接受的偏移灰度数组修正目标图象并保存。 权 利 要 求 书 C

10、N 102306380 A CN 102306387 A1/8 页 4 彩色图像的直方图调试方法及其调试系统 技术领域 0001 本发明涉及一种彩色图像调试方法及系统, 具体涉及一种彩色图像的直方图调试 方法及其调试系统, 属于数字图像处理技术领域。 技术背景 0002 当前许多彩色图像由于受拍摄光线、 拍摄环境等各种因素的影响, 往往会出现各 种亮度分布不均匀的情况。 对图片的观察者来说, 明暗不均的图像不但难以阅读, 也很难对 所拍摄的物体进行真实的描述。特别是通过阅读图像进行判断的应用领域, 容易使观察者 产生错判, 造成不必要的损失。因此需要对彩色图像的灰度进行调试, 以均衡彩色图像灰

11、 度, 进一步提升彩色图像的品质。 0003 目前也有一些图像处理软件可以实现一定的直方图调试功能, 比如直方图拉伸和 均衡化。但这些调试方法大多封装在开发语言包中, 缺乏人机交互。并且由于不同图像的 亮度分布情况是不同的, 显然用一种固定的模式处理各类图像难以得到令人满意的结果。 0004 另外, 现有的直方图拉伸和均衡化算法会丢失大量灰度信息, 使画面变的单调。 当 前许多用户也会采用调节亮度的方式去处理亮度分布不均的图像, 但这种方法并没从本质 上改变图像的直方图分布, 对图像品质没有提升。 0005 总之, 现有的直方图优化技术并不能满足要求, 对用户来说如果遇到此类图像难 于处理,

12、会造成很多不便。 发明内容 0006 本发明的目的是提供一种彩色图像的直方图调试方法及其调试系统, 以克服现有 技术的不足, 以实现针对不同灰度分布的图像进行有效的人机交互的调试, 实现更优化的 直方图调整与均衡彩色图像灰度, 进一步提升彩色图像的品质。 0007 本发明充分利用通用计算机和图像模型中用到的 RGB 彩色模型, 通过经由 RGB 彩 色模型换算得到的直方图这种图像灰度信息表达方式实现对彩色图像进行调试, 只需要通 过人机交互方式设定图像调整的灰度区域和阈值, 就可使用本发明对彩色图像进行处理, 得到针对不同亮度分布图像的处理结果。 0008 一种彩色图像的直方图调试方法, 首先

13、得到该彩色图像的直方图, 其特征在于该 方法包括以下步骤 : 0009 (1) 设置直方图分区节点, 即设定任意个 0 到 255 以内的灰度作为分区节点, 或者 不设定节点而将整个直方图当作一个分区进行调试, 而得到相应数量的节点组即分区 ; 0010 (2) 设置直方图分区阈值, 即对步骤 (1) 中的每一个分区设定该分区内的一个灰 度作为阈值 ; 0011 (3) 灰度变换, 即对每一个节点组及其对应的阈值计算偏移灰度值, 包括以下内 容 : 0012 从每一个节点组的下限开始, 读取节点组定义区域内的灰阶, 并判断灰阶与阈值 说 明 书 CN 102306380 A CN 102306

14、387 A2/8 页 5 的关系 : 如果当前灰阶小于阈值, 则按照左侧灰阶函数计算偏移灰度值 ; 如果当前灰阶大 于阈值, 则按照右侧灰阶函数计算偏移灰度值 ; 如果当前灰阶等于阈值, 则将阈值保留为偏 移灰度值, 计算公式下 : 0013 左侧灰阶函数 : 0014 右侧灰阶函数 : 公式 1 0015 其中 : 0016 左侧灰阶数阈值 - 节点值下限 0017 右侧灰阶数节点值上限 - 阈值 +1 ; 公式 2 0018 0019 如果 1/2 总灰阶数不为整数, 则取整数部分, 舍去小数部分 ; 上述偏移灰度值计算 公式得到的结果如果不为整数, 则取整数部分, 舍去小数部分 ; 00

15、20 (4) 对彩色图像进行修正, 即将原始的彩色图像的每一个灰度值替换为根据步骤 (3) 计算得到的偏移灰度值 ; 0021 (5) 生成结果。 0022 上述步骤 (1) 中, 可根据直方图的递增递减情况, 将直方图的各个局部最高点或 局部最低点设置为节点, 即通过设置分区节点, 而使所得的节点组内的灰阶为单调递增或 递减。 0023 上述步骤 (2) 对每一个分区设置分区阈值时, 使分区内阈值两侧的像素点数量之 差在 5000 点范围以内。由于屏幕的分辨率往往在几十万、 甚至上百万以上, 阈值两侧的像 素点数量之差在 5000 点范围以内足以确保该阈值两侧的像素点数基本相等。 0024

16、一种彩色图像的直方图调试系统, 其特征在于该系统包括分别用于设置分区节点 和节点组阈值的分区节点模块与分区阈值模块 ; 根据分区节对直方图进行分区的直方图分 区模块 ; 判断阈值与直方图分区的配性的阈值设定模块 ; 对直方图进行灰度变换的灰度变 换模块 ; 将原始灰度替换为变换之后灰度的图像修正模块 ; 0025 上述灰度变换模块包括以下内容 : 接受来自阈值设定模块的分区节点组和阈值信 息 ; 根据分区节点组和阈值信息进行偏移灰度值计算, 计算过程采用公式 1、 2 的方式进行, 将计算结果储存为偏移灰度数组, 并输出给图像修正模块。 0026 上述直方图分区模块包括以下内容 : 根据用户输

17、入的分区节点对彩色图像的直方 图进行分区, 将分区结果按顺序输出给阈值设定模块。 0027 上述阈值设定模块包括以下内容 : 接受来自直方图分区模块的分区结果 ; 根据用 户设置的阈值信息判断阈值与分区节点组的匹配性 ; 将分类结果存入数组, 并输出给灰度 变换模块。 0028 上述图像修正模块包括以下内容 : 初始化目标图像并存储像素地址信息 ; 接受来 自灰度变换模块的偏移灰度数组 ; 根据接受的偏移灰度数组修正目标图象并保存。 说 明 书 CN 102306380 A CN 102306387 A3/8 页 6 0029 最后, 生成结果即可。 0030 采用上述系统通过调节彩色图像的直

18、方图实现彩色图像调试的方法, 包括以下步 骤 : 0031 首先将待处理的彩色图像输入计算机 ; 将图像修正模块、 直方图分区模块、 阈值设 定模块、 灰度变换模块组成的系统安装在计算机中 ; 0032 直方图分区模块接受用户设置的分区节点信息, 并对分区节点进行分组, 将分区 节点组以数组形式传输给阈值设定模块 ; 阈值设定模块接收用户设置的阈值, 接收来自直 方图分区模块的节点数组, 并对根据阈值和节点组信息判定两者的匹配性 ( 所谓匹配性是 指阈值必须在节点组的区间内 ), 以数组形式储存匹配结果, 将包含匹配节点组和阈值信息 的数组传输给灰度变换模块 ; 灰度变换模块接收来自阈值设定模

19、块的匹配信息, 计算偏移 灰度值, 通过图像修正模块按偏移灰度数组修正原图像灰度值 ; 输出整幅图像的处理结果, 调试过程结束。 0033 本发明具有功能新颖、 实现简单、 成本低廉、 调试效果明显等优点。通过利用直方 图实现了用户对 RGB 图像灰度的调试, 不仅克服了现有软件在灰度调试功能上的局限性, 而且用户也可根据自身需求对图像直方图的任意区间和该区间中任意阈值进行设定, 体现 出了很强的交互性、 灵活性和通用性。 本发明步骤(3)的计算公式1和2采用了加权平移的 方法, 加权平移方法充分维护了直方图本身的灰度结构, 无论设置怎样的分区与阈值, 都可 以实现阈值两侧灰度的加权变换, 该

20、方法比传统的线性平移的方法更稳定, 不会使图像灰 度分布发生突变, 从而保证了整幅图像的平稳变换。值得说明的是, 由于本发明允许在 0 到 255 内任意地设定分区, 并且分区内任意灰度均可设置为阈值, 因此不但能够实现彩色图像 的灰度均衡化这一基本效果, 更如一种通用的方法或工具一样通过分区及其阈值可任意性 设定的特点, 将彩色图像经由直方图进行任意变换与调试, 无疑具有广泛的应用前景。 附图说明 0034 图 1 是本发明的总体结构示意图。 0035 其中, 分区节点模块 101, 分区阈值模块 102, 直方图分区模块 103, 直方图阈值设 定模块 104, 灰度变换模块 105, 图

21、像修正模块 106, 调试结果 107。 0036 图 2 是本发明的图像修正模块 106 流程示意图。 0037 其中包括初始化 202、 接收偏移灰度组 209、 指令合法性判断 204、 指令值合法性判 断 205、 根据偏移灰度修正图像 206、 应用结束判断 208 和保存新图像 208。 0038 图 3 是本发明的直方图分区模块 103 流程示意图。 0039 其中包括接收分区节点 309、 指令合法性判断 302、 指令值合法性判断 304, 分区节 点分组子进程 305、 将分区节点组按顺序输出 306 和应用结束判断 309。 0040 图 4 是本发明的直方图阈值设定模块

22、 104 流程示意图。 0041 其中包括接收分区节点组 410、 指令合法性判断 402、 指令值合法性判断 404、 接收 用户阈值信息 405、 阈值匹配性判定及分类存储子进程 406 和应用结束判断 408。 0042 图 5 是本发明的灰度变换模块 105 流程示意图。 0043 其中包括接收分区节点组和阈值信息 509、 指令合法性判断 502、 指令值合法性判 断 504、 偏移灰度值计算子进程 505、 生成偏移灰度数组 506 和应用结束判断 507。 说 明 书 CN 102306380 A CN 102306387 A4/8 页 7 0044 图 6 是本发明的直方图分区

23、模块 103 中的分区节点分组进程示意图。 0045 图 7 是本发明的直方图阈值设定模块 104 中的阈值匹配性判定及分类存储示意 图。 0046 图 8 是本发明的灰度变换模块 105 中的偏移灰度值计算示意图。 0047 图 9 是本发明的图像修正模块 106 中的根据偏移灰度修正图像示意图。 0048 图 10 是某彩色图像经本发明调试之后的直方图的示意图。 具体实施方式 0049 如图 1 所示, 一种彩色图像的直方图调试方法, 首先得到该彩色图像的直方图, 还 包括以下步骤 : 0050 (1)用户设置直方图分区节点, 即用户设定任意个0到255以内的灰度作为分区节 点, 或者不设

24、定节点而将整个直方图当作一个分区进行调试, 而得到相应数量的节点组即 分区 ; 0051 (2) 用户设置直方图分区阈值, 即用户对步骤 (1) 中的每一个分区设定该分区内 的一个灰度作为阈值 ; 0052 (3) 灰度变换, 即对每一个节点组及其对应阈值的数组计算偏移灰度值, 包括以下 内容 : 0053 从每一个节点组的下限开始, 读取节点组定义区域内的灰阶, 并判断灰阶与阈值 的关系 : 如果当前灰阶小于阈值, 则按照左侧灰阶函数计算偏移灰度值 ; 如果当前灰阶大 于阈值, 则按照右侧灰阶函数计算偏移灰度值 ; 如果当前灰阶等于阈值, 则将阈值保留为偏 移灰度值, 计算公式如下 : 00

25、54 左侧灰阶函数 : 0055 右侧灰阶函数 : 公式 1 0056 其中 : 0057 左侧灰阶数阈值 - 节点值下限 0058 右侧灰阶数节点值上限 - 阈值 +1 ; 公式 2 0059 0060 如果 1/2 总灰阶数不为整数, 则取整数部分, 舍去小数部分 ; 上述偏移灰度值计算 公式得到的结果如果不为整数, 则取整数部分, 舍去小数部分 ; 0061 (4) 对彩色图像进行修正, 即将原始的彩色图像的每一个灰度值替换为根据步骤 (3) 计算得到的偏移灰度值 ; 0062 (5) 生成结果。 0063 如图10所示, 上述步骤(1)中, 用户可根据直方图的递增递减情况, 将直方图的

26、各 个局部最高点或局部最低点设置为节点, 即用户通过设置分区节点, 而使所得的节点组内 说 明 书 CN 102306380 A CN 102306387 A5/8 页 8 的灰阶为单调递增或递减, 这样会更有利于使调试结果尽量平滑, 提高画质 ; 用户也可根据 自身需要任意设定节点, 每幅直方图可设定任意个节点, 将其分成任意个分区, 但节点一定 要大于等于零且小于255, 因为灰度区间是0到255 ; 用户也可不设定节点, 那么将整个直方 图当作一个分区进行调试 ; 当用户设定完分区节点后, 再进行分区节点组的阈值设置。 0064 上述步骤 (2) 用户对每一个分区设置分区阈值时, 使分区

27、内阈值两侧的像素点数 量之差在 5000 点范围以内。由于屏幕的分辨率往往在几十万、 甚至上百万以上, 阈值两侧 的像素点数量之差在 5000 点范围以内足以确保该阈值两侧的像素点数基本相等。用户也 可根据自身需要任意设定阈值, 但每个分区只能设置一个阈值, 否则提示出错。 0065 如图 1 所示, 一种彩色图像的直方图调试系统, 其特征在于该系统包括分别用于 设置分区节点和节点组阈值的分区节点模块 101 与分区阈值模块 102 ; 根据分区节对直方 图进行分区的直方图分区模块 103 ; 判断阈值与直方图分区的配性的阈值设定模块 104 ; 对 直方图进行灰度变换的灰度变换模块 105

28、; 将原始灰度替换为变换之后灰度的图像修正模 块 106 ; 0066 上述灰度变换模块 105 包括以下内容 : 接受来自阈值设定模块 104 的分区节点组 和阈值信息 ; 根据分区节点组和阈值信息进行偏移灰度值计算, 计算过程采用公式 1、 2 的 方式进行, 将计算结果储存为偏移灰度数组, 并输出给图像修正模块 106。 0067 图 5 表示上述灰度变换模块 105, 包括以下内容 : 接受来自 104 的包含匹配后的 分区节点组及其对应阈值的数组 509 ; 判断指令的合法性 502 ; 查询指令值的合法性 ; 根据 509 所接收的数组信息计算偏移灰度值 505 ; 生成偏移灰度数

29、组 506 ; 判断应用是否结束 507。 0068 图 8 表示上述计算偏移灰度值子进程 505, 包括以下内容 : 读取节点组及其对应阈 值802 ; 计算函数因子803, 包括左侧灰阶数804, 1/2总灰阶数805, 右侧灰阶数806, 以备计 算偏移灰度值调用。计算公式如式 2 所示 : 0069 左侧灰阶数阈值 - 节点值下限 0070 右侧灰阶数节点值上限 - 阈值 +1 0071 0072 公式 2 函数因子计算公式 0073 如果 1/2 总灰阶数不为整数, 则取整数部分, 舍去小数部分 ; 从节点值下限开始, 读取节点组定义区域内的灰阶 807 ; 判断灰阶与阈值的关系 8

30、08, 有三中情况 : 当前灰阶小 于阈值 809, 当前灰阶大于阈值 810, 当前灰阶等于阈值 811 ; 如果当前灰阶小于阈值, 则按 照左侧灰阶函数812计算偏移灰度值 ; 如果当前灰阶大于阈值, 则按照右侧灰阶函数813计 算偏移灰度值 ; 如果当前灰阶等于阈值, 则将阈值保留为偏移灰度值。 计算公式如公式1所 示 : 0074 左侧灰阶函数 : 0075 右侧灰阶函数 : 0076 公式 1 偏移灰度值计算公式 说 明 书 CN 102306380 A CN 102306387 A6/8 页 9 0077 上述偏移灰度值计算公式得到的结果如果不为整数, 则取整数部分, 舍去小数部

31、分 ; 当前灰阶偏移灰度计算完毕后, 判断灰阶是否到达末位 815, 即判断灰度是否达到节点 值上限, 如果达到则计算结束, 如果未达到则灰阶数加 1 816, 继续循环 807 到 815 的进程。 0078 图3表示上述直方图分区模块103, 包括以下内容 : 接受来自101的分区节点309 ; 判断指令的合法性 302 ; 查询指令值的合法性 304 ; 对分区节点进行分组 305 ; 将分区节点 组按顺序输出给 104 306 ; 判断应用是否结束 307。 0079 图 6 表示上述以边界配对原则对分区节点进行分组子进程 305, 包括以下内容 : 接 收分区节点, 将 0 与 25

32、5 两个灰度加入分区节点中 602 ; 对包含 0 和 255 的节点进行排序 603 ; 将排序结果顺序存入数组 604 ; 从排序结果数组读取当前地址和下一个地址信息 605, 并储存 606, 判断第二位地址是否是末位 607, 如果是末位则分组结束, 如果不是末位则地 址变量增加 1608, 继续运行 605 到 607 进程。 0080 图 4 表示上述直方图阈值设定模块 104, 包括以下内容 : 接受来自 103 的分区节点 数组410 ; 判断指令的合法性402 ; 查询指令值的合法性404 ; 接收来自102的阈值信息405 ; 判定阈值匹配性并分类 406 ; 将分类结果以

33、数组形式发送给灰度变换模块 105 ; 判断应用是 否结束 408。 0081 图 7 表示上述判定阈值匹配性并分类存储子进程 406, 包括以下内容 : 按地址从首 位依次读取节点组的数组 702 ; 循环读取阈值信息 706 ; 对节点组数据和阈值, 循环利用与 逻辑判断, 当且仅当阈值和节点组满足如下关系 : 节点组下限阈值且阈值 节点组上限, 则将节点组对应阈值存入新数组 704, 如不满足则报错并提示修正输入值 707 ; 判断节点组 的数组地址是否到最后一位 705, 如果是末位则边界判定结束, 如果不是末位则数组地址增 加 1708, 继续循环 702 到 705 的进程。 00

34、82 图 2 表示上述图像修正模块 106, 包括以下内容 : 初始化并由原图像复制生成目标 图像202 ; 接受来自105的偏移灰度数组209 ; 判断存取指令的合法性204 ; 查询指令值的合 法性 205 ; 根据偏移灰度修正图像进程 206 ; 判断应用是否结束 207 ; 保存新图像 208。 0083 图 9 表示上述根据偏移灰度修正图像子进程 206, 包括以下内容 : 接受偏移灰度数 组 902 ; 读取当前的目标图像 903 ; 在节点组区间内取灰度值 904 ; 在原图像中搜索该灰度 的像素 905 ; 记录该像素的地址 907 ; 在偏移灰度数组内取对应像素的偏移灰度 9

35、06 ; 修正 目标图像 909 对应像素的灰度为偏移灰度 908 ; 判断该灰度是否达到区间边界 910。 0084 当通过图像修正模块 106 修正从 0 到 255 灰阶结束后, 则表示调试后的新图像的 灰阶, 即调试生成结果 107。 0085 采用上述系统通过调节彩色图像直方图进行彩色图像调试处理的方法, 包括以下 步骤 : 0086 A、 首先将待处理的彩色图像输入计算机 ; 将图像修正模块 106、 直方图分区模块 103、 阈值设定模块 104、 灰度变换模块 105 组成的系统安装在计算机中 ; 0087 B、 用户交互方式 : 用户设置分区节点 101, 并发送分区节点信息

36、到直方图分区模 块 103 ; 用户设置分区阈值 102, 并发送分区阈值信息到直方图阈值设定模块 104。 0088 C、 对分区节点进行匹配分组 305, 包括以下内容 : 接收分区节点, 将 0 与 255 两个 灰度加入分区节点中 602 ; 对包含 0 和 255 的节点进行排序 603 ; 将排序结果顺序存入数组 604 ; 从排序结果数组读取当前地址和下一个地址信息 605, 并储存 606, 判断第二位地址是 说 明 书 CN 102306380 A CN 102306387 A7/8 页 10 否是末位 607, 如果是末位则分组结束, 如果不是末位则地址变量增加 1 608

37、, 继续运行 605 到 607 进程。 0089 D、 判定阈值匹配性并分类 406, 包括以下内容 : 按地址从首位依次读取节点组的 数组 702 ; 循环读取阈值信息 706 ; 对节点组数据和循环利用与逻辑判断, 当且仅当阈值和 节点组满足如下关系 : 节点组下限阈值且阈值 节点组上限, 则将节点组对应阈值存入 新数组 704, 如不满足则报错并提示修正输入值 707 ; 判断节点组的数组地址是否到最后一 位705, 如果是末位则边界判定结束, 如果不是末位则数组地址增加1 708, 继续循环702到 705 的进程。 0090 E、 计算偏移灰度值505, 包括以下内容 : 读取节点

38、组及其对应阈值802 ; 按照公式1 计算函数因子 803 ; 从节点值下限开始, 读取节点组定义区域内的灰阶 807 ; 判断灰阶与阈 值的关系 808, 有三中情况 : 当前灰阶小于阈值 809, 则按照公式 2 的左侧灰阶函数计算 ; 当 前灰阶大于阈值810, 则按照公式2的右侧灰阶函数计算 ; 当前灰阶等于阈值811, 则将阈值 保留 ; 当前灰阶偏移灰度计算完毕后, 判断灰阶是否到达末位 815, 如果达到则计算结束, 如果未达到则灰阶数加 1 816, 继续循环 807 到 815 的进程。 0091 F、 根据上述灰度变换模块 105 计算得到的偏移灰度值修正原始彩色图像, 最

39、后生 成结果 107。 0092 实施例 1 0093 如图 10 所示, 图 10a 为某彩色图像的直方图, 其从 0 255 的变化情况为先变化 不大 ( 基本维持同一高度 ), 然后陡然上升直至最高点, 然后下降。用户可以仅设一个分区 节点, 如图 10b 所示, 可将最高点设为分区节点而得到两个分区, 从而前一个分区呈单调递 增趋势, 后一个分区呈单调递减趋势。 0094 然后用户设置两个分区各自的阈值, 为了使阈值两侧的像素点数基本相等, 如图 10b 所示, 前一个分区的阈值靠近分区节点 ( 即最高值 ), 而后一个分区的阈值基本是在该 分区的中间位置。 0095 利用本发明调试后

40、, 该彩色图像的直方图如图 10c 所示。由于本发明是采用加权 平移的算法, 调试后会使得某些灰度整体调整为其他灰度, 因此会出现灰度空缺的情况, 这 是因为对于同一区域, 直方图阈值两侧一定有一侧存在拉伸现象, 即原有灰度级数要加权 平移到一个更宽的灰度区间中, 因此一定会有一些灰度在变换后处于空缺状态, 但这种变 化对于整幅图像效果的改善不会产生影响, 总体上表现为灰度均衡化。 0096 实施例 2 0097 下面结合附图, 以一幅 RGB 图像直方图的调试为实施例, 对本发明通过调节彩色 图像直方图实现数字图像处理的实施方式做进一步详述 : 0098 输入一幅 RGB 图像, 用户通过设

41、置分区节点 101 设置节点 a 和 b(0ab255 , 并 且设置分区阈值 102 设置阈值 m、 n、 k(0manbk255 。如图 1, 设置的分区节点发送 到直方图分区模块 103, 设置的分区阈值发送到直方图阈值设定模块 104。 0099 如图 3, 分区节点输入 309, 进行指令判断 302 和查询合法性 304, 如果不合法则报 错并提供错误信息然后重置进程 303, 如果合法则进入对分区节点进行分组环节 305。如图 6 所示, 将 0 与 255 两个灰度加入分区节点 602, 形成 a, b, 0, 255 的节点组 ; 对其进行排序 603, 形成 0, a, b

42、, 255 的节点组 ; 将其排序结果存入数组 604 ; 读取数组第一地址 0 和第二 说 明 书 CN 102306380 A CN 102306387 A8/8 页 11 地址 a 605, 并按两个一组顺序储存为 0, a606 ; 判断 a 不是数组末位 607, 因此数组地址 +1 608 后继续循环, 读取数组第二地址 a 和第三地址 b 605, 并按两个一组顺序储存为 a, b606 ; 判断 b 不是数组末位 607 因此循环 605、 606 按照 b, 255 储存。如判断 255 为数组 末位, 则结束本进程进入下一进程 609 ; 将分区节点组按顺序输出给 1043

43、06。 0100 如图 4, 接受来自 103 的分区节点组 410, 进行指令判断 402 和查询合法性 404, 如 果不合法则报错并提供错误信息然后重置进程 403, 如果合法则进入判定阈值匹配性及分 类 406, 同时接受自 102 的用户阈值信息 405 ; 如图 7, 读取节点组 0, a702, 循环读取 102 设置的阈值 m, n, k, 满足 0m 且 ma, 则存为 0, a, m704, 其中前一个数对表示分区 节点组, 后一个值表示对应该节点组的阈值 ; 判断 0, a 地址是否是末位 705, 因不是末位 所以地址 +1 708 循环操作 a, b 和 b, 255

44、 的过程 702 到 705 ; 经过以上过程, 产生三组 节点组和对应阈值信息分别为 0, a, m、 a, b, n、 b, 255, k, 顺序发送到灰度变换 模块 105。 0101 如图 5, 接受来自 104 的节点组和对应阈值信息 509, 进行指令判断 502 和查询合 法性 504, 如果不合法则报错并提供错误信息然后重置进程 503, 如果合法则进入偏移灰度 值计算 505 ; 如图 8, 读取节点组及其对应的阈值 0, a, m802, 分别根据式 1 计算 804、 805 和 806 以备调用 ; 从 0 开始依次读取节点组 0, a 内的灰阶, 因 0m 808,

45、由此判断当前 灰度小于阈值 809, 通过式 2 左侧灰阶函数 812 计算偏移灰度值并存入数组 814, 判断 0, a 地址是否达到末位 815, 因 0a 未达到节点区域上限, 由此循环当前灰阶 +1, 重复 807 到 815 的过程, 当前灰度达到区域上限时, 对于该节点区域的偏移灰度计算结束并将结果数组 传入下一进程 817 ; 生成含有偏移灰度的数组 0, a, m, 0 , ., a 506。 0102 如图 2, 初始化并由原图像生成目标图像 202 ; 接受来自 105 的偏移灰度组 0, a, m, 0 , ., a 209 ; 进行指令判断 204 和值的合法性查询 2

46、05 ; 如图 9, 读取生成的目 标图像 903, 读取偏移灰度数组 0, a, m, 0 , ., a 902, 从 0, a 中取灰度值 0904, 在原图像中搜索所有灰度值为 0 的像素 905 并记录该像素的存储地址 907 ; 在偏移灰度数 组 0 , ., a 中取对应 0 的偏移灰度 0 906, 根据相对地址将目标图像 909 中该地址对 应的点的灰度由 0 变换为 0 908, 判断 0 是否达到 a, 因 0a, 所以使灰阶 0 增加 1 位, 循环 904 到 910 的过程 ; 判断目标图像的每一个节点区域对应偏移灰度组是否都被接受 207, 如 未接受则继续 209

47、, 如都已接受, 则将当前目标图像保存为新图像 208。 0103 得到的新图像即本次调试的结果 107。 说 明 书 CN 102306380 A CN 102306387 A1/9 页 12 图 1 说 明 书 附 图 CN 102306380 A CN 102306387 A2/9 页 13 图 2 说 明 书 附 图 CN 102306380 A CN 102306387 A3/9 页 14 图 3 说 明 书 附 图 CN 102306380 A CN 102306387 A4/9 页 15 图 4 说 明 书 附 图 CN 102306380 A CN 102306387 A5/9 页 16 图 5 说 明 书 附 图 CN 102306380 A CN 102306387 A6/9 页 17 图 6 说 明 书 附 图 CN 102306380 A CN 102306387 A7/9 页 18 图 7 说 明 书 附 图 CN 102306380 A CN 102306387 A8/9 页 19 图 8 说 明 书 附 图 CN 102306380 A CN 102306387 A9/9 页 20 图 9 图 10 说 明 书 附 图 CN 102306380 A

copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1