本發(fā)明涉及計算機信息技術領域,具體涉及一種點云數(shù)據(jù)的存儲方法及裝置。
背景技術:
云點數(shù)據(jù)是指掃描資料以點的形式記錄,每一個點包含有三維坐標,有些可能含有顏色信息(RGB)或反射強度信息(Intensity)。通常在進行掃描時獲得的數(shù)據(jù)會根據(jù)掃描的空間大小呈幾何增長,因此通過計算機進行點云數(shù)據(jù)的存儲、查詢、讀取等操作通常需要大量的計算,時效性很差。
技術實現(xiàn)要素:
針對現(xiàn)有技術中的缺陷,本發(fā)明提供的點云數(shù)據(jù)的存儲方法及裝置,降低了點云數(shù)據(jù)的存儲量,提高了點云數(shù)據(jù)的讀取、查詢、渲染效率。
第一方面,本發(fā)明提供的一種點云數(shù)據(jù)的存儲方法,包括:計算點云數(shù)據(jù)的包圍盒;按照八叉樹結(jié)構(gòu)對所述包圍盒進行遞歸切分,所述八叉樹結(jié)構(gòu)的每個層級對應一個點距;在每次切分后,根據(jù)當前層級的點距判斷切分得到的每個子單元空間內(nèi)的點是否屬于當前層級,以文件的形式存儲屬于當前層級的點的信息,其中,切分得到的每個子單元空間對應當前層級內(nèi)的一個節(jié)點,每個節(jié)點對應一個文件。
本實施例提供的點云數(shù)據(jù)的存儲方法,從根節(jié)點到所有的中間節(jié)點以及葉節(jié)點,每個節(jié)點對應的文件中都包含點數(shù)據(jù),且所有文件中沒有重復的點,解決了點云數(shù)據(jù)分布不均勻時,等距分割后各個子單元空間內(nèi)包含點的數(shù)量差異很大的問題。降低了數(shù)據(jù)存儲的冗余量,節(jié)省了存儲空間。按點距逐層存儲的方式,在加載和渲染時可以按照需要顯示的精度逐層調(diào)度,隨著加載和渲染的節(jié)點數(shù)越多,渲染出來的效果就更好。
優(yōu)選地,還包括:根據(jù)點云總數(shù)和所述包圍盒的體積確定根節(jié)點的點距;根據(jù)根節(jié)點的點距逐層確定每個層級的點距,下一層級的點距小于上一層級的點距。
優(yōu)選地,所述根據(jù)根節(jié)點的點距逐層確定每個層級的點距,包括:下一層級的點等于小于上一層級的點距的一半。
優(yōu)選地,所述根據(jù)當前層級的點距判斷切分得到的每個子單元空間內(nèi)的點是否屬于當前層級,包括:根據(jù)當前層級的點距將子單元空間網(wǎng)格化;遍歷子單元空間內(nèi)的點,根據(jù)點的位置信息判斷點所處的網(wǎng)格,若所述網(wǎng)格未被占據(jù),則確定該點屬于當前層級且標記所述網(wǎng)格被占據(jù);若所述網(wǎng)格已被占據(jù)則該點放到下一層級進行判斷。
優(yōu)選地,在每次切分后,還包括:判斷當前層級是否小于預設的最大分割深度;若當前層級大于等于預設的最大分割深度,則終止切分;若當前層級小于預設的最大分割深度,則對切分得到的每個子單元空間分別進行如下操作:判斷子單元空間內(nèi)的點的數(shù)量是否小于預設的最少包含點數(shù),若小于,則終止對所述子單元空間的切分。
優(yōu)選地,所述以文件的形式存儲屬于當前層級的點的信息,包括:以Lob格式文件存儲屬于當前層級的點的信息。
優(yōu)選地,所述文件以分層的結(jié)構(gòu)進行存放,為滿足分層要求的節(jié)點建立文件夾,所述文件夾中包括該節(jié)點的文件,該節(jié)點在當前層內(nèi)所有子節(jié)點的文件,一個索引文件;所述索引文件包含所述文件夾中所有節(jié)點的索引以及每個節(jié)點包含的點的數(shù)量;若所述文件夾中最大層級的節(jié)點還包括子節(jié)點,則所述文件夾中還包括下一層文件夾。
第二方面,本發(fā)明提供的一種點云數(shù)據(jù)的存儲裝置,包括:包圍盒計算模塊,用于計算點云數(shù)據(jù)的包圍盒;遞歸切分模塊用于,按照八叉樹結(jié)構(gòu)對所述包圍盒進行遞歸切分,所述八叉樹結(jié)構(gòu)的每個層級對應一個點距;數(shù)據(jù)存儲模塊,用于在每次切分后,根據(jù)當前層級的點距判斷切分得到的每個子單元空間內(nèi)的點是否屬于當前層級,以文件的形式存儲屬于當前層級的點的信息,其中,切分得到的每個子單元空間對應當前層級內(nèi)的一個節(jié)點,每個節(jié)點對應一個文件。
本實施例提供的點云數(shù)據(jù)的存儲裝置,從根節(jié)點到所有的中間節(jié)點以及葉節(jié)點,每個節(jié)點對應的文件中都包含點數(shù)據(jù),且所有文件中沒有重復的點,解決了點云數(shù)據(jù)分布不均勻時,等距分割后各個子單元空間內(nèi)包含點的數(shù)量差異很大的問題。降低了數(shù)據(jù)存儲的冗余量,節(jié)省了存儲空間。按點距逐層存儲的方式,在加載和渲染時可以按照需要顯示的精度逐層調(diào)度,隨著加載和渲染的節(jié)點數(shù)越多,渲染出來的效果就更好。
優(yōu)選地,還包括點距計算模塊,用于:根據(jù)點云總數(shù)和所述包圍盒的體積確定根節(jié)點的點距;根據(jù)根節(jié)點的點距逐層確定每個層級的點距,下一層級的點距小于上一層級的點距。
優(yōu)選地,所述點距計算模塊中,根據(jù)根節(jié)點的點距逐層確定每個層級的點距,包括:下一層級的點等于小于上一層級的點距的一半。
附圖說明
圖1為本發(fā)明實施例所提供的點云數(shù)據(jù)的存儲方法的流程圖;
圖2為按八叉樹結(jié)構(gòu)進行切分的示意圖;
圖3為不同層級的節(jié)點單獨、組合渲染的效果圖;
圖4為按八叉樹結(jié)構(gòu)進行遞歸切分的一個示例;
圖5為節(jié)點文件以分層的結(jié)構(gòu)進行存放的一個示例;
圖6為本發(fā)明實施例所提供的點云數(shù)據(jù)的存儲裝置的結(jié)構(gòu)框圖。
具體實施方式
下面將結(jié)合附圖對本發(fā)明技術方案的實施例進行詳細的描述。以下實施例僅用于更加清楚地說明本發(fā)明的技術方案,因此只是作為示例,而不能以此來限制本發(fā)明的保護范圍。
需要注意的是,除非另有說明,本申請使用的技術術語或者科學術語應當為本發(fā)明所屬領域技術人員所理解的通常意義。
如圖1所示,本實施例提供的一種點云數(shù)據(jù)的存儲方法,包括:
步驟S1,計算點云數(shù)據(jù)的包圍盒。
其中,包圍盒為能夠包含所有點云數(shù)據(jù)且體積最小的幾何體,如球體、立方體等。最常見的包圍盒算法有AABB包圍盒(Axis-aligned bounding box),包圍球(Sphere),方向包圍盒OBB(Oriented bounding box)以及固定方向凸包FDH(Fixed directions hulls或k-DOP)。為適應八叉樹結(jié)構(gòu)的切分,本實施例優(yōu)選采用AABB包圍盒的算法,該算法為本領域通用的算法,在此不再贅述。
步驟S2,按照八叉樹結(jié)構(gòu)對包圍盒進行遞歸切分,八叉樹結(jié)構(gòu)的每個層級對應一個點距。
其中,八叉樹結(jié)構(gòu)是四叉樹結(jié)構(gòu)在三維空間中的擴展,是一種描述和檢索三維立體空間的有層次性的樹狀結(jié)構(gòu)。以包圍盒為八叉樹結(jié)構(gòu)的根節(jié)點,將包圍盒切分為八個子單元空間,得到第一層級的八個節(jié)點,并為每個子單元空間進行編號,編號是為了區(qū)分開每個子單元空間,確定每個子單元空間的空間位置,切分方式參見圖2,對每個子單元空間再按照上述方式進行切分,直到滿足遞歸切分的終止條件。八叉樹結(jié)構(gòu)中的每一個節(jié)點對應切分得到的一個子單元空間。
其中,點距為每個層級中點與點的最小距離,點距可以表示層級中點的系數(shù)程度。下一層級的點距小于上一層級的點距,以此達到逐層提高數(shù)據(jù)精度的目的。
步驟S3,在每次切分后,根據(jù)當前層級的點距判斷切分得到的每個子單元空間內(nèi)的點是否屬于當前層級,以文件的形式存儲屬于當前層級的點的信息,其中,切分得到的每個子單元空間對應當前層級內(nèi)的一個節(jié)點,每個節(jié)點對應一個文件。
其中,屬于當前層級的點在下一層級的切分過程中不會再參與判斷。對于不屬于當前層級的點,在下一層級的切分過程中再進行判斷。
其中,點的信息包括點在三維空間中的坐標,還可以包括點的顏色信息或反射強度信息等。
其中,對于不再進行切分的節(jié)點不會建立其節(jié)點下的子文件,對于不包含點的節(jié)點不會建立對應的文件,這樣可以減少文件的存儲量,在加載調(diào)用數(shù)據(jù)時提高檢索的效率。
本實施例提供的點云數(shù)據(jù)的存儲方法,從根節(jié)點到所有的中間節(jié)點以及葉節(jié)點,每個節(jié)點對應的文件中都包含點數(shù)據(jù),且所有文件中沒有重復的點,解決了點云數(shù)據(jù)分布不均勻時,等距分割后各個子單元空間內(nèi)包含點的數(shù)量差異很大的問題。降低了數(shù)據(jù)存儲的冗余量,節(jié)省了存儲空間。按點距逐層存儲的方式,在加載和渲染時可以按照需要顯示的精度逐層調(diào)度,隨著加載和渲染的節(jié)點數(shù)越多,渲染出來的效果就更好。
為了確定各個層級的點距,本實施例提供的方法還包括:根據(jù)點云總數(shù)和包圍盒的體積確定根節(jié)點的點距,根據(jù)根節(jié)點的點距逐層確定每個層級的點距,下一層級的點距小于上一層級的點距。
其中,點云總數(shù)為包圍盒中點的總數(shù)量。根據(jù)點云總數(shù)和包圍盒的體積確定根節(jié)點的點距的具體方法為:獲取點云總數(shù)并計算包圍盒的體積,包圍盒的體積除以點云總數(shù)獲得單個點的平均體積,將單個點的平均體積開三次方根得到根節(jié)點的點距。如,包圍盒的體積為1立方米,點云總數(shù)為1000個點,則為每立方分米含一個點,點距為一分米,即0.1米。當然,在計算點距的過程中,可以根據(jù)實際需求乘上系數(shù),以選取合適的點距。
其中,根據(jù)根節(jié)點的點距逐層確定每個層級的點距,包括:下一層級的點等于小于上一層級的點距的一半。例如,根節(jié)點中點間距為1.0,則它的子節(jié)點(即根節(jié)點的下一層級)的點距為0.5,具體參見圖3,其中(a)為根據(jù)根節(jié)點中的點進行渲染的效果,(b)為根節(jié)點的一個子節(jié)點中的點進行渲染的效果,從圖中明顯可看出,層級越低點云數(shù)據(jù)的渲染越粗糙,層級越高加載和渲染的點越多,渲染出來的效果就更好,圖3中(c)和(d)為將根節(jié)點和子節(jié)點組合在一起時的渲染效果。
在上述任意方法實施例的基礎上,步驟S3中,根據(jù)當前層級的點距判斷切分得到的每個子單元空間內(nèi)的點是否屬于當前層級,包括:對切分得到的每個子單元空間分別進行如下操作:
步驟S31,根據(jù)當前層級的點距將子單元空間網(wǎng)格化。
其中,網(wǎng)格化是指將子單元空間劃分為多個以點距為邊長的立方體。
步驟S32,遍歷子單元空間內(nèi)的點,根據(jù)點的位置信息判斷點所處的網(wǎng)格,若該網(wǎng)格未被占據(jù),則確定該點屬于當前層級且標記網(wǎng)格被占據(jù);若該網(wǎng)格已被占據(jù)則該點放到下一層級進行判斷。
其中,步驟S32本質(zhì)上是在每個網(wǎng)格中選取一個點作為當前層級的點進行存儲,為了提高處理效率,不需要遍歷子單元空間內(nèi)的所有點,只需遍歷每個網(wǎng)格,從網(wǎng)格中選取一個點即可。
八叉樹的切分是一個遞歸過程,需要設置終止條件或分割限制因素,在每次切分后,還需判斷是否滿足遞歸切分的終止條件,在上述任意方法實施例的基礎上,判斷是否滿足遞歸切分的終止條件具體包括:
步驟S10,判斷當前層級是否小于預設的最大分割深度。
其中,八叉樹作為一種樹結(jié)構(gòu),樹的深度即進行分割的次數(shù)。最大分割深度為切分的最大層級。
步驟S20,若當前層級大于等于預設的最大分割深度,則終止切分。
步驟S30,若當前層級小于預設的最大分割深度,則對切分得到的每個子單元空間分別進行如下操作:判斷子單元空間內(nèi)的點的數(shù)量是否小于預設的最少包含點數(shù),若小于,則終止對子單元空間的切分。
其中,最少包含點數(shù)為單個子單元空間內(nèi)所包含的最少點數(shù),即設最少包含點數(shù)為N,當子單元空間中的點的數(shù)量小于等于N時,就終止對該子單元空間的切分,否則,繼續(xù)對其進行切分。
上述兩個切分終止條件適用于子單元空間中沒有點的情況,對沒有點的空節(jié)點的繼續(xù)切分是無意義的,對所有沒有包含點的節(jié)點我們都把它解讀為空,不生成文件進行存儲,這樣可以對存儲的數(shù)據(jù)進行壓縮。由于點云數(shù)據(jù)只是物體的表面,并且通常每次只是對單一角度的物體進行測量測距,這就使得大部分空間都是空的,所以,多數(shù)的八叉樹的節(jié)點也將只有個別的子節(jié)點。通過同時定義切分的兩個終止條件,可以避免創(chuàng)建一個完全八叉樹,即一個八叉樹中的所有葉節(jié)點都在同一層,并且所有的其余節(jié)點都有八個子節(jié)點。因些,采用上述兩種終止條件后,減少了數(shù)據(jù)存儲量,提高了點云數(shù)據(jù)的存儲效率和檢索效率。其中,葉節(jié)點指不包含子節(jié)點的節(jié)點。圖4為按八叉樹結(jié)構(gòu)進行遞歸切分的一個示例,一共切分了兩次,共切分為三層,在空間中有點數(shù)據(jù)的部分用灰色表示,沒有點數(shù)據(jù)的部分用白色表示,結(jié)構(gòu)樹中只保留包含點數(shù)據(jù)的節(jié)點。
為了進一步壓縮數(shù)據(jù)的存儲量,在上述任意方法實施例的基礎上,步驟S3中,以文件的形式存儲屬于當前層級的點的信息的優(yōu)選實施方法包括:以Lob格式文件存儲屬于當前層級的點的信息。Lob格式文件采用二進制流的形式存儲點云數(shù)據(jù)的信息,降低數(shù)據(jù)體積,加快數(shù)據(jù)的存儲和訪問速度。另外,對于大多數(shù)數(shù)據(jù)而言,2個byte已經(jīng)足以表達數(shù)據(jù)的精度,同時還能表示點的其它信息,如向量等,所以本實施例選擇只用2個byte來存儲每個點的坐標,并以Lob格式進行存儲。
點云數(shù)據(jù)在存儲過程中會建索引文件,方便節(jié)點的查找。為了減少索引文件,提高檢索效率,在上述任意方法實施例的基礎上,文件以分層的結(jié)構(gòu)進行存放,為滿足分層要求的節(jié)點建立文件夾,文件夾中包括該節(jié)點的文件,該節(jié)點在當前層內(nèi)所有子節(jié)點的文件,一個索引文件;索引文件包含該文件夾中所有節(jié)點的索引以及每個節(jié)點包含的點的數(shù)量;若該文件夾中最大層級的節(jié)點還包括子節(jié)點,則該文件夾中還包括下一層文件夾。
其中,文件層次結(jié)構(gòu)的深度取決于所采用的分層步距的值。分層要求規(guī)定了每間隔多少個層級進行分層(即為對應的節(jié)點建立文件夾),分層步距為分層的間隔層級數(shù),若分層步距為5,則每間隔5個層級分為一層,文件夾中存儲節(jié)點以及節(jié)點下5個層級的子節(jié)點的信息,文件夾的index文件記錄了6個層級的層次結(jié)構(gòu)(自身節(jié)點和接下來的5個層級)。
其中,八叉樹的一個節(jié)點包括8個子節(jié)點,這8個子節(jié)點的編號分別為0、1、2、3、4、5、6、7,具體編號的順序可自行定義,一旦確定編號順序,則所有子節(jié)點的編號都按該順序進行。對于每一個八叉樹的節(jié)點,是以它所在的層級以及在其父節(jié)點中的編號命名文件的,例如:文件名為l表示是根節(jié)點(對應第零層級,該層級只包含一個根節(jié)點),文件名為l0表示根節(jié)點的第一個子節(jié)點(對應第一層級),文件名為l03表示根節(jié)點的第一個子節(jié)點的第四個子節(jié)點(對應第三層級)。如圖5所示,所有節(jié)點對應的文件均按照分層步距以分層的結(jié)構(gòu)存放在data目錄下。
其中,index文件(索引文件)中每個索引的長度為5bytes(字節(jié)),1byte用來描述這個節(jié)點包含的子節(jié)點,例如:l.index文件中00000011指包含當前節(jié)點的第0個子節(jié)點和第1的子節(jié)點;另外4bytes用來存儲該節(jié)點中點的數(shù)量。
其中,index文件中按照深度優(yōu)先的方式存放每個節(jié)點的索引,即按照樹結(jié)構(gòu)先存儲一條支路上的所有節(jié)點直到葉節(jié)點,然后再存儲下一條支路的節(jié)點。
如圖4所示,假設點云總數(shù)是100000,為方便描述,設根節(jié)點名稱為l。
第一級中:
節(jié)點l1包含10000個點,節(jié)點l4包含50000個點,節(jié)點l7包含40000個點。
第二級中:
節(jié)點l1的子節(jié)點l11包含3000個點,節(jié)點l1的子節(jié)l14包含7000個點。
節(jié)點l4的子節(jié)點l41包含10000個點,子節(jié)點l44包含20000個點,子節(jié)點l45包含20000個點。
節(jié)點l7的子節(jié)點l77包含40000個點。
下面以圖4為例,說明index文件的存儲方式。假設分層步距為5,則所有的節(jié)點都存儲在根節(jié)點的文件夾中,所有節(jié)點的關系都按照深度優(yōu)先的方式存放在index文件當中,則index文件存儲的信息為:
10010010 000000000000000000000000000100000(對應節(jié)點l)
00010010000000000000000000000000000010000(對應節(jié)點l1)
00000000000000000000000000000000000003000(對應節(jié)點l11)
00000000000000000000000000000000000007000(對應節(jié)點l14)
00110010000000000000000000000000000050000(對應節(jié)點l4)
00000000000000000000000000000000000010000(對應節(jié)點l41)
00000000000000000000000000000000000020000(對應節(jié)點l44)
00000000000000000000000000000000000020000(對應節(jié)點l45)
10000000000000000000000000000000000010000(對應節(jié)點l7)
00000000000000000000000000000000000040000(對應節(jié)點l77)
上述是為了方便理解才采用這樣的格式進行表述,實際存儲時index文件中是數(shù)據(jù)是沒有任何格式和注釋的。
假設分層步距為5,以分層的結(jié)構(gòu)進行存放的步驟為:首先,為根節(jié)點(即第零層級)建立文件夾,為方便描述命名為文件夾l,將根節(jié)點及其以后的5個層級中所有節(jié)點的文件存儲在文件夾l中,同時文件夾l中包含一個索引文件,該索引文件用于存儲文件夾l中所有節(jié)點的索引以及每個節(jié)點包含的點的數(shù)量。接著,若文件夾l中的第五層級的節(jié)點存在子節(jié)點,則在文件夾l中建立該節(jié)點對應的文件夾,以該子節(jié)點的文件名進行命名,如,該節(jié)點的文件名為l02666,則對應的文件夾的名稱為l02666;文件夾l02666中包含:節(jié)點l02666以及節(jié)點l02666下5個層級的子節(jié)點的文件,一個索引文件;該索引文件用于存儲文件夾l02666中所有節(jié)點的索引以及每個節(jié)點包含的點的數(shù)量。以此類推,直達所有節(jié)點都存儲到對應的文件夾中。
如果點云數(shù)據(jù)量偏小,切分到最精細的層級還未滿足分層要求時,點云的密度已經(jīng)能夠控制在點量的限制范圍內(nèi),則無需繼續(xù)往下切分。對于數(shù)據(jù)量極大的點云,切分到層級已經(jīng)滿足分層要求,但此時節(jié)點所包含的數(shù)據(jù)量仍然非常大,則還需要對節(jié)點進行切分,這個時候會創(chuàng)建一個文件夾,它下面的節(jié)點對應的lob文件保存在這個文件夾下,并且為這個節(jié)點構(gòu)建index文件。所以對數(shù)據(jù)量偏小的點云來說,處理的最終能夠結(jié)果是只有一個存放在根節(jié)點的index文件,而對于海量的點云數(shù)據(jù)會有多個index文件,分別存放在滿足分層要求的節(jié)點下。這種分層建立索引的方式,減少了索引文件數(shù)量,有助于提高檢索效率。
點云數(shù)據(jù)處理完畢之后,所有節(jié)點的關系都按照深度優(yōu)先的方式放在index文件當中,調(diào)用數(shù)據(jù)的時候,直接讀取index文件,每五個字節(jié)就是一個節(jié)點信息,根據(jù)這個信息就清晰地知道它下面的子節(jié)點信息,構(gòu)建出節(jié)點的關系樹結(jié)構(gòu),而不用采用遍歷的方式查找很多遍,大大提索引的檢索效率。渲染層可以根據(jù)不同的渲染顯示機制做相應的控制,什么情況渲染哪個節(jié)點數(shù)據(jù)。渲染層一般根據(jù)當前視點位置和距離,判斷應該渲染哪個層級的節(jié)點。
基于與上述點云數(shù)據(jù)的存儲方法相同的發(fā)明構(gòu)思,本實施還提供了一種點云數(shù)據(jù)的存儲裝置,如圖6所示,包括:包圍盒計算模塊,用于計算點云數(shù)據(jù)的包圍盒;遞歸切分模塊用于,按照八叉樹結(jié)構(gòu)對包圍盒進行遞歸切分,八叉樹結(jié)構(gòu)的每個層級對應一個點距;數(shù)據(jù)存儲模塊,用于在每次切分后,根據(jù)當前層級的點距判斷切分得到的每個子單元空間內(nèi)的點是否屬于當前層級,以文件的形式存儲屬于當前層級的點的信息,其中,切分得到的每個子單元空間對應當前層級內(nèi)的一個節(jié)點,每個節(jié)點對應一個文件。
本實施例提供的點云數(shù)據(jù)的存儲裝置,從根節(jié)點到所有的中間節(jié)點以及葉節(jié)點,每個節(jié)點對應的文件中都包含點數(shù)據(jù),且所有文件中沒有重復的點,解決了點云數(shù)據(jù)分布不均勻時,等距分割后各個子單元空間內(nèi)包含點的數(shù)量差異很大的問題。降低了數(shù)據(jù)存儲的冗余量,節(jié)省了存儲空間。按點距逐層存儲的方式,在加載和渲染時可以按照需要顯示的精度逐層調(diào)度,隨著加載和渲染的節(jié)點數(shù)越多,渲染出來的效果就更好。
其中,還包括點距計算模塊,用于根據(jù)點云總數(shù)和包圍盒的體積確定根節(jié)點的點距;根據(jù)根節(jié)點的點距逐層確定每個層級的點距,下一層級的點距小于上一層級的點距。
其中,點距計算模塊中,根據(jù)根節(jié)點的點距逐層確定每個層級的點距,包括:下一層級的點等于小于上一層級的點距的一半。
最后應說明的是:以上各實施例僅用以說明本發(fā)明的技術方案,而非對其限制;盡管參照前述各實施例對本發(fā)明進行了詳細的說明,本領域的普通技術人員應當理解:其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分或者全部技術特征進行等同替換;而這些修改或者替換,并不使相應技術方案的本質(zhì)脫離本發(fā)明各實施例技術方案的范圍,其均應涵蓋在本發(fā)明的權(quán)利要求和說明書的范圍當中。