文档库 最新最全的文档下载
当前位置:文档库 › JAVA图片灰度变换

JAVA图片灰度变换

JAVA图片灰度变换
JAVA图片灰度变换

import java.applet.*;

import java.awt.*;

import java.awt.image.*;

public class heibai extends Applet

{

Image art,Buf; //art装入一图片

int onced=0; //状态变量

boolean is_color=true;

Graphics Bufg; //预读取图片,使用双缓冲技术抑制闪烁

Dimension xy=null; //存储一个对象的尺寸

public void init()

{

art=getImage(getDocumentBase(),"test.jpg"); //装入一图片

//resize(170,245); //重新调整窗口大小

}

public void paint(Graphics g)

{

//如果是第一次装入图片,则直接显示

if(onced==0)

{

g.drawImage(art,0,0,this);

}

//如果正在进行灰度变换,则提示等待

if(onced==1)

{

g.setColor(new Color(255,200,0));

g.drawString("正在准备进行灰度变换",1,30);

}

if(onced==2)

{

g.setColor(new Color(255,0,200));

g.drawString("正在进行灰度变换,请等待...",4,30);

}

if(onced==3)

{

if(is_color)

g.drawImage(Buf,0,0,this);

else

g.drawImage(art,0,0,this);

//is_color=!is_color;

//在黑白和彩色之间变化

}

}

public boolean mouseDown(Event evt,int x,int y)

{//鼠标按下,准备变换

if(onced==0)

{

onced=1;

}

repaint();

return true;

}

public boolean mouseUp(Event evt,int x,int y)

{//鼠标弹起,开始变换

if(onced==1)

{

onced=2;

int wd=art.getWidth(this); //取得图片宽

int ht=art.getHeight(this); //取得图片高

GetPixels(art,0,0,wd,ht); //调用灰度变换方法(自定义的方法)

}

return true;

}

public void GetPixels(Image img,int x,int y,int w,int

h)

{

int[] pixels=new int[w*h]; //定义一数组,用来存储图片的象素

int gray;

PixelGrabber pg=new PixelGrabber(img,x,y,w,h,pixels,0,w);

try

{

pg.grabPixels(); //读取像素值

}

catch(InterruptedException e)

{

System.err.println("处理被异常中断!请重试!");

}

for(int j=0;j

{

for(int i=0;i

{

//由红,绿,蓝值得到灰度值

gray=(int)(((pixels[w*j+i]>>16)&0xff)*0.8);

gray+=(int)(((pixels[w*j+i]>>8)&0xff)*0.1);

gray+=(int)(((pixels[w*j+i])&0xff)*0.1);

pixels[w*j+i]=(255<<24)|(gray<<16)|(gray<<8)|gray; }

}

Image pic=createImage(new

MemoryImageSource(w,h,pixels,0,w)); //由像素值产生图像

Bufg.drawImage(pic,0,0,this); //显示黑白图片

onced=3;

repaint();

}

public void update(Graphics g)

{

if(xy==null)

{

xy=this.size();

Buf=createImage(xy.width,xy.height);

Bufg=Buf.getGraphics();

}

paint(g);

}

}

图像灰度变换实验报告

图像灰度变换报告 一.实验目的 1.学会使用Matlab ; 2.学会用Matlab 软件对图像进行灰度变换,观察采用各种不同灰度变换发法对最终图像效果的影响; 二.实验内容 1.熟悉Matlab 中的一些常用处理函数 读取图像:img=imread('filename'); //支持TIF,JPEG,GIF,BMP,PNG 等文件格式。 显示图像:imshow(img,G); //G 表示显示该图像的灰度级数,如省略则默认为256。 保存图片:imwrite(img,'filename'); //不支持GIF 格式,其他与imread 相同。 亮度变换:imadjust(img,[low_in,high_in],[low_out,high_out]); //将low_in 至high_in 之间的值映射到low_out 至high_out 之 间,low_in 以下及high_in 以上归零。 绘制直方图:imhist(img); 直方图均衡化:histeq(img,newlevel); //newlevel 表示输出图像指定的灰度级数。 2.获取实验用图像:rice.jpg. 使用imread 函数将图像读入Matlab 。 3 .产生灰度变换函数T1,使得: 0.3r r < 0.35 s = 0.105 + 2.6333(r – 0.35) 0.35 ≤ r ≤ 0.65 1 + 0.3(r – 1) r > 0.65 用T1对原图像rice.jpg 进行处理,使用imwrite 函数保存处理后的新图像。 4.产生灰度变换函数T2,使得: s = 5.用T2imwrite 保存处理后的新图像。 6.分别用 s = r 0.6; s = r 0.4; s = r 0.3 对kids.tiff 图像进行处理。为简便起见,使用Matlab 中的imadjust 函数,最后用imwrite 保存处理后的新图像。 7.对circuit.jpg 图像实施反变换(Negative Transformation )。s =1-r; 使

灰度图像处理及颜色模型转换

灰度图像处理程序代码代码 1.二值图像 function erzhi_Callback(hObject, eventdata, handles) % hObject handle to erzhi (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) axes(handles.axes2); x=(handles.img); if isrgb(x) msgbox('这是彩色图像,不能转换为二值图像','转换失败'); else j=im2bw(x); imshow(j); end 2.图像腐蚀 function fushi_Callback(hObject, eventdata, handles) % hObject handle to fushi (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) axes(handles.axes2); x=(handles.img); if isrgb(x) msgbox('这是彩色图像,不能进行图像腐蚀','失败'); else j=im2bw(x); se=eye(5); bw=bwmorph(j,'erode'); imshow(bw); 3.创建索引图像 function chuanjian_Callback(hObject, eventdata, handles) % hObject handle to chuanjian (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) axes(handles.axes2); x=(handles.img); if isrgb(x) msgbox('这是彩色图像,不能创建索引图像','创建失败'); else y=grayslice(x,16); axes(handles.axes2); imshow(y,jet(16)); end 4.轮廓图

matlab图像处理图像灰度变换直方图变换

附录1 课程实验报告格式 每个实验项目包括:1)设计思路,2)程序代码,3)实验结果,4)实验中出现的问题及解决方法。 实验一:直方图灰度变换 A:读入灰度图像‘debye1.tif’,采用交互式操作,用improfile绘制一条线段的灰度值。 imread('rice.tif'); imshow('rice.tif'),title('rice.tif'); improfile,title('主对角线上灰度值')

