计算两个颜色相似度

news2024/11/17 11:50:41

1.计算两个颜色相似度的公式如下:
  颜色QColor1(R1, G1, B1)转成h1,s1,v1
  颜色QColor2(R2, G2, B2)转成h2,s2,v2

  detah=h1-h2
  detas=s1-s2
  detav=v1-v2

  len = qsrt(detah * detah + detas * detas + detav * detav)
  if (len > 1) len = 1.0

  similarity = (1.0 - len) / 1.0

注:以上公式的h,s,v已经归一化

2.颜色相似度原理。
  把RGB颜色空间转为归一化的hsv颜色空间, 转化hsv颜色空间的三维坐标点,
  计算两个颜色的三维空间坐标点的距离,当两个颜色越相近,则两个颜色的
  坐标距离越接近于0, 反之,当两个颜色相差越远,则坐标距离越接近于1。

注:此处两个颜色相差最大的距离默认为1,理论上最大的距离是会超过1的, 从
   hsv颜色空间模型可以看出, 此算法默认大于1的颜色取为1。

 

3.计算QColor1和QColor2颜色相似度的算法步骤如下:
  3.1、把QColor1转为归一化的h1、s1、v1,把QColor2转为归一化的h2、s2、v2。
  3.2、h在hsv颜色空间中是角度, 把hsv转为三维空间坐标点(x, y, z)
       x1 = cos(h1) * s1
       y1 = sin(h1) * s1

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/70623.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

frp内网穿透(Mac远程连接公司windows)

文章目录1、需求:自己的电脑远程访问公司的windos电脑2、搭建内网穿透:准备工具3、安装运行3.1 服务端配置3.2 客户端配置4、远程连接1、需求:自己的电脑远程访问公司的windos电脑 自己电脑Mac连公司windows:通过Microsoft Remote…

JDK19都出来了~是时候梳理清楚JDK的各个版本的特性了【JDK10特性讲解】

JDK各个版本特性讲解-JDK10特性 lecture:波哥 一、JAVA10概述 2018年3月21日, Oracle官方宣布JAVA10正式发布 JAVA9和java10 都不是 LTS (Long-Term-Support)版本.和过去的JAVA大版本升级不同,这两个只有半年左右的开发和维护时间. 而JAVA11 也是就是18.9,才是JAVA之…

Cyanine5.5 Tyramide,Cy5.5 Tyramide,花青素Cy5.5 酪酰胺菁染料供应

试剂英文名称:Cyanine5.5 Tyramide,Cy5.5 Tyramide 试剂中文名称:花青素Cy5.5 酪酰胺 Item no:Y-R-3588 Formula:C48H52CIN3O2 MW:738.4 Purity:95% Storage:-20℃可长期保存&…

arthas在线监控和debug

文章目录一. arthas-tunnel-server1.1 制作镜像1.2 k8s部署arthas-tunnel-server1.3 docker-compose部署1.4 Redis缓存二. 源码本地启动2.1 启动后端2.2. 启动前端2.3 启动客户端官方文档 https://arthas.aliyun.com/doc/tunnel.html一. arthas-tunnel-server 1.1 制作镜像 D…

3年以上Android开发者,关于学习 Compose,我的经验总结和建议

缘起 又到一年快结束的日子了 这一年里经历了裁员,跳槽,跑路,也当过面试官面试一些同学。 经历过攻守的角色转换后,沉下心,回顾过往,不由得发出感叹,今年卷的不行。 无论是裁员还是跳槽&…

10 个你应该知道的强大的JavaScript代码片段

JavaScript 现在非常流行,尤其是在 Web 开发中。随着新的 ECMAScript 版本,JavaScript 语法有了很大的改进。因此,JavaScript语言现在具有许多强大且有趣的功能,我们可以作为开发人员在代码中使用它们。 另一件好事是&#xff0c…

跨域解决方法

1.JSONP 前端通过script标签的src属性将回调函数传给服务器,服务器拿到回调函数后,会将数据作为回调函数的参数并将该回调函数返回,前端这边拿到回调函数执行,就可以获取服务端的数据 非直接方式获取数据 并且只支持get&#xf…

PostgreSQL数据库存储结构

