-
仿造数码迷彩生成算法包括主色提取、颜色分布信息获取、仿造数码迷彩生成3个部分,流程如图 2所示。
主色提取部分包括颜色空间转换、颜色量化、直方图法提取主色、主色还原RGB数据4个模块。输入图像先进行图像预处理(颜色空间转换和颜色量化),颜色空间转换后的图像数据更符合人眼视觉,并通过颜色量化对数据降维,减少后续计算量。预处理后的数据使用直方图统计得到量化后的主色,还原回RGB数据用于后续处理。
颜色分布信息获取部分包括确定斑块尺寸、马赛克化获得斑点块平均颜色两部分。伪装斑点块尺寸根据伪装距离确定,以该尺寸对原图像马赛克化获得背景颜色分布信息。
仿造数码迷彩生成部分将主色提取到的颜色,通过色差计算,以色差最小的主色替换背景马赛克化后每一个斑块的颜色,得到最终的仿造数码迷彩并输出。
-
图像传感器采集到的图像数据属于RGB颜色空间。RGB颜色空间使用R(红色),G(绿色),B(蓝色)3个通道表示颜色特征,这种颜色模型能够精准地帮助电子显示设备表示颜色,但不符合人眼视觉特性。HSV模型使用色调(H),饱和度(S),亮度(V)3种特征表示颜色,更符合人类的视觉机制,能直观展示颜色对人眼的影响[11]。因此进行后续主色提取处理前先将图像数据转为HSV模型,在主色提取完成后再将色彩空间转回RGB空间。
RGB空间转换到HSV计算如式(1)~式(3)所示[12]:
$ H=\left\{\begin{array}{l} 0^{\circ}, (\max =\min ) \\ 60^{\circ} \times \frac{g-b}{\max -\min }+0^{\circ}, (\max =r, g \geqslant b) \\ 60^{\circ} \times \frac{g-b}{\max -\min }+360^{\circ}, (\max =r, g<b) \\ 60^{\circ} \times \frac{b-r}{\max -\min }+120^{\circ}, (\max =g) \\ 60^{\circ} \times \frac{r-g}{\max -\min }+240^{\circ}, (\max =b) \end{array}\right. $
(1) $ S=\left\{\begin{array}{l} 0, (\max =0) \\ \frac{\max -\min }{\max }, (\text { otherwise }) \end{array}\right. $
(2) $ V=\max $
(3) 式中:r,g和b是经过归一化后的颜色分量,取值范围0~1,三者中的最大值和最小值分别为max,min。得到的结果:H取值范围为0°~360°;S、V的取值范围为0~1。
实际使用FPGA处理时,带浮点数的除法计算会占用大量硬件资源,因此硬件语言VERILOG中除法默认只取其整数部分作为结果。为防止结果在0~1之间的计算自动截断得为0导致后续数据无法处理,采用放大的思路进行计算,考虑到准确性和实时性,使用1个字节作为放大倍数,将转换过程中所有的数据都统一到0~255。FPGA处理减法时,数据通常无符号位,针对会出现负号的情况,在计算前先比较数据大小,根据两数大小确定正负符号,得到正数结果,在后续计算中根据正负符号进行加减,优化后流程如图 3所示。
图 3中,RGB 3路8 bit数据输入后,对比得到最大值和最小值,计算出S、V,计算S时通过放大8位得到取值范围0~255的输出。计算H时也存在结果为0~1之间的除法,因此先计算出分子与固定系数60相乘的结果,通过判断最大值确定后续计算公式。以最大值为g时为例,除法部分结果M(计算过程中的中间变量)取值为0~60,比较b和r的大小,确定M正负,得到最终结果H。
-
对转换完成的HSV数据进行颜色量化主要有两个原因:一是数值相近的颜色在最后显示时无明显差异,通过颜色量化可以有效整合颜色特性,将差异不大的颜色区域归为1类;二是若不进行颜色量化,可能出现的颜色数量过多,需要大量的计算和存储资源,会导致FPGA片上资源不够,算法无法实现。经过调研,为不使颜色区分度明显的颜色种类合为1种,量化种类至少应为300种以上[13],本文中设计了不同量化数量并进行测试,验证不同量化数量在不同背景下的最终实现效果。
量化区间的设置与颜色最终量化数量相关。以300种为例,对HSV进行均匀量化,H量化为12种,S和V分别量化为5种。
使用FPGA实现时,FPGA除法默认不计算小数,直接得到结果整数部分,因此通过除以区间大小得到区间位置。颜色直方图统计时只统计1个参量,将3个参量统一量化为1个参量W, 由于人眼对色调最敏感,以H作为权重最大的部分,使相同色调的颜色体现在直方图统计上位置相邻,参量W由下式得到:
$ W=25 h+5 s+5 v $
(4) 对于式(4),W最终取值范围为0~299,颜色被量化为300个整数值;H,S,V量化后的数据以h,s,v表示;W与h,s,v分量一一对应,唯一的W值对应唯一的h,s,v组合。
在FPGA中除法运算默认不涉及浮点数,根据符号使用的不同,“/”得到结果的商,“%”得到余数。h分量还原时如式(5)所示,商为h分量;余数部分再除以5得到的商为s分量,如式(6)所示;剩余的余数部分为v分量,如式(7)所示:
$ h=W / 25 $
(5) $ s=(W \% 25) / 5 $
(6) $ v=(W \% 25) \% 5 $
(7) 要还原为量化前的H,S,V数据, 将h,s,v分量乘以区间数值并加1个中位数,以H为例,如下式所示:
$ H=h \times \frac{360}{m}+\frac{360}{2 m} $
(8) 式中:m为量化区间数量;360/m计算得到量化区间大小;360/(2m)为量化区间中位数,本文中还原时选用还原区间的中间颜色表示该区间的颜色值。
-
对量化完成的颜色参量W进行直方图统计,直方图统计通过对参数进行数目统计,记录每一参数出现的次数,统计完成后选择出现次数最多几种颜色作为背景图像的主色。
FPGA使用双口内部随机存取存储器(random access memory, RAM)实现直方图统计功能[14]。RAM可以按照地址进行随机读取,以300种量化颜色为例,地址位0~299对应300种量化颜色,地址位存储的数据为该地址所代表颜色的出现次数。每当一个图像信号输入,将数据写入双口RAM中进行统计,场同步信号下降说明1帧统计完成,用于直方图统计的RAM输入输出,如图 4所示。
对于图 4中的输入图像信号,即量化后颜色数据data_low,其数据有效信号datavalid作为写入指令。当写入指令有效,以data_low值为地址,读出RAM中的数据,加1后存入相同地址中,使用RAM的读写通道A完成统计。RAM的B读写通道用于读出数据和RAM清零, 1帧数据统计完成后,通过遍历的方式读取出统计完成的数据,并将RAM清零,统计的时序图如图 5所示。
场同步信号VSYNC为高时,1帧图像正在输入,通过RAM的A通道进行直方图统计,B通道空闲。图 5中data_low数据3第1次出现时,读出RAM中存储数据为0,加1后将结果1写入RAM;data_low 3第2次出现,dout读出RAM中存储数据为1,加1后将结果2写入RAM,直到场同步信号拉低,1帧统计完成。
场同步信号拉低后,生成用于读取数据的addrb和web,addrb从0~299遍历所有地址,每读取1个地址的数据后向同地址写dinb,dinb恒为0,实现RAM清零。最后将统计出的直方图数据分为多次寻找最大值,每次找到最大值后该地址数据清零,直到找出需要数量的最大值。
-
当观察者观察较远数码迷彩伪装物体时,由于人眼视觉的角度区分能力只有约1′(0.017°),相邻的不同颜色迷彩斑点会在观察者眼中产生混色现象,使不同颜色斑点间边界模糊、变形,增加了伪装效果。因此当斑块在眼睛的视场中对应不到1′的弧对应的张角时,人眼分辨不出这个斑块。当观察者在D m外进行观察,该方块大小d计算如下式所示[2]:
$ d=D \times \tan 0.017 $
(9) 式中:tan 0.017≈0.00029。根据上述公式,可以得到在不同距离观察时迷彩单元的最小尺寸,后续以4 pixel×4 pixel作斑点尺寸。
-
确定斑点尺寸后,以尺寸为模板,参考均值滤波的思路[15],对同一模板内颜色取均值,并用这个均值表示该模板大小内的所有像素点的颜色值, 通过模板窗口的移动遍历1帧图像,最终得到能表示背景颜色分布特征的马赛克化图案。
以4 pixel×4 pixel的模板为例,先获得需要处理的模板内的数据。使用FPGA内部的RAM对输入数据行缓存,在同一时钟得到相邻的4行数据,再通过4组寄存器存储生成4×4的模板,对模板中16个数据的RGB分量相加求均值获得该模板的颜色平均值,模板生成操作如图 6所示。
当模板遍历完1帧800 pixel×480 pixel图像,得到200× 120个马赛克块的颜色数据,使用FPGA片上RAM完成存储,省去与外部存储器进行数据交换所耗费的时间。图 6中,马赛克数据在RAM中的存储地址与1帧图像的行计数X与列计数Y关联,对于图像中位置为(X,Y)的点,颜色信息存储在RAM中的地址为(Y/4-1)+200×[(X/4)-1],图像显示时可根据此关系读取RAM中地址生成1帧图像的颜色数据。
-
对于马赛克化图案,每一个斑块颜色分别与不同主色进行色差计算,选择色差最小的主色作为该斑块颜色,1张图片替换完成后得到最终的仿造数码迷彩图。
色差计算在RGB颜色空间进行,计算两颜色的空间距离得到色差值,由于RGB颜色模型不是均匀的颜色空间,按照空间距离得到的色差并不完全符合人眼视觉,在实际应用中往往采取给不同颜色分量加上一定权值的方法,RGB色差计算公式如下式所示[16]:
$ \begin{gathered} C= \\ \sqrt{w_r\left(r_1-r_2\right)^2+w_g\left(g_1-g_2\right)^2+w_b\left(b_1-b_2\right)^2} \end{gathered} $
(10) 式中:r1,g1和b1分别为RAM中存储的当前斑块的三通道颜色值;r2,g2和b2分别为主色的三通道颜色值;wr, wg和wb为不同颜色分量的加权值,通常是固定常数。主色替换时使用不同权值对相同图片进行处理,根据生成仿造迷彩的效果判断该参数对最终结果的影响。
FPGA实现过程中,以4种主色为例。将存储在RAM中的模板颜色数据读出,并计算与4种主色的色差C1、C2、C3、C4,分为两组比较大小。当C1>C2时,比较器输出布尔值为1,复用器根据比较值结果选择较小的C2作为输出。C3、C4通过相同方式比较获得较小值,两组比较后的数据再进行1次比较,得到4个色差数据中的最小值。将色差对应的主色值写入RAM替换原本模板颜色数据,主色替换模块结构如图 7所示。
-
本文中采用衡量图像结构相似度(structure similarity index measure, SSIM)算法[17]作为生成数码迷彩的结构性评价指标,颜色特征相似度算法[18]作为颜色评价指标。
SSIM算法从亮度、对比度和结构3个方面进行对两幅图像进行相似度评估,计算如下式所示:
$ S_{\mathrm{SSIM}}(x, y)=\frac{\left(2 \mu_x \mu_y+N_1\right)\left(2 \sigma_{x y}+N_2\right)}{\left(\mu_x^2+\mu_y{ }^2+N_1\right)\left(\sigma_x{ }^2+\sigma_y{ }^2+N_2\right)} $
(11) 式中:μx和μy分别代表x、y的平均值;σx和σy分别代表x、y的标准差;σxy代表x、y的协方差;N1和N2为常数,避免分母为0时带来的系统错误。SSSIM(x, y)最终取值0~1,SSSIM(x, y)越大,两图结构差异性越小。
颜色特征相似度算法使用相关性计算公式计算两幅图像RGB颜色直方图,得到相似度数据,相关性计算公式如下式所示:
$ \begin{aligned} & T\left(\boldsymbol{H}_1, \boldsymbol{H}_2\right)= \\ & \frac{\sum\left[\left(H_1(i)-\mu_1\right)\left(H_2(i)-\mu_2\right)\right]}{\sqrt{\sum\left[( H _ { 1 } ( i ) - \mu _ { 1 } ] ^ { 2 } \sum \left[\left(H_2(i)-\mu_2\right]^2\right.\right.}} \end{aligned} $
(12) 式中:H1与H2分别代表两幅图像的直方图;i代表颜色直方图的横坐标,即颜色值;H1(i)和H2(i)表示在该颜色下,两直方图对应颜色的统计数量;μ1和μ2分别为两个直方图的均值;颜色相似度T(H1, H2)取值0~1, 颜色相似度越大,两图颜色差异性越小。
将生成的仿造数码迷彩和原始背景图进行相似度计算,相似度越高说明生成的迷彩效果越好。在保证其余参数相同的情况下,本文中通过分别改变生成数码迷彩时的主色数量、色差计算颜色权重、颜色量化数量,对结果与原图像的相似度进行对比,得到最适合常用环境下的参数。
-
针对常见的林地背景,在其余参数不变的情况下,生成数码迷彩时使用不同数量的主色,结果如图 8如所示。表 1为不同数量主色得到的数码迷彩与原图对比后的SSIM以及颜色相似度得分。根据表 1中数据可知,当主色数量增加,颜色相似度得分逐步增加,4种主色与6种主色的颜色相似度差距不大。4种主色时SSIM得分最高,但优势不明显,根据陆军设备变形迷彩图册GJB 4004—2000[19],4种主色已可以满足常用场景的伪装需求,最终本文中仿造迷彩生成算法使用4种主色。
表 1 不同数量主色SSIM以及颜色相似度得分
Table 1. SSIM and color similarity score of different main color
dominant color SSIM color similarity 3 0.5444 0.5031 4 0.5482 0.5328 6 0.5433 0.5420 -
色差计算颜色权重对比结果如图 9所示。图 9中主色数量与颜色量化数量相同,通过肉眼直接观察,不同色差权重对结果的影响在主观上并不明显,从表 2中的SSIM得分可以发现,色彩权重的改变对最终结果的SSIM得分变化幅度在0.3以内,可以认为色彩权重的改变对最终的颜色的整体结构性影响较小。但在颜色相似度指标上,色差权重比为3∶6∶1时的颜色相似度相比其余权重分配时具有明显优势,可以认为此色彩权重下图像整体颜色与原图像相似度最高,最终本文中色差权重选择为3∶6∶1。
表 2 不同色差权重SSIM以及颜色相似度得分
Table 2. SSIM and color similarity score of different chromatic aberration weights
chromatic aberration weights(R ∶G ∶B) SSIM color similarity 1 ∶1 ∶1 0.6138 0.4968 2 ∶1 ∶4 0.6262 0.4718 3 ∶4 ∶2 0.6190 0.4820 3 ∶6 ∶1 0.6032 0.5704 4 ∶8 ∶1 0.6098 0.5264 -
颜色量化数量对比结果如图 10所示。图 10中,当颜色量化数量不同时,整体迷彩结果会有较大不同,300种量化颜色方案将H分量分为12种,S、V分量分为各5组;900种量化颜色方案将H分量分为36种,S、V分量分为各5组;3600种量化颜色方案将H分量分为36种,S、V分量分为各10组;8100种量化颜色方案将H分量分为36种,S、V分量分为各15组。
表 3为量化颜色不同时SSIM以及颜色相似度得分。可以看出,随着量化颜色数量的增加,SSIM得分和颜色相似度都随之增加,生成的迷彩效果越好。其中3600种量化颜色增加到8100种量化颜色,SSIM和颜色相似度得分明显小于从300种增加到3600种,使用了更多的资源,生成迷彩却没有明显的性能提升,综合考虑FPGA内部资源使用,最终本文中颜色量化数量选择为3600种。
表 3 量化颜色不同SSIM以及颜色相似度得分
Table 3. SSIM and color similarity score of different color quantifications
image number color quantifications SSIM color similarity 1 300 0.8410 0.4662 900 0.8786 0.5089 3600 0.9195 0.5834 8100 0.9266 0.6217 2 300 0.7162 0.4745 900 0.7218 0.5083 3600 0.7242 0.5387 8100 0.7324 0.5480 -
本文中采用Canny算子边缘检测的方法,对设计出的迷彩图案的伪装效果进行评估[20]。对一张图片的部分区域分别使用一般数码迷彩以及本文中仿造数码迷彩遮盖,用Canny算子分别对原图以及两种情况下图像进行边缘检测,观察伪装前后的数码迷彩纹理特点,结果如图 11所示。
根据图 11a和图 11b对比可以发现,使用一般数码迷彩遮盖后,通过边缘检测可以明显检测出遮盖区域。图 11c中的仿造数码迷彩使用颜色量化数量3600种,色差权重比3∶6∶1,4种主色生成,白色框住部分为伪装区域,边缘检测结果明显好于一般数码迷彩遮盖,同时边缘检测结果与原始图片结果相似,不能明显分辨出伪装区域,说明本文中系统生成的仿造迷彩具有良好的伪装效果。
-
为验证系统的实时性,将本文中的算法在PC平台通过Python实现,对比不同平台下该算法处理的时间,结果如表 4所示。实验结果表明,FPGA图像处理速度远高于PC平台,拥有较高的实时性。
表 4 不同平台算法处理时间对比
Table 4. Processing times for different platforms
platform resolution/pixels processing time/ms PC 800×480 1352.3 640×480 1128.2 FPGA 800×480 22.21 640×480 16.53 将本文中算法经过vivado2018.3综合仿真后,资源使用情况如表 5所示。
表 5 FPGA资源占用情况
Table 5. FPGA resource usage
resource utilization available utilization/% look up table 4335 20800 20.85 block memory 30 50 60 digital signal processing 5 90 5.55 表 5中,除了片上存储RAM以外,其余资源使用量占所用芯片资源总量的比例小于30%,RAM资源使用量较大是因为没有使用外部存储器,但使用量仍小于70%,片上资源足够本文中算法所需,即能够使用FPGA实现。
基于FPGA的仿造数码迷彩生成系统研究
Research on imitation digital camouflage generation system based on FPGA
-
摘要: 为了解决传统仿造数码迷彩生成算法开发平台灵活性不足的问题,提出了一种基于现场可编程门阵列(FPGA)的仿造数码迷彩生成算法。采用直方图统计提取主要颜色信息,将背景图像马赛克化获得颜色分布信息,依据色差进行主色替换得到仿造数码迷彩的方法,取得了不同主色数量、色差计算权重、颜色量化数量下的数据。结果表明, 颜色量化为3600种后,提取出4种主色作为仿造数码迷彩主色,根据色差主色替换时色彩权重3 ∶6 ∶1,生成的仿造数码迷彩具有良好的伪装效果,且基于FPGA实现该算法时系统占用资源少,处理800 pixels×480 pixels分辨率的单帧彩色图像所需时间仅为22.21 ms,满足动态场景下生成仿造数码迷彩的实时性需求。该研究为主动伪装技术提供了参考。Abstract: To solve the problem of insufficient flexibility of the traditional counterfeit digital camouflage generation algorithm development platform, a counterfeit digital camouflage generation algorithm based on field-programmable gate array (FPGA) was proposed. The histogram statistics was used to extract main color information, the background image was mosaicked to obtain color distribution information, and the main colors based on color difference was replaced to obtain a method of imitating digital camouflage. Data were obtained with different main color numbers, color difference calculation weights, and color determination numbers. The results show that after determining 3600 colors, 4 main colors are extracted as the main colors of the fake digital camouflage. When the main colors are replaced according to the color difference, the color weight is 3 ∶6 ∶1, the generated fake digital camouflage has a good encryption effect, and is based on FPGA implements this algorithm, the system occupies few resources. The time required to process a single frame color image with a resolution of 800 pixels×480 pixels is approximately 22.21 ms, which meets the real-time requirements for generating fake digital camouflage in dynamic scenes. This research provides a reference for active camouflage technology.
-
表 1 不同数量主色SSIM以及颜色相似度得分
Table 1. SSIM and color similarity score of different main color
dominant color SSIM color similarity 3 0.5444 0.5031 4 0.5482 0.5328 6 0.5433 0.5420 表 2 不同色差权重SSIM以及颜色相似度得分
Table 2. SSIM and color similarity score of different chromatic aberration weights
chromatic aberration weights(R ∶G ∶B) SSIM color similarity 1 ∶1 ∶1 0.6138 0.4968 2 ∶1 ∶4 0.6262 0.4718 3 ∶4 ∶2 0.6190 0.4820 3 ∶6 ∶1 0.6032 0.5704 4 ∶8 ∶1 0.6098 0.5264 表 3 量化颜色不同SSIM以及颜色相似度得分
Table 3. SSIM and color similarity score of different color quantifications
image number color quantifications SSIM color similarity 1 300 0.8410 0.4662 900 0.8786 0.5089 3600 0.9195 0.5834 8100 0.9266 0.6217 2 300 0.7162 0.4745 900 0.7218 0.5083 3600 0.7242 0.5387 8100 0.7324 0.5480 表 4 不同平台算法处理时间对比
Table 4. Processing times for different platforms
platform resolution/pixels processing time/ms PC 800×480 1352.3 640×480 1128.2 FPGA 800×480 22.21 640×480 16.53 表 5 FPGA资源占用情况
Table 5. FPGA resource usage
resource utilization available utilization/% look up table 4335 20800 20.85 block memory 30 50 60 digital signal processing 5 90 5.55 -
[1] 颜云辉, 王展, 董德威. 军事伪装技术的发展现状与趋势[J]. 中国机械工程, 2012, 23(17): 2136-2141. YAN Y H, WANG Zh, DONG D W. Current actuality and development tendency of military camouflage technology[J]. China Mechanical Engineering, 2012, 23(17): 2136-2141(in Chinese). [2] NONAKA T, MATSUDA M, HASE T. Color mixture model based on spatial frequency response of color vision[C]//2006 IEEE International Conference on Systems, Man and Cybernetics. Taipei, China: IEEE Press, 2006: 278-282. [3] 喻钧, 杨武侠, 胡志毅, 等. 数码迷彩的生成算法研究[J]. 光电工程, 2010, 37(11): 110-114. YU J, YANG W X, HU Zh Y, et al. Research of digital camouflage generation algorithm[J]. Opto-Electronic Engineering, 2010, 37(11): 110-114 (in Chinese). [4] XUE F, XU S, LUO Y T, et al. Design of digital camouflage by recursive overlapping of pattern templates[J]. Neurocomputing, 2016, 172: 262-270. doi: 10.1016/j.neucom.2014.12.108 [5] GAN Y Y, LIU C T, HE Z X, et al. Digital camouflage pattern design based on the biased random walk[J]. Modelling and Simulation in Engineering, 2022, 2022: 1-12. [6] PEI H N, WU M, HUANG X Q, et al. Maneuvering target oriented digital camouflage image generation method[J]. Displays, 2023, 76: 102365. doi: 10.1016/j.displa.2022.102365 [7] BIAN P, JIN Y, ZHANG N. Fuzzy c-means clustering based digital camouflage pattern design and its evaluation[C]//IEEE 10th International Conference on Signal Processing Proceedings. Beijing, China: IEEE Press, 2010: 1017-1020. [8] 冉建国, 刘珩, 张月. 基于pix2pix的数码迷彩方案研究[J]. 指挥控制与仿真, 2022, 44(3): 116-121. RAN J G, LIU H, ZHANG Y. Research on digital camouflage scheme based on pix2pix[J]. Command Control & Simulation, 2022, 44(3): 116-121(in Chinese). [9] 白万民, 郝阳, 喻钧. 基于分水岭方法的数码迷彩设计[J]. 计算机与数字工程, 2012, 40(8): 110-113. BAI W M, HAO Y, YU J. Design of digital camouflage based on watershed method[J]. Computer & Digital Engineering, 2012, 40(8): 110-113(in Chinese). [10] 滕旭, 张晖, 杨春明, 等. 基于循环一致性对抗网络的数码迷彩伪装生成方法[J]. 计算机应用, 2020, 40(2): 566-570. TENG X, ZHANG H, YANG Ch M, et al. Digital camouflage ge-neration method based on cycle-consistent adversarial network[J]. Journal of Computer Applications, 2020, 40(2): 566-570 (in Chinese). [11] CHERNOV V, ALANDER J, BOCHKO V. Integer-based accurate conversion between RGB and HSV color spaces[J]. Computers & Electrical Engineering, 2015, 46: 328-337. [12] 袁奋杰, 周晓, 丁军, 等. 基于FPGA的RGB和HSV色空间转换算法实现[J]. 电子器件, 2010, 33(4): 493- 497. YUAN F J, ZHOU X, DING J, et al. Design of RGB and HSV color space conversion based on FPGA[J]. Chinese Journal of Electron Devices, 2010, 33(4): 493- 497(in Chinese). [13] 黄雁华, 武文远, 龚艳春, 等. 量化颜色直方图的改进与应用[J]. 光电技术应用, 2011, 26(4): 76-80. HUANG Y H, WU W Y, GONG Y Ch, et al. Improvement and application of color histogram[J]. Electro-Optic Technology Application, 2011, 26(4): 76-80(in Chinese). [14] 吴厚航. FPGA数字图像采集与处理[M]. 北京: 清华大学出版社, 2020: 198-208. WU H H. Digital image acquisition and processing with FPGA[M]. Beijing: Tsinghua University Press, 2020: 198-208(in Chinese). [15] 牟新刚, 周晓, 郑晓亮. 基于FPGA的数字图像处理原理及应用[M]. 北京: 电子工业出版社, 2017: 227-243. MOU X G, ZHOU X, ZHENG X L. The principle and application of digital image processing based on FPGA[M]. Beijing: Publishing House of Electronics Industry, 2017: 227-243(in Chinese). [16] 李贵俊, 刘正熙, 游志胜, 等. 一种基于色差和彩色归一化的车身颜色识别算法[J]. 计算机应用, 2004, 24(9): 47- 49. LI G J, LIU Zh X, YOU Zh Sh, et al. Car-body color recognition algorithm based on color difference and color normalization[J]. Journal of Computer Applications, 2004, 24(9): 47- 49(in Ch-inese). [17] WANG Z, BOVIK A C, SHEIKH H R, et al. Image quality assessment: From error visibility to structural similarity[J]. IEEE Transactions on Image Processing, 2004, 13(4): 600-612. [18] 喻钧, 代军, 胡志毅, 等. 数字迷彩的伪装效果评价[J]. 西安工业大学学报, 2016, 36(7): 528-532. YU J, DAI J, HU Zh Y, et al. Digital camouflage effect evaluation[J]. Journal of Xi`an Technological University, 2016, 36(7): 528-532(in Chinese). [19] 李胜水, 钱元兴, 崔宝生, 等. 陆军设备变形迷彩图册: GJB 4004—2000[S]. 北京: 中国人民解放军总设备部, 2000. LI Sh Sh, QIAN Y X, CUI B Sh, et al. The volume of distortion pattern painting for army equipment: GJB 4004—2000[S]. Beijing: Central Military Commission of the People's Republic of China, 2000(in Chinese). [20] 喻钧, 双晓. 仿造数码迷彩的设计方法[J]. 应用科学学报, 2012, 30(4): 331-334. YU J, SHUANG X. Design of imitation digital camouflage[J]. Journal of Applied Sciences, 2012, 30(4): 331-334(in Chinese).