B:读入RGB图像‘flowers.tif’,显示所选线段上红、绿、蓝颜色分量的分布imread('flowers.tif'); imshow('flowers.tif'),title('flowers.tif'); improfile,title('主对角线红绿蓝分量') C:图像灰度变化 f=imread('rice.png'); imhist(f,256); %显示其直方图 g1=imadjust(f,[0 1],[1 0]); %灰度转换,实现明暗转换(负片图像) figure,imshow(g1)%将0.5到0.75的灰度级扩展到范围[0 1] g2=imadjust(f,[0.5 0.75],[0 1]); figure,imshow(g2) 图像灰度变换处理实例: g=imread('me.jpg'); imshow(g),title('原始图片'); h=log(1+double(g)); %对输入图像对数映射变换 h=mat2gray(h); %将矩阵h转换为灰度图片

h=im2uint8(h); %将灰度图转换为8位图 imshow(h),title('转换后的8位图'); 运行后的结果: 实验二:直方图变换 A:直方图显示 I=imread('cameraman.tif'); %读取图像 subplot(1,2,1),imshow(I) %输出图像 title('原始图像') %在原始图像中加标题 subplot(1,2,2),imhist(I) %输出原图直方图 title('原始图像直方图') %在原图直方图上加标题运行结果如下:

图像空域增强算法设计——灰度变换增强

成绩评定表

课程设计任务书

摘要 空域增强在数字图像处理中起到对图像灰度的拉伸、压缩变换的作用,目前这种方法在处理图像灰度值方面得到广泛的运用。MATLAB这种语言可移植性好、可扩展性强,再加上其中有丰富的图像处理函数,所以利用MATLAB软件来对图像进行空域增强在数字图像处理的应用中具有很大的优势。 图像变换增强是利用一系列的变换方法使图像的对比度得到提升,也就达到了增强图像的目的--更便于观察,更容易区分不同灰度的图像。根据函数的性质,灰度变换的方法有线性灰度变换、分段线性灰度变换、非线性灰度变换。对于灰度局限在某一个很小范围内的数字图像,如果用线性函数对图像的每一个像素进行线性扩展,扩大像素的对比度,将有效地改善视觉效果。本文利用MATLAB软件对灰度图像分别进行了线性灰度变换增强,非线性灰度增强和分段线性灰度增强,达到了提高图像对比度,增强图像效果的目的,证明了图像变换增强在数字图像处理中的重要作用。 关键词:MATLAB;灰度图像;线性变换;非线性变换

目录 1设计目的 (1) 2设计方案 (1) 2.1 灰度变换增强的概念 (1) 2.2 灰度变换增强流程 (2) 3设计内容 (3) 3. 1 线性灰度变换的概述 (3) 3. 2 分段线性灰度变换的概述 (3) 3. 3非线性灰度变换的概述 (4) 4程序代码设计 (5) 4.1线性灰度变换增强 (5) 4.1.1线性变换增强流程 (5) 4.1.2线性变换增强设计 (5) 4.2分段线性灰度变换程序代码 (6) 4.2.1分段线性变换增强流程 (6) 4.2.2分段线性变换增强设计 (6) 4.3非线性灰度变换程序代码 (8) 4.3.1非线性变换增强流程 (8) 4.3.2非线性变换增强设计 (8) 5仿真结果与分析 (10) 5.1线性灰度变换仿真结果 (10) 5.2分段线性灰度变换仿真结果 (11) 5.3非线性灰度变换仿真结果 (12) 5.4结果分析 (12) 结论 (14) 参考文献 (15)

数字灰度图像的基本运算处理 正文讲解

