[DIP] 数字图像处理 CH03

---慢慢地go through冈萨雷斯的DIP和配套的matlab,记下一些零碎的知识点给自己以后复习。

DIP CH03 亮度变换与空间滤波

矩阵A=[1,2,3;4,5,6]

sum(A,1)对A的第一个维度求和,sum(A,2)对A的第二个维度求和;

prod(A,n),max(A,n),min(A,n),mean(A,n)类似,分别对A的第n个维度求乘积,最大值,最小值和平均值;

默认n=1,所以要对矩阵A所有元素求和,可以sum(sum(A)),相当于sum(sum(A,1),2),当然也可以直接sum(A(:));

[val,idx] = max(A(:))返回A最大值和位置,min类似;

std(A)求标准差用,std(A,Flag,Dim),Dim相当于前边所说的n,默认Flag=0,计算标准差时,均方取平均用N-1去除(N是样本个数),Flag=1时,均方取平均用N去除;

亮度变换

g = imadjust( f, [low_in,high_in], [low_out,high_out], gamma )   ---   gamma默认为1,表示线性映射,注意输入输出均在0到1之间,high_out可以比low_out小,表示亮度反转;

g = imcomplement( f )   ---   亮度反转;

直方图

h = imhist( f )   ---   直方图显示,还有其他显示设置方式;

g = histeq( f, 256 )   ---   直方图均衡化,第二个参数是灰度级别最大可能数量,默认为64,通常我们设为256(8-bit),g是直方图均衡化后的图像,用imhist(g)来查看效果;

---   numel(f)为f元素总数(f为图像就得到像素总数了);

            ---   hnorm = imhist(f)./numel(f)得到归一化直方图(各亮度出现频率), 向量;

---   cdf = cumsum(hnorm),cumsum()对向量实现元素累加,即 cdf(n) = sum(hnorm(1:n)),这样就可以得到亮度转换函数;

g = histeq( f, hspec )   ---   直方图规定化/直方图匹配,hspec是指定的直方图,行向量;

线性空间滤波

w = fspecial( ‘type‘, paras )   ---   构造掩模,常用type有average,gaussian,laplacian,prewitt,soble,而paras则为设置参数,可设置掩模尺寸和分布参数;

g = imfilter( f, w, ‘**‘ )   ---   对图像f用掩模w进行滤波操作,**是处理边界方式,常见方式有replicate,symmetric,默认使用0填充;

非线性空间滤波

g = medfilt2( f )   ---   中值滤波;

时间: 2024-10-19 00:24:54

[DIP] 数字图像处理 CH03的相关文章

[DIP] 数字图像处理 (MATLAB) CH05

---慢慢地go through冈萨雷斯的DIP和配套的matlab,记下一些零碎的知识点给自己以后复习. DIP CH05 图像复原与重建 首先是一些空间域和频域添加噪声的方法,书中编写了imnoise2与imnoise3,分别在空间域和频域添加噪声(频域噪声对应空间周期噪声).其中imnoise2主要是利用函数rand()与randn(),分别生成均匀分布(U(0,1))与高斯分布(N(0,1))的随机数,配合find()函数进行噪声生成:imnoise3则利用第四章的知识,用fftshif

[DIP] 数字图像处理 CH04

---慢慢地go through冈萨雷斯的DIP和配套的matlab,记下一些零碎的知识点给自己以后复习. DIP CH04 频率域滤波x = nextpow2(a)可以找到最小整数x,使得2的x次幂比a大: 傅里叶频谱 F = fft2(f)   ---   傅里叶变换,f为图像,空间域,F为傅里叶频域,直流分量在左上角,(1,1): Fc = fftshift(F)   ---   居中操作,将F的直流分量从左上角移动到频率矩形的中心: S = abs(Fc)   ---   傅里叶频谱幅值

数字图像处理学习笔记之一 DIP绪论与MATLAB基础