PostgreSQL数据库集簇是——多个数据库的集合。 初始化库集簇:INITDB –D $PGDATA来完成。(相当于oracle数据库dbca建库) pg_ctl -d $PGDATA可以启动数据库 对象标识符(OID)来对整个数据集簇中唯一的标识数据库对象&a…

一个支持 CRUD 快速开发的 Web 框架,用着太爽

RUD 可谓是程序员又爱又恨的操作了。 爱,大部分的业务基本上都是增删改查的变种,基于增删改查可以实现大部分的业务。 恨,是因为普通的增删改查页面开发占据了大量的时间,非常无聊,同时又不会有技术上的提升。 如何能…

week14|week15 查阅文章总结

带宽的概念 信道容量 参数估计 朴素贝叶斯 数学建模 关联规则 聚类 github http 奈氏准则和香农定理 计算机控制 带宽的概念:带宽的两种概念__Charles_Chen的博客-CSDN博客_带宽的两种含义 信道容量:

【计算机视觉】关键考点

计算机标定 计算机标定的流程? 1.求解内参矩阵和外参矩阵的积H 当一张图片上的标定板角点数量等于4时,即可求得该图片对应的矩阵H 。当一张图片上的标定板角点数量大于4时,利用最小二乘法回归最佳的矩阵H 。 最小二乘法:简单地说就是通过n…

浅谈JVM及原理

JVM一直是java知识里面进阶阶段的重要部分,如果希望在java领域研究的更深入,则JVM则是如论如何也避开不了的话题,本系列试图通过简洁易读的方式,讲解JVM必要的知识点。 运行流程 我们都知道java一直宣传的口号是:一次编…

【SSM项目案例】数据库增删改查-完整代码

一、搭建环境 1)spring环境搭建 2)spring整合springmvc框架 目的:在controller中能成功调用service对象的方法 在项目启动时,加载applicationContext.xml的配置文件,在web.xml中进行配置 在controller中注入servic…

星巴克激战瑞幸:“咖啡老三们”的危险时刻

老大和老二“打架”,老三却“伤”得不轻。 在国内品牌界,经常出现这种颇有意思的商业现象。凉茶界里的加多宝和王老吉相互厮杀,排在后面的和其正声势渐弱。可口可乐和百事可乐不断较量,结果非常可乐消失了。 眼下在国内的咖啡圈…

这可能是全网最详细的python安装教程(windows)

python安装是学习pyhon第一步,很多刚入门小白不清楚如何安装python,今天我来带大家完成python安装与配置,跟着我一步步来,很简单,你肯定能完成。 第一部分:python安装 (一)准备工作…

CocosCreator3.4.2源码渲染流程解读

首先上一张脑图镇楼,有些流程还有待后续补充,但是整个刷新过程差不多都完成了。 在上一个xmind文件地址https://download.csdn.net/download/m0_37609239/87254684 接下来就正式开始讲代码: 每帧刷新渲染还是从mainloop开始讲,前面…

华为机试 - 对称美学

目录 题目描述 输入描述 输出描述 用例 题目解析 算法源码 题目描述 对称就是最大的美学,现有一道关于对称字符串的美学。已知: 第1个字符串:R第2个字符串:BR第3个字符串:RBBR第4个字符串:BRRBRBBR…

达标的字符串

1、题目 给定一个数 NNN,想象只由 0 和 1 两种字符组成的所欲长度为 NNN 的字符串。 如果某个字符串,任何 0 字符的左边都有 1 紧挨着,认为这个字符串达标。 返回有多少达标的字符串。 2、思路 前几项推导: 两种解法&#x…

【滤波专题-第6篇】小波阈值去噪方法看这一篇就明白了~(附MATLAB实现)

小波阈值去噪的算法是近些年比较流行的一种滤波方法,由于其阈值函数有着众多的改进方式和改进空间,改进阈值函数也往往可以作为创新点和亮点写到论文中,所以对于正在搞相关研究的同学们写论文是比较友好的(轻松水论文方式1&#x…

【高并发】超卖一人一单问题

一、超卖问题 1. 超卖场景 高并发场景下用户下单,存在如下所示的超卖问题,其产生的主要原因是一个线程刚读出库存值,还没进行修改时,另一个线程也读出来该库存值,从而导致这两个线程在进行下单时,对同一个…