1. 引言
漆器是古代人们日常生活应用十分广泛的物品,是文物遗产的重要组成部分。考古资料表明,早在新石器时代晚期漆器即已使用,战国时期更加发达,尤其是楚国漆器达到了一个很高的水平,在汉代漆器已被作为日用器具普遍使用。胎质以木胎为主,有少量竹、皮革、匏(葫芦)、夹纻、复合胎,甚至铜胎,器表一般髹黑漆,部分于黑漆地上用红漆或加红、黄、银白等彩绘几何、动植物、人物故事图案。由于相关历史文献的匮乏和考古出土古代漆器的老化降解,当前的科技分析主要是定性分析漆膜材料成分,而对于化学成分方面的研究却非常少。为了了解古代漆器在制作时所添加的干性油与生漆比例,建立一种定量分析古代漆器漆膜化学成分的方法是十分必要的。论文采用可视化分析技术,在文献基础上,对漆器漆膜化学成分进行深入研究,实现了漆器漆膜化学成分的直观展示。主要研究工作如下:第二部分介绍了相关的研究工作;第三部为古漆器漆膜数据的现代仪器分析技术,利用现代分析仪器对战国漆器漆膜进行化学成分检测;第四部为漆膜数据的可视化渲染技术;第五部分对论文的研究进行实验,结合可视化技术对分析结果进行展示,显示了较为直观的可视化效果。实验表明,古漆器漆膜数据的可视化研究对漆膜各种化学成分进行对比分析,为对不同类别及不同时期的漆膜样本数据的化学元素成分特点进行全面直观研究提供了一种有效方法。
2. 相关研究
漆膜成分分析一般从其化学成分的检测着手,毛亚蓉等 [1] 从材料的化学结构入手,建立了漆膜固化程度与红外光谱的相关性,科学而有效地筛选漆膜的固化条件,改变了通常只能根据漆膜固化后的性能来确定漆膜固化条件的难题。容波等 [2] 提出一种用于古代出土漆膜的分析测试方法,针对漆膜的不同涂层,采用了不同的分析方法;首先使用显微镜观察漆膜的整体结构(如分层,每一层的色泽,厚度,包含物情况),然后针对残留胎体和纤维层采用显微镜进行植物种属鉴别;漆灰层采用XRD分析,能够检测出主要成分及其化学结构;生漆层使用红外光谱分析,进行漆膜的鉴定;颜料层使用XRF与XRD相结合的方法确定颜料的组成结构。此外,对于各层中添加物的分析,测试手段比较灵活,对于石英等晶态物质可采用XRD进行分析,非晶态的物质可使用拉曼光谱进行分析,为漆膜的进一步研究打好了坚实的基础。张录达等 [3] 将近代数学统计方法应用于近红外光谱定量分析的研究。分析了NIRDRSA基础研究的必要性,应用方差分析对谷物样品近红外光谱各种条件测量结果进行统计分析,得到近红外光谱定量分析过程中光谱数据预处理的最佳方法。肖庆等 [4] 采用FTIR-ATR和NIR对古代漆膜进行了定量分析,结果表明FTIR-ATR在漆膜老化严重的情况下,将不能达到定量分析的目的。而采用近红外光谱技术结合化学计量学方法建立的PLS模型,能对古代漆膜制作时的化学成分进行快速,无损的定量分析。结果表明PLS定量模型具有良好的稳定性和预测性,校正均方差(RMSEC),预测均方差(RMSEP)和交叉验证均方差(RMSECV)均较低,相关系数R_c,R_p和R_v均在0.99以上。将该方法应用到考古发掘出土漆器漆膜材料的分析中,通过PLS定量模型计算出古代漆膜制作时的干性油添加量,确定了不同时代和不同地区漆器制作所用化学成分的不同,为解读古代中国的油漆技术提供科学依据,为漆器文物的保护修复提供一些数据支撑。郑佳宝 [5] 研究了生漆的红外光谱,发现不合桐油的生漆的I1712小于I1622而含桐油的生漆则相反。还对16件汉代漆器样品进行红外光谱分析,结果表明,其中的12件漆器含有桐油成分。本文还根据红外光谱考察了生漆漆膜的模拟老化过程。王冰冰 [6] 针对光谱仪在实验室测得的高光谱数据,提出一种高光谱数据处理系统,包括数据输入输出,数据重采样,数据预处理以及待测目标处理4大功能模块,并以不同水深的水体为待测目标,在ENVI平台下利用IDL语言开发水深反演模块。实验结果表明:该系统能够实现数据准确高速处理,并且处理结果可视化,同时该系统具有可扩展性,可以实现其他实测光谱数据的分析应用。
随着计算机大数据可视化技术的成熟,通过检测数据的可视化处理,能够给研究人员直接可靠的数据显示效果,并结合数据挖掘、相关分析等技术,可以对不同样本检测数据的异同进行高效处理。胡洋等 [7] 设计了基于激光内调制技术的高光谱数据可视化挖掘系统。首先使用激光内调制技术控制激光形成,加强激光雷达调制效率,运用基于VMD的回波信号去除图像噪声;其次构建高光谱彩色可视化模型,把评估数据降采样处理,利用像元之间彩色差别均值保证图像可分性,通过局部优化手段修改图像,实现图像可视化呈现;最后通过ENVI平台和IDL语言建立高光谱数据可视化挖掘系统,包含数据输入输出,数据重采样,数据预处理和待测目标处理4个板块。系统可以快速准确挖掘目标高光谱数据,观察到数据内隐藏的特征信息数据,为光谱数据分析提供有效帮助。姜安琦等 [8] 提出基于P2P技术的数据网格系统——EFCS-Grid中,数据挖掘和数据可视化模块的设计和实现。首先,本文对EFCS-Grid系统的结构进行了分析。然后,通过比较几种不同的数据挖掘工具在各方面的特性,确定在实现数据挖掘和数据可视化模块的过程中所需要选择的数据挖掘工具。并且重点讨论了开发基于数据挖掘功能的数据可视化模块的过程。实现了K-平均聚类算法。袁浩等 [9] 提出Web2.0技术将近红外光谱分析的大规模数据进行存储和分析,利用Web技术进行可视化展示。结合Web可视化的特点,从中找出解决近红外光谱指标数据的Web可视化算法及思路。研究了近红外光谱信息共享平台开发理论及开发平台所需的相关技术,得出了解决大规模近红外光谱指标数据Web可视化方案,给出了高维度数据可视化图形的相关数学模型,从运算速度和实际需要出发,将MDS及RPES算法进行了改进并运用于近红外光谱高维数据分析中。根据近红外光谱指标数据的特点,探讨了关于近红外光谱数据Web可视化处理的方法,针对大规模近红外光谱指标数据给出了基本图形的Web展示方案,及大规模数据分布式计算可视化方案和可视化模型。给出了高维度数据Web可视化数学模型并将多维尺度法,多维度映射法进行了改进,运用于近红外光谱指标数据的降维处理。基于视点熵的研究,给出了三维散点图视角选择算法。程翼宇等 [10] 提出一类红外光谱分析数据特征指纹的可视化表达方法。该方法采用基于贝叶斯准则的多元统计方法对原始数据进行投影变换,再以二维灰度图对变换后数据进行可视化表征,形成基于计算机图像的虚拟化学指纹图谱。将其用于鉴别3种不同产地中药当归样品的结果表明,它能有效提取红外光谱分析数据的特征指纹,实现以虚拟指纹图谱对药材产地的分类鉴别,从而为辨识复杂化学物质体系提供了新的技术手段。文献 [11] [12] [13] 分别利用大数据分析方法对漆器漆膜检测数据进行了有效的分析和处理。
3. 古漆器漆膜数据的现代仪器分析
通过扫描电镜能谱仪、激光显微等微区分析手段对战国漆器漆膜不同结构层的成分和物像进行原位分析是目前常用的仪器分析方法。漆器样本如图1所示,获得479种漆器漆膜不同结构层的能谱分析数据,表1为部分战国漆器漆膜EDS能谱分析数据,这些数据来自枣阳九连墩、黄梅五祖镇、潜江龙湾遗址等湖北地区出土的丧葬用具、生活用具、乐器、兵器、车马器和甲胄这六类漆器,统一采用字母A、B、C、D、E和F代表。战国漆器漆膜数据包括战国早期、中晚期和晚期三个时期,实验过程中主要以战国中晚期和晚期的漆器漆膜检测数据为实验数据,进行战国漆器年代判别模型的研究。