1前言 介绍一种用可视化数值计算软件MATLAB实现的数字图像处理系统平台,系统使用MATLAB中提供的GUI设计系统可视化的用户界面,下拉式的菜单方便用户选择对图像的处理。用户可以随意选择要处理的图片。但是该系统只支持灰度图片,可实现内容主要包括灰度图像的代数运算、几何运算。基于数字图像处理的一些基本原理,利用MATLAB 设计程序进行对灰度图像的处理。有部分处理运算有很多种方法,我选择了最简单、最明了的方法。 数字图像处理又称为计算机图像处理,它是指将图像信号转换成数字信号并利用计算机对其进行处理的过程。理论上讲,图像是一种二维的连续函数,然而在计算机上对图像进行数字处理的时候,首先必须对其在空间和亮度上进行数字化,这就是图像的采样和量化的过程。二维图像进行均匀采样,就可以得到一幅离散化成M×N样本的数字图像,该数字图像是一个整数阵列,因而用矩阵来描述该数字图像是最直观最简便的了。 随着计算机的发展,图像处理技术在许多领域得到了广泛应用,用于图像处理的软件也很多,如PHOTOSHOP、PAINTSHOP、GIMP、SaperaProcessing、MATLAB等,其中大部分软件都是基于广告策划和图像修饰处理而设计的应用软件,进行图像处理时并不是很方便。而MATLAB(矩阵实验室) 它在矩阵运算上有自己独特的特点,在矩阵运算处理具有很大的优势,因此用MATLAB处理数字图像非常的方便。不仅如此,MATLAB提供了丰富的图形命令和图形函数,而且其面向对象的图形系统具有强大的用户界面(GUI)生成能力。这样,用户就可以充分利用系统提供的 GUI 特性,编写自己需要的图形界面,从而可以高效地进行图像处理。 MATLAB支持五种图像类型,即索引图像、灰度图像、二值图像、RGB图像和多帧图像阵列;支持BMP、GIF、HDF、JPEG、PCX、PNG、TIFF、XWD、CUR、ICO等图像文件格式的读,写和显示。MATLAB对图像的处理功能主要集中在它的图像处理工具箱(Image Processing Toolbox)中。图像处理工具箱是由一系列支持图像处理操作的函数组成,可以对图像进行诸如几何操作、线性滤波和滤波器设计、图像变换、图像分析与图像增强、二值图像操作以及形态学处理等图像处理操作。

实验一Matlab图像处理基础及图像灰度变换

实验一Matlab图像处理基础及图像灰度变换 一、实验目的 了解Matlab平台下的图像编程环境,熟悉Matlab中的DIP (Digital Image Processing)工具箱;掌握Matlab中图像的表示方法,图像类型、数据类型的种类及各自的特点,并知道怎样在它们之间进行转换。掌握Matlab环境下的一些最基本的图像处理操作,如读图像、写图像、查看图像信息和格式、尺寸和灰度的伸缩等等;通过实验掌握图像直方图的描绘方法,加深直方图形状与图像特征间关系间的理解;加深对直方图均衡算法的理解。 二、实验内容 1.从硬盘中读取一幅灰度图像; 2.显示图像信息,查看图像格式、大小、位深等内容; 3.用灰度面积法编写求图像方图的Matlab程序,并画图; 4.把第3步的结果与直接用Matlab工具箱中函数histogram的结果进行比较,以衡量第3步中程序的正确性。 5.对读入的图像进行直方图均衡化,画出处理后的直方图,并比较处理前后图像效果的变化。 三、知识要点 1.Matlab6.5支持的图像图形格式 TIFF, JEPG, GIF, BMP, PNG, XWD (X Window Dump),其中GIF不支持写。 2.与图像处理相关的最基本函数 读:imread; 写:imwrite; 显示:imshow; 信息查看:imfinfo; 3.Matlab6.5支持的数据类 double, unit8, int8, uint16, int16, uint32, int32, single, char (2 bytes per element), logical. 4.Matlab6.5支持的图像类型 Intensity images, binary images, indexed images, RGB image 5.数据类及图像类型间的基本转换函数 数据类转换:B = data_class_name(A);

数字图像的灰度处理简述

数字图像的灰度处理 数字图像处理的目的和意义: 图象处理着重强调的是在图象之间进行的各种变换,对图象进行各种加工以改善图象的视觉效果。在图象的灰度处理中,增强操作、直方图及图象间的变换是实现点操作的增强方式,又被称作灰度变换。本文主要介绍了一些数字图像灰度处理的方法,其中图象取反是实现图象灰度值翻转的最直接的方法;灰度切分可实现强化某一灰度值的目的。对直方图进行均衡化修正,可使图象的灰度间距增大或灰度均匀分布、增大反差,使图象的细节变得清晰。 数字图像处理是20世纪60年代初期所形成的一门涉及多领域的交叉学科。所谓数字图像处理,又称为计算机图像处理,就是指用数字计算机及其它有关的数字硬件技术,对图像施加某种应算和处理,从而达到某种预期的目的。在大多数情况下,计算机采用离散的技术来处理来自连续世界的图像。实际上图像是连续的,计算机只能处理离散的数字图像,所以要要对连续图像经过采样和量化以获得离散的数字图像。 数字图像处理中图像增强的目的是改善图像的视觉效果,针对给定图像的应用场合,有目的地强调图像的整体或局部特性,扩大图像中不同物体特征之间的差别,满足某些特殊分析的需要。其方法是通过一定手段对原图像附加一些信息或变换数据,有选择地突出图像中感兴趣的特征或者抑制图像中某些不需要的特征,使图像与视觉响应特性相匹配。而通过改变图像的灰度以期达到一种很好的视觉效果是图像增强的一种手段。灰度变换的目的是为了改善画质,使图像显示效果更加清晰。 图像的点应算是一种既简单又重要的技术,它能让用户改变图像数据占据的灰度范围。一幅输入图像经过点应算后将产生一幅新的输出图像,由输入像素点的灰度值决定相应的输出像素点的灰度值。图像的点应算可以有效的改变图像的直方图分布,以提高图像的分辨率和图像的均衡。点应算可以按照预定的方式改变一幅图像的灰度直方图。除了灰度级的改变是根据某种特定的灰度变换函数进行之外,点应算可以看作是“从像素到像素”的复制操作。如果输入图像为A(x,y),

实验三 图像增强--灰度变换

