图像底部分析方法及装置与流程

文档序号:33189398发布日期:2023-02-04 07:49阅读:20来源:国知局
图像底部分析方法及装置与流程

1.本发明涉及图像处理技术领域,特别涉及一种图像底部分析方法、一种图像底部分析装置、以及一种计算机可读存储介质和计算机设备。


背景技术:

2.图片可以记录物品的形态,但是由于拍摄角度的影响,拍摄的图片上的物品容易出现倾斜,为了自动摆正物品图像或者为后续添加图片特效提供数据,往往需要对图像底部进行分析,现有的分析链路一般需要额外部署服务器,从而导致分析速度慢。


技术实现要素:

3.本发明旨在至少在一定程度上解决上述技术中的技术问题之一。为此,本发明的一个目的在于提出一种图像底部分析方法,通过构建线性规划模型,且将整个分析链路部署在前端运行,在简化运算模型的同时减少服务器运算量,从而提高响应速度。
4.本发明的第二个目的在于提出一种计算机可读存储介质。
5.本发明的第三个目的在于提出一种计算机设备。
6.本发明的第四个目的在于提出一种图像底部分析装置。
7.为达到上述目的,本发明第一方面实施例提出了一种图像底部分析方法,该方法包括以下步骤:获取原始图像,并对所述原始图像进行预处理,以得到由所述原始图像上的物体底部的点构成的点集合;构建线性规划模型,并将所述点集合作为所述线性规划模型的约束条件,以便对所述物体底部进行分析,以得到所述物体底部对应的直线,其中,所述点集合的所有点到所述直线的距离在浏览器坐标系中y轴的投影之和最短。
8.根据本发明实施例的图像底部分析方法,首先获取原始图像,并对原始图像进行预处理,以得到由原始图像上的物体底部的点构成的点集合;接着构建线性规划模型,并将点集合作为线性规划模型的约束条件,以便对所述物体底部进行分析,以得到物体底部对应的直线,其中,点集合的所有点到直线的距离在浏览器坐标系中y轴的投影之和最短;由此,本发明通过构建线性规划模型,且将整个分析链路部署在前端运行,在简化运算模型的同时减少服务器运算量,从而提高响应速度。
9.另外,根据本发明上述实施例提出的图像底部分析方法还可以具有如下附加的技术特征:
10.可选地,对所述原始图像进行预处理,以得到由所述原始图像上的物体底部的点构成的点集合,包括:对所述原始图像进行剪裁,以得到第一处理图像;对所述第一处理图像中的物体进行边界锐化,以得到第二处理图像;根据所述第二处理图像获取物体底部的点,以便得到点集合。
11.可选地,在浏览器上构建所述线性规划模型。
12.可选地,在得到所述物体底部对应的直线后,还根据所述直线对所述物体进行旋转,以便得到校正后的图像。
13.为达到上述目的,本发明第二方面实施例提出了一种计算机可读存储介质,其上存储有图像底部分析程序,该图像底部分析程序被处理器执行时实现如上述的图像底部分析方法。
14.根据本发明实施例的计算机可读存储介质,通过存储图像底部分析程序,这样图像底部分析程序被处理器执行时实现如上述的图像底部分析方法,在简化运算模型的同时减少服务器运算量,从而提高响应速度。
15.为达到上述目的,本发明第三方面实施例提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如上述的图像底部分析方法。
16.根据本发明实施例的计算机设备,通过存储器存储图像底部分析程序,这样图像底部分析程序被处理器执行时实现如上述的图像底部分析方法,在简化运算模型的同时减少服务器运算量,从而提高响应速度。
17.为达到上述目的,本发明第四方面实施例提出了一种图像底部分析装置,包括:获取模块,所述获取模块用于获取原始图像,并对所述原始图像进行预处理,以得到由所述原始图像上的物体底部的点构成的点集合;构建分析模块,所述构建分析模块用于构建线性规划模型,并将所述点集合作为所述线性规划模型的约束条件,以便对所述物体底部进行分析,以得到所述物体底部对应的直线,其中,所述点集合的所有点到所述直线的距离在浏览器坐标系中y轴的投影之和最短。
18.根据本发明实施例提供的图像底部分析装置,通过构建线性规划模型,且将整个分析链路部署在前端运行,在简化运算模型的同时减少服务器运算量,从而提高响应速度。
19.另外,根据本发明上述实施例提出的图像底部分析装置还可以具有如下附加的技术特征:
20.可选地,所述获取模块还用于对所述原始图像进行剪裁,以得到第一处理图像;对所述第一处理图像中的物体进行边界锐化,以得到第二处理图像;根据所述第二处理图像获取物体底部的点,以便得到点集合。
21.可选地,在浏览器上构建所述线性规划模型。
22.可选地,还包括校正模块,所述校正模块在得到所述物体底部对应的直线后,还根据所述直线对所述物体进行旋转,以便得到校正后的图像。
附图说明
23.图1为根据本发明实施例的图像底部分析方法的流程示意图;
24.图2为根据本发明实施例的原始图像的预处理示意图;
25.图3为根据本发明实施例的图像底部分析效果图;
26.图4为根据本发明实施例的图像底部分析装置的方框示意图。
具体实施方式
27.下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
28.为了更好的理解上述技术方案,下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
29.为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。
30.图1为根据本发明实施例的图像底部分析方法的流程示意图。如图1所示,本发明实施例的图像底部分析方法包括以下步骤:
31.s101,获取原始图像,并对原始图像进行预处理,以得到由原始图像上的物体底部的点构成的点集合。
32.作为一个实施例,如图2所示,对原始图像进行预处理,以得到由原始图像上的物体底部的点构成的点集合,包括:
33.对原始图像进行剪裁,以得到第一处理图像;
34.对第一处理图像中的物体进行边界锐化,以得到第二处理图像;
35.根据第二处理图像获取物体底部的点,以便得到点集合。
36.也就是说,首先对原始图像进行剪裁,以便裁掉图像中多余的空白处,只留下存在物体的图像,从而去除无效数据;然后锐化该图像中物体的边界,从而得到该物体的下边界的点。
37.需要说明的是,裁掉图像中多余的空白处,在同样的总数据量前提下,这样能提升有效数据的密度和精度;因为物体的周围往往存在一些透明像素,通过传统的图像锐化方法进行边界锐化处理即可,最后得到物体底部的点构成的数组。
38.s102,构建线性规划模型,并将点集合作为线性规划模型的约束条件,以便对物体底部进行分析,以得到物体底部对应的直线,其中,点集合的所有点到直线的距离在浏览器坐标系中y轴的投影之和最短。
39.也就是说,构建数学模型,并对数学模型进行优化,从而得到线性规划模型。
40.作为一个具体实施例,构建数学模型:已知点集p(x,y),求直线l,使得集合s所有的点都在直线l之上,且点到直线的距离之和最短,minmizeσd(l,pi)subject to ax《b假定l为y=k*x+b(x=m型直线不满足期望)则d(l,pi)=|yi-k*xi-b|/(1+k^2)^0.5。
41.优化数学模型:由于所有已知点都在直线l之上

