RGB转换HSV色彩空间(Python+MATLAB实现)

原创 云深之无迹 2021-05-27 11:36

我们正式的来看一下这些代码原理的实现,这么多循迹的运用就是没有人写,真鸡儿过分。


闲话不多说,先放个转换色彩空间的代码来看看:

# Python3 program change RGB Color# Model to HSV Color Modeldef rgb_to_hsv(r, g, b):    # R, G, B values are divided by 255    # to change the range from 0..255 to 0..1:    r, g, b = r / 255.0, g / 255.0, b / 255.0    # h, s, v = hue, saturation, value    cmax = max(r, g, b)  # maximum of r, g, b    cmin = min(r, g, b)  # minimum of r, g, b    diff = cmax-cmin   # diff of cmax and cmin.    # if cmax and cmax are equal then h = 0    if cmax == cmin:        h = 0    # if cmax equal r then compute h    elif cmax == r:        h = (60 * ((g - b) / diff) + 360) % 360    # if cmax equal g then compute h    elif cmax == g:        h = (60 * ((b - r) / diff) + 120) % 360    # if cmax equal b then compute h    elif cmax == b:        h = (60 * ((r - g) / diff) + 240) % 360    # if cmax equal zero    if cmax == 0:        s = 0    else:        s = (diff / cmax) * 100    # compute v    v = cmax * 100    return h, s, vprint(rgb_to_hsv(0, 51, 238))

作用是RGB空间转到HSV的空间

一开始的计算过程很简单

#R、G、B值除以255

#更改范围从0.255到0.1。有点像归一化的意思,当然也可以写一下关于归一化的通式是什么样子的:

n-min-----max-min

中间的横杠是除号,假装是除号。。。

  • 设 (r, g, b) 分别是一个颜色的红、绿和蓝坐标,它们的值是在 0 到 1 之间的实数

  • 设 max 等于 r, g, b 中的最大者

  • 设 min 等于 r, g, b 中的最小者

转换公式

也可以看这个,都是一样的

  r, g, b = r / 255.0, g / 255.0, b / 255.0    cmax = max(r, g, b)  # maximum of r, g, b    cmin = min(r, g, b)  # minimum of r, g, b    diff = cmax-cmin   # diff of cmax and cmin.    if cmax == cmin:        h = 0    elif cmax == r:        h = (60 * ((g - b) / diff) + 360) % 360    elif cmax == g:        h = (60 * ((b - r) / diff) + 120) % 360    elif cmax == b:        h = (60 * ((r - g) / diff) + 240) % 360    if cmax == 0:        s = 0    else:        s = (diff / cmax) * 100    v = cmax * 100

具体的转换公式就是这样

https://ww2.mathworks.cn/help/matlab/ref/rgb2hsv.html

对于一个理科狗来说,MATLAB嘤嘤嘤

HSV = rgb2hsv(RGB)hsvmap = rgb2hsv(rgbmap)

这个是语法

具体用法是:

HSV = rgb2hsv(RGB)将 RGB 图像的红色、绿色和蓝色值转换为 HSV 图像的色调、饱和度和明度 (HSV) 值。
hsvmap = rgb2hsv(rgbmap)将 RGB 颜色图转换为 HSV 颜色图。

启动!

>> rgb = prism(6)
rgb =
1.0000 0 0 1.0000 0.5000 0 1.0000 1.0000 0 0 1.0000 0 0 0 1.0000 0.6667 0 1.0000


>> hsv = rgb2hsv(rgb)
hsv =
0 1.0000 1.0000 0.0833 1.0000 1.0000 0.1667 1.0000 1.0000 0.3333 1.0000 1.0000 0.6667 1.0000 1.0000 0.7778 1.0000 1.0000

先直接转换一下看看结果


再转回去也得说一下,不想敲代码的可以,可以在MATLAB里面输入以下的一串东西:

openExample('graphics/Hsv2RgbColormapExample')
hsv = [.6 1 1; .6 .7 1; .6 .5 1; .6 .3 1; .6 0 1];
rgb = hsv2rgb(hsv);surf(peaks);colormap(rgb);colorbar

C:\Users\CY-306\Documents\MATLAB\Examples\graphics

这些例子可以在计算机的这个位置找到

