掌桥专利:专业的专利平台
掌桥专利
首页

一种在拼接影像中拼接错误区域的识别方法

文献发布时间:2023-06-19 18:58:26


一种在拼接影像中拼接错误区域的识别方法

技术领域

本发明公开一种在拼接影像中拼接错误区域的识别方法,属于拼接影像处理技术领域。

背景技术

利用影像拼接技术可以将手机、无人机拍摄的影像拼接为一个大范围正射影像或者拼接为全景影像,构建高质量的拼接影像对于地图绘制、现场内容还原、虚拟现实场景还原等应用具有非常重要的价值。

在中影像拼接过程中一个关键步骤是需要利用SIFT算法寻找不同影像中互相匹配的位置,并基于这些“位置”将多个影像组合在一起;然而,在实际工作影像中内容往往会出现:过于近似和单一的纹理、完全无特征的单一颜色(如天空)、偶发的局部近似特征(如两辆相同的汽车);这些特征往往会导致拼接错位,导致拼接影像中出现不规则的颜色混乱条带,极大的影响了拼接影像的质量。因此,非常有必要发现识别出这些拼接错误区域,进行拼接影像的质量检查和校验工作,以提高拼接影像的质量。

对于拼接影像中拼接错误区域的识别,当前方式行业内主要采取两种工作模式:1)以纯人工的方式在大型拼接影像中检查,这种方式效率较低人力成本较高不适合大范围拼接工作;而且往往由于拼接后影像过大,人在实际检查的过程中不可避免的出现较多的遗漏。2)在拼接影像中人工添加检查点(如人工在地面摆放检查点标志物),计算机依据检查点来校验拼接位置;这种模式应用范围十分有限,一些地区不具备大量摆放检查点的条件,而且检查点物体也会出现在最终拼接结果中,影响拼接影像的展现效果。

发明内容

本发明提供一种在拼接影像中拼接错误区域的识别方法,对于输入的拼接影像,构造了规律变化探测算子可以对局部区域影像内容变化的规律性进行描述,进而依据规律变化特性利用特性差异算子来对不规则的程度进行描述,进而判断拼接影像中的特定区域拼接错误情况进行识别。

本发明所述的一种在拼接影像中拼接错误区域的识别方法,包括以下步骤:

S1,输入已经拼接好影像Image,输入检测细致度Ixz;获取Image的宽度IWidth,获取Image的高度IHeight;建立异质性探测列表Iyzlist;获得异质性探测列表元素个数IyzlistNum;

S101,输入已经拼接好影像Image,Image为一个灰度影像采用二维数组存储;

S102,输入检测细致度Ixz;

S103,获取Image的宽度IWidth=Image的宽度;

S104,获取Image的高度IHeight=Image的高度;

S105,建立异质性探测列表Iyzlist=一个空列表;

S106,横向探索初始化变量IInitWid=Ixz+Ixz/2;

S107,纵向探索初始化变量IInitHig=Ixz+Ixz/2;

S108,建立异质性探测表项IInitStruct,它包含以下字段:

ISWPos:横向坐标,该字段值为IInitWid;

ISHPos:纵向坐标,该字段值为IInitHig;

ISWF:横向规律变化特征数组,该数组初始化为一个5个元素的数组,数组内容全为-1;

ISHF:纵向规律变化特征数组,该数组初始化为一个5个元素的数组,数组内容全为-1;

ISBWF:横向大范围规律变化特征数组,该数组初始化为一个5个元素的数组,数组内容全为-1;

ISBHF:纵向大范围规律变化特征数组,该数组初始化为一个5个元素的数组,数组内容全为-1;

S109,将IInitStruct加入到Iyzlist之中;

S110,IInitHig=IInitHig+Ixz;

S111,如果IInitHig<=(IHeight-Ixz/2)则转到S108, 否则转到S112;

S112,IInitWid=IInitWid+Ixz;

