獲取顏色名的m函數:

function cname = colorname(r,g,b)

hsv = rgb2hsv(r,g,b) ;

h = hsv(:,:,1);

s = hsv(:,:,2);

v = hsv(:,:,3);

sprintf('h:%.2f,s:%.2f,v:%.2f',h,s,v)

if(v < 0.2  && s < 0.5)

if(h >= 0.165 && h <= 0.54 && v > 0.15 )

cname = '黑綠色';

else

cname = '黑色';

end

elseif((v > 0.9 && s < 0.04) || (v > 0.95 && s < 0.1) || (v > 0.98 && s < 0.15))

cname = '白色';

elseif ((v >= 0.3 && s < 0.18) || (v >= 0.15 && s < 0.1))

if(v > 0.7)

if(s > 0.15)

if(h <= 1/12 || h >= 11/12)

cname = '淺紅灰色';

elseif(h >= 1/12 && h <= 0.17)

cname = '淺黃灰色';

elseif(h >= 0.165  && h <= 0.54)

cname = '淺綠灰色';

elseif(h >= 5/12 && h <= 7/12)

cname = '淺藍灰色';

elseif(h >= 0.72 &&  h <= 9/12)

cname = '淺藍紫灰色';

elseif(h >= 9/12 && h <= 11/12)

cname = '淺紅灰色';

end

else

cname = '淺灰色';

end

elseif(v > 0.5)

cname = '灰色';

elseif(v > 0.4)

cname = '深灰色';

else

cname = '黑灰色';

end

else

if(h <= 1/12 || h >= 11/12)

if(h <= 1/12 && h >= 0.05)

if(s < 0.5)

if(v < 0.65)

cname ='褐色';

else

cname = '茶色';

end

elseif(v > 0.8)

cname = '橙色';

else

cname = '褐色';

end

elseif(h >= 11/12)

if(v < 0.6)

cname = '梅紅色';

elseif(s < 0.5)

if(v > 0.8)

cname = '玫瑰紅色';

else

cname = '粉紅色';

end

else

cname = '紅色';

end

elseif(h < 0.012)

if(s > 0.8 && v > 0.8)

cname = '紅色';

elseif(s < 0.3 && v < 0.6)

cname = '深褐色';

elseif(s < 0.3)

cname = '粉酒紅色';

elseif(v < 0.6)

cname = '深紅色';

else

cname = '酒紅色';

end

else

if(v > 0.8)

cname = '橙紅色';

else

cname = '咖啡色';

end

end

elseif(h >= 1/12 && h <= 0.17)

if(h < 0.09 && s < 0.6)

cname = '黃膚色';

elseif(h < 0.12)

if(s > 0.7 && v > 0.7)

cname = '淺橙色';

else

cname = '土黃色';

end

elseif(h < 0.15)

cname = '金色';

elseif(s < 0.41 && v > 0.7)

cname = '淺黃色';

elseif(s < 0.85)

cname = '檸檬黃色';

elseif(v < 0.4)

cname = '橄欖色';

elseif(v < 0.6)

cname = '深黃色';

else

cname = '黃色';

end

elseif(h >= 0.165  && h <= 0.53)

if(h < 0.25)

cname = '橄欖綠色';  %又名酸橙色

elseif(h < 0.28)

cname = '黃綠色';

elseif(h < 0.35)

if(s < 0.6)

if(s < 0.4)

cname = '淺綠色';

else

cname = '薄荷綠色';

end

elseif(v > 0.7)

cname = '鮮綠色';

elseif(v < 0.3)

cname = '深綠色';

else

cname = '綠色';

end

elseif(h < 0.46)

cname = '海綠色';

elseif(v > 0.7)

if(v > 0.9)

if(s > 0.9)

cname = '青綠色';

else

cname = '淺青綠色';

end

else

cname = '水綠色';

end

else

cname = '青色';

end

elseif(h >= 0.53 && h <= 7/12)

if(s > 0.7)

if(v > 0.7)

cname = '天藍色';

else

cname = '深青色';

end

else

cname = '淡藍色';

end

elseif(h >= 7/12 && h <= 0.72)

if(v < 0.55)

cname = '深藍色';

elseif(s > 0.85)

cname = '藍色';

elseif(s < 0.4 && v > 0.7)

cname = '粉藍色';

elseif(s < 0.9)

if(v > 0.8)

cname = '淺藍色';

elseif(s < 0.5)

cname = '灰藍色';

elseif(s < 0.6 && v > 0.6)

cname = '紫藍色';

else

cname = '靛藍色';

end

else

cname = '藍色';

end

elseif(h >= 0.72 &&  h <= 0.8)

if(v < 0.5)

cname = '深紫色';

elseif(v > 0.8)

cname = '淡紫色';

else

cname = '藍紫色';

end

elseif(h >= 0.8 && h <= 11/12)

if(s > 0.4)

if(v < 0.7)

if(s > 0.85)

cname = '紫羅蘭藍色';

else

cname = '梅紅色';

end

else

cname = '粉紅色';

end

else

cname = '灰紫色';

end

end

end

