张量计算比较繁琐,尤其是广义相对论和黎曼几何结合起来的计算更是冗繁。好在现在已经出现了很多计算张量的工具包。吴老师使用Maple的 GRTenser 计算,我打算看看针对 Mathematica 的 EDC and RGTC。

EDC and RGTC,即 Riemannian Geometry & Tensor Calculus @ Mathematica,链接:http://www.inp.demokritos.gr/~sbonano/RGTC/

Download RGTC (Version 3.8.9 – May 2013)

  • Download all files – compressed: .sit format (100 KB), .zip format (135 KB)
  • Uncompressed files (~1000 KB):  RGTC.nb  —  OperatorPLT.nb  —  NPsymbolPLT.nb  —  EDCRGTCcode.m. (Only the combined matrixEDC and RGTC code in package format is included — it must be placed in an appropriate directory).
  • Note: RGTC cannot be used for calculations with abstract tensors (manipulation of tensor expressions with abstract indices). It only operates on explicit tensors (nested lists of components which are functions of the coordinates). For abstract calculations try the package xTensor.

Additional Examples can be found here.

英文版维基百科的介绍如下(来自 Tensor software https://en.wikipedia.org/wiki/Tensor_software),红色字体是和广义相对论计算有关的工具,我专门标注了出来。


Standalone software

  • SPLATT[1] is an open source software package for high-performance sparse tensor factorization. SPLATT ships a stand-alone executable, C/C++ library, and Octave/MATLABAPI.
  • Cadabra[2] is a computer algebra system (CAS) designed specifically for the solution of problems encountered in field theory. It has extensive functionality for tensor polynomial simplification including multi-term symmetries, fermions and anti-commuting variables, Clifford algebras and Fierz transformations, implicit coordinate dependence, multiple index types and many more. The input format is a subset of TeX. Both a command-line and a graphical interface are available.
  • Tela[3] is a software package similar to Matlab and (GNU) Octave, but designed specifically for tensors.

Software for use with Mathematica

  • Tensor[4] is a tensor package written for the Mathematica system. It provides many functions relevant for General Relativity calculations in general Riemann-Cartan geometries.
  • Ricci[5] is a system for Mathematica 2.x and later for doing basic tensor analysis, available for free.
  • TTC[6] Tools of Tensor Calculus is a Mathematica package for doing tensor and exterior calculus on differentiable manifolds.
  • EDC and RGTC,[7] “Exterior Differential Calculus” and “Riemannian Geometry & Tensor Calculus,” are free Mathematica packages for tensor calculus especially designed but not only for general relativity.
  • Tensorial[8] “Tensorial 4.0” is a general purpose tensor calculus package for Mathematica.
  • xAct:[9] Efficient Tensor Computer Algebra for Mathematica. xAct is a collection of packages for fast manipulation of tensor expressions.
  • GREAT[10] is a free package for Mathematica that computes the Christoffel connection and the basic tensors of General Relativity from a given metric tensor.
  • Atlas 2 for Mathematica[11] is a powerful Mathematica toolbox which allows to do a wide range of modern differential geometry calculations
  • GRTensorM[12] is a computer algebra package for performing calculations in the general area of differential geometry.
  • MathGR[13] is a package to manipulate tensor and GR calculations with either abstract or explicit indices, simplify tensors with permutational symmetries, decompose tensors from abstract indices to partially or completely explicit indices and convert partial derivatives into total derivatives.
  • TensoriaCalc[14] is a tensor calculus package written for Mathematica 9 and higher, aimed at providing user-friendly functionality and a smooth consistency with the Mathematica language itself. As of January 2015, given a metric and the coordinates used, TensoriaCalc can compute Christoffel symbols, the Riemann curvature tensor, and Ricci tensor/scalar; it allows for user-defined tensors and is able to perform basic operations such as taking the covariant derivatives of tensors. TensoriaCalc is continuously under development due to time constraints faced by its inventor/developer.

Software for use with Maple

  • GRTensorII[15] is a computer algebra package for performing calculations in the general area of differential geometry.
  • Atlas 2 for Maple[16] is a modern differential geometry for Maple.
  • DifferentialGeometry[17] is a package which performs fundamental operations of calculus on manifolds, differential geometry, tensor calculus, General Relativity, Lie algebras, Lie groups, transformation groups, jet spaces, and the variational calculus. It is included with Maple.

Software for use with Matlab

Software for use with Maxima

Maxima[23] is a free open source general purpose computer algebra system which includes several packages for tensor algebra calculations in its core distribution. It is particularly useful for calculations with abstract tensors, i.e., when one wishes to do calculations without defining all components of the tensor explicitly. It comes with three tensor packages:[24]

  • itensor for abstract (indicial) tensor manipulation,
  • ctensor for component-defined tensors, and
  • atensor for algebraic tensor manipulation.

Software for use with R

  • Tensor[25] is an R package for basic tensor operations.
  • rTensor[26] provides several tensor decomposition approaches.
  • tensorBF[27] is an R package for Bayesian Tensor decomposition.
  • MTF[28] Bayesian Multi-Tensor Factorization for data fusion and Bayesian versions of Tensor PCA and Tensor CCA. Software: MTF

Libraries

  • Redberry[29] is an open source computer algebra system designed for symbolic tensor manipulation. Redberry provides common tools for expression manipulation, generalized on tensorial objects, as well as tensor-specific features: indices symmetries, LaTeX-style input, natural dummy indices handling, multiple index types etc. The HEP package includes tools for Feynman diagrams calculation: Dirac and SU(N) algebra, Levi-Civita simplifications, tools for calculation of one-loop counterterms etc. Redberry is written in Java and provides extensive Groovy-based programming language.
  • libxm[30] is a lightweight distributed-parallel tensor library written in C.
  • FTensor[31] is a high performance tensor library written in C++.
  • TL[32] is a multi-threaded tensor library implemented in C++ used in Dynare++. The library allows for folded/unfolded, dense/sparse tensor representations, general ranks (symmetries). The library implements Faa Di Bruno formula and is adaptive to available memory. Dynare++ is a standalone package solving higher order Taylor approximations to equilibria of non-linear stochastic models with rational expectations.
  • vmmlib[33] is a C++ linear algebra library that supports 3-way tensors, emphasizing computation and manipulation of several tensor decompositions.
  • Spartns[34] is a Sparse Tensor framework for Common Lisp.
  • FAstMat[35] is a thread-safe general tensor algebra library written in C++ and specially designed for FEM/FVM/BEM/FDM element/edge wise computations.
  • Cyclops Tensor Framework [36] is a distributed memory library for efficient decomposition of tensors of arbitrary type and parallel MPI+OpenMP execution of tensor contractions/functions.
  • TiledArray[37] is a scalable, block-sparse tensor library that is designed to aid in rapid composition of high-performance algebraic tensor equation. It is designed to scale from a single multicore computer to a massively-parallel, distributed-memory system.
  • libtensor [38] is a set of performance linear tensor algebra routines for large tensors found in post-Hartree-Fock methods in quantum chemistry.
  • ITensor [39] features automatic contraction of matching tensor indices. It is written in C++ and has higher-level features for quantum physics algorithms based on tensor networks.
  • Fastor [40] is a high performance C++ tensor algebra library that supports tensors of any arbitrary dimensions and all their possible contraction and permutation thereof. It employs compile-time graph search optimisations to find the optimal contraction sequence between arbitrary number of tensors in a network. It has high level domain specific features for solving nonlinear multiphysics problem using FEM.
  • Xerus [41] is a C++ tensor algebra library for tensors of arbitrary dimensions and tensor decomposition into general tensor networks (focusing on matrix product states). It offers Einstein notation like syntax and optimizes the contraction order of any network of tensors at runtime so that dimensions need not be fixed at compile-time.

知乎上有个问题:物理专业自学计算机应该学些什么?

题目大概是说他物理本科大四了,申请去美国读物理博士,但自己对计算机有很大兴趣,为了考虑以后的饭碗,想自学计算机。自己对计算机图形学有兴趣,希望得到一些建议。

回答的人不少,有几个人的回答震撼到我了。


第一个回答:

作者:陈然
链接:https://www.zhihu.com/question/23212279/answer/24061341
来源:知乎
著作权归作者所有,转载请联系作者获得授权。

个人站的角度不同,现在的答案基本都是从图形学的角度建议,我换个角度。

从研究生计算机科学做研究的角度来讲,我认为本科最适合的专业首先是物理,其次是数学,再次才是计算机。数学学的太抽象,抽象层次太高,研究现实问题的人往往处在鄙视链的底端。计算机学的太底层,对于概率论、随机过程、线性代数等学科学的太少,不了解建模分析的那套方法论。而物理学一方面的数学知识足够多,另外一方面主要研究的方法也是对这个世界建模,然后进行观测,这与前沿的机器学习领域做的事情几乎是一样的。至于会不会写代码,其实科研里面要写的代码不多,主要都是在推公式,研究如何设计模型使得其拥有很多良好的性质。代码很多时候写写matlab就可以了。

所以恭喜你,如果你想转行做CS的科研,你有很大的优势。事实上,很多CS领域的大神都是学物理的,比如华人图灵奖得主姚期智,CMU Machine Learning领域大神Alex Smola。

如果你真的励志做CS相关的研究的话,物理PhD的选择最好到CS极好的学校,比如UCB, CMU, MIT, Stanford,一般这些学校都可以辅修Machine Learning的Master, 多修CS相关的课程,都是很好的选择。Coursera上的Machine Learning课程都很入门,如果想进阶,你可以看看CMU 10701(Machine Learning), 10702(Statistical Machine Learning), 10708(Probabilitic Graphic Model) 课程的课件、视频、相关阅读和作业,基本都不需要写代码,主要是数学证明、建模和分析。

当然,如果你想做应用而不是做理论什么的,当我以上没说。


第二个回答:

作者:Milo Yip
链接:https://www.zhihu.com/question/23212279/answer/23940891
来源:知乎
著作权归作者所有,转载请联系作者获得授权。

其实在计算机图形学里有很多与物理相关的课题,例如物理模拟(刚体、柔体、流体等)、基于物理的渲染(光源、材质、媒介等),还有一些涉及物理的跨学科课题,例如生物力学、基于物理的声音渲染、光场摄影等等。简单介绍几本书

有空可以看看最前沿的图形学发展,特别是当中涉及物理部分的

看看那些文献的作者网站,可能会发现不少研究者都有物理背景。

我觉得能做理论物理研究的人,其智商做哪种科学问题也不大吧。而计算机科学之本就是算法,无论是哪一个应用方向都是必须的,建议深入学习。个人不建议浪费时间在API、OS、UI编程上面,不竟这些东西许多人都能做,有研究能力的人可以探索新世界。因为游戏、动画、电影这些娱乐工业,计算机图形学的职位在行业上也有需求。


第三个回答:

作者:徐枭涵
链接:https://www.zhihu.com/question/23212279/answer/27455609
来源:知乎
著作权归作者所有,转载请联系作者获得授权。

我是理论物理大二的…给师兄回答这个问题吧。
================================================
当师兄看到很多API繁杂但无从下手,答案是唯一的:多写。
再说说我的建议吧,
掌握一门快速开发语言:强力推荐Python,因为有scipy和numpy存在。可以把这玩意当Matlab用。我做过测试,进行大矩阵乘法numpy的速度比matlab快50%,这二者都比mathematica快20倍…而且python有一个很好的web framework django,结合html css,可以写出不错的网站(比如知乎)如果你是OI的,数据结构神马不用太多虑,直接上计算机图形学吧。
建议可以OpenGL+PhysX(物理引擎)+.NET/Cocoa(win/mac)一起做一个项目,像我做的是一个无人机控制的仿真平台。这个对于学习三这玩意都有效。特别是mvc的构建方式。
另外还有一个很轻巧的构建计算机图形学的方式是webgl,很漂亮。或者直接unity3d(游戏引擎)引擎亦可。
如果你会了html也就是如果你会了javascript,建议入手node-webkit,二十分钟构建一个跨平台桌面应用。对于交互UI我比较倾向于两种,一个是轻量级的html+js的形式,好看简单,一个是unity虚拟现实,我最近做的一个项目就是这两种结合的模式。强力推荐CUDA(GPU计算),物理口必备…想在自己的PC上模拟核聚变CUDA绝对是居家旅行,杀人放火必选。而且CUDA的模型天生是为物理学家设计的。同时需要学点cpp,可以把鄙校丁泽军老师计算物理A书上的习题全部CUDA一遍基本就练习的差不多了
micro.ustc.edu.cnML/DataMining我只看过一些些,这些东西如果自己写算法的话需要用c/cpp如果只是玩玩可以用python+一堆库的方式来搞。主要可能还是数据源吧。嵌入式&单片机,如果不慎入实验物理坑会点单片机嵌入式还是有必要的,入个树莓派玩玩ROS吧。从树莓派+arduino玩的方式入手玩起来很简单无压力,最练手的就是写机器人控制了。这个是从机械折腾到前段的。
树莓派既是典型的嵌入式Arm开发版,优势在于社区庞大。
arduino是一种高度简化后的单片机。比起51等用起来真的简单多了

移动开发:学习学习swift吧。玩玩iOS。。总是觉得Android怪怪的

学习轨迹:
1.熟练使用linux/unix(格式化硬盘一个月内可以生存)
2.选一个自己顺手的IDE(vim/emacs/VS),基本熟练cpp、python(均指一万行代码,可以写写计算物理习题)
3.搭建一个自己的服务器(using aws.amazon.com ec2)
4.写一个桌面app .net/cocoa,(学c#/o-c),在这里折腾OpenGL CUDA等
5.写一个绚烂的个人网站use Django&html5&css3&webgl
6.研究妹子回你短信速度和她对你好感度的关系(使用支持向量机/deep learning)
7.学习CUDA并在你的pc上模拟EAST using MHD model in FEA
(其实能跑出来一个N-S方程出来个卡门涡街就很好了)
8.学习单片机并且控制一架四轴飞行器给那个追了四年没追的女神泼一盆冷水(someone你丫两年以后给我等着)。
可以适当从ROS+树莓派入手,加上一些有意思的硬件比如kinect什么的,就很好玩,推荐学习OpenCV(人脸识别)+讯飞各种接口(语音)。

对了。。。工程控制论,或者什么ML,DataMining的数学比物理口的数学真的是弱爆了。一群不用解偏微分方程的渣渣。

顺便抛我的blog stlover.org(呃最近好像数据库挂了)
就这些差不多了…剩下做点小项目自己也就会了
=====================
操作系统建议看看,就是看看而已。。我大二选了操作系统课最后发现完全没听。
编译原理没有必要,想深入学推荐MIT的计算机结构和解释同时学习LISP


第四个回答:

作者:Joe Physwf
链接:https://www.zhihu.com/question/23212279/answer/102771418
来源:知乎
著作权归作者所有,转载请联系作者获得授权。
如果读完PhD在转计算机,真真是浪费了。计算机对高等物理那些基本不需要,倒是数学是很需要的,但PhD依然是浪费。
那些图形学,虽然涉及到物理,但是最多也是本科就够了,图形学的很多东西都是在投机取巧,那些有颠覆的理论基本上根物理无关,细节的东西都是在拼奇技淫巧。不是不懂物理,而是上帝的高度凡人根本无法企及。你想两面镜子相互反射这种东西,在计算机看来就是无限循环(卡死),但是上帝那里却是realtime的,一点都不卡。
其他很多计算机领域跟物理就更加没有关系了,互联网,大数据,人工智能都没有。如果你对两者都割舍不了的话,那你应该关注计算机基本理论这些东西。你对软硬件结合很感兴趣,但是这些难度不大,而且你一旦了解之后估计很快就失去兴趣了,因为很容易理解掌握。真正难的是计算机物理基础层面的东西,那才是真正软硬结合的地方。半个多世纪之前,贝尔实验室发明了三极管,现在半导体技术已经日渐迟缓了,量子计算机,量子传输这些技术充满想象。当然未来很难说,但发言权在于那些位于基础理论前沿的那些人,很明显你有机会。实用技术有时的确很吸引人,但那些都是细致末节,你穷尽一生改变的只是一枝一叶,并且或早或晚都将坠落。

我的感悟:

第一个回答站在常春藤留学生的视角给出了实用的建议。给我的感觉就是,国外的课程比国内大学的课程领先了太多了,似乎这些课程已经完全成熟和系统化了,而国内还比较杂,很多人还必须去看网络课程来学习。这从一个侧面能看出,国内学生相比国外学生这方面受教育的深度和看问题的视野是有差距的,而且这样网络封闭的话,很不好弥补。

第二个回答罗列了不少书籍,都是物理和游戏、计算等相关的计算机书籍。这类书籍国内也越来越多,不过不得不说的是,大多好的教材,似乎都是外国人写的,中国引入翻译版(书的好坏甚至还要取决于译者的水准)。也就是说,好的教材都是英文的,大家最好学好英文,方便自己掌握知识。这也提醒我们,我们与他们的差距还是很大的。

第三个回答深深震撼到我了。一个大二学生,已经对计算机技术掌握了这么多,真是不简单啊。我感觉他做的事情如果让我去做,没有几年是做不完的。其中他讲到了Python、C#编程,js编程、html、css、javascript(也许他还会java呢),swift,用到了U3D,还会使用SUDA,也玩开源硬件,arm编程,而且非常擅长Python(用Python结合其他框架做了网站,做了GUI编程等)。学习MachineLearning(机器学习)、DataMining(数据挖掘),还会OpenCV、讯飞API。这个答案是答主在2年前回答的,估计现在已经用到了Google、百度的接口(语音接口还是很强大的),做模式识别,可能还有很多我根本没有听过的,也不知道存在的技术。我非常佩服他,

第四个回答比较理性。他简单澄清了物理和计算机的关系,并建议去做最基本的事情。题主感谢了他,而且题主已经走上了计算物理的道路。“我现在业余时间主要关心机器学习方面的东西,因为背后的数学支持挺对我胃口。我自己的科研方向也正是量子计算,我还在尝试涉猎量子计算+机器学习的交叉。”题主这样回答。


我摘下眼镜,停下来想了想。

普通大众忙忙碌碌,做的事情对他们来说可能过于简单了。世界上就是有这么一小部分人,走在人类发展的前列。虽然和大家一样一日三餐,闲了也玩耍逗乐,但静下来的时候,很多人选择看电视打牌睡觉娱乐,而他们选择去钻研他们的兴趣。

上面的只是物理和计算机的话题。其实,无论是摄影,研究昆虫,或者是别的什么,只要是钻进兴趣里了,人生不会太枯燥,追求也就不会太乏味。我不想说谁的生活更有意义,至少,这么些人的其中一些人做的事,会影响很多人。我感觉,他们活着的意义更大一些吧。

有一篇文章说的比较清楚,可是复制不了。这是它的链接:http://shixinhua.com/imganalyse/201301/281.html

首先,8连通与4连通的区别很简单,如下所述:

本段来自百度文库:移步查看

四连通:同一像素在上、下、左、右四个方向有连通。

八连通:同一像素在上、下、左、右、左上角、左下角、右下角、右上角8个方向有连通。

如 A=[1 0 1 0 0 0

1 1 1 0 1 0

0 1 1 0 0 1]

用matlab函数bwlabel函数

[B num] = bwlabel(A,4)  %4连通得到

B =

1     0     1     0     0     0
1     1     1     0     2     0
0     1     1     0     0     3

num =

3

[B num] = bwlabel(A)   %8连通得到

B =

1     0     1     0     0     0
1     1     1     0     2     0
0     1     1     0     0     2
num =

2

这里num表示(0)中(1)块连通的数量。bwlabel函数采用按列搜索

的方法对连通区域进行扫描,因此可见4连通区域的值的序号标识,第一块为1,第二块(第五列中的块)为2,第三块(第六列中的块)为3。

但是在图像处理中,已知轮廓,要将轮廓内的部分进行填充时,会碰到“8连通边界”与“4连通边界”这个概念。按理来说,这个概念应该是类似于上面的定义的,但是在书本中的例子中,却没有看出来这种类比,导致不能理解。

 

本文转载自:http://blog.csdn.net/lxb316/article/details/4455254

作者:刘晓兵

环境:        windows xp
开发工具:    matlab 7.1
网站架构:    IIS 5.1 (我的win xp是简化版的,装IIS 6.0差很多DLL文件,就只好装IIS 5.1了)(网站用Apache架构也是可以实现的!)


1、安装MATLAB,五分钟就能搞定

安装的时候有两个选项(typical和custom),选择custom,也就是自定义需要安装的组件,以确保安装matlab web server组件
matlab 7.1注册码:
PLP:14-24872-36179-32308-22113-61986-33825-00564-45479-60426-10395-51330-
19488-62201-37785-19497-45389-18974-51073-03706-04875-59691-49786-28969-
00719-61582-14402-53787-33213-56814-33775-57022-14254-56498


查看全文

常用图像处理函数表

本表转载自:http://blog.sina.com.cn/s/blog_89cb90270101eem9.html

表1 图像显示
函数名 功能说明 函数名 功能说明
colorbar 颜色条显示 montage 按矩形剪辑方式显示多帧图像
getimage 从坐标系中获取图像数据 immovie 从多帧索引图像中制作电影
image 建立显示图像 movie 播放电影
subimage 在同一图像窗口显示多个图像 trueszie 调整图像显示大小
imagesc 调整数据并显示图像 warp 显示图像为纹理映射表面
imshow 图像显示 zoom 二维图形放大或缩小
表2 图像文件输入/输出
函数名 功能说明 函数名 功能说明
imread 图像文件读入 load 将以mat为扩展名的图像文件调入到内存
imwrite 图像写出 save 将内存变量中图像保存到mat文件中
dicomread 读取DICOM图像 dicomwrite 输出DICOM图像
iminfo 查看图形信息    
表3 图像像素值及其统计
函数名 功能说明 函数名 功能说明
impixel 返回选定图像像素颜色值 imcontour 画图像数据轮廓(等高线,等值线)
improfile 图像中沿一个路径的数据值计算 imhist 求图像数据直方图
mean2 求均值 corr2 求相关系数
std2 求标准差    
表4 图像分析
函数名 功能说明 函数名 功能说明
edge 灰度图像边缘检测 qtgetblk 获得四叉树分解块值
qtecomp 执行四叉树分解 qtsetblk 设置四叉树分解块值
表5 图像增强及平滑
函数名 功能说明 函数名 功能说明
imadjust 对比度调整 medfilt2 二维中值滤波器
histeq 直方图均衡 ordfilt2 顺序统计滤波器
imnoise 给图像增加噪声 wiener2 二维自适应除噪滤波器
表6 图像线性滤波及二维线性滤波器设计
函数名 功能说明 函数名 功能说明
conv2 二维卷积 freqz2 计算二维频率响应
convmtx2 计算二维卷积矩阵 fsamp2 用频率抽样设计二维FIR滤波器
convn 多维卷积 ftrans 用频率抽样转换二维FIRlbq
filter2 二维线性数字滤波器 fwind1 用一维窗口方法设计二维FIR滤波器
fspecial 产生预定义滤波器 fwind2 用二维窗口方法设计二维FIR滤波器
frespace 确定二维频率响应间隔    
表7 图像变换
函数名 功能说明 函数名 功能说明
fft 计算一维快速Fourier变换 dct 计算离散余弦变换
ifft 计算一维FFT的逆变换 idct 计算离散反余弦变换
fft2 计算二维FFT dct2 计算2D离散余弦变换
ifft2 计算二维逆FFT idct2 计算2D反离散余弦变换
fftn 计算多维FFT dctmtx 计算TCT矩阵
ifftn 计算多维逆FFT radon 计算Radon变换
fftshift 直流分量移到频谱中心    
表8 图像领域及操作
函数名 功能说明 函数名 功能说明
bestblk 选择块处理的块大小 colfilt 使用列方向函数进行领域运算
blkproc 对图像实行不同的块处理 im2col 重排图像块为矩阵列
col2im 重排矩阵列成图像块 nlfilter 进行一般领域计算
表9 二值图像操作
函数名 功能说明 函数名 功能说明
applylut 使用查找表进行领域操作 bwperim 确定二值图像中的目标边界
bwarea 计算二值图像中的目标区域 bwselect 选择二值图像中的目标
bweuler 计算二值图像中的欧拉数 dilate 对二值图像进行膨胀计算
bwfill 二值图像背景区域填充 erode 对二值图像进行寝蚀运算
bwlabel 标识二值图像中的连接成分 makelut 构造查找表(applylut)使用
bwmorph 二值图像形态运算    
表10 基于区域的图像处理
函数名 功能说明 函数名 功能说明
roicolor 根据颜色选择要处理的区域 roifilt2 对要处理区域滤波
roifill 在任意区域内平滑差值 roipoly 选择要处理的多边形区域
表11 图像几何运算
函数名 功能说明 函数名 功能说明
imcrop 图像剪裁 imrotate 图像旋转
imresize 图像大小调整 interp2 二维数据差值
表12 图像颜色图操作
函数名 功能说明 函数名 功能说明
brighten 颜色图像变亮或变暗 colormap 设置获取图
cmpermute 重新排列颜色图中的颜色 imapprox 由颜色较少的图像近似索引图像
cmunique 寻找唯一的颜色图及相应的图像 rgbplot 绘制RGB颜色图
表13 颜色控件转换
函数名 功能说明 函数名 功能说明
hsv2rgb 将HSV颜色转化为RGB颜色值 mtsc2rgb 将NTSC值转换为RGB颜色空间值
rgb2hsv 将RGB颜色值转换为HSV颜色值 rgb2ntsc 将RGB值转换为NTSC颜色空间值

【转载自百度文库】

第3章 MATLAB数字图像处理工具箱

3.1 MATLAB图像预处理

3.1.1图像处理的基本操作

1. 读入并显示一幅图像

clear               %清除所有的工作平台变量

close all           %关闭已打开的图形窗口

I=imread (‘pout.tif’);   %读取图像pout.tif(该图像是图像处理工具箱自带的图像),

%存储在一个名为I的数组中

imshow(I)           %显示图像I

查看全文