CN112033379B - 一种对象检测方法、装置以及计算机可读存储介质 - Google Patents
一种对象检测方法、装置以及计算机可读存储介质 Download PDFInfo
- Publication number
- CN112033379B CN112033379B CN202011209513.5A CN202011209513A CN112033379B CN 112033379 B CN112033379 B CN 112033379B CN 202011209513 A CN202011209513 A CN 202011209513A CN 112033379 B CN112033379 B CN 112033379B
- Authority
- CN
- China
- Prior art keywords
- point
- plane
- detection
- reference vertex
- space
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C11/00—Photogrammetry or videogrammetry, e.g. stereogrammetry; Photographic surveying
- G01C11/04—Interpretation of pictures
- G01C11/30—Interpretation of pictures by triangulation
- G01C11/34—Aerial triangulation
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Length Measuring Devices By Optical Means (AREA)
Abstract
本申请公开了一种对象检测方法、装置以及计算机可读存储介质,该方法包括:获取摄像图像中目标对象与检测平面的交点作为检测点;第一平行边由检测平面的第一基准顶点和第二基准顶点确定;第二平行边由检测平面的第二基准顶点和第三基准顶点确定;获取第一平行边上的第一方向消隐点和第二平行边上的第二方向消隐点;基于第一方向消隐点确定检测点的第一投影点,基于第二方向消隐点确定检测点的第二投影点;基于第一基准顶点、第二基准顶点、第三基准顶点、第一投影点、第二投影点、第一方向消隐点和第二方向消隐点确定检测点的立体空间坐标,根据立体空间坐标确定目标对象的对象空间位置。采用本申请,可提高获取到的对象空间位置的准确性。
Description
技术领域
本申请涉及数据处理的技术领域,尤其涉及一种对象检测方法、装置以及计算机可读存储介质。
背景技术
在一些大型车间中,通常会存在多个工人进行车间作业。为了更好地管理和指挥工人进行车间作业,可以对工人在车间的位置进行定位。
现有技术中,首先可以通过摄像机对车间进行拍摄,得到拍摄图像。其中,首先可以确定车间中的多个点作为基准点,该多个基准点在摄像图像中的平面坐标、以及在立体空间中的空间坐标都是已知的。因此,可以根据工人在拍摄图像中针对该多个基准点之间的位置关系,作为工人在立体空间中针对该多个基准点之间的位置关系,进而通过工人在立体空间中针对该多个基准点之间的位置关系、以及该多个基准点的空间坐标,即可得到工人在立体空间中的空间坐标。
由于摄像机在拍摄图像时,是基于小孔成像的原理拍摄到图像的,拍摄到的图像中的物体相较于立体空间中的物体会发生形变,因此,在拍摄图像中工人相较于多个基准点的位置与在立体空间中工人相较于多个基准点的位置是不同的,因此采用现有技术所提供的方法来定位工人的空间位置并不准确。
发明内容
本申请提供了一种对象检测方法、装置以及计算机可读存储介质,可提高获取到的目标对象的对象空间位置的准确性。
本申请一方面提供了一种对象检测方法,包括:
获取基于摄像设备所得到的摄像图像,检测摄像图像中的目标对象;摄像图像中还包括检测平面;
获取摄像图像中目标对象与检测平面之间的交点,作为检测点;检测平面包括第一平行边和第二平行边;第一平行边是由检测平面的第一基准顶点和第二基准顶点确定;第二平行边是由检测平面的第二基准顶点和第三基准顶点确定;
获取在第一平行边所指示的平行方向上的第一方向消隐点、以及在第二平行边所指示的平行方向上的第二方向消隐点;
基于第一方向消隐点,确定检测点在第二平行边上的第一投影点,基于第二方向消隐点,确定检测点在第一平行边上的第二投影点;
基于第一基准顶点、第二基准顶点、第三基准顶点、第一投影点、第二投影点、第一方向消隐点和第二方向消隐点,确定检测点在立体空间中的立体空间坐标;
根据检测点在立体空间中的立体空间坐标,确定目标对象在立体空间中的对象空间位置。
本申请一方面提供了一种对象检测装置,包括:
摄像图像检测模块,用于获取基于摄像设备所得到的摄像图像,检测摄像图像中的目标对象;摄像图像中还包括检测平面;
检测点获取模块,用于获取摄像图像中目标对象与检测平面之间的交点,作为检测点;检测平面包括第一平行边和第二平行边;第一平行边是由检测平面的第一基准顶点和第二基准顶点确定;第二平行边是由检测平面的第二基准顶点和第三基准顶点确定;
消隐点获取模块,用于获取在第一平行边所指示的平行方向上的第一方向消隐点、以及在第二平行边所指示的平行方向上的第二方向消隐点;
投影点确定模块,用于基于第一方向消隐点,确定检测点在第二平行边上的第一投影点,基于第二方向消隐点,确定检测点在第一平行边上的第二投影点;
坐标确定模块,用于基于第一基准顶点、第二基准顶点、第三基准顶点、第一投影点、第二投影点、第一方向消隐点和第二方向消隐点,确定检测点在立体空间中的立体空间坐标;
对象位置确定模块,用于根据检测点在立体空间中的立体空间坐标,确定目标对象在立体空间中的对象空间位置。
其中,检测平面为地面平面;目标对象为用户;
检测点获取模块,包括:
第一检测点确定单元,用于当目标对象在摄像图像的检测平面中具有落脚点时,将落脚点确定为目标对象与检测平面之间的交点,将目标对象与检测平面之间的交点确定为检测点;
第二检测点确定单元,用于当目标对象在摄像图像的检测平面中不具有落脚点时,预测目标对象在摄像图像的检测平面中的预测落脚点,将预测落脚点确定为目标对象与检测平面之间的交点,将目标对象与检测平面之间的交点确定为检测点。
其中,消隐点获取模块,包括:
第一交点获取单元,用于获取检测平面的与第一平行边相互平行的第三平行边,将第一平行边和第三平行边映射到平面空间,得到第一平行边与第三平行边在平面空间中的第一平行交点;
第二交点获取单元,用于获取检测平面的与第二平行边相互平行的第四平行边,将第二平行边和第四平行边映射到平面空间,得到第二平行边与第四平行边在平面空间中的第二平行交点;
消隐点确定单元,用于将第一平行交点确定为第一方向消隐点,将第二平行交点确定为第二方向消隐点。
其中,投影点确定模块,包括:
第一连线获取单元,用于获取第一方向消隐点与检测点的第一连接线;
第一投影点获取单元,用于获取第一连接线所属的直线与第二平行边之间的交点,作为第一投影点;在平面空间中经过第一方向消隐点的第一平行边和第一连接线,在立体空间中相互平行。
其中,投影点确定模块,包括:
第二连线获取单元,用于获取第二方向消隐点与检测点的第二连接线;
第二投影点获取单元,用于获取第二连接线所属的直线与第一平行边之间的交点,作为第二投影点;在平面空间中经过第二方向消隐点的第二平行边和第二连接线,在立体空间中相互平行。
其中,坐标确定模块,包括:
第一平面坐标确定单元,用于基于第一基准顶点、第二基准顶点、第一方向消隐点和检测点分别在平面空间中的平面坐标,确定第二投影点在平面空间中的平面坐标;
第二平面坐标确定单元,用于基于第二基准顶点、第三基准顶点、第二方向消隐点和检测点分别在平面空间中的平面坐标,确定第一投影点在平面空间中的平面坐标;
立体坐标确定单元,用于基于第一基准顶点、第二基准顶点以及第三基准顶点分别在平面空间中的平面坐标、第一投影点和第二投影点分别在平面空间中的平面坐标、第一方向消隐点和第二方向消隐点分别在平面空间中的平面坐标,确定检测点在立体空间中的立体空间坐标。
其中,上述装置还包括:
测量坐标获取模块,用于获取第一基准顶点、第二基准顶点、第三基准顶点、检测点分别在摄像图像中的图像测量坐标;
平面坐标确定模块,用于将第一基准顶点所属的图像测量坐标确定为第一基准顶点所属的平面坐标,将第二基准顶点所属的图像测量坐标确定为第二基准顶点所属的平面坐标,将第三基准顶点所属的图像测量坐标确定为第三基准顶点所属的平面坐标,将检测点所属的图像测量坐标确定为检测点所属的平面坐标。
其中,立体坐标确定单元,包括:
第一立体坐标获取子单元,用于根据第一基准顶点、第二投影点、第二基准顶点和第一方向消隐点分别所属的平面坐标,以及第一基准顶点和第二基准顶点分别所属的立体空间坐标,获取第二投影点在立体空间中的立体空间坐标;
第二立体坐标获取子单元,用于根据第二基准顶点、第一投影点、第三基准顶点和第二方向消隐点分别所属的平面坐标,以及第二基准顶点和第三基准顶点分别所属的立体空间坐标,获取第一投影点在立体空间中的立体空间坐标;
第三立体坐标确定子单元,用于根据第一投影点、第二投影点、第一基准顶点、第二基准顶点、第三基准顶点分别所属的立体空间坐标,确定检测点在立体空间中的立体空间坐标。
其中,第一平行边所属的第一直线经过第一方向消隐点;
第一立体坐标获取子单元,包括:
第一交比获取子单元,用于根据第一基准顶点、第二投影点、第二基准顶点和第一方向消隐点分别所属的平面坐标,确定第一基准顶点、第二投影点、第二基准顶点和第一方向消隐点在第一直线上的第一平面交比;
第二交比获取子单元,用于根据第一平面交比,确定第一基准顶点、第二投影点、第二基准顶点和第一方向消隐点在立体空间中的第一立体交比;
第一投影坐标确定子单元,用于根据第一基准顶点和第二基准顶点分别在立体空间中的立体空间坐标、以及第一立体交比,确定第二投影点在立体空间中的立体空间坐标。
其中,第二平行边所属的第二直线经过第二方向消隐点;
第二立体坐标获取子单元,包括:
第三交比获取子单元,用于根据第二基准顶点、第一投影点、第三基准顶点和第二方向消隐点分别所属的平面坐标,确定第二基准顶点、第一投影点、第三基准顶点和第二方向消隐点在第二直线上的第二平面交比;
第四交比获取子单元,用于根据第二平面交比,确定第二基准顶点、第一投影点、第三基准顶点和第二方向消隐点在立体空间中的第二立体交比;
第二投影坐标确定子单元,用于根据第二基准顶点和第三基准顶点分别在立体空间中的立体空间坐标、以及第二立体交比,确定第一投影点在立体空间中的立体空间坐标。
对象位置确定模块,用于:
将检测点在立体空间中的立体空间坐标所指示的空间位置,确定为目标对象的对象空间位置;
上述装置还包括:
引导信息生成模块,用于根据对象空间位置,生成针对目标对象的位置变换引导信息;位置变换引导信息,用于指示目标对象从对象空间位置变换至引导位置;
输出模块,用于将位置变换引导信息同步至目标对象所属的对象终端,以使对象终端输出位置变换引导信息。
本申请一方面提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行本申请中一方面中的方法。
本申请一方面提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包括程序指令,该程序指令被处理器执行时使该处理器执行上述一方面中的方法。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述一方面等各种可选方式中提供的方法。
本申请可以获取基于摄像设备所得到的摄像图像,检测摄像图像中的目标对象;摄像图像中还包括检测平面;获取摄像图像中目标对象与检测平面的交点,作为检测点;检测平面包括第一平行边和第二平行边;第一平行边是由检测平面的第一基准顶点和第二基准顶点确定;第二平行边是由检测平面的第二基准顶点和第三基准顶点确定;获取在第一平行边所指示的平行方向上的第一方向消隐点、以及在第二平行边所指示的平行方向上的第二方向消隐点;基于第一方向消隐点,确定检测点在第二平行边上的第一投影点,基于第二方向消隐点,确定检测点在第一平行边上的第二投影点;基于第一基准顶点、第二基准顶点、第三基准顶点、第一投影点、第二投影点、第一方向消隐点和第二方向消隐点,确定检测点在立体空间中的立体空间坐标;根据检测点在立体空间中的立体空间坐标,确定目标对象在立体空间中的对象空间位置。由此可见,本申请提出的方法首先可以获取第一方向消隐点和第二方向消隐点,通过该第一方向消隐点和第二方向消隐点可以得到检测点更准确的第一投影点和第二投影点,进一步地可以根据该第一投影点和第二投影点得到检测点更准确的立体空间坐标,因此最终根据该检测点的立体空间坐标所得到的目标对象的对象空间位置也更准确。
附图说明
为了更清楚地说明本申请或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种网络架构的结构示意图;
图2是本申请提供的一种对象位置检测的场景示意图;
图3是本申请提供的一种对象检测方法的流程示意图;
图4是本申请提供的一种图像拍摄的场景示意图;
图5是本申请提供的一种坐标计算的场景示意图;
图6是本申请提供的一种坐标计算的场景示意图;
图7是本申请提供的一种坐标计算方法的流程示意图;
图8是本申请提供的一种对象检测装置的结构示意图;
图9是本申请提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请涉及到云技术。其中,云技术(Cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。
云技术(Cloud technology)基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。
本申请中主要涉及到的云技术可以指对摄像图像进行传输的技术(例如摄像设备将摄像图像传输给服务器)。具体可以参见下述图3对应的实施例中的描述。
另外,本申请还涉及到人工智能相关技术。其中,人工智能(ArtificialIntelligence, AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
本申请中主要涉及到了人工智能中的机器学习。其中,机器学习(MachineLearning, ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
本申请中所涉及到的机器学习主要指,通过机器学习来识别目标对象与检测平面之间的交点,该交点即为检测点,是需要检测其立体空间位置的点,具体也可以参见下述图3对应的实施例。
请参见图1,图1是本申请实施例提供的一种网络架构的结构示意图。如图1所示,网络架构可以包括服务器200和摄像设备集群,摄像设备集群可以包括一个或者多个摄像设备,这里将不对摄像设备的数量进行限制。如图1所示,多个摄像设备具体可以包括摄像设备100a、摄像设备101a、摄像设备102a、…、摄像设备103a;如图1所示,摄像设备100a、摄像设备101a、摄像设备102a、…、摄像设备103a均可以与服务器200进行网络连接,以便于每个摄像设备可以通过网络连接与服务器200之间进行数据交互。
如图1所示的服务器200可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。终端设备可以是:智能手机、平板电脑、笔记本电脑、桌上型电脑、智能电视等智能终端。下面以摄像设备100a与服务器200之间的通信为例,进行本申请实施例的具体描述。
请一并参见图2,图2是本申请提供的一种对象位置检测的场景示意图。如图2所示,上述摄像设备100a可以是工厂的厂房114b(例如车间)中的监控摄像头,该厂房114b中还可以包括若干正在工作的工人。此处厂房114b中的工人可以包括工人101b、工人102b和工人103b。其中,可以将厂房114b的地面作为检测平面100b,该检测平面100b在现实世界中为平行四边形,该检测平面100b可以包括4个顶点,该4个顶点具体为顶点a、顶点b、顶点c和顶点d。该4个顶点可以作为检测平面100b中的基准顶点,作为基准顶点的该4个顶点在真实世界中的立体空间坐标(即空间坐标,为3维的)是已知的。
在工人工作期间,摄像设备100a可以对厂房114b中的场景进行拍摄,以得到摄像图像。因此,该摄像图像中可以包括被拍摄下来的检测平面100b以及检测平面100b中的工人(包括工人101b、工人102b和工人103b)。因此,本申请提供的方法,可以通过检测平面100b中的4个基准顶点,对摄像图像中所拍摄下来的工人在真实世界中的立体空间坐标进行检测。由于检测每个工人所在的立体空间坐标的方法原理是相同的,因此,此处以服务器检测工人103b在真实世界中的立体空间坐标为例进行说明。
上述摄像设备100a在拍摄得到摄像图像时,可以将拍摄得到的摄像图像发送给服务器200,使得服务器200可以对摄像图像中的工人在真实世界中的立体空间坐标进行检测。服务器200对摄像图像中所拍摄的工人的立体空间坐标进行检测的具体过程请参见下述。
其中,需要进行说明的是,由于摄像设备100a在对厂房114b中的场景进行拍摄,以得到摄像图像时,是基于小孔成像的原理来成像的。而通过小孔成像的原理来拍摄得到摄像图像时,原本在现实世界中相互平行的线条,在摄像图像中就不是相互平行的。可以理解为,摄像设备可以将现实世界中相互平行的线条,映射到摄像图像所在平面空间中相交于一点,该点可以称之为消隐点。对消隐点的具体描述还可以参见下述图3对应的实施例中的描述。其中,可以将上述真实世界中的检测平面100b记为检测平面ABCD。
因此,如图2所示,在区域105b中的检测平面111b即为摄像设备100a通过拍摄检测平面100b所得到的,换句话说,检测平面111b为在摄像图像中所拍摄下来的检测平面100b。检测平面111b中的顶点a即为拍摄得到的检测平面100b中的顶点A,检测平面111b中的顶点b即为拍摄得到的检测平面100b中的顶点B,检测平面111b中的顶点c即为拍摄得到的检测平面100b中的顶点C,检测平面111b中的顶点d即为拍摄得到的检测平面100b中的顶点D。
因此,可以看出,原本在检测平面100b中相互平行的AD和BC,对应在摄像图像中的ad和bc并不是相互平行的,原本在检测平面100b中相互平行的AB和DC,对应在摄像图像中的ab和dc也不是相互平行的。可以将在摄像图像所属的平面空间中的检测平面111b即为检测平面abcd。
其中,服务器在检测工人103b在真实世界中的立体空间坐标时,可以将工人103b与检测平面100b之间的交点作为检测点,进而可以检测该检测点的立体空间坐标,并可以检测得到的将该检测点的立体空间坐标作为工人103b的立体空间坐标。因此,此处可以将工人103b在检测平面100b中的落脚处的某个像素点,作为工人103b与检测平面100b之间的交点,并将该交点作为针对工人103b的检测点112b。
因此,如图2所示,通过上面所描述的内容可知,服务器200可以通过摄像设备(可以是任意一个摄像设备),将检测平面abcd中的ad和bc映射为相交于一点,该点即为上述相互平行的AD和BC在平面空间中的消隐点106b。服务器在映射得到消隐点106b时,还可以得到消隐点106b在摄像图像所属平面空间中的平面坐标。
同理,服务器200可以通过摄像设备,将检测平面中的ab和dc映射为相交于一点,该点即为上述相互平行的AB和DC在平面空间中的消隐点107b。服务器在映射得到消隐点107b时,还可以得到消隐点107b在摄像图像所属平面空间中的平面坐标。
其中,服务器200还可以对顶点a、顶点b、顶点c、顶点d和检测点112b在摄像图像中所在的位置进行测量,通过测量顶点a、顶点b、顶点c、顶点d和检测点112b在摄像图像中所在的位置,可以得到顶点a、顶点b、顶点c、顶点d和检测点112b在摄像图像所属平面空间中的平面坐标。
因此,服务器200可以通过上述得到的顶点a、顶点b、顶点c、顶点d、检测点112b、消隐点106b和消隐点107b分别对应的平面坐标、以及顶点a对应的顶点A的立体空间坐标、顶点b对应的顶点B的立体空间坐标、顶点c对应的顶点C的立体空间坐标、顶点d对应的顶点D的立体空间坐标,即可计算出检测点112b在现实世界中的立体空间坐标108b。
其中,服务器200如何根据顶点a、顶点b、顶点c、顶点d、检测点112b、消隐点106b和消隐点107b分别对应的平面坐标、以及顶点a对应的顶点A的立体空间坐标、顶点b对应的顶点B的立体空间坐标、顶点c对应的顶点C的立体空间坐标、顶点d对应的顶点D的立体空间坐标,计算得到检测点112b在现实世界中的立体空间坐标108b的具体过程,可以参见下述图3对应的实施例中的描述。
得到上述检测点112b的立体空间坐标108b,即为得到了工人103b的立体空间坐标108b。因此,服务器200还可以根据工作流程、以及工人103b所在的立体空间坐标108b,生成位置变换引导信息109b。该位置变换引导信息109b可以用于指示工人103b现在需要前往检测平面100b的哪个位置进行相应的工作。
服务器200可以将该位置变换引导信息109b发送给工人103b所属的终端设备,使得工人103b可以根据该位置变换引导信息109b所提示的位置变换要求,从检测平面100b中的位置1(位置1可以是工人103b当前所在的位置)前往到位置2,在位置2再进行相应的工作。
通过本申请所提供的方法,首先可以确定出一个平行四边形的检测平面,并可以通过摄像设备对该检测平面以及检测平面上的工人进行拍摄。进而可以通过将该检测平面的两组平行边映射到平面空间,得到该两组平行边分别所指示的方向上的消隐点。通过映射得到的消隐点、以及检测平面中的4个基准顶点,可以准确地检测得到拍摄下来的检测平面中的工人的立体空间坐标。为何可以通过消隐点检测得到拍摄下来的工人更准确的立体空间坐标的描述,可以参见下述图3对应的实施例中的描述。
请参见图3,图3是本申请提供的一种对象检测方法的流程示意图,如图3所示,该方法可以包括:
步骤S101,获取基于摄像设备所得到的摄像图像,检测摄像图像中的目标对象;摄像图像中还包括检测平面;
具体的,本申请实施例中的执行主体可以是任意一个计算机设备或者多个计算机设备构成的计算机设备集群,该计算机设备可以是服务器,也可以是终端设备。此处,以本申请实施例中的执行主体为服务器为例进行说明。
上述摄像图像为摄像设备拍摄的平面图像,因此该摄像图像属于平面空间中的图像,即平面图像。该摄像设备可以是车间的监控设备,车间中可以包括若干正在工作的工人,因此目标对象可以指车间工作的工人,检测平面可以指车间的地面。因此,摄像设备在拍摄得到摄像图像之后,可以将该摄像图像传输给服务器(传输过程中可以涉及到云技术)。因此,服务器获取到的摄像图像可以是由摄像设备向其同步过来的。
其中,服务器可以使用一个训练完成的图像识别模型,来识别摄像图像中的目标对象,即检测出摄像图像中的目标对象。该图像识别模型可以是CNN模型(卷积神经网络)、也可以是RNN模型(循环神经网络)等。其中,图像识别模型训练的过程即为机器学习的过程。
步骤S102,获取摄像图像中目标对象与检测平面之间的交点,作为检测点;检测平面包括第一平行边和第二平行边;第一平行边是由检测平面的第一基准顶点和第二基准顶点确定;第二平行边是由检测平面的第二基准顶点和第三基准顶点确定;
具体的,服务器可以将摄像图像中目标对象与检测平面的交点作为检测点。该检测平面在现实世界中为平行四边形,检测平面可以是一般的平行四边形,也可以是矩形(矩形为特殊的平行四边形)。可以将现实世界所属空间称之为立体空间,该立体空间为三维空间,可以将平面图像所属空间称之为平面空间,该平面空间为二维空间。
其中,目标对象与检测平面的交点可以指工人在车间的地面上的落脚点,因此服务器可以在摄像图像中,获取到目标对象在检测平面的落脚处的一个像素点,作为检测点。
其中,当目标对象在摄像图像的检测平面中具有(即看得见的、被拍摄下来的)落脚点时,可以将该落脚点作为目标对象与检测平面之间的交点,并将该交点作为检测点。而当目标对象在摄像图像的检测平面中不具有落脚点时,表明在拍摄得到摄像图像时,目标对象与检测平面之间的落脚点被遮挡住了,并未拍摄下来,因此此时,可以根据摄像图像中被拍摄下来的局部的目标对象,预测目标对象在摄像图像的检测平面中的落脚点,可以将预测得到的落脚点称之为预测落脚点。服务器可以将该预测落脚点作为目标对象与摄像图像中检测平面之间的交点,并将该交点作为上述检测点。上述获取到的检测点可以为摄像图像中的一个像素点。其中,也可以通过上述图像识别模型,来识别摄像图像中目标对象与检测平面之间的交点,以此来得到检测点。
其中,由于上述检测平面在立体空间中为平行四边形,因此,检测平面包括两组平行边,该两组平行边分别对应于一个平行方向。其中,可以将该检测平面的任意一条边作为第一平行边,可以将检测平面与该第一平行边相交的任意一条边作为第二平行边。
其中,由于检测平面为平行四边形,因此,检测平面包括4个顶点,该4个顶点即为平行四边形的4个顶点,该4个顶点可以为检测平面中的4个基准顶点。可以将该4个基准顶点分别称之为第一基准顶点、第二基准顶点、第三基准顶点和第四基准顶点,上述第一平行边可以是第一基准顶点和第二基准顶点之间的连边,上述第二平行边可以是第二基准顶点和第三基准顶点之间的连边,因此,第一平行边和第二平行边之间的交点就为第二基准顶点。
其中,可以将一个点(例如检测平面中的某个位置点)在平面空间中的坐标称之为平面坐标,该平面坐标为2维的坐标,例如该平面坐标可以表示为(x,y)。可以将一个点在立体空间中的坐标称之为立体空间坐标,该立体空间坐标为3维的坐标,例如该立体空间坐标可以表示为(x,y,z)。其中一个点的平面坐标中的x、y可以不同于该点的立体空间坐标中的x、y。
因此,可以理解的是,检测平面中的基准顶点,指在平面空间中的平面坐标、和在立体空间中的立体空间坐标都是已知的顶点。换句话说,上述第一基准顶点、第二基准顶点、第三基准顶点和第四基准顶点的平面坐标和立体空间坐标都是已知的可以获取到的。
其中,上述第一基准顶点、第二基准顶点、第三基准顶点和第四基准顶点的立体空间坐标,可以是通过测量第一基准顶点、第二基准顶点、第三基准顶点和第四基准顶点分别在现实世界(立体空间)中所在的真实位置得到的。换句话说,第一基准顶点、第二基准顶点、第三基准顶点和第四基准顶点的立体空间坐标,即为第一基准顶点、第二基准顶点、第三基准顶点和第四基准顶点分别在真实世界中所处的位置的坐标。
其中,第一基准顶点、第二基准顶点、第三基准顶点和第四基准顶点的平面坐标,可以是通过测量第一基准顶点、第二基准顶点、第三基准顶点和第四基准顶点在摄像图像中所在的位置所得到的。换句话说,服务器可以测量第一基准顶点、第二基准顶点、第三基准顶点和第四基准顶点分别在摄像图像中所在的图像坐标,可以将该图像坐标称之为图像测量坐标。
因此,服务器可以将第一基准顶点的图像测量坐标,作为第一基准顶点的平面坐标;服务器可以将第二基准顶点的图像测量坐标,作为第二基准顶点的平面坐标,服务器可以将第三基准顶点的图像测量坐标,作为第三基准顶点的平面坐标,服务器可以将第四基准顶点的图像测量坐标,作为第四基准顶点的平面坐标。
更多的,服务器还可以在摄像图像中测量得到检测点所在的图像坐标,可以将该图像坐标称之为检测点在摄像图像中的图像测量坐标。服务器可以将检测点在摄像图像中的图像测量坐标,称之为检测点的平面坐标。
因此,本申请所提供的方法就是为了检测得到检测点在立体空间中的立体空间坐标,请参见下述内容描述。
步骤S103,获取在第一平行边所指示的平行方向上的第一方向消隐点、以及在第二平行边所指示的平行方向上的第二方向消隐点;
具体的,由于摄像设备在拍摄图像时为小孔成像的成像原理,上述摄像图像也为单目图像,因此,在立体空间中相互平行的直线或者线段,在摄像设备拍摄得到的图像中是不平行的。可以将检测平面中与上述第一平行边相互平行的边,称之为第三平行边,可以将检测平面中与上述第二平行边相互平行的边,称之为第四平行边。因此,第一平行边和第三平行边在立体空间中是相互平行的,但是第一平行边和第三平行边在平面空间中(即在摄像图像中)是不平行的。同理,第二平行边和第四平行边在立体空间中是相互平行的,但是第二平行边和第四平行边在平面空间中(即在摄像图像中)是不平行的。
请参见图4,图4是本申请提供的一种图像拍摄的场景示意图。检测平面101c为在立体空间中是矩形的平面。通过摄像设备100c对检测平面101c进行拍摄,可以得到检测平面102c,该检测平面102c即为被拍摄下来的检测平面101c,换句话说,检测平面102c为检测平面101c在平面空间中成像的样子。由于摄像设备100的小孔成像原理,使得检测平面102c相较于检测平面101c发生了变形,因此检测平面102c在平面空间中不是矩形。
检测平面101c中的边L1对应于检测平面102c中的边L1,检测平面101c中的边L2对应于检测平面102c中的边L2,检测平面101c中的边L3对应于检测平面102c中的边L3,检测平面101c中的边L4对应于检测平面102c中的边L4。
如图4所示,原本在检测平面101c中相互平行的边L1和边L3,对应在检测平面102c中的边L1和边L3就是不平行的。原本在检测平面101c中相互平行的边L2和边L4,对应在检测平面102c中的边L2和边L4也是不平行的。
因此,可以理解的是,在立体空间中任意某个方向上相互平行的多条线(曲线或者直线),可以被摄像设备映射到平面空间中,使得该多条在立体空间中相互平行的线在平面空间中可以相交于一点,该点即为该多条平行的线在立体空间中所指向的方向上的消隐点。
因此,过某个消隐点的多条线,可以理解为是在立体空间中在该消隐点所属的方向上相互平行的多条线。
因此,服务器可以通过摄像设备将上述第一平行边和第三平行边映射到平面空间,即可得到第一平行边和第三平行边在平面空间中的交点,可以将该交点称之为第一平行交点,该第一平行交点即为第一平行边所指示的方向(也是第三平行边所指示的方向)上的消隐点,可以将该消隐点称之为第一方向消隐点。可以将第一平行边所指示的方向,称之为第一平行边所指示的平行方向。
同理,服务器可以通过摄像设备将上述第二平行边和第四平行边映射到平面空间,即可得到第二平行边和第四平行边在平面空间中的交点,可以将该交点称之为第二平行交点,该第二平行交点即为第二平行边所指示的方向(也是第四平行边所指示的方向)上的消隐点,可以将该消隐点称之为第二方向消隐点。可以将第二平行边所指示的方向,称之为第二平行边所指示的平行方向。
通过上述过程,服务器即可获取到检测平面中,第一平行边所指示的平行方向上的第一方向消隐点、以及在第二平行边所指示的平行方向上的第二方向消隐点。
更多的,服务器在映射得到上述第一方向消隐点和第二方向消隐点时,还可以映射得到第一方向消隐点在平面空间中的平面坐标、以及第二方向消隐点在平面空间中的平面坐标。换句话说,第一方向消隐点和第二方向消隐点的平面坐标也是已知的可以获取得到的。
步骤S104,基于第一方向消隐点,确定检测点在第二平行边上的第一投影点,基于第二方向消隐点,确定检测点在第一平行边上的第二投影点;
具体的,服务器可以通过上述第一方向消隐点,得到检测点在第二平行边上的投影点,可以将该投影点称之为第一投影点。服务器还可以通过上述第二方向消隐点,得到检测点在第一平行边上的投影点,可以将该投影点称之为第二投影点。请参见下述内容描述。
其中,服务器可以对检测点和第一方向消隐点进行连接,得到检测点和第一方向消隐点之间的连线,可以将该连线称之为第一连接线。服务器可以获取该第一连接线所属的直线(或者可以称为第一连接线的延长线)与第二平行边之间的交点,并将该交点作为检测点在第二平行边上的第一投影点。其中,若是第一连接线所属的直线与第二平行边不相交,则第一投影点可以为第一连接线所属的直线与第二平行边所属的直线(或者可以称之为第二平行边的延长线)之间的交点。
由于第一连接线和第一平行边均经过第一方向消隐点,因此可以认为第一连接线和第一平行边在立体空间中是相互平行的。若上述检测平面为矩形,则该第一投影点还是检测点在第二平行边上的垂点,即第一连接线所属的直线与第二平行边所属的直线之间是相互垂直的。因此,通过第一方向消隐点可以准确得到检测点在第二平行边上的第一投影点。
同理,服务器可以对检测点和第二方向消隐点进行连接,得到检测点和第二方向消隐点之间的连线,可以将该连线称之为第二连接线。服务器可以获取该第二连接线所属的直线(或者可以称为第二连接线的延长线)与第一平行边之间的交点,并将该交点作为检测点在第一平行边上的第二投影点。其中,若是第二连接线所属的直线与第一平行边不相交,则第二投影点可以为第二连接线所属的直线与第一平行边所属的直线(或者可以称之为第二平行边的延长线)之间的交点。
由于第二连接线和第二平行边均经过第二方向消隐点,因此可以认为第二连接线和第二平行边在立体空间中是相互平行的。若上述检测平面为矩形,则该第二投影点还是检测点在第一平行边上的垂点,即第二连接线所属的直线与第一平行边所属的直线之间是相互垂直的。因此,通过第二方向消隐点可以准确得到检测点在第一平行边上的第二投影点。
因此,通过上述过程,即可得到检测点在第一平行边上的第二投影点、以及检测点在第二平行边上的第一投影点。
步骤S105,基于第一基准顶点、第二基准顶点、第三基准顶点、第一投影点、第二投影点、第一方向消隐点和第二方向消隐点,确定检测点在立体空间中的立体空间坐标;
具体的,首先服务器可以通过上述第一基准顶点、第二基准顶点、第一方向消隐点和检测点在平面空间中的平面坐标,得到第二投影点在平面空间中的平面坐标。其中,由于构成第一平行线的第一基准顶点和第二基准顶点的平面坐标是已知的,检测点和第一方向消隐点的平面坐标也是已知的,并且第二投影点还是过检测点和第一方向消隐点的第一连接线所属的直线与第一平行线所属的直线之间的交点,因此,通过一系列数学几何运算,即可计算出第二投影点的平面坐标。
同理,服务器可以通过上述第二基准顶点、第三基准顶点、第二方向消隐点和检测点在平面空间中的平面坐标,得到第一投影点在平面空间中的平面坐标。其中,由于构成第二平行线的第二基准顶点和第三基准顶点的平面坐标是已知的,检测点和第二方向消隐点的平面坐标也是已知的,并且第一投影点还是过检测点和第二方向消隐点的第二连接线所属的直线与第二平行线所属的直线之间的交点,因此,通过一系列数学几何运算,即可计算出第一投影点的平面坐标。
在计算得到第一投影点的平面坐标和第二投影点的平面坐标之后,服务器即可根据第一基准顶点、第二基准顶点、第三基准顶点、第一方向消隐点、第二方向消隐点、第一投影点和第二投影点在平面空间中的平面坐标,计算得到检测点在立体空间中的立体空间坐标,请参见下述内容描述。
首先,服务器可以根据第一基准顶点、第二投影点、第二基准顶点和第一方向消隐点分别对应的平面坐标,以及第一基准顶点和第二基准顶点分别对应的立体空间坐标,计算得到第二投影点在立体空间中的立体空间坐标:
在平面空间(即摄像图像所属平面的空间)中,可以记上述第一基准顶点为d,记上述第二投影点为g,记上述第二基准顶点为a,记上述第一方向消隐点为f。假设上述第二投影点位于第一基准顶点和第二基准顶点构成的第一平行边上,即第二投影点位于第一基准顶点与第二基准顶点中间。因此,在平面空间中,第一基准顶点d与第二投影点g之间连线就可以记为dg,第一基准顶点d与第二基准顶点a之间的连线可以记为da,第一方向消隐点f与第一基准顶点d之间的连线可以记为fd,第一方向消隐点f与第二基准顶点a之间的连线可以记为fa。
其中,可以将上述第一平行边所属的直线称之为第一直线,因此,可以理解的是,该第一直线上包括上述第一基准顶点d、第二投影点g、第二基准顶点a和第一方向消隐点f。因此,通过上述dg、da、fd和fa,可以得到第一基准顶点d、第二投影点g、第二基准顶点a和第一方向消隐点f在第一直线上的交比,由于该交比为第一基准顶点d、第二投影点g、第二基准顶点a和第一方向消隐点f在平面空间中的交比,因此可以将该交比称之为第一平面交比。其中,交比定义为一条直线上的4个点中两两比例的比例,具体的,该第一平面交比j1可以表示为下述公式(1)的形式:
j1=(dg/da)/(fd/fa)(1)
其中,通过上述第一基准顶点d、第二投影点g、第二基准顶点a和第一方向消隐点f的平面坐标,服务器可以计算出dg的值、da的值、fd的值以及fa的值。dg的值即为dg的连线长度,da的值即为dg的连线长度,fd的值即为fd的连线长度,fa的值即为fa的连线长度。因此,第一平面交比j1是可以计算出来的。
更多的,在立体空间中,可以记上述第一基准顶点为D,记上述第二投影点为G,记上述第二基准顶点为A,记上述第一方向消隐点为F。因此,在立体空间中,第一基准顶点D与第二投影点G之间连线就可以记为DG,第一基准顶点D与第二基准顶点A之间的连线可以记为DA,第一方向消隐点F与第一基准顶点D之间的连线可以记为FD,第一方向消隐点F与第二基准顶点A之间的连线可以记为FA。
因此,通过上述DG、DA、FD和FA,即可表示出第一基准顶点D、第二投影点G、第二基准顶点A和第一方向消隐点F在立体空间中的交比J1,可以将交比J1称之为第一立体交比,如下述公式(2)所示,第一立体交比J1为:
J1=(DG/DA)/(FD/FA)(2)
其中,由于在立体空间中,可以理解为相互平行的线之间相交于无穷远,因此,上述第一立体交比J1中的(FD/FA)可以认为等于1,因为FD和FA都等于无穷大。
其中,摄像设备在拍摄得到摄像图像时,将三维空间的画面投影到二维图像(即摄像图像)上时,保持直线的交比不变,因此,上述第一平面交比j1等于第一立体交比J1,如下述公式(3)所示:
j1=(dg/da)/(fd/fa)=J1=(DG/DA)/(FD/FA)(3)
因此,通过上述公式(3),即可计算得到DG/DA的值,如下述公式(4)所示:
(DG/DA)=(dg/da)/(fd/fa)(4)
由于第一基准顶点D和第二基准顶点A的立体空间坐标是已知的,并且,在立体空间中(DG/DA)也计算得到了,因此,通过对第一基准顶点D和第二基准顶点A的立体空间坐标、以及(DG/DA)的值进行一系列数学几何运算,即可计算得到第二投影点G的立体空间坐标。
同理,服务器可以根据第二基准顶点、第一投影点、第三基准顶点和第二方向消隐点分别对应的平面坐标,以及第二基准顶点和第三基准顶点分别对应的立体空间坐标,计算得到第一投影点在立体空间中的立体空间坐标:
在平面空间(即摄像图像所属平面的空间)中,可以记上述第一投影点为h,记上述第二基准顶点为a,记上述第二方向消隐点为e,即上述第三基准顶点为b。假设上述第一投影点位于第二基准顶点和第三基准顶点构成的第二平行边上,即第一投影点位于第二基准顶点与第三基准顶点中间。因此,在平面空间中,第三基准顶点b与第一投影点h之间连线就可以记为bh,第三基准顶点b与第二基准顶点a之间的连线可以记为ba,第二方向消隐点e与第三基准顶点b之间的连线可以记为eb,第二方向消隐点e与第二基准顶点a之间的连线可以记为ea。
其中,可以将上述第二平行边所属的直线称之为第二直线,因此,可以理解的是,该第二直线上包括上述第二基准顶点a、第一投影点h、第三基准顶点b和第二方向消隐点e。因此,通过上述bh、ba、eb和ea,可以得到第二基准顶点a、第一投影点h、第三基准顶点b和第二方向消隐点e在第二直线上的交比,由于该交比为第二基准顶点a、第一投影点h、第三基准顶点b和第二方向消隐点e在平面空间中的交比,因此可以将该交比称之为第二平面交比。具体的,该第二平面交比j2可以表示为下述公式(5)的形式:
j2=(bh/ba)/(eb/ea)(5)
其中,通过上述第二基准顶点a、第一投影点h、第三基准顶点b和第二方向消隐点e的平面坐标,服务器可以计算出bh的值、ba的值、eb的值以及ea的值。bh的值即为bh的连线长度,ba的值即为ba的连线长度,eb的值即为eb的连线长度,ea的值即为ea的连线长度。因此,第二平面交比j2是可以计算出来的。
更多的,在立体空间中,可以记上述第二基准顶点为A,记上述第一投影点为H,记上述第三基准顶点为B,记上述第二方向消隐点为E。因此,在立体空间中,第三基准顶点B与第一投影点H之间连线就可以记为BH,第三基准顶点B与第二基准顶点A之间的连线可以记为BA,第二方向消隐点E与第三基准顶点B之间的连线可以记为EB,第二方向消隐点E与第二基准顶点A之间的连线可以记为EA。
因此,通过上述BH、BA、EB和EA,即可表示出第二基准顶点A、第一投影点H、第三基准顶点B和第二方向消隐点E在立体空间中的交比J2,可以将交比J2称之为第二立体交比,如下述公式(6)所示,第二立体交比J2为:
J2=(BH/BA)/(EB/EA)(6)
其中,由于在立体空间中,可以理解为相互平行的线之间相交于无穷远,因此,上述第二立体交比J2中的EB/EA可以认为等于1,因为EB和EA都等于无穷大。
其中,由于摄像设备在拍摄得到摄像图像时,将三维空间的画面投影到二维图像(即摄像图像)上时,保持直线的交比不变,因此,上述第二平面交比j2等于第二立体交比J2,如下述公式(7)所示:
j2=(bh/ba)/(eb/ea)=J2=(BH/BA)/(EB/EA)(7)
因此,通过上述公式(7),即可计算得到(BH/BA)的值,如下述公式(8)所示:
BH/BA=(bh/ba)/(eb/ea)(8)
由于第二基准顶点A和第三基准顶点B的立体空间坐标是已知的,并且,在立体空间中BH/BA也计算得到了,因此,通过对第二基准顶点A和第三基准顶点B的立体空间坐标、以及BH/BA的值进行一系列数学几何运算,即可计算得到第一投影点H的立体空间坐标。
进而,服务器就可以通过上述计算得到的第一投影点的立体空间坐标和第二投影点的立体空间坐标,以及第一基准顶点的立体空间坐标、第二基准顶点的立体空间坐标和第三基准顶点的立体空间坐标,计算得到检测点的立体空间坐标:
其中,可以将立体空间坐标即为(x,y,z)的形式,检测平面中所有的位置点对应的z坐标均相同,即上述第一基准顶点、第二基准顶点、第三基准顶点和第四基准顶点的z坐标均相同。那么,若检测平面为矩形,则检测点的x坐标就可以为第一投影点的x坐标(此时第一投影点所在的第二平行边与x轴相互平行),检测点的y坐标就可以为第二投影点的y坐标(此时第二投影点所在的第一平行边与y轴相互平行),或者,检测点的x坐标可以为第二投影点的x坐标,检测点的y坐标可以为第一投影点的y坐标。检测点的z坐标就为检测平面的z坐标,即检测平面的z坐标就为第一基准顶点、第二基准顶点、第三基准点顶点和第四基准顶点的z坐标。
其中,若检测平面为一般的平行四边形而非矩形,则服务器可以过检测点作第一平行边上的垂线,得到检测点在第一平行边上的垂点。由于上述第一基准顶点、第二基准顶点、第三基准顶点的立体空间坐标是已知的,并且,在立体空间中,过检测点和第一投影点的第一连接线与第一平行边是相互平行的,因此,通过对第一基准顶点、第二基准顶点、第三基准顶点的立体空间坐标、以及第一投影点的立体空间坐标进行一系列数学几何运算,即可计算出上述过检测点所作的检测点在第一平行边上的垂点的立体空间坐标。
或者,服务器可以过检测点作第二平行边上的垂线,得到检测点在第二平行边上的垂点。由于上述第一基准顶点、第二基准顶点、第三基准顶点的立体空间坐标是已知的,并且,在立体空间中,过检测点和第二投影点的第二连接线与第二平行边是相互平行的,因此,通过对第一基准顶点、第二基准顶点、第三基准顶点的立体空间坐标、以及第二投影点的立体空间坐标进行一系列数学几何运算,即可计算出上述过检测点所作的检测点在第二平行边上的垂点的立体空间坐标。
进而,服务器即可根据检测点在第一平行边上的垂点的立体空间坐标或/和检测点在第二平行边上的垂点的立体空间坐标、以及检测平面的z坐标,得到检测点的立体空间坐标。具体的,由于数学几何计算方式较多,因此当检测平面不是矩形时,如何通过第一投影点的立体空间坐标和第二投影点的立体空间坐标,以及第一基准顶点的立体空间坐标、第二基准顶点的立体空间坐标和第三基准顶点的立体空间坐标,计算得到检测点的立体空间坐标的过程,可以根据具体采用的数据几何运算方式决定,对此不作限制。
通过本申请所提供的方法,即可根据摄像设备拍摄得到的包括目标对象的摄像图像,准确检测出目标对象在立体空间中的立体空间坐标,该立体空间坐标指示了目标对象在立体空间中的真实位置。
请参见图5,图5是本申请提供的一种坐标计算的场景示意图。如图5所示,检测平面abcd即为所拍摄的摄像图像中的检测平面。检测平面abcd在摄像图像中不为平行四边形。
上述第一平行边即为由第一基准顶点d和第二基准顶点a构成的边ad,上述第二平行边即为由第二基准顶点a和第三基准顶点b构成的边ab。点c为第四基准顶点。上述第一连接线就为第一方向消隐点f和检测点i之间的连线fi,上述第二连接线就为第二方向消隐点额、和检测点i之间的连线ei。因此,第一连接线fi所属的直线与第二平行边ab之间的交点就为点h,该点h也就是上述第一投影点h。第二连接线ei所属的直线与第一平行边ad之间的交点就为点g,该点g也就是上述第二投影点g。
因此,在立体空间中,可以认为第一连接线fi与第一平行边ad是相互平行的,第二连接线ei与第二平行边ab是相互平行的。因此,通过第一连接线fi和第二连接线ei可以得到检测点在第一平行边和第二平行边上非常准确的第一投影点h和第二投影点g。
因此,如区域100d所示,服务器通过上述第一基准顶点b、第二基准顶点a、第三基准顶点b的平面坐标和立体空间坐标、检测点i的平面坐标、第一方向消隐点f的平面坐标以及第二方向消隐点的平面坐标,可以计算得到第一投影点h和第二投影点g的立体空间坐标。进而如区域101d所示,服务器可以通过计算得到的第一投影点h和第二投影点g的立体空间坐标,进一步计算得到检测点i的立体空间坐标。
请参见图6,图6是本申请提供的一种坐标计算的场景示意图。由于检测点I的z坐标与检测平面的z坐标相同,因此,此处省略检测点I的z坐标的获取过程,主要描述如何计算检测点I的x坐标和y坐标。
如图6所示,在立体空间中,可以将第一基准顶点记为点D,将第二基准顶点记为点A,将第三基准顶点记为点B,将第四基准顶点记为点D。
如区域100e所示,当检测平面ABCD为矩形时,在立体空间中,检测点I在第一平行线AD上的第二投影点(此时为正投影)为检测点I在第一平行线AD上的垂点,此时第一平行线与x轴相互平行,第一连接线与y轴相互平行,第一连接线与第一平行线相互垂直。同理,检测点I在第二平行线AB上的第一投影点H为检测点I在第二平行线AB上的垂点,此时第二平行线与y轴相互平行,第二连接线与x轴相互平行,第二连接线与第二平行线相互垂直。因此,此时在立体空间中,检测点I的x坐标即为第二投影点G的x坐标,检测点I的y坐标即为第一投影点H的y坐标。
如区域101e所示,当检测平面ABCD不为矩形时,在立体空间中,检测点I在第一平行线AD上的第二投影点G(此时为斜投影)不为检测点I在第一平行线AD上的垂点,检测点I在第二平行线AB上的第一投影点H也不为检测点I在第二平行线AB上的垂点。因此,服务器可以过检测点I作第一平行线AD的垂线,可以得到检测点I在第一平行线AD上的垂点s1。
进而服务器可以通过第一基准顶点D、第二基准顶点A、第三基准顶点B、第四基准顶点D的平面坐标和立体空间坐标、以及第一投影点H的立体空间坐标、第二投影点G的立体空间坐标,计算得到垂点s1的立体空间坐标。进而,在立体空间中,检测点I的y坐标即为第一投影点H的y坐标,检测点I的x坐标即为垂点s1的x坐标。
因此,通过上述区域100e和区域101e分别表示的数学几何运算方法,即可计算得到检测点I的x坐标和y坐标,再结合上检测平面的z坐标,即可得到检测点I的立体空间坐标104e,该立体空间坐标104e的形式即为(x,y,z)的形式,立体空间坐标104e包括检测点I在立体空间中的x坐标(x轴上的坐标)、y坐标(y轴上的坐标)和z坐标(z轴上的坐标)。
步骤S106,根据检测点在立体空间中的立体空间坐标,确定目标对象在立体空间中的对象空间位置;
具体的,服务器在得到检测点的立体空间坐标之后,就可以将该检测点的立体空间坐标,作为目标对象在立体空间中的立体空间坐标,该立体空间坐标所指示的在立体空间(真实世界)中的位置,即为目标对象在立体空间中的真实位置,该真实位置可以称之为目标对象的对象空间位置。
其中,服务器还可以根据目标对象的对象空间位置,生成针对目标对象的位置变换引导信息,该位置变换引导信息用于指示目标对象应该前往的位置。换句话说,该位置变换引导信息用于指示目标对象从当前的对象空间位置,前往至引导位置,该引导位置也就是位置变换引导信息所指示的位置。
服务器可以将该位置变换引导信息发送至目标对象所属的对象终端,该对象终端可以在终端页面中对该位置变换引导信息进行显示输出或者语音播报输出,以提醒目标对象当前应该前往的新的位置,该新的位置也就是位置变换引导信息所指示的位置(即上述引导位置)。服务器通过向目标对象所属的对象终端发送该位置变换引导信息,可以根据检测到的目标对象当前所在的对象空间位置,指导目标对象前往新的位置(即上述引导位置)进行后续的工作。
由此可见,本申请提出的方法首先可以获取第一方向消隐点和第二方向消隐点,通过该第一方向消隐点和第二方向消隐点可以得到检测点更准确的第一投影点和第二投影点,进一步地可以根据该第一投影点和第二投影点得到检测点更准确的立体空间坐标,因此最终根据该检测点的立体空间坐标所得到的目标对象的对象空间位置也更准确。本申请提供的方法适用于大型车间(例如大于6000平米)中的工人定位,因为大型车间中的工人在摄像图像中的图像较小(即像素较小),因此直接使用单目摄像头定位(例如直接在摄像图像中大致模拟出工人所属检测点在检测平面的平行边上的投影点的做法)工人的位置(即立体空间坐标)误差会较大,而使用本申请中所提供的通过消隐点来辅助检测工人的位置,会使得所检测得到的工人的位置更加准确。
请参见图7,图7是本申请提供的一种坐标计算方法的流程示意图。如图7所示,该方法包括:
步骤S201,获取单目图像;
具体的,该单目图像即为上述摄像图像,是通过单目摄像设备得到的。服务器可以获取到摄像设备同步过来的单目图像。
步骤S202,确定检测平面;
具体的,服务器可以检测单目图像中的检测平面。
步骤S203,确定消隐点;
具体的,服务器可以通过摄像设备映射得到检测平面中两组边分别对应的消隐点(包括上述第一方向消隐点和第二方向消隐点)。
步骤S204,做待估计点在平面边上的投影点,根据投影直线交比不变的性质,确定投影比例;
具体的,待估计点即为上述检测点。服务器可以通过映射的消隐点做平面边上的投影点,包括上述做上述第一平行边上的第二投影点以及做上述第二平行边上的第一投影点。
投影直线交比不变的性质,即为上述直线上4个点在平面空间中的交比等于直线上4个点在立体空间中的交比,例如上述第一平面交比等于第一立体交比,第二平面交比等于第二立体交比。
因此,通过投影直线交比不变的性质,可以确定投影比例,该投影比例可以包括上述公式(4)中的DG/DA和公式(8)中的BH/BA。
步骤S205,根据投影比例以及顶点真实坐标,算出待估计点的真实坐标;
具体的,通过上述得到的投影比例可以计算出投影点的真实坐标,该真实坐标即为立体空间坐标。进而,通过该投影点的真实坐标可以计算出待估计点的真实坐标。
通过本申请所提供的方法,可以巧妙应用消隐点以及投影直线交比不变的性质来计算得到检测点准确的立体空间坐标。
请参见图8,图8是本申请提供的一种对象检测装置的结构示意图。如图8所示,该对象检测装置1可以包括:摄像图像检测模块101、检测点获取模块102、消隐点获取模块103、投影点确定模块104、坐标确定模块105和对象位置确定模块106;
摄像图像检测模块101,用于获取基于摄像设备所得到的摄像图像,检测摄像图像中的目标对象;摄像图像中还包括检测平面;
检测点获取模块102,用于获取摄像图像中目标对象与检测平面的交点,作为检测点;检测平面包括第一平行边和第二平行边;第一平行边是由检测平面的第一基准顶点和第二基准顶点确定;第二平行边是由检测平面的第二基准顶点和第三基准顶点确定;
消隐点获取模块103,用于获取在第一平行边所指示的平行方向上的第一方向消隐点、以及在第二平行边所指示的平行方向上的第二方向消隐点;
投影点确定模块104,用于基于第一方向消隐点,确定检测点在第二平行边上的第一投影点,基于第二方向消隐点,确定检测点在第一平行边上的第二投影点;
坐标确定模块105,用于基于第一基准顶点、第二基准顶点、第三基准顶点、第一投影点、第二投影点、第一方向消隐点和第二方向消隐点,确定检测点在立体空间中的立体空间坐标;
对象位置确定模块106,用于根据检测点在立体空间中的立体空间坐标,确定目标对象在立体空间中的对象空间位置。
其中,摄像图像检测模块101、检测点获取模块102、消隐点获取模块103、投影点确定模块104、坐标确定模块105和对象位置确定模块106的具体功能实现方式请参见图3对应的实施例中的步骤S101-步骤S106,这里不再进行赘述。
其中,检测平面为地面平面;目标对象为用户;
检测点获取模块102,包括:第一检测点确定单元1021和第二检测点确定单元1022;
第一检测点确定单元1021,用于当目标对象在摄像图像的检测平面中具有落脚点时,将落脚点确定为目标对象与检测平面之间的交点,将目标对象与检测平面之间的交点确定为检测点;
第二检测点确定单元1022,用于当目标对象在摄像图像的检测平面中不具有落脚点时,预测目标对象在摄像图像的检测平面中的预测落脚点,将预测落脚点确定为目标对象与检测平面之间的交点,将目标对象与检测平面之间的交点确定为检测点。
其中,第一检测点确定单元1021和第二检测点确定单元1022的具体功能实现方式请参见图3对应的实施例中的步骤S102,这里不再进行赘述。
其中,消隐点获取模块103,包括:第一交点获取单元1031、第二交点获取单元1032和消隐点确定单元1033;
第一交点获取单元1031,用于获取检测平面的与第一平行边相互平行的第三平行边,将第一平行边和第三平行边映射到平面空间,得到第一平行边与第三平行边在平面空间中的第一平行交点;
第二交点获取单元1032,用于获取检测平面的与第二平行边相互平行的第四平行边,将第二平行边和第四平行边映射到平面空间,得到第二平行边与第四平行边在平面空间中的第二平行交点;
消隐点确定单元1033,用于将第一平行交点确定为第一方向消隐点,将第二平行交点确定为第二方向消隐点。
其中,第一交点获取单元1031、第二交点获取单元1032和消隐点确定单元1033的具体功能实现方式请参见图3对应的实施例中的步骤S103,这里不再进行赘述。
其中,投影点确定模块104,包括:第一连线获取单元1041和第一投影点获取单元1042;
第一连线获取单元1041,用于获取第一方向消隐点与检测点的第一连接线;
第一投影点获取单元1042,用于获取第一连接线所属的直线与第二平行边之间的交点,作为第一投影点;在平面空间中经过第一方向消隐点的第一平行边和第一连接线,在立体空间中相互平行。
其中,第一连线获取单元1041和第一投影点获取单元1042的具体功能实现方式请参见图3对应的实施例中的步骤S104,这里不再进行赘述。
其中,投影点确定模块104,包括:第二连线获取单元1043和第二投影点获取单元1044;
第二连线获取单元1043,用于获取第二方向消隐点与检测点的第二连接线;
第二投影点获取单元1044,用于获取第二连接线所属的直线与第一平行边之间的交点,作为第二投影点;在平面空间中经过第二方向消隐点的第二平行边和第二连接线,在立体空间中相互平行。
其中,第二连线获取单元1043和第二投影点获取单元1044的具体功能实现方式请参见图3对应的实施例中的步骤S104,这里不再进行赘述。
其中,坐标确定模块105,包括:第一平面坐标确定单元1051、第二平面坐标确定单元1052和立体坐标确定单元1053;
第一平面坐标确定单元1051,用于基于第一基准顶点、第二基准顶点、第一方向消隐点和检测点分别在平面空间中的平面坐标,确定第二投影点在平面空间中的平面坐标;
第二平面坐标确定单元1052,用于基于第二基准顶点、第三基准顶点、第二方向消隐点和检测点分别在平面空间中的平面坐标,确定第一投影点在平面空间中的平面坐标;
立体坐标确定单元1053,用于基于第一基准顶点、第二基准顶点以及第三基准顶点分别在平面空间中的平面坐标、第一投影点和第二投影点分别在平面空间中的平面坐标、第一方向消隐点和第二方向消隐点分别在平面空间中的平面坐标,确定检测点在立体空间中的立体空间坐标。
其中,第一平面坐标确定单元1051、第二平面坐标确定单元1052和立体坐标确定单元1053的具体功能实现方式请参见图3对应的实施例中的步骤S105,这里不再进行赘述。
其中,上述装置1还包括:测量坐标获取模块107和平面坐标确定模块108;
测量坐标获取模块107,用于获取第一基准顶点、第二基准顶点、第三基准顶点、检测点分别在摄像图像中的图像测量坐标;
平面坐标确定模块108,用于将第一基准顶点所属的图像测量坐标确定为第一基准顶点所属的平面坐标,将第二基准顶点所属的图像测量坐标确定为第二基准顶点所属的平面坐标,将第三基准顶点所属的图像测量坐标确定为第三基准顶点所属的平面坐标,将检测点所属的图像测量坐标确定为检测点所属的平面坐标。
其中,测量坐标获取模块107和平面坐标确定模块108的具体功能实现方式请参见图3对应的实施例中的步骤S102,这里不再进行赘述。
其中,立体坐标确定单元1053,包括:第一立体坐标获取子单元10531、第二立体坐标获取子单元10532和第三立体坐标确定子单元10533;
第一立体坐标获取子单元10531,用于根据第一基准顶点、第二投影点、第二基准顶点和第一方向消隐点分别所属的平面坐标,以及第一基准顶点和第二基准顶点分别所属的立体空间坐标,获取第二投影点在立体空间中的立体空间坐标;
第二立体坐标获取子单元10532,用于根据第二基准顶点、第一投影点、第三基准顶点和第二方向消隐点分别所属的平面坐标,以及第二基准顶点和第三基准顶点分别所属的立体空间坐标,获取第一投影点在立体空间中的立体空间坐标;
第三立体坐标确定子单元10533,用于根据第一投影点、第二投影点、第一基准顶点、第二基准顶点、第三基准顶点分别所属的立体空间坐标,确定检测点在立体空间中的立体空间坐标。
其中,第一立体坐标获取子单元10531、第二立体坐标获取子单元10532和第三立体坐标确定子单元10533的具体功能实现方式请参见图3对应的实施例中的步骤S105,这里不再进行赘述。
其中,第一平行边所属的第一直线经过第一方向消隐点;
第一立体坐标获取子单元10531,包括:第一交比获取子单元105311、第二交比获取子单元105312和第一投影坐标确定子单元105313;
第一交比获取子单元105311,用于根据第一基准顶点、第二投影点、第二基准顶点和第一方向消隐点分别所属的平面坐标,确定第一基准顶点、第二投影点、第二基准顶点和第一方向消隐点在第一直线上的第一平面交比;
第二交比获取子单元105312,用于根据第一平面交比,确定第一基准顶点、第二投影点、第二基准顶点和第一方向消隐点在立体空间中的第一立体交比;
第一投影坐标确定子单元105313,用于根据第一基准顶点和第二基准顶点分别在立体空间中的立体空间坐标、以及第一立体交比,确定第二投影点在立体空间中的立体空间坐标。
其中,第一交比获取子单元105311、第二交比获取子单元105312和第一投影坐标确定子单元105313的具体功能实现方式请参见图3对应的实施例中的步骤S105,这里不再进行赘述。
其中,第二平行边所属的第二直线经过第二方向消隐点;
第二立体坐标获取子单元10532,包括:第三交比获取子单元105321、第四交比获取子单元105322和第二投影坐标确定子单元105323;
第三交比获取子单元105321,用于根据第二基准顶点、第一投影点、第三基准顶点和第二方向消隐点分别所属的平面坐标,确定第二基准顶点、第一投影点、第三基准顶点和第二方向消隐点在第二直线上的第二平面交比;
第四交比获取子单元105322,用于根据第二平面交比,确定第二基准顶点、第一投影点、第三基准顶点和第二方向消隐点在立体空间中的第二立体交比;
第二投影坐标确定子单元105323,用于根据第二基准顶点和第三基准顶点分别在立体空间中的立体空间坐标、以及第二立体交比,确定第一投影点在立体空间中的立体空间坐标。
其中,第三交比获取子单元105321、第四交比获取子单元105322和第二投影坐标确定子单元105323的具体功能实现方式请参见图3对应的实施例中的步骤S105,这里不再进行赘述。
对象位置确定模块106,用于:
将检测点在立体空间中的立体空间坐标所指示的空间位置,确定为目标对象的对象空间位置;
上述装置1还包括:
引导信息生成模块109,用于根据对象空间位置,生成针对目标对象的位置变换引导信息;位置变换引导信息,用于指示目标对象从对象空间位置变换至引导位置;
输出模块110,用于将位置变换引导信息同步至目标对象所属的对象终端,以使对象终端输出位置变换引导信息。
其中,引导信息生成模块109和输出模块110的具体功能实现方式请参见图3对应的实施例中的步骤S106,这里不再进行赘述。
由此可见,本申请提出的装置首先可以获取第一方向消隐点和第二方向消隐点,通过该第一方向消隐点和第二方向消隐点可以得到检测点更准确的第一投影点和第二投影点,进一步地可以根据该第一投影点和第二投影点得到检测点更准确的立体空间坐标,因此最终根据该检测点的立体空间坐标所得到的目标对象的对象空间位置也更准确。
请参见图9,图9是本申请提供的一种计算机设备的结构示意图。如图9所示,计算机设备1000可以包括:处理器1001,网络接口1004和存储器1005,此外,计算机设备1000还可以包括:用户接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图9所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在图9所示的计算机设备1000中,网络接口1004可提供网络通讯功能;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现前文图3对应实施例中对对象检测方法的描述。应当理解,本申请中所描述的计算机设备1000也可执行前文图8所对应实施例中对对象检测装置1的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本申请还提供了一种计算机可读存储介质,且计算机可读存储介质中存储有前文提及的对象检测装置1所执行的计算机程序,且计算机程序包括程序指令,当处理器执行程序指令时,能够执行前文图3对应实施例中对对象检测方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,上述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖范围。
Claims (15)
1.一种对象检测方法,其特征在于,包括:
获取基于摄像设备所得到的摄像图像,检测所述摄像图像中的目标对象;所述摄像图像中还包括检测平面;
获取所述摄像图像中所述目标对象与所述检测平面之间的交点,作为检测点;所述检测平面包括第一平行边和第二平行边;所述第一平行边是由所述检测平面的第一基准顶点和第二基准顶点确定;所述第二平行边是由所述检测平面的所述第二基准顶点和第三基准顶点确定;
获取在所述第一平行边所指示的平行方向上的第一方向消隐点、以及在所述第二平行边所指示的平行方向上的第二方向消隐点;
基于所述第一方向消隐点,确定所述检测点在所述第二平行边上的第一投影点,基于所述第二方向消隐点,确定所述检测点在所述第一平行边上的第二投影点;
基于所述第一基准顶点、所述第二基准顶点、所述第三基准顶点、所述第一投影点、所述第二投影点、所述第一方向消隐点和所述第二方向消隐点,确定所述检测点在立体空间中的立体空间坐标;
根据所述检测点在所述立体空间中的立体空间坐标,确定所述目标对象在所述立体空间中的对象空间位置。
2.根据权利要求1所述的方法,其特征在于,所述检测平面为地面平面;所述目标对象为用户;
所述获取所述摄像图像中所述目标对象与所述检测平面之间的交点,作为检测点,包括:
当所述目标对象在所述摄像图像的所述检测平面中具有落脚点时,将所述落脚点确定为目标对象与所述检测平面之间的交点,将所述目标对象与所述检测平面之间的交点确定为所述检测点;
当所述目标对象在所述摄像图像的所述检测平面中不具有所述落脚点时,预测所述目标对象在所述摄像图像的所述检测平面中的预测落脚点,将所述预测落脚点确定为所述目标对象与所述检测平面之间的交点,将所述目标对象与所述检测平面之间的交点确定为所述检测点。
3.根据权利要求1所述的方法,其特征在于,所述获取在所述第一平行边所指示的平行方向上的第一方向消隐点、以及在所述第二平行边所指示的平行方向上的第二方向消隐点,包括:
获取所述检测平面的与所述第一平行边相互平行的第三平行边,将所述第一平行边和所述第三平行边映射到平面空间,得到所述第一平行边与所述第三平行边在所述平面空间中的第一平行交点;
获取所述检测平面的与所述第二平行边相互平行的第四平行边,将所述第二平行边和所述第四平行边映射到所述平面空间,得到所述第二平行边与所述第四平行边在所述平面空间中的第二平行交点;
将所述第一平行交点确定为所述第一方向消隐点,将所述第二平行交点确定为所述第二方向消隐点。
4.根据权利要求1所述的方法,其特征在于,所述基于所述第一方向消隐点,确定所述检测点在所述第二平行边上的第一投影点,包括:
获取所述第一方向消隐点与所述检测点的第一连接线;
获取所述第一连接线所属的直线与所述第二平行边之间的交点,作为所述第一投影点;在平面空间中经过所述第一方向消隐点的所述第一平行边和所述第一连接线,在所述立体空间中相互平行。
5.根据权利要求1所述的方法,其特征在于,所述基于所述第二方向消隐点,确定所述检测点在所述第一平行边上的第二投影点,包括:
获取所述第二方向消隐点与所述检测点的第二连接线;
获取所述第二连接线所属的直线与所述第一平行边之间的交点,作为所述第二投影点;在平面空间中经过所述第二方向消隐点的所述第二平行边和所述第二连接线,在所述立体空间中相互平行。
6.根据权利要求1所述的方法,其特征在于,所述基于所述第一基准顶点、所述第二基准顶点、所述第三基准顶点、所述第一投影点、所述第二投影点、所述第一方向消隐点和所述第二方向消隐点,确定所述检测点在立体空间中的立体空间坐标,包括:
基于所述第一基准顶点、所述第二基准顶点、所述第一方向消隐点和所述检测点分别在平面空间中的平面坐标,确定所述第二投影点在所述平面空间中的平面坐标;
基于所述第二基准顶点、所述第三基准顶点、所述第二方向消隐点和所述检测点分别在所述平面空间中的平面坐标,确定所述第一投影点在所述平面空间中的平面坐标;
基于所述第一基准顶点、所述第二基准顶点以及所述第三基准顶点分别在所述平面空间中的平面坐标、所述第一投影点和所述第二投影点分别在所述平面空间中的平面坐标、所述第一方向消隐点和所述第二方向消隐点分别在所述平面空间中的平面坐标,确定所述检测点在所述立体空间中的立体空间坐标。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
获取所述第一基准顶点、所述第二基准顶点、所述第三基准顶点、所述检测点分别在所述摄像图像中的图像测量坐标;
将所述第一基准顶点所属的图像测量坐标确定为所述第一基准顶点所属的平面坐标,将所述第二基准顶点所属的图像测量坐标确定为所述第二基准顶点所属的平面坐标,将所述第三基准顶点所属的图像测量坐标确定为所述第三基准顶点所属的平面坐标,将所述检测点所属的图像测量坐标确定为所述检测点所属的平面坐标。
8.根据权利要求6所述的方法,其特征在于,所述基于所述第一基准顶点、所述第二基准顶点以及所述第三基准顶点分别在所述平面空间中的平面坐标、所述第一投影点和所述第二投影点分别在所述平面空间中的平面坐标、所述第一方向消隐点和所述第二方向消隐点分别在所述平面空间中的平面坐标,确定所述检测点在所述立体空间中的立体空间坐标,包括:
根据所述第一基准顶点、所述第二投影点、所述第二基准顶点和所述第一方向消隐点分别所属的平面坐标,以及所述第一基准顶点和所述第二基准顶点分别所属的立体空间坐标,获取所述第二投影点在所述立体空间中的立体空间坐标;
根据所述第二基准顶点、所述第一投影点、所述第三基准顶点和所述第二方向消隐点分别所属的平面坐标,以及所述第二基准顶点和所述第三基准顶点分别所属的立体空间坐标,获取所述第一投影点在所述立体空间中的立体空间坐标;
根据所述第一投影点、所述第二投影点、所述第一基准顶点、所述第二基准顶点、所述第三基准顶点分别所属的立体空间坐标,确定所述检测点在所述立体空间中的立体空间坐标。
9.根据权利要求8所述的方法,其特征在于,所述第一平行边所属的第一直线经过所述第一方向消隐点;
所述根据所述第一基准顶点、所述第二投影点、所述第二基准顶点和所述第一方向消隐点分别所属的平面坐标,以及所述第一基准顶点和所述第二基准顶点分别所属的立体空间坐标,获取所述第二投影点在所述立体空间中的立体空间坐标,包括:
根据所述第一基准顶点、所述第二投影点、所述第二基准顶点和所述第一方向消隐点分别所属的平面坐标,确定所述第一基准顶点、所述第二投影点、所述第二基准顶点和所述第一方向消隐点在所述第一直线上的第一平面交比;
根据所述第一平面交比,确定所述第一基准顶点、所述第二投影点、所述第二基准顶点和所述第一方向消隐点在立体空间中的第一立体交比;
根据所述第一基准顶点和所述第二基准顶点分别在所述立体空间中的立体空间坐标、以及所述第一立体交比,确定所述第二投影点在所述立体空间中的立体空间坐标。
10.根据权利要求8所述的方法,其特征在于,所述第二平行边所属的第二直线经过所述第二方向消隐点;
所述根据所述第二基准顶点、所述第一投影点、所述第三基准顶点和所述第二方向消隐点分别所属的平面坐标,以及所述第二基准顶点和所述第三基准顶点分别所属的立体空间坐标,获取所述第一投影点在所述立体空间中的立体空间坐标,包括:
根据所述第二基准顶点、所述第一投影点、所述第三基准顶点和所述第二方向消隐点分别所属的平面坐标,确定所述第二基准顶点、所述第一投影点、所述第三基准顶点和所述第二方向消隐点在所述第二直线上的第二平面交比;
根据所述第二平面交比,确定所述第二基准顶点、所述第一投影点、所述第三基准顶点和所述第二方向消隐点在立体空间中的第二立体交比;
根据所述第二基准顶点和所述第三基准顶点分别在所述立体空间中的立体空间坐标、以及所述第二立体交比,确定所述第一投影点在所述立体空间中的立体空间坐标。
11.根据权利要求1所述的方法,其特征在于,所述根据所述检测点在所述立体空间中的立体空间坐标,确定所述目标对象在所述立体空间中的对象空间位置,包括:
将所述检测点在所述立体空间中的立体空间坐标所指示的空间位置,确定为所述目标对象的所述对象空间位置;
所述方法还包括:
根据所述对象空间位置,生成针对所述目标对象的位置变换引导信息;所述位置变换引导信息,用于指示所述目标对象从所述对象空间位置变换至引导位置;
将所述位置变换引导信息同步至所述目标对象所属的对象终端,以使所述对象终端输出所述位置变换引导信息。
12.一种对象检测装置,其特征在于,包括:
摄像图像检测模块,用于获取基于摄像设备所得到的摄像图像,检测所述摄像图像中的目标对象;所述摄像图像中还包括检测平面;
检测点获取模块,用于获取所述摄像图像中所述目标对象与所述检测平面之间的交点,作为检测点;所述检测平面包括第一平行边和第二平行边;所述第一平行边是由所述检测平面的第一基准顶点和第二基准顶点确定;所述第二平行边是由所述检测平面的所述第二基准顶点和第三基准顶点确定;
消隐点获取模块,用于获取在所述第一平行边所指示的平行方向上的第一方向消隐点、以及在所述第二平行边所指示的平行方向上的第二方向消隐点;
投影点确定模块,用于基于所述第一方向消隐点,确定所述检测点在所述第二平行边上的第一投影点,基于所述第二方向消隐点,确定所述检测点在所述第一平行边上的第二投影点;
坐标确定模块,用于基于所述第一基准顶点、所述第二基准顶点、所述第三基准顶点、所述第一投影点、所述第二投影点、所述第一方向消隐点和所述第二方向消隐点,确定所述检测点在立体空间中的立体空间坐标;
对象位置确定模块,用于根据所述检测点在所述立体空间中的立体空间坐标,确定所述目标对象在所述立体空间中的对象空间位置。
13.根据权利要求12所述的装置,其特征在于,所述检测平面为地面平面;所述目标对象为用户;
所述检测点获取模块,包括:
第一检测点确定单元,用于当所述目标对象在所述摄像图像的所述检测平面中具有落脚点时,将所述落脚点确定为目标对象与所述检测平面之间的交点,将所述目标对象与所述检测平面之间的交点确定为所述检测点;
第二检测点确定单元,用于当所述目标对象在所述摄像图像的所述检测平面中不具有所述落脚点时,预测所述目标对象在所述摄像图像的所述检测平面中的预测落脚点,将所述预测落脚点确定为所述目标对象与所述检测平面之间的交点,将所述目标对象与所述检测平面之间的交点确定为所述检测点。
14.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行权利要求1-11中任一项所述方法的步骤。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令被处理器执行时,执行权利要求1-11任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011209513.5A CN112033379B (zh) | 2020-11-03 | 2020-11-03 | 一种对象检测方法、装置以及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011209513.5A CN112033379B (zh) | 2020-11-03 | 2020-11-03 | 一种对象检测方法、装置以及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112033379A CN112033379A (zh) | 2020-12-04 |
CN112033379B true CN112033379B (zh) | 2021-01-29 |
Family
ID=73573194
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011209513.5A Active CN112033379B (zh) | 2020-11-03 | 2020-11-03 | 一种对象检测方法、装置以及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112033379B (zh) |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7239331B2 (en) * | 2004-02-17 | 2007-07-03 | Corel Corporation | Method and apparatus for correction of perspective distortion |
JP4886411B2 (ja) * | 2006-07-28 | 2012-02-29 | 岡村印刷工業株式会社 | ゲージ板による屋根面積の算出方法 |
CN101916454B (zh) * | 2010-04-08 | 2013-03-27 | 董洪伟 | 基于网格变形和连续优化的高分辨率人脸重建方法 |
CN102810204B (zh) * | 2012-07-03 | 2015-12-16 | 天津大学 | 基于平行四边形的单目视觉单幅图像定位方法 |
CN106651961B (zh) * | 2016-12-09 | 2019-10-11 | 中山大学 | 一种基于彩色立体标定物的无人机标定方法及系统 |
CN111179337B (zh) * | 2018-10-24 | 2024-02-02 | 中国科学院自动化研究所 | 空间直线朝向测量方法、装置、计算机设备和存储介质 |
CN111754568B (zh) * | 2020-06-19 | 2024-05-28 | 上海保隆汽车科技股份有限公司 | 一种标定图案、标定方法及其标定板装置 |
CN111798431B (zh) * | 2020-07-06 | 2023-09-15 | 苏州市职业大学 | 一种实时消失点检测方法、装置、设备及存储介质 |
-
2020
- 2020-11-03 CN CN202011209513.5A patent/CN112033379B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112033379A (zh) | 2020-12-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107223269B (zh) | 三维场景定位方法和装置 | |
US11928800B2 (en) | Image coordinate system transformation method and apparatus, device, and storage medium | |
CN111325796B (zh) | 用于确定视觉设备的位姿的方法和装置 | |
CN110383343B (zh) | 不一致检测系统、混合现实系统、程序和不一致检测方法 | |
CN106530218B (zh) | 一种坐标转换方法及装置 | |
CN111627114A (zh) | 室内视觉导航方法、装置、系统及电子设备 | |
CN107622252B (zh) | 信息生成方法和装置 | |
CN112686877B (zh) | 基于双目相机的三维房屋损伤模型构建测量方法及系统 | |
JP2014127208A (ja) | 物体検出方法及び物体検出装置 | |
CN110866977B (zh) | 增强现实处理方法及装置、系统、存储介质和电子设备 | |
KR102152436B1 (ko) | 3차원 포인트 클라우드 기반의 동적 3차원 모델 생성을 위한 뼈대 정보 처리 시스템 및 방법 | |
CN107885871A (zh) | 基于云计算的同步定位与地图构建方法、系统、交互系统 | |
JP2014112055A (ja) | カメラ姿勢の推定方法およびカメラ姿勢の推定システム | |
CN108430032B (zh) | 一种实现vr/ar设备位置共享的方法及设备 | |
CN111582240B (zh) | 一种对象数量的识别方法、装置、设备和介质 | |
JP7164589B2 (ja) | 室内測位方法、装置、機器および記憶媒体 | |
US20180020203A1 (en) | Information processing apparatus, method for panoramic image display, and non-transitory computer-readable storage medium | |
Franz et al. | Real-time collaborative reconstruction of digital building models with mobile devices | |
Feng et al. | Three-dimensional robot localization using cameras in wireless multimedia sensor networks | |
CN113724391A (zh) | 三维模型构建方法、装置、电子设备和计算机可读介质 | |
US20180114339A1 (en) | Information processing device and method, and program | |
CN113838193A (zh) | 数据处理方法、装置、计算机设备及存储介质 | |
CN112033379B (zh) | 一种对象检测方法、装置以及计算机可读存储介质 | |
WO2023088127A1 (zh) | 室内导航方法、服务器、装置和终端 | |
KR20210050997A (ko) | 포즈 추정 방법 및 장치, 컴퓨터 판독 가능한 기록 매체 및 컴퓨터 프로그램 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40035461 Country of ref document: HK |