matlab从无到有系列(五):基本图形图像处理功能
matlab从无到有系列文章汇总:
matlab从无到有系列(一):认识matlab
matlab从无到有系列(二):矩阵运算基础
matlab从无到有系列(三):数值计算基础
matlab从无到有系列(四):符号数学基础
全文共11018个字,码字总结不易,老铁们来个三连:点赞、关注、评论
作者:左手の明天
原创不易,转载请联系作者并注明出处
敬请期待下一篇:
matlab从无到有系列(六):高级图形处理功能
matlab图像福利是非常重要的一项功能,matlab中也有相应的函数对图像进行处理。这里主要介绍二维和三维图形的高层绘图函数以及其他图形控制函数的使用方法。在此基础上,再介绍可以操作和控制各种图形对象的低层绘图操作。
目录
二维绘图
曲线图绘制
条形图绘制
饼图绘制
三维绘图
三维线图、网线图、表面图和带渲染效果的表面图
peaks函数的表面图
colormap函数改变预置的色图
绘制不通明网线图、透明网线图、表面图和带剪孔的表面图
图像处理
图像读写
图像显示
图像变换
傅里叶正反变换
二维卷积
模拟噪声生成
预定义滤波器
图像增强
彩色转为灰度
直方图
直方图均化
对比度调整
对数变换
举例:米粒图像处理
图像的变换
离散傅立叶变换
离散余弦变换
图像小波变换
图像和图像数据
从uint8到double的转换
从double到uint8的转换
图像类型
真彩色图像
索引色图像
灰度图像
二值图像
图像序列
图像类型转换
二维绘图
曲线图绘制
举例1:绘制曲线,x的取值范围为[-5,5]。
>> x=-5:0.2:5;
>> y=x.^3+x+1;
>> plot(x,y)
举例2:有一组测量数据满足,t的变化范围为0~10,用不同的线型和标记点画出a=0.1、a=0.2和a=0.5三种情况下的曲线。
>> t=0:0.5:10;>> y1=exp(-0.1*t);>> y2=exp(-0.2*t);>> y3=exp(-0.5*t);>> plot(t,y1,'-ob',t,y2,':*r',t,y3,'-.^g')
在结果图中添加标题,并用箭头线标识出各曲线a的取值。
>> title('\ity\rm=e^{-\itat}')>> title('\ity\rm=e^{-\itat}','FontSize',12)>> text(t(6),y1(6),'\leftarrow\ita\rm=0.1','FontSize',11)>> text(t(6),y2(6),'\leftarrow\ita\rm=0.2','FontSize',11)>> text(t(6),y3(6),'\leftarrow\ita\rm=0.5','FontSize',11)
在结果图中添加标题和图例框。
>> title('\ity\rm=e^{-\itat}','FontSize',12)>> legend('a=0.1','a=0.2','a=0.5')
条形图绘制
举例:表中列出了4个观测点的6次测量数据,将数据绘制成为分组形式和堆叠形式的条形图。
>> y=[3 6 9 6;6 7 7 4;7 3 2 3;4 2 5 2;2 4 8 7;8 7 4 4];
>> bar(y)
>> bar(y,’stack’)
饼图绘制
举例: x= [66 49 71 56 38],绘制饼图,并将第五个切块分离出来。
>> x=[66 49 71 56 38];>> L=[0 0 0 0 1];>> pie(x,L)
三维绘图
三维线图、网线图、表面图和带渲染效果的表面图
举例:,当x和y的取值范围均为-2到2时,用建立子窗口的方法在同一个图形窗口中绘制出三维线图、网线图、表面图和带渲染效果的表面图。
>> [x,y]=meshgrid([-2:.2:2]);>> z=x.*exp(-x.^2-y.^2); >> mesh(x,y,z)>> subplot(2,2,1), plot3(x,y,z)>> title('plot3 (x,y,z)')>> subplot(2,2,2), mesh(x,y,z)>> title('mesh (x,y,z)') >> subplot(2,2,3), surf(x,y,z)>> title('surf (x,y,z)') >> subplot(2,2,4), surf(x,y,z), shading interp>> title('surf (x,y,z), shading interp')
peaks函数的表面图
>> surf(peaks(30));
colormap函数改变预置的色图
>> colormap(hot)
>> colormap(cool)
>> colormap(lines)
绘制不通明网线图、透明网线图、表面图和带剪孔的表面图
举例:用sphere函数产生球表面坐标,绘制不通明网线图、透明网线图、表面图和带剪孔的表面图。
>> [x,y,z]=sphere(30);>> mesh(x,y,z)
>> mesh(x,y,z),hidden off
>> surf(x,y,z)
>> z(18:30,1:5)=NaN*ones(13,5);>> surf(x,y,z)
将带剪孔的球形表面图的坐标改变为正方形,以使球面看起来是圆的而不是椭圆的,然后关闭坐标轴的显示。
axis squareaxis off
图像处理
图像读写
- imread:imread函数用于读入各种图像文件,如:a=imread('D:\image.tif')
- imwrite:imwrite函数用于写入图像文件,如:imwrite(a,'D:\image.tif',’tif’)
- imfinfo:imfinfo函数用于读取图像文件的有关信息,如:imfinfo('D:\image.tif')
图像显示
- image:image函数是MATLAB提供的最原始的图像显示函数(主要彩色显示图象)
a=[1,2,3,4;4,5,6,7;8,9,10,11,12];image(a);
- imshow:imshow函数用于灰度图像文件的显示
i=imread('D:\image.tif');imshow(i);
- colorbar:colorbar函数用显示图像的颜色条
i=imread('D:\image.tif');imshow(i);colorbar;
- figure:figure函数用于设定图像显示窗口
图像变换
傅里叶正反变换
- fft2:用于数字图像的二维傅立叶变换
i=imread('D:\image.tif');j=fft2(i);
- ifft2:用于数字图像的二维傅立叶反变换
i=imread('D:\image.tif');j=fft2(i);k=ifft2(j);
二维卷积
- 利用fft2函数可以计算二维卷积
a=[4,2,9;3,6,3;6,2,5];b=[1,1,1;1,1,1;1,1,1];a(8,8)=0;b(8,8)=0;c=ifft2(fft2(a).*fft2(b));c=c(1:5,1:5);
- 利用conv2(二维卷积函数)校验
conv2(原图像,卷积核)
a=[1 1 1;1 1 1;1 1 1];
b=[1 1 1;1 1 1;1 1 1];
>> conv2(a,b)ans =1 2 3 2 12 4 6 4 23 6 9 6 32 4 6 4 21 2 3 2 1
conv2(a,b,'valid'):'valid'就意味着不对原图像padding.
>> conv2(a,b,'valid')ans =9
conv2(a,b,'same')
same的解释:
卷积的时候需要对卷积核进行180的旋转,同时卷积核中心与需计算的图像像素对齐,输出结构为中心对齐像素的一个新的像素值。
>> conv2(a,b,'same')ans =4 6 46 9 64 6 4
conv2(a,b,'full')
full的解释:
图中蓝色为原图像,白色为对应卷积所增加的padding,通常全部为0,绿色是卷积后图片。图的卷积的滑动是从卷积核右下角与图片左上角重叠开始进行卷积,滑动步长为1,卷积核的中心元素对应卷积后图像的像素点。
>> conv2(a,b,'full')ans =1 2 3 2 12 4 6 4 23 6 9 6 32 4 6 4 21 2 3 2 1
模拟噪声生成
imnoise函数用于对图像生成模拟噪声
基本用法:
g = imnoise(f, type, parameters)
- 输出:g是被污染的图像
- 输入:f是输入的原图像,type是加入的噪声类型,parameters是噪声的一些参数
g=imnoise(f,‘gaussian’,m,var):将均值为m,方差为var的高斯噪声加到图像f上。m的默认值是0、var默认值是0.01。
g=imnoise(f,‘salt & pepper’,d):用椒盐噪声污染图像f,其中d是噪声密度(即包含噪声值的图像区域的百分比)。因此,大约有d*numel(f)个像素受到污染,默认的噪声密度为0.05。
g=imnoise(f,‘speckle’,var):用方程g=f + n*f将乘性噪声添加到图像f上,其中n是均值为0、方差为var的均匀分布的随机噪声。var的默认值为0.04。
预定义滤波器
Fspecial函数用于创建预定义的滤波算子,其语法格式为:
h = fspecial(type)h = fspecial(type,parameters,sigma)
参数type制定算子类型,parameters指定相应的参数,具体格式为:
- type='average',为均值滤波,参数为n,代表模版尺寸,用向量表示,默认值为[3,3]。
- type= 'gaussian',为高斯低通滤波器,参数有两个,n表示模版尺寸,默认值为[3,3],sigma表示滤波器的标准差,单位为像素,默认值为 0.5。
- type= 'laplacian',为拉普拉斯算子,参数为alpha,用于控制拉普拉斯算子的形状,取值范围为[0,1],默认值为0.2。
- type= 'log',为拉普拉斯高斯算子,参数有两个,n表示模版尺寸,默认值为[3,3],sigma为滤波器的标准差,单位为像素,默认值为0.5
- type= 'prewitt',为prewitt算子,用于边缘增强,无参数。
- type= 'sobel',为sobel算子,sobel水平边缘增强滤波器,用于边缘提取,无参数。
- type= 'unsharp',为对比度增强滤波器,参数alpha用于控制滤波器的形状,范围为[0,1],默认值为0.2。
图像增强
>> i=imread('D:\rice.jpg');
彩色转为灰度
rgb2gray函数是把彩色图像转为灰度
i = imread('D:\rice.jpg');
img = rgb2gray(i);%将彩色图像转为灰度图
imshow(img);
直方图
imhist函数用于数字图像的直方图显示,如:
>> i=imread('D:\rice.jpg');
>> i=rgb2gray(i);
>> imhist(i)
>>
直方图均化
histeq函数用于数字图像的直方图均化,如:
>> i=imread('D:\rice.jpg');
>> i=rgb2gray(i);
>> j=histeq(i)
对比度调整
imadjust函数用于数字图像的对比度调整,如:
>> i=imread('D:\rice.jpg');
>> i=rgb2gray(i);
>> j=imadjust(i,[0.3,0.7],[])
部分数据:
对数变换
log函数用于数字图像的对数变换,如:
>> i=imread('D:\rice.jpg');
>> i=rgb2gray(i);
>> j=double(i);
>> k=log(j)
部分数据:
举例:米粒图像处理
- 均衡光照(剪掉背景)
- 获得二值图像
- 连通体个数
cc = Connectivity: 4ImageSize: [256 256]NumObjects: 95PixelIdxList: {1x95 cell}ans =95
- 第50个连通体(米粒)
- 彩色
- 连通体数据
graindata = 95x1 struct array with fields:AreaCentroidBoundingBox
Area:面积,即像素数; Centroid:质心 ; BoundingBox:外围的长方形
- 获取最小面积的米粒
min_area =61idx =16
- 面积分布
- 完整代码
i=imread('D:\rice.jpg');
I1=rgb2gray(i);
background = imopen(I1,strel('disk',15)); % 形态学处理:开操作,删除米粒(灰度级的形态学)
I2 = I1 - background; % 剪掉背景
figure(1);
imshow(I2);I3 = imadjust(I2);
level = graythresh(I3); % 自动获得最佳阈值
bw = im2bw(I3,level);
bw = bwareaopen(bw, 50); % 删除小面积对象,除去噪声
figure(2);
imshow(bw);cc = bwconncomp(bw, 4) % 4连通
cc.NumObjects % 有96个米粒,因为两个米粒连接在一块
grain = false(size(bw));
grain(cc.PixelIdxList{50}) = true; % 包含米粒位置信息,[][]-->[]
figure(3);
imshow(grain);% 彩色
labeled = labelmatrix(cc); % 第n粒米粒的位置大小是n
RGB_label = label2rgb(labeled, @spring, 'c', 'shuffle'); % 映射
figure(4);
imshow(RGB_label)graindata = regionprops(cc, 'basic') % 连通体数据% 获取最小面积的米粒
grain_areas = [graindata.Area];
[min_area, idx] = min(grain_areas)
grain = false(size(bw));
grain(cc.PixelIdxList{idx}) = true;
figure(5);
imshow(grain);% 面积分布
figure(6);
histogram(grain_areas)
title('Histogram of Rice Grain Area');
图像的变换
离散傅立叶变换
Matlab 函数 fft、fft2 和 fftn 分别可以实现一维、二维和 N 维 DFT 算法;而函数 ifft、ifft2 和 ifftn 则用来计算反 DFT 。这些函数的调用格式如下:
A=fft(X,N,DIM)
- X 表示输入图像
- N 表示采样间隔点,如果 X 小于该数值,那么 Matlab 将会对 X 进行零填充,否则将进行截取,使之长度为 N
- DIM 表示要进行离散傅立叶变换
A=fft2(X,MROWS,NCOLS)
MROWS 和 NCOLS 指定对 X 进行零填充后的 X 大小。
A=fftn(X,SIZE)
SIZE 是一个向量,它们每一个元素都将指定 X 相应维进行零填充后的长度。
函数 ifft、ifft2 和 ifftn的调用格式于对应的离散傅立叶变换函数一致。
例子:图像的二维傅立叶频谱
% 读入原始图像
I=imread('D:\rice.jpg');
I=rgb2gray(I);% 求离散傅立叶频谱
J=fftshift(fft2(I));
imshow(log(abs(J)),[8,10]);
离散余弦变换
- dct2 函数
功能:二维 DCT 变换
格式:B=dct2(A)
B=dct2(A,m,n)
B=dct2(A,[m,n])
说明:B=dct2(A) 计算 A 的 DCT 变换 B ,A 与 B 的大小相同;B=dct2(A,m,n) 和 B=dct2(A,[m,n]) 通过对 A 补 0 或剪裁,使 B 的大小为 m×n。
- dict2 函数
功能:DCT 反变换
格式:B=idct2(A)
B=idct2(A,m,n)
B=idct2(A,[m,n])
说明:B=idct2(A) 计算 A 的 DCT 反变换 B ,A 与 B 的大小相同;B=idct2(A,m,n) 和 B=idct2(A,[m,n]) 通过对 A 补 0 或剪裁,使 B 的大小为 m×n。
- dctmtx函数
功能:计算 DCT 变换矩阵
格式:D=dctmtx(n)
说明:D=dctmtx(n) 返回一个 n×n 的 DCT 变换矩阵,输出矩阵 D 为 double 类型。
图像小波变换
- 一维小波变换的 Matlab 实现
(1) dwt 函数
功能:一维离散小波变换
格式:[cA,cD]=dwt(X,'wname')
[cA,cD]=dwt(X,Lo_D,Hi_D)
说明:[cA,cD]=dwt(X,'wname') 使用指定的小波基函数 'wname' 对信号 X 进行分解,cA、cD 分别为近似分量和细节分量;[cA,cD]=dwt(X,Lo_D,Hi_D) 使用指定的滤波器组 Lo_D、Hi_D 对信号进行分解。
(2) idwt 函数
功能:一维离散小波反变换
格式:X=idwt(cA,cD,'wname')
X=idwt(cA,cD,Lo_R,Hi_R)
X=idwt(cA,cD,'wname',L)
X=idwt(cA,cD,Lo_R,Hi_R,L)
X=idwt(cA,cD,'wname') 由近似分量 cA 和细节分量 cD 经小波反变换重构原始信号 X 。 'wname' 为所选的小波函数
X=idwt(cA,cD,Lo_R,Hi_R) 用指定的重构滤波器 Lo_R 和 Hi_R 经小波反变换重构原始信号 X
X=idwt(cA,cD,'wname',L) 和 X=idwt(cA,cD,Lo_R,Hi_R,L) 指定返回信号 X 中心附近的 L 个点。
- 二维小波变换的 Matlab 实现
二维小波变换的函数
-------------------------------------------------
函数名 函数功能
---------------------------------------------------
dwt2 二维离散小波变换
wavedec2 二维信号的多层小波分解
idwt2 二维离散小波反变换
waverec2 二维信号的多层小波重构
wrcoef2 由多层小波分解重构某一层的分解信号
upcoef2 由多层小波分解重构近似分量或细节分量
detcoef2 提取二维信号小波分解的细节分量
appcoef2 提取二维信号小波分解的近似分量
upwlev2 二维小波分解的单层重构
dwtpet2 二维周期小波变换
idwtper2 二维周期小波反变换
-------------------------------------------------------------
- (1) wcodemat 函数
功能:对数据矩阵进行伪彩色编码
格式:Y=wcodemat(X,NB,OPT,ABSOL)
Y=wcodemat(X,NB,OPT)
Y=wcodemat(X,NB)
Y=wcodemat(X)
说明:Y=wcodemat(X,NB,OPT,ABSOL) 返回数据矩阵 X 的编码矩阵 Y ;NB 伪编码的最大值,即编码范围为 0~NB,缺省值 NB=16;
OPT 指定了编码的方式(缺省值为 'mat'),即:
OPT='row' ,按行编码
OPT='col' ,按列编码
OPT='mat' ,按整个矩阵编码
ABSOL 是函数的控制参数(缺省值为 '1'),即:
ABSOL=0 时,返回编码矩阵
ABSOL=1 时,返回数据矩阵的绝对值 ABS(X)
- (2) dwt2 函数
功能:二维离散小波变换
格式:[cA,cH,cV,cD]=dwt2(X,'wname')
[cA,cH,cV,cD]=dwt2(X,Lo_D,Hi_D)
说明:[cA,cH,cV,cD]=dwt2(X,'wname')使用指定的小波基函数 'wname' 对二维信号 X 进行二维离散小波变幻;cA,cH,cV,cD 分别为近似分量、水平细节分量、垂直细节分量和对角细节分量;[cA,cH,cV,cD]=dwt2(X,Lo_D,Hi_D) 使用指定的分解低通和高通滤波器 Lo_D 和 Hi_D 分解信号 X 。
- (3) wavedec2 函数
功能:二维信号的多层小波分解
格式:[C,S]=wavedec2(X,N,'wname')
[C,S]=wavedec2(X,N,Lo_D,Hi_D)
说明:[C,S]=wavedec2(X,N,'wname') 使用小波基函数 'wname' 对二维信号 X 进行 N 层分解;[C,S]=wavedec2(X,N,Lo_D,Hi_D) 使用指定的分解低通和高通滤波器 Lo_D 和 Hi_D 分解信号 X 。
- (4) idwt2 函数
功能:二维离散小波反变换
格式:X=idwt2(cA,cH,cV,cD,'wname')
X=idwt2(cA,cH,cV,cD,Lo_R,Hi_R)
X=idwt2(cA,cH,cV,cD,'wname',S)
X=idwt2(cA,cH,cV,cD,Lo_R,Hi_R,S)
说明:
X=idwt2(cA,cH,cV,cD,'wname') 由信号小波分解的近似信号 cA 和细节信号 cH、cH、cV、cD 经小波反变换重构原信号 X
X=idwt2(cA,cH,cV,cD,Lo_R,Hi_R) 使用指定的重构低通和高通滤波器 Lo_R 和 Hi_R 重构原信号 X
X=idwt2(cA,cH,cV,cD,'wname',S) 和 X=idwt2(cA,cH,cV,cD,Lo_R,Hi_R,S) 返回中心附近的 S 个数据点
- (5) waverec2 函数
说明:二维信号的多层小波重构
格式:X=waverec2(C,S,'wname')
X=waverec2(C,S,Lo_R,Hi_R)
说明:
X=waverec2(C,S,'wname') 由多层二维小波分解的结果 C、S 重构原始信号 X ,'wname' 为使用的小波基函数;
X=waverec2(C,S,Lo_R,Hi_R) 使用重构低通和高通滤波器 Lo_R 和 Hi_R 重构原信号。
图像和图像数据
MATLAB将图像中的数据存储为双精度类型(double),64位浮点数,所需存储量很大;MATLAB还支持另一种类型无符号整型(uint8),即图像矩阵中每个数据占用1个字节。在使用MATLAB工具箱时,一定要注意函数所要求的参数类型。另外,uint8与double两种类型数据的值域不同,编程需注意值域转换。
从uint8到double的转换
---------------------------------------------
图像类型 MATLAB语句
---------------------------------------------
索引色 B=double(A)+1
索引色或真彩色 B=double(A)/255
二值图像 B=double(A)
---------------------------------------------
从double到uint8的转换
---------------------------------------------
图像类型 MATLAB语句
---------------------------------------------
索引色 B=uint8(round(A-1))
索引色或真彩色 B=uint8(round(A*255))
二值图像 B=logical(uint8(round(A)))
---------------------------------------------
图像类型
真彩色图像
R、G、B三个分量表示一个像素的颜色。如果要读取图像中(100,50)处的像素值,可查看三元数据(100,50,1:3)。
真彩色图像可用双精度存储,亮度值范围是[0,1];比较符合习惯的存储方法是用无符号整型存储,亮度值范围[0,255]
索引色图像
包含两个结构,一个是调色板,另一个是图像数据矩阵。调色板是一个有3列和若干行的色彩映象矩阵,矩阵每行代表一种颜色,3列分别代表红、绿、蓝色强度的双精度数。
注意:MATLAB中调色板色彩强度[0,1],0代表最暗,1代表最亮。
- 常用颜色的RGB值
--------------------------------------------
颜色 R G B 颜色 R G B
--------------------------------------------
黑 0 0 1 洋红 1 0 1
白 1 1 1 青蓝 0 1 1
红 1 0 0 天蓝 0.67 0 1
绿 0 1 0 橘黄 1 0.5 0
蓝 0 0 1 深红 0.5 0 0
黄 1 1 0 灰 0.5 0.5 0.5
--------------------------------------------
- 产生标准调色板的函数
-------------------------------------------------
函数名 调色板
-------------------------------------------------
Hsv 色彩饱和度,以红色开始,并以红色结束
Hot 黑色-红色-黄色-白色
Cool 青蓝和洋红的色度
Pink 粉红的色度
Gray 线型灰度
Bone 带蓝色的灰度
Jet Hsv的一种变形,以蓝色开始,以蓝色结束
Copper 线型铜色度
Prim 三棱镜,交替为红、橘黄、黄、绿和天蓝
Flag 交替为红、白、蓝和黑
--------------------------------------------------
索引色图像数据也有double和uint8两种类型。
当图像数据为double类型时,值1代表调色板中的第1行,值2代表第2行……
如果图像数据为uint8类型,0代表调色板的第一行,,值1代表第2行……
灰度图像
存储灰度图像只需要一个数据矩阵。
数据类型可以是double,[0,1];也可以是uint8,[0,255]
二值图像
二值图像只需一个数据矩阵,每个像素只有两个灰度值,可以采用uint8或double类型存储。
MATLAB工具箱中以二值图像作为返回结果的函数都使用uint8类型。
图像序列
MATLAB工具箱支持将多帧图像连接成图像序列。
图像序列是一个4维数组,图像帧的序号在图像的长、宽、颜色深度之后构成第4维。
分散的图像也可以合并成图像序列,前提是各图像尺寸必须相同,若是索引色图像,
调色板也必须相同。
可参考cat()函数 A=cat(4,A1,A2,A3,A4,A5)
图像类型转换
图像类型转换函数
---------------------------------------------------------------------------
函数名 函数功能
---------------------------------------------------------------------------
dither 图像抖动,将灰度图变成二值图,或将真彩色图像抖动成索引色图像
gray2ind 将灰度图像转换成索引图像
grayslice 通过设定阈值将灰度图像转换成索引色图像
im2bw 通过设定亮度阈值将真彩色、索引色、灰度图转换成二值图
ind2gray 将索引色图像转换成灰度图像
ind2rgb 将索引色图像转换成真彩色图像
mat2gray 将一个数据矩阵转换成一副灰度图
rgb2gray 将一副真彩色图像转换成灰度图像
rgb2ind 将真彩色图像转换成索引色图像
----------------------------------------------------------------------------
参考资料
matlab对图像操作函数的详解 - 木lin木 - 博客园
MATLAB2016b图像处理工具箱(一) - 简书
matlab从无到有系列(五):基本图形图像处理功能相关推荐
- matlab从无到有系列(四):符号数学基础
matlab从无到有系列文章汇总: matlab从无到有系列(一):认识matlab matlab从无到有系列(二):矩阵运算基础 matlab从无到有系列(三):数值计算基础 全文共17248个字, ...
- matlab从无到有系列(七):GUI程序设计
- 【重新定义matlab强大系列五】函数filloutliers检测并替换数据中的离群值
- OpenCV-Python图形图像处理:自用的一些工具函数功能及调用语法介绍
☞ ░ 前往老猿Python博客 https://blog.csdn.net/LaoYuanPython ░ 一.引言 为了支持进行图像处理测试,老猿将一些经常需要使用到的功能做成了函数放到了公用模块 ...
- MATLAB图形图像处理——图像灰度变换
MATLAB图形图像处理--图像灰度变换 一.MATLAB入门知识 1.什么是MATLAB 2.MATLAB处理图像 图像数据 数据类型 位深 函数 imread imwrite 二.图像灰度变换基础 ...
- CSS 魔法系列:纯 CSS 绘制各种图形《系列五》
我们的网页因为 CSS 而呈现千变万化的风格.这一看似简单的样式语言在使用中非常灵活,只要你发挥创意就能实现很多比人想象不到的效果.特别是随着 CSS3 的广泛使用,更多新奇的 CSS 作品涌现出来. ...
- matlab 图形绘制,MatLab图形绘制功能
MatLab图形绘制功能 MatLab % 0到10的1000个点的x座标 y=sin(x); % 对应的y座标 plot(x,y); % 绘图 Y=sin(10*x); plot(x,y, r: , ...
- matlab图像类论文,基于matlab图形图像处理技术毕设论文.doc
基于matlab图形图像处理技术毕设论文 基于MATLAB图形图像处理技术 摘 要 本文提出了一种基于MATLAB的数字图像处理技术的设计,系统中包括了图像处理技术的各个方面,涵盖了图像处理领域的个别 ...
- matlab图形图像处理论文,基于matlab图形图像处理技术-本科毕设论文.doc
基于matlab图形图像处理技术-本科毕设论文 基于MATLAB图形图像处理技术 摘 要 本文提出了一种基于MATLAB的数字图像处理技术的设计,系统中包括了图像处理技术的各个方面,涵盖了图像处理领域 ...
- 第五章 彩色图像处理
第五章 彩色图像处理 MATLAB中彩色图像的表示 RGB图像 索引图像 处理RGB和索引图像的函数 彩色空间转换 NTSC彩色空间 YCbCr彩色空间 CMY和CMYK彩色空间 HSI彩色空间 与设 ...
最新文章
- 服务器虚拟化北向,KVM虚拟化的部署及使用
- mysql command line闪退_MySQL Command Line Client 打不开(闪退)的解决
- 【转】不分英文字母大小寫的字串比較方式
- phpcms v9 内容页显示会员的详细信息(包括自定义字段)
- windbg学习.formats--转换成各种进制
- HDU4357(数学思维题)
- StringBuilder与StringBuffer比较
- 【OpenGL】OpenGL视图和模型变换中各变换发生顺序的思考
- 华为3500光端机基本介绍_华为OSN3500光端机License授权管理介绍
- 全网首发:gpg: gpg-agent 在此次会话中无法使用的解决办法
- SpringBoot是如何完成自动配置的
- html表格里面嵌入按钮,bootstarp-table表格中嵌套多个BUTON按钮实现
- [ESP32/ESP8266专题笔记-5] ESP8266开发板-Micropython-串口控制继电器
- 程序员,30岁+,看完让你不再焦虑
- 主会场与分会场直播场景自由切换的实际应用效果
- python下载安装教程电脑版,python下载好了怎么使用
- 【open stack】openstack从入门到放弃
- 云计算简介:云计算定义、云计算优势、云计算分类、云计算历史
- C语言讲义——头文件
- 分享4个不为人知的高质量APP,每一个都实力爆棚!