写在前面的话 数字图像处理系列的学习笔记是作者结合上海大学计算机学院<数字图像处理>课程的学习所做的笔记,使用参考书籍为<冈萨雷斯数字图像处理(第二版)(MATLAB版)>,同时学习过程中会参考网络学习资源.对于数字图像处理的学习不可能仅仅依靠作者所写的这一系列笔记,而是需要花时间和精力学习,本文只可作参考和交流之用.由于涉及此学科不久,在学习过程中难免存在错误,请读者不吝赐教. 数字图像处理绪论 数字图像处理(DIP)的研究目标和处理对象: DIP的研究目标是获取信息,处理对象是

哈工大深研院数字图像处理第二次大作业:水果自动识别(2)HSV空间聚类及SIFT算法目标识别

老规矩,直接贴报告~ Programe list: Programe was developed in the condition of Windows aswell as Linux server, programming language is Matlab (www.mathworks.com). Classify.m, Kmeans.m: function for K-means clustering. main_Kmeans.m: main function for K-means c

《数字图像处理原理与实践(MATLAB版)》一书之代码Part9

本文系<数字图像处理原理与实践(MATLAB版)>一书之代码系列的Part9,辑录该书第431至第438页之代码,供有需要读者下载研究使用.至此全书代码发布已经接近尾声,希望这些源码能够对有需要的读者有所帮助.代码执行结果请参见原书配图,建议下载代码前阅读下文: 关于<数字图像处理原理与实践(MATLAB版)>一书代码发布的说明 http://blog.csdn.net/baimafujinji/article/details/40987807 首先给出的是原书P438所列之程序源

《数字图像处理原理与实践(MATLAB版)》一书之代码Part8

本文系<数字图像处理原理与实践(MATLAB版)>一书之代码系列的Part8,辑录该书第375至第415页之代码,供有需要读者下载研究使用.至此全书代码发布已经接近尾声,希望这些源码能够对有需要的读者有所帮助.代码执行结果请参见原书配图,建议下载代码前阅读下文: 关于<数字图像处理原理与实践(MATLAB版)>一书代码发布的说明 http://blog.csdn.net/baimafujinji/article/details/40987807 P385-1 function y

数字图像处理作业使用OpenCV - 使用笔记

数字图像处理作业的输入图像全部都是灰度图像,所以汇总一下自己遇到的问题答案. OCV的图像容器是Mat<typename>,可以用imread(filename)读取图像,filename是c string,char*和const char*都行.灰度图像的typename是uchar,RGB图像的typename是Vec3b. Mat容器如果直接使用操作符赋值,只会复制一份信息头而不会复制包含数据的矩阵,由此而降低内存的浪费和速度,所以这样得到的多个Mat对象都指向同一个数据矩阵,换句话说,

数字图像处理1 、2基本原理

数字图像处理matlab版 冈萨雷斯 图书笔记系列,是个人读书笔记,写的不会太详细,具体内容要看课本(有例子和程序),这里只是罗列些基本的和重要的概念,方便复习,记忆和理解,弄点例子和练习. 什么东西都那么详细,是不现实的,大脑记不住,也太没效率.厚书可以慢看,但不能厚重的回忆,要把书读薄. 第一章 绪言和第二章 基本原理.对应课本,第1,2章. 解释了图像处理的含义,以及低,中,高级处理的对应内容. 数字图像是二维的,用函数表示为f(x, y),x行,y列,也可用二维矩阵表示. 注: Matl

初始----python数字图像处理--:环境安装与配置

一提到数字图像处理编程,可能大多数人就会想到matlab,但matlab也有自身的缺点: 1.不开源,价格贵 2.软件容量大.一般3G以上,高版本甚至达5G以上. 3.只能做研究,不易转化成软件. 因此,我们这里使用python这个脚本语言来进行数字图像处理. 要使用python,必须先安装python,一般是2.7版本以上,不管是在windows系统,还是linux系统,安装都是非常简单的. 要使用python进行各种开发和科学计算,还需要安装对应的包.这和matlab非常相似,只是matla