【数字图像处理】Matlab实现-图像增强-彩色图像增强(彩虹编码,热金属编码)
伪彩色处理
伪彩色增强:把一幅黑白域图像的不同灰度级映射为一幅彩色图像的技术手段。
伪彩色增强有很多种方法,而下面的增强方法则是使用的空间域灰度级-彩色变换法。
空间域灰度级-彩色变换法:可以将灰度图像变为具有多种颜色渐变的连续彩色图像,变换后的图像视觉效果较好,主要色相是将灰度图像f(x,y)送入具有不同变换性质的红、绿、蓝3个变换器,相对应的产生3个不同的输入fR(x,y),fG(x,y),fB(x,y)将它们对应地作为彩色图像的红绿蓝三个色彩分量合成一副彩色图像。
彩虹编码和热金属编码是其中的两种变化函数。
彩虹编码
%转换为灰度
gray=rgb2gray(Image1);
[h,w]=size(gray);
%新图像的矩阵
NewImage3=zeros(h,w,3);
for x=1:h
for y=1:w
if gray(x,y)<96
NewImage3(x,y,1)=0;
elseif gray(x,y)<128
NewImage3(x,y,1)=255*(gray(x,y)-96)/32;
else
NewImage3(x,y,1)=255;
end
end
end
for x=1:h
for y=1:w
if gray(x,y)<32
NewImage3(x,y,2)=0;
elseif gray(x,y)<64
NewImage3(x,y,2)=255*(gray(x,y)-32)/32;
elseif gray(x,y)<128
NewImage3(x,y,2)=255;
elseif gray(x,y)<192
NewImage3(x,y,2)=255*(192-gray(x,y))/64;
else
NewImage3(x,y,2)=255*(gray(x,y)-192)/64;
end
end
end
for x=1:h
for y=1:w
if gray(x,y)<32
NewImage3(x,y,3)=255*gray(x,y)/32;
elseif gray(x,y)<64
NewImage3(x,y,3)=255;
elseif gray(x,y)<96
NewImage3(x,y,3)=255*(96-gray(x,y))/32;
elseif gray(x,y)<192
NewImage3(x,y,3)=0;
else
NewImage3(x,y,3)=255*(gray(x,y)-192)/64;
end
end
end
imshow(NewImage3),title('彩虹编码')
处理结果
热金属编码
%转换为灰度
gray=rgb2gray(Image1);
[h,w]=size(gray);
%新图像的矩阵
NewImage4=zeros(h,w,3);
for x=1:h
for y=1:w
if gray(x,y)<64
NewImage4(x,y,1)=0;
elseif gray(x,y)<128
NewImage4(x,y,1)=255*(gray(x,y)-64)/64;
else
NewImage4(x,y,1)=255;
end
end
end
for x=1:h
for y=1:w
if gray(x,y)<128
NewImage4(x,y,2)=0;
elseif gray(x,y)<192
NewImage4(x,y,2)=255*(gray(x,y)-128)/64;
else
NewImage4(x,y,2)=255;
end
end
end
for x=1:h
for y=1:w
if gray(x,y)<64
NewImage4(x,y,3)=255*gray(x,y)/64;
elseif gray(x,y)<96
NewImage4(x,y,3)=255;
elseif gray(x,y)<128
NewImage4(x,y,3)=255*(128-gray(x,y))/32;
elseif gray(x,y)<192
NewImage4(x,y,3)=0;
else
NewImage4(x,y,3)=255*(gray(x,y)-192)/64;
end
end
end
imshow(NewImage4),title('热金属编码')
处理结果
————————————————
版权声明:本文为CSDN博主「SKY_FISHSKY_FISH」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/SUMMER_RAINOW/article/details/115773441
【数字图像处理】Matlab实现-图像增强-彩色图像增强(彩虹编码,热金属编码)的更多相关文章
- [00]数字图像处理-matlab速成
原本听的是mooc武汉大学的数字图像处理课程,但是无奈老师读ppt的能力太强,不太适应,后面的课程对于实验方面的要求甚低,无奈之下到处找课程,终于找到了一个适合自己的教程<王伟强-数字图像处理& ...
- 数字图像处理(MATLAB版)学习笔记(1)——第1章 绪言
0.下定决心 当当入手数字图像处理一本,从此开此正式跨入数字图像处理大门.以前虽然多多少少接触过这些东西,也做过一些相关的事情,但感觉都不够系统,也不够专业,从今天开始,一步一步地学习下去,相信会有成 ...
- Win8 Metro(C#)数字图像处理--2.60部分彩色保留算法
原文:Win8 Metro(C#)数字图像处理--2.60部分彩色保留算法 [函数名称] 部分彩色保留函数 WriteableBitmap PartialcolorProcess ...
- 数字图像处理(MATLAB版)学习笔记(2)——第2章 灰度变换与空间滤波
0.小叙闲言 1.本章整体结构 2.书中例子 例2.1 主要是使用函数imadjust,来熟悉一下灰度处理,体验一把 >> imread('myimage.jpg'); >> ...
- Matlab绘图基础——colormap在数字图像处理及三维图形展示上的应用(分层设色)
色图(color map)是MATLAB系统引入的概念.在MATLAB中,每个图形窗口只能有一个色图. 色图是m×3 的数值矩阵,它的每一行是RGB三元组.色图矩阵可以人为地生成 ...
- 《数字图像处理(MATLAB)》冈萨雷斯
<数字图像处理(MATLAB)>冈萨雷斯 未完结! 参考:数字图像处理——https://blog.csdn.net/dujing2019/article/category/8820151 ...
- MATLAB数字图像处理(二)图像增强
1 图像增强 1.1 直方图均衡化 对于灰度图像,可以使用直方图均衡化的方法使得原图像的灰度直方图修正为均匀的直方图. 代码如下: I2=histeq(I1); ...
- 数字图像处理笔记与体会(一)——matlab编程基础
最近开始学习数字图像处理,使用matlab实现,下面我就来记录笔记和体会,一方面是给大家提供参考,另一方面是防止我忘记了. 复习一下: 1.数字图像是用一个数字矩阵来表示的,数字阵列中的每个数字,表示 ...
- MATLAB数字图像处理(一)基础操作和傅立叶变换
数字图像处理是一门集计算机科学.光学.数学.物理学等多学科的综合科学.随着计算机科学的发展,数字图像处理技术取得了巨大的进展,呈现出强大的生命力,已经在多种领域取得了大量的应用,推动了社会的发展.其中 ...
- 数字图像处理实验(总计23个)汇总 标签: 图像处理MATLAB 2017-05-31 10:30 175人阅读 评论(0)
以下这些实验中的代码全部是我自己编写调试通过的,到此,最后进行一下汇总. 数字图像处理实验(1):PROJECT 02-01, Image Printing Program Based on Half ...
随机推荐
- ISP图像处理——紫边Purple Fringing检测
之前写过文章记紫边的形成原因,以下小结改善方法 图像紫边存在数码相机.监控摄像头等数字成像图像,使用设备在逆光.大光圈条件下拍摄图像的高反差区域容易出现紫边,解决图像自编问题有助设备得到完美图像. 紫 ...
- Maven项目配置
pom.xml配置 配置编码格式为UTF-8 <properties> <project.build.sourceEncoding>UTF-8</project.buil ...
- 开源BaaS平台Supabase介绍
Supabase 介绍 Supabase 是一个开源的 Firebase 替代品,以BaaS的形式向各种应用程序提供了一系列的后端功能,可以帮助开发者更快地构建产品. 对于想快速实现一个产品而言,如果 ...
- 【技术积累】HTML+CSS+JavaScript中的基础知识【一】
HTML基础标签 <html> 定义HTML文档的根元素. <!DOCTYPE html> <html> <head> <title>My ...
- java_web:jdbc里的零碎笔记
name="%"+name+"%"; 这段代码是用于构建SQL语句中的模糊查询条件的,其中name是一个字符串类型的变量,表示查询的关键字. %是通配符,在SQ ...
- hdfs小文件合并
HDFS small file merge 1.hive Settings There are 3 settings that should be configured before archivin ...
- quarkus依赖注入之一:创建bean
欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 关于依赖注入 对一名java程序员来说,依赖注入应该是 ...
- 【微信小程序的开发】初步认识
目录 项目结构 页面组成 json配置文件 app.json project.config.json sitemap.json 每个页面的json 实例 wxml 标签名称 ...
- 【pandas小技巧】--修改列的名称
重命名 pandas 数据中列的名称是一种常见的数据预处理任务.这通常是因为原始数据中的列名称可能不够清晰或准确.例如,列名可能包含空格.大写字母.特殊字符或拼写错误. 使用 pandas 的 ren ...
- Visual Studio常用快捷键(附带免费PDF)
前言 对于开发者而言,熟悉快捷键的使用,能够起到事半功倍的作用,提高工作效率.以下是我整理的一份Visual Studio常用快捷键清单,希望能够帮助到你. 常用快捷方式 快捷键 功能 Ctrl + ...