评论
  • 一、差分探头的原理‌高压差分探头属于功能隔离型探头,但不属于绝对完全隔离的探头‌,这一结论是由它的技术设计和性能特性决定的。又因为高压差分探头能安全地测试高压信号,所以被称作传统意义上的隔离探头。根据测量量程和应用场景的差异,有源差分探头主要分为低压型与高压型两个大类:低压型有源差分探头通常针对毫伏级到百伏级的小信号测量,带宽更高,精度表现更优,但耐压能力有限,一般用于信号完整性测试、低电压接口信号测量等场景;高压型有源差分探头则针对百伏到数千伏的高压场景设计,内置专门的电气隔离模块,兼顾精度与
    ZLPROBE 2026-06-01 15:06 1660浏览
  • 前言电子密码器是电子银行的安全工具,电子密码器内置密码生成芯片,生成的动态密码可以对电子银行对外支付进行身份认证,客户无需安装任何程序即可在多渠道使用。下面是中国银行中银e令(E‑Token),也常被称为动态口令牌、电子密码器,是网银和手机银行对外转账时的核心安全认证硬件。正面:印有中国银行LOGO、序列号、有效期,LCD屏幕显示6位动态数字口令,并标注安全提示“切勿向任何人泄露动态口令”。​背面:印有银行官网、手机银行网址与客服热线95566。下面开始进行拆解。背面PCB板。正面PCB板。显示
    短歌行 2026-05-29 21:33 1384浏览
  •   知是行的主意,行是知的功夫;知是行之始,行是知之成。——王阳明 在前篇中,我们已经把数字芯片的“四大基石”全部凑齐了:0 和 1(电压高低):代表现实世界的所有信息。逻辑门(与或非、异或):负责做条件判断和计算(组合逻辑)。时钟(CLK 鼓点):负责指挥全军,步调一致。D触发器(DFF/寄存器):负责死守记忆,到点才更新。 让我们从纸上谈兵进入实战,访问在线电路仿真实验网站—— Falstad​ (https:/www.falstad.com/circ
    嵌入式开发之道 2026-06-07 13:16 1135浏览
  • 前言变压器是开关电源的核心部分,有磁芯,骨架和线包组成,实现电生磁和磁生电的转换。AC-DC手机电源适配器,个头最大的元件就是变压器了,绕着黄色绝缘胶带。拆下开关电源高频变压器,看一看内部线包是怎么缠绕的。一次侧特写。二次侧特写。剥离外层黄色绝缘胶带后,中间黑色块状为EE型高频铁氧体磁芯,两侧是塑胶绕组骨架,是高频电源变压器核心导磁部件。粗铜导线为主功率绕组(原边/副边大功率线圈),细线多为辅助供电绕组/反馈绕组,引脚焊在骨架侧边金属针脚上。外层黄色玛拉胶带起匝间、层间绝缘防护,拆除后裸露线圈与
    短歌行 2026-06-02 21:21 1996浏览
  •  概述基于规格书标称参数,AP2400的输入电压范围为5V-150V,最大输出电流能力为6A,是一款面向大功率LED照明场景的降压型恒流驱动芯片,采用SOP8封装,内置抖频与平均电流采样电路,本文对其电气特性与架构设计进行逐项分析。拓扑与控制架构分析AP2400采用固定频率PWM控制的降压恒流拓扑,需外部驱动功率MOS管,支持10mA~6A的宽范围输出电流配置。其控制环路采用平均电流模式采样架构,相较于峰值电流采样方案,可有效降低宽输入电压波动下的恒流偏差,适配电动车、摩托车等供电电压
    世微半导体_千羽 2026-06-01 16:13 1772浏览
  •       近期在闲鱼上淘到一个已病退的16G酷刃U盘,这个造型堪称经典,记得它刚出来的时候,曾经在京东买了三个8G的,至今还有一个在用,感觉造型轻薄,质量也是刚刚的。      早先买的U盘表面自己已经磨得不剩一字,这个看着还挺清晰,酷刃(Cruzer Blade),容量16GB,产自马来西亚。      原先的U盘用得好好的没想过要怎么去拆开看看,这个插上电脑上已然毫无反应。秉持着死马当活马医的精神,拆
    lyyinhe_xi 2026-06-11 16:04 686浏览
  •  我们生活在数字时代。 每天扫码支付、刷视频、在社交软件上聊天,无一不涉及到电子信息。“电子”意味着设备需要通电才能工作。手机没电会让人焦虑,电脑关机就与世界断开了连接。“信息”是具体的内容。一段文字、一首歌曲、一张照片、一个闪烁的红灯……这些都是信息。 问题来了:电子设备,究竟是如何处理丰富多彩的人类信息呢?答案是:通过“数字”。 一、万物皆由数,如何把现实世界塞进芯片? 色不异数,数不异色,色即是数,数即是色,受想行识,亦复如是。——改编自《
    嵌入式开发之道 2026-06-03 23:44 1015浏览
  • 在晶振(晶体频率控制元件)行业中,高频和低频的划分并没有一个绝对的、全球统一的法律标准,而是由制造工艺、振动模式(切型)以及应用市场共同决定的。作为国内拥有30多年历史的专业频率控制方案商,深圳市晶科鑫实业有限公司(SJK)在日常接待客户选型时,经常遇到工程师询问:“低频和高频到底是怎么界定的?无源谐振器和有源振荡器的高低频区分是一样的吗?”今天,我们就结合SJK的产品矩阵与工艺标准,为大家彻底理清晶振高低频的划分逻辑。首先针对这个问题,我们需要拆开来看:首先看通用的划分界限,再看无源晶振(Cr
    SJK晶科鑫 2026-05-29 13:38 952浏览
  • 本次测试说明以四项指标进行量化测试在相同的测试条件与环境下,我们使用分光辐射亮度计等专业量测设备,针对不同显示技术的多款电视机型进行评估,并以中立客观的立场,依据以下四项指标进行实测与分析,以比较 RGB Mini LED 电视相较于其他技术的画质优势程度。在测试流程、量测以及结果分析过程中,未受到委托方任何干预。测试机型(型号)RGB Mini LED:100ZX1SQuantum Dot + Mini LED: 85Z875R传统机型(广色域 LED):65M550R测试结果① 最大亮度实测
    百佳泰测试实验室 2026-06-05 14:42 1130浏览
  • 过去两年,我们在大模型上的焦虑往往源于“连接”——网络卡顿、数据泄露、按量付费的账单。但瑞芯微在2025年三季度发布的RK182X,或许能让我们松一口气。这颗全球首款3D封装端侧大模型协处理器,首次在本地实现了7B参数模型的流畅运行(近100 Tokens/s),且能效比提升了6倍。目前,它已悄然导入数百个行业项目,商业化落地速度远超预期。RK182X的出现,印证了一个判断:AI计算正在经历“去中心化”。端侧AI并非云端的附庸。就像PC没有因为互联网消失一样,本地算力因其“实时响应(低延迟)、数
    启扬ARM嵌入式 2026-06-05 09:09 245416浏览
  • 在工业自动化、物联网、电力新能源等领域全速升级的当下,嵌入式核心板早已不是简单的“算力载体”,而是决定设备稳定性、扩展性与落地速度的核心部件。飞凌嵌入式FET153-S核心板,基于全志工业级T153处理器精心打磨,凭借4×A7与RISC-V多核异构架构、成熟Linux系统、工业级品质与全国产化配置,精准击中工控、物联网等场景的开发痛点,成为嵌入式产品迭代的优质选择。 飞凌嵌入式FET153-S核心板的竞争力,首先体现在创新的多核异构计算架构。它搭载全志专为工业场景打造的T153处理器,
    飞凌嵌入式 2026-06-11 15:21 492浏览
  • 前言美的电磁炉作为市场主流品牌,拥有‌C22-WH2237‌、‌MC-E35C02‌等多款热门型号,覆盖家用至商用场景,具备高效聚能与安全保护特性。今天来拆解一个美的电磁炉,给大家分享一下美的电磁炉的内部结构设计,以供学习借鉴。美的多功能电磁炉,型号C21-WK2102,额定功率2100W,额定电压220V~,额定频率50Hz。上壳部分,就是壳体加黑晶板的粘合。说一下黑晶板吧,黑晶板的横向导热率几乎为零,但是纵向导热能力却较强;因此不会通过面板横向传热,也不会使锅具周围的面板发烫,从而使得消费者
    短歌行 2026-05-29 20:27 1337浏览
  •   传说中上帝7天创造了世界。我们也准备花1周带你从零开始,亲手“造”出能点灯的微型计算机。 为什么要学这个? 科学技术是第一生产力,数字化技术已经成为现代社会的底座。如果你是: 零基础小白:快速入门FPGA/芯片设计,为入行找工作打下基础软件工程师:快速入门FPGA/芯片设计,理解数字化技术的底层原理技术管理者:了解数字技术开发人员干的是哪些事儿,能做出更明智的技术决策投资者/创业者:了解芯片和计算的根本原理,能看透技术趋势的本质 那
    嵌入式开发之道 2026-06-03 23:38 1021浏览
  • 隔离芯片的核心在于其内部的“隔离栅”。不同的“内功心法”——即隔离技术——塑造了各自独特的性能特性。光耦隔离 (Optocoupler - Opto) 利用光作为物理介质传递信号。输入端的LED发光,被输出端的光敏器件(如光电晶体管或光电二极管加放大器)接收并转化为电信号。这项技术成熟且成本相对较低(尤其在简单应用中),具备高隔离电压(可达10kV以上)和良好的抗共模干扰能力。然而,其缺点也比较明显:速度受限于LED开关速度和光生载流子寿命,带宽通常低于10Mbps;功耗较高,因为LED驱动需要
    扎陵半导体_Kyle 2026-05-29 16:11 507浏览
  • 5G、AI和云计算的蓬勃发展正驱动数据量呈爆炸式增长,对设备间数据传输速度的需求永无止境。在超越我们熟知的USB4(40Gbps)和PCIe5.0(32GT/s)的领域,高速接口芯片正经历着一场激动人心的技术竞赛。速度的竞争已至白热化。作为服务器和PC内部互连的基石,PCIExpress(PCIe)持续进化,PCIe6.0标准(64GT/s,采用PAM4调制)已经发布,而PCIe7.0(128GT/s)也已提上日程,其核心挑战在于管理通道损耗和信号完整性。与此同时,CXL(ComputeExpr
    扎陵半导体_Kyle 2026-05-29 16:09 140673浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