发明内容
为解决上述技术问题,本发明的目的在于:提供一种具有三维立体显示效果的用于全息设备的图像处理方法、系统和存储介质。
本发明所采用的第一种技术方案是:
一种用于全息设备的图像处理方法,其包括以下步骤:
获取第一图像,所述第一图像包括二维图像和三维图像;
对第一图像进行预处理,得到第二图像;
将第二图像转换成点云文件或者转换成切片数据,将点云文件或者切片数据看作输出数据;
将输出数据发送到引擎内,使引擎将输出数据与全息设备的像素LED做关联处理;
将关联处理后的输出数据发送到全息设备,使全息设备显示出第一图像。
进一步地,所述点云文件为PCD点云文件,在所述将点云文件或者切片数据看作输出数据这一步骤与所述将输出数据发送到引擎内这一步骤之间,还包括以下步骤:
对输出数据进行二次处理,所述二次处理为:
读取PCD点云文件内点云的位置坐标和颜色信息,并通过数组保存位置坐标和颜色信息;
或者,
扫描获取第二图像的切片数据,并对切片数据做交集处理。
进一步地,所述读取PCD点云文件内点云的位置坐标和颜色信息,并通过数组保存位置坐标和颜色信息,其具体包括:
遍历PCD点云文件内的点云,读取点云的位置坐标和颜色信息;
设置数组,通过数组保存点云的位置坐标和颜色信息。
进一步地,所述扫描获取第二图像的切片数据,并对切片数据做交集处理,其具体包括:
扫描获取第二图像的切片数据;
获取模型三角面;
将第二图像的切片数据与模型三角面做交集处理。
进一步地,所述对第一图像进行预处理,其具体为:
对获取的第一图像分别进行二值化处理和膨胀处理。
进一步地,所述将第二图像转换成点云文件,其具体包括:
通过PCL代码库读取第二图像,并遍历第二图像;
在确定遍历第二图像完成后,对第二图像进行均匀采样生成点云,所述点云包含位置坐标和颜色信息;
根据所有点云的位置坐标和颜色数据生成点云文件。
进一步地,所述将输出数据发送到引擎内,使引擎将输出数据与全息设备的像素LED做关联处理,其具体为:
将点云文件发送到引擎内,使引擎内预先构建的检测空间对点云文件内的点云进行检测,并对检测通过的点云与全息设备的LED做关联处理;
或者,
将切片数据发送到引擎内,使引擎内预先构建的检测空间对切片数据进行检测,并对检测通过的切片数据与全息设备的LED做关联处理。
本发明所采用的第二种技术方案是:
一种用于全息设备的图像处理系统,其包括:
获取模块,用于获取第一图像,所述第一图像包括二维图像和三维图像;
预处理模块,用于对第一图像进行预处理,得到第二图像;
图像转换模块,用于将第二图像转换成点云文件或者转换成切片数据,将点云文件或者切片数据看作输出数据;
第一发送模块,用于将输出数据发送到引擎内,使引擎将输出数据与全息设备的像素LED做关联处理;
第二发送模块,用于将关联处理后的输出数据发送到全息设备,使全息设备显示出第一图像。
本发明所采用的第三种技术方案是:
一种用于全息设备的图像处理系统,其包括:
至少一个存储器,用于存储程序;
至少一个处理器,用于加载所述程序以执行所述的一种用于全息设备的图像处理方法。
本发明所采用的第四种技术方案是:
一种存储介质,其中存储有处理器可执行的指令,所述处理器可执行的指令在由处理器执行时用于实现所述的一种用于全息设备的图像处理方法。
本发明的有益效果是:本发明通过对获取的第一图像进行预处理后,得到第二图像,然后将第二图像转换成点云文件或者转换成切片数据,最后将点云文件或者切片发送到引擎,使引擎将点云文件的点云或者切片与全息设备的LED做关联处理,从而在全息设备上以三维立体显示效果显示第一图像。
具体实施方式
下面结合附图和具体实施例对本发明做进一步的详细说明。对于以下实施例中的步骤编号,其仅为了便于阐述说明而设置,对步骤之间的顺序不做任何限定,实施例中的各步骤的执行顺序均可根据本领域技术人员的理解来进行适应性调整。
参照图1,本发明实施例提供了一种用于全息设备的图像处理方法,其包括以下步骤:
S101、获取第一图像,所述第一图像包括二维图像和三维图像;所述第一图像可以是二维图像或者二维模型,也可以是三维图像或者三维模型。
S102、对第一图像进行预处理,得到第二图像;所述预处理具体为先通过计算机视觉库对第一图像进行处理,然后再对第一图像进行图像灰度二值化和膨胀处理。
S103、将第二图像转换成点云文件或者转换成切片数据,将点云文件或者切片数据看作输出数据;所述点云是在逆向工程中通过测量仪器得到图像的点数据集合。所述切片数据是通过旋转第二图像,并扫描第二图像得到的图像数据。
S104、将输出数据发送到引擎内,使引擎将输出数据与全息设备的像素LED做关联处理;具体是通过引擎技术内的物体环境模拟并检测后,输出检测通过的点云或者切片数据,最后将检测通过的点云或者切片数据与全息设备的像素LED做关联处理。
S105、将关联处理后的输出数据发送到全息设备,使全息设备显示出第一图像。所述全息设备可以显示平面效果,也可以显示三维立体效果。
本实施例通过对获取的第一图像进行预处理后,得到第二图像,然后将第二图像转换成点云文件或者转换成切片数据,最后将点云文件或者切片发送到引擎,使引擎将点云文件的点云或者切片与全息设备的LED做关联处理,从而在全息设备上以三维立体显示效果显示第一图像。
进一步作为优选的实施方式,所述点云文件为PCD点云文件,在所述将点云文件或者切片数据看作输出数据这一步骤与所述将输出数据发送到引擎内这一步骤之间,还包括以下步骤:
对输出数据进行二次处理,所述二次处理为:
读取PCD点云文件内点云的位置坐标和颜色信息,并通过数组保存位置坐标和颜色信息;本步骤具体是遍历PCD点云文件内所有点云后,输出每个点云的位置坐标和颜色信息。所述PCD是PCL代码库的一种文件格式。
或者,
扫描获取第二图像的切片数据,并对切片数据做交集处理。本步骤是通过旋转扫描第二图像后输出切片数据,然后将切片数据与模型三角面做交集运算。
本实施例通过提供两种不同的二次处理方式,便于用户根据自己的需求进行选择。
进一步作为优选的实施方式,所述读取PCD点云文件内点云的位置坐标和颜色信息,并通过数组保存位置坐标和颜色信息,其具体包括:
遍历PCD点云文件内的点云,读取点云的位置坐标和颜色信息;本步骤是遍历PCD点云文件内所有点云,并将读取出所有点云的位置坐标和颜色信息。
设置数组,通过数组保存点云的位置坐标和颜色信息。当所述点云的位置坐标为三维坐标时,通过三维数组保存位置坐标和颜色信息,保存的数据格式为XYZ-RGB。若点云的位置坐标为二维坐标,则设置二维数组,通过二维数组保存位置坐标和颜色信息,保存的数据格式为XY-RGB。
本实施例通过遍历所有点云后,输出每个点云的位置坐标和颜色信息,避免出现遗漏遍历的情况。
进一步作为优选的实施方式,所述扫描获取第二图像的切片数据,并对切片数据做交集处理,其具体包括:
扫描获取第二图像的切片数据;
获取模型三角面;
将第二图像的切片数据与模型三角面做交集处理。本步骤得到的是需要显示的切片数据的线段。
本实施例通过旋转扫描得到第二图像的切片数据,能够加快图像处理过程,提高图像处理效率。
进一步作为优选的实施方式,所述对第一图像进行预处理,其具体为:
对获取的第一图像分别进行二值化处理和膨胀处理。本步骤是通过在计算机视觉库内先进行处理,然后再对第一图像进行灰度二值化处理和膨胀处理。本实施例可以提高后续的图像处理效率。
进一步作为优选的实施方式,所述将第二图像转换成点云文件,其具体包括:
通过PCL代码库读取第二图像,并遍历第二图像;所述PCL的英文全称为PointCloud Library,一种开源的C++编程库,实现了大量点云相关的通用算法和高效的数据管理结构,涉及到点云的获取、滤波、分割、配准、检索、特征提取、识别、追踪、曲面重建和可视化。所述图像处理软件为VTK,全称为Visualization Toolkit,其主要用于三维计算机图形学、图像处理和可视化。
在确定遍历第二图像完成后,对第二图像进行均匀采样生成点云,所述点云包含位置坐标和颜色信息;本步骤先生成点云,再输出点云位置坐标和颜色信息。
根据所有点云的位置坐标和颜色数据生成点云文件。所述PCD点云文件包含所有第二图像的所有点云的位置坐标和颜色信息。
本实施例通过遍历获取所有第二图像的所有的位置坐标和颜色信息,以确保后续二次处理过程中,能够准确的对所有数据都进行处理。
进一步作为优选的实施方式,所述将输出数据发送到引擎内,使引擎将输出数据与全息设备的像素LED做关联处理,其具体为:
将点云文件发送到引擎内,使引擎内预先构建的检测空间对点云文件内的点云进行检测,并对检测通过的点云与全息设备的LED做关联处理;
或者,
将切片数据发送到引擎内,使引擎内预先构建的检测空间对切片数据进行检测,并对检测通过的切片数据与全息设备的LED做关联处理。
本步骤先通过引擎模拟出于全息设备相匹配的物理环境,然后在将点云文件或者切片数据发送到引擎内后,在物理环境内进行一次算法预处理,从而实现在理想环境中模拟算法并进行三维全息投影的过程。具体是将处理好的PCD点云文件或者切片数据输入到引擎内,然后将点云文件的点云或者切片数据与全息设备上的像素LED依次进行关联,例如,将全息设备抽象为DNA模型,处理过程如下:
步骤一、在新建的场景中划分一部分空间构造一个具有一定长宽高的检测空间,检测空间的区域与全息设备的硬件上的显示区域相匹配,具体是建立相对坐标点,在空间里面模拟一个与全息设备的硬件相似的DNA模型,具体用于模拟三维空间全息设备,该模型拥有与实物硬件相同的物理属性,如相同的旋转速率,刷新率,确保环境一致。
步骤二:DNA模型上具有许多检测点,具体是模拟全息设备硬件上的单个LED灯,通过函数持续捕捉这些检测点的相对坐标位置。将点云文件的点云或者三维模型切片数据,移动到检测空间中并检测是否与DNA模型上的检测点发生碰撞或者重合,其中,DNA模型上的检测点类似于模拟硬件中的单个LED灯。
步骤三:持续通过引擎中的遍历函数遍历整个场景,并且输出重合的点的相对坐标和颜色信息到全息设备的硬件端去。具体是使用游戏开发工具的碰撞检测,DNA模型保持旋转状态,当输入的模型与DNA模型上的检测点接触到的时候,输出正确信息并且颜色改变。
本实施例可以确保全息设备上显示出的效果与客户要求显示的效果一致。
本发明实施例还提供了一种与图1方法相对于的用于全息设备的图像处理系统,其包括:
获取模块,用于获取第一图像,所述第一图像包括二维图像和三维图像;
预处理模块,用于对第一图像进行预处理,得到第二图像;
图像转换模块,用于将第二图像转换成点云文件或者转换成切片数据,将点云文件或者切片数据看作输出数据;
第一发送模块,用于将输出数据发送到引擎内,使引擎将输出数据与全息设备的像素LED做关联处理;
第二发送模块,用于将关联处理后的输出数据发送到全息设备,使全息设备显示出第一图像。
上述方法实施例中的内容均适用于本系统实施例中,本系统实施例所具体实现的功能与上述方法实施例相同,并且达到的有益效果与上述方法所达到的有益效果也相同。
本发明实施例还提供了一种与图1方法相对于的用于全息设备的图像处理系统,其包括:
至少一个存储器,用于存储程序;
至少一个处理器,用于加载所述程序以执行所述的一种用于全息设备的图像处理方法。
上述方法实施例中的内容均适用于本系统实施例中,本系统实施例所具体实现的功能与上述方法实施例相同,并且达到的有益效果与上述方法所达到的有益效果也相同。
此外,本发明实施例还提供了一种存储介质,其中存储有处理器可执行的指令,所述处理器可执行的指令在由处理器执行时用于实现所述的一种用于全息设备的图像处理方法。
综上所述,本发明通过对获取的第一图像进行预处理后,得到第二图像,然后将第二图像转换成点云文件或者转换成切片数据,将点最后将点云文件或者切片发送到引擎,使引擎将点云文件的点云或者切片与全息设备的LED做关联处理,从而在全息设备上以三维立体显示效果显示第一图像。
以上是对本发明的较佳实施进行了具体说明,但本发明并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做作出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。