无敌:炸裂好用网页配色采集器

优采云 发布时间: 2022-10-26 05:47

  无敌:炸裂好用网页配色采集

  相信很多做UI和网页设计的设计师经常会从网上各种真实的网站案例中找到灵感,但是自己提取和分析网站的配色太麻烦了!

  而今天推荐的Chrome插件Site Palette不仅可以自动提取网站配色,还可以帮你分析扩展~快来看看怎么用吧!

  首先你需要在 chrome 扩展商店中添加一个插件

  然后就会出现在你的插件栏中了~

  随便打开一个网站,点击插件图标,Site Palette 就能帮你搞定那个网站的配色方案

  

  像阿姨酱

  如您所见,Site Palette 可以帮助我们生成三种不同的颜色选择模式

  只需点击色块,即可轻松复制色值~

  当然,这些都是非常基础的功能!

  更方便的是他还可以直接下载获取sketch和adobe的色卡文件,支持直接导入软件色板!就是省时省力~

  此外,还可以支持对接Google Arts&Culture(谷歌文化艺术)查找同色系的艺术品图片

  

  您还可以在 Google Arts & Culture 上随意调整颜色值,并帮助您将图像与相应的颜色值匹配(可用于非商业用途)

  此外,它还可以停靠Colors进行进一步的色值调整,并使用最便捷的功能帮助您快速生成满意的配色方案!

  点击上方【探索】,一键获取Adobe推荐配色库

  使用站点调色板,您可以同时拥有三个工件!真的是一送二的大福利~而且好用!无需注册!强大的!

  最后一个链接:

  接近完美:相似度检测——hnsw参数选择

  最近,我正在做一个相似性检测项目。虽然现在的技术已经很成熟,项目也比较简单,但是算法应用过程中如何选择一些参数,一开始还是比较纠结的。毕竟现在任何算法都要优化,所以记录下选择过程。

  第 1 部分。论文中讨论的参数

  Part 2. 在实际项目中的应用

  参考论文:

  简述相似度搜索过程:分层搜索+独立集的图邻居选择

  原理参考:/u011233351/article/details/85116719 透明!!

  第 1 部分。论文中讨论的参数

  在使用该算法时,会涉及到以下参数的选择,这些参数会对精度、构建时间、搜索时间、RAM大小产生不同的影响:

  接下来,我将一一列出来进行分析。

  1.用什么特征作为输入,以图像分析为例。

  1.原创特征,图像本身作为输入。显然,不管这种情况下效果如何,至少数据量会非常大,对RAM的要求也会非常高。一般不用作输入特征

  2、SIFT特征,图像处理中的特征提取方法有很多,其中SIFT是具有代表性的。当然其他选项也是可用的。这样大大减少了数据量,同时也可以起到降维的作用。使用有效特征作为相似性比较的基础是合理的。

  3、DEEP特征,目前比较流行的是神经网络,可以用这种方法提取特征。

  4. 其他特点

  特征选择有一个原则:主要特征的归一化降维。去除冗余点对我们后续的相似度检测大有裨益。

  对于不同特征的数据集,作者还给出了统计信息:

  当不同的数据特​​征传入H-NSW算法时,性能受到很大影响。

  1.随机d=4,MNIST数据特征本身小,性能提升快

  

  2. SIFT和DEEP特征,复杂输入经过这两种处理可以有效提升性能和响应时间,这两个特征从图13对比可以看出DEEP特征更好(初始QT小,BF小)。

  2.特征维度的选择

  特征维度的大小与RAM使用、搜索时间、性能快速达到稳定范围有很大关系。维度越小,响应越快,性能提升也越快。对于简单的问题,可以选择小维度,对于复杂的问题,可以选择大维度。对于相同数量级的数据集,维度越大,RAM使用量越大,搜索时间越长。

  作者还给出了统计:

  3.M和efConstruction

  M 是这样解释的:- 在构造过程中为每个新元素创建的双向链接的数量。

  M 的合理范围是 [2,200]。M越高,对于具有高维特征的数据集,召回率可能越高,性能越好;M越低,具有低维特征的数据集的性能越好。

  建议M:12、16、32。因为已经选择了特征,所以维度一般不会太高。

  efConstruction :- 该参数与 ef 含义相同,但控制 index_time/index_accuracy。

  ef - 最近邻居的动态列表的大小(在搜索期间使用)。

  efConstruction越大,构建时间越长,指标质量越好。有时,过快增加 efConstruction 并不能提高索引质量。有一种方法可以检查 efConstruction 的选择是否可以接受。计算recall,当ef=efConstruction时,在M取值时,如果recall低于0.9,则可以适当增加efConstruction的值。

  还有一个参数 max_elements,要检索的最大元素。此参数取决于您正在创建的索引库的特征数量。如果要检测 1000,0000 个特征中是否有相似的图像,这个 max_elements 应该设置为 1000,0000。当然,这也取决于RAM是否支持同时加载这么多数据。

  作者给出统计:

  4. 数据集大小对搜索时间的影响

  从图15的内置缩略图可以看出,随着数据量的增加,搜索时间会急剧增加;建议一次搜索的数据量控制在10M以内。如果数据量真的很大(比如每年的数据量是20M,随着时间的增长,数据量急剧增加),可以分段创建几个索引库,同时搜索,并取最小的距离值作为最终结果。

  五、测量方法

  不同的测量方法得到不同的距离值(相似度检测最终得到两幅图像的相似度[0,1])。在计算两张不相似的图像之间的相似度时,需要尽可能地扩大它们之间的距离,以便于判断。

  以下是作者提到的几种方法的列表。哪个更好取决于数据集的测试效果。

  距离参数方程

  

  平方 L2'l2'd = sum((Ai-Bi)^2)

  内积'ip'd = 1.0 - sum(Ai*Bi))

  余弦相似度'cosine'd = 1.0 - sum(Ai*Bi) / sqrt(sum(Ai*Ai) * sum(Bi*Bi))

  Part 2. 在实际项目中的应用

  1. 特征选择

  通过图13中的比较,最终选择DEEP特征作为hnsw算法的输入。

  在提取特征的时候,我参考IBM的Accelerate Reverse Image Search with GPU进行特征提取:/IBM/reverse-image-search-gpu-studio 这部分后面会详细分析。

  2.特征降维

  在项目实际运行过程中,加入了PCA降维。主要原因是数据集很大,搜索时间过长,准确率不理想(不相似的图片和相似的图片没有区别,参考下图第一列数据)。将功能从 1280 减少到 128。

  期间我尝试将维度降到256:使得每张图片的特征大小为1164(根据hnsw中的维度计算的数据大小),那么我的半年数据量为4W*183图像,所以 RAM=1164*40000 *183,大约 10G。事实上,我需要比较3年内索引库中的数据量(认为这很可怕)。

  实验对比如下:

  上图中 dist>0 的数据是一张不在索引库中的图片(有四张测试图片)。当维度d=256时,距离值可以画得更广,便于区分;与没有PCA降维的结果相比,维数d=128时也更好。

  三、测量方法

  根据官网的提示,“ip”方法解释如下: 注意内积不是实际的度量。一个元素可以更接近于其他元素而不是它自己。也就是说,这种方法在实践中是不需要考虑的(元素A和A计算的结果可能比元素A和B计算的结果大,距离越小越相似)。

  因此,采用“l2”方法进行计算。后来发现“余弦”法在扩大相异范围方面效果更好。即元素A与B不相似,余弦计算的值更接近1,l2计算的结果较小。

  4.内存问题

  RAM 的问题取决于 CPU 配置。在算法参数中,需要保证 max_number*size_per_data 小于等于 RAM 的 80%,以便在实际中运行流畅。

  5. 数据集是个大问题

  当数据集很大时,会导致两个问题:

  这种情况可以适当分段建立几个索引库,即可解决。当然,如果要加快搜索速度,比如多线程搜索几个索引库,就必须提高电脑配置。这不仅保证了准确性,而且提高了速度。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线