S113,如果IInitWid<=(IInitWid-Ixz/2)则转到S107,否则转到S114;

S114,获得异质性探测列表元素个数IyzlistNum=Iyzlist中表项的个数;

S2,建立数组变化特性算子OptChange,OptChange的输入为待分析数组OptCArray,OptChange的输出为数组变化特性结果数组OptCResult;

S201,建立数组变化规律特性算子OptChange,OptChange的输入为待分析数组OptCArray;

S202,建立数组变化特性结果数组OptCResult=一个5个元素的数组,数组所有元素初始值都为-1;

S203,待分析数组元素个数变量OptCNum=OptCArray的元素个数;

S204,变化特性算子计数器OptCi=1;

S205,变化特性第一暂存变量

OhDTemp1=abs((OptCArray[OptCi]-OptCArray[OptCi+1])/255),

其中abs为计算绝对值;

S206,变化特性第二暂存变量OhDTemp2=tanh(OhDTemp1)+0.2, 其中tanh为计算双曲正切值;

S207,变化特性第三暂存变量

OhDTemp3=(Max(OptCArray)-OptCArray[OptCi])/Std(OptCArray),

其中Max为获得数组中所有元素的最大值,Std为获得数组中所有元素的标准差;

S208,变化特性第四暂存变量

OhDTemp4=(OptCArray[OptCi]-Min(OptCArray))/Std(OptCArray),

其中Min为获得数组中所有元素的最小值,Std为获得数组中所有元素的标准差;

S209,变化特性第五暂存变量OhDTemp5=(OhDTemp3+OhDTemp4)/(1+OhDTemp2);

S210,建立变化特性暂存数组OhDTempArray,数组内容顺次为OhDTemp1/OptCNum,OhDTemp2/OptCNum,OhDTemp3/OptCNum,

OhDTemp4/OptCNum,OhDTemp5/OptCNum;

S211,OptCResult=OptCResult +OhDTempArray;

S212,OptCi=OptCi+1;

S213,如果OptCi<=(OptCNum-1)则转到S205,否则转到S214;

S214,将OptCResult作为OptChange的结果输出;

S3,建立规律变化探测算子Opthx,Opthx的输入为待探测表项位置hxinput;

S301,建立规律变化探测算子Opthx,Opthx的输入为待探测表项位置hxinput

S302,规律变化探测算子的横向中心变量OhxH=Iyzlist[hxinput].ISWPos;

S303,规律变化探测算子的纵向中心变量OhxZ=Iyzlist[hxinput].ISHPos;

S304,横向小范围数组Ohxa=在Image中取出纵坐标为OhxZ且横坐标在OhxH-Ixz至OhxH+Ixz之间的所有元素;

S305,横向大范围数组Ohda=在Image中取出纵坐标为OhxZ且横坐标在OhxH-3×Ixz/2至OhxH+3×Ixz/2之间的所有元素;

S306,纵向小范围数组Ozxa=在Image中取出纵坐标为在OhxZ-Ixz值OhxZ+Ixz范围内且横坐标为OhxH的所有元素;

S307,纵向大范围数组Ozda=在Image中取出纵坐标为在OhxZ-3×Ixz/2值OhxZ+3×Ixz/2范围内且横坐标为OhxH的所有元素;

S308,Iyzlist[hxinput].ISWF=利用OptChange算子进行计算,算子输入OptCArray=Ohxa,算子的输出OptCResult作为结果返回;

S309,Iyzlist[hxinput].ISHF=利用OptChange算子进行计算,算子输入OptCArray=Ozxa,算子的输出OptCResult作为结果返回;

S310,Iyzlist[hxinput].ISBWF=利用OptChange算子进行计算,算子输入OptCArray=Ohda,算子的输出OptCResult作为结果返回;

S311,Iyzlist[hxinput].ISBHF=利用OptChange算子进行计算,算子输入OptCArray=Ozda,算子的输出OptCResult作为结果返回;

