室内图像处理方法、服务器及计算机可读存储介质与流程

文档序号:15350328发布日期:2018-09-04 23:15阅读:149来源:国知局

本发明涉及计算机技术领域,尤其涉及一种室内图像处理方法、服务器及计算机可读存储介质。



背景技术:

随着互联网的发展,越来越多的产业开始跟互联网结合,房地产电子商务也应运而生。相对于传统的房地产居间经营模式,房产电商已经从最基础的房地产信息电子化,涵盖到房地产经纪代理机构的地面服务和内部运营管理的各个领域。

作为房地产电子商务平台的主要产品,房产在电商业务中占据举足轻重的地位。对一套房产而言,视觉将会是客户对房产最直观的体验。在当今的互联网时代,客户通常会选择在电商平台上对房产进行基本的筛选,再在线下对筛选过的房产进行考察。在此种情况下,如果不能更好地在电商平台上将房产的室内图像细节显示给客户,客户可能不会对相应的房产做进一步的考察,进而丧失了可能的交易,影响相应的业绩表现。



技术实现要素:

有鉴于此,本发明提出一种室内图像处理方法、服务器及计算机可读存储介质,可以根据移动终端获取实时的室内场景图片,快速的获取室内360度或720度全景影像,并显示给最终用户,据此可以使得目标房产的室内情况在线上的展示更加立体,使消费者获得更多的第一感官资料。

首先,为实现上述目的,本发明提出一种服务器,所述服务器包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的图像处理程序,所述图像处理程序被所述处理器执行时实现如下步骤:接收所述移动终端上传的图片;根据所述移动终端上传的图片判断所述移动终端采集所述图片的采集角度;根据所述采集角度选择对应的图片拼接算法,利用所述图片拼接算法对所述移动终端上传的图片进行拼接;将拼接后的图片进行展示。

可选地,所述图像处理程序被所述处理器执行时,所述接收所述移动终端上传的图片的步骤具体包括:控制所述移动终端开启相机应用;根据用户的触碰操作选择图片采集角度;根据选择的采集角度在相机界面显示拍摄指引,所述拍摄指引用于指导用户利用所述移动终端进行图片采集;将采集的图片进行上传。

可选地,所述采集角度包括360度和720度,所述拼接后的图片包括360度拼接图片或720度拼接图片,所述图像处理程序被所述处理器执行时,在所述将拼接后的图片进行展示步骤之前还包括:判断所述拼接后的图片的图片重叠区域的位置;根据所述图片重叠区域的位置判断所述拼接后的图片是360度拼接图片还是720度拼接图片。

可选地,当所述拼接后的图片是360度拼接图片时,利用krpano引擎渲染处理所述360度拼接图片,以生成用于展示的html页面,所述html页面用于所述移动终端进行访问;当所述拼接后的图片是720度拼接图片时,将所述720度拼接图片回传至所述移动终端,所述移动终端利用开源的opengl技术对所述720度拼接图片进行720度展示。

此外,为实现上述目的,本发明还提供一种室内图像处理方法,应用于服务器,所述服务器连接移动终端,所述方法包括:接收所述移动终端上传的图片;根据所述移动终端上传的图片判断所述移动终端采集所述图片的采集角度;根据所述采集角度选择对应的图片拼接算法,利用所述图片拼接算法对所述移动终端上传的图片进行拼接;及将拼接后的图片进行展示。

可选地,所述接收所述移动终端上传的图片的步骤具体包括:控制所述移动终端开启相机应用;根据用户的触碰操作选择图片采集角度;根据的选择采集角度在相机界面显示拍摄指引,所述拍摄指引用于指导用户利用所述移动终端进行图片采集;及将采集的图片进行上传。

可选的,所述图片拼接算法包括opencv图片360度全景拼接算法和opencv图片720度全景拼接算法,所述根据所述采集角度选择对应的图片拼接算法,利用所述图片拼接算法对所述移动终端上传的图片进行拼接的步骤具体包括:当采集角度为360度时,选择所述opencv图片360度全景拼接算法,并利用所述opencv图片360度全景拼接算法对所述移动终端上传的图片进行拼接;当采集角度为720度时,选择所述opencv图片720度全景拼接算法,并利用所述opencv图片720度全景拼接算法对所述移动终端上传的图片进行拼接。

可选地,所述采集角度包括360度和720度,所述拼接后的图片包括360度拼接图片或720度拼接图片,所述在将所述拼接后的图片进行展示步骤之前还包括:

判断所述拼接后的图片的图片重叠区域的位置;

根据所述图片重叠区域的位置判断所述拼接后的图片是360度拼接图片还是720度拼接图片。

可选地,所述将拼接后的图片进行展示的步骤具体包括:

当所述拼接后的图片是360度拼接图片时,利用krpano引擎渲染处理所述360度拼接图片,以生成html页面,所述html页面用于所述移动终端进行访问。

当所述拼接结果是720度拼接图片时,将720度拼接图片回传至所述移动终端,所述移动终端利用开源的opengl技术对所述720度拼接图片进行720度展示。

进一步地,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有室内图像处理程序,所述室内图像处理程序可被至少一个处理器执行,以使所述至少一个处理器执行如上所述的室内图像处理方法的步骤。

相较于现有技术,本发明所提出的室内图像处理方法、服务器及计算机可读存储介质,首先,接收所述移动终端上传的图片;其次,根据所述移动终端上传的图片判断所述移动终端采集所述图片的采集角度;再次,根据所述采集角度选择对应的图片拼接算法,并利用所述图片拼接算法对所述移动终端上传的图片进行拼接;最后,将拼接后的图片进行展示。这样,可以根据移动终端获取实时场景图片,快速的获取目标室内空间的360度或720度全景影像,并显示给最终用户,可以使得目标在线上的展示更加立体,使消费者获得更多的第一感官资料。

附图说明

图1是本发明服务器一可选的硬件架构的示意图;

图2是本发明图像处理程序第一实施例的程序模块图;

图3为本发明室内图像处理方法第一实施例的流程图;

图4为本发明室内图像处理方法第二实施例的流程图。

附图标记:

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。

参阅图1所示,是服务器1一可选的硬件架构的示意图。

所述服务器1可以是机架式服务器、刀片式服务器、塔式服务器或机柜式服务器等计算设备,该服务器1可以是独立的服务器,也可以是多个服务器所组成的服务器集群。

本实施例中,所述服务器1可包括,但不仅限于,可通过系统总线相互通信连接存储器11、处理器12、网络接口13。

所述服务器1通过网络接口13连接网络,获取资讯。所述网络可以是企业内部网(intranet)、互联网(internet)、全球移动通讯系统(globalsystemofmobilecommunication,gsm)、宽带码分多址(widebandcodedivisionmultipleaccess,wcdma)、4g网络、5g网络、蓝牙(bluetooth)、wi-fi、通话网络等无线或有线网络。

需要指出的是,图1仅示出了具有组件11-13的服务器1,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。

其中,所述存储器11至少包括一种类型的存储介质(计算机可读存储介质),所述存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器11可以是所述服务器1的内部存储单元,例如该服务器1的硬盘或内存。在另一些实施例中,所述存储器11也可以是所述服务器1的外部存储设备,例如该服务器1配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。当然,所述存储器11还可以既包括所述服务器1的内部存储单元也包括其外部存储设备。本实施例中,所述存储器11通常用于存储安装于所述服务器1的操作系统和各类应用软件,例如图像处理程序200的程序代码等。此外,所述存储器11还可以用于暂时地存储已经输出或者将要输出的各类数据。

所述处理器12在一些实施例中可以是中央处理器(centralprocessingunit,cpu)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器12通常用于控制所述服务器1的总体操作,例如执行数据交互或者通信相关的控制和处理等。本实施例中,所述处理器12用于运行所述存储器11中存储的程序代码或者处理数据,例如运行所述的图像处理程序200等。

所述网络接口13可包括无线网络接口或有线网络接口,该网络接口13通常用于在所述服务器1与其他电子设备之间建立通信连接。

本实施例中,所述服务器1内安装并运行有图像处理程序200,当所述图像处理程序200运行时,所述服务器1首先,接收所述移动终端上传的图片;其次,根据所述移动终端上传的图片判断所述移动终端采集所述图片的采集角度;再次,根据所述采集角度选择对应的图片拼接算法;然后,利用所述图片拼接算法对所述移动终端上传的图片进行拼接;最后,将拼接后图片进行展示。这样,可以根据移动终端获取实时场景图片,快速的获取目标空间的360度或720度全景影像,并显示给最终用户,可以使得目标在线上的展示更加立体,使用消费者获得更多的第一感官资料。

至此,己经详细介绍了本发明各个实施例的应用环境和相关设备的硬件结构和功能。下面,将基于上述应用环境和相关设备,提出本发明的各个实施例。