matlab rgb 含义,matlab把rgb轉為顏色名相关推荐

  1. 【颜色空间转换大集合】RGB到YIQ,RGB到HSI和HSI到RGB,RGB到YcbCr,RGB到XYZ颜色转换matlab代码的Demo,含详细的解释

    废话不说,先上图, 实现方式:matlab 实现功能: 实验目标 了解图像颜色空间的转换关系. 了解图像的文件结构. 实验内容 完成如下颜色空间的转换.(4 Points) RGB -> YIQ ...

  2. matlab实现rgb转ycgcr以及rgb转hsi

    matlab中自带了rgb转ycbcr的函数rgb2ycbcr.m,但是没有rgb2ycgcr.m,自己根据如下公式实现了该转换,以下代码可参考Github. [ Y C g C r ] = [ 16 ...

  3. matlab rgb 矩阵,Matlab中rgb2ind函数用法

    目录 rgb2ind将 RGB 图像转换为索引图像 语法 [X,cmap] = rgb2ind(RGB,Q) [X,cmap] = rgb2ind(RGB,tol) X = rgb2ind(RGB,i ...

  4. 简要叙述matlab的含义,1,简述MATLAB组成部分? 2,说明使用M文件编辑/调试器的方法和优点? 3,存储在工作空间中的数组能编辑吗...

    匿名用户 1级 2012-05-17 回答 我也考这个....祝你好运 1,简述MATLAB组成部分? (1)开发环境(development Environment); (2)MATLAB数学函数库 ...

  5. matlab 面 颜色,matlab曲面颜色

    利用 colorbar 指令,可顯示 MATLAB 如何以不同顏色來代表曲面的高度,例如若先輸入「peaks」,再輸入「colorbar」,就可以得到下列圖形: Example 1: 04-三維立體繪 ...

  6. matlab中fdyn,Matlab的用法总结

    1. 对序列进行洗牌 randperm() randperm()产生随机的序列 %if filepaths 是一个5*1的结构体,then cshuffle = randperm(length(fil ...

  7. matlab 倾斜矫正,matlab图像倾斜校正

    4 图像颜色畸变校正介绍图像颜色畸变现象可以是由摄像器材导致,也可以是由于真实环境本身就偏 色导致,还有的是由于图像放置过久氧化.老化导致.无论其产生的原因如何, 其校正方法都是类似的.如果用 Mat ...

  8. 基于matlab山脊线,基于Matlab的标记分水岭分割算法

    lyqmath 1 综述 Separating touching objects in an image is one of the more difficult image processing o ...

  9. matlab gif生成器,matlab制作及生成avi,gif动画

    一.动画的制作 Matlab中动画实现的方法主要有下面三种 1.电影动画:从不同的视角拍下一系列对象的图形,并保存到变量中,然后按照一定的顺序像电影一样播放. http://www.matlabsky ...

最新文章

  1. python编程从入门到精通pdf-终于晓得python编程从入门到精通
  2. mysql库操作、表操作
  3. simulink m序列仿真(待验证)
  4. android支持色彩管理软件,安卓首家!OPPO全链路色彩管理系统亮相:全局支持10bit照片视频...
  5. AOP原理解析及Castle、Autofac、Unity框架使用
  6. 数字信号处理实验matlab版答案,数字信号处理习题答案及matlab实验详解.pdf
  7. Num48 boss---02(pdm翻转,持久表现抽取,用户登退,消息提示,修密,自定义拦截器)...
  8. 各种模糊控制算法案例word+程序+建模过程
  9. RGB转灰度的几种算法
  10. Python爬虫教程,采集bilibili弹幕并生成词云
  11. 天基实业投资理财需了解的基础知识
  12. 一个人赶着鸭子去每个村庄卖,每经过一个 村子卖去所赶鸭子的一半又一只。 这样他经过了 七个村子后还剩 两只鸭子,问问他出发时共赶多少只鸭子?经过每个村子卖出多少只鸭子?
  13. Apple Music(应用内打开Apple Music)
  14. matlab sisotool工具DEMO
  15. Java数据类型总结
  16. 【Linux】linux 查看服务器配置:核数和内存
  17. Unity 3D-learning 打飞碟游戏改进版ben
  18. 线上沉浸式购物,VR购物让店铺营销更有差异化!
  19. 挖掘行业长尾关键字以及词库的步骤
  20. 学习vue源码(14)就慢慢由表入里学习diff

热门文章

  1. 使用ChatGPT+Xmind一键生成思维导图,简直泰裤辣
  2. Day108.尚医通:医院模拟系统接口对接 - 医院|科室|排班 增删改分页条件查询
  3. 电脑开机是正常的,但是一重启就黑屏
  4. Python 之父爆料:明年至少令 Python 提速 1 倍!
  5. 中式红木整装定制——非凡韵味
  6. 蔬菜大棚原理_温室大棚的工作原理及温室大棚分类
  7. 项目开发——【流程图】软件工程程序流程图详解《如何正确绘制项目开发流程图》
  8. 回溯法(C++) 部落卫队问题
  9. 调整JVM虚拟机内存大小
  10. JDBC编程六步中遇到的问题