许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  MATLAB图像处理基本操作(1):读取、显示与简单变换

MATLAB图像处理基本操作(1):读取、显示与简单变换

阅读数 3
点赞 0
article_banner

matlib软件巨大,没有安装 找了几个在线网址

http://www.compileonline.com/execute_matlab_online.php

https://octave-online.net/

从文件读取图像

a)读取图像文件

要读取图像文件,请使用imread函数并指定文件名。 本示例读取一个名为peppers.png的图像,并将其存储在名为a的数组中:a = imread('peppers.png');

 b)显示图像,imshow函数

imshow(a);  %显示图像

一个可用于显示图像的功能是imagesc。
   imagesc(a);  %将比例数组缩放到整个范围[0,255]并显示它调用imshow后,我们可以通过键入以下内容来找到鼠标位置的像素值:impixelinfo

  1. a=imread('4.jpg');%读取图片
  2. imshow(a);%显示图片
  3. impixelinfo;%显示鼠标该点的像素
  4. imagesc(a);%显示图片有坐标轴
  5. imageinfo('4.jpg');%显示图片信息
  6. s = size(a);%显示图片大小
python

获取任意图像位置的像素值

根据坐标获取像素值 P=impixel(im,r,c) r:行坐标 c:列坐标 P:返回的RGB值

  1. b=imread('peppers.png');
  2. r=[40 60 80];
  3. c=[100 120 140];
  4. figure; imshow(b);
  5. p = impixel(b,r,c)

 

  1. b=imread('peppers.png')
  2. figure;
  3. imshow(b);
  4. h=impixelinfo;%impixelinfo能够在当前绘图窗口(figure)中显示绘制图像的像素信息 set(h,'position',[10 10 200 50]);%显示框

c)查找图像大小

可以通过输入以下内容来找到图像大小:s = size  (a)然后,s(1)将以像素为单位存储图像高度,s(2)将存储图像宽度。
   或者,我们可以键入:[H,W,〜] = size(a)然后,H是图像高度,W是图像宽度

d)有关图像文件的信息

MATLAB函数imageinfo显示有关图像文件的信息,例如    imageinfo('peppers.png');

访问图像像素

a)图像结构

要检查图像数据如何存储在MATLAB工作区中,请输入whos a。

要获得彩色图像的红色分量请键入;

  1. red_component = a(:,:,1);%获得彩色图像的红色分量
  2. green_component = a(:,:,2);%获得彩色图像的绿色分量
  3. blue_component = a(:,:,3);%获得彩色图像的蓝色分量

要显示图像的各个颜色分量,请键入

  1. a=imread('4.jpg');
  2. imshow(a(:,:,1));%显示红色分量
  3. imshow(a(:,:,2)); %显示绿色分量
  4. imshow(a(:,:,3)); %显示蓝色成分

b)读取像素值

每个彩色像素都有三个用于红色,绿色和蓝色的值。 对于图像阵列a,第r行和第c列的图像像素的颜色值存储在a(r,c,:)。例如,第4行和第5列的图像像素的颜色值是a(4,5  ,:)

c)更改像素值要将第4行和第5列的图像像素更改为颜色“红色”(红色= 255,绿色= 0,蓝色= 0),请输入

 a(4, 5, 1) = 255; a(4, 5, 2) = 0; a(4, 5, 3) = 0;

To change all pixels in row 20 to color ‘yellow’ (red = 255, green = 255, blue = 0), type

a(20, :, 1) = 255; a(20, :, 2) = 255; a(20, :, 3) = 0;

d)将颜色转换为灰度图像

可以使用MATLAB函数rgb2gray获得彩色图像的灰度版本:gray_image = rgb2gray(a);

  1. gray_image = rgb2gray(a);
  2. imshow(gray_image);

e)对图像执行算术运算

为了节省 内存 ,MATLAB将图像数据存储为uint8(无符号的8位整数)。 无法对此数据类型执行精确的算术运算(加,减,乘,除)。 因此,要对图像执行算术运算,我们需要使用以下步骤。

使用功能double将图像转换为double数据类型:

a_double = double(a); 

对新图像执行算术运算

a_double = a_double * 2; % scale pixel value by 2 

使用函数uint8将新图像转换为uint8数据类型:

a_uint8 = uint8(a_double); %显示或保存uint8图像

显示或保存uint8图像

imshow(a_uint8);

将图像写入文件

a)要将图像保存到文件,请使用功能imwrite。 该函数的语法为

imwrite(A,filename,fmt),其中

A是存储图像数据的数组,

filename是输出文件名的字符串,fmt是指定图像文件格式的字符串, 例如“ BMP”和“ JPG”。

  例如,要以Windows BMP格式将gray_image保存到文件“ my_image.bmp”,请键入

imwrite(gray_image, ‘my_image.bmp’, ‘BMP’);

要以Windows JPG 格式将gray_image保存到文件“ my_image.jpg”,请键入

imwrite(gray_image, ‘my_image.jpg’, ‘JPG’); 使用成像程序查看输出图像,以确认文件已正确保存。

2.5图像处理

示例我们将尝试使用MATLAB程序将数字照片转换为类似绘画的图像。 执行以下步骤。
   检查MATLAB程序“ cartoon.m”是否在当前目录中。
   读取图片文件“ background.bmp”,并将其存储在变量A中。
   调用功能卡通以产生输出图像。
   C =卡通(A);  使用功能子图并排显示图像A和C。

 


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删
相关文章
技术文档
QR Code
微信扫一扫,欢迎咨询~
customer

online

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 board-phone 155-2731-8020
close1
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空