Figure 1. Some images of lacquer ware samples
图1. 部分漆器样本图片
在漆器数据的产生和处理过程中,由于漆器的保存问题或者信息采集出现偏差,大部分漆器数据存在着模糊性和不确定性。如表1所示,漆器漆膜各元素的质量比总和为100%,据此可以将各元素的质量比缺失值置0。
通过扫描电镜能谱仪、激光显微等微区分析手段对战国漆器漆膜不同结构层的成分和物像进行原位分析是目前常用的仪器分析方法,表1为部分战国漆器漆膜能谱仪(Energy Dispersive Spectrometer, EDS)分析数据,这些数据来自曾侯乙墓、包山二号墓、九连墩二号墓出土漆木器等湖北地区出土的丧葬用具、生活用具、乐器、兵器、车马器和甲胄这六类漆器。战国漆器漆膜数据包括战国早期、中晚期和晚期三个时期,实验通过分析各时期漆器漆膜数据特征进行战国漆器仪器检测数据的相关研究。
从表1中的检测数据可以看出,漆膜中的主要元素成分为C,O,Si,S,Hg以及部分Al,S,Ca,Fe,从构成比例看,C,O含量最高。同一件漆器的不同部位分析结果有较大的差异,同一类漆膜如黑漆表面、红漆表面的成分比例相似,基本上符合漆器工艺的总体情形。

