计算两个颜色相似度

news/2024/10/31 0:12:53/

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.ppmy.cn/news/2573.html

相关文章

m基于FPGA的数字下变频verilog设计

目录 1.算法描述 2.仿真效果预览 3.verilog核心程序 4.完整FPGA 1.算法描述 整个数字下变频的基本结构如下所示 NCO使用CORDIC算法,CIC采用h结构的CIC滤波器,HBF采用复用结构的半带滤波器,而FIR则采用DA算法结构。 这里,我们…

Matlab 中 global 函数实例解析

目录 global 函数 案例分析 1 案例分析 2 使用golbal的优点 1. 传递大数据的参数 2. 过多的常量需要传递 global 函数 比如在主函数里面,你需要设置 Nc 这个变量是一个全局变量,就需要声明一下: global Nc; 然后在子函数里面你又用到了…

蓝桥杯比赛 NOC竞赛C++ 类、函数和指针,选择题真题和模拟题汇总答案解析

第二部分 C 类、函数和指针 1、有关类的说法不正确的是 D A)类是一种用户自定义的数据类型. B)只有类中的成员函数才能存取类中的私有成员. C)在类中,如果不做特别说明,所指的数据均为私有类型. D&#…

【linux】ssh免密登录

概要 服务器免密登录实际上是基于公钥的认证,比如希望A服务器可以免密访问B服务器,则需要进行如下步骤 A服务器生成密钥对将A服务器生成的公钥分发到B服务器(写入~/.ssh/authorized_keys)A服务器即可免密登录B服务器 生成密钥对…

Vue学习:Vue中的数据代理

<!-- 准备容器 --><div idroot> <h2>学校名称&#xff1a;{{name}}</h2><h2>学校地址&#xff1a;{{adress}}</h2></div><script>const vm new Vue({ el: #root,data: {name:Jhon,adress:street 10},});</script> vm上…

计算机的硬件系统和软件系统的关系

计算机的硬件系统和软件系统的关系是缺一不可。 硬件它是所有软件运行的物质基础。 与硬件直接接触的是操作系统&#xff0c;它处在硬件和其他软件之间&#xff0c;表示它向下控制硬件&#xff0c;向上支持其他软件。 在操作系统之外的各层分别是各种语言处理程序、数据库管理…

【C++ unordered_set set 和 unordered_map 和 map】

文章目录前言简单介绍哈希表&#xff0c;哈希结构什么时候用哈希表unordered_map操作likou第一题 两数之和unordered_set 基础操作unordered_set 实现总结前言 今天重新打开力扣&#xff0c;看到以前的签到题两数之和&#xff0c;以前的方法是双指针暴力解法&#xff0c;偶然看…

nginx 正向代理http和https

nginx正向代理默认只支持http&#xff0c;不支持https&#xff0c;需借助第三方模块“ngx_http_proxy_connect_module”来实现&#xff08;https://github.com/chobits/ngx_http_proxy_connect_module&#xff09; yum -y install make zlib zlib-devel gcc-c libtool openss…