|yi-k*xi-b|=yi-k*xi-b(浏览器坐标系中y轴正方向向下);点到直线的距离之和最短调整为点到直线的距离在y轴的投影之和最短

移除1/(1+k^2)^0.5,minimizeσd(l,pi)=σ(yi-k*xi-b)=n*(ay-k*ax-b)

minimize ay-k*ax-b,其中,ay表示y的平均值,ax表示x的平均值,subject to ax《b(k*xi+b《yi)。
42.综上,优化后的数学模型变成了一个k、b为变量,底部数据点为约束条件的线性规划问题,求解k、b从而得到物体的底部直线。
43.需要说明的是,优化数学模型后可以简化运算模型,且同样满足期望,从而提高运算效率。
44.作为一个实施例,如图3所示,在得到物体底部对应的直线后,还根据直线对物体进行旋转,以便得到校正后的图像。
45.作为一个具体实施例,根据直线对物体进行旋转,以便得到校正后的图像包括:
46.获取物体底部中心点;
47.根据直线获取旋转角度;
48.所述物体根据旋转角度绕底部中心点进行反向旋转,以便得到校正后的图像。
49.作为一个实施例,根据直线的斜率和反三角函数得到对应的旋转角度。
50.需要说明的是,在得到物体底部对应的直线y=k*x+b之后,根据k和反三角函数得到物体的偏转角度,并且在上述步骤中已获取的物体像素在x轴的取值范围xmin、xmax,取平均值xcenter=(xmin+xmax)/2,代入底部直线方程y=k*x+b,即可得到底部中心,让物体绕底部中心反方向旋转即可自动摆正物体图像。
51.另外,由于在浏览器上构建线性规划模型,所以整个分析链路都在用户浏览器(通过运行浏览器js语言)完成,无需额外部署服务器,所以服务器成本低;由于部署在前端,也省去了数据在用户和服务器之前的传输,可以即时地帮用户摆正图像,所以速度快;该方式求解的底部是准确解,没有逻辑误差,就算物体只偏了1度也可发现并进行矫正,所以效果佳。
52.综上所述,根据本发明实施例的图像底部分析方法,首先获取原始图像,并对原始图像进行预处理,以得到由原始图像上的物体底部的点构成的点集合;接着构建线性规划模型,并将点集合作为线性规划模型的约束条件,以便对所述物体底部进行分析,以得到物体底部对应的直线,其中,点集合的所有点到直线的距离在浏览器坐标系中y轴的投影之和最短;由此,本发明通过构建线性规划模型,且将整个分析链路部署在前端运行,在简化运算模型的同时减少服务器运算量,从而提高响应速度。
53.另外,本发明还提出了一种计算机可读存储介质,其上存储有图像底部分析程序,该图像底部分析程序被处理器执行时实现如上述的图像底部分析方法。
54.根据本发明实施例的计算机可读存储介质,通过存储图像底部分析程序,这样图像底部分析程序被处理器执行时实现如上述的图像底部分析方法,在简化运算模型的同时减少服务器运算量,从而提高响应速度。
55.另外,本发明实施例还提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如上述的图像底部分析方法。
56.根据本发明实施例的计算机设备,通过存储器存储图像底部分析程序,这样图像底部分析程序被处理器执行时实现如上述的图像底部分析方法,在简化运算模型的同时减少服务器运算量,从而提高响应速度。
57.图4为根据本发明实施例的图像底部分析装置的方框示意图。如图4示,该图像底部分析装置包括:获取模块201和构建分析模块202;
58.其中,获取模块201用于获取原始图像,并对原始图像进行预处理,以得到由原始图像上的物体底部的点构成的点集合;构建分析模块202用于构建线性规划模型,并将点集合作为线性规划模型的约束条件,以便对物体底部进行分析,以得到物体底部对应的直线,其中,点集合的所有点到直线的距离在浏览器坐标系中y轴的投影之和最短。
59.作为一个实施例,获取模块201还用于对原始图像进行剪裁,以得到第一处理图像;对第一处理图像中的物体进行边界锐化,以得到第二处理图像;根据第二处理图像获取
物体底部的点,以便得到点集合。
60.作为一个实施例,在浏览器上构建线性规划模型。
61.作为一个实施例,还包括校正模块203,用于在得到物体底部对应的直线后,还根据直线对物体进行旋转,以便得到校正后的图像。
62.校正模块203还用于获取物体底部中心点;根据直线获取旋转角度;物体根据旋转角度绕底部中心点进行反向旋转,以便得到底部分析后的图像。
63.作为一个实施例,根据直线的斜率和反三角函数得到对应的旋转角度。
64.需要说明的是,前述对于图像底部分析方法的实施例的解释说明同样适用于本实施例的图像底部分析装置,此处不再赘述。
65.根据本发明实施例提供的图像底部分析装置,通过构建线性规划模型,且将整个分析链路部署在前端运行,在简化运算模型的同时减少服务器运算量,从而提高响应速度。
66.本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
67.本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
68.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
69.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
70.应当注意的是,在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的部件或步骤。位于部件之前的单词“一”或“一个”不排除存在多个这样的部件。本发明可以借助于包括有若干不同部件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
71.尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
72.显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
73.在本发明的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
74.在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
75.在本发明中,除非另有明确的规定和限定,第一特征在第二特征“上”或“下”可以是第一和第二特征直接接触,或第一和第二特征通过中间媒介间接接触。而且,第一特征在第二特征“之上”、“上方”和“上面”可是第一特征在第二特征正上方或斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”可以是第一特征在第二特征正下方或斜下方,或仅仅表示第一特征水平高度小于第二特征。
76.在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不应理解为必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
77.尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1