2023年华数杯B题

B 题 不透明制品最优配色方案设计

日常生活中五彩缤纷的不透明有色制品是由着色剂染色而成。因此,不透明 制品的配色对其外观美观度和市场竞争力起着重要作用。然而,传统的人工配色 存在一定的局限性,如主观性强、效率低下等。因此,研究如何通过计算机方法 来实现不透明制品的配色具有重要意义。
光通过物体传播有吸收、反射和透射三种方式。对于不透明制品来说,大部 分光线会被其表面吸收或反射。吸收和反射的光线在经过透明度等校正后按波长 分解成不同的颜色成分,形成光谱图。该光谱图通常由 400--700nm 波段的各色 光组成。为简化计算,最终配色后的颜色的反射率以 20nm 为间隔的光谱数据来 表示。对于不透明材料而言,吸收系数 K/散射系数 S 的比值与反射率 R 之间存 在一定关系,具体请参考文献【1】《计算机配色理论及算法的研究》中的 K-M 光学模型。
基于光学模型得到的颜色参数,可应用于色差的计算。通常,使用色差(不 超过 1)来作为配色效果好坏的标准。色差计算方法参考文献【2】《基于 CIELAB 均匀颜色空间和聚类算法的混纺测色研究》中的 CIELAB 色彩空间的总色差计 算方法。其中颜色参数 L* (明度)、a* (红绿色度)和 b*(黄蓝色度)计算中出现 的三刺激值 XYZ 的计算方法如下:

∫ S (λ)x(λR(λdλ)
400

k ∫ S (λ)y(λR(λdλ)
400

Z = k ∫ S (λ)z(λR(λdλ)
400
其中,S (λ)为能量分布,x (λ) , y (λ), (λ) 为观察者光谱三刺激值, S (λ)分别与x (λ) , y (λ), (λ) 相乘为固定值见附件 1 。R (λ) 为光谱反射率,k 值约为 0.1 ,(λ)为测量物体反射率波长间隔,本题(λ) =20nm。
不透明制品配色问题,就是基于光学模型,设计不透明制品的配色模型。相 较于人工配色,节省大量人力、物力和财力,对减少能耗具有重要意义。
针对某一不透明制品,已知红、黄、蓝 3 种着色剂在不同浓度不同波长的 K/S 值以及基底材料在不同波长下的 K/S 值,见附件 2 。其中,浓度=着色剂克 重/基材重量。每个着色剂的吸收系数 K/散射系数 S 的比值具有加和性,详见文 献【1】《计算机配色理论及算法的研究》中的 K-M 单常数理论。现有 10 个目 标样(二到三种着色剂混合制成)的 R 值,见附件 3 。结果展示请保留 4 位小数。
请建立数学模型解决如下几个问题:

问题 1:请分别计算附件 2 中三种着色剂在不同波长下 K/S 与浓度的关系, 并将关系式与拟合系数填写在表格中。

表 1 问题 1 相关结果数据

波长
函数关系式拟合系数函数关系式拟合系数函数关系式拟合系数
400nm
420nm
440nm
……
700nm

问题 2:请建立不透明制品配色的优化模型。在已知目标样的 R 值(附件 3) 的前提下,基于光谱三刺激值加权表(附件 1)与着色剂 K/S 基础数据库(附件 2),运用优化模型配出与目标样的色差最为接近的 10 个不同配方,要求色差小 于 1。

问题 3:在问题 2 的基础上,考虑成本控制和批量配色,改进配色模型。对 2kg 的基底材料进行配色,求出与目标样(附件 3)之间色差最为接近的 10 个不 同配方,要求色差小于 1 。色母粒单位克重价格见附件 4。

问题 4:在实际生产中,配色所需要的着色剂越少越好,基于此,在问题 3 的基础上,寻找附件 3 中前 5 个样本的最优的配色方案,要求每个样本配出 5 个不同的配方且色差小于 1。

提供的数据和资料:

1. 附件 1(光谱三刺激值加权表)

2. 附件 2(不同浓度不同波长的 K/S 值)

3. 附件 3(10 个样品的 R 值)

4. 附件 4(染料价格)

5.参考文献【1】 姜鹏飞. 计算机配色理论及算法的研究[D/OL]. 中原工学院, 2016

6.参考文献【2】 王林吉. 基于 CIELAB 均匀颜色空间和聚类算法的混纺测色 研究[D]. 浙江理工大学, 2011.

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Django实现音乐网站 ⑷

使用Python Django框架制作一个音乐网站,在系列文章3的基础上继续开发, 本篇主要是后台歌曲类型表、歌单表模块功能开发。 目录 表结构设计 歌曲类型表结构 歌单表结构 创建表模型 创建表 后台注册表模型 引入表模型 后台自定义 总结 表结构设计…

为Stable Diffusion web UI开发自己的插件实战

最近,Stable Diffusion AI绘画受到了广泛的关注和热捧。它的Web UI提供了了一系列强大的功能,其中特别值得一提的是对插件的支持,尤其是Controlnet插件的加持,让它的受欢迎程度不断攀升。那么,如果你有出色的创意&…

Jmeter远程服务模式运行时引用csv文件的路径配置

问题 在使用jmeter过程中,本机的内存等配置不足,启动较多的线程时,可以采用分布式运行。 在分布式运行的时候,jmeter会自动将脚本从master主机发送到remote主机上,所以不需要考虑将脚本拷贝到remote主机。但是jmeter…

【图论】强连通分量进阶

一.作用 强连通分量可以判断环和进行缩点。还有一系列作用.... 这篇文章介绍缩点 二.题目 https://www.luogu.com.cn/problem/P2341 三.思路 我们分析可以知道当一个点没有出度时,则为最受欢迎的牛。但如果有多个出度,则没有最受欢迎的牛。 这是只有…

工厂模式详解与应用场景

摘要: 工厂模式是一种常见的设计模式,它可以帮助我们在面向对象的程序设计中更好地组织和管理对象的创建过程。本文将详细介绍工厂模式的概念、三种常见的工厂模式应用场景,并提供高质量的C代码示例,旨在帮助初学者更好地理解和应…

【练】创建两个线程:其中一个线程拷贝图片的前半部分,另一个线程拷贝后半部分

方法一: 先在主函数创建并清空拷贝的目标文件,再创建两个线程,在两个线程内部同时打开要读取的文件以及要拷贝的目标文件(两个线程不共用同一份资源)。 使用到的函数: 标准IO函数(fprintf&…

C++模板

目录 一.泛型编程 二.模板 1.函数模板 1.1函数模板格式: 1.2函数模板的原理 1.3 函数模板的实例化 隐式实例化 显式实例化 : 模板参数的匹配原则: 2.类模板 2.1类模板格式 一.泛型编程 如何实现一个通用的交换函数呢?…

主动带宽控制工具

停机和带宽过度使用是任何组织都无法避免的两个问题。随着企业采用 BYOD 文化,通过网络的流量负载可能很重,导致网络拥塞并使网络容易受到网络攻击。为了解决这个问题,企业需要全面的监控策略来保护网络,当看似大量的流量进入网络…

C++学习——模板

目录 🍉一:什么是模板 🍎二:普通模板的定义 🍍三:类模板的定义 🍌四:模板的实例化 🍇1.当普通模板定义存在可修改返回值产生的分歧 🍈2:类模板实例…

一文读透时区和时间戳以及基于Java的操作

重要概念 1. UTC 和 UTC8 UTC 是世界标准时间, UTC8 是东八区标准时间,中国就属于东八区, 也就是北京时间。 8 就是加8个小时。 时区的划分图示如下: 也就是说: 假如现在是UTC时间是 2023-08-08 01:00:00 &#xff0…

MySQL数据库——多表操作

文章目录 前言多表关系一对一关系一对多/多对一关系多对多关系 外键约束创建外键约束插入数据删除带有外键约束的表的数据删除外键约束 多表联合查询数据准备交叉连接查询内连接查询外连接查询左外连接查询右外连接查询满外连接查询 子查询子查询关键字ALL 关键字ANY 和 SOME 关…

k8s kubeadm命令升级集群 从1.17升级到1.18

k8s kubeadm命令升级集群 从1.17升级到1.18 大纲 注意事项master节点执行升级命令master节点和node节点执行命令 注意事项 目标当前线上k8s集群版本是k8s1.17 想把k8s升级到1.18。注意k8s不能跨版本升级例如k8s1.17不能直接升级到k8s1.19,需要先升级到1.18才后向…

【使用 DSP 滤波器加速速度和位移】使用信号处理算法过滤加速度数据并将其转换为速度和位移研究(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

dubbo的高可用

1、zookeeper宕机与dubbo直连 现象:zookeeper注册中心宕机,还可以消费dubbo暴露的服务。 原因: 健壮性 (1)监控中心宕掉不影响使用,只是丢失部分采样数据. (2)数据库宕掉后&#x…

springboot访问请求404的原因

是记录,可能出现错误 可能出现的原因 1.你请求的URL路径不对,比如说你请求的路径是/usr/list,GET方法,但是你UserController上面的RequestMapping是这个样子:RequestMapping(“user”),有可能哈 2.前端的请求时GET方法,后端对应的处理函数的方…

C++ 指针数组

如果一个数组的每个元素都是指针变量,这个数组就是指针数组。指针数组的每个元素都必须是同一类型的指针。 1.一维指针数组 声明一维指针数组的语法形式: 数据类型*数组名[下标表达式];下标表达式指出数组元素的个数,数据类型确定每个元素…

Kafka3.0.0版本——生产者如何提高吞吐量

目录 一、生产者提高吞吐量参数设置二、产者提高吞吐量代码示例 一、生产者提高吞吐量参数设置 batch.size:设置批次大小,默认16klinger.ms:设置等待时间,修改为5-100msbuffer.memory:设置缓冲区大小, 默认…

信号槽中的函数重载

信号槽中的函数重载 QT4的方式QT5的方式函数指针重载函数QT5信号函数重载解决方案 总结 QT4的方式 Qt4中声明槽函数必须要使用 slots 关键字, 不能省略。 信号函数: 槽函数: mainwondow: cpp文件: #include "mainwindow.h"…

快速部署外卖系统:利用现代工具简化开发流程

在竞争激烈的外卖市场中,快速部署高效稳定的外卖系统是餐饮企业成功的关键之一。本文将介绍如何利用现代工具简化外卖系统的开发流程,并附带代码示例,帮助开发者快速搭建功能完备、用户友好的外卖平台。 1. 简介 在外卖业务快速增长的背景…

使用express搭建后端服务

目录 1 创建工程目录2 初始化3 安装express依赖4 启动服务5 访问服务总结 上一篇我们利用TDesign搭建了前端服务,现在的开发讲究一个前后端分离,后端的话需要单独搭建服务。后端服务的技术栈还挺多,有java、php、python、nodejs等。在众多的技…