实验三图像增强—灰度变换 一、实验目的: 1、了解图像增强的目的及意义,加深对图像增强的感性认识,巩固所学理论知识。 2、学会对图像直方图的分析。 3、掌握直接灰度变换的图像增强方法。 二、实验原理及知识点 术语‘空间域’指的是图像平面本身,在空间域内处理图像的方法是直接对图像的像素进行处理。空间域处理方法分为两种:灰度级变换、空间滤波。空间域技术直接对像素进行操作其表达式为: g(x,y)=T[f(x,y)] 其中f(x,y)为输入图像,g(x,y)为输出图像,T是对图像f进行处理的操作符,定义在点(x,y)的指定领域内。 定义点(x,y)的空间邻近区域的主要方法是,使用中心位于(x,y)的正方形或长方形区域。此区域的中心从原点(如左上角)开始逐像素点移动,在移动的同时,该区域会包含不同的领域。T应用于每个位置(x,y),以便在该位置得到输出图像g。在计算(x,y)处的g值时,只使用该领域的像素。 灰度变换T的最简单形式是使用领域大小为1×1,此时,(x,y)处的g值仅由f在该点处的亮度决定,T也变为一个亮度或灰度级变化函数。当处理单设(灰度)图像时,这两个术语可以互换。由于亮度变换函数仅取决于亮度的值,而与(x,y)无关,所以亮度函数通常可写做如下所示的简单形式: s=T(r) 其中,r表示图像f中相应点(x,y)的亮度,s表示图像g中相应点(x,y)的亮度。 核心函数是imhist,其基本语法为: h=imhist(f,b) 其中,f为输入图像,h为其直方图h(),b是用于形成直方图像的灰度级的个数。如果b未包含在此变量中,则默认值为256.如要处理一幅uint8

用matlab实现图像灰度变换课程设计

课程设计报告册 课程名称: MATLAB课程设计 课题名称:灰度变换增强 专业班级: 姓名: Bob Wang 学号: 15164 课程设计主要场所:信息楼220 时间: 指导教师:成绩:

前言 数字图像处理技术是20世界60年代发展起来的一门新兴学科,随着图像处理理论和方法的进一步完善,使得数字图像处理技术在各个领域得到了广泛应用,并显示出广阔的应用前景。MATLAB既是一种直观、高效的计算机语言,同时又是一个科学计算平台。它为数据分析和数据可视化、算法和应用程序开发提供了最核心的数学和高级图形工具。根据它提供的500多个数学和工程函数,工程技术人员和科学工作者可以在它的集成环境中交互或变成以完成各自的计算。MATLAB中集成了功能强大的图像处理工具箱。由于MATLAB语言的语法特征与C语言极为相似,而且更加简单,更加符合科技人员对数学表达式的书写格式,而且这种语言可移植性好、可扩展性强,再加上其中有丰富的图像处理函数,所以MATLAB在图像处理的应用中具有很大的优势。 MATLAB是一种以矩阵运算为基础的交互式程序语言,能够满足科学、工程计算和绘图的要求,与其它计算机语言相比,其特点是简洁和智能化,适应科技专业人员的思维方式和书写习惯,使得编程和调试效率大大提高。我们学习掌握MATLAB,也可以说是在科学工具上与国际接轨。

目录 一、课程设计目的 (2) 二、设计任务及容 (2) 三、课题设计实验条件 (3) 四、涉及知识 (3) 五、具体设计过程及调试 (4) 5.1、图像的读入和显示 5.1.1、打开图像 (4) 5.1.2、显示原图像 (5) 5.1.3、图像灰度处理 (7) 5.1.4、显示灰阶后图像 (8) 5.2、直方图均衡化 5.2.1、生成直方图 (10) 5.2.2、直方图均衡化 (12) 5.3、灰度变换 5.3.1、线性变换 (9) 5.3.2、分段线性变换 (9) 5.3.3、非线性变换.................................... (9) 六、心得体会 (17) 七、参考文献 (18) 八、程序清单 (19)

图像灰度变换增强

