这份方法说明的范围

结论先说:ColorNote 免费网页初测不是人脸识别,也不是把整张照片交给生成式 AI。它在当前浏览器里读取图片像素,由用户指定三个区域,再把三组颜色数值交给服务端的规则算法。

本文覆盖

免费网页初测

colornote.top/color-test.html 的公开、无登录四季测试。本文依据 2026 年 8 月 25 日核对的网页脚本、请求结构和服务端路由。

本文不覆盖

ColorNote App 完整分析

App 有独立的拍摄引导、账户、历史记录和照片留存选择。相关处理以 隐私政策 和 App 内分析前说明为准。

术语边界:这里的“皮肤颜色”只是被选中照片像素的 RGB 表示,不等于在标准照明下测得的物理肤色,更不能用于推断种族、健康状态或身份。

从照片到三组 RGB,浏览器实际做了什么

STEP 01读取本地文件

用户主动选择照片,FileReader 在浏览器内把文件读为 Data URL。

STEP 02绘制到 Canvas

最长边缩放到不超过 1500 像素,再绘制到离屏画布。

STEP 03手动选择

依次选择脸颊皮肤、自然发色和虹膜的代表位置。

STEP 04局部均值

每个位置读取周围 3×3 像素并计算 RGB 均值,降低单像素噪声。

STEP 05请求分析

向四季分析接口提交三个 RGB 对象,不提交照片文件或 Data URL。

分析请求的数据契约
skin
{ r: 0–255, g: 0–255, b: 0–255 }
hair
{ r: 0–255, g: 0–255, b: 0–255 }
eye
{ r: 0–255, g: 0–255, b: 0–255 }

字段名称固定为 skinhaireye。服务端会校验每个通道必须是 0 到 255 的整数;分析请求体没有文件、图片 URL、EXIF、姓名、邮箱或账户标识字段。

服务端怎样得到基础四季方向

公开网页接口复用 ColorNote 的确定性规则算法,不调用大语言模型。算法从三组颜色计算冷暖、深浅、清浊和面部颜色对比;网页公开结果只保留基础四季型。

冷暖

比较各区域归一化后的红蓝关系;当前权重为皮肤 50%、虹膜 30%、头发 20%。归一化用于减弱单纯曝光变化对红蓝差值的影响。

深浅

综合皮肤、虹膜和头发三组 RGB 的平均亮度,不只看皮肤明暗。算法同时计算清浊与三组颜色之间的最大明暗对比。

公开输出

接口只返回基础季型、名称、说明、图标和固定入门色盘;不会把内部细分季型或证据字段发送给网页。

冷暖方向深浅方向网页基础结果
偏轻春季型
偏轻夏季型
偏深秋季型
偏深冬季型

这些阈值是 ColorNote 当前产品规则,不是医学标准或统一的个人色彩行业标准。规则发生实质变化时,本页应重新核对并更新日期。

照片、请求和结果分别如何处理

照片留在浏览器

照片文件和 Data URL 只用于当前页面的预览与 Canvas 取样;分析请求没有照片字段。

分析接口不落个人记录

公开分析路由不使用账户鉴权或数据库会话,不保存照片,也不创建可回看的个人分析记录。

短窗口限流

分析服务使用请求 IP 做内存中的短窗口限流以防滥用;该分析路由本身没有把限流桶写入应用数据库。

单独的使用事件

页面另行上报未关联登录账号的浏览、开始、结果展示和 App Store 点击事件,用于汇总产品漏斗。

“分析不落库”不等于“页面没有任何指标事件”

结果展示事件包含基础季型、界面语言和来源标签,但不包含照片或三组 RGB,网页初测也不附带登录授权令牌。它不是一份可回看的个人色彩报告。完整数据规则请参阅 ColorNote 隐私政策

已知局限:算法读到的是照片像素

  • 光源会改变像素。暖黄灯、冷色天光、彩色墙面反射和屏幕补光都会让同一个人的取样值发生变化。
  • 自动白平衡和相机处理会改变颜色。设备、拍摄模式、曝光、摄影风格、滤镜和后期编辑可能改变色调、色温或饱和度。
  • 手动取样会有位置误差。脸颊高光、泛红、阴影、染发反光、彩色隐形眼镜或虹膜瞳孔边界都会影响三组值。
  • 三个局部均值不能代表完整外观。它没有实体色布对照、受控光源、完整肤色分布或顾问对连续变化的观察。
  • 四季标签是简化方向。接近边界的人可能因条件变化落到相邻季型,结果更适合作为试色起点,而不是身份标签。
为什么没有百分比承诺:当前网页初测没有公开的、独立受控样本验证,也没有经过校准的正确性概率。ColorNote 因此不把内部规则分数包装成“结果正确概率”。

想提高可比性,请在柔和自然光下、面对窗户、关闭滤镜与美颜,使用同一设备和相近时段拍摄;再用真实衣物或色布在同一光线下复核。它不能替代受控照明下的专业个人色彩咨询,更不能用于医疗、皮肤健康或身份判断。

任何人都可以怎样自行核对

  1. 打开网页开发者工具的 Network在开始测试前清空记录,并筛选对 /api/quiz/analyze 的 POST 请求。
  2. 选择照片并完成三个取样点检查分析请求的 Payload,应只看到 skin、hair、eye 三个 RGB 对象。
  3. 区分分析请求与指标请求/api/metrics/events 是另一条产品使用事件请求;它不应包含照片或三组 RGB。
  4. 复测输入敏感性在相同条件下重选邻近像素,再换一张不同光线照片,观察结果是否变化;这能直观看到取样和光线局限。

直接支持本文的官方与一手来源

外部来源只用于解释浏览器 API 和相机颜色处理;ColorNote 的具体数据流来自产品自身实现与公开政策。

来源与实现最后核对: