用于智慧工厂mes系统的设备运行数据压缩存储方法
技术领域
1.本发明涉及图像压缩存储领域,具体涉及用于智慧工厂mes系统的设备运行数据压缩存储方法。
背景技术:2.mes系统是一套面向制造企业车间执行层的生产信息化管理系统。mes可以为企业提供包括数据管理、生产过程控制、数据集成分析等管理模块,为企业打造一个扎实、可靠、全面、可行的制造协同管理平台。其中,生产过程控制主要通过生产监控视频,管理者通过生产设备运行过程中的运行监控视频,分析生产设备的运行状态,并对生产设备进行调控,实现对生产制造管理模式的优化,达到打造智慧工厂mes系统的目的。
3.通过运行监控视频分析生产设备的运行状态,并对生产设备进行调控,依托于大量实时的运行监控视频,想要获得大量实时的运行监控视频,需要对采集的运行监控视频进行压缩。
4.由于运行监控图像主要监控生产设备,生产设备的体积较大,且生产设备的颜色较为单一,因此,监控生产设备的运行监控图像具有较强的局部相似性和冗余性,本发明考虑通过分块编码实现对运行监控图像的压缩;但是对于区域属性发生突变的边缘像素点,无法被划分为规则的图像块,无法通过分块编码对边缘像素点进行压缩,同时,由于边缘像素点会将原本连续的区域在分块时,被划分为多个尺寸较小的图像块,影响运行监控图像的图像块的尺寸,进而影响运行监控图像的压缩效率。
技术实现要素:5.为了解决上述问题,本发明提供用于智慧工厂mes系统的设备运行数据压缩存储方法,所述方法包括:获取运行监控图像,获得运行监控图像上所有边缘像素点;计算每个边缘像素点的优先度,按照优先度从小到达的顺序,依次将边缘像素点作为起始像素点,根据起始像素点获得对应的方向链码;获得所有边缘像素点的所有方向链码,对所有方向链码进行编码存储;不考虑运行监控图像中的边缘像素点,通过四叉树表示法对运行监控图像进行多次迭代分解,对于每次分解得到的所有图像块,判断图像块是否满足同质性准则:对于满足同质性准则的图像块,不再进行分解,对于不满足同质性准则的图像块,通过四叉树表示法对图像块进行分解,直至所有的图像块均满足同质性准则;对获得的运行监控图像的所有图像块进行存储。
6.进一步地,所述计算每个边缘像素点的优先度的步骤包括:对于运行监控图像中的任意一个边缘像素点,对于以该边缘像素点为中心像素点的邻域内的所有边缘像素点,计算任意一个边缘像素点与中心像素点的差异度,将中心像素点的邻域内差异度大于第一阈值的边缘像素点的数量,记为中心像素点对应的边缘像素
点的优选度。
7.进一步地,所述计算任意一个边缘像素点与中心像素点的差异度的步骤包括:对于邻域内第个边缘像素点,所述边缘像素点与中心像素点的差异度的计算公式为:式中,表示邻域内第个边缘像素点的灰度值,表示中心像素点的灰度值,表示邻域内第个边缘像素点的梯度方向,表示表示中心像素点的梯度方向,表示第个边缘像素点与中心像素点的差异性。
8.进一步地,所述按照优先度从小到达的顺序,依次将边缘像素点作为起始像素点,根据起始像素点获得对应的方向链码的步骤包括:将所有边缘像素点组成的集合记为边缘集合;将优先度最大的边缘像素点作为起始像素点,获取以该起始像素点为中心的邻域内,与起始像素点的灰度值的差值小于5的所有边缘像素点中,差值最小且方向值最小的边缘像素点,作为该起始像素点的方向链码中的第二个像素点;判断以该起始像素点的方向链码中的第二个像素点为中心的16个方向中,将方向值与第二个像素点的方向值的方向差的绝对值小于等于2的方向上的边缘像素点作为该起始像素点的方向链码中的第三个像素点;同理,判断以该起始像素点的方向链码中的第三个像素点为中心的16个方向中,将方向值与第三个像素点的方向值的方向差的绝对值小于等于2的方向上的边缘像素点作为该起始像素点的方向链码中的第四个像素点;以此类推,获得组成方向链码的所有边缘像素点;将组成方向链码的所有边缘像素点从边缘集合中去除,重复上述步骤,直至边缘集合为空或者没有新的方向链码产生,获得所有边缘像素点的所有方向链码。
9.进一步地,所述方向差的计算方法包括:对于任意两个方向,计算两个方向的方向差的具体方法为:将两个方向中的第一个方向的方向值记为,将第二个方向的方向值记为,计算初始方向差,其中,表示取绝对值,表示除法取余,表示两个方向的初始方向差;判断第一个方向相对于第二个方向,第一个方向是在第二个的顺时针还是逆时针:如果第一个方向是在第二个的顺时针,则两个方向的方向差为初始方向差,如果第一个方向是在第二个的逆时针,则两个方向的方向差为初始方向差的负数。
10.进一步地,所述判断图像块是否满足同质性准则的步骤包括:对于任意一个图像块,获取图像块中除边缘像素点之外的其他所有像素点的最大灰度值和最小灰度值,以及所述所有像素点的灰度值的标准差;当图像块满足同质性准则时,即图像块中的最大灰度值和最小灰度值的差值不大于第二阈值且图像块中灰度值的标准差不大于第三阈值时,不对图像块继续进行分解;当图像块不满足同质性准则时,即图像块中的最大灰度值和最小灰度值的差值大于第二阈值或图像块中所有像素点的灰度值的
标准差大于第三阈值时,根据四叉树表示法继续对图像块进行划分。
11.本发明实施例至少具有如下有益效果:1.本发明对于运行监控图像中的边缘信息,考虑到边缘像素点是区域属性发生突变的地方,因此边缘像素点无法被划分为规则的图像块,无法通过分块编码对边缘像素点进行压缩,同时,由于边缘像素点会将原本连续的区域在分块时,被划分为多个尺寸较小的图像块,影响运行监控图像的图像块的尺寸,进而影响运行监控图像的压缩效率,因此,本发明单独对边缘像素点进行损失程度较小的有损压缩,在保证不丢失运行监控图像的重要边缘信息的同时,去除边缘像素点对运行监控图像的图像块的尺寸的影响,增加图像块的尺寸,进而保证运行监控图像的压缩效率。
12.2.考虑到边缘像素点大多沿梯度方向的垂直方向连续排列,且灰度值相同或相似,因此,本发明将灰度值相同或相似的边缘像素点的位置信息转换为16方向链码,进而将连续的灰度值相同或相似的多个边缘像素点,用(起始像素点位置,灰度值,一阶查分链码)来表示,并对(起始像素点位置,灰度值,一阶查分链码)进行编码,实现对边缘像素点的有损压缩,保证运行监控图像的重要边缘信息不丢失。
附图说明
13.为了更清楚地说明本发明实施例或现有技术中的技术方案和优点,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
14.图1为本发明一个实施例提供的用于智慧工厂mes系统的设备运行数据压缩存储方法的步骤流程图;图2为本发明一个实施例提供的方向链码的方向分布图;图3为本发明一个实施例提供的一阶差分值的霍夫曼编码表;图4为本发明一个实施例提供的示例图像。
具体实施方式
15.为了更进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明提出的用于智慧工厂mes系统的设备运行数据压缩存储方法,其具体实施方式、结构、特征及其功效,详细说明如下。在下述说明中,不同的“一个实施例”或“另一个实施例”指的不一定是同一实施例。此外,一或多个实施例中的特定特征、结构、或特点可由任何合适形式组合。
16.除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。
17.下面结合附图具体的说明本发明所提供的用于智慧工厂mes系统的设备运行数据压缩存储方法的具体方案。
18.请参阅图1,其示出了本发明一个实施例提供的用于智慧工厂mes系统的设备运行数据压缩存储方法的步骤流程图,该方法包括以下步骤:s001,获取运行监控图像。
19.通过设置在工厂中的监控摄像头采集运行监控视频,将运行监控视频的每一帧图像作为运行监控图像。管理者通过生产设备运行过程中的运行监控视频,分析生产设备的运行状态,并对生产设备进行调控,因此,运行监控视频主要监控生产设备,因此,运行监控图像中主要是体积大且颜色单一的生产设备;考虑到管理人员通过运行监控图像对生产设备的运行状态进行监控时,通常是监控生产设备的整体信息,而不会特别关注生产设备的细节信息。
20.s002,对运行监控图像进行边缘检测,将边缘像素点转换为方向链码,对所有方向链码进行编码,实现对边缘像素点的无损压缩。
21.需要说明的是,由于运行监控图像主要监控生产设备,生产设备的体积较大,且生产设备的颜色较为单一,因此,监控生产设备的运行监控图像具有较强的局部相似性和冗余性;考虑到管理人员通过运行监控图像对生产设备的运行状态进行监控时,通常是监控生产设备的整体信息,而不会特别关注生产设备的细节信息。综合上述特性,本发明结合主观保真度,通过分块编码对运行监控图像进行有损压缩,其中,由于运行监控图像具有较强的局部相似性和冗余性,因此,可以保证对运行监控图像进行分块后,获得的图像块的尺寸大,进而保证运行监控图像的压缩效率;由于可以适当舍弃运行监控图像的细节信息,因此,只要保证图像块中所有像素点的灰度值的差异在人眼接受的范围内,即分块编码后的图像块的主观保真度符合要求,则可以增加图像块的尺寸,进而保证运行监控图像的压缩效率;因此,结合主观保真度通过分块编码对运行监控图像进行有损压缩的压缩效率较高。
22.对于运行监控图像中的边缘信息,由于边缘像素点是区域属性发生突变的地方,因此边缘像素点无法被划分为规则的图像块,无法通过分块编码对边缘像素点进行压缩,同时,由于边缘像素点会将原本连续的区域在分块时,被划分为多个尺寸较小的图像块,影响运行监控图像的图像块的尺寸,进而影响运行监控图像的压缩效率,因此,本发明单独对边缘像素点进行损失程度较小的有损压缩,在保证不丢失运行监控图像的重要边缘信息的同时,去除边缘像素点对运行监控图像的图像块的尺寸的影响,增加图像块的尺寸,进而保证运行监控图像的压缩效率。
23.由于边缘像素点大多沿梯度方向的垂直方向连续排列,且灰度值相同或相似,因此,本发明将灰度值相同或相似的边缘像素点的位置信息转换为16方向链码,进而将连续的灰度值相同或相似的多个边缘像素点,用(起始像素点位置,灰度值,一阶查分链码)来表示,并对(起始像素点位置,灰度值,一阶查分链码)进行编码,实现对边缘像素点的有损压缩。
24.在本实施例中,对运行监控图像进行边缘检测,将边缘像素点转换为方向链码,对所有方向链码进行编码,实现对边缘像素点的无损压缩的具体步骤为:1、对运行监控图像进行边缘检测,获得运行监控图像的所有边缘像素点。
25.需要说明的是,边缘信息是运行监控图像最基本的特征,是区域属性发生突变的地方,是运行监控图像中不确定性最大的地方,也是运行监控图像信息最集中的地方,因此,运行监控图像的边缘像素点是运行监控图像的重要信息,为了保证运行监控图像的重要信息不丢失,也为了减少边缘像素点对运行监控图像的分块结果的影响,本发明对运行监控图像的边缘像素点单独进行损失程度较小的有损压缩。
26.在本实施例中,通过canny边缘检测算法对运行监控图像进行边缘检测,获得运行
监控图像的所有边缘像素点,并计算每个边缘像素点的梯度方向。
27.2、计算每个边缘像素点的优先度。
28.需要说明的是,本发明将灰度值相同或相似的边缘像素点的位置信息转换为16方向链码,进而将连续的灰度值相同或相似的多个边缘像素点,用(起始像素点位置,灰度值,一阶查分链码)来表示,因此,首先需要确定16方向链码的起始像素点;对于边缘像素点,其邻域内与其梯度方向和灰度值差异较大的边缘像素点的数量越大,则说明该边缘像素点是多条边缘的相交的位置,进而可以认为该边缘像素点是多条边缘的起始像素点,以该边缘像素点为起始像素点,获得的16方向链码长,进而使压缩效率提高。
29.在本实施例中,对于任意一个边缘像素点,计算该边缘像素点的优选度,具体计算公式为:获取以该边缘像素点为中心像素点的邻域内的所有边缘像素点,计算邻域内的第个边缘像素点与中心像素点的差异度,第个边缘像素点与中心像素点的差异度的计算公式为:式中,表示邻域内第个边缘像素点的灰度值,表示中心像素点的灰度值,表示邻域内第个边缘像素点的梯度方向,表示表示中心像素点的梯度方向,表示第个边缘像素点与中心像素点的差异性。
30.对于第个边缘像素点,其与中心像素点的灰度值和梯度方向的差值越大,说明该边缘像素点与中心像素点的差异越大,则第个边缘像素点与中心像素点的差异度越大。
31.将以该边缘像素点为中心像素点的邻域内的所有边缘像素点,与中心像素点的差异度大于第一阈值的边缘像素点的数量,记为中心像素点对应的该边缘像素点的优选度,获取所有边缘像素点的优选度。在本实施例中,第一阈值为0.1,在其他实施例中,实施人员可根据需要设置第一阈值。
32.3、获得方向链码的方向和方向差。
33.在本实施例中,以任意一个像素点为中心,获得该像素点的邻域的16个方向,分别记为0方向到15方向,方向值分别为0到15,如图2所示。
34.对于任意两个方向,计算两个方向的方向差的具体方法为:将两个方向中的第一个方向的方向值记为,将第二个方向的方向值记为,计算初始方向差,其中,表示取绝对值,表示除法取余,表示两个方向的初始方向差;判断第一个方向相对于第二个方向,第一个方向是在第二个的顺时针还是逆时针:如果第一个方向是在第二个的顺时针,则两个方向的方向差为初始方向差,如果第一个方向是在第二个的逆时针,则两个方向的方向差为初始方向差的负数。
35.例如,1方向与0方向的方向差为1,0方向与1方向的方向差为-1,15方向与0方向的
方向差为-1,0方向与15方向的方向差为1,8方向和14方向的方向差为-6,14方向和8方向的方向差为6。
36.4、根据边缘像素点的优先度获得起始像素点,根据起始像素点获得对应的方向链码,获得所有边缘像素点的所有方向链码。
37.(1)将所有边缘像素点组成的集合记为边缘集合;将边缘集合中优先度最大的边缘像素点作为起始像素点,判断以该起始像素点为中心的16个方向中,是否存在与该起始像素点的灰度值的差值小于5的边缘像素点,如果存在,则继续步骤(2);如果不存在,则将边缘集合中优先度第二大的边缘像素点作为起始像素点,重复步骤(1)。
38.(2)获得与起始像素点的灰度值的差值小于5的所有边缘像素点中差值最小的一个边缘像素点,如果存在多个差值最小的边缘像素点,则获取以起始像素点为中心的多个差值最小的边缘像素点的方向值,将多个差值最小的边缘像素点中方向值最小的边缘像素点,作为该起始像素点的方向链码中的第二个像素点。
39.(3)获得与方向链码中的第二个像素点的灰度值的差值小于5的所有边缘像素点,根据方向链码中第二个像素点的方向值,判断以方向链码中的第二个像素点为中心的16个方向中,方向值与第二个像素点的方向值的方向差的绝对值不大于2的多个方向上,是否存在边缘像素点:如果不存在,则停止当前方向链码的获得,重复步骤(1);如果存在一个,则将该边缘像素点作为该起始像素点的方向链码中的第三个像素点;如果存在多个,则将方向值与第二个像素点的方向值的方向差的绝对值最小的边缘像素点作为该起始像素点的方向链码中的第三个像素点。
40.(4)重复步骤(3),获得组成该起始像素点对应的方向链码的所有像素点的数量:如果数量小于4,则将该方向链码去除;如果数量不小于4,则将该方向链码保留,并将组成该方向链码的所有像素点对应的边缘像素点,从边缘集合中去除,获得新的边缘集合。
41.重复上述步骤(1)到步骤(4),直至边缘集合为空,或者没有新的方向链码产生。
42.对于任意一条方向链码,用起始像素点位置、起始像素点灰度值和方向值序列来表示,其中,方向值序列是组成方向链码的所有像素点中,后一个像素点相对于前一个像素点的方向值组成的。
43.例如,一条方向链码中,起始像素点位置的位置为,起始像素点的灰度值为,方向值序列为5、对方向链码进行编码。
44.需要说明的是,由于边缘像素点大多沿梯度方向的垂直方向连续排列,且组成同一个边缘的边缘像素点的梯度方向大致相同,因此,上述步骤获得的方向链码的方向值序列中,方向值的差异较小,因此,方向值序列的一阶差分序列中,一阶差分值为0的概率最大,一阶差分值为1、-1、2、-2的概率依次减小,因此,本发明对一阶差分序列中的一阶差分值进行霍夫曼编码,提高边缘像素点的压缩效率较高。
45.在本实施例中,将方向链码的方向值序列进行一阶差分计算,获得方向值序列的一阶差分序列,记为一阶差分链码,并通过霍夫曼编码对一阶差分链码进行编码,其中,一阶差分链码的霍夫曼编码表如图3所示,具体为:一阶差分值为0,对应的编码为;一阶查
分值为1,对应的编码为;一阶差分值为-1,对应的编码为;一阶差分值为2,对应的编码为;一阶差分值为-2,对应的编码为。
46.例如,上述示例中,一条方向链码的方向值序列为,则一阶差分链码为,进行霍夫曼编码后为,其中编码的前4位为一阶差分链码中的方向值10的编码,由于方向值为0到15,因此,通过4位二进制进行编码。
47.s003,不考虑运行监控图像中的边缘像素点,通过四叉树表示法对运行监控图像进行多次迭代分解,直至所有的图像块均满足同质性准则,获得运行监控图像的所有图像块进行分块,并将所有图像块进行存储。
48.1、通过四叉树表示法将运行监控图像分解,获得运行监控图像的所有图像块进行分块。
49.需要说明的是,对于运行监控图像中的边缘信息,由于边缘像素点是区域属性发生突变的地方,因此边缘像素点无法被划分为规则的图像块,无法通过分块编码对边缘像素点进行压缩,同时,由于边缘像素点会将原本连续的区域在分块时,被划分为多个尺寸较小的图像块,影响运行监控图像的图像块的尺寸,进而影响运行监控图像的压缩效率,因此,本发明单独对边缘像素点进行损失程度较小的有损压缩,并将运行监控图像轴的边缘像素点作为可变像素点,进而对运行监控图像进行分块,在保证不丢失运行监控图像的重要边缘信息的同时,去除边缘像素点对运行监控图像的图像块的尺寸的影响,增加图像块的尺寸,进而保证运行监控图像的压缩效率。
50.在本实施例中,通过四叉树表示法将图像分解,具体步骤为:图像的四叉树表示法采用金字塔式的数据结构存储图像,其中四叉树的树根对应整幅图像,叶子节点对应单个像素或者具有相同特征的像素组成的方阵,每个非叶子节点均有4个子节点,四叉树表示法将图像分解为多级,其中树根为第0级,每分一次叉多一级。
51.不考虑运行监控图像中的边缘像素点,通过四叉树表示法分解是将运行监控图像划分为4个等尺寸的图像块,然后判定4个图像块是否满足给定的同质性准则,如果当前图像块满足准则,则保持不变,否则继续分解为4个图像块,并判定是否满足同质性准则,直到所有的图像块满足给定的准则为止,对于图像块块中的边缘像素点不参与上述同质性准则的判断过程中。
52.本发明的同质性准则可表示为:,式中分别代表图像块中的最大灰度值和最小灰度值,代表图像块中所有像素点的灰度值的方差,表示第二阈值,表示第三阈值;当图像块满足同质性准则时,即图像块中的最大灰度值和最小灰度值的差值不大于第二阈值且图像块中所有像素点的灰度值的标准差不大于第三阈值时,不对图像块继续进行分解;当图像块不满足同质性准则时,即图像块中的最大灰度值和最小灰度值的差值大于第二阈值或图像块中所有像素点的灰度值的标准差大于第三阈值时,根据四叉树表示法继续对图像块进行划分,直至所有的图像块均满足同质性准则或图像块的大小不大于最小尺寸,本发明规定图像块的最小尺寸为。
53.在本实施例中,第二阈值,第三阈值,在其他实施例中,实施人员可根据需要设置第二阈值和第三阈值。
54.2、将所有图像块进行压缩存储。
55.在通过四叉树表示法对运行监控图像进行分解时,判断图像块是否符合同质性准则,如果符合,则记为0,否则,则记为1,对于记为0的分解结束,对于记为1的继续进行分解,以此获得运行监控图像的分解编码,根据运行监控图像的分解编码获得运行监控图像的灰度均值序列。
56.例如,如图4所示的图像,通过四叉树表示法进行分解后的分解编码为10010,灰度值均值序列为24,59,45,99,74,76,89。
57.综上所述,本发明获得运行监控图像上所有边缘像素点;按照优先度从小到达的顺序,依次将边缘像素点作为起始像素点,获得所有边缘像素点的所有方向链码,对所有方向链码进行编码存储;不考虑运行监控图像中的边缘像素点,通过四叉树表示法对运行监控图像进行多次迭代分解,直至所有的图像块均满足同质性准则;对获得的运行监控图像的所有图像块进行存储。本发明分别对运行监控图像的边缘像素点和图像块进行存储,在保证不丢失运行监控图像的重要边缘信息的同时,去除边缘像素点对运行监控图像的图像块的尺寸的影响,进而保证运行监控图像的压缩效率。
58.需要说明的是:上述本发明实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
59.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。
60.以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的范围,均应包含在本技术的保护范围之内。