图像灰度变换增强 摘要:灰度变换是基于点操作的增强方法,它将每一个像素的灰度值按照一定的数学变换公式转换为一个新的灰度值,如增强处理中的对比度增强。对比度增强可以采用线性拉伸和非线性拉伸。线性拉伸可以将原始输入图像中的灰度值不加区别地扩展。如果要求对局部扩展拉伸某一范围的灰度值,或对不同范围的灰度值进行不同的拉伸处理时,采用分段线性拉伸。非线性拉伸常采用对数扩展和指数扩展。对数扩展拉伸低亮度去,压缩高亮度区;指数扩展拉伸了高亮区,压缩了低亮度区。 关键词:图像增强,灰度变换,线性变换,分段线性变换,非线性变换 一. 概述 影响系统图像清晰程度的因素很多,例如室外光照度不够均匀就会造成图像灰度过于集中;由CCD (摄像头)获得的图像经过A/D (数/模转换,该功能在图像系统中由数字采集卡来实现)转换、线路传送都会产生噪声污染等等。因此图像质量不可避免的降低了,轻者表现为图像不干净,难于看清细节;重者表现为图像模糊不清,连概貌也看不出来。因此,在对图像进行分析之前,必须要对图像质量进行改善,一般情况下改善的方法有两类:图像增强和图像复原。图像增强不考虑图像质量下降的原因,只将图像中感兴趣的特征有选择的突出,而衰减不需要的特征,它的目的主要是提高图像的可懂度。图像复原技术与增强技术不同,它需要了解图像质量下降的原因,首先要建立"降质模型",再利用该模型,恢复原始图像。 根据图像增强处理过程所在的空间不同,图像增强可分为空余增强法和频域增强法两大类。频域增强是在图像的某种变换域内,对图像的变换系数值进行运算,即作某种修正,然后通过逆变换获得增强了的图像。空域增强则是指直接在图像所在的二维空间进行增强处理,既增强构成图像的像素。空域增强法主要有灰度变换增强,直方图增强,图像平滑和图像锐化等。 图像的灰度变换处理是图像增强处理技术中一种非常基础,直接的空间域图像处理法,也是图像数字化软件和图像显示软件的一个重要组成部分。灰度变换是指根据某种目标条件按一定变换关系逐点改变原图像中每一个像素灰度值的方法。目的是为了改善画质,使图像的显示效果更加清晰。 二. 灰度变换处理 灰度变换的过程可表示为:)],([),(y x f T y x g ,它是指将输入图像中每个像素

matlab图像的灰度变换

实验二 图像的灰度变换 一、实验目的 1、 理解数字图像处理中点运算的基本作用; 2、 掌握对比度调整与灰度直方图均衡化的方法。 二、实验原理 1、对比度调整 如果原图像f (x , y )的灰度范围是[m , M ],我们希望对图像的灰度范围进行线性调整,调整后的图像g (x , y )的灰度范围是[n , N ],那么下述变换: []n m y x f m M n N y x g +---=),(),(就可以实现这一要求。 MATLAB 图像处理工具箱中提供的imadjust 函数,可以实现上述的线性变换对比度调整。imadjust 函数的语法格式为: J = imadjust(I,[low_in high_in], [low_out high_out]) J = imadjust(I, [low_in high_in], [low_out high_out])返回原图像I 经过直方图调整后的新图像J ,[low_in high_in]为原图像中要变换的灰度范围,[low_out high_out]指定了变换后的灰度范围,灰度范围可以用 [ ] 空矩阵表示默认范围,默认值为[0, 1]。 不使用imadjust 函数,利用matlab 语言直接编程也很容易实现灰度图像的对比度调整。但运算的过程中应当注意以下问题,由于我们读出的图像数据一般是uint8型,而在MATLAB 的矩阵运算中要求所有的运算变量为double 型(双精度型)。因此读出的图像数据不能直接进行运算,必须将图像数据转换成双精度型数据。 2、直方图均衡化 直方图均衡化的目的是将原始图像的直方图变为均衡分布的形式,即将一已知灰度概率密度分布的图像,经过某种变换变成一幅具有均匀灰度概率密度分布的新图像,从而改善图像的灰度层次。 MATLAB 图像处理工具箱中提供的histeq 函数,可以实现直方图的均衡化。 三、实验内容及要求 1、 用MATLAB 在自建的文件夹中建立example2.m 程序文件。在这个文件的程序中,将girl2.bmp 图像文件读出,显示它的图像及灰度直方图(可以发现其灰度值集中在一段区

图像处理灰度变换实验

一. 实验名称:空间图像增强(一) 一.实验目的 1.熟悉和掌握利用matlab工具进行数字图像的读、写、显示、像素处理等数字图像处理的基本步骤和流程。 2.熟练掌握各种空间域图像增强的基本原理及方法。 3.熟悉通过灰度变换方式进行图像增强的基本原理、方法和实现。 4.熟悉直方图均衡化的基本原理、方法和实现。 二.实验原理 (一)数字图像的灰度变换 灰度变换是图像增强的一种经典而有效的方法。灰度变换的原理是将图像的每一个像素的灰度值通过一个函数,对应到另一个灰度值上去从而实现灰度的变换。常见的灰度变换有线性灰度变换和非线性灰度变换,其中非线性灰度变换包括对数变换和幂律(伽马)变换等。 1、线性灰度变换 1)当图像成像过程曝光不足或过度,或由于成像设备的非线性和图像记录设备动态范围太窄等因素,都会产生对比度不足的弊病,使图像中的细节分辨不清,图像缺少层次。这时,可将灰度范围进行线性的扩展或压缩,这种处理过程被称为图像的线性灰度变换。对灰度图像进行线性灰度变换能将输入图像的灰度值的动态范围按线性关系公式拉伸扩展至指定范围或整个动态范围。 2)令原图像f(x,y)的灰度范围为[a,b],线性变换后得到图像g(x,y),其灰度范围为[c,d],则线性灰度变换公式可表示为

a y x f b y x f a b y x f c c a y x f a b c d d y x g <≤≤>?????+---=),(),(),(, ,]),([,),( (1) 由(1)式可知,对于介于原图像f (x,y )的最大和最小灰度值之间的灰度值,可通过线性变换公式,一一对应到灰度范围[c,d]之间,其斜率为(d-c)/(b-a);对于小于原图像的最小灰度值或大于原图像的最大灰度值的灰度值,令其分别恒等于变换后的最小和最大灰度值。变换示意图如图1所示。 图1 线性灰度变换示意图 当斜率大于一时,变换后的灰度值范围得到拉伸,图像对比度得到提高;当斜率小于一时,变换后的灰度值范围被压缩,最小与最大灰度值的差变小,图像对比度降低;当斜率等于一时,相当于对图像不做变换。 3)由上述性质可知,线性灰度变换能选择性地加强或降低特定灰度值范围内的对比度,故线性灰度变换同样也可做分段处理:对于有价值的灰度范围,将斜率调整为大于一,用于图像细节;对于不重要的灰度范围,将图像压缩,降低对比度,减轻无用信息的干扰。最常用的分段线性变换的方法是分三段进行线性变换。 在原图像灰度值的最大值和最小值之间设置两个拐点,在拐点处,原图像的灰度值分别为r 1,r 2,该拐点对应的变换后的图像的灰度值分别为s 1,s 2,另外,取原图像灰度的最小值为r 0,最大值为r m ,对应的变换后的灰度值分别为s 0,s m 。

基于MATLAB的彩色图像灰度化处理

目录 第1章绪论............................................................................................................................ - 1 - 第2章设计原理.................................................................................................................... - 2 - 第3章彩色图像的灰度化处理............................................................................................ - 3 - 3.1加权平均法 .. (3) 3.2平均值法 (3) 3.3最大值法 (4) 3.4举例对比 (5) 3.5结果分析 (6) 第4章结论.......................................................................................................................... - 8 - 参考文献....................................................................................................... 错误!未定义书签。附录............................................................................................................................................ - 9 -

数字图像处理考题2012级

数字图像处理: 一、图像工程的内涵(三个层次:图像处理、图像分析和图像理解及其关系)。 图像工程的内涵: 根据抽象程度和研究方法等的不同,可分为三个层次:图像处理、图像分析和图像理解。 图像处理的内容:主要对图象进行各种加工以改善图象的视觉效果、或突出有用信息,并为自动识别打基础,或通过编码以减少对其所需存储空间、传输时间或传输带宽的要求。基本特征:输入是图像,输出也是图像,即图像之间进行的变换。显然,这是一种比较严格的图像处理定义,因此也呈现出了某种狭义性。 图像分析的内容:主要对图象中感兴趣的目标进行检测(或分割)和测量,以获得它们的客观信息从而建立对图象的描述。基本特征:输入是图像,输出是数据(即对输入图像进行描述的信息)。 图像理解的内容:在中级图像处理的基础上,进一步研究图象中各目标的性质和它们之间相互的联系,并得出对图象内容含义的理解(对象识别)及对原来客观场景的解释(计算机视觉),从而指导和规划行动。基本特征:以客观世界为中心,借助知识、经验等来把握整个客观世界。“输入是数据,输出是理解”。 三者的关系: 图像处理是比较低层的操作,它主要在图像像素级上进行处理,处理的数据量非常大。 图像分析则进入了中层,分割和特征提取把原来以像素描述的图像转变成比较简洁的非图像形式的描述。 图像理解主要是高层操作,基本上是对从描述抽象出来的符号进行运算,其处理过程和方法与人类的思维推理有许多类似之处。 图像的低级处理阶段和高一级的处理阶段是相互关联和有一定重叠性的。根据本课程的任务和目标,重点放在图像处理上,并学习图像分析的基本理论和方法。也就是说本课程中提到的图像处理概念是广义的。 二、观察三幅图的等偏爱曲线,分析:空间分辨率和灰度分辨率同时变化对图像质量的影响

数字图像处理实验一 图像的灰度变换

数字图像处理实验报告 (一) 班级:测控1002 姓名:刘宇 学号:06102043

实验一图像的灰度变换 1. 实验任务 熟悉MATLAB软件开发环境,掌握读、写图像的基本方法。 理解图像灰度变换在图像增强的作用,掌握图像的灰度线性变换和非线性变换方法。 掌握绘制灰度直方图的方法,掌握灰度直方图的灰度变换及均衡化的方法。2. 实验环境及开发工具 Windws2000/XP MATLAB 7.x 3. 实验原理 灰度变换 灰度变换是图像增强的一种重要手段,它常用于改变图象的灰度范围及分布,是图象数字化及图象显示的重要工具。在实际应用中,为了突出图像中感兴趣的研究对象,常常要求局部扩展拉伸某一范围的灰度值,或对不同范围的灰度值进行不同的拉伸处理,即分段线性拉伸: 图1.1 不同的分段线性变换 其对应的数学表达式为:

直方图均衡化 灰度直方图的横坐标是灰度级,纵坐标是该灰度级出现的频度,它是图像最基本的统计特征。依据定义,在离散形式下,用rk 代表离散灰度级,用pr(rk)代表pr(r),并且有下式成立: n n r P k k r = )( 1,,2,1,010-=≤≤l k r k 式中:nk 为图像中出现rk 级灰度的像素数,n 是图像像素总数,而nk/n 即为频数。 直方图均衡化处理是以累积分布函数变换法为基础的直方图修正法。假定变换函数为 ω ωd p r T s r r )()(0 ?== (a) Lena 图像 (b) Lena 图像的直方图 图1.2 Lena 图像及直方图 当灰度级是离散值时,可用频数近似代替概率值,即 1 ,,1,010)(-=≤≤= l k r n n r p k k k r

基于MATLAB的彩色图像灰度化处理

基于MATLAB的彩色图像灰度处理 成绩 数字图像处理期末考试 题目基于Matlab的彩色图像灰度化处理 专业、班级11电信一班 姓名钱叶辉 学号 1109121025

基于Matlab的彩色图像灰度化处理 摘要 在计算机领域中,灰度数字图像是每个像素只有一个采样颜色的图像。这类图像通常显示为从最暗的黑色到最亮的白色的灰度,尽管理论上这个采样可以是任何颜色的不同深浅,甚至可以是不同亮度上的不同颜色。灰度图像与黑白图像不同,在计算机图像领域中黑白图像只有黑色与白色两种颜色;灰度图像在黑色与白色之间还有许多级的颜色深度。但是,在数字图像领域之外,“黑白图像”也表示“灰度图像”,例如灰度的照片通常叫做“黑白照片”。在一些关于数字图像的文章中单色图像等同于灰度图像,在另外一些文章中又等同于黑白图像[1]。 彩色图像的灰度化技术在现代科技中应用越来越广泛, 例如人脸目标的检测与匹配 以及运动物体目标的监测等等, 在系统预处理阶段, 都要把采集来的彩色图像进行灰度化处理, 这样既可以提高后续算法速度, 而且可以提高系统综合应用实效, 达到更为理想的要求。因此研究图像灰度化技术具有重要意义。 关键词:灰度化;灰度数字图像;单色图像

一、设计原理 将彩色图转化成为灰度图的过程称为图像的灰度化处理。彩色图像中的每个像素的颜色有R、G、B三个分量决定,而每个分量有255个中值可取,这样一个像素点可以有1600多万(255*255*255)的颜色的变化范围。而灰度图像是R、G、B三个分量相同的一种特殊的彩色图像,其中一个像素点的变化范围为255种,所以在数字图像处理中一般先将各种格式的图像转变成灰度图像以使后续的图像的计算量变得少一些。灰度图像的描述与彩色图像一样仍然反映了整幅图像的整体和局部的色度和亮度等级的分布和特征[2]。 在RGB模型中,如果R=G=B时,则彩色表示一种灰度颜色,其中R=G=B的值叫做灰度值。因此,灰度图像每个像素只需一个字节存放灰度值(又称强度值、亮度值),灰度范围为0-255。本设计采用三种方法对图像进行灰度化处理。 加权平均法;平均值法;最大值法。 二、彩色图像的灰度化处理 2.1加权平均法 根据重要性及其它指标,将R、G、B三个分量以不同的权值进行加权平均。由于人眼对绿色的敏感度最高,对蓝色敏感度最低。因此,在MATLAB中我们可以按下式系统函数对RGB三分量进行加权平均能得到较合理的灰度图像。 f(i,j)=0.30R(i,j)+0.59G(i,j)+0.11B(i,j)) (2-1)程序首先读取一个RGB格式的图象,然后调用已有的函数rgb2gray()来实现彩色图像灰度化。 图2.1加权平均法的图像灰度处理 2.2平均值法[3] 将彩色图像中的R、G、B三个分量的亮度求简单的平均值,将得到均值作为灰度值