S312,规律变化探测算子Opthx的计算过程结束;

S4,利用规律变化探测算子Opthx处理整个异质性探测列表Iyzlist;

S401,处理计数器CLi=1;

S402,利用规律变化探测算子Opthx进行计算,算子输入hxinput=CLi;

S403,CLi=CLi+1;

S404,如果CLi<=IyzlistNum则转到S402,否则转到S405;

S405,第S4步骤结束;

S5,建立异质性分析算子OptDeff,OptDeff算子的输入为待比对第一数组ODA1和待比对第二数组ODA2,OptDeff算子的输出为异质性结果变量ODResult;

S501,建立异质性分析算子OptDeff,算子的输入为待比对第一数组ODA1和待比对第二数组ODA2;

S502,建立异质性结果变量ODResult=0;

S503,差异第一暂存变量ODTemp1=abs(ODA1[1]-ODA2[1]), 其中abs为计算绝对值;

S504,差异第二暂存变量ODTemp2=abs(ODA1[2]-ODA2[2]), 其中abs为计算绝对值;

S505,差异第三暂存变量ODTemp3=abs(ODA1[3]-ODA2[3]), 其中abs为计算绝对值;

S506,差异第四暂存变量ODTemp4=abs(ODA1[4]-ODA2[4]), 其中abs为计算绝对值;

S507,差异第五暂存变量ODTemp5=abs(ODA1[5]-ODA2[5]), 其中abs为计算绝对值;

S508,ODResult=ODTemp1×2+ODTemp2+ODTemp3×0.5+ODTemp4×0.5+ODTemp5;

S509,ODResult=ODResult/5;

S510,将ODResult作为OptDeff的结果输出;

S6,利用特性差异算子OptDeff和异质性探测列表Iyzlist,在Image中标记出现拼接错误的区域;

S601,标记计数器Marki=1;

S602,异质性标记第一暂存变量DMTemp1=利用OptDeff进行计算,OptDeff的待比对第一数组ODA1=Iyzlist[Marki].ISWF, 待比对第二数组ODA2=Iyzlist[Marki].ISBWF;算子的输出ODResult作为结果返回;

S603,异质性标记第二暂存变量DMTemp2=利用OptDeff进行计算,OptDeff的待比对第一数组ODA1=Iyzlist[Marki].ISHF, 待比对第二数组ODA2=Iyzlist[Marki].ISBHF;算子的输出ODResult作为结果返回;

S604,异质性标记第二暂存变量DMTemp3=利用OptDeff进行计算,OptDeff的待比对第一数组ODA1=Iyzlist[Marki].ISWF, 待比对第二数组ODA2=Iyzlist[Marki].ISHF;算子的输出ODResult作为结果返回;

S605,如果DMTemp1>0.5或者DMTemp2>0.5, 则转到S607,否则转到S606;

S606,如果(DMTemp1+DMTemp2+DMTemp3)>1.5,转到S607,否则转到S610;

S607,用于标记的横向中心变量Mh=Iyzlist[Marki].ISWPos;

S608,用于标记的纵向中心变量Mz=Iyzlist[Marki].ISHPos;

S609,识别出一个拼接错误区域,在横坐标Mh和纵坐标Mz存在拼接异常,将该坐标输出;

S610,Marki=Marki+1;

S611,如果Marki<=IyzlistNum则转到S602,否则转到S612;

S612,第S6步骤结束。

本发明的积极效果在于

提供一种在拼接影像中拼接错误区域的识别方法,可以自动化对拼接影像中所有区域进行快速的扫描,并将可能存在拼接错误区域的识别出来;对于快速的在大量的、大范围的拼接影像识别拼接错误具有十分重要的价值。提高拼接影像的质量检查、校验工作的效率和质量。

附图说明

图1 为本发明实施例2已经拼接好影像Image。

具体实施方式

