当前位置: 首页 > news >正文

c# 查找相似颜色算法

下是一个基于欧几里得距离的C#颜色相似度查找算法实现,包含详细注释和优化策略:

using System;
using System.Collections.Generic;

public class ColorMatcher
{
   
    // 颜色容器 - 使用字典存储颜色ID到RGB的映射
    private readonly Dictionary<int, byte[]> _colorDictionary = new Dictionary<int, byte[]>
    {
   
        {
   1, new byte[] {
   255, 0, 0}},
        {
   2, new byte[] {
   255, 255, 0}},
        // ...此处省略其他颜色数据,实际使用时需完整填充
    };

    // 权重配置(可根据需要调整)
    private readonly double[] _channelWeights = new double[] {
   1.0, 2.0, 1.0}; // R:1, G:2, B:1(亮度优先)

    /// <summary>
    /// 查找与目标颜色最相似的颜色ID
    /// </summary>
    /// <param name="targetColor">目标颜色RGB数组</param>
    /// <returns>最相似颜色ID</returns>
    public int FindClosestColor(byte[] targetColor)
    {
   
        if (targetColor == null || targetColor.Length != 3)
            throw new ArgumentException("Invalid color array");

        double minDistance = double.MaxValue;
        int closestColorId = -1;

        foreach (var kvp 
http://www.dtcms.com/a/66543.html

相关文章:

  • 个人学习编程(3-13) 刷题2
  • 深度学习环境配置指令大全
  • MAE:Masked Autoencoders Are Scalable Vision Learners——论文学习
  • 深度学习 bert与Transformer的区别联系
  • 手绘板工具:基于python以及pyqt5实现的手绘白板
  • 基于Redis+AOP+Lua脚本实现一个服务器限流机制
  • 【RTSP】客户端(二):SDP解析
  • MySQL再次基础 向初级工程师迈进
  • 计算机视觉领域开源数据集资源整理
  • 《DeepSeek 开源 DeepGEMM:开启AI计算新时代的密钥》
  • 深入理解JavaScript构造函数与原型链:从原理到最佳实践
  • 【算法】数据结构
  • Linux搜索---Which
  • (59)[羊城杯 2020]login
  • 人工智能之数学基础:线性变换及其机器学习领域中的应用
  • 浏览器崩溃的常见原因及排查方法
  • Linux网络套接字编程——UDP服务器
  • vue项目如何实现条件查询?
  • Word 小黑第21套
  • 市面上常用的23种设计模式,分析实现方式以及实际使用场景案例
  • 安卓实现魔改版 CRC32 算法
  • 大模型架构记录5-向量数据库
  • 领域驱动设计(DDD)与业务驱动划分
  • 汽车无钥匙启动系统不使用传统机械钥匙启动汽车
  • PTA乙级 A除以B
  • Deepseek Chatgpt Kimi 推荐的深度学习书单
  • Sourcetree——使用.gitignore忽略文件或者文件夹
  • 解决leetcode第3455题最短匹配子字符串
  • ui要放在析构函数里吗?
  • Java-ArrayList