Matlab图像处理基础知识

Matlab的图片以矩阵的形式存储,矩阵的行列值为图片的行列的色彩值。

1图像表达方式:

  1. 像素索引

图像被视为离散单元。如使用I(2,2)可以获取第二行第二列的像素值

  1. 空间位置:

使用连续值,数据存储位置为坐标中点,存储位置可以非默认

A=magic();
x=[19.5,23.5];
y=[8.0,12.0];
image(A,'XData',x,'YData',y),axis image,colormap(jet()) %image('XData',x,'YData',y,'CData',C) x,y指定横纵坐标,C为每个x,y坐标点的颜色值
%axis 设置坐标轴
%colormap 查看并设置当前颜色图
%jet 25是条目数,将RGB颜色方案平分成25种颜色

2Malatb图像类型:

二进制图

像素的取值只有0和1,分别代表黑与白。

索引图(伪彩色)

索引图中某一像素的值代表调色板中能代表绝大多数的255中颜色之一,调色板大小为256×3。假如索引值为5,那么使用调色板第五行的三个数值代表颜色。

灰度图

灰度图中某一像素的值从0-255代表从黑到白的255种颜色层次。只能表现为灰色图像。

RGB图(真彩色)

在matlab中为n×m×3的多维数组,n,m,分别代表像素位置,第三维的三个数字代表RGB颜色的值。

RGB=reshape(ones(,)*reshape(jet(),,),[,,]);
R=RGB(:,:,);
G=RGB(:,:,);
B=RGB(:,:,);
figure
subplot();imshow(R)
subplot();imshow(G)
subplot();imshow(B)
subplot();imshow(RGB) %reshape:重构数组,将jet()中的RGB颜色分离,此时的RGB参数中存储着64中颜色的RGB值
%此时的RGB中第三维的第1,,3个数字代表R,G,B数值

3Matlab图像类型转换:

图像颜色筛选转换

X=dither(RGB,map):通过筛选算法将真彩色图像RGB按指定的颜色图map转换成索引色图像X

X = dither(RGB,map,Qm,Qe) 还指定要沿每个颜色轴为逆向颜色图使用的量化位数 Qm,以及用于颜色空间误差计算的量化位数 Qe。

BW = dither(I) 通过抖动将灰度图像 I 转换为二值(黑白)图像 BW。

asahi=imread('asahi.jpg');

imshow(asahi)

%map=jet();

%asahi_dither=dither(asahi,map);

%imshow(asahi_dither)

原图:

筛选转换

asahi=imread('asahi.jpg');

%imshow(asahi)

map=jet();

asahi_dither=dither(asahi,map);

imshow(asahi_dither)

灰度图转换为索引图:

[X,map]=gray2ind(I,n): 根据指定灰度级数n和颜色图map转换成灰度图X,n默认值为64

索引图转换为灰度图:

I=ind2gray(X,map):将索引图X转换成灰度图I,丢弃图像色度和饱和度,仅保留亮度信息。

RGB图转换成灰度图:

X=imread('asahi.jpg');

imshow(rgb2gray(X))

RGB图转换成索引图:

[X,cmap] = rgb2ind(RGB,Q) 使用具有 Q 种量化颜色的最小方差量化法并加入抖动,将 RGB 图像转换为索引图像 X,关联颜色图为 cmap。

[X,cmap] = rgb2ind(RGB,tol) 使用均匀量化法并加入抖动,将 RGB 图像转换为索引图像,容差为 tol。

X = rgb2ind(RGB,inmap) 使用逆颜色图算法并加入抖动,将 RGB 图像转换为索引图像,指定的颜色图为 inmap。

___ = rgb2ind(___,dithering) 启用或禁用抖动。

[Y,map]=rgb2ind(imread('asahi.jpg'),);

figure

imagesc(Y)

colormap(map)

imshow(Y,map)

索引图转换成RGB图:

RGB=ind2rgb(X,map):将矩阵X及相应的调色板map转换成真彩色图像RGB

阈值法从灰度图产生索引图:

X=grayslice(I,n):将灰度图均匀量化为n个等级,转换成伪彩色图像X

将矩阵转换成灰度图像:

mat2gray函数

I=mat2gray(X,[Xmin,Xmax]):指定区间Xmin-Xmax代表灰度0-1