通过以下实施例进一步举例描述本发明,并不以任何方式限制本发明,在不背离本发明的技术解决方案的前提下,对本发明所作的本领域普通技术人员容易实现的任何改动或改变都将落入本发明的权利要求范围之内。

实施例1

本发明在拼接影像中拼接错误区域的识别方法,包括以下步骤:

S1,输入已经拼接好影像Image,输入检测细致度Ixz;获取Image的宽度IWidth,获取Image的高度IHeight;建立异质性探测列表Iyzlist;获得异质性探测列表元素个数IyzlistNum;

S101,输入已经拼接好影像Image,Image为一个灰度影像采用二维数组存储;

S102,输入检测细致度Ixz;

S103,获取Image的宽度IWidth=Image的宽度;

S104,获取Image的高度IHeight=Image的高度;

S105,建立异质性探测列表Iyzlist=一个空列表;

S106,横向探索初始化变量IInitWid=Ixz+Ixz/2;

S107,纵向探索初始化变量IInitHig=Ixz+Ixz/2;

S108,建立异质性探测表项IInitStruct,它包含以下字段:

ISWPos:横向坐标,该字段值为IInitWid;

ISHPos:纵向坐标,该字段值为IInitHig;

ISWF:横向规律变化特征数组,该数组初始化为一个5个元素的数组,数组内容全为-1;

ISHF:纵向规律变化特征数组,该数组初始化为一个5个元素的数组,数组内容全为-1;

ISBWF:横向大范围规律变化特征数组,该数组初始化为一个5个元素的数组,数组内容全为-1;

ISBHF:纵向大范围规律变化特征数组,该数组初始化为一个5个元素的数组,数组内容全为-1;

S109,将IInitStruct加入到Iyzlist之中;

S110,IInitHig=IInitHig+Ixz;

S111,如果IInitHig<=(IHeight-Ixz/2)则转到S108, 否则转到S112;

S112,IInitWid=IInitWid+Ixz;

S113,如果IInitWid<=(IInitWid-Ixz/2)则转到S107,否则转到S114;

S114,获得异质性探测列表元素个数IyzlistNum=Iyzlist中表项的个数;

S2,建立数组变化特性算子OptChange,OptChange的输入为待分析数组OptCArray,OptChange的输出为数组变化特性结果数组OptCResult;

S201,建立数组变化规律特性算子OptChange,OptChange的输入为待分析数组OptCArray;

S202,建立数组变化特性结果数组OptCResult=一个5个元素的数组,数组所有元素初始值都为-1;

S203,待分析数组元素个数变量OptCNum=OptCArray的元素个数;

S204,变化特性算子计数器OptCi=1;

S205,变化特性第一暂存变量

OhDTemp1=abs((OptCArray[OptCi]-OptCArray[OptCi+1])/255),

其中abs为计算绝对值;

S206,变化特性第二暂存变量OhDTemp2=tanh(OhDTemp1)+0.2, 其中tanh为计算双曲正切值;

S207,变化特性第三暂存变量

OhDTemp3=(Max(OptCArray)-OptCArray[OptCi])/Std(OptCArray),

其中Max为获得数组中所有元素的最大值,Std为获得数组中所有元素的标准差;

S208,变化特性第四暂存变量

OhDTemp4=(OptCArray[OptCi]-Min(OptCArray))/Std(OptCArray),

其中Min为获得数组中所有元素的最小值,Std为获得数组中所有元素的标准差;

S209,变化特性第五暂存变量OhDTemp5=(OhDTemp3+OhDTemp4)/(1+OhDTemp2);

S210,建立变化特性暂存数组OhDTempArray,数组内容顺次为OhDTemp1/OptCNum,OhDTemp2/OptCNum,OhDTemp3/OptCNum,

OhDTemp4/OptCNum,OhDTemp5/OptCNum;

S211,OptCResult=OptCResult +OhDTempArray;

S212,OptCi=OptCi+1;

S213,如果OptCi<=(OptCNum-1)则转到S205,否则转到S214;

S214,将OptCResult作为OptChange的结果输出;

S3,建立规律变化探测算子Opthx,Opthx的输入为待探测表项位置hxinput;

S301,建立规律变化探测算子Opthx,Opthx的输入为待探测表项位置hxinput

S302,规律变化探测算子的横向中心变量OhxH=Iyzlist[hxinput].ISWPos;

S303,规律变化探测算子的纵向中心变量OhxZ=Iyzlist[hxinput].ISHPos;

S304,横向小范围数组Ohxa=在Image中取出纵坐标为OhxZ且横坐标在OhxH-Ixz至OhxH+Ixz之间的所有元素;

S305,横向大范围数组Ohda=在Image中取出纵坐标为OhxZ且横坐标在OhxH-3×Ixz/2至OhxH+3×Ixz/2之间的所有元素;

S306,纵向小范围数组Ozxa=在Image中取出纵坐标为在OhxZ-Ixz值OhxZ+Ixz范围内且横坐标为OhxH的所有元素;

S307,纵向大范围数组Ozda=在Image中取出纵坐标为在OhxZ-3×Ixz/2值OhxZ+3×Ixz/2范围内且横坐标为OhxH的所有元素;

S308,Iyzlist[hxinput].ISWF=利用OptChange算子进行计算,算子输入OptCArray=Ohxa,算子的输出OptCResult作为结果返回;

S309,Iyzlist[hxinput].ISHF=利用OptChange算子进行计算,算子输入OptCArray=Ozxa,算子的输出OptCResult作为结果返回;

S310,Iyzlist[hxinput].ISBWF=利用OptChange算子进行计算,算子输入OptCArray=Ohda,算子的输出OptCResult作为结果返回;

S311,Iyzlist[hxinput].ISBHF=利用OptChange算子进行计算,算子输入OptCArray=Ozda,算子的输出OptCResult作为结果返回;

S312,规律变化探测算子Opthx的计算过程结束;

S4,利用规律变化探测算子Opthx处理整个异质性探测列表Iyzlist;

S401,处理计数器CLi=1;

S402,利用规律变化探测算子Opthx进行计算,算子输入hxinput=CLi;

S403,CLi=CLi+1;

S404,如果CLi<=IyzlistNum则转到S402,否则转到S405;

S405,第S4步骤结束;

S5,建立异质性分析算子OptDeff,OptDeff算子的输入为待比对第一数组ODA1和待比对第二数组ODA2,OptDeff算子的输出为异质性结果变量ODResult;

S501,建立异质性分析算子OptDeff,算子的输入为待比对第一数组ODA1和待比对第二数组ODA2;

S502,建立异质性结果变量ODResult=0;

S503,差异第一暂存变量ODTemp1=abs(ODA1[1]-ODA2[1]), 其中abs为计算绝对值;

S504,差异第二暂存变量ODTemp2=abs(ODA1[2]-ODA2[2]), 其中abs为计算绝对值;

S505,差异第三暂存变量ODTemp3=abs(ODA1[3]-ODA2[3]), 其中abs为计算绝对值;

S506,差异第四暂存变量ODTemp4=abs(ODA1[4]-ODA2[4]), 其中abs为计算绝对值;

S507,差异第五暂存变量ODTemp5=abs(ODA1[5]-ODA2[5]), 其中abs为计算绝对值;

S508,ODResult=ODTemp1×2+ODTemp2+ODTemp3×0.5+ODTemp4×0.5+ODTemp5;

S509,ODResult=ODResult/5;

S510,将ODResult作为OptDeff的结果输出;

S6,利用特性差异算子OptDeff和异质性探测列表Iyzlist,在Image中标记出现拼接错误的区域;

S601,标记计数器Marki=1;

S602,异质性标记第一暂存变量DMTemp1=利用OptDeff进行计算,OptDeff的待比对第一数组ODA1=Iyzlist[Marki].ISWF, 待比对第二数组ODA2=Iyzlist[Marki].ISBWF;算子的输出ODResult作为结果返回;

S603,异质性标记第二暂存变量DMTemp2=利用OptDeff进行计算,OptDeff的待比对第一数组ODA1=Iyzlist[Marki].ISHF, 待比对第二数组ODA2=Iyzlist[Marki].ISBHF;算子的输出ODResult作为结果返回;

S604,异质性标记第二暂存变量DMTemp3=利用OptDeff进行计算,OptDeff的待比对第一数组ODA1=Iyzlist[Marki].ISWF, 待比对第二数组ODA2=Iyzlist[Marki].ISHF;算子的输出ODResult作为结果返回;

S605,如果DMTemp1>0.5或者DMTemp2>0.5, 则转到S607,否则转到S606;

S606,如果(DMTemp1+DMTemp2+DMTemp3)>1.5,转到S607,否则转到S610;

S607,用于标记的横向中心变量Mh=Iyzlist[Marki].ISWPos;

S608,用于标记的纵向中心变量Mz=Iyzlist[Marki].ISHPos;

S609,识别出一个拼接错误区域,在横坐标Mh和纵坐标Mz存在拼接异常,将该坐标输出;

S610,Marki=Marki+1;

S611, 如果Marki<=IyzlistNum则转到S602,否则转到S612;

S612,第S6步骤结束。

实施例2

S1,输入已经拼接好影像Image,输入检测细致度Ixz;获取Image的宽度IWidth,获取Image的高度IHeight;建立异质性探测列表Iyzlist;获得异质性探测列表元素个数IyzlistNum;

S101,输入已经拼接好影像Image,Image为一个灰度影像采用二维数组存储;

S102,输入检测细致度Ixz;

S103,获取Image的宽度IWidth=Image的宽度;

S104,获取Image的高度IHeight=Image的高度;

S105,建立异质性探测列表Iyzlist=一个空列表;

S106,横向探索初始化变量IInitWid=Ixz+Ixz/2;

S107,纵向探索初始化变量IInitHig=Ixz+Ixz/2;

S108,建立异质性探测表项IInitStruct,它包含以下字段:

ISWPos:横向坐标,该字段值为IInitWid;

ISHPos:纵向坐标,该字段值为IInitHig;

ISWF:横向规律变化特征数组,该数组初始化为一个5个元素的数组,数组内容全为-1;

ISHF:纵向规律变化特征数组,该数组初始化为一个5个元素的数组,数组内容全为-1;

ISBWF:横向大范围规律变化特征数组,该数组初始化为一个5个元素的数组,数组内容全为-1;

ISBHF:纵向大范围规律变化特征数组,该数组初始化为一个5个元素的数组,数组内容全为-1;

S109,将IInitStruct加入到Iyzlist之中;

S110,IInitHig=IInitHig+Ixz;

S111,如果IInitHig<=(IHeight-Ixz/2)则转到S108,否则转到S112;

S112,IInitWid=IInitWid+Ixz;

S113,如果IInitWid<=(IInitWid-Ixz/2)则转到S107,否则转到S114;

S114,获得异质性探测列表元素个数IyzlistNum=Iyzlist中表项的个数;

输入已经拼接好影像Image(图1);

输入检测细致度Ixz=100;

获取Image的宽度IWidth=1200;

获取Image的高度IHeight=1200;

建立异质性探测列表Iyzlist;

获得异质性探测列表元素个数IyzlistNum=100;

S2,建立数组变化特性算子OptChange,OptChange的输入为待分析数组OptCArray,OptChange的输出为数组变化特性结果数组OptCResult;

S201,建立数组变化规律特性算子OptChange,OptChange的输入为待分析数组OptCArray;

S202,建立数组变化特性结果数组OptCResult=一个5个元素的数组,数组所有元素初始值都为-1;

S203,待分析数组元素个数变量OptCNum=OptCArray的元素个数;

S204,变化特性算子计数器OptCi=1;

S205,变化特性第一暂存变量OhDTemp1=abs((OptCArray [OptCi]-OptCArray[OptCi+1])/255), 其中abs为计算绝对值;

S206,变化特性第二暂存变量OhDTemp2=tanh(OhDTemp1)+0.2, 其中tanh为计算双曲正切值;

S207,变化特性第三暂存变量OhDTemp3=(Max(OptCArray)-OptCArray [OptCi])/Std(OptCArray),其中Max为获得数组中所有元素的最大值,Std为获得数组中所有元素的标准差;

S208,变化特性第四暂存变量:

OhDTemp4=(OptCArray[OptCi]-Min(OptCArray))/Std(OptCArray),其中Min为获得数组中所有元素的最小值,Std为获得数组中所有元素的标准差;

S209,变化特性第五暂存变量OhDTemp5=(OhDTemp3+OhDTemp4)/(1+OhDTemp2);

S210,建立变化特性暂存数组OhDTempArray,数组内容顺次为:

OhDTemp1/OptCNum,OhDTemp2/OptCNum,OhDTemp3/OptCNum,OhDTemp4/OptCNum,OhDTemp5/OptCNum;

S211,OptCResult=OptCResult +OhDTempArray;

S212,OptCi=OptCi+1;

S213,如果OptCi<=(OptCNum-1)则转到S205,否则转到S214;

S214,将OptCResult作为OptChange的结果输出;

S3,建立规律变化探测算子Opthx,Opthx的输入为待探测表项位置hxinput;

S301,建立规律变化探测算子Opthx,Opthx的输入为待探测表项位置hxinput

S302,规律变化探测算子的横向中心变量OhxH=Iyzlist[hxinput].ISWPos;

S303,规律变化探测算子的纵向中心变量OhxZ=Iyzlist[hxinput].ISHPos;

S304,横向小范围数组Ohxa=在Image中取出纵坐标为OhxZ且横坐标在OhxH-Ixz至OhxH+Ixz之间的所有元素;

S305,横向大范围数组Ohda=在Image中取出纵坐标为OhxZ且横坐标在OhxH-3×Ixz/2至OhxH+3×Ixz/2之间的所有元素;

S306,纵向小范围数组Ozxa=在Image中取出纵坐标为在OhxZ-Ixz值OhxZ+Ixz范围内且横坐标为OhxH的所有元素;

S307,纵向大范围数组Ozda=在Image中取出纵坐标为在OhxZ-3×Ixz/2值OhxZ+3×Ixz/2范围内且横坐标为OhxH的所有元素;

S308,Iyzlist[hxinput].ISWF=利用OptChange算子进行计算,算子输入OptCArray=Ohxa,算子的输出OptCResult作为结果返回;

S309,Iyzlist[hxinput].ISHF=利用OptChange算子进行计算,算子输入OptCArray=Ozxa,算子的输出OptCResult作为结果返回;

S310,Iyzlist[hxinput].ISBWF=利用OptChange算子进行计算,算子输入OptCArray=Ohda,算子的输出OptCResult作为结果返回;

S311,Iyzlist[hxinput].ISBHF=利用OptChange算子进行计算,算子输入OptCArray=Ozda,算子的输出OptCResult作为结果返回;

S312,规律变化探测算子Opthx的计算过程结束;

S4,利用规律变化探测算子Opthx处理整个异质性探测列表Iyzlist;

S401,处理计数器CLi=1;

S402,利用规律变化探测算子Opthx进行计算,算子输入hxinput=CLi;

S403,CLi=CLi+1;

S404,如果CLi<=IyzlistNum则转到S402,否则转到S405;

S405,第S4步骤结束;

S5,建立异质性分析算子OptDeff,OptDeff算子的输入为待比对第一数组ODA1和待比对第二数组ODA2,OptDeff算子的输出为异质性结果变量ODResult;