数字图像处理图像变换实验报告

数字图像处理图像变换实验 报告 -标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

实验报告实验名称:图像处理 姓名:刘强 班级:电信1102 学号:1404110128

实验一图像变换实验——图像点运算、几何变换及正交变换一、实验条件 PC机数字图像处理实验教学软件大量样图 二、实验目的 1、学习使用“数字图像处理实验教学软件系统”,能够进行图像处理方面的 简单操作; 2、熟悉图像点运算、几何变换及正交变换的基本原理,了解编程实现的 具体步骤; 3、观察图像的灰度直方图,明确直方图的作用和意义; 4、观察图像点运算和几何变换的结果,比较不同参数条件下的变换效 果; 5、观察图像正交变换的结果,明确图像的空间频率分布情况。 三、实验原理 1、图像灰度直方图、点运算和几何变换的基本原理及编程实现步骤 图像灰度直方图是数字图像处理中一个最简单、最有用的工具,它描述了一幅图像的灰度分布情况,为图像的相关处理操作提供了基本信息。 图像点运算是一种简单而重要的处理技术,它能让用户改变图像数据占据的灰度范围。点运算可以看作是“从象素到象素”的复制操作,而这种复制操作是通过灰度变换函数实现的。如果输入图像为A(x,y),输出图像为B(x,y),则点运算可以表示为: B(x,y)=f[A(x,y)] 其中f(x)被称为灰度变换(Gray Scale Transformation,GST)函数,它描述了输入灰度值和输出灰度值之间的转换关系。一旦灰度变换函数确定,该点运算就完全确定下来了。另外,点运算处理将改变图像的灰度直方图分布。点运算又被称为对比度增强、对比度拉伸或灰度变换。点运算一般包括灰度的线性变换、阈值变换、窗口变换、灰度拉伸和均衡等。 图像几何变换是图像的一种基本变换,通常包括图像镜像变换、图像转置、图像平移、图像缩放和图像旋转等,其理论基础主要是一些矩阵运算,详细原理可以参考有关书籍。 实验系统提供了图像灰度直方图、点运算和几何变换相关内容的文字说明,用户在操作过程中可以参考。下面以图像点运算中的阈值变换为例给出编程实现的程序流程图,如下:

