数字图像的增强处理2

上传人:大米 文档编号:511837697 上传时间:2023-12-26 格式:DOCX 页数:15 大小:68.28KB
返回 下载 相关 举报
数字图像的增强处理2_第1页
第1页 / 共15页
数字图像的增强处理2_第2页
第2页 / 共15页
数字图像的增强处理2_第3页
第3页 / 共15页
数字图像的增强处理2_第4页
第4页 / 共15页
数字图像的增强处理2_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《数字图像的增强处理2》由会员分享,可在线阅读,更多相关《数字图像的增强处理2(15页珍藏版)》请在金锄头文库上搜索。

1、数字图像的增强处理一、 实 验目的与要求1、 掌握数字图像的增强技术2、 能编程实现图像的平滑运算3、 掌握图像的卷积运算原理和模板运算4、 掌握一阶和二阶图像增强处理二、 实 验内容1、 编程实现图像的平滑运算;%均值滤波clcclose all;clear%userpath(G:DigitImageImage);FileName,FilePath=uigetfile(*.jpg;*.png;*.tif;*.img;*.gif;, 请选择图像数据);str = FilePath FileName;img = imread(str);if numel(size(img) 2 % 如果是彩色图像

2、就转换为灰度图像img = rgb2gray(img);endfigure;imshow(img);img = double(img);%nM模板大小(即n x n)n = 3;a(1 : n, 1 : n) = 1; %a 即n x n模板,元素全是1height, width = size(img); %输 入 图 像 是height,width 的 , 且 hightn,widthnx1 = double(img);x2 = x1;for i = 1 : height - n + 1for j = 1 : width - n + 1c = x1(i : i + (n - 1), j :

3、j + (n - 1) .*a; %取出 x1 中从 (i,j) 开始的 n 行 n 列元素与模板相乘s = sum(sum(c);% 求 c 矩阵中各元素之和x2(i + (n - 1) / 2,j + (n - 1) / 2) = s /(n * n); % 将与模板运算后的各元素的均值赋给模板中心位置的元素endend %未被赋值的元素取原值 pha = uint8(x2);figure; imshow(pha);%中值滤波最大值滤波、最小值滤波 clcclose all;clear%userpath(G:DigitImageImage);FileName,FilePathuigetfi

4、le(*.jpg;*.png;*.tif;*.img;*.gif;,请选择图像数据);str = FilePath FileName;img = imread(str);if numel(size(img) 2 % 如果是彩色图像就转换为灰度图像img = rgb2gray(img);endfigure;imshow(img);img = double(img);%nM模板大小(即nx n)n = 3;a(1 : n, 1 : n) = 1; %a 即nx n模板,元素全是1height, width = size(img); % 输入图像是height,width 的 ,且 hightn,w

5、idthnx1 = double(img);x2 = x1;for i = 1 : height - n + 1for j = 1 : width - n + 1c = x1(i : i + (n - 1),j : j + (n - 1); %取出 x1 中从(i,j)开始的n行n列元素,即模板(n x n的)e = c(1, :);%是c矩阵的第一行for u = 2 : ne = e, c(u, :);%将c矩阵变为一个行矩阵endmm=median(e);%mm 是中值mm=max(e)b最大值,mm= min(e)是最小值x2(i + (n - 1) / 2,j + (n - 1) /

6、 2) = mm; %将模板各元素的中值赋给模板中心位置的元素end end林被赋值的元素取原值pha = uint8(x2);figure; imshow(pha);2、编程实现如下模板的图像处理(请不要用conv2函数实现)其中a是要输入的一个参数,范围在 0,1之间孀一个模板clcclose all;clear%userpath(G:DigitImageImageV);FileName,FilePath=uigetfile(*jpg;*png;*tif;*img;.gif;,请选择图像数据);str = FilePath FileName;img = imread(str);if num

7、el(size(img) 2 %如果是彩色图像就转换为灰度图像img = rgb2gray(img);endfigure;imshow(img);m, n = size(img);dimg = img;% 边界for i = 2 : m - 1% 非边界for j = 2 : n - 1dimg(i, j) = (img(i + 1, j) + img(i - 1, j) + img(i, j + 1) + img(i, j - 1);endendfigure; imshow(img + dimg / 4);%第二个模板clcclose all;clear%userpath(G:DigitIm

8、ageImage);FileName,FilePath=uigetfile(*.jpg;*.png;*.tif;*.img;.gif;, 请选择图像数据);str = FilePath FileName;img = imread(str);if numel(size(img) 2 % 如果是彩色图像就转换为灰度图像img = rgb2gray(img);endfigure;imshow(img);m, n = size(img);img = im2double(img);dimg = img; % 边界for i = 2 : m - 1% 非边界for j = 2 : n - 1dimg(i,

9、 j) = (img(i - 1, j - 1) + img(i - 1, j) + img(i - 1, j + 1) + img(i, j - 1) + img(i, j + 1) + img(i + 1, j - 1) + img(i + 1, j) + img(i + 1, j + 1);endendfigure; imshow(img + dimg / 8);%第三个模板clcclose all;clear%userpath(G:DigitImageImage);FileName,FilePath=uigetfile(*.jpg;*.png;*.tif;*.img;*.gif;, 请

10、选择图像数据);str = FilePath FileName;img = imread(str);if numel(size(img) 2 % 如果是彩色图像就转换为灰度图像img = rgb2gray(img);endfigure;imshow(img);m, n = size(img);img = im2double(img);dimg = img; % 边界for i = 2 : m - 1% 非边界for j = 2 : n - 1dimg(i, j) = img(i - 1, j) + img(i, j - 1) + img(i, j) + img(i, j + 1) + img(

11、i + 1, j);endendfigure; imshow(img + dimg / 5);%第四个模板clcclose all;clear%userpath(G:DigitImageImage);FileName,FilePath=uigetfile(*.jpg;*.png;*.tif;*.img;*.gif;, 请选择图像数据);str = FilePath FileName;img = imread(str);if numel(size(img) 2 % 如果是彩色图像就转换为灰度图像img = rgb2gray(img);endfigure;imshow(img);m, n = si

12、ze(img);img = im2double(img);dimg = img; % 边界for i = 2 : m - 1% 非边界for j = 2 : n - 1dimg(i, j) = img(i- 1, j - 1) + img(i - 1, j) * 2+ img(i - 1, j + 1) + img(i, j - 1) * 2 + img(i, j) * 4 + img(i, j + 1) * 2 + img(i + 1, j - 1) + img(i + 1, j) * 2 + img(i +1, j + 1);endendfigure; imshow(img + dimg

13、/ 16);%第五个模板clcclose all;clear%userpath(G:DigitImageImage);FileName,FilePath=uigetfile(*.jpg;*.png;*.tif;*.img;.gif;, 请选择图像数据);str = FilePath FileName;img = imread(str);if numel(size(img) 2 % 如果是彩色图像就转换为灰度图像img = rgb2gray(img);endfigure;imshow(img);m, n = size(img);img = im2double(img);a = input( 请输

14、入a值范围在0 , 1之间:);dimg = img; % 边界for i = 2 : m - 1% 非边界for j = 2 : n - 1dimg(i, j) = img(i - 1, j) * (-a) + img(i, j - 1)* (-a) + img(i, j) * (1 + 4 * a) + img(i, j + 1) * (-a) + img(i+ 1, j) * (-a);endendfigure; imshow(img + dimg);%第六个模板clcclose all;clear%userpath(G:DigitImageImage);FileName,FilePath=uigetfile(*.jpg;*.png;*.tif;*.img;.gif;, 请选择图像数据);str = FilePath FileName;img = imread(str);if numel(size(img) 2 %如果是彩色图像就转换为灰度图像img = rgb2gray(img);endfigure;imshow(img);m, n = size(img);img = im2double(i

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 营销创新

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号