灰库图
灰度图象亮度变换

实验报告院(系):数学与计算机科学学院专业班级:计算机1602班1了解灰度图像亮度变换的意义和手段;2熟悉灰度变换的基本性质;3通过本实验掌握利用MA TLAB编程实现数字图像的灰度变换。
二、实验原理1算法见教材P51,4.1.1灰度线性变换2利用MA TLAB软件实现数字图像灰度变换的程序:I=imread('lena.bmp'); %读入原图像文件subplot(1,2,1);imshow(I); %显示原图像a=0;b=255;c=50;d=205;m=uint8(zeros(255,255));for j=1:size(I,1)for k=1:size(I,2)if(I(j,k)>=a&&I(j,k)<b)m(j,k)=(d-c)/(b-a)*(I(j,k)-a)+c;elsem(j,k)=I(j,k);endendendsubplot(1,2,2);imshow(m);I=imread('lena.bmp'); %读入原图像文件subplot(1,2,1);imshow(I); %显示原图像a=0;b=255;c=50;d=205;m=uint8(zeros(255,255));for j=1:size(I,1)for k=1:size(I,2)if(I(j,k)>=0&&I(j,k)<a)m(j,k)=c/a*I(j,k);elsem(j,k)=I(j,k);endendendsubplot(1,2,1);imshow(m);三、实验步骤1打开计算机,安装和启动MA TLAB程序;程序组中“work”文件夹中应有待处理的图像文件;2利用MatLab工具箱中的函数编制灰度变换文件FG;3 运行FG文件;4记录和整理实验报告。
四、实验仪器1计算机;2 MA TLAB程序;3移动式存储器(U盘等)。
4记录用的笔、纸。
Labview中数组转化为灰度图

Labview中将数组显示为灰度图在matlab中将数组转化为灰度图像非常简单,比如A是数组,那么显示为灰度图像的程序两步可以完成:A=(A-min(A(:)))./(max(A(:))-min(A(:))); %归一化imshow(A); %显示灰度图在labview中显示灰度图相对困难一些,包括用到视觉与运动模块中的一些函数,基本都是32位的彩色数据。
那么在未安装视觉与运动模块的情况下,其实可以用强度图来显示灰度图。
首先在前面板上放置一个强度图,位置在,控件/图形/强度图:注意此时需要改变一些属性,将鼠标移动在强度图上,右键,打开属性首先改外观中的大小参数,比如显示为640*480大小的,那么高度和宽度设置为相应的数,然后是改动标尺,标尺里用X轴,Y轴,Z轴,将名称都删掉,X轴,Y轴的显示标尺标签和显示标尺前的√都去掉,将自动调整标尺的√也去掉,最大值按实际大小填写。
然后Z轴的显示标尺前的√保留,最小值为0,最大值为255.再回到显示格式中,X,Y,Z轴都选择浮点,位数都选0,精度类型都选择精度位数。
然后点击确定。
然后回到前面板,在标尺上右键,(注意将鼠标移动在数字上然后右键,不然刻度颜色为灰色禁用),选择刻度颜色,然后选择最上边的色度。
完成后前面板将是下面的效果。
下面ctrl+E前往程序框图,然后构建数组,然后连线,然后就是灰度显示了。
我们构建一个480*640的数组,显示为白色(255),然后在绘制大小为100*100的全黑方块(0),然后在(200,300),(200,300)区间绘制灰阶为150的方块。
连线如下:效果图如下:当然,如果是从黑白相机采集的图像,直接就可以用强度图显示了。
2016/5/10,14:45 于光电研究所212。
数字图像处理领域的二十四个典型算法