Matlab图像处理基础知识的更多相关文章

  1. MATLAB图像处理基础

    MATLAB图像处理基础 2.2.1 图像文件格式及图像类型 1.MATLAB支持的几种图像文件格式: ⑴JPEG(Joint Photogyaphic Expeyts Group):一种称为联合图像 ...

  2. matlab图像基础知识

    1.MATLAB支持的几种图像文件格式: ⑴JPEG(Joint Photogyaphic Expeyts Group):一种称为联合图像专家组的图像压缩格式. ⑵BMP(Windows Bitmap ...

  3. matlab pca基础知识

    PCA的一些基本资料 最近因为最人脸表情识别,提取的gabor特征太多了,所以需要用PCA进行对提取的特征进行降维. 本来最早的时候我没有打算对提取的gabor特征进行降维,但是如果一个图像时64*6 ...

  4. 视频图像处理基础知识5(RGB与Ycbcr相互转换公式 )【转】

    转自:http://blog.csdn.net/Times_poem/article/details/51471438 版权声明:本文为博主原创文章,未经博主允许不得转载. 需求说明:视频处理算法基本 ...

  5. 图像处理基础知识:EMVA1288标准之“非均匀性”的理解

    EMVA1288标准之“非均匀性”的理解 目录 1. 什么是图像的非均匀性?有标准吗? 2. EMVA1288的非均匀性内容. 3. 总结与理解 正文 1. 什么是图像的非均匀性?有标准吗?简单来说, ...

  6. 使用matlab处理图像的基础知识

    MATLAB基本函数一 矩阵运算 1.基本算数运算(加减乘除) + -运算要求矩阵维数相同,例m*n * /运算,例A=B*C,B矩阵是m*n矩阵,B是n*p矩阵,则A是m*p矩阵 A/B相当于A*i ...

  7. Matlab高级教程_第一篇:Matlab基础知识提炼_01

    第一篇:Matlab基础知识提炼: 这一篇主要用系统和提炼性的语言对Matlab基础知识进行总结,主要适用于有语言基础的学习者.尽量不讲废话. 第一部分:Matlab是什么? 1 Matlab是Mat ...

  8. 打基础丨Python图像处理入门知识详解

    摘要:本文讲解图像处理基础知识和OpenCV入门函数. 本文分享自华为云社区<[Python图像处理] 一.图像处理基础知识及OpenCV入门函数>,作者: eastmount. 一.图像 ...

  9. Matlab - 基础知识

    Matlab R2016a完全自学一本通 记在前面: (1)函数中:dim=1 按列:dim=2 按行 (2)这本书很垃圾,不建议买. (3)在数据库连接中,用两个单引号表示字符串,千万不能用双引号 ...

随机推荐

  1. hhhhh臭不要脸//捂脸)多不好意思啊you进步惹

    如题↑↑↑ 千万不要相信题目 还是看图说话吧↓↓↓ 我真的蒟蒻啊,,,准确率在70边缘徘徊,卑微☹ 不过还是侥幸地进入了前 30 名! 今天七夕欸,然鹅,,, qq空间里面弥漫着恋爱的酸臭味 香气,‘ ...

  2. 【2019】Charles视频教程,接口测试工具最新教程

    Charles 是在 windows/mac/linux下常用的网络封包截取工具,也是电商/直播/搜索/金融/H5/App等测试专用接口测试工具. Charles 支持Http/Https/Webso ...

  3. 2D转换模块

    2D转换模块(transform) 1.取值:rotate(45deg)--- 旋转,默认以自己为中心作为参考点来旋转 .translate(100px,0px)--- 平移,第一个参数代表水平方向, ...

  4. 打jar包和使用jar包

    一.为什么要打jar包 二.如何查看jar包 三.如何开发jar包 四.拿到jar包之后,如何使用 一.为什么要打jar包 给别人用的时候一般给别人的是class文件.如果有很多类这么办?把类变成一个 ...

  5. pg_escape_string专用于转义数据库敏感字符

    (PHP 4 >= 4.2.0, PHP 5) pg_escape_string — 转义 text/char 类型的字符串 说明 string pg_escape_string ( strin ...

  6. SpringBoot MAVEN编译报错Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.0:

    参考了好几篇文章没搞定,直到查询错误关键字 An unknown compilation problem occurred 分别参考了以下博客: https://blog.csdn.net/fanre ...

  7. mysql 中 int 等类型如何选择

    详见:https://blog.csdn.net/samll_snail/article/details/86534719 .

  8. 手机端rem无限适配

    参考文档: http://blog.csdn.net/xwqqq/article/details/54862279 https://github.com/amfe/lib-flexible/tree/ ...

  9. [LeetCode] 461. Hamming Distance 汉明距离

    The Hamming distance between two integers is the number of positions at which the corresponding bits ...

  10. VisualStudio开发UE4工程设置

    转自:http://wangjie.rocks/2016/06/24/ue4-vs-setup/ 推荐插件 Visual Assist X C++ 代码高亮 UnrealVS Extension UE ...