S501,建立异质性分析算子OptDeff,算子的输入为待比对第一数组ODA1和待比对第二数组ODA2;

S502,建立异质性结果变量ODResult=0;

S503,差异第一暂存变量ODTemp1=abs(ODA1[1]-ODA2[1]),其中abs为计算绝对值;

S504,差异第二暂存变量ODTemp2=abs(ODA1[2]-ODA2[2]),其中abs为计算绝对值;

S505,差异第三暂存变量ODTemp3=abs(ODA1[3]-ODA2[3]),其中abs为计算绝对值;

S506,差异第四暂存变量ODTemp4=abs(ODA1[4]-ODA2[4]),其中abs为计算绝对值;

S507,差异第五暂存变量ODTemp5=abs(ODA1[5]-ODA2[5]),其中abs为计算绝对值;

S508,ODResult=ODTemp1×2+ODTemp2+ODTemp3×0.5+ODTemp4×0.5+ODTemp5;

S509,ODResult=ODResult/5;

S510,将ODResult作为OptDeff的结果输出;

S6,利用特性差异算子OptDeff和异质性探测列表Iyzlist,在Image中标记出现拼接错误的区域;

S601,标记计数器Marki=1;

S602,异质性标记第一暂存变量DMTemp1=利用OptDeff进行计算,OptDeff的待比对第一数组ODA1=Iyzlist[Marki].ISWF,待比对第二数组ODA2=Iyzlist[Marki].ISBWF;算子的输出ODResult作为结果返回;

S603,异质性标记第二暂存变量DMTemp2=利用OptDeff进行计算,OptDeff的待比对第一数组ODA1=Iyzlist[Marki].ISHF,待比对第二数组ODA2=Iyzlist[Marki].ISBHF;算子的输出ODResult作为结果返回;

S604,异质性标记第二暂存变量DMTemp3=利用OptDeff进行计算,OptDeff的待比对第一数组ODA1=Iyzlist[Marki].ISWF, 待比对第二数组ODA2=Iyzlist[Marki].ISHF;算子的输出ODResult作为结果返回;

S605,如果DMTemp1>0.5或者DMTemp2>0.5, 则转到S607,否则转到S606;

S606,如果(DMTemp1+DMTemp2+DMTemp3)>1.5,转到S607,否则转到S610;

S607,用于标记的横向中心变量Mh=Iyzlist[Marki].ISWPos;

S608,用于标记的纵向中心变量Mz=Iyzlist[Marki].ISHPos;

S609,识别出一个拼接错误区域,在横坐标Mh和纵坐标Mz存在拼接异常,将该坐标输出;

S610,Marki=Marki+1;

S611, 如果Marki<=IyzlistNum则转到S602,否则转到S612;

S612,第S6步骤结束;

该步骤输出:

在横坐标为150,纵坐标为 450 存在异常;

在横坐标为150,纵坐标为 550 存在异常;

在横坐标为250,纵坐标为 750 存在异常;

在横坐标为250,纵坐标为 850 存在异常;

在横坐标为950,纵坐标为 450 存在异常;

在横坐标为950,纵坐标为 550 存在异常。

实验例1:

为了验证专利描述方法的有效性,本发明构造了100个拼接影像,每个拼接影像由10个单独的影像拼接而成,并人为构造了200处拼接错误;本发明方法同纯人工识别、神经网方法、支持向量机方法、卷积神经网方法进行对比,对比结果如下表1:

表1.

结论:表1可以看出,本发明方法在识别速度、识别出的拼接错误个数、误识别的个数、识别精度上均优于其他方法,说明本发明方法具有较好的实用价值。

相关技术
  • 一种拼接屏、拼接系统及其中的拼接屏的拼接识别方法
  • 一种拼接屏、拼接系统及其中的拼接屏的拼接识别方法
技术分类

06120115752926