利用基本灰度变换对图像进行增强

3 利用基本灰度变换对图像进行增强 灰度变换原理:灰度变换是一种空域处理方法,其本质是按一定的规则修改每个像素的灰度,从而改变图像的动态范围实现期望的增强效果。灰度变换按映射函数可分为线性、分段线性和非线性等多种形式。 3.1 线性灰度变换 线性灰度变换是将输入图像灰度值的动态范围按线性关系公式拉伸扩展至指定范围或整个动态范围。可突出感兴趣目标,抑制不感兴趣的目标。在实际运算中,原图像f(x,y)的灰度范围为[a,b],使变换后图像g(x,y)的灰度扩展为[c,d],则采用下述线性变换来实现: c a y x f a b c d y x g +---=]),([),( 线性灰度变换对图像每个灰度范围作线性拉伸,将有效地改善图像视觉效果。 源代码如下: 1、利用灰度调整函数变换图像 A=imread('e:\7.tif','tif'); %读入图像 B=imadjust(A,[0.1,0.8],[0,1]); %灰度调整 imwrite(B,'E:\ 1.tif'); %图像保存 subplot(2,2,1);imshow(A); %显示调整前后图像及其直方图 subplot(2,2,2);imhist(A); subplot(2,2,3);imshow(B); subplot(2,2,4);imhist(B);

0100200 500 1000 0100200 500 1000 2、利用灰度调整算法变换图像 clear; a=60; %图像变换参数设定 b=180; c=0; d=255; A=imread('pout.tif','tif'); %读入图像 [m,n]=size(A); A=double(A); for i=1:1:m %灰度调整 for j=1:1:n if (A(i,j)>=a)&(A(i,j)

灰度变换.

陕西科技大学实验报告 班级:信息071班学号:200712030121姓名仝颖超实验组别: ________ 实验日期:_____________ 报告日期:________________ 成绩:________________ 实验灰度线性变换 一.实验目的 1、掌握matlab编程语言进行编程。 2、用matlab及运用各种数字图像处理方法实现对图像的变换。 二.实验设备 计算机、Matlab软件 三.实验原理 曝光不足或过度的情况下,图像灰度可能会局限在一个很小的范围内。这时在显示器上看到的是一个模糊不清似乎没有灰度层次的图像。用一个线性单值函数,对每一个像素作扩展变换(线性),将会有效地改变图像视觉效果。 四.实验步骤 对图像灰度线性变换 五.源程序清单、测试数据、结果 图像灰度变换是图像增强的一种手段。其中灰度非线性变换能使图像灰度的分布均匀,与人的视觉特性相匹配。MATLAB语言编写的例程和图像运行结果如下: %读入并显示原始图像 l=imread('d:\1.JPG'); Imshow(l); I=double(I); [M,N]=size(l); %进行灰度变换 for i=1:M for j=1:N if I(i,j)<=30 I(i,j)=I(i,j); elseif I(i,j)<=150 l(i,j)=(200-30)/(150-30)*(l(i,j)-30)+30; else I(i,j)=(255-200)/(255-150)*(I(i,j)-150)+200; end end end %变换后的结果 figure(2); imshow(ui nt8(l));

数字图像处理整理经典

名词解释 数字图像:是将一幅画面在空间上分割成离散的点(或像元),各点(或像元)的灰度值经量化用离散的整数来表示,形成计算机能处理的形式。 1.数字图像:一幅图像f(x,y),当x,y和幅值f为有限的离散数值时,称该图像为数字图像。 图像:是自然生物或人造物理的观测系统对世界的记录,是以物理能量为载体,以物质为记录介质的信息的一种形式。 数字图像处理:采用特定的算法对数字图像进行处理,以获取视觉、接口输入的软硬件所需要数字图像的过程。 图像增强:通过某种技术有选择地突出对某一具体应用有用的信息,削弱或抑制一些无用的信息。 无损压缩:可精确无误的从压缩数据中恢复出原始数据。 灰度直方图:灰度直方图是灰度级的函数,描述的是图像中具有该灰度级的像素的个数。或:灰度直方图是指反映一幅图像各灰度级像元出现的频率。 细化:提取线宽为一个像元大小的中心线的操作。 8、8-连通的定义:对于具有值V的像素p和q ,如果q在集合N8(p)中,则称这两个像素是8-连通的。 9、中值滤波:中值滤波是指将当前像元的窗口(或领域)中所有像元灰度由小到大进行排序,中间值作为当前像元的输出值。 10、像素的邻域: 邻域是指一个像元(x,y)的邻近(周围)形成的像元集合。即{(x=p,y=q)}p、q为任意整数。像素的四邻域:像素p(x,y)的4-邻域是:(x+1,y),(x-1,y) ,(x,y+1), (x,y-1) 11、灰度直方图:以灰度值为自变量,灰度值概率函数得到的曲线就是灰度直方图。 12.无失真编码:无失真编码是指压缩图象经解压可以恢复原图象,没有任何信息损失的编码技术。 13.直方图均衡化:直方图均衡化就是通过变换函数将原图像的直方图修正为平坦的直方图,以此来修正原图像之灰度值。 14.采样:对图像f(x,y)的空间位置坐标(x,y)的离散化以获取离散点的函数值的过程称为图像的采样。 15.量化:把采样点上对应的亮度连续变化区间转换为单个特定数码的过程,称之为量化,即采样点亮度的离散化。 16.灰度图像:指每个像素的信息由一个量化的灰度级来描述的图像,它只有亮度信息,没有颜色信息。 17.色度:通常把色调和饱和度通称为色度,它表示颜色的类别与深浅程度。 18.图像锐化:是增强图象的边缘或轮廓。 19.直方图规定化(匹配):用于产生处理后有特殊直方图的图像的方法 20. 数据压缩:指减少表示给定信息量所需的数据量。 像素的邻域:邻域是指一个像元(x,y)的邻近(周围)形成的像元集合。即{(x=p,y=q)}p、q为任意整数。 像素的四邻域:像素p(x,y)的4-邻域是:(x+1,y),(x-1,y) ,(x,y+1),(x,y-1) 灰度直方图:灰度直方图是指反映一幅图像各灰度级像元出现的频率。?、中值滤波:中值滤波是指将当前像元的窗口(或领域)中所有像元灰度由小到大进行排序,中间值作为当前像元的输出值。 像素数字图像是由有限的元素组成的,每个元素都有一个特定的位置和幅值,这些元素称为图像元素、画面元素或像素。 4.空间分辨率:是图像中可辨别的最小细节。

相关文档
相关文档 最新文档