数字图像处理领域的⼆⼗四个典型算法数字图像处理领域的⼆⼗四个典型算法及vc实现、第⼀章⼀、256⾊转灰度图⼆、Walsh变换三、⼆值化变换四、阈值变换五、傅⽴叶变换六、离散余弦变换七、⾼斯平滑⼋、图像平移九、图像缩放⼗、图像旋转数字图像处理领域的⼆⼗四个典型算法及vc实现、第三章图像处理,是对图像进⾏分析、加⼯、和处理,使其满⾜视觉、⼼理以及其他要求的技术。
图像处理是信号处理在图像域上的⼀个应⽤。
⽬前⼤多数的图像是以数字形式存储,因⽽图像处理很多情况下指数字图像处理。
本⽂接下来,简单粗略介绍下数字图像处理领域中的24个经典算法,然后全部算法⽤vc实现。
由于篇幅所限,只给出某⼀算法的主体代码。
ok,请细看。
⼀、256⾊转灰度图算法介绍(百度百科):什么叫灰度图?任何颜⾊都有红、绿、蓝三原⾊组成,假如原来某点的颜⾊为RGB(R,G,B),那么,我们可以通过下⾯⼏种⽅法,将其转换为灰度: 1.浮点算法:Gray=R*0.3+G*0.59+B*0.11 2.整数⽅法:Gray=(R*30+G*59+B*11)/100 3.移位⽅法:Gray =(R*28+G*151+B*77)>>8; 4.平均值法:Gray=(R+G+B)/3; 5.仅取绿⾊:Gray=G; 通过上述任⼀种⽅法求得Gray后,将原来的RGB(R,G,B)中的R,G,B统⼀⽤Gray替换,形成新的颜⾊RGB(Gray,Gray,Gray),⽤它替换原来的RGB(R,G,B)就是灰度图了。
灰度分为256阶。
所以,⽤灰度表⽰的图像称作灰度图。
程序实现: ok,知道了什么叫灰度图,下⾯,咱们就来实现此256⾊灰度图。
这个Convert256toGray(),即是将256⾊位图转化为灰度图:void Convert256toGray(HDIB hDIB) { LPSTR lpDIB; // 由DIB句柄得到DIB指针并锁定DIB lpDIB = (LPSTR) ::GlobalLock((HGLOBAL)hDIB); // 指向DIB象素数据区的指针 LPSTR lpDIBBits; // 指向DIB象素的指针 BYTE * lpSrc; // 图像宽度 LONG lWidth; // 图像⾼度 LONG lHeight; // 图像每⾏的字节数 LONG lLineBytes; // 指向BITMAPINFO结构的指针(Win3.0) LPBITMAPINFO lpbmi; // 指向BITMAPCOREINFO结构的指针 LPBITMAPCOREINFO lpbmc; // 获取指向BITMAPINFO结构的指针(Win3.0) lpbmi = (LPBITMAPINFO)lpDIB; // 获取指向BITMAPCOREINFO结构的指针 lpbmc = (LPBITMAPCOREINFO)lpDIB; // 灰度映射表 BYTE bMap[256]; // 计算灰度映射表(保存各个颜⾊的灰度值),并更新DIB调⾊板 int i,j; for (i = 0; i < 256;i ++) { // 计算该颜⾊对应的灰度值 bMap[i] = (BYTE)(0.299 * lpbmi->bmiColors[i].rgbRed + 0.587 * lpbmi->bmiColors[i].rgbGreen + 0.114 * lpbmi->bmiColors[i].rgbBlue + 0.5); // 更新DIB调⾊板红⾊分量 lpbmi->bmiColors[i].rgbRed = i; // 更新DIB调⾊板绿⾊分量 lpbmi->bmiColors[i].rgbGreen = i; // 更新DIB调⾊板蓝⾊分量 lpbmi->bmiColors[i].rgbBlue = i; // 更新DIB调⾊板保留位 lpbmi->bmiColors[i].rgbReserved = 0; } // 找到DIB图像象素起始位置 lpDIBBits = ::FindDIBBits(lpDIB); // 获取图像宽度 lWidth = ::DIBWidth(lpDIB); // 获取图像⾼度 lHeight = ::DIBHeight(lpDIB); // 计算图像每⾏的字节数 lLineBytes = WIDTHBYTES(lWidth * 8); // 更换每个象素的颜⾊索引(即按照灰度映射表换成灰度值) //逐⾏扫描 for(i = 0; i < lHeight; i++) { //逐列扫描 for(j = 0; j < lWidth; j++) { // 指向DIB第i⾏,第j个象素的指针 lpSrc = (unsigned char*)lpDIBBits + lLineBytes * (lHeight - 1 - i) + j; // 变换 *lpSrc = bMap[*lpSrc]; } } //解除锁定 ::GlobalUnlock ((HGLOBAL)hDIB); }变换效果(以下若⽆特别说明,图⽰的右边部分都是为某⼀算法变换之后的效果):程序实现:函数名称:WALSH()参数:double * f - 指向时域值的指针double * F - 指向频域值的指针r -2的幂数返回值:⽆。
灰度图转浮雕

灰度图转浮雕简易处理步骤灰度图转浮雕简易处理过程(入门)发这个贴,算是给新人和自己上个小课吧。
当是无脑输出。
刚好给客户完成一张抽屉面的图,规格为61*395.就以此为例吧。
原图如下:第一步:打开精雕软件,文件-输入-点阵图像-选择指定图像(注意文件类型)〈图1〉第二步:绘制所需尺寸图形,绘制-矩形(随意画个)-选中矩形-变换-放缩(输入395*61);编辑-单线等距-选中矩形向内偏移4MM(起外框线条)-'绘制,矩形'以内框左上角为起点按住SHIFT拉伸差不多8MM左右放手〈图21〉-'编辑修剪'点选内框和小矩形-右键确认,左键修剪掉内框左上角线条-'编辑,倒圆角'-输入半径5右键(注意左右下角)-右键确认上圆角<图22>;给外框上中心线修剪掉内框除左上角部分的其它三部分〈图23〉-点选左上角部分‘变换镜像’以为中心线为轴对称(注意右上角选复制图形)-‘编辑,连接’内框-‘单线等距’向外偏移4MM;点选灰度图按住SHIFT移动图像到方框内并放缩至合适位置(尽量别去让图像变形;小技巧:拉伸时按住CTRL同时两边拉伸)〈图24〉。
第三步:灰度转浮雕,艺术曲面-图像处理-位图转网格(注意左下角出现:点选一位图)-点击图像-弹出窗口输入需要的曲面高度(我这里为3.5MM);右向左框选曲面按6进入‘虚拟雕塑环境’F6‘全局观察’-‘雕塑,冲压’去掉外框线条〈图32〉。
第四步(重要部分,个人技巧):完善灰度图转浮雕,去掉中心线-‘颜色,等高填色’(注意右上角,如图41设置)-点击浮雕(如图42效果)-再次在龙头外线点击(龙头明显还有水纹,直到把多余水纹填色掉,如图43)-‘颜色,颜色区域矢量化’生成外框线(小技巧:这个还有另外一个快捷键是/)-‘效果,磨光’多磨几次直到表面光滑,当然图像不能模糊了;接下来这个步骤很重要雕出来好不好看就看这了,‘冲压’右边选颜色内,SHIFT+左键拾取填充的颜色-左键冲压闭合区域(图中有三个位置注意了)-如是正版5.5支持‘特征,削除锯齿’加以应用下,定更接近美感。
【646】灰度图array转为RGB三通道array

【646】灰度图array转为RGB三通道array 两种⽅法可以实现:通过 numpy ⾃⼰实现通过 cv2.cvtColor 函数实现,灰度图转 RGB 所谓的灰度图转为三通道,就是三个通道都是⼀样的信息,相当于相同维度信息的重复,主要是通过 numpy.array 来实现,其实是可以通过类似⼴播的形式来实现。
1. 每⼀⾏赋值相同的内容>>> a = np.zeros((3,3))>>> aarray([[0., 0., 0.],[0., 0., 0.],[0., 0., 0.]])>>> b = np.arange(3)>>> barray([0, 1, 2])>>> a[:, :] = b # 等价于 a[...] = b>>> aarray([[0., 1., 2.],[0., 1., 2.],[0., 1., 2.]])2. 每⼀列赋值相同的内容>>> a = np.zeros((3,3))>>> aarray([[0., 0., 0.],[0., 0., 0.],[0., 0., 0.]])>>> b = np.arange(3)>>> barray([0, 1, 2])>>> c = b.reshape((3,1))>>> carray([[0],[1],[2]])>>> a[...] = c>>> aarray([[0., 0., 0.],[1., 1., 1.],[2., 2., 2.]])3. 灰度图转为RGB三通道灰度图是⼆维数据,⾸先通过 np.expand_dims() 增加⼀个维度然后直接通过赋值即可以填充其他三个通道为相同的信息 原图的 RGB 显⽰import cv2from PIL import Imageimg = cv2.imread("yingmu.jpg")img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)display(Image.fromarray(img)) RGB 转为灰度图gray = cv2.cvtColor(img, cv2.COLOR_RGB2GRAY)display(Image.fromarray(gray)) 灰度图转为 RGB# 通过 cv2 函数img = cv2.cvtColor(gray, cv2.COLOR_GRAY2RGB)# 通过 numpy 实现img_arr = np.zeros_like(img)img_arr[...] = np.expand_dims(gray, axis=-1)# ⽤来判断两者是否相同,结果是 True(img == img_arr).all() 关于判断两个 numpy.array 是否相同参考博⽂:。
精雕灰度图转浮雕的做法

精雕灰度图转浮雕的做法:首先打开精雕作图软件如图,打开之后点击屏幕左上方的“文件”如图,找到目录下的“输入”然后找到“点阵图像”单击文件类型选择(*.bmp),找到所需要加工的图打开,如:打开之后看一下图的尺寸是否是你需要加工的尺寸,如果不是那就需要修改一下图的加工尺寸首先选中图片,单击屏幕左上方的“变换”,找到目录下的“放缩”(快捷键Alt+4),如图假如雕刻尺寸是200X200(MM)只要修改横向尺寸为200,点一下“保持比例”就可以了,纵向尺寸就自动变到200,如果你雕刻的尺寸是不规则的,比如是200X100(mm)那就横向尺寸改到200,纵向尺寸改成100,这次不需要点击“保持比例”,尺寸修改完之后,点击屏幕中心上方的“艺术曲面”,找到目录下的“图像纹理”——单击“位图转网格”,这是把鼠标放到图片上点击一下会出现如图:需要修改一下你的加工工件的雕刻深度如图:如果雕刻是3毫米,输入3就可以了,然后点击“确定”,出现如图出现一个网格,这个网格就是我们用灰度图转出来的浮雕图,然后我们把灰度图移开或是删除,现在我们开始绘制一个矩形,单击屏幕左上方的“绘制”,找到目录下的“矩形”(Ctrl+T)点击,找到空白处单击鼠标左键,移动鼠标出现矩形再次点击鼠标左键,就绘制出一个矩形,然后单击鼠标右键退出,选中矩形单击“变换”目录下的——“尺寸等同”,这是用鼠标左键单击以下网格出现如图:选择双向尺寸等同之后点击确定,此时矩形和网格一样大,然后再单击屏幕右侧工具栏的“对齐”,找到目录下的如图:点击,现在用鼠标左键单击网格出现如下图:现在单击“确定”,矩形和网格上下左右全部对齐,现在单击一下网格进入屏幕左侧工具栏里的“虚拟雕塑工具”如下图:下一步会出现如图:假如看不到这种图片说明你前一步没有选择网格,下一步单击屏幕上方的“模型”找到目录下的——“Z向变换”如下图:单击Z向变换,屏幕右侧会出现如图:点击一下——“高点移至X0Y”如图:现在低点是-3了,(为什么高点是0低点是-3呢?就比如你雕刻的深度是3,你是要在物体的表面往下雕刻3毫米,所以说高点0就是加工物体的表面,低点-3就是你所加工浮雕的深度,这样应该明白这一步是怎么回事了)。
【国家自然科学基金】_灰度图_基金支持热词逐年推荐_【万方软件创新助手】_20140802

科研热词 推荐指数 图像处理 3 香气成分 1 颜色迁移 1 颜色直方图 1 颜色不变性 1 霍夫变换 1 重建 1 邻域灰度差 1 遗传算法 1 连通链结构 1 近色背景干扰 1 赤霞珠 1 视网膜成像 1 表格识别 1 衍射极限 1 葡萄酒 1 茄子 1 自适应光学 1 细观结构 1 细胞神经网络 1 神经网络 1 相似性参数 1 直线检测 1 目标跟踪 1 生物芯片 1 灰霉病 1 混凝土 1 模糊c均值聚类 1 梯度域 1 框线去除 1 极化sar 1 无损检测 1 文档分析 1 整体阈值 1 微阵列 1 彩色图像 1 弹性图匹配 1 异色背景干扰 1 多光谱成像技术 1 夏克哈特曼波前传感器 1 均值移动 1 图象分割 1 图像配准 1 图像分割粒子群优化算法(pso)参数确定 1 可视化 1 古建筑 1 加权模糊c均值聚类 1 光流 1 元胞自动机 1 倾斜校正 1 伪彩色合成 1 二值化 1
2011年 序号 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
1 1 1 1 1 1 1 1 1 1 1 1 1 1
推荐指数 3 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
2010年 序号 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 8 59 60
三种不同灰度图像增强算法对比

三种不同灰度图像增强算法对比一、摘要本文主要是运用直方图均衡化、平滑、锐化三种常见的图像增强算法对图像进行处理,并在此基础上分别用这 3 种算法处理的灰度图像进行比较,比对它们对图像的处理效果, 分析 3 种方法在图像增强处理能力的优劣之处。
结果发现,直方图均衡化可以均衡图像的灰度等级, 经过直方图的均衡化,图像的细节更加清楚了,但是由于直方图均衡化没有考虑图像的内容,只是简单的将图像进行直方图均衡,提高图像的对比度,使图像看起来亮度过高,使图像细节受到损失;图像平滑的目的是减少或消除图像的噪声, 图像平滑可以使图像突兀的地方变得不明显, 但是会使图像模糊,这也是图像平滑后不可避免的后果,只能尽量减轻,尽量的平滑掉图像的噪声又尽量保持图像细节,这也是图像平滑研究的主要问题;图像锐化使图像的边缘、轮廓变得清晰,并使其细节清晰,常对图像进行微分处理,但是图像的信噪比有所下降。
关键词: 图像增强 灰度图 直方图 平滑 锐化二、三种图像增强算法图像预处理是相对图像识别、图像理解而言的一种前期处理,主要是指按需要进行适当的变换突出某些有用的信息,去除或削弱无用的信息,在对图像进行分析之前, 通常要对图像质量进行改善,改善的目的就是要使处理后的图像比原始图像更适合特定的应用。
影响图像清晰度的因素很多,主要有光照不足、线路传输收到干扰等。
现存的图像增强技术主要分为空间域法和频率域法两类,其中的增强方法主要有直方图的修正、灰度变换、图像平滑、图像锐化、伪彩色和假彩色处理等。
下面主要采用直方图均衡化、图像平滑、图像线性锐化对图像进行增强处理, 对比他们的处理效果,分析 3 种方法的在图像增强处理方面的优劣。
1、直方图均衡化直方图均衡化也称为直方图均匀化,是一种常见的灰度增强算法,是将原图像的直方图经过变换函数修整为均匀直方图,然后按均衡后的直方图修整原图像。
为方便研究,先将直方图归一化,然后图像增强变换函数需要满足2个条件。