Table 1. EDS data of Lacquer film of the Warring States Period (elementary composition)
表1. 战国漆器漆膜EDS能谱数据(主要元素成分)
4. 漆膜数据的可视化渲染技术
漆膜检测数据的可视化,旨在利用大数据可视化技术,对漆膜检测数据进行可视化、交互式的显示,通过可视化算法,对个元素的含量信息进行动态展示,并以交互的方式在Web页面进行显示,可以直观地展示出各种元素的分布对比以及不同的样本、不同部位的相互关系和异同。
在具体编码中需要的传入的数据有元素名称、元素含量、样品编号、样品部位等信息,对这些数据一一展开叙述。在数据部分使用Python第三方库openpyxl对数据进行操作。openpyxl是Python中用于操作Excel的第三方库,使用openpyxl能够处理绝大多数Excel文件(如xlsx、xls等),相对于pandas库而言,openpyxl更加方便简单。使用load_workbook()方法导入Excel文件,同时使用active()方法激活数据表。接下来获取数据表的列数,使用openpyxl库中的max_column()方法进行获取,获取列数后,开始创建元素列表。首先创建一个空列表,使用for来循环添加元素名称,由于元素在Excel中从第三列开始,因此range()从3开始。
由于数据表同一样品有不同部位的元素含量数据,range()方法实现对二维列表的访问,range(2,7)表示从第2行读取数据,读到第6行停止,不包含第7行。在第一层循环中,使用Python列表中的append()方法添加空列表。在第二层循环中,使用append()方法来添加数据,列表索引通常从0开始,因而在图中data_list的索引为x-2。数据表中单元格的值通常用cell().value来进行获取。
在具体的可视化设计中,使用玫瑰图、折线图、象型柱状图、水滴图等图形来完成设计。如图2,首先创建玫瑰图的函数,并将其定义为TimeLine类型。完成后,在函数内创建一个将TimeLine实例化,并使用for循环将多行数据放在同一图形中,循环中使用将饼图实例化,同时设置相关参数以实现交互操作。
完成上述步骤后,将数据添加进渲染玫瑰图中。玫瑰图引入的数据为列表,使用zip()方法将元素列表与数据列表合成为一个新的列表传入玫瑰图。在Python中,zip()方法用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。完成上述设置后,需要将玫瑰图加入到时间线中。使用时间线的add()方法将玫瑰图实例加入,同时设置自动播放、循环播放,为了展示效果隐藏时间轴。最后应返回时间线实例。对于折线图的创建,与上述玫瑰图的创建并无较大差异,折线图作为直角坐标系图形,需要对X轴Y轴数据分别进行添加,而非像上述玫瑰图使用zip()方法。使用add_xaxis()方法添加X轴数据,在添加Y轴数据时,参数较多,需要注意。将数据列表传入,设置连接空数据,同时隐藏标签,将数据点的形状设置为菱形,并让折线变得光滑。
使用水球图来展示最大含量元素所占总体的百分比。在这里需要注意的是最大元素名称的获取,由于元素名称与元素含量数据一一对应,因而其索引值相同,因此寻找含量最大元素的名称应借助含量最大值来实现。首先使用max()方法获取数据列表中元素数值最大的值,再使用index()方法来获取最大值的索引,并赋值给max_index。将max_index作为元素列表的索引传入即可得到含量占比最大元素的名称。完成上述设计后,接下来需使用Page顺序多图将这些图形整合到一个页面。如图3,首先将Page类进行实例化,在这里选择DraggablePageLayout的布局方式,而非SimpleLayout。使用DraggablePageLayout可在浏览器中对生成的HTML进行拖拽以完成页面布局。使用add()方法,将前面所编写的图形方法添加进来,并使用render()方法进行首次渲染,渲染完成后能够得到一个名为“A-1.html”的文件,使用浏览器打开。
样本数据的可视化采用图层渲染技术,针对不同元素的叠加显示,通过多次渲染,可以实现页面数据的无缝融合,提升渲染的显示效果。具体的步骤为,首次渲染完成后,则进入第二次渲染。图3中使用Page顺序多图中的save_resize_html()方法进行二次渲染,该方法有三个参数,第一个参数是一次渲染的HTML文件,第二个参数是一次渲染后得到的json文件,第三个参数为二次渲染导出的HTML文件。代码编写完成后,开始二次渲染。
5. 漆膜数据的可视化Web应用实现
可视化系统运行主界面如图4所示:

Figure 4. Web application of the visualization of lacquer film data
图4. 漆膜数据的可视化web应用
点击可视化,开启服务器将进入系统,如图5,针对不同样本系列,可以选择各类样本。
选择样本A-5,跳转至可视化页点击任一链接查看,如图6。可以可视化显示该样本的各类化学元素成分及含量以及对比曲线。
点击左上方的图标,则详细显示样本数据的玫瑰图,当点击玫瑰图任一花瓣时,如图7能够看到当前所选元素的含量占比信息。

Figure 6. The visualization of the data of sample A-5
图6. 样品A-5红漆膜数据可视化
在图7中,点击任一数据点能够看到该点所表示的元素及其元素占比,如图8,能够看到在该图中,Y轴零刻线并非从0开始而是一种对称的形式。
图6中,点击水球图,能够看到在样品A-5中某一部位的元素中占比最大的为C元素,占比为74%。如图9。

Figure 9. Water balloon diagram interaction
图9. 水球图交互
实验显示,通过运用交互式可视化方法,对漆器漆膜的化学构成、元素含量进行了精确地展示,并以不同的渲染技术,直观地对不同类别的样本数据进行量化对比。
6. 结语
对古漆器漆膜的成分进行现代仪器分析,可以对漆器漆膜的化学构成、元素含量等当前的科技分析主要是定性分析漆膜材料成分采用近红外光谱技术结合化学计量学方法建立的PLS模型,能对古代漆膜制作时的化学成分进行快速,无损的定量分析,确定了不同时代和不同地区漆器制作所用化学成分的不同,为解读古代中国的油漆技术提供科学依据,为漆器文物的保护修复提供一些数据支撑。在一起检测数据分析的基础上,通过大数据可视化技术实现对检测数据的可视化显示及分析,从而直观显示出不同样本数据的差异和关联,为漆器漆膜的现代技术研究提供较为有力的补充。在可视化分析基础上,利用机器学习算法对不同时期及不同类别的样本种的各类化学成分的构成特点及规律进行研究将是下一步研究工作重点。