首先,本发明提出一种室内图像处理程序200。

参阅图2所示,是本发明室内图像处理程序200第一实施例的程序模块图。

本实施例中,服务器1,包括一系列的存储于存储器11上的计算机程序指令,即所述室内图像处理程序200,当该计算机程序指令被处理器12执行时,可以实现本发明各实施例的图像处理操作。在一些实施例中,基于该计算机程序指令各部分所实现的特定的操作,所述室内图像处理程序200可以被划分为一个或多个模块。例如,在图2中,所述室内图像处理程序200可以被分割成接收模块201、判断模块202、算法选择模块203、拼接模块204及展示模块205。其中:

所述接收模块201,用于接收所述移动终端上传的图片。

在本实施方式中,所述移动终端(图中未标出)为具有图像获取功能及数据传输功能的便携式终端,比如智能手机、个人数字助理、平板电脑等等。其中,移动终端上传的图片是用户根据需求对场景进行拍照获取的。具体在拍照过程中,如果单次拍照后,效果不满意,可以选择取消本次拍照结果,该照片不会上传至服务器以供拼接,如果效果满意,则需选择保存本次拍照。对于上述接收所述移动终端上传的图片的步骤,在图4中会做具体的说明。

所述判断模块202,用于根据所述移动终端上传的图片判断所述移动终端采集所述图片的采集角度。

在本实施方式中,对于图片获取过程,若选择360度或者720度进行图像采集,那么在获取的图片中将会嵌入一个采集角度数字标识,隐藏在图片像素集合中。在后续的图片处理过程中,所述判断模块203会解析图片的像素集合,则可以判断出当前分析的图片的采集角度。

所述算法选择模块203,用于根据所述采集角度选择对应的图片拼接算法。

在本实施方式中,所述图片拼接算法包括opencv图片360度全景拼接算法和opencv图片720度全景拼接算法。具体的,所述opencv图片360度全景拼接算法包括如下步骤:1.对每幅图进行特征点提取;2.对特征点进行匹配,其中在特征点提取即匹配的时候,只需要提取或匹配待拼接图片在图像采集方向上的对称两侧,比如一幅相对拍摄者左右方向的360度图片采集,只需要提取及匹配左右对称两边缘的特征点;3.进行图像配准;4.把图像拷贝到另一幅图像的特定位置,所述特定位置位于所述另一幅图像距离边缘一定距离的范围内,所述距离的设定可以根据用户需要进行设定,本文并不做限定;5.对重叠边界进行特殊处理,比如去除亮度、色调相同的像素点,去除图像噪点等。

所述opencv图片720度全景拼接算法包括如下步骤:1.对每幅图进行特征点提取;2.对特征点进行匹配,在进行特征点提取即匹配的时候,需要针对待拼接图片的所有边缘区域进行特征点的提取及匹配;3.进行图像配准;4.把图像拷贝到另一幅图像的特定位置,所述特定位置位于所述另一幅图像距离边缘一定距离的范围内,所述距离的设定可以根据用户需要进行设定,本文并不做限定;5.对重叠边界进行特殊处理,比如去除亮度、色调相同的像素点,去除图像噪点等。

所述拼接模块204,用于利用所述图片拼接算法对所述移动终端上传的图片进行拼接。

在本实施方式中,当选择的是360度对应的图片拼接算法时,则对所采集图像在采集方向上的对称两侧区域进行特征点采集与匹配,进而执行图片拼接。当选择的是720度对应的图片拼接算法时,则对所采集图像的周围预定范围内的部分进行特征点的提取及匹配,进而执行上述图片拼接。

展示模块205,用于将拼接后的图片进行展示。

在本实施方式中,在将拼接后所述图片进行展示之前,判断模块202还会对拼接后的图片做进一步的解析,进而判断拼接后的图片是否符合360度拼接图片或720度图片。具体的,判断模块202会对拼接后的图片进行分析,获取图片重叠区域,如果图片重叠区域仅仅只属于左右或上下对称分布,则判断符合360度的拼接图片,如果图片重叠区域呈多个封闭的区域,则判断符合720度的拼接图片。

更进一步的,当所述拼接结果是360度拼接图片时,展示模块205利用krpano引擎渲染处理所述360度拼接图片,并生成html页面,所述html页面用于所述移动终端进行访问时进行展示全景图像。其中krpano引擎是krpano全景显示引擎,但采用xml数据结构和基于flash的三维全景显示技术,是一个功能强大的三维全景显示引擎。通过使用krpano引擎,展示模块205可以使得360度拼接图片得以快速渲染生成一幅全景图像。并在生成了全景图像之后,生成html页面,进而可以使得移动终端快速的访问并展示全景图像给用户。

