python rgb转hsv_使用Python / PIL检测HSV颜色空间(来自RGB)的阈...
好的,这确实有效(修复了一些溢出错误):
import numpy, Image
i = Image.open(fp).convert('RGB')
a = numpy.asarray(i, int)
R, G, B = a.T
m = numpy.min(a,2).T
M = numpy.max(a,2).T
C = M-m #chroma
Cmsk = C!=0
# Hue
H = numpy.zeros(R.shape, int)
mask = (M==R)&Cmsk
H[mask] = numpy.mod(60*(G-B)/C, 360)[mask]
mask = (M==G)&Cmsk
H[mask] = (60*(B-R)/C + 120)[mask]
mask = (M==B)&Cmsk
H[mask] = (60*(R-G)/C + 240)[mask]
H *= 255
H /= 360 # if you prefer, leave as 0-360, but don't convert to uint8
# Value
V = M
# Saturation
S = numpy.zeros(R.shape, int)
S[Cmsk] = ((255*C)/V)[Cmsk]
# H, S, and V are now defined as integers 0-255
它基于维基百科对HSV的定义.随着时间的推移,我会仔细研究它.肯定有加速和错误.如果您发现任何问题,请告诉我.干杯.
结果:
从这个色轮开始:
我得到这些结果:
色调:
值:
饱和:
python rgb转hsv_使用Python / PIL检测HSV颜色空间(来自RGB)的阈...相关推荐
- HSV颜色空间转RGB(C语言代码),ESP32使用RMT驱动WS2812B,七彩流光灯光效果
HSV(Hue, Saturation, Value) 模型中,颜色的参数分别是:色调(H),饱和度(S),明度(V).它更类似于人类感觉颜色的方式,颜色?深浅?明暗?通过这种方式可以很直观的改变渲染 ...
- HSV颜色空间和RGB颜色空间相互转换C语言实现
HSV(Hue, Saturation, Value)是根据颜色的直观特性由A. R. Smith在1978年创建的一种颜色空间, 也称六角锥体模型(Hexcone Model).这个模型中颜色的参数 ...
- 【主色提取】HSV 颜色空间与 RGB 颜色空间互相转化的公式和代码
系列文章目录 第二章 主色提取之颜色空间转化 目录 系列文章目录 文章目录 前言 一.HSV 和 RGB 颜色空间 二.颜色转化 1. RGB to HSV 2. HSV to RGB 三. 完整代码 ...
- 颜色空间:RGB、CIE XYZ、Lab和HSV颜色空间
颜色空间也称彩色模型和彩色空间,它的用途是在某些标准下用通常可接受的方式对颜色加以说明,本质上,颜色空间是坐标系统和子空间的阐述,其中每种颜色都由单个点表示.目前采用的大多数颜色空间都是面向硬件或面向 ...
- 【QT数字图像处理】(四)hsv颜色空间转rgb颜色空间
一.颜色模型 1.1 rgb颜色模型 1.2 hsv颜色模型 hsv颜色模型具有以下优点: 1.符合人眼对颜色的感觉: 2.hsv颜色模型中hsv三个坐标是相互独立的:当采用rgb颜色模型时,改变某一 ...
- HSV颜色空间及RGB转HSV公式
记录下自己HSV的理解 请了解了RGB形式的色彩表达方式再往下阅读 HSV也是一种颜色的表示方式 此处省去百度百科的介绍 HSV分别代表Hue 色调, Saturation 饱和度, Value 明度 ...
- 数字图像处理与Python实现-颜色空间转换-RGB颜色空间与HSV颜色空间转换
RGB颜色空间与HSV颜色空间转换 RGB颜色空间与HSV颜色空间转换 1. 前言 2. RGB颜色空间与HSV颜色空间转换描述 3. 代码实现 1. 前言 HSV(Hue, Saturation, ...
- Python+Opencv简易车牌识别(二):形态学运算,HSV颜色空间筛选与图像分割
注:这是依然一个简单的车牌识别demo 1.前言 在上一篇Python+Opencv简易车牌识别(一):基于HSV颜色空间的图像分割中,我们讲了如何仅基于颜色来进行简单粗暴的车牌分割.今天我们考虑对图 ...
- RGB颜色空间转换HSV颜色空间 RGB2HSV算法
这是最常用的RGB到HSV例程,还有一个额外的小优化(向除数添加1e-20f以避免需要将除法除以零): 讲解:--------------action---------------- 直接看这段代码很 ...
最新文章
- 多级反馈队列调度算法描述
- js操作节点对象-getElementById
- javascript有用小功能总结(未完待续)
- 容大打印机ip修改工具_M1芯片版Mac无法连接打印机怎么办?
- bzoj1996 [Hnoi2010]chorus 合唱队 区间dp
- 【kafka】Kafka消息压缩与解压与相关实验
- 百度系无人车创业公司领骏科技完成新一轮融资
- 史上最简单的matlab的CRC库函数使用(无繁杂参数)
- android业余手机开发,赚钱心得
- [CISCN2019 华东南赛区]Web11
- 【Android 屏幕适配】屏幕适配基础概念 ② ( 像素 px 与 密度无关像素 dip | 像素 px 与 密度无关像素 dip 在不同屏幕像素密度 dpi 下的换算关系 )
- 充电站网络安全风险危及电动汽车普及
- css背景图铺满整个屏幕
- 2021-04-30双螺杆挤出机与挤塑机之间有什么区别?
- Java中Map用法
- 全局变量和静态变量以及内存堆栈的关系
- ip白名单实现java
- ofd格式文件转换成pdf格式的方法
- 【注册表大法】教你如何给 Win11 开启传统右键菜单
- java 集成grizzly_java – Grizzly Jersey仅在Localhost上收听
热门文章
- C++ji将txt文件数据zzhua转为数组;
- mysql front 图表,MySQL图表数据统计常用方法
- 腾讯内部转岗_即将退出历史舞台,腾讯微博将于9月28日停止服务和运营
- 《地理信息系统导论》第6章 几何变换 复习题
- 毕业设计 - 基于java web的百货中心供应链管理系统【源码+论文】
- 计算机如何连接新的无线网络,换了个新wifi怎么设置?
- 课堂随笔1 - MOOC网站日志分析 1
- T2080 U-BOOT与OS内核移植 准备篇(一)——开发调试环境简介
- 应付账款账龄分析模板_(EXCEL 应付账款账龄分析模板的公式怎么设置)excle账龄划分公式...
- BDD100K自动驾驶数据集格式转YOLO格式