更进一步的,当所述拼接结果是720度拼接图片时,展示模块205将720度拼接图片回传至所述移动终端,所述移动终端利用开源的opengl技术对所述720度拼接图片进行渲染进行720度展示。其中对于720度的拼接图片,相应的渲染处理并不在服务端进行,而是直接将拼接后的拼接图片回传至各个需要浏览服务的移动终端,由移动终端通过opengl技术自行对拼接后的图片进行渲染展现720度的效果。由于720度拼接图片数据量要大于一般的360度拼接图片的数据量,故通过将后期渲染处理转移至移动终端,可以有效减轻服务器1端的运行压力,提高图片显示效率。

通过上述程序模块201-205,本发明所提出的服务器,接收所述移动终端上传的图片;根据所述移动终端上传的图片判断所述移动终端采集所述图片的采集角度;根据所述采集角度选择对应的图片拼接算法,并利用所述图片拼接算法对所述移动终端上传的图片进行拼接;将拼接后图片进行展示。这样,可以根据移动终端获取实时场景图片,快速的获取目标室内空间的360度或720度全景影像,并显示给最终用户,可以使得目标的室内空间在线上的展示更加立体,使消费者获得更多的第一感官资料。

此外,本发明还提出一种室内图像处理方法。

参阅图3所示,是本发明室内图像处理方法第一实施例的实施流程示意图。在本实施例中,根据不同的需求,图3所示的流程图中的步骤的执行顺序可以改变,某些步骤可以省略。

步骤s301,接收所述移动终端上传的图片。

在本实施方式中,所述移动终端为具有图像获取功能及数据传输功能的便携式终端,比如智能手机、个人数字助理、平板电脑等等。其中,移动终端上传的图片是用户根据需求对场景进行拍照获取的。具体在拍照过程中,如果单次拍照后,效果不满意,可以选择取消本次拍照结果,该照片不会上传至服务器1以供拼接,如果效果满意,则需选择保存本次拍照。其中,对于上述接收所述移动终端上传的图片的步骤,在本发明室内图像处理方法第二实施例中(如图4所示)会做具体的说明。

步骤s302,根据所述移动终端上传的图片判断所述移动终端采集所述图片的采集角度。

在本实施方式中,对于图片获取过程,若选择360度或者720度进行图像采集,那么在获取的图片中将会嵌入一个采集角度数字标识,隐藏在图片像素集合中。在后续的图片处理过程中,所述判断模块203会解析图片的像素集合,则可以判断出当前分析的图片的采集角度。

步骤s303,根据所述采集角度选择对应的图片拼接算法。

在本实施方式中,所述图片拼接算法包括opencv图片360度全景拼接算法和opencv图片720度全景拼接算法。

具体的,所述opencv图片360度全景拼接算法包括如下步骤:1.对每幅图进行特征点提取;2.对特征点进行匹配,其中在特征点提取即匹配的时候,只需要提取或匹配待拼接图片在图像采集方向上的对称两侧,比如一幅相对拍摄者左右方向的360度图片采集,只需要提取及匹配左右对称两边缘的特征点;3.进行图像配准;4.把图像拷贝到另一幅图像的特定位置,所述特定位置位于所述另一幅图像距离边缘一定距离的范围内,所述距离的设定可以根据用户需要进行设定,本文并不做限定;5.对重叠边界进行特殊处理,比如去除亮度、色调相同的像素点,去除图像噪点等。

所述opencv图片720度全景拼接算法包括如下步骤:1.对每幅图进行特征点提取;2.对特征点进行匹配,在进行特征点提取即匹配的时候,需要针对待拼接图片的所有边缘区域进行特征点的提取及匹配;3.进行图像配准;4.把图像拷贝到另一幅图像的特定位置,所述特定位置位于所述另一幅图像距离边缘一定距离的范围内,所述距离的设定可以根据用户需要进行设定,本文并不做限定;5.对重叠边界进行特殊处理,比如去除亮度、色调相同的像素点,去除图像噪点等。

步骤s304,利用所述图片拼接算法对所述移动终端上传的图片进行拼接。

在本实施方式中,当选择的是360度对应的图片拼接算法时,则对所采集图像在采集方向上的对称两侧区域进行特征点采集与匹配,进而执行图片拼接。当选择的是720度对应的图片拼接算法时,则对所采集图像的周围预定范围内的部分进行特征点的提取及匹配,进而执行图片拼接。

步骤s305,将拼接后图片进行展示。

在本实施方式中,在将拼接后所述图片进行展示的步骤之前,还会对拼接后的图片做进一步的解析,进而判断拼接后的图片是否符合360度拼接图片或720度图片。具体的,判断模块202会对拼接后的图片进行分析,获取图片重叠区域,如果图片重叠区域仅仅只属于左右或上下对称分布,则判断符合360度的拼接图片,如果图片重叠区域呈多个封闭的区域,则判断符合720度的拼接图片。

更进一步的,当所述拼接结果是360度拼接图片时,利用krpano引擎渲染处理所述360度拼接图片,并生成html页面,所述html页面用于所述移动终端进行访问时进行展示全景图像。其中krpano引擎是krpano全景显示引擎,但采用xml数据结构和基于flash的三维全景显示技术,是一个功能强大的三维全景显示引擎。通过使用krpano引擎,可以使得360度拼接图片得以快速渲染生成一幅全景图像。并在生成了全景图像之后,生成html页面,进而可以使得移动终端快速的访问并展示全景图像给用户。

更进一步的,当所述拼接结果是720度拼接图片时,将720度拼接图片回传至所述移动终端,所述移动终端利用开源的opengl技术对所述720度拼接图片进行渲染进行720度展示。其中对于720度的拼接图片,相应的渲染处理并不在服务端进行,而是直接将拼接后的拼接图片回传至各个需要浏览服务的移动终端,由移动终端通过opengl技术自行对拼接后的图片进行渲染展现720度的效果。由于720度拼接图片数据量要大于一般的360度拼接图片的数据量,故通过将后期渲染处理转移至移动终端,可以有效减轻服务器端的运行压力,提高图片显示效率。

通过上述步骤s301-305,本发明所提出的室内图像处理方法,首先,接收所述移动终端上传的图片;其次,根据所述移动终端上传的图片判断所述移动终端采集所述图片的采集角度;再次,根据所述采集角度选择对应的图片拼接算法,并利用所述图片拼接算法对所述移动终端上传的图片进行拼接;最后,将拼接后图片进行展示。这样,可以根据移动终端获取实时场景图片,快速的获取目标室内空间的360度或720度全景影像,并显示给最终用户,可以使得目标室内空间在线上的展示更加立体,使消费者获得更多的第一感官资料。

参阅图4所示,是本发明室内图像处理方法第二实施例的实施流程示意图。在本实施例中,根据不同的需求,图4所示的流程图中的步骤的执行顺序可以改变,某些步骤可以省略。图4所示为图3中步骤s301的进一步说明。

在步骤s401,控制所述移动终端开启相机应用。

具体的,服务器1可以通过通信网络发送控制指令至移动终端,进而远端控制移动终端开启相机应用,进而准备获取图像。

在步骤s402,选择图片采集角度。

具体的,开启相机应用后,移动终端根据用户的触碰操作进而选择图片采集角度,比如选择360度拍摄还是720度拍摄,其中720度拍摄选择的一般则是广角镜头,视角范围要大于一般镜头。

在步骤s403,根据选择采集角度在相机界面显示拍摄指引,所述拍摄指引用于指导用户利用所述移动终端进行图片采集。

具体的,当选择了采集角度后,在相机的拍摄界面显示相应角度的拍摄指引,比如360度的采集角度,则以一个环绕立体坐标系中的xoy面的箭头表示进行指引。而对于720度的采集角度,则分别以两个环绕立体坐标系中的xoy面和yoz的箭头表示进行指引。具体的,根据拍摄指引缓慢移动拍摄视角进行图像获取,进而为后续图片拼接提供素材。

在步骤s405,选择采集的图片进行上传。

具体的,移动终端通过无线网络将获取的图片或图像进行上传至服务器,1,以供服务器1做进一步的处理。

通过上述步骤s401-405,本发明所提出的室内图像处理方法,可以根据用户需求接收所述移动终端上传的场景图片。

本发明还提供了另一种实施方式,即提供一种计算机可读存储介质,所述计算机可读存储介质存储有室内图像处理程序,所述室内图像处理程序可被至少一个处理器执行,以使所述至少一个处理器执行如上述的室内图像处理方法的步骤。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1